From ard@siva.bris.ac.uk Mon Mar 21 10:40:32 1994
Received: from siva.bris.ac.uk by nfs1.digex.net with SMTP id AA11438
  (5.67a8/IDA-1.5 for <rdd@access.digex.net>); Mon, 21 Mar 1994 10:40:04 -0500
Received: by siva.bris.ac.uk (MX V3.3 VAX) id 3182; Mon, 21 Mar 1994 15:36:46
          GMT
Date: Mon, 21 Mar 1994 15:36:23 GMT
From: "PDP11 Hacker ....." <ard@siva.bris.ac.uk>
To: rdd@access.digex.net
Message-Id: <0097BC58.83C931B6.3182@siva.bris.ac.uk>
Subject: ftp site : keyboard codes
Status: O

The PERQ keyboard interface is 300 baud, 8 bit, No parity, 1 stop at TTL
levels. The idle state is high. You should be able to buffer a 300 baud RS232
device with, say, a 1489, and feed it straight in. Here are the codes sent by
the keyboard for each key.
Note that many keys send the 1's complement of the ascii code. This is _not_
the same as inverting the data output from the keyboard, because the start and
stop bits are conventionally sent. Often the control key clears the top bit of
the keycode, but not always.


 Key    Nrm Shf Ctr S+C

Setup   F4  F4  F9  F9
Help    F8  F8  78  78
Uparrow 7F  7F  E3  E3
Dnarrow 7E  7E  E2  E2
Left    7D  7D  E1  E1
Right   7C  7C  E0  E0
Oops    EA  EA  6A  6A
Esc     E4  E4  64  64
1       CE  DE  4E  5E 
2       CD  BF  4D  3F
3       CC  DC  4C  5C
4       CB  DB  4B  5B
5       CA  DA  4A  5A
6       C9  A1  49  21
7       C8  D9  48  59
8       C7  D5  47  55
9       C6  D7  46  57
0       CF  D6  4F  56
-       D2  A0  52  20
=       C2  D4  42  54
`       9F  81  1F  01
BackSp  F7  F7  77  77
Break   7F  7E  7D  7C
Tab     F6  F6  76  76
Q       8E  AE  0E  2E
W       88  A8  08  28
E       9A  BA  1A  3A
R       8D  AD  0D  2D
T       8B  AB  0B  2B
Y       86  A6  06  26
U       8A  AA  0A  2A
I       96  B6  16  36
O       90  B0  10  30
P       8F  AF  0F  2F
[       A4  84  24  04
]       A2  82  22  02
Del     80  80  00  00
A       9E  BE  1E  3E
S       8C  AC  0C  2C
D       9B  BB  1B  3B
F       99  B9  19  39
G       98  B8  18  38
H       97  B7  17  37
J       95  B5  15  35
K       94  B4  14  34
L       93  B3  13  33
;       C4  C5  44  45
'       D8  DD  58  5D
Return  F2  F2  72  72
\       A3  83  23  03
Z       85  A5  05  25
X       87  A7  07  27
C       9C  BC  1C  3C
V       89  A9  09  29
B       9D  BD  1D  3D
N       91  B1  11  31
M       92  B2  12  32
,       D3  C3  53  43
.       D1  C1  51  41
/       D0  C0  50  40
Linefd  F5  F5  75  75
NoScrl  F3  F3  F1  F1
Space   DF  DF  DF  DF

Numeric Pad :
PF1     7B  7B  7B  7B
PF2     7A  7A  7A  7A 
PF3     79  79  79  79
PF4     74  74  74  74
0       69  69  69  69 
1       68  68  68  68
2       67  67  67  67
3       66  66  66  66
4       65  65  65  65
5       63  63  63  63
6       62  62  62  62 
7       61  61  61  61
8       60  60  60  60
9       5F  5F  5F  5F
-       6C  6C  6C  6C
.       6B  6B  6B  6B
,       6D  6D  6D  6D
Enter   73  73  73  73


