Prev: 8E42 Up: Map Next: 8E7E
8E6C: Print a message
The six byte header holds the attribute byte, the back buffer destination and the screen attribute address; the NUL terminated string follows it and is rendered by draw_string_with_style. The pointer returned is the byte after the NUL, so callers can chain one message block onto the next.
Input
A Flags byte
HL -> as yet unnamed message structure
Output
HL -> next unconsumed byte
print_message 8E6C EX AF,AF' Preserve/bank flags byte in A
8E6D PUSH BC Preserve BC
8E6E INC HL Skip flags byte
8E6F LD A,(HL) Load attribute byte into A
8E70 INC HL
8E71 LD E,(HL) Load back buffer address into DE
8E72 INC HL
8E73 LD D,(HL)
8E74 INC HL
8E75 LD C,(HL) Load attribute address into BC
8E76 INC HL
8E77 LD B,(HL)
8E78 INC HL
HL now points at the string.
8E79 CALL draw_string_with_style Call alt draw_string_screen entry point
8E7C POP BC Restore BC
8E7D RET Return
Prev: 8E42 Up: Map Next: 8E7E