![]() |
Routines |
| Prev: 64768 | Up: Map | Next: 64974 |
|
Used by the routine at 51943.
|
|||||||||||||||||||
|
On initialisation, HL=Copied_5B80. The code at 64896 and 64898 is not present on the Dinamic release.
|
|||||||||||||||||||
| 64896 | JR 64900 | Jump to 64900. | |||||||||||||||||
|
This code is the main entry point for the Gremlin Graphics release. The Dinamic release begins at 23808.
|
|||||||||||||||||||
| 64898 | JR 64936 | Jump to 64936, bypassing the "cheat mode" code | |||||||||||||||||
|
Code continues from 64896.
|
|||||||||||||||||||
| 64900 | LD A,253 | Read from the keyboard;
|
|||||||||||||||||
| 64902 | IN A,(254) | ||||||||||||||||||
| 64904 | RRA | ||||||||||||||||||
| 64905 | JR NC,64909 | Jump to 64909 if "A" is pressed. | |||||||||||||||||
| 64907 | JR 64931 | Jump to 64931. | |||||||||||||||||
| 64909 | LD A,191 | Read from the keyboard;
|
|||||||||||||||||
| 64911 | IN A,(254) | ||||||||||||||||||
| 64913 | RRA | Jump to 64917 if "ENTER" is pressed. | |||||||||||||||||
| 64914 | JR NC,64917 | ||||||||||||||||||
| 64916 | RET | Return. | |||||||||||||||||
| 64917 | LD DE,23424 | DE=Print_TwoToneText_Alias. | |||||||||||||||||
| 64920 | LD BC,64 | BC=64. | |||||||||||||||||
| 64923 | LDIR | Copy the status flags into Print_TwoToneText_Alias. | |||||||||||||||||
| 64925 | LD HL,(23430) | Put 255 lives in the copy of the life counter so the game will start with this many. | |||||||||||||||||
| 64928 | LD (HL),255 | ||||||||||||||||||
| 64930 | RET | Return. | |||||||||||||||||
| 64931 | LD SP,24560 | SP=24560. | |||||||||||||||||
|
On the Dinamic release, the jump is to 23856.
|
|||||||||||||||||||
| 64934 | JR 64956 | Jump to 64956. | |||||||||||||||||
| 64936 | EI | Enable interrupts. | |||||||||||||||||
| 64937 | DEFS 8 | No-operation. | |||||||||||||||||
|
Oddly enable both keyboard and kempston joystick input methods at the same time.
|
|||||||||||||||||||
| 64945 | LD HL,257 | Write 257 to Controller. | |||||||||||||||||
| 64948 | LD (23728),HL | ||||||||||||||||||
|
Set the border to black and blank the screen buffer.
|
|||||||||||||||||||
| 64951 | LD A,0 | A=0. | |||||||||||||||||
| 64953 | CALL 8859 | Call BORDER routine (not from the start). | |||||||||||||||||
|
Main game loop.
On the Dinamic release, this code is at 23856.
|
|||||||||||||||||||
| 64956 | LD HL,16384 | Writes 0 to all 6911 bytes of the screen buffer (i.e. "blanks it"). | |||||||||||||||||
| 64959 | LD DE,16385 | ||||||||||||||||||
| 64962 | LD BC,6911 | ||||||||||||||||||
| 64965 | LD (HL),0 | ||||||||||||||||||
| 64967 | LDIR | ||||||||||||||||||
| 64969 | CALL New_Game | Run the game. | |||||||||||||||||
| 64972 | JR 64956 | Jump back to 64956 to run another game. | |||||||||||||||||
| Prev: 64768 | Up: Map | Next: 64974 |