![]() |
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 |