Atari ST Emulator steem
 

In diesem Beitrag geht es um den Atari ST-Emulator steem, bzw. seine Linux-Variante xsteem. Wer sich noch an alte Zeiten erinnert, der Atari ST erfreute sich damals unter Musikern großer beliebtheit, da er von Haus aus mit einer MIDI-Schnittstelle ausgerüstet ist. Wer nicht weiß, was das ist:
MIDI steht für Musical Instruments Digital Interface und beschreibt eine Schnittstelle zwischen Computern und elektronischen Musikinstrumenten. Diese Schnittstelle überträgt keine Audio-Daten, sondern lediglich Midi-Befehle in serieller Abfolge. Ein Standard-Midi Befehl ist z.B. welche Taste an einem Keyboard gedrückt wurde und mit welcher Intensität diese Taste gedrückt wurde. Zusätzlich können auch noch viele weitere Befehle übertragen werden, z.B. von Fußpedalen oder Pitch-Wheels. Damit ist es möglich Musikstücke in einem Computer aufzunehmen und diese nachträglich noch zu bearbeiten. Hat man z.B. daneben gegriffen, kann man überflüssige Noten löschen oder falsche Noten in der Tonhöhe verschieben oder sogar zeitlich an die korrekte Position schieben. Man kann auch Noten "von Hand" eingeben und so einen absolut sauberen Schlagzeugtakt programmieren. Das eröffnet ungeahnte, kreative Möglichkeiten für eigene Musikproduktionen. Leider ist der Atari ST in Computerbegriffen aus der Steinzeit, da er aus den Anfängen der Heimcomputer stammt und damit ist er hoffnungslos veraltet. Sollte er kaputt gehen, wird es extrem schwer bis unmöglich Ersatzteile zu finden. Hier bietet sich der Atari ST-Emulator steem an, der einen kompletten Atari ST simulieren kann. Alles was man dafür benötigt ist das Programm und ein sogenanntes TOS-Image. Das TOS (The Operating System) ist das Betriebssystem des Atari ST.

steem und xsteem installieren

Weder steem noch xsteem benötigen eine Installation. Unter steem.atari.st kann man sich die benötigten Dateien entweder als Zip-Archiv (windows) oder als tar-Archiv (Linux) runterladen. Man entpackt die Archive in ein Verzeichnis freier Wahl und kann sofort loslegen. Vorher sollte man natürlich noch das TOS-Image in den steem-Ordner kopieren. Wer wie ich noch einen eigenen Atari ST besitzt, kann auch mittels des Programms tosdump ein eigenes TOS-Image erstellen. Dazu muß man das Programm TOSDUMP.PRG auf dem Atari ausführen. Außerdem empfiehlt es sich einen Floppy-Ordner und -falls gewünscht- einen Festplatten-Ordner anzulegen. Ich habe meine Ordner schlicht mit floppy-a und harddisk-c betitelt. Mittels des Floppy-Ordners kann man auf Floppy-Images zugreifen, während man in den Festplatten-Ordner direkt Atari_ST Dateien ablegen kann.

Nach dem Start von xsteem präsentiert sich dieses Fenster:

xsteem-pic01.jpg

Mittels Continue wird der Assitent von xsteem gestartet, der einen durch die wichtigsten Einstellungen führt und gleich mal nach dem TOS-Image fragt.

xsteem-pic02.jpg

Nachdem wir das Image ausgewählt haben, müssen wir den für unsere Disketten vorgesehenen Ordner angeben, in meinem Fall floppy-a.

xsteem-pic03.jpg

Danach folgt die Angabe ein oder mehrerer Festplatten-Ordner.

xsteem-pic04.jpg

Nach diesen wenigen Schritten ist xsteem eingerichtet und bereit für den ersten Start.

xsteem-pic05.jpg

Dieser sieht so aus:

xsteem-pic06.jpg

Nach einem Klick auf das gelbe Play-Dreieck, startet unser virtueller Atari ST und die Maus ist im Atari-Fenster gefangen.

xsteem-pic07.jpg

Um die Maus wieder aus dem Fenster zu befreien, dient die Pause/Untbr-Taste. Die kleinen Symbole oberhalb des Fensters sind selbsterkärend, bzw. wenn man mit der Maus drüber fährt, poppt deren Bedeutung auf. Eines der wichtigsten Icons ist der Schraubenschlüssel. Öffnet er doch das Konfigurations-Menü von xsteem.

