Skip to content
Giorgioggì edited this page Apr 24, 2019 · 3 revisions

Originally, MegaDrive++ was born as a simple Arduino-based clone of the famous D4s/Seb mod, with additional IGR functionalities. I tended to like the idea of soldering a single chip inside my console and have some extras.

At that time I was starting out with Arduino and microcontrollers in general, so I ported the code to many different chips, as long as an Arduino core was available for them.

But then it became apparent that in order to add more functionalities, more pins were needed. Also, maintaining the different configurations for the chips with less resources proved too time-consuming, and as you know I am already quite lagging behind the needed maintenance for this tool.

Also, I really wanted to support 6-button controllers properly, and this definitely required using a different method of snooping the data on the controller bus (interrupt-based) and a fast microcontroller. Finally, soldering wires to the microcontroller socket pins soon became tedious. I started designing a PCB, but then realized that a simple Arduino Nano was all I needed, as it is easy to program (and debug!), it is fast and it has enough pins. Clones are cheap and often come with unsoldered pins, which means that wires can be soldered directly in their place with minimum effort, making installation a breeze.

So, with commit b1c4688, code for all ATtiny's was removed and only boards based on ATmega328 (or similar) were supported from then on. The old code is kept on the legacy branch for reference, but don't expect bugfixes for it.

This was a tough choice, but I think that using an Arduino Nano is really convenient now, and that's what all people I know who have installed this mod so far have used.