diff --git a/trunk/workspace/BMC/Keyboard/C64/pao_pos_c64.vkm b/trunk/workspace/BMC/Keyboard/C64/pao_pos_c64.vkm index 09fa798c..0b108e64 100644 --- a/trunk/workspace/BMC/Keyboard/C64/pao_pos_c64.vkm +++ b/trunk/workspace/BMC/Keyboard/C64/pao_pos_c64.vkm @@ -1,90 +1,145 @@ -# VICE keyboard mapping file -# Layout: Positional per Commodore 64 USB (QMK) -# Formato: KEYSYM ROW COL SHIFTFLAG +# VICE keyboard mapping file for C64 +# Ottimizzato per Case Plus/4 con QMK +# Formato: Keysym Row Col Shift -!LSHIFT 1 2 -!RSHIFT 6 4 -!VSHIFT LSHIFT +# 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 +# +# Positional 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 +# -# Riga Superiore (Numeri e Simboli) -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 -0 4 3 8 -plus 5 0 0 -minus 5 3 0 -equal 6 5 0 -BackSpace 0 0 8 +# --- Riga 0 (Tasti Superiori) --- +BackSpace 0 0 0 # INST/DEL (C64: R0, C0) +Return 0 1 0 # RETURN (C64: R0, C1) +backslash 5 6 0 # Tasto £ (POUND) (C64: R5, C6) +F7 0 3 0 # F7 (C64: R0, C3) +F1 0 4 0 # F1 (C64: R0, C4) +F2 0 4 1 # F2 (Invia Shift+F1 come su C64 reale) +F3 0 5 0 # F3 (C64: R0, C5) +at 5 3 0 # @ (C64: R5, C3) -# Seconda Riga (QWERTY...) -Tab 7 1 8 -q 7 6 8 -w 1 1 8 -e 1 6 8 -r 2 1 8 -t 2 6 8 -y 3 1 8 -u 3 6 8 -i 4 1 8 -o 4 6 8 -p 5 1 8 -at 4 6 0 -asterisk 6 1 0 -bracketleft 5 2 1 -bracketright 5 5 1 +# --- Riga 1 --- +3 1 0 0 +w 1 1 0 +a 1 2 0 +4 1 3 0 +z 1 4 0 +s 1 5 0 +e 1 6 0 +Shift_L 1 7 0 -# Terza Riga (ASDF...) -Control_L 7 2 8 -a 1 2 8 -s 1 5 8 -d 2 2 8 -f 2 5 8 -g 3 2 8 -h 3 5 8 -j 4 2 8 -k 4 5 8 -l 5 2 8 -colon 5 5 0 -semicolon 6 2 0 -Return 0 1 8 +# --- Riga 2 --- +5 2 0 0 +r 2 1 0 +d 2 2 0 +6 2 3 0 +c 2 4 0 +f 2 5 0 +t 2 6 0 +x 2 7 0 -# Quarta Riga (ZXCV...) -Shift_L 1 2 8 -z 1 4 8 -x 2 7 8 -c 2 4 8 -v 3 7 8 -b 3 4 8 -n 4 7 8 -m 4 4 8 -comma 5 7 0 -period 5 4 0 -slash 6 7 0 -Shift_R 6 4 8 +# --- Riga 3 --- +7 3 0 0 +y 3 1 0 +g 3 2 0 +8 3 3 0 +b 3 4 0 +h 3 5 0 +u 3 6 0 +v 3 7 0 -# Quinta Riga (Barra Spazio e Speciali) -Super_L 7 5 8 -space 7 4 8 -Escape 7 7 8 +# --- Riga 4 --- +9 4 0 0 +i 4 1 0 +j 4 2 0 +0 4 3 0 +m 4 4 0 +k 4 5 0 +o 4 6 0 +n 4 7 0 -# Cursori (Simulazione 4 frecce su 2 tasti C64) -Up 0 0 1 -Down 0 0 0 -Left 0 2 1 -Right 0 2 0 +# --- Riga 5 (Frecce Plus4 -> Matrice C64) --- +Down 0 7 0 # CRSR Down (C64: R0, C7) +p 5 1 0 +l 5 2 0 +Up 0 7 1 # CRSR Up (Invia Shift + CRSR Down) +period 5 4 0 +colon 5 5 0 # [ : ] (C64: R5, C5) +minus 5 0 0 # [ - ] (C64: R5, C0) +comma 5 7 0 -# Tasti Funzione -F1 0 4 0 -F2 0 4 1 -F3 0 5 0 -F4 0 5 1 -F5 0 6 0 -F6 0 6 1 -F7 0 3 0 -F8 0 3 1 +# --- Riga 6 (Frecce Plus4 -> Matrice C64) --- +Left 0 2 1 # CRSR Left (Invia Shift + CRSR Right) +asterisk 6 1 0 # [ * ] (C64: R6, C1) +semicolon 6 2 0 # [ ; ] (C64: R6, C2) +Right 0 2 0 # CRSR Right (C64: R0, C2) +Escape 7 1 0 # ESC (Plus4) -> Tasto FRECCIA SINISTRA (C64: R7, C1) +equal 6 5 0 # [ = ] (C64: R6, C5) +plus 6 6 0 # [ + ] (C64: R6, C6) +slash 6 7 0 # [ / ] (C64: R6, C7) + +# --- Riga 7 (Base e Controllo) --- +1 7 0 0 +Home 6 3 0 # CLR/HOME (C64: R6, C3) +Tab 7 2 0 # CTRL (C64: R7, C2) +2 7 3 0 +space 7 4 0 +Control_L 7 5 0 # CBM KEY (C64: R7, C5) +q 7 6 0 +Alt_L 7 7 0 # RUN/STOP (C64: R7, C7) diff --git a/trunk/workspace/BMC/Keyboard/Plus4/pao_pos_p4.vkm b/trunk/workspace/BMC/Keyboard/Plus4/pao_pos_p4.vkm index 6becbb91..8e4a122c 100644 --- a/trunk/workspace/BMC/Keyboard/Plus4/pao_pos_p4.vkm +++ b/trunk/workspace/BMC/Keyboard/Plus4/pao_pos_p4.vkm @@ -1,87 +1,145 @@ -# VICE keyboard mapping file -# Layout: Positional per Commodore Plus/4 USB (QMK) -# Formato: KEYSYM ROW COL SHIFTFLAG +# VICE keyboard mapping file for Plus/4 +# Basato sul layer QMK ottimizzato per Plus/4 Case +# Formato: Keysym Row Col Shift +# +# 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. +# +# Positional Mapping, US Layout, Plus/4, 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 |= <- 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 +# -!LSHIFT 1 7 -!RSHIFT 6 4 -!VSHIFT LSHIFT +# --- Riga 0 (Tasti Superiori / Speciali) --- +BackSpace 0 0 0 # Tasto INST/DEL +Return 0 1 0 # Tasto RETURN +backslash 0 2 0 # Mappato su £ (POUND) nel Plus/4 +F7 0 3 0 # Tasto F4 fisico (F7 con shift) +F1 0 4 0 +F2 0 5 0 +F3 0 6 0 +at 0 7 0 # Tasto @ (dedicato) -# Fila Superiore (Numeri e simboli) -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 -0 4 3 8 -plus 5 0 0 -minus 5 3 0 -equal 6 5 0 -BackSpace 0 0 8 +# --- Riga 1 --- +3 1 0 0 +w 1 1 0 +a 1 2 0 +4 1 3 0 +z 1 4 0 +s 1 5 0 +e 1 6 0 +Shift_L 1 7 0 # SHIFT -# Seconda Fila (QWERTY...) -Tab 7 1 8 -q 7 6 8 -w 1 1 8 -e 1 6 8 -r 2 1 8 -t 2 6 8 -y 3 1 8 -u 3 6 8 -i 4 1 8 -o 4 6 8 -p 5 1 8 -at 0 7 0 -bracketleft 6 1 0 -bracketright 6 6 0 +# --- Riga 2 --- +5 2 0 0 +r 2 1 0 +d 2 2 0 +6 2 3 0 +c 2 4 0 +f 2 5 0 +t 2 6 0 +x 2 7 0 -# Terza Fila (ASDF...) -Control_L 7 2 8 -a 1 2 8 -s 1 5 8 -d 2 2 8 -f 2 5 8 -g 3 2 8 -h 3 5 8 -j 4 2 8 -k 4 5 8 -l 5 2 8 -colon 5 5 0 -semicolon 6 2 0 -Return 0 1 8 +# --- Riga 3 --- +7 3 0 0 +y 3 1 0 +g 3 2 0 +8 3 3 0 +b 3 4 0 +h 3 5 0 +u 3 6 0 +v 3 7 0 -# Quarta Fila (ZXCV...) -Shift_L 1 7 8 -z 1 4 8 -x 2 7 8 -c 2 4 8 -v 3 7 8 -b 3 4 8 -n 4 7 8 -m 4 4 8 -comma 5 7 0 -period 5 4 0 -slash 6 7 0 -Shift_R 6 4 8 +# --- Riga 4 --- +9 4 0 0 +i 4 1 0 +j 4 2 0 +0 4 3 0 +m 4 4 0 +k 4 5 0 +o 4 6 0 +n 4 7 0 -# Quinta Fila (Spazio e tasti speciali) -Super_L 7 5 8 -space 7 4 8 -Escape 7 7 8 +# --- Riga 5 (Frecce e Punteggiatura) --- +Down 5 0 0 +p 5 1 0 +l 5 2 0 +Up 5 3 0 +period 5 4 0 +colon 5 5 0 +minus 5 6 0 +comma 5 7 0 -# Cursori (Frecce) -Up 6 6 8 -Down 0 3 8 -Left 7 1 8 -Right 0 2 8 +# --- Riga 6 (Frecce e Simboli) --- +Left 6 0 0 +asterisk 6 1 0 +semicolon 6 2 0 +Right 6 3 0 +Escape 6 4 0 +equal 6 5 0 +plus 6 6 0 +slash 6 7 0 -# Tasti Funzione -F1 0 4 8 -F2 0 5 8 -F3 0 6 8 -F5 0 4 1 -F6 0 5 1 -F7 0 6 1 +# --- Riga 7 (Base e Controllo) --- +1 7 0 0 +Home 7 1 0 # Tasto CLR/HOME +Tab 7 2 0 # Tasto CTRL +2 7 3 0 +space 7 4 0 +Control_L 7 5 0 # Tasto COMMODORE (CBM) +q 7 6 0 +Alt_L 7 7 0 # Mappato su RUN/STOP (Posizione fisica Alt)