#
# generated by qemu-keymap
#    model   : pc105
#    layout  : ch
#    variant : -
#    options : -

# name: "German (Switzerland)"

# modifiers
#     0: Shift
#     1: Lock
#     2: Control
#     3: Mod1
#     4: Mod2
#     5: Mod3
#     6: Mod4
#     7: Mod5
#     8: NumLock
#     9: Alt
#    10: LevelThree
#    11: LAlt
#    12: RAlt
#    13: RControl
#    14: LControl
#    15: ScrollLock
#    16: LevelFive
#    17: AltGr
#    18: Meta
#    19: Super
#    20: Hyper

# evdev 1 (0x1), QKeyCode "esc", number 0x1
Escape 0x01

# evdev 2 (0x2), QKeyCode "1", number 0x2
1 0x02
plus 0x02 shift
bar 0x02 altgr
exclamdown 0x02 shift altgr

# evdev 3 (0x3), QKeyCode "2", number 0x3
2 0x03
quotedbl 0x03 shift
at 0x03 altgr
oneeighth 0x03 shift altgr

# evdev 4 (0x4), QKeyCode "3", number 0x4
3 0x04
asterisk 0x04 shift
numbersign 0x04 altgr
sterling 0x04 shift altgr

# evdev 5 (0x5), QKeyCode "4", number 0x5
4 0x05
ccedilla 0x05 shift
onequarter 0x05 altgr
dollar 0x05 shift altgr

# evdev 6 (0x6), QKeyCode "5", number 0x6
5 0x06
percent 0x06 shift
onehalf 0x06 altgr
threeeighths 0x06 shift altgr

# evdev 7 (0x7), QKeyCode "6", number 0x7
6 0x07
ampersand 0x07 shift
notsign 0x07 altgr
fiveeighths 0x07 shift altgr

# evdev 8 (0x8), QKeyCode "7", number 0x8
7 0x08
slash 0x08 shift
bar 0x08 altgr
seveneighths 0x08 shift altgr

# evdev 9 (0x9), QKeyCode "8", number 0x9
8 0x09
parenleft 0x09 shift
cent 0x09 altgr
trademark 0x09 shift altgr

# evdev 10 (0xa), QKeyCode "9", number 0xa
9 0x0a
parenright 0x0a shift
bracketright 0x0a altgr
plusminus 0x0a shift altgr

# evdev 11 (0xb), QKeyCode "0", number 0xb
0 0x0b
equal 0x0b shift
braceright 0x0b altgr
degree 0x0b shift altgr

# evdev 12 (0xc), QKeyCode "minus", number 0xc
apostrophe 0x0c
question 0x0c shift
dead_acute 0x0c altgr
questiondown 0x0c shift altgr

# evdev 13 (0xd), QKeyCode "equal", number 0xd
dead_circumflex 0x0d
dead_grave 0x0d shift
dead_tilde 0x0d altgr
dead_ogonek 0x0d shift altgr

# evdev 14 (0xe), QKeyCode "backspace", number 0xe
BackSpace 0x0e

# evdev 15 (0xf), QKeyCode "tab", number 0xf
Tab 0x0f
ISO_Left_Tab 0x0f shift

# evdev 16 (0x10), QKeyCode "q", number 0x10
q 0x10
Q 0x10 shift
at 0x10 altgr
Greek_OMEGA 0x10 shift altgr

# evdev 17 (0x11), QKeyCode "w", number 0x11
w 0x11
W 0x11 shift
lstroke 0x11 altgr
Lstroke 0x11 shift altgr

# evdev 18 (0x12), QKeyCode "e", number 0x12
e 0x12
E 0x12 shift
EuroSign 0x12 altgr

# evdev 19 (0x13), QKeyCode "r", number 0x13
r 0x13
R 0x13 shift
paragraph 0x13 altgr
registered 0x13 shift altgr

# evdev 20 (0x14), QKeyCode "t", number 0x14
t 0x14
T 0x14 shift
tslash 0x14 altgr
Tslash 0x14 shift altgr

