Der PiTap Tape-Emulator für den Commodore 64

In diesem Blog wurden schon zahlreiche Laufwerk-Alternativen für den Commodore 64 vorgestellt, darunter der Tapuino, die Tape-Cart und andere. Jeder Laufwerk-Ermulator hat seine Vor- und Nachteile. In dieser Anleitung geht es jedoch um den PiTap, der mehrere Funktionen dieser Kassetten-Emulatoren in einem Gerät vereint. Wie der Name schon sagt, basiert der PiTap auf einem Raspberry Pi. Dank weniger Komponenten und einer einfachen Softwareinstallation ist dieses kleine Projekt auch für Anfänger geeignet.

Quelle dieser Anleitung: gp2x.org/pitap/ von Mike (GPL licensed)


Bevor es losgeht, noch ein paar Hinweise (Wichtig!):
  • Überprüfe die Lötstellen. Ein Kurzschluss könnte den Raspberry Pi sowie den C64 zerstören.
  • Achte auf die Ausrichtung der Komponenten mit Polarität. Achte auf die Ausrichtung des Datasette-Steckers, falls dieser nicht kodiert ist.
  • Arbeiten an der Hardware dürfen ausschließlich im spannungsfreien Zustand erfolgen. Stecke den Datasette-Stecker nur in den Datasette-Port, wenn alle Geräte ausgeschaltet sind.
  • Statische Ladungen sollten durch das Tragen eines antistatischen Armbands vermieden werden.
  • Es wird keine Verantwortung für Schäden übernommen, die direkt oder indirekt durch diese Anleitung entstehen.

Was kann der PiTap?

Wie bereits erwähnt, kombiniert der PiTap mehrere Funktionen in einem Gerät. Im Kern ist er ein Datasette Emulator, mit dem Kassetten-Images geladen werden können. Doch das ist nur die Spitze des Eisbergs. Die folgende Liste zeigt die Eigenschaften dieses vielseitigen Geräts.
  • Laden von Kassetten-Images im Standard- und Turbo Tape Format, was zu deutlich kürzeren Ladezeiten führt
  • Unterstützung von Tape-Cart Images
  • Ein SSD-Display, das den Inhalt der SD-Karte und das eingelegte Kassetten-Image anzeigt.
  • Steuerung über Taster und Tastatur
  • Datenübertragung vom PC auf den PiTap über Wi-Fi
  • Daten auf einer virtuellen Kassette speichern

Die Komponenten

Anders als bei vielen anderen Projekten gibt es für diesen Tape-Emulator keine vorgefertigte leere Platine. Wer ihn nachbauen möchte, muss ihn also auf einer Experimentierplatine zusammenbauen. Alternativ kann der PiTap auch als Fertiglösung unter myretrostore.co.uk oder ebay.co.uk erworben werden. Neben der Experimentierplatine benötigen wir die folgenden Komponenten:

Der Aufbau

Der Entwickler dieses Projekts hat ein übersichtliches Schema für den PiTap bereitgestellt.

Original circuit by Mike (gp2x.org/pitap/)

Das Verdrahtungs-Schema zeigt für jede LED einen Vorwiderstand von mindestens 220 Ohm. Möchte man, dass die LEDs weniger hell leuchten, kann ein höherer Widerstandswert gewählt werden.

Die Software

Die Installation der PiTap-Software ist denkbar einfach. Lade die PiTap-Firmware von der Webseite des Entwicklers herunter. Entpacke das ZIP-Archiv und kopiere den Inhalt des Ordners “sdcard” in das Stammverzeichnis der SD-Karte des Raspberry Pi. Damit ist die Installation der Firmware abgeschlossen.

Der Funktionstest

Im ersten Funktionstest überprüfen wir die Verbindung zwischen PiTap und C64. Schalte den C64 aus und stecke den PiTap in den Datasette-Port. Achte dabei auf die richtige Ausrichtung des Steckers, da dieser ohne Codierung falsch herum eingesteckt werden kann. Versorge anschließend den Raspberry Pi mit Strom und schalte den C64 ein.


Der Inhalt der SD-Karte sollte nun auf dem kleinen SSD-Display angezeigt werden. Eine bereits vorhandene PRG-Datei ist ebenfalls enthalten, die wir in diesem Test laden werden. Wähle die Datei “browser.prg” und drücke die Insert-Taste am PiTap. Gib den C64 Basic Befehl LOAD ein und starte die Datasette-Wiedergabe mit der Play-Taste am PiTap. Nach kurzer Ladezeit sollte das Programm geladen werden.


Nach dem Laden des Browsers können wir bequem andere Programme auf der SD-Karte auswählen, ohne den LOAD-Befehl jedes Mal eingeben zu müssen.

