Prev: F73D Up: Map Next: F76F
F752: Read Control Cursor
Cursor keyboard control: reads the Q (up), A (down), O (left) and P (right) keys from ports FBFE FDFE and DFFE combining the four direction bits into the control byte.
Read_Control_Cursor F752 LD BC,$FDFE Read from the keyboard;
Port Number Bit
0 1 2 3 4
FD A S D F G
F755 IN A,(C)
F757 OR %11111110 Isolate bit 0 from the first row.
F759 RLCA Shift the bit into position.
F75A LD E,A Save the partial result.
F75B LD B,$FB Switch to keyboard port FBFE.
F75D IN A,(C) Read keyboard port FBFE.
F75F OR %11111110 Isolate bit 0 from the second row.
F761 AND E Merge with the first row result.
F762 RLCA Shift and save the combined result.
F763 LD E,A
F764 LD B,$DF Switch to keyboard port DFFE.
F766 IN A,(C) Read keyboard port DFFE.
F768 OR %11111100 Isolate bits 0 and 1 from the third row.
F76A RLCA Shift the bits into position.
F76B RLCA
F76C RLCA
F76D AND E Merge with the accumulated result.
F76E RET Return to Read_Control_Input_Return.
Prev: F73D Up: Map Next: F76F