1412 lines
56 KiB
HTML
1412 lines
56 KiB
HTML
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
|
||
<HTML>
|
||
<HEAD>
|
||
<META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.9">
|
||
<TITLE>Keyboard scancodes: Special keyboards - MF II keyboards</TITLE>
|
||
<LINK HREF="scancodes-6.html" REL=next>
|
||
<LINK HREF="scancodes-4.html" REL=previous>
|
||
<LINK HREF="scancodes.html#toc5" REL=contents>
|
||
</HEAD>
|
||
<BODY>
|
||
<A HREF="scancodes-6.html">Next</A>
|
||
<A HREF="scancodes-4.html">Previous</A>
|
||
<A HREF="scancodes.html#toc5">Contents</A>
|
||
<HR>
|
||
<H2><A NAME="s5">5. Special keyboards - MF II keyboards</A></H2>
|
||
|
||
<P><I>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</I> <B>e0</B> <I>and</I> <B>e1</B> <I>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".</I>
|
||
<P>Let us group keyboards according to manufacturer.
|
||
<P>
|
||
<H2><A NAME="ss5.1">5.1 Compaq keyboards</A>
|
||
</H2>
|
||
|
||
<P>
|
||
<P>
|
||
<H3><A NAME="armada"></A> Compaq Armada laptop keyboard</H3>
|
||
|
||
<P>Christian Gennerat <<CODE>christian.gennerat@vz.cit.alcatel.fr</CODE>> 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: <B>65</B>, <B>67</B>, <B>69</B>, <B>6b</B>.
|
||
<P>
|
||
<H3>Compaq Easy Accesss Internet Keyboard</H3>
|
||
|
||
<P>Petr Slansky <<CODE>slansky@usa.net</CODE>> writes:
|
||
<P>Internet buttons:
|
||
<B>e0</B> <B>13</B> online community button (people icon),
|
||
<B>e0</B> <B>14</B> online Compaq button (Q icon),
|
||
<B>e0</B> <B>15</B> online services button (bulb icon),
|
||
<B>e0</B> <B>1e</B> online e-mail button (envelope icon),
|
||
<B>e0</B> <B>21</B> online Search button (magnifier icon),
|
||
<B>e0</B> <B>23</B> online start button (i icon),
|
||
<B>e0</B> <B>32</B> online commerce button (shopping basket icon),
|
||
<P><B>e0</B> <B>68</B> Quick Print button (printer icon),
|
||
<B>e0</B> <B>1f</B> Favorite Application Launch button (racket icon),
|
||
<P><B>e0</B> <B>5f</B> Sleep button,
|
||
<P>CD/DVD player buttons:
|
||
<B>e0</B> <B>22</B> Play/Pause,
|
||
<B>e0</B> <B>24</B> Stop,
|
||
<B>e0</B> <B>19</B> Next Track,
|
||
<B>e0</B> <B>10</B> Previous Track,
|
||
<B>e0</B> <B>2c</B> Eject,
|
||
<P>Volume Control buttons:
|
||
<B>e0</B> <B>30</B> Volume increase (+),
|
||
<B>e0</B> <B>2e</B> Volume decrease (-),
|
||
<B>e0</B> <B>20</B> Mute.
|
||
<P>
|
||
<FIGURE>
|
||
<EPS FILE="absent">
|
||
<IMG SRC="compaq_easy_access.jpg">
|
||
</FIGURE>
|
||
<P>
|
||
<H3>Compaq Eight-Button Easy Access Keyboard</H3>
|
||
|
||
<P>A
|
||
<A HREF="compaq_unkn.jpg">Compaq keyboard</A> that I have here,
|
||
has the usual setup (with Windows keys) plus a top row of eight buttons,
|
||
that produce scancodes
|
||
<B>e0</B> <B>23</B>,
|
||
<B>e0</B> <B>1f</B>,
|
||
<B>e0</B> <B>1a</B>,
|
||
<B>e0</B> <B>1e</B>,
|
||
<B>e0</B> <B>13</B>,
|
||
<B>e0</B> <B>14</B>,
|
||
<B>e0</B> <B>15</B>,
|
||
<B>e0</B> <B>1b</B>.
|
||
These keys do not produce any codes in scan code Set 3.
|
||
<P>
|
||
<FIGURE>
|
||
<EPS FILE="absent">
|
||
<IMG SRC="compaq_unkn-s.jpg">
|
||
</FIGURE>
|
||
<P>
|
||
<H2><A NAME="ss5.2">5.2 IBM keyboards</A>
|
||
</H2>
|
||
|
||
<P>
|
||
<H3>IBM Rapid Access keyboard</H3>
|
||
|
||
<P>
|
||
<A NAME="ibmrapidaccess"></A>
|
||
(Information from Dennis Bjorklund <<CODE>dennisb@cs.chalmers.se</CODE>>
|
||
and others.)
|
||
<P>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
|
||
<B>ea</B> <B>71</B> to the keyboard.
|
||
Once that is done the extra keys generate normal e0xx sequences.
|
||
To turn off the extra keys you send <B>ea</B> <B>70</B>.
|
||
<P>These 14 keys send the following scancodes (when activated):
|
||
<P><B>e0</B> <B>25</B> (Suspend),
|
||
<B>e0</B> <B>26</B> (Help),
|
||
<B>e0</B> <B>32</B> (Prg 1),
|
||
<B>e0</B> <B>17</B> (Prg 2),
|
||
<B>e0</B> <B>30</B> (Prg 3),
|
||
<B>e0</B> <B>2e</B> (Prg 4),
|
||
<B>e0</B> <B>19</B> (Play CD),
|
||
<B>e0</B> <B>24</B> (CD Stop),
|
||
<B>e0</B> <B>22</B> (CD Pause),
|
||
<B>e0</B> <B>1e</B> (Vol -),
|
||
<B>e0</B> <B>20</B> (Vol +),
|
||
<B>e0</B> <B>23</B> (Prev song),
|
||
<B>e0</B> <B>21</B> (Next song),
|
||
<B>e0</B> <B>12</B> (Mute).
|
||
<P>
|
||
<P>The Suspend and Mute buttons have extra LEDs on them.
|
||
Sending the sequence
|
||
<B>
|
||
<A HREF="scancodes-1.html#LEDmanip">eb</A></B> <B>00</B> <B>ff</B>
|
||
to the keyboard makes all five LEDs lit up for a moment.
|
||
The sequence <B>eb</B> <B>00</B> <B>04</B> lights the Suspend LED
|
||
(behind a waning moon).
|
||
The sequence <B>eb</B> <B>00</B> <B>20</B> makes the Mute LED blink.
|
||
The sequence <B>eb</B> <B>00</B> <B>80</B> locks the keyboard;
|
||
if the Mute LED was blinking it now is lit permanently.
|
||
Sending <B>eb</B> <B>00</B> <B>ff</B> unlocks the keyboard again.
|
||
<P>The command <B>ec</B> returns <B>0c</B> <B>01</B> (untranslated)
|
||
which becomes <B>3e</B> <B>43</B> in translated scancode Set 2.
|
||
(Possibly an ID?)
|
||
<P>
|
||
<P>
|
||
<A NAME="rapidinit"></A>
|
||
Dennis Bjorklund writes:
|
||
<I>Here is the hack I use to send commands to the keyboard. After you have
|
||
compiled it you can do things like</I> <CODE>send_to_keyboard ea 71</CODE>,
|
||
<I>but don't run two of these at the exact same moment, and don't send
|
||
strange codes because the keyboard might lock up.</I>
|
||
<P><I>My computer runs this at every startup. After that the extra buttons on
|
||
the rapid access work just fine in XFree86.</I>
|
||
<BLOCKQUOTE><CODE>
|
||
<PRE>
|
||
/* 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;
|
||
}
|
||
</PRE>
|
||
</CODE></BLOCKQUOTE>
|
||
<P>
|
||
<FIGURE>
|
||
<EPS FILE="absent">
|
||
<IMG SRC="ibm_rapid_access.jpg">
|
||
</FIGURE>
|
||
<P>
|
||
<H3><A NAME="ibmrapidaccessii"></A> IBM Rapid Access II keyboard</H3>
|
||
|
||
<P>
|
||
<P>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").
|
||
<P>Keys:
|
||
<P><B>e0</B> <B>25</B> (Green, "Internet"),
|
||
<B>e0</B> <B>26</B> (Blue, "Internet shopping"),
|
||
<B>e0</B> <B>32</B> (Yellow, "IBM Web support"),
|
||
<B>e0</B> <B>17</B> (Purple),
|
||
<B>e0</B> <B>30</B> (Red),
|
||
<B>e0</B> <B>2e</B> (Cyan, "Help"),
|
||
<B>e0</B> <B>5f</B> (White, "Standby" - has a LED),
|
||
<B>e0</B> <B>20</B> (CD stop),
|
||
<B>e0</B> <B>22</B> (CD play),
|
||
<B>e0</B> <B>21</B> (Volume D),
|
||
<B>e0</B> <B>23</B> (Volume U),
|
||
<B>e0</B> <B>24</B> (CD back),
|
||
<B>e0</B> <B>12</B> (CD fwd),
|
||
<B>e0</B> <B>1e</B> (Mute - no LED).
|
||
<P>(In translated scancode Set 3, these become
|
||
<B>41</B>, <B>3f</B>, <B>3d</B>, <B>3b</B>, <B>3c</B>,
|
||
<B>66</B>, <B>--</B>, <B>69</B>, <B>6a</B>, <B>6b</B>,
|
||
<B>6c</B>, <B>6d</B>, <B>44</B>, <B>68</B>, respectively.)
|
||
<P>The "back" ("page left") and "forward" ("page right") keys
|
||
generate ALT+left and ALT+right respectively:
|
||
<B>38</B> <B>e0</B> <B>4b</B> (release sequence
|
||
<B>b8</B> <B>e0</B> <B>cb</B>) and
|
||
<B>38</B> <B>e0</B> <B>4d</B>.
|
||
<P>The commands <B>ea</B> <B>70</B> and <B>ea</B> <B>71</B>
|
||
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.
|
||
<P>The white Standby button has a LED (that is flashed during a reset).
|
||
It is set by the command
|
||
<B>
|
||
<A HREF="scancodes-1.html#LEDmanip">eb</A></B> <B>71</B>
|
||
and cleared by the command <B>eb</B> <B>70</B>.
|
||
<P>
|
||
<P>
|
||
<FIGURE>
|
||
<EPS FILE="absent">
|
||
<IMG SRC="ibm_rapid_access_II.jpg">
|
||
</FIGURE>
|
||
<P>
|
||
<H3>IBM ThinkPad</H3>
|
||
|
||
<P>George Staikos <<CODE>staikos@0wned.org</CODE>> writes:
|
||
<P><I>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,
|
||
<CODE>showkeys</CODE> 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 <B>55</B>.</I>
|
||
<P>
|
||
<H2><A NAME="ss5.3">5.3 Logitech keyboards</A>
|
||
</H2>
|
||
|
||
<P>
|
||
<H3><A NAME="logitechinternet"></A> Logitech Internet keyboard</H3>
|
||
|
||
<P>Jonathan DeBoer <<CODE>deboer@ugrad.cs.ualberta.ca</CODE>> reports:
|
||
This keyboard has 18 unusual keys.
|
||
<P><B>e0</B> <B>7a</B> (WWW),
|
||
<B>e0</B> <B>32</B> (History),
|
||
<B>e0</B> <B>21</B> (Open URL),
|
||
<B>e0</B> <B>23</B> (Home),
|
||
<B>38</B> <B>2a</B> <B>0f</B> <B>8f</B> (key press)
|
||
<B>8f</B> <B>b8</B> <B>aa</B> (key release) (Send To Back) -
|
||
this sequence simulates Alt+Shift+Tab, but contains two Tab releases,
|
||
<B>e0</B> <B>17</B> (Print),
|
||
<B>e0</B> <B>10</B> (Back),
|
||
<B>e0</B> <B>22</B> (Forward),
|
||
<B>e0</B> <B>24</B> (Stop),
|
||
<B>e0</B> <B>19</B> (Refresh),
|
||
<B>e0</B> <B>1e</B> (Search),
|
||
<B>e0</B> <B>12</B> (Find),
|
||
<B>e0</B> <B>26</B> (Add Favourite),
|
||
<B>e0</B> <B>18</B> (Open Favourites),
|
||
<B>e0</B> <B>20</B> (Hot Links),
|
||
<B>e0</B> <B>30</B> (Scroll Up),
|
||
<B>e0</B> <B>2e</B> (Scroll Down),
|
||
<B>e0</B> <B>25</B> (Logitech).
|
||
<P>
|
||
<P>Ryan Lortie <<CODE>desertangel@globalserve.net</CODE>> 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.
|
||
<P>
|
||
<P>Graham Hay adds: The extra LED is an amber colour, placed above
|
||
the www key with a recessed line linking them. Sending <B>eb</B> alone
|
||
turns it on. It will flash on/off about once per second after that.
|
||
A single <B>ec</B> will turn it off.
|
||
<P>
|
||
<FIGURE>
|
||
<EPS FILE="absent">
|
||
<IMG SRC="logitech-internet-s.jpg">
|
||
</FIGURE>
|
||
|
||
<A HREF="logitech-internet.jpg">(enlarge)</A><P>
|
||
<P>
|
||
<H3>Logitech Cordless Desktop Pro keyboard</H3>
|
||
|
||
<P>Nick Rusnov <<CODE>nick@grawk.net</CODE>> reports:
|
||
<P>The special buttons on a Logitech Cordless Desktop Pro keyboard
|
||
produce the following scancodes:
|
||
<P><B>e0</B> <B>5f</B> (Moon (sleep)),
|
||
<B>e0</B> <B>32</B> (Homepage),
|
||
<B>e0</B> <B>6c</B> (Mail),
|
||
<B>e0</B> <B>65</B> (Search),
|
||
<B>e0</B> <B>66</B> (runningguuy),
|
||
<B>e0</B> <B>20</B> (Mute),
|
||
<B>e0</B> <B>2e</B> (VolDown),
|
||
<B>e0</B> <B>30</B> (VolUp),
|
||
<B>e0</B> <B>22</B> (Play/Pause),
|
||
<B>e0</B> <B>24</B> (Stop),
|
||
<B>e0</B> <B>10</B> (Rewind),
|
||
<B>e0</B> <B>19</B> (ff),
|
||
<B>e0</B> <B>21</B> (Logitech).
|
||
<P>
|
||
<H3>Logitech Access keyboard</H3>
|
||
|
||
<P>Denis Kosygin <<CODE>kosygin@math.princeton.edu</CODE>> reports:
|
||
<P>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:
|
||
<B>e0</B> <B>5f</B> (User (moon)),
|
||
<B>e0</B> <B>6c</B> (E-mail),
|
||
<B>e0</B> <B>11</B> (Messenger/SMS),
|
||
<B>e0</B> <B>12</B> (Webcam),
|
||
<B>e0</B> <B>20</B> (Mute (crossed speaker)),
|
||
<B>e0</B> <B>30</B> (VolUp (triangle up with + sign in it)),
|
||
<B>e0</B> <B>2e</B> (VolDown (triangle down with - sign in it)),
|
||
<B>e0</B> <B>6d</B> (Media),
|
||
<B>e0</B> <B>32</B> (My Home),
|
||
<B>e0</B> <B>65</B> (Search).
|
||
<P>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:
|
||
<P><B>e0</B> <B>3b</B> (new [F1]),
|
||
<B>e0</B> <B>3c</B> (reply [F2]),
|
||
<B>e0</B> <B>3d</B> (forward [F3]),
|
||
<B>e0</B> <B>3e</B> (send [F4]),
|
||
<B>e0</B> <B>10</B> (rewind [F5]),
|
||
<B>e0</B> <B>19</B> (fast forward [F6]),
|
||
<B>e0</B> <B>22</B> (play/pause [F7]),
|
||
<B>e0</B> <B>24</B> (stop [F8]),
|
||
<B>e0</B> <B>43</B> (my com [F9]),
|
||
<B>e0</B> <B>44</B> (my doc [F10]),
|
||
<B>e0</B> <B>57</B> (my pic [F11]),
|
||
<B>e0</B> <B>58</B> (my music [F12]).
|
||
<P>
|
||
<FIGURE>
|
||
<EPS FILE="absent">
|
||
<IMG SRC="logitech-access.jpg">
|
||
</FIGURE>
|
||
<P>
|
||
<P>
|
||
<H3>Logitech Cordless Desktop Optical keyboard</H3>
|
||
|
||
<P>Stefan reports:
|
||
<P>The special buttons on a Logitech Cordless Desktop Optical keyboard
|
||
produce the following scancodes:
|
||
<P><B>e0</B> <B>69</B> (Go),
|
||
<B>e0</B> <B>6a</B> (Back),
|
||
<B>e0</B> <B>5f</B> (Sleep),
|
||
<B>e0</B> <B>66</B> (Favorites),
|
||
<B>e0</B> <B>24</B> (SeekBack),
|
||
<B>e0</B> <B>22</B> (SeekForward),
|
||
<B>e0</B> <B>01</B> (Media),
|
||
<B>e0</B> <B>1e</B> (VolUp),
|
||
<B>e0</B> <B>25</B> (VolDown),
|
||
<B>e0</B> <B>26</B> (Mute),
|
||
<B>e0</B> <B>1f</B> (PlayPause),
|
||
<B>e0</B> <B>17</B> (Stop),
|
||
<B>e0</B> <B>6c</B> (Email),
|
||
<B>e0</B> <B>65</B> (Search),
|
||
<B>e0</B> <B>02</B> (Homepage).
|
||
<P>Some other keys behave differently.
|
||
<P>
|
||
<P>
|
||
<H2><A NAME="ss5.4">5.4 Microsoft keyboards</A>
|
||
</H2>
|
||
|
||
<P>
|
||
<P>Some common scancodes found on some Microsoft keyboards.
|
||
<P>
|
||
<P>
|
||
<CENTER><TABLE BORDER><TR><TD>
|
||
<B>e0 05</B> </TD><TD> Messenger or Files </TD><TD></TD><TD><B>e0 07</B> </TD><TD> Redo (on F3 or not) </TD><TD></TD><TD><B>e0 08</B> </TD><TD> Undo (on F2 or not) </TD><TD></TD><TD><B>e0 09</B> </TD><TD> Application Left </TD></TR><TR><TD>
|
||
<B>e0 0a</B> </TD><TD> Paste </TD><TD></TD><TD><B>e0 0b</B>/<B>8b</B> </TD><TD> Scroll Up/Down Normal </TD><TD></TD><TD><B>e0 10</B> </TD><TD> Prev Track, |<< </TD><TD></TD><TD><B>e0 11</B>/<B>91</B> </TD><TD> Scroll Up/Down Fast </TD></TR><TR><TD>
|
||
<B>e0 12</B>/<B>92</B> </TD><TD> Scroll Up/Down Faster </TD><TD></TD><TD><B>e0 13</B> </TD><TD> Word </TD><TD></TD><TD><B>e0 14</B> </TD><TD> Excel </TD><TD></TD><TD><B>e0 15</B> </TD><TD> Calendar </TD></TR><TR><TD>
|
||
<B>e0 16</B> </TD><TD> Log Off </TD><TD></TD><TD><B>e0 17</B> </TD><TD> Cut </TD><TD></TD><TD><B>e0 18</B> </TD><TD> Copy </TD><TD></TD><TD><B>e0 19</B> </TD><TD> Next Track, >>| </TD></TR><TR><TD>
|
||
<B>e0 1e</B> </TD><TD> Application Right </TD><TD></TD><TD><B>e0 1f</B>/<B>9f</B> </TD><TD> Scroll Up/Down Fastest </TD><TD></TD><TD><B>e0 20</B> </TD><TD> Mute </TD><TD></TD><TD><B>e0 21</B> </TD><TD> Calculator </TD></TR><TR><TD>
|
||
<B>e0 22</B> </TD><TD> Play/Pause </TD><TD></TD><TD><B>e0 23</B> </TD><TD> Spell (on F10) </TD><TD></TD><TD><B>e0 24</B> </TD><TD> Stop (cf <B>e0 68</B>) </TD><TD></TD><TD><B>e0 2e</B> </TD><TD> Volume - </TD></TR><TR><TD>
|
||
<B>e0 30</B> </TD><TD> Volume + </TD><TD></TD><TD><B>e0 32</B> </TD><TD> Web/Home </TD><TD></TD><TD><B>e0 3b</B> </TD><TD> Help (on F1) </TD><TD></TD><TD><B>e0 3c</B> </TD><TD> My Music or Office Home (on F2) </TD></TR><TR><TD>
|
||
<B>e0 3d</B> </TD><TD> Task Pane (on F3) </TD><TD></TD><TD><B>e0 3e</B> </TD><TD> New (on F4) </TD><TD></TD><TD><B>e0 3f</B> </TD><TD> Open (on F5) </TD><TD></TD><TD><B>e0 40</B> </TD><TD> Close (on F6) </TD></TR><TR><TD>
|
||
<B>e0 41</B> </TD><TD> Reply (on F7) </TD><TD></TD><TD><B>e0 42</B> </TD><TD> Fwd (on F8) </TD><TD></TD><TD><B>e0 43</B> </TD><TD> Send (on F9) </TD><TD></TD><TD><B>e0 57</B> </TD><TD> Save (on F11) </TD></TR><TR><TD>
|
||
<B>e0 58</B> </TD><TD> Print (on F12) </TD><TD></TD><TD><B>e0 5b</B> </TD><TD> LeftWindows </TD><TD></TD><TD><B>e0 5c</B> </TD><TD> RightWindows </TD><TD></TD><TD><B>e0 5d</B> </TD><TD> Application (Menu) </TD></TR><TR><TD>
|
||
<B>e0 5e</B> </TD><TD> Power </TD><TD></TD><TD><B>e0 5f</B> </TD><TD> Sleep </TD><TD></TD><TD><B>e0 63</B> </TD><TD> Wake </TD><TD></TD><TD><B>e0 64</B> </TD><TD> My Pictures </TD></TR><TR><TD>
|
||
<B>e0 65</B> </TD><TD> Search </TD><TD></TD><TD><B>e0 66</B> </TD><TD> Favorites </TD><TD></TD><TD><B>e0 67</B> </TD><TD> Refresh </TD><TD></TD><TD><B>e0 68</B> </TD><TD> Stop (cf <B>e0 24</B>) </TD></TR><TR><TD>
|
||
<B>e0 69</B> </TD><TD> Forward </TD><TD></TD><TD><B>e0 6a</B> </TD><TD> Back </TD><TD></TD><TD><B>e0 6b</B> </TD><TD> My Computer </TD><TD></TD><TD><B>e0 6c</B> </TD><TD> Mail </TD></TR><TR><TD>
|
||
<B>e0 6d</B> </TD><TD> Media </TD></TR><TR><TD>
|
||
|
||
</TD></TR></TABLE></CENTER>
|
||
<P>
|
||
<P>
|
||
<H3><A NAME="microsoft"></A> Microsoft Natural keyboard</H3>
|
||
|
||
<P>This keyboard has three additional keys, with escaped scancodes
|
||
<B>e0</B> <B>5b</B> (LeftWindow),
|
||
<B>e0</B> <B>5c</B> (RightWindow),
|
||
<B>e0</B> <B>5d</B> (Menu).
|
||
The untranslated Set 2 scancodes (see
|
||
<A HREF="scancodes-9.html#scancodesets">below</A>)
|
||
are <B>e0</B> <B>1f</B>, <B>e0</B> <B>27</B> and
|
||
<B>e0</B> <B>2f</B>, respectively.
|
||
The USB key codes are usage page 0x07, usage index 227, 231, 101
|
||
(decimal), respectively.
|
||
Microsoft
|
||
<A HREF="http://www.microsoft.com/hwdev/download/desinit/scancode.zip">describes</A>
|
||
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.
|
||
<P>
|
||
<H3><A NAME="msinternet"></A> Microsoft Internet keyboard</H3>
|
||
|
||
<P>In addition to the three extra keys on the Microsoft Natural keyboard,
|
||
this keyboard has ten keys, with escaped scancodes
|
||
<B>e0</B> <B>6a</B> (Back),
|
||
<B>e0</B> <B>69</B> (Forward),
|
||
<B>e0</B> <B>68</B> (Stop),
|
||
<B>e0</B> <B>6c</B> (Mail),
|
||
<B>e0</B> <B>65</B> (Search),
|
||
<B>e0</B> <B>66</B> (Favorites),
|
||
<B>e0</B> <B>32</B> (Web/Home),
|
||
<B>e0</B> <B>6b</B> (My Computer),
|
||
<B>e0</B> <B>21</B> (Calculator),
|
||
<B>e0</B> <B>5f</B> (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
|
||
<B>6a</B>, <B>69</B>, <B>68</B>, <B>6c</B>, <B>65</B>,
|
||
<B>66</B>, <B>97</B>, <B>6b</B>, <B>99</B>, <B>54</B>,
|
||
respectively.
|
||
<P>
|
||
<H3>Microsoft Natural keyboard pro</H3>
|
||
|
||
<P>Marco Melgazzi <<CODE>marco@techie.com</CODE>> reports:
|
||
The Microsoft Natural keyboard pro has 19 additional keys,
|
||
with escaped scancodes
|
||
<B>e0</B> <B>6a</B> (Back),
|
||
<B>e0</B> <B>69</B> (Forward),
|
||
<B>e0</B> <B>68</B> (Stop),
|
||
<B>e0</B> <B>67</B> (Refresh),
|
||
<B>e0</B> <B>65</B> (Search),
|
||
<B>e0</B> <B>66</B> (Favorites),
|
||
<B>e0</B> <B>32</B> (Web/Home),
|
||
<B>e0</B> <B>6c</B> (Mail),
|
||
<B>e0</B> <B>20</B> (Mute),
|
||
<B>e0</B> <B>2e</B> (Volume -),
|
||
<B>e0</B> <B>30</B> (Volume +),
|
||
<B>e0</B> <B>22</B> (Play/Pause),
|
||
<B>e0</B> <B>24</B> (Stop),
|
||
<B>e0</B> <B>10</B> (Prev Track),
|
||
<B>e0</B> <B>19</B> (Next Track),
|
||
<B>e0</B> <B>6d</B> (Media),
|
||
<B>e0</B> <B>6b</B> (My Computer),
|
||
<B>e0</B> <B>21</B> (Calculator),
|
||
<B>e0</B> <B>5f</B> (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.)
|
||
<P>
|
||
<H3>Microsoft Natural Multimedia Keyboard</H3>
|
||
|
||
<P>Jeremy Brand <<CODE>jeremy@nirvani.net</CODE>> reports:
|
||
The Microsoft Natural Multimedia Keyboard has 17 additional keys.
|
||
Scancodes are
|
||
<P>? (My Documents),
|
||
<B>e0</B> <B>64</B> (My Pictures),
|
||
<B>e0</B> <B>3c</B> (My Music),
|
||
<B>e0</B> <B>20</B> (Mute),
|
||
<B>e0</B> <B>22</B> (Play/Pause),
|
||
<B>e0</B> <B>24</B> (Stop),
|
||
<B>e0</B> <B>30</B> (Volume +),
|
||
<B>e0</B> <B>2e</B> (Volume -),
|
||
<B>e0</B> <B>10</B> (|<<),
|
||
<B>e0</B> <B>19</B> (>>|),
|
||
<B>e0</B> <B>6d</B> (Media),
|
||
<B>e0</B> <B>6c</B> (Mail),
|
||
<B>e0</B> <B>32</B> (Web/Home),
|
||
<B>e0</B> <B>05</B> (Messenger),
|
||
<B>e0</B> <B>21</B> (Calculator),
|
||
<B>e0</B> <B>16</B> (Log Off),
|
||
<B>e0</B> <B>5f</B> (Sleep).
|
||
<P>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
|
||
<P><B>e0</B> <B>3b</B> (Help) on F1 key,
|
||
<B>e0</B> <B>08</B> (Undo) on F2 key,
|
||
<B>e0</B> <B>07</B> (Redo) on F3 key,
|
||
? (New) on F4 key,
|
||
? (Open) on F5 key,
|
||
? (Close) on F6 key,
|
||
? (Replay) on F7 key,
|
||
<B>e0</B> <B>42</B> (Fwd) on F8 key,
|
||
<B>e0</B> <B>43</B> (Send) on F9 key,
|
||
<B>e0</B> <B>23</B> (Spell) on F10 key,
|
||
<B>e0</B> <B>57</B> (Save) on F11 key,
|
||
<B>e0</B> <B>58</B> (Print) on F12 key.
|
||
<P>
|
||
<P>
|
||
<H3><A NAME="msoffice"></A> Microsoft Office keyboard</H3>
|
||
|
||
<P>Christian Hammond
|
||
<A HREF="http://www.chipx86.com/linuxstuff/officekb/wheel.php">reports</A>
|
||
about the keyboard Scroll Wheel:
|
||
<I>The following is my interpretation of the results of</I>
|
||
<CODE>showkey -s</CODE>. <I>I had read that the wheel has 3 speeds,
|
||
normal, fast, and faster. However, my results show 4.</I>
|
||
<P>Scroll Up: Normal <B>e0</B> <B>0b</B>,
|
||
Fast <B>e0</B> <B>11</B>,
|
||
Faster <B>e0</B> <B>12</B>,
|
||
Fastest <B>e0</B> <B>1f</B>.
|
||
<P>Scroll Down: Normal <B>e0</B> <B>8b</B>,
|
||
Fast <B>e0</B> <B>91</B>,
|
||
Faster <B>e0</B> <B>92</B>,
|
||
Fastest <B>e0</B> <B>9f</B>.
|
||
<P>Wouter van Wijk <<CODE>woutervanwijk@netscape.net</CODE>> reported the scancodes
|
||
given below.
|
||
<P>On the left touchpad above the scroll wheel:
|
||
<B>e0</B> <B>6a</B> (Back),
|
||
<B>e0</B> <B>69</B> (Forward).
|
||
On the left touchpad below the scroll wheel:
|
||
<B>e0</B> <B>17</B> (Cut),
|
||
<B>e0</B> <B>18</B> (Copy),
|
||
<B>e0</B> <B>0a</B> (Paste),
|
||
<B>e0</B> <B>09</B> (Application Left),
|
||
<B>e0</B> <B>1e</B> (Application Right),
|
||
<P>Buttons on the top row:
|
||
No scancode (F Lock),
|
||
<B>e0</B> <B>13</B> (Word),
|
||
<B>e0</B> <B>14</B> (Excel),
|
||
<B>e0</B> <B>32</B> (Web/Home),
|
||
<B>e0</B> <B>6c</B> (Mail),
|
||
<B>e0</B> <B>15</B> (Calendar),
|
||
<B>e0</B> <B>05</B> (Files),
|
||
<B>e0</B> <B>21</B> (Calculator),
|
||
<B>e0</B> <B>20</B> (Mute),
|
||
<B>e0</B> <B>2e</B> (Volume -),
|
||
<B>e0</B> <B>30</B> (Volume +),
|
||
<B>e0</B> <B>16</B> (Log Off),
|
||
<B>e0</B> <B>5f</B> (Sleep).
|
||
This is the expected code for Sleep. However, there do not seem to be
|
||
Power and WakeUp keys.
|
||
<P>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.
|
||
<B>e0</B> <B>3b</B> (Help [F1]),
|
||
<B>e0</B> <B>3c</B> (Office Home [F2]),
|
||
<B>e0</B> <B>3d</B> (Task Pane [F3]),
|
||
<B>e0</B> <B>3e</B> (New [F4]),
|
||
<B>e0</B> <B>3f</B> (Open [F5]),
|
||
<B>e0</B> <B>40</B> (Close [F6]),
|
||
<B>e0</B> <B>41</B> (Reply [F7]),
|
||
<B>e0</B> <B>42</B> (Fwd [F8]),
|
||
<B>e0</B> <B>43</B> (Send [F9]),
|
||
<B>e0</B> <B>23</B> (Spell [F10]),
|
||
<B>e0</B> <B>57</B> (Save [F11]),
|
||
<B>e0</B> <B>58</B> (Print [F12]).
|
||
Note that each of these codes is just the <B>e0</B> variation
|
||
of the ordinary function key code, except for that for Spell [F10].
|
||
When the FLock light is off (default) the <B>e0</B>-version
|
||
is activated.
|
||
<P>Above the 5-key block with Insert, Home, Delete, PgUp, PgDown:
|
||
<B>e0</B> <B>08</B> (Undo),
|
||
<B>e0</B> <B>07</B> (Redo).
|
||
<P>Above the number pad:
|
||
<B>59</B> (=),
|
||
<B>e0</B> <B>4c</B> (( [PrintScreen]),
|
||
<B>e0</B> <B>64</B> () [ScrollLock]),
|
||
<B>0e</B> (Backspace),
|
||
<B>0f</B> (Tab).
|
||
These are the usual codes for Backspace and Tab but new codes
|
||
for (, ), =. PrintScreen and ScrollLock have the usual codes.
|
||
<P>
|
||
<FIGURE>
|
||
<EPS FILE="absent">
|
||
<IMG SRC="ms_office.jpg">
|
||
</FIGURE>
|
||
|
||
See the
|
||
<A HREF="http://www.microsoft.com/hardware/keyboard/ok_info.asp">Microsoft ad</A>.
|
||
<P>
|
||
<H2><A NAME="ss5.5">5.5 Safeway keyboards</A>
|
||
</H2>
|
||
|
||
<P>
|
||
<P>
|
||
<H3>Safeway SW10 keyboard</H3>
|
||
|
||
<P>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).
|
||
<P>
|
||
<H3><A NAME="safeway23"></A> Safeway SW23 keyboard</H3>
|
||
|
||
<P>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.)
|
||
<P>First row of buttons: three Volume buttons:
|
||
<B>e0</B> <B>58</B> (Mute),
|
||
<B>e0</B> <B>5a</B> (Vol -),
|
||
<B>e0</B> <B>70</B> (Vol +),
|
||
five CD Player buttons:
|
||
<B>e0</B> <B>59</B> (Prev),
|
||
<B>e0</B> <B>42</B> (Play),
|
||
<B>e0</B> <B>69</B> (Next),
|
||
<B>e0</B> <B>64</B> (Stop),
|
||
<B>e0</B> <B>71</B> (Eject),
|
||
two Recorder buttons:
|
||
<B>e0</B> <B>40</B> (Rew/Play),
|
||
<B>e0</B> <B>29</B> (Rec/Stop).
|
||
<P>Second row of buttons:
|
||
<B>e0</B> <B>23</B> (Sleep),
|
||
<B>e0</B> <B>7d</B> (Cut),
|
||
<B>e0</B> <B>7e</B> (Copy),
|
||
<B>e0</B> <B>7f</B> (Paste),
|
||
<B>e0</B> <B>20</B> (Rotate),
|
||
<B>e0</B> <B>43</B> (Close),
|
||
<B>e0</B> <B>30</B> (My Doc),
|
||
<B>e0</B> <B>44</B> (DOS),
|
||
<B>e0</B> <B>79</B> (Game),
|
||
<B>e0</B> <B>77</B> (WWW),
|
||
<B>e0</B> <B>6e</B> (Calc),
|
||
<B>e0</B> <B>3e</B> (X'fer),
|
||
<B>e0</B> <B>6a</B> (Menu/?).
|
||
<P>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:
|
||
<B>e0</B> <B>3c</B> (N/Lock),
|
||
<B>e0</B> <B>7b</B> (/),
|
||
<B>e0</B> <B>22</B> (*),
|
||
<B>e0</B> <B>61</B> (-),
|
||
<B>e0</B> <B>0f</B> (7),
|
||
<B>e0</B> <B>21</B> (8),
|
||
<B>e0</B> <B>6b</B> (9),
|
||
<B>e0</B> <B>3d</B> (+),
|
||
<B>e0</B> <B>04</B> (4),
|
||
<B>e0</B> <B>62</B> (5),
|
||
<B>e0</B> <B>39</B> (6),
|
||
<B>e0</B> <B>10</B> (1),
|
||
<B>e0</B> <B>24</B> (2),
|
||
<B>e0</B> <B>05</B> (3),
|
||
<B>e0</B> <B>02</B> (0),
|
||
<B>e0</B> <B>41</B> (.),
|
||
<B>e0</B> <B>3f</B> (Enter).
|
||
<P>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 <B>e0</B> <B>5e</B>,
|
||
<B>e0</B> <B>5f</B>, <B>e0</B> <B>63</B> as
|
||
<A HREF="scancodes-1.html#power">they should</A>.
|
||
<P>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
|
||
<A HREF="scancodes-9.html#scancodesets">below</A>),
|
||
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 <B>e0</B> <B>4f</B> in
|
||
untranslated scancode mode 1.)
|
||
<P>Note that some "protocol keycodes" occur here with <B>e0</B> prefix.
|
||
Indeed, we see <B>e1</B>, <B>ee</B>, <B>f1</B>, <B>fe</B>, <B>ff</B>
|
||
in the key up sequence for the multimedia keys Keypad-Minus
|
||
(<B>e0</B> <B>e1</B>), Calc (<B>e0</B> <B>ee</B>),
|
||
Eject (<B>e0</B> <B>f1</B>), Copy (<B>e0</B> <B>fe</B>),
|
||
Paste (<B>e0</B> <B>ff</B>).
|
||
<P>
|
||
<H2><A NAME="ss5.6">5.6 Internet Wireless Keyboard</A>
|
||
</H2>
|
||
|
||
<P>This keyboard (nameless, made in China) has 9+1+9 buttons,
|
||
nine on each side of the Sleep button.
|
||
Buttons:
|
||
<B>e0</B> <B>6a</B> (Web Backward),
|
||
<B>e0</B> <B>69</B> (Web Forward),
|
||
<B>e0</B> <B>68</B> (Web Stop),
|
||
<B>e0</B> <B>67</B> (Web Refresh),
|
||
<B>e0</B> <B>65</B> (Web Search),
|
||
<B>e0</B> <B>66</B> (Web Favorites),
|
||
<B>e0</B> <B>32</B> (Web Home),
|
||
<B>e0</B> <B>6c</B> (E-mail),
|
||
<B>e0</B> <B>20</B> (Mute),
|
||
<B>e0</B> <B>5f</B> (Sleep),
|
||
<B>e0</B> <B>2e</B> (Volume Down),
|
||
<B>e0</B> <B>30</B> (Volume Up),
|
||
<B>e0</B> <B>22</B> (Play/Pause),
|
||
<B>e0</B> <B>24</B> (Stop),
|
||
<B>e0</B> <B>10</B> (Fast Backward),
|
||
<B>e0</B> <B>19</B> (Fast Forward),
|
||
<B>e0</B> <B>6d</B> (Media Player),
|
||
<B>e0</B> <B>6b</B> (My Computer),
|
||
<B>e0</B> <B>21</B> (Calculator).
|
||
<P>This keyboard reports
|
||
<A HREF="scancodes-9.html#keyboardid">keyboard ID</A>
|
||
<B>ab</B> <B>83</B> (translated <B>ab</B> <B>c1</B>).
|
||
Scancode sets 1 and 2 are reported as <B>01</B> and <B>02</B>
|
||
(translated <B>c3</B> and <B>c1</B>).
|
||
These translations are bugs, but otherwise all seems to function
|
||
as expected, except that this keyboard does not recognize
|
||
scancode set 3 and returns <B>fe</B> for an attempt to set Set 3.
|
||
Every command <B>ed</B> <B>xx</B> is accepted, but there are no LEDs,
|
||
there is only a battery indicator.
|
||
<P>The mouse that accompanies the keyboard shows no reactions.
|
||
It may need a special driver.
|
||
<P>
|
||
<H2><A NAME="nokia"></A> <A NAME="ss5.7">5.7 Nokia keyboard</A>
|
||
</H2>
|
||
|
||
<P>This 121-key
|
||
<A HREF="nokia.jpg">Nokia keyboard</A>
|
||
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.
|
||
<P>Roughly speaking, the scancodes are as expected.
|
||
The
|
||
<A HREF="nokia-top.jpg">function keys</A> F1-F10,F11,F12
|
||
have scan codes <B>3b</B>-<B>44</B>, <B>57</B>, <B>58</B> as usual.
|
||
The keys on the upper row, labeled F13-F24, yield the same codes as
|
||
shifted F1-F12. E.g., F13 gives <B>2a</B> <B>3b</B> on press,
|
||
and <B>bb</B> <B>aa</B> 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.
|
||
<P>The
|
||
<A HREF="nokia-left.jpg">ten keys on the left</A>
|
||
have the following scancodes.
|
||
First column of five:
|
||
<B>01</B> (Attn/Esc/NxtTsk), as expected for Esc;
|
||
<B>1d 3b</B> (Quit/Reset), as expected for Ctrl F1;
|
||
<B>1d 3c</B> (ExSel), as expected for Ctrl F2;
|
||
<B>1d 3d</B> (Ident/Print), as expected for Ctrl F3;
|
||
<B>1d 3e</B> (Help/EnlW), as expected for Ctrl F4.
|
||
For these last four keys (and the ChgSc/WSCtrl below) the code
|
||
becomes <B>3b</B>-<B>3e</B> (and <B>3f</B>) when left or right
|
||
Ctrl is pressed already.
|
||
Second column of five:
|
||
<B>e1 1d 45</B> ((Break)/Clear/Pause/Test), and <B>e0 46</B>
|
||
with Ctrl, as expected for Pause/Break;
|
||
<B>46</B> (ScrLock), as expected for ScrLock;
|
||
<B>e0 2a e0 37</B> (PrtSc/SysRq), and <B>e0 37</B> with
|
||
left or right Ctrl or left or right Shift, and <B>54</B>
|
||
with left or right Alt, as expected for PrtSc;
|
||
<B>1d 3f</B> (ChgSc/WSCtrl), as expected for Ctrl F5;
|
||
<B>38 e0 49</B> (Jump), as expected for Alt PgUp.
|
||
<P>On
|
||
<A HREF="nokia-right.jpg">the right</A> a cursor key
|
||
section and a number pad.
|
||
The cursor key section has the expected block of six:
|
||
<B>e0 52</B> (Dup/Insert/PA1);
|
||
<B>e0 47</B> (Field Mark/Home/PA2);
|
||
<B>e0 49</B> (PA3/PgUp);
|
||
<B>e0 53</B> (Delete/DelWd);
|
||
<B>e0 4f</B> (ErEOF/End/ErInp);
|
||
<B>e0 51</B> (PgDn).
|
||
Next four arrow keys:
|
||
<B>e0 48</B> (Up);
|
||
<B>e0 4b</B> (Left);
|
||
<B>e0 4d</B> (Right);
|
||
<B>e0 50</B> (Down).
|
||
And in the middle <B>1d 40</B> (Home), with code as expected for Ctrl F6.
|
||
<P>Finally the numeric keypad, with the usual keys that generate the
|
||
usual codes, and a single additional key, a Tab, with <B>0f</B>
|
||
like the ordinary tab.
|
||
<P>
|
||
<FIGURE>
|
||
<EPS FILE="absent">
|
||
<IMG SRC="nokia-s.jpg">
|
||
</FIGURE>
|
||
<P>
|
||
<H2><A NAME="focus"></A> <A NAME="ss5.8">5.8 Focus KeyPro FK-9000 keyboard</A>
|
||
</H2>
|
||
|
||
<P>Raul D. Miller <<CODE>rockwell@nova.umd.edu</CODE>>
|
||
and Timothy C. Hagman <<CODE>hagmanti@cps.msu.edu</CODE>>
|
||
report:
|
||
<P><I>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.</I>
|
||
<P><I>This keyboard has twelve additional keys, with scancodes</I>
|
||
<B>55</B> (PF1),
|
||
<B>6d</B> (PF11),
|
||
<B>6f</B> (PF12),
|
||
<B>73</B> (PF2),
|
||
<B>74</B> (PF9),
|
||
<B>77</B> (PF3),
|
||
<B>78</B> (PF4),
|
||
<B>79</B> (PF5),
|
||
<B>7a</B>* (PF6),
|
||
<B>7b</B> (PF7),
|
||
<B>7c</B> (PF8),
|
||
<B>7e</B>* (PF10).
|
||
<P><I>The break codes equal the make codes ORed with 0x80, as always,
|
||
but the Linux kernel eats <B>fa</B> and <B>fe</B> as
|
||
protocol bytes.</I>
|
||
<P><I>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...</I>
|
||
<P><I>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.</I>
|
||
<P><I>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...</I>
|
||
<P><I>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.</I>
|
||
<P><I>When the keyboard is in calculator mode, the entire numeric
|
||
keypad (and everything else on the right side) generates no
|
||
scancodes.</I>
|
||
<P><I>When the keyboard is not in caluclator mode, the %, MC, MR, M-,
|
||
M+, and Square Root keys all generate <B>ff</B> when pressed,
|
||
<B>ff</B> to repeat, and <B>ff</B> on release.</I>
|
||
<P><I>The little unlabeled key between the right Ctrl and right Alt
|
||
generates <B>56</B> when hit, repeats that, and then <B>d6</B>
|
||
when released, just like a normal key.</I>
|
||
<P>
|
||
<P>
|
||
<H2><A NAME="BTC"></A> <A NAME="ss5.9">5.9 BTC keyboard</A>
|
||
</H2>
|
||
|
||
<P>This keyboard has one additional key, with escaped scancode
|
||
<B>e0</B> <B>6f</B> (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.)
|
||
<P>
|
||
<H2><A NAME="ss5.10">5.10 LK411 and LK450 keyboards</A>
|
||
</H2>
|
||
|
||
<P>These keyboards have seven additional keys, with escaped scancodes
|
||
<B>e0</B> <B>0f</B> (LeftCompose),
|
||
<B>e0</B> <B>3d</B> (F13),
|
||
<B>e0</B> <B>3e</B> (F14),
|
||
<B>e0</B> <B>3f</B> (Help),
|
||
<B>e0</B> <B>40</B> (Do),
|
||
<B>e0</B> <B>41</B> (F17),
|
||
<B>e0</B> <B>4e</B> (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.
|
||
<P>In (translated) scancode Set 3 these keys give codes
|
||
<B>68</B>, <B>44</B>, <B>42</B>, <B>40</B>,
|
||
<B>3e</B>, <B>65</B>, <B>70</B>.
|
||
In untranslated Set 2, the F17 key gives <B>e0</B> <B>83</B>.
|
||
<P>An
|
||
<A HREF="lk411.jpg">LK411 keyboard</A>,
|
||
with
|
||
<A HREF="lk411-left.jpg">left</A>
|
||
and
|
||
<A HREF="lk411-right.jpg">right</A> hand side enlarged.
|
||
<P>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 <B>4e</B> expected for Keypad-+.
|
||
The Right ComposeCharacter key produces the code expected for RCtrl.
|
||
The key labelled </> produces the code <B>29</B>
|
||
expected for `/~. The key labelled with `/~/(Esc) produces
|
||
the code expected for Esc.
|
||
<P>
|
||
<FIGURE>
|
||
<EPS FILE="absent">
|
||
<IMG SRC="lk411-s.jpg">
|
||
</FIGURE>
|
||
<P>
|
||
<H2><A NAME="omnikey"></A> <A NAME="ss5.11">5.11 An OmniKey keyboard</A>
|
||
</H2>
|
||
|
||
<P>This keyboard has one additional key, with escaped scancode
|
||
<B>e0</B> <B>4c</B> (Omni).
|
||
<P>For the Northgate OmniKey 101 keyboard it is said that the command
|
||
<B>e8</B> reads a 2-byte ID.
|
||
<P>
|
||
<H2><A NAME="ss5.12">5.12 GRiD 2260 keyboard</A>
|
||
</H2>
|
||
|
||
<P>The GRiD 2260 notebook has a key producing the
|
||
<B>6c</B> scancode; I do not know the keycap.
|
||
<P>
|
||
<H2><A NAME="ss5.13">5.13 An old Olivetti keyboard</A>
|
||
</H2>
|
||
|
||
<P>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
|
||
<B>65</B>, <B>66</B>, <B>67</B>.
|
||
<P>
|
||
<H2><A NAME="cherry81"></A> <A NAME="ss5.14">5.14 Cherry G81-3000</A>
|
||
</H2>
|
||
|
||
<P>According to
|
||
<A HREF="http://www.delorie.com/djgpp/doc/rbinter/it/06/0.html">Delorie</A>
|
||
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 <B>66</B>-<B>68</B> (F19-F21);
|
||
the fourth new key, labeled (delta), sends make code <B>73</B>.
|
||
<P>
|
||
<H2><A NAME="ss5.15">5.15 Accord keyboard</A>
|
||
</H2>
|
||
|
||
<P>According to
|
||
<A HREF="http://www.delorie.com/djgpp/doc/rbinter/it/06/0.html">Delorie</A>
|
||
the "Accord"
|
||
<A HREF="http://www.ergonomics.co.uk/products/input/keyb7300.jpg">ergonomic keyboard</A>
|
||
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 <B>e0 68</B>.
|
||
<P>
|
||
<H2><A NAME="ss5.16">5.16 Trust Ergonomic keyboard</A>
|
||
</H2>
|
||
|
||
<P>Frank v Waveren <<CODE>fvw@var.cx</CODE>> reports:
|
||
The Trust Ergo Track keyboard has one additional key (`application key'), with
|
||
escaped scancode <B>e0</B> <B>68</B>. The keycap is a triangle pointing left.
|
||
<P>
|
||
<H2><A NAME="ss5.17">5.17 Brazilian keyboards</A>
|
||
</H2>
|
||
|
||
<P>ABNT (Associa<69><61>o Brasileira de Normas Tecnicas) and ABNT2
|
||
are Brazilian keyboard layout standards. The plain Brazilian
|
||
keyboard has 103 keys.
|
||
<P>The Brazilian ABNT keyboard has two unusual keys,
|
||
with scancodes <B>73</B> (/?) and <B>7e</B> (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).
|
||
<P>Under Linux, the corresponding key codes are 89 and 121, respectively.
|
||
These keys do not function with Windows NT 4.0.
|
||
<P>Antonio Dias <<CODE>accdias@sst.com.br</CODE>> provided the
|
||
<A HREF="abnt-keypad.html">keypad layout</A>
|
||
and writes: <I>Brazilian ABNT2 keyboards come with two layouts.
|
||
In MSDOS they call them ID 274 and ID 275.</I>
|
||
<P>
|
||
<H2><A NAME="RC930"></A> <A NAME="ss5.18">5.18 RC930 keyboard</A>
|
||
</H2>
|
||
|
||
<P>Torben Fjerdingstad <<CODE>tfj@olivia.ping.dk</CODE>> reports:
|
||
<P><I>It's an rc930 keyboard, from Regnecentralen/RC International, Now ICL.
|
||
This keyboard has four additional keys, with scancodes</I>
|
||
<B>59</B> (A1),
|
||
<B>5a</B> (A2),
|
||
<B>5b</B> (A3),
|
||
<B>5c</B> (A4).
|
||
<P><I>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.</I>
|
||
<P>
|
||
<H2><A NAME="prefix_80"></A> <A NAME="ss5.19">5.19 Tandberg Data keyboard</A>
|
||
</H2>
|
||
|
||
<P>Kjetil Torgrim Homme <<CODE>kjetilho@ifi.uio.no</CODE>> reports:
|
||
<P><I>My Tandberg Data keyboard uses the prefix <B>80</B> for
|
||
its numerous (20) extra keys. The <B>80</B> scancodes are:</I>
|
||
<P><B>11</B>, <B>12</B>, <B>13</B>, <B>14</B>, <B>16</B>,
|
||
<B>17</B>, <B>18</B>, <B>19</B>, <B>1e</B>, <B>1f</B>,
|
||
<B>20</B>, <B>21</B>, <B>22</B>, <B>23</B>, <B>25</B>,
|
||
<B>26</B>, <B>2f</B>, <B>30</B>, <B>32</B>, <B>56</B>.
|
||
<P><I>For completeness, the <B>e0</B> scancodes:</I>
|
||
<P><B>1c</B>, <B>2a</B>, <B>35</B>, <B>37</B>, <B>47</B>,
|
||
<B>48</B>, <B>49</B>, <B>4b</B>, <B>4d</B>, <B>4f</B>,
|
||
<B>50</B>, <B>51</B>, <B>52</B>, <B>53</B>.
|
||
<P><I>The <B>e1</B> scancode: <B>1d</B>.
|
||
As you can see, there is no overlap on this keyboard.</I>
|
||
<P>Harald Arnesen <<CODE>gurre@start.no</CODE>> gives the keycaps
|
||
for these for the Tandberg TDV5020 keyboard.
|
||
All use prefix <B>80</B> on both press and release.
|
||
<P>Thirteen keys have (Norwegian) text:
|
||
<B>11</B> HJELP (help), <B>14</B> STRYK (cut),
|
||
<B>16</B> KOPI (copy), <B>17</B> FLYTT (move),
|
||
<B>19</B> JUST (justify), <B>21</B> MERK (mark),
|
||
<B>22</B> ANGRE (undo), <B>23</B> SKRIV (print),
|
||
<B>25</B> SLUTT (exit), <B>26</B> FELT (field),
|
||
<B>2f</B> AVSN (paragraph), <B>30</B> SETN (sentence),
|
||
and <B>32</B> ORD (word).
|
||
<P>Seven keys have symbols: <B>12</B> /\/\/\ (insert soft hyphen),
|
||
<B>13</B> [Crossed down-arrow] (move down five lines),
|
||
<B>18</B> >> << (justify left/right),
|
||
<B>1e</B> <> >< (justify full/center),
|
||
<B>1f</B> |<- (backtab),
|
||
<B>20</B> ->| (tab), and
|
||
<B>56</B> [Back/down arrow] (start new paragraph).
|
||
<P>Other keycaps also occur. Those given above were meant
|
||
for use with the Notis WP word processor.
|
||
<P>
|
||
<H2><A NAME="ss5.20">5.20 Host Connected keyboard</A>
|
||
</H2>
|
||
|
||
<P>IBM makes the "Host Connected Keyboard" for PS/2 machines used as
|
||
3270 emulators.
|
||
<A HREF="http://www.delorie.com/djgpp/doc/rbinter/it/06/0.html">Delorie</A>
|
||
reports on the 122-key "Host Connected" keyboard.
|
||
It may have <B>5b</B> (F13), <B>5c</B> (F14), <B>5d</B> (F15),
|
||
<B>63</B> (F16), <B>64</B> (F17), <B>65</B> (F18),
|
||
<B>66</B> (F19), <B>67</B> (F20), <B>68</B> (F21),
|
||
<B>69</B> (F22), <B>6a</B> (F23), <B>6b</B> (F24).
|
||
<P>
|
||
<H2><A NAME="ss5.21">5.21 A nameless USB keyboard</A>
|
||
</H2>
|
||
|
||
<P>This keyboard has four additional keys: Power (rose), Sleep (blue),
|
||
WakeUp (green) and FN (yellow).
|
||
In legacy mode these keys give the expected keycodes
|
||
(<B>e0</B> <B>5e</B>, <B>e0</B> <B>5f</B>, <B>e0</B> <B>63</B>,
|
||
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.
|
||
<P>
|
||
<H2><A NAME="ss5.22">5.22 Omnibook keyboard</A>
|
||
</H2>
|
||
|
||
<P>
|
||
<A NAME="omnibookinit"></A>
|
||
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,
|
||
<A HREF="http://zurich.ai.mit.edu/pipermail/omnibook/2002-April/001230.html">this one</A>.
|
||
<P>Keys (on a GF model):
|
||
<P><B>e0</B> <B>32</B> (WWW),
|
||
<B>e0</B> <B>6c</B> (Mail),
|
||
<B>e0</B> <B>74</B> (Demo),
|
||
<B>e0</B> <B>73</B> (Help),
|
||
<B>e0</B> <B>10</B> (Previous Track),
|
||
<B>e0</B> <B>22</B> (Play / Pause),
|
||
<B>e0</B> <B>24</B> (Stop / Eject),
|
||
<B>e0</B> <B>19</B> (Next Track),
|
||
<B>e0</B> <B>2e</B> (Volume Down),
|
||
<B>e0</B> <B>30</B> (Volume Up),
|
||
<B>e0</B> <B>20</B> (Mute / Unmute).
|
||
<P>
|
||
<P>
|
||
<P>
|
||
<H2><A NAME="EZButton"></A> <A NAME="ss5.23">5.23 EZ Button keyboard</A>
|
||
</H2>
|
||
|
||
<P>Eric Schott <<CODE>eric@morningjoy.com</CODE>> writes:
|
||
<P>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.
|
||
<P>There are 14 additional keys:
|
||
<P><B>e0</B> <B>25</B> ("Power" moon - has an LED),
|
||
<B>e0</B> <B>26</B> ("Help"),
|
||
<B>e0</B> <B>32</B> ("Internet"),
|
||
<B>e0</B> <B>17</B> ("Lotus Word Pro"),
|
||
<B>e0</B> <B>30</B> ("Lotus Organizer"),
|
||
<B>e0</B> <B>2e</B> ("Aptiva Installer"),
|
||
<B>e0</B> <B>19</B> ("Delete Message"),
|
||
<B>e0</B> <B>24</B> (Stop),
|
||
<B>e0</B> <B>22</B> (Pause),
|
||
<B>e0</B> <B>1e</B> ("Msg" - has an LED),
|
||
<B>e0</B> <B>20</B> ("CD" - has an LED),
|
||
<B>e0</B> <B>23</B> (Rewind),
|
||
<B>e0</B> <B>21</B> (Fast Forward), and
|
||
<B>e0</B> <B>12</B> ("Talk" - has an LED).
|
||
<P>
|
||
<P>The LEDs in the buttons are controlled by the sequence
|
||
<B>
|
||
<A HREF="scancodes-1.html#LEDmanip">eb</A></B> <B>00</B> <B>xx</B>
|
||
where the <B>xx</B> 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.
|
||
<P>
|
||
<P>
|
||
<H2><A NAME="chicony"></A> <A NAME="ss5.24">5.24 Chicony KBP-8993 keyboard</A>
|
||
</H2>
|
||
|
||
<P>Matthijs Melchior <<CODE>mmelchio@xs4all.nl</CODE>> reports:
|
||
<P>The Chicony KBP-8993 keyboard is similar. It has 14 additional
|
||
keys, enabled by sending <B>ea</B> <B>71</B> and disabled
|
||
by sending <B>ea</B> <B>70</B>.
|
||
<P>These keys generate the following scan codes:
|
||
<P><B>e0</B> <B>25</B> (Moon),
|
||
<B>e0</B> <B>32</B> (WWW),
|
||
<B>e0</B> <B>30</B> (DOS),
|
||
<B>e0</B> <B>17</B> (MyDoc),
|
||
<B>e0</B> <B>26</B> (Menu),
|
||
<B>e0</B> <B>1e</B> (zzZ),
|
||
<B>e0</B> <B>2e</B> (Close),
|
||
<B>e0</B> <B>24</B> (Stop),
|
||
<B>e0</B> <B>23</B> (Back),
|
||
<B>e0</B> <B>22</B> (Play),
|
||
<B>e0</B> <B>21</B> (Forward),
|
||
<B>e0</B> <B>20</B> (Mute),
|
||
<B>e0</B> <B>12</B> (VolDown),
|
||
<B>e0</B> <B>19</B> (VolUp).
|
||
<P>The two extra LEDs, above the Moon key, and next to the zzZ key
|
||
are manipulated by sending:
|
||
<B>
|
||
<A HREF="scancodes-1.html#LEDmanip">eb</A></B> <B>00</B> <B>0x</B>,
|
||
where bit 0 is the Moon LED and bit 1 is the zzZ LED.
|
||
<P>
|
||
<H2><A NAME="ss5.25">5.25 Keyboards for HP Kayak and Vectra</A>
|
||
</H2>
|
||
|
||
<P>Fons Rademakers <<CODE>Fons.Rademakers@cern.ch</CODE>> writes:
|
||
<P><I>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.</I>
|
||
<P>
|
||
<CENTER><TABLE BORDER><TR><TD>
|
||
</TD><TD>Msg</TD><TD>TTl</TD><TD>WWW</TD><TD> ? </TD><TD>Lck</TD><TD> </TD><TD></TD><TD>Msg</TD><TD>Phn</TD><TD>WWW</TD><TD>xxx</TD><TD>Slp</TD><TD> </TD><TD></TD><TD>133</TD><TD>134</TD><TD>135</TD><TD>136</TD><TD>137</TD><TD> </TD></TR><TR><TD>
|
||
</TD><TD>Phn</TD><TD>S3 </TD><TD>S4 </TD><TD>S5 </TD><TD> i </TD><TD> </TD><TD></TD><TD><<</TD><TD>>||</TD><TD>[] </TD><TD>>> </TD><TD>HP </TD><TD> </TD><TD></TD><TD>138</TD><TD>139</TD><TD>140</TD><TD>141</TD><TD>142</TD><TD> </TD></TR><TR><TD>
|
||
</TD><TD> </TD><TD> </TD><TD> </TD><TD> </TD><TD>Mut</TD><TD> </TD><TD></TD><TD> </TD><TD> </TD><TD> </TD><TD> </TD><TD>Mut</TD><TD> </TD><TD></TD><TD> </TD><TD> </TD><TD> </TD><TD> </TD><TD>143</TD><TD> </TD></TR><TR><TD>
|
||
</TD><TD> </TD><TD> </TD><TD> </TD><TD> </TD><TD>Vl+</TD><TD> </TD><TD></TD><TD> </TD><TD> </TD><TD> </TD><TD> </TD><TD>Vl+</TD><TD> </TD><TD></TD><TD> </TD><TD> </TD><TD> </TD><TD> </TD><TD>144</TD><TD> </TD></TR><TR><TD>
|
||
</TD><TD> </TD><TD> </TD><TD> </TD><TD> </TD><TD>VL-</TD><TD> </TD><TD></TD><TD> </TD><TD> </TD><TD> </TD><TD> </TD><TD>VL-</TD><TD> </TD><TD></TD><TD> </TD><TD> </TD><TD> </TD><TD> </TD><TD>145</TD><TD> </TD></TR><TR><TD>
|
||
|
||
<CAPTION>Grenoble keyboard ------- Old HPD keyboard -------- key numbers</CAPTION>
|
||
</TD></TR></TABLE></CENTER>
|
||
<P>
|
||
<P>
|
||
<CENTER><TABLE BORDER><TR><TD>
|
||
</TD><TD> Key# </TD><TD> Scancode </TD><TD> Gren. Name </TD><TD> HPD name </TD><TD> ASCII </TD></TR><TR><TD>
|
||
</TD></TR><TR><TD>
|
||
</TD><TD> 133 </TD><TD> <B>e0 1e</B> </TD><TD> Message/SC1 </TD><TD> Message </TD><TD> a </TD></TR><TR><TD>
|
||
</TD><TD> 134 </TD><TD> <B>e0 12</B> </TD><TD> Top Tools </TD><TD> Phone </TD><TD> e </TD></TR><TR><TD>
|
||
</TD><TD> 135 </TD><TD> <B>e0 32</B> </TD><TD> Web Browser </TD><TD> Internet </TD><TD> m </TD></TR><TR><TD>
|
||
</TD><TD> 136 </TD><TD> <B>e0 17</B> </TD><TD> Reminder </TD><TD> Shortcut </TD><TD> i </TD></TR><TR><TD>
|
||
</TD><TD> 137 </TD><TD> <B>e0 25</B> </TD><TD> Lock </TD><TD> Suspend </TD><TD> k </TD></TR><TR><TD>
|
||
</TD><TD> 138 </TD><TD> <B>e0 23</B> </TD><TD> Phone/SC2 </TD><TD> << </TD><TD> h </TD></TR><TR><TD>
|
||
</TD><TD> 139 </TD><TD> <B>e0 22</B> </TD><TD> ShortCut 3 </TD><TD> >|| </TD><TD> g </TD></TR><TR><TD>
|
||
</TD><TD> 140 </TD><TD> <B>e0 24</B> </TD><TD> ShortCut 4 </TD><TD> [] </TD><TD> j </TD></TR><TR><TD>
|
||
</TD><TD> 141 </TD><TD> <B>e0 21</B> </TD><TD> ShortCut 5 </TD><TD> >> </TD><TD> f </TD></TR><TR><TD>
|
||
</TD><TD> 142 </TD><TD> <B>e0 26</B> </TD><TD> Information </TD><TD> Information </TD><TD> l </TD></TR><TR><TD>
|
||
</TD><TD> 143 </TD><TD> <B>e0 20</B> </TD><TD> Mute </TD><TD> Mute </TD><TD> d </TD></TR><TR><TD>
|
||
</TD><TD> 144 </TD><TD> <B>e0 30</B> </TD><TD> Volume + </TD><TD> Volume + </TD><TD> b </TD></TR><TR><TD>
|
||
</TD><TD> 145 </TD><TD> <B>e0 2e</B> </TD><TD> Volume - </TD><TD> Volume - </TD><TD> c </TD></TR><TR><TD>
|
||
|
||
</TD></TR></TABLE></CENTER>
|
||
<P><I>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:</I> <B>e0 9e</B> <I>for the Message key.</I>
|
||
<P>
|
||
<P><<CODE>spikboll@gmx.net</CODE>> adds:
|
||
<I>These keyboards have a "mail LED" (it's positioned above the Message
|
||
button) that kan be controlled by the Rapid Access hack:</I>
|
||
'send_to_keyboard <B>eb</B>' <I>makes the led blink and</I>
|
||
'send_to_keyboard <B>ec</B>' <I>turns the led off.</I>
|
||
'send_to_keyboard <B>ed</B>' <I>makes the led light steadily
|
||
and locks up the keys.</I>
|
||
<P>
|
||
<H2><A NAME="ss5.26">5.26 A keyboard</A>
|
||
</H2>
|
||
|
||
<P>Jon Masters <<CODE>jonathan@easypenguin.co.uk</CODE>> writes:
|
||
<P><I>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).</I>
|
||
<P><B>e0</B> <B>5e</B> (Power Off),
|
||
<B>e0</B> <B>5f</B> (Sleep),
|
||
<B>e0</B> <B>63</B> (Resume),
|
||
<B>e0</B> <B>2e</B> (Help),
|
||
<B>e0</B> <B>20</B> (My Favourite),
|
||
<B>e0</B> <B>30</B> (Browser),
|
||
<B>e0</B> <B>32</B> (WWW Search),
|
||
<B>e0</B> <B>26</B> (Shortcut),
|
||
<B>e0</B> <B>25</B> (Volume Down),
|
||
<B>e0</B> <B>1e</B> (Volume Up),
|
||
<B>e0</B> <B>12</B> (Mute),
|
||
<B>e0</B> <B>22</B> (Previous),
|
||
<B>e0</B> <B>10</B> (Stop),
|
||
<B>e0</B> <B>24</B> (Next),
|
||
<B>e0</B> <B>21</B> (Eject),
|
||
<B>e0</B> <B>19</B> (Play).
|
||
<P>
|
||
<H2><A NAME="ss5.27">5.27 Yahoo! keyboard</A>
|
||
</H2>
|
||
|
||
<P>Bernhard Polzin <<CODE>B.Polzin@web.de</CODE>> writes:
|
||
<P><I>I have a transparent violet colored "Yahoo!" Keyboard with extra keys
|
||
for Internet and Audio. Unusual scancodes (untranslated/translated):</I>
|
||
<P><B>e0</B> <B>37</B> / <B>e0</B> <B>5e</B> (Power),
|
||
<B>e0</B> <B>3f</B> / <B>e0</B> <B>5f</B> (Sleep),
|
||
<B>e0</B> <B>5e</B> / <B>e0</B> <B>63</B> (Wake),
|
||
<B>e0</B> <B>21</B> / <B>e0</B> <B>2e</B> (Y!),
|
||
<B>e0</B> <B>4b</B> / <B>e0</B> <B>26</B> (Short Cut),
|
||
<B>e0</B> <B>3a</B> / <B>e0</B> <B>32</B> (E-Mail),
|
||
<B>e0</B> <B>23</B> / <B>e0</B> <B>20</B> (My Doc),
|
||
<B>e0</B> <B>32</B> / <B>e0</B> <B>30</B> (WWW),
|
||
<B>e0</B> <B>1c</B> / <B>e0</B> <B>1e</B> (Volume +),
|
||
<B>e0</B> <B>42</B> / <B>e0</B> <B>25</B> (Volume -),
|
||
<B>e0</B> <B>24</B> / <B>e0</B> <B>12</B> (Mute),
|
||
<B>e0</B> <B>15</B> / <B>e0</B> <B>10</B> (Stop),
|
||
<B>e0</B> <B>4e</B> / <B>e0</B> <B>0c</B> (Play/Pause),
|
||
<B>e0</B> <B>34</B> / <B>e0</B> <B>22</B> (Prev Track),
|
||
<B>e0</B> <B>3d</B> / <B>e0</B> <B>08</B> (Next Track),
|
||
<B>e0</B> <B>4d</B> / <B>e0</B> <B>19</B> (Eject).
|
||
<I>(Volume +), (Volume -), (Prev Track) and (Next Track) are typematic.</I>
|
||
<P>Note that this is very similar to the previous one.
|
||
<P>
|
||
<FIGURE>
|
||
<EPS FILE="absent">
|
||
<IMG SRC="yahoo912.jpg">
|
||
</FIGURE>
|
||
<P>
|
||
<H2><A NAME="honeywell"></A> <A NAME="ss5.28">5.28 Honeywell Multimedia Keyboard</A>
|
||
</H2>
|
||
|
||
<P>Eric Yeo reports that his Honeywell Multimedia Keyboard has the following
|
||
additional keys:
|
||
<B>e0</B> <B>25</B> (Screen saver),
|
||
<B>e0</B> <B>24</B> (Mail),
|
||
<B>e0</B> <B>32</B> (WWW),
|
||
<B>e0</B> <B>10</B> (Game),
|
||
<B>e0</B> <B>26</B> (Calc),
|
||
<B>e0</B> <B>1e</B> (Shortcut 1),
|
||
<B>e0</B> <B>18</B> (Shortcut 2),
|
||
<B>e0</B> <B>12</B> (Prev),
|
||
<B>e0</B> <B>22</B> (Next),
|
||
<B>e0</B> <B>19</B> (Play),
|
||
<B>e0</B> <B>23</B> (Stop),
|
||
<B>e0</B> <B>30</B> (Vol up),
|
||
<B>e0</B> <B>2e</B> (Vol down),
|
||
<B>e0</B> <B>17</B> (Eject),
|
||
<B>e0</B> <B>20</B> (Mute).
|
||
<P>
|
||
<H2><A NAME="ss5.29">5.29 Samsung Ergonomics Keyboard</A>
|
||
</H2>
|
||
|
||
<P>Miguel Costa reports that his
|
||
<A HREF="samsung.jpg">Samsung Ergonomics Keyboard</A> has the following additional keys:
|
||
<B>e0</B> <B>2e</B> (Vol down),
|
||
<B>e0</B> <B>30</B> (Vol up),
|
||
<B>e0</B> <B>20</B> (Mute),
|
||
<B>e0</B> <B>18</B> (Eject),
|
||
<B>e0</B> <B>22</B> (PlayPause),
|
||
<B>e0</B> <B>24</B> (Stop),
|
||
<B>e0</B> <B>10</B> (Rewind),
|
||
<B>e0</B> <B>19</B> (Forward),
|
||
<B>e0</B> <B>26</B> (Help),
|
||
<B>e0</B> <B>59</B> (Favorites),
|
||
<B>e0</B> <B>09</B> (Exit),
|
||
<B>e0</B> <B>0a</B> (Address book),
|
||
<B>e0</B> <B>02</B> (Action 1),
|
||
<B>e0</B> <B>03</B> (Action 2),
|
||
<B>e0</B> <B>04</B> (Action 3),
|
||
<B>e0</B> <B>05</B> (Action 4),
|
||
<B>e0</B> <B>06</B> (Action 5),
|
||
<B>e0</B> <B>32</B> (Internet),
|
||
<B>e0</B> <B>6c</B> (Email),
|
||
<B>e0</B> <B>5f</B> (Standby),
|
||
<B>e0</B> <B>5b</B> (Windows left),
|
||
<B>e0</B> <B>5c</B> (Windows right),
|
||
<B>e0</B> <B>5d</B> (Windows task).
|
||
<P>
|
||
<FIGURE>
|
||
<EPS FILE="absent">
|
||
<IMG SRC="samsung-s.jpg">
|
||
</FIGURE>
|
||
<P>
|
||
<H2><A NAME="ss5.30">5.30 The "LiteOn MediaTouch Keyboard" type SK-2500</A>
|
||
</H2>
|
||
|
||
<P>Serge van den Boom reports that his LiteOn MediaTouch Keyboard
|
||
(a Trust "Direct Access Keyboard"), has 18 additional keys:
|
||
<B>e0</B> <B>25</B> (Suspend),
|
||
<B>e0</B> <B>7a</B> (Coffee),
|
||
<B>e0</B> <B>32</B> (WWW),
|
||
<B>e0</B> <B>21</B> (Calculator),
|
||
<B>e0</B> <B>23</B> (Xfer),
|
||
<B>38</B> <B>2a</B> <B>0f</B> <B>8f</B> / <B>8f</B> <B>b8</B>
|
||
<B>aa</B> (Switch window),
|
||
<B>e0</B> <B>17</B> (Close),
|
||
<B>e0</B> <B>10</B> (|<<),
|
||
<B>e0</B> <B>22</B> (>| / []),
|
||
<B>e0</B> <B>24</B> ([]),
|
||
<B>e0</B> <B>19</B> (>>|),
|
||
<B>e0</B> <B>1e</B> (Record),
|
||
<B>e0</B> <B>12</B> (Rewind),
|
||
<B>e0</B> <B>26</B> (Menu/?),
|
||
<B>e0</B> <B>18</B> (Eject),
|
||
<B>e0</B> <B>20</B> (Mute),
|
||
<B>e0</B> <B>30</B> (Volume +),
|
||
<B>e0</B> <B>2e</B> (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 <B>0f</B>, that is, Tab-down;
|
||
and upon release it produces the Tab-up, LAlt-up, LShift-up sequence.
|
||
<P>
|
||
<FIGURE>
|
||
<EPS FILE="absent">
|
||
<IMG SRC="sk2500.jpg">
|
||
</FIGURE>
|
||
<P>
|
||
<P>
|
||
<H2><A NAME="ss5.31">5.31 The Acer Aspire 1310LC laptop</A>
|
||
</H2>
|
||
|
||
<P>Pau Aliagas reports that his Acer Aspire 1310LC laptop has 4
|
||
additional keys:
|
||
<B>e0</B> <B>6c</B> (Mail),
|
||
<B>e0</B> <B>32</B> (WWW),
|
||
<B>e0</B> <B>74</B> (P1),
|
||
<B>e0</B> <B>73</B> (P2).
|
||
<P>
|
||
<P>
|
||
<H2><A NAME="ss5.32">5.32 The Emachines eKB-5190(A) keyboard</A>
|
||
</H2>
|
||
|
||
<P>This keyboard has 18 additional keys, with translated Set 2 scancodes:
|
||
<B>e0</B> <B>1e</B> (Banking),
|
||
<B>e0</B> <B>25</B> (Brokerage),
|
||
<B>e0</B> <B>26</B> (Pay Bills),
|
||
<B>e0</B> <B>24</B> (News),
|
||
<B>e0</B> <B>21</B> (Sports),
|
||
<B>e0</B> <B>22</B> (Travel),
|
||
<B>e0</B> <B>32</B> (Shopping),
|
||
<B>e0</B> <B>23</B> (Tickets),
|
||
<B>e0</B> <B>31</B> (Music),
|
||
<B>e0</B> <B>18</B> (Health),
|
||
<B>e0</B> <B>30</B> (Greetings),
|
||
<B>e0</B> <B>1f</B> (Games),
|
||
<B>e0</B> <B>13</B> (Auctions),
|
||
<B>e0</B> <B>2e</B> (MySite),
|
||
<B>e0</B> <B>20</B> (Telephone),
|
||
<B>e0</B> <B>12</B> (Surf),
|
||
<B>e0</B> <B>19</B> (Search),
|
||
<B>e0</B> <B>10</B> (Vol -),
|
||
<B>e0</B> <B>17</B> (Vol +).
|
||
The respective untranslated Set 3 codes are
|
||
<B>95</B>, <B>9d</B>, <B>9c</B>, <B>94</B>, <B>99</B>,
|
||
<B>93</B>, <B>97</B>, <B>9a</B>, <B>9e</B>, <B>9f</B>,
|
||
<B>91</B>, <B>a3</B>, <B>a2</B>, <B>92</B>, <B>9b</B>,
|
||
<B>96</B>, <B>a0</B>, <B>a1</B>, <B>98</B> (equal to the
|
||
translated Set 3 codes).
|
||
<P>Unusual commands are <B>e4</B> <B>0b</B>, which returns
|
||
<B>bc</B> <B>1c</B> (untranslated <B>06</B> <B>f0</B> <B>5a</B>),
|
||
and <B>e4</B> <B>0c</B>, which returns
|
||
<B>ff</B> (untranslated <B>00</B>),
|
||
and <B>ec</B> <B>0c</B>, which returns <B>06</B> regardless of
|
||
translation. I do not know the meaning or function of these.
|
||
<P>
|
||
<H2><A NAME="ss5.33">5.33 Keyboards with many keys</A>
|
||
</H2>
|
||
|
||
<P>The current mechanism is unable to handle keyboards with more than
|
||
127 keys. But such keyboards seem to exist. Indeed, I now have a
|
||
<A HREF="#safeway23">Safeway SW23</A> that has 132 keys.
|
||
<P>Mark Hatle <<CODE>fray@kernel.crashing.org</CODE>> wrote:
|
||
<P><I>On some ADB keyboards there are actually 128 distinct keys.
|
||
They use scancodes 0-127.</I>
|
||
<P><I>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.</I>
|
||
<P><I>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".</I>
|
||
<P><I>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.</I>
|
||
<P><I>ADB is used for both m68k and PPC Linux. The m68k Macintosh port, and
|
||
the PPC - Power Macintosh and CHRP ports.</I>
|
||
<P>and later:
|
||
<P><I>Basically the scancode sequences for ADB are 16 bit. so there can actually
|
||
be 65536 scancodes, currently though only 128 are defined.</I>
|
||
<P>
|
||
<H2><A NAME="ss5.34">5.34 A keyboard treating PrtSc/SysRq like Pause/Break</A>
|
||
</H2>
|
||
|
||
<P>
|
||
<A NAME="mtek"></A>
|
||
Mike A. Harris <<CODE>mharris@meteng.on.ca</CODE>>
|
||
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 <B>e0</B> <B>2a</B> <B>e0</B> <B>37</B>
|
||
<B>e0</B> <B>b7</B> <B>e0</B> <B>aa</B> for PrtSc press,
|
||
and <B>54</B> <B>d4</B> for SysRq (i.e., Alt+PrtSc).)
|
||
Others have reported the same (for an unspecified type of keyboard).
|
||
<P>
|
||
<HR>
|
||
<A HREF="scancodes-6.html">Next</A>
|
||
<A HREF="scancodes-4.html">Previous</A>
|
||
<A HREF="scancodes.html#toc5">Contents</A>
|
||
</BODY>
|
||
</HTML>
|