And the PC-to-NES cable is as simple as it comes. It's basically just a USB-to-serial cable connected to the controller port, with the NES doing a software-based UART running at 5.7 KB/sec. And yes, the NES can send data back to the PC. One interesting program I've made using this link is an NSF player that runs on the PC, but sends the sound chip writes to the NES for more authentic sound (and even suppots DMC samples).
I'm curious about the specifics of this...
It's probably a newb question as far as 6502 programming goes, but what clocks the software-based UART?
What is the timing accuracy (jitter, latency) if you feed in NSF-type messages from the PC, is it similar to native NES playback?
Would there be some timestamping involved to get NSF stuff to play back according *exactly* to the NES's internal timing?
Could you feed in data fast enough to have a 240Hz NES playroutine reading a set of register writes every cycle?
I'm hoping to add support for the cartridge to my Processing-based visual tracker, eventually.
Anyway, it's an amazing project and I plan to get one .