Anonymous

ZX Spectrum ULA: Difference between revisions

From Sinclair Wiki
Document the flash attribute timing bug
m (messing with the table style - works so long as background remains white.)
(Document the flash attribute timing bug)
Line 76: Line 76:


''(Also when people are talking about the snow effect they always seem to mention Arkanoid; presumably it uses the snow effect at some point)''
''(Also when people are talking about the snow effect they always seem to mention Arkanoid; presumably it uses the snow effect at some point)''
== Flash attribute timing bug ==
The flash attribute suffers from a timing bug, in that the flash signal is not in sync with the pixel with which it is XORed.  On frames where the flash signal is inactive, this bug is not apparent, but where the flash signal is active, and used within an attribute block, flash will also affect the very right-hand edge of the preceding block, and in attribute blocks where flash is not set, flash will fail to affect the very right-hand edge of the preceding block.  This bug only affects instances where there is a transition in pixel value between one character block and the next, but the flash attribute reverses that transition.  As such, this does not affect the Spectrum's flashing cursor, as its graphic has edges matching the surrounding "paper" and not the ink.  No existing emulator known to implement this display artifact.