# 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 line has '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) # '!UNDEF keysym' remove keysym from table # # Shiftflag can have the values: # 0 key is not shifted for this keysym/scancode # 1 key is shifted for this keysym/scancode # 2 left shift # 4 right shift # 8 key can be shifted or not with this keysym/scancode # 16 deshift key for this keysym/scancode # 32 another definition for this keysym/scancode follows # 64 shift lock # 256 key is used for an alternative keyboard mapping # # When a bigger spaced key is used, # it uses the upper left most key value. # # 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 |= <- pi |+ |/ ? | # +--------+--------+--------+--------+--------+--------+--------+--------+ # 7 |1 ! |CLR/HOME| CTRLs |2 " |SPACE |CBM |Q |RUN/STOP| # +--------+--------+--------+--------+--------+--------+--------+--------+ # # 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 !CLEAR !LSHIFT 1 7 !RSHIFT 1 7 !VSHIFT RSHIFT Escape 7 7 8 /* ESC -> Run/Stop */ 1 7 0 8 /* 1 -> 1 */ 2 7 3 32 /* 2 -> 2 */ 2 7 3 1 /* " -> " */ 3 1 0 8 /* 3 -> 3 */ 4 1 3 8 /* 4 -> 4 */ 5 2 0 8 /* 5 -> 5 */ 6 2 3 32 /* 6 -> 6 */ 6 2 3 1 /* & -> & */ 7 3 0 32 /* 7 -> 7 */ 7 3 0 1 /* ' -> ' */ 8 3 3 32 /* 8 -> 8 */ 8 3 3 1 /* ( -> ( */ 9 4 0 32 /* 9 -> 9 */ 9 4 0 1 /* ) -> ) */ 0 4 3 32 /* 0 -> 0 */ 0 4 3 1 /* ^ -> ^ */ = 6 5 1 /* = -> = */ + 6 6 1 /* + -> + */ - 5 6 8 /* Minus -> Minus */ #Dash 5 6 8 /* Minus -> Minus */ #Pound 6 5 32 /* = -> = */ BackSpace 0 0 8 /* Backspace -> DEL */ Control_L 7 5 8 /* Cntrl -> CBM */ q 7 6 8 /* Q -> Q */ w 1 1 8 /* W -> W */ e 1 6 8 /* E -> E */ r 2 1 8 /* R -> R */ t 2 6 8 /* T -> T */ y 3 1 8 /* Y -> Y */ u 3 6 8 /* U -> U */ i 4 1 8 /* I -> I */ o 4 6 8 /* O -> O */ p 5 1 8 /* P -> P */ LeftBracket 5 5 1 /* [ -> [ */ RightBracket 6 2 1 /* ] -> ] */ Return 0 1 8 /* Return -> Return */ Tab 7 2 8 /* Tab -> Ctrl */ a 1 2 8 /* A -> A */ s 1 5 8 /* S -> S */ d 2 2 8 /* D -> D */ f 2 5 8 /* F -> F */ g 3 2 8 /* G -> G */ h 3 5 8 /* H -> H */ j 4 2 8 /* J -> J */ k 4 5 8 /* K -> K */ l 5 2 8 /* L -> L */ SemiColon 6 2 32 /* ; -> ; */ SemiColon 5 5 16 /* : -> : */ SingleQuote 3 0 33 /* ' -> ' */ SingleQuote 7 3 1 /* " -> " */ BackQuote 6 4 8 /* ` -> Escape */ BackSlash 0 2 8 /* \ -> Lira */ #8 6 1 16 /* * -> * */ Shift_L 1 7 2 /* Left Shift -> Left Shift */ CapsLock 1 7 64 /* Caps Lock -> Shift Lock */ z 1 4 8 /* Z -> Z */ x 2 7 8 /* X -> X */ c 2 4 8 /* C -> C */ v 3 7 8 /* V -> V */ b 3 4 8 /* B -> B */ n 4 7 8 /* N -> N */ m 4 4 8 /* M -> M */ Comma 5 7 8 /* , -> , */ Period 5 4 8 /* . -> . */ Slash 6 7 8 /* / -> / */ Shift_R 1 7 4 /* Right Shift -> Right Shift */ Space 7 4 8 /* Space -> Space */ F1 0 4 8 /* F1 -> F1 */ F2 0 4 1 /* F2 -> F2 */ F3 0 5 8 /* F3 -> F3 */ F4 0 5 1 /* F4 -> F4 */ F5 0 6 8 /* F5 -> F5 */ F6 0 6 1 /* F6 -> F6 */ F7 0 3 8 /* F7 -> F7 */ F8 0 3 1 /* F8 -> F8 */ clr 7 1 8 /* Home -> CLR/HOME */ Up 5 3 8 /* Up -> CRSR UP */ Down 5 0 8 /* Down -> CRSR DOWN */ Insert 0 0 1 /* Insert -> INS */ Del 0 0 8 /* Delete -> DEL */ Left 6 0 8 /* Left -> Left */ Right 6 3 8 /* Right -> Right */ # Restore key mappings PageUp -3 0