1 /* Keymap for German MF-2 keyboard. */
3 /* scan-code unsh Shift Alt AltGr Alt+Sh Strg */
4 /* ==================================================================== */
5 /* 00 - none */ 0, 0, 0, 0, 0, 0,
6 /* 01 - ESC */ C('['), C('['), CA('['),C('['), C('['), C('['),
7 /* 02 - '1' */ '1', '!', A('1'), '1', '!', C('A'),
8 /* 03 - '2' */ '2', '"', A('2'), 0375, '@', C('@'),
9 /* 04 - '3' */ '3', 025, A('3'), 0374, '#', C('C'),
10 /* 05 - '4' */ '4', '$', A('4'), '4', '$', C('D'),
11 /* 06 - '5' */ '5', '%', A('5'), '5', '%', C('E'),
12 /* 07 - '6' */ '6', '&', A('6'), '6', '^', C('^'),
13 /* 08 - '7' */ '7', '/', A('7'), '{', '&', C('G'),
14 /* 09 - '8' */ '8', '(', A('8'), '[', '*', C('H'),
15 /* 10 - '9' */ '9', ')', A('9'), ']', '(', C('I'),
16 /* 11 - '0' */ '0', '=', A('0'), '}', ')', C('@'),
17 /* 12 - '-' */ 0341, '?', 0341, '\\', '_', C('_'),
18 /* 13 - '=' */ '\'', '`', A('\''),'=', '+', C('@'),
19 /* 14 - BS */ C('H'), C('H'), CA('H'),C('H'), C('H'), 0177,
20 /* 15 - TAB */ C('I'), C('I'), CA('I'),C('I'), C('I'), C('I'),
21 /* 16 - 'q' */ L('q'), 'Q', A('q'), '@', 'Q', C('Q'),
22 /* 17 - 'w' */ L('w'), 'W', A('w'), 'w', 'W', C('W'),
23 /* 18 - 'e' */ L('e'), 'E', A('e'), 'e', 'E', C('E'),
24 /* 19 - 'r' */ L('r'), 'R', A('r'), 'r', 'R', C('R'),
25 /* 20 - 't' */ L('t'), 'T', A('t'), 't', 'T', C('T'),
26 /* 21 - 'y' */ L('z'), 'Z', A('z'), 'z', 'Z', C('Z'),
27 /* 22 - 'u' */ L('u'), 'U', A('u'), 'u', 'U', C('U'),
28 /* 23 - 'i' */ L('i'), 'I', A('i'), 'i', 'I', C('I'),
29 /* 24 - 'o' */ L('o'), 'O', A('o'), 'o', 'O', C('O'),
30 /* 25 - 'p' */ L('p'), 'P', A('p'), 'p', 'P', C('P'),
31 /* 26 - '[' */ L(0201),0232, 0201, '[', '{', C('['),
32 /* 27 - ']' */ '+', '*', A('+'), '~', ']', C(']'),
33 /* 28 - CR/LF */ C('M'), C('M'), CA('M'),C('M'), C('M'), C('J'),
34 /* 29 - Strg;-) */ CTRL, CTRL, CTRL, CTRL, CTRL, CTRL,
35 /* 30 - 'a' */ L('a'), 'A', A('a'), 'a', 'A', C('A'),
36 /* 31 - 's' */ L('s'), 'S', A('s'), 's', 'S', C('S'),
37 /* 32 - 'd' */ L('d'), 'D', A('d'), 'd', 'D', C('D'),
38 /* 33 - 'f' */ L('f'), 'F', A('f'), 'f', 'F', C('F'),
39 /* 34 - 'g' */ L('g'), 'G', A('g'), 'g', 'G', C('G'),
40 /* 35 - 'h' */ L('h'), 'H', A('h'), 'h', 'H', C('H'),
41 /* 36 - 'j' */ L('j'), 'J', A('j'), 'j', 'J', C('J'),
42 /* 37 - 'k' */ L('k'), 'K', A('k'), 'k', 'K', C('K'),
43 /* 38 - 'l' */ L('l'), 'L', A('l'), 'l', 'L', C('L'),
44 /* 39 - ';' */ L(0224),0231, 0224, ';', ':', C('@'),
45 /* 40 - '\'' */ L(0204),0216, 0204, '\'', '"', C('@'),
46 /* 41 - '`' */ '^', 0370, A('^'), '`', '~', C('^'),
47 /* 42 - SHIFT */ SHIFT, SHIFT, SHIFT, SHIFT, SHIFT, SHIFT,
48 /* 43 - '\\' */ '#', '\'', A('#'), '\\', '|', C('\\'),
49 /* 44 - 'z' */ L('y'), 'Y', A('y'), 'y', 'Y', C('Y'),
50 /* 45 - 'x' */ L('x'), 'X', A('x'), 'x', 'X', C('X'),
51 /* 46 - 'c' */ L('c'), 'C', A('c'), 'c', 'C', C('C'),
52 /* 47 - 'v' */ L('v'), 'V', A('v'), 'v', 'V', C('V'),
53 /* 48 - 'b' */ L('b'), 'B', A('b'), 'b', 'B', C('B'),
54 /* 49 - 'n' */ L('n'), 'N', A('n'), 'n', 'N', C('N'),
55 /* 50 - 'm' */ L('m'), 'M', A('m'), 0346, 'M', C('M'),
56 /* 51 - ',' */ ',', ';', A(','), ',', '<', C('@'),
57 /* 52 - '.' */ '.', ':', A('.'), '.', '>', C('@'),
58 /* 53 - '/' */ '-', '_', A('-'), '/', '?', C('_'),
59 /* 54 - SHIFT */ SHIFT, SHIFT, SHIFT, SHIFT, SHIFT, SHIFT,
60 /* 55 - '*' */ '*', '*', A('*'), '*', '*', C('@'),
61 /* 56 - ALT */ ALT, ALT, ALT, ALT, ALT, ALT,
62 /* 57 - ' ' */ ' ', ' ', A(' '), ' ', ' ', C('@'),
63 /* 58 - CapsLck */ CALOCK, CALOCK, CALOCK, CALOCK, CALOCK, CALOCK,
64 /* 59 - F1 */ F1, SF1, AF1, AF1, ASF1, CF1,
65 /* 60 - F2 */ F2, SF2, AF2, AF2, ASF2, CF2,
66 /* 61 - F3 */ F3, SF3, AF3, AF3, ASF3, CF3,
67 /* 62 - F4 */ F4, SF4, AF4, AF4, ASF4, CF4,
68 /* 63 - F5 */ F5, SF5, AF5, AF5, ASF5, CF5,
69 /* 64 - F6 */ F6, SF6, AF6, AF6, ASF6, CF6,
70 /* 65 - F7 */ F7, SF7, AF7, AF7, ASF7, CF7,
71 /* 66 - F8 */ F8, SF8, AF8, AF8, ASF8, CF8,
72 /* 67 - F9 */ F9, SF9, AF9, AF9, ASF9, CF9,
73 /* 68 - F10 */ F10, SF10, AF10, AF10, ASF10, CF10,
74 /* 69 - NumLock */ NLOCK, NLOCK, NLOCK, NLOCK, NLOCK, NLOCK,
75 /* 70 - ScrLock */ SLOCK, SLOCK, SLOCK, SLOCK, SLOCK, SLOCK,
76 /* 71 - Home */ HOME, '7', AHOME, AHOME, '7', CHOME,
77 /* 72 - CurUp */ UP, '8', AUP, AUP, '8', CUP,
78 /* 73 - PgUp */ PGUP, '9', APGUP, APGUP, '9', CPGUP,
79 /* 74 - '-' */ NMIN, '-', ANMIN, ANMIN, '-', CNMIN,
80 /* 75 - Left */ LEFT, '4', ALEFT, ALEFT, '4', CLEFT,
81 /* 76 - MID */ MID, '5', AMID, AMID, '5', CMID,
82 /* 77 - Right */ RIGHT, '6', ARIGHT, ARIGHT, '6', CRIGHT,
83 /* 78 - '+' */ PLUS, '+', APLUS, APLUS, '+', CPLUS,
84 /* 79 - End */ END, '1', AEND, AEND, '1', CEND,
85 /* 80 - Down */ DOWN, '2', ADOWN, ADOWN, '2', CDOWN,
86 /* 81 - PgDown */ PGDN, '3', APGDN, APGDN, '3', CPGDN,
87 /* 82 - Insert */ INSRT, '0', AINSRT, AINSRT, '0', CINSRT,
88 /* 83 - Delete */ 0177, '.', A(0177),0177, '.', 0177,
89 /* 84 - Enter */ C('M'), C('M'), CA('M'),C('M'), C('M'), C('J'),
90 /* 85 - ??? */ 0, 0, 0, 0, 0, 0,
91 /* 86 - ??? */ '<', '>', A('<'), '|', '>', C('@'),
92 /* 87 - F11 */ F11, SF11, AF11, AF11, ASF11, CF11,
93 /* 88 - F12 */ F12, SF12, AF12, AF12, ASF12, CF12,
94 /* 89 - ??? */ 0, 0, 0, 0, 0, 0,
95 /* 90 - ??? */ 0, 0, 0, 0, 0, 0,
96 /* 91 - ??? */ 0, 0, 0, 0, 0, 0,
97 /* 92 - ??? */ 0, 0, 0, 0, 0, 0,
98 /* 93 - ??? */ 0, 0, 0, 0, 0, 0,
99 /* 94 - ??? */ 0, 0, 0, 0, 0, 0,
100 /* 95 - ??? */ 0, 0, 0, 0, 0, 0,
101 /* 96 - EXT_KEY */ EXTKEY, EXTKEY, EXTKEY, EXTKEY, EXTKEY, EXTKEY,
102 /* 97 - ??? */ 0, 0, 0, 0, 0, 0,
103 /* 98 - ??? */ 0, 0, 0, 0, 0, 0,
104 /* 99 - ??? */ 0, 0, 0, 0, 0, 0,
105 /*100 - ??? */ 0, 0, 0, 0, 0, 0,
106 /*101 - ??? */ 0, 0, 0, 0, 0, 0,
107 /*102 - ??? */ 0, 0, 0, 0, 0, 0,
108 /*103 - ??? */ 0, 0, 0, 0, 0, 0,
109 /*104 - ??? */ 0, 0, 0, 0, 0, 0,
110 /*105 - ??? */ 0, 0, 0, 0, 0, 0,
111 /*106 - ??? */ 0, 0, 0, 0, 0, 0,
112 /*107 - ??? */ 0, 0, 0, 0, 0, 0,
113 /*108 - ??? */ 0, 0, 0, 0, 0, 0,
114 /*109 - ??? */ 0, 0, 0, 0, 0, 0,
115 /*110 - ??? */ 0, 0, 0, 0, 0, 0,
116 /*111 - ??? */ 0, 0, 0, 0, 0, 0,
117 /*112 - ??? */ 0, 0, 0, 0, 0, 0,
118 /*113 - ??? */ 0, 0, 0, 0, 0, 0,
119 /*114 - ??? */ 0, 0, 0, 0, 0, 0,
120 /*115 - ??? */ 0, 0, 0, 0, 0, 0,
121 /*116 - ??? */ 0, 0, 0, 0, 0, 0,
122 /*117 - ??? */ 0, 0, 0, 0, 0, 0,
123 /*118 - ??? */ 0, 0, 0, 0, 0, 0,
124 /*119 - ??? */ 0, 0, 0, 0, 0, 0,
125 /*120 - ??? */ 0, 0, 0, 0, 0, 0,
126 /*121 - ??? */ 0, 0, 0, 0, 0, 0,
127 /*122 - ??? */ 0, 0, 0, 0, 0, 0,
128 /*123 - ??? */ 0, 0, 0, 0, 0, 0,
129 /*124 - ??? */ 0, 0, 0, 0, 0, 0,
130 /*125 - ??? */ 0, 0, 0, 0, 0, 0,
131 /*126 - ??? */ 0, 0, 0, 0, 0, 0,
132 /*127 - ??? */ 0, 0, 0, 0, 0, 0