Alte DOS-Spiele wieder zum Leben erwecken mit DOSBox

  • Vielleicht könnte man denken, das Thema wäre etwas deplatziert in einem Linux-Forum, aber vielleicht haben noch einige Mitglieder auf dem Dachboden oder in einem Schrank Spiele, die auf MS-DOS liefen. Oder vielleicht hat man irgendwo ein altes DOS-Spiel entdeckt und wundert sich darüber, dass es mit WINE nicht läuft. In diesem Fall kommt DOSBox ins Spiel. Das ist ein Emulator, der eine MS-DOS-Umgebung simuliert und so viele alte Spiele zum Laufen bringt. Die Einrichtung ist ganz einfach. Die Pakete lassen sich ganz einfach über YaST installieren. Wenn man nun aber DOSBox startet, so fällt auf, dass das amerikanische Tastaturlayout eingestellt ist. Dies wird behoben, indem man die Datei

    Code
    dosbox-
    .conf
    im Ordner
    Code
    ~/.dosbox
    öffnet. Bei der aktuellen Version wäre das also
    Code
    ~/.dosbox/dosbox-0.74.conf
    . In dieser Datei befindet sich ein Abschnitt
    Code
    [dos]
    . Dort steht
    Code
    keyboardlayout=auto
    , was in
    Code
    keyboardlayout=gr
    geändert werden muss. Nun kann es losgehen. DOSBox stellt eine zu MS-DOS weitgehend kompatible Umgebung bereit, die um einige Befehle erweitert wurde. Das Starten eines Spiels möchte ich hier am Beispiel Rayman's World zeigen. Der wichtigste Befehl, den man brauchen wird, ist MOUNT (Groß- und Kleinschreibung sind hier egal, man könnte auch mount schreiben). Aber fangen wir erstmal ganz von vorn an. Man findet sich vor einer schwarzen Textkonsole wieder. Wer Vollbild lieber mag, kann dies durch die Tastenkombination ALT+ENTER erreichen. Ihr seht oben einen farbigen Kasten und dem Prompt
    Code
    Z:\>
    Bei DOSBox werden - wie im richtigen DOS - Laufwerke mit Laufwerksbuchstaben angesprochen. Z ist nicht wirklich vorhanden, sondern nur der "Ort" an dem euer "DOS" installiert ist. Nun muss man erst einmal den Zugriff auf die Dateien des Spiels bekommen. Dies macht man mit mount. Dabei ist die Syntax, um ein einfaches Verzeichnis einzuhängen
    Code
    mount
    Ich benutze dafür den Ordner, den WINE als Laufwerk C: behandelt. So sieht der Befehl also bei mir aus:
    Code
    mount c ~/.wine/drive_c
    Nun sind alle Anwendungen für Windows bzw. DOS verfügbar. Um auf das Laufwerk zu wechseln, genügt die Eingabe von
    Code
    :
    . Um also auf das Laufwerk C zu wechseln gibt man
    Code
    C:
    ein. Ihr solltet nicht / als Laufwerk einhängen, weil so die DOS-Programme eventuell euer System beschädigen können. Sicher ist sicher. Solltet ihr doch merken, dass ihr den falschen Pfad eingehangen ist, kann man die Laufwerke auch wieder aushängen, und zwar mit
    Code
    mount -u
    Jetzt kann man schon einfache Anwendungen starten, die keine CD benötigen. Aber was ist, wenn man eine braucht? Dafür muss man mount einige weitere Informationen geben, sodass der Befehl nun so aussieht:
    Code
    mount        -t cdrom -usecd 0 -ioctl
    Am Beispiel Rayman's World wäre dies
    Code
    mount d /media/Raykit -t cdrom  -usecd 0 -ioctl
    Code
    -t cdrom
    weist DOSBox dazu an, dass das Laufwerk als CD zu behandeln ist.
    Code
    -usecd 0
    gibt an, dass das erste CD-Laufwerk das real existierende Laufwerk ist, in dem die CD eingelegt ist.
    Code
    -ioctl
    ermöglicht hardwarenahe Zugriffe auf die CD, wodurch viele Funktionen erst ermöglicht werden. Nun können wir das Spiel mit
    Code
    C:cd Ubisoftcd Raykitraykit ver=al
    starten. mit
    Code
    cd
    lässt sich das Verzeichnis wechseln und
    Code
    raykit ver=al
    startet die Anwendung raykit.exe im aktuellen Ordner mit dem Parameter
    Code
    ver=al
    Nun ist das erste Spiel gestartet. Das ist aber jedes Mal jede Menge Tipparbeit. In der Regel muss man für ein Spiel immer die selben Befehle eingeben. Dafür gibt es die Batch-Dateien. Man schreibt einfach alle Befehle, die man ausführen muss, in eine Textdatei mit der Endung .bat . wenn man sich in ihrem Verzeichnis befindet, muss man einfach nur ihren Namen ohne das angehängte .bat eingeben und das Spiel wird wie gewünscht gestartet. Gibt es einige Aktionen, die IMMER direkt beim Starten der DOSBox ausgeführt werden sollen, so gibt es auch eine Lösung dafür. Die Conf-Datei, die wir ganz zum Anfang des Tutorials bearbeitet haben, hat am Ende den Abschnitt
    Code
    [autoexec]
    Dort trägt man die Befehle ein, die man immer am Anfang ausführt, wie zum Beispiel das Einhängen und Wechseln auf das Laufwerk C. Nun wisst ihr, wie man ein Spiel unter DOSBox startet.

    Bitte nicht das </iframe> beachten, da macht Opera irgendwie Mist.
    Yeah, ich krieg eine openSuSE-Laptopfolie :thumbup:</iframe>

    6 Mal editiert, zuletzt von Schmitzi ()

    Für den Inhalt des Beitrages 25202 haftet ausdrücklich der jeweilige Autor: Schmitzi