4 ms·
Somewhat shameless plug for my CGA project that I did recently for my own edutainment: http://www.paradigmlift.net/projects/teensy_cga.html http://www.paradigm
by bcg1 12y ago
Somewhat shameless plug for my CGA project that I did recently for my own edutainment:
http://www.paradigmlift.net/projects/teensy_cga.html http://www.paradigmlift.net/projects/teensy_cga.html
My next iteration of that project was going to be to create NTSC output instead of digital TTL... so I'm pretty excited to see this, as the DAC on the dev board I used should be able to create "artifact colors" like this I think
- ajenner 12y agoCool hack! As with other non-composite CRTs, the 5154 doesn't actually have a pixel clock so you don't need to output pixels at exactly 14.318181MHz - the timings of the horizontal and vertical sync signals are the critical thing. Using a 16MHz or 13.714MHz pixel clock would probably be more convenient for a 96MHz microcontroller. Composite NTSC will create some interesting new challenges, though. I suspect the fact that some of your pixels are 6 cycles and some are 7 cycles will cause visible banding. It might be possible to eliminate this by taking your 14.318MHz source data and doing a proper band-limited resampling of it to 16MHz or 13.714MHz instead of the nearest-neighbor interpolation you're essentially doing at the moment. You'd probably need an output DAC with more than 1 or 2 bits of dynamic range to do that, though. One of my pending projects is to do something very similar, generating composite output from a VGA card (pixel clock 14.161MHz).
- bcg1 12y agoAwesome, thanks for the feedback. I definitely appreciate the heads up as well, glad I might be able to avoid having to learn the hard way :)