Prev: 80D1 Up: Map Next: 8122
80FF: Put a text character's attributes on screen
Used by the routines at 8000, 8069, 808A and 80D1.
Input
IX Pointer to buffer of string data
A upper attribute
C lower attribute
80FF LD B,(IX+$02) Put the attribute in B.
8102 LD L,(IX+$04) Put the attribute position in L.
8105 LD H,$00 Multiply this by 32 to get a row offset and put it in HL.
8107 ADD HL,HL
8108 ADD HL,HL
8109 ADD HL,HL
810A ADD HL,HL
810B ADD HL,HL
810C LD D,$00 Add the x position.
810E LD E,(IX+$00)
8111 ADD HL,DE
8112 LD DE,$5800 Add the base address for the attribute buffer.
8115 ADD HL,DE
8116 LD DE,$0020 Make DE the number of characters to advance by for each row.
8119 LD (HL),A Set the upper attribute.
811A ADD HL,DE Move to the next row.
811B LD (HL),C Set the lower attribute.
811C SBC HL,DE Move back to the first row to set the next column.
811E INC HL Move to the next column.
811F DJNZ $8119 Loop until all characters have been drawn.
8121 RET
Prev: 80D1 Up: Map Next: 8122