home *** CD-ROM | disk | FTP | other *** search
- #ifndef __INC_POS_DEVICE_KEYMAP_H
- #define __INC_POS_DEVICE_KEYMAP_H
- /*******************************************************************
- Includes Release 24
- (C) Copyright 1995-1997 proDAD
- All Rights Reserved
-
- $AUT Holger Burkarth
- $DAT >>Keymap.h<< 19 Nov 1996 11:22:05 - (C) ProDAD
- *******************************************************************/
- #ifndef __INC_POS_PEXEC_LIST_H
- #include <pExec/List.h>
- #endif
-
-
- /*----------------------------------
- -----------------------------------*/
- struct pOS_KeyMap
- {
- UBYTE *km_LoKeyMapTypes; /* (enum pOS_KeyMapTypes) */
- ULONG *km_LoKeyMap;
- UBYTE *km_LoCapsable;
- UBYTE *km_LoRepeatable;
-
- UBYTE *km_HiKeyMapTypes; /* (enum pOS_KeyMapTypes) */
- ULONG *km_HiKeyMap;
- UBYTE *km_HiCapsable;
- UBYTE *km_HiRepeatable;
-
- UWORD km_Reserved;
- SWORD km_LoMapOffset; /* normal =0x00 */
- SWORD km_HiMapOffset; /* normal =0x40 */
- UWORD km_LoMapLen; /* normal =0x40 */
- UWORD km_HiMapLen; /* normal =0x28 */
- };
-
-
-
- /*----------------------------------
- -----------------------------------*/
- struct pOS_KeyMapStrHeader
- {
- UBYTE kmsh_StrLen; /* Len of string */
- SBYTE kmsh_Offset; /* Offset to string */
- };
-
- /*----------------------------------
- -----------------------------------*/
- struct pOS_KeyMapDeadHeader
- {
- UBYTE kmdh_Type; /* 0 | DPF_MOD | DPF_DEAD */
- union {
- UBYTE kmdh_Char; /* Type==0 */
- SBYTE kmdh_ModData; /* Type==DPF_MOD */
- } kmdh_U;
- };
-
-
-
- /*----------------------------------
- -----------------------------------*/
- struct pOS_KeyMapNode
- {
- struct pOS_ExNode kn_Node; /* ln_Name => name of keymap */
- struct pOS_KeyMap kn_KeyMap;
- };
-
-
-
- enum pOS_KeyMapTypes
- {
- KC_NOQUAL= 0x00,
- KC_VANILLA= 0x07, /* note that SHIFT+ALT+CTRL is VANILLA */
-
- KCF_SHIFT= 0x01,
- KCF_ALT= 0x02,
- KCF_CONTROL= 0x04,
- KCF_DOWNUP= 0x08,
-
- KCF_DEAD= 0x20, /* use dead prefix bytes */
- KCF_STRING= 0x40,
- KCF_NOP= 0x80,
-
-
- /* Dead Prefix Bytes */
- DPF_MOD= 0x01,
- DPF_DEAD= 0x08,
-
- DP_2DINDEXMASK= 0x0f, /* mask for index for 1st of two dead keys */
- DP_2DFACSHIFT= 0x04, /* shift for factor for 1st of two dead keys */
- };
-
- #endif
-