So first a really really long recap. I made the ugliest cable ever:
That's the recap.
So the day after I made the cable I continued working on the full device. It was hard work with many re-solderings required (due to bad soldering in the first place!) but I finally had this:
Here from another angle:
Just insert a raspberry pi. The raspberry wasn't used for anything special, but I needed about 5 outputs pins and 8 input pins. Some more outputs pins are hooked up but not used in my current setup. Speed is not of the essence when just extracing the ROM; I pretty much decide on what to do and when to do it!
I quickly wrote a Python program to extract the ROM. It was very exciting! Out came a bunch of exciting... zeros. Oh well back to reading on the internet. I found an excellent page with information on the behaviour of the mask rom inside the cartrdige. The Mask rom is where the data is kept and it has a number of pins (32 for the game I was working on). You can see it on the bottom left here:
Basically it is what the cartridge is all about, at least for a simple cartridge like this one without support for save games. By reading and guessing I finally had a python program that actually extracted the ROM. Or extracted something. Hm. Not quite there. After reading some more I figured out the problem and I managed to get the full 1MB rom of the Super Scope 6 cartridge. I was quite happy when it worked in the emulator:
NOTE: Without a Super Scope I still can't play it, but still... Happy!
I only got 20-bits data out from the cartridge (1 MB) since I ran out of space on the breadboard. I'm going to clean up the breadboard and make a proper project page for it so that anyone who is stupid enough to solder that cable can make one for themselves!
As a side note. I found an solution partially by reading online. If I had not found that page I would probably have started figuring out which pins on the snes cartridge mapped to what pins on the mask rom. I would then have tried to find information on mask roms to see how to tickle them to get the data out!