1916347f7SJordan K. Hubbard /* 2916347f7SJordan K. Hubbard * Copyright (C) 1992, 1993 S�ren Schmidt 3916347f7SJordan K. Hubbard * 4916347f7SJordan K. Hubbard * This program is free software; you may redistribute it and/or 5916347f7SJordan K. Hubbard * modify it, provided that it retain the above copyright notice 6916347f7SJordan K. Hubbard * and the following disclaimer. 7916347f7SJordan K. Hubbard * 8916347f7SJordan K. Hubbard * This program is distributed in the hope that it will be useful, 9916347f7SJordan K. Hubbard * but WITHOUT ANY WARRANTY; without even the implied warranty of 10916347f7SJordan K. Hubbard * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 11916347f7SJordan K. Hubbard * 12916347f7SJordan K. Hubbard * S�ren Schmidt Email: sos@kmd-ac.dk 13916347f7SJordan K. Hubbard * Tritonvej 36 UUCP: ...uunet!dkuug!kmd-ac!sos 14916347f7SJordan K. Hubbard * DK9210 Aalborg SO Phone: +45 9814 8076 15916347f7SJordan K. Hubbard */ 16916347f7SJordan K. Hubbard 17916347f7SJordan K. Hubbard #if defined(DKKEYMAP) 18916347f7SJordan K. Hubbard 19916347f7SJordan K. Hubbard keymap_t key_map = { 107, /* DK iso8859 keymap */ 20916347f7SJordan K. Hubbard /* alt 21916347f7SJordan K. Hubbard * scan cntrl alt alt cntrl 22916347f7SJordan K. Hubbard * code base shift cntrl shift alt shift cntrl shift spcl flgs 23916347f7SJordan K. Hubbard * --------------------------------------------------------------------------- 24916347f7SJordan K. Hubbard */ 25916347f7SJordan K. Hubbard /* sc=00 */ NOP, NOP, NOP, NOP, NOP, NOP, NOP, NOP, 0xFF, 0x00, 26916347f7SJordan K. Hubbard /* sc=01 */ 0x1B, 0x1B, NOP, NOP, 0x1B, 0x1B, NOP, NOP, 0x33, 0x00, 27916347f7SJordan K. Hubbard /* sc=02 */ '1', '!', NOP, NOP, '1', '!', NOP, NOP, 0x33, 0x00, 28916347f7SJordan K. Hubbard /* sc=03 */ '2', '"', 0x00, 0x00, '@', '"', 0x00, 0x00, 0x00, 0x00, 29916347f7SJordan K. Hubbard /* sc=04 */ '3', '#', NOP, NOP, 0x9E, '#', NOP, NOP, 0x33, 0x00, 30916347f7SJordan K. Hubbard /* sc=05 */ '4', 0xA4, NOP, NOP, '$', 0xA4, NOP, NOP, 0x33, 0x00, 31916347f7SJordan K. Hubbard /* sc=06 */ '5', '%', NOP, NOP, '5', '%', NOP, NOP, 0x33, 0x00, 32916347f7SJordan K. Hubbard /* sc=07 */ '6', '&', NOP, NOP, '6', '&', NOP, NOP, 0x33, 0x00, 33916347f7SJordan K. Hubbard /* sc=08 */ '7', '/', NOP, NOP, '{', '/', NOP, NOP, 0x33, 0x00, 34916347f7SJordan K. Hubbard /* sc=09 */ '8', '(', 0x1B, 0x1B, '[', '(', 0x1B, 0x1B, 0x00, 0x00, 35916347f7SJordan K. Hubbard /* sc=0a */ '9', ')', 0x1D, 0x1D, ']', ')', 0x1D, 0x1D, 0x00, 0x00, 36916347f7SJordan K. Hubbard /* sc=0b */ '0', '=', NOP, NOP, '}', '=', NOP, NOP, 0x33, 0x00, 37916347f7SJordan K. Hubbard /* sc=0c */ '+', '?', NOP, NOP, '+', '?', NOP, NOP, 0x33, 0x00, 38916347f7SJordan K. Hubbard /* sc=0d */ '\'', '`', NOP, NOP, '|', '`', NOP, NOP, 0x33, 0x00, 39916347f7SJordan K. Hubbard /* sc=0e */ 0x08, 0x08, 0x7F, 0x7F, 0x08, 0x08, 0x7F, 0x7F, 0x00, 0x00, 40916347f7SJordan K. Hubbard /* sc=0f */ 0x09, 0x08, NOP, NOP, 0x09, 0x08, NOP, NOP, 0x33, 0x00, 41916347f7SJordan K. Hubbard /* sc=10 */ 'q', 'Q', 0x11, 0x11, 'q', 'Q', 0x11, 0x11, 0x00, 0x01, 42916347f7SJordan K. Hubbard /* sc=11 */ 'w', 'W', 0x17, 0x17, 'w', 'W', 0x17, 0x17, 0x00, 0x01, 43916347f7SJordan K. Hubbard /* sc=12 */ 'e', 'E', 0x05, 0x05, 'e', 'E', 0x05, 0x05, 0x00, 0x01, 44916347f7SJordan K. Hubbard /* sc=13 */ 'r', 'R', 0x12, 0x12, 'r', 'R', 0x12, 0x12, 0x00, 0x01, 45916347f7SJordan K. Hubbard /* sc=14 */ 't', 'T', 0x14, 0x14, 't', 'T', 0x14, 0x14, 0x00, 0x01, 46916347f7SJordan K. Hubbard /* sc=15 */ 'y', 'Y', 0x19, 0x19, 'y', 'Y', 0x19, 0x19, 0x00, 0x01, 47916347f7SJordan K. Hubbard /* sc=16 */ 'u', 'U', 0x15, 0x15, 'u', 'U', 0x15, 0x15, 0x00, 0x01, 48916347f7SJordan K. Hubbard /* sc=17 */ 'i', 'I', 0x09, 0x09, 'i', 'I', 0x09, 0x09, 0x00, 0x01, 49916347f7SJordan K. Hubbard /* sc=18 */ 'o', 'O', 0x0F, 0x0F, 'o', 'O', 0x0F, 0x0F, 0x00, 0x01, 50916347f7SJordan K. Hubbard /* sc=19 */ 'p', 'P', 0x10, 0x10, 'p', 'P', 0x10, 0x10, 0x00, 0x01, 51916347f7SJordan K. Hubbard /* sc=1a */ 0xE5, 0xC5, NOP, NOP, 0x86, 0x8F, NOP, NOP, 0x33, 0x01, 52916347f7SJordan K. Hubbard /* sc=1b */ '"', '^', 0x1E, 0x1E, '~', '^', 0x1E, 0x1E, 0x00, 0x00, 53916347f7SJordan K. Hubbard /* sc=1c */ 0x0D, 0x0D, 0x0A, 0x0A, 0x0D, 0x0D, 0x0A, 0x0A, 0x00, 0x00, 54916347f7SJordan K. Hubbard /* sc=1d */ LCTR, LCTR, LCTR, LCTR, LCTR, LCTR, LCTR, LCTR, 0xFF, 0x00, 55916347f7SJordan K. Hubbard /* sc=1e */ 'a', 'A', 0x01, 0x01, 'a', 'A', 0x01, 0x01, 0x00, 0x01, 56916347f7SJordan K. Hubbard /* sc=1f */ 's', 'S', 0x13, 0x13, 's', 'S', 0x13, 0x13, 0x00, 0x01, 57916347f7SJordan K. Hubbard /* sc=20 */ 'd', 'D', 0x04, 0x04, 'd', 'D', 0x04, 0x04, 0x00, 0x01, 58916347f7SJordan K. Hubbard /* sc=21 */ 'f', 'F', 0x06, 0x06, 'f', 'F', 0x06, 0x06, 0x00, 0x01, 59916347f7SJordan K. Hubbard /* sc=22 */ 'g', 'G', 0x07, 0x07, 'g', 'G', 0x07, 0x07, 0x00, 0x01, 60916347f7SJordan K. Hubbard /* sc=23 */ 'h', 'H', 0x08, 0x08, 'h', 'H', 0x08, 0x08, 0x00, 0x01, 61916347f7SJordan K. Hubbard /* sc=24 */ 'j', 'J', 0x0A, 0x0A, 'j', 'J', 0x0A, 0x0A, 0x00, 0x01, 62916347f7SJordan K. Hubbard /* sc=25 */ 'k', 'K', 0x0B, 0x0B, 'k', 'K', 0x0B, 0x0B, 0x00, 0x01, 63916347f7SJordan K. Hubbard /* sc=26 */ 'l', 'L', 0x0C, 0x0C, 'l', 'L', 0x0C, 0x0C, 0x00, 0x01, 64916347f7SJordan K. Hubbard /* sc=27 */ 0xE6, 0xC6, NOP, NOP, 0x91, 0x92, NOP, NOP, 0x33, 0x01, 65916347f7SJordan K. Hubbard /* sc=28 */ 0xF8, 0xD8, NOP, NOP, 0x9B, 0x9D, NOP, NOP, 0x33, 0x01, 66916347f7SJordan K. Hubbard /* sc=29 */ 0xBD, 0xA7, NOP, NOP, 0xBD, 0xA7, NOP, NOP, 0x33, 0x00, 67916347f7SJordan K. Hubbard /* sc=2a */ LSH, LSH, LSH, LSH, LSH, LSH, LSH, LSH, 0xFF, 0x00, 68916347f7SJordan K. Hubbard /* sc=2b */ '\'', '*', NOP, NOP, '\'', '*', NOP, NOP, 0x33, 0x00, 69916347f7SJordan K. Hubbard /* sc=2c */ 'z', 'Z', 0x1A, 0x1A, 'z', 'Z', 0x1A, 0x1A, 0x00, 0x01, 70916347f7SJordan K. Hubbard /* sc=2d */ 'x', 'X', 0x18, 0x18, 'x', 'X', 0x18, 0x18, 0x00, 0x01, 71916347f7SJordan K. Hubbard /* sc=2e */ 'c', 'C', 0x03, 0x03, 'c', 'C', 0x03, 0x03, 0x00, 0x01, 72916347f7SJordan K. Hubbard /* sc=2f */ 'v', 'V', 0x16, 0x16, 'v', 'V', 0x16, 0x16, 0x00, 0x01, 73916347f7SJordan K. Hubbard /* sc=30 */ 'b', 'B', 0x02, 0x02, 'b', 'B', 0x02, 0x02, 0x00, 0x01, 74916347f7SJordan K. Hubbard /* sc=31 */ 'n', 'N', 0x0E, 0x0E, 'n', 'N', 0x0E, 0x0E, 0x00, 0x01, 75916347f7SJordan K. Hubbard /* sc=32 */ 'm', 'M', 0x0D, 0x0D, 'm', 'M', 0x0D, 0x0D, 0x00, 0x01, 76916347f7SJordan K. Hubbard /* sc=33 */ ',', ';', NOP, NOP, ',', ';', NOP, NOP, 0x33, 0x00, 77916347f7SJordan K. Hubbard /* sc=34 */ '.', ':', NOP, NOP, '.', ':', NOP, NOP, 0x33, 0x00, 78916347f7SJordan K. Hubbard /* sc=35 */ '-', '_', 0x1F, 0x1F, '-', '_', 0x1F, 0x1F, 0x00, 0x00, 79916347f7SJordan K. Hubbard /* sc=36 */ RSH, RSH, RSH, RSH, RSH, RSH, RSH, RSH, 0xFF, 0x00, 80916347f7SJordan K. Hubbard /* sc=37 */ '*', '*', '*', '*', '*', '*', '*', '*', 0x33, 0x00, 81916347f7SJordan K. Hubbard /* sc=38 */ LALT, LALT, LALT, LALT, LALT, LALT, LALT, LALT, 0xFF, 0x00, 82916347f7SJordan K. Hubbard /* sc=39 */ ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', 0x00, 0x00, 83916347f7SJordan K. Hubbard /* sc=3a */ CLK, CLK, CLK, CLK, CLK, CLK, CLK, CLK, 0xFF, 0x00, 84916347f7SJordan K. Hubbard /* sc=3b */ F( 1), F(13), F(25), F(37), S( 1), S(11), S( 1), S(11), 0xFF, 0x00, 85916347f7SJordan K. Hubbard /* sc=3c */ F( 2), F(14), F(26), F(38), S( 2), S(12), S( 2), S(12), 0xFF, 0x00, 86916347f7SJordan K. Hubbard /* sc=3d */ F( 3), F(15), F(27), F(39), S( 3), S(13), S( 3), S(13), 0xFF, 0x00, 87916347f7SJordan K. Hubbard /* sc=3e */ F( 4), F(16), F(28), F(40), S( 4), S(14), S( 4), S(14), 0xFF, 0x00, 88916347f7SJordan K. Hubbard /* sc=3f */ F( 5), F(17), F(29), F(41), S( 5), S(15), S( 5), S(15), 0xFF, 0x00, 89916347f7SJordan K. Hubbard /* sc=40 */ F( 6), F(18), F(30), F(42), S( 6), S(16), S( 6), S(16), 0xFF, 0x00, 90916347f7SJordan K. Hubbard /* sc=41 */ F( 7), F(19), F(31), F(43), S( 7), S( 7), S( 7), S( 7), 0xFF, 0x00, 91916347f7SJordan K. Hubbard /* sc=42 */ F( 8), F(20), F(32), F(44), S( 8), S( 8), S( 8), S( 8), 0xFF, 0x00, 92916347f7SJordan K. Hubbard /* sc=43 */ F( 9), F(21), F(33), F(45), S( 9), S( 9), S( 9), S( 9), 0xFF, 0x00, 93916347f7SJordan K. Hubbard /* sc=44 */ F(10), F(22), F(34), F(46), S(10), S(10), S(10), S(10), 0xFF, 0x00, 94916347f7SJordan K. Hubbard /* sc=45 */ NLK, NLK, NLK, NLK, NLK, NLK, NLK, NLK, 0xFF, 0x00, 95916347f7SJordan K. Hubbard /* sc=46 */ SLK, SLK, SLK, SLK, SLK, SLK, SLK, SLK, 0xFF, 0x00, 96916347f7SJordan K. Hubbard /* sc=47 */ F(49), '7', '7', '7', '7', '7', '7', '7', 0x80, 0x02, 97916347f7SJordan K. Hubbard /* sc=48 */ F(50), '8', '8', '8', '8', '8', '8', '8', 0x80, 0x02, 98916347f7SJordan K. Hubbard /* sc=49 */ F(51), '9', '9', '9', '9', '9', '9', '9', 0x80, 0x02, 99916347f7SJordan K. Hubbard /* sc=4a */ F(52), '/', '/', '/', '/', '/', '/', '/', 0x80, 0x02, 100916347f7SJordan K. Hubbard /* sc=4b */ F(53), '4', '4', '4', '4', '4', '4', '4', 0x80, 0x02, 101916347f7SJordan K. Hubbard /* sc=4c */ NOP, '5', '5', '5', '5', '5', '5', '5', 0x80, 0x02, 102916347f7SJordan K. Hubbard /* sc=4d */ F(55), '6', '6', '6', '6', '6', '6', '6', 0x80, 0x02, 103916347f7SJordan K. Hubbard /* sc=4e */ F(56), '+', '+', '+', '+', '+', '+', '+', 0x80, 0x02, 104916347f7SJordan K. Hubbard /* sc=4f */ F(57), '1', '1', '1', '1', '1', '1', '1', 0x80, 0x02, 105916347f7SJordan K. Hubbard /* sc=50 */ F(58), '2', '2', '2', '2', '2', '2', '2', 0x80, 0x02, 106916347f7SJordan K. Hubbard /* sc=51 */ F(59), '3', '3', '3', '3', '3', '3', '3', 0x80, 0x02, 107916347f7SJordan K. Hubbard /* sc=52 */ F(60), '0', '0', '0', '0', '0', '0', '0', 0x80, 0x02, 108916347f7SJordan K. Hubbard /* sc=53 */ 0x7F, '.', '.', '.', '.', '.', '.', '.', 0x00, 0x02, 109916347f7SJordan K. Hubbard /* sc=54 */ NOP, NOP, NOP, NOP, NOP, NOP, NOP, NOP, 0xFF, 0x00, 110916347f7SJordan K. Hubbard /* sc=55 */ NOP, NOP, NOP, NOP, NOP, NOP, NOP, NOP, 0xFF, 0x00, 111916347f7SJordan K. Hubbard /* sc=56 */ '<', '>', 0x1C, 0x1C, '\\', '>', 0x1C, 0x1C, 0x00, 0x00, 112916347f7SJordan K. Hubbard /* sc=57 */ F(11), F(23), F(35), F(47), S(11), S(11), S(11), S(11), 0xFF, 0x00, 113916347f7SJordan K. Hubbard /* sc=58 */ F(12), F(24), F(36), F(48), S(12), S(12), S(12), S(12), 0xFF, 0x00, 114916347f7SJordan K. Hubbard /* sc=59 */ 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x00, 0x02, 115916347f7SJordan K. Hubbard /* sc=5a */ RCTR, RCTR, RCTR, RCTR, RCTR, RCTR, RCTR, RCTR, 0xFF, 0x00, 116916347f7SJordan K. Hubbard /* sc=5b */ '/', '/', '/', '/', '/', '/', '/', '/', 0x00, 0x00, 117916347f7SJordan K. Hubbard /* sc=5c */ '*', '*', '*', '*', '*', '*', '*', '*', 0x00, 0x00, 118916347f7SJordan K. Hubbard /* sc=5d */ RALT, RALT, RALT, RALT, RALT, RALT, RALT, RALT, 0xFF, 0x00, 119916347f7SJordan K. Hubbard /* sc=5e */ F(49), F(49), F(49), F(49), F(49), F(49), F(49), F(49), 0xFF, 0x00, 120916347f7SJordan K. Hubbard /* sc=5f */ F(50), F(50), F(50), F(50), F(50), F(50), F(50), F(50), 0xFF, 0x00, 121916347f7SJordan K. Hubbard /* sc=60 */ F(51), F(51), F(51), F(51), F(51), F(51), F(51), F(51), 0xFF, 0x00, 122916347f7SJordan K. Hubbard /* sc=61 */ F(53), F(53), F(53), F(53), F(53), F(53), F(53), F(53), 0xFF, 0x00, 123916347f7SJordan K. Hubbard /* sc=62 */ F(55), F(55), F(55), F(55), F(55), F(55), F(55), F(55), 0xFF, 0x00, 124916347f7SJordan K. Hubbard /* sc=63 */ F(57), F(57), F(57), F(57), F(57), F(57), F(57), F(57), 0xFF, 0x00, 125916347f7SJordan K. Hubbard /* sc=64 */ F(58), F(58), F(58), F(58), F(58), F(58), F(58), F(58), 0xFF, 0x00, 126916347f7SJordan K. Hubbard /* sc=65 */ F(59), F(59), F(59), F(59), F(59), F(59), F(59), F(59), 0xFF, 0x00, 127916347f7SJordan K. Hubbard /* sc=66 */ F(60), F(60), F(60), F(60), F(60), F(60), F(60), F(60), 0xFF, 0x00, 128916347f7SJordan K. Hubbard /* sc=67 */ F(54), F(54), F(54), F(54), F(54), F(54), F(54), F(54), 0xFF, 0x00, 129916347f7SJordan K. Hubbard /* sc=68 */ SLK, SLK, SLK, SLK, SLK, SLK, SLK, SLK, 0xFF, 0x00, 130916347f7SJordan K. Hubbard }; 131916347f7SJordan K. Hubbard 132916347f7SJordan K. Hubbard #else 133916347f7SJordan K. Hubbard 134916347f7SJordan K. Hubbard keymap_t key_map = { 107, /* US iso8859 keymap */ 135916347f7SJordan K. Hubbard /* alt 136916347f7SJordan K. Hubbard * scan cntrl alt alt cntrl 137916347f7SJordan K. Hubbard * code base shift cntrl shift alt shift cntrl shift spcl flgs 138916347f7SJordan K. Hubbard * --------------------------------------------------------------------------- 139916347f7SJordan K. Hubbard */ 140916347f7SJordan K. Hubbard /* sc=00 */ NOP, NOP, NOP, NOP, NOP, NOP, NOP, NOP, 0xFF, 0x00, 141916347f7SJordan K. Hubbard /* sc=01 */ 0x1B, 0x1B, NOP, NOP, 0x1B, 0x1B, NOP, NOP, 0x33, 0x00, 142916347f7SJordan K. Hubbard /* sc=02 */ '1', '!', NOP, NOP, '1', '!', NOP, NOP, 0x33, 0x00, 143916347f7SJordan K. Hubbard /* sc=03 */ '2', '@', 0x00, 0x00, '2', '@', 0x00, 0x00, 0x00, 0x00, 144916347f7SJordan K. Hubbard /* sc=04 */ '3', '#', NOP, NOP, '3', '#', NOP, NOP, 0x33, 0x00, 145916347f7SJordan K. Hubbard /* sc=05 */ '4', '$', NOP, NOP, '4', '$', NOP, NOP, 0x33, 0x00, 146916347f7SJordan K. Hubbard /* sc=06 */ '5', '%', NOP, NOP, '5', '%', NOP, NOP, 0x33, 0x00, 147916347f7SJordan K. Hubbard /* sc=07 */ '6', '^', 0x1E, 0x1E, '6', '^', 0x1E, 0x1E, 0x00, 0x00, 148916347f7SJordan K. Hubbard /* sc=08 */ '7', '&', NOP, NOP, '7', '&', NOP, NOP, 0x33, 0x00, 149916347f7SJordan K. Hubbard /* sc=09 */ '8', '*', NOP, NOP, '8', '*', NOP, NOP, 0x33, 0x00, 150916347f7SJordan K. Hubbard /* sc=0a */ '9', '(', NOP, NOP, '9', '(', NOP, NOP, 0x33, 0x00, 151916347f7SJordan K. Hubbard /* sc=0b */ '0', ')', NOP, NOP, '0', ')', NOP, NOP, 0x33, 0x00, 152916347f7SJordan K. Hubbard /* sc=0c */ '-', '_', 0x1F, 0x1F, '-', '_', 0x1F, 0x1F, 0x00, 0x00, 153916347f7SJordan K. Hubbard /* sc=0d */ '=', '+', NOP, NOP, '=', '+', NOP, NOP, 0x33, 0x00, 154916347f7SJordan K. Hubbard /* sc=0e */ 0x08, 0x08, 0x7F, 0x7F, 0x08, 0x08, 0x7F, 0x7F, 0x00, 0x00, 155916347f7SJordan K. Hubbard /* sc=0f */ 0x09, 0x08, NOP, NOP, 0x09, 0x08, NOP, NOP, 0x33, 0x00, 156916347f7SJordan K. Hubbard /* sc=10 */ 'q', 'Q', 0x11, 0x11, 'q', 'Q', 0x11, 0x11, 0x00, 0x01, 157916347f7SJordan K. Hubbard /* sc=11 */ 'w', 'W', 0x17, 0x17, 'w', 'W', 0x17, 0x17, 0x00, 0x01, 158916347f7SJordan K. Hubbard /* sc=12 */ 'e', 'E', 0x05, 0x05, 'e', 'E', 0x05, 0x05, 0x00, 0x01, 159916347f7SJordan K. Hubbard /* sc=13 */ 'r', 'R', 0x12, 0x12, 'r', 'R', 0x12, 0x12, 0x00, 0x01, 160916347f7SJordan K. Hubbard /* sc=14 */ 't', 'T', 0x14, 0x14, 't', 'T', 0x14, 0x14, 0x00, 0x01, 161916347f7SJordan K. Hubbard /* sc=15 */ 'y', 'Y', 0x19, 0x19, 'y', 'Y', 0x19, 0x19, 0x00, 0x01, 162916347f7SJordan K. Hubbard /* sc=16 */ 'u', 'U', 0x15, 0x15, 'u', 'U', 0x15, 0x15, 0x00, 0x01, 163916347f7SJordan K. Hubbard /* sc=17 */ 'i', 'I', 0x09, 0x09, 'i', 'I', 0x09, 0x09, 0x00, 0x01, 164916347f7SJordan K. Hubbard /* sc=18 */ 'o', 'O', 0x0F, 0x0F, 'o', 'O', 0x0F, 0x0F, 0x00, 0x01, 165916347f7SJordan K. Hubbard /* sc=19 */ 'p', 'P', 0x10, 0x10, 'p', 'P', 0x10, 0x10, 0x00, 0x01, 166916347f7SJordan K. Hubbard /* sc=1a */ '[', '{', 0x1B, 0x1B, '[', '{', 0x1B, 0x1B, 0x00, 0x00, 167916347f7SJordan K. Hubbard /* sc=1b */ ']', '}', 0x1D, 0x1D, ']', '}', 0x1D, 0x1D, 0x00, 0x00, 168916347f7SJordan K. Hubbard /* sc=1c */ 0x0D, 0x0D, 0x0A, 0x0A, 0x0D, 0x0D, 0x0A, 0x0A, 0x00, 0x00, 169916347f7SJordan K. Hubbard /* sc=1d */ LCTR, LCTR, LCTR, LCTR, LCTR, LCTR, LCTR, LCTR, 0xFF, 0x00, 170916347f7SJordan K. Hubbard /* sc=1e */ 'a', 'A', 0x01, 0x01, 'a', 'A', 0x01, 0x01, 0x00, 0x01, 171916347f7SJordan K. Hubbard /* sc=1f */ 's', 'S', 0x13, 0x13, 's', 'S', 0x13, 0x13, 0x00, 0x01, 172916347f7SJordan K. Hubbard /* sc=20 */ 'd', 'D', 0x04, 0x04, 'd', 'D', 0x04, 0x04, 0x00, 0x01, 173916347f7SJordan K. Hubbard /* sc=21 */ 'f', 'F', 0x06, 0x06, 'f', 'F', 0x06, 0x06, 0x00, 0x01, 174916347f7SJordan K. Hubbard /* sc=22 */ 'g', 'G', 0x07, 0x07, 'g', 'G', 0x07, 0x07, 0x00, 0x01, 175916347f7SJordan K. Hubbard /* sc=23 */ 'h', 'H', 0x08, 0x08, 'h', 'H', 0x08, 0x08, 0x00, 0x01, 176916347f7SJordan K. Hubbard /* sc=24 */ 'j', 'J', 0x0A, 0x0A, 'j', 'J', 0x0A, 0x0A, 0x00, 0x01, 177916347f7SJordan K. Hubbard /* sc=25 */ 'k', 'K', 0x0B, 0x0B, 'k', 'K', 0x0B, 0x0B, 0x00, 0x01, 178916347f7SJordan K. Hubbard /* sc=26 */ 'l', 'L', 0x0C, 0x0C, 'l', 'L', 0x0C, 0x0C, 0x00, 0x01, 179916347f7SJordan K. Hubbard /* sc=27 */ ';', ':', NOP, NOP, ';', ':', NOP, NOP, 0x33, 0x00, 180916347f7SJordan K. Hubbard /* sc=28 */ '\'', '"', NOP, NOP, '\'', '"', NOP, NOP, 0x33, 0x00, 181916347f7SJordan K. Hubbard /* sc=29 */ '`', '~', NOP, NOP, '`', '~', NOP, NOP, 0x33, 0x00, 182916347f7SJordan K. Hubbard /* sc=2a */ LSH, LSH, LSH, LSH, LSH, LSH, LSH, LSH, 0xFF, 0x00, 183916347f7SJordan K. Hubbard /* sc=2b */ '\\', '|', 0x1C, 0x1C, '\\', '|', 0x1C, 0x1C, 0x00, 0x00, 184916347f7SJordan K. Hubbard /* sc=2c */ 'z', 'Z', 0x1A, 0x1A, 'z', 'Z', 0x1A, 0x1A, 0x00, 0x01, 185916347f7SJordan K. Hubbard /* sc=2d */ 'x', 'X', 0x18, 0x18, 'x', 'X', 0x18, 0x18, 0x00, 0x01, 186916347f7SJordan K. Hubbard /* sc=2e */ 'c', 'C', 0x03, 0x03, 'c', 'C', 0x03, 0x03, 0x00, 0x01, 187916347f7SJordan K. Hubbard /* sc=2f */ 'v', 'V', 0x16, 0x16, 'v', 'V', 0x16, 0x16, 0x00, 0x01, 188916347f7SJordan K. Hubbard /* sc=30 */ 'b', 'B', 0x02, 0x02, 'b', 'B', 0x02, 0x02, 0x00, 0x01, 189916347f7SJordan K. Hubbard /* sc=31 */ 'n', 'N', 0x0E, 0x0E, 'n', 'N', 0x0E, 0x0E, 0x00, 0x01, 190916347f7SJordan K. Hubbard /* sc=32 */ 'm', 'M', 0x0D, 0x0D, 'm', 'M', 0x0D, 0x0D, 0x00, 0x01, 191916347f7SJordan K. Hubbard /* sc=33 */ ',', '<', NOP, NOP, ',', '<', NOP, NOP, 0x33, 0x00, 192916347f7SJordan K. Hubbard /* sc=34 */ '.', '>', NOP, NOP, '.', '>', NOP, NOP, 0x33, 0x00, 193916347f7SJordan K. Hubbard /* sc=35 */ '/', '?', NOP, NOP, '/', '?', NOP, NOP, 0x33, 0x00, 194916347f7SJordan K. Hubbard /* sc=36 */ RSH, RSH, RSH, RSH, RSH, RSH, RSH, RSH, 0xFF, 0x00, 195916347f7SJordan K. Hubbard /* sc=37 */ '*', '*', 0x0A, 0x0A, '*', '*', 0x0A, 0x0A, 0x33, 0x00, 196916347f7SJordan K. Hubbard /* sc=38 */ LALT, LALT, LALT, LALT, LALT, LALT, LALT, LALT, 0xFF, 0x00, 197916347f7SJordan K. Hubbard /* sc=39 */ ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', 0x00, 0x00, 198916347f7SJordan K. Hubbard /* sc=3a */ CLK, CLK, CLK, CLK, CLK, CLK, CLK, CLK, 0xFF, 0x00, 199916347f7SJordan K. Hubbard /* sc=3b */ F( 1), F(13), F(25), F(37), S( 1), S(11), S( 1), S(11), 0xFF, 0x00, 200916347f7SJordan K. Hubbard /* sc=3c */ F( 2), F(14), F(26), F(38), S( 2), S(12), S( 2), S(12), 0xFF, 0x00, 201916347f7SJordan K. Hubbard /* sc=3d */ F( 3), F(15), F(27), F(39), S( 3), S(13), S( 3), S(13), 0xFF, 0x00, 202916347f7SJordan K. Hubbard /* sc=3e */ F( 4), F(16), F(28), F(40), S( 4), S(14), S( 4), S(14), 0xFF, 0x00, 203916347f7SJordan K. Hubbard /* sc=3f */ F( 5), F(17), F(29), F(41), S( 5), S(15), S( 5), S(15), 0xFF, 0x00, 204916347f7SJordan K. Hubbard /* sc=40 */ F( 6), F(18), F(30), F(42), S( 6), S(16), S( 6), S(16), 0xFF, 0x00, 205916347f7SJordan K. Hubbard /* sc=41 */ F( 7), F(19), F(31), F(43), S( 7), S( 7), S( 7), S( 7), 0xFF, 0x00, 206916347f7SJordan K. Hubbard /* sc=42 */ F( 8), F(20), F(32), F(44), S( 8), S( 8), S( 8), S( 8), 0xFF, 0x00, 207916347f7SJordan K. Hubbard /* sc=43 */ F( 9), F(21), F(33), F(45), S( 9), S( 9), S( 9), S( 9), 0xFF, 0x00, 208916347f7SJordan K. Hubbard /* sc=44 */ F(10), F(22), F(34), F(46), S(10), S(10), S(10), S(10), 0xFF, 0x00, 209916347f7SJordan K. Hubbard /* sc=45 */ NLK, NLK, NLK, NLK, NLK, NLK, NLK, NLK, 0xFF, 0x00, 210916347f7SJordan K. Hubbard /* sc=46 */ SLK, SLK, SLK, SLK, SLK, SLK, SLK, SLK, 0xFF, 0x00, 211916347f7SJordan K. Hubbard /* sc=47 */ F(49), '7', '7', '7', '7', '7', '7', '7', 0x80, 0x02, 212916347f7SJordan K. Hubbard /* sc=48 */ F(50), '8', '8', '8', '8', '8', '8', '8', 0x80, 0x02, 213916347f7SJordan K. Hubbard /* sc=49 */ F(51), '9', '9', '9', '9', '9', '9', '9', 0x80, 0x02, 214916347f7SJordan K. Hubbard /* sc=4a */ F(52), '-', '-', '-', '-', '-', '-', '-', 0x80, 0x02, 215916347f7SJordan K. Hubbard /* sc=4b */ F(53), '4', '4', '4', '4', '4', '4', '4', 0x80, 0x02, 216916347f7SJordan K. Hubbard /* sc=4c */ NOP, '5', '5', '5', '5', '5', '5', '5', 0x80, 0x02, 217916347f7SJordan K. Hubbard /* sc=4d */ F(55), '6', '6', '6', '6', '6', '6', '6', 0x80, 0x02, 218916347f7SJordan K. Hubbard /* sc=4e */ F(56), '+', '+', '+', '+', '+', '+', '+', 0x80, 0x02, 219916347f7SJordan K. Hubbard /* sc=4f */ F(57), '1', '1', '1', '1', '1', '1', '1', 0x80, 0x02, 220916347f7SJordan K. Hubbard /* sc=50 */ F(58), '2', '2', '2', '2', '2', '2', '2', 0x80, 0x02, 221916347f7SJordan K. Hubbard /* sc=51 */ F(59), '3', '3', '3', '3', '3', '3', '3', 0x80, 0x02, 222916347f7SJordan K. Hubbard /* sc=52 */ F(60), '0', '0', '0', '0', '0', '0', '0', 0x80, 0x02, 223916347f7SJordan K. Hubbard /* sc=53 */ 0x7F, '.', 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x00, 0x02, 224916347f7SJordan K. Hubbard /* sc=54 */ NOP, NOP, NOP, NOP, NOP, NOP, NOP, NOP, 0xFF, 0x00, 225916347f7SJordan K. Hubbard /* sc=55 */ NOP, NOP, NOP, NOP, NOP, NOP, NOP, NOP, 0xFF, 0x00, 226916347f7SJordan K. Hubbard /* sc=56 */ NOP, NOP, NOP, NOP, NOP, NOP, NOP, NOP, 0xFF, 0x00, 227916347f7SJordan K. Hubbard /* sc=57 */ F(11), F(23), F(35), F(47), S(11), S(11), S(11), S(11), 0xFF, 0x00, 228916347f7SJordan K. Hubbard /* sc=58 */ F(12), F(24), F(36), F(48), S(12), S(12), S(12), S(12), 0xFF, 0x00, 229916347f7SJordan K. Hubbard /* sc=59 */ 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x00, 0x00, 230916347f7SJordan K. Hubbard /* sc=5a */ RCTR, RCTR, RCTR, RCTR, RCTR, RCTR, RCTR, RCTR, 0xFF, 0x00, 231916347f7SJordan K. Hubbard /* sc=5b */ '/', '/', '/', '/', '/', '/', '/', '/', 0x00, 0x00, 232916347f7SJordan K. Hubbard /* sc=5c */ '*', '*', '*', '*', '*', '*', '*', '*', 0x00, 0x00, 233916347f7SJordan K. Hubbard /* sc=5d */ RALT, RALT, RALT, RALT, RALT, RALT, RALT, RALT, 0xFF, 0x00, 234916347f7SJordan K. Hubbard /* sc=5e */ F(49), F(49), F(49), F(49), F(49), F(49), F(49), F(49), 0xFF, 0x00, 235916347f7SJordan K. Hubbard /* sc=5f */ F(50), F(50), F(50), F(50), F(50), F(50), F(50), F(50), 0xFF, 0x00, 236916347f7SJordan K. Hubbard /* sc=60 */ F(51), F(51), F(51), F(51), F(51), F(51), F(51), F(51), 0xFF, 0x00, 237916347f7SJordan K. Hubbard /* sc=61 */ F(53), F(53), F(53), F(53), F(53), F(53), F(53), F(53), 0xFF, 0x00, 238916347f7SJordan K. Hubbard /* sc=62 */ F(55), F(55), F(55), F(55), F(55), F(55), F(55), F(55), 0xFF, 0x00, 239916347f7SJordan K. Hubbard /* sc=63 */ F(57), F(57), F(57), F(57), F(57), F(57), F(57), F(57), 0xFF, 0x00, 240916347f7SJordan K. Hubbard /* sc=64 */ F(58), F(58), F(58), F(58), F(58), F(58), F(58), F(58), 0xFF, 0x00, 241916347f7SJordan K. Hubbard /* sc=65 */ F(59), F(59), F(59), F(59), F(59), F(59), F(59), F(59), 0xFF, 0x00, 242916347f7SJordan K. Hubbard /* sc=66 */ F(60), F(60), F(60), F(60), F(60), F(60), F(60), F(60), 0xFF, 0x00, 243916347f7SJordan K. Hubbard /* sc=67 */ F(54), F(54), F(54), F(54), F(54), F(54), F(54), F(54), 0xFF, 0x00, 244916347f7SJordan K. Hubbard /* sc=68 */ SLK, SLK, SLK, SLK, SLK, SLK, SLK, SLK, 0xFF, 0x00, 245916347f7SJordan K. Hubbard }; 246916347f7SJordan K. Hubbard 247916347f7SJordan K. Hubbard #endif 248916347f7SJordan K. Hubbard 249916347f7SJordan K. Hubbard fkeytab_t fkey_tab[60] = { 250916347f7SJordan K. Hubbard /* 00-03 */ {"\033[M", 3}, {"\033[N", 3}, {"\033[O", 3}, {"\033[P", 3}, 251916347f7SJordan K. Hubbard /* 04-07 */ {"\033[Q", 3}, {"\033[R", 3}, {"\033[S", 3}, {"\033[T", 3}, 252916347f7SJordan K. Hubbard /* 08-0B */ {"\033[U", 3}, {"\033[V", 3}, {"\033[W", 3}, {"\033[X", 3}, 253916347f7SJordan K. Hubbard /* 0C-0F */ {"\033[W", 3}, {"\033[X", 3}, {"\033[Y", 3}, {"\033[Z", 3}, 254916347f7SJordan K. Hubbard /* 10-13 */ {"\033[a", 3}, {"\033[b", 3}, {"\033[c", 3}, {"\033[d", 3}, 255916347f7SJordan K. Hubbard /* 14-17 */ {"\033[e", 3}, {"\033[f", 3}, {"\033[g", 3}, {"\033[h", 3}, 256916347f7SJordan K. Hubbard /* 18-1B */ {"\033[g", 3}, {"\033[h", 3}, {"\033[i", 3}, {"\033[j", 3}, 257916347f7SJordan K. Hubbard /* 1C-1F */ {"\033[k", 3}, {"\033[l", 3}, {"\033[m", 3}, {"\033[n", 3}, 258916347f7SJordan K. Hubbard /* 20-23 */ {"\033[o", 3}, {"\033[p", 3}, {"\033[q", 3}, {"\033[r", 3}, 259916347f7SJordan K. Hubbard /* 24-27 */ {"\033[g", 3}, {"\033[h", 3}, {"\033[i", 3}, {"\033[j", 3}, 260916347f7SJordan K. Hubbard /* 28-2B */ {"\033[k", 3}, {"\033[l", 3}, {"\033[m", 3}, {"\033[n", 3}, 261916347f7SJordan K. Hubbard /* 2C-2F */ {"\033[o", 3}, {"\033[p", 3}, {"\033[q", 3}, {"\033[r", 3}, 262916347f7SJordan K. Hubbard /* 30-33 */ {"\033[H", 3}, {"\033[A", 3}, {"\033[I", 3}, {"-" , 1}, 263916347f7SJordan K. Hubbard /* 34-37 */ {"\033[D", 3}, {"\177" , 1}, {"\033[C", 3}, {"+" , 1}, 264916347f7SJordan K. Hubbard /* 38-3B */ {"\033[F", 3}, {"\033[B", 3}, {"\033[G", 3}, {"\033[L", 3} 265916347f7SJordan K. Hubbard }; 266