ROM-Reader for Super Nintendo / Super Famicom Game Cartridges

Thanks to nocash (Martin Korth) the Nintendo Power code is finally working smoothly. I was having difficulty getting the reader to switch reliably from the Menu mode to Game mode. With a few pointers (and much patience) from Martin, I was able to identify the cause of the problem.

Switching the NP cart from Menu mode to Game mode requires a specific sequence to be sent (read more in nocash's Fullsnes document here: http://problemkaputt.de/fullsnes.txt). The final command is the game selection (Slot # + 0x80) sent to 0x2400. When the game selection is sent, then the cart immediately becomes the game selected.

The problem with the switching code was the 21.477272MHz Master Clock running the NP cart too fast for the Arduino. In order to ensure that the NP commands work properly on the reader, the Master Clock needs to be slowed down before the NP sequence is sent. After the sequence is sent to the cart, then the Master Clock is restored back to 21.477272MHz. My initial test of 2.68MHz (21.477272/8) for the slowdown works and the cart now switches back and forth between game and menu without a problem.

For optimal results, the Nintendo Power cart requires the clock generator and the snesCIC/SuperCIC.

I'll clean up my code and post it sometime soon.

Good Luck!