Commit 7839ca99 authored by Kevin Bracey's avatar Kevin Bracey
Browse files

An exhaustive list of internal key codes, from the BBC micro to the present day.

parent be609cf5
The following is an exhaustive list of the RISC OS internal keycodes. The codes go
back to the BBC micro, and have remained compatible. Some keys (such as "Keypad ," and
"Shift Lock") no longer exist, so these keycodes are candidates for reassignment. No
such reassignments have yet taken place though.
Internal key codes should reference the physical position of keys, not the
labels. The definitions below are in terms of the standard UK PC layout
labels.
Note that the change in key arrangement from the BBC micro to the Archimedes
resulted in four keys merging with other keys (@, :, ^, _). For example, "@"
was a separate key on the BBC micro, but became Shift+2 on the Archimedes.
This means that the 2 key produces both the "2" code and the "@" code. This
is still true, even though "@" has maved on again. These keys are marked
{compatibility} with the key that produces that code. These codes are
secondary reassignment candidates.
Note that the RISC OS API treats codes 0-15 slightly differently, so be wary
of assigning keys 12-15.
Code Key First used
---------------------------------------------------------------
0 Shift BBC
1 Ctrl BBC
2 Alt Archimedes
3 Left Shift Archimedes
4 Left Ctrl Archimedes
5 Left Alt Archimedes
6 Right Shift Archimedes
7 Right Ctrl Archimedes
8 Right Alt Archimedes
9 Select mouse button Archimedes
10 Menu mouse button Archimedes
11 Adjust mouse button Archimedes
12 <unassigned>
13 <unassigned>
14 <unassigned>
15 <unassigned>
16 Q BBC
17 3 BBC
18 4 BBC
19 5 BBC
20 F4 BBC
21 8 BBC
22 F7 BBC
23 _ {compatibility: -} BBC
24 ^ {compatibility: 6} BBC
25 Left cursor key BBC
26 Keypad 6 Master
27 Keypad 7 Master
28 F11 Archimedes
29 F12 Archimedes
30 F10 Archimedes
31 Scroll Lock Archimedes
32 Print/F0 BBC
33 W BBC
34 E BBC
35 T BBC
36 7 BBC
37 I BBC
38 9 BBC
39 0 BBC
40 - BBC
41 Down cursor key BBC
42 Keypad 8 Master
43 Keypad 9 Master
44 Break Archimedes
45 ` Archimedes
46 Key to left of Backspace () Archimedes
47 Backspace Archimedes
48 1 BBC
49 2 BBC
50 D BBC
51 R BBC
52 6 BBC
53 U BBC
54 O BBC
55 P BBC
56 [ BBC
57 Up cursor key BBC
58 Keypad + Master
59 Keypad - Master
60 Keypad Enter Master
61 Insert Archimedes
62 Home Archimedes
63 Page Up Archimedes
64 Caps Lock BBC
65 A BBC
66 X BBC
67 F BBC
68 Y BBC
69 J BBC
70 K BBC
71 @ {compatibility: 2} BBC
72 : {compatibility: ;} BBC
73 Enter BBC
74 Keypad / Master
75 Keypad Delete Master
76 Keypad . Master
77 Num Lock Archimedes
78 Page Down Archimedes
79 ' Archimedes
80 Shift Lock BBC
81 S BBC
82 C BBC
83 G BBC
84 H BBC
85 N BBC
86 L BBC
87 ; BBC
88 ] BBC
89 Delete BBC
90 Keypad # Master
91 Keypad * Master
92 Keypad , Master
93 = Archimedes
94 \ (Key to right of Left Shift) Archimedes
95 Key to left of Right Shift Japanese NC OS
96 Tab BBC
97 Z BBC
98 Space BBC
99 V BBC
100 B BBC
101 M BBC
102 , BBC
103 . BBC
104 / BBC
105 Copy/End BBC
106 Keypad 0 Master
107 Keypad 1 Master
108 Keypad 3 Master
109 No Conversion (Key to left of Space) Japanese NC OS
110 Convert (Key to right of Space) Japanese NC OS
111 Kana (Key between Convert and Right Alt) Japanese NC OS
112 Escape BBC
113 F1 BBC
114 F2 BBC
115 F3 BBC
116 F5 BBC
117 F6 BBC
118 F8 BBC
119 F9 BBC
120 \ (US) or # (UK) BBC
121 Right cursor key BBC
122 Keypad 4 Master
123 Keypad 5 Master
124 Keypad 2 Master
125 Left Acorn/Windows Ursula
126 Right Acorn/Windows Ursula
127 Menu Ursula
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment