Willkommen im cgboard - classic games Forum! Deine gemütliche Retro Gaming Community. Besuche uns auch im Discord Chat.

[Hilfe] PC zu schnell - Programm zum Bremsen gesucht
#41
0
PIF-Dateien gab und gibt es immer noch AUSSCHLIESSLICH für die Ausführung von DOS-Programme unter Win 3.x ff., wobei das System entweder die Standard-Datei DOSPRMPT.PIF oder eine spezielle, vom Benutzer erstellte verwendete, deren Namen mit dem der ausführbaren DOS-Datei identisch war - lediglich die Erweiterung lautete statt *.exe eben *.pif. Mit dem sogenannten PIF-Editor konnten dann spezielle Einstellungen zur Speichernutzung, zum Graphik-Modus usw. vorgenommen werden.
Mit Windows 95 hat sich daran soviel nicht geändert, nur daß hier die Konfiguration über die Desktop-Verknüpfung zum jeweiligen Programm erfolgt, die bei DOS-Anwendungen automatisch ein erweitertes Menü anbietet.
Dieses Verfahren gilt seither praktisch für alle Win32-Systeme (Vista vermutlich ausgenommen).

Es war und ist technisch gar nicht möglich, DIESE Prozedur auf 16- oder gar 32bit Windows-Programme zu übertragen.
Ich befürchte deshalb, thEClaw, daß Dir auch der Source-Code zu Myslow nicht wirklich nützen wird können. Du wirst bei "Null" anfangen müssen...
Zitieren
#42
0
Ich würde für alte Spiele einen eigenen Rechner einrichten und ggf. einen KVM-Switch verwenden (K=Keyboard, V=Video, M=Maus).

Wenn man das richtig macht, kann man auf einem solchen Rechner fast alle PC-Spiele der 80er und 90er Jahre laufen lassen, und zwar mit bestmöglichem Bild (Stichwort Glide) und fast bestmöglichem Ton (Soundblaster, General Midi, Roland, A3D 1.0 und 2.0, EAX 1.0). In den 90er Jahren gab es viele technische Umbrüche, so daß die damaligen Spiele mit heutiger Hardware oft nur mit Einschränkungen zum Laufen zu bringen sind.

Wenn man einen K6-2+ oder K6-3+ Prozessor verwendet, kann man den Prozessortakt sogar im laufenden Betrieb per Software einstellen (sogar auch unter DOS). Mit dem richtigen Mainboard kann man außerdem den Bustakt ebenfalls per Software einstellen. Zusätzlich hat man dann auch noch myslow zur Verfügung - und sogar für DOS gibt es ein ähnliches Slowdown-Programm, das den L1-Cache abschalten kann...

Mit einer Voodoo 5 5500 kann man außerdem Glide-Spiele in voller Pracht laufen lassen und zusätzlich FSAA (Full Scene Anti Aliasing) zur Kantenglättung nutzen (vor allem für ältere Windows-Spiele mit geringer Auflösung genial).

Sound ist noch am schwierigsten - eine Vortex 2-Soundkarte (vor allem SQ2500) ist nicht schlecht (A3D, EAX 1.0, Soundblaster Pro, Soundblaster), vor allem mit einem Yamaha-Midi-Daughterboard (XG-50). Zusätzlich kann man dann auch noch entsprechende Komponenten für Roland-Sound besorgen (für Spiele bis 1993).

So ein System ist dann noch immer mit Kompromissen behaftet (z.B. Soundblaster Pro-Kompatibilität nur in Mono), aber es ist für seinen Zweck viel besser und flexibler als ein moderner PC.

Oboe
Zitieren
#43
0
Hinter dem Programm steckt das Prinzip, einen einzelnen Prozess mit genau dosierter Geschwindigkeit laufen zu lassen. Das Einstellungsmenü dazu ist nun mal in einer *.pif-Verknüpfung - warum sollte es ein so großes Problem sein, das Konzept ein wenig zu erweitern? Ich habe zwar noch nicht ausreichend Ahnung davon, aber ich bin guter Dinge, dass das Übertragen auf modernere Systeme nicht annähernd so schwer werden sollte, wie ein neues Programm zu schreiben. Zur Not schaue ich mir den Quelltext so lange an, bis ich Superprogrammierer bin und schreibe dann eben ein neues Programm... Wink

