![]() |
Routines |
| Prev: 60636 | Up: Map |
|
||||||||||
| 60641 | CALL 60347 | Move Sam left (or in the next best direction) if possible | ||||||||
|
This entry point is used by the routines at 60626, 60631 and 60636.
|
||||||||||
| 60644 | RET NC | Return if Sam could not move in the desired direction | ||||||||
| 60645 | LD A,(32765) | Collect the offset of the last key pressed from 32765 | ||||||||
| 60648 | BIT 3,A | Set the zero flag if a 'fast' key (upper case Q, A, O or P) was pressed | ||||||||
| 60650 | LD B,4 | 4=fast | ||||||||
| 60652 | JR Z,60656 | Jump if a 'fast' key was pressed | ||||||||
| 60654 | LD B,8 | 8=slow | ||||||||
| 60656 | CALL 60521 | Make a sound effect | ||||||||
| 60659 | LD L,7 | Point HL at byte 7 of Sam's buffer | ||||||||
| 60661 | LD A,(HL) | A=0 if Sam is neither midstride nor mid-action now | ||||||||
| 60662 | INC L | Set Sam's main action timer in byte 8 of his buffer to either 4 (fast) or 8 (slow) | ||||||||
| 60663 | LD (HL),B | |||||||||
| 60664 | AND A | Is Sam midstride or mid-action? | ||||||||
| 60665 | RET Z | Return if not | ||||||||
| 60666 | INC L | Set Sam's midstride/mid-action timer in byte 9 of his buffer to either 4 (fast) or 8 (slow) | ||||||||
| 60667 | LD (HL),B | |||||||||
| 60668 | RET | |||||||||
| Prev: 60636 | Up: Map |