![]() |
Routines |
| Prev: F0DF | Up: Map | Next: F0FB |
|
The author's IN31: 31 ($1F) is the Kempston interface's port. Nothing is read unless bit 3 of OPTIONS is set, which 9 turns on and off (MAIN_LOOP): on a Spectrum without the interface the port gives whatever the bus holds, which would read as the stick being moved. The port is read three times and the reads ORed together; why three is not known. Each XOR A puts 0 in the high half of the port's address.
Release 1's routine is XOR A and RET before the same reads: its joystick is switched off, and Release 2's switch and the 9-JOY on the title are the change (see the notes' versions.md).
|
||||||||||
| IN31 | F0E6 | XOR A | Not in use: nothing | |||||||
| F0E7 | BIT 3,(IY+OPTIONS-V) | |||||||||
| F0EB | RET Z | |||||||||
| F0EC | IN A,($1F) | Three reads, ORed | ||||||||
| F0EE | LD B,A | |||||||||
| F0EF | XOR A | |||||||||
| F0F0 | IN A,($1F) | |||||||||
| F0F2 | OR B | |||||||||
| F0F3 | LD B,A | |||||||||
| F0F4 | XOR A | |||||||||
| F0F5 | IN A,($1F) | |||||||||
| F0F7 | OR B | |||||||||
| F0F8 | AND $1F | The five bits | ||||||||
| F0FA | RET | |||||||||
| Prev: F0DF | Up: Map | Next: F0FB |