# evdev 21 (0x15), QKeyCode "y", number 0x15
z 0x15
Z 0x15 shift
leftarrow 0x15 altgr
yen 0x15 shift altgr

# evdev 22 (0x16), QKeyCode "u", number 0x16
u 0x16
U 0x16 shift
downarrow 0x16 altgr
uparrow 0x16 shift altgr

# evdev 23 (0x17), QKeyCode "i", number 0x17
i 0x17
I 0x17 shift
rightarrow 0x17 altgr
idotless 0x17 shift altgr

# evdev 24 (0x18), QKeyCode "o", number 0x18
o 0x18
O 0x18 shift
oe 0x18 altgr
OE 0x18 shift altgr

# evdev 25 (0x19), QKeyCode "p", number 0x19
p 0x19
P 0x19 shift
thorn 0x19 altgr
THORN 0x19 shift altgr

# evdev 26 (0x1a), QKeyCode "bracket_left", number 0x1a
udiaeresis 0x1a
egrave 0x1a shift
bracketleft 0x1a altgr
dead_abovering 0x1a shift altgr

# evdev 27 (0x1b), QKeyCode "bracket_right", number 0x1b
dead_diaeresis 0x1b
exclam 0x1b shift
bracketright 0x1b altgr
dead_macron 0x1b shift altgr

# evdev 28 (0x1c), QKeyCode "ret", number 0x1c
Return 0x1c

# evdev 29 (0x1d), QKeyCode "ctrl", number 0x1d
Control_L 0x1d

# evdev 30 (0x1e), QKeyCode "a", number 0x1e
a 0x1e
A 0x1e shift
ae 0x1e altgr
AE 0x1e shift altgr

# evdev 31 (0x1f), QKeyCode "s", number 0x1f
s 0x1f
S 0x1f shift
ssharp 0x1f altgr
section 0x1f shift altgr

# evdev 32 (0x20), QKeyCode "d", number 0x20
d 0x20
D 0x20 shift
eth 0x20 altgr
ETH 0x20 shift altgr

# evdev 33 (0x21), QKeyCode "f", number 0x21
f 0x21
F 0x21 shift
dstroke 0x21 altgr
ordfeminine 0x21 shift altgr

# evdev 34 (0x22), QKeyCode "g", number 0x22
g 0x22
G 0x22 shift
eng 0x22 altgr
ENG 0x22 shift altgr

# evdev 35 (0x23), QKeyCode "h", number 0x23
h 0x23
H 0x23 shift
hstroke 0x23 altgr
Hstroke 0x23 shift altgr

# evdev 36 (0x24), QKeyCode "j", number 0x24
j 0x24
J 0x24 shift
dead_hook 0x24 altgr
dead_horn 0x24 shift altgr

# evdev 37 (0x25), QKeyCode "k", number 0x25
k 0x25
K 0x25 shift
kra 0x25 altgr
ampersand 0x25 shift altgr

# evdev 38 (0x26), QKeyCode "l", number 0x26
l 0x26
L 0x26 shift
lstroke 0x26 altgr
Lstroke 0x26 shift altgr

# evdev 39 (0x27), QKeyCode "semicolon", number 0x27
odiaeresis 0x27
eacute 0x27 shift
dead_acute 0x27 altgr
dead_doubleacute 0x27 shift altgr

# evdev 40 (0x28), QKeyCode "apostrophe", number 0x28
adiaeresis 0x28
agrave 0x28 shift
braceleft 0x28 altgr
dead_caron 0x28 shift altgr

# evdev 41 (0x29), QKeyCode "grave_accent", number 0x29
section 0x29
degree 0x29 shift
notsign 0x29 altgr

# evdev 42 (0x2a), QKeyCode "shift", number 0x2a
Shift_L 0x2a

# evdev 43 (0x2b), QKeyCode "backslash", number 0x2b
dollar 0x2b
sterling 0x2b shift
braceright 0x2b altgr
dead_breve 0x2b shift altgr

