Prev: F6A6 Up: Map Next: F71A
F6FD: Erase a wall from the screen
Used by the entry point at F71A.
Input
H Y co-ordinate
L Number of rows
IY Pointer to the store of static characters
F6FD LD A,$BF Subtract the Y co-ordinate from the screen height.
F6FF SUB H
F700 LD B,L Put this in HL.
F701 LD L,A
F702 LD H,$00
F704 ADD HL,HL Multiply this by 4 to get an attribute of an offset.
F705 ADD HL,HL
F706 LD DE,$5800 Add the base address of attributes to get the right address.
F709 ADD HL,DE
F70A LD E,B Add the X co-ordinate.
F70B LD D,$00
F70D ADD HL,DE
F70E LD DE,$0020 Increase by 32 characters for each row.
F711 LD B,C Set B to the number of rows.
F712 LD A,(IY+$00) Get the attribute for character 0 (empty space).
F715 LD (HL),A Set it on screen here.
F716 ADD HL,DE Move to the next row.
F717 DJNZ $F715 Repeat for the number of rows until done.
F719 RET
Prev: F6A6 Up: Map Next: F71A