@ Oboe: Das ist schön und gut, aber ich habe auch einfach keine Lust mehr (an Platz fehlt es ja sowieso), mich mit so einem alten PC rumzuärgern. Die Dosbox hat soviele Vorzüge gegenüber jedem Dos-System und das Starten eines Spiels benötigt nicht mal eben 1-5 Tage (was bei mir manchmal der Fall war). Nur für ein paar wenige Exoten würde sich so ein extra PC überhaupt noch lohnen - und dagegen werden zukünftige Dosbox-Versionen sicher was tun können. Die paar Spiele, die in Windows-Zeiten erschienen sind und entweder zu schnell oder gar nicht laufen, sind den Aufwand wohl auch nicht wert.
Allerdings muss ich zugeben, dass so ein schöner alter PC schon was hat - das Feeling beim Booten und beim Gebrauch ist einfach anders. Wink
Zitieren
#44
0
Zitat:Original von thEClaw
@ Oboe: Das ist schön und gut, aber ich habe auch einfach keine Lust mehr (an Platz fehlt es ja sowieso), mich mit so einem alten PC rumzuärgern. Die Dosbox hat soviele Vorzüge gegenüber jedem Dos-System und das Starten eines Spiels benötigt nicht mal eben 1-5 Tage (was bei mir manchmal der Fall war). Nur für ein paar wenige Exoten würde sich so ein extra PC überhaupt noch lohnen - und dagegen werden zukünftige Dosbox-Versionen sicher was tun können. Die paar Spiele, die in Windows-Zeiten erschienen sind und entweder zu schnell oder gar nicht laufen, sind den Aufwand wohl auch nicht wert.
Das, was Du vorhast, sieht aber auch nach viel Ärger aus. Und zusätzlich ist der Ausgang ganz ungewiß. So genial DosBox auch ist - der Sound ist trotzdem nicht so wie mit entsprechender Hardware. Und die Roland-Emulatoren sollen bisher alle fehlerhaft gewesen sein, soweit ich mir bisher angelesen habe (viele Details über die Hardware sind nie veröffentlicht worden). Dazu kommen bei einem modernen PC die Probleme mit Glide-Spielen, bzw. den Glide-Wrappern, die man dann verwenden muß. Jedes Spiel läuft mit einem anderen Wrapper am besten und meist ist keiner perfekt. Da heißt es testen, testen, testen... Big Grin Und häufig klappt es trotzdem nicht richtig.

In Bezug auf DOS-Spiele habe ich ganz andere Erfahrungen gemacht: Auf meinem K6-2 500 laufen ca. 95% aller DOS-Spiele direkt unter Windows 98SE (entsprechend eingerichtete Startdateien vorausgesetzt).

Der Rest (z.B. die Dynamix "Aces"-Reihe) kommt zu ca. 90% mit zwei verschiedenen DOS-Konfigurationen (EMS-Spiele, bzw. XMS-Spiele) aus, die ich schon in den 90er Jahren zusammengezimmert habe (damals noch auf meinem alten 486er). Der Zeitaufwand ist also normalerweise sehr gering.

Den Ärger mit endlosem Konfigurieren und Testen unter DOS hatte ich genau gesagt bisher nur mit einem einzigen Spiel: "Dawn Patrol". Das braucht tatsächlich eine ganz eigene Konfiguration und wäre das einzige mir bekannte Beispiel, das evtl. mit DosBox leichter zum Laufen gebracht werden könnte.

Oboe
Zitieren
#45
0
Ich hab hier auch nen alten Rechner für alte Spiele. Mit MS-DOS 6.22 und Win95c.

Hardware:
Intel Pentium 200Mhz (ohne MMX)
64 MB EDO-RAM
Grafikkarte: Matrox Mystique 2MB (Leider nicht so super kompatibel wie ichs gern hätte, Probleme gibts z.b. bei Lost Vikings)
3D-Karte: Diamond Monster 3D II 12MB (Die geht ab. Big Grin )
Soundkarte: Creative Soundblaster 16 (Was sonst für DOS-Spiele? Wink )
4GB Festplatte
8x CD-ROM

