From d2f2f98850fdccb0cafd88bbf2f6b606d5bd9ebf Mon Sep 17 00:00:00 2001 From: Kp Date: Sun, 22 Dec 2019 05:34:08 +0000 Subject: [PATCH] Use symbolic STATE_NONE for kconfig entries with no state bit --- similar/main/kconfig.cpp | 1 + similar/main/kconfig.ui-table.cpp | 178 +++++++++++++++--------------- 2 files changed, 90 insertions(+), 89 deletions(-) diff --git a/similar/main/kconfig.cpp b/similar/main/kconfig.cpp index d69912b42..3a0c3266d 100644 --- a/similar/main/kconfig.cpp +++ b/similar/main/kconfig.cpp @@ -111,6 +111,7 @@ fix Cruise_speed=0; #define BT_JOY_BUTTON 3 #define BT_JOY_AXIS 4 #define BT_INVERT 5 +#define STATE_NONE 0 #define STATE_BIT1 1 #define STATE_BIT2 2 #define STATE_BIT3 4 diff --git a/similar/main/kconfig.ui-table.cpp b/similar/main/kconfig.ui-table.cpp index 61dce5096..f958bdac3 100644 --- a/similar/main/kconfig.ui-table.cpp +++ b/similar/main/kconfig.ui-table.cpp @@ -64,14 +64,14 @@ constexpr kc_item kc_keyboard[] = { {DXX_KCONFIG_UI_KEYBOARD_LABEL_X2, DXX_KCONFIG_UI_KEYBOARD_X2_GROUP1_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 0), DXX_KCONFIG_UI_KEYBOARD_INPUT_X2_C2, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_UDLR(), BT_KEY, STATE_BIT2, {&control_info::state_controls_t::fire_primary} }, {DXX_KCONFIG_UI_KEYBOARD_LABEL_X2, DXX_KCONFIG_UI_KEYBOARD_X2_GROUP1_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 1), DXX_KCONFIG_UI_KEYBOARD_INPUT_X2_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Fire secondary") DXX_KCONFIG_UI_UDLR(), BT_KEY, STATE_BIT1, {&control_info::state_controls_t::fire_secondary} }, {DXX_KCONFIG_UI_KEYBOARD_LABEL_X2, DXX_KCONFIG_UI_KEYBOARD_X2_GROUP1_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 1), DXX_KCONFIG_UI_KEYBOARD_INPUT_X2_C2, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_UDLR(), BT_KEY, STATE_BIT2, {&control_info::state_controls_t::fire_secondary} }, - {DXX_KCONFIG_UI_KEYBOARD_LABEL_X2, DXX_KCONFIG_UI_KEYBOARD_X2_GROUP1_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 2), DXX_KCONFIG_UI_KEYBOARD_INPUT_X2_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Fire flare") DXX_KCONFIG_UI_UDLR(), BT_KEY, 0, {&control_info::state_controls_t::fire_flare} }, - {DXX_KCONFIG_UI_KEYBOARD_LABEL_X2, DXX_KCONFIG_UI_KEYBOARD_X2_GROUP1_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 2), DXX_KCONFIG_UI_KEYBOARD_INPUT_X2_C2, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_UDLR(), BT_KEY, 0, {&control_info::state_controls_t::fire_flare} }, + {DXX_KCONFIG_UI_KEYBOARD_LABEL_X2, DXX_KCONFIG_UI_KEYBOARD_X2_GROUP1_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 2), DXX_KCONFIG_UI_KEYBOARD_INPUT_X2_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Fire flare") DXX_KCONFIG_UI_UDLR(), BT_KEY, STATE_NONE, {&control_info::state_controls_t::fire_flare} }, + {DXX_KCONFIG_UI_KEYBOARD_LABEL_X2, DXX_KCONFIG_UI_KEYBOARD_X2_GROUP1_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 2), DXX_KCONFIG_UI_KEYBOARD_INPUT_X2_C2, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_UDLR(), BT_KEY, STATE_NONE, {&control_info::state_controls_t::fire_flare} }, {DXX_KCONFIG_UI_KEYBOARD_LABEL_X2, DXX_KCONFIG_UI_KEYBOARD_X2_GROUP3_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 6), DXX_KCONFIG_UI_KEYBOARD_INPUT_X2_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Accelerate") DXX_KCONFIG_UI_UDLR(), BT_KEY, STATE_BIT1, {&control_info::state_controls_t::accelerate} }, {DXX_KCONFIG_UI_KEYBOARD_LABEL_X2, DXX_KCONFIG_UI_KEYBOARD_X2_GROUP3_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 6), DXX_KCONFIG_UI_KEYBOARD_INPUT_X2_C2, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_UDLR(), BT_KEY, STATE_BIT2, {&control_info::state_controls_t::accelerate} }, {DXX_KCONFIG_UI_KEYBOARD_LABEL_X2, DXX_KCONFIG_UI_KEYBOARD_X2_GROUP3_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 7), DXX_KCONFIG_UI_KEYBOARD_INPUT_X2_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Reverse") DXX_KCONFIG_UI_UDLR(), BT_KEY, STATE_BIT1, {&control_info::state_controls_t::reverse} }, {DXX_KCONFIG_UI_KEYBOARD_LABEL_X2, DXX_KCONFIG_UI_KEYBOARD_X2_GROUP3_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 7), DXX_KCONFIG_UI_KEYBOARD_INPUT_X2_C2, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_UDLR(), BT_KEY, STATE_BIT2, {&control_info::state_controls_t::reverse} }, - {DXX_KCONFIG_UI_KEYBOARD_LABEL_X2, DXX_KCONFIG_UI_KEYBOARD_X2_GROUP1_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 3), DXX_KCONFIG_UI_KEYBOARD_INPUT_X2_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Drop Bomb") DXX_KCONFIG_UI_UDLR(), BT_KEY, 0, {&control_info::state_controls_t::drop_bomb} }, - {DXX_KCONFIG_UI_KEYBOARD_LABEL_X2, DXX_KCONFIG_UI_KEYBOARD_X2_GROUP1_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 3), DXX_KCONFIG_UI_KEYBOARD_INPUT_X2_C2, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_UDLR(), BT_KEY, 0, {&control_info::state_controls_t::drop_bomb} }, + {DXX_KCONFIG_UI_KEYBOARD_LABEL_X2, DXX_KCONFIG_UI_KEYBOARD_X2_GROUP1_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 3), DXX_KCONFIG_UI_KEYBOARD_INPUT_X2_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Drop Bomb") DXX_KCONFIG_UI_UDLR(), BT_KEY, STATE_NONE, {&control_info::state_controls_t::drop_bomb} }, + {DXX_KCONFIG_UI_KEYBOARD_LABEL_X2, DXX_KCONFIG_UI_KEYBOARD_X2_GROUP1_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 3), DXX_KCONFIG_UI_KEYBOARD_INPUT_X2_C2, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_UDLR(), BT_KEY, STATE_NONE, {&control_info::state_controls_t::drop_bomb} }, {DXX_KCONFIG_UI_KEYBOARD_LABEL_X2, DXX_KCONFIG_UI_KEYBOARD_X2_GROUP2_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 4), DXX_KCONFIG_UI_KEYBOARD_INPUT_X2_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("REAR VIEW") DXX_KCONFIG_UI_UDLR(), BT_KEY, STATE_BIT1, {&control_info::state_controls_t::rear_view} }, {DXX_KCONFIG_UI_KEYBOARD_LABEL_X2, DXX_KCONFIG_UI_KEYBOARD_X2_GROUP2_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 4), DXX_KCONFIG_UI_KEYBOARD_INPUT_X2_C2, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_UDLR(), BT_KEY, STATE_BIT2, {&control_info::state_controls_t::rear_view} }, #if defined(DXX_BUILD_DESCENT_I) @@ -79,15 +79,15 @@ constexpr kc_item kc_keyboard[] = { {DXX_KCONFIG_UI_KEYBOARD_LABEL_X2, DXX_KCONFIG_UI_KEYBOARD_X2_GROUP4_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 8), DXX_KCONFIG_UI_KEYBOARD_INPUT_X2_C2, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_UDLR(), BT_KEY, STATE_BIT2, {&control_info::state_controls_t::cruise_plus} }, {DXX_KCONFIG_UI_KEYBOARD_LABEL_X2, DXX_KCONFIG_UI_KEYBOARD_X2_GROUP4_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 9), DXX_KCONFIG_UI_KEYBOARD_INPUT_X2_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Cruise Slower") DXX_KCONFIG_UI_UDLR(), BT_KEY, STATE_BIT1, {&control_info::state_controls_t::cruise_minus} }, {DXX_KCONFIG_UI_KEYBOARD_LABEL_X2, DXX_KCONFIG_UI_KEYBOARD_X2_GROUP4_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 9), DXX_KCONFIG_UI_KEYBOARD_INPUT_X2_C2, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_UDLR(), BT_KEY, STATE_BIT2, {&control_info::state_controls_t::cruise_minus} }, - {DXX_KCONFIG_UI_KEYBOARD_LABEL_X2, DXX_KCONFIG_UI_KEYBOARD_X2_GROUP4_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT(10), DXX_KCONFIG_UI_KEYBOARD_INPUT_X2_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Cruise Off") DXX_KCONFIG_UI_UDLR(), BT_KEY, 0, {&control_info::state_controls_t::cruise_off} }, - {DXX_KCONFIG_UI_KEYBOARD_LABEL_X2, DXX_KCONFIG_UI_KEYBOARD_X2_GROUP4_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT(10), DXX_KCONFIG_UI_KEYBOARD_INPUT_X2_C2, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_UDLR(), BT_KEY, 0, {&control_info::state_controls_t::cruise_off} }, + {DXX_KCONFIG_UI_KEYBOARD_LABEL_X2, DXX_KCONFIG_UI_KEYBOARD_X2_GROUP4_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT(10), DXX_KCONFIG_UI_KEYBOARD_INPUT_X2_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Cruise Off") DXX_KCONFIG_UI_UDLR(), BT_KEY, STATE_NONE, {&control_info::state_controls_t::cruise_off} }, + {DXX_KCONFIG_UI_KEYBOARD_LABEL_X2, DXX_KCONFIG_UI_KEYBOARD_X2_GROUP4_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT(10), DXX_KCONFIG_UI_KEYBOARD_INPUT_X2_C2, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_UDLR(), BT_KEY, STATE_NONE, {&control_info::state_controls_t::cruise_off} }, #elif defined(DXX_BUILD_DESCENT_II) {DXX_KCONFIG_UI_KEYBOARD_LABEL_X2, DXX_KCONFIG_UI_KEYBOARD_X2_GROUP4_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 9), DXX_KCONFIG_UI_KEYBOARD_INPUT_X2_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Cruise Faster") DXX_KCONFIG_UI_UDLR(), BT_KEY, STATE_BIT1, {&control_info::state_controls_t::cruise_plus} }, {DXX_KCONFIG_UI_KEYBOARD_LABEL_X2, DXX_KCONFIG_UI_KEYBOARD_X2_GROUP4_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 9), DXX_KCONFIG_UI_KEYBOARD_INPUT_X2_C2, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_UDLR(), BT_KEY, STATE_BIT2, {&control_info::state_controls_t::cruise_plus} }, {DXX_KCONFIG_UI_KEYBOARD_LABEL_X2, DXX_KCONFIG_UI_KEYBOARD_X2_GROUP4_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT(10), DXX_KCONFIG_UI_KEYBOARD_INPUT_X2_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Cruise Slower") DXX_KCONFIG_UI_UDLR(), BT_KEY, STATE_BIT1, {&control_info::state_controls_t::cruise_minus} }, {DXX_KCONFIG_UI_KEYBOARD_LABEL_X2, DXX_KCONFIG_UI_KEYBOARD_X2_GROUP4_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT(10), DXX_KCONFIG_UI_KEYBOARD_INPUT_X2_C2, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_UDLR(), BT_KEY, STATE_BIT2, {&control_info::state_controls_t::cruise_minus} }, - {DXX_KCONFIG_UI_KEYBOARD_LABEL_X2, DXX_KCONFIG_UI_KEYBOARD_X2_GROUP4_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT(11), DXX_KCONFIG_UI_KEYBOARD_INPUT_X2_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Cruise Off") DXX_KCONFIG_UI_UDLR(), BT_KEY, 0, {&control_info::state_controls_t::cruise_off} }, - {DXX_KCONFIG_UI_KEYBOARD_LABEL_X2, DXX_KCONFIG_UI_KEYBOARD_X2_GROUP4_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT(11), DXX_KCONFIG_UI_KEYBOARD_INPUT_X2_C2, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_UDLR(), BT_KEY, 0, {&control_info::state_controls_t::cruise_off} }, + {DXX_KCONFIG_UI_KEYBOARD_LABEL_X2, DXX_KCONFIG_UI_KEYBOARD_X2_GROUP4_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT(11), DXX_KCONFIG_UI_KEYBOARD_INPUT_X2_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Cruise Off") DXX_KCONFIG_UI_UDLR(), BT_KEY, STATE_NONE, {&control_info::state_controls_t::cruise_off} }, + {DXX_KCONFIG_UI_KEYBOARD_LABEL_X2, DXX_KCONFIG_UI_KEYBOARD_X2_GROUP4_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT(11), DXX_KCONFIG_UI_KEYBOARD_INPUT_X2_C2, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_UDLR(), BT_KEY, STATE_NONE, {&control_info::state_controls_t::cruise_off} }, #endif {DXX_KCONFIG_UI_KEYBOARD_LABEL_X2, DXX_KCONFIG_UI_KEYBOARD_X2_GROUP2_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 5), DXX_KCONFIG_UI_KEYBOARD_INPUT_X2_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Automap") DXX_KCONFIG_UI_UDLR(), BT_KEY, STATE_BIT1, {&control_info::state_controls_t::automap} }, {DXX_KCONFIG_UI_KEYBOARD_LABEL_X2, DXX_KCONFIG_UI_KEYBOARD_X2_GROUP2_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 5), DXX_KCONFIG_UI_KEYBOARD_INPUT_X2_C2, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_UDLR(), BT_KEY, STATE_BIT2, {&control_info::state_controls_t::automap} }, @@ -95,16 +95,16 @@ constexpr kc_item kc_keyboard[] = { {DXX_KCONFIG_UI_KEYBOARD_LABEL_X2, DXX_KCONFIG_UI_KEYBOARD_X2_GROUP3_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 8), DXX_KCONFIG_UI_KEYBOARD_INPUT_X2_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Afterburner") DXX_KCONFIG_UI_UDLR(), BT_KEY, STATE_BIT1, {&control_info::state_controls_t::afterburner} }, {DXX_KCONFIG_UI_KEYBOARD_LABEL_X2, DXX_KCONFIG_UI_KEYBOARD_X2_GROUP3_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 8), DXX_KCONFIG_UI_KEYBOARD_INPUT_X2_C2, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_UDLR(), BT_KEY, STATE_BIT2, {&control_info::state_controls_t::afterburner} }, #endif - {DXX_KCONFIG_UI_KEYBOARD_LABEL_X1, DXX_KCONFIG_UI_KEYBOARD_X1_GROUP4_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT(12), DXX_KCONFIG_UI_KEYBOARD_INPUT_X1_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Cycle Primary") DXX_KCONFIG_UI_UDLR(), BT_KEY, 0, {&control_info::state_controls_t::cycle_primary} }, - {DXX_KCONFIG_UI_KEYBOARD_LABEL_X1, DXX_KCONFIG_UI_KEYBOARD_X1_GROUP4_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT(12), DXX_KCONFIG_UI_KEYBOARD_INPUT_X1_C2, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_UDLR(), BT_KEY, 0, {&control_info::state_controls_t::cycle_primary} }, - {DXX_KCONFIG_UI_KEYBOARD_LABEL_X1, DXX_KCONFIG_UI_KEYBOARD_X1_GROUP4_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT(13), DXX_KCONFIG_UI_KEYBOARD_INPUT_X1_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Cycle Second.") DXX_KCONFIG_UI_UDLR(), BT_KEY, 0, {&control_info::state_controls_t::cycle_secondary} }, - {DXX_KCONFIG_UI_KEYBOARD_LABEL_X1, DXX_KCONFIG_UI_KEYBOARD_X1_GROUP4_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT(13), DXX_KCONFIG_UI_KEYBOARD_INPUT_X1_C2, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_UDLR(), BT_KEY, 0, {&control_info::state_controls_t::cycle_secondary} }, + {DXX_KCONFIG_UI_KEYBOARD_LABEL_X1, DXX_KCONFIG_UI_KEYBOARD_X1_GROUP4_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT(12), DXX_KCONFIG_UI_KEYBOARD_INPUT_X1_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Cycle Primary") DXX_KCONFIG_UI_UDLR(), BT_KEY, STATE_NONE, {&control_info::state_controls_t::cycle_primary} }, + {DXX_KCONFIG_UI_KEYBOARD_LABEL_X1, DXX_KCONFIG_UI_KEYBOARD_X1_GROUP4_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT(12), DXX_KCONFIG_UI_KEYBOARD_INPUT_X1_C2, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_UDLR(), BT_KEY, STATE_NONE, {&control_info::state_controls_t::cycle_primary} }, + {DXX_KCONFIG_UI_KEYBOARD_LABEL_X1, DXX_KCONFIG_UI_KEYBOARD_X1_GROUP4_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT(13), DXX_KCONFIG_UI_KEYBOARD_INPUT_X1_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Cycle Second.") DXX_KCONFIG_UI_UDLR(), BT_KEY, STATE_NONE, {&control_info::state_controls_t::cycle_secondary} }, + {DXX_KCONFIG_UI_KEYBOARD_LABEL_X1, DXX_KCONFIG_UI_KEYBOARD_X1_GROUP4_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT(13), DXX_KCONFIG_UI_KEYBOARD_INPUT_X1_C2, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_UDLR(), BT_KEY, STATE_NONE, {&control_info::state_controls_t::cycle_secondary} }, #if defined(DXX_BUILD_DESCENT_II) - {DXX_KCONFIG_UI_KEYBOARD_LABEL_X2, DXX_KCONFIG_UI_KEYBOARD_X2_GROUP5_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT(12), DXX_KCONFIG_UI_KEYBOARD_INPUT_X2_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Headlight") DXX_KCONFIG_UI_UDLR(), BT_KEY, 0, {&control_info::state_controls_t::headlight} }, - {DXX_KCONFIG_UI_KEYBOARD_LABEL_X2, DXX_KCONFIG_UI_KEYBOARD_X2_GROUP5_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT(12), DXX_KCONFIG_UI_KEYBOARD_INPUT_X2_C2, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_UDLR(), BT_KEY, 0, {&control_info::state_controls_t::headlight} }, + {DXX_KCONFIG_UI_KEYBOARD_LABEL_X2, DXX_KCONFIG_UI_KEYBOARD_X2_GROUP5_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT(12), DXX_KCONFIG_UI_KEYBOARD_INPUT_X2_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Headlight") DXX_KCONFIG_UI_UDLR(), BT_KEY, STATE_NONE, {&control_info::state_controls_t::headlight} }, + {DXX_KCONFIG_UI_KEYBOARD_LABEL_X2, DXX_KCONFIG_UI_KEYBOARD_X2_GROUP5_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT(12), DXX_KCONFIG_UI_KEYBOARD_INPUT_X2_C2, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_UDLR(), BT_KEY, STATE_NONE, {&control_info::state_controls_t::headlight} }, {DXX_KCONFIG_UI_KEYBOARD_LABEL_X2, DXX_KCONFIG_UI_KEYBOARD_X2_GROUP5_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT(13), DXX_KCONFIG_UI_KEYBOARD_INPUT_X2_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Energy->Shield") DXX_KCONFIG_UI_UDLR(), BT_KEY, STATE_BIT1, {&control_info::state_controls_t::energy_to_shield} }, {DXX_KCONFIG_UI_KEYBOARD_LABEL_X2, DXX_KCONFIG_UI_KEYBOARD_X2_GROUP5_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT(13), DXX_KCONFIG_UI_KEYBOARD_INPUT_X2_C2, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_UDLR(), BT_KEY, STATE_BIT2, {&control_info::state_controls_t::energy_to_shield} }, - {DXX_KCONFIG_UI_KEYBOARD_LABEL_X2, DXX_KCONFIG_UI_KEYBOARD_X2_GROUP5_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT(14), DXX_KCONFIG_UI_KEYBOARD_INPUT_X2_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Toggle Bomb") DXX_KCONFIG_UI_UDLR(), BT_KEY, 0, {&control_info::state_controls_t::toggle_bomb} }, + {DXX_KCONFIG_UI_KEYBOARD_LABEL_X2, DXX_KCONFIG_UI_KEYBOARD_X2_GROUP5_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT(14), DXX_KCONFIG_UI_KEYBOARD_INPUT_X2_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Toggle Bomb") DXX_KCONFIG_UI_UDLR(), BT_KEY, STATE_NONE, {&control_info::state_controls_t::toggle_bomb} }, #endif }; @@ -144,7 +144,7 @@ constexpr kc_item kc_joystick[] = { {DXX_KCONFIG_UI_JOYSTICK_BUTTONS_LABEL_X1, DXX_KCONFIG_UI_JOYSTICK_BUTTONS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 1), DXX_KCONFIG_UI_JOYSTICK_BUTTONS_INPUT_X1_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Fire secondary") DXX_KCONFIG_UI_UDLR(), BT_JOY_BUTTON, STATE_BIT3, {&control_info::state_controls_t::fire_secondary} }, {DXX_KCONFIG_UI_JOYSTICK_BUTTONS_LABEL_X1, DXX_KCONFIG_UI_JOYSTICK_BUTTONS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 4), DXX_KCONFIG_UI_JOYSTICK_BUTTONS_INPUT_X1_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Accelerate") DXX_KCONFIG_UI_UDLR(), BT_JOY_BUTTON, STATE_BIT3, {&control_info::state_controls_t::accelerate} }, {DXX_KCONFIG_UI_JOYSTICK_BUTTONS_LABEL_X1, DXX_KCONFIG_UI_JOYSTICK_BUTTONS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 5), DXX_KCONFIG_UI_JOYSTICK_BUTTONS_INPUT_X1_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Reverse") DXX_KCONFIG_UI_UDLR(), BT_JOY_BUTTON, STATE_BIT3, {&control_info::state_controls_t::reverse} }, - {DXX_KCONFIG_UI_JOYSTICK_BUTTONS_LABEL_X1, DXX_KCONFIG_UI_JOYSTICK_BUTTONS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 2), DXX_KCONFIG_UI_JOYSTICK_BUTTONS_INPUT_X1_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Fire flare") DXX_KCONFIG_UI_UDLR(), BT_JOY_BUTTON, 0, {&control_info::state_controls_t::fire_flare} }, + {DXX_KCONFIG_UI_JOYSTICK_BUTTONS_LABEL_X1, DXX_KCONFIG_UI_JOYSTICK_BUTTONS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 2), DXX_KCONFIG_UI_JOYSTICK_BUTTONS_INPUT_X1_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Fire flare") DXX_KCONFIG_UI_UDLR(), BT_JOY_BUTTON, STATE_NONE, {&control_info::state_controls_t::fire_flare} }, {DXX_KCONFIG_UI_JOYSTICK_BUTTONS_LABEL_X2, DXX_KCONFIG_UI_JOYSTICK_BUTTONS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 0), DXX_KCONFIG_UI_JOYSTICK_BUTTONS_INPUT_X2_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Slide on") DXX_KCONFIG_UI_UDLR(), BT_JOY_BUTTON, STATE_BIT3, {&control_info::state_controls_t::slide_on} }, {DXX_KCONFIG_UI_JOYSTICK_BUTTONS_LABEL_X2, DXX_KCONFIG_UI_JOYSTICK_BUTTONS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 1), DXX_KCONFIG_UI_JOYSTICK_BUTTONS_INPUT_X2_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Slide left") DXX_KCONFIG_UI_UDLR(), BT_JOY_BUTTON, STATE_BIT3, {&control_info::state_controls_t::btn_slide_left} }, {DXX_KCONFIG_UI_JOYSTICK_BUTTONS_LABEL_X2, DXX_KCONFIG_UI_JOYSTICK_BUTTONS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 2), DXX_KCONFIG_UI_JOYSTICK_BUTTONS_INPUT_X2_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Slide right") DXX_KCONFIG_UI_UDLR(), BT_JOY_BUTTON, STATE_BIT3, {&control_info::state_controls_t::btn_slide_right} }, @@ -155,36 +155,36 @@ constexpr kc_item kc_joystick[] = { {DXX_KCONFIG_UI_JOYSTICK_BUTTONS_LABEL_X2, DXX_KCONFIG_UI_JOYSTICK_BUTTONS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 7), DXX_KCONFIG_UI_JOYSTICK_BUTTONS_INPUT_X2_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Bank right") DXX_KCONFIG_UI_UDLR(), BT_JOY_BUTTON, STATE_BIT3, {&control_info::state_controls_t::btn_bank_right} }, #endif #if DXX_MAX_AXES_PER_JOYSTICK - {DXX_KCONFIG_UI_JOYSTICK_AXES_LABEL_X1, DXX_KCONFIG_UI_JOYSTICK_AXES_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 2), DXX_KCONFIG_UI_JOYSTICK_AXES_INPUT_X1_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_ENUM(pitch) DXX_KCONFIG_UI_LABEL("Pitch U/D") DXX_KCONFIG_UI_UDLR(), BT_JOY_AXIS, 0, {nullptr} }, - {DXX_KCONFIG_UI_JOYSTICK_AXES_LABEL_X1, DXX_KCONFIG_UI_JOYSTICK_AXES_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 2), DXX_KCONFIG_UI_JOYSTICK_AXES_INPUT_X1_CI, DXX_KCONFIG_UI_INVERT_FLAG_WIDTH, DXX_KCONFIG_UI_UDLR(), BT_INVERT, 0, {nullptr} }, - {DXX_KCONFIG_UI_JOYSTICK_AXES_LABEL_X1, DXX_KCONFIG_UI_JOYSTICK_AXES_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 3), DXX_KCONFIG_UI_JOYSTICK_AXES_INPUT_X1_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_ENUM(turn) DXX_KCONFIG_UI_LABEL("Turn L/R") DXX_KCONFIG_UI_UDLR(), BT_JOY_AXIS, 0, {nullptr} }, - {DXX_KCONFIG_UI_JOYSTICK_AXES_LABEL_X1, DXX_KCONFIG_UI_JOYSTICK_AXES_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 3), DXX_KCONFIG_UI_JOYSTICK_AXES_INPUT_X1_CI, DXX_KCONFIG_UI_INVERT_FLAG_WIDTH, DXX_KCONFIG_UI_UDLR(), BT_INVERT, 0, {nullptr} }, - {DXX_KCONFIG_UI_JOYSTICK_AXES_LABEL_X2, DXX_KCONFIG_UI_JOYSTICK_AXES_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 2), DXX_KCONFIG_UI_JOYSTICK_AXES_INPUT_X2_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_ENUM(slide_lr) DXX_KCONFIG_UI_LABEL("Slide L/R") DXX_KCONFIG_UI_UDLR(), BT_JOY_AXIS, 0, {nullptr} }, - {DXX_KCONFIG_UI_JOYSTICK_AXES_LABEL_X2, DXX_KCONFIG_UI_JOYSTICK_AXES_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 2), DXX_KCONFIG_UI_JOYSTICK_AXES_INPUT_X2_CI, DXX_KCONFIG_UI_INVERT_FLAG_WIDTH, DXX_KCONFIG_UI_UDLR(), BT_INVERT, 0, {nullptr} }, - {DXX_KCONFIG_UI_JOYSTICK_AXES_LABEL_X2, DXX_KCONFIG_UI_JOYSTICK_AXES_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 3), DXX_KCONFIG_UI_JOYSTICK_AXES_INPUT_X2_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_ENUM(slide_ud) DXX_KCONFIG_UI_LABEL("Slide U/D") DXX_KCONFIG_UI_UDLR(), BT_JOY_AXIS, 0, {nullptr} }, - {DXX_KCONFIG_UI_JOYSTICK_AXES_LABEL_X2, DXX_KCONFIG_UI_JOYSTICK_AXES_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 3), DXX_KCONFIG_UI_JOYSTICK_AXES_INPUT_X2_CI, DXX_KCONFIG_UI_INVERT_FLAG_WIDTH, DXX_KCONFIG_UI_UDLR(), BT_INVERT, 0, {nullptr} }, - {DXX_KCONFIG_UI_JOYSTICK_AXES_LABEL_X2, DXX_KCONFIG_UI_JOYSTICK_AXES_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 4), DXX_KCONFIG_UI_JOYSTICK_AXES_INPUT_X2_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_ENUM(bank) DXX_KCONFIG_UI_LABEL("Bank L/R") DXX_KCONFIG_UI_UDLR(), BT_JOY_AXIS, 0, {nullptr} }, - {DXX_KCONFIG_UI_JOYSTICK_AXES_LABEL_X2, DXX_KCONFIG_UI_JOYSTICK_AXES_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 4), DXX_KCONFIG_UI_JOYSTICK_AXES_INPUT_X2_CI, DXX_KCONFIG_UI_INVERT_FLAG_WIDTH, DXX_KCONFIG_UI_UDLR(), BT_INVERT, 0, {nullptr} }, - {DXX_KCONFIG_UI_JOYSTICK_AXES_LABEL_X2, DXX_KCONFIG_UI_JOYSTICK_AXES_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 5), DXX_KCONFIG_UI_JOYSTICK_AXES_INPUT_X2_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_ENUM(throttle) DXX_KCONFIG_UI_LABEL("Throttle") DXX_KCONFIG_UI_UDLR(), BT_JOY_AXIS, 0, {nullptr} }, - {DXX_KCONFIG_UI_JOYSTICK_AXES_LABEL_X2, DXX_KCONFIG_UI_JOYSTICK_AXES_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 5), DXX_KCONFIG_UI_JOYSTICK_AXES_INPUT_X2_CI, DXX_KCONFIG_UI_INVERT_FLAG_WIDTH, DXX_KCONFIG_UI_UDLR(), BT_INVERT, 0, {nullptr} }, + {DXX_KCONFIG_UI_JOYSTICK_AXES_LABEL_X1, DXX_KCONFIG_UI_JOYSTICK_AXES_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 2), DXX_KCONFIG_UI_JOYSTICK_AXES_INPUT_X1_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_ENUM(pitch) DXX_KCONFIG_UI_LABEL("Pitch U/D") DXX_KCONFIG_UI_UDLR(), BT_JOY_AXIS, STATE_NONE, {nullptr} }, + {DXX_KCONFIG_UI_JOYSTICK_AXES_LABEL_X1, DXX_KCONFIG_UI_JOYSTICK_AXES_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 2), DXX_KCONFIG_UI_JOYSTICK_AXES_INPUT_X1_CI, DXX_KCONFIG_UI_INVERT_FLAG_WIDTH, DXX_KCONFIG_UI_UDLR(), BT_INVERT, STATE_NONE, {nullptr} }, + {DXX_KCONFIG_UI_JOYSTICK_AXES_LABEL_X1, DXX_KCONFIG_UI_JOYSTICK_AXES_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 3), DXX_KCONFIG_UI_JOYSTICK_AXES_INPUT_X1_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_ENUM(turn) DXX_KCONFIG_UI_LABEL("Turn L/R") DXX_KCONFIG_UI_UDLR(), BT_JOY_AXIS, STATE_NONE, {nullptr} }, + {DXX_KCONFIG_UI_JOYSTICK_AXES_LABEL_X1, DXX_KCONFIG_UI_JOYSTICK_AXES_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 3), DXX_KCONFIG_UI_JOYSTICK_AXES_INPUT_X1_CI, DXX_KCONFIG_UI_INVERT_FLAG_WIDTH, DXX_KCONFIG_UI_UDLR(), BT_INVERT, STATE_NONE, {nullptr} }, + {DXX_KCONFIG_UI_JOYSTICK_AXES_LABEL_X2, DXX_KCONFIG_UI_JOYSTICK_AXES_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 2), DXX_KCONFIG_UI_JOYSTICK_AXES_INPUT_X2_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_ENUM(slide_lr) DXX_KCONFIG_UI_LABEL("Slide L/R") DXX_KCONFIG_UI_UDLR(), BT_JOY_AXIS, STATE_NONE, {nullptr} }, + {DXX_KCONFIG_UI_JOYSTICK_AXES_LABEL_X2, DXX_KCONFIG_UI_JOYSTICK_AXES_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 2), DXX_KCONFIG_UI_JOYSTICK_AXES_INPUT_X2_CI, DXX_KCONFIG_UI_INVERT_FLAG_WIDTH, DXX_KCONFIG_UI_UDLR(), BT_INVERT, STATE_NONE, {nullptr} }, + {DXX_KCONFIG_UI_JOYSTICK_AXES_LABEL_X2, DXX_KCONFIG_UI_JOYSTICK_AXES_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 3), DXX_KCONFIG_UI_JOYSTICK_AXES_INPUT_X2_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_ENUM(slide_ud) DXX_KCONFIG_UI_LABEL("Slide U/D") DXX_KCONFIG_UI_UDLR(), BT_JOY_AXIS, STATE_NONE, {nullptr} }, + {DXX_KCONFIG_UI_JOYSTICK_AXES_LABEL_X2, DXX_KCONFIG_UI_JOYSTICK_AXES_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 3), DXX_KCONFIG_UI_JOYSTICK_AXES_INPUT_X2_CI, DXX_KCONFIG_UI_INVERT_FLAG_WIDTH, DXX_KCONFIG_UI_UDLR(), BT_INVERT, STATE_NONE, {nullptr} }, + {DXX_KCONFIG_UI_JOYSTICK_AXES_LABEL_X2, DXX_KCONFIG_UI_JOYSTICK_AXES_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 4), DXX_KCONFIG_UI_JOYSTICK_AXES_INPUT_X2_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_ENUM(bank) DXX_KCONFIG_UI_LABEL("Bank L/R") DXX_KCONFIG_UI_UDLR(), BT_JOY_AXIS, STATE_NONE, {nullptr} }, + {DXX_KCONFIG_UI_JOYSTICK_AXES_LABEL_X2, DXX_KCONFIG_UI_JOYSTICK_AXES_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 4), DXX_KCONFIG_UI_JOYSTICK_AXES_INPUT_X2_CI, DXX_KCONFIG_UI_INVERT_FLAG_WIDTH, DXX_KCONFIG_UI_UDLR(), BT_INVERT, STATE_NONE, {nullptr} }, + {DXX_KCONFIG_UI_JOYSTICK_AXES_LABEL_X2, DXX_KCONFIG_UI_JOYSTICK_AXES_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 5), DXX_KCONFIG_UI_JOYSTICK_AXES_INPUT_X2_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_ENUM(throttle) DXX_KCONFIG_UI_LABEL("Throttle") DXX_KCONFIG_UI_UDLR(), BT_JOY_AXIS, STATE_NONE, {nullptr} }, + {DXX_KCONFIG_UI_JOYSTICK_AXES_LABEL_X2, DXX_KCONFIG_UI_JOYSTICK_AXES_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 5), DXX_KCONFIG_UI_JOYSTICK_AXES_INPUT_X2_CI, DXX_KCONFIG_UI_INVERT_FLAG_WIDTH, DXX_KCONFIG_UI_UDLR(), BT_INVERT, STATE_NONE, {nullptr} }, #endif #if DXX_MAX_BUTTONS_PER_JOYSTICK || DXX_MAX_HATS_PER_JOYSTICK {DXX_KCONFIG_UI_JOYSTICK_BUTTONS_LABEL_X1, DXX_KCONFIG_UI_JOYSTICK_BUTTONS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 6), DXX_KCONFIG_UI_JOYSTICK_BUTTONS_INPUT_X1_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Rear view") DXX_KCONFIG_UI_UDLR(), BT_JOY_BUTTON, STATE_BIT3, {&control_info::state_controls_t::rear_view} }, - {DXX_KCONFIG_UI_JOYSTICK_BUTTONS_LABEL_X1, DXX_KCONFIG_UI_JOYSTICK_BUTTONS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 3), DXX_KCONFIG_UI_JOYSTICK_BUTTONS_INPUT_X1_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Drop bomb") DXX_KCONFIG_UI_UDLR(), BT_JOY_BUTTON, 0, {&control_info::state_controls_t::drop_bomb} }, + {DXX_KCONFIG_UI_JOYSTICK_BUTTONS_LABEL_X1, DXX_KCONFIG_UI_JOYSTICK_BUTTONS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 3), DXX_KCONFIG_UI_JOYSTICK_BUTTONS_INPUT_X1_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Drop bomb") DXX_KCONFIG_UI_UDLR(), BT_JOY_BUTTON, STATE_NONE, {&control_info::state_controls_t::drop_bomb} }, #if defined(DXX_BUILD_DESCENT_I) {DXX_KCONFIG_UI_JOYSTICK_BUTTONS_LABEL_X1, DXX_KCONFIG_UI_JOYSTICK_BUTTONS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 7), DXX_KCONFIG_UI_JOYSTICK_BUTTONS_INPUT_X1_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Automap") DXX_KCONFIG_UI_UDLR(), BT_JOY_BUTTON, STATE_BIT3, {&control_info::state_controls_t::automap} }, {DXX_KCONFIG_UI_JOYSTICK_BUTTONS_LABEL_X1, DXX_KCONFIG_UI_JOYSTICK_BUTTONS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 7), DXX_KCONFIG_UI_JOYSTICK_BUTTONS_INPUT_X1_C2, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_UDLR(), BT_JOY_BUTTON, STATE_BIT4, {&control_info::state_controls_t::automap} }, #elif defined(DXX_BUILD_DESCENT_II) {DXX_KCONFIG_UI_JOYSTICK_BUTTONS_LABEL_X1, DXX_KCONFIG_UI_JOYSTICK_BUTTONS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 7), DXX_KCONFIG_UI_JOYSTICK_BUTTONS_INPUT_X1_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Afterburner") DXX_KCONFIG_UI_UDLR(), BT_JOY_BUTTON, STATE_BIT3, {&control_info::state_controls_t::afterburner} }, - {DXX_KCONFIG_UI_JOYSTICK_BUTTONS_LABEL_X2, DXX_KCONFIG_UI_JOYSTICK_BUTTONS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 8), DXX_KCONFIG_UI_JOYSTICK_BUTTONS_INPUT_X2_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Cycle Primary") DXX_KCONFIG_UI_UDLR(), BT_JOY_BUTTON, 0, {&control_info::state_controls_t::cycle_primary} }, - {DXX_KCONFIG_UI_JOYSTICK_BUTTONS_LABEL_X2, DXX_KCONFIG_UI_JOYSTICK_BUTTONS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 9), DXX_KCONFIG_UI_JOYSTICK_BUTTONS_INPUT_X2_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Cycle Secondary") DXX_KCONFIG_UI_UDLR(), BT_JOY_BUTTON, 0, {&control_info::state_controls_t::cycle_secondary} }, - {DXX_KCONFIG_UI_JOYSTICK_BUTTONS_LABEL_X1, DXX_KCONFIG_UI_JOYSTICK_BUTTONS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 8), DXX_KCONFIG_UI_JOYSTICK_BUTTONS_INPUT_X1_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Headlight") DXX_KCONFIG_UI_UDLR(), BT_JOY_BUTTON, 0, {&control_info::state_controls_t::headlight} }, + {DXX_KCONFIG_UI_JOYSTICK_BUTTONS_LABEL_X2, DXX_KCONFIG_UI_JOYSTICK_BUTTONS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 8), DXX_KCONFIG_UI_JOYSTICK_BUTTONS_INPUT_X2_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Cycle Primary") DXX_KCONFIG_UI_UDLR(), BT_JOY_BUTTON, STATE_NONE, {&control_info::state_controls_t::cycle_primary} }, + {DXX_KCONFIG_UI_JOYSTICK_BUTTONS_LABEL_X2, DXX_KCONFIG_UI_JOYSTICK_BUTTONS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 9), DXX_KCONFIG_UI_JOYSTICK_BUTTONS_INPUT_X2_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Cycle Secondary") DXX_KCONFIG_UI_UDLR(), BT_JOY_BUTTON, STATE_NONE, {&control_info::state_controls_t::cycle_secondary} }, + {DXX_KCONFIG_UI_JOYSTICK_BUTTONS_LABEL_X1, DXX_KCONFIG_UI_JOYSTICK_BUTTONS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 8), DXX_KCONFIG_UI_JOYSTICK_BUTTONS_INPUT_X1_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Headlight") DXX_KCONFIG_UI_UDLR(), BT_JOY_BUTTON, STATE_NONE, {&control_info::state_controls_t::headlight} }, #endif {DXX_KCONFIG_UI_JOYSTICK_BUTTONS_LABEL_X1, DXX_KCONFIG_UI_JOYSTICK_BUTTONS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 0), DXX_KCONFIG_UI_JOYSTICK_BUTTONS_INPUT_X1_C2, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Fire primary") DXX_KCONFIG_UI_UDLR(), BT_JOY_BUTTON, STATE_BIT4, {&control_info::state_controls_t::fire_primary} }, {DXX_KCONFIG_UI_JOYSTICK_BUTTONS_LABEL_X1, DXX_KCONFIG_UI_JOYSTICK_BUTTONS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 1), DXX_KCONFIG_UI_JOYSTICK_BUTTONS_INPUT_X1_C2, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Fire secondary") DXX_KCONFIG_UI_UDLR(), BT_JOY_BUTTON, STATE_BIT4, {&control_info::state_controls_t::fire_secondary} }, {DXX_KCONFIG_UI_JOYSTICK_BUTTONS_LABEL_X1, DXX_KCONFIG_UI_JOYSTICK_BUTTONS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 4), DXX_KCONFIG_UI_JOYSTICK_BUTTONS_INPUT_X1_C2, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Accelerate") DXX_KCONFIG_UI_UDLR(), BT_JOY_BUTTON, STATE_BIT4, {&control_info::state_controls_t::accelerate} }, {DXX_KCONFIG_UI_JOYSTICK_BUTTONS_LABEL_X1, DXX_KCONFIG_UI_JOYSTICK_BUTTONS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 5), DXX_KCONFIG_UI_JOYSTICK_BUTTONS_INPUT_X1_C2, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Reverse") DXX_KCONFIG_UI_UDLR(), BT_JOY_BUTTON, STATE_BIT4, {&control_info::state_controls_t::reverse} }, - {DXX_KCONFIG_UI_JOYSTICK_BUTTONS_LABEL_X1, DXX_KCONFIG_UI_JOYSTICK_BUTTONS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 2), DXX_KCONFIG_UI_JOYSTICK_BUTTONS_INPUT_X1_C2, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Fire flare") DXX_KCONFIG_UI_UDLR(), BT_JOY_BUTTON, 0, {&control_info::state_controls_t::fire_flare} }, + {DXX_KCONFIG_UI_JOYSTICK_BUTTONS_LABEL_X1, DXX_KCONFIG_UI_JOYSTICK_BUTTONS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 2), DXX_KCONFIG_UI_JOYSTICK_BUTTONS_INPUT_X1_C2, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Fire flare") DXX_KCONFIG_UI_UDLR(), BT_JOY_BUTTON, STATE_NONE, {&control_info::state_controls_t::fire_flare} }, {DXX_KCONFIG_UI_JOYSTICK_BUTTONS_LABEL_X2, DXX_KCONFIG_UI_JOYSTICK_BUTTONS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 0), DXX_KCONFIG_UI_JOYSTICK_BUTTONS_INPUT_X2_C2, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Slide on") DXX_KCONFIG_UI_UDLR(), BT_JOY_BUTTON, STATE_BIT4, {&control_info::state_controls_t::slide_on} }, {DXX_KCONFIG_UI_JOYSTICK_BUTTONS_LABEL_X2, DXX_KCONFIG_UI_JOYSTICK_BUTTONS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 1), DXX_KCONFIG_UI_JOYSTICK_BUTTONS_INPUT_X2_C2, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Slide left") DXX_KCONFIG_UI_UDLR(), BT_JOY_BUTTON, STATE_BIT4, {&control_info::state_controls_t::btn_slide_left} }, {DXX_KCONFIG_UI_JOYSTICK_BUTTONS_LABEL_X2, DXX_KCONFIG_UI_JOYSTICK_BUTTONS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 2), DXX_KCONFIG_UI_JOYSTICK_BUTTONS_INPUT_X2_C2, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Slide right") DXX_KCONFIG_UI_UDLR(), BT_JOY_BUTTON, STATE_BIT4, {&control_info::state_controls_t::btn_slide_right} }, @@ -194,23 +194,23 @@ constexpr kc_item kc_joystick[] = { {DXX_KCONFIG_UI_JOYSTICK_BUTTONS_LABEL_X2, DXX_KCONFIG_UI_JOYSTICK_BUTTONS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 6), DXX_KCONFIG_UI_JOYSTICK_BUTTONS_INPUT_X2_C2, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Bank left") DXX_KCONFIG_UI_UDLR(), BT_JOY_BUTTON, STATE_BIT4, {&control_info::state_controls_t::btn_bank_left} }, {DXX_KCONFIG_UI_JOYSTICK_BUTTONS_LABEL_X2, DXX_KCONFIG_UI_JOYSTICK_BUTTONS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 7), DXX_KCONFIG_UI_JOYSTICK_BUTTONS_INPUT_X2_C2, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Bank right") DXX_KCONFIG_UI_UDLR(), BT_JOY_BUTTON, STATE_BIT4, {&control_info::state_controls_t::btn_bank_right} }, {DXX_KCONFIG_UI_JOYSTICK_BUTTONS_LABEL_X1, DXX_KCONFIG_UI_JOYSTICK_BUTTONS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 6), DXX_KCONFIG_UI_JOYSTICK_BUTTONS_INPUT_X1_C2, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Rear view") DXX_KCONFIG_UI_UDLR(), BT_JOY_BUTTON, STATE_BIT4, {&control_info::state_controls_t::rear_view} }, - {DXX_KCONFIG_UI_JOYSTICK_BUTTONS_LABEL_X1, DXX_KCONFIG_UI_JOYSTICK_BUTTONS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 3), DXX_KCONFIG_UI_JOYSTICK_BUTTONS_INPUT_X1_C2, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Drop bomb") DXX_KCONFIG_UI_UDLR(), BT_JOY_BUTTON, 0, {&control_info::state_controls_t::drop_bomb} }, + {DXX_KCONFIG_UI_JOYSTICK_BUTTONS_LABEL_X1, DXX_KCONFIG_UI_JOYSTICK_BUTTONS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 3), DXX_KCONFIG_UI_JOYSTICK_BUTTONS_INPUT_X1_C2, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Drop bomb") DXX_KCONFIG_UI_UDLR(), BT_JOY_BUTTON, STATE_NONE, {&control_info::state_controls_t::drop_bomb} }, #if defined(DXX_BUILD_DESCENT_I) - {DXX_KCONFIG_UI_JOYSTICK_BUTTONS_LABEL_X2, DXX_KCONFIG_UI_JOYSTICK_BUTTONS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 8), DXX_KCONFIG_UI_JOYSTICK_BUTTONS_INPUT_X2_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Cycle Primary") DXX_KCONFIG_UI_UDLR(), BT_JOY_BUTTON, 0, {&control_info::state_controls_t::cycle_primary} }, - {DXX_KCONFIG_UI_JOYSTICK_BUTTONS_LABEL_X2, DXX_KCONFIG_UI_JOYSTICK_BUTTONS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 9), DXX_KCONFIG_UI_JOYSTICK_BUTTONS_INPUT_X2_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Cycle Secondary") DXX_KCONFIG_UI_UDLR(), BT_JOY_BUTTON, 0, {&control_info::state_controls_t::cycle_secondary} }, + {DXX_KCONFIG_UI_JOYSTICK_BUTTONS_LABEL_X2, DXX_KCONFIG_UI_JOYSTICK_BUTTONS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 8), DXX_KCONFIG_UI_JOYSTICK_BUTTONS_INPUT_X2_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Cycle Primary") DXX_KCONFIG_UI_UDLR(), BT_JOY_BUTTON, STATE_NONE, {&control_info::state_controls_t::cycle_primary} }, + {DXX_KCONFIG_UI_JOYSTICK_BUTTONS_LABEL_X2, DXX_KCONFIG_UI_JOYSTICK_BUTTONS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 9), DXX_KCONFIG_UI_JOYSTICK_BUTTONS_INPUT_X2_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Cycle Secondary") DXX_KCONFIG_UI_UDLR(), BT_JOY_BUTTON, STATE_NONE, {&control_info::state_controls_t::cycle_secondary} }, #elif defined(DXX_BUILD_DESCENT_II) {DXX_KCONFIG_UI_JOYSTICK_BUTTONS_LABEL_X1, DXX_KCONFIG_UI_JOYSTICK_BUTTONS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 7), DXX_KCONFIG_UI_JOYSTICK_BUTTONS_INPUT_X1_C2, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL(DXX_KCONFIG_UI_LABEL_BLANK) DXX_KCONFIG_UI_UDLR(), BT_JOY_BUTTON, STATE_BIT4, {&control_info::state_controls_t::afterburner} }, #endif - {DXX_KCONFIG_UI_JOYSTICK_BUTTONS_LABEL_X2, DXX_KCONFIG_UI_JOYSTICK_BUTTONS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 8), DXX_KCONFIG_UI_JOYSTICK_BUTTONS_INPUT_X2_C2, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL(DXX_KCONFIG_UI_LABEL_BLANK) DXX_KCONFIG_UI_UDLR(), BT_JOY_BUTTON, 0, {&control_info::state_controls_t::cycle_primary} }, - {DXX_KCONFIG_UI_JOYSTICK_BUTTONS_LABEL_X2, DXX_KCONFIG_UI_JOYSTICK_BUTTONS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 9), DXX_KCONFIG_UI_JOYSTICK_BUTTONS_INPUT_X2_C2, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL(DXX_KCONFIG_UI_LABEL_BLANK) DXX_KCONFIG_UI_UDLR(), BT_JOY_BUTTON, 0, {&control_info::state_controls_t::cycle_secondary} }, + {DXX_KCONFIG_UI_JOYSTICK_BUTTONS_LABEL_X2, DXX_KCONFIG_UI_JOYSTICK_BUTTONS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 8), DXX_KCONFIG_UI_JOYSTICK_BUTTONS_INPUT_X2_C2, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL(DXX_KCONFIG_UI_LABEL_BLANK) DXX_KCONFIG_UI_UDLR(), BT_JOY_BUTTON, STATE_NONE, {&control_info::state_controls_t::cycle_primary} }, + {DXX_KCONFIG_UI_JOYSTICK_BUTTONS_LABEL_X2, DXX_KCONFIG_UI_JOYSTICK_BUTTONS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 9), DXX_KCONFIG_UI_JOYSTICK_BUTTONS_INPUT_X2_C2, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL(DXX_KCONFIG_UI_LABEL_BLANK) DXX_KCONFIG_UI_UDLR(), BT_JOY_BUTTON, STATE_NONE, {&control_info::state_controls_t::cycle_secondary} }, #if defined(DXX_BUILD_DESCENT_II) - {DXX_KCONFIG_UI_JOYSTICK_BUTTONS_LABEL_X1, DXX_KCONFIG_UI_JOYSTICK_BUTTONS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 8), DXX_KCONFIG_UI_JOYSTICK_BUTTONS_INPUT_X1_C2, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL(DXX_KCONFIG_UI_LABEL_BLANK) DXX_KCONFIG_UI_UDLR(), BT_JOY_BUTTON, 0, {&control_info::state_controls_t::headlight} }, + {DXX_KCONFIG_UI_JOYSTICK_BUTTONS_LABEL_X1, DXX_KCONFIG_UI_JOYSTICK_BUTTONS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 8), DXX_KCONFIG_UI_JOYSTICK_BUTTONS_INPUT_X1_C2, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL(DXX_KCONFIG_UI_LABEL_BLANK) DXX_KCONFIG_UI_UDLR(), BT_JOY_BUTTON, STATE_NONE, {&control_info::state_controls_t::headlight} }, {DXX_KCONFIG_UI_JOYSTICK_BUTTONS_LABEL_X1, DXX_KCONFIG_UI_JOYSTICK_BUTTONS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT(10), DXX_KCONFIG_UI_JOYSTICK_BUTTONS_INPUT_X1_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Automap") DXX_KCONFIG_UI_UDLR(), BT_JOY_BUTTON, STATE_BIT3, {&control_info::state_controls_t::automap} }, {DXX_KCONFIG_UI_JOYSTICK_BUTTONS_LABEL_X1, DXX_KCONFIG_UI_JOYSTICK_BUTTONS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT(10), DXX_KCONFIG_UI_JOYSTICK_BUTTONS_INPUT_X1_C2, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_UDLR(), BT_JOY_BUTTON, STATE_BIT4, {&control_info::state_controls_t::automap} }, {DXX_KCONFIG_UI_JOYSTICK_BUTTONS_LABEL_X1, DXX_KCONFIG_UI_JOYSTICK_BUTTONS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 9), DXX_KCONFIG_UI_JOYSTICK_BUTTONS_INPUT_X1_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Energy->Shield") DXX_KCONFIG_UI_UDLR(), BT_JOY_BUTTON, STATE_BIT3, {&control_info::state_controls_t::energy_to_shield} }, {DXX_KCONFIG_UI_JOYSTICK_BUTTONS_LABEL_X1, DXX_KCONFIG_UI_JOYSTICK_BUTTONS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 9), DXX_KCONFIG_UI_JOYSTICK_BUTTONS_INPUT_X1_C2, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_UDLR(), BT_JOY_BUTTON, STATE_BIT4, {&control_info::state_controls_t::energy_to_shield} }, - {DXX_KCONFIG_UI_JOYSTICK_BUTTONS_LABEL_X2, DXX_KCONFIG_UI_JOYSTICK_BUTTONS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT(10), DXX_KCONFIG_UI_JOYSTICK_BUTTONS_INPUT_X2_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Toggle Bomb") DXX_KCONFIG_UI_UDLR(), BT_JOY_BUTTON, 0, {&control_info::state_controls_t::toggle_bomb} }, - {DXX_KCONFIG_UI_JOYSTICK_BUTTONS_LABEL_X2, DXX_KCONFIG_UI_JOYSTICK_BUTTONS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT(10), DXX_KCONFIG_UI_JOYSTICK_BUTTONS_INPUT_X2_C2, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_UDLR(), BT_JOY_BUTTON, 0, {&control_info::state_controls_t::toggle_bomb} }, + {DXX_KCONFIG_UI_JOYSTICK_BUTTONS_LABEL_X2, DXX_KCONFIG_UI_JOYSTICK_BUTTONS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT(10), DXX_KCONFIG_UI_JOYSTICK_BUTTONS_INPUT_X2_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Toggle Bomb") DXX_KCONFIG_UI_UDLR(), BT_JOY_BUTTON, STATE_NONE, {&control_info::state_controls_t::toggle_bomb} }, + {DXX_KCONFIG_UI_JOYSTICK_BUTTONS_LABEL_X2, DXX_KCONFIG_UI_JOYSTICK_BUTTONS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT(10), DXX_KCONFIG_UI_JOYSTICK_BUTTONS_INPUT_X2_C2, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_UDLR(), BT_JOY_BUTTON, STATE_NONE, {&control_info::state_controls_t::toggle_bomb} }, #endif #endif }; @@ -248,7 +248,7 @@ constexpr kc_item kc_mouse[] = { {DXX_KCONFIG_UI_MOUSE_BUTTONS_LABEL_X1, DXX_KCONFIG_UI_MOUSE_BUTTONS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 1), DXX_KCONFIG_UI_MOUSE_BUTTONS_INPUT_X1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Fire secondary") DXX_KCONFIG_UI_UDLR(), BT_MOUSE_BUTTON, STATE_BIT5, {&control_info::state_controls_t::fire_secondary} }, {DXX_KCONFIG_UI_MOUSE_BUTTONS_LABEL_X1, DXX_KCONFIG_UI_MOUSE_BUTTONS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 4), DXX_KCONFIG_UI_MOUSE_BUTTONS_INPUT_X1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Accelerate") DXX_KCONFIG_UI_UDLR(), BT_MOUSE_BUTTON, STATE_BIT5, {&control_info::state_controls_t::accelerate} }, {DXX_KCONFIG_UI_MOUSE_BUTTONS_LABEL_X1, DXX_KCONFIG_UI_MOUSE_BUTTONS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 5), DXX_KCONFIG_UI_MOUSE_BUTTONS_INPUT_X1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("reverse") DXX_KCONFIG_UI_UDLR(), BT_MOUSE_BUTTON, STATE_BIT5, {&control_info::state_controls_t::reverse} }, - {DXX_KCONFIG_UI_MOUSE_BUTTONS_LABEL_X1, DXX_KCONFIG_UI_MOUSE_BUTTONS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 2), DXX_KCONFIG_UI_MOUSE_BUTTONS_INPUT_X1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Fire flare") DXX_KCONFIG_UI_UDLR(), BT_MOUSE_BUTTON, 0, {&control_info::state_controls_t::fire_flare} }, + {DXX_KCONFIG_UI_MOUSE_BUTTONS_LABEL_X1, DXX_KCONFIG_UI_MOUSE_BUTTONS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 2), DXX_KCONFIG_UI_MOUSE_BUTTONS_INPUT_X1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Fire flare") DXX_KCONFIG_UI_UDLR(), BT_MOUSE_BUTTON, STATE_NONE, {&control_info::state_controls_t::fire_flare} }, {DXX_KCONFIG_UI_MOUSE_BUTTONS_LABEL_X2, DXX_KCONFIG_UI_MOUSE_BUTTONS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 0), DXX_KCONFIG_UI_MOUSE_BUTTONS_INPUT_X2, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Slide on") DXX_KCONFIG_UI_UDLR(), BT_MOUSE_BUTTON, STATE_BIT5, {&control_info::state_controls_t::slide_on} }, {DXX_KCONFIG_UI_MOUSE_BUTTONS_LABEL_X2, DXX_KCONFIG_UI_MOUSE_BUTTONS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 1), DXX_KCONFIG_UI_MOUSE_BUTTONS_INPUT_X2, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Slide left") DXX_KCONFIG_UI_UDLR(), BT_MOUSE_BUTTON, STATE_BIT5, {&control_info::state_controls_t::btn_slide_left} }, {DXX_KCONFIG_UI_MOUSE_BUTTONS_LABEL_X2, DXX_KCONFIG_UI_MOUSE_BUTTONS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 2), DXX_KCONFIG_UI_MOUSE_BUTTONS_INPUT_X2, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Slide right") DXX_KCONFIG_UI_UDLR(), BT_MOUSE_BUTTON, STATE_BIT5, {&control_info::state_controls_t::btn_slide_right} }, @@ -257,27 +257,27 @@ constexpr kc_item kc_mouse[] = { {DXX_KCONFIG_UI_MOUSE_BUTTONS_LABEL_X2, DXX_KCONFIG_UI_MOUSE_BUTTONS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 5), DXX_KCONFIG_UI_MOUSE_BUTTONS_INPUT_X2, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Bank on") DXX_KCONFIG_UI_UDLR(), BT_MOUSE_BUTTON, STATE_BIT5, {&control_info::state_controls_t::bank_on} }, {DXX_KCONFIG_UI_MOUSE_BUTTONS_LABEL_X2, DXX_KCONFIG_UI_MOUSE_BUTTONS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 6), DXX_KCONFIG_UI_MOUSE_BUTTONS_INPUT_X2, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Bank left") DXX_KCONFIG_UI_UDLR(), BT_MOUSE_BUTTON, STATE_BIT5, {&control_info::state_controls_t::btn_bank_left} }, {DXX_KCONFIG_UI_MOUSE_BUTTONS_LABEL_X2, DXX_KCONFIG_UI_MOUSE_BUTTONS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 7), DXX_KCONFIG_UI_MOUSE_BUTTONS_INPUT_X2, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Bank right") DXX_KCONFIG_UI_UDLR(), BT_MOUSE_BUTTON, STATE_BIT5, {&control_info::state_controls_t::btn_bank_right} }, - {DXX_KCONFIG_UI_MOUSE_BUTTONS_LABEL_X1, DXX_KCONFIG_UI_MOUSE_AXES_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 0), DXX_KCONFIG_UI_MOUSE_AXES_INPUT_X1_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_ENUM(pitch) DXX_KCONFIG_UI_LABEL("Pitch U/D") DXX_KCONFIG_UI_UDLR(), BT_MOUSE_AXIS, 0, {nullptr} }, - {DXX_KCONFIG_UI_MOUSE_BUTTONS_LABEL_X1, DXX_KCONFIG_UI_MOUSE_AXES_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 0), DXX_KCONFIG_UI_MOUSE_AXES_INPUT_X1_CI, DXX_KCONFIG_UI_INVERT_FLAG_WIDTH, DXX_KCONFIG_UI_UDLR(), BT_INVERT, 0, {nullptr} }, - {DXX_KCONFIG_UI_MOUSE_BUTTONS_LABEL_X1, DXX_KCONFIG_UI_MOUSE_AXES_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 1), DXX_KCONFIG_UI_MOUSE_AXES_INPUT_X1_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Turn L/R") DXX_KCONFIG_UI_UDLR(), BT_MOUSE_AXIS, 0, {nullptr} }, - {DXX_KCONFIG_UI_MOUSE_BUTTONS_LABEL_X1, DXX_KCONFIG_UI_MOUSE_AXES_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 1), DXX_KCONFIG_UI_MOUSE_AXES_INPUT_X1_CI, DXX_KCONFIG_UI_INVERT_FLAG_WIDTH, DXX_KCONFIG_UI_UDLR(), BT_INVERT, 0, {nullptr} }, - {DXX_KCONFIG_UI_MOUSE_BUTTONS_LABEL_X1, DXX_KCONFIG_UI_MOUSE_AXES_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 2), DXX_KCONFIG_UI_MOUSE_AXES_INPUT_X1_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Slide L/R") DXX_KCONFIG_UI_UDLR(), BT_MOUSE_AXIS, 0, {nullptr} }, - {DXX_KCONFIG_UI_MOUSE_BUTTONS_LABEL_X1, DXX_KCONFIG_UI_MOUSE_AXES_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 2), DXX_KCONFIG_UI_MOUSE_AXES_INPUT_X1_CI, DXX_KCONFIG_UI_INVERT_FLAG_WIDTH, DXX_KCONFIG_UI_UDLR(), BT_INVERT, 0, {nullptr} }, - {DXX_KCONFIG_UI_MOUSE_BUTTONS_LABEL_X1, DXX_KCONFIG_UI_MOUSE_AXES_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 3), DXX_KCONFIG_UI_MOUSE_AXES_INPUT_X1_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Slide U/D") DXX_KCONFIG_UI_UDLR(), BT_MOUSE_AXIS, 0, {nullptr} }, - {DXX_KCONFIG_UI_MOUSE_BUTTONS_LABEL_X1, DXX_KCONFIG_UI_MOUSE_AXES_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 3), DXX_KCONFIG_UI_MOUSE_AXES_INPUT_X1_CI, DXX_KCONFIG_UI_INVERT_FLAG_WIDTH, DXX_KCONFIG_UI_UDLR(), BT_INVERT, 0, {nullptr} }, - {DXX_KCONFIG_UI_MOUSE_BUTTONS_LABEL_X2, DXX_KCONFIG_UI_MOUSE_AXES_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 0), DXX_KCONFIG_UI_MOUSE_AXES_INPUT_X2_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Bank L/R") DXX_KCONFIG_UI_UDLR(), BT_MOUSE_AXIS, 0, {nullptr} }, - {DXX_KCONFIG_UI_MOUSE_BUTTONS_LABEL_X2, DXX_KCONFIG_UI_MOUSE_AXES_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 0), DXX_KCONFIG_UI_MOUSE_AXES_INPUT_X2_CI, DXX_KCONFIG_UI_INVERT_FLAG_WIDTH, DXX_KCONFIG_UI_UDLR(), BT_INVERT, 0, {nullptr} }, - {DXX_KCONFIG_UI_MOUSE_BUTTONS_LABEL_X2, DXX_KCONFIG_UI_MOUSE_AXES_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 1), DXX_KCONFIG_UI_MOUSE_AXES_INPUT_X2_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Throttle") DXX_KCONFIG_UI_UDLR(), BT_MOUSE_AXIS, 0, {nullptr} }, - {DXX_KCONFIG_UI_MOUSE_BUTTONS_LABEL_X2, DXX_KCONFIG_UI_MOUSE_AXES_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 1), DXX_KCONFIG_UI_MOUSE_AXES_INPUT_X2_CI, DXX_KCONFIG_UI_INVERT_FLAG_WIDTH, DXX_KCONFIG_UI_UDLR(), BT_INVERT, 0, {nullptr} }, + {DXX_KCONFIG_UI_MOUSE_BUTTONS_LABEL_X1, DXX_KCONFIG_UI_MOUSE_AXES_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 0), DXX_KCONFIG_UI_MOUSE_AXES_INPUT_X1_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_ENUM(pitch) DXX_KCONFIG_UI_LABEL("Pitch U/D") DXX_KCONFIG_UI_UDLR(), BT_MOUSE_AXIS, STATE_NONE, {nullptr} }, + {DXX_KCONFIG_UI_MOUSE_BUTTONS_LABEL_X1, DXX_KCONFIG_UI_MOUSE_AXES_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 0), DXX_KCONFIG_UI_MOUSE_AXES_INPUT_X1_CI, DXX_KCONFIG_UI_INVERT_FLAG_WIDTH, DXX_KCONFIG_UI_UDLR(), BT_INVERT, STATE_NONE, {nullptr} }, + {DXX_KCONFIG_UI_MOUSE_BUTTONS_LABEL_X1, DXX_KCONFIG_UI_MOUSE_AXES_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 1), DXX_KCONFIG_UI_MOUSE_AXES_INPUT_X1_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Turn L/R") DXX_KCONFIG_UI_UDLR(), BT_MOUSE_AXIS, STATE_NONE, {nullptr} }, + {DXX_KCONFIG_UI_MOUSE_BUTTONS_LABEL_X1, DXX_KCONFIG_UI_MOUSE_AXES_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 1), DXX_KCONFIG_UI_MOUSE_AXES_INPUT_X1_CI, DXX_KCONFIG_UI_INVERT_FLAG_WIDTH, DXX_KCONFIG_UI_UDLR(), BT_INVERT, STATE_NONE, {nullptr} }, + {DXX_KCONFIG_UI_MOUSE_BUTTONS_LABEL_X1, DXX_KCONFIG_UI_MOUSE_AXES_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 2), DXX_KCONFIG_UI_MOUSE_AXES_INPUT_X1_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Slide L/R") DXX_KCONFIG_UI_UDLR(), BT_MOUSE_AXIS, STATE_NONE, {nullptr} }, + {DXX_KCONFIG_UI_MOUSE_BUTTONS_LABEL_X1, DXX_KCONFIG_UI_MOUSE_AXES_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 2), DXX_KCONFIG_UI_MOUSE_AXES_INPUT_X1_CI, DXX_KCONFIG_UI_INVERT_FLAG_WIDTH, DXX_KCONFIG_UI_UDLR(), BT_INVERT, STATE_NONE, {nullptr} }, + {DXX_KCONFIG_UI_MOUSE_BUTTONS_LABEL_X1, DXX_KCONFIG_UI_MOUSE_AXES_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 3), DXX_KCONFIG_UI_MOUSE_AXES_INPUT_X1_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Slide U/D") DXX_KCONFIG_UI_UDLR(), BT_MOUSE_AXIS, STATE_NONE, {nullptr} }, + {DXX_KCONFIG_UI_MOUSE_BUTTONS_LABEL_X1, DXX_KCONFIG_UI_MOUSE_AXES_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 3), DXX_KCONFIG_UI_MOUSE_AXES_INPUT_X1_CI, DXX_KCONFIG_UI_INVERT_FLAG_WIDTH, DXX_KCONFIG_UI_UDLR(), BT_INVERT, STATE_NONE, {nullptr} }, + {DXX_KCONFIG_UI_MOUSE_BUTTONS_LABEL_X2, DXX_KCONFIG_UI_MOUSE_AXES_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 0), DXX_KCONFIG_UI_MOUSE_AXES_INPUT_X2_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Bank L/R") DXX_KCONFIG_UI_UDLR(), BT_MOUSE_AXIS, STATE_NONE, {nullptr} }, + {DXX_KCONFIG_UI_MOUSE_BUTTONS_LABEL_X2, DXX_KCONFIG_UI_MOUSE_AXES_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 0), DXX_KCONFIG_UI_MOUSE_AXES_INPUT_X2_CI, DXX_KCONFIG_UI_INVERT_FLAG_WIDTH, DXX_KCONFIG_UI_UDLR(), BT_INVERT, STATE_NONE, {nullptr} }, + {DXX_KCONFIG_UI_MOUSE_BUTTONS_LABEL_X2, DXX_KCONFIG_UI_MOUSE_AXES_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 1), DXX_KCONFIG_UI_MOUSE_AXES_INPUT_X2_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Throttle") DXX_KCONFIG_UI_UDLR(), BT_MOUSE_AXIS, STATE_NONE, {nullptr} }, + {DXX_KCONFIG_UI_MOUSE_BUTTONS_LABEL_X2, DXX_KCONFIG_UI_MOUSE_AXES_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 1), DXX_KCONFIG_UI_MOUSE_AXES_INPUT_X2_CI, DXX_KCONFIG_UI_INVERT_FLAG_WIDTH, DXX_KCONFIG_UI_UDLR(), BT_INVERT, STATE_NONE, {nullptr} }, {DXX_KCONFIG_UI_MOUSE_BUTTONS_LABEL_X1, DXX_KCONFIG_UI_MOUSE_BUTTONS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 6), DXX_KCONFIG_UI_MOUSE_BUTTONS_INPUT_X1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("REAR VIEW") DXX_KCONFIG_UI_UDLR(), BT_MOUSE_BUTTON, STATE_BIT5, {&control_info::state_controls_t::rear_view} }, - {DXX_KCONFIG_UI_MOUSE_BUTTONS_LABEL_X1, DXX_KCONFIG_UI_MOUSE_BUTTONS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 3), DXX_KCONFIG_UI_MOUSE_BUTTONS_INPUT_X1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Drop Bomb") DXX_KCONFIG_UI_UDLR(), BT_MOUSE_BUTTON, 0, {&control_info::state_controls_t::drop_bomb} }, + {DXX_KCONFIG_UI_MOUSE_BUTTONS_LABEL_X1, DXX_KCONFIG_UI_MOUSE_BUTTONS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 3), DXX_KCONFIG_UI_MOUSE_BUTTONS_INPUT_X1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Drop Bomb") DXX_KCONFIG_UI_UDLR(), BT_MOUSE_BUTTON, STATE_NONE, {&control_info::state_controls_t::drop_bomb} }, #if defined(DXX_BUILD_DESCENT_I) - {DXX_KCONFIG_UI_MOUSE_BUTTONS_LABEL_X1, DXX_KCONFIG_UI_MOUSE_BUTTONS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 7), DXX_KCONFIG_UI_MOUSE_BUTTONS_INPUT_X1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Cycle Primary") DXX_KCONFIG_UI_UDLR(), BT_MOUSE_BUTTON, 0, {&control_info::state_controls_t::cycle_primary} }, - {DXX_KCONFIG_UI_MOUSE_BUTTONS_LABEL_X1, DXX_KCONFIG_UI_MOUSE_BUTTONS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 8), DXX_KCONFIG_UI_MOUSE_BUTTONS_INPUT_X1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Cycle Secondary") DXX_KCONFIG_UI_UDLR(), BT_MOUSE_BUTTON, 0, {&control_info::state_controls_t::cycle_secondary} }, + {DXX_KCONFIG_UI_MOUSE_BUTTONS_LABEL_X1, DXX_KCONFIG_UI_MOUSE_BUTTONS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 7), DXX_KCONFIG_UI_MOUSE_BUTTONS_INPUT_X1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Cycle Primary") DXX_KCONFIG_UI_UDLR(), BT_MOUSE_BUTTON, STATE_NONE, {&control_info::state_controls_t::cycle_primary} }, + {DXX_KCONFIG_UI_MOUSE_BUTTONS_LABEL_X1, DXX_KCONFIG_UI_MOUSE_BUTTONS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 8), DXX_KCONFIG_UI_MOUSE_BUTTONS_INPUT_X1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Cycle Secondary") DXX_KCONFIG_UI_UDLR(), BT_MOUSE_BUTTON, STATE_NONE, {&control_info::state_controls_t::cycle_secondary} }, #elif defined(DXX_BUILD_DESCENT_II) {DXX_KCONFIG_UI_MOUSE_BUTTONS_LABEL_X1, DXX_KCONFIG_UI_MOUSE_BUTTONS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 7), DXX_KCONFIG_UI_MOUSE_BUTTONS_INPUT_X1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Afterburner") DXX_KCONFIG_UI_UDLR(), BT_MOUSE_BUTTON, STATE_BIT5, {&control_info::state_controls_t::afterburner} }, - {DXX_KCONFIG_UI_MOUSE_BUTTONS_LABEL_X1, DXX_KCONFIG_UI_MOUSE_BUTTONS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 8), DXX_KCONFIG_UI_MOUSE_BUTTONS_INPUT_X1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Cycle Primary") DXX_KCONFIG_UI_UDLR(), BT_MOUSE_BUTTON, 0, {&control_info::state_controls_t::cycle_primary} }, - {DXX_KCONFIG_UI_MOUSE_BUTTONS_LABEL_X1, DXX_KCONFIG_UI_MOUSE_BUTTONS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 9), DXX_KCONFIG_UI_MOUSE_BUTTONS_INPUT_X1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Cycle Secondary") DXX_KCONFIG_UI_UDLR(), BT_MOUSE_BUTTON, 0, {&control_info::state_controls_t::cycle_secondary} }, + {DXX_KCONFIG_UI_MOUSE_BUTTONS_LABEL_X1, DXX_KCONFIG_UI_MOUSE_BUTTONS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 8), DXX_KCONFIG_UI_MOUSE_BUTTONS_INPUT_X1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Cycle Primary") DXX_KCONFIG_UI_UDLR(), BT_MOUSE_BUTTON, STATE_NONE, {&control_info::state_controls_t::cycle_primary} }, + {DXX_KCONFIG_UI_MOUSE_BUTTONS_LABEL_X1, DXX_KCONFIG_UI_MOUSE_BUTTONS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 9), DXX_KCONFIG_UI_MOUSE_BUTTONS_INPUT_X1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL("Cycle Secondary") DXX_KCONFIG_UI_UDLR(), BT_MOUSE_BUTTON, STATE_NONE, {&control_info::state_controls_t::cycle_secondary} }, #endif }; @@ -288,36 +288,36 @@ constexpr kc_item kc_mouse[] = { #define DXX_KCONFIG_UI_WEAPON_KEYS_TOP_Y 69 constexpr kc_item kc_rebirth[] = { - {DXX_KCONFIG_UI_WEAPON_KEYS_LABEL_X1, DXX_KCONFIG_UI_WEAPON_KEYS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 0), DXX_KCONFIG_UI_WEAPON_KEYS_INPUT_X1_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL(WEAPON_STRING_LASER) DXX_KCONFIG_UI_UDLR(), BT_KEY, 0, {&control_info::state_controls_t::select_weapon} }, - {DXX_KCONFIG_UI_WEAPON_KEYS_LABEL_X1, DXX_KCONFIG_UI_WEAPON_KEYS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 0), DXX_KCONFIG_UI_WEAPON_KEYS_INPUT_X1_C2, DXX_KCONFIG_ITEM_JOY_WIDTH(DXX_KCONFIG_UI_CELL_WIDTH), DXX_KCONFIG_UI_UDLR(), BT_JOY_BUTTON, 0, {&control_info::state_controls_t::select_weapon} }, - {DXX_KCONFIG_UI_WEAPON_KEYS_LABEL_X1, DXX_KCONFIG_UI_WEAPON_KEYS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 0), DXX_KCONFIG_UI_WEAPON_KEYS_INPUT_X1_C3, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_UDLR(), BT_MOUSE_BUTTON, 0, {&control_info::state_controls_t::select_weapon} }, - {DXX_KCONFIG_UI_WEAPON_KEYS_LABEL_X1, DXX_KCONFIG_UI_WEAPON_KEYS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 1), DXX_KCONFIG_UI_WEAPON_KEYS_INPUT_X1_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL(WEAPON_STRING_VULCAN) DXX_KCONFIG_UI_UDLR(), BT_KEY, 0, {&control_info::state_controls_t::select_weapon} }, - {DXX_KCONFIG_UI_WEAPON_KEYS_LABEL_X1, DXX_KCONFIG_UI_WEAPON_KEYS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 1), DXX_KCONFIG_UI_WEAPON_KEYS_INPUT_X1_C2, DXX_KCONFIG_ITEM_JOY_WIDTH(DXX_KCONFIG_UI_CELL_WIDTH), DXX_KCONFIG_UI_UDLR(), BT_JOY_BUTTON, 0, {&control_info::state_controls_t::select_weapon} }, - {DXX_KCONFIG_UI_WEAPON_KEYS_LABEL_X1, DXX_KCONFIG_UI_WEAPON_KEYS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 1), DXX_KCONFIG_UI_WEAPON_KEYS_INPUT_X1_C3, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_UDLR(), BT_MOUSE_BUTTON, 0, {&control_info::state_controls_t::select_weapon} }, - {DXX_KCONFIG_UI_WEAPON_KEYS_LABEL_X1, DXX_KCONFIG_UI_WEAPON_KEYS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 2), DXX_KCONFIG_UI_WEAPON_KEYS_INPUT_X1_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL(WEAPON_STRING_SPREADFIRE) DXX_KCONFIG_UI_UDLR(), BT_KEY, 0, {&control_info::state_controls_t::select_weapon} }, - {DXX_KCONFIG_UI_WEAPON_KEYS_LABEL_X1, DXX_KCONFIG_UI_WEAPON_KEYS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 2), DXX_KCONFIG_UI_WEAPON_KEYS_INPUT_X1_C2, DXX_KCONFIG_ITEM_JOY_WIDTH(DXX_KCONFIG_UI_CELL_WIDTH), DXX_KCONFIG_UI_UDLR(), BT_JOY_BUTTON, 0, {&control_info::state_controls_t::select_weapon} }, - {DXX_KCONFIG_UI_WEAPON_KEYS_LABEL_X1, DXX_KCONFIG_UI_WEAPON_KEYS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 2), DXX_KCONFIG_UI_WEAPON_KEYS_INPUT_X1_C3, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_UDLR(), BT_MOUSE_BUTTON, 0, {&control_info::state_controls_t::select_weapon} }, - {DXX_KCONFIG_UI_WEAPON_KEYS_LABEL_X1, DXX_KCONFIG_UI_WEAPON_KEYS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 3), DXX_KCONFIG_UI_WEAPON_KEYS_INPUT_X1_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL(WEAPON_STRING_PLASMA) DXX_KCONFIG_UI_UDLR(), BT_KEY, 0, {&control_info::state_controls_t::select_weapon} }, - {DXX_KCONFIG_UI_WEAPON_KEYS_LABEL_X1, DXX_KCONFIG_UI_WEAPON_KEYS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 3), DXX_KCONFIG_UI_WEAPON_KEYS_INPUT_X1_C2, DXX_KCONFIG_ITEM_JOY_WIDTH(DXX_KCONFIG_UI_CELL_WIDTH), DXX_KCONFIG_UI_UDLR(), BT_JOY_BUTTON, 0, {&control_info::state_controls_t::select_weapon} }, - {DXX_KCONFIG_UI_WEAPON_KEYS_LABEL_X1, DXX_KCONFIG_UI_WEAPON_KEYS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 3), DXX_KCONFIG_UI_WEAPON_KEYS_INPUT_X1_C3, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_UDLR(), BT_MOUSE_BUTTON, 0, {&control_info::state_controls_t::select_weapon} }, - {DXX_KCONFIG_UI_WEAPON_KEYS_LABEL_X1, DXX_KCONFIG_UI_WEAPON_KEYS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 4), DXX_KCONFIG_UI_WEAPON_KEYS_INPUT_X1_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL(WEAPON_STRING_FUSION) DXX_KCONFIG_UI_UDLR(), BT_KEY, 0, {&control_info::state_controls_t::select_weapon} }, - {DXX_KCONFIG_UI_WEAPON_KEYS_LABEL_X1, DXX_KCONFIG_UI_WEAPON_KEYS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 4), DXX_KCONFIG_UI_WEAPON_KEYS_INPUT_X1_C2, DXX_KCONFIG_ITEM_JOY_WIDTH(DXX_KCONFIG_UI_CELL_WIDTH), DXX_KCONFIG_UI_UDLR(), BT_JOY_BUTTON, 0, {&control_info::state_controls_t::select_weapon} }, - {DXX_KCONFIG_UI_WEAPON_KEYS_LABEL_X1, DXX_KCONFIG_UI_WEAPON_KEYS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 4), DXX_KCONFIG_UI_WEAPON_KEYS_INPUT_X1_C3, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_UDLR(), BT_MOUSE_BUTTON, 0, {&control_info::state_controls_t::select_weapon} }, - {DXX_KCONFIG_UI_WEAPON_KEYS_LABEL_X1, DXX_KCONFIG_UI_WEAPON_KEYS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 5), DXX_KCONFIG_UI_WEAPON_KEYS_INPUT_X1_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL(WEAPON_STRING_CONCUSSION) DXX_KCONFIG_UI_UDLR(), BT_KEY, 0, {&control_info::state_controls_t::select_weapon} }, - {DXX_KCONFIG_UI_WEAPON_KEYS_LABEL_X1, DXX_KCONFIG_UI_WEAPON_KEYS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 5), DXX_KCONFIG_UI_WEAPON_KEYS_INPUT_X1_C2, DXX_KCONFIG_ITEM_JOY_WIDTH(DXX_KCONFIG_UI_CELL_WIDTH), DXX_KCONFIG_UI_UDLR(), BT_JOY_BUTTON, 0, {&control_info::state_controls_t::select_weapon} }, - {DXX_KCONFIG_UI_WEAPON_KEYS_LABEL_X1, DXX_KCONFIG_UI_WEAPON_KEYS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 5), DXX_KCONFIG_UI_WEAPON_KEYS_INPUT_X1_C3, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_UDLR(), BT_MOUSE_BUTTON, 0, {&control_info::state_controls_t::select_weapon} }, - {DXX_KCONFIG_UI_WEAPON_KEYS_LABEL_X1, DXX_KCONFIG_UI_WEAPON_KEYS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 6), DXX_KCONFIG_UI_WEAPON_KEYS_INPUT_X1_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL(WEAPON_STRING_HOMING) DXX_KCONFIG_UI_UDLR(), BT_KEY, 0, {&control_info::state_controls_t::select_weapon} }, - {DXX_KCONFIG_UI_WEAPON_KEYS_LABEL_X1, DXX_KCONFIG_UI_WEAPON_KEYS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 6), DXX_KCONFIG_UI_WEAPON_KEYS_INPUT_X1_C2, DXX_KCONFIG_ITEM_JOY_WIDTH(DXX_KCONFIG_UI_CELL_WIDTH), DXX_KCONFIG_UI_UDLR(), BT_JOY_BUTTON, 0, {&control_info::state_controls_t::select_weapon} }, - {DXX_KCONFIG_UI_WEAPON_KEYS_LABEL_X1, DXX_KCONFIG_UI_WEAPON_KEYS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 6), DXX_KCONFIG_UI_WEAPON_KEYS_INPUT_X1_C3, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_UDLR(), BT_MOUSE_BUTTON, 0, {&control_info::state_controls_t::select_weapon} }, - {DXX_KCONFIG_UI_WEAPON_KEYS_LABEL_X1, DXX_KCONFIG_UI_WEAPON_KEYS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 7), DXX_KCONFIG_UI_WEAPON_KEYS_INPUT_X1_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL(WEAPON_STRING_PROXIMITY) DXX_KCONFIG_UI_UDLR(), BT_KEY, 0, {&control_info::state_controls_t::select_weapon} }, - {DXX_KCONFIG_UI_WEAPON_KEYS_LABEL_X1, DXX_KCONFIG_UI_WEAPON_KEYS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 7), DXX_KCONFIG_UI_WEAPON_KEYS_INPUT_X1_C2, DXX_KCONFIG_ITEM_JOY_WIDTH(DXX_KCONFIG_UI_CELL_WIDTH), DXX_KCONFIG_UI_UDLR(), BT_JOY_BUTTON, 0, {&control_info::state_controls_t::select_weapon} }, - {DXX_KCONFIG_UI_WEAPON_KEYS_LABEL_X1, DXX_KCONFIG_UI_WEAPON_KEYS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 7), DXX_KCONFIG_UI_WEAPON_KEYS_INPUT_X1_C3, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_UDLR(), BT_MOUSE_BUTTON, 0, {&control_info::state_controls_t::select_weapon} }, - {DXX_KCONFIG_UI_WEAPON_KEYS_LABEL_X1, DXX_KCONFIG_UI_WEAPON_KEYS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 8), DXX_KCONFIG_UI_WEAPON_KEYS_INPUT_X1_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL(WEAPON_STRING_SMART) DXX_KCONFIG_UI_UDLR(), BT_KEY, 0, {&control_info::state_controls_t::select_weapon} }, - {DXX_KCONFIG_UI_WEAPON_KEYS_LABEL_X1, DXX_KCONFIG_UI_WEAPON_KEYS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 8), DXX_KCONFIG_UI_WEAPON_KEYS_INPUT_X1_C2, DXX_KCONFIG_ITEM_JOY_WIDTH(DXX_KCONFIG_UI_CELL_WIDTH), DXX_KCONFIG_UI_UDLR(), BT_JOY_BUTTON, 0, {&control_info::state_controls_t::select_weapon} }, - {DXX_KCONFIG_UI_WEAPON_KEYS_LABEL_X1, DXX_KCONFIG_UI_WEAPON_KEYS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 8), DXX_KCONFIG_UI_WEAPON_KEYS_INPUT_X1_C3, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_UDLR(), BT_MOUSE_BUTTON, 0, {&control_info::state_controls_t::select_weapon} }, - {DXX_KCONFIG_UI_WEAPON_KEYS_LABEL_X1, DXX_KCONFIG_UI_WEAPON_KEYS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 9), DXX_KCONFIG_UI_WEAPON_KEYS_INPUT_X1_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL(WEAPON_STRING_MEGA) DXX_KCONFIG_UI_UDLR(), BT_KEY, 0, {&control_info::state_controls_t::select_weapon} }, - {DXX_KCONFIG_UI_WEAPON_KEYS_LABEL_X1, DXX_KCONFIG_UI_WEAPON_KEYS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 9), DXX_KCONFIG_UI_WEAPON_KEYS_INPUT_X1_C2, DXX_KCONFIG_ITEM_JOY_WIDTH(DXX_KCONFIG_UI_CELL_WIDTH), DXX_KCONFIG_UI_UDLR(), BT_JOY_BUTTON, 0, {&control_info::state_controls_t::select_weapon} }, - {DXX_KCONFIG_UI_WEAPON_KEYS_LABEL_X1, DXX_KCONFIG_UI_WEAPON_KEYS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 9), DXX_KCONFIG_UI_WEAPON_KEYS_INPUT_X1_C3, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_UDLR(), BT_MOUSE_BUTTON, 0, {&control_info::state_controls_t::select_weapon} }, + {DXX_KCONFIG_UI_WEAPON_KEYS_LABEL_X1, DXX_KCONFIG_UI_WEAPON_KEYS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 0), DXX_KCONFIG_UI_WEAPON_KEYS_INPUT_X1_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL(WEAPON_STRING_LASER) DXX_KCONFIG_UI_UDLR(), BT_KEY, STATE_NONE, {&control_info::state_controls_t::select_weapon} }, + {DXX_KCONFIG_UI_WEAPON_KEYS_LABEL_X1, DXX_KCONFIG_UI_WEAPON_KEYS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 0), DXX_KCONFIG_UI_WEAPON_KEYS_INPUT_X1_C2, DXX_KCONFIG_ITEM_JOY_WIDTH(DXX_KCONFIG_UI_CELL_WIDTH), DXX_KCONFIG_UI_UDLR(), BT_JOY_BUTTON, STATE_NONE, {&control_info::state_controls_t::select_weapon} }, + {DXX_KCONFIG_UI_WEAPON_KEYS_LABEL_X1, DXX_KCONFIG_UI_WEAPON_KEYS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 0), DXX_KCONFIG_UI_WEAPON_KEYS_INPUT_X1_C3, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_UDLR(), BT_MOUSE_BUTTON, STATE_NONE, {&control_info::state_controls_t::select_weapon} }, + {DXX_KCONFIG_UI_WEAPON_KEYS_LABEL_X1, DXX_KCONFIG_UI_WEAPON_KEYS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 1), DXX_KCONFIG_UI_WEAPON_KEYS_INPUT_X1_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL(WEAPON_STRING_VULCAN) DXX_KCONFIG_UI_UDLR(), BT_KEY, STATE_NONE, {&control_info::state_controls_t::select_weapon} }, + {DXX_KCONFIG_UI_WEAPON_KEYS_LABEL_X1, DXX_KCONFIG_UI_WEAPON_KEYS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 1), DXX_KCONFIG_UI_WEAPON_KEYS_INPUT_X1_C2, DXX_KCONFIG_ITEM_JOY_WIDTH(DXX_KCONFIG_UI_CELL_WIDTH), DXX_KCONFIG_UI_UDLR(), BT_JOY_BUTTON, STATE_NONE, {&control_info::state_controls_t::select_weapon} }, + {DXX_KCONFIG_UI_WEAPON_KEYS_LABEL_X1, DXX_KCONFIG_UI_WEAPON_KEYS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 1), DXX_KCONFIG_UI_WEAPON_KEYS_INPUT_X1_C3, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_UDLR(), BT_MOUSE_BUTTON, STATE_NONE, {&control_info::state_controls_t::select_weapon} }, + {DXX_KCONFIG_UI_WEAPON_KEYS_LABEL_X1, DXX_KCONFIG_UI_WEAPON_KEYS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 2), DXX_KCONFIG_UI_WEAPON_KEYS_INPUT_X1_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL(WEAPON_STRING_SPREADFIRE) DXX_KCONFIG_UI_UDLR(), BT_KEY, STATE_NONE, {&control_info::state_controls_t::select_weapon} }, + {DXX_KCONFIG_UI_WEAPON_KEYS_LABEL_X1, DXX_KCONFIG_UI_WEAPON_KEYS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 2), DXX_KCONFIG_UI_WEAPON_KEYS_INPUT_X1_C2, DXX_KCONFIG_ITEM_JOY_WIDTH(DXX_KCONFIG_UI_CELL_WIDTH), DXX_KCONFIG_UI_UDLR(), BT_JOY_BUTTON, STATE_NONE, {&control_info::state_controls_t::select_weapon} }, + {DXX_KCONFIG_UI_WEAPON_KEYS_LABEL_X1, DXX_KCONFIG_UI_WEAPON_KEYS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 2), DXX_KCONFIG_UI_WEAPON_KEYS_INPUT_X1_C3, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_UDLR(), BT_MOUSE_BUTTON, STATE_NONE, {&control_info::state_controls_t::select_weapon} }, + {DXX_KCONFIG_UI_WEAPON_KEYS_LABEL_X1, DXX_KCONFIG_UI_WEAPON_KEYS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 3), DXX_KCONFIG_UI_WEAPON_KEYS_INPUT_X1_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL(WEAPON_STRING_PLASMA) DXX_KCONFIG_UI_UDLR(), BT_KEY, STATE_NONE, {&control_info::state_controls_t::select_weapon} }, + {DXX_KCONFIG_UI_WEAPON_KEYS_LABEL_X1, DXX_KCONFIG_UI_WEAPON_KEYS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 3), DXX_KCONFIG_UI_WEAPON_KEYS_INPUT_X1_C2, DXX_KCONFIG_ITEM_JOY_WIDTH(DXX_KCONFIG_UI_CELL_WIDTH), DXX_KCONFIG_UI_UDLR(), BT_JOY_BUTTON, STATE_NONE, {&control_info::state_controls_t::select_weapon} }, + {DXX_KCONFIG_UI_WEAPON_KEYS_LABEL_X1, DXX_KCONFIG_UI_WEAPON_KEYS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 3), DXX_KCONFIG_UI_WEAPON_KEYS_INPUT_X1_C3, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_UDLR(), BT_MOUSE_BUTTON, STATE_NONE, {&control_info::state_controls_t::select_weapon} }, + {DXX_KCONFIG_UI_WEAPON_KEYS_LABEL_X1, DXX_KCONFIG_UI_WEAPON_KEYS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 4), DXX_KCONFIG_UI_WEAPON_KEYS_INPUT_X1_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL(WEAPON_STRING_FUSION) DXX_KCONFIG_UI_UDLR(), BT_KEY, STATE_NONE, {&control_info::state_controls_t::select_weapon} }, + {DXX_KCONFIG_UI_WEAPON_KEYS_LABEL_X1, DXX_KCONFIG_UI_WEAPON_KEYS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 4), DXX_KCONFIG_UI_WEAPON_KEYS_INPUT_X1_C2, DXX_KCONFIG_ITEM_JOY_WIDTH(DXX_KCONFIG_UI_CELL_WIDTH), DXX_KCONFIG_UI_UDLR(), BT_JOY_BUTTON, STATE_NONE, {&control_info::state_controls_t::select_weapon} }, + {DXX_KCONFIG_UI_WEAPON_KEYS_LABEL_X1, DXX_KCONFIG_UI_WEAPON_KEYS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 4), DXX_KCONFIG_UI_WEAPON_KEYS_INPUT_X1_C3, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_UDLR(), BT_MOUSE_BUTTON, STATE_NONE, {&control_info::state_controls_t::select_weapon} }, + {DXX_KCONFIG_UI_WEAPON_KEYS_LABEL_X1, DXX_KCONFIG_UI_WEAPON_KEYS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 5), DXX_KCONFIG_UI_WEAPON_KEYS_INPUT_X1_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL(WEAPON_STRING_CONCUSSION) DXX_KCONFIG_UI_UDLR(), BT_KEY, STATE_NONE, {&control_info::state_controls_t::select_weapon} }, + {DXX_KCONFIG_UI_WEAPON_KEYS_LABEL_X1, DXX_KCONFIG_UI_WEAPON_KEYS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 5), DXX_KCONFIG_UI_WEAPON_KEYS_INPUT_X1_C2, DXX_KCONFIG_ITEM_JOY_WIDTH(DXX_KCONFIG_UI_CELL_WIDTH), DXX_KCONFIG_UI_UDLR(), BT_JOY_BUTTON, STATE_NONE, {&control_info::state_controls_t::select_weapon} }, + {DXX_KCONFIG_UI_WEAPON_KEYS_LABEL_X1, DXX_KCONFIG_UI_WEAPON_KEYS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 5), DXX_KCONFIG_UI_WEAPON_KEYS_INPUT_X1_C3, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_UDLR(), BT_MOUSE_BUTTON, STATE_NONE, {&control_info::state_controls_t::select_weapon} }, + {DXX_KCONFIG_UI_WEAPON_KEYS_LABEL_X1, DXX_KCONFIG_UI_WEAPON_KEYS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 6), DXX_KCONFIG_UI_WEAPON_KEYS_INPUT_X1_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL(WEAPON_STRING_HOMING) DXX_KCONFIG_UI_UDLR(), BT_KEY, STATE_NONE, {&control_info::state_controls_t::select_weapon} }, + {DXX_KCONFIG_UI_WEAPON_KEYS_LABEL_X1, DXX_KCONFIG_UI_WEAPON_KEYS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 6), DXX_KCONFIG_UI_WEAPON_KEYS_INPUT_X1_C2, DXX_KCONFIG_ITEM_JOY_WIDTH(DXX_KCONFIG_UI_CELL_WIDTH), DXX_KCONFIG_UI_UDLR(), BT_JOY_BUTTON, STATE_NONE, {&control_info::state_controls_t::select_weapon} }, + {DXX_KCONFIG_UI_WEAPON_KEYS_LABEL_X1, DXX_KCONFIG_UI_WEAPON_KEYS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 6), DXX_KCONFIG_UI_WEAPON_KEYS_INPUT_X1_C3, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_UDLR(), BT_MOUSE_BUTTON, STATE_NONE, {&control_info::state_controls_t::select_weapon} }, + {DXX_KCONFIG_UI_WEAPON_KEYS_LABEL_X1, DXX_KCONFIG_UI_WEAPON_KEYS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 7), DXX_KCONFIG_UI_WEAPON_KEYS_INPUT_X1_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL(WEAPON_STRING_PROXIMITY) DXX_KCONFIG_UI_UDLR(), BT_KEY, STATE_NONE, {&control_info::state_controls_t::select_weapon} }, + {DXX_KCONFIG_UI_WEAPON_KEYS_LABEL_X1, DXX_KCONFIG_UI_WEAPON_KEYS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 7), DXX_KCONFIG_UI_WEAPON_KEYS_INPUT_X1_C2, DXX_KCONFIG_ITEM_JOY_WIDTH(DXX_KCONFIG_UI_CELL_WIDTH), DXX_KCONFIG_UI_UDLR(), BT_JOY_BUTTON, STATE_NONE, {&control_info::state_controls_t::select_weapon} }, + {DXX_KCONFIG_UI_WEAPON_KEYS_LABEL_X1, DXX_KCONFIG_UI_WEAPON_KEYS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 7), DXX_KCONFIG_UI_WEAPON_KEYS_INPUT_X1_C3, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_UDLR(), BT_MOUSE_BUTTON, STATE_NONE, {&control_info::state_controls_t::select_weapon} }, + {DXX_KCONFIG_UI_WEAPON_KEYS_LABEL_X1, DXX_KCONFIG_UI_WEAPON_KEYS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 8), DXX_KCONFIG_UI_WEAPON_KEYS_INPUT_X1_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL(WEAPON_STRING_SMART) DXX_KCONFIG_UI_UDLR(), BT_KEY, STATE_NONE, {&control_info::state_controls_t::select_weapon} }, + {DXX_KCONFIG_UI_WEAPON_KEYS_LABEL_X1, DXX_KCONFIG_UI_WEAPON_KEYS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 8), DXX_KCONFIG_UI_WEAPON_KEYS_INPUT_X1_C2, DXX_KCONFIG_ITEM_JOY_WIDTH(DXX_KCONFIG_UI_CELL_WIDTH), DXX_KCONFIG_UI_UDLR(), BT_JOY_BUTTON, STATE_NONE, {&control_info::state_controls_t::select_weapon} }, + {DXX_KCONFIG_UI_WEAPON_KEYS_LABEL_X1, DXX_KCONFIG_UI_WEAPON_KEYS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 8), DXX_KCONFIG_UI_WEAPON_KEYS_INPUT_X1_C3, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_UDLR(), BT_MOUSE_BUTTON, STATE_NONE, {&control_info::state_controls_t::select_weapon} }, + {DXX_KCONFIG_UI_WEAPON_KEYS_LABEL_X1, DXX_KCONFIG_UI_WEAPON_KEYS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 9), DXX_KCONFIG_UI_WEAPON_KEYS_INPUT_X1_C1, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_LABEL(WEAPON_STRING_MEGA) DXX_KCONFIG_UI_UDLR(), BT_KEY, STATE_NONE, {&control_info::state_controls_t::select_weapon} }, + {DXX_KCONFIG_UI_WEAPON_KEYS_LABEL_X1, DXX_KCONFIG_UI_WEAPON_KEYS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 9), DXX_KCONFIG_UI_WEAPON_KEYS_INPUT_X1_C2, DXX_KCONFIG_ITEM_JOY_WIDTH(DXX_KCONFIG_UI_CELL_WIDTH), DXX_KCONFIG_UI_UDLR(), BT_JOY_BUTTON, STATE_NONE, {&control_info::state_controls_t::select_weapon} }, + {DXX_KCONFIG_UI_WEAPON_KEYS_LABEL_X1, DXX_KCONFIG_UI_WEAPON_KEYS_TOP_Y + DXX_KCONFIG_UI_ROW_CELL_HEIGHT( 9), DXX_KCONFIG_UI_WEAPON_KEYS_INPUT_X1_C3, DXX_KCONFIG_UI_CELL_WIDTH, DXX_KCONFIG_UI_UDLR(), BT_MOUSE_BUTTON, STATE_NONE, {&control_info::state_controls_t::select_weapon} }, }; #undef DXX_KCONFIG_UI_WEAPON_KEYS_INPUT_X1_C3