X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?p=pintos-anon;a=blobdiff_plain;f=specs%2Fkbd%2Fscancodes-5.html;fp=specs%2Fkbd%2Fscancodes-5.html;h=ed71bbc8df3f21d1399ad71ddbc7d0ecbd76bc64;hp=0000000000000000000000000000000000000000;hb=8af06d1fd50343e17229618ef4d2693193b2b3d9;hpb=d0d14ca50fbac167253e1e1d8d806bfd749a5e8a diff --git a/specs/kbd/scancodes-5.html b/specs/kbd/scancodes-5.html new file mode 100644 index 0000000..ed71bbc --- /dev/null +++ b/specs/kbd/scancodes-5.html @@ -0,0 +1,1411 @@ + + + + + Keyboard scancodes: Special keyboards - MF II keyboards + + + + + +Next +Previous +Contents +
+

5. Special keyboards - MF II keyboards

+ +

Next the modern keyboards. (MF stands for MultiFunctional.) +The layout has changed: the function keys now form a top row. +Function keys F11 and F12 were added. The ten keypad digit keys +that served dual purposes (depending on NumLock and Shift) +were duplicated so that digits and cursor movements could be +produced without help from the Shift or Numlock keys. +Also the Alt and Ctrl keys were duplicated. +Prefixes e0 and e1 were introduced +to distinguish old and new versions of the same old key. +All modern keyboards follow this scheme, but many add a messy +collection of "internet buttons" and "CD keys". +

Let us group keyboards according to manufacturer. +

+

5.1 Compaq keyboards +

+ +

+

+

Compaq Armada laptop keyboard

+ +

Christian Gennerat <christian.gennerat@vz.cit.alcatel.fr> writes: +There are 4 extra keys on the Compaq Armada laptops. +The four keys are located over the Esc-F1..F12, and are labelled *1-*4. +Scancodes: 65, 67, 69, 6b. +

+

Compaq Easy Accesss Internet Keyboard

+ +

Petr Slansky <slansky@usa.net> writes: +

Internet buttons: +e0 13 online community button (people icon), +e0 14 online Compaq button (Q icon), +e0 15 online services button (bulb icon), +e0 1e online e-mail button (envelope icon), +e0 21 online Search button (magnifier icon), +e0 23 online start button (i icon), +e0 32 online commerce button (shopping basket icon), +

e0 68 Quick Print button (printer icon), +e0 1f Favorite Application Launch button (racket icon), +

e0 5f Sleep button, +

CD/DVD player buttons: +e0 22 Play/Pause, +e0 24 Stop, +e0 19 Next Track, +e0 10 Previous Track, +e0 2c Eject, +

Volume Control buttons: +e0 30 Volume increase (+), +e0 2e Volume decrease (-), +e0 20 Mute. +

+

+ + +
+

+

Compaq Eight-Button Easy Access Keyboard

+ +

A +Compaq keyboard that I have here, +has the usual setup (with Windows keys) plus a top row of eight buttons, +that produce scancodes +e0 23, +e0 1f, +e0 1a, +e0 1e, +e0 13, +e0 14, +e0 15, +e0 1b. +These keys do not produce any codes in scan code Set 3. +

+

+ + +
+

+

5.2 IBM keyboards +

+ +

+

IBM Rapid Access keyboard

+ +

+ +(Information from Dennis Bjorklund <dennisb@cs.chalmers.se> +and others.) +

The IBM Rapid Access keyboard has 14 extra buttons and two more leds +than a normal PC keyboard. By default, these buttons do not generate +any scancodes. To activate them one has to send the sequence +ea 71 to the keyboard. +Once that is done the extra keys generate normal e0xx sequences. +To turn off the extra keys you send ea 70. +

These 14 keys send the following scancodes (when activated): +

e0 25 (Suspend), +e0 26 (Help), +e0 32 (Prg 1), +e0 17 (Prg 2), +e0 30 (Prg 3), +e0 2e (Prg 4), +e0 19 (Play CD), +e0 24 (CD Stop), +e0 22 (CD Pause), +e0 1e (Vol -), +e0 20 (Vol +), +e0 23 (Prev song), +e0 21 (Next song), +e0 12 (Mute). +

+

The Suspend and Mute buttons have extra LEDs on them. +Sending the sequence + +eb 00 ff +to the keyboard makes all five LEDs lit up for a moment. +The sequence eb 00 04 lights the Suspend LED +(behind a waning moon). +The sequence eb 00 20 makes the Mute LED blink. +The sequence eb 00 80 locks the keyboard; +if the Mute LED was blinking it now is lit permanently. +Sending eb 00 ff unlocks the keyboard again. +

The command ec returns 0c 01 (untranslated) +which becomes 3e 43 in translated scancode Set 2. +(Possibly an ID?) +

+

+ +Dennis Bjorklund writes: +Here is the hack I use to send commands to the keyboard. After you have +compiled it you can do things like send_to_keyboard ea 71, +but don't run two of these at the exact same moment, and don't send +strange codes because the keyboard might lock up. +

My computer runs this at every startup. After that the extra buttons on +the rapid access work just fine in XFree86. +

+
+/* gcc -O2 -s -Wall -osend_to_keyboard main.c */
+#include <stdlib.h>
+#include <unistd.h>
+#include <sys/io.h>
+
+int main(int argc, char *argv[]) {
+  int i;
+
+  ioperm(0x60, 3, 1);
+
+  for (i = 1; i < argc; i++) {
+    int x = strtol(argv[i], 0, 16);
+
+    usleep(300);
+    outb(x, 0x60);
+  }
+
+  return 0;
+}
+
+
+

+

+ + +
+

+

IBM Rapid Access II keyboard

+ +

+

This keyboard has a top row of seven color-coded buttons. +On the upper right a "wheel" composite button with six parts. +Below it a blue button ("mute"). +Finally, the usual block with four arrow keys has been enlarged +by two more keys ("page left" and "page right"). +

Keys: +

