Difference between revisions of "Keyboard"
From SpecNext official Wiki
(info about multi-row reading possible) |
m |
||
Line 1: | Line 1: | ||
{{Port | {{Port | ||
|Number=$**FE | |Number=$**FE | ||
+ | |NumberDec=254 | ||
+ | |PortMask=%xxxx xxxx ---- ---0 where only one bit in x is 0 | ||
|ShortDesc=Series of specific ports that read keyboard key presses. | |ShortDesc=Series of specific ports that read keyboard key presses. | ||
|Readable=Yes | |Readable=Yes | ||
|Writable=No | |Writable=No | ||
|Subsystem=Input | |Subsystem=Input | ||
− | |||
}} | }} | ||
Reads keys on the keyboard depending on the upper byte of the port number. The five keys are represented by bits 0-4 of the read byte, listed below with bit 4 first down to bit 0. A zero means that the key is pressed. | Reads keys on the keyboard depending on the upper byte of the port number. The five keys are represented by bits 0-4 of the read byte, listed below with bit 4 first down to bit 0. A zero means that the key is pressed. |
Revision as of 13:44, 3 May 2020
Number | $**FE |
---|---|
Decimal | 254 |
Short desc. | Series of specific ports that read keyboard key presses. |
Bit Mask | %xxxx xxxx ---- ---0 where only one bit in x is 0 |
Readable | Yes |
Writable | No |
Subsystem | Input |
Reads keys on the keyboard depending on the upper byte of the port number. The five keys are represented by bits 0-4 of the read byte, listed below with bit 4 first down to bit 0. A zero means that the key is pressed.
The top eight bits of the port address are active low signals that select one or more key rows for reading.
Port upper byte | Keys affected (row of keys) |
---|---|
$7F (bit 7) | B, N, M, Symbol Shift, Space |
$BF (bit 6) | H, J, K, L, Enter |
$DF (bit 5) | Y, U, I, O P |
$EF (bit 4) | 6, 7, 8, 9, 0 |
$F7 (bit 3) | 5, 4, 3, 2, 1 |
$FB (bit 2) | T, R, E, W, Q |
$FD (bit 1) | G, F, D, S, A |
$FE (bit 0) | V, C, X, Z, Caps Shift |