Gå till innehåll
Just nu i M3-nätverket

TrueBlueEnvironment


Giggs

Rekommendera Poster

Hej!

 

Har suttit ett par dar och spelat gamla Civ1 på en iMac G4 i Classicläge (den kan inte starta i OS 9, bara köra Classic). Jag blev lite förvånad när det laggade och strulade då och då, det verkar som om datorn inte riktigt orkar med - vilket är konstigt då jag spelade Civ 1 på en Mac IIvi med 16 MHz-propp och 4MB minne redan på 90-talet utan problem. Jag kollade därför i Aktivitetskontroll och det som verkligen drar resurser är en process som kallas TrueBlueEnvironment, vilket jag antar är det som gör att Classic funkar öht.

 

TBE(!?) drar alla processorresurser som finns, över 90%, när spelet är igång, men sjunker tillbaka till ca 3% när man inte spelar men då Classicmiljön fortfarande är aktiv i bakgrunden så att säga. Kan man ändra nåt nånstans så att det inte drar så mycket? Nån slags optimering av TBE alltså, alt. av OS 9 eller spelet i sig (tror dock inte att det är i OS 9 eller i spelet i sig som problemet ligger)?

 

Minnet verkar räcka till btw, jag hade fortfarande ledigt minne när jag kollade. Vad innebär det när det står att TBE har ca 24MB verkligt minne och över 1GB virtuellt minne, är det vad det tar av RAM-minnet resp. vad det reserverar på HD?

Länk till kommentar
Dela på andra webbplatser

Det verkar som om du har för lite RAM-minne i datorn, och därför används virtuellt minne. Då får datorn jobba med att skriva och läsa väldigt mycket och ofta på hårddisken, eftersom den inte har plats för all data som behövs i minnet.

 

Lösningen är alltså att skaffa mer minne till datorn.

Länk till kommentar
Dela på andra webbplatser

Tror du verkligen det? Sidor in/ut visar just nu 21368/7 - den skriver ju nästan inget mot hårddisken. Jag har iofs bara 512MB, men som jag sa ovan så har jag alltså fortfarande minne ledigt och detta trots att jag nu har Safari igång också, något jag inte haft tidigare. Jag har just nu ca 180MB aktivt, ca 280MB inaktivt och ca 50 resident

Länk till kommentar
Dela på andra webbplatser

TBE(!?) drar alla processorresurser som finns, över 90%, när spelet är igång, men sjunker tillbaka till ca 3% när man inte spelar men då Classicmiljön fortfarande är aktiv i bakgrunden så att säga. Kan man ändra nåt nånstans så att det inte drar så mycket? Nån slags optimering av TBE alltså, alt. av OS 9 eller spelet i sig (tror dock inte att det är i OS 9 eller i spelet i sig som problemet ligger)?
Jo, jag tror att det är i spelet felet ligger.

Det är troligen baserat på anropet "GetNextEvent" som gamla program oftast är. Det innebär att programmet hela tiden kollar "har något hänt", "har något hänt", "har något hänt", "har något hänt" och då klockar CPU-procenten iväg.

Nyare program använder "WaitNextEvent", som betyder "Väck mig om en stund eller när något händer". Detta naturligtvis mycket snällare mot CPU-procenten.

Det verkar som om du har för lite RAM-minne i datorn, och därför används virtuellt minne. Då får datorn jobba med att skriva och läsa väldigt mycket och ofta på hårddisken, eftersom den inte har plats för all data som behövs i minnet.

 

Lösningen är alltså att skaffa mer minne till datorn.

Det tror jag inte alls, se ovan.
Länk till kommentar
Dela på andra webbplatser

Håller på att läsa den här diskussionen: http://discussions.apple.com/thread.jspa?messageID=3050456 och får intrycket att det är Classic under Tiger som strular och som Telly säger, just med vissa program. Har inte läst hela tråden än, så jag vet inte om det finns någon problemlösning.

Länk till kommentar
Dela på andra webbplatser

Tror du verkligen det? Sidor in/ut visar just nu 21368/7 - den skriver ju nästan inget mot hårddisken. Jag har iofs bara 512MB, men som jag sa ovan så har jag alltså fortfarande minne ledigt och detta trots att jag nu har Safari igång också, något jag inte haft tidigare. Jag har just nu ca 180MB aktivt, ca 280MB inaktivt och ca 50 resident

Oki! Ja, då lutar det ju åt att Telly har rätt.

Länk till kommentar
Dela på andra webbplatser

Testade nyss Civ 2 i på samma sätt i Classicläge och TBE kräver nu bara 3-4% av processorkraften. Mer rimligt... Det lutar åt att Telly har rätt.

 