Läuft eigentlich gut bis darauf das für manche Spiele die 200Mhz zu viel sind und die Grafikkarte bei einigen Spielen rummuckt. Hab aber bis jetzt keine kompatiblere auftreiben können.

Zu deinem Vorhaben das MySlow abzuändern: Ich denke nicht das das gehen wird. Das ist auf DOS-Programme ausgelegt und wird da warscheinlich viel DOS-spezifischen Kram manipulieren. Interupts hooken und so Späße. Das funktioniert alles in der neuen schönen Protected-Mode Welt von Windows nicht. Da müsste man das MySlow komplett neu aufbauen und mit anderen Tricks versehen.

Zitat:Original von Oboe
Den Ärger mit endlosem Konfigurieren und Testen unter DOS hatte ich genau gesagt bisher nur mit einem einzigen Spiel: "Dawn Patrol". Das braucht tatsächlich eine ganz eigene Konfiguration und wäre das einzige mir bekannte Beispiel, das evtl. mit DosBox leichter zum Laufen gebracht werden könnte.
Naja ich hab unter einem echten MS-DOS nie so viel konventionellen Speicher freibekommen wie unter DosBox immer frei ist. Das macht sich vorallem bei sehr alten Spielen, die keinen Erweiterungsspeicher nutzen bemerkbar. Allerdings hab ich mich damit auch nie so eingehend beschäftigt. Da solls ja alternative Speichermanager gegeben haben und so.
Wir entwickeln Spiele, schaut mal vorbei: CatBit Software
Zitieren
#46
0
Egal, ich will die Flinte nicht ins Korn werfen, bevor ich nicht sicher bin, dass es so nicht geht. Wink

Mir fallen übrigens auch ein paar Spiele ein, die ich ewig nicht zum Laufen bekam unter Dos: An erster Stelle "Rings of Medusa Gold" - das brauchte glaube ich 620KB freien Hauptspeicher, das war fast nicht zu schaffen. An Betrayal at Krondor habe ich eine Ewigkeit gebastelt (da waren es die 5 Tage) und dann gab's noch etliche weitere. Da ist so ein Dosspiel in der Dosbox doch schon schnell installiert und gespielt - ob der Klangunterschied bei Auswahl eines Soundblaster 16 (oder auch Gravis Ultrasonstwas o.ä.) wirklich hörbar schlechter ist, will ich bezweifeln. Schließlich klingt doch alles sehr gut - und meine Ohren sind sowieso nicht die besten. Wink
Zitieren
#47
0
Zitat:Original von thEClaw
Egal, ich will die Flinte nicht ins Korn werfen, bevor ich nicht sicher bin, dass es so nicht geht. Wink

Ich mein ja auch nicht das du Flinte ins Korn werfen sollst, nur das du am falschen Punkt ansetzt.

Probier mal das hier: http://www.gametreasure.de/Temp/SlowIt.rar (6KB)

Nach meiner 2. Idee. Es ist noch lang net fertig. Hat keine GUI und auch noch ein paar Probleme. Das Timing ist noch nicht akkurat genug und verlangsamte Prozesse lassen sich nichtmehr beenden. Muss man per Taskmanager killen.
Aber ich denke das geht in die richtige Richtung. Probiers einfach mal aus.

Einfach den Prozessnamen des zu verlangsamenden Prozesses eingeben. Dann sollten hintereinander 2 Messageboxes mit eingabeaufforderungen erscheinen. Kann sein das die im Hintergrund erscheinen. Die gehöhren nämlich dann schon zum zu verlangsamenden Prozess. Wink
Probier erstmal eine Verzögerung von 1ms und ne Priorität von 2. Musst dann einfach mal mit den Werten rumspielen.
Wir entwickeln Spiele, schaut mal vorbei: CatBit Software
Zitieren
#48
0
Hi,

