![]() |
Routines |
| Prev: F704 | Up: Map | Next: F73D |
|
Control mode 03: reads keyboard ports F7FE and EFFE four times, extracting one direction or fire bit from each read.
|
||||||||||||||||||||
| Read_Control_Sinclair | F71E | LD BC,$F7FE | Read from the keyboard;
|
|||||||||||||||||
| F721 | IN A,(C) | |||||||||||||||||||
| F723 | OR %11101111 | Isolate bit 4 from the first row. | ||||||||||||||||||
| F725 | LD E,A | Save the masked result. | ||||||||||||||||||
| F726 | LD B,$EF | Read from the keyboard;
|
||||||||||||||||||
| F728 | IN A,(C) | |||||||||||||||||||
| F72A | OR %11111110 | Isolate bit 0 from the second row. | ||||||||||||||||||
| F72C | AND E | Merge with and save the accumulated result. | ||||||||||||||||||
| F72D | LD E,A | |||||||||||||||||||
| F72E | IN A,(C) | Read from the keyboard;
|
||||||||||||||||||
| F730 | OR %11100111 | Isolate bits 3 and 4 from this read. | ||||||||||||||||||
| F732 | RRCA | Shift the isolated bits into position. | ||||||||||||||||||
| F733 | RRCA | |||||||||||||||||||
| F734 | AND E | Merge with and save the accumulated result. | ||||||||||||||||||
| F735 | LD E,A | |||||||||||||||||||
| F736 | IN A,(C) | Read from the keyboard;
|
||||||||||||||||||
| F738 | OR %11111011 | Isolate bit 2 from this read. | ||||||||||||||||||
| F73A | RLCA | Shift into position and merge with the accumulated result. | ||||||||||||||||||
| F73B | AND E | |||||||||||||||||||
| F73C | RET | Return to Read_Control_Input_Return. | ||||||||||||||||||
| Prev: F704 | Up: Map | Next: F73D |