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

# name: "Portuguese"

# 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
exclam 0x02 shift
onesuperior 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
numbersign 0x04 shift
sterling 0x04 altgr

# evdev 5 (0x5), QKeyCode "4", number 0x5
4 0x05
dollar 0x05 shift
section 0x05 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
braceleft 0x08 altgr
seveneighths 0x08 shift altgr

# evdev 9 (0x9), QKeyCode "8", number 0x9
8 0x09
parenleft 0x09 shift
bracketleft 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
backslash 0x0c altgr
questiondown 0x0c shift altgr

# evdev 13 (0xd), QKeyCode "equal", number 0xd
guillemotleft 0x0d
guillemotright 0x0d shift
dead_cedilla 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
cent 0x12 shift 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
y 0x15
Y 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
oslash 0x18 altgr
Oslash 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
plus 0x1a
asterisk 0x1a shift
dead_diaeresis 0x1a altgr
dead_abovering 0x1a shift altgr

# evdev 27 (0x1b), QKeyCode "bracket_right", number 0x1b
dead_acute 0x1b
dead_grave 0x1b shift
dead_tilde 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
ccedilla 0x27
Ccedilla 0x27 shift
dead_acute 0x27 altgr
dead_doubleacute 0x27 shift altgr

# evdev 40 (0x28), QKeyCode "apostrophe", number 0x28
masculine 0x28
ordfeminine 0x28 shift
dead_circumflex 0x28 altgr
dead_caron 0x28 shift altgr

# evdev 41 (0x29), QKeyCode "grave_accent", number 0x29
backslash 0x29
bar 0x29 shift
notsign 0x29 altgr

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

# evdev 43 (0x2b), QKeyCode "backslash", number 0x2b
dead_tilde 0x2b
dead_circumflex 0x2b shift
dead_grave 0x2b altgr
dead_breve 0x2b shift altgr

# evdev 44 (0x2c), QKeyCode "z", number 0x2c
z 0x2c
Z 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

# 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): no evdev -> QKeyCode mapping (xkb keysym Hiragana_Katakana)

# evdev 94 (0x5e): no evdev -> QKeyCode mapping (xkb keysym Muhenkan)

# 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)

#
# 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
