Double-buffering
Major feature: we now have double-buffering on both ESP_8_BIT_composite
and ESP_8_BIT_GFX
classes.
Before this feature, we only had a single buffer for both render and display. Meaning all render had to be completed within non-active scanlines (vertical blanking interval, etc.) for glitch-free display. That limitation has been removed. Composite video signals are generated from front buffer data, and all rendering operations are now done to the back buffer. The back and front buffer are swapped when waitForFrame()
is called. And if a frame takes too long to render, it just means the previous frame would be shown for longer. A missed frame may mean a visible motion stutter but would no longer result in annoying flickers.
Plus miscellaneous bug fixes and performance enhancements.