# evdev 44 (0x2c), QKeyCode "z", number 0x2c
y 0x2c
Y 0x2c shift
guillemotleft 0x2c altgr
less 0x2c shift altgr

# evdev 45 (0x2d), QKeyCode "x", number 0x2d
x 0x2d
X 0x2d shift
guillemotright 0x2d altgr
greater 0x2d shift altgr

# evdev 46 (0x2e), QKeyCode "c", number 0x2e
c 0x2e
C 0x2e shift
cent 0x2e altgr
copyright 0x2e shift altgr

# evdev 47 (0x2f), QKeyCode "v", number 0x2f
v 0x2f
V 0x2f shift
leftdoublequotemark 0x2f altgr
leftsinglequotemark 0x2f shift altgr

# evdev 48 (0x30), QKeyCode "b", number 0x30
b 0x30
B 0x30 shift
rightdoublequotemark 0x30 altgr
rightsinglequotemark 0x30 shift altgr

# evdev 49 (0x31), QKeyCode "n", number 0x31
n 0x31
N 0x31 shift

# evdev 50 (0x32), QKeyCode "m", number 0x32
m 0x32
M 0x32 shift
mu 0x32 altgr
masculine 0x32 shift altgr

# evdev 51 (0x33), QKeyCode "comma", number 0x33
comma 0x33
semicolon 0x33 shift
horizconnector 0x33 altgr
multiply 0x33 shift altgr

# evdev 52 (0x34), QKeyCode "dot", number 0x34
period 0x34
colon 0x34 shift
periodcentered 0x34 altgr
division 0x34 shift altgr

# evdev 53 (0x35), QKeyCode "slash", number 0x35
minus 0x35
underscore 0x35 shift
dead_belowdot 0x35 altgr
dead_abovedot 0x35 shift altgr

# evdev 54 (0x36), QKeyCode "shift_r", number 0x36
Shift_R 0x36

# evdev 55 (0x37), QKeyCode "kp_multiply", number 0x37
KP_Multiply 0x37

# evdev 56 (0x38), QKeyCode "alt", number 0x38
Alt_L 0x38
Meta_L 0x38 shift

# evdev 57 (0x39), QKeyCode "spc", number 0x39
space 0x39

# evdev 58 (0x3a), QKeyCode "caps_lock", number 0x3a
Caps_Lock 0x3a

# evdev 59 (0x3b), QKeyCode "f1", number 0x3b
F1 0x3b

# evdev 60 (0x3c), QKeyCode "f2", number 0x3c
F2 0x3c

# evdev 61 (0x3d), QKeyCode "f3", number 0x3d
F3 0x3d

# evdev 62 (0x3e), QKeyCode "f4", number 0x3e
F4 0x3e

# evdev 63 (0x3f), QKeyCode "f5", number 0x3f
F5 0x3f

# evdev 64 (0x40), QKeyCode "f6", number 0x40
F6 0x40

# evdev 65 (0x41), QKeyCode "f7", number 0x41
F7 0x41

# evdev 66 (0x42), QKeyCode "f8", number 0x42
F8 0x42

# evdev 67 (0x43), QKeyCode "f9", number 0x43
F9 0x43

# evdev 68 (0x44), QKeyCode "f10", number 0x44
F10 0x44

# evdev 69 (0x45), QKeyCode "num_lock", number 0x45
Num_Lock 0x45

# evdev 70 (0x46), QKeyCode "scroll_lock", number 0x46
Scroll_Lock 0x46

# evdev 71 (0x47), QKeyCode "kp_7", number 0x47
KP_Home 0x47
KP_7 0x47 numlock

# evdev 72 (0x48), QKeyCode "kp_8", number 0x48
KP_Up 0x48
KP_8 0x48 numlock

# evdev 73 (0x49), QKeyCode "kp_9", number 0x49
KP_Prior 0x49
KP_9 0x49 numlock

# evdev 74 (0x4a), QKeyCode "kp_subtract", number 0x4a
KP_Subtract 0x4a

# evdev 75 (0x4b), QKeyCode "kp_4", number 0x4b
KP_Left 0x4b
KP_4 0x4b numlock

