Initial commit of OpenSPARC T2 architecture model.
[OpenSPARC-T2-SAM] / obp / obp / pkg / keyboard / tables / usb / keycodes.fth
CommitLineData
920dae64
AT
1\ ========== Copyright Header Begin ==========================================
2\
3\ Hypervisor Software File: keycodes.fth
4\
5\ Copyright (c) 2006 Sun Microsystems, Inc. All Rights Reserved.
6\
7\ - Do no alter or remove copyright notices
8\
9\ - Redistribution and use of this software in source and binary forms, with
10\ or without modification, are permitted provided that the following
11\ conditions are met:
12\
13\ - Redistribution of source code must retain the above copyright notice,
14\ this list of conditions and the following disclaimer.
15\
16\ - Redistribution in binary form must reproduce the above copyright notice,
17\ this list of conditions and the following disclaimer in the
18\ documentation and/or other materials provided with the distribution.
19\
20\ Neither the name of Sun Microsystems, Inc. or the names of contributors
21\ may be used to endorse or promote products derived from this software
22\ without specific prior written permission.
23\
24\ This software is provided "AS IS," without a warranty of any kind.
25\ ALL EXPRESS OR IMPLIED CONDITIONS, REPRESENTATIONS AND WARRANTIES,
26\ INCLUDING ANY IMPLIED WARRANTY OF MERCHANTABILITY, FITNESS FOR A
27\ PARTICULAR PURPOSE OR NON-INFRINGEMENT, ARE HEREBY EXCLUDED. SUN
28\ MICROSYSTEMS, INC. ("SUN") AND ITS LICENSORS SHALL NOT BE LIABLE FOR
29\ ANY DAMAGES SUFFERED BY LICENSEE AS A RESULT OF USING, MODIFYING OR
30\ DISTRIBUTING THIS SOFTWARE OR ITS DERIVATIVES. IN NO EVENT WILL SUN
31\ OR ITS LICENSORS BE LIABLE FOR ANY LOST REVENUE, PROFIT OR DATA, OR
32\ FOR DIRECT, INDIRECT, SPECIAL, CONSEQUENTIAL, INCIDENTAL OR PUNITIVE
33\ DAMAGES, HOWEVER CAUSED AND REGARDLESS OF THE THEORY OF LIABILITY,
34\ ARISING OUT OF THE USE OF OR INABILITY TO USE THIS SOFTWARE, EVEN IF
35\ SUN HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
36\
37\ You acknowledge that this software is not designed, licensed or
38\ intended for use in the design, construction, operation or maintenance of
39\ any nuclear facility.
40\
41\ ========== Copyright Header End ============================================
42id: @(#)keycodes.fth 1.14 99/07/23
43purpose: Low-level definitions for Sun keyboard driver
44copyright: Copyright 1990-1997 Sun Microsystems, Inc. All Rights Reserved
45
46\ Header file for USB keyboard routines
47\
48\ The USB keyboard differs greatly from the Sun keyboard in that the
49\ USB kbd doesn't send idle, reset or error codes as part of the
50\ keycode stream, nor does it send key "up" codes".
51\
52
53hex
54\ headerless
55external
56
57
58\ Sofware related definitions
59
60\ This defines the format of translation tables.
61\
62\ A translation table is 256 bytes of "entries", each having a position
63\ in the chart which equates to the key number, and each keynumber has
64\ a value assigned to it. Some of these values are printable, some are
65\ "special", e.g. shift, and some just indicate that the key is never
66\ expected to be received (holes), or if it is seen then we're to do
67\ nothing with it (oops). The entries are decoded by keyboard.c.
68\
69\ USB key numbers are assigned as follows (per the 1.0 Draft #4 of the
70\ USB HID document);
71\ 0 : Reserved (no event indicated)
72\ 1 : Kbd Error RollOver
73\ 2 : Kbd POST Failure
74\ 3 : Kbd Error Undefined
75\ 4-164, 224-231
76\ These values are for keys, some of which will be on our keyboards,
77\ some of which will not be. These keys include all "special" keys,
78\ such as shift, control, F1, mute, power, et cetera.
79\
80\ 165-223, 232-255: Reserved
81
82\ Note that a USB keymap is twice the size of a Sun keymap because the
83\ USB keyboards may return a range of 1-256 for the key numbers.
84
85headerless
86
87 -1 constant nokey
88
89\ LETTERS USING A or a
90h# c0 constant a-grave \ cap A with `
91h# e0 constant grave-a \ lower a with `
92h# c1 constant a-acute \ cap A with '
93h# e1 constant acute-a \ lower a with '
94h# c2 constant a-circm \ cap A with ^
95h# e2 constant circm-a \ lower a with ^
96h# c3 constant a-tilde \ cap A with ~
97h# e3 constant tilde-a \ lower a with ~
98h# c4 constant a-diaer \ cap A with dbl dots
99h# e4 constant diaer-a \ lower a with dbl dots
100h# c5 constant a-angst \ cap A Angstrom
101h# e5 constant angst-a \ lower a Angstrom
102h# c6 constant a-dipth \ cap A combined with E
103h# e6 constant dipth-a \ lower a combined with e
104
105\ LETTERS USING C or c
106h# c7 constant c-dilla \ cap C bottom curly pig-tail
107h# e7 constant dilla-c \ lower c bottom curly pig-tail
108
109\ LETTERS USING D or d
110h# f0 constant th-e \ cap Eth (D with crossed vert bar)
111h# d0 constant e-th \ lower eth (fat d with crossed top)
112
113\ LETTERS USING E or e
114h# c8 constant e-grave \ cap E with `
115h# e8 constant grave-e \ lower e with `
116h# c9 constant e-acute \ cap E with '
117h# e9 constant acute-e \ lower e with '
118h# ca constant e-circm \ cap E with ^
119h# ea constant circm-e \ lower e with ^
120h# cb constant e-diaer \ cap E with dbl dots
121h# eb constant diaer-e \ lower e with dbl dots
122
123\ LETTERS USING I or i
124h# cc constant i-grave \ cap I with `
125h# ec constant grave-i \ lower i with `
126h# cd constant i-acute \ cap I with '
127h# ed constant acute-i \ lower i with '
128h# ce constant i-circm \ cap I with ^
129h# ee constant circm-i \ lower i with ^
130h# ce constant i-diaer \ cap I with dbl dots
131h# ee constant diaer-i \ lower i with dbl dots
132
133\ LETTERS USING N or n
134h# d1 constant n-tilde \ cap N with ~
135h# f1 constant tilde-n \ lower n with ~
136
137\ LETTERS USING O or o
138h# d2 constant o-grave \ cap O with `
139h# f2 constant grave-o \ lower o with `
140h# d3 constant o-acute \ cap O with '
141h# f3 constant acute-o \ lower o with '
142h# d4 constant o-circm \ cap O with ^
143h# f4 constant circm-o \ lower o with ^
144h# d5 constant o-tilde \ cap O with ~
145h# f5 constant tilde-o \ lower o with ~
146h# d6 constant o-diaer \ cap O with dbl dots
147h# f6 constant diaer-o \ lower o with dbl dots
148h# d8 constant o-null \ cap O with / through it
149h# f8 constant null-o \ lower o with / through it
150
151\ LETTERS USING P or p
152h# de constant p-thorn \ droopy lookin' Cap P
153h# fe constant thorn-p \ droopy lookin' lower p
154
155\ LETTERS USING S or s
156h# df constant s-doubl \ German double S
157
158\ LETTERS USING U or u
159h# d9 constant u-grave \ cap U with `
160h# f9 constant grave-u \ lower u with `
161h# da constant u-acute \ cap U with '
162h# fa constant acute-u \ lower u with '
163h# db constant u-circm \ cap U with ^
164h# fb constant circm-u \ lower u with ^
165h# dc constant u-diaer \ cap U with dbl dots
166h# fc constant diaer-u \ lower u with dbl dots
167
168\ LETTERS USING Y or y
169h# ff constant diaer-y \ lower y with dbl dots
170h# dd constant y-acute \ cap Y with '
171h# fd constant acute-y \ lower y with '
172
173\ SYMBOLS
174h# a2 constant cents \ cents symbol
175h# a3 constant p-strlg \ Pounds Sterling symbol
176h# a4 constant currncy \ currency symbol
177h# a5 constant yen \ Yen symbol
178h# a6 constant bk-vbar \ broken vertical bar
179h# aa constant femsup \ raised small a with underbar
180h# ba constant mascsup \ raised small o with underbar
181h# a9 constant copyrgt \ copyright symbol
182h# ae constant regstrd \ registered symbol
183h# af constant macron \ macron symbol (raised dash)
184h# a7 constant section \ section mark symbol (cap S over S)
185h# b6 constant paramrk \ paragraph mark symbol (tall pi)
186h# b5 constant mu \ mu symbol
187h# b0 constant degrees \ degrees symbol
188h# b7 constant cen-dot \ centered dot
189h# b1 constant plusmin \ plus or minus symbol
190h# d7 constant multsym \ multiplication symbol
191h# f7 constant divsym \ division symbol
192h# ac constant notsign \ not sign (raised horiz L - leg dn)
193h# ad constant softhyp \ soft hyphen
194h# b9 constant raised1 \ 1 raised up
195h# b2 constant raised2 \ 2 raised up
196h# b3 constant raised3 \ 3 raised up
197h# bc constant one4th \ 1/4
198h# bd constant onehalf \ 1/2
199h# be constant thre4th \ 3/4
200h# ab constant lftgull \ left guillemot (<<)
201h# bb constant rtguill \ right guillemot (>>)
202h# a1 constant invert! \ Spanish upside-down !
203h# bf constant invert? \ Spanish upside-down ?
204h# a8 constant diaeres \ diaeresis (dbl dots)
205h# b4 constant acuteac \ acute accent (')
206h# b8 constant cedilla \ cedilla - bottom curly tail
207h# a0 constant nonspac \ nonbreaking space
208