Kan man göra något åt detta att vissa program anropar systemet hela tiden eller kräver detta avancerad/omfattande omprogrammering i källkoden?

Länk till kommentar
Dela på andra webbplatser

Det krävs tyvärr ändring i källkoden.

Länk till kommentar
Dela på andra webbplatser

Det krävs tyvärr ändring i källkoden.

Ja, tyvärr.

 

Men är detta något riktigt problem? Om du spelar så spelar du och om du ska göra något annat så stänger du bara av spelet.

Länk till kommentar
Dela på andra webbplatser

Men är detta något riktigt problem? Om du spelar så spelar du och om du ska göra något annat så stänger du bara av spelet.

Ja, jag kan inte gå runt med mina enheter i Civ mha tangentbordet. Datorn registrerar inte rätt, antingen blir det för få steg eller blir det för många steg när jag trycker ner tangenterna, så att mina enheter hamnar ute i terrängen istf för att fortsätta längs en väg t ex. Störigt!

Länk till kommentar
Dela på andra webbplatser

Ja, jag kan inte gå runt med mina enheter i Civ mha tangentbordet. Datorn registrerar inte rätt, antingen blir det för få steg eller blir det för många steg när jag trycker ner tangenterna, så att mina enheter hamnar ute i terrängen istf för att fortsätta längs en väg t ex. Störigt!

Har nog inte med CPU-användandet att göra, snarare att programmet är riktigt gammalt och din Mac är för snabb. Eller så är programmet inte skrivet enligt Apples föreskrifter, helt enkelt.

 

Om du vill spela så måste du nog köpa en gammal mac som kan boota i OS 9.

Länk till kommentar
Dela på andra webbplatser

Har nog inte med CPU-användandet att göra, snarare att programmet är riktigt gammalt och din Mac är för snabb. Eller så är programmet inte skrivet enligt Apples föreskrifter, helt enkelt.

 

Om du vill spela så måste du nog köpa en gammal mac som kan boota i OS 9.

En sån gammal Mac har jag redan, men jag vill kunna spela på iMacen. Det borde ju gå, tycker jag.

 

Varför skulle det inte bero på CPU:n menar du? Det funkar ju hur bra som helst om man bootar i OS 9, men just i Classic strular det och det kan då emellanåt bli väntetider, lagg och fel när man går runt med enheterna mha siffertangenterna (det funkar däremot när man går runt mha musklick, men det är långsamt och omständligt för mig som spelare). Skillnaden mellan Classic och OS 9 är ju i det här fallet att processorn i Classicmiljön är fullt upptagen med att ägna sig åt annat än att spela mitt spel. Minnet räcker ju till, systemet som spelet kommunicerar med är ju fortfarande OS 9 och spelet och allt annat vad jag kan förstå är ju också detsamma. Skillnaden är ju just att TBE drar alla lediga processresurser och att jag och spelet därför knappt får en syl i vädret.

 

Har för mig att jag spelade Civ i Classicmode under Panther på en iBook G4 utan att uppleva det här strulet. Jag kan iofs minnas fel, det kan ha varit bootat i OS 9. Jag får kanske installera Panther nånstans och se om problemen kvarstår även under Panther.

Länk till kommentar
Dela på andra webbplatser

En sån gammal Mac har jag redan, men jag vill kunna spela på iMacen. Det borde ju gå, tycker jag.

 

Varför skulle det inte bero på CPU:n menar du? Det funkar ju hur bra som helst om man bootar i OS 9, men just i Classic strular det och det kan då emellanåt bli väntetider, lagg och fel när man går runt med enheterna mha siffertangenterna (det funkar däremot när man går runt mha musklick, men det är långsamt och omständligt för mig som spelare).

Det är rätt, det BORDE gå.

 

Men det verkar som om spelmakaren inte följt Apples uppmaningar i programmeringsböckerna "Inside Macintosh" till punkt och pricka. Då blir det ofta problem i Classic.

Skillnaden mellan Classic och OS 9 är ju i det här fallet att processorn i Classicmiljön är fullt upptagen med att ägna sig åt annat än att spela mitt spel.
Nej, processorn ägnar sig nästan helt åt att spela ditt spel. I OS 9 kan spelet gå direkt på hårdvaran, trots att Apple skriver att det ska man inte göra. I Classic så kan spelet inte gå direkt på hårdvaran (eftersom det skulle kunna få OS X att krascha). Detta förutsätter då att spelet är korrekt skrivet och använder de funktioner som Apple officiellt stödjer, något som inte verkar vara fallet.