e0 25 (Green, "Internet"), +e0 26 (Blue, "Internet shopping"), +e0 32 (Yellow, "IBM Web support"), +e0 17 (Purple), +e0 30 (Red), +e0 2e (Cyan, "Help"), +e0 5f (White, "Standby" - has a LED), +e0 20 (CD stop), +e0 22 (CD play), +e0 21 (Volume D), +e0 23 (Volume U), +e0 24 (CD back), +e0 12 (CD fwd), +e0 1e (Mute - no LED). +

(In translated scancode Set 3, these become +41, 3f, 3d, 3b, 3c, +66, --, 69, 6a, 6b, +6c, 6d, 44, 68, respectively.) +

The "back" ("page left") and "forward" ("page right") keys +generate ALT+left and ALT+right respectively: +38 e0 4b (release sequence +b8 e0 cb) and +38 e0 4d. +

The commands ea 70 and ea 71 +serve to switch off (resp. on) the special keys. +(These are on by default, but can be switched off.) +However, the white Standby key is always on. +

The white Standby button has a LED (that is flashed during a reset). +It is set by the command + +eb 71 +and cleared by the command eb 70. +

+

+

+ + +
+

+

IBM ThinkPad

+ +

George Staikos <staikos@0wned.org> writes: +

I have an IBM ThinkPad i1460. It has the IBM EasyLaunch<tm> keys. +These are four multicoloured keys up at the top of the keyboard +for "Home Page", "Search", "Shop", "Mail". They dont' seem to create +any keyboard events at all. The keyboard interrupt doesn't trigger, +showkeys doesn't see them do anything, and in DOS, a simple +sequence of BIOS calls doesn't see them either. +Also, being a laptop, it has an FN key. This key generates 55. +

+

5.3 Logitech keyboards +

+ +

+

Logitech Internet keyboard

+ +

Jonathan DeBoer <deboer@ugrad.cs.ualberta.ca> reports: +This keyboard has 18 unusual keys. +

e0 7a (WWW), +e0 32 (History), +e0 21 (Open URL), +e0 23 (Home), +38 2a 0f 8f (key press) +8f b8 aa (key release) (Send To Back) - +this sequence simulates Alt+Shift+Tab, but contains two Tab releases, +e0 17 (Print), +e0 10 (Back), +e0 22 (Forward), +e0 24 (Stop), +e0 19 (Refresh), +e0 1e (Search), +e0 12 (Find), +e0 26 (Add Favourite), +e0 18 (Open Favourites), +e0 20 (Hot Links), +e0 30 (Scroll Up), +e0 2e (Scroll Down), +e0 25 (Logitech). +

+

Ryan Lortie <desertangel@globalserve.net> writes: +The "Logitech" key is used as a modifier. +In windows, Logitech-Keypad+ increases volume, Logitech-Keypad- decreases. +There is a conjoined dual-button key for "scroll". +You press the top part to scroll up, the bottom to scroll down. +

+

Graham Hay adds: The extra LED is an amber colour, placed above +the www key with a recessed line linking them. Sending eb alone +turns it on. It will flash on/off about once per second after that. +A single ec will turn it off. +

+

+ + +
+ +(enlarge)

+

+

Logitech Cordless Desktop Pro keyboard

+ +

Nick Rusnov <nick@grawk.net> reports: +

The special buttons on a Logitech Cordless Desktop Pro keyboard +produce the following scancodes: +

e0 5f (Moon (sleep)), +e0 32 (Homepage), +e0 6c (Mail), +e0 65 (Search), +e0 66 (runningguuy), +e0 20 (Mute), +e0 2e (VolDown), +e0 30 (VolUp), +e0 22 (Play/Pause), +e0 24 (Stop), +e0 10 (Rewind), +e0 19 (ff), +e0 21 (Logitech). +

+

Logitech Access keyboard

+ +

Denis Kosygin <kosygin@math.princeton.edu> reports: +

In addition to usual 104 keys in the usual PC layout this keyboard +has 11 extra keys. Ten of them produce the following escape scancodes: +e0 5f (User (moon)), +e0 6c (E-mail), +e0 11 (Messenger/SMS), +e0 12 (Webcam), +e0 20 (Mute (crossed speaker)), +e0 30 (VolUp (triangle up with + sign in it)), +e0 2e (VolDown (triangle down with - sign in it)), +e0 6d (Media), +e0 32 (My Home), +e0 65 (Search). +

The eleventh key (with keycap "F lock") is a switch between two sets +of scancodes for function keys F1-F12. When "F lock" is pressed, then +F1-F12 act as function keys and produce usual keyscans for these keys. +When "F lock" is depressed, F1-F12 generate the following keyscans: +

e0 3b (new [F1]), +e0 3c (reply [F2]), +e0 3d (forward [F3]), +e0 3e (send [F4]), +e0 10 (rewind [F5]), +e0 19 (fast forward [F6]), +e0 22 (play/pause [F7]), +e0 24 (stop [F8]), +e0 43 (my com [F9]), +e0 44 (my doc [F10]), +e0 57 (my pic [F11]), +e0 58 (my music [F12]). +

+

+ + +
+

+

+

Logitech Cordless Desktop Optical keyboard

+ +

Stefan reports: +

The special buttons on a Logitech Cordless Desktop Optical keyboard +produce the following scancodes: +

e0 69 (Go), +e0 6a (Back), +e0 5f (Sleep), +e0 66 (Favorites), +e0 24 (SeekBack), +e0 22 (SeekForward), +e0 01 (Media), +e0 1e (VolUp), +e0 25 (VolDown), +e0 26 (Mute), +e0 1f (PlayPause), +e0 17 (Stop), +e0 6c (Email), +e0 65 (Search), +e0 02 (Homepage). +

Some other keys behave differently. +

+

+

5.4 Microsoft keyboards +

+ +

+

Some common scancodes found on some Microsoft keyboards. +

+

+

