Prev: 25186 Up: Map Next: 25213
25188: Copy two bytes from a command list into a character's buffer
Used by the routines at 25080, 25296, 25700, 29052, 31969 and 63447. Copies a routine address or pair of parameters from a character's current command list into his buffer.
Input
H Character number (183-214)
L Destination for the copied bytes
25188 PUSH DE Save DE
25189 PUSH HL Save the pointer to the character's buffer
25190 LD L,25 Collect into DE the address of the point reached in the command list (stored in bytes 25 and 26 of the character's buffer)
25192 LD E,(HL)
25193 INC L
25194 LD D,(HL)
25195 POP HL Restore the pointer to the character's buffer
25196 LD A,(DE) Collect the first byte from the command list and copy it to the character's buffer
25197 INC DE
25198 LD (HL),A
25199 INC L Move along one byte in the character's buffer
25200 LD A,(DE) Collect the second byte from the command list and copy it to the character's buffer
25201 INC DE
25202 LD (HL),A
25203 DEC L Move back again in the character's buffer
25204 LD A,L Save L temporarily
25205 LD L,25 Update the address reached in the command list (stored in bytes 25 and 26 of the character's buffer)
25207 LD (HL),E
25208 INC L
25209 LD (HL),D
25210 POP DE Restore DE
25211 LD L,A Restore L
25212 RET
Prev: 25186 Up: Map Next: 25213