I've been working on a Supergun for my CPSII that will interface with my MC Cthulhu equipped arcade sticks. My plan to make this work is simply to build a decoder for one of the MC Cthulhu's compatible controller modes so that I can get discrete outputs to feed the the jamma connector and kick harness. This should work fine in theory but I've hit a few snags. If anyone has any suggestions I'd be thrilled to hear them.
My original approach was to build a Sega Saturn controller decoder using discrete logic based off of this thread from NFGgames.
Here is the Schematic:
I built a prototype on perfboard:
With a genuine Saturn controller this decoder works perfectly, but with the MC Cthulhu connected I have strange button mapping issues. Up Down and Left register as HP MP and LP respectively and vice versa with the punch buttons. I think I know what is happening looking at the bit assignments for the Saturn controller from Gamesx.com.
See that both Up and Z (or in this case HP) are on the same data pin, but different states. So are Y, X and Down and Left respectively. This leads me to believe that the Cthulhu is simply misinterpreting the what state is being polled by the decoder and thus reporting jumbled up data depending on which state is being polled. The weirdest part to me is that B,C,A and Start all report correctly. Anyway I can only assume that the issue here might have something to do with the clock circuit on my decoder not operating at the frequency that the cthulhu expects, and that this is not an issue for genuine controllers because they are also using discrete logic to do the multiplexing and not some form of software emulation.
Unfortunately I lack an oscilloscope to really see what's going on here, and I have no idea how to go about modifying the clock generator to test different frequencies, but if anyone has any suggestions I'd be all ears.
Here is a video demonstrating the controller mapping issues in real time.
plus ça change,
plus c'est la même chose,
The more that things change,
The more they stay the same.- RUSH- Circumstances