Die Wi-Fi Konnektivität

Um Daten von einem beliebigen Internet-Browser eines PCs auf den Raspberry Pi des PiTap zu kopieren, müssen wir folgende Schritte befolgen. Hinweis: Bei meinen Tests musste ich mehrere Raspberry Pi Varianten ausprobieren, bis ich eine fand, die die WLAN-Einbindung unterstützt. Der Raspberry Pi Zero 2W und der 3B+ funktionierten bei meinen Tests nicht, während die WLAN-Verbindung mit dem Raspberry Pi 3A+ ohne Probleme aufgebaut wurde. Laut einem Bericht im Lemon64-Forum hatte eine Person ähnliche Probleme, jedoch mit anderen Varianten. Es ist möglich, dass verschiedene WLAN-Chip-Varianten in den Raspberry Pis verbaut sind, die nicht alle von der PiTap-Firmware unterstützt werden.

Öffne die Konfigurationsdatei wpa_supplicant.conf, die sich auf der SD-Karte befindet, mit einem beliebigen Texteditor und gib deine WLAN-Daten ein. Entferne außerdem die Raute vor „Country“ und gib das entsprechende Länderkürzel ein.


Ist dies erledigt, stecken wir die SD-Karte wieder in den PiTap und schalten den C64 ein. Bei erfolgreicher Verbindung erscheint auf dem SSD-Display die IP-Adresse des PiTap. Erscheint innerhalb von 10 Sekunden keine IP-Adresse, ist die Raspberry Pi-Version wahrscheinlich nicht kompatibel oder die WLAN-Informationen wurden falsch eingegeben.


Sobald die IP-Adresse angezeigt wird, öffnen wir den Browser auf dem PC, der sich im selben WLAN-Netz befindet. Wir geben die IP-Adresse des PiTap ein und sollten ein übersichtliches Menü sehen, über das wir Programme auswählen und hochladen können.


Durch Klicken auf den Eject-Button wird eine Upload-Funktion angezeigt, mit der wir beliebige Tape- oder PRG-Dateien hochladen können. Diese Dateien werden dann in einer Liste angezeigt. Durch Klicken auf einen Eintrag in dieser Liste wird das entsprechende Image in der virtuellen Datasette eingebunden, die wir anschließend mit dem LOAD-Befehl auf den C64 laden können.


Wie bereits erwähnt, unterstützt der PiTap Tape-Cart Images, einschließlich tcrt-images mit einer Größe von bis zu 2 MB. Als Beispiel dient die TapeCart Slideshow. Wir laden das Image über das Browser Interface hoch und übertragen es auf den C64. PiTap erkennt automatisch, dass es sich um ein Tape-Cart Image handelt und behandelt es entsprechend. Im Gegensatz zu traditionellen Tapes können somit auch Daten nachgeladen werden, wie bei Disketten.


Im Optionsmenü unten links finden wir eine Reihe von Optionen, darunter die Wahl der Ladeart für virtuelle Kassetten. Die Option „Kernal“ lädt Kassetten mit ihrer ursprünglichen Geschwindigkeit. Die Option „Turbo Tape with Loader“ konvertiert die Tape-Images automatisch in das Turbo Tape Format, was zu einer deutlich geringeren Ladezeit führt.


Genau wie Kassetten-Images können wir SID-Dateien auf den C64 übertragen und mit dem bereits auf der SD-Karte installierten Programm Sidplay64 wiedergeben. Da der PiTap das Nachladen von Dateien ermöglicht, können wir mit Sidplay64 den Inhalt der SD-Karte durchsuchen und beliebige SID-Dateien abspielen.

HDMI Bildausgabe und Tastatur

Abschließend sei noch die Bildausgabe über HDMI und die Steuerung mit einer USB-Tastatur erwähnt. Der HDMI-Port des Raspberry Pi gibt ein Bild aus, das ein grafisches Menü anzeigt. Über dieses Menü können wir die auf der SD-Karte gespeicherten Images auswählen. Sollte ein optionales Bild (PNG 384x200) für das jeweilige Tape-Image vorhanden sein, wird es ebenfalls im Menü angezeigt. Dieses Bild muss denselben Namen wie das Image tragen. Mit einer USB-Tastatur lässt sich das Menü außerdem bequem steuern, ohne die Tasten auf dem PiTap verwenden zu müssen. Die Tastenbelegung der USB-Tastatur ist wie folgt:
  • Cursor Tasten - Durch das Dateiverzeichnis navigieren
  • Enter Taste - Wählt eine Datei oder Verzeichnis
  • Backspace Taste - Eine Verzeichnisebene nach oben wechseln
  • F1 - Play
  • F2 - Stop
  • F4 - Record
  • + Vorspulen
  • - Zurückspulen