C64 MP3-Userportmodul
Das MP3‑Player Userport‑Modul ist eine Hardware-Erweiterung, welche es ermöglicht, komprimierte Audiodateien wie MP3 oder WAV auf einem C64/C128 abzuspielen. Die eigentliche Audiodekodierung erfolgt dabei nicht durch den Prozessor oder SID, sondern durch ein externes MP3‑Wiedergabemodul, das über den Userport angesteuert wird.
Beschreibung[Bearbeiten | Quelltext bearbeiten]
Das Modul wird direkt am Userport des C64/C128 angeschlossen und stellt einen eigenen Audio-Ausgang zur Verfügung. Die Steuerung der Wiedergabe (z. B. Start, Stopp, Dateianwahl) erfolgt über POKE-Befehle aus BASIC, während die Dekodierung vollständig von der externen Hardware übernommen wird. Mit einem anderen Stecker und separater Stromversorgung kann das Modul auch auch für [[CBM, PET und VC-20 umgebaut und verwendet werden.
Als Audioquelle dient eine MicroSD‑Karte, auf der sich die Audiodateien befinden. Die Ausgabe erfolgt über eine 3,5‑mm‑Stereo-Klinkenbuchse, an welche Aktivlautsprecher, Kopfhörer oder ein Verstärker angeschlossen werden kann. Ebenso gibt es einen 5W-Verstärker auf der Platine, welcher einen direkt angeschlossenen Lautsprecher betreiben kann. Beim Einstecken eines Steckers in die Klinkenbuchse wird Audio nur über die Buchse ausgegeben.
Technik[Bearbeiten | Quelltext bearbeiten]
Im Kern basiert das Modul auf dem handelsüblichen MP3‑Abspielmodul "DY-SV5W", das ursprünglich für Mikrocontroller‑Projekte gedacht ist und einzeln für weniger als € 10 erhältlich ist. Dieses Modul wird über eine einfache Adapterplatine mit dem Userport des C64/128 verbunden und erhält darüber auch seine 5V-Stromversorgung. Der Computer sendet Befehle (Dateiwahl, Start, Stopp) an das Modul; eine Übertragung von eigentlichen Audiodaten über den Userport erfolgt nicht.
Typische Merkmale:
- Wiedergabe von MP3‑Dateien (bis 320 kBit/s) und WAV‑Dateien (gespeichert auf SD-Karte)
- MicroSD‑Kartenslot
- 3,5‑mm‑Audioausgang
- Mikro-USB Anschluss, um Dateien auf das Modul direkt zu übertragen (während der Verbindung über USB sollte das Module nicht gleichzeitig mit dem Userport verbunden sein, um Stromrückflüsse zum C64 zu vermeiden!)
Hinweis: Bei der Verwendung an einem Ultimate 64 oder einem Commodore 64 Ultimate wird der separat erhältliche Userport‑Adapter benötigt. Zudem ist darauf zu achten, stets den jeweils zugehörigen Adapter zu verwenden, da die Adapter untereinander nicht vollständig kompatibel sind und das Modul sonst möglicherweise nicht funktioniert.
Programmierung[Bearbeiten | Quelltext bearbeiten]
Auf der SD-Karte liegen im Hauptverzeichnis die abzuspielenden WAV- bzw. MP3-Dateien. Sie müssen als Dateien mit konstanter Bitrate und fünfstelligen Zahlennamen vorliegen:
00001.MP3 00002.MP3 .. 00031_NAME.MP3 .. 00254.MP3
Diese Zahlen im Datei-Namen werden später als Daten an den Userport gesendet und die jeweilige Wav/MP3-Datei abgespielt. Es können maximal 254 Dateien adressiert werden.
Verwendung am C64 / C128 unter BASIC[Bearbeiten | Quelltext bearbeiten]
Userport initialisieren
POKE 56579,255:REM DATENPORT AUF AUSGANG POKE 56577,255
MP3-Datei auswählen und kurze Pause:
POKE 56577,255-[MP3-Nummer] FOR I=1TO150:NEXTI
Abspielen stoppen:
POKE 56577,0
Verhindert wiederholte Wiedergabe:
POKE 56577,255
Beispielprogramm (spielt Datei 00064.mp3 einmal ab)
10 POKE 56579,255 20 POKE 56577,255 30 FOR I=0 TO 150:NEXT I 40 POKE 56577,255-64 50 FOR I=0 TO 150:NEXT I 60 POKE 56577,255
Geschichte[Bearbeiten | Quelltext bearbeiten]
Ein frühes, bekanntes MP3-Player-Modul für CBM, PET, VIC‑20, C64 und C128 mit dem Namen „Fun MP3-Player“ wurde von Markus Neeb aka X2themax entwickelt und wird bis heute auf seiner Website angeboten. Das Modul wird fertig gebaut geliefert und enthält, neben vorinstallierten MP3-Samples, auch eine Programmieranleitung und Demodateien zum ausprobieren.[1]
Ein weitere Entwicklung eines MP3‑Player‑Moduls wurde ab etwa 2023 von einem italienischen Entwickler namens Pietro in kleiner Stückzahl gefertigt und unter anderem über eBay vertrieben. Dieses Design wurde später nicht mehr produziert. [2]
Weiterhin erhältlicher Bausatz von RetroArts greift das Grundprinzip dieser Geräte auf und ist funktional ähnlich zu anderen Userport‑MP3‑Lösungen wie dem „Fun MP3‑Player“. Die enthaltene Adapterplatine stammt vom User CapFuture1975 aus dem Forum64. [3]
Größere Aufmerksamkeit erlangte das Konzept durch seine Implementierung im Spiel Evil Dungeon von RetroArts, womit erstmalig eine vollständige Sprachwiedergabe in einem C64-Spiel realisiert wurde.[4] [5]
Weblinks[Bearbeiten | Quelltext bearbeiten]
- Fun MP3‑Player Userport‑Modul für Commodore CBM, PET, VIC20, C64 und C128
- A C64 MP3 Player! – Lyonsden Blog

- MP3‑Player Userport‑Modul Bausatz für C64/128 (RetroArts)
- 3D-Druck-Gehäuse
