|
DataMuseum.dkPresents historical artifacts from the history of: DKUUG/EUUG Conference tapes |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about DKUUG/EUUG Conference tapes Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - downloadIndex: T k
Length: 11940 (0x2ea4) Types: TextFile Names: »keycode.h«
└─⟦a0efdde77⟧ Bits:30001252 EUUGD11 Tape, 1987 Spring Conference Helsinki └─⟦526ad3590⟧ »EUUGD11/gnu-31mar87/X.V10.R4.tar.Z« └─⟦2109abc41⟧ └─⟦this⟧ »./X.V10R4/Toolkit/Xr/src/include/Xr/keycode.h« └─⟦this⟧ »./X.V10R4/Toolkit/Xr/usr/include/Xr/keycode.h«
#include <Xr/xr-copyright.h> /* $Header: keycode.h,v 7.0 86/11/13 08:32:47 rick Exp $ */ /* Copyright 1986, Hewlett-Packard Company */ /* Copyright 1986, Massachussetts Institute of Technology */ /*************************************<+>************************************* ***************************************************************************** ** ** File: keycode.h ** ** Project: X-ray Toolbox ** ** Description: ** Input translation codes ** ** ** ------------------------ MODIFICATION RECORD ------------------------ * * $Log: keycode.h,v $ * Revision 7.0 86/11/13 08:32:47 08:32:47 rick () * Final QA release * * Revision 6.0 86/11/10 15:19:51 15:19:51 rick () * QA #2 release * * Revision 5.1 86/11/07 13:59:06 13:59:06 rick () * Added the copyright message. * * Revision 5.0 86/10/28 08:25:44 08:25:44 rick () * QA #1.1 release * * Revision 4.1 86/10/24 09:02:35 09:02:35 karen * update to make ALT and 16 BIT handling more general, remove CAPSLOCK * * Revision 3.0 86/10/02 16:01:16 16:01:16 rick () * Alpha release set to 3.0 * * Revision 1.3 86/10/02 15:12:35 15:12:35 fred () * Modified the keymap. * * Revision 1.2 86/09/30 12:07:51 12:07:51 fred () * Removed rcsid string definition. * * Revision 1.1 86/09/30 11:35:35 11:35:35 fred () * Initial revision * * ***************************************************************************** *************************************<+>*************************************/ struct kbd_state { unsigned char k_iso7to8[128]; unsigned char k_iso8to7[256]; unsigned int flags; /* Control & State Flags (Read/Write) */ char type; /* type of keyboard, HP or DEFAULT */ char language; /* Keyboard Nationality Language (Read/Write) */ char pwr_language; /* Keyboard Language At Power Up */ unsigned char alt; /* Method to access alternate keymap */ unsigned char i16bit; /* Method to access 16 bit input */ unsigned char *langtab; /* Pointer To Language Dependent Key Table */ unsigned char *alttab; /* Pointer To Alternate Language Key Table */ unsigned int last_char; /* Used for Muting */ }; #define CURS_DN_KEY 0x01 /* start of funcs encoded by term0 */ #define CURS_LF_KEY 0x02 #define CURS_UP_KEY 0x03 #define CURS_RT_KEY 0x04 #define ROLL_DN_KEY 0x05 #define ROLL_LF_KEY 0x06 #define ROLL_UP_KEY 0x07 #define ROLL_RT_KEY 0x08 #define TAB_KEY 0x09 #define BACKTAB_KEY 0x0A #define NEXT_KEY 0x0B #define PREV_KEY 0x0C #define HOME_UP_KEY 0x0D #define HOME_DN_KEY 0x0E #define DEL_CHAR_KEY 0x0F #define INSERT_CHAR_KEY 0x10 #define DEL_LINE_KEY 0x11 #define INSERT_LINE_KEY 0x12 #define CLR_DISP_KEY 0x13 #define CLR_LINE_KEY 0x14 #define CLR_ALL_DISP_KEY 0x15 #define CLR_ALL_LINE_KEY 0x16 #define BS_KEY 0x17 /*BS_KEY is last func encoded by term0*/ #define BLANK_1_KEY 0x20 #define BLANK_2_KEY 0x21 #define BLANK_3_KEY 0x22 #define BLANK_4_KEY 0x23 #define BLANK_5_KEY 0x24 #define BLANK_6_KEY 0x25 #define BLANK_7_KEY 0x26 #define BLANK_8_KEY 0x27 #define SELECT_KEY 0x28 #define SH_SELECT_KEY 0x29 #define BREAK_KEY 0x2A #define RESET_KEY 0x2B #define STOP_KEY 0x2C #define SH_STOP_KEY 0x2D #define MENU_KEY 0x2E #define SYS_KEY 0x2F #define USER_KEY 0x30 #define PRINT_KEY 0x31 #define SHIFT_KEY 0x32 #define CONTROL_KEY 0x33 #define CAPS_KEY 0x34 #define TO_ALT_KEY 0x35 #define TO_ROMAN_KEY 0x36 #define KANJI_LF_KEY 0x37 #define KANJI_RT_KEY 0x38 #define GO_16BIT_KEY 0x39 #define LEAVE_16BIT_KEY 0x3A #define HELP_KEY 0x3B /* on DEC keyboard */ #define DO_KEY 0x3C /* on DEC keyboard */ #define FIND_KEY 0x3D /* on DEC keyboard */ #define ENTER_KEY 0x3E /* ENTER_KEY + 1 = RETURN_KEY */ #define RETURN_KEY 0x3F /* RETURN_KEY + 1 = F1_KEY */ #define F1_KEY 0x40 /* F1_KEY | 0x010 = WF1_KEY */ #define F2_KEY 0x41 /* F1_KEY - F16_KEY contiguous */ #define F3_KEY 0x42 #define F4_KEY 0x43 #define F5_KEY 0x44 #define F6_KEY 0x45 #define F7_KEY 0x46 #define F8_KEY 0x47 #define F9_KEY 0x48 #define F10_KEY 0x49 #define F11_KEY 0x4A #define F12_KEY 0x4B #define F13_KEY 0x4C #define F14_KEY 0x4D #define F15_KEY 0x4E #define F16_KEY 0x4F #define WF1_KEY 0x50 /* WF1_KEY & 0xFEF = F1_KEY */ #define WF2_KEY 0x51 /* WF1_KEY - WF16_KEY contiguous */ #define WF3_KEY 0x52 #define WF4_KEY 0x53 #define WF5_KEY 0x54 #define WF6_KEY 0x55 #define WF7_KEY 0x56 #define WF8_KEY 0x57 #define WF9_KEY 0x58 #define WF10_KEY 0x59 #define WF11_KEY 0x5A #define WF12_KEY 0x5B #define WF13_KEY 0x5C #define WF14_KEY 0x5D #define WF15_KEY 0x5E #define WF16_KEY 0x5F #define CF1_KEY 0x60 /* CF1_KEY - CF16_KEY contiguous */ #define CF2_KEY 0x61 #define CF3_KEY 0x62 #define CF4_KEY 0x63 #define CF5_KEY 0x64 #define CF6_KEY 0x65 #define CF7_KEY 0x66 #define CF8_KEY 0x67 #define CF9_KEY 0x68 #define CF10_KEY 0x69 #define CF11_KEY 0x6A #define CF12_KEY 0x6B #define CF13_KEY 0x6C #define CF14_KEY 0x6D #define CF15_KEY 0x6E #define CF16_KEY 0x6F /* ROMAN8 Characters Greater Than 127 */ #define R_A_FQUOTE 161 #define R_A_HAT 162 #define R_E_FQUOTE 163 #define R_E_HAT 164 #define R_E_DDOT 165 #define R_I_HAT 166 #define R_I_DDOT 167 #define R_BQUOTE 168 #define R_FQUOTE 169 #define R_HAT 170 #define R_DDOT 171 #define R_TILTA 172 #define R_U_FQUOTE 173 #define R_U_HAT 174 #define R_DPOUND 175 #define R_OVERBAR 176 #define R_Y_BQUOTE 177 #define R_y_BQUOTE 178 #define R_DEGREE 179 #define R_C_BEARD 180 #define R_c_BEARD 181 #define R_N_TILTA 182 #define R_n_TILTA 183 #define R_i 184 #define R_UQUES 185 #define R_OX 186 #define R_SPOUND 187 #define R_YEN 188 #define R_SO 189 #define R_F 190 #define R_CENT 191 #define R_a_HAT 192 #define R_e_HAT 193 #define R_o_HAT 194 #define R_u_HAT 195 #define R_a_BQUOTE 196 #define R_e_BQUOTE 197 #define R_o_BQUOTE 198 #define R_u_BQUOTE 199 #define R_a_FQUOTE 200 #define R_e_FQUOTE 201 #define R_o_FQUOTE 202 #define R_u_FQUOTE 203 #define R_a_DDOT 204 #define R_e_DDOT 205 #define R_o_DDOT 206 #define R_u_DDOT 207 #define R_A_DOT 208 #define R_i_HAT 209 #define R_ZERO 210 #define R_AE 211 #define R_a_DOT 212 #define R_i_BQUOTE 213 #define R_zero 214 #define R_ae 215 #define R_A_DDOT 216 #define R_i_FQUOTE 217 #define R_O_DDOT 218 #define R_U_DDOT 219 #define R_E_BQUOTE 220 #define R_i_DDOT 221 #define R_BETA 222 #define R_O_HAT 223 #define R_A_BQUOTE 224 #define R_A_TILTA 225 #define R_a_TILTA 226 #define R_D_CROSS 227 #define R_d_CROSS 228 #define R_I_BQUOTE 229 #define R_I_FQUOTE 230 #define R_O_BQUOTE 231 #define R_O_FQUOTE 232 #define R_O_TILTA 233 #define R_o_TILTA 234 #define R_S_V 235 #define R_s_V 236 #define R_U_BQUOTE 237 #define R_Y_DDOT 238 #define R_y_DDOT 239 #define R_IP 240 #define R_ip 241 #define R_MIDDOT 242 #define R_MICRO 243 #define R_PILCROW 244 #define R_THREEFOURTH 245 #define R_MIDLINE 246 #define R_ONEFOURTH 247 #define R_ONEHALF 248 #define R_AUSCORE 249 #define R_OUSCORE 250 #define R_LEFTSHIFT 251 #define R_BLACK 252 #define R_RIGHTSHIFT 253 #define R_PLUSMINUS 254 /* Definition of Language Fields */ #define K_HP_USASCII 0 /* (0) HP ITF United States */ #define K_HP_BELGIAN 1 /* (1) HP ITF Belgian */ #define K_HP_CANENG 2 /* (2) HP ITF Canadian English */ #define K_HP_DANISH 3 /* (3) HP ITF Danish */ #define K_HP_DUTCH 4 /* (4) HP ITF Dutch */ #define K_HP_FINNISH 5 /* (5) HP ITF Finnish */ #define K_HP_FRENCH 6 /* (6) HP ITF French (AZERTY) */ #define K_HP_CANFRENCH 7 /* (7) HP ITF Canadian French */ #define K_HP_SWISSFRENCH 8 /* (8) HP ITF Swiss French */ #define K_HP_GERMAN 9 /* (9) HP ITF German */ #define K_HP_SWISSGERMAN 10 /* (10) HP ITF Swiss German */ #define K_HP_ITALIAN 11 /* (11) HP ITF Italian */ #define K_HP_NORWEGIAN 12 /* (12) HP ITF Norwegian */ #define K_HP_EUROSPANISH 13 /* (13) HP ITF European Spanish */ #define K_HP_LATSPANISH 14 /* (14) HP ITF Latin Spanish */ #define K_HP_SWEDISH 15 /* (15) HP ITF Swedish */ #define K_HP_UNITEDK 16 /* (16) HP ITF United Kingdom */ #define K_HP_KATAKANA 17 /* (17) HP ITF Katakana */ #define K_HP_SWISSFRENCH2 18 /* (18) HP ITF Swiss French II */ #define K_HP_SWISSGERMAN2 19 /* (19) HP ITF Swiss German II */ #define K_HP_KANJI 20 /* (20) HP ITF Kanji */ /* Keyboard Control/State Flag Bits and Configuration Parameters */ /* Enable Bits (Default in Parenthesis) */ #define K_ASCII8 0x0001 /* 8 bit (versus ISO 7 bit) (1) */ #define K_MUTE 0x0002 /* Non-advancing Diacriticals (8 bit only) (Lg. Dependent) */ #define K_ALT_ENABLE 0x0004 /* Alternate Language Keyboard (Lg. Dependent)*/ #define K_ALT 0x0008 /* Alternate Keyboard Mode (Read Only)(0)*/ #define K_16BITIO_ENABLE 0x0010 /* Enable 16 bit Input (Lg. Dependent) */ #define K_16BITIO 0x0020 /* 16 bit Input Mode (Read Only)(0) */ #define K_TYPE 0x0040 /* Modify keyboard type (keyboard dependent) */ #define K_LANGUAGE 0x0080 /* Modify Language (keyboard dependent) */ #define K_LOCALMAP 0x0100 /* User has a .Xkeymap to use */ #define K_FUNCTION 0x080 /* function code follows */ #define K_s 0x8000 /* indicates a function code in the tables */ #define K_HP 1 #define K_DEFAULT 2 /* Special Key Defines */ #define K_ILLEGAL 0 #define FIRST_LK201 86 #define FIRST_CHAR 105 #define CHAR_SHIFT 61 #define CODE_SHIFT 166 /* CHAR_SHIFT + FIRST_CHAR */ #define K_LANG_START 160 #define K_LANG_END 213 /* 160-213 */ #define K_LANG0 193 /* ` (1) */ #define K_LANG1 194 /* \ (2) */ #define K_LANG2 195 /* 1 (80) */ #define K_LANG3 196 /* 2 (81) */ #define K_LANG4 197 /* 3 (82) */ #define K_LANG5 198 /* 4 (83) */ #define K_LANG6 199 /* 5 (84) */ #define K_LANG7 200 /* 6 (85) */ #define K_LANG8 201 /* 7 (86) */ #define K_LANG9 202 /* 8 (87) */ #define K_LANG10 203 /* 9 (88) */ #define K_LANG11 204 /* 0 (89) */ #define K_LANG12 167 /* - (90) */ #define K_LANG13 169 /* = (91) */ #define K_LANG14 173 /* [ (92) */ #define K_LANG15 175 /* ] (93) */ #define K_LANG16 177 /* ; (94) */ #define K_LANG17 179 /* ' (95) */ #define K_LANG18 205 /* , (96) */ #define K_LANG19 206 /* . (97) */ #define K_LANG20 185 /* / (98) */ #define K_LANG21 188 /* q (104) */ #define K_LANG22 190 /* w (105) */ #define K_LANG23 171 /* y (109) */ #define K_LANG24 192 /* a (112) */ #define K_LANG25 207 /* m (119) */ #define K_LANG26 181 /* z (120) */ #define K_LANG27 208 /* ~ (Shift-1) */ #define K_LANG28 209 /* | (Shift-2) */ #define K_LANG30 210 /* ! (Shift-80) */ #define K_LANG31 160 /* @ (Shift-81) */ #define K_LANG32 186 /* # (Shift-82) */ #define K_LANG33 211 /* $ (Shift-83) */ #define K_LANG34 212 /* % (Shift-84) */ #define K_LANG35 161 /* ^ (Shift-85) */ #define K_LANG36 162 /* & (Shift-86) */ #define K_LANG37 163 /* * (Shift-87) */ #define K_LANG38 164 /* ( (Shift-88) */ #define K_LANG39 165 /* ) (Shift-89) */ #define K_LANG40 166 /* _ (Shift-90) */ #define K_LANG41 168 /* + (Shift-91) */ #define K_LANG42 172 /* { (Shift-92) */ #define K_LANG43 174 /* } (Shift-93) */ #define K_LANG44 176 /* : (Shift-94) */ #define K_LANG45 178 /* " (Shift-95) */ #define K_LANG46 182 /* < (Shift-96) */ #define K_LANG47 183 /* > (Shift-97) */ #define K_LANG48 184 /* ? (Shift-98) */ #define K_LANG49 187 /* Q (Shift-104) */ #define K_LANG50 189 /* W (Shift-105) */ #define K_LANG51 170 /* Y (Shift-109) */ #define K_LANG52 191 /* A (Shift-112) */ #define K_LANG53 213 /* M (Shift-119) */ #define K_LANG54 180 /* Z (Shift-120) */ /* Keyboard status register constants */ #define KEYSHIFTLOCK 0x0800 /* shift lock */ #define KEYSHIFT 0x1000 /* key was shifted */ #define KEYMETA 0x2000 /* meta key (extend) */ #define KEYCNTL 0x4000 /* key was control key */ #define CNTLKEY_MASK 0x1f /* maps keys to control key range */