Prev: 82ED Up: Map Next: 8358
8300: Clear every fourth row of the render buffer
Used by the routine at DRAW_VIEW.
Unrolled: 29 rows of 32 bytes, four rows apart, from row 12 of the render buffer. CLEAR_PHASE moves the starting row on each call, so DRAW_VIEW's four calls clear rows 12-127 -- the rows COPY_TO_SCREEN copies to the screen.
CLEAR_BUFFER_ROWS 8300 LD DE,$0061 The step to four rows on, the render buffer, 29 rows of zeros.
8303 LD H,$A1
8305 LD BC,$1D00
8308 LD A,(CLEAR_PHASE) Next quarter: rows 12, 13, 14 or 15 to start from.
830B ADD A,$20
830D AND $60
830F LD (CLEAR_PHASE),A
8312 ADD A,$80
8314 LD L,A
CLEAR_BUFFER_ROWS_0 8315 LD (HL),C 32 bytes.
8316 INC L
8317 LD (HL),C
8318 INC L
8319 LD (HL),C
831A INC L
831B LD (HL),C
831C INC L
831D LD (HL),C
831E INC L
831F LD (HL),C
8320 INC L
8321 LD (HL),C
8322 INC L
8323 LD (HL),C
8324 INC L
8325 LD (HL),C
8326 INC L
8327 LD (HL),C
8328 INC L
8329 LD (HL),C
832A INC L
832B LD (HL),C
832C INC L
832D LD (HL),C
832E INC L
832F LD (HL),C
8330 INC L
8331 LD (HL),C
8332 INC L
8333 LD (HL),C
8334 INC L
8335 LD (HL),C
8336 INC L
8337 LD (HL),C
8338 INC L
8339 LD (HL),C
833A INC L
833B LD (HL),C
833C INC L
833D LD (HL),C
833E INC L
833F LD (HL),C
8340 INC L
8341 LD (HL),C
8342 INC L
8343 LD (HL),C
8344 INC L
8345 LD (HL),C
8346 INC L
8347 LD (HL),C
8348 INC L
8349 LD (HL),C
834A INC L
834B LD (HL),C
834C INC L
834D LD (HL),C
834E INC L
834F LD (HL),C
8350 INC L
8351 LD (HL),C
8352 INC L
8353 LD (HL),C
8354 ADD HL,DE Four rows on.
8355 DJNZ CLEAR_BUFFER_ROWS_0
8357 RET
Prev: 82ED Up: Map Next: 8358