| Routines

627D: Collect one byte from a command list

Used by the routines at 7CD0, 7EF1, F073 and F487, and also by the unused routines at 7C95 and 7CA1. Collects a byte from a character's current command list and returns it in A.
Input
H | Character number (0xB7-0xD6)
627D | PUSH HL | Save the character number
627E | LD L,$19 | Bytes 0x19 and 0x1A of the character's buffer hold the address of the point reached in the command list
6280 | LD A,(HL) | Pick up the LSB of this address
6281 | INC (HL) | Increment the LSB
6282 | INC HL | L=0x1A
6283 | JR NZ,$628C | Jump unless the LSB was incremented to 0
6285 | INC (HL) | Increment the MSB
6286 | LD H,(HL) | HL=address of the point reached in the command list
6287 | DEC H
6288 | LD L,A
6289 | LD A,(HL) | Pick up the byte from the command list
628A | POP HL | Restore the character number to H
628B | RET |
628C | LD H,(HL) | HL=address of the point reached in the command list
628D | LD L,A
628E | LD A,(HL) | Pick up the byte from the command list
628F | POP HL | Restore the character number to H
6290 | RET |