summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorrealtradam <[email protected]>2023-04-24 00:50:24 -0400
committerrealtradam <[email protected]>2023-04-24 00:50:24 -0400
commitc7d724e4f11abb335efcc0d58639a1b458b77019 (patch)
treea0222fed2f77aa994232abf9df79351548db4e92
parentdcd867dc95d13e152716e12f6333796dfc84f4ef (diff)
downloadRodeoKit-c7d724e4f11abb335efcc0d58639a1b458b77019.tar.gz
RodeoKit-c7d724e4f11abb335efcc0d58639a1b458b77019.zip
rework input system. first proper interation
-rw-r--r--include/compile_flags.txt1
-rw-r--r--include/rodeo/input.h63
-rw-r--r--include/rodeo/input_t.h1160
-rw-r--r--src/compile_flags.txt1
-rw-r--r--src/input/irodeo_input_t.h (renamed from src/input/irodeo_input.h)1
-rw-r--r--src/input/rodeo_input.c290
-rw-r--r--src/rodeo.c3
7 files changed, 830 insertions, 689 deletions
diff --git a/include/compile_flags.txt b/include/compile_flags.txt
index 2c81d8a..26d1cc4 100644
--- a/include/compile_flags.txt
+++ b/include/compile_flags.txt
@@ -9,3 +9,4 @@
-Wextra
-Wpedantic
-Wconversion
+-std=c99
diff --git a/include/rodeo/input.h b/include/rodeo/input.h
index 1f89b8c..5c7cb1c 100644
--- a/include/rodeo/input.h
+++ b/include/rodeo/input.h
@@ -7,25 +7,68 @@ bool
rodeo_input_events_poll(void);
void
-rodeo_input_scene_activate(
- rodeo_input_scene_t *scene
+rodeo_input_command_register_callback(
+ rodeo_input_command_t *command,
+ rodeo_input_callback_function func
);
void
-rodeo_input_scene_deactivate(
- rodeo_input_scene_t *scene
+rodeo_input_command_unregister_callback(
+ rodeo_input_command_t *command,
+ rodeo_input_callback_function func
+);
+
+rodeo_input_scene_t*
+rodeo_input_scene_create(void);
+
+void
+rodeo_input_scene_destroy(rodeo_input_scene_t *scene);
+
+rodeo_input_command_t*
+rodeo_input_command_create(uint32_t input_type);
+
+// make sure to unregister from all scenes before destroying
+void
+rodeo_input_command_destroy(rodeo_input_command_t *command);
+
+// returns false if attempting to register
+// input type that has been set as valid
+bool
+rodeo_input_command_register_binary_scancode(
+ rodeo_input_command_t *input_command,
+ rodeo_input_binary_scancode_t scancode
+);
+
+bool
+rodeo_input_command_register_binary_mouseButton(
+ rodeo_input_command_t *input_command,
+ rodeo_input_binary_mouseButton_t mouse_button
);
+// alternative proposed "general" registration methods
+//rodeo_input_command_register_binary(cmd, rodeo_input_binary_Scancode, rodeo_input_binary_scancode_Q );
+//rodeo_input_command_register_any(cmd, rodeo_input_type_Binary, rodeo_input_binary_Scancode, rodeo_input_binary_scancode_Q );
+
+
void
-rodeo_input_scene_register_callback(
- rodeo_input_callback_function func,
+rodeo_input_scene_register_command(
rodeo_input_scene_t *scene,
- rodeo_input_register_type_t type
+ rodeo_input_command_t *command
);
void
-rodeo_input_scene_unregister_callback(
- rodeo_input_callback_function func,
+rodeo_input_scene_unregister_command(
rodeo_input_scene_t *scene,
- rodeo_input_register_type_t type
+ rodeo_input_command_t *command
+);
+
+void
+rodeo_input_scene_activate(
+ rodeo_input_scene_t *scene
);
+
+void
+rodeo_input_scene_deactivate(
+ rodeo_input_scene_t *scene
+);
+
diff --git a/include/rodeo/input_t.h b/include/rodeo/input_t.h
index f5330ef..39385da 100644
--- a/include/rodeo/input_t.h
+++ b/include/rodeo/input_t.h
@@ -44,7 +44,7 @@
*/
typedef enum
{
- rodeo_input_scancode_UNKNOWN = 0,
+ rodeo_input_binary_scancode_UNKNOWN = 0,
/**
* \name Usage page 0x07
@@ -53,55 +53,55 @@ typedef enum
*/
/* @{ */
- rodeo_input_scancode_A = 4,
- rodeo_input_scancode_B = 5,
- rodeo_input_scancode_C = 6,
- rodeo_input_scancode_D = 7,
- rodeo_input_scancode_E = 8,
- rodeo_input_scancode_F = 9,
- rodeo_input_scancode_G = 10,
- rodeo_input_scancode_H = 11,
- rodeo_input_scancode_I = 12,
- rodeo_input_scancode_J = 13,
- rodeo_input_scancode_K = 14,
- rodeo_input_scancode_L = 15,
- rodeo_input_scancode_M = 16,
- rodeo_input_scancode_N = 17,
- rodeo_input_scancode_O = 18,
- rodeo_input_scancode_P = 19,
- rodeo_input_scancode_Q = 20,
- rodeo_input_scancode_R = 21,
- rodeo_input_scancode_S = 22,
- rodeo_input_scancode_T = 23,
- rodeo_input_scancode_U = 24,
- rodeo_input_scancode_V = 25,
- rodeo_input_scancode_W = 26,
- rodeo_input_scancode_X = 27,
- rodeo_input_scancode_Y = 28,
- rodeo_input_scancode_Z = 29,
-
- rodeo_input_scancode_1 = 30,
- rodeo_input_scancode_2 = 31,
- rodeo_input_scancode_3 = 32,
- rodeo_input_scancode_4 = 33,
- rodeo_input_scancode_5 = 34,
- rodeo_input_scancode_6 = 35,
- rodeo_input_scancode_7 = 36,
- rodeo_input_scancode_8 = 37,
- rodeo_input_scancode_9 = 38,
- rodeo_input_scancode_0 = 39,
-
- rodeo_input_scancode_RETURN = 40,
- rodeo_input_scancode_ESCAPE = 41,
- rodeo_input_scancode_BACKSPACE = 42,
- rodeo_input_scancode_TAB = 43,
- rodeo_input_scancode_SPACE = 44,
-
- rodeo_input_scancode_MINUS = 45,
- rodeo_input_scancode_EQUALS = 46,
- rodeo_input_scancode_LEFTBRACKET = 47,
- rodeo_input_scancode_RIGHTBRACKET = 48,
- rodeo_input_scancode_BACKSLASH = 49, /**< Located at the lower left of the return
+ rodeo_input_binary_scancode_A = 4,
+ rodeo_input_binary_scancode_B = 5,
+ rodeo_input_binary_scancode_C = 6,
+ rodeo_input_binary_scancode_D = 7,
+ rodeo_input_binary_scancode_E = 8,
+ rodeo_input_binary_scancode_F = 9,
+ rodeo_input_binary_scancode_G = 10,
+ rodeo_input_binary_scancode_H = 11,
+ rodeo_input_binary_scancode_I = 12,
+ rodeo_input_binary_scancode_J = 13,
+ rodeo_input_binary_scancode_K = 14,
+ rodeo_input_binary_scancode_L = 15,
+ rodeo_input_binary_scancode_M = 16,
+ rodeo_input_binary_scancode_N = 17,
+ rodeo_input_binary_scancode_O = 18,
+ rodeo_input_binary_scancode_P = 19,
+ rodeo_input_binary_scancode_Q = 20,
+ rodeo_input_binary_scancode_R = 21,
+ rodeo_input_binary_scancode_S = 22,
+ rodeo_input_binary_scancode_T = 23,
+ rodeo_input_binary_scancode_U = 24,
+ rodeo_input_binary_scancode_V = 25,
+ rodeo_input_binary_scancode_W = 26,
+ rodeo_input_binary_scancode_X = 27,
+ rodeo_input_binary_scancode_Y = 28,
+ rodeo_input_binary_scancode_Z = 29,
+
+ rodeo_input_binary_scancode_1 = 30,
+ rodeo_input_binary_scancode_2 = 31,
+ rodeo_input_binary_scancode_3 = 32,
+ rodeo_input_binary_scancode_4 = 33,
+ rodeo_input_binary_scancode_5 = 34,
+ rodeo_input_binary_scancode_6 = 35,
+ rodeo_input_binary_scancode_7 = 36,
+ rodeo_input_binary_scancode_8 = 37,
+ rodeo_input_binary_scancode_9 = 38,
+ rodeo_input_binary_scancode_0 = 39,
+
+ rodeo_input_binary_scancode_RETURN = 40,
+ rodeo_input_binary_scancode_ESCAPE = 41,
+ rodeo_input_binary_scancode_BACKSPACE = 42,
+ rodeo_input_binary_scancode_TAB = 43,
+ rodeo_input_binary_scancode_SPACE = 44,
+
+ rodeo_input_binary_scancode_MINUS = 45,
+ rodeo_input_binary_scancode_EQUALS = 46,
+ rodeo_input_binary_scancode_LEFTBRACKET = 47,
+ rodeo_input_binary_scancode_RIGHTBRACKET = 48,
+ rodeo_input_binary_scancode_BACKSLASH = 49, /**< Located at the lower left of the return
* key on ISO keyboards and at the right end
* of the QWERTY row on ANSI keyboards.
* Produces REVERSE SOLIDUS (backslash) and
@@ -115,21 +115,21 @@ typedef enum
* layout, and ASTERISK and MICRO SIGN in a
* French Windows layout.
*/
- rodeo_input_scancode_NONUSHASH = 50, /**< ISO USB keyboards actually use this code
+ rodeo_input_binary_scancode_NONUSHASH = 50, /**< ISO USB keyboards actually use this code
* instead of 49 for the same key, but all
* OSes I've seen treat the two codes
* identically. So, as an implementor, unless
* your keyboard generates both of those
* codes and your OS treats them differently,
- * you should generate rodeo_input_scancode_BACKSLASH
+ * you should generate rodeo_input_binary_scancode_BACKSLASH
* instead of this code. As a user, you
* should not rely on this code because SDL
* will never generate it with most (all?)
* keyboards.
*/
- rodeo_input_scancode_SEMICOLON = 51,
- rodeo_input_scancode_APOSTROPHE = 52,
- rodeo_input_scancode_GRAVE = 53, /**< Located in the top left corner (on both ANSI
+ rodeo_input_binary_scancode_SEMICOLON = 51,
+ rodeo_input_binary_scancode_APOSTROPHE = 52,
+ rodeo_input_binary_scancode_GRAVE = 53, /**< Located in the top left corner (on both ANSI
* and ISO keyboards). Produces GRAVE ACCENT and
* TILDE in a US Windows layout and in US and UK
* Mac layouts on ANSI keyboards, GRAVE ACCENT
@@ -146,60 +146,60 @@ typedef enum
* SIGN in a Swiss German, German, or French Mac
* layout on ANSI keyboards.
*/
- rodeo_input_scancode_COMMA = 54,
- rodeo_input_scancode_PERIOD = 55,
- rodeo_input_scancode_SLASH = 56,
-
- rodeo_input_scancode_CAPSLOCK = 57,
-
- rodeo_input_scancode_F1 = 58,
- rodeo_input_scancode_F2 = 59,
- rodeo_input_scancode_F3 = 60,
- rodeo_input_scancode_F4 = 61,
- rodeo_input_scancode_F5 = 62,
- rodeo_input_scancode_F6 = 63,
- rodeo_input_scancode_F7 = 64,
- rodeo_input_scancode_F8 = 65,
- rodeo_input_scancode_F9 = 66,
- rodeo_input_scancode_F10 = 67,
- rodeo_input_scancode_F11 = 68,
- rodeo_input_scancode_F12 = 69,
-
- rodeo_input_scancode_PRINTSCREEN = 70,
- rodeo_input_scancode_SCROLLLOCK = 71,
- rodeo_input_scancode_PAUSE = 72,
- rodeo_input_scancode_INSERT = 73, /**< insert on PC, help on some Mac keyboards (but
+ rodeo_input_binary_scancode_COMMA = 54,
+ rodeo_input_binary_scancode_PERIOD = 55,
+ rodeo_input_binary_scancode_SLASH = 56,
+
+ rodeo_input_binary_scancode_CAPSLOCK = 57,
+
+ rodeo_input_binary_scancode_F1 = 58,
+ rodeo_input_binary_scancode_F2 = 59,
+ rodeo_input_binary_scancode_F3 = 60,
+ rodeo_input_binary_scancode_F4 = 61,
+ rodeo_input_binary_scancode_F5 = 62,
+ rodeo_input_binary_scancode_F6 = 63,
+ rodeo_input_binary_scancode_F7 = 64,
+ rodeo_input_binary_scancode_F8 = 65,
+ rodeo_input_binary_scancode_F9 = 66,
+ rodeo_input_binary_scancode_F10 = 67,
+ rodeo_input_binary_scancode_F11 = 68,
+ rodeo_input_binary_scancode_F12 = 69,
+
+ rodeo_input_binary_scancode_PRINTSCREEN = 70,
+ rodeo_input_binary_scancode_SCROLLLOCK = 71,
+ rodeo_input_binary_scancode_PAUSE = 72,
+ rodeo_input_binary_scancode_INSERT = 73, /**< insert on PC, help on some Mac keyboards (but
does send code 73, not 117) */
- rodeo_input_scancode_HOME = 74,
- rodeo_input_scancode_PAGEUP = 75,
- rodeo_input_scancode_DELETE = 76,
- rodeo_input_scancode_END = 77,
- rodeo_input_scancode_PAGEDOWN = 78,
- rodeo_input_scancode_RIGHT = 79,
- rodeo_input_scancode_LEFT = 80,
- rodeo_input_scancode_DOWN = 81,
- rodeo_input_scancode_UP = 82,
-
- rodeo_input_scancode_NUMLOCKCLEAR = 83, /**< num lock on PC, clear on Mac keyboards
+ rodeo_input_binary_scancode_HOME = 74,
+ rodeo_input_binary_scancode_PAGEUP = 75,
+ rodeo_input_binary_scancode_DELETE = 76,
+ rodeo_input_binary_scancode_END = 77,
+ rodeo_input_binary_scancode_PAGEDOWN = 78,
+ rodeo_input_binary_scancode_RIGHT = 79,
+ rodeo_input_binary_scancode_LEFT = 80,
+ rodeo_input_binary_scancode_DOWN = 81,
+ rodeo_input_binary_scancode_UP = 82,
+
+ rodeo_input_binary_scancode_NUMLOCKCLEAR = 83, /**< num lock on PC, clear on Mac keyboards
*/
- rodeo_input_scancode_KP_DIVIDE = 84,
- rodeo_input_scancode_KP_MULTIPLY = 85,
- rodeo_input_scancode_KP_MINUS = 86,
- rodeo_input_scancode_KP_PLUS = 87,
- rodeo_input_scancode_KP_ENTER = 88,
- rodeo_input_scancode_KP_1 = 89,
- rodeo_input_scancode_KP_2 = 90,
- rodeo_input_scancode_KP_3 = 91,
- rodeo_input_scancode_KP_4 = 92,
- rodeo_input_scancode_KP_5 = 93,
- rodeo_input_scancode_KP_6 = 94,
- rodeo_input_scancode_KP_7 = 95,
- rodeo_input_scancode_KP_8 = 96,
- rodeo_input_scancode_KP_9 = 97,
- rodeo_input_scancode_KP_0 = 98,
- rodeo_input_scancode_KP_PERIOD = 99,
-
- rodeo_input_scancode_NONUSBACKSLASH = 100, /**< This is the additional key that ISO
+ rodeo_input_binary_scancode_KP_DIVIDE = 84,
+ rodeo_input_binary_scancode_KP_MULTIPLY = 85,
+ rodeo_input_binary_scancode_KP_MINUS = 86,
+ rodeo_input_binary_scancode_KP_PLUS = 87,
+ rodeo_input_binary_scancode_KP_ENTER = 88,
+ rodeo_input_binary_scancode_KP_1 = 89,
+ rodeo_input_binary_scancode_KP_2 = 90,
+ rodeo_input_binary_scancode_KP_3 = 91,
+ rodeo_input_binary_scancode_KP_4 = 92,
+ rodeo_input_binary_scancode_KP_5 = 93,
+ rodeo_input_binary_scancode_KP_6 = 94,
+ rodeo_input_binary_scancode_KP_7 = 95,
+ rodeo_input_binary_scancode_KP_8 = 96,
+ rodeo_input_binary_scancode_KP_9 = 97,
+ rodeo_input_binary_scancode_KP_0 = 98,
+ rodeo_input_binary_scancode_KP_PERIOD = 99,
+
+ rodeo_input_binary_scancode_NONUSBACKSLASH = 100, /**< This is the additional key that ISO
* keyboards have over ANSI ones,
* located between left shift and Y.
* Produces GRAVE ACCENT and TILDE in a
@@ -209,134 +209,134 @@ typedef enum
* LESS-THAN SIGN and GREATER-THAN SIGN
* in a Swiss German, German, or French
* layout. */
- rodeo_input_scancode_APPLICATION = 101, /**< windows contextual menu, compose */
- rodeo_input_scancode_POWER = 102, /**< The USB document says this is a status flag,
+ rodeo_input_binary_scancode_APPLICATION = 101, /**< windows contextual menu, compose */
+ rodeo_input_binary_scancode_POWER = 102, /**< The USB document says this is a status flag,
* not a physical key - but some Mac keyboards
* do have a power key. */
- rodeo_input_scancode_KP_EQUALS = 103,
- rodeo_input_scancode_F13 = 104,
- rodeo_input_scancode_F14 = 105,
- rodeo_input_scancode_F15 = 106,
- rodeo_input_scancode_F16 = 107,
- rodeo_input_scancode_F17 = 108,
- rodeo_input_scancode_F18 = 109,
- rodeo_input_scancode_F19 = 110,
- rodeo_input_scancode_F20 = 111,
- rodeo_input_scancode_F21 = 112,
- rodeo_input_scancode_F22 = 113,
- rodeo_input_scancode_F23 = 114,
- rodeo_input_scancode_F24 = 115,
- rodeo_input_scancode_EXECUTE = 116,
- rodeo_input_scancode_HELP = 117, /**< AL Integrated Help Center */
- rodeo_input_scancode_MENU = 118, /**< Menu (show menu) */
- rodeo_input_scancode_SELECT = 119,
- rodeo_input_scancode_STOP = 120, /**< AC Stop */
- rodeo_input_scancode_AGAIN = 121, /**< AC Redo/Repeat */
- rodeo_input_scancode_UNDO = 122, /**< AC Undo */
- rodeo_input_scancode_CUT = 123, /**< AC Cut */
- rodeo_input_scancode_COPY = 124, /**< AC Copy */
- rodeo_input_scancode_PASTE = 125, /**< AC Paste */
- rodeo_input_scancode_FIND = 126, /**< AC Find */
- rodeo_input_scancode_MUTE = 127,
- rodeo_input_scancode_VOLUMEUP = 128,
- rodeo_input_scancode_VOLUMEDOWN = 129,
+ rodeo_input_binary_scancode_KP_EQUALS = 103,
+ rodeo_input_binary_scancode_F13 = 104,
+ rodeo_input_binary_scancode_F14 = 105,
+ rodeo_input_binary_scancode_F15 = 106,
+ rodeo_input_binary_scancode_F16 = 107,
+ rodeo_input_binary_scancode_F17 = 108,
+ rodeo_input_binary_scancode_F18 = 109,
+ rodeo_input_binary_scancode_F19 = 110,
+ rodeo_input_binary_scancode_F20 = 111,
+ rodeo_input_binary_scancode_F21 = 112,
+ rodeo_input_binary_scancode_F22 = 113,
+ rodeo_input_binary_scancode_F23 = 114,
+ rodeo_input_binary_scancode_F24 = 115,
+ rodeo_input_binary_scancode_EXECUTE = 116,
+ rodeo_input_binary_scancode_HELP = 117, /**< AL Integrated Help Center */
+ rodeo_input_binary_scancode_MENU = 118, /**< Menu (show menu) */
+ rodeo_input_binary_scancode_SELECT = 119,
+ rodeo_input_binary_scancode_STOP = 120, /**< AC Stop */
+ rodeo_input_binary_scancode_AGAIN = 121, /**< AC Redo/Repeat */
+ rodeo_input_binary_scancode_UNDO = 122, /**< AC Undo */
+ rodeo_input_binary_scancode_CUT = 123, /**< AC Cut */
+ rodeo_input_binary_scancode_COPY = 124, /**< AC Copy */
+ rodeo_input_binary_scancode_PASTE = 125, /**< AC Paste */
+ rodeo_input_binary_scancode_FIND = 126, /**< AC Find */
+ rodeo_input_binary_scancode_MUTE = 127,
+ rodeo_input_binary_scancode_VOLUMEUP = 128,
+ rodeo_input_binary_scancode_VOLUMEDOWN = 129,
/* not sure whether there's a reason to enable these */
-/* rodeo_input_scancode_LOCKINGCAPSLOCK = 130, */
-/* rodeo_input_scancode_LOCKINGNUMLOCK = 131, */
-/* rodeo_input_scancode_LOCKINGSCROLLLOCK = 132, */
- rodeo_input_scancode_KP_COMMA = 133,
- rodeo_input_scancode_KP_EQUALSAS400 = 134,
+/* rodeo_input_binary_scancode_LOCKINGCAPSLOCK = 130, */
+/* rodeo_input_binary_scancode_LOCKINGNUMLOCK = 131, */
+/* rodeo_input_binary_scancode_LOCKINGSCROLLLOCK = 132, */
+ rodeo_input_binary_scancode_KP_COMMA = 133,
+ rodeo_input_binary_scancode_KP_EQUALSAS400 = 134,
- rodeo_input_scancode_INTERNATIONAL1 = 135, /**< used on Asian keyboards, see
+ rodeo_input_binary_scancode_INTERNATIONAL1 = 135, /**< used on Asian keyboards, see
footnotes in USB doc */
- rodeo_input_scancode_INTERNATIONAL2 = 136,
- rodeo_input_scancode_INTERNATIONAL3 = 137, /**< Yen */
- rodeo_input_scancode_INTERNATIONAL4 = 138,
- rodeo_input_scancode_INTERNATIONAL5 = 139,
- rodeo_input_scancode_INTERNATIONAL6 = 140,
- rodeo_input_scancode_INTERNATIONAL7 = 141,
- rodeo_input_scancode_INTERNATIONAL8 = 142,
- rodeo_input_scancode_INTERNATIONAL9 = 143,
- rodeo_input_scancode_LANG1 = 144, /**< Hangul/English toggle */
- rodeo_input_scancode_LANG2 = 145, /**< Hanja conversion */
- rodeo_input_scancode_LANG3 = 146, /**< Katakana */
- rodeo_input_scancode_LANG4 = 147, /**< Hiragana */
- rodeo_input_scancode_LANG5 = 148, /**< Zenkaku/Hankaku */
- rodeo_input_scancode_LANG6 = 149, /**< reserved */
- rodeo_input_scancode_LANG7 = 150, /**< reserved */
- rodeo_input_scancode_LANG8 = 151, /**< reserved */
- rodeo_input_scancode_LANG9 = 152, /**< reserved */
-
- rodeo_input_scancode_ALTERASE = 153, /**< Erase-Eaze */
- rodeo_input_scancode_SYSREQ = 154,
- rodeo_input_scancode_CANCEL = 155, /**< AC Cancel */
- rodeo_input_scancode_CLEAR = 156,
- rodeo_input_scancode_PRIOR = 157,
- rodeo_input_scancode_RETURN2 = 158,
- rodeo_input_scancode_SEPARATOR = 159,
- rodeo_input_scancode_OUT = 160,
- rodeo_input_scancode_OPER = 161,
- rodeo_input_scancode_CLEARAGAIN = 162,
- rodeo_input_scancode_CRSEL = 163,
- rodeo_input_scancode_EXSEL = 164,
-
- rodeo_input_scancode_KP_00 = 176,
- rodeo_input_scancode_KP_000 = 177,
- rodeo_input_scancode_THOUSANDSSEPARATOR = 178,
- rodeo_input_scancode_DECIMALSEPARATOR = 179,
- rodeo_input_scancode_CURRENCYUNIT = 180,
- rodeo_input_scancode_CURRENCYSUBUNIT = 181,
- rodeo_input_scancode_KP_LEFTPAREN = 182,
- rodeo_input_scancode_KP_RIGHTPAREN = 183,
- rodeo_input_scancode_KP_LEFTBRACE = 184,
- rodeo_input_scancode_KP_RIGHTBRACE = 185,
- rodeo_input_scancode_KP_TAB = 186,
- rodeo_input_scancode_KP_BACKSPACE = 187,
- rodeo_input_scancode_KP_A = 188,
- rodeo_input_scancode_KP_B = 189,
- rodeo_input_scancode_KP_C = 190,
- rodeo_input_scancode_KP_D = 191,
- rodeo_input_scancode_KP_E = 192,
- rodeo_input_scancode_KP_F = 193,
- rodeo_input_scancode_KP_XOR = 194,
- rodeo_input_scancode_KP_POWER = 195,
- rodeo_input_scancode_KP_PERCENT = 196,
- rodeo_input_scancode_KP_LESS = 197,
- rodeo_input_scancode_KP_GREATER = 198,
- rodeo_input_scancode_KP_AMPERSAND = 199,
- rodeo_input_scancode_KP_DBLAMPERSAND = 200,
- rodeo_input_scancode_KP_VERTICALBAR = 201,
- rodeo_input_scancode_KP_DBLVERTICALBAR = 202,
- rodeo_input_scancode_KP_COLON = 203,
- rodeo_input_scancode_KP_HASH = 204,
- rodeo_input_scancode_KP_SPACE = 205,
- rodeo_input_scancode_KP_AT = 206,
- rodeo_input_scancode_KP_EXCLAM = 207,
- rodeo_input_scancode_KP_MEMSTORE = 208,
- rodeo_input_scancode_KP_MEMRECALL = 209,
- rodeo_input_scancode_KP_MEMCLEAR = 210,
- rodeo_input_scancode_KP_MEMADD = 211,
- rodeo_input_scancode_KP_MEMSUBTRACT = 212,
- rodeo_input_scancode_KP_MEMMULTIPLY = 213,
- rodeo_input_scancode_KP_MEMDIVIDE = 214,
- rodeo_input_scancode_KP_PLUSMINUS = 215,
- rodeo_input_scancode_KP_CLEAR = 216,
- rodeo_input_scancode_KP_CLEARENTRY = 217,
- rodeo_input_scancode_KP_BINARY = 218,
- rodeo_input_scancode_KP_OCTAL = 219,
- rodeo_input_scancode_KP_DECIMAL = 220,
- rodeo_input_scancode_KP_HEXADECIMAL = 221,
-
- rodeo_input_scancode_LCTRL = 224,
- rodeo_input_scancode_LSHIFT = 225,
- rodeo_input_scancode_LALT = 226, /**< alt, option */
- rodeo_input_scancode_LGUI = 227, /**< windows, command (apple), meta */
- rodeo_input_scancode_RCTRL = 228,
- rodeo_input_scancode_RSHIFT = 229,
- rodeo_input_scancode_RALT = 230, /**< alt gr, option */
- rodeo_input_scancode_RGUI = 231, /**< windows, command (apple), meta */
-
- rodeo_input_scancode_MODE = 257, /**< I'm not sure if this is really not covered
+ rodeo_input_binary_scancode_INTERNATIONAL2 = 136,
+ rodeo_input_binary_scancode_INTERNATIONAL3 = 137, /**< Yen */
+ rodeo_input_binary_scancode_INTERNATIONAL4 = 138,
+ rodeo_input_binary_scancode_INTERNATIONAL5 = 139,
+ rodeo_input_binary_scancode_INTERNATIONAL6 = 140,
+ rodeo_input_binary_scancode_INTERNATIONAL7 = 141,
+ rodeo_input_binary_scancode_INTERNATIONAL8 = 142,
+ rodeo_input_binary_scancode_INTERNATIONAL9 = 143,
+ rodeo_input_binary_scancode_LANG1 = 144, /**< Hangul/English toggle */
+ rodeo_input_binary_scancode_LANG2 = 145, /**< Hanja conversion */
+ rodeo_input_binary_scancode_LANG3 = 146, /**< Katakana */
+ rodeo_input_binary_scancode_LANG4 = 147, /**< Hiragana */
+ rodeo_input_binary_scancode_LANG5 = 148, /**< Zenkaku/Hankaku */
+ rodeo_input_binary_scancode_LANG6 = 149, /**< reserved */
+ rodeo_input_binary_scancode_LANG7 = 150, /**< reserved */
+ rodeo_input_binary_scancode_LANG8 = 151, /**< reserved */
+ rodeo_input_binary_scancode_LANG9 = 152, /**< reserved */
+
+ rodeo_input_binary_scancode_ALTERASE = 153, /**< Erase-Eaze */
+ rodeo_input_binary_scancode_SYSREQ = 154,
+ rodeo_input_binary_scancode_CANCEL = 155, /**< AC Cancel */
+ rodeo_input_binary_scancode_CLEAR = 156,
+ rodeo_input_binary_scancode_PRIOR = 157,
+ rodeo_input_binary_scancode_RETURN2 = 158,
+ rodeo_input_binary_scancode_SEPARATOR = 159,
+ rodeo_input_binary_scancode_OUT = 160,
+ rodeo_input_binary_scancode_OPER = 161,
+ rodeo_input_binary_scancode_CLEARAGAIN = 162,
+ rodeo_input_binary_scancode_CRSEL = 163,
+ rodeo_input_binary_scancode_EXSEL = 164,
+
+ rodeo_input_binary_scancode_KP_00 = 176,
+ rodeo_input_binary_scancode_KP_000 = 177,
+ rodeo_input_binary_scancode_THOUSANDSSEPARATOR = 178,
+ rodeo_input_binary_scancode_DECIMALSEPARATOR = 179,
+ rodeo_input_binary_scancode_CURRENCYUNIT = 180,
+ rodeo_input_binary_scancode_CURRENCYSUBUNIT = 181,
+ rodeo_input_binary_scancode_KP_LEFTPAREN = 182,
+ rodeo_input_binary_scancode_KP_RIGHTPAREN = 183,
+ rodeo_input_binary_scancode_KP_LEFTBRACE = 184,
+ rodeo_input_binary_scancode_KP_RIGHTBRACE = 185,
+ rodeo_input_binary_scancode_KP_TAB = 186,
+ rodeo_input_binary_scancode_KP_BACKSPACE = 187,
+ rodeo_input_binary_scancode_KP_A = 188,
+ rodeo_input_binary_scancode_KP_B = 189,
+ rodeo_input_binary_scancode_KP_C = 190,
+ rodeo_input_binary_scancode_KP_D = 191,
+ rodeo_input_binary_scancode_KP_E = 192,
+ rodeo_input_binary_scancode_KP_F = 193,
+ rodeo_input_binary_scancode_KP_XOR = 194,
+ rodeo_input_binary_scancode_KP_POWER = 195,
+ rodeo_input_binary_scancode_KP_PERCENT = 196,
+ rodeo_input_binary_scancode_KP_LESS = 197,
+ rodeo_input_binary_scancode_KP_GREATER = 198,
+ rodeo_input_binary_scancode_KP_AMPERSAND = 199,
+ rodeo_input_binary_scancode_KP_DBLAMPERSAND = 200,
+ rodeo_input_binary_scancode_KP_VERTICALBAR = 201,
+ rodeo_input_binary_scancode_KP_DBLVERTICALBAR = 202,
+ rodeo_input_binary_scancode_KP_COLON = 203,
+ rodeo_input_binary_scancode_KP_HASH = 204,
+ rodeo_input_binary_scancode_KP_SPACE = 205,
+ rodeo_input_binary_scancode_KP_AT = 206,
+ rodeo_input_binary_scancode_KP_EXCLAM = 207,
+ rodeo_input_binary_scancode_KP_MEMSTORE = 208,
+ rodeo_input_binary_scancode_KP_MEMRECALL = 209,
+ rodeo_input_binary_scancode_KP_MEMCLEAR = 210,
+ rodeo_input_binary_scancode_KP_MEMADD = 211,
+ rodeo_input_binary_scancode_KP_MEMSUBTRACT = 212,
+ rodeo_input_binary_scancode_KP_MEMMULTIPLY = 213,
+ rodeo_input_binary_scancode_KP_MEMDIVIDE = 214,
+ rodeo_input_binary_scancode_KP_PLUSMINUS = 215,
+ rodeo_input_binary_scancode_KP_CLEAR = 216,
+ rodeo_input_binary_scancode_KP_CLEARENTRY = 217,
+ rodeo_input_binary_scancode_KP_BINARY = 218,
+ rodeo_input_binary_scancode_KP_OCTAL = 219,
+ rodeo_input_binary_scancode_KP_DECIMAL = 220,
+ rodeo_input_binary_scancode_KP_HEXADECIMAL = 221,
+
+ rodeo_input_binary_scancode_LCTRL = 224,
+ rodeo_input_binary_scancode_LSHIFT = 225,
+ rodeo_input_binary_scancode_LALT = 226, /**< alt, option */
+ rodeo_input_binary_scancode_LGUI = 227, /**< windows, command (apple), meta */
+ rodeo_input_binary_scancode_RCTRL = 228,
+ rodeo_input_binary_scancode_RSHIFT = 229,
+ rodeo_input_binary_scancode_RALT = 230, /**< alt gr, option */
+ rodeo_input_binary_scancode_RGUI = 231, /**< windows, command (apple), meta */
+
+ rodeo_input_binary_scancode_MODE = 257, /**< I'm not sure if this is really not covered
* by any of the above, but since there's a
* special rodeo_input_rodeo_input_keymod_MODE for it I'm adding it here
*/
@@ -355,23 +355,23 @@ typedef enum
*/
/* @{ */
- rodeo_input_scancode_AUDIONEXT = 258,
- rodeo_input_scancode_AUDIOPREV = 259,
- rodeo_input_scancode_AUDIOSTOP = 260,
- rodeo_input_scancode_AUDIOPLAY = 261,
- rodeo_input_scancode_AUDIOMUTE = 262,
- rodeo_input_scancode_MEDIASELECT = 263,
- rodeo_input_scancode_WWW = 264, /**< AL Internet Browser */
- rodeo_input_scancode_MAIL = 265,
- rodeo_input_scancode_CALCULATOR = 266, /**< AL Calculator */
- rodeo_input_scancode_COMPUTER = 267,
- rodeo_input_scancode_AC_SEARCH = 268, /**< AC Search */
- rodeo_input_scancode_AC_HOME = 269, /**< AC Home */
- rodeo_input_scancode_AC_BACK = 270, /**< AC Back */
- rodeo_input_scancode_AC_FORWARD = 271, /**< AC Forward */
- rodeo_input_scancode_AC_STOP = 272, /**< AC Stop */
- rodeo_input_scancode_AC_REFRESH = 273, /**< AC Refresh */
- rodeo_input_scancode_AC_BOOKMARKS = 274, /**< AC Bookmarks */
+ rodeo_input_binary_scancode_AUDIONEXT = 258,
+ rodeo_input_binary_scancode_AUDIOPREV = 259,
+ rodeo_input_binary_scancode_AUDIOSTOP = 260,
+ rodeo_input_binary_scancode_AUDIOPLAY = 261,
+ rodeo_input_binary_scancode_AUDIOMUTE = 262,
+ rodeo_input_binary_scancode_MEDIASELECT = 263,
+ rodeo_input_binary_scancode_WWW = 264, /**< AL Internet Browser */
+ rodeo_input_binary_scancode_MAIL = 265,
+ rodeo_input_binary_scancode_CALCULATOR = 266, /**< AL Calculator */
+ rodeo_input_binary_scancode_COMPUTER = 267,
+ rodeo_input_binary_scancode_AC_SEARCH = 268, /**< AC Search */
+ rodeo_input_binary_scancode_AC_HOME = 269, /**< AC Home */
+ rodeo_input_binary_scancode_AC_BACK = 270, /**< AC Back */
+ rodeo_input_binary_scancode_AC_FORWARD = 271, /**< AC Forward */
+ rodeo_input_binary_scancode_AC_STOP = 272, /**< AC Stop */
+ rodeo_input_binary_scancode_AC_REFRESH = 273, /**< AC Refresh */
+ rodeo_input_binary_scancode_AC_BOOKMARKS = 274, /**< AC Bookmarks */
/* @} *//* Usage page 0x0C */
@@ -382,18 +382,18 @@ typedef enum
*/
/* @{ */
- rodeo_input_scancode_BRIGHTNESSDOWN = 275,
- rodeo_input_scancode_BRIGHTNESSUP = 276,
- rodeo_input_scancode_DISPLAYSWITCH = 277, /**< display mirroring/dual display
+ rodeo_input_binary_scancode_BRIGHTNESSDOWN = 275,
+ rodeo_input_binary_scancode_BRIGHTNESSUP = 276,
+ rodeo_input_binary_scancode_DISPLAYSWITCH = 277, /**< display mirroring/dual display
switch, video mode switch */
- rodeo_input_scancode_KBDILLUMTOGGLE = 278,
- rodeo_input_scancode_KBDILLUMDOWN = 279,
- rodeo_input_scancode_KBDILLUMUP = 280,
- rodeo_input_scancode_EJECT = 281,
- rodeo_input_scancode_SLEEP = 282, /**< SC System Sleep */
+ rodeo_input_binary_scancode_KBDILLUMTOGGLE = 278,
+ rodeo_input_binary_scancode_KBDILLUMDOWN = 279,
+ rodeo_input_binary_scancode_KBDILLUMUP = 280,
+ rodeo_input_binary_scancode_EJECT = 281,
+ rodeo_input_binary_scancode_SLEEP = 282, /**< SC System Sleep */
- rodeo_input_scancode_APP1 = 283,
- rodeo_input_scancode_APP2 = 284,
+ rodeo_input_binary_scancode_APP1 = 283,
+ rodeo_input_binary_scancode_APP2 = 284,
/* @} *//* Walther keys */
@@ -404,8 +404,8 @@ typedef enum
*/
/* @{ */
- rodeo_input_scancode_AUDIOREWIND = 285,
- rodeo_input_scancode_AUDIOFASTFORWARD = 286,
+ rodeo_input_binary_scancode_AUDIOREWIND = 285,
+ rodeo_input_binary_scancode_AUDIOFASTFORWARD = 286,
/* @} *//* Usage page 0x0C (additional media keys) */
@@ -416,16 +416,16 @@ typedef enum
*/
/* @{ */
- rodeo_input_scancode_SOFTLEFT = 287, /**< Usually situated below the display on phones and
+ rodeo_input_binary_scancode_SOFTLEFT = 287, /**< Usually situated below the display on phones and
used as a multi-function feature key for selecting
a software defined function shown on the bottom left
of the display. */
- rodeo_input_scancode_SOFTRIGHT = 288, /**< Usually situated below the display on phones and
+ rodeo_input_binary_scancode_SOFTRIGHT = 288, /**< Usually situated below the display on phones and
used as a multi-function feature key for selecting
a software defined function shown on the bottom right
of the display. */
- rodeo_input_scancode_CALL = 289, /**< Used for accepting phone calls. */
- rodeo_input_scancode_ENDCALL = 290, /**< Used for rejecting phone calls. */
+ rodeo_input_binary_scancode_CALL = 289, /**< Used for accepting phone calls. */
+ rodeo_input_binary_scancode_ENDCALL = 290, /**< Used for rejecting phone calls. */
/* @} *//* Mobile keys */
@@ -434,290 +434,290 @@ typedef enum
rodeo_input_NUM_SCANCODES = 512 /**< not a key, just marks the number of scancodes
for array bounds */
}
-rodeo_input_scancode_t;
+rodeo_input_binary_scancode_t;
-#define mrodeo_input_scancode_mask (1<<30)
-#define mrodeo_input_scancode_maskshift(X) (X | mrodeo_input_scancode_mask)
+#define mrodeo_input_binary_scancode_mask (1<<30)
+#define mrodeo_input_binary_scancode_maskshift(X) (X | mrodeo_input_binary_scancode_mask)
typedef enum
{
- rodeo_input_keycode_UNKNOWN = 0,
-
- rodeo_input_keycode_RETURN = '\r',
- rodeo_input_keycode_ESCAPE = '\x1B',
- rodeo_input_keycode_BACKSPACE = '\b',
- rodeo_input_keycode_TAB = '\t',
- rodeo_input_keycode_SPACE = ' ',
- rodeo_input_keycode_EXCLAIM = '!',
- rodeo_input_keycode_QUOTEDBL = '"',
- rodeo_input_keycode_HASH = '#',
- rodeo_input_keycode_PERCENT = '%',
- rodeo_input_keycode_DOLLAR = '$',
- rodeo_input_keycode_AMPERSAND = '&',
- rodeo_input_keycode_QUOTE = '\'',
- rodeo_input_keycode_LEFTPAREN = '(',
- rodeo_input_keycode_RIGHTPAREN = ')',
- rodeo_input_keycode_ASTERISK = '*',
- rodeo_input_keycode_PLUS = '+',
- rodeo_input_keycode_COMMA = ',',
- rodeo_input_keycode_MINUS = '-',
- rodeo_input_keycode_PERIOD = '.',
- rodeo_input_keycode_SLASH = '/',
- rodeo_input_keycode_0 = '0',
- rodeo_input_keycode_1 = '1',
- rodeo_input_keycode_2 = '2',
- rodeo_input_keycode_3 = '3',
- rodeo_input_keycode_4 = '4',
- rodeo_input_keycode_5 = '5',
- rodeo_input_keycode_6 = '6',
- rodeo_input_keycode_7 = '7',
- rodeo_input_keycode_8 = '8',
- rodeo_input_keycode_9 = '9',
- rodeo_input_keycode_COLON = ':',
- rodeo_input_keycode_SEMICOLON = ';',
- rodeo_input_keycode_LESS = '<',
- rodeo_input_keycode_EQUALS = '=',
- rodeo_input_keycode_GREATER = '>',
- rodeo_input_keycode_QUESTION = '?',
- rodeo_input_keycode_AT = '@',
+ rodeo_input_binary_keycode_UNKNOWN = 0,
+
+ rodeo_input_binary_keycode_RETURN = '\r',
+ rodeo_input_binary_keycode_ESCAPE = '\x1B',
+ rodeo_input_binary_keycode_BACKSPACE = '\b',
+ rodeo_input_binary_keycode_TAB = '\t',
+ rodeo_input_binary_keycode_SPACE = ' ',
+ rodeo_input_binary_keycode_EXCLAIM = '!',
+ rodeo_input_binary_keycode_QUOTEDBL = '"',
+ rodeo_input_binary_keycode_HASH = '#',
+ rodeo_input_binary_keycode_PERCENT = '%',
+ rodeo_input_binary_keycode_DOLLAR = '$',
+ rodeo_input_binary_keycode_AMPERSAND = '&',
+ rodeo_input_binary_keycode_QUOTE = '\'',
+ rodeo_input_binary_keycode_LEFTPAREN = '(',
+ rodeo_input_binary_keycode_RIGHTPAREN = ')',
+ rodeo_input_binary_keycode_ASTERISK = '*',
+ rodeo_input_binary_keycode_PLUS = '+',
+ rodeo_input_binary_keycode_COMMA = ',',
+ rodeo_input_binary_keycode_MINUS = '-',
+ rodeo_input_binary_keycode_PERIOD = '.',
+ rodeo_input_binary_keycode_SLASH = '/',
+ rodeo_input_binary_keycode_0 = '0',
+ rodeo_input_binary_keycode_1 = '1',
+ rodeo_input_binary_keycode_2 = '2',
+ rodeo_input_binary_keycode_3 = '3',
+ rodeo_input_binary_keycode_4 = '4',
+ rodeo_input_binary_keycode_5 = '5',
+ rodeo_input_binary_keycode_6 = '6',
+ rodeo_input_binary_keycode_7 = '7',
+ rodeo_input_binary_keycode_8 = '8',
+ rodeo_input_binary_keycode_9 = '9',
+ rodeo_input_binary_keycode_COLON = ':',
+ rodeo_input_binary_keycode_SEMICOLON = ';',
+ rodeo_input_binary_keycode_LESS = '<',
+ rodeo_input_binary_keycode_EQUALS = '=',
+ rodeo_input_binary_keycode_GREATER = '>',
+ rodeo_input_binary_keycode_QUESTION = '?',
+ rodeo_input_binary_keycode_AT = '@',
/*
Skip uppercase letters
*/
- rodeo_input_keycode_LEFTBRACKET = '[',
- rodeo_input_keycode_BACKSLASH = '\\',
- rodeo_input_keycode_RIGHTBRACKET = ']',
- rodeo_input_keycode_CARET = '^',
- rodeo_input_keycode_UNDERSCORE = '_',
- rodeo_input_keycode_BACKQUOTE = '`',
- rodeo_input_keycode_A = 'a',
- rodeo_input_keycode_B = 'b',
- rodeo_input_keycode_C = 'c',
- rodeo_input_keycode_D = 'd',
- rodeo_input_keycode_E = 'e',
- rodeo_input_keycode_F = 'f',
- rodeo_input_keycode_G = 'g',
- rodeo_input_keycode_H = 'h',
- rodeo_input_keycode_I = 'i',
- rodeo_input_keycode_J = 'j',
- rodeo_input_keycode_K = 'k',
- rodeo_input_keycode_L = 'l',
- rodeo_input_keycode_M = 'm',
- rodeo_input_keycode_N = 'n',
- rodeo_input_keycode_O = 'o',
- rodeo_input_keycode_P = 'p',
- rodeo_input_keycode_Q = 'q',
- rodeo_input_keycode_R = 'r',
- rodeo_input_keycode_S = 's',
- rodeo_input_keycode_T = 't',
- rodeo_input_keycode_U = 'u',
- rodeo_input_keycode_V = 'v',
- rodeo_input_keycode_W = 'w',
- rodeo_input_keycode_X = 'x',
- rodeo_input_keycode_Y = 'y',
- rodeo_input_keycode_Z = 'z',
+ rodeo_input_binary_keycode_LEFTBRACKET = '[',
+ rodeo_input_binary_keycode_BACKSLASH = '\\',
+ rodeo_input_binary_keycode_RIGHTBRACKET = ']',
+ rodeo_input_binary_keycode_CARET = '^',
+ rodeo_input_binary_keycode_UNDERSCORE = '_',
+ rodeo_input_binary_keycode_BACKQUOTE = '`',
+ rodeo_input_binary_keycode_A = 'a',
+ rodeo_input_binary_keycode_B = 'b',
+ rodeo_input_binary_keycode_C = 'c',
+ rodeo_input_binary_keycode_D = 'd',
+ rodeo_input_binary_keycode_E = 'e',
+ rodeo_input_binary_keycode_F = 'f',
+ rodeo_input_binary_keycode_G = 'g',
+ rodeo_input_binary_keycode_H = 'h',
+ rodeo_input_binary_keycode_I = 'i',
+ rodeo_input_binary_keycode_J = 'j',
+ rodeo_input_binary_keycode_K = 'k',
+ rodeo_input_binary_keycode_L = 'l',
+ rodeo_input_binary_keycode_M = 'm',
+ rodeo_input_binary_keycode_N = 'n',
+ rodeo_input_binary_keycode_O = 'o',
+ rodeo_input_binary_keycode_P = 'p',
+ rodeo_input_binary_keycode_Q = 'q',
+ rodeo_input_binary_keycode_R = 'r',
+ rodeo_input_binary_keycode_S = 's',
+ rodeo_input_binary_keycode_T = 't',
+ rodeo_input_binary_keycode_U = 'u',
+ rodeo_input_binary_keycode_V = 'v',
+ rodeo_input_binary_keycode_W = 'w',
+ rodeo_input_binary_keycode_X = 'x',
+ rodeo_input_binary_keycode_Y = 'y',
+ rodeo_input_binary_keycode_Z = 'z',
- rodeo_input_keycode_CAPSLOCK = mrodeo_input_scancode_maskshift(rodeo_input_scancode_CAPSLOCK),
+ rodeo_input_binary_keycode_CAPSLOCK = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_CAPSLOCK),
- rodeo_input_keycode_F1 = mrodeo_input_scancode_maskshift(rodeo_input_scancode_F1),
- rodeo_input_keycode_F2 = mrodeo_input_scancode_maskshift(rodeo_input_scancode_F2),
- rodeo_input_keycode_F3 = mrodeo_input_scancode_maskshift(rodeo_input_scancode_F3),
- rodeo_input_keycode_F4 = mrodeo_input_scancode_maskshift(rodeo_input_scancode_F4),
- rodeo_input_keycode_F5 = mrodeo_input_scancode_maskshift(rodeo_input_scancode_F5),
- rodeo_input_keycode_F6 = mrodeo_input_scancode_maskshift(rodeo_input_scancode_F6),
- rodeo_input_keycode_F7 = mrodeo_input_scancode_maskshift(rodeo_input_scancode_F7),
- rodeo_input_keycode_F8 = mrodeo_input_scancode_maskshift(rodeo_input_scancode_F8),
- rodeo_input_keycode_F9 = mrodeo_input_scancode_maskshift(rodeo_input_scancode_F9),
- rodeo_input_keycode_F10 = mrodeo_input_scancode_maskshift(rodeo_input_scancode_F10),
- rodeo_input_keycode_F11 = mrodeo_input_scancode_maskshift(rodeo_input_scancode_F11),
- rodeo_input_keycode_F12 = mrodeo_input_scancode_maskshift(rodeo_input_scancode_F12),
+ rodeo_input_binary_keycode_F1 = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_F1),
+ rodeo_input_binary_keycode_F2 = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_F2),
+ rodeo_input_binary_keycode_F3 = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_F3),
+ rodeo_input_binary_keycode_F4 = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_F4),
+ rodeo_input_binary_keycode_F5 = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_F5),
+ rodeo_input_binary_keycode_F6 = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_F6),
+ rodeo_input_binary_keycode_F7 = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_F7),
+ rodeo_input_binary_keycode_F8 = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_F8),
+ rodeo_input_binary_keycode_F9 = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_F9),
+ rodeo_input_binary_keycode_F10 = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_F10),
+ rodeo_input_binary_keycode_F11 = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_F11),
+ rodeo_input_binary_keycode_F12 = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_F12),
- rodeo_input_keycode_PRINTSCREEN = mrodeo_input_scancode_maskshift(rodeo_input_scancode_PRINTSCREEN),
- rodeo_input_keycode_SCROLLLOCK = mrodeo_input_scancode_maskshift(rodeo_input_scancode_SCROLLLOCK),
- rodeo_input_keycode_PAUSE = mrodeo_input_scancode_maskshift(rodeo_input_scancode_PAUSE),
- rodeo_input_keycode_INSERT = mrodeo_input_scancode_maskshift(rodeo_input_scancode_INSERT),
- rodeo_input_keycode_HOME = mrodeo_input_scancode_maskshift(rodeo_input_scancode_HOME),
- rodeo_input_keycode_PAGEUP = mrodeo_input_scancode_maskshift(rodeo_input_scancode_PAGEUP),
- rodeo_input_keycode_DELETE = '\x7F',
- rodeo_input_keycode_END = mrodeo_input_scancode_maskshift(rodeo_input_scancode_END),
- rodeo_input_keycode_PAGEDOWN = mrodeo_input_scancode_maskshift(rodeo_input_scancode_PAGEDOWN),
- rodeo_input_keycode_RIGHT = mrodeo_input_scancode_maskshift(rodeo_input_scancode_RIGHT),
- rodeo_input_keycode_LEFT = mrodeo_input_scancode_maskshift(rodeo_input_scancode_LEFT),
- rodeo_input_keycode_DOWN = mrodeo_input_scancode_maskshift(rodeo_input_scancode_DOWN),
- rodeo_input_keycode_UP = mrodeo_input_scancode_maskshift(rodeo_input_scancode_UP),
+ rodeo_input_binary_keycode_PRINTSCREEN = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_PRINTSCREEN),
+ rodeo_input_binary_keycode_SCROLLLOCK = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_SCROLLLOCK),
+ rodeo_input_binary_keycode_PAUSE = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_PAUSE),
+ rodeo_input_binary_keycode_INSERT = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_INSERT),
+ rodeo_input_binary_keycode_HOME = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_HOME),
+ rodeo_input_binary_keycode_PAGEUP = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_PAGEUP),
+ rodeo_input_binary_keycode_DELETE = '\x7F',
+ rodeo_input_binary_keycode_END = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_END),
+ rodeo_input_binary_keycode_PAGEDOWN = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_PAGEDOWN),
+ rodeo_input_binary_keycode_RIGHT = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_RIGHT),
+ rodeo_input_binary_keycode_LEFT = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_LEFT),
+ rodeo_input_binary_keycode_DOWN = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_DOWN),
+ rodeo_input_binary_keycode_UP = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_UP),
- rodeo_input_keycode_NUMLOCKCLEAR = mrodeo_input_scancode_maskshift(rodeo_input_scancode_NUMLOCKCLEAR),
- rodeo_input_keycode_KP_DIVIDE = mrodeo_input_scancode_maskshift(rodeo_input_scancode_KP_DIVIDE),
- rodeo_input_keycode_KP_MULTIPLY = mrodeo_input_scancode_maskshift(rodeo_input_scancode_KP_MULTIPLY),
- rodeo_input_keycode_KP_MINUS = mrodeo_input_scancode_maskshift(rodeo_input_scancode_KP_MINUS),
- rodeo_input_keycode_KP_PLUS = mrodeo_input_scancode_maskshift(rodeo_input_scancode_KP_PLUS),
- rodeo_input_keycode_KP_ENTER = mrodeo_input_scancode_maskshift(rodeo_input_scancode_KP_ENTER),
- rodeo_input_keycode_KP_1 = mrodeo_input_scancode_maskshift(rodeo_input_scancode_KP_1),
- rodeo_input_keycode_KP_2 = mrodeo_input_scancode_maskshift(rodeo_input_scancode_KP_2),
- rodeo_input_keycode_KP_3 = mrodeo_input_scancode_maskshift(rodeo_input_scancode_KP_3),
- rodeo_input_keycode_KP_4 = mrodeo_input_scancode_maskshift(rodeo_input_scancode_KP_4),
- rodeo_input_keycode_KP_5 = mrodeo_input_scancode_maskshift(rodeo_input_scancode_KP_5),
- rodeo_input_keycode_KP_6 = mrodeo_input_scancode_maskshift(rodeo_input_scancode_KP_6),
- rodeo_input_keycode_KP_7 = mrodeo_input_scancode_maskshift(rodeo_input_scancode_KP_7),
- rodeo_input_keycode_KP_8 = mrodeo_input_scancode_maskshift(rodeo_input_scancode_KP_8),
- rodeo_input_keycode_KP_9 = mrodeo_input_scancode_maskshift(rodeo_input_scancode_KP_9),
- rodeo_input_keycode_KP_0 = mrodeo_input_scancode_maskshift(rodeo_input_scancode_KP_0),
- rodeo_input_keycode_KP_PERIOD = mrodeo_input_scancode_maskshift(rodeo_input_scancode_KP_PERIOD),
+ rodeo_input_binary_keycode_NUMLOCKCLEAR = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_NUMLOCKCLEAR),
+ rodeo_input_binary_keycode_KP_DIVIDE = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_KP_DIVIDE),
+ rodeo_input_binary_keycode_KP_MULTIPLY = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_KP_MULTIPLY),
+ rodeo_input_binary_keycode_KP_MINUS = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_KP_MINUS),
+ rodeo_input_binary_keycode_KP_PLUS = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_KP_PLUS),
+ rodeo_input_binary_keycode_KP_ENTER = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_KP_ENTER),
+ rodeo_input_binary_keycode_KP_1 = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_KP_1),
+ rodeo_input_binary_keycode_KP_2 = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_KP_2),
+ rodeo_input_binary_keycode_KP_3 = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_KP_3),
+ rodeo_input_binary_keycode_KP_4 = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_KP_4),
+ rodeo_input_binary_keycode_KP_5 = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_KP_5),
+ rodeo_input_binary_keycode_KP_6 = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_KP_6),
+ rodeo_input_binary_keycode_KP_7 = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_KP_7),
+ rodeo_input_binary_keycode_KP_8 = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_KP_8),
+ rodeo_input_binary_keycode_KP_9 = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_KP_9),
+ rodeo_input_binary_keycode_KP_0 = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_KP_0),
+ rodeo_input_binary_keycode_KP_PERIOD = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_KP_PERIOD),
- rodeo_input_keycode_APPLICATION = mrodeo_input_scancode_maskshift(rodeo_input_scancode_APPLICATION),
- rodeo_input_keycode_POWER = mrodeo_input_scancode_maskshift(rodeo_input_scancode_POWER),
- rodeo_input_keycode_KP_EQUALS = mrodeo_input_scancode_maskshift(rodeo_input_scancode_KP_EQUALS),
- rodeo_input_keycode_F13 = mrodeo_input_scancode_maskshift(rodeo_input_scancode_F13),
- rodeo_input_keycode_F14 = mrodeo_input_scancode_maskshift(rodeo_input_scancode_F14),
- rodeo_input_keycode_F15 = mrodeo_input_scancode_maskshift(rodeo_input_scancode_F15),
- rodeo_input_keycode_F16 = mrodeo_input_scancode_maskshift(rodeo_input_scancode_F16),
- rodeo_input_keycode_F17 = mrodeo_input_scancode_maskshift(rodeo_input_scancode_F17),
- rodeo_input_keycode_F18 = mrodeo_input_scancode_maskshift(rodeo_input_scancode_F18),
- rodeo_input_keycode_F19 = mrodeo_input_scancode_maskshift(rodeo_input_scancode_F19),
- rodeo_input_keycode_F20 = mrodeo_input_scancode_maskshift(rodeo_input_scancode_F20),
- rodeo_input_keycode_F21 = mrodeo_input_scancode_maskshift(rodeo_input_scancode_F21),
- rodeo_input_keycode_F22 = mrodeo_input_scancode_maskshift(rodeo_input_scancode_F22),
- rodeo_input_keycode_F23 = mrodeo_input_scancode_maskshift(rodeo_input_scancode_F23),
- rodeo_input_keycode_F24 = mrodeo_input_scancode_maskshift(rodeo_input_scancode_F24),
- rodeo_input_keycode_EXECUTE = mrodeo_input_scancode_maskshift(rodeo_input_scancode_EXECUTE),
- rodeo_input_keycode_HELP = mrodeo_input_scancode_maskshift(rodeo_input_scancode_HELP),
- rodeo_input_keycode_MENU = mrodeo_input_scancode_maskshift(rodeo_input_scancode_MENU),
- rodeo_input_keycode_SELECT = mrodeo_input_scancode_maskshift(rodeo_input_scancode_SELECT),
- rodeo_input_keycode_STOP = mrodeo_input_scancode_maskshift(rodeo_input_scancode_STOP),
- rodeo_input_keycode_AGAIN = mrodeo_input_scancode_maskshift(rodeo_input_scancode_AGAIN),
- rodeo_input_keycode_UNDO = mrodeo_input_scancode_maskshift(rodeo_input_scancode_UNDO),
- rodeo_input_keycode_CUT = mrodeo_input_scancode_maskshift(rodeo_input_scancode_CUT),
- rodeo_input_keycode_COPY = mrodeo_input_scancode_maskshift(rodeo_input_scancode_COPY),
- rodeo_input_keycode_PASTE = mrodeo_input_scancode_maskshift(rodeo_input_scancode_PASTE),
- rodeo_input_keycode_FIND = mrodeo_input_scancode_maskshift(rodeo_input_scancode_FIND),
- rodeo_input_keycode_MUTE = mrodeo_input_scancode_maskshift(rodeo_input_scancode_MUTE),
- rodeo_input_keycode_VOLUMEUP = mrodeo_input_scancode_maskshift(rodeo_input_scancode_VOLUMEUP),
- rodeo_input_keycode_VOLUMEDOWN = mrodeo_input_scancode_maskshift(rodeo_input_scancode_VOLUMEDOWN),
- rodeo_input_keycode_KP_COMMA = mrodeo_input_scancode_maskshift(rodeo_input_scancode_KP_COMMA),
- rodeo_input_keycode_KP_EQUALSAS400 =
- mrodeo_input_scancode_maskshift(rodeo_input_scancode_KP_EQUALSAS400),
+ rodeo_input_binary_keycode_APPLICATION = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_APPLICATION),
+ rodeo_input_binary_keycode_POWER = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_POWER),
+ rodeo_input_binary_keycode_KP_EQUALS = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_KP_EQUALS),
+ rodeo_input_binary_keycode_F13 = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_F13),
+ rodeo_input_binary_keycode_F14 = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_F14),
+ rodeo_input_binary_keycode_F15 = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_F15),
+ rodeo_input_binary_keycode_F16 = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_F16),
+ rodeo_input_binary_keycode_F17 = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_F17),
+ rodeo_input_binary_keycode_F18 = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_F18),
+ rodeo_input_binary_keycode_F19 = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_F19),
+ rodeo_input_binary_keycode_F20 = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_F20),
+ rodeo_input_binary_keycode_F21 = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_F21),
+ rodeo_input_binary_keycode_F22 = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_F22),
+ rodeo_input_binary_keycode_F23 = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_F23),
+ rodeo_input_binary_keycode_F24 = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_F24),
+ rodeo_input_binary_keycode_EXECUTE = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_EXECUTE),
+ rodeo_input_binary_keycode_HELP = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_HELP),
+ rodeo_input_binary_keycode_MENU = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_MENU),
+ rodeo_input_binary_keycode_SELECT = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_SELECT),
+ rodeo_input_binary_keycode_STOP = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_STOP),
+ rodeo_input_binary_keycode_AGAIN = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_AGAIN),
+ rodeo_input_binary_keycode_UNDO = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_UNDO),
+ rodeo_input_binary_keycode_CUT = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_CUT),
+ rodeo_input_binary_keycode_COPY = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_COPY),
+ rodeo_input_binary_keycode_PASTE = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_PASTE),
+ rodeo_input_binary_keycode_FIND = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_FIND),
+ rodeo_input_binary_keycode_MUTE = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_MUTE),
+ rodeo_input_binary_keycode_VOLUMEUP = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_VOLUMEUP),
+ rodeo_input_binary_keycode_VOLUMEDOWN = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_VOLUMEDOWN),
+ rodeo_input_binary_keycode_KP_COMMA = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_KP_COMMA),
+ rodeo_input_binary_keycode_KP_EQUALSAS400 =
+ mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_KP_EQUALSAS400),
- rodeo_input_keycode_ALTERASE = mrodeo_input_scancode_maskshift(rodeo_input_scancode_ALTERASE),
- rodeo_input_keycode_SYSREQ = mrodeo_input_scancode_maskshift(rodeo_input_scancode_SYSREQ),
- rodeo_input_keycode_CANCEL = mrodeo_input_scancode_maskshift(rodeo_input_scancode_CANCEL),
- rodeo_input_keycode_CLEAR = mrodeo_input_scancode_maskshift(rodeo_input_scancode_CLEAR),
- rodeo_input_keycode_PRIOR = mrodeo_input_scancode_maskshift(rodeo_input_scancode_PRIOR),
- rodeo_input_keycode_RETURN2 = mrodeo_input_scancode_maskshift(rodeo_input_scancode_RETURN2),
- rodeo_input_keycode_SEPARATOR = mrodeo_input_scancode_maskshift(rodeo_input_scancode_SEPARATOR),
- rodeo_input_keycode_OUT = mrodeo_input_scancode_maskshift(rodeo_input_scancode_OUT),
- rodeo_input_keycode_OPER = mrodeo_input_scancode_maskshift(rodeo_input_scancode_OPER),
- rodeo_input_keycode_CLEARAGAIN = mrodeo_input_scancode_maskshift(rodeo_input_scancode_CLEARAGAIN),
- rodeo_input_keycode_CRSEL = mrodeo_input_scancode_maskshift(rodeo_input_scancode_CRSEL),
- rodeo_input_keycode_EXSEL = mrodeo_input_scancode_maskshift(rodeo_input_scancode_EXSEL),
+ rodeo_input_binary_keycode_ALTERASE = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_ALTERASE),
+ rodeo_input_binary_keycode_SYSREQ = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_SYSREQ),
+ rodeo_input_binary_keycode_CANCEL = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_CANCEL),
+ rodeo_input_binary_keycode_CLEAR = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_CLEAR),
+ rodeo_input_binary_keycode_PRIOR = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_PRIOR),
+ rodeo_input_binary_keycode_RETURN2 = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_RETURN2),
+ rodeo_input_binary_keycode_SEPARATOR = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_SEPARATOR),
+ rodeo_input_binary_keycode_OUT = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_OUT),
+ rodeo_input_binary_keycode_OPER = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_OPER),
+ rodeo_input_binary_keycode_CLEARAGAIN = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_CLEARAGAIN),
+ rodeo_input_binary_keycode_CRSEL = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_CRSEL),
+ rodeo_input_binary_keycode_EXSEL = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_EXSEL),
- rodeo_input_keycode_KP_00 = mrodeo_input_scancode_maskshift(rodeo_input_scancode_KP_00),
- rodeo_input_keycode_KP_000 = mrodeo_input_scancode_maskshift(rodeo_input_scancode_KP_000),
- rodeo_input_keycode_THOUSANDSSEPARATOR =
- mrodeo_input_scancode_maskshift(rodeo_input_scancode_THOUSANDSSEPARATOR),
- rodeo_input_keycode_DECIMALSEPARATOR =
- mrodeo_input_scancode_maskshift(rodeo_input_scancode_DECIMALSEPARATOR),
- rodeo_input_keycode_CURRENCYUNIT = mrodeo_input_scancode_maskshift(rodeo_input_scancode_CURRENCYUNIT),
- rodeo_input_keycode_CURRENCYSUBUNIT =
- mrodeo_input_scancode_maskshift(rodeo_input_scancode_CURRENCYSUBUNIT),
- rodeo_input_keycode_KP_LEFTPAREN = mrodeo_input_scancode_maskshift(rodeo_input_scancode_KP_LEFTPAREN),
- rodeo_input_keycode_KP_RIGHTPAREN = mrodeo_input_scancode_maskshift(rodeo_input_scancode_KP_RIGHTPAREN),
- rodeo_input_keycode_KP_LEFTBRACE = mrodeo_input_scancode_maskshift(rodeo_input_scancode_KP_LEFTBRACE),
- rodeo_input_keycode_KP_RIGHTBRACE = mrodeo_input_scancode_maskshift(rodeo_input_scancode_KP_RIGHTBRACE),
- rodeo_input_keycode_KP_TAB = mrodeo_input_scancode_maskshift(rodeo_input_scancode_KP_TAB),
- rodeo_input_keycode_KP_BACKSPACE = mrodeo_input_scancode_maskshift(rodeo_input_scancode_KP_BACKSPACE),
- rodeo_input_keycode_KP_A = mrodeo_input_scancode_maskshift(rodeo_input_scancode_KP_A),
- rodeo_input_keycode_KP_B = mrodeo_input_scancode_maskshift(rodeo_input_scancode_KP_B),
- rodeo_input_keycode_KP_C = mrodeo_input_scancode_maskshift(rodeo_input_scancode_KP_C),
- rodeo_input_keycode_KP_D = mrodeo_input_scancode_maskshift(rodeo_input_scancode_KP_D),
- rodeo_input_keycode_KP_E = mrodeo_input_scancode_maskshift(rodeo_input_scancode_KP_E),
- rodeo_input_keycode_KP_F = mrodeo_input_scancode_maskshift(rodeo_input_scancode_KP_F),
- rodeo_input_keycode_KP_XOR = mrodeo_input_scancode_maskshift(rodeo_input_scancode_KP_XOR),
- rodeo_input_keycode_KP_POWER = mrodeo_input_scancode_maskshift(rodeo_input_scancode_KP_POWER),
- rodeo_input_keycode_KP_PERCENT = mrodeo_input_scancode_maskshift(rodeo_input_scancode_KP_PERCENT),
- rodeo_input_keycode_KP_LESS = mrodeo_input_scancode_maskshift(rodeo_input_scancode_KP_LESS),
- rodeo_input_keycode_KP_GREATER = mrodeo_input_scancode_maskshift(rodeo_input_scancode_KP_GREATER),
- rodeo_input_keycode_KP_AMPERSAND = mrodeo_input_scancode_maskshift(rodeo_input_scancode_KP_AMPERSAND),
- rodeo_input_keycode_KP_DBLAMPERSAND =
- mrodeo_input_scancode_maskshift(rodeo_input_scancode_KP_DBLAMPERSAND),
- rodeo_input_keycode_KP_VERTICALBAR =
- mrodeo_input_scancode_maskshift(rodeo_input_scancode_KP_VERTICALBAR),
- rodeo_input_keycode_KP_DBLVERTICALBAR =
- mrodeo_input_scancode_maskshift(rodeo_input_scancode_KP_DBLVERTICALBAR),
- rodeo_input_keycode_KP_COLON = mrodeo_input_scancode_maskshift(rodeo_input_scancode_KP_COLON),
- rodeo_input_keycode_KP_HASH = mrodeo_input_scancode_maskshift(rodeo_input_scancode_KP_HASH),
- rodeo_input_keycode_KP_SPACE = mrodeo_input_scancode_maskshift(rodeo_input_scancode_KP_SPACE),
- rodeo_input_keycode_KP_AT = mrodeo_input_scancode_maskshift(rodeo_input_scancode_KP_AT),
- rodeo_input_keycode_KP_EXCLAM = mrodeo_input_scancode_maskshift(rodeo_input_scancode_KP_EXCLAM),
- rodeo_input_keycode_KP_MEMSTORE = mrodeo_input_scancode_maskshift(rodeo_input_scancode_KP_MEMSTORE),
- rodeo_input_keycode_KP_MEMRECALL = mrodeo_input_scancode_maskshift(rodeo_input_scancode_KP_MEMRECALL),
- rodeo_input_keycode_KP_MEMCLEAR = mrodeo_input_scancode_maskshift(rodeo_input_scancode_KP_MEMCLEAR),
- rodeo_input_keycode_KP_MEMADD = mrodeo_input_scancode_maskshift(rodeo_input_scancode_KP_MEMADD),
- rodeo_input_keycode_KP_MEMSUBTRACT =
- mrodeo_input_scancode_maskshift(rodeo_input_scancode_KP_MEMSUBTRACT),
- rodeo_input_keycode_KP_MEMMULTIPLY =
- mrodeo_input_scancode_maskshift(rodeo_input_scancode_KP_MEMMULTIPLY),
- rodeo_input_keycode_KP_MEMDIVIDE = mrodeo_input_scancode_maskshift(rodeo_input_scancode_KP_MEMDIVIDE),
- rodeo_input_keycode_KP_PLUSMINUS = mrodeo_input_scancode_maskshift(rodeo_input_scancode_KP_PLUSMINUS),
- rodeo_input_keycode_KP_CLEAR = mrodeo_input_scancode_maskshift(rodeo_input_scancode_KP_CLEAR),
- rodeo_input_keycode_KP_CLEARENTRY = mrodeo_input_scancode_maskshift(rodeo_input_scancode_KP_CLEARENTRY),
- rodeo_input_keycode_KP_BINARY = mrodeo_input_scancode_maskshift(rodeo_input_scancode_KP_BINARY),
- rodeo_input_keycode_KP_OCTAL = mrodeo_input_scancode_maskshift(rodeo_input_scancode_KP_OCTAL),
- rodeo_input_keycode_KP_DECIMAL = mrodeo_input_scancode_maskshift(rodeo_input_scancode_KP_DECIMAL),
- rodeo_input_keycode_KP_HEXADECIMAL =
- mrodeo_input_scancode_maskshift(rodeo_input_scancode_KP_HEXADECIMAL),
+ rodeo_input_binary_keycode_KP_00 = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_KP_00),
+ rodeo_input_binary_keycode_KP_000 = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_KP_000),
+ rodeo_input_binary_keycode_THOUSANDSSEPARATOR =
+ mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_THOUSANDSSEPARATOR),
+ rodeo_input_binary_keycode_DECIMALSEPARATOR =
+ mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_DECIMALSEPARATOR),
+ rodeo_input_binary_keycode_CURRENCYUNIT = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_CURRENCYUNIT),
+ rodeo_input_binary_keycode_CURRENCYSUBUNIT =
+ mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_CURRENCYSUBUNIT),
+ rodeo_input_binary_keycode_KP_LEFTPAREN = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_KP_LEFTPAREN),
+ rodeo_input_binary_keycode_KP_RIGHTPAREN = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_KP_RIGHTPAREN),
+ rodeo_input_binary_keycode_KP_LEFTBRACE = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_KP_LEFTBRACE),
+ rodeo_input_binary_keycode_KP_RIGHTBRACE = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_KP_RIGHTBRACE),
+ rodeo_input_binary_keycode_KP_TAB = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_KP_TAB),
+ rodeo_input_binary_keycode_KP_BACKSPACE = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_KP_BACKSPACE),
+ rodeo_input_binary_keycode_KP_A = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_KP_A),
+ rodeo_input_binary_keycode_KP_B = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_KP_B),
+ rodeo_input_binary_keycode_KP_C = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_KP_C),
+ rodeo_input_binary_keycode_KP_D = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_KP_D),
+ rodeo_input_binary_keycode_KP_E = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_KP_E),
+ rodeo_input_binary_keycode_KP_F = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_KP_F),
+ rodeo_input_binary_keycode_KP_XOR = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_KP_XOR),
+ rodeo_input_binary_keycode_KP_POWER = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_KP_POWER),
+ rodeo_input_binary_keycode_KP_PERCENT = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_KP_PERCENT),
+ rodeo_input_binary_keycode_KP_LESS = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_KP_LESS),
+ rodeo_input_binary_keycode_KP_GREATER = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_KP_GREATER),
+ rodeo_input_binary_keycode_KP_AMPERSAND = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_KP_AMPERSAND),
+ rodeo_input_binary_keycode_KP_DBLAMPERSAND =
+ mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_KP_DBLAMPERSAND),
+ rodeo_input_binary_keycode_KP_VERTICALBAR =
+ mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_KP_VERTICALBAR),
+ rodeo_input_binary_keycode_KP_DBLVERTICALBAR =
+ mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_KP_DBLVERTICALBAR),
+ rodeo_input_binary_keycode_KP_COLON = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_KP_COLON),
+ rodeo_input_binary_keycode_KP_HASH = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_KP_HASH),
+ rodeo_input_binary_keycode_KP_SPACE = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_KP_SPACE),
+ rodeo_input_binary_keycode_KP_AT = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_KP_AT),
+ rodeo_input_binary_keycode_KP_EXCLAM = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_KP_EXCLAM),
+ rodeo_input_binary_keycode_KP_MEMSTORE = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_KP_MEMSTORE),
+ rodeo_input_binary_keycode_KP_MEMRECALL = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_KP_MEMRECALL),
+ rodeo_input_binary_keycode_KP_MEMCLEAR = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_KP_MEMCLEAR),
+ rodeo_input_binary_keycode_KP_MEMADD = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_KP_MEMADD),
+ rodeo_input_binary_keycode_KP_MEMSUBTRACT =
+ mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_KP_MEMSUBTRACT),
+ rodeo_input_binary_keycode_KP_MEMMULTIPLY =
+ mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_KP_MEMMULTIPLY),
+ rodeo_input_binary_keycode_KP_MEMDIVIDE = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_KP_MEMDIVIDE),
+ rodeo_input_binary_keycode_KP_PLUSMINUS = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_KP_PLUSMINUS),
+ rodeo_input_binary_keycode_KP_CLEAR = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_KP_CLEAR),
+ rodeo_input_binary_keycode_KP_CLEARENTRY = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_KP_CLEARENTRY),
+ rodeo_input_binary_keycode_KP_BINARY = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_KP_BINARY),
+ rodeo_input_binary_keycode_KP_OCTAL = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_KP_OCTAL),
+ rodeo_input_binary_keycode_KP_DECIMAL = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_KP_DECIMAL),
+ rodeo_input_binary_keycode_KP_HEXADECIMAL =
+ mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_KP_HEXADECIMAL),
- rodeo_input_keycode_LCTRL = mrodeo_input_scancode_maskshift(rodeo_input_scancode_LCTRL),
- rodeo_input_keycode_LSHIFT = mrodeo_input_scancode_maskshift(rodeo_input_scancode_LSHIFT),
- rodeo_input_keycode_LALT = mrodeo_input_scancode_maskshift(rodeo_input_scancode_LALT),
- rodeo_input_keycode_LGUI = mrodeo_input_scancode_maskshift(rodeo_input_scancode_LGUI),
- rodeo_input_keycode_RCTRL = mrodeo_input_scancode_maskshift(rodeo_input_scancode_RCTRL),
- rodeo_input_keycode_RSHIFT = mrodeo_input_scancode_maskshift(rodeo_input_scancode_RSHIFT),
- rodeo_input_keycode_RALT = mrodeo_input_scancode_maskshift(rodeo_input_scancode_RALT),
- rodeo_input_keycode_RGUI = mrodeo_input_scancode_maskshift(rodeo_input_scancode_RGUI),
+ rodeo_input_binary_keycode_LCTRL = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_LCTRL),
+ rodeo_input_binary_keycode_LSHIFT = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_LSHIFT),
+ rodeo_input_binary_keycode_LALT = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_LALT),
+ rodeo_input_binary_keycode_LGUI = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_LGUI),
+ rodeo_input_binary_keycode_RCTRL = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_RCTRL),
+ rodeo_input_binary_keycode_RSHIFT = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_RSHIFT),
+ rodeo_input_binary_keycode_RALT = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_RALT),
+ rodeo_input_binary_keycode_RGUI = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_RGUI),
- rodeo_input_keycode_MODE = mrodeo_input_scancode_maskshift(rodeo_input_scancode_MODE),
+ rodeo_input_binary_keycode_MODE = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_MODE),
- rodeo_input_keycode_AUDIONEXT = mrodeo_input_scancode_maskshift(rodeo_input_scancode_AUDIONEXT),
- rodeo_input_keycode_AUDIOPREV = mrodeo_input_scancode_maskshift(rodeo_input_scancode_AUDIOPREV),
- rodeo_input_keycode_AUDIOSTOP = mrodeo_input_scancode_maskshift(rodeo_input_scancode_AUDIOSTOP),
- rodeo_input_keycode_AUDIOPLAY = mrodeo_input_scancode_maskshift(rodeo_input_scancode_AUDIOPLAY),
- rodeo_input_keycode_AUDIOMUTE = mrodeo_input_scancode_maskshift(rodeo_input_scancode_AUDIOMUTE),
- rodeo_input_keycode_MEDIASELECT = mrodeo_input_scancode_maskshift(rodeo_input_scancode_MEDIASELECT),
- rodeo_input_keycode_WWW = mrodeo_input_scancode_maskshift(rodeo_input_scancode_WWW),
- rodeo_input_keycode_MAIL = mrodeo_input_scancode_maskshift(rodeo_input_scancode_MAIL),
- rodeo_input_keycode_CALCULATOR = mrodeo_input_scancode_maskshift(rodeo_input_scancode_CALCULATOR),
- rodeo_input_keycode_COMPUTER = mrodeo_input_scancode_maskshift(rodeo_input_scancode_COMPUTER),
- rodeo_input_keycode_AC_SEARCH = mrodeo_input_scancode_maskshift(rodeo_input_scancode_AC_SEARCH),
- rodeo_input_keycode_AC_HOME = mrodeo_input_scancode_maskshift(rodeo_input_scancode_AC_HOME),
- rodeo_input_keycode_AC_BACK = mrodeo_input_scancode_maskshift(rodeo_input_scancode_AC_BACK),
- rodeo_input_keycode_AC_FORWARD = mrodeo_input_scancode_maskshift(rodeo_input_scancode_AC_FORWARD),
- rodeo_input_keycode_AC_STOP = mrodeo_input_scancode_maskshift(rodeo_input_scancode_AC_STOP),
- rodeo_input_keycode_AC_REFRESH = mrodeo_input_scancode_maskshift(rodeo_input_scancode_AC_REFRESH),
- rodeo_input_keycode_AC_BOOKMARKS = mrodeo_input_scancode_maskshift(rodeo_input_scancode_AC_BOOKMARKS),
-
- rodeo_input_keycode_BRIGHTNESSDOWN =
- mrodeo_input_scancode_maskshift(rodeo_input_scancode_BRIGHTNESSDOWN),
- rodeo_input_keycode_BRIGHTNESSUP = mrodeo_input_scancode_maskshift(rodeo_input_scancode_BRIGHTNESSUP),
- rodeo_input_keycode_DISPLAYSWITCH = mrodeo_input_scancode_maskshift(rodeo_input_scancode_DISPLAYSWITCH),
- rodeo_input_keycode_KBDILLUMTOGGLE =
- mrodeo_input_scancode_maskshift(rodeo_input_scancode_KBDILLUMTOGGLE),
- rodeo_input_keycode_KBDILLUMDOWN = mrodeo_input_scancode_maskshift(rodeo_input_scancode_KBDILLUMDOWN),
- rodeo_input_keycode_KBDILLUMUP = mrodeo_input_scancode_maskshift(rodeo_input_scancode_KBDILLUMUP),
- rodeo_input_keycode_EJECT = mrodeo_input_scancode_maskshift(rodeo_input_scancode_EJECT),
- rodeo_input_keycode_SLEEP = mrodeo_input_scancode_maskshift(rodeo_input_scancode_SLEEP),
- rodeo_input_keycode_APP1 = mrodeo_input_scancode_maskshift(rodeo_input_scancode_APP1),
- rodeo_input_keycode_APP2 = mrodeo_input_scancode_maskshift(rodeo_input_scancode_APP2),
+ rodeo_input_binary_keycode_AUDIONEXT = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_AUDIONEXT),
+ rodeo_input_binary_keycode_AUDIOPREV = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_AUDIOPREV),
+ rodeo_input_binary_keycode_AUDIOSTOP = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_AUDIOSTOP),
+ rodeo_input_binary_keycode_AUDIOPLAY = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_AUDIOPLAY),
+ rodeo_input_binary_keycode_AUDIOMUTE = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_AUDIOMUTE),
+ rodeo_input_binary_keycode_MEDIASELECT = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_MEDIASELECT),
+ rodeo_input_binary_keycode_WWW = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_WWW),
+ rodeo_input_binary_keycode_MAIL = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_MAIL),
+ rodeo_input_binary_keycode_CALCULATOR = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_CALCULATOR),
+ rodeo_input_binary_keycode_COMPUTER = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_COMPUTER),
+ rodeo_input_binary_keycode_AC_SEARCH = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_AC_SEARCH),
+ rodeo_input_binary_keycode_AC_HOME = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_AC_HOME),
+ rodeo_input_binary_keycode_AC_BACK = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_AC_BACK),
+ rodeo_input_binary_keycode_AC_FORWARD = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_AC_FORWARD),
+ rodeo_input_binary_keycode_AC_STOP = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_AC_STOP),
+ rodeo_input_binary_keycode_AC_REFRESH = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_AC_REFRESH),
+ rodeo_input_binary_keycode_AC_BOOKMARKS = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_AC_BOOKMARKS),
+
+ rodeo_input_binary_keycode_BRIGHTNESSDOWN =
+ mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_BRIGHTNESSDOWN),
+ rodeo_input_binary_keycode_BRIGHTNESSUP = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_BRIGHTNESSUP),
+ rodeo_input_binary_keycode_DISPLAYSWITCH = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_DISPLAYSWITCH),
+ rodeo_input_binary_keycode_KBDILLUMTOGGLE =
+ mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_KBDILLUMTOGGLE),
+ rodeo_input_binary_keycode_KBDILLUMDOWN = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_KBDILLUMDOWN),
+ rodeo_input_binary_keycode_KBDILLUMUP = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_KBDILLUMUP),
+ rodeo_input_binary_keycode_EJECT = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_EJECT),
+ rodeo_input_binary_keycode_SLEEP = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_SLEEP),
+ rodeo_input_binary_keycode_APP1 = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_APP1),
+ rodeo_input_binary_keycode_APP2 = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_APP2),
- rodeo_input_keycode_AUDIOREWIND = mrodeo_input_scancode_maskshift(rodeo_input_scancode_AUDIOREWIND),
- rodeo_input_keycode_AUDIOFASTFORWARD = mrodeo_input_scancode_maskshift(rodeo_input_scancode_AUDIOFASTFORWARD),
+ rodeo_input_binary_keycode_AUDIOREWIND = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_AUDIOREWIND),
+ rodeo_input_binary_keycode_AUDIOFASTFORWARD = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_AUDIOFASTFORWARD),
- rodeo_input_keycode_SOFTLEFT = mrodeo_input_scancode_maskshift(rodeo_input_scancode_SOFTLEFT),
- rodeo_input_keycode_SOFTRIGHT = mrodeo_input_scancode_maskshift(rodeo_input_scancode_SOFTRIGHT),
- rodeo_input_keycode_CALL = mrodeo_input_scancode_maskshift(rodeo_input_scancode_CALL),
- rodeo_input_keycode_ENDCALL = mrodeo_input_scancode_maskshift(rodeo_input_scancode_ENDCALL)
+ rodeo_input_binary_keycode_SOFTLEFT = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_SOFTLEFT),
+ rodeo_input_binary_keycode_SOFTRIGHT = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_SOFTRIGHT),
+ rodeo_input_binary_keycode_CALL = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_CALL),
+ rodeo_input_binary_keycode_ENDCALL = mrodeo_input_binary_scancode_maskshift(rodeo_input_binary_scancode_ENDCALL)
}
-rodeo_input_keycode_t;
+rodeo_input_binary_keycode_t;
/**
* \brief Enumeration of valid key mods (possibly OR'd together).
@@ -751,76 +751,54 @@ rodeo_input_keymod_t;
typedef
enum
{
- rodeo_input_mouse_INVALID = 0,
- rodeo_input_mouse_LEFT = 1,
- rodeo_input_mouse_MIDDLE = 2,
- rodeo_input_mouse_RIGHT = 3,
- rodeo_input_mouse_X1 = 4,
- rodeo_input_mouse_X2 = 5,
+ rodeo_input_binary_mouseButton_INVALID = 0,
+ rodeo_input_binary_mouseButton_LEFT = 1,
+ rodeo_input_binary_mouseButton_MIDDLE = 2,
+ rodeo_input_binary_mouseButton_RIGHT = 3,
+ rodeo_input_binary_mouseButton_X1 = 4,
+ rodeo_input_binary_mouseButton_X2 = 5,
}
-rodeo_input_mouse_t;
+rodeo_input_binary_mouseButton_t;
// - SDL code end -
-// - for sending state -
-
typedef
enum
{
- rodeo_input_type_Invalid = 0,
- rodeo_input_type_Binary
+ rodeo_input_type_Invalid = (1 << 0),
+ rodeo_input_type_Binary = (1 << 1)
}
-rodeo_input_type_t;
+rodeo_input_type_t ;
typedef
enum
{
- rodeo_input_binary_state_Up = false,
- rodeo_input_binary_state_Down = true
-}
-rodeo_input_binary_state_t;
-
-typedef
-struct
-{
- union
- {
- rodeo_input_binary_state_t binary_state;
- };
- rodeo_input_type_t type;
+ rodeo_input_binary_Invalid = 0,
+ rodeo_input_binary_Scancode,
+ rodeo_input_binary_Mouse
}
-rodeo_input_any_state_t;
-
-// - for sending state end -
+rodeo_input_binary_type_t;
-// - for registering state -
typedef
enum
{
- rodeo_input_binary_Invalid = 0,
- rodeo_input_binary_Scancode,
- rodeo_input_binary_Mouse
+ rodeo_input_binary_state_Up = false,
+ rodeo_input_binary_state_Down = true
}
-rodeo_input_binary_type_t;
+rodeo_input_binary_state_t;
typedef
struct
{
union
{
- // binary types
- rodeo_input_scancode_t scancode;
- rodeo_input_mouse_t mouse;
- };
- union
- {
- rodeo_input_binary_type_t binary_type;
- };
- rodeo_input_type_t type;
-
+ rodeo_input_binary_state_t binary_state;
+ }
+ data;
+ rodeo_input_type_t input_type;
}
-rodeo_input_register_type_t;
+rodeo_input_any_state_t;
typedef
void
@@ -828,28 +806,42 @@ void
rodeo_input_any_state_t state
);
-// - for registering state end -
-
#define i_val rodeo_input_callback_function
#define i_tag input_callback_functions
-#include <stc/cvec.h>
+#include <stc/cset.h>
-#define i_key rodeo_input_scancode_t
-#define i_val cvec_input_callback_functions
-#define i_tag input_scancode_scene
-#include <stc/cmap.h>
+#define i_val rodeo_input_binary_scancode_t
+#define i_tag input_binary_scancodes
+#include <stc/cset.h>
-#define i_key rodeo_input_mouse_t
-#define i_val cvec_input_callback_functions
-#define i_tag input_mouse_scene
-#include <stc/cmap.h>
+#define i_val rodeo_input_binary_mouseButton_t
+#define i_tag input_binary_mouseButtons
+#include <stc/cset.h>
typedef
struct
{
- cmap_input_scancode_scene scancode;
- cmap_input_mouse_scene mouse;
+ uint32_t valid_types; // rodeo_input_type_t
+ //rodeo_input_callback_function *callback;
+ cset_input_callback_functions callbacks;
+ // binary
+ struct
+ {
+ cset_input_binary_scancodes scancodes;
+ cset_input_binary_mouseButtons mouse_buttons;
+ }
+ binary;
+
}
-rodeo_input_scene_t;
+rodeo_input_command_t;
-//typedef cmap_input_scene rodeo_input_scene_t;
+#define i_val rodeo_input_command_t*
+#define i_tag input_commands
+#include <stc/cset.h>
+
+typedef
+struct
+{
+ cset_input_commands commands;
+}
+rodeo_input_scene_t;
diff --git a/src/compile_flags.txt b/src/compile_flags.txt
index 2c81d8a..26d1cc4 100644
--- a/src/compile_flags.txt
+++ b/src/compile_flags.txt
@@ -9,3 +9,4 @@
-Wextra
-Wpedantic
-Wconversion
+-std=c99
diff --git a/src/input/irodeo_input.h b/src/input/irodeo_input_t.h
index 6cd9992..77e150e 100644
--- a/src/input/irodeo_input.h
+++ b/src/input/irodeo_input_t.h
@@ -1,4 +1,5 @@
+
// -- internal --
// public
#include "rodeo/input_t.h"
diff --git a/src/input/rodeo_input.c b/src/input/rodeo_input.c
index e8c736b..bbfbfcf 100644
--- a/src/input/rodeo_input.c
+++ b/src/input/rodeo_input.c
@@ -3,12 +3,13 @@
// public
#include "rodeo/input.h"
#include "irodeo_input.h"
+#include "irodeo_input_t.h"
#include "rodeo/log.h"
// -- external --
#include "SDL2/SDL.h"
-static irodeo_input_state_t state = {0};
+static irodeo_input_state_t istate = {0};
bool
rodeo_input_events_poll(void)
@@ -23,32 +24,39 @@ rodeo_input_events_poll(void)
return true;
}
break;
+ // - Binary -
case SDL_KEYUP:
case SDL_KEYDOWN:
{
- c_foreach(i, cset_input_scene, state.active_scenes)
+ c_foreach(i, cset_input_scene, istate.active_scenes)
{
- const cmap_input_scancode_scene_value *value = cmap_input_scancode_scene_get(
- &((*i.ref)->scancode),
- (rodeo_input_scancode_t)event.key.keysym.scancode
- );
- if(value == NULL)
+ rodeo_input_scene_t *scene = *i.ref;
+ c_foreach(j, cset_input_commands, scene->commands)
{
- continue;
- }
- else
- {
- rodeo_input_any_state_t key_state = {
- .binary_state = event.key.state,
- .type = rodeo_input_type_Binary
- };
- c_foreach(
- j,
- cvec_input_callback_functions,
- value->second
- )
+ rodeo_input_command_t *command = *j.ref;
+ const cset_input_binary_scancodes_value *value = cset_input_binary_scancodes_get(
+ &command->binary.scancodes,
+ (rodeo_input_binary_scancode_t)event.key.keysym.scancode
+ );
+
+ if(value == NULL)
+ {
+ continue;
+ }
+ else
{
- (**j.ref)(key_state);
+ rodeo_input_any_state_t key_state = {
+ .data.binary_state = event.key.state,
+ .input_type = rodeo_input_type_Binary
+ };
+ c_foreach(
+ k,
+ cset_input_callback_functions,
+ command->callbacks
+ )
+ {
+ (**k.ref)(key_state);
+ }
}
}
}
@@ -57,31 +65,36 @@ rodeo_input_events_poll(void)
case SDL_MOUSEBUTTONUP:
case SDL_MOUSEBUTTONDOWN:
{
- //event.button.button // which sdl mouse button it was
- //event.button.state // if thue button was clicked or released
- c_foreach(i, cset_input_scene, state.active_scenes)
+ c_foreach(i, cset_input_scene, istate.active_scenes)
{
- const cmap_input_mouse_scene_value *value = cmap_input_mouse_scene_get(
- &((*i.ref)->mouse),
- (rodeo_input_mouse_t)event.button.button
- );
- if(value == NULL)
+ rodeo_input_scene_t *scene = *i.ref;
+ c_foreach(j, cset_input_commands, scene->commands)
{
- continue;
- }
- else
- {
- rodeo_input_any_state_t key_state = {
- .binary_state = event.button.state,
- .type = rodeo_input_type_Binary
- };
- c_foreach(
- j,
- cvec_input_callback_functions,
- value->second
- )
+ rodeo_input_command_t *command = *j.ref;
+ const cset_input_binary_mouseButtons_value *value = cset_input_binary_mouseButtons_get(
+ &command->binary.mouse_buttons,
+ (rodeo_input_binary_mouseButton_t)event.button.button
+
+ );
+
+ if(value == NULL)
{
- (**j.ref)(key_state);
+ continue;
+ }
+ else
+ {
+ rodeo_input_any_state_t input_state = {
+ .data.binary_state = event.button.state,
+ .input_type = rodeo_input_type_Binary
+ };
+ c_foreach(
+ k,
+ cset_input_callback_functions,
+ command->callbacks
+ )
+ {
+ (**k.ref)(input_state);
+ }
}
}
}
@@ -93,77 +106,166 @@ rodeo_input_events_poll(void)
}
void
-rodeo_input_scene_activate(
- rodeo_input_scene_t *scene
+rodeo_input_command_register_callback(
+ rodeo_input_command_t *command,
+ rodeo_input_callback_function func
)
{
- cset_input_scene_insert(&state.active_scenes, scene);
+ const cset_input_callback_functions_value *callback = cset_input_callback_functions_get(&(command->callbacks), func);
+ if(callback == NULL)
+ {
+ cset_input_callback_functions_insert(&(command->callbacks), func);
+ return;
+ }
+ else
+ {
+ rodeo_log(
+ rodeo_logLevel_warning,
+ "Input already registered"
+ );
+ return;
+ }
}
void
-rodeo_input_scene_deactivate(
- rodeo_input_scene_t *scene
+rodeo_input_command_unregister_callback(
+ rodeo_input_command_t *command,
+ rodeo_input_callback_function func
)
{
- cset_input_scene_erase(&state.active_scenes, scene);
+ cset_input_callback_functions_value *callback =
+ cset_input_callback_functions_get_mut(&(command->callbacks), func);
+ if(callback != NULL)
+ {
+ cset_input_callback_functions_erase_entry(&(command->callbacks), callback);
+ return;
+ }
+ else
+ {
+ rodeo_log(
+ rodeo_logLevel_warning,
+ "Attempted to remove callback but it is not registered"
+ );
+ return;
+ }
+}
+
+rodeo_input_scene_t*
+rodeo_input_scene_create(void)
+{
+ rodeo_input_scene_t *result = malloc(sizeof(rodeo_input_scene_t));
+ *result = (rodeo_input_scene_t){0};
+ return result;
}
void
-rodeo_input_scene_register_callback(
- rodeo_input_callback_function func,
- rodeo_input_scene_t *scene,
- rodeo_input_register_type_t type
+rodeo_input_scene_destroy(rodeo_input_scene_t *scene)
+{
+ rodeo_input_scene_deactivate(scene);
+ cset_input_commands_drop(&scene->commands);
+ free(scene);
+}
+
+rodeo_input_command_t*
+rodeo_input_command_create(uint32_t input_type)
+{
+ rodeo_input_command_t *result = malloc(sizeof(rodeo_input_command_t));
+ *result = (rodeo_input_command_t)
+ {
+ .valid_types = input_type
+ };
+ return result;
+}
+
+void
+rodeo_input_command_destroy(rodeo_input_command_t *command)
+{
+ cset_input_binary_scancodes_drop(&command->binary.scancodes);
+ cset_input_binary_mouseButtons_drop(&command->binary.mouse_buttons);
+ cset_input_callback_functions_drop(&command->callbacks);
+ free(command);
+}
+
+bool
+rodeo_input_command_register_binary_scancode(
+ rodeo_input_command_t *input_command,
+ rodeo_input_binary_scancode_t scancode
)
{
- switch (type.type)
+ if((rodeo_input_type_Binary & input_command->valid_types) == 0)
{
- case rodeo_input_type_Binary:
- switch (type.binary_type) {
- case rodeo_input_binary_Scancode:
- {
- if(!cmap_input_scancode_scene_contains(&scene->scancode, type.scancode))
- {
- cmap_input_scancode_scene_insert(&scene->scancode, type.scancode, cvec_input_callback_functions_init());
- }
- cvec_input_callback_functions* callbacks = cmap_input_scancode_scene_at_mut(&scene->scancode, type.scancode);
- cvec_input_callback_functions_push(callbacks, func);
- }
- break;
+ rodeo_log(
+ rodeo_logLevel_error,
+ "Attempting to register input type which is invalid for this input command, failed to do so"
+ );
+ return false;
+ }
+ else
+ {
+ cset_input_binary_scancodes_insert(
+ &input_command->binary.scancodes,
+ scancode
+ );
+ return true;
+ }
+}
- case rodeo_input_binary_Mouse:
- {
- if(!cmap_input_mouse_scene_contains(&scene->mouse, type.mouse))
- {
- cmap_input_mouse_scene_insert(&scene->mouse, type.mouse, cvec_input_callback_functions_init());
- }
- cvec_input_callback_functions* callbacks = cmap_input_mouse_scene_at_mut(&scene->mouse, type.mouse);
- cvec_input_callback_functions_push(callbacks, func);
- }
- break;
-
- case rodeo_input_binary_Invalid:
- rodeo_log(
- rodeo_logLevel_error,
- "Failed to register invalid binary input type"
- );
- break;
- }
- break;
- case rodeo_input_type_Invalid:
- rodeo_log(
- rodeo_logLevel_error,
- "Failed to register invalid input type"
- );
- break;
+bool
+rodeo_input_command_register_binary_mouseButton(
+ rodeo_input_command_t *input_command,
+ rodeo_input_binary_mouseButton_t mouse_button
+)
+{
+ if((rodeo_input_type_Binary & input_command->valid_types) == 0)
+ {
+ rodeo_log(
+ rodeo_logLevel_error,
+ "Attempting to register input type which is invalid for this input command, failed to do so"
+ );
+ return false;
+ }
+ else
+ {
+ cset_input_binary_mouseButtons_insert(
+ &input_command->binary.mouse_buttons,
+ mouse_button
+ );
+ return true;
}
}
void
-rodeo_input_scene_unregister_callback(
- rodeo_input_callback_function func,
+rodeo_input_scene_register_command(
+ rodeo_input_scene_t *scene,
+ rodeo_input_command_t *command
+)
+{
+ cset_input_commands_insert(
+ &scene->commands,
+ command
+ );
+}
+
+void
+rodeo_input_scene_unregister_command(
rodeo_input_scene_t *scene,
- rodeo_input_register_type_t type
+ rodeo_input_command_t *command
)
{
+ cset_input_commands_erase(
+ &scene->commands,
+ command
+ );
+}
+
+void
+rodeo_input_scene_activate(rodeo_input_scene_t *scene)
+{
+ cset_input_scene_insert(&istate.active_scenes, scene);
+}
+void
+rodeo_input_scene_deactivate(rodeo_input_scene_t *scene)
+{
+ cset_input_scene_erase(&istate.active_scenes, scene);
}
diff --git a/src/rodeo.c b/src/rodeo.c
index dcac005..91ce4f8 100644
--- a/src/rodeo.c
+++ b/src/rodeo.c
@@ -306,6 +306,8 @@ rodeo_frame_begin(void)
irodeo_render_buffer_transient_alloc();
+ state.quit = rodeo_input_events_poll();
+
state.start_frame = state.end_frame;
}
@@ -316,7 +318,6 @@ rodeo_frame_end(void)
bgfx_frame(false);
- state.quit = rodeo_input_events_poll();
#ifndef __EMSCRIPTEN__
irodeo_frame_stall();
#endif