Need help debugging NTSC video driver
ericball
Posts: 774
I'm hoping a another set of eyes will find the bug(s) in my code.
This is a brand new video driver which is radically different than anything based on TV.spin.
Post Edited (ericball) : 7/7/2007 1:53:32 AM GMT
This is a brand new video driver which is radically different than anything based on TV.spin.
- Sprite based - not tiles.· The driver works from a HUB-RAM sprite table (address of 8x8 byte/pixel graphics, xpos, ypos).
- Graphics are copied to a COG-RAM based 240 pixel LineRAM, then the LineRAM is output using the Propeller video generator.
- 2-5 cogs with interleaved execution (while cog[noparse][[/noparse]0] is generating output, cog[noparse][[/noparse]1]..cog[noparse][[/noparse]n] are populating LineRAM)
- Artifact based color for (theoretically) a much larger color gamut than the native video generator.
Post Edited (ericball) : 7/7/2007 1:53:32 AM GMT
Comments
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
E3 = Thought
http://folding.stanford.edu/·- Donating some CPU/GPU downtime just might lead to a cure for cancer! The average PC while browsing the internet typically uses less than 30% of it's potential, why not donate a portion of the rest for cancer resaerch?
1. Put a second WAITCNT after the CTRA/FRQA to let the PLL settle
2. Move the CTRA/FRQA before the first WAITCNT
3. #2 but add a MOV PHSA, #0 after the WAITCNT
The question is which option will yeild the smallest phase difference between cogs.
The code for #1 is easy:
This change will cause the COGS to sync up right away:
count2 := 10000 + 1000 * N2_NUMCOGS ' synchronization CNT