Routines |
Prev: EB05 | Up: Map | Next: EB8D |
Used by the routines at PlayerControls_Kempston and PlayerControls.
|
||||||||
PlayerMoveLeft | EB49 | LD A,(IX+$11) | Return if *IX+11 is equal to 02. | |||||
EB4C | CP $02 | |||||||
EB4E | RET Z | |||||||
EB4F | CP $03 | Jump to PlayerMoveLeft_0 if *IX+11 is not equal to 03. | ||||||
EB51 | JR NZ,PlayerMoveLeft_0 | |||||||
EB53 | LD A,(IX+$03) | Return if *IX+03 is not equal to 03. | ||||||
EB56 | CP $03 | |||||||
EB58 | RET NZ | |||||||
EB59 | LD A,$FF | Write FF to *F32D. | ||||||
EB5B | LD ($F32D),A | |||||||
EB5E | LD A,(IX+$01) | Jump to PlayerMoveLeft_0 if *IX+01 is equal to *IX+12. | ||||||
EB61 | CP (IX+$12) | |||||||
EB64 | JR Z,PlayerMoveLeft_0 | |||||||
EB66 | CP (IX+$13) | Return if *IX+01 is not equal to *IX+13. | ||||||
EB69 | RET NZ | |||||||
PlayerMoveLeft_0 | EB6A | LD A,(IX+$11) | Jump to PlayerMoveLeft_1 if *IX+11 is equal to 04. | |||||
EB6D | CP $04 | |||||||
EB6F | JR Z,PlayerMoveLeft_1 | |||||||
EB71 | LD (IX+$11),$04 | Write 04 to *IX+11. | ||||||
EB75 | LD (IX+$06),$4A | Write 4A to *IX+06. | ||||||
PlayerMoveLeft_1 | EB79 | LD A,(IX+$06) | A=*IX+06. | |||||
EB7C | ADD A,$06 | A+=06. | ||||||
EB7E | LD (IX+$06),A | Write A to *IX+06. | ||||||
EB81 | CP $80 | Jump to PlayerMoveLeft_2 if A is not equal to 80. | ||||||
EB83 | JR NZ,PlayerMoveLeft_2 | |||||||
EB85 | LD (IX+$06),$50 | Write 50 to *IX+06. | ||||||
PlayerMoveLeft_2 | EB89 | INC (IX+$04) | Increment *IX+04 by one. | |||||
EB8C | RET | Return. |
Prev: EB05 | Up: Map | Next: EB8D |