![]() |
Routines |
| Prev: 60365 | Up: Map | Next: 60473 |
|
Used by the routines at InputHandler_Keyboard, InputHandler_Kempston, InputHandler_Cursor and InputHandler_Sinclair.
|
||||||||||||||||||||
|
Handle game controls which are common across all input control routines.
|
||||||||||||||||||||
| InputHandler_Common | 60405 | POP IX | Housekeeping; see Handler_PlayerInput. Restore IX and HL from the stack. | |||||||||||||||||
| 60407 | POP HL | |||||||||||||||||||
| 60408 | LD A,(55352) | Jump to Common_Continue if bit 7 of *Bomb is set. | ||||||||||||||||||
| 60411 | BIT 7,A | |||||||||||||||||||
| 60413 | JR NZ,Common_Continue | |||||||||||||||||||
|
Handler for HOLD ("H").
|
||||||||||||||||||||
| 60415 | LD A,191 | Read from the keyboard;
|
||||||||||||||||||
| 60417 | IN A,(254) | |||||||||||||||||||
| 60419 | RRA | Jump to Common_CheckAbort if "H" (hold) is not being pressed. | ||||||||||||||||||
| 60420 | RRA | |||||||||||||||||||
| 60421 | RRA | |||||||||||||||||||
| 60422 | RRA | |||||||||||||||||||
| 60423 | RRA | |||||||||||||||||||
| 60424 | JR C,Common_CheckAbort | |||||||||||||||||||
| 60426 | LD A,R | A=the contents of the Memory Refresh Register. | ||||||||||||||||||
| 60428 | PUSH AF | Stash AF on the stack. | ||||||||||||||||||
| 60429 | DI | Disable interrupts. | ||||||||||||||||||
|
Handler for CONTINUE ("J").
|
||||||||||||||||||||
| Common_CheckContinue | 60430 | LD A,191 | Read from the keyboard;
|
|||||||||||||||||
| 60432 | IN A,(254) | |||||||||||||||||||
| 60434 | RRA | Jump to Common_CheckContinue if "J" (continue) is not being pressed. | ||||||||||||||||||
| 60435 | RRA | |||||||||||||||||||
| 60436 | RRA | |||||||||||||||||||
| 60437 | RRA | |||||||||||||||||||
| 60438 | JR C,Common_CheckContinue | |||||||||||||||||||
| 60440 | POP AF | Restore AF from the stack. | ||||||||||||||||||
| 60441 | JP PO,Common_CheckAbort | Jump to Common_CheckAbort if is odd. | ||||||||||||||||||
| 60444 | EI | Enable interrupts. | ||||||||||||||||||
|
Handler for ABORT ("R" and "T" together).
|
||||||||||||||||||||
| Common_CheckAbort | 60445 | LD A,251 | Read from the keyboard;
|
|||||||||||||||||
| 60447 | IN A,(254) | |||||||||||||||||||
| 60449 | RRA | Jump to Common_Continue if "R" (abort game - first key) is not being pressed. | ||||||||||||||||||
| 60450 | RRA | |||||||||||||||||||
| 60451 | RRA | |||||||||||||||||||
| 60452 | RRA | |||||||||||||||||||
| 60453 | JR C,Common_Continue | |||||||||||||||||||
| 60455 | RRA | Jump to Common_Continue if "T" (abort game - second key) is not being pressed. | ||||||||||||||||||
| 60456 | JR C,Common_Continue | |||||||||||||||||||
|
Initiate a game abort, do some housekeeping.
|
||||||||||||||||||||
| 60458 | POP IY | Restore IY from the stack FOUR times. | ||||||||||||||||||
| 60460 | POP IY | |||||||||||||||||||
| 60462 | POP IY | |||||||||||||||||||
| 60464 | POP IY | |||||||||||||||||||
| 60466 | JP Game_Loop | Jump to Game_Loop. | ||||||||||||||||||
|
Load the control byte into the accumulator for the return to the calling routine.
|
||||||||||||||||||||
| Common_Continue | 60469 | LD A,(58802) | A=*Data_Control. | |||||||||||||||||
| 60472 | RET | Return. | ||||||||||||||||||
| Prev: 60365 | Up: Map | Next: 60473 |