Prev: 32256 Up: Map Next: 32608
32512: Screen refresh buffer
Used by the routines at 59861, 60032, 61630, 61696, 62368 and 64599. Each byte of the screen refresh buffer (SRB) corresponds to a segment of 8 character squares on the screen, the leftmost of which will be at x=0, x=8, x=16 or x=24. Each bit set in an SRB byte corresponds to a character square in the segment that needs refreshing. Bit 7 corresponds to the leftmost character square in the segment, bit 0 to the rightmost character square.
Note that, owing to a quirk in the way the SRB-updating routine at 59861 works, the first 16 bytes of the screen refresh buffer correspond not to any part of the screen, but to the four rows of the play area that are immediately above the currently visible portion of the play area. Therefore, the screen-updating routine at 60032 ignores those bytes and starts inspecting SRB bytes at 32528 instead.
Note also that the routine at 28357 uses the first 16 bytes of the SRB as a temporary backup store for the submessage indicator and submessage addresses at 32641, and the routine at 64618 uses the first 32 bytes of the SRB as a temporary store for the top row of attribute bytes when scrolling the screen up and down.
32512 DEFS 96
Prev: 32256 Up: Map Next: 32608