aboutsummaryrefslogtreecommitdiff
path: root/src/libparsec/include/keys_server.h
diff options
context:
space:
mode:
authorFelix Morgner <felix.morgner@gmail.com>2026-08-24 11:16:07 +0200
committerFelix Morgner <felix.morgner@gmail.com>2026-08-24 11:16:07 +0200
commitc068f22329d5cc722622a2183bbb22eef2093df7 (patch)
tree12d56c1aede67988a55e241364606bfbb4dba933 /src/libparsec/include/keys_server.h
downloadopenparsec-c068f22329d5cc722622a2183bbb22eef2093df7.tar.xz
openparsec-c068f22329d5cc722622a2183bbb22eef2093df7.zip
initial importHEADmain
Diffstat (limited to 'src/libparsec/include/keys_server.h')
-rw-r--r--src/libparsec/include/keys_server.h392
1 files changed, 392 insertions, 0 deletions
diff --git a/src/libparsec/include/keys_server.h b/src/libparsec/include/keys_server.h
new file mode 100644
index 0000000..b74f033
--- /dev/null
+++ b/src/libparsec/include/keys_server.h
@@ -0,0 +1,392 @@
+/*
+ * PARSEC HEADER: keys_pc.h
+ */
+
+#ifndef _KEYS_PC_H_
+#define _KEYS_PC_H_
+
+
+
+// ----------------------------------------------------------------------------
+// INTEL PC KEYBOARD CODES -
+// ----------------------------------------------------------------------------
+
+
+
+// make codes for general keyboard handling -----------------------------------
+//
+enum {
+
+ MKC_MAKE_CODE = 0x00,
+ MKC_BREAK_CODE = 0x80,
+ MKC_BASE_MASK = 0x7f,
+
+ MKC_EXT_MDIFR = 0xe0,
+ MKC_PAUSE_MDIFR = 0xe1,
+
+ MKC_EXT_FLAG = 0x80,
+ MKC_SHIFT_FLAG = 0x80,
+
+ MKC_NIL = 0x00,
+
+ MKC_ESCAPE = 0x01,
+ MKC_SPACE = 0x39,
+ MKC_ENTER = 0x1c,
+ MKC_CURSORUP = 0x48,
+ MKC_CURSORDOWN = 0x50,
+ MKC_CURSORLEFT = 0x4b,
+ MKC_CURSORRIGHT = 0x4d,
+ MKC_BACKSPACE = 0x0e,
+ MKC_INSERT = 0x52,
+ MKC_DELETE = 0x53,
+ MKC_HOME = 0x47,
+ MKC_END = 0x4f,
+ MKC_PAGEUP = 0x49,
+ MKC_PAGEDOWN = 0x51,
+ MKC_CAPSLOCK = 0x3a,
+ MKC_TILDE = 0x29, // U.S.: `~ german: ^ø
+
+ MKC_MINUS = 0x0c, // U.S.: -_ german: á?bsl
+ MKC_EQUALS = 0x0d, // U.S.: =+ german: ï`
+ MKC_TAB = 0x0f,
+ MKC_LBRACKET = 0x1a, // U.S.: [{ german: š
+ MKC_RBRACKET = 0x1b, // U.S.: ]} german: +*~
+ MKC_SEMICOLON = 0x27, // U.S.: ;: german: ”™
+ MKC_APOSTROPHE = 0x28, // U.S.: '" german: „Ž
+ MKC_GRAVE = 0x29, // U.S.: `~ german: ^ø
+
+ MKC_LSHIFT = 0x2a,
+ MKC_RSHIFT = 0x36,
+ MKC_LCONTROL = 0x1d,
+ MKC_RCONTROL = 0x1d | MKC_EXT_FLAG,
+ MKC_LALT = 0x38,
+ MKC_RALT = 0x38 | MKC_EXT_FLAG,
+
+ MKC_COMMA = 0x33, // U.S.: ,< german: ,;
+ MKC_PERIOD = 0x34, // U.S.: .> german: .:
+ MKC_SLASH = 0x35, // U.S.: /? german: -_
+
+ MKC_BACKSLASH = 0x2b, // U.S.: bsl| german: #'
+ MKC_GERARROWS = 0x56, // german: <>|
+
+ MKC_NUMPADSLASH = 0x35 | MKC_EXT_FLAG, // gray divide
+ MKC_NUMPADSTAR = 0x37, // gray multiply
+ MKC_NUMPADMINUS = 0x4a, // gray subtract
+ MKC_NUMPADPLUS = 0x4e, // gray add
+ MKC_NUMPADPERIOD= MKC_DELETE, // gray decimal (period/comma)
+ MKC_NUMLOCK = 0x45,
+ MKC_SCROLL = 0x46,
+
+ MKC_NUMPAD0 = MKC_INSERT,
+ MKC_NUMPAD1 = MKC_END,
+ MKC_NUMPAD2 = MKC_CURSORDOWN,
+ MKC_NUMPAD3 = MKC_PAGEDOWN,
+ MKC_NUMPAD4 = MKC_CURSORLEFT,
+ MKC_NUMPAD5 = 0x4c,
+ MKC_NUMPAD6 = MKC_CURSORRIGHT,
+ MKC_NUMPAD7 = MKC_HOME,
+ MKC_NUMPAD8 = MKC_CURSORUP,
+ MKC_NUMPAD9 = MKC_PAGEUP,
+
+ MKC_LWIN = 0x5b | MKC_EXT_FLAG, // left windows key
+ MKC_RWIN = 0x5c | MKC_EXT_FLAG, // right windows key
+ MKC_APPS = 0x5d | MKC_EXT_FLAG, // windows apps window key
+
+ MKC_ENTER_GRAY = MKC_ENTER | MKC_EXT_FLAG,
+ MKC_CURSORUP_GRAY = MKC_CURSORUP | MKC_EXT_FLAG,
+ MKC_CURSORDOWN_GRAY = MKC_CURSORDOWN | MKC_EXT_FLAG,
+ MKC_CURSORLEFT_GRAY = MKC_CURSORLEFT | MKC_EXT_FLAG,
+ MKC_CURSORRIGHT_GRAY= MKC_CURSORRIGHT | MKC_EXT_FLAG,
+ MKC_BACKSPACE_GRAY = MKC_BACKSPACE | MKC_EXT_FLAG,
+ MKC_INSERT_GRAY = MKC_INSERT | MKC_EXT_FLAG,
+ MKC_DELETE_GRAY = MKC_DELETE | MKC_EXT_FLAG,
+ MKC_HOME_GRAY = MKC_HOME | MKC_EXT_FLAG,
+ MKC_END_GRAY = MKC_END | MKC_EXT_FLAG,
+ MKC_PAGEUP_GRAY = MKC_PAGEUP | MKC_EXT_FLAG,
+ MKC_PAGEDOWN_GRAY = MKC_PAGEDOWN | MKC_EXT_FLAG,
+
+ MKC_A = 0x1e,
+ MKC_B = 0x30,
+ MKC_C = 0x2e,
+ MKC_D = 0x20,
+ MKC_E = 0x12,
+ MKC_F = 0x21,
+ MKC_G = 0x22,
+ MKC_H = 0x23,
+ MKC_I = 0x17,
+ MKC_J = 0x24,
+ MKC_K = 0x25,
+ MKC_L = 0x26,
+ MKC_M = 0x32,
+ MKC_N = 0x31,
+ MKC_O = 0x18,
+ MKC_P = 0x19,
+ MKC_Q = 0x10,
+ MKC_R = 0x13,
+ MKC_S = 0x1f,
+ MKC_T = 0x14,
+ MKC_U = 0x16,
+ MKC_V = 0x2f,
+ MKC_W = 0x11,
+ MKC_X = 0x2d,
+ MKC_Y = 0x15,
+ MKC_Z = 0x2c,
+
+ MKC_0 = 0x0b,
+ MKC_1 = 0x02,
+ MKC_2 = 0x03,
+ MKC_3 = 0x04,
+ MKC_4 = 0x05,
+ MKC_5 = 0x06,
+ MKC_6 = 0x07,
+ MKC_7 = 0x08,
+ MKC_8 = 0x09,
+ MKC_9 = 0x0a,
+
+ MKC_F1 = 0x3b,
+ MKC_F2 = 0x3c,
+ MKC_F3 = 0x3d,
+ MKC_F4 = 0x3e,
+ MKC_F5 = 0x3f,
+ MKC_F6 = 0x40,
+ MKC_F7 = 0x41,
+ MKC_F8 = 0x42,
+ MKC_F9 = 0x43,
+ MKC_F10 = 0x44,
+ MKC_F11 = 0x57,
+ MKC_F12 = 0x58
+};
+
+
+
+// key codes for console's keyboard buffer (only special codes/control keys) --
+//
+enum {
+
+ CKC_NIL = 0x800000,
+ CKC_ESCAPE = 0x800001,
+ CKC_SPACE = 0x000020,
+ CKC_ENTER = 0x800003,
+ CKC_CURSORUP = 0x800004,
+ CKC_CURSORDOWN = 0x800005,
+ CKC_CURSORLEFT = 0x800006,
+ CKC_CURSORRIGHT = 0x800007,
+ CKC_BACKSPACE = 0x800008,
+ CKC_INSERT = 0x800009,
+ CKC_DELETE = 0x80000A,
+ CKC_HOME = 0x80000B,
+ CKC_END = 0x80000C,
+ CKC_PAGEUP = 0x80000D,
+ CKC_PAGEDOWN = 0x80000E,
+ CKC_TAB = 0x80000F,
+ CKC_CURSORUP_SHIFTED = 0x800010,
+ CKC_CURSORDOWN_SHIFTED = 0x800011,
+ CKC_CURSORLEFT_SHIFTED = 0x800012,
+ CKC_CURSORRIGHT_SHIFTED = 0x800013,
+
+ CKC_CTRL_MASK = 0x800000
+};
+
+
+
+// key codes for flexible keyboard configuration (assignable keys) ------------
+//
+enum {
+
+ AKC_EXT_FLAG = 0x000080,
+ AKC_JOY_FLAG = 0x000100, // joystick buttons, no actual keyboard keys
+ AKC_SHIFT_FLAG = 0x010000,
+
+ AKC_ESCAPE = 0x000001,
+ AKC_SPACE = 0x000039,
+ AKC_ENTER = 0x00001c,
+ AKC_CURSORUP = 0x000048,
+ AKC_CURSORDOWN = 0x000050,
+ AKC_CURSORLEFT = 0x00004b,
+ AKC_CURSORRIGHT = 0x00004d,
+ AKC_BACKSPACE = 0x00000e,
+ AKC_INSERT = 0x000052,
+ AKC_DELETE = 0x000053,
+ AKC_HOME = 0x000047,
+ AKC_END = 0x00004f,
+ AKC_PAGEUP = 0x000049,
+ AKC_PAGEDOWN = 0x000051,
+ AKC_CAPSLOCK = 0x00003a,
+ AKC_TILDE = 0x000029,
+
+ AKC_MINUS = 0x00000c,
+ AKC_EQUALS = 0x00000d,
+ AKC_TAB = 0x00000f,
+ AKC_LBRACKET = 0x00001a,
+ AKC_RBRACKET = 0x00001b,
+ AKC_SEMICOLON = 0x000027,
+ AKC_APOSTROPHE = 0x000028,
+ AKC_GRAVE = 0x000029,
+
+ AKC_LSHIFT = 0x00002a,
+ AKC_RSHIFT = 0x000036,
+ AKC_LCONTROL = 0x00001d,
+ AKC_RCONTROL = 0x00009d,
+ AKC_LALT = 0x000038 | AKC_EXT_FLAG,
+ AKC_RALT = 0x000038 | AKC_EXT_FLAG,
+
+ AKC_COMMA = 0x000033,
+ AKC_PERIOD = 0x000034,
+ AKC_SLASH = 0x000035,
+
+ AKC_BACKSLASH = 0x00002b,
+ AKC_GERARROWS = 0x000056,
+
+ AKC_NUMPADSLASH = 0x000035 | AKC_EXT_FLAG,
+ AKC_NUMPADSTAR = 0x000037,
+ AKC_NUMPADMINUS = 0x00004a,
+ AKC_NUMPADPLUS = 0x00004e,
+ AKC_NUMPADPERIOD= AKC_DELETE,
+ AKC_NUMLOCK = 0x000045,
+ AKC_SCROLL = 0x000046,
+
+ AKC_NUMPAD0 = AKC_INSERT,
+ AKC_NUMPAD1 = AKC_END,
+ AKC_NUMPAD2 = AKC_CURSORDOWN,
+ AKC_NUMPAD3 = AKC_PAGEDOWN,
+ AKC_NUMPAD4 = AKC_CURSORLEFT,
+ AKC_NUMPAD5 = 0x00004c,
+ AKC_NUMPAD6 = AKC_CURSORRIGHT,
+ AKC_NUMPAD7 = AKC_HOME,
+ AKC_NUMPAD8 = AKC_CURSORUP,
+ AKC_NUMPAD9 = AKC_PAGEUP,
+
+ AKC_LWIN = 0x00005b | AKC_EXT_FLAG,
+ AKC_RWIN = 0x00005c | AKC_EXT_FLAG,
+ AKC_APPS = 0x00005d | AKC_EXT_FLAG,
+
+ AKC_ENTER_GRAY = AKC_ENTER | AKC_EXT_FLAG,
+ AKC_CURSORUP_GRAY = AKC_CURSORUP | AKC_EXT_FLAG,
+ AKC_CURSORDOWN_GRAY = AKC_CURSORDOWN | AKC_EXT_FLAG,
+ AKC_CURSORLEFT_GRAY = AKC_CURSORLEFT | AKC_EXT_FLAG,
+ AKC_CURSORRIGHT_GRAY= AKC_CURSORRIGHT | AKC_EXT_FLAG,
+ AKC_BACKSPACE_GRAY = AKC_BACKSPACE | AKC_EXT_FLAG,
+ AKC_INSERT_GRAY = AKC_INSERT | AKC_EXT_FLAG,
+ AKC_DELETE_GRAY = AKC_DELETE | AKC_EXT_FLAG,
+ AKC_HOME_GRAY = AKC_HOME | AKC_EXT_FLAG,
+ AKC_END_GRAY = AKC_END | AKC_EXT_FLAG,
+ AKC_PAGEUP_GRAY = AKC_PAGEUP | AKC_EXT_FLAG,
+ AKC_PAGEDOWN_GRAY = AKC_PAGEDOWN | AKC_EXT_FLAG,
+
+ AKC_A = 0x00001e,
+ AKC_B = 0x000030,
+ AKC_C = 0x00002e,
+ AKC_D = 0x000020,
+ AKC_E = 0x000012,
+ AKC_F = 0x000021,
+ AKC_G = 0x000022,
+ AKC_H = 0x000023,
+ AKC_I = 0x000017,
+ AKC_J = 0x000024,
+ AKC_K = 0x000025,
+ AKC_L = 0x000026,
+ AKC_M = 0x000032,
+ AKC_N = 0x000031,
+ AKC_O = 0x000018,
+ AKC_P = 0x000019,
+ AKC_Q = 0x000010,
+ AKC_R = 0x000013,
+ AKC_S = 0x00001f,
+ AKC_T = 0x000014,
+ AKC_U = 0x000016,
+ AKC_V = 0x00002f,
+ AKC_W = 0x000011,
+ AKC_X = 0x00002d,
+ AKC_Y = 0x000015,
+ AKC_Z = 0x00002c,
+
+ AKC_A_SHIFTED = AKC_A | AKC_SHIFT_FLAG,
+ AKC_B_SHIFTED = AKC_B | AKC_SHIFT_FLAG,
+ AKC_C_SHIFTED = AKC_C | AKC_SHIFT_FLAG,
+ AKC_D_SHIFTED = AKC_D | AKC_SHIFT_FLAG,
+ AKC_E_SHIFTED = AKC_E | AKC_SHIFT_FLAG,
+ AKC_F_SHIFTED = AKC_F | AKC_SHIFT_FLAG,
+ AKC_G_SHIFTED = AKC_G | AKC_SHIFT_FLAG,
+ AKC_H_SHIFTED = AKC_H | AKC_SHIFT_FLAG,
+ AKC_I_SHIFTED = AKC_I | AKC_SHIFT_FLAG,
+ AKC_J_SHIFTED = AKC_J | AKC_SHIFT_FLAG,
+ AKC_K_SHIFTED = AKC_K | AKC_SHIFT_FLAG,
+ AKC_L_SHIFTED = AKC_L | AKC_SHIFT_FLAG,
+ AKC_M_SHIFTED = AKC_M | AKC_SHIFT_FLAG,
+ AKC_N_SHIFTED = AKC_N | AKC_SHIFT_FLAG,
+ AKC_O_SHIFTED = AKC_O | AKC_SHIFT_FLAG,
+ AKC_P_SHIFTED = AKC_P | AKC_SHIFT_FLAG,
+ AKC_Q_SHIFTED = AKC_Q | AKC_SHIFT_FLAG,
+ AKC_R_SHIFTED = AKC_R | AKC_SHIFT_FLAG,
+ AKC_S_SHIFTED = AKC_S | AKC_SHIFT_FLAG,
+ AKC_T_SHIFTED = AKC_T | AKC_SHIFT_FLAG,
+ AKC_U_SHIFTED = AKC_U | AKC_SHIFT_FLAG,
+ AKC_V_SHIFTED = AKC_V | AKC_SHIFT_FLAG,
+ AKC_W_SHIFTED = AKC_W | AKC_SHIFT_FLAG,
+ AKC_X_SHIFTED = AKC_X | AKC_SHIFT_FLAG,
+ AKC_Y_SHIFTED = AKC_Y | AKC_SHIFT_FLAG,
+ AKC_Z_SHIFTED = AKC_Z | AKC_SHIFT_FLAG,
+
+ AKC_0 = 0x00000b,
+ AKC_1 = 0x000002,
+ AKC_2 = 0x000003,
+ AKC_3 = 0x000004,
+ AKC_4 = 0x000005,
+ AKC_5 = 0x000006,
+ AKC_6 = 0x000007,
+ AKC_7 = 0x000008,
+ AKC_8 = 0x000009,
+ AKC_9 = 0x00000a,
+
+ AKC_0_SHIFTED = AKC_0 | AKC_SHIFT_FLAG,
+ AKC_1_SHIFTED = AKC_1 | AKC_SHIFT_FLAG,
+ AKC_2_SHIFTED = AKC_2 | AKC_SHIFT_FLAG,
+ AKC_3_SHIFTED = AKC_3 | AKC_SHIFT_FLAG,
+ AKC_4_SHIFTED = AKC_4 | AKC_SHIFT_FLAG,
+ AKC_5_SHIFTED = AKC_5 | AKC_SHIFT_FLAG,
+ AKC_6_SHIFTED = AKC_6 | AKC_SHIFT_FLAG,
+ AKC_7_SHIFTED = AKC_7 | AKC_SHIFT_FLAG,
+ AKC_8_SHIFTED = AKC_8 | AKC_SHIFT_FLAG,
+ AKC_9_SHIFTED = AKC_9 | AKC_SHIFT_FLAG,
+
+ AKC_F1 = 0x00003b,
+ AKC_F2 = 0x00003c,
+ AKC_F3 = 0x00003d,
+ AKC_F4 = 0x00003e,
+ AKC_F5 = 0x00003f,
+ AKC_F6 = 0x000040,
+ AKC_F7 = 0x000041,
+ AKC_F8 = 0x000042,
+ AKC_F9 = 0x000043,
+ AKC_F10 = 0x000044,
+ AKC_F11 = 0x000057,
+ AKC_F12 = 0x000058,
+
+ AKC_F1_SHIFTED = AKC_F1 | AKC_SHIFT_FLAG,
+ AKC_F2_SHIFTED = AKC_F2 | AKC_SHIFT_FLAG,
+ AKC_F3_SHIFTED = AKC_F3 | AKC_SHIFT_FLAG,
+ AKC_F4_SHIFTED = AKC_F4 | AKC_SHIFT_FLAG,
+ AKC_F5_SHIFTED = AKC_F5 | AKC_SHIFT_FLAG,
+ AKC_F6_SHIFTED = AKC_F6 | AKC_SHIFT_FLAG,
+ AKC_F7_SHIFTED = AKC_F7 | AKC_SHIFT_FLAG,
+ AKC_F8_SHIFTED = AKC_F8 | AKC_SHIFT_FLAG,
+ AKC_F9_SHIFTED = AKC_F9 | AKC_SHIFT_FLAG,
+ AKC_F10_SHIFTED = AKC_F10 | AKC_SHIFT_FLAG,
+ AKC_F11_SHIFTED = AKC_F11 | AKC_SHIFT_FLAG,
+ AKC_F12_SHIFTED = AKC_F12 | AKC_SHIFT_FLAG,
+
+ // joystick buttons, no actual keyboard keys
+ AKC_JOY_BUTTON1 = 0x000000 | AKC_JOY_FLAG,
+ AKC_JOY_BUTTON2 = 0x000001 | AKC_JOY_FLAG,
+ AKC_JOY_BUTTON3 = 0x000002 | AKC_JOY_FLAG,
+ AKC_JOY_BUTTON4 = 0x000003 | AKC_JOY_FLAG,
+ AKC_JOY_BUTTON5 = 0x000004 | AKC_JOY_FLAG,
+ AKC_JOY_BUTTON6 = 0x000005 | AKC_JOY_FLAG,
+ AKC_JOY_BUTTON7 = 0x000006 | AKC_JOY_FLAG,
+ AKC_JOY_BUTTON8 = 0x000007 | AKC_JOY_FLAG
+};
+
+
+#endif // _KEYS_PC_H_
+
+