![]() |
Routines |
| Prev: 25335 | Up: Map | Next: 25470 |
|
|
||||
| Message_SprayBugs | 25374 | DEFM 71 | "SPRAY THE BUGS" | |
| 25375 | DEFM "SPRAY THE BUG","S"+128 | |||
|
Start New Game.
|
||||
| GameStart | 25389 | CALL CreateWindow | Call CreateWindow. | |
| 25392 | LD HL,28744 | HL=28744. | ||
| 25395 | LD DE,25374 | DE=Message_SprayBugs. | ||
| 25398 | CALL GameOverPrint_Pause | Call GameOverPrint_Pause. | ||
| 25401 | LD HL,24069 | Write 0 to 230 bytes from 1UP_Score_1. | ||
| 25404 | LD (HL),0 | |||
| 25406 | LD D,H | |||
| 25407 | LD E,L | |||
| 25408 | INC DE | |||
| 25409 | LD BC,230 | |||
| 25412 | LDIR | |||
| 25414 | CALL ResetPlayerData | Call ResetPlayerData. | ||
| 25417 | CALL ResetModifiedCode | Call ResetModifiedCode. | ||
| 25420 | CALL LevelNew | Call LevelNew. | ||
| Message_SprayBugs_0 | 25423 | LD SP,23808 | SP=23808. | |
| 25426 | EI | Enable interrupts. | ||
| 25427 | LD IX,24204 | IX=State_Flower. | ||
| 25431 | XOR A | Write 0 to CurrentBug_ID to reset the enemy counter. | ||
| 25432 | LD (24086),A | |||
|
This entry point is used by the routines at FrameUpdate and NewActor.
|
||||
| MainLoop | 25435 | LD A,(23672) | Compare FRAMES and LastFrame. | |
| 25438 | LD C,A | |||
| 25439 | LD A,(24095) | |||
|
If interrupts are enabled, then FrameUpdate will be called and DI executed.
|
||||
| 25442 | CP C | If they are not equal call FrameUpdate. | ||
| 25443 | CALL NZ,FrameUpdate | |||
| 25446 | LD HL,28976 | HL=generate new actor routine. | ||
| 25449 | PUSH HL | Stash HL on the stack. | ||
| 25450 | LD HL,25470 | HL=JumpTable_Main. | ||
| 25453 | LD A,(IX+0) | Calculate the jump table offset. | ||
| 25456 | RLCA | |||
| 25457 | AND %01111110 | |||
| PerformJump | 25459 | LD C,A | BC=offset. | |
| 25460 | LD B,0 | |||
| 25462 | ADD HL,BC | HL=Jump table + offset. | ||
| 25463 | LD A,(HL) | HL=Fetch the jump address. | ||
| 25464 | INC HL | |||
| 25465 | LD H,(HL) | |||
| 25466 | LD L,A | |||
| 25467 | JP 23728 | Jump to 23728 which does an indirect jump to the jump address. | ||
|
View the equivalent code in;
|
||||
| Prev: 25335 | Up: Map | Next: 25470 |