| Routines

27008: Update the SRB for one column of a sprite

Used by the routine at 25008. Sets the bits in the screen refresh buffer (SRB) that correspond to the four tiles in the left, middle or right column of a sprite.
Input
DE | Base address of the sprite UDG references
HL | SRB address corresponding to the top row of the sprite
27008 | LD B,4 | There are 4 rows (and 3 columns) in a sprite
27010 | LD A,(DE) | Pick up a sprite UDG reference
27011 | INC D | Next row of the sprite
27012 | AND A | Is this the blank UDG?
27013 | JR Z,27017 | Jump if so (no need to update this SRB byte)
27015 | SET 0,(HL) | Set the appropriate bit in the SRB byte; this instruction is modified by the routine at 25008 before this routine is called
27017 | LD A,4 | Point HL at the byte of the SRB corresponding to the next row of the screen
27019 | ADD A,L
27020 | LD L,A
27021 | DJNZ 27010 | Jump back until all 4 squares in the column are done
27023 | BIT 3,D | Return with the zero flag reset if we have just updated the SRB for the rightmost column of the sprite
27025 | RET