It's been a busy couple of weeks. After giving up on connecting directly from the Pi (despite zid` spending hours experimenting), I tried to go back to make the
original NESBot design based on the files included in the Instructible. Unfortunately, I ran into a lot of problems, mostly with the processing script (i.e. the movie to SD card transfer script written in the programming language named "processing"). It also took me a fair bit of time to populate the breadboard - there were a lot more jumper wires than I thought there would be.
I borrowed an analog scope that I could keep a bit more long-term, and the family cat decided to supervise.
Eventually with some help from DarkKobold pointing me in the right direction I got the code in the
console-tas code repository to function correctly after finding the
Arduino library dependencies. The newer code relies on a tas.txt file on a FAT filesystem on the root of the SD card as opposed to the processing script, which saves having to populate a load switch and makes switching files a bit easier (mostly - it can be a bit tricky getting the SD card off the breadboard, but the jumper wire SD harness I hacked together held up surprisingly well).
One thing that really plagued me with testing this is that on my setup I see low resistance between the latch and clock lines, perhaps because of something interesting going on inside the 4021. The long and short of it is that when I turn on the Arduino, voltage flows toward the NES on the latch line with the result that the NES either doesn't turn on or goes to a white screen. Sometimes I could get past that problem and get into a game but I could never get
HappyLee's SMB1 run to sync even after what felt like hours of attempts with both the old and the new code. I *was* able to get
Baxter's Tetris Mode B to sync after only a couple of attempts, however, and that made me very happy. I've been at this project for weeks now in my spare time and this is the first time I've actually seen a TAS movie sync to the end on my desk. I dabbled at getting other games to work, but the setup is so finicky that I think it's best to wait for a newer solution.
There's a lot to say about said newer solution which involves a board that true designed and I ordered from
OSH Park but because the PCB hasn't arrived yet I don't want to go into too many details just yet. I'll make a follow-up post once the board is in and we can do some testing. As always, please feel free to ask questions and let me know if you have any broken SNES controllers as I still need some of those. :) Thanks!
A.C.
******