![]() |
Routines |
| Prev: 720F | Up: Map | Next: 7265 |
|
Handles room 01 logic. The current level in B controls which objects are initialised or updated on each pass.
|
||||||||||||||||||||
| Handler_Room01 | 723F | LD A,B | Copy the current level into A. | |||||||||||||||||
| 7240 | CP $01 | Return if this is level 01. | ||||||||||||||||||
| 7242 | RET Z | |||||||||||||||||||
|
Add the helicopter.
|
||||||||||||||||||||
| 7243 | LD IX,$DAD8 | IX=Sprite06_3Wide_X_Position. | ||||||||||||||||||
| 7247 | LD IY,$7508 | IY=Helicopter_State_Data_1. | ||||||||||||||||||
| 724B | PUSH AF | Stash the current level on the stack. | ||||||||||||||||||
| 724C | CALL Handler_Helicopter | Call Handler_Helicopter. | ||||||||||||||||||
| 724F | POP AF | Restore the current level from the stack. | ||||||||||||||||||
|
Add the second object (level 03 only).
|
||||||||||||||||||||
| 7250 | LD IX,$DADC | IX=Sprite07_3Wide_X_Position. | ||||||||||||||||||
| 7254 | LD IY,$750D | IY=Helicopter_State_Data_2. | ||||||||||||||||||
| 7258 | CP $03 | Is this level 03? | ||||||||||||||||||
| 725A | PUSH AF | Stash the current level on the stack. | ||||||||||||||||||
| 725B | CALL Z,Handler_Helicopter_Entry | Call Handler_Helicopter_Entry if this is level 03. | ||||||||||||||||||
| 725E | POP AF | Restore the current level from the stack. | ||||||||||||||||||
|
Add the balloon if this is level 04 or higher.
|
||||||||||||||||||||
| 725F | CP $04 | Call Handler_Balloon if this is level 04 or higher. | ||||||||||||||||||
| 7261 | CALL NC,Handler_Balloon | |||||||||||||||||||
| 7264 | RET | Return. | ||||||||||||||||||
| Prev: 720F | Up: Map | Next: 7265 |