# evdev 76 (0x4c), QKeyCode "kp_5", number 0x4c
KP_Begin 0x4c
KP_5 0x4c numlock

# evdev 77 (0x4d), QKeyCode "kp_6", number 0x4d
KP_Right 0x4d
KP_6 0x4d numlock

# evdev 78 (0x4e), QKeyCode "kp_add", number 0x4e
KP_Add 0x4e

# evdev 79 (0x4f), QKeyCode "kp_1", number 0x4f
KP_End 0x4f
KP_1 0x4f numlock

# evdev 80 (0x50), QKeyCode "kp_2", number 0x50
KP_Down 0x50
KP_2 0x50 numlock

# evdev 81 (0x51), QKeyCode "kp_3", number 0x51
KP_Next 0x51
KP_3 0x51 numlock

# evdev 82 (0x52), QKeyCode "kp_0", number 0x52
KP_Insert 0x52
KP_0 0x52 numlock

# evdev 83 (0x53), QKeyCode "kp_decimal", number 0x53
KP_Delete 0x53
KP_Decimal 0x53 numlock

# evdev 84 (0x54): no evdev -> QKeyCode mapping (xkb keysym ISO_Level3_Shift)

# evdev 85 (0x55): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 86 (0x56), QKeyCode "less", number 0x56
less 0x56
greater 0x56 shift
backslash 0x56 altgr
brokenbar 0x56 shift altgr

# evdev 87 (0x57), QKeyCode "f11", number 0x57
F11 0x57

# evdev 88 (0x58), QKeyCode "f12", number 0x58
F12 0x58

# evdev 89 (0x59), QKeyCode "ro", number 0x73

# evdev 90 (0x5a): no evdev -> QKeyCode mapping (xkb keysym Katakana)

# evdev 91 (0x5b), QKeyCode "hiragana", number 0x77
Hiragana 0x77

# evdev 92 (0x5c), QKeyCode "henkan", number 0x79
Henkan_Mode 0x79

# evdev 93 (0x5d), QKeyCode "katakanahiragana", number 0x70
Hiragana_Katakana 0x70

# evdev 94 (0x5e), QKeyCode "muhenkan", number 0x7b
Muhenkan 0x7b

# evdev 95 (0x5f): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 96 (0x60), QKeyCode "kp_enter", number 0x9c
KP_Enter 0x9c

# evdev 97 (0x61), QKeyCode "ctrl_r", number 0x9d
Control_R 0x9d

# evdev 98 (0x62), QKeyCode "kp_divide", number 0xb5
KP_Divide 0xb5

# evdev 99 (0x63), QKeyCode "sysrq", number 0x54
Print 0x54

# evdev 100 (0x64), QKeyCode "alt_r", number 0xb8
ISO_Level3_Shift 0xb8

# evdev 101 (0x65), QKeyCode "lf", number 0x5b
Linefeed 0x5b

# evdev 102 (0x66), QKeyCode "home", number 0xc7
Home 0xc7

# evdev 103 (0x67), QKeyCode "up", number 0xc8
Up 0xc8

# evdev 104 (0x68), QKeyCode "pgup", number 0xc9
Prior 0xc9

# evdev 105 (0x69), QKeyCode "left", number 0xcb
Left 0xcb

# evdev 106 (0x6a), QKeyCode "right", number 0xcd
Right 0xcd

# evdev 107 (0x6b), QKeyCode "end", number 0xcf
End 0xcf

# evdev 108 (0x6c), QKeyCode "down", number 0xd0
Down 0xd0

# evdev 109 (0x6d), QKeyCode "pgdn", number 0xd1
Next 0xd1

# evdev 110 (0x6e), QKeyCode "insert", number 0xd2
Insert 0xd2

# evdev 111 (0x6f), QKeyCode "delete", number 0xd3
Delete 0xd3

# evdev 112 (0x70): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 113 (0x71), QKeyCode "audiomute", number 0xa0
XF86AudioMute 0xa0

