Prev: 6e1b Up: Map Next: 6e7c
6e66: Reads 2 bytes of pixel data from a sprite.
Used by the routine at 6ea5.
Input
B Loop counter - sprite height?
HL Address of byte for current sprite.
Output
B Same value as on entry.
D First byte of pixel data.
E ????
C Second byte of pixel data.
HL Address to the next byte of the sprite.
6e66 ld a,b Backup B value
6e67 ex af,af'
6e68 ld e,$00 E=third byte - NULL on read
6e6a ld c,(hl) C=first pixel byte
6e6b inc hl
6e6c ld d,(hl) D=second pixel byte
6e6d inc hl Set HL to next byte (used later)
6e6e ld a,b Return if B == 0
6e6f and a
6e70 ret z
Rotating the bits.
6e71 srl c Executes B times
6e73 rr d
6e75 rr e
6e77 djnz $6e71
6e79 ex af,af' Restore B to the entry value
6e7a ld b,a
6e7b ret
Prev: 6e1b Up: Map Next: 6e7c