Das MIST Board: Klassische Computer per FPGA neu implementiert (Teil 2)

In diesem Beitrag hatte ich über das MIST Board und dessen Implementierung des C64 berichtet. Das MIST Board kann aber auch noch zahlreiche weitere Systeme implementieren, wie z.B. den Atari ST, Atari 2600, Atari 5200 oder Atari 800 (XL/XE).

Atari ST

MIST Atari ST DesktopDie Konfiguration des Atari ST ist einfach: Den gewünschten Core von der Projektseite herunterladen und ihn zusammen mit einem Image des TOS Betriebssystems auf einer SD-Karte ablegen. Für meinen Test verwendete ich den Core core_150413_r1017.rbf und ein amerikanisches TOS 2.06. Damit das System direkt startet wurde der Core in core.rbf umbenannt, das TOS muss als tos.img auf der SD-Karte gespeichert werden. Damit der Systemstart nicht ewig dauert, sollte zudem auch das Diskettenimage disk_a.st und (optional) das Harddiskimage harddisk.hd vorhanden sein. Vorbereitete Images bekommt man ebenfalls von der Projektseite. Sinnvoll ist auch noch die Datei system.fnt, damit der originale Atari ST Zeichensatz angezeigt wird.

MIST Atari ST LemmingeDer Atari Core kann Programme nicht direkt von der SD-Karte laden, sondern nur aus Disketten- oder Harddiskimages. Man muss also vorher seine Software entsprechend in einem solchen Image speichern. Mit dem Atari Emulator „Hatari“ ist das recht leicht möglich. Mit diesem legt man zunächst ein leeres Image an, mountet dann ein Windows-Verzeichnis als zweites Laufwerk und kopiert die gewünschten Dateien auf das Image. Das ist unnötig umständlich, aber derzeit leider nicht anders möglich.

Der Core bildet den ST sehr gut nach. Sowohl die Monochrom-Auflösung als auch die beiden Farbauflösungen funktionieren wie erwartet. Anwenderprogramme, wie 1st Wordplus oder Calamus, liefen problemlos. Auch Spiele (inklusive Sound) funktionieren fehlerfrei und verwenden die angeschlossene USB-Tastatur bzw. USB-Maus als Eingabegeräte. Eine Atari-Maus kann am MIST nicht verwendet werden. Hat man das MIST Board um MIDI-Anschlüsse erweitert, sollen diese ebenfalls unterstützt werden, austesten konnte ich dieses Feature nicht.

Atari 2600

MIST Atari 2600

Sehr viel einfacher als ein Atari ST ist der Atari 2600 zu implementieren. So waren mit dem verwendeten Core a2600_141212_r719.rbf auch keine Probleme zu erwarten. Erfreulich ist, dass der Core *.a26 Dateien direkt von der SD-Karte lesen kann. Es reicht also aus die Spiele auf die SD-Karte zu kopieren.

Die Implementierung ist fehlerfrei. Alle getesteten Spiele liefen problemlos. Die Steuerung erfolgt über die Tastatur oder über einen Joystick bzw. Gamepad.

Atari 5200 / Atari 800 (XL/XE)

MIST Atari 5200Die Atari 5200 / Atari 800 (XL/XE) Implementierung ist etwas komplizierter einzurichten. Es müssen mehrere Verzeichnisse angelegt werden: \atari800, \atari800\rom, \atari800\user, \atar5200, \atar5200\rom, \atar5200\user (man beachte das fehlende „i“ bei „atar5200“). In den rom-Ordner gehören beim Atari 800 die Dateien ataribas.rom, atariosb.rom und atarixl.rom und beim Atari 5200 nur die Datei 5200.rom.

Die Spiele werden in den jeweiligen user-Ordner kopiert. Dabei sind mehrere Formate möglich: *.a52, *.atr, *.xfd, *.xex sowie *.car und *.bin. Die Core Datei liegt wieder im Hauptverzeichnis. Ich benutzte den atari5200core.rbf Core vom 22.4.2015.

Die Implementierung ist tadellos. Auch hier funktionierten alle getesteten Programme problemlos. Gewöhnungsbedürftig ist die Simulation eines Atari 5200 Gamepad über die Tastatur. Es kann aber auch ein normaler Atari Joystick angeschlossen werden.

Fazit

Als Fazit ist festzuhalten, dass die Implementierung der Atari-Systeme sehr gut gelungen ist. Bei der Implementierung des Atari STs würde ich mir noch wünschen, dass der Core direkt Dateien aus dem Dateisystem der SD-Karte lesen könnte bzw. die SD-Karte als Harddisk zur Verfügung stellen könnte. Die MIST Menüs der 8-Bitter sollten zur Bequemlichkeit den Wechsel zurück zu einem anderen Core ermöglichen ohne extra einen Reset ausführen zu müssen.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.