![]() |
Routines |
Prev: 54798 | Up: Map | Next: 54855 |
Used by the routines at 54476 and Handler_SeaCreatures.
|
||||||||
Handler_SeaCreatureMovement | 54806 | LD C,(IX+0) | C=*IX+0. | |||||
54809 | LD B,(IX+1) | B=*IX+1. | ||||||
54812 | LD E,(IX+2) | E=*IX+2. | ||||||
54815 | LD D,(IX+3) | D=*IX+3. | ||||||
54818 | LD A,(IX+4) | A=*IX+4. | ||||||
54821 | ADD A,E | A+=E. | ||||||
54822 | CP 128 | Jump to Handler_SeaCreatureMovement_0 if A is higher than 128. | ||||||
54824 | JR NC,Handler_SeaCreatureMovement_0 | |||||||
54826 | CP 4 | Jump to Handler_SeaCreatureMovement_1 if A is lower than 4. | ||||||
54828 | JR C,Handler_SeaCreatureMovement_1 | |||||||
54830 | INC C | Increment C by two. | ||||||
54831 | INC C | |||||||
Handler_SeaCreatureMovement_0 | 54832 | DEC C | Decrease C by one. | |||||
54833 | AND %00000011 | Keep only bits 0-1. | ||||||
Handler_SeaCreatureMovement_1 | 54835 | LD E,A | E=A. | |||||
54836 | LD A,(IX+5) | A=*IX+5. | ||||||
54839 | ADD A,D | A+=D. | ||||||
54840 | CP 128 | Jump to Handler_SeaCreatureMovement_2 if A is higher than 128. | ||||||
54842 | JR NC,Handler_SeaCreatureMovement_2 | |||||||
54844 | CP 4 | Jump to Handler_SeaCreatureMovement_3 if A is lower than 4. | ||||||
54846 | JR C,Handler_SeaCreatureMovement_3 | |||||||
54848 | INC B | Increment B by two. | ||||||
54849 | INC B | |||||||
Handler_SeaCreatureMovement_2 | 54850 | DEC B | Decrease B by one. | |||||
54851 | AND %00000011 | Keep only bits 0-1. | ||||||
Handler_SeaCreatureMovement_3 | 54853 | LD D,A | D=A. | |||||
54854 | RET | Return. |
Prev: 54798 | Up: Map | Next: 54855 |