![]() |
Routines |
Prev: 54779 | Up: Map | Next: 54897 |
Used by the routine at 53506.
|
||||
54795 | PUSH BC | Stash BC, DE, IY and IX on the stack. | ||
54796 | PUSH DE | |||
54797 | PUSH IY | |||
54799 | PUSH IX | |||
54801 | CALL 54767 | Call 54767. | ||
54804 | PUSH IX | IY=IX (using the stack). | ||
54806 | POP IY | |||
54808 | JR 54880 | Jump to 54880. | ||
54810 | LD A,(IY+1) | Jump to 54880 if *IY+1 is zero. | ||
54813 | AND A | |||
54814 | JR Z,54880 | |||
54816 | LD A,(IY+0) | Jump to 54880 if *IY+0 is greater than or equal to 11. | ||
54819 | CP 11 | |||
54821 | JR NC,54880 | |||
54823 | LD A,(IY+1) | A=*IY+1. | ||
54826 | CALL 53815 | Call 53815. | ||
54829 | BIT 7,(IX+5) | Jump to 54880 if bit 7 of *IX+5 is not set. | ||
54833 | JR Z,54880 | |||
54835 | LD A,(IY+0) | A=*IY+0. | ||
54838 | CALL GetDirectionToken | Call GetDirectionToken. | ||
54841 | CP 9 | Jump to 54855 if A is less than 9. | ||
54843 | JR C,54855 | |||
54845 | LD DE,10 | DE=0010. | ||
54848 | JR Z,54861 | Jump to 54861 if A is equal to 9. | ||
54850 | LD DE,231 | DE=0231. | ||
54853 | JR 54861 | Jump to 54861. | ||
54855 | LD HL,26812 | HL=26812. | ||
54858 | CALL 42399 | Call 42399. | ||
54861 | CALL 43143 | Call 43143. | ||
54864 | LD HL,26857 | HL=26857. | ||
54867 | CALL 42399 | Call 42399. | ||
54870 | PUSH IY | Stash IY on the stack. | ||
54872 | CALL 54229 | Call 54229. | ||
54875 | CALL 42004 | Call 42004. | ||
54878 | POP IY | Restore IY from the stack. | ||
54880 | ADD IY,BC | IY+=BC. | ||
54882 | LD A,255 | Jump to 54810 if *IY+0 is not equal to 255. | ||
54884 | CP (IY+0) | |||
54887 | JP NZ,54810 | |||
54890 | POP IX | Restore IX, IY, DE and BC from the stack. | ||
54892 | POP IY | |||
54894 | POP DE | |||
54895 | POP BC | |||
54896 | RET | Return. |
Prev: 54779 | Up: Map | Next: 54897 |