I’m working with Frank on this TIA replacement because it turns out that even though there’s tons of information on the TIA, basically no market full of surplus chips, and even some incompatibilities with later versions of the chip no one has made one yet. I don’t mean to say that no one has emulated the TIA, that’s been done in PC based emulators and MULTIPLE FPGA implementations, but no one has actually produced hardware that could replace a broken TIA chip. For the price of an NTSC TIA on ebay you can buy one or two whole 2600 systems, it’s just not reasonable. The first step we need (want, but the hack done to deal without it is not going into the final design) to get done is an oscillator running at exactly twice the NTSC colorburst frequency.
Here I have a fairly general purpose multi-output oscillator. This would really be more useful for a completely gate driven circuit where you want some of these inverse signals to trigger other parts of the circuit but I decided it was a useful way to use parts I already had on-hand.
On the left you see a Pierce oscillator made out of a crystal and some 4049 inverters. This is sometimes done with an RC oscillator but here we have a crystal of the proper frequency. In reality I wanted a 2x colorburst frequency crystal, the only one I could find was a 4x colorburst so I used it and added the divider circuit.
Moving right you can see I exposed the buffered 4x colorburst oscillator and inverted it to make a 180* out of phase signal (that’s a gate delay behind). From there I went into a 4013 d-type flip flop that’s running as a divide by two meaning for every two clocks it gets in there’s one clock out. That also feeds a spare inverter which gives you an inverse signal if you want it. Of note, this circuit produces and really only works with a 50% duty cycle clock signal based on how the gates trigger and therefore divide the signal. Using the last stage of that dual d-type flip flop I can make regular colorburst and it’s inverse signal. I still have one spare gate but this circuit has done all that it needs to. Because the chips are 4000 series logic that means it can run down to 3v which is good for modern FPGAs and because I started with 4x it can even drive the ice40 series which seems to only want to start at 10Mhz (but somehow I think it’ll work lower).
Edit: This loading did not work and ended up with an oscillation of about half colorburst. Once I go get a scope that can measure that I’ll try some different values.
Followup:
I finally figured out what’s wrong. Turns out 40xx series CMOS chips are not particularly fast. They are nice because they go up to 10 or 20 volts, but they are not very high speed. If I actually still needed this circuit I would try the 74HC04 because I trust CMOS technology to be a bit more robust to my fumblings than TTL, but if I really wanted to go fast a 7404 or 74s04 might be even faster in this application.
To get a 14+Mhz oscillator I need rise and fall times under 35ns on average. This trace is showing me about 80ns rise times so there’s no way it could switch fast enough to make my oscillator.