tepples wrote:If someone were to figure out exactly what sort of filtering the Zapper's demodulator circuit is doing, it'd become possible to load data in through an LED and a Zapper.
My preliminary experiments show it roughly equivalent to a modulation with a 16kHz carrier to demodulate, followed by a 1kHz lowpass filter.
tokumaru wrote:I see two problems with the use of a CRT TV:
2- How are you going to get the information to show up on the TV? You can generate a video on the PC and put it in a thumb drive or a DVD and play it on your DVD player, but that's hardly efficient. Because of the low popularity of CRT TVs these days we can hardly find video cards that can output composite/s-video, so we really don't have many options.
The zapper does not need to be pointed at a CRT. We could hook up an LED to a (optionally USB) serial port and synthesize the carrier by sending carefully chosen bytes over the serial port.
For example, if a serial port can support 115200 baud and 5N1 serial, all bytes will take 1/(16.5kHz) to send—close enough to the horizontal retrace frequency. Then it's just a matter of picking two bytes (maybe 0 and 0x1C?) that count as "bright enough" and "not bright enough" to the demodulation circuit.
If we can't get 5N1 reliably, another possibility is 38400 8N1 where the bytes sent are specifically 0 (one pulse with 1/3.8kHz spacing) or 0xA5 (four pulses with ≈1/15.4kHZ spacing).
Failing all else, we could throw in a really cheap microcontroller that takes care of all the timing.
TL;DR: none of these require modifying the zapper or NES at all.