| Routines

25213: Collect one byte from a command list

Used by the routines at 31952, 32497, 61555 and 62599, and also by the unused routines at 31893 and 31905. Collects a byte from a character's current command list and returns it in A.
Input
H | Character number (183-214)
25213 | PUSH HL | Save the character number
25214 | LD L,25 | Bytes 25 and 26 of the character's buffer hold the address of the point reached in the command list
25216 | LD A,(HL) | Pick up the LSB of this address
25217 | INC (HL) | Increment the LSB
25218 | INC HL | L=26
25219 | JR NZ,25228 | Jump unless the LSB was incremented to 0
25221 | INC (HL) | Increment the MSB
25222 | LD H,(HL) | HL=address of the point reached in the command list
25223 | DEC H
25224 | LD L,A
25225 | LD A,(HL) | Pick up the byte from the command list
25226 | POP HL | Restore the character number to H
25227 | RET |
25228 | LD H,(HL) | HL=address of the point reached in the command list
25229 | LD L,A
25230 | LD A,(HL) | Pick up the byte from the command list
25231 | POP HL | Restore the character number to H
25232 | RET |