Wireless Interface für den Commodore 64
Das WiC64 besteht im Grunde genommen aus einem ESP 32 Wroom Entwicklerboard und einem Userportstecker um es an den C64 anzuschließen.
In der finalen Hardware-Version wurden allerdings noch Level-Shifter der Beschaltung hinzugefügt, da der C64 ja bekanntlich mit 5v Leveln arbeitet und der ESP32 nur mit 3.3v -
dies verhindert Beschädigungen am CIA und am ESP die möglicherweise Auftreten könnten wenn man keine Level-Shifter verwendet.
Ebenso wird der ESP32 über die 9v Wechselspannungs-Schiene versorgt da er beim Booten theoretisch über 250mA ziehen könnte und die 5v am Userport laut
C64 Handbuch nur mit 100mA belastet werden sollten. Als Schmankerl wurde ein OLED Display hinzugefügt auf dem des diverse nützliche Informationen zum WiC64
wie z.b. IP Adresse und Empfangsqualität abzulesen gibt.
Noch einer der ersten Prototypen ohne Levelshifter und Schnick-Schnack. Funktioniert aber der Aufbau wird so nicht Empfohlen
Hier der WiC64 Schaltplan:
Funktionsweise:
Der WiC64 ist über 8 Datenleitunge, zwei Handshake-Leitungen und über eine Control-Leitung mit dem C64 verbunden.
Die acht Datenleitungen am Userport sind PB0-B7 - Der WiC64 arbeitet also mit Paralleler Schnittstelle anstatt z.b. das WiFi Modem mit Serieller. Dadurch können sehr hohe Übertragungsgeschwindigkeiten erreicht werden.
PA2 wird als "Controll-Leitung" verwendet. Wenn der C64 eingeschaltet ist, ist PA2 HIGH - Der ESP32 schaltet dann seine Eingangsports automatisch alle auf Eingang. Somit wird verhindert das sowohl der C64 als auch der ESP32 gleichzeitig ihne Ports auf Ausgang schalten. So kontrolliert der C64 immer ob der ESP32 etwas Senden darf oder etwas Empfangen darf.
PC2 ist ein Signal vom C64 zum NodeMCU -Es löst beim C64 den PC2 IRQ aus wenn das CIA Datenregister gelesen ODER geschrieben wird. So weiß der ESP32: Der C64 hat gerade ein Datenbyte vom Bus gelesen oder geschrieben und es kann das nächste Byte auf den Bus gelegt werden.
FLAG2 ist ein Signal vom NodeMCU zum C64 - es geht kurz von HIGH auf LOW wenn ein Byte am Datenbus für den C64 anliegt - Löst IRQ beim C64 aus (Byte zum Abholen bereit). So weiß der C64: Der ESP32 hat gerade ein Datenbyte vom Bus gelesen oder geschrieben und es kann das nächste Byte auf den Bus gelegt werden.
Bausatz:
Der Bausatz besteht aus einer vorbestückten Platine mit Sockeln, einem Userport Stecker, Dem 32 Pin ESP32 WROOM und einem OLED Display.
Der fachkundige Bastler muss nur den Userport Stecker an die bestückte Platine BEIDSEITIG anlöten
Dann wird der ESP32 in den Sockel gesteckt - Die Antenne gehört LINKS über die Aussparung - Auf die richige Ausrichtung wie auf dem Foto achten !!!!
Zum Schluß noch das Display aufstecken und die Firmware flashen. Die Firmware und den Flasher findet Ihr hier im Forum.
Nicht vergessen auf der Rückseite den Userport auch fest zu Löten ...