Saturn to Megadrive controller adaptor

Started by micro, October 02, 2014, 04:46:21 AM

Previous topic - Next topic


So here's the schematic and hex file to build an adaptor with which you can use your Saturn controller on the Megadrive. Big thanks to Raphaël Assénat for providing very useful informations regarding the Megadrive 6-button protocol (and techniques for fast interrupt handling with the AVR microcontroller). ;D


  • supports the standard Saturn controller as well as the 3D analog controller
  • acts as 6-button controller on the Megadrive
  • force 3-button mode by holding R while turning on the console (currently works only with the standard Saturn controller
  • optional LED to indicate that a valid Saturn controller is plugged in

needed parts:

  • 1x Saturn extension cable or Saturn controller socket of a broken console
  • 1x Megadrive extension cable or controller cable of a Megadrive controller
  • 1x ATMega48A microcontroller
  • 1x 20 MHz crystal
  • 2x 18 or 22 pF ceramic capacitor
  • 1x 100 nF ceramic capacitor
  • 1x 10 kOhm resistor
  • 1x pinheader for connecting the ISP programmer
  • 1x 220 Ohm resistor (optional)
  • 1x LED (optional)
  • 1x ISP programmer to flash the Atmel AVR microcontroller with the .hex file

Fuse bits:
low byte: 0xFF
high byte: 0xDF


Pinout of Saturn socket and Megadrive plug:

I haven't installed the circuit into a suitable case yet, so here's the complete circuit on a breadboard:


You never cease to amaze me, dude.

Fantastic work as always!  :)


Thanks! ;)

I finally found a suitable case, this is the result:


Thanks so much for this micro, I just got around to finishing mine and it works great. Don't think my Sega Genesis 6 button pad will see much use now.


Wow, I love your small case as well as the strain relief/cable outlet. Good job!  :D

Anyone want sell one? This is beyond my wiring skills.