Difference between revisions of "Keyboard"

From SpecNext official Wiki
Jump to: navigation, search
(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
|PortMask=%xxxx xxxx ---- ---0 where only one bit in x is 0
 
 
}}
 
}}
 
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.

Latest 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

File:Speckeys.png