bei DOS-Spielen liegt der konv. Speicherbedarf i.d.R. zwischen 400 kB und 590 kB. 1994 gab es viele Flüche wegen "Aces Over Europe", das ungewöhnliche 600 kB brauchte. Die meisten mussten eine extra Bootdiskette für "AOE" einrichten, um es überhaupt spielen zu können (ohne CD-ROM-Treiber, Tastaturtreiber oder SmartDrive, etc.). Die einzige Alternative zu einer solchen Bootdiskette war der Einsatz eines Speichermanagers wie "Quemm", durch den man den oberen Speicher besonders effektiv ausnutzen und dadurch konv. Speicher frei machen konnte. Aber für AOE reichte selbst das meistens nicht.

Quemm ist für reines DOS auch heute noch ein sehr guter Tip und inzwischen kostenlos. Allerdings brauche ich reines DOS nur für Ausnahmefälle, da fast alle Spiele im DOS-Fenster von Windows 9x laufen - und da ist es gar kein Problem, 600 kB konv. Speicher frei zu bekommen: Das DOS-Fenster braucht keine DOS-Treiber für CD-ROM, Maus und Plattencache, weil das von Windows übernommen wird.

Und zum Sound: Soundblaster/Adlib für Musik bedeutet FM-Synthese (also ein Synthesizer macht die Musik). Bei MIDI werden zuvor aufgenommene "Samples" verwendet (Klavier, Gitarre, etc.). MIDI klingt besser, FM-Synthese war deutlich billiger. MIDI scheint schwerer zu emulieren zu sein, FM-Synthese leichter (kann man auch an den vielen PCI-Soundkarten sehen, die MIDI mehr schlecht als recht in Software emulieren).

P.S.: Wie ist denn das Ergebnis mit CPU Killer - ruckelt es damit auch?

Oboe
Zitieren
#49
0
Da du scheinbar über die ganzen Soundkarten-Modelle bescheid weißt (ich kenne nur Midi und SB), weißt du vielleicht auch, welche Vorteile die GravisUltrasound besitzt?

Wegen CPU Killer - das arbeitet ebenso wie die anderen Programme. Ich bin jetzt darauf umgestiegen, IN der virtuellen Maschine zu drosseln, da habe ich bisher aber nur CPUgrab ausprobiert, da ich mir auch wegen der Kompatibilität in Windows 95 nicht ganz sicher bin. Wenn ich die Bremse im virtuellen PC laufen lasse, dann kann ich auf jeden Fall die Geschwindigkeit feiner einstellen, aber das Ruckeln bleibt bestehen. Ich vermute mal, dass es unter einem frisch installierten Windows XP ohne allzu viel Schnickschnack besser liefe.
Zitieren
#50
0
Zitat:Original von Thorium
Ich hab hier auch nen alten Rechner für alte Spiele. Mit MS-DOS 6.22 und Win95c.

Hardware:
Intel Pentium 200Mhz (ohne MMX)
64 MB EDO-RAM
Grafikkarte: Matrox Mystique 2MB (Leider nicht so super kompatibel wie ichs gern hätte, Probleme gibts z.b. bei Lost Vikings)
3D-Karte: Diamond Monster 3D II 12MB (Die geht ab. Big Grin )
Soundkarte: Creative Soundblaster 16 (Was sonst für DOS-Spiele? Wink )
4GB Festplatte
8x CD-ROM

Läuft eigentlich gut bis darauf das für manche Spiele die 200Mhz zu viel sind und die Grafikkarte bei einigen Spielen rummuckt. Hab aber bis jetzt keine kompatiblere auftreiben können.

Hi Thorium,

das ist ja so etwa Standard eines Spiele-PCs von 1997/1998. Wenn Du auf die SB16 noch eine Wavetable-Karte (Yamaha XG-50 oder Roland Sound Canvas) stecken würdest, hättest Du auch noch guten General MIDI-Sound.

Oboe
Zitieren
#51
0
Über Gravis Ultrasound weiß ich auch nicht viel: Es soll eigentlich eine sehr gute Technik dahintergestanden haben, aber sie konnte sich nicht gegen den Soundblaster-Standard durchsetzen:

http://de.wikipedia.org/wiki/Gravis_Ultrasound

Zitat: "Als größtes Handicap der Ultrasound-Serie galt ihre mangelnde Spielekompatibilität. Die Tonausgabe der damals mehrheitlich unter MS-DOS laufenden Computerspiele war meist nur auf Sound-Blaster-Soundkarten ausgelegt. Mit dem von Gravis angebotenen Soundblaster-Emulationstreiber (SBOS, MegaEm) gelang es bei manchen Spielen, auch auf Ultrasound-Karten Soundeffekte und Musik auszugeben. Reibungslos harmonierte die Zusammenarbeit aber oft nur mit Spielen, welche direkte GUS-Unterstützung anboten. Diese waren lange Zeit dünn gesät."

Es gab aber wohl schon einige Spiele, die primär für diese Karten ausgelegt wurden und die mit ihnen daher auch am besten klingen.

Oboe
Zitieren
#52
0
Zitat:Original von thEClaw
Wegen CPU Killer - das arbeitet ebenso wie die anderen Programme. Ich bin jetzt darauf umgestiegen, IN der virtuellen Maschine zu drosseln, da habe ich bisher aber nur CPUgrab ausprobiert, da ich mir auch wegen der Kompatibilität in Windows 95 nicht ganz sicher bin. Wenn ich die Bremse im virtuellen PC laufen lasse, dann kann ich auf jeden Fall die Geschwindigkeit feiner einstellen, aber das Ruckeln bleibt bestehen. Ich vermute mal, dass es unter einem frisch installierten Windows XP ohne allzu viel Schnickschnack besser liefe.

Hast du das ausprobiert, was ich vorhin gepostet hab?
Das funktioniert nicht über CPU-Auslastung. Könnte aber trotzdem ruckeln, bitte teste das mal. Smile
Wir entwickeln Spiele, schaut mal vorbei: CatBit Software
Zitieren
#53
0
Sorry Thorium, ich habe deinen Post übersehen. Sad
Ich mach mich gleich dran. Wink

EDIT: 1. Testrunde - 2 / 1 scheint schon ein großes Stück langsamer zu laufen

EDIT 2: 4 / 2 kann man schon als spielbar ansehen

EDIT 3: 8 / 2 ist schon ein wenig langsam, ich werde auf 6 oder 7 gehen

Das Programm macht einen sehr guten Eindruck. Das Programm ist recht träge, wenn man ihm die Parameter übergeben muss - das kann vielleicht auch mit in die Befehlszeile?
Und das mit dem Abschießen des Prozesses ist ein wenig unpraktsich.

Aber auf jeden Fall einen riesen Dank an dich - du hast da was ordentliches auf die Beine gestellt. Geschockt

EDIT 4: Eins wäre vielleicht noch praktisch, eine Run-Zeit - dann könnte die Geschwindigkeit stufenlos skaliert werden, momentan verhält sich das eher wie eine 1/n-Folge, was wohl erst ab Wartezeiten von mindestens 5ms eine halbwegs durchgehende Regelung erlaubt.

EDIT 5: Ich habe ein paar Soundprobleme in der virtuellen Maschine, da die aber zufällig auftreten (unabhängig von deinem Programm), wird das Problem nicht daher kommen.

Spitzenprogramm, mit 7 / 2 läuft das Spiel genau so, wie ich es mir vorstellen würde. Wenn du noch ein wenig am Programm feilst, dann kannst du 'ne Firma aufmachen - Macrosoft oder so. Wink
Zitieren
#54
0
Zitat:Original von thEClaw
EDIT 4: Eins wäre vielleicht noch praktisch, eine Run-Zeit - dann könnte die Geschwindigkeit stufenlos skaliert werden, momentan verhält sich das eher wie eine 1/n-Folge, was wohl erst ab Wartezeiten von mindestens 5ms eine halbwegs durchgehende Regelung erlaubt.

Was meinst du genau mit Run-Zeit?
Also die Zeit, welche der Prozess zwischen den Pausen laufen darf beträgt mehr oder weniger exakt 1ms. Das könnte ich, wenn ich den Timer noch ein wenig tune niedriger bekommen. Würde dann aber einen recht hohen Overheat verursachen, der sich wieder auf die Geschwindigkeit auswirkt.

Ja das mit dem Killen ist blöd. Ich weis aber worans liegt und das wird natürlich noch geändert, genaus wie das man die Parameter nicht in ner Inputbox eingeben muss. Wollte nurmal wissen wies generell so läuft. Weil ich hier nix richtig zum testen hab.
Wir entwickeln Spiele, schaut mal vorbei: CatBit Software
Zitieren
#55
0
Da bist du mir zuvorgekommen. Big Grin

