|
|
1.1 ! root 1: /************************************************************ ! 2: Copyright 1987 by Sun Microsystems, Inc. Mountain View, CA. ! 3: ! 4: All Rights Reserved ! 5: ! 6: Permission to use, copy, modify, and distribute this ! 7: software and its documentation for any purpose and without ! 8: fee is hereby granted, provided that the above copyright no- ! 9: tice appear in all copies and that both that copyright no- ! 10: tice and this permission notice appear in supporting docu- ! 11: mentation, and that the names of Sun or MIT not be used in ! 12: advertising or publicity pertaining to distribution of the ! 13: software without specific prior written permission. Sun and ! 14: M.I.T. make no representations about the suitability of this ! 15: software for any purpose. It is provided "as is" without any ! 16: express or implied warranty. ! 17: ! 18: SUN DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, ! 19: INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FIT- ! 20: NESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SUN BE LI- ! 21: ABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ! 22: ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR ! 23: PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR ! 24: OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH ! 25: THE USE OR PERFORMANCE OF THIS SOFTWARE. ! 26: ! 27: ********************************************************/ ! 28: ! 29: #include "sun.h" ! 30: #include "keysym.h" ! 31: ! 32: /* ! 33: * XXX - Its not clear what to map these to for now. ! 34: * keysyms.h doesn't define enough function key names. ! 35: */ ! 36: ! 37: ! 38: #ifndef XK_L1 ! 39: #define XK_L1 XK_Cancel ! 40: #define XK_L2 XK_Redo ! 41: #define XK_R1 NoSymbol ! 42: #define XK_R2 NoSymbol ! 43: #define XK_R3 NoSymbol ! 44: #define XK_L3 XK_Menu ! 45: #define XK_L4 XK_Undo ! 46: #define XK_R4 NoSymbol ! 47: #define XK_R5 NoSymbol ! 48: #define XK_R6 NoSymbol ! 49: #define XK_L5 XK_Insert ! 50: #define XK_L6 XK_Select ! 51: #define XK_R7 NoSymbol ! 52: #define XK_R8 XK_Up ! 53: #define XK_R9 NoSymbol ! 54: #define XK_L7 XK_Execute ! 55: #define XK_L8 XK_Print ! 56: #define XK_R10 XK_Left ! 57: #define XK_R11 XK_Home ! 58: #define XK_R12 XK_Right ! 59: #define XK_L9 XK_Find ! 60: #define XK_L10 XK_Help ! 61: #define XK_R13 NoSymbol ! 62: #define XK_R14 XK_Down ! 63: #define XK_R15 NoSymbol ! 64: #endif ! 65: ! 66: #ifdef notdef ! 67: static KeySym KlunkMap[] = { ! 68: }; ! 69: ! 70: static KeySym VT100[] = { ! 71: }; ! 72: #endif ! 73: ! 74: static KeySym Sun2Map[] = { ! 75: XK_L1, NoSymbol, /* 0x01 */ ! 76: NoSymbol, NoSymbol, /* 0x02 */ ! 77: XK_L2, NoSymbol, /* 0x03 */ ! 78: NoSymbol, NoSymbol, /* 0x4 */ ! 79: XK_F1, NoSymbol, /* 0x5 */ ! 80: XK_F2, NoSymbol, /* 0x6 */ ! 81: NoSymbol, NoSymbol, /* 0x7 */ ! 82: XK_F3, NoSymbol, /* 0x8 */ ! 83: NoSymbol, NoSymbol, /* 0x9 */ ! 84: XK_F4, NoSymbol, /* 0xa */ ! 85: NoSymbol, NoSymbol, /* 0xb */ ! 86: XK_F5, NoSymbol, /* 0xc */ ! 87: NoSymbol, NoSymbol, /* 0xd */ ! 88: XK_F6, NoSymbol, /* 0xe */ ! 89: NoSymbol, NoSymbol, /* 0xf */ ! 90: XK_F7, NoSymbol, /* 0x10 */ ! 91: XK_F8, NoSymbol, /* 0x11 */ ! 92: XK_F9, NoSymbol, /* 0x12 */ ! 93: XK_Break, NoSymbol, /* 0x13 */ ! 94: NoSymbol, NoSymbol, /* 0x14 */ ! 95: XK_R1, NoSymbol, /* 0x15 */ ! 96: XK_R2, NoSymbol, /* 0x16 */ ! 97: XK_R3, NoSymbol, /* 0x17 */ ! 98: NoSymbol, NoSymbol, /* 0x18 */ ! 99: XK_L3, NoSymbol, /* 0x19 */ ! 100: XK_L4, NoSymbol, /* 0x1a */ ! 101: NoSymbol, NoSymbol, /* 0x1b */ ! 102: NoSymbol, NoSymbol, /* 0x1c */ ! 103: XK_Escape, NoSymbol, /* 0x1d */ ! 104: XK_1, XK_exclam, /* 0x1e */ ! 105: XK_2, XK_at, /* 0x1f */ ! 106: XK_3, XK_numbersign, /* 0x20 */ ! 107: XK_4, XK_dollar, /* 0x21 */ ! 108: XK_5, XK_percent, /* 0x22 */ ! 109: XK_6, XK_asciicircum, /* 0x23 */ ! 110: XK_7, XK_ampersand, /* 0x24 */ ! 111: XK_8, XK_asterisk, /* 0x25 */ ! 112: XK_9, XK_parenleft, /* 0x26 */ ! 113: XK_0, XK_parenright, /* 0x27 */ ! 114: XK_minus, XK_underscore, /* 0x28 */ ! 115: XK_equal, XK_plus, /* 0x29 */ ! 116: XK_quoteleft, XK_asciitilde, /* 0x2a */ ! 117: XK_BackSpace, NoSymbol, /* 0x2b */ ! 118: NoSymbol, NoSymbol, /* 0x2c */ ! 119: XK_R4, NoSymbol, /* 0x2d */ ! 120: XK_R5, NoSymbol, /* 0x2e */ ! 121: XK_R6, NoSymbol, /* 0x2f */ ! 122: NoSymbol, NoSymbol, /* 0x30 */ ! 123: XK_L5, NoSymbol, /* 0x31 */ ! 124: NoSymbol, NoSymbol, /* 0x32 */ ! 125: XK_L6, NoSymbol, /* 0x33 */ ! 126: NoSymbol, NoSymbol, /* 0x34 */ ! 127: XK_Tab, NoSymbol, /* 0x35 */ ! 128: XK_Q, NoSymbol, /* 0x36 */ ! 129: XK_W, NoSymbol, /* 0x37 */ ! 130: XK_E, NoSymbol, /* 0x38 */ ! 131: XK_R, NoSymbol, /* 0x39 */ ! 132: XK_T, NoSymbol, /* 0x3a */ ! 133: XK_Y, NoSymbol, /* 0x3b */ ! 134: XK_U, NoSymbol, /* 0x3c */ ! 135: XK_I, NoSymbol, /* 0x3d */ ! 136: XK_O, NoSymbol, /* 0x3e */ ! 137: XK_P, NoSymbol, /* 0x3f */ ! 138: XK_bracketleft, XK_braceleft, /* 0x40 */ ! 139: XK_bracketright, XK_braceright, /* 0x41 */ ! 140: XK_Delete, NoSymbol, /* 0x42 */ ! 141: NoSymbol, NoSymbol, /* 0x43 */ ! 142: XK_R7, NoSymbol, /* 0x44 */ ! 143: XK_Up, XK_R8, /* 0x45 */ ! 144: XK_R9, NoSymbol, /* 0x46 */ ! 145: NoSymbol, NoSymbol, /* 0x47 */ ! 146: XK_L7, NoSymbol, /* 0x48 */ ! 147: XK_L8, NoSymbol, /* 0x49 */ ! 148: NoSymbol, NoSymbol, /* 0x4a */ ! 149: NoSymbol, NoSymbol, /* 0x4b */ ! 150: XK_Control_L, NoSymbol, /* 0x4c */ ! 151: XK_A, NoSymbol, /* 0x4d */ ! 152: XK_S, NoSymbol, /* 0x4e */ ! 153: XK_D, NoSymbol, /* 0x4f */ ! 154: XK_F, NoSymbol, /* 0x50 */ ! 155: XK_G, NoSymbol, /* 0x51 */ ! 156: XK_H, NoSymbol, /* 0x52 */ ! 157: XK_J, NoSymbol, /* 0x53 */ ! 158: XK_K, NoSymbol, /* 0x54 */ ! 159: XK_L, NoSymbol, /* 0x55 */ ! 160: XK_semicolon, XK_colon, /* 0x56 */ ! 161: XK_quoteright, XK_quotedbl, /* 0x57 */ ! 162: XK_backslash, XK_bar, /* 0x58 */ ! 163: XK_Return, NoSymbol, /* 0x59 */ ! 164: NoSymbol, NoSymbol, /* 0x5a */ ! 165: XK_Left, XK_R10, /* 0x5b */ ! 166: XK_R11, NoSymbol, /* 0x5c */ ! 167: XK_Right, NoSymbol, /* 0x5d */ ! 168: NoSymbol, NoSymbol, /* 0x5e */ ! 169: XK_L9, NoSymbol, /* 0x5f */ ! 170: NoSymbol, NoSymbol, /* 0x60 */ ! 171: XK_L10, NoSymbol, /* 0x61 */ ! 172: NoSymbol, NoSymbol, /* 0x62 */ ! 173: XK_Shift_L, NoSymbol, /* 0x63 */ ! 174: XK_Z, NoSymbol, /* 0x64 */ ! 175: XK_X, NoSymbol, /* 0x65 */ ! 176: XK_C, NoSymbol, /* 0x66 */ ! 177: XK_V, NoSymbol, /* 0x67 */ ! 178: XK_B, NoSymbol, /* 0x68 */ ! 179: XK_N, NoSymbol, /* 0x69 */ ! 180: XK_M, NoSymbol, /* 0x6a */ ! 181: XK_comma, XK_less, /* 0x6b */ ! 182: XK_period, XK_greater, /* 0x6c */ ! 183: XK_slash, XK_question, /* 0x6d */ ! 184: XK_Shift_R, NoSymbol, /* 0x6e */ ! 185: XK_Linefeed, NoSymbol, /* 0x6f */ ! 186: XK_R13, NoSymbol, /* 0x70 */ ! 187: XK_Down, XK_R14, /* 0x71 */ ! 188: XK_R15, NoSymbol, /* 0x72 */ ! 189: NoSymbol, NoSymbol, /* 0x73 */ ! 190: NoSymbol, NoSymbol, /* 0x74 */ ! 191: NoSymbol, NoSymbol, /* 0x75 */ ! 192: NoSymbol, NoSymbol, /* 0x76 */ ! 193: NoSymbol, NoSymbol, /* 0x77 */ ! 194: XK_Meta_L, NoSymbol, /* 0x78 */ ! 195: XK_space, NoSymbol, /* 0x79 */ ! 196: XK_Meta_R, NoSymbol, /* 0x7a */ ! 197: NoSymbol, NoSymbol, /* 0x7b */ ! 198: NoSymbol, NoSymbol, /* 0x7c */ ! 199: NoSymbol, NoSymbol, /* 0x7d */ ! 200: NoSymbol, NoSymbol, /* 0x7e */ ! 201: NoSymbol, NoSymbol, /* 0x7f */ ! 202: }; ! 203: ! 204: static KeySym Sun3Map[] = { ! 205: XK_L1, NoSymbol, /* 0x01 */ ! 206: NoSymbol, NoSymbol, /* 0x02 */ ! 207: XK_L2, NoSymbol, /* 0x03 */ ! 208: NoSymbol, NoSymbol, /* 0x4 */ ! 209: XK_F1, NoSymbol, /* 0x5 */ ! 210: XK_F2, NoSymbol, /* 0x6 */ ! 211: NoSymbol, NoSymbol, /* 0x7 */ ! 212: XK_F3, NoSymbol, /* 0x8 */ ! 213: NoSymbol, NoSymbol, /* 0x9 */ ! 214: XK_F4, NoSymbol, /* 0xa */ ! 215: NoSymbol, NoSymbol, /* 0xb */ ! 216: XK_F5, NoSymbol, /* 0xc */ ! 217: NoSymbol, NoSymbol, /* 0xd */ ! 218: XK_F6, NoSymbol, /* 0xe */ ! 219: NoSymbol, NoSymbol, /* 0xf */ ! 220: XK_F7, NoSymbol, /* 0x10 */ ! 221: XK_F8, NoSymbol, /* 0x11 */ ! 222: XK_F9, NoSymbol, /* 0x12 */ ! 223: XK_Break, NoSymbol, /* 0x13 */ ! 224: NoSymbol, NoSymbol, /* 0x14 */ ! 225: XK_R1, NoSymbol, /* 0x15 */ ! 226: XK_R2, NoSymbol, /* 0x16 */ ! 227: XK_R3, NoSymbol, /* 0x17 */ ! 228: NoSymbol, NoSymbol, /* 0x18 */ ! 229: XK_L3, NoSymbol, /* 0x19 */ ! 230: XK_L4, NoSymbol, /* 0x1a */ ! 231: NoSymbol, NoSymbol, /* 0x1b */ ! 232: NoSymbol, NoSymbol, /* 0x1c */ ! 233: XK_Escape, NoSymbol, /* 0x1d */ ! 234: XK_1, XK_exclam, /* 0x1e */ ! 235: XK_2, XK_at, /* 0x1f */ ! 236: XK_3, XK_numbersign, /* 0x20 */ ! 237: XK_4, XK_dollar, /* 0x21 */ ! 238: XK_5, XK_percent, /* 0x22 */ ! 239: XK_6, XK_asciicircum, /* 0x23 */ ! 240: XK_7, XK_ampersand, /* 0x24 */ ! 241: XK_8, XK_asterisk, /* 0x25 */ ! 242: XK_9, XK_parenleft, /* 0x26 */ ! 243: XK_0, XK_parenright, /* 0x27 */ ! 244: XK_minus, XK_underscore, /* 0x28 */ ! 245: XK_equal, XK_plus, /* 0x29 */ ! 246: XK_quoteleft, XK_asciitilde, /* 0x2a */ ! 247: XK_BackSpace, NoSymbol, /* 0x2b */ ! 248: NoSymbol, NoSymbol, /* 0x2c */ ! 249: XK_R4, NoSymbol, /* 0x2d */ ! 250: XK_R5, NoSymbol, /* 0x2e */ ! 251: XK_R6, NoSymbol, /* 0x2f */ ! 252: NoSymbol, NoSymbol, /* 0x30 */ ! 253: XK_L5, NoSymbol, /* 0x31 */ ! 254: NoSymbol, NoSymbol, /* 0x32 */ ! 255: XK_L6, NoSymbol, /* 0x33 */ ! 256: NoSymbol, NoSymbol, /* 0x34 */ ! 257: XK_Tab, NoSymbol, /* 0x35 */ ! 258: XK_Q, NoSymbol, /* 0x36 */ ! 259: XK_W, NoSymbol, /* 0x37 */ ! 260: XK_E, NoSymbol, /* 0x38 */ ! 261: XK_R, NoSymbol, /* 0x39 */ ! 262: XK_T, NoSymbol, /* 0x3a */ ! 263: XK_Y, NoSymbol, /* 0x3b */ ! 264: XK_U, NoSymbol, /* 0x3c */ ! 265: XK_I, NoSymbol, /* 0x3d */ ! 266: XK_O, NoSymbol, /* 0x3e */ ! 267: XK_P, NoSymbol, /* 0x3f */ ! 268: XK_bracketleft, XK_braceleft, /* 0x40 */ ! 269: XK_bracketright, XK_braceright, /* 0x41 */ ! 270: XK_Delete, NoSymbol, /* 0x42 */ ! 271: NoSymbol, NoSymbol, /* 0x43 */ ! 272: XK_R7, NoSymbol, /* 0x44 */ ! 273: XK_Up, XK_R8, /* 0x45 */ ! 274: XK_R9, NoSymbol, /* 0x46 */ ! 275: NoSymbol, NoSymbol, /* 0x47 */ ! 276: XK_L7, NoSymbol, /* 0x48 */ ! 277: XK_L8, NoSymbol, /* 0x49 */ ! 278: NoSymbol, NoSymbol, /* 0x4a */ ! 279: NoSymbol, NoSymbol, /* 0x4b */ ! 280: XK_Control_L, NoSymbol, /* 0x4c */ ! 281: XK_A, NoSymbol, /* 0x4d */ ! 282: XK_S, NoSymbol, /* 0x4e */ ! 283: XK_D, NoSymbol, /* 0x4f */ ! 284: XK_F, NoSymbol, /* 0x50 */ ! 285: XK_G, NoSymbol, /* 0x51 */ ! 286: XK_H, NoSymbol, /* 0x52 */ ! 287: XK_J, NoSymbol, /* 0x53 */ ! 288: XK_K, NoSymbol, /* 0x54 */ ! 289: XK_L, NoSymbol, /* 0x55 */ ! 290: XK_semicolon, XK_colon, /* 0x56 */ ! 291: XK_quoteright, XK_quotedbl, /* 0x57 */ ! 292: XK_backslash, XK_bar, /* 0x58 */ ! 293: XK_Return, NoSymbol, /* 0x59 */ ! 294: NoSymbol, NoSymbol, /* 0x5a */ ! 295: XK_Left, XK_R10, /* 0x5b */ ! 296: XK_R11, NoSymbol, /* 0x5c */ ! 297: XK_Right, NoSymbol, /* 0x5d */ ! 298: NoSymbol, NoSymbol, /* 0x5e */ ! 299: XK_L9, NoSymbol, /* 0x5f */ ! 300: NoSymbol, NoSymbol, /* 0x60 */ ! 301: XK_L10, NoSymbol, /* 0x61 */ ! 302: NoSymbol, NoSymbol, /* 0x62 */ ! 303: XK_Shift_L, NoSymbol, /* 0x63 */ ! 304: XK_Z, NoSymbol, /* 0x64 */ ! 305: XK_X, NoSymbol, /* 0x65 */ ! 306: XK_C, NoSymbol, /* 0x66 */ ! 307: XK_V, NoSymbol, /* 0x67 */ ! 308: XK_B, NoSymbol, /* 0x68 */ ! 309: XK_N, NoSymbol, /* 0x69 */ ! 310: XK_M, NoSymbol, /* 0x6a */ ! 311: XK_comma, XK_less, /* 0x6b */ ! 312: XK_period, XK_greater, /* 0x6c */ ! 313: XK_slash, XK_question, /* 0x6d */ ! 314: XK_Shift_R, NoSymbol, /* 0x6e */ ! 315: XK_Linefeed, NoSymbol, /* 0x6f */ ! 316: XK_R13, NoSymbol, /* 0x70 */ ! 317: XK_Down, XK_R14, /* 0x71 */ ! 318: XK_R15, NoSymbol, /* 0x72 */ ! 319: NoSymbol, NoSymbol, /* 0x73 */ ! 320: NoSymbol, NoSymbol, /* 0x74 */ ! 321: NoSymbol, NoSymbol, /* 0x75 */ ! 322: NoSymbol, NoSymbol, /* 0x76 */ ! 323: XK_Caps_Lock, NoSymbol, /* 0x77 */ ! 324: XK_Meta_L, NoSymbol, /* 0x78 */ ! 325: XK_space, NoSymbol, /* 0x79 */ ! 326: XK_Meta_R, NoSymbol, /* 0x7a */ ! 327: NoSymbol, NoSymbol, /* 0x7b */ ! 328: NoSymbol, NoSymbol, /* 0x7c */ ! 329: NoSymbol, NoSymbol, /* 0x7d */ ! 330: NoSymbol, NoSymbol, /* 0x7e */ ! 331: NoSymbol, NoSymbol, /* 0x7f */ ! 332: }; ! 333: ! 334: KeySymsRec sunKeySyms[] = { ! 335: /* map minKeyCode maxKC width */ ! 336: #ifdef notdef ! 337: KlunkMap, 1, 0x7a, 2, ! 338: VT100Map, 1, 0x7a, 2, ! 339: #else ! 340: (KeySym *)NULL, 0, 0, 0, ! 341: (KeySym *)NULL, 0, 0, 0, ! 342: #endif ! 343: Sun2Map, 1, 0x7a, 2, ! 344: Sun3Map, 1, 0x7a, 2, ! 345: }; ! 346: ! 347: #define cT (ControlMask) ! 348: #define sH (ShiftMask) ! 349: #define lK (LockMask) ! 350: #define mT (Mod1Mask) ! 351: static CARD8 type2modmap[MAP_LENGTH] = { ! 352: 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* 00-0f */ ! 353: 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* 10-1f */ ! 354: 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* 20-2f */ ! 355: 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* 30-3f */ ! 356: 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* 40-4f */ ! 357: 0, 0, 0, cT, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* 50-5f */ ! 358: 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, sH, 0, 0, 0, 0, 0, /* 60-6f */ ! 359: 0, 0, 0, 0, 0, sH, 0, 0, 0, 0, 0, 0, 0, 0, 0, mT,/* 70-7f */ ! 360: 0, mT, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* 80-8f */ ! 361: 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* 90-9f */ ! 362: 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* a0-af */ ! 363: 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* b0-bf */ ! 364: 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* c0-cf */ ! 365: 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* d0-df */ ! 366: 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* e0-ef */ ! 367: 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* f0-ff */ ! 368: }; ! 369: ! 370: static CARD8 type3modmap[MAP_LENGTH] = { ! 371: 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* 00-0f */ ! 372: 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* 10-1f */ ! 373: 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* 20-2f */ ! 374: 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* 30-3f */ ! 375: 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* 40-4f */ ! 376: 0, 0, 0, cT, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* 50-5f */ ! 377: 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, sH, 0, 0, 0, 0, 0, /* 60-6f */ ! 378: 0, 0, 0, 0, 0, sH, 0, 0, 0, 0, 0, 0, 0, 0, lK, mT,/* 70-7f */ ! 379: 0, mT, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* 80-8f */ ! 380: 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* 90-9f */ ! 381: 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* a0-af */ ! 382: 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* b0-bf */ ! 383: 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* c0-cf */ ! 384: 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* d0-df */ ! 385: 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* e0-ef */ ! 386: 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* f0-ff */ ! 387: }; ! 388: ! 389: CARD8 *sunModMap[] = { ! 390: NULL, ! 391: NULL, ! 392: type2modmap, ! 393: type3modmap, ! 394: };
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.