Prev: 50948 Up: Map Next: 50990
50967: Test Block Row
Tests a row against the view, using the position in the alternate registers. A row on the drawable page, with its column below 193 is drawn by TestBlockRow_Draw when it is before the patched row, or by DrawShortRow when it is on that row. A row past it is left undrawn.
Input
HL The first coordinate of the position
DE The second coordinate of the position
TestBlockRow 50967 PUSH HL Take the position from the alternate registers.
50968 PUSH DE
50969 EXX
50970 POP DE
50971 POP HL
50972 LD A,H Return unless the row is on the drawable page.
50973 CP 128
50975 RET NZ
50976 LD A,L Return when the column is past 192.
50977 CP 193
50979 RET NC
50980 LD A,D Return unless the other address is on the same page.
50981 CP 128
50983 RET NZ
50984 LD A,E A row on the patched position is the short row.
50985 SUB 0
50987 JR Z,DrawShortRow
50989 RET NC A row past that position is left undrawn.
Continue on to TestBlockRow_Draw.
Prev: 50948 Up: Map Next: 50990