Routines |
Prev: 38579 | Up: Map | Next: 39629 |
Used by the routines at Action_Talkto and 38579.
|
||||||||
39557 | PUSH DE | Stash DE and BC on the stack. | ||||||
39558 | PUSH BC | |||||||
39559 | LD B,A | B=A (search key). | ||||||
39560 | LD HL,51915 | HL=51915. | ||||||
39563 | LD DE,7 | DE=$0007. | ||||||
39566 | LD A,(HL) | If the current pointer matches our key jump to 39578. | ||||||
39567 | CP B | |||||||
39568 | JR Z,39578 | |||||||
39570 | CP 255 | If we've reached the termination character then jump to 39578. | ||||||
39572 | JR Z,39578 | |||||||
39574 | ADD HL,DE | Increase the pointer address by $0007 (using DE). | ||||||
39575 | JP 39566 | Jump to 39566. | ||||||
39578 | POP BC | Restore BC and DE from the stack. | ||||||
39579 | POP DE | |||||||
39580 | PUSH HL | IY=HL. | ||||||
39581 | POP IY | |||||||
39583 | RET | Return. | ||||||
This entry point is used by the routines at Action_Examine and 38579.
|
||||||||
39584 | PUSH IY | Store IY and IX on the stack. | ||||||
39586 | PUSH IX | |||||||
39588 | CALL 39557 | Call 39557. | ||||||
39591 | CP 255 | Jump to 39624 if the termination character was reached. | ||||||
39593 | JR Z,39624 | |||||||
39595 | LD L,(IY+4) | HL= | ||||||
39598 | LD H,(IY+5) | |||||||
39601 | PUSH HL | IX=HL. | ||||||
39602 | POP IX | |||||||
39604 | LD A,B | |||||||
39605 | CALL IndexIdTable | Call IndexIdTable. | ||||||
39608 | CP 255 | Jump to 39624 if the termination character was reached. | ||||||
39610 | JR Z,39624 | |||||||
39612 | LD L,(IX+1) | Store ... TODO | ||||||
39615 | LD H,(IX+2) | |||||||
39618 | LD (IY+2),L | |||||||
39621 | LD (IY+3),H | |||||||
39624 | POP IX | Restore IX and IY from the stack. | ||||||
39626 | POP IY | |||||||
39628 | RET | Return. |
Prev: 38579 | Up: Map | Next: 39629 |