# evdev 114 (0x72), QKeyCode "volumedown", number 0xae
XF86AudioLowerVolume 0xae

# evdev 115 (0x73), QKeyCode "volumeup", number 0xb0
XF86AudioRaiseVolume 0xb0

# evdev 116 (0x74), QKeyCode "power", number 0xde
XF86PowerOff 0xde

# evdev 117 (0x75), QKeyCode "kp_equals", number 0x59
KP_Equal 0x59

# evdev 118 (0x76): no evdev -> QKeyCode mapping (xkb keysym plusminus)

# evdev 119 (0x77), QKeyCode "pause", number 0xc6
Pause 0xc6

# evdev 120 (0x78): no evdev -> QKeyCode mapping (xkb keysym XF86LaunchA)

# evdev 121 (0x79), QKeyCode "kp_comma", number 0x7e
KP_Decimal 0x7e

# evdev 122 (0x7a): no evdev -> QKeyCode mapping (xkb keysym Hangul)

# evdev 123 (0x7b): no evdev -> QKeyCode mapping (xkb keysym Hangul_Hanja)

# evdev 124 (0x7c), QKeyCode "yen", number 0x7d

# evdev 125 (0x7d), QKeyCode "meta_l", number 0xdb
Super_L 0xdb

# evdev 126 (0x7e), QKeyCode "meta_r", number 0xdc
Super_R 0xdc

# evdev 127 (0x7f), QKeyCode "compose", number 0xdd
Menu 0xdd

# evdev 128 (0x80), QKeyCode "stop", number 0xe8
Cancel 0xe8

# evdev 129 (0x81), QKeyCode "again", number 0x85
Redo 0x85

# evdev 130 (0x82), QKeyCode "props", number 0x86
SunProps 0x86

# evdev 131 (0x83), QKeyCode "undo", number 0x87
Undo 0x87

# evdev 132 (0x84), QKeyCode "front", number 0x8c
SunFront 0x8c

# evdev 133 (0x85), QKeyCode "copy", number 0xf8
XF86Copy 0xf8

# evdev 134 (0x86), QKeyCode "open", number 0x64
XF86Open 0x64

# evdev 135 (0x87), QKeyCode "paste", number 0x65
XF86Paste 0x65

# evdev 136 (0x88), QKeyCode "find", number 0xc1
Find 0xc1

# evdev 137 (0x89), QKeyCode "cut", number 0xbc
XF86Cut 0xbc

# evdev 138 (0x8a), QKeyCode "help", number 0xf5
Help 0xf5

# evdev 139 (0x8b), QKeyCode "menu", number 0x9e
XF86MenuKB 0x9e

# evdev 140 (0x8c), QKeyCode "calculator", number 0xa1
XF86Calculator 0xa1

# evdev 141 (0x8d): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 142 (0x8e), QKeyCode "sleep", number 0xdf
XF86Sleep 0xdf

# evdev 143 (0x8f), QKeyCode "wake", number 0xe3
XF86WakeUp 0xe3

# evdev 144 (0x90): no evdev -> QKeyCode mapping (xkb keysym XF86Explorer)

# evdev 145 (0x91): no evdev -> QKeyCode mapping (xkb keysym XF86Send)

# evdev 146 (0x92): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 147 (0x93): no evdev -> QKeyCode mapping (xkb keysym XF86Xfer)

# evdev 148 (0x94): no evdev -> QKeyCode mapping (xkb keysym XF86Launch1)

# evdev 149 (0x95): no evdev -> QKeyCode mapping (xkb keysym XF86Launch2)

# evdev 150 (0x96): no evdev -> QKeyCode mapping (xkb keysym XF86WWW)

# evdev 151 (0x97): no evdev -> QKeyCode mapping (xkb keysym XF86DOS)

# evdev 152 (0x98): no evdev -> QKeyCode mapping (xkb keysym XF86ScreenSaver)

# evdev 153 (0x99): no evdev -> QKeyCode mapping (xkb keysym XF86RotateWindows)

