summaryrefslogtreecommitdiffstats
path: root/private/mvdm/softpc.new/base/inc/msw_keyb.h
diff options
context:
space:
mode:
Diffstat (limited to 'private/mvdm/softpc.new/base/inc/msw_keyb.h')
-rw-r--r--private/mvdm/softpc.new/base/inc/msw_keyb.h232
1 files changed, 232 insertions, 0 deletions
diff --git a/private/mvdm/softpc.new/base/inc/msw_keyb.h b/private/mvdm/softpc.new/base/inc/msw_keyb.h
new file mode 100644
index 000000000..3972166fe
--- /dev/null
+++ b/private/mvdm/softpc.new/base/inc/msw_keyb.h
@@ -0,0 +1,232 @@
+/*[
+ *
+ * SoftPC-AT revision 3.0
+ *
+ * Title : Definitions for MS-Windows keyboard driver functions.
+ *
+ * Description : This file contains the definitions for msw_keybd.c.
+ *
+ * Author : Jerry Sexton
+ *
+ * Notes :
+ *
+]*/
+
+/* SccsID[]="@(#)msw_keybd.h 1.2 08/10/92 Copyright Insignia Solutions Ltd."; */
+
+/*
+=========================================================================
+ Macros.
+=========================================================================
+ */
+
+/* Null pointers. */
+#define TINY_NULL ((TINY *) 0)
+
+/* General definitions. */
+#define NO_NUMLOCK 0
+#define NUMLOCK 1
+
+/* Virtual keys. */
+
+#define VK_LBUTTON 0x01
+#define VK_RBUTTON 0x02
+#define VK_CANCEL 0x03
+
+/* 4..7 undefined */
+
+#define VK_BACK 0x08
+#define VK_TAB 0x09
+
+/* 0x0a .. 0x0b undefined */
+
+#define VK_CLEAR 0x0c
+#define VK_RETURN 0x0d
+
+#define VK_SHIFT 0x10
+#define VK_CONTROL 0x11
+#define VK_MENU 0x12
+#define VK_PAUSE 0x13
+#define VK_CAPITAL 0x14
+ /* 0x15..0x1a */
+#define VK_ESCAPE 0x1b
+ /* 0x1c..0x1f */
+#define VK_SPACE 0x20
+#define VK_PRIOR 0x21 /* page up */
+#define VK_NEXT 0x22 /* page down */
+#define VK_END 0x23
+#define VK_HOME 0x24
+#define VK_LEFT 0x25
+#define VK_UP 0x26
+#define VK_RIGHT 0x27
+#define VK_DOWN 0x28
+#define VK_SELECT 0x29
+#define VK_PRINT 0x2a
+#define VK_EXECUTE 0x2b
+#define VK_SNAPSHOT 0x2c /* Printscreen key.. */
+
+#define VK_INSERT 0x2d
+#define VK_DELETE 0x2e
+#define VK_HELP 0x2f
+#define VK_0 0x30
+#define VK_1 0x31
+#define VK_2 0x32
+#define VK_3 0x33
+#define VK_4 0x34
+#define VK_5 0x35
+#define VK_6 0x36
+#define VK_7 0x37
+#define VK_8 0x38
+#define VK_9 0x39
+ /* 0x40 */
+#define VK_A 0x41
+#define VK_B 0x42
+#define VK_C 0x43
+#define VK_D 0x44
+#define VK_E 0x45
+#define VK_F 0x46
+#define VK_G 0x47
+#define VK_H 0x48
+#define VK_I 0x49
+#define VK_J 0x4a
+#define VK_K 0x4b
+#define VK_L 0x4c
+#define VK_M 0x4d
+#define VK_N 0x4e
+#define VK_O 0x4f
+#define VK_P 0x50
+#define VK_Q 0x51
+#define VK_R 0x52
+#define VK_S 0x53
+#define VK_T 0x54
+#define VK_U 0x55
+#define VK_V 0x56
+#define VK_W 0x57
+#define VK_X 0x58
+#define VK_Y 0x59
+#define VK_Z 0x5a
+ /* 0x5b..0x5f */
+#define VK_NUMPAD0 0x60
+#define VK_NUMPAD1 0x61
+#define VK_NUMPAD2 0x62
+#define VK_NUMPAD3 0x63
+#define VK_NUMPAD4 0x64
+#define VK_NUMPAD5 0x65
+#define VK_NUMPAD6 0x66
+#define VK_NUMPAD7 0x67
+#define VK_NUMPAD8 0x68
+#define VK_NUMPAD9 0x69
+#define VK_MULTIPLY 0x6a
+#define VK_ADD 0x6b
+#define VK_SEPARATER 0x6c
+#define VK_SUBTRACT 0x6d
+#define VK_DECIMAL 0x6e
+#define VK_DIVIDE 0x6f
+
+#define VK_F1 0x70
+#define VK_F2 0x71
+#define VK_F3 0x72
+#define VK_F4 0x73
+#define VK_F5 0x74
+#define VK_F6 0x75
+#define VK_F7 0x76
+#define VK_F8 0x77
+#define VK_F9 0x78
+#define VK_F10 0x79
+#define VK_F11 0x7a
+#define VK_F12 0x7b
+#define VK_F13 0x7c
+#define VK_F14 0x7d
+#define VK_F15 0x7e
+#define VK_F16 0x7f
+
+#define VK_OEM_F17 0x80
+#define VK_OEM_F18 0x81
+#define VK_OEM_F19 0x82
+#define VK_OEM_F20 0x83
+#define VK_OEM_F21 0x84
+#define VK_OEM_F22 0x85
+#define VK_OEM_F23 0x86
+#define VK_OEM_F24 0x87
+
+/* 0x88..0x8f unassigned */
+
+#define VK_NUMLOCK 0x90
+#define VK_OEM_SCROLL 0x91 /* ScrollLock */
+
+/* 0x92..0xb9 unassigned */
+
+#define VK_OEM_1 0xba /* ';:' for US */
+#define VK_OEM_PLUS 0xbb /* '+' any country */
+#define VK_OEM_COMMA 0xbc /* ',' any country */
+#define VK_OEM_MINUS 0xbd /* '-' any country */
+#define VK_OEM_PERIOD 0xbe /* '.' any country */
+#define VK_OEM_2 0xbf /* '/?' for US */
+#define VK_OEM_3 0xc0 /* '`~' for US */
+
+/* 0xc1..0xda unassigned */
+
+#define VK_OEM_4 0xdb /* '[{' for US */
+#define VK_OEM_5 0xdc /* '\|' for US */
+#define VK_OEM_6 0xdd /* ']}' for US */
+#define VK_OEM_7 0xde /* ''"' for US */
+#define VK_OEM_8 0xdf
+
+/* codes various extended or enhanced keyboards */
+#define VK_F17 0xe0 /* F17 key on ICO, win 2.xx */
+#define VK_F18 0xe1 /* F18 key on ICO, win 2.xx */
+
+#define VK_OEM_102 0xe2 /* "<>" or "\|" on RT 102-key kbd. */
+
+#define VK_ICO_HELP 0xe3 /* Help key on ICO */
+#define VK_ICO_00 0xe4 /* 00 key on ICO */
+
+/* E5h unassigned */
+
+#define VK_ICO_CLEAR 0xe6 */
+
+/* E7h .. E8h unassigned */
+
+/* Nokia/Ericsson definitions */
+
+#define VK_ERICSSON_BASE 0xe8
+
+#define VK_OEM_RESET (VK_ERICSSON_BASE + 1) /* e9 */
+#define VK_OEM_JUMP (VK_ERICSSON_BASE + 2) /* ea */
+#define VK_OEM_PA1 (VK_ERICSSON_BASE + 3) /* eb */
+#define VK_OEM_PA2 (VK_ERICSSON_BASE + 4) /* ec */
+#define VK_OEM_PA3 (VK_ERICSSON_BASE + 5) /* ed */
+#define VK_OEM_WSCTRL (VK_ERICSSON_BASE + 6) /* ee */
+#define VK_OEM_CUSEL (VK_ERICSSON_BASE + 7) /* ef */
+#define VK_OEM_ATTN (VK_ERICSSON_BASE + 8) /* f0 */
+#define VK_OEM_FINNISH (VK_ERICSSON_BASE + 9) /* f1 */
+#define VK_OEM_COPY (VK_ERICSSON_BASE + 10) /* f2 */
+#define VK_OEM_AUTO (VK_ERICSSON_BASE + 11) /* f3 */
+#define VK_OEM_ENLW (VK_ERICSSON_BASE + 12) /* f4 */
+#define VK_OEM_BACKTAB (VK_ERICSSON_BASE + 13) /* f5 */
+
+
+/* F6h..FEh unassigned. */
+
+/* Defines for inquireData structure. */
+#define BEGINRANGE1 255
+#define ENDRANGE1 254
+#define BEGINRANGE2 255
+#define ENDRANGE2 254
+#define TO_ASCII_STATE_SIZE 4
+
+/*
+=========================================================================
+ Keyboard driver structure definitions.
+=========================================================================
+ */
+typedef struct tagKBINFO
+{
+ UTINY Begin_First_Range;
+ UTINY End_First_Range;
+ UTINY Begin_Second_Range;
+ UTINY End_Second_Range;
+ SHORT StateSize; /* size of ToAscii state block. */
+} KBINFO;
+
+#define INTEL_KBINFO_SIZE 6 /* Size of KBINFO structure in INTEL. */