xsteem-pic08.jpg

Ein Hinweis zum Atari-Desktop: wenn man einen Atari ST -sei es jetzt virtuell oder real- abstartet, durchsucht er die angeschlossenen Laufwerke wie Floppys oder Festplatten nach bootbarem Material. Daher wird bei einem fehlenden Floppy-Image von xsteem ein leeres Standard-Image im Floppy-Ordner abgelegt, welches eine leere Diskette simuliert, damit es beim Start keine Verzögerung gibt, weil der Atari nach einer Floppy sucht. Bindet man nun sein eigenes Floppy-Image ein oder kopiert Atari-Dateien in den Festplatten-Ordner und enthält eines von beiden eine sogenannte DESKTOP.INF, wird der Desktop anhand den Informationen dieser Datei aufgebaut. Besagen die Informationen daß nur ein Floppy-Icon erstellt werden soll, fehlt -obwohl eingerichtet- das Icon für die Festplatte C. In dem Fall ist es sinnvoll entweder die DESKTOP.INF zu löschen oder sich die gewünschte Desktop-Umgebung einzurichten und unter "Extras" auf "Arbeit sichern" zu klicken, denn dann wird eine neue DESKTOP.INF des momentanes Desktops geschrieben. Sollte das Harddisk-Icon durch eine vorhergehende DESKTOP.INF fehlen, kann man es ganz einfach neu erstellen in dem man auf ein Floppy-Laufwerk klickt und im Menü "Extras" auf "Floppy anmelden..." klickt. Anschließend einfach den Laufwerksbuchstaben C und die Bezeichnung für das Laufwerk vergeben.

Atari-Disketten kopieren

Um AtariST Disketten unter Linux zu lesen, benötigt man die Pakete mtools und fdutils. In letzterem Paket steckt der Befehl setfdprm, welchen wir für die korrekte Zuweisung des Disketten-Formats brauchen.

Vorher noch ein Hinweis: Atari Disketten verwenden fast das gleiche Format wie FAT, schreiben aber eine andere Kennung in den Startsektor, was das Programm mtools verwirren kann. Daher muß man vorher die Überprüfung des Diskettenformats abschalten. Leider konnte ich bei mir trotz der Abschaltung nicht jede Diskette lesen die unter dem Atari ST formatiert wurde. Daher mußte ich einen kleinen Umweg gehen, aber dazu gleich mehr. Fangen wir erst einmal mit dem grundsätzlichen Vorgehen an:

Um die Überprüfung des Diskettenformats abzuschalten, muß man in der Konfigurations-Datei von mtools /etc/mtools.conf folgenden Eintrag tätigen:
MTOOLS_SKIP_CHECK=1
Anschließend gibt man das Format auf der Konsole mit dem setfdprm-Befehl an:
# setfdprm /dev/fd0 "720/720"
Nun sollte man mit zwei Befehlen auf die Atari-Disketten zugreifen können:
# mdir a:                  - zeigt den Inhalt der Diskette an.
# mcopy a:*.* .       - kopiert sämtliche Dateien in das aktuelle Verzeichnis. Leider wird durch den Platzhalter-Ausdruck *.* keine Ordner mitkopiert, da die ja keine Endung enthalten.

Wie schon erwähnt, konnte mein PC mit Debian lenny trotz der Einstellungen manche Atari-Disketten nicht lesen, während andere ohne Probleme funktionierten, was vermutlich an der Formatierung lag. Disketten die ich unter dem PC im 720KB-Format formatiert hatte, konnten von beiden Geräten -Atari und PC- gelesen werden, während manche im Atari formatierte Disketten im PC trotz der Einstellungen in den mtools streikten. Die Lösung ist simpel, aber bei vielen Dateien pro Diskette arbeitsaufwendig: Man muß die Dateien innerhalb des Atari auf eine MS-DOS-formatierte Diskette umkopieren und kann so die Dateien für den PC lesbar machen. Möchte man von einer Atari-Diskette ein Image im PC machen, hilft der Linux-Befehl dd, welcher bitgenaue Kopien von Datenträgern ermöglicht. Natürlich muß die Diskette im PC lesbar sein. Ist das der Fall erstellt der folgende Befehl ein Disketten-Image:
# dd if=/dev/fd0 of=image.st