CPU-procenten stiger (som jag skrev) när spelet inte har något att göra, men det betyder inte att processorn ägnar sig åt annat när spelet HAR något att göra (som att svara på ett musklick eller en tangenttryckning).

Länk till kommentar
Dela på andra webbplatser

Det är rätt, det BORDE gå.

 

Men det verkar som om spelmakaren inte följt Apples uppmaningar i programmeringsböckerna "Inside Macintosh" till punkt och pricka. Då blir det ofta problem i Classic.

Nej, processorn ägnar sig nästan helt åt att spela ditt spel. I OS 9 kan spelet gå direkt på hårdvaran, trots att Apple skriver att det ska man inte göra. I Classic så kan spelet inte gå direkt på hårdvaran (eftersom det skulle kunna få OS X att krascha). Detta förutsätter då att spelet är korrekt skrivet och använder de funktioner som Apple officiellt stödjer, något som inte verkar vara fallet.

CPU-procenten stiger (som jag skrev) när spelet inte har något att göra, men det betyder inte att processorn ägnar sig åt annat när spelet HAR något att göra (som att svara på ett musklick eller en tangenttryckning).

Jaha, då är det tydligen bara att "gilla läget" dårå...

 

Tack för all hjälp och info!

 

:)

Länk till kommentar
Dela på andra webbplatser

Jaha, då är det tydligen bara att "gilla läget" dårå...

Ja, tyvärr.

 