# evdev 154 (0x9a): no evdev -> QKeyCode mapping (xkb keysym XF86TaskPane)

# evdev 155 (0x9b), QKeyCode "mail", number 0xec
XF86Mail 0xec

# evdev 156 (0x9c), QKeyCode "ac_bookmarks", number 0xe6
XF86Favorites 0xe6

# evdev 157 (0x9d), QKeyCode "computer", number 0xeb
XF86MyComputer 0xeb

# evdev 158 (0x9e), QKeyCode "ac_back", number 0xea
XF86Back 0xea

# evdev 159 (0x9f), QKeyCode "ac_forward", number 0xe9
XF86Forward 0xe9

# evdev 160 (0xa0): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 161 (0xa1): no evdev -> QKeyCode mapping (xkb keysym XF86Eject)

# evdev 162 (0xa2): no evdev -> QKeyCode mapping (xkb keysym XF86Eject)

# evdev 163 (0xa3), QKeyCode "audionext", number 0x99
XF86AudioNext 0x99

# evdev 164 (0xa4), QKeyCode "audioplay", number 0xa2
XF86AudioPlay 0xa2
XF86AudioPause 0xa2 shift

# evdev 165 (0xa5), QKeyCode "audioprev", number 0x90
XF86AudioPrev 0x90

# evdev 166 (0xa6), QKeyCode "audiostop", number 0xa4
XF86AudioStop 0xa4
XF86Eject 0xa4 shift

# evdev 167 (0xa7): no evdev -> QKeyCode mapping (xkb keysym XF86AudioRecord)

# evdev 168 (0xa8): no evdev -> QKeyCode mapping (xkb keysym XF86AudioRewind)

# evdev 169 (0xa9): no evdev -> QKeyCode mapping (xkb keysym XF86Phone)

# evdev 170 (0xaa): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 171 (0xab): no evdev -> QKeyCode mapping (xkb keysym XF86Tools)

# evdev 172 (0xac), QKeyCode "ac_home", number 0xb2
XF86HomePage 0xb2

# evdev 173 (0xad), QKeyCode "ac_refresh", number 0xe7
XF86Reload 0xe7

# evdev 174 (0xae): no evdev -> QKeyCode mapping (xkb keysym XF86Close)

# evdev 175 (0xaf): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 176 (0xb0): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 177 (0xb1): no evdev -> QKeyCode mapping (xkb keysym XF86ScrollUp)

# evdev 178 (0xb2): no evdev -> QKeyCode mapping (xkb keysym XF86ScrollDown)

# evdev 179 (0xb3): no evdev -> QKeyCode mapping (xkb keysym parenleft)

# evdev 180 (0xb4): no evdev -> QKeyCode mapping (xkb keysym parenright)

# evdev 181 (0xb5): no evdev -> QKeyCode mapping (xkb keysym XF86New)

# evdev 182 (0xb6): no evdev -> QKeyCode mapping (xkb keysym Redo)

# evdev 183 (0xb7): no evdev -> QKeyCode mapping (xkb keysym XF86Tools)

# evdev 184 (0xb8): no evdev -> QKeyCode mapping (xkb keysym XF86Launch5)

# evdev 185 (0xb9): no evdev -> QKeyCode mapping (xkb keysym XF86Launch6)

# evdev 186 (0xba): no evdev -> QKeyCode mapping (xkb keysym XF86Launch7)

# evdev 187 (0xbb): no evdev -> QKeyCode mapping (xkb keysym XF86Launch8)

# evdev 188 (0xbc): no evdev -> QKeyCode mapping (xkb keysym XF86Launch9)

# evdev 189 (0xbd): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 190 (0xbe): no evdev -> QKeyCode mapping (xkb keysym XF86AudioMicMute)

# evdev 191 (0xbf): no evdev -> QKeyCode mapping (xkb keysym XF86TouchpadToggle)

# evdev 192 (0xc0): no evdev -> QKeyCode mapping (xkb keysym XF86TouchpadOn)

# evdev 193 (0xc1): no evdev -> QKeyCode mapping (xkb keysym XF86TouchpadOff)

