Routines |
Prev: 47589 | Up: Map | Next: 47682 |
47628 | LD IY,47589 | Point IY at SCORE / TOTAL / HI-SC text | ||
47632 | LD HL,23232 | Set attribute file address at which to print text to start of second-last character row | ||
47635 | LD A,(IY+0) | Load a character from the string into A | ||
47638 | CP 36 | If the character is 36 (end marker)... | ||
47640 | RET Z | ...then return | ||
47641 | CP 42 | If character is not 42 ("set attribute to current character's colours" marker)... | ||
47643 | JR NZ,47660 | ...then skip ahead to 47660 | ||
47645 | LD A,(34226) | Load current character's attribute into A (blue for Berk, yellow for Drutt) | ||
47648 | CP 1 | If blue (Berk)... | ||
47650 | JR Z,47656 | ...then skip ahead to 47656 | ||
47652 | LD A,112 | Load A with value for black INK, yellow PAPER, BRIGHT (Drutt's colours) | ||
47654 | JR 47666 | Skip ahead to 47666 | ||
47656 | LD A,79 | Load A with value for white INK, blue PAPER, BRIGHT (Berk's colours) | ||
47658 | JR 47666 | Skip ahead to 47666 | ||
47660 | CP 35 | If character is not 35 ("set attribute to standard" marker)... | ||
47662 | JR NZ,47673 | ...then skip ahead to 47673 | ||
47664 | LD A,71 | Load A with value for white INK, black PAPER, BRIGHT | ||
47666 | LD (34269),A | Store this value as the attribute to print text | ||
47669 | INC IY | Advance IY to next character in string to print | ||
47671 | JR 47635 | Loop back to 47635 for next character | ||
47673 | LD E,A | Load character to print into E | ||
47674 | CALL 47682 | Print double-height text character in E | ||
47677 | INC HL | Advance HL to next attribute file address | ||
47678 | INC IY | Advance IY to next character to process | ||
47680 | JR 47635 | Loop back to 47635 for next character |
Prev: 47589 | Up: Map | Next: 47682 |