Prev: 62704 Up: Map Next: 62826
62788: Print Message
Used by the routine at JumpTable_PrintMessage.
Prints a control-byte string: bytes below 200 are characters, 216 sets ATTR_T, other values set the print position, and 255 terminates.
Input
HL Message address
Print_Message 62788 LD A,(HL) Jump to Print_Message_Branch if this byte is a character.
62789 CP 200
62791 JR C,Print_Message_Branch
62793 CP 255 Return if the terminator is reached.
62795 RET Z
62796 CP 216 Jump to Print_Message_Skip if this byte sets ATTR_T.
62798 JR Z,Print_Message_Skip
Else this is a print-position pair.
62800 INC HL Fetch the column and row into BC.
62801 LD A,(HL)
62802 LD C,A
62803 INC HL
62804 LD A,(HL)
62805 LD B,A
62806 CALL Set_PrintPosition Call Set_PrintPosition.
62809 INC HL Advance the message pointer.
62810 JR Print_Message Jump to Print_Message.
Print_Message_Branch 62812 CALL Print_Character Call Print_Character.
62815 INC HL Advance the message pointer.
62816 JR Print_Message Jump to Print_Message.
Print_Message_Skip 62818 INC HL Advance the message pointer.
62819 LD A,(HL) Write the next byte to *ATTR_T.
62820 LD (23695),A
62823 INC HL Advance the message pointer.
62824 JR Print_Message Jump to Print_Message.
Prev: 62704 Up: Map Next: 62826