Well, this might be an easy fix. VerticalBlank used to look like this:
void VerticalBlank() { InitSpriteShotDatastreams(); DisplayShots(); DisplaySprites(); PrepScoreDatastream(); }
it now looks like this
void VerticalBlank() { DisplayShots(); DisplaySprites(); }
I built a special Stress Test ROM that starts out every wave with 12 asteroids. Initially I was seeing a few screen rolls at the start of each wave while destroying asteroids. Once enough had been shot the rolls stopped until the next wave began.
I moved moved InitSpriteShotDatastreams() and PrepScoreDatastream() into OverScan and haven't seen a screen roll or jitter since. It's not enough of a stress test to confirm this will take care of the problem though, for that I need a lot of playtime spent on this build. If anybody reports back that they experienced any screen rolls or jitter, then I'll review DisplayShots() and DisplaySprites() to see what I can do and make a new stress test build.
Note: you must play this on a real Atari using a Harmony cartridge in order to provide Stress Test feedback.
ROM
spacerocks20121001_STRESS_TEST.bin
Source
0 Comments
Recommended Comments
There are no comments to display.