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