Join Nostr
2025-02-24 17:40:02 UTC
in reply to

Colin McMillen on Nostr: Real-life testing on the real hardware showed that some sprites were tearing. This ...

Real-life testing on the real hardware showed that some sprites were tearing. This effect is not correctly emulated by MAME and is due to drawing "too late".

When the Vertical Blanking Interrupt is emitted, the monitor's electron gun moves from the bottom-right corner back to the top-left. This journey takes 4550 cycles (4.5µs).

Then, it starts drawing line by line, and each line takes 65 cycles (6.5µs) to draw.
Reference: https://rich12345.tripod.com/aiivideo/vbl.html

So one should start drawing the highest things first.

Technical commit: https://github.com/colinleroy/a2tools/commit/af406473bb9940687f01b8c8dea898740c9d9bce

- draw dashboard on odd frames
- draw first, think later
- draw the lowest-Y sprites first