+e0 05 Messenger or Files e0 07 Redo (on F3 or not) e0 08 Undo (on F2 or not) e0 09 Application Left
+e0 0a Paste e0 0b/8b Scroll Up/Down Normal e0 10 Prev Track, |<< e0 11/91 Scroll Up/Down Fast
+e0 12/92 Scroll Up/Down Faster e0 13 Word e0 14 Excel e0 15 Calendar
+e0 16 Log Off e0 17 Cut e0 18 Copy e0 19 Next Track, >>|
+e0 1e Application Right e0 1f/9f Scroll Up/Down Fastest e0 20 Mute e0 21 Calculator
+e0 22 Play/Pause e0 23 Spell (on F10) e0 24 Stop (cf e0 68) e0 2e Volume -
+e0 30 Volume + e0 32 Web/Home e0 3b Help (on F1) e0 3c My Music or Office Home (on F2)
+e0 3d Task Pane (on F3) e0 3e New (on F4) e0 3f Open (on F5) e0 40 Close (on F6)
+e0 41 Reply (on F7) e0 42 Fwd (on F8) e0 43 Send (on F9) e0 57 Save (on F11)
+e0 58 Print (on F12) e0 5b LeftWindows e0 5c RightWindows e0 5d Application (Menu)
+e0 5e Power e0 5f Sleep e0 63 Wake e0 64 My Pictures
+e0 65 Search e0 66 Favorites e0 67 Refresh e0 68 Stop (cf e0 24)
+e0 69 Forward e0 6a Back e0 6b My Computer e0 6c Mail
+e0 6d Media
+ +
+

+

+

Microsoft Natural keyboard

+ +

This keyboard has three additional keys, with escaped scancodes +e0 5b (LeftWindow), +e0 5c (RightWindow), +e0 5d (Menu). +The untranslated Set 2 scancodes (see +below) +are e0 1f, e0 27 and +e0 2f, respectively. +The USB key codes are usage page 0x07, usage index 227, 231, 101 +(decimal), respectively. +Microsoft +describes +the intended use in detail. Both Windows keys are intended to be +used as modifier keys, like both shift and control and alt keys. +The Menu key may be modified by shift etc. +

+

Microsoft Internet keyboard

+ +

In addition to the three extra keys on the Microsoft Natural keyboard, +this keyboard has ten keys, with escaped scancodes +e0 6a (Back), +e0 69 (Forward), +e0 68 (Stop), +e0 6c (Mail), +e0 65 (Search), +e0 66 (Favorites), +e0 32 (Web/Home), +e0 6b (My Computer), +e0 21 (Calculator), +e0 5f (Sleep). +The untranslated Set 1 codes are as expected (make codes identical to +the above translated Set 2 ones). The translated Set 3 codes are +6a, 69, 68, 6c, 65, +66, 97, 6b, 99, 54, +respectively. +

+

Microsoft Natural keyboard pro

+ +

Marco Melgazzi <marco@techie.com> reports: +The Microsoft Natural keyboard pro has 19 additional keys, +with escaped scancodes +e0 6a (Back), +e0 69 (Forward), +e0 68 (Stop), +e0 67 (Refresh), +e0 65 (Search), +e0 66 (Favorites), +e0 32 (Web/Home), +e0 6c (Mail), +e0 20 (Mute), +e0 2e (Volume -), +e0 30 (Volume +), +e0 22 (Play/Pause), +e0 24 (Stop), +e0 10 (Prev Track), +e0 19 (Next Track), +e0 6d (Media), +e0 6b (My Computer), +e0 21 (Calculator), +e0 5f (Sleep). +(That is, we have the ten extra keys of the Microsoft Internet keyboard, +with the same scancodes, and also Refresh, Mute, Volume -, Volume +, +Play/Pause, Stop, Prev Track, Next Track, Media.) +

+

Microsoft Natural Multimedia Keyboard

+ +

Jeremy Brand <jeremy@nirvani.net> reports: +The Microsoft Natural Multimedia Keyboard has 17 additional keys. +Scancodes are +

? (My Documents), +e0 64 (My Pictures), +e0 3c (My Music), +e0 20 (Mute), +e0 22 (Play/Pause), +e0 24 (Stop), +e0 30 (Volume +), +e0 2e (Volume -), +e0 10 (|<<), +e0 19 (>>|), +e0 6d (Media), +e0 6c (Mail), +e0 32 (Web/Home), +e0 05 (Messenger), +e0 21 (Calculator), +e0 16 (Log Off), +e0 5f (Sleep). +

Moreover, the function keys are dual purpose. +There is a "function lock" key. +By default the function keys are not function keys, they are +"Help", "Undo", etc. You have to press the function lock key +and then the function keys act like the usual function keys. +In the default state the scancodes are +

e0 3b (Help) on F1 key, +e0 08 (Undo) on F2 key, +e0 07 (Redo) on F3 key, +? (New) on F4 key, +? (Open) on F5 key, +? (Close) on F6 key, +? (Replay) on F7 key, +e0 42 (Fwd) on F8 key, +e0 43 (Send) on F9 key, +e0 23 (Spell) on F10 key, +e0 57 (Save) on F11 key, +e0 58 (Print) on F12 key. +

+

+

Microsoft Office keyboard

+ +

Christian Hammond +reports +about the keyboard Scroll Wheel: +The following is my interpretation of the results of +showkey -s. I had read that the wheel has 3 speeds, +normal, fast, and faster. However, my results show 4. +

Scroll Up: Normal e0 0b, +Fast e0 11, +Faster e0 12, +Fastest e0 1f. +

Scroll Down: Normal e0 8b, +Fast e0 91, +Faster e0 92, +Fastest e0 9f. +

Wouter van Wijk <woutervanwijk@netscape.net> reported the scancodes +given below. +

On the left touchpad above the scroll wheel: +e0 6a (Back), +e0 69 (Forward). +On the left touchpad below the scroll wheel: +e0 17 (Cut), +e0 18 (Copy), +e0 0a (Paste), +e0 09 (Application Left), +e0 1e (Application Right), +

Buttons on the top row: +No scancode (F Lock), +e0 13 (Word), +e0 14 (Excel), +e0 32 (Web/Home), +e0 6c (Mail), +e0 15 (Calendar), +e0 05 (Files), +e0 21 (Calculator), +e0 20 (Mute), +e0 2e (Volume -), +e0 30 (Volume +), +e0 16 (Log Off), +e0 5f (Sleep). +This is the expected code for Sleep. However, there do not seem to be +Power and WakeUp keys. +

