Routines |
Prev: 64977 | Up: Map | Next: 65258 |
Used by the routine at Init_Title_Screen.
|
||||||||||||||||||||
On initialisation, HL=Copied_5B80. So this section is resetting various jump aliases and game status flags to default values.
|
||||||||||||||||||||
TitleScreen | 65024 | LD DE,23424 | DE=Print_TwoToneText_Alias. | |||||||||||||||||
65027 | LD BC,64 | BC=64. | ||||||||||||||||||
65030 | LDIR | Copies 64 bytes of data from the address pointed to by HL to the address pointed to by DE. | ||||||||||||||||||
65032 | LD A,1 | A=1. | ||||||||||||||||||
65034 | NOP | No-operation? | ||||||||||||||||||
65035 | NOP | |||||||||||||||||||
65036 | NOP | |||||||||||||||||||
65037 | CALL TitleScreen_Draw_Bandit | Call TitleScreen_Draw_Bandit. | ||||||||||||||||||
Write "WEST BANK" to the screen.
|
||||||||||||||||||||
65040 | LD HL,65258 | Points to TitleScreen_GameName and sends it to Print_TwoToneText_Alias. | ||||||||||||||||||
65043 | LD DE,16427 | |||||||||||||||||||
65046 | LD BC,1795 | |||||||||||||||||||
65049 | CALL Print_TwoToneText_Alias | |||||||||||||||||||
Writes "0 PLAY" to the screen.
|
||||||||||||||||||||
65052 | LD HL,65268 | Points to TitleScreen_Play and sends it to TitleScreen_Print. | ||||||||||||||||||
65055 | LD DE,16587 | |||||||||||||||||||
65058 | CALL TitleScreen_Print | |||||||||||||||||||
Writes "1 KEYS" to the screen.
|
||||||||||||||||||||
65061 | LD HL,65276 | Points to TitleScreen_Keys and sends it to TitleScreen_Print. | ||||||||||||||||||
65064 | LD DE,18475 | |||||||||||||||||||
65067 | CALL TitleScreen_Print | |||||||||||||||||||
Writes "2 KEMPSTON" to the screen.
|
||||||||||||||||||||
65070 | LD HL,65286 | Points to TitleScreen_Joystick and sends it to TitleScreen_Print. | ||||||||||||||||||
65073 | LD DE,18571 | |||||||||||||||||||
65076 | CALL TitleScreen_Print | |||||||||||||||||||
Writes "N LEVEL" to the screen.
|
||||||||||||||||||||
65079 | LD HL,65297 | Points to TitleScreen_Level and sends it to TitleScreen_Print. | ||||||||||||||||||
65082 | LD DE,18667 | |||||||||||||||||||
65085 | CALL TitleScreen_Print | |||||||||||||||||||
Writes "PROGRAM BY ALVARO MATEOS" to the screen.
|
||||||||||||||||||||
65088 | LD HL,65305 | Points to TitleScreen_Author and sends it to Print_TwoToneText_Alias. | ||||||||||||||||||
65091 | LD DE,20611 | |||||||||||||||||||
65094 | LD BC,1797 | |||||||||||||||||||
65097 | CALL Print_TwoToneText_Alias | |||||||||||||||||||
Writes "COPYRIGHT DINAMIC SOFTWARE 1985" to the screen.
|
||||||||||||||||||||
65100 | LD HL,65332 | Points to TitleScreen_Copyright and sends it to Print_TwoToneText_Alias. | ||||||||||||||||||
65103 | LD DE,20672 | |||||||||||||||||||
65106 | LD BC,1796 | |||||||||||||||||||
65109 | CALL Print_TwoToneText_Alias | |||||||||||||||||||
Act on inputs.
|
||||||||||||||||||||
TitleScreen_Input | 65112 | LD A,(23728) | If Controller is zero (joystick) then DE=$0787 else DE=$8707. Then call the subroutine at TitleScreen_Flash_Text. The $07/ $87 correspond to white INK and white INK flashing for the selected control method.
|
|||||||||||||||||
65115 | AND A | |||||||||||||||||||
65116 | JR Z,TitleScreen_Select_Kempston | |||||||||||||||||||
65118 | LD DE,34567 | |||||||||||||||||||
65121 | JR TitleScreen_Call_Flash | |||||||||||||||||||
TitleScreen_Select_Kempston | 65123 | LD DE,1927 | ||||||||||||||||||
TitleScreen_Call_Flash | 65126 | CALL TitleScreen_Flash_Text | ||||||||||||||||||
65129 | LD HL,23728 | Point HL=Controller. | ||||||||||||||||||
65132 | LD A,247 | Read from the keyboard;
|
||||||||||||||||||
65134 | IN A,(254) | |||||||||||||||||||
65136 | RRA | Jump to TitleScreen_Set_Keyboard if "1" is pressed. | ||||||||||||||||||
65137 | JR NC,TitleScreen_Set_Keyboard | |||||||||||||||||||
65139 | RRA | Jump to TitleScreen_Set_Kempston if "2" is pressed. | ||||||||||||||||||
65140 | JR NC,TitleScreen_Set_Kempston | |||||||||||||||||||
65142 | LD A,127 | Read from the keyboard;
|
||||||||||||||||||
65144 | IN A,(254) | |||||||||||||||||||
65146 | BIT 3,A | Jump to TitleScreen_Select_Level if "N" is pressed. | ||||||||||||||||||
65148 | JR Z,TitleScreen_Select_Level | |||||||||||||||||||
65150 | LD A,239 | Read from the keyboard;
|
||||||||||||||||||
65152 | IN A,(254) | |||||||||||||||||||
65154 | RRA | Return if "0" is pressed, else loop back around to TitleScreen_Input. | ||||||||||||||||||
65155 | RET NC | |||||||||||||||||||
65156 | JR TitleScreen_Input | |||||||||||||||||||
Keyboard has been selected so "highlight" it.
|
||||||||||||||||||||
TitleScreen_Set_Keyboard | 65158 | LD A,1 | Writes $01 to Controller and loop back around to TitleScreen_Input. | |||||||||||||||||
65160 | LD (HL),A | |||||||||||||||||||
65161 | JR TitleScreen_Input | |||||||||||||||||||
Kempston joystick has been selected so "highlight" it.
|
||||||||||||||||||||
TitleScreen_Set_Kempston | 65163 | XOR A | Writes $00 to Controller and loop back around to TitleScreen_Input. | |||||||||||||||||
65164 | LD (HL),A | |||||||||||||||||||
65165 | JR TitleScreen_Input | |||||||||||||||||||
Handles "level section".
|
||||||||||||||||||||
TitleScreen_Select_Level | 65167 | LD HL,23424 | Jump to LevelSelect with HL=Print_TwoToneText_Alias. | |||||||||||||||||
65170 | JP LevelSelect | |||||||||||||||||||
TitleScreen_Flash_Text | 65173 | LD BC,32 | ggg | |||||||||||||||||
65176 | LD HL,22827 | |||||||||||||||||||
65179 | LD (HL),D | |||||||||||||||||||
65180 | ADD HL,BC | |||||||||||||||||||
65181 | LD (HL),D | |||||||||||||||||||
65182 | ADD HL,BC | |||||||||||||||||||
65183 | ADD HL,BC | |||||||||||||||||||
65184 | LD (HL),E | |||||||||||||||||||
65185 | ADD HL,BC | |||||||||||||||||||
65186 | LD (HL),E | |||||||||||||||||||
65187 | RET | Return. | ||||||||||||||||||
Draw bandits.
|
||||||||||||||||||||
TitleScreen_Draw_Bandit | 65188 | LD HL,22721 | Sets attributes on the left and right of the screen and points DE at Character_00. | |||||||||||||||||
65191 | CALL TitleScreen_Bandit_Attributes | |||||||||||||||||||
65194 | LD HL,22745 | |||||||||||||||||||
65197 | CALL TitleScreen_Bandit_Attributes | |||||||||||||||||||
65200 | LD HL,16577 | |||||||||||||||||||
65203 | CALL TitleScreen_0 | |||||||||||||||||||
65206 | LD HL,16601 | |||||||||||||||||||
TitleScreen_0 | 65209 | LD DE,26624 | ||||||||||||||||||
65212 | LD B,88 | |||||||||||||||||||
65214 | LD C,6 | |||||||||||||||||||
65216 | JP Draw_Character | Jump to Draw_Character. | ||||||||||||||||||
TitleScreen_Bandit_Attributes | 65219 | LD B,8 | Calls TitleScreen_Bandit_Attributes_Loop with B=$08 and A=$28. | |||||||||||||||||
65221 | LD A,40 | |||||||||||||||||||
65223 | CALL TitleScreen_Bandit_Attributes_Loop | |||||||||||||||||||
65226 | LD B,3 | Calls TitleScreen_Bandit_Attributes_Copy with B=$03 and A=$20. | ||||||||||||||||||
65228 | LD A,32 | |||||||||||||||||||
TitleScreen_Bandit_Attributes_Loop | 65230 | PUSH BC | ||||||||||||||||||
65231 | CALL TitleScreen_Bandit_Attributes_Copy | |||||||||||||||||||
65234 | LD BC,27 | |||||||||||||||||||
65237 | ADD HL,BC | |||||||||||||||||||
65238 | POP BC | |||||||||||||||||||
65239 | DJNZ TitleScreen_Bandit_Attributes_Loop | |||||||||||||||||||
65241 | RET | Return. | ||||||||||||||||||
TitleScreen_Bandit_Attributes_Copy | 65242 | PUSH HL | ||||||||||||||||||
65243 | POP DE | |||||||||||||||||||
65244 | INC DE | |||||||||||||||||||
65245 | LD BC,5 | |||||||||||||||||||
65248 | LD (HL),A | |||||||||||||||||||
65249 | LDIR | |||||||||||||||||||
65251 | RET | Return. | ||||||||||||||||||
TitleScreen_Print | 65252 | LD BC,1794 | B=$07, C=$02 and jump to Print_TwoToneText_Alias. | |||||||||||||||||
65255 | JP Print_TwoToneText_Alias |
Prev: 64977 | Up: Map | Next: 65258 |