Creopard

Tipps & Tricks

Real Mode MS-DOS Emulation unter Windows 95 & 98

Zuletzt geändert: 25.05.2020-  Tags: MS-DOS, Multiboot, config.sys, autoexec.bat, msdos.sys, Windows 95, Windows 98
ms_dos_windows_9x.jpg

In den 1990er Jahren gab es bestimmte MS-DOS Techniken (Stichwort: CONFIG.SYS & AUTOEXEC.BAT), um den bootenden PC auf verschiedene Systemkonfigurationen vorzubereiten. Das war vor allem für ältere DOS Spiele wichtig, die z.B. auf viel konventionellen Speicher (weiterführender Blogeintrag) angewiesen sind.

Wer heutzutage noch alte PC-Systeme aufsetzt, wird sich damit auseinandersetzen müssen, wenn der ein oder andere Spieletitel nicht starten will oder kein Sound aus den Lautsprechern tönt.

Es gibt nun verschiedene Wege, wie man MS-DOS unter Windows 95 bzw. Windows 98 nutzen kann.
Diese Übersicht soll alle Möglichkeiten erläutern und zeigt auch den Aufbau eines einfachen Boot-Menüs mit dem MS-DOS und Windows 9x parallel mit unterschiedlichen Konfigurationen betrieben werden kann.

Somit ist es ein Leichtes, seinen PC mit oder ohne Windows Umgebung zu booten oder für einige Spiele EMS-Speicher zur Verfügung zu stellen, wohingegen andere Spiele wiederum XMS-Speicher erwarten.


Es gibt fünf verschiedene Möglichkeiten, wie Windows 95 & 98 eine DOS-Eingabeaufforderung ausführen kann:

  1. Führen Sie die Anwendung von einem DOS-Fenster innerhalb der Windows 95 Benutzeroberfläche (GUI) aus. Dies schränkt in der Regel die Arten von Anwendungen ein, die Sie ausführen können, da Windows den Speicher innerhalb der Benutzeroberfläche zuweist. Beispielsweise würden die meisten Spiele in diesem Modus NICHT laufen. Viele Spiele erfordern es, dass der Computer in einem Modus läuft, den Windows 95 "MS-DOS-Modus" nennt. Dies bedeutet normalerweise, dass Sie den Computer neu starten müssen.
  2. START -> Beenden -> "Im MS-DOS-Modus neu starten". Diese Methode ist etwas besser, weil sie es Ihnen ermöglicht, die Windows GUI vollständig zu verlassen und die Speicherbeschränkungen in Methode 1 zu umgehen. Sie erlaubt jedoch nur eine Konfiguration und erfordert es, dass Sie in die GUI booten und dann neu starten, so dass Sie in DOS nicht wirklich "starten" können. Außerdem ist es aufgrund der Art und Weise, wie es Ihre Startdateien vorübergehend umschaltet, nicht wirklich stabil.
  3. Sie können für jedes DOS-Programm, das einen Neustart erfordert, ein separates DOS-Icon erstellen. Dies funktioniert genauso wie Methode 2, aber es erlaubt Ihnen, eine bestimmte Konfiguration für jede Art von "DOS-Modus" festzulegen, die Sie benötigen würden. Sie können z.B. ein Symbol erstellen, das Treiber in den oberen Speicher lädt, eines, das keine erweiterte Speicherverwaltung (EMM386.EXE) verwendet, eines, das nur die minimalen Treiber lädt, usw. Diese Methode löst das Problem, nur eine Konfiguration zu haben, erfordert aber trotzdem einen Neustart.
  4. Sie können immer dann F8 drücken, wenn der Computer "Windows 95 wird gestartet..." sagt, und Sie gelangen anschließend zu einem Menü, das Ihnen die Möglichkeit gibt, mit Ihrer "Vorgängerversion von MS-DOS" zu booten. Dies ist die einfachste Art und Weise, ein DOS-Programm auszuführen, da es Ihren Computer in den gleichen Modus setzt, den Sie vor dem Start von Windows 95 hatten. Aber es "schaltet nicht immer richtig zurück" und setzt voraus, dass Sie bereits eine frühere Version von DOS auf Ihrem Computer haben. Das ist nicht notwendig, da es nur kostbaren Festplattenspeicher verbraucht wenn Sie bereits ein Betriebssystem haben, welches DOS besser emuliert als DOS: Windows 95.
    Windows 95 ist sozusagen tatsächlich DOS. Es kann als ein GUI betrachtet werden, das von einer DOS-Oberfläche aus läuft, genau wie das alte Windows 3.x. Der größte Unterschied besteht darin, dass man nicht ausdrücklich sagt, dass es laufen soll, indem man "win" an einer DOS-Eingabeaufforderung eingibt. Es lädt sich selbst über eine Datei namens MSDOS.SYS.

