Commodore 64 Emulator für macOS

Immer wenn ich einen Emulator für den Commodore 64 unter macOS nutzen wollte, habe ich in den letzten Jahren VICE genutzt. Allerdings wirkte VICE mittlerweile etwas angestaubt, sodass ich mich ein wenig umgeschaut habe und auf Virtual64 gestoßen bin. Neben dem Download über die Projektseite kann VirtualC64 über Homebrew installiert werden:

brew install virtualc64

Nach der Installation kann der Emulator gestartet werden und verlangt einige initiale Konfigurationsschritte.

Die ROMs müssen konfiguriert werden

Konfiguriert werden müssen die ROMs für das BASIC, den KERNAL und den Zeichensatz. Optional kann auch ein ROM für das 1541-Diskettenlaufwerk konfiguriert werden. Da die urheberrechtliche Situation dieser ROMs unklar ist, werden sie nicht mit dem Emulator mitgeliefert. VirtualC64 bietet die Möglichkeit freie Nachbauten dieser ROMs zu nutzen.

Ansonsten kann ein Original-ROM-Set genutzt werden:

basic.901226-01.bin
characters.901225-01.bin
kernal.901227-03.bin
1541-II.251968-03.bin

Nachdem die ROMs konfiguriert sind, kann der Emulator in Betrieb genommen werden. Neben den Grundfunktionalitäten, wie der Konfiguration der Joysticks bietet der Emulator eine Reihe von Funktionen, um in die Tiefe zu gehen, wie z.B. unterschiedlichste Inspektoren für die internen Zustände des Computers.

Ein Programm wird geladen

Der Quelltext des Emulators ist auf GitHub zu finden. Er ist unter der GPL in Version 2 lizenziert und damit freie Software.

Patching mit Beat

Zum Patchen von ROM-Dateien gibt es viele unterschiedliche Formate wie z.B. das IPS-Format. Als Nachfolger für eben dieses Format versteht sich BPS. Mit dem BPS-Format werden viele Beschränkungen des IPS-Formates aufgehoben, so gilt z.B. die Beschränkung auf 16 MiB für die Patch-Dateien nicht mehr. Auch die Information welches ROM sich für den Patch eignet, wird in den BPS-Dateien hinterlegt.

Beat unter Windows

Entwickelt wurde das Format von dem Entwickler hinter den Emulatoren bsnes und Higan. Heruntergeladen werden kann beat, die Software mit welcher BPS-Patches angewendet und erstellt werden, über die offizielle Seite des Autors. Lizenziert ist das Tool unter der GPL3 und damit freie Software.

MultiPatch; IPS-Patching unter macOS

Bei der Emulation von Spielen wie z.B. solchen für das SNES beschränken sich einige Spieler nicht nur auf das Spielen, sondern verändern ihre Lieblingsroms. Bei diesem sogenannten Rom Hacking, werden Patches erstellt, welche auf die ROMs angewendet werden können. Finden kann der geneigte Nutzer solche ROM-Hacks z.B. unter romhacking.net.

Meist liegen diese Patches in Form von sogenannten IPS-Dateien vor. Für Windows existieren eine Reihe von Werkzeugen, um solche Patches auf die entsprechenden ROMs anzuwenden. Bei einem entsprechenden Tools für macOS musste ich etwas suchen, bin aber schließlich mit MultiPatch fündig geworden.

MultiPatch unter macOS

Mithilfe von MultiPatch ist es möglich unterschiedlichste Patch-Formate wie IPS, BPS, UPS, PPF, XDelta, BSDiff und RUP auf ROMs anzuwenden. Heruntergeladen werden kann MultiPatch über die offizielle Seite des Autors. Daneben ist der Quelltext auf GitHub zu finden. MultiPatch selbst ist unter der GPL lizenziert und damit freie Software.

GameBoy-Adventures einfach entwickeln

Heute ist das dreißigjährige Jubiläum des GameBoy. Da wird der eine oder andere sicherlich nostalgisch an die gute alte Zeit zurückdenken. Nun kann auf dem GameBoy nicht nur gespielt werden was die Hersteller damals veröffentlichten, sondern auch eigene Entwicklungen für den GameBoy erstellt werden.