# evdev 194 (0xc2): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 195 (0xc3): no evdev -> QKeyCode mapping (xkb keysym Mode_switch)

# evdev 196 (0xc4): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 197 (0xc5): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 198 (0xc6): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 199 (0xc7): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 200 (0xc8): no evdev -> QKeyCode mapping (xkb keysym XF86AudioPlay)

# evdev 201 (0xc9): no evdev -> QKeyCode mapping (xkb keysym XF86AudioPause)

# evdev 202 (0xca): no evdev -> QKeyCode mapping (xkb keysym XF86Launch3)

# evdev 203 (0xcb): no evdev -> QKeyCode mapping (xkb keysym XF86Launch4)

# evdev 204 (0xcc): no evdev -> QKeyCode mapping (xkb keysym XF86LaunchB)

# evdev 205 (0xcd): no evdev -> QKeyCode mapping (xkb keysym XF86Suspend)

# evdev 206 (0xce): no evdev -> QKeyCode mapping (xkb keysym XF86Close)

# evdev 207 (0xcf): no evdev -> QKeyCode mapping (xkb keysym XF86AudioPlay)

# evdev 208 (0xd0): no evdev -> QKeyCode mapping (xkb keysym XF86AudioForward)

# evdev 209 (0xd1): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 210 (0xd2): no evdev -> QKeyCode mapping (xkb keysym Print)

# evdev 211 (0xd3): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 212 (0xd4): no evdev -> QKeyCode mapping (xkb keysym XF86WebCam)

# evdev 213 (0xd5): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 214 (0xd6): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 215 (0xd7): no evdev -> QKeyCode mapping (xkb keysym XF86Mail)

# evdev 216 (0xd8): no evdev -> QKeyCode mapping (xkb keysym XF86Messenger)

# evdev 217 (0xd9): no evdev -> QKeyCode mapping (xkb keysym XF86Search)

# evdev 218 (0xda): no evdev -> QKeyCode mapping (xkb keysym XF86Go)

# evdev 219 (0xdb): no evdev -> QKeyCode mapping (xkb keysym XF86Finance)

# evdev 220 (0xdc): no evdev -> QKeyCode mapping (xkb keysym XF86Game)

# evdev 221 (0xdd): no evdev -> QKeyCode mapping (xkb keysym XF86Shop)

# evdev 222 (0xde): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 223 (0xdf): no evdev -> QKeyCode mapping (xkb keysym Cancel)

# evdev 224 (0xe0): no evdev -> QKeyCode mapping (xkb keysym XF86MonBrightnessDown)

# evdev 225 (0xe1): no evdev -> QKeyCode mapping (xkb keysym XF86MonBrightnessUp)

# evdev 226 (0xe2), QKeyCode "mediaselect", number 0xed
XF86AudioMedia 0xed

# evdev 227 (0xe3): no evdev -> QKeyCode mapping (xkb keysym XF86Display)

# evdev 228 (0xe4): no evdev -> QKeyCode mapping (xkb keysym XF86KbdLightOnOff)

# evdev 229 (0xe5): no evdev -> QKeyCode mapping (xkb keysym XF86KbdBrightnessDown)

# evdev 230 (0xe6): no evdev -> QKeyCode mapping (xkb keysym XF86KbdBrightnessUp)

# evdev 231 (0xe7): no evdev -> QKeyCode mapping (xkb keysym XF86Send)

# evdev 232 (0xe8): no evdev -> QKeyCode mapping (xkb keysym XF86Reply)

# evdev 233 (0xe9): no evdev -> QKeyCode mapping (xkb keysym XF86MailForward)

# evdev 234 (0xea): no evdev -> QKeyCode mapping (xkb keysym XF86Save)

# evdev 235 (0xeb): no evdev -> QKeyCode mapping (xkb keysym XF86Documents)

# evdev 236 (0xec): no evdev -> QKeyCode mapping (xkb keysym XF86Battery)