Har själv ett program som inte går att köpa till OS X, där ett av fönstren inte fungerar i Classic. Texten blir en(!) pixel hög. Detta program funkar inte alls med SheepShaver på min IntelMac. :(

Länk till kommentar
Dela på andra webbplatser

Har själv ett program som inte går att köpa till OS X, där ett av fönstren inte fungerar i Classic. Texten blir en(!) pixel hög. Detta program funkar inte alls med SheepShaver på min IntelMac. :(

 

Det är just därför som man aldrig *aldrig!* skall göra sig av med sina gamla macar, alternativt ha en gammal maskin som klarar OS 9.

Även jag tackar dig, Telly82, för informationen!

Länk till kommentar
Dela på andra webbplatser

Det är just därför som man aldrig *aldrig!* skall göra sig av med sina gamla macar, alternativt ha en gammal maskin som klarar OS 9.

Jo, men det blir så himla trångt på skrivbordet. :(

Länk till kommentar
Dela på andra webbplatser

Testade nyss Civ 2 i på samma sätt i Classicläge och TBE kräver nu bara 3-4% av processorkraften. Mer rimligt... Det lutar åt att Telly har rätt.

 

Kan man göra något åt detta att vissa program anropar systemet hela tiden eller kräver detta avancerad/omfattande omprogrammering i källkoden?

 

Är det ett 68k spel eller ett PowerPC spel? Tyvärr har jag ingen PowerPC mac tillgänglig längre så jag kan titta på det själv, men jag är ganska säker på att det skulle gå att fixa med ett litet patch hack om det rör sig om ett egoistisktprogram.

Jag skrev ett program för ca 10 år sedan som hette Vellios Pro, det kan finnas någonstans på nätet fortfarande, men jag hittar det inte på google (och tyvärr har jag det förmodligen inte kvar på någon av mina gamla macar heller)

Men ivilketfall det gick att använda för att ställa processprioritet för MacOS Classic processer, det fanns även ett annat liknande program som hette peek-a-boo som fungerade snarlikt men det kostade tyvärr pengar vet inte om det ens tillät prioritetsjustering utan att vara registrerad.

 

Men oavsett vilket är jag ganska säker på att det skulle gå att lösa på ett eller annat sätt.

Länk till kommentar
Dela på andra webbplatser

Är det ett 68k spel eller ett PowerPC spel? Tyvärr har jag ingen PowerPC mac tillgänglig längre så jag kan titta på det själv, men jag är ganska säker på att det skulle gå att fixa med ett litet patch hack om det rör sig om ett egoistisktprogram.

Jag skrev ett program för ca 10 år sedan som hette Vellios Pro, det kan finnas någonstans på nätet fortfarande, men jag hittar det inte på google (och tyvärr har jag det förmodligen inte kvar på någon av mina gamla macar heller)

Men ivilketfall det gick att använda för att ställa processprioritet för MacOS Classic processer, det fanns även ett annat liknande program som hette peek-a-boo som fungerade snarlikt men det kostade tyvärr pengar vet inte om det ens tillät prioritetsjustering utan att vara registrerad.

 

Men oavsett vilket är jag ganska säker på att det skulle gå att lösa på ett eller annat sätt.

Det är ett 68k-spel.

 

Ska kolla efter peek-a-boo och se om jag kan använda det på nåt sätt. Jag letar väl lite efter ditt program också, men det lär jag väl inte hitta när inte ens du själv gör det.

Länk till kommentar
Dela på andra webbplatser

Har testat peek-a-boo lite nu och fattar mig kanske inte på det? Jag ställde in TBE som Low-priority, men det fortsatte att dra alla lediga systemresurser. Men det är kanske nåt annat som ska göras?

Länk till kommentar
Dela på andra webbplatser

Har testat peek-a-boo lite nu och fattar mig kanske inte på det? Jag ställde in TBE som Low-priority, men det fortsatte att dra alla lediga systemresurser. Men det är kanske nåt annat som ska göras?

 

Nej inte i MacOS X, installera det i classic.

Länk till kommentar
Dela på andra webbplatser

Det är ett 68k-spel.

 

Ska kolla efter peek-a-boo och se om jag kan använda det på nåt sätt. Jag letar väl lite efter ditt program också, men det lär jag väl inte hitta när inte ens du själv gör det.

 

Nej det kan finnas på hotline någonstans, annars så är det nog väck nu- var bara ett gratis hack jag släppte runt 1997-98, och oavsett vilket- det fungerar inte med 68k processer heller efter som det patchade via TVectors vilket enbart PowerPC:n använder (detta för att slippa behöva ha några systemtillägg som peek-a-boo använde sig av)

---

Edit:

 

(förövrigt har du provat spela det i Basillisk II istället?)

 

Och peek-a-boo "tricket" kommer enbart fungera om det beror på att programmet är egoistiskt- alltså använder GetNextEvent väldigt frekvent eller WaitNextEvent med en låg timeout.

Kanske borde nämna också att min program var egentligen inte avsett för att sätta prioritet på olika program, det var något jag lade till när jag ändå höll på kan man säga :P Egentligen gjorde jag det för jag var lat när jag skrev små test program ibland så jag kunde ha en loop som såg ut som typ while(1){WaitNextEvent(...); /* icke ljud generering eller grafikrenderingskod*/ } detta gjorde att jag kunde testa olika hack med "multitasking", problemet var att utan lite extra kod (som visserligen inte varit jobbig att skriva) så går det inte avsluta programmet utan med lite tur kunna pricka cmd-alt-esc precis när det hacket var aktivt, så min lösning var att patcha WaitNextEvent eller GetNextEvent och på så sätt se till att min "avslutningskod" kunde köras just när mitt program var aktivt (genom att jämföra PSN) det intressanta var att först trodde jag bara jag själv skulle ha nytta av det, men jag märkte snart att det faktiskt var användbart i andra sammanhang också, program som hade en tendens att krasha när man avslutade dom normalt tex (medans detta inte var en perfekt lösning så tillät det iallafall att man kunde stänga av eller starta om datorn utan att vara livrädd för en filsystems krash- vilka var ganska vanliga på classic macos) eller utomstående program som inte svarade på applevents- det var iallafall ett hack som sagt, sen var det egentligen ganska fullt gjort men det är en annan historia :)

Länk till kommentar
Dela på andra webbplatser

Har spelat nu en stund och plötsligt insett att det faktiskt funkar bättre nu än innan, trots vad jag sa alldeles nyss. Det går att gå runt mha det numeriska tangentbordet utan att enheterna står still för att sedan helt plötsligt rusa ut i terrängen långt längre än jag tänkt. Det är inte samma flyt som t ex på en G4/400 bootad i OS 9.2, men det funkar bra - helt klart. Jag får kanske ändå leta upp peek-a-boo för OS 9 och installera det där senare och se vad som händer, om det blir ännu bättre.

 

Tack för all hjälp!

 

:)

Länk till kommentar
Dela på andra webbplatser

  • 8 months later...

Jag hittade det, har dock inte provat om filen är korrekt, men filstorleken verkar stämma ( https://www.versiontracker.com/dyn/moreinfo/macos/9156 )

 

http://web.archive.org/web/20010613204730/...ios/Vellios.sit

 

Hittade även detta

( https://www.versiontracker.com/dyn/moreinfo/macos/8282 ) Vilket också är ett gammal program jag gjorde i samma veva ;) (Först MP3 spelaren på MacOS X med IRQ styrning, Quicktime var före men är inte IRQ styrd.)

Länk till kommentar
Dela på andra webbplatser

Arkiverat

Det här ämnet är nu arkiverat och är stängt för ytterligare svar.



×
×
  • Skapa nytt...