This commit is contained in:
Binary file not shown.
@@ -0,0 +1,9 @@
|
||||
:020000040000FA
|
||||
:10000000CF0C0200000C06000604260446040A0C6D
|
||||
:100010003200A00C3100FF0C30002605460412020D
|
||||
:100020003300F302110A04002604460512023300CD
|
||||
:10003000F302180AF0020D0AF1020B0AF202090A91
|
||||
:100040000605FF0C3300F302230A060426044604C7
|
||||
:10005000140C3400040003000000F4022A0A070A0A
|
||||
:021FFE00EF0FE3
|
||||
:00000001FF
|
||||
@@ -0,0 +1,249 @@
|
||||
gpasm-1.4.0 #1107 (Jan 1 2021) 10f200-Scacci 10-19-2025 22:01:49 PAGE 1
|
||||
|
||||
|
||||
LOC OBJECT CODE LINE SOURCE TEXT
|
||||
VALUE
|
||||
|
||||
00001 ; ******************************************************************
|
||||
00002 ; Scacciazanzare with a PIC10F200
|
||||
00003 ; 2016-08-11 (c) Paolo Iocco
|
||||
00004 ; ******************************************************************
|
||||
00005 ;
|
||||
00006 ; Circuit diagram
|
||||
00007 ; ---------------
|
||||
00008 ; +--\/--+
|
||||
00009 ; LED <----------|1° 6|<--------|50K|---+5V
|
||||
00010 ; GND ---------->|2 5|<------- +5V
|
||||
00011 ; BUZ1 <---------|3 4|-------> BUZ2
|
||||
00012 ; +------+
|
||||
00013 ;
|
||||
00014 ; ******************************************************************
|
||||
00015
|
||||
00016 INCLUDE "p10f200.inc" ; include le definizioni standard
|
||||
00001 LIST
|
||||
00002
|
||||
00003 ;==========================================================================
|
||||
00004 ; Build date : Aug 07 2014
|
||||
00005 ; MPASM PIC10F200 processor include
|
||||
00006 ;
|
||||
00007 ; (c) Copyright 1999-2014 Microchip Technology, All rights reserved
|
||||
00008 ;==========================================================================
|
||||
00009
|
||||
00152 LIST
|
||||
00017 list p=10F200 ; Processoer utilizzato
|
||||
00018 ;errorlevel -302 ;suppress message "Bank Switch Check"
|
||||
0FFF 0FEF 00019 __CONFIG _IntRC_OSC & _WDT_ON & _CP_OFF & _MCLRE_OFF
|
||||
00020
|
||||
00021 ; - - - - -
|
||||
00000010 00022 ciclo_l EQU 0x10 ; primo valore RAM (0x10-0x1F)
|
||||
00000011 00023 ciclo_h EQU 0x11
|
||||
00000012 00024 periodo EQU 0x12
|
||||
00000013 00025 dummy EQU 0x13
|
||||
00000014 00026 dormi EQU 0x14
|
||||
00027
|
||||
00028 #define LED GPIO,0
|
||||
00029 #define BUZ1 GPIO,1
|
||||
00030 #define BUZ2 GPIO,2
|
||||
00031
|
||||
0000 00032 org 0x00
|
||||
0000 00033 Start:
|
||||
0000 0CCF 00034 movlw b'11001111' ; PSA + Prescaler 111 (1:128)
|
||||
0001 0002 00035 option
|
||||
0002 0C00 00036 movlw b'0000' ; set GPIO full OUT
|
||||
0003 0006 00037 tris GPIO
|
||||
00038
|
||||
0004 0406 00039 bcf LED ; set LED off
|
||||
0005 0426 00040 bcf BUZ1 ; set BUZ1 off
|
||||
0006 0446 00041 bcf BUZ2 ; set BUZ2 off
|
||||
00042
|
||||
0007 00043 Loop:
|
||||
gpasm-1.4.0 #1107 (Jan 1 2021) 10f200-Scacci 10-19-2025 22:01:49 PAGE 2
|
||||
|
||||
|
||||
LOC OBJECT CODE LINE SOURCE TEXT
|
||||
VALUE
|
||||
|
||||
00044 ; ** emette i suoni da ca. 63KHz a 15KHz (ciclo: 1=63,3KHz, 10=15,7KHz)
|
||||
0007 0C0A 00045 movlw d'10' ; Invia 10 trame di durata diversa
|
||||
0008 0032 00046 movwf periodo
|
||||
00047
|
||||
0009 00048 Trama:
|
||||
0009 0CA0 00049 movlw d'160' ; 160*256 periodi per frequenza
|
||||
000A 0031 00050 movwf ciclo_h
|
||||
00051
|
||||
000B 00052 Ciclo_High:
|
||||
000B 0CFF 00053 movlw d'255' ; ciclo interno
|
||||
000C 0030 00054 movwf ciclo_l
|
||||
00055
|
||||
000D 00056 Ciclo_Low:
|
||||
00057 ; * ************ *
|
||||
00058 ; * Periodo ON *
|
||||
00059 ; * ************ *
|
||||
000D 0526 00060 bsf BUZ1 ; set BUZ1 on
|
||||
000E 0446 00061 bcf BUZ2 ; set BUZ2 off
|
||||
000F 0212 00062 movf periodo,w
|
||||
0010 0033 00063 movwf dummy
|
||||
0011 00064 OUT_ON:
|
||||
0011 02F3 00065 decfsz dummy,f
|
||||
0012 0A11 00066 goto OUT_ON
|
||||
0013 0004 00067 clrwdt ; clrwdt qui per equilibrare le durate ON ed OFF
|
||||
00068 ; * ************* *
|
||||
00069 ; * Periodo OFF *
|
||||
00070 ; * ************* *
|
||||
0014 0426 00071 bcf BUZ1 ; set BUZ1 off
|
||||
0015 0546 00072 bsf BUZ2 ; set BUZ2 on
|
||||
0016 0212 00073 movf periodo,w
|
||||
0017 0033 00074 movwf dummy
|
||||
0018 00075 OUT_OFF:
|
||||
0018 02F3 00076 decfsz dummy,f
|
||||
0019 0A18 00077 goto OUT_OFF
|
||||
00078 ; * NEXT Ciclo Low
|
||||
001A 02F0 00079 decfsz ciclo_l,f
|
||||
001B 0A0D 00080 goto Ciclo_Low
|
||||
00081 ; * NEXT Ciclo High
|
||||
001C 02F1 00082 decfsz ciclo_h,f
|
||||
001D 0A0B 00083 goto Ciclo_High
|
||||
00084 ; * NEXT Trama
|
||||
001E 02F2 00085 decfsz periodo,f
|
||||
001F 0A09 00086 goto Trama
|
||||
00087
|
||||
00088 ; * ************* *
|
||||
00089 ; * Lampeggio LED *
|
||||
00090 ; * ************* *
|
||||
0020 0506 00091 bsf LED ; set LED on
|
||||
0021 0CFF 00092 movlw d'255' ; Pausa (ca. xxx ms)
|
||||
0022 0033 00093 movwf dummy
|
||||
0023 00094 LED_ON:
|
||||
0023 02F3 00095 decfsz dummy,f
|
||||
0024 0A23 00096 goto LED_ON
|
||||
gpasm-1.4.0 #1107 (Jan 1 2021) 10f200-Scacci 10-19-2025 22:01:49 PAGE 3
|
||||
|
||||
|
||||
LOC OBJECT CODE LINE SOURCE TEXT
|
||||
VALUE
|
||||
|
||||
00097
|
||||
00098 ; * ****************** *
|
||||
00099 ; * Preparazione SLEEP *
|
||||
00100 ; * ****************** *
|
||||
0025 0406 00101 bcf LED ; set LED off
|
||||
0026 0426 00102 bcf BUZ1 ; set BUZ1 off
|
||||
0027 0446 00103 bcf BUZ2 ; set BUZ2 off
|
||||
00104 ; * dorme per 20 cicli di watchdog
|
||||
0028 0C14 00105 movlw d'20'
|
||||
0029 0034 00106 movwf dormi
|
||||
002A 00107 Ciclo_Sleep:
|
||||
002A 0004 00108 clrwdt
|
||||
002B 0003 00109 sleep
|
||||
002C 0000 00110 nop
|
||||
002D 02F4 00111 decfsz dormi,f
|
||||
002E 0A2A 00112 goto Ciclo_Sleep
|
||||
00113
|
||||
00114 ; * Torna al ciclo principale
|
||||
002F 0A07 00115 goto loop
|
||||
00116 end
|
||||
gpasm-1.4.0 #1107 (Jan 1 2021) 10f200-Scacci 10-19-2025 22:01:49 PAGE 4
|
||||
|
||||
|
||||
SYMBOL TABLE
|
||||
LABEL VALUE
|
||||
|
||||
BUZ1 GPIO,1
|
||||
BUZ2 GPIO,2
|
||||
C 00000000
|
||||
CAL0 00000001
|
||||
CAL1 00000002
|
||||
CAL2 00000003
|
||||
CAL3 00000004
|
||||
CAL4 00000005
|
||||
CAL5 00000006
|
||||
CAL6 00000007
|
||||
Ciclo_High 0000000B
|
||||
Ciclo_Low 0000000D
|
||||
Ciclo_Sleep 0000002A
|
||||
DC 00000001
|
||||
F 00000001
|
||||
FOSC4 00000000
|
||||
FSR 00000004
|
||||
GP0 00000000
|
||||
GP1 00000001
|
||||
GP2 00000002
|
||||
GP3 00000003
|
||||
GPIO 00000006
|
||||
GPWUF 00000007
|
||||
INDF 00000000
|
||||
LED GPIO,0
|
||||
LED_ON 00000023
|
||||
Loop 00000007
|
||||
NOT_GPPU 00000006
|
||||
NOT_GPWU 00000007
|
||||
NOT_PD 00000003
|
||||
NOT_TO 00000004
|
||||
OSCCAL 00000005
|
||||
OUT_OFF 00000018
|
||||
OUT_ON 00000011
|
||||
PCL 00000002
|
||||
PS0 00000000
|
||||
PS1 00000001
|
||||
PS2 00000002
|
||||
PSA 00000003
|
||||
STATUS 00000003
|
||||
Start 00000000
|
||||
T0CS 00000005
|
||||
T0SE 00000004
|
||||
TMR0 00000001
|
||||
TRISIO0 00000000
|
||||
TRISIO1 00000001
|
||||
TRISIO2 00000002
|
||||
TRISIO3 00000003
|
||||
Trama 00000009
|
||||
W 00000000
|
||||
Z 00000002
|
||||
_CONFIG 00000FFF
|
||||
_CP_OFF 00000FFF
|
||||
gpasm-1.4.0 #1107 (Jan 1 2021) 10f200-Scacci 10-19-2025 22:01:49 PAGE 5
|
||||
|
||||
|
||||
SYMBOL TABLE
|
||||
LABEL VALUE
|
||||
|
||||
_CP_ON 00000FF7
|
||||
_IDLOC0 00000100
|
||||
_IDLOC1 00000101
|
||||
_IDLOC2 00000102
|
||||
_IDLOC3 00000103
|
||||
_IntRC_OSC 00000FFF
|
||||
_MCLRE_OFF 00000FEF
|
||||
_MCLRE_ON 00000FFF
|
||||
_OSC_IntRC 00000FFF
|
||||
_WDTE_OFF 00000FFB
|
||||
_WDTE_ON 00000FFF
|
||||
_WDT_OFF 00000FFB
|
||||
_WDT_ON 00000FFF
|
||||
__10F200 00000001
|
||||
__CODE_END 000000FF
|
||||
__CODE_START 00000000
|
||||
__VECTOR_RESET 00000000
|
||||
ciclo_h 00000011
|
||||
ciclo_l 00000010
|
||||
dormi 00000014
|
||||
dummy 00000013
|
||||
periodo 00000012
|
||||
|
||||
|
||||
MEMORY USAGE MAP ('X' = Used, '-' = Unused)
|
||||
|
||||
0000 : XXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXX ----------------
|
||||
0FC0 : ---------------- ---------------- ---------------- ---------------X
|
||||
|
||||
All other memory blocks unused.
|
||||
|
||||
Program Memory Words Used: 48
|
||||
Program Memory Words Free: 208
|
||||
|
||||
|
||||
Errors : 0
|
||||
Warnings : 0 reported, 0 suppressed
|
||||
Messages : 0 reported, 0 suppressed
|
||||
|
||||
|
||||
@@ -0,0 +1,327 @@
|
||||
# GTK3-VICE keyboard mapping file suitable for real C64 keyboards using Keymmodore-64 interfase by K-rnivoro. https://www.keymmodore.com/
|
||||
# Tested with VICE GTK3 v3.4
|
||||
# Mapped for positional compatibility to C-128 Keyboards.
|
||||
# Based on C64 Positional Layout.
|
||||
# Keys not present in C-64 (like NumPad Keys, ESC, TAB) are accessed with Right Shift Key.
|
||||
#
|
||||
# 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)
|
||||
# '!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 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 key is shift-lock on emulated machine
|
||||
# 128 shift modifier required on host
|
||||
# 256 key is used for an alternative keyboard mapping
|
||||
# 512 alt-r (alt-gr) modifier required on host
|
||||
# 1024 ctrl modifier required on host
|
||||
# 2048 key is combined with cbm for this keysym/scancode
|
||||
# 4096 key is combined with ctrl for this keysym/scancode
|
||||
# 8192 key is (left) cbm on emulated machine
|
||||
# 16384 key is (left) ctrl on emulated machine
|
||||
#
|
||||
# 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
|
||||
# 'keysym -5 n' joyport keypad, key n
|
||||
#
|
||||
# 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.
|
||||
|
||||
# Positional Mapping, US Layout, C128, X11
|
||||
|
||||
# C128 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 |
|
||||
# +-----+-----+-----+-----+-----+-----+-----+-----+-----+
|
||||
#
|
||||
# +-----+-----+-----+-----+-----+-----+-----+-----+
|
||||
# |Bit 0|Bit 1|Bit 2|Bit 3|Bit 4|Bit 5|Bit 6|Bit 7|
|
||||
# +------+-----+-----+-----+-----+-----+-----+-----+-----+
|
||||
# |Bit 8 |HELP | KP 8| KP 5| TAB | KP 2| KP 4| KP 7| KP 1|
|
||||
# +------+-----+-----+-----+-----+-----+-----+-----+-----+
|
||||
# |Bit 9 | ESC | KP +| KP -| LF |KP CR| KP 6| KP 9| KP 3|
|
||||
# +------+-----+-----+-----+-----+-----+-----+-----+-----+
|
||||
# |Bit 10| ALT | KP 0| KP .|A.UP |A.DWN|A.LFT|A.RGT|NOSCR|
|
||||
# +------+-----+-----+-----+-----+-----+-----+-----+-----+
|
||||
|
||||
|
||||
!CLEAR
|
||||
!LSHIFT 1 7
|
||||
!RSHIFT 6 4
|
||||
!VSHIFT RSHIFT
|
||||
|
||||
|
||||
|
||||
# 40/80 column key
|
||||
F6 -4 0
|
||||
|
||||
# CAPS LOCK (ASCII/DIN) key
|
||||
F10 -4 1
|
||||
|
||||
####################
|
||||
# Restore key mappings
|
||||
Page_Up -3 0
|
||||
|
||||
#####################
|
||||
# |Bit 0| DEL |Retrn|C_L/R| F7 | F1 | F3 | F5 |C_U/D|
|
||||
|
||||
BackSpace 0 0 8
|
||||
Return 0 1 8
|
||||
Right 0 2 8
|
||||
F1 0 4 8
|
||||
F3 0 5 8
|
||||
F5 0 6 8
|
||||
F7 0 3 8
|
||||
Down 0 7 8
|
||||
|
||||
#####################
|
||||
# |Bit 1| 3 # | W | A | 4 $ | Z | S | E | S_L |
|
||||
|
||||
numbersign 1 0 8
|
||||
dollar 1 3 8
|
||||
Shift_L 1 7 2
|
||||
|
||||
#####################
|
||||
# |Bit 2| 5 % | R | D | 6 & | C | F | T | X |
|
||||
|
||||
percent 2 0 8
|
||||
asciicircum 2 3 8
|
||||
|
||||
#####################
|
||||
# |Bit 3| 7 ' | Y | G | 8 ( | B | H | U | V |
|
||||
|
||||
ampersand 3 0 8
|
||||
asterisk 3 3 8
|
||||
|
||||
#####################
|
||||
# |Bit 4| 9 ) | I | J | 0 | M | K | O | N |
|
||||
|
||||
parenleft 4 0 8
|
||||
parenright 4 3 8
|
||||
|
||||
#####################
|
||||
# |Bit 5| + | P | L | - | . > | : [ | @ | , < |
|
||||
|
||||
underscore 5 0 8
|
||||
minus 5 0 8
|
||||
plus 5 3 8
|
||||
equal 5 3 8
|
||||
period 5 4 8
|
||||
greater 5 4 1
|
||||
semicolon 5 5 8
|
||||
colon 5 5 8
|
||||
braceleft 5 6 8
|
||||
bracketleft 5 6 8
|
||||
comma 5 7 8
|
||||
less 5 7 8
|
||||
|
||||
#####################
|
||||
# |Bit 6|POUND| * | ; ] | HOME| S_R | = | A_UP| / ? |
|
||||
|
||||
|
||||
Insert 6 0 8
|
||||
braceright 6 1 8
|
||||
bracketright 6 1 8
|
||||
apostrophe 6 2 8
|
||||
quotedbl 6 2 8
|
||||
Home 6 3 8
|
||||
Shift_R 6 4 4
|
||||
backslash 6 5 8
|
||||
bar 6 5 8
|
||||
Delete 6 6 8
|
||||
question 6 7 8
|
||||
slash 6 7 8
|
||||
|
||||
#####################
|
||||
# |Bit 7| 1 ! |A_LFT| CTRL| 2 " |SPACE| C= | Q | R/S |
|
||||
|
||||
exclam 7 0 8
|
||||
dead_grave 7 1 8 # Arrow_LFT <-
|
||||
dead_perispomeni 7 1 8 # Arrow_LFT <-
|
||||
Tab 7 2 8 # Control <-
|
||||
at 7 3 8
|
||||
space 7 4 8
|
||||
Control_L 7 5 8 # CBM Key
|
||||
Escape 7 7 8 # RUN/STOP <-
|
||||
|
||||
#####################
|
||||
# |Bit 8 |HELP | KP 8| KP 5| TAB | KP 2| KP 4| KP 7| KP 1|
|
||||
|
||||
F2 8 0 8
|
||||
KP_8 8 1 8
|
||||
KP_5 8 2 8
|
||||
F11 8 3 8 # TAB <-
|
||||
KP_2 8 4 8
|
||||
KP_4 8 5 8
|
||||
KP_7 8 6 8
|
||||
KP_1 8 7 8
|
||||
|
||||
#####################
|
||||
# |Bit 9 | ESC | KP +| KP -| LF |KP CR| KP 6| KP 9| KP 3|
|
||||
|
||||
KP_Multiply 9 0 8
|
||||
KP_Add 9 1 8
|
||||
KP_Subtract 9 2 8
|
||||
F4 9 3 8
|
||||
KP_Enter 9 4 8
|
||||
KP_6 9 5 8
|
||||
KP_9 9 6 8
|
||||
KP_3 9 7 8
|
||||
|
||||
#####################
|
||||
# |Bit 10| ALT | KP 0| KP .|A.UP |A.DWN|A.LFT|A.RGT|NOSCR|
|
||||
|
||||
F9 10 0 8
|
||||
KP_0 10 1 8
|
||||
KP_Decimal 10 2 8
|
||||
Up 10 3 8
|
||||
#Down 10 4 8
|
||||
Left 10 5 8
|
||||
#Right 10 6 8
|
||||
KP_Divide 10 7 8
|
||||
|
||||
|
||||
####################
|
||||
# Dead keys support for those using US-International keyboard layout.
|
||||
dead_circumflex 2 3 8 # &
|
||||
dead_acute 6 2 8 # ;
|
||||
dead_diaeresis 6 2 8 # ]
|
||||
grave 7 1 8 # Arrow_LFT <-
|
||||
asciitilde 7 1 8 # Arrow_LFT <-
|
||||
|
||||
|
||||
#####################
|
||||
# letters and numbers
|
||||
|
||||
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
|
||||
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
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
##############################################################################
|
||||
@@ -0,0 +1,330 @@
|
||||
# GTK3-VICE keyboard mapping file suitable for real C64 keyboards using Keymmodore-64 interfase by K-rnivoro. https://www.keymmodore.com/
|
||||
# Tested with VICE GTK3 v3.4
|
||||
# Mapped for positional compatibility to C-128 Keyboards.
|
||||
# Based on C64 Positional Layout.
|
||||
# Keys not present in C-64 (like NumPad Keys, ESC, TAB) are accessed with Right Shift Key.
|
||||
#
|
||||
# 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)
|
||||
# '!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 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 key is shift-lock on emulated machine
|
||||
# 128 shift modifier required on host
|
||||
# 256 key is used for an alternative keyboard mapping
|
||||
# 512 alt-r (alt-gr) modifier required on host
|
||||
# 1024 ctrl modifier required on host
|
||||
# 2048 key is combined with cbm for this keysym/scancode
|
||||
# 4096 key is combined with ctrl for this keysym/scancode
|
||||
# 8192 key is (left) cbm on emulated machine
|
||||
# 16384 key is (left) ctrl on emulated machine
|
||||
#
|
||||
# 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
|
||||
# 'keysym -5 n' joyport keypad, key n
|
||||
#
|
||||
# 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.
|
||||
|
||||
# Positional Mapping, US Layout, C128, X11
|
||||
|
||||
# C128 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 |
|
||||
# +-----+-----+-----+-----+-----+-----+-----+-----+-----+
|
||||
#
|
||||
# +-----+-----+-----+-----+-----+-----+-----+-----+
|
||||
# |Bit 0|Bit 1|Bit 2|Bit 3|Bit 4|Bit 5|Bit 6|Bit 7|
|
||||
# +------+-----+-----+-----+-----+-----+-----+-----+-----+
|
||||
# |Bit 8 |HELP | KP 8| KP 5| TAB | KP 2| KP 4| KP 7| KP 1|
|
||||
# +------+-----+-----+-----+-----+-----+-----+-----+-----+
|
||||
# |Bit 9 | ESC | KP +| KP -| LF |KP CR| KP 6| KP 9| KP 3|
|
||||
# +------+-----+-----+-----+-----+-----+-----+-----+-----+
|
||||
# |Bit 10| ALT | KP 0| KP .|A.UP |A.DWN|A.LFT|A.RGT|NOSCR|
|
||||
# +------+-----+-----+-----+-----+-----+-----+-----+-----+
|
||||
|
||||
|
||||
!CLEAR
|
||||
!LSHIFT 1 7
|
||||
!RSHIFT 6 4
|
||||
!VSHIFT RSHIFT
|
||||
!LCTRL 7 2
|
||||
!VCTRL LCTRL
|
||||
!LCBM 7 5
|
||||
!VCBM LCBM
|
||||
|
||||
|
||||
# 40/80 column key
|
||||
F6 -4 0
|
||||
|
||||
# CAPS LOCK (ASCII/DIN) key
|
||||
F10 -4 1
|
||||
|
||||
####################
|
||||
# Restore key mappings
|
||||
Page_Up -3 0
|
||||
|
||||
#####################
|
||||
# |Bit 0| DEL |Retrn|C_L/R| F7 | F1 | F3 | F5 |C_U/D|
|
||||
|
||||
BackSpace 0 0 8
|
||||
Return 0 1 8
|
||||
Right 0 2 8
|
||||
F1 0 4 8
|
||||
F3 0 5 8
|
||||
F5 0 6 8
|
||||
F7 0 3 8
|
||||
Down 0 7 8
|
||||
|
||||
#####################
|
||||
# |Bit 1| 3 # | W | A | 4 $ | Z | S | E | S_L |
|
||||
|
||||
numbersign 1 0 8
|
||||
dollar 1 3 8
|
||||
Shift_L 1 7 2
|
||||
|
||||
#####################
|
||||
# |Bit 2| 5 % | R | D | 6 & | C | F | T | X |
|
||||
|
||||
percent 2 0 8
|
||||
asciicircum 2 3 8
|
||||
|
||||
#####################
|
||||
# |Bit 3| 7 ' | Y | G | 8 ( | B | H | U | V |
|
||||
|
||||
ampersand 3 0 8
|
||||
asterisk 3 3 8
|
||||
|
||||
#####################
|
||||
# |Bit 4| 9 ) | I | J | 0 | M | K | O | N |
|
||||
|
||||
parenleft 4 0 8
|
||||
parenright 4 3 8
|
||||
|
||||
#####################
|
||||
# |Bit 5| + | P | L | - | . > | : [ | @ | , < |
|
||||
|
||||
underscore 5 0 8
|
||||
minus 5 0 8
|
||||
plus 5 3 8
|
||||
equal 5 3 8
|
||||
period 5 4 8
|
||||
greater 5 4 1
|
||||
semicolon 5 5 8
|
||||
colon 5 5 8
|
||||
braceleft 5 6 8
|
||||
bracketleft 5 6 8
|
||||
comma 5 7 8
|
||||
less 5 7 8
|
||||
|
||||
#####################
|
||||
# |Bit 6|POUND| * | ; ] | HOME| S_R | = | A_UP| / ? |
|
||||
|
||||
|
||||
Insert 6 0 8
|
||||
braceright 6 1 8
|
||||
bracketright 6 1 8
|
||||
apostrophe 6 2 8
|
||||
quotedbl 6 2 8
|
||||
Home 6 3 8
|
||||
Shift_R 6 4 4
|
||||
backslash 6 5 8
|
||||
bar 6 5 8
|
||||
Delete 6 6 8
|
||||
question 6 7 8
|
||||
slash 6 7 8
|
||||
|
||||
#####################
|
||||
# |Bit 7| 1 ! |A_LFT| CTRL| 2 " |SPACE| C= | Q | R/S |
|
||||
|
||||
exclam 7 0 8
|
||||
dead_grave 7 1 8 # Arrow_LFT <-
|
||||
dead_perispomeni 7 1 8 # Arrow_LFT <-
|
||||
Tab 7 2 16384 # Control <-
|
||||
at 7 3 8
|
||||
space 7 4 8
|
||||
Control_L 7 5 8192 # CBM Key
|
||||
Escape 7 7 8 # RUN/STOP <-
|
||||
|
||||
#####################
|
||||
# |Bit 8 |HELP | KP 8| KP 5| TAB | KP 2| KP 4| KP 7| KP 1|
|
||||
|
||||
F2 8 0 8
|
||||
KP_8 8 1 8
|
||||
KP_5 8 2 8
|
||||
F11 8 3 8 # TAB <-
|
||||
KP_2 8 4 8
|
||||
KP_4 8 5 8
|
||||
KP_7 8 6 8
|
||||
KP_1 8 7 8
|
||||
|
||||
#####################
|
||||
# |Bit 9 | ESC | KP +| KP -| LF |KP CR| KP 6| KP 9| KP 3|
|
||||
|
||||
KP_Multiply 9 0 8
|
||||
KP_Add 9 1 8
|
||||
KP_Subtract 9 2 8
|
||||
F4 9 3 8
|
||||
KP_Enter 9 4 8
|
||||
KP_6 9 5 8
|
||||
KP_9 9 6 8
|
||||
KP_3 9 7 8
|
||||
|
||||
#####################
|
||||
# |Bit 10| ALT | KP 0| KP .|A.UP |A.DWN|A.LFT|A.RGT|NOSCR|
|
||||
|
||||
F9 10 0 8
|
||||
KP_0 10 1 8
|
||||
KP_Decimal 10 2 8
|
||||
Up 10 3 8
|
||||
#Down 10 4 8
|
||||
Left 10 5 8
|
||||
#Right 10 6 8
|
||||
KP_Divide 10 7 8
|
||||
|
||||
|
||||
####################
|
||||
# Dead keys support for those using US-International keyboard layout.
|
||||
dead_circumflex 2 3 8 # &
|
||||
dead_acute 6 2 8 # ;
|
||||
dead_diaeresis 6 2 8 # ]
|
||||
grave 7 1 8 # Arrow_LFT <-
|
||||
asciitilde 7 1 8 # Arrow_LFT <-
|
||||
|
||||
|
||||
#####################
|
||||
# letters and numbers
|
||||
|
||||
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
|
||||
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
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
##############################################################################
|
||||
@@ -0,0 +1,269 @@
|
||||
# VICE GTK3 based keyboard mapping file suitable for real C64 keyboards using Keymmodore-64 interfase by K-rnivoro. https://www.keymmodore.com/
|
||||
# Tested with VICE GTK3 v3.4
|
||||
# Using default positional VICE layout.
|
||||
#
|
||||
# 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
|
||||
#
|
||||
# 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
|
||||
# 'keysym -4 1' CAPS (ASCII/DIN) key
|
||||
# 'keysym -5 n' joyport keypad, key n
|
||||
#
|
||||
# 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.
|
||||
|
||||
# Positional Mapping, US Layout, C64, X11
|
||||
|
||||
# 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 |
|
||||
# +-----+-----+-----+-----+-----+-----+-----+-----+-----+
|
||||
|
||||
!CLEAR
|
||||
!LSHIFT 1 7
|
||||
!RSHIFT 6 4
|
||||
!VSHIFT RSHIFT
|
||||
!SHIFTL LSHIFT
|
||||
|
||||
#####################
|
||||
# |Bit 0| DEL |Retrn|C_L/R| F7 | F1 | F3 | F5 |C_U/D|
|
||||
|
||||
BackSpace 0 0 8
|
||||
Return 0 1 8
|
||||
Right 0 2 8
|
||||
F7 0 3 8
|
||||
F1 0 4 8
|
||||
F3 0 5 8
|
||||
F5 0 6 8
|
||||
Down 0 7 8
|
||||
|
||||
|
||||
#####################
|
||||
# |Bit 1| 3 # | W | A | 4 $ | Z | S | E | S_L |
|
||||
|
||||
numbersign 1 0 8
|
||||
dollar 1 3 8
|
||||
Shift_L 1 7 2
|
||||
|
||||
|
||||
#####################
|
||||
# |Bit 2| 5 % | R | D | 6 & | C | F | T | X |
|
||||
|
||||
percent 2 0 8
|
||||
asciicircum 2 3 8
|
||||
|
||||
#####################
|
||||
# |Bit 3| 7 ' | Y | G | 8 ( | B | H | U | V |
|
||||
|
||||
ampersand 3 0 8
|
||||
asterisk 3 3 8
|
||||
|
||||
#####################
|
||||
# |Bit 4| 9 ) | I | J | 0 | M | K | O | N |
|
||||
|
||||
parenleft 4 0 8
|
||||
parenright 4 3 8
|
||||
|
||||
#####################
|
||||
# |Bit 5| + | P | L | - | . > | : [ | @ | , < |
|
||||
|
||||
underscore 5 0 8
|
||||
minus 5 0 8
|
||||
plus 5 3 8
|
||||
equal 5 3 8
|
||||
period 5 4 8
|
||||
greater 5 4 1
|
||||
semicolon 5 5 8
|
||||
colon 5 5 8
|
||||
braceleft 5 6 8
|
||||
bracketleft 5 6 8
|
||||
comma 5 7 8
|
||||
less 5 7 8
|
||||
|
||||
#####################
|
||||
# |Bit 6|POUND| * | ; ] | HOME| S_R | = | A_UP| / ? |
|
||||
|
||||
#sterling 6 0 8
|
||||
Insert 6 0 8
|
||||
braceright 6 1 8
|
||||
bracketright 6 1 8
|
||||
apostrophe 6 2 8
|
||||
quotedbl 6 2 8
|
||||
Home 6 3 8
|
||||
Shift_R 6 4 4
|
||||
backslash 6 5 8
|
||||
bar 6 5 8
|
||||
Delete 6 6 8
|
||||
question 6 7 8
|
||||
slash 6 7 8
|
||||
|
||||
#####################
|
||||
# |Bit 7| 1 ! |A_LFT| CTRL| 2 " |SPACE| C= | Q | R/S |
|
||||
|
||||
exclam 7 0 8
|
||||
asciitilde 7 1 8
|
||||
grave 7 1 8
|
||||
Tab 7 2 8
|
||||
ISO_Left_Tab 7 2 8
|
||||
at 7 3 8
|
||||
space 7 4 8
|
||||
Control_L 7 5 8
|
||||
Escape 7 7 8
|
||||
|
||||
#####################
|
||||
# letters and numbers
|
||||
|
||||
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
|
||||
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
|
||||
----
|
||||
|
||||
# Dead keys support for those using US-International keyboard layout.
|
||||
dead_circumflex 2 3 8 # &
|
||||
dead_tilde 7 1 8 # A_LFT <-
|
||||
dead_grave 7 1 8 # A_LFT <-
|
||||
dead_acute 6 2 8 # ;
|
||||
dead_diaeresis 6 2 8 # ]
|
||||
|
||||
# joystick keymap A (port 1)
|
||||
KP_8 -1 7 /* NumPad 8 -> UP */
|
||||
KP_2 -1 2 /* NumPad 2 -> DOWN */
|
||||
KP_4 -1 4 /* NumPad 4 -> LEFT */
|
||||
KP_6 -1 5 /* NumPad 6 -> RIGHT */
|
||||
KP_0 -1 0 /* NumPad 0 -> FIRE */
|
||||
|
||||
# joystick Keymap B (port 2)
|
||||
KP_7 -2 7 /* NumPad 7 -> UP */
|
||||
KP_3 -2 2 /* NumPad 3 -> DOWN */
|
||||
KP_1 -2 4 /* NumPad 1 -> LEFT */
|
||||
KP_9 -2 5 /* NumPad 9 -> RIGHT */
|
||||
KP_Decimal -2 0 /* NumPad . -> FIRE */
|
||||
@@ -0,0 +1,294 @@
|
||||
# GTK3-VICE keyboard mapping file suitable for real C64 keyboards using Keymmodore-64 interfase by K-rnivoro. https://www.keymmodore.com/
|
||||
# Tested with VICE GTK3 v3.4
|
||||
# Mapped for compatibility to PET Models with Business Keyboards only (3000B, 4000B and 80000 models).
|
||||
# Based on C64 Positional Layout.
|
||||
#
|
||||
# ESCAPE is mapped to F1 Key.
|
||||
# OFF/REVERSE is mapped to F3 Key.
|
||||
# REPEAT is mapped to F5 Key.
|
||||
# Backslash is mapped to £ (Pound) Key.
|
||||
# TAB is mapped to CTRL Key.
|
||||
# NumericPad Keys (1 to 0 and Dot) are accessed by pressing Commodore Key (C=).
|
||||
# Brackets ([/]) Keys are accessed by pressing either Commodore Key (C=) ot Shift Key.
|
||||
#
|
||||
#
|
||||
# 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
|
||||
#
|
||||
|
||||
# this is a PET business (uk) keyboard mapping (positional)
|
||||
|
||||
# Business (UK) keyboard matrix:
|
||||
#
|
||||
# Keys starting with 'KP' are on the number pad.
|
||||
#
|
||||
# 0 1 2 3 4 5 6 7
|
||||
# +--------+--------+--------+--------+--------+--------+--------+--------+
|
||||
# 0 | 2 | 5 | 8 | - | KP8 |crsr rgt| ^N | . |
|
||||
# +--------+--------+--------+--------+--------+--------+--------+--------+
|
||||
# 1 | 1 | 4 | 7 | 0 | KP7 | ^ |--------| KP9 |
|
||||
# +--------+--------+--------+--------+--------+--------+--------+--------+
|
||||
# 2 | escape | s | f | h | ] .| k | ; .| KP5 |
|
||||
# +--------+--------+--------+--------+--------+--------+--------+--------+
|
||||
# 3 | a | d | g | j | return | l | @ .| KP6 |
|
||||
# +--------+--------+--------+--------+--------+--------+--------+--------+
|
||||
# 4 | tab | w | r | y | \ .| i | p | del |
|
||||
# +--------+--------+--------+--------+--------+--------+--------+--------+
|
||||
# 5 | q | e | t | u |crsr dwn| o | [ .| KP4 |
|
||||
# +--------+--------+--------+--------+--------+--------+--------+--------+
|
||||
# 6 |l shift | c | b | . | KP. | ^Y |r shift | KP3 |
|
||||
# +--------+--------+--------+--------+--------+--------+--------+--------+
|
||||
# 7 | z | v | n | , | KP0 | ^O | repeat | KP2 |
|
||||
# +--------+--------+--------+--------+--------+--------+--------+--------+
|
||||
# 8 | RVS | x | space | m | home | ^U | / | KP1 |
|
||||
# +--------+--------+--------+--------+--------+--------+--------+--------+
|
||||
# 9 | <-- | 3 | 6 | 9 |runstop | : |--------| ^V |
|
||||
# +--------+--------+--------+--------+--------+--------+--------+--------+
|
||||
#
|
||||
# ^N = both shifts + 2
|
||||
# ^Y = left shift + TAB + I
|
||||
# ^O = Z + A + L
|
||||
# ^U = RVS + A + L
|
||||
# ^V = TAB + <- + DEL
|
||||
|
||||
# Business (US) matrix (differences to UK)
|
||||
# +--------+--------+--------+--------+--------+--------+--------+--------+
|
||||
# 2 | | | | | ; | | \ | |
|
||||
# +--------+--------+--------+--------+--------+--------+--------+--------+
|
||||
# 3 | | | | | | | [ | |
|
||||
# +--------+--------+--------+--------+--------+--------+--------+--------+
|
||||
# 4 | | | | | @ | | | |
|
||||
# +--------+--------+--------+--------+--------+--------+--------+--------+
|
||||
# 5 | | | | | | | ] | |
|
||||
# +--------+--------+--------+--------+--------+--------+--------+--------+
|
||||
|
||||
!CLEAR
|
||||
!LSHIFT 6 0
|
||||
!RSHIFT 6 6
|
||||
!VSHIFT RSHIFT
|
||||
|
||||
Right 0 5 8
|
||||
Down 5 4 8
|
||||
Shift_L 6 0 2
|
||||
Shift_R 6 6 4
|
||||
Return 3 4 8
|
||||
|
||||
|
||||
# CLR/HOME
|
||||
Home 8 4 8
|
||||
|
||||
# RUN/STOP
|
||||
Èscape 9 4 8
|
||||
|
||||
# INST/DEL (Keymmodore maps both INST/DEL and RESTORE the same because there is no RESTORE Key in PET Keyboards).
|
||||
BackSpace 4 7 8
|
||||
|
||||
# ESCAPE (Using F1 Key)
|
||||
F1 2 0 8
|
||||
|
||||
# OFF/RVS (Using F5 Key)
|
||||
F3 8 0 8
|
||||
|
||||
# REPEAT (Using F7 Key)
|
||||
F7 7 6 8
|
||||
|
||||
# Arrow Up
|
||||
Delete 1 5 8
|
||||
|
||||
# Arrow Left
|
||||
dead_grave 9 0 0
|
||||
dead_perispomeni 9 0 1
|
||||
grave 9 0 0
|
||||
asciitilde 9 0 1
|
||||
|
||||
# TAB
|
||||
Tab 4 0 0
|
||||
ISO_Left_Tab 4 0 1
|
||||
|
||||
# Multiply/Colon (*/:)
|
||||
bracketright 9 5 1
|
||||
braceright 9 5 1
|
||||
semicolon 9 5 0
|
||||
|
||||
# At (@)
|
||||
bracketleft 3 6 0
|
||||
braceleft 3 6 0
|
||||
|
||||
# Backslash (\) (Using Pound Key)
|
||||
Insert 4 4 0
|
||||
F4 4 4 1
|
||||
|
||||
# Question/Slash (? / /)
|
||||
slash 8 6 0
|
||||
question 8 6 1
|
||||
|
||||
# Addition / Semicolon (+/;)
|
||||
minus 2 6 1
|
||||
underscore 2 6 1
|
||||
dead_acute 2 6 0
|
||||
apostrophe 2 6 0
|
||||
|
||||
# Equal / Minus (=/-)
|
||||
backslash 0 3 1
|
||||
bar 0 3 1
|
||||
equal 0 3 0
|
||||
plus 0 3 0
|
||||
|
||||
# Brace Left
|
||||
colon 5 6 1
|
||||
F10 5 6 8
|
||||
|
||||
# Brace Right
|
||||
dead_diaeresis 2 4 0
|
||||
quotedbl 2 4 0
|
||||
F11 2 4 8
|
||||
|
||||
|
||||
# Less/Comma (</,)
|
||||
less 7 3 1
|
||||
comma 7 3 0
|
||||
|
||||
# Greater/Period (>/.)
|
||||
greater 6 3 1
|
||||
period 6 3 0
|
||||
|
||||
# Space bar
|
||||
space 8 2 8
|
||||
|
||||
|
||||
# Num_Pad
|
||||
KP_1 8 7 0
|
||||
KP_2 7 7 0
|
||||
KP_3 6 7 0
|
||||
KP_4 5 7 0
|
||||
KP_5 2 7 0
|
||||
KP_6 3 7 0
|
||||
KP_7 1 4 0
|
||||
KP_8 0 4 0
|
||||
KP_9 1 7 0
|
||||
KP_0 7 4 0
|
||||
KP_Decimal 6 4 0
|
||||
|
||||
# Letters
|
||||
|
||||
a 3 0 0
|
||||
b 6 2 0
|
||||
c 6 1 0
|
||||
d 3 1 0
|
||||
e 5 1 0
|
||||
f 2 2 0
|
||||
g 3 2 0
|
||||
h 2 3 0
|
||||
i 4 5 0
|
||||
j 3 3 0
|
||||
k 2 5 0
|
||||
l 3 5 0
|
||||
m 8 3 0
|
||||
n 7 2 0
|
||||
o 5 5 0
|
||||
p 4 6 0
|
||||
q 5 0 0
|
||||
r 4 2 0
|
||||
s 2 1 0
|
||||
t 5 2 0
|
||||
u 5 3 0
|
||||
v 7 1 0
|
||||
w 4 1 0
|
||||
x 8 1 0
|
||||
y 4 3 0
|
||||
z 7 0 0
|
||||
|
||||
A 3 0 1
|
||||
B 6 2 1
|
||||
C 6 1 1
|
||||
D 3 1 1
|
||||
E 5 1 1
|
||||
F 2 2 1
|
||||
G 3 2 1
|
||||
H 2 3 1
|
||||
I 4 5 1
|
||||
J 3 3 1
|
||||
K 2 5 1
|
||||
L 3 5 1
|
||||
M 8 3 1
|
||||
N 7 2 1
|
||||
O 5 5 1
|
||||
P 4 6 1
|
||||
Q 5 0 1
|
||||
R 4 2 1
|
||||
S 2 1 1
|
||||
T 5 2 1
|
||||
U 5 3 1
|
||||
V 7 1 1
|
||||
W 4 1 1
|
||||
X 8 1 1
|
||||
Y 4 3 1
|
||||
Z 7 0 1
|
||||
|
||||
|
||||
|
||||
# Top row of keys:
|
||||
|
||||
1 1 0 0 # 1
|
||||
exclam 1 0 1 # shift 1
|
||||
2 0 0 0 # 2
|
||||
at 0 0 1 # shift 2
|
||||
3 9 1 0 # 3
|
||||
numbersign 9 1 1 # shift 3
|
||||
4 1 1 0 # 4
|
||||
dollar 1 1 1 # shift 4
|
||||
5 0 1 0 # 5
|
||||
percent 0 1 1 # shift 5
|
||||
6 9 2 0 # 6
|
||||
dead_circumflex 9 2 1 # shift 6
|
||||
asciicircum 9 2 1 # shift 6
|
||||
7 1 2 0 # 7
|
||||
ampersand 1 2 1 # shift 7
|
||||
8 0 2 0 # 8
|
||||
asterisk 0 2 1 # shift 8
|
||||
9 9 3 0 # 9
|
||||
parenleft 9 3 1 # shift 9
|
||||
0 1 3 0 # 0
|
||||
parenright 1 3 1 # shift 0
|
||||
|
||||
|
||||
|
||||
# Joystick 2
|
||||
#
|
||||
w -2 6
|
||||
e -2 7
|
||||
r -2 8
|
||||
s -2 4
|
||||
f -2 5
|
||||
x -2 1
|
||||
c -2 2
|
||||
v -2 3
|
||||
space -2 0
|
||||
|
||||
@@ -0,0 +1,381 @@
|
||||
# GTK3-VICE keyboard mapping file suitable for real C64 keyboards using Keymmodore-64 interfase by K-rnivoro
|
||||
# Tested with VICE GTK3 v3.4
|
||||
# Mapped for compatibility to PET Models with Graphics Keyboards only (2000, 3000, 4000, Non-B models).
|
||||
#
|
||||
# PET Graphics Keyboard has only one character and one graphics PETSCII per key.
|
||||
# Keymmodore uses C= Key to access a layer with PET Keys corresponding to shifted symbols of C-64 Keyboard (!/"/#/$/%/&/'/(/)/[/]/</>/?) so you have to hold C= for those keys.
|
||||
# You can access PET graphics PETSCII of those keys by pressing Shift and/or C=. Graphics PETSCII will match the the original PET Graphics Keyboard layout (not labeled in C64).
|
||||
#
|
||||
# Graphics PETSCII set of PET and C-64 are the same so there is no missing graphics PETSCII codes. They just have been redistributed to match C-64 Keyboard.
|
||||
# ANY left C-64 labeled Graphics PETSCII works using C= Key thanks to being remapped by Keymmodore-64.
|
||||
# ANY right C-64 labeled Graphics PETSCII works using Shift keys thanks to being remapped by VICE (this file).
|
||||
#
|
||||
# OFF/REVERSE key is mapped to CTRL (Control) Key.
|
||||
# Backslash Key is mapped to £ (Pound) Key.
|
||||
#
|
||||
#
|
||||
# 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
|
||||
# 256 key is used for an alternative keyboard mapping
|
||||
#
|
||||
# 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
|
||||
#
|
||||
|
||||
# this is a PET graphics keyboard mapping (positional)
|
||||
|
||||
#
|
||||
# Graphics keyboard matrix:
|
||||
#
|
||||
# 0 1 2 3 4 5 6 7
|
||||
# +--------+--------+--------+--------+--------+--------+--------+--------+
|
||||
# 0 | ! | # | % | & | ( | <-- | home |crsr rgt|
|
||||
# +--------+--------+--------+--------+--------+--------+--------+--------+
|
||||
# 1 | " | $ | ' | \ | ) |--------|crsr dwn| del |
|
||||
# +--------+--------+--------+--------+--------+--------+--------+--------+
|
||||
# 2 | q | e | t | u | o | ^ | 7 | 9 |
|
||||
# +--------+--------+--------+--------+--------+--------+--------+--------+
|
||||
# 3 | w | r | y | i | p |--------| 8 | / |
|
||||
# +--------+--------+--------+--------+--------+--------+--------+--------+
|
||||
# 4 | a | d | g | j | l |--------| 4 | 6 |
|
||||
# +--------+--------+--------+--------+--------+--------+--------+--------+
|
||||
# 5 | s | f | h | k | : |--------| 5 | * |
|
||||
# +--------+--------+--------+--------+--------+--------+--------+--------+
|
||||
# 6 | z | c | b | m | ; | return | 1 | 3 |
|
||||
# +--------+--------+--------+--------+--------+--------+--------+--------+
|
||||
# 7 | x | v | n | , | ? |--------| 2 | + |
|
||||
# +--------+--------+--------+--------+--------+--------+--------+--------+
|
||||
# 8 |l shift | @ | ] |--------| > |r shift | 0 | - |
|
||||
# +--------+--------+--------+--------+--------+--------+--------+--------+
|
||||
# 9 | rvs on | [ | space | < | stop |--------| . | = |
|
||||
# +--------+--------+--------+--------+--------+--------+--------+--------+
|
||||
#
|
||||
# The original gfx keyboard reflects the matrix perfectly:
|
||||
#
|
||||
# ! " # $ % ' & \ ( ) <- ^s ^q ^] ^t
|
||||
# q w e r t y u i o p ^ 7 8 9 /
|
||||
# a s d f g h j k l : ^m 4 5 6 *
|
||||
# z x c v b n m , ; ? ^m 1 2 3 +
|
||||
# LS ^r @ [ ] SPACE < > ^c RS 0 . - =
|
||||
#
|
||||
# http://www.6502.org/users/andre/petindex/keyboards.html
|
||||
|
||||
!CLEAR
|
||||
!LSHIFT 8 0
|
||||
!RSHIFT 8 5
|
||||
!VSHIFT RSHIFT
|
||||
!SHIFTL LSHIFT
|
||||
|
||||
|
||||
###### Same Keys than C-64 Keyboard #######
|
||||
|
||||
# RUN/STOP
|
||||
Escape 9 4 8
|
||||
|
||||
# CLR/HOME
|
||||
Home 0 6 8
|
||||
|
||||
# Right/Left Cursor
|
||||
Right 0 7 8
|
||||
|
||||
#Down/Right Cursor
|
||||
Down 1 6 8
|
||||
|
||||
# INST/DEL. (Keymmodore maps both INST/DEL and RESTORE the same because there is no RESTORE Key in PET Keyboards).
|
||||
BackSpace 1 7 0
|
||||
|
||||
# SHIFT
|
||||
Shift_L 8 0 2
|
||||
Shift_R 8 5 4
|
||||
|
||||
# ENTER
|
||||
Return 6 5 8
|
||||
|
||||
# Spacebar
|
||||
space 9 2 8
|
||||
|
||||
# Arrow Up (Only key with one PETSCII and identical function than C64)
|
||||
Delete 2 5 8
|
||||
|
||||
# Arrow Left
|
||||
dead_grave 0 5 0
|
||||
grave 0 5 0
|
||||
|
||||
# Equals (=)
|
||||
backslash 9 7 0
|
||||
bar 9 7 1
|
||||
|
||||
#### (Scattered) Symbol Keys "merged" again into C-64 Keys with no PETSCII
|
||||
|
||||
|
||||
#Colon (:) and Brace Left ([)
|
||||
semicolon 5 4 0
|
||||
colon 5 4 1
|
||||
KP_Subtract 9 1 8 /* Numpad - -> [ */
|
||||
|
||||
# Semicolon (;) and Brace Right (])
|
||||
dead_acute 6 4 0
|
||||
apostrophe 6 4 0
|
||||
dead_diaeresis 6 4 1
|
||||
quotedbl 6 4 1
|
||||
KP_Add 8 2 8 /* Numpad + -> ] */
|
||||
|
||||
# Comma (,) and Less(<)
|
||||
comma 7 3 0
|
||||
less 7 3 1
|
||||
Page_Up 9 3 8 /* PgUp -> < */
|
||||
|
||||
# Period (.) and Greater (>)
|
||||
period 9 6 0
|
||||
greater 9 6 1
|
||||
Page_Down 8 4 8 /* PgDown -> > */
|
||||
|
||||
# Slash (/) and Question (?)
|
||||
slash 3 7 0
|
||||
question 3 7 1
|
||||
KP_Divide 7 4 8 /* Numpad / -> ? */
|
||||
|
||||
#### (Scattered) Symbols and Numbers "merged" again into C-64 Number Keys
|
||||
|
||||
1 6 6 0
|
||||
exclam 6 6 1
|
||||
F1 0 0 8
|
||||
2 7 6 0
|
||||
at 7 6 1
|
||||
F2 1 0 8
|
||||
3 6 7 0
|
||||
numbersign 6 7 1
|
||||
F3 0 1 8
|
||||
4 4 6 0
|
||||
dollar 4 6 1
|
||||
F4 1 1 8
|
||||
5 5 6 0
|
||||
percent 5 6 1
|
||||
F5 0 2 8
|
||||
6 4 7 0
|
||||
dead_circumflex 4 7 1
|
||||
asciicircum 4 7 1
|
||||
F6 0 3 8
|
||||
7 2 6 0
|
||||
ampersand 2 6 1
|
||||
Up 1 2 8
|
||||
8 3 6 0
|
||||
asterisk 3 6 1
|
||||
Left 0 4 8
|
||||
9 2 7 0
|
||||
parenleft 2 7 1
|
||||
F9 1 4 8
|
||||
0 8 6 0
|
||||
parenright 8 6 1
|
||||
|
||||
###### Keys not present in C64 keyboard ######
|
||||
|
||||
# Backslash (\) (Using Pound (£) Key in C64 Keyboard)
|
||||
Tab 1 3 0
|
||||
ISO_Left_Tab 1 4 1
|
||||
|
||||
# OFF / RVS (Using CTRL key in C64 Keyboard)
|
||||
Insert 9 0 8
|
||||
|
||||
|
||||
###### Keys matching C64 keyboard having one character and two PETSCII ######
|
||||
# Right PETSCII with any Shift Key.
|
||||
# Left PETSCII with Commodore Key.
|
||||
# PETSCII are remapped to match C64 Keyboard.
|
||||
|
||||
|
||||
# Plus (+)
|
||||
minus 7 7 0
|
||||
underscore 9 1 1
|
||||
|
||||
|
||||
# Minus (-)
|
||||
equal 8 7 0
|
||||
plus 8 2 1
|
||||
KP_Multiply 1 3 8 /* Numpad * -> \ PETSCII */
|
||||
|
||||
|
||||
# Multiply (*)
|
||||
bracketright 5 7 0
|
||||
braceright 8 1 1
|
||||
dead_perispomeni 0 5 1
|
||||
asciitilde 0 5 1
|
||||
|
||||
# At (@)
|
||||
bracketleft 8 1 0
|
||||
braceleft 5 4 1
|
||||
|
||||
|
||||
###### Letter Keys ######
|
||||
# Right PETSCII with any Shift Key.
|
||||
# Left PETSCII with Commodore Key.
|
||||
# PETSCII are remapped to match C64 Keyboard.
|
||||
|
||||
# Q Key
|
||||
q 2 0 0
|
||||
Q 2 0 1
|
||||
F10 7 7 1
|
||||
|
||||
# W Key
|
||||
w 3 0 0
|
||||
W 3 0 1
|
||||
|
||||
|
||||
# E Key
|
||||
e 2 1 0
|
||||
E 2 1 1
|
||||
|
||||
|
||||
# R Key
|
||||
r 3 1 0
|
||||
R 3 1 1
|
||||
|
||||
# T Key
|
||||
t 2 2 0
|
||||
T 2 2 1
|
||||
|
||||
|
||||
# Y Key
|
||||
y 3 2 0
|
||||
Y 3 2 1
|
||||
|
||||
|
||||
# U Key
|
||||
u 2 3 0
|
||||
U 2 3 1
|
||||
|
||||
|
||||
# I KEY
|
||||
i 3 3 0
|
||||
I 3 3 1
|
||||
|
||||
|
||||
# O Key
|
||||
o 2 4 0
|
||||
O 2 4 1
|
||||
|
||||
|
||||
#P Key
|
||||
p 3 4 0
|
||||
P 3 4 1
|
||||
|
||||
|
||||
# A Key
|
||||
a 4 0 0
|
||||
A 4 0 1
|
||||
|
||||
|
||||
# S Key
|
||||
s 5 0 0
|
||||
S 5 0 1
|
||||
|
||||
|
||||
|
||||
# D Key
|
||||
d 4 1 8
|
||||
D 4 1 1
|
||||
|
||||
|
||||
# F Key
|
||||
f 5 1 0
|
||||
F 5 1 1
|
||||
|
||||
|
||||
# G Key
|
||||
g 4 2 0
|
||||
G 4 2 1
|
||||
|
||||
|
||||
# H Key
|
||||
h 5 2 0
|
||||
H 5 2 1
|
||||
|
||||
|
||||
# J Key
|
||||
j 4 3 0
|
||||
J 4 3 1
|
||||
|
||||
|
||||
# K Key
|
||||
k 5 3 0
|
||||
K 5 3 1
|
||||
|
||||
|
||||
# L Key
|
||||
l 4 4 0
|
||||
L 4 4 1
|
||||
|
||||
|
||||
# Z Key
|
||||
z 6 0 0
|
||||
Z 6 0 1
|
||||
F11 8 7 1
|
||||
|
||||
|
||||
# X Key
|
||||
x 7 0 0
|
||||
X 7 0 1
|
||||
|
||||
|
||||
# C Key
|
||||
c 6 1 0
|
||||
C 6 1 1
|
||||
|
||||
|
||||
# V Key
|
||||
v 7 1 0
|
||||
V 7 1 1
|
||||
|
||||
|
||||
# B Key
|
||||
b 6 2 0
|
||||
B 6 2 1
|
||||
|
||||
|
||||
# N Key
|
||||
n 7 2 0
|
||||
N 7 2 1
|
||||
Alt_L 5 7 1
|
||||
|
||||
# M Key
|
||||
m 6 3 0
|
||||
M 6 3 1
|
||||
|
||||
|
||||
# joystick keymap A (port 1)
|
||||
KP_8 -1 7 /* NumPad 8 -> UP */
|
||||
KP_2 -1 2 /* NumPad 2 -> DOWN */
|
||||
KP_4 -1 4 /* NumPad 4 -> LEFT */
|
||||
KP_6 -1 5 /* NumPad 6 -> RIGHT */
|
||||
KP_0 -1 0 /* NumPad 0 -> FIRE */
|
||||
|
||||
# joystick Keymap B (port 2)
|
||||
KP_7 -2 7 /* NumPad 7 -> UP */
|
||||
KP_3 -2 2 /* NumPad 3 -> DOWN */
|
||||
KP_1 -2 4 /* NumPad 1 -> LEFT */
|
||||
KP_9 -2 5 /* NumPad 9 -> RIGHT */
|
||||
KP_Decimal -2 0 /* NumPad . -> FIRE */
|
||||
@@ -0,0 +1,267 @@
|
||||
# GTK3-VICE keyboard mapping file suitable for real C64 keyboards using Keymmodore-64 interfase by K-rnivoro
|
||||
# Mapped for compatibility to PLUS/4 and C16.
|
||||
# If C64 keyboard has the same key, function is prefered over position (like CLR/HOME, Equal and Pound Keys).
|
||||
# The most important differences are:
|
||||
# Arrow Left is ESCAPE
|
||||
# Arrow Up Key is Cursor Up
|
||||
# RESTORE Key is Cursor Left
|
||||
#
|
||||
# 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
|
||||
# 'keysym -5 n' joyport keypad, key n
|
||||
#
|
||||
# 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.
|
||||
#
|
||||
#############################################################################
|
||||
#
|
||||
# Commodore 16/116/Plus-4 keyboard matrix:
|
||||
#
|
||||
# 0 1 2 3 4 5 6 7
|
||||
# +--------+--------+--------+--------+--------+--------+--------+--------+
|
||||
# 0 |INST-DEL|RETURN |POUND |HELP-F7 |F1-F4 |F2-F5 |F3-F6 |@ |
|
||||
# +--------+--------+--------+--------+--------+--------+--------+--------+
|
||||
# 1 |3 # |W |A |4 $ |Z |S |E |SHIFT |
|
||||
# +--------+--------+--------+--------+--------+--------+--------+--------+
|
||||
# 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|CTRL |2 " |SPACE |C= |Q |RUN-STOP|
|
||||
# +--------+--------+--------+--------+--------+--------+--------+--------+
|
||||
#
|
||||
#############################################################################
|
||||
|
||||
|
||||
!CLEAR
|
||||
!LSHIFT 1 7
|
||||
!RSHIFT 1 7
|
||||
!VSHIFT RSHIFT
|
||||
|
||||
|
||||
# Tab = CTRL
|
||||
Tab 7 2 8
|
||||
# Shift + Tab = CTRL
|
||||
ISO_Left_Tab 7 2 8
|
||||
|
||||
# Control_L = CBM
|
||||
Control_L 7 5 8
|
||||
|
||||
#Backspace = INST/DEL
|
||||
BackSpace 0 0 8
|
||||
|
||||
Delete 5 3 8
|
||||
Down 5 0 8
|
||||
Page_Up 6 0 8
|
||||
Right 6 3 8
|
||||
|
||||
# ESCAPE = RUN/STOP
|
||||
Escape 7 7 8
|
||||
|
||||
# Grave = ESCAPE
|
||||
grave 6 4 8
|
||||
asciitilde 6 4 8
|
||||
dead_grave 6 4 8
|
||||
dead_perispomeni 6 4 8
|
||||
|
||||
# Insert = Pound
|
||||
Insert 0 2 8
|
||||
|
||||
|
||||
# Minus and Underscore = Plus
|
||||
minus 6 6 0
|
||||
underscore 6 6 8
|
||||
|
||||
# Equal and Plus = Minus
|
||||
equal 5 6 0
|
||||
plus 5 6 8
|
||||
|
||||
# Bracket/Brace Left = At
|
||||
bracketleft 0 7 8
|
||||
braceleft 0 7 8
|
||||
|
||||
#Bracket/Brace Right = Asterisk
|
||||
braceright 6 1 8
|
||||
bracketright 6 1 8
|
||||
|
||||
1 7 0 8
|
||||
exclam 7 0 8
|
||||
2 7 3 8
|
||||
at 7 3 8
|
||||
3 1 0 8
|
||||
numbersign 1 0 8
|
||||
4 1 3 8
|
||||
dollar 1 3 8
|
||||
5 2 0 8
|
||||
percent 2 0 8
|
||||
6 2 3 8
|
||||
dead_circumflex 2 3 8
|
||||
asciicircum 2 3 8
|
||||
7 3 0 8
|
||||
ampersand 3 0 8
|
||||
8 3 3 8
|
||||
asterisk 3 3 8
|
||||
9 4 0 8
|
||||
parenleft 4 0 8
|
||||
0 4 3 8
|
||||
parenright 4 3 8
|
||||
|
||||
slash 6 7 8
|
||||
question 6 7 8
|
||||
|
||||
backslash 6 5 8
|
||||
bar 6 5 8
|
||||
|
||||
apostrophe 6 2 8
|
||||
quotedbl 6 2 8
|
||||
dead_acute 6 2 8
|
||||
dead_diaeresis 6 2 8
|
||||
|
||||
colon 5 5 8
|
||||
semicolon 5 5 8
|
||||
|
||||
less 5 7 8
|
||||
comma 5 7 8
|
||||
|
||||
greater 5 4 8
|
||||
period 5 4 8
|
||||
|
||||
parenleft 4 0 8
|
||||
parenright 4 3 8
|
||||
|
||||
F1 0 4 8
|
||||
F3 0 5 8
|
||||
F5 0 6 8
|
||||
F7 0 3 8
|
||||
Home 7 1 8
|
||||
Return 0 1 8
|
||||
Shift_L 1 7 2
|
||||
Shift_R 1 7 4
|
||||
space 7 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
|
||||
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
|
||||
|
||||
# joystick keymap A (port 1)
|
||||
KP_8 -1 7 /* NumPad 8 -> UP */
|
||||
KP_2 -1 2 /* NumPad 2 -> DOWN */
|
||||
KP_4 -1 4 /* NumPad 4 -> LEFT */
|
||||
KP_6 -1 5 /* NumPad 6 -> RIGHT */
|
||||
KP_0 -1 0 /* NumPad 0 -> FIRE */
|
||||
|
||||
# joystick Keymap B (port 2)
|
||||
KP_7 -2 7 /* NumPad 7 -> UP */
|
||||
KP_3 -2 2 /* NumPad 3 -> DOWN */
|
||||
KP_1 -2 4 /* NumPad 1 -> LEFT */
|
||||
KP_9 -2 5 /* NumPad 9 -> RIGHT */
|
||||
KP_Decimal -2 0 /* NumPad . -> FIRE */
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1,270 @@
|
||||
# VICE GTK3 based keyboard mapping file suitable for real C64 keyboards using Keymmodore-64 interfase by K-rnivoro. https://www.keymmodore.com/
|
||||
# Tested with VICE GTK3 v3.4
|
||||
# Using default positional VICE layout.
|
||||
#
|
||||
#
|
||||
# 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
|
||||
#
|
||||
# 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
|
||||
# 'keysym -4 1' CAPS (ASCII/DIN) key
|
||||
# 'keysym -5 n' joyport keypad, key n
|
||||
#
|
||||
# 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.
|
||||
|
||||
# Positional Mapping, US Layout, VIC20, X11
|
||||
|
||||
# VIC20 Keyboard matrix
|
||||
#
|
||||
# +-----+-----+-----+-----+-----+-----+-----+-----+
|
||||
# |Bit 0|Bit 1|Bit 2|Bit 3|Bit 4|Bit 5|Bit 6|Bit 7|
|
||||
# +-----+-----+-----+-----+-----+-----+-----+-----+-----+
|
||||
# |Bit 0| 1 ! |A_LFT| CTRL| R/S |SPACE| C= | Q | 2 " |
|
||||
# +-----+-----+-----+-----+-----+-----+-----+-----+-----+
|
||||
# |Bit 1| 3 # | W | A | S_L | Z | S | E | 4 $ |
|
||||
# +-----+-----+-----+-----+-----+-----+-----+-----+-----+
|
||||
# |Bit 2| 5 % | R | D | X | C | F | T | 6 & |
|
||||
# +-----+-----+-----+-----+-----+-----+-----+-----+-----+
|
||||
# |Bit 3| 7 ' | Y | G | V | B | H | U | 8 ( |
|
||||
# +-----+-----+-----+-----+-----+-----+-----+-----+-----+
|
||||
# |Bit 4| 9 ) | I | J | N | M | K | O | 0 |
|
||||
# +-----+-----+-----+-----+-----+-----+-----+-----+-----+
|
||||
# |Bit 5| + | P | L | , < | . > | : [ | @ | - |
|
||||
# +-----+-----+-----+-----+-----+-----+-----+-----+-----+
|
||||
# |Bit 6|POUND| * | ; ] | / ? | S_R | = | A_UP| HOME|
|
||||
# +-----+-----+-----+-----+-----+-----+-----+-----+-----+
|
||||
# |Bit 7| DEL |Retrn|C_L/R|C_U/D| F1 | F3 | F5 | F7 |
|
||||
# +-----+-----+-----+-----+-----+-----+-----+-----+-----+
|
||||
|
||||
!CLEAR
|
||||
!LSHIFT 1 3
|
||||
!RSHIFT 6 4
|
||||
!VSHIFT RSHIFT
|
||||
|
||||
#####################
|
||||
# |Bit 0| 1 ! |A_LFT| CTRL| R/S |SPACE| C= | Q | 2 " |
|
||||
|
||||
exclam 0 0 8
|
||||
# grave / tilde -> arrow left
|
||||
asciitilde 0 1 8
|
||||
grave 0 1 8
|
||||
# Tab = CTRL
|
||||
Tab 0 2 8
|
||||
# Shift + Tab = CTRL
|
||||
ISO_Left_Tab 0 2 8
|
||||
Escape 0 3 8
|
||||
space 0 4 8
|
||||
# Control_L = CBM
|
||||
Control_L 0 5 8
|
||||
at 0 7 8
|
||||
|
||||
#####################
|
||||
# |Bit 1| 3 # | W | A | S_L | Z | S | E | 4 $ |
|
||||
|
||||
numbersign 1 0 8
|
||||
Shift_L 1 3 2
|
||||
dollar 1 7 8
|
||||
|
||||
#####################
|
||||
# |Bit 2| 5 % | R | D | X | C | F | T | 6 & |
|
||||
|
||||
percent 2 0 8
|
||||
asciicircum 2 7 8
|
||||
|
||||
#####################
|
||||
# |Bit 3| 7 ' | Y | G | V | B | H | U | 8 ( |
|
||||
|
||||
ampersand 3 0 8
|
||||
asterisk 3 7 8
|
||||
|
||||
#####################
|
||||
# |Bit 4| 9 ) | I | J | N | M | K | O | 0 |
|
||||
|
||||
parenleft 4 0 8
|
||||
parenright 4 7 8
|
||||
|
||||
#####################
|
||||
# |Bit 5| + | P | L | , < | . > | : [ | @ | - |
|
||||
|
||||
minus 5 0 8
|
||||
underscore 5 0 8
|
||||
comma 5 3 8
|
||||
less 5 3 8
|
||||
period 5 4 8
|
||||
greater 5 4 8
|
||||
colon 5 5 8
|
||||
semicolon 5 5 8
|
||||
braceleft 5 6 8
|
||||
bracketleft 5 6 8
|
||||
plus 5 7 8
|
||||
equal 5 7 8
|
||||
|
||||
#####################
|
||||
# |Bit 6|POUND| * | ; ] | / ? | S_R | = | A_UP| HOME|
|
||||
|
||||
sterling 6 0 8
|
||||
Insert 6 0 8
|
||||
braceright 6 1 8
|
||||
bracketright 6 1 8
|
||||
apostrophe 6 2 8
|
||||
quotedbl 6 2 8
|
||||
question 6 3 8
|
||||
slash 6 3 8
|
||||
Shift_R 6 4 4
|
||||
backslash 6 5 8
|
||||
bar 6 5 8
|
||||
Delete 6 6 8
|
||||
Home 6 7 8
|
||||
|
||||
#####################
|
||||
# |Bit 7| DEL |Retrn|C_L/R|C_U/D| F1 | F3 | F5 | F7 |
|
||||
|
||||
BackSpace 7 0 8
|
||||
Return 7 1 8
|
||||
Right 7 2 8
|
||||
Down 7 3 8
|
||||
F1 7 4 8
|
||||
F3 7 5 8
|
||||
F5 7 6 8
|
||||
F7 7 7 8
|
||||
|
||||
#####################
|
||||
# letters and numbers
|
||||
|
||||
0 4 7 8
|
||||
1 0 0 8
|
||||
2 0 7 8
|
||||
3 1 0 8
|
||||
4 1 7 8
|
||||
5 2 0 8
|
||||
6 2 7 8
|
||||
7 3 0 8
|
||||
8 3 7 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 3 8
|
||||
O 4 6 8
|
||||
P 5 1 8
|
||||
Q 0 6 8
|
||||
R 2 1 8
|
||||
S 1 5 8
|
||||
T 2 6 8
|
||||
U 3 6 8
|
||||
V 3 3 8
|
||||
W 1 1 8
|
||||
X 2 3 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 3 8
|
||||
o 4 6 8
|
||||
p 5 1 8
|
||||
q 0 6 8
|
||||
r 2 1 8
|
||||
s 1 5 8
|
||||
t 2 6 8
|
||||
u 3 6 8
|
||||
v 3 3 8
|
||||
w 1 1 8
|
||||
x 2 3 8
|
||||
y 3 1 8
|
||||
z 1 4 8
|
||||
|
||||
# Restore key mappings
|
||||
Page_Up -3 0
|
||||
|
||||
|
||||
# Dead keys support for those using US-International keyboard layout.
|
||||
dead_circumflex 2 7 8 # &
|
||||
dead_tilde 0 1 8 # A_LFT <-
|
||||
dead_grave 0 1 8 # A_LFT <-
|
||||
dead_acute 6 2 8 # ;
|
||||
dead_diaeresis 6 2 8 # ]
|
||||
|
||||
# joystick keymap A (port 1)
|
||||
KP_8 -1 7 /* NumPad 8 -> UP */
|
||||
KP_2 -1 2 /* NumPad 2 -> DOWN */
|
||||
KP_4 -1 4 /* NumPad 4 -> LEFT */
|
||||
KP_6 -1 5 /* NumPad 6 -> RIGHT */
|
||||
KP_0 -1 0 /* NumPad 0 -> FIRE */
|
||||
|
||||
# joystick Keymap B (port 2)
|
||||
KP_7 -2 7 /* NumPad 7 -> UP */
|
||||
KP_3 -2 2 /* NumPad 3 -> DOWN */
|
||||
KP_1 -2 4 /* NumPad 1 -> LEFT */
|
||||
KP_9 -2 5 /* NumPad 9 -> RIGHT */
|
||||
KP_Decimal -2 0 /* NumPad . -> FIRE */
|
||||
@@ -0,0 +1,217 @@
|
||||
# VICE SDL based keyboard mapping file suitable for real C64 keyboards using Keymmodore-64 interfase by K-rnivoro. https://www.keymmodore.com/
|
||||
# Tested with VICE 3.1 SDL2 (https://vice-emu.sourceforge.io/windows.html)
|
||||
# Mapped for positional compatibility to C-128 Keyboards.
|
||||
# Based on C64 Positional Layout.
|
||||
# Keys not present in C-64 (like NumPad Keys, ESC, TAB) are accessed with Right Shift Key.
|
||||
#
|
||||
# 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
|
||||
#
|
||||
|
||||
# C128 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 |
|
||||
# +-----+-----+-----+-----+-----+-----+-----+-----+-----+
|
||||
#
|
||||
# +-----+-----+-----+-----+-----+-----+-----+-----+
|
||||
# |Bit 0|Bit 1|Bit 2|Bit 3|Bit 4|Bit 5|Bit 6|Bit 7|
|
||||
# +------+-----+-----+-----+-----+-----+-----+-----+-----+
|
||||
# |Bit 8 |HELP | KP 8| KP 5| TAB | KP 2| KP 4| KP 7| KP 1|
|
||||
# +------+-----+-----+-----+-----+-----+-----+-----+-----+
|
||||
# |Bit 9 | ESC | KP +| KP -| LF |KP CR| KP 6| KP 9| KP 3|
|
||||
# +------+-----+-----+-----+-----+-----+-----+-----+-----+
|
||||
# |Bit 10| ALT | KP 0| KP .|A.UP |A.DWN|A.LFT|A.RGT|NOSCR|
|
||||
# +------+-----+-----+-----+-----+-----+-----+-----+-----+
|
||||
|
||||
!CLEAR
|
||||
!LSHIFT 1 7
|
||||
!RSHIFT 6 4
|
||||
!VSHIFT RSHIFT
|
||||
|
||||
# 40/80 column key
|
||||
287 -4 0 /* F6 -> 40/80 DISPLAY */
|
||||
|
||||
# CAPS LOCK (ASCII/DIN) key
|
||||
291 -4 1 /* F10 -> CAPS LOCK */
|
||||
|
||||
# RESTORE key
|
||||
280 -3 0
|
||||
|
||||
#####################
|
||||
# |Bit 0| DEL |Retrn|C_L/R| F7 | F1 | F3 | F5 |C_U/D|
|
||||
|
||||
8 0 0 8
|
||||
13 0 1 8
|
||||
275 0 2 8
|
||||
282 0 4 8
|
||||
284 0 5 8
|
||||
286 0 6 8
|
||||
288 0 3 8
|
||||
274 0 7 8
|
||||
|
||||
#####################
|
||||
# |Bit 1| 3 # | W | A | 4 $ | Z | S | E | S_L |
|
||||
|
||||
304 1 7 2
|
||||
|
||||
#####################
|
||||
# |Bit 5| + | P | L | - | . > | : [ | @ | , < |
|
||||
|
||||
45 5 0 8
|
||||
61 5 3 8
|
||||
46 5 4 8
|
||||
59 5 5 8
|
||||
91 5 6 8
|
||||
44 5 7 8
|
||||
|
||||
#####################
|
||||
# |Bit 6| POUND | * | ; ] | HOME| S_R | = | A_UP| / ? |
|
||||
|
||||
277 6 0 8
|
||||
93 6 1 8
|
||||
39 6 2 8
|
||||
278 6 3 8
|
||||
303 6 4 4
|
||||
92 6 5 8
|
||||
127 6 6 8
|
||||
47 6 7 8
|
||||
|
||||
|
||||
#####################
|
||||
# |Bit 7| 1 ! |A_LFT| CTRL| 2 " |SPACE| C= | Q | R/S |
|
||||
|
||||
96 7 1 8 # Arrow_LFT
|
||||
9 7 2 8 /* TAB -> Control */
|
||||
32 7 4 8 # Space Bar
|
||||
306 7 5 8 # CBM Key
|
||||
27 7 7 8 # RUN/STOP
|
||||
|
||||
#####################
|
||||
# |Bit 8 |HELP | KP 8| KP 5| TAB | KP 2| KP 4| KP 7| KP 1|
|
||||
|
||||
283 8 0 8 /* F2 -> HELP */
|
||||
264 8 1 8
|
||||
261 8 2 8
|
||||
292 8 3 8 /* F11 -> TAB */
|
||||
258 8 4 8
|
||||
260 8 5 8
|
||||
263 8 6 8
|
||||
257 8 7 8
|
||||
|
||||
#####################
|
||||
# |Bit 9 | ESC | KP +| KP -| LF |KP CR| KP 6| KP 9| KP 3|
|
||||
|
||||
268 9 0 8
|
||||
270 9 1 8
|
||||
269 9 2 8
|
||||
285 9 3 8 /* F4 -> LINE FEED */
|
||||
271 9 4 8
|
||||
262 9 5 8
|
||||
265 9 6 8
|
||||
259 9 7 8
|
||||
|
||||
#####################
|
||||
# |Bit 10| ALT | KP 0| KP .|A.UP |A.DWN|A.LFT|A.RGT|NOSCR|
|
||||
|
||||
290 10 0 8
|
||||
256 10 1 8
|
||||
266 10 2 8
|
||||
273 10 3 8
|
||||
276 10 5 8
|
||||
267 10 7 8 /* Numpad / -> NO SCROLL */
|
||||
|
||||
# Numbers
|
||||
49 7 0 8 /* 1 -> 1 */
|
||||
50 7 3 8 /* 2 -> 2 */
|
||||
51 1 0 8 /* 3 -> 3 */
|
||||
52 1 3 8 /* 4 -> 4 */
|
||||
53 2 0 8 /* 5 -> 5 */
|
||||
54 2 3 8 /* 6 -> 6 */
|
||||
55 3 0 8 /* 7 -> 7 */
|
||||
56 3 3 8 /* 8 -> 8 */
|
||||
57 4 0 8 /* 9 -> 9 */
|
||||
48 4 3 8 /* 0 -> 0 */
|
||||
|
||||
# Letters
|
||||
113 7 6 8 /* Q -> Q */
|
||||
119 1 1 8 /* W -> W */
|
||||
101 1 6 8 /* E -> E */
|
||||
114 2 1 8 /* R -> R */
|
||||
116 2 6 8 /* T -> T */
|
||||
121 3 1 8 /* Y -> Y */
|
||||
117 3 6 8 /* U -> U */
|
||||
105 4 1 8 /* I -> I */
|
||||
111 4 6 8 /* O -> O */
|
||||
112 5 1 8 /* P -> P */
|
||||
97 1 2 8 /* A -> A */
|
||||
115 1 5 8 /* S -> S */
|
||||
100 2 2 8 /* D -> D */
|
||||
102 2 5 8 /* F -> F */
|
||||
103 3 2 8 /* G -> G */
|
||||
104 3 5 8 /* H -> H */
|
||||
106 4 2 8 /* J -> J */
|
||||
107 4 5 8 /* K -> K */
|
||||
108 5 2 8 /* L -> L */
|
||||
122 1 4 8 /* Z -> Z */
|
||||
120 2 7 8 /* X -> X */
|
||||
99 2 4 8 /* C -> C */
|
||||
118 3 7 8 /* V -> V */
|
||||
98 3 4 8 /* B -> B */
|
||||
110 4 7 8 /* N -> N */
|
||||
109 4 4 8 /* M -> M */
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1,184 @@
|
||||
# VICE SDL based keyboard mapping file suitable for real C64 keyboards using Keymmodore-64 interfase by K-rnivoro. https://www.keymmodore.com/
|
||||
# Tested with VICE 3.1 SDL2 (https://vice-emu.sourceforge.io/windows.html)
|
||||
# Using default positional VICE layout.
|
||||
#
|
||||
#
|
||||
# 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
|
||||
#
|
||||
# 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
|
||||
# 'keysym -4 1' CAPS (ASCII/DIN) key
|
||||
# 'keysym -5 n' joyport keypad, key n
|
||||
#
|
||||
# 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.
|
||||
|
||||
# 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 |
|
||||
# +-----+-----+-----+-----+-----+-----+-----+-----+-----+
|
||||
|
||||
!CLEAR
|
||||
!LSHIFT 1 7
|
||||
!RSHIFT 6 4
|
||||
!VSHIFT RSHIFT
|
||||
!SHIFTL LSHIFT
|
||||
|
||||
27 7 7 8 /* ESC -> Run/Stop */
|
||||
49 7 0 8 /* 1 -> 1 */
|
||||
50 7 3 8 /* 2 -> 2 */
|
||||
51 1 0 8 /* 3 -> 3 */
|
||||
52 1 3 8 /* 4 -> 4 */
|
||||
53 2 0 8 /* 5 -> 5 */
|
||||
54 2 3 8 /* 6 -> 6 */
|
||||
55 3 0 8 /* 7 -> 7 */
|
||||
56 3 3 8 /* 8 -> 8 */
|
||||
57 4 0 8 /* 9 -> 9 */
|
||||
48 4 3 8 /* 0 -> 0 */
|
||||
45 5 0 8 /* Minus -> Plus */
|
||||
61 5 3 8 /* Equal -> Minus */
|
||||
8 0 0 8 /* Backspace -> Del */
|
||||
9 7 2 8 /* TAB -> Ctrl */
|
||||
113 7 6 8 /* Q -> Q */
|
||||
119 1 1 8 /* W -> W */
|
||||
101 1 6 8 /* E -> E */
|
||||
114 2 1 8 /* R -> R */
|
||||
116 2 6 8 /* T -> T */
|
||||
121 3 1 8 /* Y -> Y */
|
||||
117 3 6 8 /* U -> U */
|
||||
105 4 1 8 /* I -> I */
|
||||
111 4 6 8 /* O -> O */
|
||||
112 5 1 8 /* P -> P */
|
||||
91 5 6 8 /* [ -> @ */
|
||||
93 6 1 8 /* ] -> * */
|
||||
13 0 1 8 /* Return -> Return */
|
||||
306 7 5 8 /* Left Ctrl -> CBM */
|
||||
97 1 2 8 /* A -> A */
|
||||
115 1 5 8 /* S -> S */
|
||||
100 2 2 8 /* D -> D */
|
||||
102 2 5 8 /* F -> F */
|
||||
103 3 2 8 /* G -> G */
|
||||
104 3 5 8 /* H -> H */
|
||||
106 4 2 8 /* J -> J */
|
||||
107 4 5 8 /* K -> K */
|
||||
108 5 2 8 /* L -> L */
|
||||
59 5 5 8 /* ; -> : */
|
||||
39 6 2 8 /* ' -> ; */
|
||||
96 7 1 8 /* ` -> Left Arrow */
|
||||
92 6 5 8 /* \ -> = */
|
||||
304 1 7 2 /* Left Shift -> Left Shift */
|
||||
301 1 7 64 /* Caps Lock -> Shift Lock */
|
||||
122 1 4 8 /* Z -> Z */
|
||||
120 2 7 8 /* X -> X */
|
||||
99 2 4 8 /* C -> C */
|
||||
118 3 7 8 /* V -> V */
|
||||
98 3 4 8 /* B -> B */
|
||||
110 4 7 8 /* N -> N */
|
||||
109 4 4 8 /* M -> M */
|
||||
44 5 7 8 /* , -> , */
|
||||
46 5 4 8 /* . -> . */
|
||||
47 6 7 8 /* / -> / */
|
||||
303 6 4 4 /* Right Shift -> Right Shift */
|
||||
32 7 4 8 /* Space -> Space */
|
||||
282 0 4 8 /* F1 -> F1 */
|
||||
283 0 4 1 /* F2 -> F2 */
|
||||
284 0 5 8 /* F3 -> F3 */
|
||||
285 0 5 1 /* F4 -> F4 */
|
||||
286 0 6 8 /* F5 -> F5 */
|
||||
287 0 6 1 /* F6 -> F6 */
|
||||
288 0 3 8 /* F7 -> F7 */
|
||||
289 0 3 1 /* F8 -> F8 */
|
||||
278 6 3 8 /* Home -> CLR/HOME */
|
||||
273 0 7 1 /* Up -> CRSR UP */
|
||||
276 0 2 1 /* Left -> CRSR LEFT */
|
||||
275 0 2 8 /* Right -> CRSR RIGHT */
|
||||
274 0 7 8 /* Down -> CRSR DOWN */
|
||||
277 6 0 8 /* Ins -> Pound */
|
||||
127 6 6 8 /* Del -> Up Arrow */
|
||||
|
||||
# Restore key mappings
|
||||
280 -3 0
|
||||
|
||||
# joystick keymap A (port 1)
|
||||
264 -1 7 /* NumPad 8 -> UP */
|
||||
258 -1 2 /* NumPad 2 -> DOWN */
|
||||
260 -1 4 /* NumPad 4 -> LEFT */
|
||||
262 -1 5 /* NumPad 6 -> RIGHT */
|
||||
256 -1 0 /* NumPad 0 -> FIRE */
|
||||
|
||||
# joystick Keymap B (port 2)
|
||||
263 -2 7 /* NumPad 7 -> UP */
|
||||
259 -2 2 /* NumPad 3 -> DOWN */
|
||||
257 -2 4 /* NumPad 1 -> LEFT */
|
||||
265 -2 5 /* NumPad 9 -> RIGHT */
|
||||
266 -2 0 /* NumPad . -> FIRE */
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1,239 @@
|
||||
# VICE SDL keyboard mapping file suitable for real C64 keyboards using Keymmodore-64 interfase by K-rnivoro. https://www.keymmodore.com/
|
||||
# Tested with VICE 3.1 SDL2 (https://vice-emu.sourceforge.io/windows.html)
|
||||
# Mapped for compatibility to PET Models with Business Keyboards only (3000B, 4000B and 8000 models).
|
||||
# Based on C64 Positional Layout.
|
||||
#
|
||||
# ESCAPE is mapped to F1 Key.
|
||||
# OFF/REVERSE is mapped to F3 Key.
|
||||
# REPEAT is mapped to F5 Key.
|
||||
# Backslash is mapped to £ (Pound) Key.
|
||||
# TAB is mapped to CTRL Key.
|
||||
# NumericPad Keys (1 to 0 and Dot) and Brackets ([/]) are accessed by pressing Commodore Key (C=).
|
||||
#
|
||||
# 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
|
||||
#
|
||||
|
||||
# this is a PET business (uk) keyboard mapping (symbolic)
|
||||
|
||||
# Business (UK) keyboard matrix:
|
||||
#
|
||||
# Keys starting with 'KP' are on the number pad.
|
||||
#
|
||||
# 0 1 2 3 4 5 6 7
|
||||
# +--------+--------+--------+--------+--------+--------+--------+--------+
|
||||
# 0 | 2 | 5 | 8 | - | KP8 |crsr rgt| ^N | . |
|
||||
# +--------+--------+--------+--------+--------+--------+--------+--------+
|
||||
# 1 | 1 | 4 | 7 | 0 | KP7 | ^ |--------| KP9 |
|
||||
# +--------+--------+--------+--------+--------+--------+--------+--------+
|
||||
# 2 | escape | s | f | h | ] | k | ; | KP5 |
|
||||
# +--------+--------+--------+--------+--------+--------+--------+--------+
|
||||
# 3 | a | d | g | j | return | l | @ | KP6 |
|
||||
# +--------+--------+--------+--------+--------+--------+--------+--------+
|
||||
# 4 | tab | w | r | y | \ | i | p | del |
|
||||
# +--------+--------+--------+--------+--------+--------+--------+--------+
|
||||
# 5 | q | e | t | u |crsr dwn| o | [ | KP4 |
|
||||
# +--------+--------+--------+--------+--------+--------+--------+--------+
|
||||
# 6 |l shift | c | b | . | KP. | ^Y |r shift | KP3 |
|
||||
# +--------+--------+--------+--------+--------+--------+--------+--------+
|
||||
# 7 | z | v | n | , | KP0 | ^O | repeat | KP2 |
|
||||
# +--------+--------+--------+--------+--------+--------+--------+--------+
|
||||
# 8 | RVS | x | space | m | home | ^U | / | KP1 |
|
||||
# +--------+--------+--------+--------+--------+--------+--------+--------+
|
||||
# 9 | <-- | 3 | 6 | 9 |runstop | : |--------| ^V |
|
||||
# +--------+--------+--------+--------+--------+--------+--------+--------+
|
||||
#
|
||||
# ^N = both shifts + 2
|
||||
# ^Y = left shift + TAB + I
|
||||
# ^O = Z + A + L
|
||||
# ^U = RVS + A + L
|
||||
# ^V = TAB + <- + DEL
|
||||
#
|
||||
# Business (US) matrix (differences to UK)
|
||||
# +--------+--------+--------+--------+--------+--------+--------+--------+
|
||||
# 2 | | | | | ; | | \ | |
|
||||
# +--------+--------+--------+--------+--------+--------+--------+--------+
|
||||
# 3 | | | | | | | [ | |
|
||||
# +--------+--------+--------+--------+--------+--------+--------+--------+
|
||||
# 4 | | | | | @ | | | |
|
||||
# +--------+--------+--------+--------+--------+--------+--------+--------+
|
||||
# 5 | | | | | | | ] | |
|
||||
# +--------+--------+--------+--------+--------+--------+--------+--------+
|
||||
|
||||
!CLEAR
|
||||
!LSHIFT 6 0
|
||||
!RSHIFT 6 6
|
||||
!VSHIFT RSHIFT
|
||||
|
||||
|
||||
###### Same Keys than C-64 Keyboard
|
||||
|
||||
# RUN/STOP
|
||||
27 9 4 8
|
||||
|
||||
# CLR/HOME
|
||||
278 8 4 8
|
||||
|
||||
# LEFT/RIGHT
|
||||
275 0 5 8
|
||||
|
||||
# UP/DOWN
|
||||
274 5 4 8
|
||||
|
||||
#INST/DEL
|
||||
# Keymmodore maps both INST/DEL and RESTORE keys the same because there is no RESTORE Key in PET Keyboards.
|
||||
8 4 7 8
|
||||
|
||||
# SHIFT
|
||||
304 6 0 2
|
||||
303 6 6 4
|
||||
|
||||
# ENTER
|
||||
13 3 4 8
|
||||
|
||||
# Arrow Up
|
||||
127 1 5 8
|
||||
|
||||
# Arrow Left
|
||||
96 9 0 8
|
||||
|
||||
# @
|
||||
91 3 6 8
|
||||
|
||||
# </,
|
||||
44 7 3 8
|
||||
|
||||
# >/.
|
||||
46 6 3 8
|
||||
|
||||
# ?//
|
||||
47 8 6 8
|
||||
|
||||
# Space Bar
|
||||
32 8 2 8
|
||||
|
||||
|
||||
|
||||
##### Keys of C-64 real Keyboard non present in PET Business Keyboard
|
||||
|
||||
# + (Plus)
|
||||
45 2 6 1
|
||||
|
||||
# - (Minus)
|
||||
61 0 3 16
|
||||
|
||||
# * (Asterisk)
|
||||
93 9 5 1
|
||||
|
||||
# \ (Using Pound Key)
|
||||
277 4 4 16
|
||||
|
||||
###### Keys of real PET Business Keyboard not present in C-64 Keyboard
|
||||
|
||||
# ESCAPE <-- F1
|
||||
282 2 0 8
|
||||
|
||||
# OFF/RVS <-- F3
|
||||
284 8 0 8
|
||||
|
||||
# REPEAT <-- F5
|
||||
286 7 6 8
|
||||
|
||||
# TAB
|
||||
9 4 0 8
|
||||
|
||||
# =/- (only =)
|
||||
92 0 3 1
|
||||
|
||||
# */: (only :)
|
||||
59 9 5 0
|
||||
# [ <--- F10 (mapped to F10 to be used with C= Key)
|
||||
291 5 6 16
|
||||
|
||||
# +/; (only ;)
|
||||
39 2 6 0
|
||||
# ] <--- F11 (mapped to F11 to be used with C= Key)
|
||||
292 2 4 16
|
||||
|
||||
##### Numeric Pad Keys(With C= Key)
|
||||
256 7 4 8
|
||||
257 8 7 8
|
||||
258 7 7 8
|
||||
259 6 7 8
|
||||
260 5 7 8
|
||||
261 2 7 8
|
||||
262 3 7 8
|
||||
263 1 4 8
|
||||
264 0 4 8
|
||||
265 1 7 8
|
||||
266 6 4 8
|
||||
|
||||
##### Numbers Key
|
||||
49 1 0 8 /* 1 -> 1 */
|
||||
50 0 0 8 /* 2 -> 2 */
|
||||
51 9 1 8 /* 3 -> 3 */
|
||||
52 1 1 8 /* 4 -> 4 */
|
||||
53 0 1 8 /* 5 -> 5 */
|
||||
54 9 2 8 /* 6 -> 6 */
|
||||
55 1 2 8 /* 7 -> 7 */
|
||||
56 0 2 8 /* 8 -> 8 */
|
||||
57 9 3 8 /* 9 -> 9 */
|
||||
48 1 3 8 /* 0 -> 0 */
|
||||
|
||||
|
||||
|
||||
##### Letter Keys
|
||||
113 5 0 8 /* Q -> Q */
|
||||
119 4 1 8 /* W -> W */
|
||||
101 5 1 8 /* E -> E */
|
||||
114 4 2 8 /* R -> R */
|
||||
116 5 2 8 /* T -> T */
|
||||
121 4 3 8 /* Y -> Y */
|
||||
117 5 3 8 /* U -> U */
|
||||
105 4 5 8 /* I -> I */
|
||||
111 5 5 8 /* O -> O */
|
||||
112 4 6 8 /* P -> P */
|
||||
97 3 0 8 /* A -> A */
|
||||
115 2 1 8 /* S -> S */
|
||||
100 3 1 8 /* D -> D */
|
||||
102 2 2 8 /* F -> F */
|
||||
103 3 2 8 /* G -> G */
|
||||
104 2 3 8 /* H -> H */
|
||||
106 3 3 8 /* J -> J */
|
||||
107 2 5 8 /* K -> K */
|
||||
108 3 5 8 /* L -> L */
|
||||
122 7 0 8 /* Z -> Z */
|
||||
120 8 1 8 /* X -> X */
|
||||
99 6 1 8 /* C -> C */
|
||||
118 7 1 8 /* V -> V */
|
||||
98 6 2 8 /* B -> B */
|
||||
110 7 2 8 /* N -> N */
|
||||
109 8 3 8 /* M -> M */
|
||||
|
||||
@@ -0,0 +1,256 @@
|
||||
# VICE SDL keyboard mapping file suitable for real C64 keyboards using Keymmodore-64 interfase by K-rnivoro. https://www.keymmodore.com/
|
||||
# Tested with VICE 3.1 SDL2 (https://vice-emu.sourceforge.io/windows.html)
|
||||
# Mapped for compatibility to PET Models with Graphics Keyboards only (2000, 3000, 4000, Non-B models).
|
||||
# Based on C64 Positional Layout.
|
||||
#
|
||||
# PET Graphics Keyboard has only one character and one graphics PETSCII per key.
|
||||
# Keymmodore uses C= Key to access a layer with PET Keys corresponding to shifted symbols of C-64 Keyboard (!/"/#/$/%/&/'/(/)/[/]/</>/?) so you have to hold C= for those keys.
|
||||
# You can access PET graphics PETSCII of those keys by pressing Shift and/or C=. Graphics PETSCII will match the the original PET Graphics Keyboard layout (not labeled in C64).
|
||||
#
|
||||
# Graphics PETSCII set of PET and C-64 are the same so there is no missing graphics PETSCII codes. They just have been redistributed to match C-64 Keyboard.
|
||||
# ANY left C-64 labeled Graphics PETSCII works using C= Key thanks to being remapped by Keymmodore-64.
|
||||
# ANY right C-64 labeled Graphics PETSCII works using Shift keys thanks to being remapped by VICE (this file).
|
||||
#
|
||||
# OFF/REVERSE key is mapped to CTRL (Control) Key.
|
||||
# Backslash Key is mapped to £ (Pound) Key.
|
||||
#
|
||||
#
|
||||
# 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
|
||||
#
|
||||
|
||||
# this is a PET graphics keyboard mapping (symbolic)
|
||||
|
||||
#
|
||||
# Graphics keyboard matrix:
|
||||
#
|
||||
# 0 1 2 3 4 5 6 7
|
||||
# +--------+--------+--------+--------+--------+--------+--------+--------+
|
||||
# 0 | ! | # | % | & | ( | <-- | home |crsr rgt|
|
||||
# +--------+--------+--------+--------+--------+--------+--------+--------+
|
||||
# 1 | " | $ | ' | \ | ) |--------|crsr dwn| del |
|
||||
# +--------+--------+--------+--------+--------+--------+--------+--------+
|
||||
# 2 | q | e | t | u | o | ^ | 7 | 9 |
|
||||
# +--------+--------+--------+--------+--------+--------+--------+--------+
|
||||
# 3 | w | r | y | i | p |--------| 8 | / |
|
||||
# +--------+--------+--------+--------+--------+--------+--------+--------+
|
||||
# 4 | a | d | g | j | l |--------| 4 | 6 |
|
||||
# +--------+--------+--------+--------+--------+--------+--------+--------+
|
||||
# 5 | s | f | h | k | : |--------| 5 | * |
|
||||
# +--------+--------+--------+--------+--------+--------+--------+--------+
|
||||
# 6 | z | c | b | m | ; | return | 1 | 3 |
|
||||
# +--------+--------+--------+--------+--------+--------+--------+--------+
|
||||
# 7 | x | v | n | , | ? |--------| 2 | + |
|
||||
# +--------+--------+--------+--------+--------+--------+--------+--------+
|
||||
# 8 |l shift | @ | ] |--------| > |r shift | 0 | - |
|
||||
# +--------+--------+--------+--------+--------+--------+--------+--------+
|
||||
# 9 | rvs on | [ | space | < | stop |--------| . | = |
|
||||
# +--------+--------+--------+--------+--------+--------+--------+--------+
|
||||
#
|
||||
# The original gfx keyboard reflects the matrix perfectly:
|
||||
#
|
||||
# ! " # $ % ' & \ ( ) <- ^s ^q ^] ^t
|
||||
# q w e r t y u i o p ^ 7 8 9 /
|
||||
# a s d f g h j k l : ^m 4 5 6 *
|
||||
# z x c v b n m , ; ? ^m 1 2 3 +
|
||||
# LS ^r @ [ ] SPACE < > ^c RS 0 . - =
|
||||
#
|
||||
# http://www.6502.org/users/andre/petindex/keyboards.html
|
||||
|
||||
!CLEAR
|
||||
!LSHIFT 8 0
|
||||
!RSHIFT 8 5
|
||||
!VSHIFT RSHIFT
|
||||
|
||||
###### Same Keys than C-64 Keyboard
|
||||
|
||||
# RUN/STOP
|
||||
27 9 4 8
|
||||
|
||||
# CLR/HOME
|
||||
278 0 6 8
|
||||
|
||||
# LEFT/RIGHT
|
||||
275 0 7 8
|
||||
|
||||
# UP/DOWN
|
||||
274 1 6 8
|
||||
|
||||
#INST/DEL
|
||||
# Keymmodore maps both INST/DEL and RESTORE keys the same because there is no RESTORE Key in PET Keyboards.
|
||||
8 1 7 8
|
||||
|
||||
# SHIFT
|
||||
304 8 0 2
|
||||
303 8 5 4
|
||||
|
||||
# ENTER
|
||||
13 6 5 8
|
||||
|
||||
# Arrow Up
|
||||
127 2 5 8
|
||||
|
||||
# Arrow Left
|
||||
96 0 5 8
|
||||
|
||||
# @
|
||||
91 8 1 32
|
||||
91 5 4 1
|
||||
|
||||
# Space Bar
|
||||
32 9 2 8
|
||||
|
||||
# + (Plus)
|
||||
45 7 7 32
|
||||
45 9 1 1
|
||||
|
||||
# - (Minus)
|
||||
61 8 7 32
|
||||
61 8 2 1
|
||||
268 1 3 8 /* Numpad * -> \ PETSCII */
|
||||
|
||||
|
||||
# = (Equals)
|
||||
92 9 7 8
|
||||
|
||||
# \ (Using Pound Key)
|
||||
9 1 3 32
|
||||
9 1 4 1
|
||||
|
||||
# * (Asterisk)
|
||||
93 5 7 32
|
||||
93 8 1 1
|
||||
|
||||
# OFF/RVS
|
||||
#9 9 0 8
|
||||
277 9 0 8
|
||||
|
||||
##### Combined Keys
|
||||
|
||||
# , (Comma)
|
||||
44 7 3 8
|
||||
# < (Less)
|
||||
280 9 3 8 /* PgUp -> < */
|
||||
|
||||
|
||||
# . (Dot)
|
||||
46 9 6 8
|
||||
# > (Greater)
|
||||
281 8 4 8 /* PgDown -> > */
|
||||
|
||||
|
||||
# / (Slash)
|
||||
47 3 7 8
|
||||
# ? (Question)
|
||||
267 7 4 8 /* Numpad / -> ? */
|
||||
|
||||
# : (Colon)
|
||||
59 5 4 8
|
||||
# [ (Left Bracket)
|
||||
269 9 1 8 /* Numpad - -> [ */
|
||||
|
||||
# ; (SemiColon)
|
||||
39 6 4 8
|
||||
# ] (Right Bracket)
|
||||
270 8 2 8 /* Numpad + -> ] */
|
||||
|
||||
|
||||
#### Numbers and Symbols (1st Row)
|
||||
49 6 6 8 /* 1 -> 1 */
|
||||
282 0 0 8 /* F1 -> ! */
|
||||
50 7 6 8 /* 2 -> 2 */
|
||||
283 1 0 8 /* F2 -> " */
|
||||
51 6 7 8 /* 3 -> 3 */
|
||||
284 0 1 8 /* F3 -> # */
|
||||
52 4 6 8 /* 4 -> 4 */
|
||||
285 1 1 8 /* F4 -> $ */
|
||||
53 5 6 8 /* 5 -> 5 */
|
||||
286 0 2 8 /* F5 -> % */
|
||||
54 4 7 8 /* 6 -> 6 */
|
||||
287 0 3 8 /* F6 -> & */
|
||||
55 2 6 8 /* 7 -> 7 */
|
||||
273 1 2 8 /* Up -> ' */
|
||||
56 3 6 8 /* 8 -> 8 */
|
||||
276 0 4 8 /* Left -> ( */
|
||||
57 2 7 8 /* 9 -> 9 */
|
||||
290 1 4 8 /* F9 -> ) */
|
||||
48 8 6 8 /* 0 -> 0 */
|
||||
|
||||
###### Letter Keys ######
|
||||
# Right PETSCII with any Shift Key.
|
||||
# Left PETSCII with Commodore Key.
|
||||
# PETSCII are remapped to match C64 Keyboard.
|
||||
|
||||
113 2 0 8 /* Q -> Q */
|
||||
291 7 7 8 /* F10 -> + PETSCII */
|
||||
119 3 0 8 /* W -> W */
|
||||
101 2 1 8 /* E -> E */
|
||||
114 3 1 8 /* R -> R */
|
||||
116 2 2 8 /* T -> T */
|
||||
121 3 2 8 /* Y -> Y */
|
||||
117 2 3 8 /* U -> U */
|
||||
105 3 3 8 /* I -> I */
|
||||
111 2 4 8 /* O -> O */
|
||||
112 3 4 8 /* P -> P */
|
||||
|
||||
97 4 0 8 /* A -> A */
|
||||
115 5 0 8 /* S -> S */
|
||||
100 4 1 8 /* D -> D */
|
||||
102 5 1 8 /* F -> F */
|
||||
103 4 2 8 /* G -> G */
|
||||
104 5 2 8 /* H -> H */
|
||||
106 4 3 8 /* J -> J */
|
||||
107 5 3 8 /* K -> K */
|
||||
108 4 4 8 /* L -> L */
|
||||
|
||||
|
||||
122 6 0 8 /* Z -> Z */
|
||||
292 8 7 8 /* F11 -> - PETSCII */
|
||||
120 7 0 8 /* X -> X */
|
||||
99 6 1 8 /* C -> C */
|
||||
118 7 1 8 /* V -> V */
|
||||
98 6 2 8 /* B -> B */
|
||||
110 7 2 8 /* N -> N */
|
||||
308 5 7 1 /* Left Alt -> * PETSCII */
|
||||
109 6 3 8 /* M -> M */
|
||||
|
||||
# joystick keymap A (port 1)
|
||||
264 -1 7 /* NumPad 8 -> UP */
|
||||
258 -1 2 /* NumPad 2 -> DOWN */
|
||||
260 -1 4 /* NumPad 4 -> LEFT */
|
||||
262 -1 5 /* NumPad 6 -> RIGHT */
|
||||
256 -1 0 /* NumPad 0 -> FIRE */
|
||||
|
||||
# joystick Keymap B (port 2)
|
||||
263 -2 7 /* NumPad 7 -> UP */
|
||||
259 -2 2 /* NumPad 3 -> DOWN */
|
||||
257 -2 4 /* NumPad 1 -> LEFT */
|
||||
265 -2 5 /* NumPad 9 -> RIGHT */
|
||||
266 -2 0 /* NumPad . -> FIRE */
|
||||
@@ -0,0 +1,197 @@
|
||||
# VICE SDL based keyboard mapping file suitable for real C64 keyboards using Keymmodore-64 interfase by K-rnivoro. https://www.keymmodore.com/
|
||||
# Tested with VICE 3.1 SDL2 (https://vice-emu.sourceforge.io/windows.html)
|
||||
# Mapped for positional compatibility with 264 Computers Series: Plus/4, Commodore-16 and Commodore-116 Keyboards.
|
||||
# Based on C64 Positional Layout, however some keys change position in order to be easier to use and remember.
|
||||
# The relevant changes are:
|
||||
# ESCAPE is mapped to Left Arrow Key.
|
||||
# Cursor-Up is mapped to C64 Up-Arrow Key (C16/Plus-4 Up-Arrow is actually Shift+0).
|
||||
# Cursor-Left is mapped to C64 RESTORE Key (C16/Plus-4 CLEAR/HOME Key moves to C64 CLEAR/HOME key).
|
||||
# Cursor-Down is mapped to C64 Up/Down Cursor Key (It works only Down regardless Shift pressed or not, like the real C16/Plus-4 Key).
|
||||
# Cursor-Right is mapped to C64 Left/Right Cursor Key (It works only Right regardless Shift pressed or not, like the real C16/Plus-4 Key).
|
||||
#
|
||||
#
|
||||
# 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)
|
||||
# '!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 the values (as a sum):
|
||||
# 0 key is not shifted for this keysym/scancode
|
||||
# 1 key is combined with shift for this keysym/scancode
|
||||
# 2 key is left shift on emulated machine
|
||||
# 4 key is right shift on emulated machine
|
||||
# 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 key is shift-lock on emulated machine
|
||||
# 128 shift modifier required on host
|
||||
# 256 key is used for an alternative keyboard mapping
|
||||
# 512 alt-r (alt-gr) modifier required on host
|
||||
# 1024 ctrl modifier required on host
|
||||
# 2048 key is combined with cbm for this keysym/scancode
|
||||
# 4096 key is combined with ctrl for this keysym/scancode
|
||||
# 8192 key is (left) cbm on emulated machine
|
||||
# 16384 key is (left) ctrl on emulated machine
|
||||
#
|
||||
# to migrate older keymaps and use the CBM and/or CTRL related features:
|
||||
#
|
||||
# - define !LCTRL, !VCTRL, !LCBM, !VCBM
|
||||
# - add 'key is (left) cbm/ctrl on emulated machine' flags to
|
||||
# all keys that map to the cbm or ctrl key respectively.
|
||||
#
|
||||
# after that the virtual cbm/ctrl flags and requiring host modifiers
|
||||
# should work as expected. keep an eye on the error messages.
|
||||
#
|
||||
# Negative row values:
|
||||
# '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
|
||||
# 'keysym -5 n' joyport keypad, key n
|
||||
#
|
||||
# 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, SDL
|
||||
|
||||
#############################################################################
|
||||
#
|
||||
# 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 |C= |Q |RUN/STOP|
|
||||
# +--------+--------+--------+--------+--------+--------+--------+--------+
|
||||
#
|
||||
#############################################################################
|
||||
|
||||
!CLEAR
|
||||
!LSHIFT 1 7
|
||||
!RSHIFT 1 7
|
||||
!VSHIFT RSHIFT
|
||||
!SHIFTL LSHIFT
|
||||
!LCBM 7 5
|
||||
!VCBM LCBM
|
||||
!LCTRL 7 2
|
||||
!VCTRL LCTRL
|
||||
|
||||
27 7 7 8 /* ESC -> Run/Stop */
|
||||
49 7 0 8 /* 1 -> 1 */
|
||||
50 7 3 8 /* 2 -> 2 */
|
||||
51 1 0 8 /* 3 -> 3 */
|
||||
52 1 3 8 /* 4 -> 4 */
|
||||
53 2 0 8 /* 5 -> 5 */
|
||||
54 2 3 8 /* 6 -> 6 */
|
||||
55 3 0 8 /* 7 -> 7 */
|
||||
56 3 3 8 /* 8 -> 8 */
|
||||
57 4 0 8 /* 9 -> 9 */
|
||||
48 4 3 8 /* 0 -> 0 */
|
||||
45 6 6 8 /* Minus -> Plus */
|
||||
61 5 6 8 /* Equal -> Minus */
|
||||
8 0 0 8 /* Backspace -> Del */
|
||||
9 7 2 16392 /* TAB -> Ctrl */
|
||||
113 7 6 8 /* Q -> Q */
|
||||
119 1 1 8 /* W -> W */
|
||||
101 1 6 8 /* E -> E */
|
||||
114 2 1 8 /* R -> R */
|
||||
116 2 6 8 /* T -> T */
|
||||
121 3 1 8 /* Y -> Y */
|
||||
117 3 6 8 /* U -> U */
|
||||
105 4 1 8 /* I -> I */
|
||||
111 4 6 8 /* O -> O */
|
||||
112 5 1 8 /* P -> P */
|
||||
91 0 7 8 /* [ -> @ */
|
||||
93 6 1 8 /* ] -> * (Asterisk) */
|
||||
13 0 1 8 /* Return -> Return */
|
||||
306 7 5 8200 /* Left Ctrl -> CBM */
|
||||
97 1 2 8 /* A -> A */
|
||||
115 1 5 8 /* S -> S */
|
||||
100 2 2 8 /* D -> D */
|
||||
102 2 5 8 /* F -> F */
|
||||
103 3 2 8 /* G -> G */
|
||||
104 3 5 8 /* H -> H */
|
||||
106 4 2 8 /* J -> J */
|
||||
107 4 5 8 /* K -> K */
|
||||
108 5 2 8 /* L -> L */
|
||||
59 5 5 8 /* ; -> : */
|
||||
39 6 2 8 /* ' -> ; */
|
||||
96 6 4 8 /* ` -> Esc -> C64 Arrow-Left Key */
|
||||
92 6 5 8 /* \ -> Equal */
|
||||
301 1 7 64 /* Caps Lock -> Shift Lock */
|
||||
304 1 7 2 /* Left Shift -> Left Shift */
|
||||
122 1 4 8 /* Z -> Z */
|
||||
120 2 7 8 /* X -> X */
|
||||
99 2 4 8 /* C -> C */
|
||||
118 3 7 8 /* V -> V */
|
||||
98 3 4 8 /* B -> B */
|
||||
110 4 7 8 /* N -> N */
|
||||
109 4 4 8 /* M -> M */
|
||||
44 5 7 8 /* , -> , */
|
||||
46 5 4 8 /* . -> . */
|
||||
47 6 7 8 /* / -> / */
|
||||
303 1 7 4 /* Right Shift -> Right Shift */
|
||||
32 7 4 8 /* Space -> Space */
|
||||
282 0 4 8 /* F1 -> F1/F4 */
|
||||
284 0 5 8 /* F3 -> F2/F5 */
|
||||
286 0 6 8 /* F5 -> F3/F6 */
|
||||
288 0 3 8 /* F7 -> HELP/F7 */
|
||||
278 7 1 8 /* Home -> CLR/HOME */
|
||||
127 5 3 8 /* Delete -> CRSR UP -> C64 Arrow-Up key */
|
||||
280 6 0 8 /* Page_Up -> CRSR LEFT -> C64 RESTORE key */
|
||||
275 6 3 8 /* Right -> CRSR RIGHT */
|
||||
274 5 0 8 /* Down -> CRSR DOWN */
|
||||
277 0 2 8 /* Ins -> Pound */
|
||||
|
||||
|
||||
# joystick keymap A (port 1)
|
||||
264 -1 7 /* NumPad 8 -> UP */
|
||||
258 -1 2 /* NumPad 2 -> DOWN */
|
||||
260 -1 4 /* NumPad 4 -> LEFT */
|
||||
262 -1 5 /* NumPad 6 -> RIGHT */
|
||||
256 -1 0 /* NumPad 0 -> FIRE */
|
||||
|
||||
# joystick Keymap B (port 2)
|
||||
263 -2 7 /* NumPad 7 -> UP */
|
||||
259 -2 2 /* NumPad 3 -> DOWN */
|
||||
257 -2 4 /* NumPad 1 -> LEFT */
|
||||
265 -2 5 /* NumPad 9 -> RIGHT */
|
||||
266 -2 0 /* NumPad . -> FIRE */
|
||||
|
||||
@@ -0,0 +1,173 @@
|
||||
# VICE SDL based keyboard mapping file suitable for real C64 keyboards using Keymmodore-64 interfase by K-rnivoro. https://www.keymmodore.com/
|
||||
# Tested with VICE 3.1 SDL2 (https://vice-emu.sourceforge.io/windows.html)
|
||||
# Mapped for positional compatibility to VIC-20 Keyboards.
|
||||
# Using VICE default positional layout.
|
||||
#
|
||||
# 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
|
||||
#
|
||||
# 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
|
||||
# 'keysym -4 1' CAPS (ASCII/DIN) key
|
||||
# 'keysym -5 n' joyport keypad, key n
|
||||
#
|
||||
# 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.
|
||||
|
||||
# VIC20 Keyboard matrix
|
||||
#
|
||||
# +-----+-----+-----+-----+-----+-----+-----+-----+
|
||||
# |Bit 0|Bit 1|Bit 2|Bit 3|Bit 4|Bit 5|Bit 6|Bit 7|
|
||||
# +-----+-----+-----+-----+-----+-----+-----+-----+-----+
|
||||
# |Bit 0| 1 ! |A_LFT| CTRL| R/S |SPACE| C= | Q | 2 " |
|
||||
# +-----+-----+-----+-----+-----+-----+-----+-----+-----+
|
||||
# |Bit 1| 3 # | W | A | S_L | Z | S | E | 4 $ |
|
||||
# +-----+-----+-----+-----+-----+-----+-----+-----+-----+
|
||||
# |Bit 2| 5 % | R | D | X | C | F | T | 6 & |
|
||||
# +-----+-----+-----+-----+-----+-----+-----+-----+-----+
|
||||
# |Bit 3| 7 ' | Y | G | V | B | H | U | 8 ( |
|
||||
# +-----+-----+-----+-----+-----+-----+-----+-----+-----+
|
||||
# |Bit 4| 9 ) | I | J | N | M | K | O | 0 |
|
||||
# +-----+-----+-----+-----+-----+-----+-----+-----+-----+
|
||||
# |Bit 5| + | P | L | , < | . > | : [ | @ | - |
|
||||
# +-----+-----+-----+-----+-----+-----+-----+-----+-----+
|
||||
# |Bit 6|POUND| * | ; ] | / ? | S_R | = | A_UP| HOME|
|
||||
# +-----+-----+-----+-----+-----+-----+-----+-----+-----+
|
||||
# |Bit 7| DEL |Retrn|C_L/R|C_U/D| F1 | F3 | F5 | F7 |
|
||||
# +-----+-----+-----+-----+-----+-----+-----+-----+-----+
|
||||
|
||||
!CLEAR
|
||||
!LSHIFT 1 3
|
||||
!RSHIFT 6 4
|
||||
!VSHIFT RSHIFT
|
||||
!SHIFTL LSHIFT
|
||||
|
||||
27 0 3 8 /* ESC -> Run/Stop */
|
||||
49 0 0 8 /* 1 -> 1 */
|
||||
50 0 7 8 /* 2 -> 2 */
|
||||
51 1 0 8 /* 3 -> 3 */
|
||||
52 1 7 8 /* 4 -> 4 */
|
||||
53 2 0 8 /* 5 -> 5 */
|
||||
54 2 7 8 /* 6 -> 6 */
|
||||
55 3 0 8 /* 7 -> 7 */
|
||||
56 3 7 8 /* 8 -> 8 */
|
||||
57 4 0 8 /* 9 -> 9 */
|
||||
48 4 7 8 /* 0 -> 0 */
|
||||
45 5 0 8 /* Minus -> Plus */
|
||||
61 5 7 8 /* Equal -> Minus */
|
||||
8 7 0 8 /* Backspace -> Del */
|
||||
9 0 2 8 /* TAB -> Ctrl */
|
||||
113 0 6 8 /* Q -> Q */
|
||||
119 1 1 8 /* W -> W */
|
||||
101 1 6 8 /* E -> E */
|
||||
114 2 1 8 /* R -> R */
|
||||
116 2 6 8 /* T -> T */
|
||||
121 3 1 8 /* Y -> Y */
|
||||
117 3 6 8 /* U -> U */
|
||||
105 4 1 8 /* I -> I */
|
||||
111 4 6 8 /* O -> O */
|
||||
112 5 1 8 /* P -> P */
|
||||
91 5 6 8 /* [ -> @ */
|
||||
93 6 1 8 /* ] -> * */
|
||||
13 7 1 8 /* Return -> Return */
|
||||
306 0 5 8 /* Left Ctrl -> CBM */
|
||||
97 1 2 8 /* A -> A */
|
||||
115 1 5 8 /* S -> S */
|
||||
100 2 2 8 /* D -> D */
|
||||
102 2 5 8 /* F -> F */
|
||||
103 3 2 8 /* G -> G */
|
||||
104 3 5 8 /* H -> H */
|
||||
106 4 2 8 /* J -> J */
|
||||
107 4 5 8 /* K -> K */
|
||||
108 5 2 8 /* L -> L */
|
||||
59 5 5 8 /* ; -> : */
|
||||
39 6 2 8 /* ' -> ; */
|
||||
96 0 1 8 /* ` -> Left Arrow */
|
||||
92 6 5 8 /* \ -> = */
|
||||
304 1 3 2 /* Left Shift -> Left Shift */
|
||||
122 1 4 8 /* Z -> Z */
|
||||
120 2 3 8 /* X -> X */
|
||||
99 2 4 8 /* C -> C */
|
||||
118 3 3 8 /* V -> V */
|
||||
98 3 4 8 /* B -> B */
|
||||
110 4 3 8 /* N -> N */
|
||||
109 4 4 8 /* M -> M */
|
||||
44 5 3 8 /* , -> , */
|
||||
46 5 4 8 /* . -> . */
|
||||
47 6 3 8 /* / -> / */
|
||||
303 6 4 4 /* Right Shift -> Right Shift */
|
||||
32 0 4 8 /* Space -> Space */
|
||||
282 7 4 8 /* F1 -> F1 */
|
||||
284 7 5 8 /* F3 -> F3 */
|
||||
286 7 6 8 /* F5 -> F5 */
|
||||
288 7 7 8 /* F7 -> F7 */
|
||||
278 6 7 8 /* Home -> CLR/HOME */
|
||||
275 7 2 8 /* Right -> CRSR RIGHT */
|
||||
274 7 3 8 /* Down -> CRSR DOWN */
|
||||
277 6 0 8 /* Ins -> Pound */
|
||||
127 6 6 8 /* Del -> Up Arrow */
|
||||
|
||||
# Restore key mappings
|
||||
280 -3 0
|
||||
|
||||
# joystick keymap A (port 1)
|
||||
264 -1 7 /* NumPad 8 -> UP */
|
||||
258 -1 2 /* NumPad 2 -> DOWN */
|
||||
260 -1 4 /* NumPad 4 -> LEFT */
|
||||
262 -1 5 /* NumPad 6 -> RIGHT */
|
||||
256 -1 0 /* NumPad 0 -> FIRE */
|
||||
|
||||
# joystick Keymap B (port 2)
|
||||
263 -2 7 /* NumPad 7 -> UP */
|
||||
259 -2 2 /* NumPad 3 -> DOWN */
|
||||
257 -2 4 /* NumPad 1 -> LEFT */
|
||||
265 -2 5 /* NumPad 9 -> RIGHT */
|
||||
266 -2 0 /* NumPad . -> FIRE */
|
||||
2
trunk/workspace/CBMprgStudio/C64.sh
Executable file
2
trunk/workspace/CBMprgStudio/C64.sh
Executable file
@@ -0,0 +1,2 @@
|
||||
#!/bin/sh
|
||||
/usr/bin/flatpak run --branch=stable --arch=x86_64 --command=x64sc net.sf.VICE
|
||||
2
trunk/workspace/CBMprgStudio/Plus4.sh
Executable file
2
trunk/workspace/CBMprgStudio/Plus4.sh
Executable file
@@ -0,0 +1,2 @@
|
||||
#!/bin/sh
|
||||
/usr/bin/flatpak run --branch=stable --arch=x86_64 --command=xplus4 net.sf.VICE
|
||||
BIN
trunk/workspace/CBMprgStudio/Test/bak/test.prg
Normal file
BIN
trunk/workspace/CBMprgStudio/Test/bak/test.prg
Normal file
Binary file not shown.
Reference in New Issue
Block a user