Einrichten eines virtualisierten MS-DOS Systems

Erst einmal eine Sache vorweg: Auch wenn ich bei der Lösungserstellung VMWare Fusion für Mac als Desktop-Virtualisierung verwendet habe, wird diese aber auch mit VMWare Desktop für Linux oder Windows, den Virtualisierungslösungen Parallels Desktop oder Oracle VirtualBox, und sogar mit diversen x86-Emulatoren funktionieren.

Der Hintergrund warum ich diesen Artikel erstellt habe ist, dass ich mich vor einigen Tagen in ein Gespräch mit zwei mir mehr und weniger bekannten Personen dazu gesellt habe, wo es um eine Software zur Erstellung von Partituren im MIDI-Format ging. Ich berichtete, dass ich im Alter von 15 bis 17 Jahre selber eine Windows-Software besaß, mit der es möglich war in Form einer Partitur MIDI-Songs zu erstellen, um die musikalischen Partner für das Üben zu ersetzen. Die Software die ich damals einsetzte – und auch heute auf Diskette noch habe, heißt „MIDI Recording Session“. Auch wenn es sich bei dieser um ein 16-bittige Windows 3.x Anwendung handelt, so konnte ich sie dennoch ohne Probleme in einer bestehenden virtuellen Maschine mit Windows XP starten und benutzen. Allerdings kam mir bereits bei dem ersten Gedanken das Programm nach so langer Zeit mal wieder zu Starten auch die Idee, nach recht langer Zeit ein MS-DOS mit Windows 3.11 mal wieder zu virtualisieren.
So habe ich meine Disketten-Images aus dem Schrank geholt und das Microsoft DOS 6.2 in eine virtuelle Maschine installiert. Um das Windows for Workgroups in der Version 3.11, sowie das Microsoft Works für Windows Version 2 von CD-ROM in die DOS-VM installieren zu können, bedarf es allerdings auch noch einen Treiber um überhaupt auf das optische Laufwerk zugreifen zu können.

Bei meiner Recherche nach einem adäquaten DOS-Treiber für das virtualisierte MS-DOS bin ich auf das Technology Blog von Werner Ziegelwanger gestoßen. Dieser hatte es sich zu seinem Hobby gemacht einen DOS-PC zusammen zu bauen und ist bereits auf das selbe Problem gestoßen wie ich, nur mit der zusätzlichen Schwierigkeit im Gegensatz zu mir, dass er eben kein virtualisiertes System verwendet, wo sich die (Pseudo-) Hardware immer gleich verhält, sondern dass er mit den Herstellereigenen Besonderheiten der Laufwerke zu kämpfen hatte, die immer für Fummelarbeiten bei den Treibern unter einem nativ ausgeführten DOS sorgten.
Ziegelwanger hat die Arbeitsschritte sehr schön dokumentiert, so dass es mir ohne Probleme möglich war das optische Laufwerk aus der virtualisierten DOS-Umgebung ansprechen zu können. Ich habe sie als Anleitung nochmals in mein Wiki übernommen.

Links:
Anleitung im eigenen Dokuwiki
Technology Blog – DOS CD Rom Treiber installieren

Darüber hinaus stand ich vor dem Problem, Dateien, wie zum Beispiel eben die Treiber für den Zugriff auf das CD-Laufwerk, von meinem Host-System (macOS) in die virtuelle Maschine zu übertragen. Der Trick ist für das erste aber recht einfach.:

  1. Über das Terminal unter macOS (Linux, BSD) ein leeres Disketten-Image mit dem Konsolenprogramm dd erstellen.
    dd if=/dev/zero bs=512 count=2880 of=msdos-floppy.img
  2. Das erstellte Disketten-Image mit dem Virtualisierungsprogramm als Diskettenlaufwerk verbinden und mit dem Befehl format a: mit dem Dateisystem FAT12 unter DOS formatieren.
  3. Image von der VM wieder lösen und im Dateimanager (macOS Finder oder dem jedes anderen Host-Systems) wieder mounten und dann die Dateien hineinkopieren.
  4. Zuletzt das Image wieder aus dem Dateimanager auswerfen und mit der virtuellen Maschine verbinden. Die Dateien können gelesen beziehungsweise wenn nötig verändert werden.

Auf Dauer ist dies aber natürlich keine Lösung und ziemlich umständlich sowie nervend.