Die bessere Alternative...

Diese Methode besteht darin, Windows 95 dazu zu bringen, sich NICHT selbst zu starten. Dadurch wird der Computer zu einer DOS-Eingabeaufforderung gebootet, genau wie in den "guten alten Zeiten". Sobald dies erreicht ist, können wir etwas erstellen, was das alte MS-DOS als "multiple Konfigurationen" bezeichnete. Diese Konfigurationen werden durch die Dateien CONFIG.SYS und AUTOEXEC.BAT festgelegt. Hier richten wir zwei Konfigurationen ein:
Die eine startet die Windows 95-GUI und
dia andere startet das in Windows 95 enthaltene MS-DOS mit allen Treibern, die benötigt werden, um jedes DOS-Spiel oder jede Anwendung ordnungsgemäß auszuführen.
Sie können bei Bedarf auch beliebige andere individuelle Konfigurationen hinzufügen.

Vorbereiten des Computers

Als erstes müssen wir die Dateien CONFIG.SYS und AUTOEXEC.BAT finden, die Ihre Spiele so ausführen, wie wir uns das wünschen. Diese Dateien befinden sich normalerweise bereits im Stammverzeichnis Ihres Computers ("C:\"). Wenn Sie sich dafür entschieden haben, ihre alte Version von DOS beizubehalten, haben Sie wahrscheinlich zwei Dateien mit den Namen CONFIG.DOS und AUTOEXEC.DOS. Dies sind die Startdateien, die verwendet werden, wenn Sie F8 drücken und in Ihre "Vorherige Version von MS-DOS" booten. Wenn Ihr Computer Ihre DOS-Spiele ausgeführt hat, bevor Sie Windows 95 installiert haben, dann wissen Sie, dass diese funktionieren werden. Wo auch immer diese Dateien sein mögen, sichern Sie sie auf Diskette und ändern Sie diese niemals.

Als zweites ist sicherzustellen, dass Sie eine ARBEITSFÄHIGE Windows 95-Startdiskette haben. Als Sie Windows 95 installiert haben, wurde Ihnen die Möglichkeit gegeben, eine Startdiskette zu erstellen. Wenn Sie sie damals nicht erstellt haben oder Sie sie jetzt nicht finden können, machen Sie eine. Gehen Sie dazu zu Ihrer Systemsteuerung -> Programme hinzufügen/entfernen -> Startdiskette. Wenn dies erledigt ist, starten Sie Ihren Computer mit dieser Diskette im Laufwerk A: neu, um zu überprüfen, ob sie auch funktioniert.

Die Startdiskette, die Windows 95 für Sie erstellt, gibt Ihnen KEINEN Zugriff auf Ihr CD-ROM-Laufwerk. Es ist daher ratsam, das jetzt noch einzubauen. Wenn Sie das nicht möchten, springen Sie einfach zum nächsten Absatz. Damit diese Startdiskette Zugriff auf Ihr CD-ROM-Laufwerk gewährt, müssen Sie die Datei MSCDEX.EXE auf diese Diskette kopieren. Diese Datei befindet sich in Ihrem Windows 95-Verzeichnis unter dem Unterverzeichnis COMMAND (normalerweise \WINDOWS\COMMAND). Sie müssen auch den Treiber kopieren, den der Hersteller mit Ihrem CD-ROM-Laufwerk geliefert hat. Wenn Sie nicht wissen, welche Datei das ist, sehen Sie in Ihrer AUTOEXEC.BAT-Datei nach. Die Zeile, die Ihre MSCDEX.EXE-Datei lädt, hat danach einen Parameter, der mit "/D:" beginnt. Notieren Sie sich den Namen, der auf "/D:" folgt, und gehen Sie zu Ihrer CONFIG.SYS-Datei. Irgendwo darin befindet sich eine Zeile, die mit dem gleichen Parameter und dem gleichen Namen endet. Die Datei, die in dieser Zeile geladen wird, ist der Treiber nach dem Sie suchen. Wenn das erledigt ist, kopieren und fügen Sie die Zeilen, die Ihre CD-ROM-Treiber laden aus Ihrer alten CONFIG.SYS und AUTOEXEC.BAT ein. Sie müssen deren Speicherorte aktualisieren, um auf die Dateien zu verweisen, die Sie gerade auf Ihre Startdiskette kopiert haben. Das liegt daran, dass wir wollen, dass diese Diskette in der Lage ist, das System zu starten, ohne auf Dateien von Ihrer Festplatte zugreifen zu müssen. Machen Sie weiter und stellen Sie sicher, dass KEINE der Zeilen in der CONFIG.SYS und AUTOEXEC.BAT auf "C:\" verweist, und starten Sie dann mit der Diskette neu, um zu überprüfen, ob sie ohne Zugriff auf die Festplatte funktioniert.

Installieren des neuen DOS

Wenn Sie die CD-ROM-Version von Windows 95 haben, befinde sich viele Extras darauf, die Windows nicht installiert. Gehen Sie zunächst (auf der Windows 95-CD) in das Verzeichnis \OTHER\OLDMSDOS. Hier finden Sie eine ganze Reihe von DOS 6.22-Dienstprogrammen zusammen mit einer Batch-Datei namens INSTSUPP.BAT, die speziell dafür entwickelt wurde, "ergänzende" DOS-Dienstprogramme zum Verzeichnis \WINDOWS\COMMAND hinzuzufügen, was es zu einer vollständigeren Version von DOS macht. Wenn Sie diese Datei ausführen, haben Sie nun eine vollständige Version von DOS, die auf die Verzeichnisse \WINDOWS\ und \WINDOWS\COMMAND aufgeteilt ist. Dadurch wird das alte \DOS-Verzeichnis überflüssig, das später gelöscht werden kann, nachdem die "neuen" DOS-Funktionen überprüft wurden.

Anmerkung: Auf dieser CD befinden sich alle möglichen anderen coolen Sachen, einschließlich des gesamten Windows 95 Resource Kit im .HLP-Dateiformat. Dies ist ein ausgezeichnetes Nachschlagewerk!

Falls Sie nicht über die CD-ROM-Upgrade-Version verfügen, sind diese Dateien noch unter http://www-pc.uni-regensburg.de/systemsw/TOOLS/w95help.exe erhältlich.

Wenn Sie bereits wissen, wie man mehrere Konfigurationen unter DOS definiert, dann werde ich einfach zusammenfassen, was Sie tun sollten. Wenn Sie es nicht wissen, dann springen Sie zum nächsten Abschnitt. Schalten Sie den BootGUI-Befehl in Ihrer MSDOS.SYS-Datei aus und geben Sie dann Ihre AUTOEXEC.BAT an, um die GUI zu laden, wenn Sie die Option Windows 95 wählen. Die Windows-95-Option in Ihrer CONFIG.SYS sollte leer bleiben. Die DOS-Gerätetreiber sollten so geschrieben werden, wie sie unter DOS geschrieben wurden, mit der Ausnahme, dass die Dateiorte aktualisiert werden müssen.

Die Datei MSDOS.SYS

Wir möchten ja erreichen, dass sich Windows 95 beim Start NICHT selbst lädt. Wir tun dies, indem wir eine Datei im Stammverzeichnis namens MSDOS.SYS editieren. Dies ist eine versteckte schreibgeschützte Datei, so dass zunächst die Dateiattribute geändert werden müssen, um sie sichtbar und editierbar zu machen. Dazu klicken Sie im Windows Explorer mit der rechten Maustaste auf die Datei und wählen Eigenschaften. Heben Sie die Auswahl von "Nur-Lesen" und "Versteckt" auf (stellen Sie sicher, dass Sie diese nach der Bearbeitung der Datei wieder ändern). Bearbeiten Sie nun die Datei mit einem Texteditor wie Notepad. Sie möchten, dass sie etwa so aussieht:

...
[Options]
BootGUI=0
BootMulti=0
Logo=0
...

BootGUI=0 bewirkt, dass die Windows-Oberfläche beim Start NICHT geladen wird.
BootMulti=0 bewirkt, dass Windows 95 Ihnen NICHT die Möglichkeit gibt, die "Vorherige Version von MS-DOS" zu verwenden (die haben sie gerade gelöscht). Wenn eine dieser Zeilen nicht existiert, fügen Sie sie einfach hinzu.
Sie können auch die Zeile Logo=0 hinzufügen, um zu verhindern, dass das beim Booten der Windows 95 Ladebildschirm angezeigt wird. Dies erlaubt es auch, die CONFIG.SYS und AUTOEXEC.BAT Dateien zu sehen, die gerade verarbeitet werden. Damit können alle Fehlermeldungen während des Starts leichter identifiziert werden.
Nachdem Sie das getan haben, starten Sie den Computer neu, um sicherzustellen, dass Sie eine DOS-Eingabeaufforderung erhalten und dass die Windows 95 GUI NICHT geladen wird. Die Windows 95 GUI kann jederzeit geladen werden, indem Sie "win" an der DOS-Eingabeaufforderung eingeben.

Die Dateien CONFIG.SYS und AUTOEXEC.BAT

Für Windows 95 ist keine AUTOEXEC.BAT-Datei erforderlich. Obwohl es eine CONFIG.SYS benötigt, kann und sollte diese Datei leer gelassen werden.
Wir werden nun mehrere Konfigurationen für diese beiden Startdateien erstellen. Das ist relativ einfach, aber wenn Sie Hilfe oder weitere Einzelheiten benötigen, gehen Sie einfach von einer DOS-Eingabeaufforderung aus in das Verzeichnis \WINDOWS\COMMAND und geben Sie "help multi-config" ein.

Ich werde hier nicht näher auf die Beschreibung der Dateien CONFIG.SYS und AUTOEXEC.BAT eingehen. Weitere Informationen über die Konfiguration dazu finden Sie auch im Blog-Eintrag Angepasste Config.sys und Autoexec.bat für viel freies konventionelles RAM.

CONFIG.SYS

Die Datei CONFIG.SYS gibt das Menü für mehrere Konfigurationen an. Wir werden im Grunde die gesamte Datei in "separate" CONFIG.SYS-Dateien aufteilen. Jeder Abschnitt wird oben durch seinen in Klammern eingeschlossenen Namen gekennzeichnet. Hier ist ein Beispiel für eine CONFIG.SYS-Datei:

[menu]
menuitem=windows,Windows 95
menuitem=spiele,DOS-Modus (Spiele)
menudefault=windows,5

[windows]

[spiele]
DEVICE=c:\windows\HIMEM.SYS
DEVICE=c:\windows\emm386.exe RAM-Highscan-Frame=cc00 i=b000-b7ff
DOS=HIGH,UMB
FILES=40
DEVICEHIGH=C:\DOS\XDVD2.SYS /D:OPTICAL DEVICEHIGH=C:\DOS\UDMA.SYS

Die erste Zeile in dieser Datei sollte [menu] lauten. Dies definiert das Menü, das Sie sehen werden, wenn Ihr Computer hochfährt. Darunter sehen Sie mehrere "menuitem="-Zeilen. Jede dieser Zeilen bezieht sich auf die einzelnen Abschnitte, die folgen werden. Der Teil nach dem Komma benennt den Abschnitt, damit er im Startmenü besser aussieht.

Danach sehen wir "menudefault=". Dies ist eine Art Timer. Er teilt dem Computer mit, mit welchem Menü er nach x Sekunden starten soll. Bei diesem Menü startet der Computer mit Windows 95, wenn 5 Sekunden lang keine Taste gedrückt wird.

Nach diesem Menüeintrag sehen wir mehrere Einträge, die jeweils einen Unterabschnitt definieren. Der Abschnitt [windows] sollte leer gelassen werden. Alle hier geladenen Treiber oder "Terminate and Stay Resident Programme" (TSRs) würden NICHT von Windows 95 benutzt werden; sie würden nur Speicher belegen und möglicherweise Konflikte verursachen.

Der Abschnitt [spiele] gibt alle für DOS benötigten Treiber und TSRs an, um erfolgreich Spiele zu starten. Um herauszufinden, wie Sie diesen Abschnitt ausfüllen können, benutzen Sie Ihre alten CONFIG.SYS-Dateien, die Sie zuvor gesichert haben. Kopieren Sie diese einfach und fügen Sie sie in diesen neuen Abschnitt der CONFIG.SYS [spiele] ein. Sie müssen nur die Namen der Verzeichnisse ändern. Zum Beispiel befinden sich die HIMEM.SYS und EMM386.EXE hier in \WINDOWS und nicht in einem \DOS-Verzeichnis.

Stellen Sie sicher, dass die CONFIG.SYS die aktualisierten Speicherorte ALLER Ihrer TSRs enthält, sonst kann Ihr Computer nicht richtig booten!

AUTOEXEC.BAT

Die Datei AUTOEXEC.BAT hat ein ähnliches Layout. Sie bezieht sich auf das Menü, das in der Datei CONFIG.SYS mit der Anweisung "goto %config%" angegeben ist. Danach ist die Datei AUTOEXEC.BAT in Sektionen ähnlich wie die CONFIG.SYS aufgeteilt. Allerdings beginnt jede Sektion mit einem Doppelpunkt, gefolgt vom Namen der Sektion und endet mit einer "goto"-Anweisung. Ein Beispiel für eine AUTOEXEC.BAT:

SET PROMPT=$p$g
PATH=C:\WINDOWS;C:\WINDOWS\COMMAND;C:\DOS

goto %config%

:windows
c:\windows\win
goto end

:spiele
SET SOUND=C:\SB16
SET BLASTER=A220 I5 D1 H5 P330 E620 T6
SET MIDI=SYNTH:1 MAP:E MODE:0
C:\SB16\DIAGNOSE /S
C:\SB16\MIXERSET /P /Q
C:\SB16\AWEUTIL /S

LH C:\WINDOWS\COMMAND\MSCDEX.EXE /D:ASPICD0 /M:12 /L:Q
rem LH C:\DOS\SHCDX33F /D:OPTICAL
LH C:\DOS\CTMOUSE.EXE /R2
goto end

:end

Beachten Sie, dass der "goto %config%"-Anweisung einige Zeilen vorangestellt sind. Diese Zeilen führen Befehle aus, die IMMER ausgeführt werden, unabhängig davon, welche Menüauswahl gewählt wird. Ich möchte zum Beispiel immer denselben PFAD und PROMPT-ausgabe für alle meine Menüauswahlen eingestellt haben. In diesem Teil sollte es nicht zu viele Befehle geben. Dadurch können wir jeden Abschnitt "individueller" gestalten.

Denken Sie daran, dass wir den Computer angewiesen haben, die GUI beim Booten NICHT zu laden. De Menüauswahl ":windows" ist die einzige, wo wir sie haben wollen. Um dies zu tun, geben wir einfach die Windows 95-Befehlszeile an: "C:\windows\win". Beachten Sie, dass dies der EINZIGE Befehl unter dem Abschnitt ":windows" ist. Der Grund dafür ist derselbe wie der, warum wir diesen Teil der CONFIG.SYS leer gelassen haben: Alle hier geladenen Treiber oder TSRs finden unter der Windows 95-GUI KEINE Verwendung, sie verschwenden nur Speicher und verlangsamen den Startvorgang.

Der Abschnitt ":spiele" folgt den gleichen Regeln, wie sein Pendant in der CONFIG.SYS-Datei. Es handelt sich einfach um eine Kopie der AUTOEXEC.BAT, die Sie zuvor gesichert haben, wobei die Speicherorte der Datei natürlich aktualisiert wurden.

Denken Sie daran, dass Sie in der AUTOEXEC.BAT-Datei eine ":end"-Anweisung ganz unten und eine "goto end"-Anweisung am Ende jedes Abschnitts benötigen. Wenn diese fehlen, verarbeitet der Computer die nächste Zeile, auch wenn sie Teil der nächsten Menüoption ist. Mit anderen Worten, wenn Sie die Windows-Option wählen, würde der Computer immer noch alle TSRs und Treiber laden, die in der folgenden Option Spiele zu finden sind. Um dies zu vermeiden, müssen wir dem Computer ausdrücklich sagen, dass er den/die nächsten Abschnitt(e) überspringen und zum Ende der Datei AUTOEXEC.BAT gehen soll.

Abschluss

Sie können weitere Menüoptionen als nur diese beiden hinzufügen. Zum Beispiel wäre eine dritte Option möglich, die nur die Maus und das CD-ROM-Laufwerk lädt (kein oberer Speicher, keine Soundkarte usw.). Dies würde es ermöglichen, den PC in einem sehr konventionellen und kompatiblen "Diagnose-Modus" hochzufahren.
Beim Umgang mit den Dateien CONFIG.SYS und AUTOEXEC.BAT sind eine Menge kleinerer Syntaxfehler möglich, die möglicherweise ausgebügelt werden müssen. Um alle Fehlermeldungen abzufangen, können Sie die Startdateien Zeile für Zeile verarbeiten, indem Sie beim Hochfahren des Computers Umschalt+F8 drücken.
Nachdem Sie diesen neuen Startprozess erstellt und überprüft haben, dass er nach Ihren Wünschen funktioniert, können Sie fortfahren und alle alten DOS-Verzeichnisse und Dateien löschen, die sich noch auf Ihrem Computer befinden könnten.




Änliche Artikel anzeigen: