Well, I was in the process of moving when this thread started and then I got a new job ... and more than a month later, I have my home office mostly set up. I can finally dedicate some time and effort into this project.
Now, what I am doing is going back to the basics. For the time being I am ignoring Hsync and Vsync and just focusing on clock and data. That means if I get a picture, it will be skewed, but at this point, all I care about is a picture! Any picture! Also worth mentioning, I am working with a 16MHz arduino pro mini so I have to focus on sketch streamlining. The reason I set aside my Teensy is because they are expensive and anyone wanting to build this into a GB will be put off by the Teensy's price and size. I also think that the CPP to machine code conversion for the Teensy's CPU is worse than that of the atmega168.
I have to go grocery shopping before I can sit down and modify friendofmegaman's PC-side code but I have a simple fast program for the arduino:
1. wait for clock interrupt
2. Serial.print(PORTB)
3. repeat
PORTB is just a byte with data0 and data1 at the farthest right bits. The PC is going to do the horizontal counting for me, at least until I get a legit picture. Once I get that picture, I will implement Vsync. Hsync may remain as a simple counter on the PC-side.
Future goal: implement composite video output without the help of a PC.
brb