Last Updated on 8. October 2026 by SuffocationLink status: OK
Dieser Beitrag muss mal etwas anders anfangen. Ich habe diesen rund 35-40 Jahre alten Joystick. Dieser wurde von mir damals am C16, C64, Atari2600 und später dann am Amiga bespielt. Ich hatte zu der Zeit mehrere Joysticks und dieser war nicht mein liebster. Ich hatte ihn mir gekauft, weil er aus Metall ist und denen der Arcade Automaten ähnelt. Auch ist er komplett auseinandernehmbar und man kann die Taster ersetzen. Die Competition Pro Serie mochte ich allerdings lieber 🙂

Nun habe ich mir vor kurzem einen C64 Brotkasten zugelegt und ihn repariert. Auch wenn ich mich bei der Reparatur selten dämlich angestellt habe, läuft er nun wieder. Was macht man also mit einem 40 Jahre alten Computer … genau, man spielt 40 Jahre alte Spiele :). Dafür braucht man einen Joystick. Leider funktionierte dieser erst einmal nicht richtig und ich wusste nicht, ob es am C64 oder am Joystick liegt.
Da ich für mich das Löten wiederentdeckt habe, war es zu einfach, den Joystick mit einem Multimeter durchzutesten. Ich wollte auch etwas einfach zu benutzendes haben, welches ich auf andere noch vorhandene Joysticks anwenden kann. Eine Möglichkeit wäre es, eine Platine diskret aufzubauen und mit LEDs die Richtungen und den Feuerknopf anzuzeigen. Nun habe ich aber noch ein paar Arduinos hier rumfliegen, die ich wegen ihrer fehlenden WIFI Fähigkeiten eigentlich nicht nutze. Außerdem, wie der „Zufall“ so spielt, hatte ich mir gerade ein paar Lochrasterplatinen für den Arduino bestellt. Geistig stärkere Personen als ich hätten wahrscheinlich zum Multimeter gegriffen und sich viel Zeit gespart, aber so denke ich nun mal nicht.
Also habe ich meinen eigenen Arduino Shield gebaut. Wie er aussieht und was er kann, seht ihr im Folgenden. Dass ich die erste Platine weggeschmissen habe und nochmal neu gestartet bin, verschweige ich an dieser Stelle ;).
Facts
Es soll eine Arduino Zusatzplatine gebaut werden, die es ermöglicht, C64 kompatible Joysticks zu testen. Später soll es auch möglich sein, Joysticks für andere Computersysteme zu testen.
Materials list
- 1x Arduino Uno
- 1x I²C Oled Display (Ich verwende 128×32)
- 1x 5 LEDs (I am using 2x green, 2x red, 1x yellow)
- 1x 220 Ohm for the red LEDs, 3x 150 Ohm for the others
- 1x Stück 9 Pol Flachbandkabel
- 1x Flat plug 10 pin (1)
- 1x 10 Pol Pinheader Anschluss (2)
- 1x D-sub female connector for ribbon cable (3)
- 2x 4-pin female pin header for display (2nd as support)
- 30 Pol Stiftleiste für die Verbindung zum Arduino
- Any stripboard (I have the one from KeyStudioLink status: Unknown uses (not sponsored 😉 )
(1,2,3) Ich habe mich für diese Lösung mit dem Kabel und Pinheader Anschluss für die 9 Pol Sub D entschieden, weil ich keine SubD Stecker für Lochraster hatte. Zusätzlich hat diese noch den charmanten Vorteil, dass man Kabel für andere Joysticks oder Pinnungen machen könnte.
Verbrauchsmaterial
- Solder
- Silver wire
- Wire bridges
Areas of application
- Testing of old C64, C16, Atari and Amiga joysticks
Views




Structure


Programming
Die Programmierung ist nicht schwer, somit werde ich erstmal nicht näher darauf eingehen. Sollten Fragen sein, dann bitte in den Kommentaren melden. Grundsätzlich schaltet jeder Taster des Joysticks eine LED. Zusätzlich werden noch die beiden analogen Eingänge am Pin 5 und 9 ausgelesen, diese werden für analoge Joysticks wie auch für die Paddles vom Atari verwendet. Alles, die Paddles und auch die Joystick Richtungen samt Feuerknopf werden noch auf dem Display ausgegeben.
Libraries
Es werden nur zwei zusätzliche Bibliotheken für das Oled Display benötigt.
https://github.com/adafruit/Adafruit_SSD1306Link status: OK
https://github.com/adafruit/Adafruit-GFX-LibraryLink status: OK
Test programme
Der Code ist unter folgendem Link auf Github zu finden:
https://github.com/sfambach/arduino/tree/master/shields/RetroJoystickTester9PinSubDLink status: OK
Compile and deploy.

Das Display hat noch einen kleinen Fehler. Manchmal schießt der Balken über die Anzeige hinaus. Ich bin noch nicht dahintergekommen, wie das zusammenhängt, ich suche aber auch noch die Drehregler, um es zu testen.
Problems
Die Beschreibungen für den 9Pol Sub D Anschluss sind nicht immer richtig und eindeutig. Am besten sich nochmal rückversichern.
Miscellaneous
No.
Conclusion
Das war mal wieder ein spaßiges Projekt, wer mehr Details braucht, bitte melden.
Related Posts
- Arduino VENTUNO QLink status: OK
- Arduino UNO QLink status: OK
- Digispark Rev.3 rettenLink status: OK
- Retro Projekt – FDC USB Floppy Disk ControllerLink status: OK
- Arduino Nano 33 BLELink status: OK
- Arduino Nano 33 IoTLink status: OK
- Preview – Arduino Motor Shield mit L298PLink status: OK
- Preview – Arduino Mega Logger ShieldLink status: OK
- Preview – Prototyp Schild für Arduino Mega Link status: OK
- Preview – Arduino Nano ZusatzplatineLink status: OK
Sources
https://github.com/adafruit/Adafruit_SSD1306Link status: OK
https://github.com/adafruit/Adafruit-GFX-LibraryLink status: OK
Log
| Date | Change | Author |
|---|---|---|
| 08.10.2026 | Überschriften-Hierarchie korrigiert (H1→H2, Unterebenen eine Stufe tiefer) | Suffocation |
| 04.10.2026 | Rechtschreibung korrigiert: Tippfehler, Kommas, Groß-/Kleinschreibung | Suffocation |
| 03.10.2026 | Logbuch-Tabelle auf Log-Liste umgestellt | Suffocation |
| 01.07.2024 | 1x Proofread | Suffocation |
| 30.06.2024 | Document written | Suffocation |
| 20.06.2024 | Started | Suffocation |
| 18.06.2024 | Post created | Suffocation |