![]() |
Routines |
| Prev: 53921 | Up: Map | Next: 54377 |
|
Used by the routine at StartGame.
|
||||
| 54098 | LD DE,1920 | Write 1920 to *55438. | ||
| 54101 | LD (55438),DE | |||
| 54105 | LD DE,2800 | Write 2800 to *55440. | ||
| 54108 | LD (55440),DE | |||
| 54112 | CALL Handler_CheckTime | Call Handler_CheckTime. | ||
| 54115 | LD A,(55348) | Jump to 54151 if *PlayerCursor_TileID is equal to 9. | ||
| 54118 | CP 9 | |||
| 54120 | JR Z,54151 | |||
| 54122 | LD A,(55349) | Jump to 54151 if *PlayerCursor_Flag is not equal to 0. | ||
| 54125 | CP 0 | |||
| 54127 | JR NZ,54151 | |||
| 54129 | PUSH BC | Stash BC on the stack. | ||
| 54130 | LD A,(55344) | Write *StorageCursor_Y_Position to *DestinationCursor_Y_Position. | ||
| 54133 | LD (55340),A | |||
| 54136 | LD A,(55345) | Write *StorageCursor_X_Position to *DestinationCursor_X_Position. | ||
| 54139 | LD (55341),A | |||
| 54142 | CALL Display_PlayerCursor | Call Display_PlayerCursor. | ||
| 54145 | LD HL,55353 | HL=55353. | ||
| 54148 | RES 0,(HL) | Reset bit 0 of *HL. | ||
| 54150 | POP BC | Restore BC from the stack. | ||
| 54151 | BIT 4,B | Jump to StartGame_0 if bit 4 of B is not set. | ||
| 54153 | JP Z,StartGame_0 | |||
| 54156 | PUSH BC | Stash BC on the stack. | ||
| 54157 | CALL 55999 | Call 55999. | ||
| 54160 | CALL Print_Bonus | Call Print_Bonus. | ||
| 54163 | LD HL,55354 | HL=Time. | ||
| 54166 | BIT 6,(HL) | Call Handler_TimeBar if bit 6 of *HL is set. | ||
| 54168 | CALL NZ,Handler_TimeBar | |||
| 54171 | LD HL,55354 | HL=Time. | ||
| 54174 | SET 0,(HL) | Set bit 0 of *HL. | ||
| 54176 | POP BC | Restore BC from the stack. | ||
| 54177 | BIT 3,B | Jump to 54212 if bit 3 of B is not set. | ||
| 54179 | JR Z,54212 | |||
| 54181 | CALL Handler_Bonus | Call Handler_Bonus. | ||
| 54184 | LD A,(59229) | A=*Tile_Horizontal_Position. | ||
| 54187 | DEC A | Decrease A by one. | ||
| 54188 | LD B,A | B=A. | ||
| 54189 | LD A,(59230) | A=*Tile_Vertical_Position. | ||
| 54192 | DEC A | Decrease A by one. | ||
| 54193 | LD C,A | C=A. | ||
| 54194 | LD DE,55403 | DE=55403. | ||
| 54197 | LD A,4 | A=4. | ||
| 54199 | LD IX,55354 | IX=Time. | ||
| 54203 | RES 1,(IX+0) | Reset bit 1 of *IX+0. | ||
| 54207 | CALL Print_Numbers | Call Print_Numbers. | ||
| 54210 | JR 54239 | Jump to 54239. | ||
| 54212 | LD IX,55354 | IX=Time. | ||
| 54216 | BIT 2,(IX+0) | Jump to 54285 if bit 2 of *IX+0 is set. | ||
| 54220 | JR Z,54285 | |||
| 54222 | LD DE,1296 | Write 1296 to *55438. | ||
| 54225 | LD (55438),DE | |||
| 54229 | LD DE,2736 | Write 2736 to *55440. | ||
| 54232 | LD (55440),DE | |||
| 54236 | CALL Handler_Bonus | Call Handler_Bonus. | ||
| 54239 | LD A,5 | A=5. | ||
| 54241 | LD C,130 | C=130. | ||
| 54243 | PUSH BC | Stash BC on the stack. | ||
| 54244 | LD D,5 | D=5. | ||
| 54246 | OUT (254),A | Set border to the colour held by A. | ||
| 54248 | XOR %00010000 | Flip bit 4. | ||
| 54250 | LD E,C | E=C. | ||
| 54251 | DEC E | Decrease E by one. | ||
| 54252 | JR NZ,54251 | Jump to 54251 if E is not zero. | ||
| 54254 | DEC D | Decrease D by one. | ||
| 54255 | JR NZ,54246 | Jump to 54246 if D is not zero. | ||
| 54257 | DEC C | Decrease C by one. | ||
| 54258 | JR NZ,54244 | Jump to 54244 if C is not zero. | ||
| 54260 | POP BC | Restore BC from the stack. | ||
| 54261 | LD D,5 | D=5. | ||
| 54263 | LD A,5 | A=5. | ||
| 54265 | OUT (254),A | Set border to the colour held by A. | ||
| 54267 | XOR %00010000 | Flip bit 4. | ||
| 54269 | LD E,C | E=C. | ||
| 54270 | DEC E | Decrease E by one. | ||
| 54271 | JR NZ,54270 | Jump to 54270 if E is not zero. | ||
| 54273 | DEC D | Decrease D by one. | ||
| 54274 | JR NZ,54265 | Jump to 54265 if D is not zero. | ||
| 54276 | INC C | Increment C by one. | ||
| 54277 | LD A,130 | Jump to 54261 if C is not equal to 130. | ||
| 54279 | CP C | |||
| 54280 | JR NZ,54261 | |||
| 54282 | CALL 55999 | Call 55999. | ||
| 54285 | LD IX,55354 | IX=Time. | ||
| 54289 | BIT 3,(IX+0) | Jump to StartGame_0 if bit 3 of *IX+0 is not set. | ||
| 54293 | JP Z,StartGame_0 | |||
| 54296 | CALL 59866 | Call 59866. | ||
| 54299 | CALL 59253 | Call 59253. | ||
|
This entry point is used by the routines at Handler_CheckTime and Handler_Bombs.
|
||||
| 54302 | LD A,(55342) | Write *CurrentCursor_Y_Position to *Tile_Horizontal_Position. | ||
| 54305 | LD (59229),A | |||
| 54308 | LD A,(55343) | Write *CurrentCursor_X_Position to *Tile_Vertical_Position. | ||
| 54311 | LD (59230),A | |||
| 54314 | LD A,(55348) | Jump to 54358 if *PlayerCursor_TileID is not equal to 9. | ||
| 54317 | CP 9 | |||
| 54319 | JR NZ,54358 | |||
| 54321 | LD A,(59229) | A=*Tile_Horizontal_Position. | ||
| 54324 | LD (59234),A | Write A to *59234. | ||
| 54327 | INC A | Increment A by one. | ||
| 54328 | LD (59235),A | Write A to *59235. | ||
| 54331 | LD A,(59230) | A=*Tile_Vertical_Position. | ||
| 54334 | LD (59236),A | Write A to *59236. | ||
| 54337 | INC A | Increment A by one. | ||
| 54338 | LD (59237),A | Write A to *59237. | ||
| 54341 | CALL 59866 | Call 59866. | ||
| 54344 | LD A,47 | A=INK: WHITE, PAPER: CYAN . | ||
| 54346 | CALL ColouriseHome | Call ColouriseHome. | ||
| 54349 | CALL 59813 | Call 59813. | ||
| 54352 | HALT | Halt operation (suspend CPU until the next interrupt). | ||
| 54353 | CALL 59340 | Call 59340. | ||
| 54356 | JR 54367 | Jump to 54367. | ||
| 54358 | CALL Remove_PlayerCursor | |||
| 54361 | CALL 59866 | |||
| 54364 | CALL 59253 | |||
| 54367 | LD HL,55036 | |||
| 54370 | LD B,8 | |||
| 54372 | DI | |||
| 54373 | CALL 61258 | |||
| 54376 | EI | |||
| Prev: 53921 | Up: Map | Next: 54377 |