Controller clock rates


I’m about to write up an order with Mouser for a saturn controller decoder and NES/SNES controller decoder.

The dilemma I have is, what clock should the decoder be running at? 1 Mhz? 4?


I could probably help answer that if I had a better idea of what you were planning on using to decode them with. There’s different parts to your question though, how often they should be checked(16.6ms max), how long each bank should be checked (Saturn) and the clock frequency of the NES/SNES.

IIRC, the clock period on the NES I’ve seen was about 11us. The Saturn used a different period for each of the four banks, which is pretty fucked up, but the controller hardware on legit controllers doesn’t care.

If I were doing it for making a decoder, I’d have the controller checked 4 times per frame, or about 4ms per check of the whole controller so it’d be as lag free as anyone could want . I’d make the clock period for the NES/SNES about 20us (frequency = 50KHz), and have each bank of the Saturn selected for 10us before reading the lines and switching to the next bank to check.

Taiki, if you’re serious about doing it, could I suggest something? Pick up one of these:

and one of these:

And if you want some extra gadgets for it, get this instead of the stand alone Arduino in the second link:

I’ve got the FGWidget boards in my hand, which are nothing more than stripped down (way down) Arduino boards, and were designed specifically for this kind of thing. That first cable is what is used to program and FGwidget, unless you want to program the chip elsewhere. If you have an Arduino, writing the code for what you’re wanting to do is pretty easy, and once written, it could be put on a FGWidget so you’d have a cheap dedicated board for soldering into your converter.