The twelve function keys can be in two states. In the default state +they produce the (new) codes below. The FLock toggle switches them +back to good old function key state. +e0 3b (Help [F1]), +e0 3c (Office Home [F2]), +e0 3d (Task Pane [F3]), +e0 3e (New [F4]), +e0 3f (Open [F5]), +e0 40 (Close [F6]), +e0 41 (Reply [F7]), +e0 42 (Fwd [F8]), +e0 43 (Send [F9]), +e0 23 (Spell [F10]), +e0 57 (Save [F11]), +e0 58 (Print [F12]). +Note that each of these codes is just the e0 variation +of the ordinary function key code, except for that for Spell [F10]. +When the FLock light is off (default) the e0-version +is activated. +

Above the 5-key block with Insert, Home, Delete, PgUp, PgDown: +e0 08 (Undo), +e0 07 (Redo). +

Above the number pad: +59 (=), +e0 4c (( [PrintScreen]), +e0 64 () [ScrollLock]), +0e (Backspace), +0f (Tab). +These are the usual codes for Backspace and Tab but new codes +for (, ), =. PrintScreen and ScrollLock have the usual codes. +

+

+ + +
+ +See the +Microsoft ad. +

+

5.5 Safeway keyboards +

+ +

+

+

Safeway SW10 keyboard

+ +

The Safeway SW10 keyboard has the usual keys, including the three +Windows keys, and including Power, Sleep, Wake keys +(below Delete, End, PageDown) that do not produce scancodes +unless the Fn key (above Keypad-Minus) is pressed simultaneously. +This Fn key is used together with 11 keys: F1-F7, F11, Power, Sleep, Wake. +Fn-F11 disables the keyboard and another Fn-F11 enables it again. +Fn-F1/F2/F3/F4/F5/F6/F7 sets the repeat rate +(on my keyboard I measured 2.0/4.0/6.7/12/26/32/32 chars/sec respectively). +

+

Safeway SW23 keyboard

+ +

The Safeway SW23 keyboard has 132 keys: the usual 104 keys +(101 plus three Windows keys), five more keys called Turbo +(below Enter, right of RShift), and Power, Sleep, Wake +(below Delete, End, PageDown), and Ez (above Keypad-Minus), +and 23 buttons in two rows above the row of function keys. +By default, the five extra keys do not produce scancodes. +(The Ez is a mode toggle. The Turbo key is used to enable +the Power, Sleep, Wake keys.) +

First row of buttons: three Volume buttons: +e0 58 (Mute), +e0 5a (Vol -), +e0 70 (Vol +), +five CD Player buttons: +e0 59 (Prev), +e0 42 (Play), +e0 69 (Next), +e0 64 (Stop), +e0 71 (Eject), +two Recorder buttons: +e0 40 (Rew/Play), +e0 29 (Rec/Stop). +

