Project updates!

It’s been a while since I last posted, but I have been keeping busy! I have updates on a number of previous projects as well as announcing a few new projects. I also have started using GitHub to start uploading projects so that others can see/ use them.

SNES Repro Carts

This project went on hiatus for a bit. During early days of COVID I was working pretty feverishly on this, and I got the board schematic captured and a layout done, and made a few boards. I also wrote the supporting documents for this blog, which left off when we make the boards. For some reason, after I got the boards, I couldn’t get them to work. I got busy with work and some other things so this fell to the wayside and I stopped seriously working on projects in the same way for a bit. I decided to revisit- and made a few new tools along the way.

SNES Logic Analyzer / Signal Sniffer

When I first started debugging the boards, I was bodging wires onto the built cart and then trying to hook up the logic probes to these. It was messy, prone to error, and when flying leads became disconnected it was impossible to find where it came from. So, in the time since, I have upgraded my HP 1652B to the later HP 1670D, if you read my previous post. The nice thing about this analyzer is that it has ethernet, so you can more easily get data on/off, but the best part is probably when the guy I bought it from included a bunch of termination adapters. The 1650-63203 termination adapters go onto the main pod, and then shrink it down into a 2×10 standard pitch header. This is easy to include on board footprint and guarantees that you have a good connection and that everything is in the right place.

So I made this adapter board that slots into the SNES, and you can hook up the logic probes in-situ and watch the SNES do everything from bootup to gameplay. It makes it really easy to monitor all the signals and check out what is going on. In my case, I found out manually comparing the start bytes of the split ROM did not align with the start bytes that were being executed after the reset vector finished on the SNES. So, there was an issue with the EPROMs that I was using! The GitHub for this project and files are here:

https://github.com/VIPQualityPost/SNES-signal-sniffer

TL866 II+ Programming Adapter

This EPROM is in a 42 pin DIP package but the programmer can only accept DIP 40 size chips. So you need an active programming adapter that can allow you to manually address the upper banks. I bought a generic TL866 programming adapter to program the 27C322 EPROMS that go on the boards. Figuring as there were a large amount of sales on the eBay listing, you would think that it would work. Nope!
It’s not clear if it was a case of something like “ON” on the dip switches really being “OFF” or vice versa- but I tried almost every combination of bank switching in order to try and get it to work. At this point, it was clear that this was the issue that was preventing the project from wrapping up, so I decided to try and make my own adapter. I was able to cut the footprint a lot, and make it easier to use in the same stroke.

Surprisingly, after assembling it all together (and going through a rev where I mixed up the pinout) the adapter worked and I was finally able to boot a copy of Earthbound on my SNES, using entirely hardware and mostly tools that I developed myself. Very satisfying! You can find the project GitHub here:

https://github.com/VIPQualityPost/tl866_27c322_adapter