Files
libretro/bios/Other/c64-emu/PLUS4/gtk3_sym.vkm
T

355 lines
8.5 KiB
Plaintext

# VICE keyboard mapping file
#
# A Keyboard map is read in as patch to the current map.
#
# File format:
# - comment lines start with '#'
# - keyword lines start with '!keyword'
# - normal lines have 'keysym/scancode row column shiftflag'
#
# Keywords and their lines are:
# '!CLEAR' clear whole table
# '!INCLUDE filename' read file as mapping file
# '!LSHIFT row col' left shift keyboard row/column
# '!RSHIFT row col' right shift keyboard row/column
# '!VSHIFT shiftkey' virtual shift key (RSHIFT or LSHIFT)
# '!SHIFTL shiftkey' shift lock key (RSHIFT or LSHIFT)
# for emulated keyboards that have only one shift key, set both LSHIFT
# and RSHIFT to the same row/col and use RSHIFT for VSHIFT and SHIFTL.
# '!LCTRL row col' left control keyboard row/column
# '!VCTRL ctrlkey' virtual control key (LCTRL)
# '!LCBM row col' left CBM keyboard row/column
# '!VCBM cbmkey' virtual CBM key (LCBM)
# '!UNDEF keysym' remove keysym from table
#
# Shiftflag can have these values, flags can be ORed to combine them:
# 0x0000 0 key is not shifted for this keysym/scancode
# 0x0001 1 key is combined with shift for this keysym/scancode
# 0x0002 2 key is left shift on emulated machine
# 0x0004 4 key is right shift on emulated machine (use only this one
# for emulated keyboards that have only one shift key)
# 0x0008 8 key can be shifted or not with this keysym/scancode
# 0x0010 16 deshift key for this keysym/scancode
# 0x0020 32 another definition for this keysym/scancode follows
# 0x0040 64 key is shift-lock on emulated machine
# 0x0080 128 shift modifier required on host
# 0x0100 256 key is used for an alternative keyboard mapping, e.g. C64 mode in x128
# 0x0200 512 alt-r (alt-gr) modifier required on host
# 0x0400 1024 ctrl modifier required on host
# 0x0800 2048 key is combined with cbm for this keysym/scancode
# 0x1000 4096 key is combined with ctrl for this keysym/scancode
# 0x2000 8192 key is (left) cbm on emulated machine
# 0x4000 16384 key is (left) ctrl on emulated machine
#
# Negative row values:
# 'keysym -1 n' joystick keymap A, direction n
# 'keysym -2 n' joystick keymap B, direction n
# 'keysym -3 0' first RESTORE key
# 'keysym -3 1' second RESTORE key
# 'keysym -4 0' 40/80 column key (x128)
# 'keysym -4 1' CAPS (ASCII/DIN) key (x128)
# 'keysym -5 n' joyport keypad, key n (not supported in x128)
#
# Joystick direction values:
# 0 Fire
# 1 South/West
# 2 South
# 3 South/East
# 4 West
# 5 East
# 6 North/West
# 7 North
# 8 North/East
#
# Joyport keypad key layout:
# --------------------------
# | 0 | 1 | 2 | 3 | 4 |
# --------------------------
# | 5 | 6 | 7 | 8 | 9 |
# --------------------------
# | 10 | 11 | 12 | 13 | 14 |
# --------------------------
# | 15 | 16 | 17 | 18 | 19 |
# --------------------------
#
# When a bigger spaced key is used,
# it uses the upper left most key value.
# Symbolic Mapping, US Layout, Plus4, GTK
# Commodore 16/116/Plus-4 keyboard matrix:
#
# 0 1 2 3 4 5 6 7
# +--------+--------+--------+--------+--------+--------+--------+--------+
# 0 |INST/DEL|RETURN |POUND |F7/HELP |F4/F1 |F5/F2 |F6/F3 |@ |
# +--------+--------+--------+--------+--------+--------+--------+--------+
# 1 |3 # |W |A |4 $ |Z |S |E | SHIFTs |
# +--------+--------+--------+--------+--------+--------+--------+--------+
# 2 |5 % |R |D |6 & |C |F |T |X |
# +--------+--------+--------+--------+--------+--------+--------+--------+
# 3 |7 ' |Y |G |8 ( |B |H |U |V |
# +--------+--------+--------+--------+--------+--------+--------+--------+
# 4 |9 ) |I |J |0 ^ |M |K |O |N |
# +--------+--------+--------+--------+--------+--------+--------+--------+
# 5 |DOWN |P |L |UP |. > |: [ |- |, < |
# +--------+--------+--------+--------+--------+--------+--------+--------+
# 6 |LEFT |* |; ] |RIGHT |ESC |= |+ |/ ? |
# +--------+--------+--------+--------+--------+--------+--------+--------+
# 7 |1 ! |CLR/HOME| CTRLs |2 " |SPACE |CBM |Q |RUN/STOP|
# +--------+--------+--------+--------+--------+--------+--------+--------+
# C16 keyboard layout:
#
# ESC 1! 2" 3# 4$ 5% 6& 7' 8( 9) 0^ left right up down del f1/f4
# CTRL q w e r t y u i o p @ + - clr f2/f5
# r/s SL a s d f g h j k l :[ ;] * return f3/f6
# CBM LS z x c v b n m ,< .> /? RS pound =/pi help/f7
# space
#
# Plus4 keyboard layout:
#
# F1/4 F2/5 F3/6 Help/F7
#
# ESC 1! 2" 3# 4$ 5% 6& 7' 8( 9) 0^ + - =/pi clr del
# CTRL q w e r t y u i o p @ pound * ctrl
# r/s SL a s d f g h j k l :[ ;] return
# CBM LS z x c v b n m ,< .> /? RS up
# space left right
# down
# C116 keyboard layout:
#
# F1/4 F2/5 F3/6 Help/F7 home/clr del/inst
#
# ESC 1! 2" 3# 4$ 5% 6& 7' 8( 9) 0^ + - *
# CTRL q w e r t y u i o p @ return
# r/s £ a s d f g h j k l :[ ;] =/pi up
# CBM LS z x c v b n m ,< .> /? RS left right
# space down
#
!CLEAR
!LSHIFT 1 7
!RSHIFT 1 7
!VSHIFT RSHIFT
!SHIFTL RSHIFT
!LCBM 7 5
!VCBM LCBM
!LCTRL 7 2
!VCTRL LCTRL
# Keys that aren't mapped symbolically:
#
# accent grave
# tilde
# arrow-left (<- `)
# Pi (<- ~)
# Pound Sterling (<- \)
# Clear (<- Shift+Home)
# Run/Stop (<- End)
# C= (<- Tab)
# Extra keys:
#
# Inst+Shift (<- Insert)
# Del (<- Delete)
# £ (<- PgUp)
#####################
# Tab = CBM
Tab 7 5 8200
# Shift + Tab = Shift-CBM
ISO_Left_Tab 7 5 8200
# Control_L = Control
Control_L 7 2 16392
# Backspace = Inst/Del
BackSpace 0 0 8
# Caps Lock = Shift Lock
Caps_Lock 1 7 64
Delete 0 0 8
Insert 0 0 1
Down 5 0 8
# End -> Run/Stop
End 7 7 8
Escape 6 4 8
F1 0 4 8
F2 0 5 8
F3 0 6 8
F4 0 4 1
F5 0 5 1
F6 0 6 1
F7 0 3 1
# F8 = HELP
F8 0 3 8
# Home = Clear/Home
Home 7 1 8
#Insert 0 0 1
Left 6 0 8
Return 0 1 8
Right 6 3 8
Shift_L 1 7 4
Shift_R 1 7 4
Caps_Lock 1 7 64
Up 5 3 8
# PgUp = Pound Sterling
Page_Up 0 2 8
ampersand 2 3 1
apostrophe 3 0 1
#asciicircum 4 3 1
asterisk 6 1 16
# @ sign
at 0 7 16
# \ = Pound Sterling
backslash 0 2 8
# | = Shift-minus
bar 5 6 1
# { -> CBM-W graphic
braceleft 1 1 2064
# } -> CBM-Q graphic
braceright 7 6 2064
bracketleft 5 5 1
bracketright 6 2 1
colon 5 5 16
comma 5 7 8
dollar 1 3 1
equal 6 5 8
End 6 5 1
# page down -> arrow up
# page down+shift -> pi
# arrow up - 0
Page_Down 4 3 0x021
# = , arrow left, pi
Page_Down 6 5 0x890
exclam 7 0 1
# ~(+shift) -> left-arrow
asciitilde 6 5 0x1
# ~(+shift) -> left-arrow
dead_perispomeni 6 5 1
dead_tilde 6 5 1
# ` -> '
grave 3 0 1
# ` -> '
dead_grave 3 0 1
greater 5 4 1
less 5 7 1
minus 5 6 8
numbersign 1 0 1
parenleft 3 3 1
parenright 4 0 1
percent 2 0 1
period 5 4 8
plus 6 6 16
question 6 7 1
quotedbl 7 3 1
semicolon 6 2 8
slash 6 7 0
space 7 4 8
sterling 0 2 8
# underscore -> CBM-@ graphic
underscore 0 7 2064
# Dead keys support for those using US-International keyboard layout.
dead_acute 3 0 1 # '
dead_circumflex 4 3 8 # arrow up
dead_diaeresis 7 3 1 # "
0 4 3 8
1 7 0 8
2 7 3 8
3 1 0 8
4 1 3 8
5 2 0 8
6 2 3 8
7 3 0 0
8 3 3 8
9 4 0 8
A 1 2 8
B 3 4 8
C 2 4 8
D 2 2 8
E 1 6 8
F 2 5 8
G 3 2 8
H 3 5 8
I 4 1 8
J 4 2 8
K 4 5 8
L 5 2 8
M 4 4 8
N 4 7 8
O 4 6 8
P 5 1 8
Q 7 6 8
R 2 1 8
S 1 5 8
T 2 6 8
U 3 6 8
V 3 7 8
W 1 1 8
X 2 7 8
Y 3 1 8
Z 1 4 8
a 1 2 8
b 3 4 8
c 2 4 8
d 2 2 8
e 1 6 8
f 2 5 8
g 3 2 8
h 3 5 8
i 4 1 8
j 4 2 8
k 4 5 8
l 5 2 8
m 4 4 8
n 4 7 8
o 4 6 8
p 5 1 8
q 7 6 8
r 2 1 8
s 1 5 8
t 2 6 8
u 3 6 8
v 3 7 8
w 1 1 8
x 2 7 8
y 3 1 8
z 1 4 8
# Restore-key mappings
#Page_Up -3 0
#Prior -3 1
Page_Up 6 4 8
F12 6 4 8
#
# joyport attached keypad
#
Num_Lock -5 0
KP_7 -5 1
KP_8 -5 2
KP_9 -5 3
KP_Divide -5 4
Scroll_Lock -5 5
KP_4 -5 6
KP_5 -5 7
KP_6 -5 8
KP_Multiply -5 9
Sys_Req -5 10
KP_1 -5 11
KP_2 -5 12
KP_3 -5 13
KP_Subtract -5 14
Print -5 15
KP_0 -5 16
KP_Delete -5 17
KP_Enter -5 18
KP_Add -5 19