Second row of buttons: +e0 23 (Sleep), +e0 7d (Cut), +e0 7e (Copy), +e0 7f (Paste), +e0 20 (Rotate), +e0 43 (Close), +e0 30 (My Doc), +e0 44 (DOS), +e0 79 (Game), +e0 77 (WWW), +e0 6e (Calc), +e0 3e (X'fer), +e0 6a (Menu/?). +

The Ez key does not produce scancodes, but toggles a +M/Mode LED, the fourth next to the Num, Caps, Scroll LEDs. +When that LED is set, the 17 keypad keys give different +scancodes: +e0 3c (N/Lock), +e0 7b (/), +e0 22 (*), +e0 61 (-), +e0 0f (7), +e0 21 (8), +e0 6b (9), +e0 3d (+), +e0 04 (4), +e0 62 (5), +e0 39 (6), +e0 10 (1), +e0 24 (2), +e0 05 (3), +e0 02 (0), +e0 41 (.), +e0 3f (Enter). +

The Turbo key does not produce scancodes, and neither do +Power, Sleep, Wake. However, when Turbo is pressed simultaneously, +the Power, Sleep, Wake keys yield e0 5e, +e0 5f, e0 63 as +they should. +

In untranslated scancode mode 3, the multimedia and power keys +do not yield any code. In untranslated scancode mode 1 they +yield the same code as in untranslated scancode mode 2. +(This is a design bug: untranslated scancode mode 1 should be the same +as translated scancode mode 2 (see +below), +and this is true for the ordinary keys, but fails here for the +"multimedia" keys. For example, the keys End and Keypad-Minus +(in M/Mode) yield the same e0 4f in +untranslated scancode mode 1.) +

Note that some "protocol keycodes" occur here with e0 prefix. +Indeed, we see e1, ee, f1, fe, ff +in the key up sequence for the multimedia keys Keypad-Minus +(e0 e1), Calc (e0 ee), +Eject (e0 f1), Copy (e0 fe), +Paste (e0 ff). +

+

5.6 Internet Wireless Keyboard +

+ +

This keyboard (nameless, made in China) has 9+1+9 buttons, +nine on each side of the Sleep button. +Buttons: +e0 6a (Web Backward), +e0 69 (Web Forward), +e0 68 (Web Stop), +e0 67 (Web Refresh), +e0 65 (Web Search), +e0 66 (Web Favorites), +e0 32 (Web Home), +e0 6c (E-mail), +e0 20 (Mute), +e0 5f (Sleep), +e0 2e (Volume Down), +e0 30 (Volume Up), +e0 22 (Play/Pause), +e0 24 (Stop), +e0 10 (Fast Backward), +e0 19 (Fast Forward), +e0 6d (Media Player), +e0 6b (My Computer), +e0 21 (Calculator). +

This keyboard reports +keyboard ID +ab 83 (translated ab c1). +Scancode sets 1 and 2 are reported as 01 and 02 +(translated c3 and c1). +These translations are bugs, but otherwise all seems to function +as expected, except that this keyboard does not recognize +scancode set 3 and returns fe for an attempt to set Set 3. +Every command ed xx is accepted, but there are no LEDs, +there is only a battery indicator. +

The mouse that accompanies the keyboard shows no reactions. +It may need a special driver. +

+

5.7 Nokia keyboard +

+ +

This 121-key +Nokia keyboard +has ten function keys on the left and twenty-four on +the two top rows. On the right a block with cursor keys +and a block with numeric keys. There are three LEDs. +The keys have brown markings, and sometimes also blue ones. +Where both occur, the blue markings describe the usual PC keytops. +

Roughly speaking, the scancodes are as expected. +The +function keys F1-F10,F11,F12 +have scan codes 3b-44, 57, 58 as usual. +The keys on the upper row, labeled F13-F24, yield the same codes as +shifted F1-F12. E.g., F13 gives 2a 3b on press, +and bb aa on release. +The function keys F4,F11,F13-F19,F21,F24 have front labels +CrSel, AltCr, Red, Pink, Green, Yellow, Blue, Turq, White, +Col, USM. +

The +ten keys on the left +have the following scancodes. +First column of five: +01 (Attn/Esc/NxtTsk), as expected for Esc; +1d 3b (Quit/Reset), as expected for Ctrl F1; +1d 3c (ExSel), as expected for Ctrl F2; +1d 3d (Ident/Print), as expected for Ctrl F3; +1d 3e (Help/EnlW), as expected for Ctrl F4. +For these last four keys (and the ChgSc/WSCtrl below) the code +becomes 3b-3e (and 3f) when left or right +Ctrl is pressed already. +Second column of five: +e1 1d 45 ((Break)/Clear/Pause/Test), and e0 46 +with Ctrl, as expected for Pause/Break; +46 (ScrLock), as expected for ScrLock; +e0 2a e0 37 (PrtSc/SysRq), and e0 37 with +left or right Ctrl or left or right Shift, and 54 +with left or right Alt, as expected for PrtSc; +1d 3f (ChgSc/WSCtrl), as expected for Ctrl F5; +38 e0 49 (Jump), as expected for Alt PgUp. +

On +the right a cursor key +section and a number pad. +The cursor key section has the expected block of six: +e0 52 (Dup/Insert/PA1); +e0 47 (Field Mark/Home/PA2); +e0 49 (PA3/PgUp); +e0 53 (Delete/DelWd); +e0 4f (ErEOF/End/ErInp); +e0 51 (PgDn). +Next four arrow keys: +e0 48 (Up); +e0 4b (Left); +e0 4d (Right); +e0 50 (Down). +And in the middle 1d 40 (Home), with code as expected for Ctrl F6. +

Finally the numeric keypad, with the usual keys that generate the +usual codes, and a single additional key, a Tab, with 0f +like the ordinary tab. +

+

+ + +
+

+

5.8 Focus KeyPro FK-9000 keyboard +

+ +

Raul D. Miller <rockwell@nova.umd.edu> +and Timothy C. Hagman <hagmanti@cps.msu.edu> +report: +

The keyboard is a KeyPro FK-9000. The FCC label says it's made in +Taiwan by Focus Electronic Co, Ltd. It has a built-in calculator. +

This keyboard has twelve additional keys, with scancodes +55 (PF1), +6d (PF11), +6f (PF12), +73 (PF2), +74 (PF9), +77 (PF3), +78 (PF4), +79 (PF5), +7a* (PF6), +7b (PF7), +7c (PF8), +7e* (PF10). +

The break codes equal the make codes ORed with 0x80, as always, +but the Linux kernel eats fa and fe as +protocol bytes. +

The behavior of these keys is different from that of normal keys-- +they generate nothing when pressed; then generate the above scancodes +at the normal repeat time and rate, and then generate (except for the +starred ones) their scancode ORed with 0x80 when released... +

These PF keys are reprogrammable -- and programming occurs as a sequence +of keyboard actions. Therefore, the PF keys duplicate whatever +keyboard actions occurred during their programming. +You hit the "Prog" key, then the PF key you want to program; type the +string you want to store in the key (it's limited to 14 keypresses), +and then hit the PF key again. After that, when you hit the PF key, +it sends the string, and generates its own abnormal scancode upon +release. When the key is held down, it generates the scancode repeatedly, +but does not generate the string stored in it repeatedly. +

When you go to program a key, the scancodes for "PF##-" are sent +to the computer, then the scancodes for each key you hit as you +hit it (the shift, etc. keys are an exception-- they send "s-" +and such :), and then, when you hit the PF## key again to end the +programming, it sends a sequence of (at least) 18 "0e 8e"s -- +Backspaces... +

The program key itself doesn't generate a scancode at any time. +The same applies to the CE and AC/ON keys (part of the calculator). +There is a switch to change between calculator and keyboard mode +which generates no scancodes. +

When the keyboard is in calculator mode, the entire numeric +keypad (and everything else on the right side) generates no +scancodes. +

When the keyboard is not in caluclator mode, the %, MC, MR, M-, +M+, and Square Root keys all generate ff when pressed, +ff to repeat, and ff on release. +

The little unlabeled key between the right Ctrl and right Alt +generates 56 when hit, repeats that, and then d6 +when released, just like a normal key. +

+

+

5.9 BTC keyboard +

+ +

This keyboard has one additional key, with escaped scancode +e0 6f (Macro). (Funny enough it does this +in all modes, each of the three scancode sets, translated or not. +In particular, this Macro key is the only key that generates +two bytes in scancode mode 3.) +

+

5.10 LK411 and LK450 keyboards +

+ +

These keyboards have seven additional keys, with escaped scancodes +e0 0f (LeftCompose), +e0 3d (F13), +e0 3e (F14), +e0 3f (Help), +e0 40 (Do), +e0 41 (F17), +e0 4e (Keypad-minplus). +(LK411 has all seven. LK450 has the last six - the report did not +mention a Compose key.) +There are only two LEDs. The keycaps are unusual. +

In (translated) scancode Set 3 these keys give codes +68, 44, 42, 40, +3e, 65, 70. +In untranslated Set 2, the F17 key gives e0 83. +

An +LK411 keyboard, +with +left +and +right hand side enlarged. +

The keys labeled F18, F19, F20 produce the codes expected for +PrtSc, ScrollLock, Pause. +The keys labelled PF1, PF2, PF3, PF4 produce the codes expected for +NumLock, Keypad-/, Keypad-*, Keypad--. +The Keypad-, key produces the code 4e expected for Keypad-+. +The Right ComposeCharacter key produces the code expected for RCtrl. +The key labelled </> produces the code 29 +expected for `/~. The key labelled with `/~/(Esc) produces +the code expected for Esc. +

+

+ + +
+

+

5.11 An OmniKey keyboard +

+ +

This keyboard has one additional key, with escaped scancode +e0 4c (Omni). +

For the Northgate OmniKey 101 keyboard it is said that the command +e8 reads a 2-byte ID. +

+

5.12 GRiD 2260 keyboard +

+ +

The GRiD 2260 notebook has a key producing the +6c scancode; I do not know the keycap. +

+

5.13 An old Olivetti keyboard +

+ +

Kasper Dupont <kasperd@daimi.au.dk> writes: +My 10 year old 102-key keyboard that came with an "Olivetti PCS 286" +actually has connectors for three additional keys just bellow Delete, End, +and PgDn. There is no keys on the connectors, I only found them because I +opened the keyboard for cleaning. The scancodes are from left to right +65, 66, 67. +

+

5.14 Cherry G81-3000 +

+ +

According to +Delorie +the "Cherry G81-3000 SAx/04" keyboard has four additional keys, +which can be made available by a user modification; +the three new keys located directly below the cursor pad's +Delete, End, and PgDn keys send make codes 66-68 (F19-F21); +the fourth new key, labeled (delta), sends make code 73. +

+

5.15 Accord keyboard +

+ +

According to +Delorie +the "Accord" +ergonomic keyboard +with optional touchpad has an additional key above the Grey-Minus key +marked with a left-pointing triangle and labeled "Fn" in the owner's +booklet which sends make code e0 68. +

+

5.16 Trust Ergonomic keyboard +

+ +

Frank v Waveren <fvw@var.cx> reports: +The Trust Ergo Track keyboard has one additional key (`application key'), with +escaped scancode e0 68. The keycap is a triangle pointing left. +

+

5.17 Brazilian keyboards +

+ +

ABNT (Associação Brasileira de Normas Tecnicas) and ABNT2 +are Brazilian keyboard layout standards. The plain Brazilian +keyboard has 103 keys. +

The Brazilian ABNT keyboard has two unusual keys, +with scancodes 73 (/?) and 7e (Keypad-.). +The former is located to the left of the RShift (which +key therefore is less wide than usually), the latter below +the Keypad-Plus (reducing the Keypad-Plus to single height). +

Under Linux, the corresponding key codes are 89 and 121, respectively. +These keys do not function with Windows NT 4.0. +

Antonio Dias <accdias@sst.com.br> provided the +keypad layout +and writes: Brazilian ABNT2 keyboards come with two layouts. +In MSDOS they call them ID 274 and ID 275. +

+

5.18 RC930 keyboard +

+ +

Torben Fjerdingstad <tfj@olivia.ping.dk> reports: +

It's an rc930 keyboard, from Regnecentralen/RC International, Now ICL. +This keyboard has four additional keys, with scancodes +59 (A1), +5a (A2), +5b (A3), +5c (A4). +

The rc930/rc931 keyboards are not made anymore, because they had a +problem with fast typists, writing over 400 chars/minute. +Writing 'af<space>', very, very fast, did a PgUp. +

+

5.19 Tandberg Data keyboard +

+ +

Kjetil Torgrim Homme <kjetilho@ifi.uio.no> reports: +

My Tandberg Data keyboard uses the prefix 80 for +its numerous (20) extra keys. The 80 scancodes are: +

11, 12, 13, 14, 16, +17, 18, 19, 1e, 1f, +20, 21, 22, 23, 25, +26, 2f, 30, 32, 56. +

For completeness, the e0 scancodes: +

1c, 2a, 35, 37, 47, +48, 49, 4b, 4d, 4f, +50, 51, 52, 53. +

The e1 scancode: 1d. +As you can see, there is no overlap on this keyboard. +

Harald Arnesen <gurre@start.no> gives the keycaps +for these for the Tandberg TDV5020 keyboard. +All use prefix 80 on both press and release. +

Thirteen keys have (Norwegian) text: +11 HJELP (help), 14 STRYK (cut), +16 KOPI (copy), 17 FLYTT (move), +19 JUST (justify), 21 MERK (mark), +22 ANGRE (undo), 23 SKRIV (print), +25 SLUTT (exit), 26 FELT (field), +2f AVSN (paragraph), 30 SETN (sentence), +and 32 ORD (word). +

Seven keys have symbols: 12 /\/\/\ (insert soft hyphen), +13 [Crossed down-arrow] (move down five lines), +18 >> << (justify left/right), +1e <> >< (justify full/center), +1f |<- (backtab), +20 ->| (tab), and +56 [Back/down arrow] (start new paragraph). +

Other keycaps also occur. Those given above were meant +for use with the Notis WP word processor. +

+

5.20 Host Connected keyboard +

+ +

IBM makes the "Host Connected Keyboard" for PS/2 machines used as +3270 emulators. +Delorie +reports on the 122-key "Host Connected" keyboard. +It may have 5b (F13), 5c (F14), 5d (F15), +63 (F16), 64 (F17), 65 (F18), +66 (F19), 67 (F20), 68 (F21), +69 (F22), 6a (F23), 6b (F24). +

+

5.21 A nameless USB keyboard +

+ +

This keyboard has four additional keys: Power (rose), Sleep (blue), +WakeUp (green) and FN (yellow). +In legacy mode these keys give the expected keycodes +(e0 5e, e0 5f, e0 63, +and none, respectively), but the interaction is funny. +The four keys act as radiobuttons. Pressing one yields its key down code, +but releasing it does not produce any scancodes. Now pressing another +yields the down code for the other followed by the up code for the +previous one. The FN key follows this pattern, only its scancode sequence +is empty. Thus, pressing it causes the release code for a previous key +to be emitted. Pressing a key a second time gives no reaction: the radiobutton +was down already. +

+

5.22 Omnibook keyboard +

+ +

+ +The HP Omnibook XE3 laptop has special multimedia keys (aka OneTouch buttons) +disabled by default. It is enabled by writing 0x59 to port 0x64 +and then 0x90 to port 0x60 (as was found by Pavel Mihaylov). +Various kernel patches can be found on the net. See, for example, +this one. +

Keys (on a GF model): +

e0 32 (WWW), +e0 6c (Mail), +e0 74 (Demo), +e0 73 (Help), +e0 10 (Previous Track), +e0 22 (Play / Pause), +e0 24 (Stop / Eject), +e0 19 (Next Track), +e0 2e (Volume Down), +e0 30 (Volume Up), +e0 20 (Mute / Unmute). +

+

+

+

5.23 EZ Button keyboard +

+ +

Eric Schott <eric@morningjoy.com> writes: +

I have an IBM EZ Button keyboard (US layout), which seems to +generate codes that are similar - but not identical - to the +Rapid Access keycodes listed above. +

There are 14 additional keys: +

e0 25 ("Power" moon - has an LED), +e0 26 ("Help"), +e0 32 ("Internet"), +e0 17 ("Lotus Word Pro"), +e0 30 ("Lotus Organizer"), +e0 2e ("Aptiva Installer"), +e0 19 ("Delete Message"), +e0 24 (Stop), +e0 22 (Pause), +e0 1e ("Msg" - has an LED), +e0 20 ("CD" - has an LED), +e0 23 (Rewind), +e0 21 (Fast Forward), and +e0 12 ("Talk" - has an LED). +

+

The LEDs in the buttons are controlled by the sequence + +eb 00 xx +where the xx controls the LEDs. Bit 0 controls the "Msg" LED, +1 the CD LED, 2 the Power LED, 4 the Talk LED, and 5 the Message +Waiting LED. +

+

+

5.24 Chicony KBP-8993 keyboard +

+ +

Matthijs Melchior <mmelchio@xs4all.nl> reports: +

The Chicony KBP-8993 keyboard is similar. It has 14 additional +keys, enabled by sending ea 71 and disabled +by sending ea 70. +

These keys generate the following scan codes: +

e0 25 (Moon), +e0 32 (WWW), +e0 30 (DOS), +e0 17 (MyDoc), +e0 26 (Menu), +e0 1e (zzZ), +e0 2e (Close), +e0 24 (Stop), +e0 23 (Back), +e0 22 (Play), +e0 21 (Forward), +e0 20 (Mute), +e0 12 (VolDown), +e0 19 (VolUp). +

The two extra LEDs, above the Moon key, and next to the zzZ key +are manipulated by sending: + +eb 00 0x, +where bit 0 is the Moon LED and bit 1 is the zzZ LED. +

+

5.25 Keyboards for HP Kayak and Vectra +

+ +

Fons Rademakers <Fons.Rademakers@cern.ch> writes: +

The electronics for this keyboard was first developed by HP's +Home Products Division (HPD). +They now make improved versions, which I don't know much about. +We (HP Corporate PC Divisions, in Grenoble) reused the electronics, +and changed the serigraphy printed on the keys. +

+

+
+MsgTTlWWW ? Lck MsgPhnWWWxxxSlp 133134135136137
+PhnS3 S4 S5 i <<>||[] >> HP 138139140141142
+ Mut Mut 143
+ Vl+ Vl+ 144
+ VL- VL- 145
+ +
Grenoble keyboard ------- Old HPD keyboard -------- key numbers
+

+

+

+ Key# Scancode Gren. Name HPD name ASCII
+
+ 133 e0 1e Message/SC1 Message a
+ 134 e0 12 Top Tools Phone e
+ 135 e0 32 Web Browser Internet m
+ 136 e0 17 Reminder Shortcut i
+ 137 e0 25 Lock Suspend k
+ 138 e0 23 Phone/SC2 << h
+ 139 e0 22 ShortCut 3 >|| g
+ 140 e0 24 ShortCut 4 [] j
+ 141 e0 21 ShortCut 5 >> f
+ 142 e0 26 Information Information l
+ 143 e0 20 Mute Mute d
+ 144 e0 30 Volume + Volume + b
+ 145 e0 2e Volume - Volume - c
+ +
+

Note the scancodes above are those read by x86 software in port 0x60. +This is also called Scancode Set 1. +Break codes are the same, with bit 7 of the second scancode set. +Example: e0 9e for the Message key. +

+

<spikboll@gmx.net> adds: +These keyboards have a "mail LED" (it's positioned above the Message +button) that kan be controlled by the Rapid Access hack: +'send_to_keyboard eb' makes the led blink and +'send_to_keyboard ec' turns the led off. +'send_to_keyboard ed' makes the led light steadily +and locks up the keys. +

+

5.26 A keyboard +

+ +

Jon Masters <jonathan@easypenguin.co.uk> writes: +

My new 121 key keyboard has 105 keys + 16 multimedia keys +(including cool stuff like a volume jog dial that sends one scancode +when turned one way and anther when turned the opposite way). +

e0 5e (Power Off), +e0 5f (Sleep), +e0 63 (Resume), +e0 2e (Help), +e0 20 (My Favourite), +e0 30 (Browser), +e0 32 (WWW Search), +e0 26 (Shortcut), +e0 25 (Volume Down), +e0 1e (Volume Up), +e0 12 (Mute), +e0 22 (Previous), +e0 10 (Stop), +e0 24 (Next), +e0 21 (Eject), +e0 19 (Play). +

+

5.27 Yahoo! keyboard +

+ +

Bernhard Polzin <B.Polzin@web.de> writes: +

I have a transparent violet colored "Yahoo!" Keyboard with extra keys +for Internet and Audio. Unusual scancodes (untranslated/translated): +

e0 37 / e0 5e (Power), +e0 3f / e0 5f (Sleep), +e0 5e / e0 63 (Wake), +e0 21 / e0 2e (Y!), +e0 4b / e0 26 (Short Cut), +e0 3a / e0 32 (E-Mail), +e0 23 / e0 20 (My Doc), +e0 32 / e0 30 (WWW), +e0 1c / e0 1e (Volume +), +e0 42 / e0 25 (Volume -), +e0 24 / e0 12 (Mute), +e0 15 / e0 10 (Stop), +e0 4e / e0 0c (Play/Pause), +e0 34 / e0 22 (Prev Track), +e0 3d / e0 08 (Next Track), +e0 4d / e0 19 (Eject). +(Volume +), (Volume -), (Prev Track) and (Next Track) are typematic. +

Note that this is very similar to the previous one. +

+

+ + +
+

+

5.28 Honeywell Multimedia Keyboard +

+ +

Eric Yeo reports that his Honeywell Multimedia Keyboard has the following +additional keys: +e0 25 (Screen saver), +e0 24 (Mail), +e0 32 (WWW), +e0 10 (Game), +e0 26 (Calc), +e0 1e (Shortcut 1), +e0 18 (Shortcut 2), +e0 12 (Prev), +e0 22 (Next), +e0 19 (Play), +e0 23 (Stop), +e0 30 (Vol up), +e0 2e (Vol down), +e0 17 (Eject), +e0 20 (Mute). +

+

5.29 Samsung Ergonomics Keyboard +

+ +

Miguel Costa reports that his +Samsung Ergonomics Keyboard has the following additional keys: +e0 2e (Vol down), +e0 30 (Vol up), +e0 20 (Mute), +e0 18 (Eject), +e0 22 (PlayPause), +e0 24 (Stop), +e0 10 (Rewind), +e0 19 (Forward), +e0 26 (Help), +e0 59 (Favorites), +e0 09 (Exit), +e0 0a (Address book), +e0 02 (Action 1), +e0 03 (Action 2), +e0 04 (Action 3), +e0 05 (Action 4), +e0 06 (Action 5), +e0 32 (Internet), +e0 6c (Email), +e0 5f (Standby), +e0 5b (Windows left), +e0 5c (Windows right), +e0 5d (Windows task). +

+

+ + +
+

+

5.30 The "LiteOn MediaTouch Keyboard" type SK-2500 +

+ +

Serge van den Boom reports that his LiteOn MediaTouch Keyboard +(a Trust "Direct Access Keyboard"), has 18 additional keys: +e0 25 (Suspend), +e0 7a (Coffee), +e0 32 (WWW), +e0 21 (Calculator), +e0 23 (Xfer), +38 2a 0f 8f / 8f b8 +aa (Switch window), +e0 17 (Close), +e0 10 (|<<), +e0 22 (>| / []), +e0 24 ([]), +e0 19 (>>|), +e0 1e (Record), +e0 12 (Rewind), +e0 26 (Menu/?), +e0 18 (Eject), +e0 20 (Mute), +e0 30 (Volume +), +e0 2e (Volume -). +Of these, the keys (|<<), (>>|), (Volume +), (Volume -) repeat. +The others do not, except for the rather special (Switch window) +key. Upon press it produces the LAlt-down, LShift-down, Tab-down, +Tab-up sequence; it repeats 0f, that is, Tab-down; +and upon release it produces the Tab-up, LAlt-up, LShift-up sequence. +

+

+ + +
+

+

+

5.31 The Acer Aspire 1310LC laptop +

+ +

Pau Aliagas reports that his Acer Aspire 1310LC laptop has 4 +additional keys: +e0 6c (Mail), +e0 32 (WWW), +e0 74 (P1), +e0 73 (P2). +

+

+

5.32 The Emachines eKB-5190(A) keyboard +

+ +

This keyboard has 18 additional keys, with translated Set 2 scancodes: +e0 1e (Banking), +e0 25 (Brokerage), +e0 26 (Pay Bills), +e0 24 (News), +e0 21 (Sports), +e0 22 (Travel), +e0 32 (Shopping), +e0 23 (Tickets), +e0 31 (Music), +e0 18 (Health), +e0 30 (Greetings), +e0 1f (Games), +e0 13 (Auctions), +e0 2e (MySite), +e0 20 (Telephone), +e0 12 (Surf), +e0 19 (Search), +e0 10 (Vol -), +e0 17 (Vol +). +The respective untranslated Set 3 codes are +95, 9d, 9c, 94, 99, +93, 97, 9a, 9e, 9f, +91, a3, a2, 92, 9b, +96, a0, a1, 98 (equal to the +translated Set 3 codes). +

Unusual commands are e4 0b, which returns +bc 1c (untranslated 06 f0 5a), +and e4 0c, which returns +ff (untranslated 00), +and ec 0c, which returns 06 regardless of +translation. I do not know the meaning or function of these. +

+

5.33 Keyboards with many keys +

+ +

The current mechanism is unable to handle keyboards with more than +127 keys. But such keyboards seem to exist. Indeed, I now have a +Safeway SW23 that has 132 keys. +

Mark Hatle <fray@kernel.crashing.org> wrote: +

On some ADB keyboards there are actually 128 distinct keys. +They use scancodes 0-127. +

ADB is Apple Desktop Bus. The way that ADB works is similar to SCSI but +on a much slower level. Specifically there is a communications chip in +the computer, ADB controller, and the same chip in the keyboard. The +keyboard sends the scancode to its internal ADB controller, the internal +ADB controller then does any key mapping needed (not used under linux +from my understanding) and passes the data to the computer. +

The ADB controller is capable of sending 256 distinct keys, but to my +knowledge only 128 are sent. The key 0 is the 'a' and key 127 is the +"power button". +

Also some of the Apple ADB keyboards have special "sound" and "function" +keys. These keys (used in MacOS for volume up and down, screen contrast +changing, etc) also show up on the ADB scancodes. +

ADB is used for both m68k and PPC Linux. The m68k Macintosh port, and +the PPC - Power Macintosh and CHRP ports. +

and later: +

Basically the scancode sequences for ADB are 16 bit. so there can actually +be 65536 scancodes, currently though only 128 are defined. +

+

5.34 A keyboard treating PrtSc/SysRq like Pause/Break +

+ +

+ +Mike A. Harris <mharris@meteng.on.ca> +reports a keyboard (an "Mtek" keyboard, model "K208") +where PrtSc/SysRq behaves like Pause/Break and also sends both make +and break sequences when pressed and nothing when released. +It does not repeat. +(Thus, he gets e0 2a e0 37 +e0 b7 e0 aa for PrtSc press, +and 54 d4 for SysRq (i.e., Alt+PrtSc).) +Others have reported the same (for an unspecified type of keyboard). +

+


+Next +Previous +Contents + +