diff --git a/trunk/workspace/BMC/C64_Keyboard.gif b/trunk/workspace/BMC/C64_Keyboard.gif new file mode 100644 index 00000000..9635c97a Binary files /dev/null and b/trunk/workspace/BMC/C64_Keyboard.gif differ diff --git a/trunk/workspace/BMC/P4_Keyboard.gif b/trunk/workspace/BMC/P4_Keyboard.gif new file mode 100644 index 00000000..675d15ad Binary files /dev/null and b/trunk/workspace/BMC/P4_Keyboard.gif differ diff --git a/trunk/workspace/BMC/rpi_pos_64.vkm b/trunk/workspace/BMC/rpi_pos_64.vkm new file mode 100644 index 00000000..e823396a --- /dev/null +++ b/trunk/workspace/BMC/rpi_pos_64.vkm @@ -0,0 +1,149 @@ +# BMC64 keyboard mapping file suitable for both +# USB and real C64 keyboards using GPIO +# +# 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) +# '!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 +# +# Negative row values: +# 'keysym -1 n' joystick #1, direction n +# 'keysym -2 n' joystick #2, direction n +# 'keysym -3 0' first RESTORE key +# 'keysym -3 1' second RESTORE key +# 'keysym -4 0' 40/80 column key +# 'keysym -4 1' CAPS (ASCII/DIN) key +# +# Symbolic Mapping, US Layout, C64, GTK +# +# C64 keyboard matrix: +# +# +-----+-----+-----+-----+-----+-----+-----+-----+ +# |Bit 0|Bit 1|Bit 2|Bit 3|Bit 4|Bit 5|Bit 6|Bit 7| +# +-----+-----+-----+-----+-----+-----+-----+-----+-----+ +# |Bit 0| DEL |Retrn|C_L/R| F7 | F1 | F3 | F5 |C_U/D| +# +-----+-----+-----+-----+-----+-----+-----+-----+-----+ +# |Bit 1| 3 # | W | A | 4 $ | Z | S | E | S_L | +# +-----+-----+-----+-----+-----+-----+-----+-----+-----+ +# |Bit 2| 5 % | R | D | 6 & | C | F | T | X | +# +-----+-----+-----+-----+-----+-----+-----+-----+-----+ +# |Bit 3| 7 ' | Y | G | 8 ( | B | H | U | V | +# +-----+-----+-----+-----+-----+-----+-----+-----+-----+ +# |Bit 4| 9 ) | I | J | 0 | M | K | O | N | +# +-----+-----+-----+-----+-----+-----+-----+-----+-----+ +# |Bit 5| + | P | L | - | . > | : [ | @ | , < | +# +-----+-----+-----+-----+-----+-----+-----+-----+-----+ +# |Bit 6|POUND| * | ; ] | HOME| S_R | = | A_UP| / ? | +# +-----+-----+-----+-----+-----+-----+-----+-----+-----+ +# |Bit 7| 1 ! |A_LFT| CTRL| 2 " |SPACE| C= | Q | R/S | +# +-----+-----+-----+-----+-----+-----+-----+-----+-----+ +# +# C64 Keyboard layout: +# +# arrow 1! 2" 3# 4$ 5% 6& 7' 8( 9) 0 + - pound clr del f1/f2 +# ctrl q w e r t y u i o p @ * ^ restore f3/f4 +# r/s SL a s d f g h j k l :[ ;] = return f5/f6 +# CBM LS z x c v b n m ,< .> /? RS u/d l/r f7/f8 +# space + + +!CLEAR +!LSHIFT 1 7 +!RSHIFT 6 4 +!VSHIFT RSHIFT + +Tab 7 2 8 /* CTRL */ +Control_L 7 5 8 /* Commodore Key */ +Alt_L 7 5 8 /* Commodore Key */ +BackSpace 0 0 8 +Down 0 7 8 +Escape 7 7 8 /* RunStop */ +F1 0 4 8 +F2 0 4 1 +F3 0 5 8 +F4 0 5 1 +F5 0 6 8 +F6 0 6 1 +F7 0 3 8 +F8 0 3 1 +Home 6 3 8 /* Clr */ +Left 0 2 1 +Return 0 1 8 +Right 0 2 8 +Shift_L 1 7 2 +Shift_R 6 4 4 +Up 0 7 1 +LeftBracket 5 6 8 /* at */ +SemiColon 5 5 8 /* colon */ +Comma 5 7 8 /* comma */ +BackSlash 6 5 0 /* equal */ +Pound 6 5 0 /* equal */ +Equals 5 3 8 /* minus */ +Period 5 4 8 /* period */ +Dash 5 0 8 /* plus */ +SingleQuote 6 2 8 /* semicolon */ +Slash 6 7 8 /* slash */ +Space 7 4 8 /* space */ +Insert 6 0 8 /* sterling */ +RightBracket 6 1 8 /* asterisk */ +BackQuote 7 1 0 /* arrowleft */ +Del 6 6 8 /* arrowup */ +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 8 +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 + +# Restore key mappings +PageUp -3 0 +CapsLock -4 1 diff --git a/trunk/workspace/BMC/rpi_pos_P4.vkm b/trunk/workspace/BMC/rpi_pos_P4.vkm new file mode 100644 index 00000000..7b826074 --- /dev/null +++ b/trunk/workspace/BMC/rpi_pos_P4.vkm @@ -0,0 +1,144 @@ +# BMC64 keyboard mapping file suitable for both +# USB and real C64 keyboards using GPIO +# +# 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) +# '!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 +# +# Negative row values: +# 'keysym -1 n' joystick #1, direction n +# 'keysym -2 n' joystick #2, direction n +# 'keysym -3 0' first RESTORE key +# 'keysym -3 1' second RESTORE key +# 'keysym -4 0' 40/80 column key +# 'keysym -4 1' CAPS (ASCII/DIN) key +# +# 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 + +Tab 7 2 8 /* CTRL */ +Control_L 7 5 8 /* Commodore Key */ +Alt_L 7 5 8 /* Commodore Key */ +BackSpace 0 0 8 +Down 5 0 8 +Escape 7 7 0 /* Run Stop */ +F1 0 4 8 +F3 0 5 8 +F5 0 6 8 +F7 0 3 8 +Home 7 1 8 /* Clr */ +Left 6 0 8 +Return 0 1 8 +Right 6 3 8 +Shift_L 1 7 2 +Shift_R 1 7 4 +Up 5 3 8 +LeftBracket 0 7 8 /* at */ +SemiColon 5 5 8 /* colon */ +Comma 5 7 8 /* comma */ +BackSlash 6 5 8 /* equal */ +Pound 6 5 8 /* equal */ +Equals 5 6 8 /* minus */ +Period 5 4 8 /* period */ +Dash 6 6 8 /* plus */ +SingleQuote 6 2 8 /* semicolon */ +Slash 6 7 8 /* slash */ +Space 7 4 8 /* space */ +Insert 0 2 8 /* sterling */ +RightBracket 6 1 8 /* asterisk */ +BackQuote 6 4 8 /* escape */ +Del 6 6 8 /* plus */ +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 8 +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 + +# Restore key mappings +PageUp -3 0 +CapsLock -4 1