# evdev 237 (0xed): no evdev -> QKeyCode mapping (xkb keysym XF86Bluetooth)

# evdev 238 (0xee): no evdev -> QKeyCode mapping (xkb keysym XF86WLAN)

# evdev 239 (0xef): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 240 (0xf0): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 241 (0xf1): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 242 (0xf2): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 243 (0xf3): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 244 (0xf4): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 245 (0xf5): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 246 (0xf6): no evdev -> QKeyCode mapping (xkb keysym XF86WWAN)

# evdev 247 (0xf7): no evdev -> QKeyCode mapping (xkb keysym XF86RFKill)

# evdev 248 (0xf8): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 249 (0xf9): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 250 (0xfa): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 251 (0xfb): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 252 (0xfc): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 253 (0xfd): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 254 (0xfe): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 255 (0xff): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 256 (0x100): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 257 (0x101): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 258 (0x102): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 259 (0x103): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 260 (0x104): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 261 (0x105): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 262 (0x106): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 263 (0x107): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 264 (0x108): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 265 (0x109): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 266 (0x10a): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 267 (0x10b): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 268 (0x10c): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 269 (0x10d): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 270 (0x10e): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 271 (0x10f): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 272 (0x110): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 273 (0x111): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 274 (0x112): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 275 (0x113): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 276 (0x114): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 277 (0x115): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 278 (0x116): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 279 (0x117): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 280 (0x118): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 281 (0x119): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 282 (0x11a): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 283 (0x11b): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 284 (0x11c): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 285 (0x11d): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 286 (0x11e): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 287 (0x11f): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 288 (0x120): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 289 (0x121): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 290 (0x122): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 291 (0x123): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 292 (0x124): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 293 (0x125): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 294 (0x126): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 295 (0x127): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 296 (0x128): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 297 (0x129): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 298 (0x12a): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 299 (0x12b): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 300 (0x12c): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 301 (0x12d): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 302 (0x12e): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 303 (0x12f): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 304 (0x130): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 305 (0x131): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 306 (0x132): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 307 (0x133): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 308 (0x134): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 309 (0x135): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 310 (0x136): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 311 (0x137): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 312 (0x138): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 313 (0x139): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 314 (0x13a): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 315 (0x13b): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 316 (0x13c): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 317 (0x13d): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 318 (0x13e): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 319 (0x13f): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 320 (0x140): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 321 (0x141): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 322 (0x142): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 323 (0x143): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 324 (0x144): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 325 (0x145): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 326 (0x146): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 327 (0x147): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 328 (0x148): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 329 (0x149): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 330 (0x14a): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 331 (0x14b): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 332 (0x14c): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 333 (0x14d): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 334 (0x14e): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 335 (0x14f): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 336 (0x150): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 337 (0x151): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 338 (0x152): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 339 (0x153): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 340 (0x154): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 341 (0x155): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 342 (0x156): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 343 (0x157): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 344 (0x158): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 345 (0x159): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 346 (0x15a): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 347 (0x15b): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 348 (0x15c): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 349 (0x15d): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 350 (0x15e): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 351 (0x15f): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 352 (0x160): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 353 (0x161): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 354 (0x162): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 355 (0x163): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 356 (0x164): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 357 (0x165): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 358 (0x166): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 359 (0x167): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 360 (0x168): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 361 (0x169): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 362 (0x16a): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 363 (0x16b): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 364 (0x16c): no evdev -> QKeyCode mapping (xkb keysym XF86Favorites)

# evdev 365 (0x16d): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)

# evdev 366 (0x16e): no evdev -> QKeyCode mapping (xkb keysym XF86Keyboard)

#
# quirks section start
#
# Sometimes multiple keysyms map to the same keycodes.
# The keycode -> keysym lookup finds only one of the
# keysyms.  So append them here.
#

Print 0x54
Sys_Req 0x54
Execute 0x54
KP_Decimal 0x53 numlock
KP_Separator 0x53 numlock
Alt_R 0xb8
ISO_Level3_Shift 0xb8
Mode_switch 0xb8

# quirks section end
