Routines |
Prev: 36586 | Up: Map | Next: 36626 |
36606 | LD HL,(36488) | Get display file byte to modify... | ||
36609 | INC HL | ...and increase (for next character) | ||
36610 | LD A,L | Load LSB of HL into A... | ||
36611 | OR A | ...and check whether it is zero | ||
36612 | JR Z,36618 | If it is zero (i.e. advancing down a character row will take us into a different third) then skip to second part of routine... | ||
36614 | LD (36488),HL | ...else store the updated (increased) display file address for next character... | ||
36617 | RET | ...and return | ||
36618 | LD A,H | Add 7 to MSB of display file address as advancing by one at 36609 took display file pointer back up to 2nd pixel row of the current third of the display when in fact we need to move to top pixel row of the NEXT third of the display (i.e. 7 × 32 × 8 = 7 × 256 bytes on from this!) | ||
36619 | ADD A,7 | |||
36621 | LD H,A | |||
36622 | LD (36488),HL | Store the updated address | ||
36625 | RET | Return |
Prev: 36586 | Up: Map | Next: 36626 |