USB Adapter for Gameport Joysticks and Atari, C64, Amiga Joysticks


JoyAdapter is for connecting an analog gameport joystick or a digital (atari, c64, amiga ...) joystick to the USB port.
The firmware is based on the MJoy-project from Mindaugas Milasauskas which is based on the USB firmware from Igor Cesko.
No additional software or driver is needed - just plug and play.


  • supports analog gameport joysticks and digital joysticks (atari, c64, amiga ...)
  • no driver required
  • USB powered

Changes, Modifications:

- interrupt pin is now connected to "D-" line because due to the 1.5 kOhm resistor it is more robust against electrical interference
- modified "INT0Handler" - removed possible deadlock situation if wrong interrupts occur
- modified "SendPreparedUSBAnswer" - level changes of "D+" and "D-" lines at same time instance
- ReportDescriptor now describes a simple joystick with X/Y (8bit) and two buttons with transmission of data in one report only
- string reported to windows is not resctricted to 4 characters anymore (the solution for this problem was posted on the USB-IF Developers Discussion Forum by "Grendel")


Images of my assembly:

Schematic (click for a bigger image):


IC2 Atmel AVR Mega8
Q1 Crystal, 12 MHz
C1, C2 22p
C3, C4, C6, C7, C8 100n
C5 10u
R1 4k7
R6 2k2
R2, R5 100k
R3, R4 100
SV1 pinheader 5x2
X2 d-sub connector, 15-pol, female

d-sub connector, 9-pol, male

X3 usb connector (B)



current version:
last version:


AVR ICSP Adapter Par