Das GB Studio unter macOS

Den meisten dürfte dies allerdings zu kompliziert sein. Schließlich ist der GameBoy aufgrund seiner begrenzten Ressourcen keine sonderlich einfache Umgebung. Mit dem GB Studio soll die Entwicklung trotzdem einfach möglich sein. Mithilfe des GB Studios ist es möglich grafische Adventure schnell und unkompliziert im Stil eines Game Makers zu erzeugen. Als Export-Formate werden ROMs und ein Web-Export unterstützt.

Das Spiele-ROM läuft im Emulator

Lizenziert ist GB Studio unter der MIT Lizenz. Da es auf Electron aufbaut, existieren Versionen für macOS, Linux und Windows. Der Quelltext des Projektes ist auf GitHub gehostet. Er ist unter der MIT-Lizenz lizenziert und damit freie Software. Die offizielle Seite des Projektes, auf der unter anderem die Dokumentation zu finden ist, ist unter gbstudio.dev zu finden.

Recalbox – Emulation mit dem Raspberry Pi

Für den Raspberry Pi gibt es eine Reihe von Distribution, welche die unterschiedlichsten Themengebiete, vom Konsolen-Linux zur grafischen Oberfläche, bis hin zu Spezialanwendungen, wie Media Center-Anwendungen, abbilden. Eine Distribution, welche sich der einfachen Emulation verschrieben hat ist RecalBox. Ziel der Distribution ist die Bereitstellung eines Paketes mit welchem man sofort starten kann. Dabei wird eine große Anzahl von Systemen vom NES, SNES und weiteren Nintendo-Konsolen, bis zu SEGA-Konsolen und weiteren Systemen unterstützt. Insgesamt enthält Recalbox eine Unterstützung für über 40 Systeme. Für die Installation reicht es aus, die Installationsdateien auf eine entsprechende SD-Karte zu kopieren und diese in den Raspberry Pi einzulegen. Anschließend startet eine NOOBS-Installation und danach kann die Recalbox genutzt werden.

Das EmulationStation-Frontend

Bluetooth-Controller werden, ein externes Bluetooth-Dongle vorausgesetzt, beim Start erkannt und können anschließend einfach konfiguriert werden. Die aktuelle Version der Recalbox trägt die Versionsnummer 4.0.2 und hat in Verbindung mit dem Raspberry Pi 3 ein kleines Problem; das interne Bluetooth-Modul wird nicht unterstützt. Dies wird erst mit Version 4.1 geschehen, allerdings ist der Release-Termin dieser Version noch nicht festgelegt. Auf der GitHub-Seite des Projektes findet sich dazu die Anzeige der entsprechenden Punkte welche vor dem Release noch erledigt werden sollen. Für die Nutzung der aktuellen Version benötigt man damit zwangsläufig einen externen Bluetooth-Dongle.

Für das Frontend zur Auswahl der Spiele und der entsprechenden Konsole wird EmulationStation genutzt. Als eigentliches Emulator-Frontend wird RetroArch genutzt. Der jeweils konkrete Emulatorkern, kann über die EmulationStation-Einstellungen konfiguriert werden. Zur Verwaltung der ROMs und der Recalbox-Konfiguration wird eine Weboberfläche bereitgestellt. Standardmäßig ist diese unter der URL:

http://recalbox.local

erreichbar. Im Recalbox Web Manager können ROMs per Drag & Drop hochgeleaden werden, das System überwacht und die Konfiguration angepasst werden. Auf dem Host recalbox.local läuft daneben ein SSH-Dienst mit welchem sich über das Terminal verbunden werden kann:

ssh 

Das Standardpasswort für den root-Account lautet recalboxroot. Der Quelltext der unterschiedlichen Subprojekte der Recalbox sind auf GitHub zu finden. Im Großen und Ganzen funktioniert Recalbox als Lösung Out of the Box sehr gut. Zu finden ist Recalbox unter recalbox.com.