![]() |
Routines |
| Prev: E47A | Up: Map | Next: E581 |
|
Used by the routine at InitialiseGame.
|
||||
| Handler_Lifts2 | E4F1 | LD IX,($5BE4) | IX=*ReferenceLifts. | |
|
Are we done?
|
||||
| Handler_Lifts2_Loop | E4F5 | LD A,(IX+$00) | Return if the terminator character has been received instead of a co-ordinate (FF). | |
| E4F8 | CP $FF | |||
| E4FA | RET Z | |||
| E4FB | LD A,(IX+$05) | Jump to Handler_Lifts2_3 if *IX+05 is equal to 00. | ||
| E4FE | CP $00 | |||
| E500 | JR Z,Handler_Lifts2_3 | |||
| E502 | LD C,(IX+$00) | C=*IX+00. | ||
| E505 | LD B,(IX+$01) | B=*IX+01. | ||
| E508 | LD A,(IX+$03) | Jump to Handler_Lifts2_5 if *IX+03 is equal to 03. | ||
| E50B | CP $03 | |||
| E50D | JR Z,Handler_Lifts2_5 | |||
| E50F | CP $02 | Jump to Handler_Lifts2_4 if *IX+03 is equal to 02. | ||
| E511 | JR Z,Handler_Lifts2_4 | |||
| E513 | CP $01 | Jump to Handler_Lifts2_6 if *IX+03 is equal to 01. | ||
| E515 | JR Z,Handler_Lifts2_6 | |||
| E517 | DEC B | Decrease B by one. | ||
| E518 | CALL $0DD9 | Call CL_SET. | ||
| Handler_Lifts2_0 | E51B | LD D,$04 | D=04. | |
| Handler_Lifts2_1 | E51D | LD B,(IX+$07) | B=*IX+07. | |
| E520 | LD A,$FF | A=FF. | ||
| E522 | LD HL,($5C84) | HL=*DF_CC. | ||
| E525 | INC H | Increment H by one. | ||
| E526 | LD ($5C84),HL | Write HL to *DF_CC. | ||
| E529 | DEC H | Decrease H by one. | ||
| Handler_Lifts2_2 | E52A | LD (HL),A | Write A to *HL. | |
| E52B | INC HL | Increment HL by one. | ||
| E52C | DJNZ Handler_Lifts2_2 | Decrease counter by one and loop back to Handler_Lifts2_2 until counter is zero. | ||
| E52E | DEC D | Decrease D by one. | ||
| E52F | JR NZ,Handler_Lifts2_1 | Jump to Handler_Lifts2_1 until D is zero. | ||
| Handler_Lifts2_3 | E531 | LD DE,$0010 | IX+=0010. | |
| E534 | ADD IX,DE | |||
| E536 | JR Handler_Lifts2_Loop | Jump to Handler_Lifts2_Loop. | ||
| Handler_Lifts2_4 | E538 | CALL $0DD9 | Call CL_SET. | |
| E53B | LD HL,($5C84) | HL=*DF_CC. | ||
| E53E | INC H | Increment H by four. | ||
| E53F | INC H | |||
| E540 | INC H | |||
| E541 | INC H | |||
| E542 | LD ($5C84),HL | Write HL to *DF_CC. | ||
| E545 | JR Handler_Lifts2_0 | Jump to Handler_Lifts2_0. | ||
| Handler_Lifts2_5 | E547 | CALL $0DD9 | Call CL_SET. | |
| E54A | LD HL,($5C84) | HL=*DF_CC. | ||
| E54D | INC H | Increment H by two. | ||
| E54E | INC H | |||
| E54F | LD ($5C84),HL | Write HL to *DF_CC. | ||
| E552 | JR Handler_Lifts2_0 | Jump to Handler_Lifts2_0. | ||
| Handler_Lifts2_6 | E554 | PUSH BC | Stash BC on the stack. | |
| E555 | CALL $0DD9 | Call CL_SET. | ||
| E558 | LD HL,($5C84) | HL=*DF_CC. | ||
| E55B | LD A,H | H+=06. | ||
| E55C | ADD A,$06 | |||
| E55E | LD H,A | |||
| E55F | LD ($5C84),HL | Write HL to *DF_CC. | ||
| E562 | LD D,$02 | D=02. | ||
| Handler_Lifts2_7 | E564 | LD HL,($5C84) | HL=*DF_CC. | |
| E567 | INC H | Increment H by one. | ||
| E568 | LD ($5C84),HL | Write HL to *DF_CC. | ||
| E56B | DEC H | Decrease H by one. | ||
| E56C | LD A,$FF | A=FF. | ||
| E56E | LD B,(IX+$07) | B=*IX+07. | ||
| Handler_Lifts2_8 | E571 | LD (HL),A | Write A to *HL. | |
| E572 | INC HL | Increment HL by one. | ||
| E573 | DJNZ Handler_Lifts2_8 | Decrease counter by one and loop back to Handler_Lifts2_8 until counter is zero. | ||
| E575 | DEC D | Decrease D by one. | ||
| E576 | JR NZ,Handler_Lifts2_7 | Jump to Handler_Lifts2_7 until D is zero. | ||
| E578 | POP BC | Restore BC from the stack. | ||
| E579 | DEC B | Decrease B by one. | ||
| E57A | CALL $0DD9 | Call CL_SET. | ||
| E57D | LD D,$02 | D=02. | ||
| E57F | JR Handler_Lifts2_1 | Jump to Handler_Lifts2_1. | ||
| Prev: E47A | Up: Map | Next: E581 |