Dreamcast wiederentdeckt / Docker Devkit

Page content

Vor Kurzem bin ich mal wieder über meine Sega Dreamcast gestolpert, die schon seit einiger Zeit ein Schattendasein in einer Stapelbox geführt hat. Ich habe sie bereits vor einigen Jahren schon mit einem GDROM-Emulator ausgestattet, den Akku der Echtzeituhr getauscht, eine Wechselhalterung für den Akku eingebaut, der laute Lüfter durch einen Noctua Lüfter und auch schon das alte Netzteil durch ein Pico-PSU ersetzt. Für den GDROM Emulator habe ich entsprechende Einsätze gedruckt, das Pico PSU wurde auf eine Halterung aufgesetzt und auch für den Lüfter habe ich einige Vorlagen bei Thingiverse gefunden, die den Einbau erheblich erleichtert haben. Das sieht dann momentan so aus (ist nicht mehr viel vom Original über…):

Dreamcast Umbau

Umgebaute Sega Dreamcast

Also wurde die Dreamcast mal wieder aufgebaut und eine Runde Crazy Taxi gespielt. Evtl. hänge ich auch meinen RasPi mit DreamPi wieder an die Dreamcast und spiele eine Runde Phantasy Star Online auf dem Sylverant Server.

Coders Cable Umbau

In meiner Stapelbox lag auch noch mein altes Coders Cable von Lik Sang, das einen MAX3222 Chip zur Wandlung von 3.3V auf RS232 verwendet hat. Heutzutage ist das nicht mehr üblich und deshalb habe ich das Kabel abgetrennt und ein FTDI USB nach Seriell Konverter drangehängt. Wenn ich mal etwas mehr Zeit haben sollte, werde ich mal schauen, ob man da nicht auch einen ESP32 dranhängen kann.

FTDI Coders Cable

Sega Dreamcast Coders Cable mit FTDI USB-Seriell Konverter

Docker KallistiOS Development Kit

Wenn man ein Coders Cable testen möchte, dann ist es natürlich sinnvoll, ein kleines Programm zu schreiben, das z.B. einen 3D Würfel rendert und auf dem Bildschirm rotieren lässt. Um das Programm zu erstellen, benötigt man ein Cross Development Kit und davor hat es mir bisher immer wieder etwas gegraut. Man musste dafür damals erstmal eine entsprechende Umgebung samt dem KallistiOS Development Kit kompilieren und das hat bei mir selten auf Anhieb funktioniert. Glücklicherweise gibt es heute bereits komplett fertige Development Kits bspw. das DreamSDK, das als Installer für Windows daher kommt. Da ich aber nichts installieren möchte, habe ich mich dann für ein Docker Image entschieden, das das komplette Development Kit mitbringt und so konnte ich, nachdem ich das KallistiOS GitHub Repository lokal geklont habe, die enthaltenen Beispiele über die Kommandozeile auf Anhieb kompilieren. Ich verwende dafür den Befehl

docker run -it –rm -v :/src einsteinx2/dcdev-kos-toolchain:gcc-9

um eine interaktive Konsole zu starten und dort dann die Make Dateien aufzurufen. Danach purzeln die Kompilate für die Dreamcast in den entsprechenden Verzeichnissen heraus.
Die Dateien habe ich bisher erstmal mit einer alten Version des DC-Tool-Serial übertragen und gestartet. Die Version v1.0.6 habe ich leider bisher noch nicht für Windows gefunden, also werde ich mich die Tage wohl mal dran setzen und das selbst kompilieren und vielleicht hier zur Verfügung stellen. Es ist auf jeden Fall ganz schön, mal wieder die alten Spiele zu zocken und auch mal wieder zu schauen, was die Homebrew Szene momentan noch so alles für die alten Konsole bastelt.