![]() |
Routines |
| Prev: 25484 | Up: Map | Next: 25520 |
|
Used by the routines at 27904, 31952, 31969, 32497, 61440, 61533, 61555, 61631, 61696, 62032 and 62815. Drops the return address from the stack and copies it into bytes 3 and 4 of the character's buffer (where the address of the primary command routine is held), copies the address of the interruptible subcommand routine from BC into bytes 9 and 10 of the character's buffer, and then jumps to that routine.
|
||||||||||
| 25503 | LD L,9 | Copy the routine address from BC into bytes 9 and 10 of the character's buffer | ||||||||
| 25505 | LD (HL),C | |||||||||
| 25506 | INC L | |||||||||
| 25507 | LD (HL),B | |||||||||
| 25508 | LD A,H | A=character number | ||||||||
| 25509 | POP HL | Drop the return address from the stack into HL | ||||||||
| 25510 | PUSH BC | Push the routine address in BC onto the stack | ||||||||
| 25511 | LD C,L | |||||||||
| 25512 | LD L,3 | |||||||||
|
This entry point is used by the (unused) routine at 25525 with L=9.
|
||||||||||
| 25514 | LD B,H | Now BC=address of the instruction after the CALL that got us here | ||||||||
| 25515 | LD H,A | H=character number | ||||||||
| 25516 | LD (HL),C | Copy the routine address in BC into bytes 3 and 4 (or 9 and 10) of the character's buffer | ||||||||
| 25517 | INC L | |||||||||
| 25518 | LD (HL),B | |||||||||
| 25519 | RET | Make an indirect jump to the interruptible subcommand routine | ||||||||
| Prev: 25484 | Up: Map | Next: 25520 |