![]() |
Routines |
| Prev: 45116 | Up: Map | Next: 45213 |
|
||||||||||||||||||||
| Controls_Jump | 45165 | LD A,(45787) | If Game_Options is zero then jump to Controls_Jump_Keyboard. | |||||||||||||||||
| 45168 | OR A | |||||||||||||||||||
| 45169 | JR Z,Controls_Jump_Keyboard | |||||||||||||||||||
| 45171 | CP 1 | If Game_Options is not 1 then jump to Controls_Jump_Sinclair. | ||||||||||||||||||
| 45173 | JR NZ,Controls_Jump_Sinclair | |||||||||||||||||||
|
Handle Kempston Joystick.
|
||||||||||||||||||||
| 45175 | IN A,(31) | Read from Kempston Joystick. | ||||||||||||||||||
| 45177 | BIT 4,A | If bit 4 is set/ "FIRE" is being pressed then jump to Controls_NoPress_Jump. | ||||||||||||||||||
| 45179 | JR Z,Controls_NoPress_Jump | |||||||||||||||||||
|
Key was pressed so return A=1.
|
||||||||||||||||||||
| Controls_Pressed_Jump | 45181 | LD A,1 | A=1. | |||||||||||||||||
| 45183 | RET | Return. | ||||||||||||||||||
|
Handle Sinclair Joystick.
|
||||||||||||||||||||
| Controls_Jump_Sinclair | 45184 | LD A,239 | Read from the keyboard;
|
|||||||||||||||||
| 45186 | IN A,(254) | |||||||||||||||||||
| 45188 | BIT 0,A | If bit 0 is set jump to Controls_Pressed_Jump. | ||||||||||||||||||
| 45190 | JR Z,Controls_Pressed_Jump | |||||||||||||||||||
| 45192 | JR Controls_NoPress_Jump | Jump to Controls_NoPress_Jump. | ||||||||||||||||||
|
Handle Keyboard controls.
|
||||||||||||||||||||
| Controls_Jump_Keyboard | 45194 | LD A,254 | Read from the keyboard;
|
|||||||||||||||||
| 45196 | IN A,(254) | |||||||||||||||||||
| 45198 | LD B,A | Store the result in B. | ||||||||||||||||||
| 45199 | LD A,127 | Read from the keyboard;
|
||||||||||||||||||
| 45201 | IN A,(254) | |||||||||||||||||||
| 45203 | AND B | Merge in the bits from B. | ||||||||||||||||||
|
Fill in the "blanks".
|
||||||||||||||||||||
| 45204 | OR %11100000 | Set bits 5-7. | ||||||||||||||||||
|
If there's been any keypress at all then A won't be 255.
|
||||||||||||||||||||
| 45206 | CP 255 | If the result is not 255 jump to Controls_Pressed_Jump. | ||||||||||||||||||
| 45208 | JP NZ,Controls_Pressed_Jump | |||||||||||||||||||
|
No key was pressed so return A=0.
|
||||||||||||||||||||
| Controls_NoPress_Jump | 45211 | XOR A | A=0. | |||||||||||||||||
| 45212 | RET | Return. | ||||||||||||||||||
| Prev: 45116 | Up: Map | Next: 45213 |