| Routines

63386: Initialise a cat's interruptible subcommand

Used by the routine at 63530. Places the address of the interruptible subcommand routine at 63558 into bytes 14 and 15 of the cat's buffer, and then jumps to it.
Input
BC | 63558
H | 218 (Cat)
63386 | LD L,14 | Copy the address of the interruptible subcommand routine at 63558 into bytes 14 and 15 of the cat's buffer
63388 | LD (HL),C
63389 | INC L
63390 | LD (HL),B
63391 | LD A,H | Save the character number in A briefly
63392 | POP HL | Drop the return address from the stack
63393 | PUSH BC | Push the address of the interruptible subcommand routine onto the stack
63394 | LD C,L | Set BC to the original return address, and point HL at byte 8 of the cat's buffer
63395 | LD L,8
63397 | LD B,H
63398 | LD H,A
This entry point is used by the routine at 63403 with an interruptible subcommand routine address in BC, and HL pointing at byte 14 of the character's buffer.
63399 | LD (HL),C | Set the address of the character's primary command routine or interruptible subcommand routine
63400 | INC L
63401 | LD (HL),B
63402 | RET |