;Keys.ini - Mapping between PC keys/mouse/joysticks and C64 keys/joysticks ;---------------------------------------------------------------------------- ;Format: PC key or 'ANSI char' = C64 key [, C64 key ...] ; ;PC key and C64 key can be either a single key or any combination with +. ; ;The list is searched from top to bottom. If an ANSI character definition ;matches, the search is stopped. A match of a normal key will not stop the ;search. ; ;ANSI characters work for all keyboard layouts in all countries while ;normal PC keys depend on the keyboard driver. ; ;The PC keys Shift, Ctrl, Alt and Win mean Left Shift, Left Ctrl, Left Alt ;and Left Win. You must explicitly specify Right Shift if you want the ;other ones. ; ;If you press AltGr on the German keyboard driver you'll get Right Alt+Ctrl. ; ;The keys on the numeric pad have the Num prefix, e.g. Num Cursor Up. If ;Num Lock is pressed this will become Num 8. ; ;Unknown keys can be assigned with $00xx or $01xx, where xx is the virtual ;key code in wParam and $00 or $01 are the extension bit 24 in lParam. ; ;If you define Shift=Shift first, a succeeding definition of Shift+A won't ;be found because the Shift key will be taken away on the first match. But ;the rule A=A will also match and you'll get Shift+A on the C64. ; ;If you define 'ß' with S,S, the result will be a single S. Insert the ;None key in between. ; ;Keys are held down as long as you press them, but for two frames at least. ;Strings like the 'ß' will hold the last key. ; ;The PC keyboard's auto repeating function is disabled. The C64 will repeat ;cursor keys only (or all keys after POKE 650,128). ; ;This file will be parsed at each start of PC64 and written back formatted ;like QBasic. «Error messages» will be deleted in succeeding parsings. ; ;In future versions of PC64, you can edit this file directly in the ;emulator. There will also be a local key mapping for each program. ;---------------------------------------------------------------------------- ;emulator functions Alt+F4 = Stop Emulation F9 = Change Disk Alt+F10 = Swap Joysticks Right Alt+F10 = Swap Joysticks F10 = Control Center ;joystick emulation on keyboard Num Cursor Up = Joystick Up Num Cursor Down = Joystick Down Num Cursor Left = Joystick Left Num Cursor Right = Joystick Right Num Home = Joystick Up+Joystick Left Num End = Joystick Down+Joystick Left Num Page Up = Joystick Up+Joystick Right Num Page Down = Joystick Down+Joystick Right Right Ctrl = Joystick Fire ;Note: If you press Left and Right at the same time, both directions ;are cleared. This is not possible on a real joystick and causes a lockup ;in "Revenge of the Mutant Camels". ;second joystick for two-player games on the keyboard ;W = 2nd Joystick Up ;Z = 2nd Joystick Down ;A = 2nd Joystick Left ;D = 2nd Joystick Right ;Q = 2nd Joystick Fire ;ANSI characters (common for all countries) ;no ' ' = Space because of Shift, Ctrl and Alt combinations '!' = Shift+1 '"' = Shift+2 '#' = Shift+3 '$' = Shift+4 '%' = Shift+5 '&' = Shift+6 ''' = Shift+7 '(' = Shift+8 ')' = Shift+9 '*' = * '+' = + ',' = , '-' = - '.' = . '/' = / '0' = 0 '1' = 1 '2' = 2 '3' = 3 '4' = 4 '5' = 5 '6' = 6 '7' = 7 '8' = 8 '9' = 9 ':' = : ';' = ; '<' = Shift+, '=' = = '>' = Shift+. '?' = Shift+/ '@' = @ 'A' = Shift+A 'B' = Shift+B 'C' = Shift+C 'D' = Shift+D 'E' = Shift+E 'F' = Shift+F 'G' = Shift+G 'H' = Shift+H 'I' = Shift+I 'J' = Shift+J 'K' = Shift+K 'L' = Shift+L 'M' = Shift+M 'N' = Shift+N 'O' = Shift+O 'P' = Shift+P 'Q' = Shift+Q 'R' = Shift+R 'S' = Shift+S 'T' = Shift+T 'U' = Shift+U 'V' = Shift+V 'W' = Shift+W 'X' = Shift+X 'Y' = Shift+Y 'Z' = Shift+Z '[' = Shift+: '\' = none ']' = Shift+; '^' = ^ '_' = CBM+@ 'a' = A 'b' = B 'c' = C 'd' = D 'e' = E 'f' = F 'g' = G 'h' = H 'i' = I 'j' = J 'k' = K 'l' = L 'm' = M 'n' = N 'o' = O 'p' = P 'q' = Q 'r' = R 's' = S 't' = T 'u' = U 'v' = V 'w' = W 'x' = X 'y' = Y 'z' = Z '{' = Shift+8, * '|' = Shift+- '}' = *, Shift+9 '~' = - ' ' = Shift+Space '¡' = none '¢' = none '£' = Pound '¤' = none '¥' = Shift+Y, E, N '¦' = Shift+- '§' = Shift+P, A, R '¨' = none '©' = Shift+8, Shift+C, Shift+9 'ª' = A '«' = Shift+2 '¬' = - '­' = - '®' = Shift+8, Shift+R, Shift+9 '¯' = CBM+T '°' = none '±' = +, /, - '²' = 2 '³' = 3 '´' = Shift+7 'µ' = U '¶' = none '·' = none '¸' = none '¹' = 1 'º' = 0 '»' = Shift+2 '¼' = 1, /, 4 '½' = 1, /, 2 '¾' = 3, /, 4 '¿' = none 'À' = Shift+A 'Á' = Shift+A 'Â' = Shift+A 'Ã' = Shift+A 'Ä' = Shift+A, E 'Å' = Shift+A 'Æ' = Shift+A, E 'Ç' = Shift+C 'È' = Shift+E 'É' = Shift+E 'Ê' = Shift+E 'Ë' = Shift+E 'Ì' = Shift+I 'Í' = Shift+I 'Î' = Shift+I 'Ï' = Shift+I 'Ð' = Shift+D 'Ñ' = Shift+N 'Ò' = Shift+O 'Ó' = Shift+O 'Ô' = Shift+O 'Õ' = Shift+O 'Ö' = Shift+O, E '×' = X 'Ø' = none 'Ù' = Shift+U 'Ú' = Shift+U 'Û' = Shift+U 'Ü' = Shift+U, E 'Ý' = Shift+Y 'Þ' = Shift+P 'ß' = S, none, S 'à' = A 'á' = A 'â' = A 'ã' = A 'ä' = A, E 'å' = A 'æ' = A, E 'ç' = C 'è' = E 'é' = E 'ê' = E 'ë' = I 'ì' = I 'í' = I 'î' = I 'ï' = I 'ð' = D 'ñ' = N 'ò' = O 'ó' = O 'ô' = O 'õ' = O 'ö' = O, E '÷' = / 'ø' = none 'ù' = U 'ú' = U 'û' = U 'ü' = U, E 'ý' = Y 'þ' = P 'ÿ' = Y ;reset combinations Ctrl+Alt+Backspace = Reset Ctrl+Alt+Ins = Total Reset Ctrl+Alt+Num Ins = Total Reset Ctrl+Alt+Num 0 = Total Reset ;keys for Ctrl and Alt/CBM combinations Space = Space A = A B = B C = C D = D E = E F = F G = G H = H I = I J = J K = K L = L M = M N = N O = O P = P Q = Q R = R S = S T = T U = U V = V W = W X = X Y = Y Z = Z 0 = 0 1 = 1 2 = 2 3 = 3 4 = 4 5 = 5 6 = 6 7 = 7 8 = 8 9 = 9 ;cursor keys Cursor Down = Cursor Down Cursor Up = Shift+Cursor Down Cursor Right = Cursor Right Cursor Left = Shift+Cursor Right Home = Home Backspace = Del Enter = Return Num Enter = Return ;function keys F1 = F1 F2 = Shift+F1 F3 = F3 F4 = Shift+F3 F5 = F5 F6 = Shift+F5 F7 = F7 F8 = Shift+F7 Page Up = F1 Page Down = F7 ;C64 keys with no PC equivalent Tab = Stop F12 = Restore F11 = Restore Ins = ^ Del = Pound End = <- ;combination keys Shift = Shift Shift Lock = Shift Lock Right Shift = Right Shift Ctrl = Ctrl Right Ctrl = Ctrl Alt = CBM Right Alt = CBM