Also insgesamt sehr gut. Mit Run-Zeit meine ich, dass ein extra Parameter dafür übergeben werden sollte. Also 5 / 2 / 2 wäre dann: 5ms arbeiten, 2ms warten, und Priorität 2 (ist das eigentlich "hoch"? Kann man nicht lesen, weil das Fenster kürzer ist als die Schrift).
Damit könnte man dann jede beliebige Bremswirkung erzielen (wenn man auch ein wenig rechnen muss).
Zitieren
#56
0
Zitat:Original von thEClaw
und Priorität 2 (ist das eigentlich "hoch"? Kann man nicht lesen, weil das Fenster kürzer ist als die Schrift).

Oh, hab ich wohl übersehen.
Prioritäten:
1=normal
2=nöher
3=am höchsten

Das ist die Priorität mit der der Thread, welcher die Verlangsamung vornimmt läuft. Optimal sollte es sein, wenn die Priorität gleich des Hauptthreads des Prozesses oder eine Stufe höher ist.

Das mit der Run-Zeit lässt sich einrichten. Den Prioritätsparameter werde ich warscheinlich automatisch ermitteln lassen, für ein optimales Ergebnis.
Wir entwickeln Spiele, schaut mal vorbei: CatBit Software
Zitieren
#57
0
Das Programm lässt sich nach Ausbremsung nicht mehr schließen (also in VPC runterfahren), sondern kann wirklich nur gekillt werden. Das Spiel wird dadurch allerdings nicht beeinflusst, stellt an diesem Punkt also kein Problem dar.

Ansonsten kann ich im Betrieb kein Problem entdecken, dein Programm tut genau das, was es soll - und scheinbar auch sehr zuverlässig. Nun ließe sich nur noch über die externen Sachen diskutieren. Wink
Zitieren
#58
0
Zitat:Original von thEClaw
Ansonsten kann ich im Betrieb kein Problem entdecken, dein Programm tut genau das, was es soll - und scheinbar auch sehr zuverlässig. Nun ließe sich nur noch über die externen Sachen diskutieren. Wink

So, jetzt esse ich erstmal und dann schau ich mal das ich das Problem mit dem nicht-beenden des Prozesses in den Griff bekomme und dem Tool ein neues Gewand verpasse.
Wir entwickeln Spiele, schaut mal vorbei: CatBit Software
Zitieren
#59
0
Ich esse jetzt auch, bin wohl erst morgen wieder online. Und du: Lass dir Zeit, ich kann es nicht verantworten, wenn du dich wegen meines Problems zu Grunde arbeitest. Wink
Zitieren
#60
0
TaDa: SlowIt v0.05 (16kb RAR)

Sollte selbsterklärend sein. Ist noch nicht ganz fertig, sollte aber soweit funktionieren. Im Augenblick kann nur die Pausendauer eingestellt werden. Dafür mit GUI und die Pausendauer ist in Echtzeit regelbar.
Wir entwickeln Spiele, schaut mal vorbei: CatBit Software
Zitieren


Möglicherweise verwandte Themen…
Thema Verfasser Antworten Ansichten Letzter Beitrag
  Nancy Drew Spiele Spezialist gesucht Teddybaerchen 0 148 21.01.2024, 17:23
Letzter Beitrag: Teddybaerchen
  HILFE gesucht: Dungeon Keeper Direct3D Version lopez72 27 8.911 20.06.2020, 16:10
Letzter Beitrag: lopez72
  [Hilfe] Warlords IV Patch 1.05 für Deutsche Version gesucht Commodus 5 2.332 19.03.2020, 10:41
Letzter Beitrag: Traxx Amiga EP
  Gesucht: PC-Player 11/1997 lopez72 0 1.040 05.10.2019, 09:19
Letzter Beitrag: lopez72
  [Hilfe] Tester gesucht! Req.: CH-Tastatur & 1h Zeit SirJohn 1 1.748 13.04.2019, 09:10
Letzter Beitrag: Heinrich Reich

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste