aboutsummaryrefslogtreecommitdiffstats
path: root/doc
diff options
context:
space:
mode:
Diffstat (limited to 'doc')
-rw-r--r--doc/info/mds.texinfo153
-rw-r--r--doc/keycodes108
2 files changed, 153 insertions, 108 deletions
diff --git a/doc/info/mds.texinfo b/doc/info/mds.texinfo
index 6a25575..fdc169f 100644
--- a/doc/info/mds.texinfo
+++ b/doc/info/mds.texinfo
@@ -59,6 +59,7 @@ Texts. A copy of the license is included in the section entitled
* Protocols:: @command{mds} procotols.
* libmdsserver:: Overview of @command{libmdsserver}.
* mds-base:: Overview of @command{mds-base}.
+* Keyboard Codes:: Scancodes and keycodes.
* GNU Free Documentation License:: Copying and sharing this manual.
@end menu
@@ -4335,6 +4336,158 @@ This setting will be treated as set to zero if
+@node Keyboard Codes
+@chapter Keyboard Codes
+
+Keyboard servers receive scancodes from keyboard
+drivers. A scancode can either be comprised of
+one byte or three bytes. In each byte, the most
+significant bit (assuming unsigned bytes) is
+ignore, however for it first byte in the scancode
+it signifies whether the key was released: it is
+set of the key is released, and not set if the key
+was pressed or is being held down.
+
+A scancode is comprised of three bytes if the lower
+7-bits of the first byte is are all cleared, and the
+highest bit in the two following bytes are set.
+
+Ignoring the most significant bit in all bytes, the
+keycode is the value of the byte if the scancode
+is a single byte scancode. If the scancode is comprised
+of three bytes, the first byte is ignored and the
+keycode is @math{a \cdot 128 + b} where @math{a} is the
+value of the second byte and @math{b} is the value
+of the third byte.
+
+
+
+@node 105-keys keycodes
+@section 105-keys keycodes
+
+This is a list of keyboards for the
+105-keys keyboards, using QWERTY-layout
+for reference.
+
+@table @asis
+@item @code{1}
+@kbd{Escape} key
+@item @code{2}--@code{11}
+Keys: @kbd{1}, @kbd{2}, @kbd{3}, @kbd{4}, @kbd{5}, @kbd{6}, @kbd{7}, @kbd{8}, @kbd{9}, @kbd{0}
+@item @code{12}
+Key right of @kbd{0}.
+@item @code{13}
+Key left of @kbd{backspace}
+@item @code{14}
+@kbd{Backspace} key
+@item @code{15}
+Tab key
+@item @code{16}--@code{25}
+Keys: @kbd{q}, @kbd{w}, @kbd{e}, @kbd{r}, @kbd{t}, @kbd{y}, @kbd{u}, @kbd{i}, @kbd{o}, @kbd{p}
+@item @code{26}
+Key right of @kbd{p}, once removed
+@item @code{27}
+Key right of @kbd{p}, twice removed
+@item @code{28}
+@kbd{Return} key
+@item @code{29}
+Left @kbd{control} key
+@item @code{30}--@code{38}
+Keys: @kbd{a}, @kbd{s}, @kbd{d}, @kbd{f}, @kbd{g}, @kbd{h}, @kbd{j}, @kbd{k}, @kbd{l}
+@item @code{39}
+Key right of @kbd{l}, once removed
+@item @code{40}
+Key right of @kbd{l}, twice removed
+@item @code{41}
+Key left of @kbd{1}
+@item @code{42}
+Left @kbd{shift} key
+@item @code{43}
+Key right of @kbd{l}, three times removed
+@item @code{44}--@code{50}
+Keys: @kbd{z}, @kbd{x}, @kbd{c}, @kbd{v}, @kbd{b}, @kbd{n}, @kbd{m}
+@item @code{51}
+Key right of @kbd{m}, once removed
+@item @code{52}
+Key right of @kbd{m}, twice removed
+@item @code{53}
+Key right of @kbd{m}, three times removed
+@item @code{54}
+Right @kbd{shift} key
+@item @code{55}
+@kbd{Multiply} key on the keypad
+@item @code{56}
+@kbd{Alternative} key
+@item @code{57}
+@kbd{Space} key
+@item @code{58}
+@kbd{Caps lock} key
+@item @code{59}--@code{68}
+Keys: @kbd{F1} through @kbd{F10}
+@item @code{69}
+@kbd{Num lock} key
+@item @code{70}
+@kbd{Scroll lock} key
+@item @code{71}--@code{73}
+@kbd{7}, @kbd{8}, @kbd{9} keys on the keypad
+@item @code{74}
+@kbd{Minus} key on the keypad
+@item @code{75}--@code{77}
+@kbd{4}, @kbd{5}, @kbd{6} keys on the keypad
+@item @code{78}
+@kbd{Plus} key on the keypad
+@item @code{79}--@code{82}
+@kbd{1}, @kbd{2}, @kbd{3}, @kbd{0} keys on the keypad
+@item @code{83}
+@kbd{Comma} key on the keypad
+@item @code{86}
+Key left of @kbd{z}
+@item @code{87}
+@kbd{F11} key
+@item @code{88}
+@kbd{F12} key
+@item @code{96}
+@kbd{Return} key on the keypad
+@item @code{97}
+Right @kbd{control} key
+@item @code{98}
+@kbd{Divide} key on the keypad
+@item @code{99}
+@kbd{System Request/Print Screen} key
+@item @code{100}
+@kbd{Alternative graphic} key
+@item @code{102}
+@kbd{Home} key
+@item @code{103}
+@kbd{Up} arrow key
+@item @code{104}
+@kbd{Page up} key
+@item @code{105}
+@kbd{Left} arrow key
+@item @code{106}
+@kbd{Right} arrow key
+@item @code{107}
+@kbd{End} key
+@item @code{108}
+@kbd{Down} arrow key
+@item @code{109}
+@kbd{Page down} down
+@item @code{110}
+@kbd{Insert} key
+@item @code{111}
+@kbd{Delete} key
+@item @code{119}
+@kbd{Pause/Break} key
+@item @code{125}
+Left @kbd{super} key
+@item @code{126}
+Right @kbd{super} key
+@item @code{127}
+@kbd{Application menu} key
+@end table
+
+
+
@node GNU Free Documentation License
@appendix GNU Free Documentation License
@include fdl.texinfo
diff --git a/doc/keycodes b/doc/keycodes
deleted file mode 100644
index f978415..0000000
--- a/doc/keycodes
+++ /dev/null
@@ -1,108 +0,0 @@
-:: 105-keys (qwerty)
-
-1 :: escape
-2 :: 1
-3 :: 2
-4 :: 3
-5 :: 4
-6 :: 5
-7 :: 6
-8 :: 7
-9 :: 8
-10 :: 9
-11 :: 0
-12 :: right of 0
-13 :: left of backspace
-14 :: backspace
-15 :: tab
-16 :: q
-17 :: w
-18 :: e
-19 :: r
-20 :: t
-21 :: y
-22 :: u
-23 :: i
-24 :: o
-25 :: p
-26 :: right of p, once removed
-27 :: right of p, twice removed
-28 :: return
-29 :: left control
-30 :: a
-31 :: s
-32 :: d
-33 :: f
-34 :: g
-35 :: h
-36 :: j
-37 :: k
-38 :: l
-39 :: right of l, once removed
-40 :: right of l, twice removed
-41 :: left of 1
-42 :: left shift
-43 :: right of l, three times removed
-44 :: z
-45 :: x
-46 :: c
-47 :: v
-48 :: b
-49 :: n
-50 :: m
-51 :: right of m, once removed
-52 :: right of m, twice removed
-53 :: right of m, three times removed
-54 :: right shift
-55 :: #multiply
-56 :: alternative
-57 :: space
-58 :: caps
-59 :: f1
-60 :: f2
-61 :: f3
-62 :: f4
-63 :: f5
-64 :: f6
-65 :: f7
-66 :: f8
-67 :: f9
-68 :: f10
-69 :: num
-70 :: scroll
-71 :: #7
-72 :: #8
-73 :: #9
-74 :: #minus
-75 :: #4
-76 :: #5
-77 :: #6
-78 :: #plus
-79 :: #1
-80 :: #2
-81 :: #3
-82 :: #0
-83 :: #comma
-86 :: left of z
-87 :: f11
-88 :: f12
-96 :: #return
-97 :: right control
-98 :: #divide
-99 :: sysrq
-100 :: alternative graphic
-102 :: home
-103 :: up
-104 :: page up
-105 :: left
-106 :: right
-107 :: end
-108 :: down
-109 :: page down
-110 :: insert
-111 :: delete
-119 :: break
-125 :: left super
-126 :: right super
-127 :: application menu
-