Montag, 10. Dezember 2018

Dosemu

Aus Spielen-unter-Linux Wiki by linuxgaming.de

Wechseln zu: Navigation, Suche
Diese Anleitung setzt die Kenntnis folgender Artikel vorraus:


DOSEMU

DOS in a BOX
Basisdaten
Entwickler: DOSEMU-Dev-Team
Architektur: x86, x64
Version: 1.4.0
Sprache: Englisch
Plattform(en): Linux
Lizenz: GPL
Webseite: Homepage
Diskussion: SuL-Forum

Inhaltsverzeichnis


Beschreibung der Software

DOSEMU steht für DOS Emulation und erlaubt den Anwender DOS und viele DOS-Programme zu starten. Dabei werden auch DPMI Anwendungen wie zum Beispiel DOOM oder sogar Windows 3.1 unterstützt. Die grafische Unterstützung "xdosemu" ist dabei optional. Sie wird jedoch von den meisten Distributionen mit ausgeliefert. Dosemu selbst kommt ohne eine eigentliche DOS Version daher und braucht zur Funktion mindestens Freedos. Es kann aber auch MS-DOS und einige andere verwendet werden.


Installation

Arch Arch: pacman -S dosemu
Debian Debian: apt-get install dosemu dosemu-freedos xfonts-dosemu
Gentoo Gentoo: emerge dosemu
Mandriva Mandriva: urpmi dosemu
openSUSE openSUSE: yast2 -i dosemu
Ubuntu Ubuntu: sudo apt-get install dosemu dosemu-freedos xfonts-dosemu


Kompilieren

Um dosemu zu kompilieren werden eine Reihe Devel/Headerpakete sowie verschiedene Bibliotheken benötigt. Eine Liste findet sich in der beiliegenden Datei INSTALL. Die wichtigsten Pakete sind dabei: libXxf86vm, GPM, SDL, SVGALIB, ALSA und libsndfile. Einige davon sind optional. Sind die Voraussetzungen erfüllt, kann es los gehen. Als erstes laden wir uns dosemu-1.4.0.tgz und Freedos in ein temporäres Verzeichnis. Danach entpacken wir dosemu-1.4.0.tgz, konfigurieren das Projekt und installieren es nach dem Kompilieren unter /usr/local

tar -xz dosemu-1.4.0.tgz
cd dosemu-1.4.0
mv ../dosemu-freedos-b9r5-bin.tgz ./dosemu-freedos-bin.tgz
./configure --with-x
make
make install

Für den letzten Schritt werden root-Rechte benötigt. Abhängig von eurer Distribution kann man entweder das Kommando mit "sudo" ausführen oder über "su" zum User root wechseln. Verlief die Installation erfolgreich, können wir mit folgendem Kommando als normaler Benutzer die installierte Version feststellen:

beko@deadalus:~ # dosemu --version
dosemu-1.4.0.0
[...]


Konfiguration

Eine systemweise Konfiguration findet sich unter /etc/dosemu.conf die wir uns nun einfach nach ~/.dosemurc kopieren.

cp /etc/dosemu.conf ~/.dosemurc

Dosemu wird unsere eigene Konfigurationsdatei an dieser Stelle honorieren und die systemweite ignorieren. Nun können wir die Konfiguration einfach unseren Wünschen anpassen. Folgende Konfigurationen verstehen sich als Beispiele. In der Konfiguration sind viele hilfreiche Kommentare hinterlegt, um die ein oder andere Funktion oder Option anzupassen. Einige Änderungen müssen direkt in den freedos Dateien vorgenommen werden. Es empfiehlt sich dem Nutzer Schreibzugriff auf das Verzeichnis /usr/local/share/dosemu/freedos und alle darunterliegenden Verzeichnisse zu gewähren (da sonst auch später nichts als Nutzer installiert oder abgespeichert werden kann). Es ist außerdem möglich sich ein eigenes freedos Verzeichnis im Heimatverzeichnis einzurichten und über die dosemurc aufzurufen.


Soundkarte

Für dosemu stehen eine Reihe verschiedener virtueller Soundkarten zur Auswahl. Welche gut zu eurer Konfiguration passt muss ausprobiert werden. Auf jeden Fall sollten die Werte über Umgebungsvariablen in der Datei autoexec.bat gesetzt werden, damit Spiele den Soundblaster später auch finden. Folgender Eintrag in der autoexec.bat von freedos macht einen Soundblaster mit den typischen Werten bekannt:

set BLASTER=A220 I5 D1 H5 T6

Passend dazu benötigen wir folgende Werte in der ~/.dosemurc:

 $_sound = (on)
 $_sb_base = (0x220)
 $_sb_irq = (5)
 $_sb_dma = (1)
 $_sb_hdma = (5)


Tastaturlayout

Das Charset und das Tastaturenlayout sollten zusammen passen. Um Sonderzeichen an den gewohnten Stellen zu finden empfiehlt sich das Tastaturlayout de-latin1:

 $_term_char_set = "latin1"
 $_layout = "de-latin1"


Mauseinstellung

Mauskonfiguration für eine PS2 Zweitastenmaus:

 $_mouse = "ps2"


CD-ROM Unterstützung

Der folgende Eintrag macht unseren Mountpunkt für das CD-Rom bekannt. Der Pfad ist distributionsabhängig und sollte entsprechend angepasst werden:

$_cdrom = "/media/cdrom" # list of CDROM devices

Nun machen wir die Datei config.sys und autoexec.bat im Installationsverzeichnis freedos ausfindig (/usr/local/share/dosemu/freedos zum Beispiel) und ändern/ergänzen folgende Einträge:

config.sys um cdrom.sys zu laden

rem uncomment for cdrom support (also autoexec.bat:shsucdx)
devicehigh=c:\dosemu\cdrom.sys
shellhigh=c:\command.com /e:1024 /p

autoexec.bat um den Mountpunkt auf d: zu verlinken

lredir d: linux\fs/media/cdrom c


Problemlösung

Falsches Bildformat im Fenstermodus

Unter dosemu kann es zu Fehlern in der Darstellung im Fenster kommen. Dabei wird ein falsches Fensterformat gewählt. Die Standardausgabe über X-Window kann nicht frei skaliert werden. Sollte es zu diesem Problem kommen kann xdosemu mit dem Parameter -S gestartet werden. Nun erfolgt die Ausgabe über SDL und das Fenster ist frei skalierbar.


Maus kann Fensterrand nicht erreichen

Unter dosemu kann es sowohl im Vollbild als auch im Fenstermodus zu Problemen beim Erreichen des Fensterrandes kommen. Der Cursor scheint dabei an einer unsichtbaren Barriere vor dem Rand zu hängen. Dieses Problem lässt sich lösen indem man einfach in die Maus einfach übertrieben in die entgegengesetzte Richtung bewegt.


Weiteres

Nützliche Befehle:

  • -w Schalter für Vollbild/Fenstermodus. Schaltet immer das Gegenteil von dem, was in der ~/.dosemurc eingestellt wurde
  • -S Ausgabe über SDL
  • -X Ausgabe über X-Windows


Screenshots

Albion
Siedler
Siedler 2
Mechanized Assault & Exploration

-- Beko 07:07, 27. Mai 2008 (UTC)