From fa847c2b94a70965da609f812f4d8e5e8d8f7b3d Mon Sep 17 00:00:00 2001 From: Charlie <30303272+charliefoxtwo@users.noreply.github.com> Date: Wed, 29 May 2024 19:14:07 -0700 Subject: [PATCH] Add F-4E WRCS Panel (#674) #605 --- Scripts/DCS-BIOS/doc/Addresses.h | 277 +++---- Scripts/DCS-BIOS/doc/doc_assets/F-4E.jsonp | 676 +++++++++++++----- Scripts/DCS-BIOS/doc/json/F-4E.json | 676 +++++++++++++----- .../lib/modules/aircraft_modules/F-4E.lua | 64 +- 4 files changed, 1218 insertions(+), 475 deletions(-) diff --git a/Scripts/DCS-BIOS/doc/Addresses.h b/Scripts/DCS-BIOS/doc/Addresses.h index 658339a5f..41ca3ca2b 100644 --- a/Scripts/DCS-BIOS/doc/Addresses.h +++ b/Scripts/DCS-BIOS/doc/Addresses.h @@ -13061,34 +13061,34 @@ #define F_22A_START_R_SW 0x6600, 0x0040, 6 #define F_22A_START_R_SW_AM 0x6600, 0x0040 #define F_22A_TAXI_LIGHTS_SW 0x6600, 0x6000, 13 -#define F_4E_EXT_LIGHT_AAR 0x2B54, 0xFFFF, 0 -#define F_4E_EXT_LIGHT_AAR_A 0x2B54 -#define F_4E_EXT_LIGHT_BEACON 0x2B40, 0xFFFF, 0 -#define F_4E_EXT_LIGHT_BEACON_A 0x2B40 -#define F_4E_EXT_LIGHT_BEACON_FLASH 0x2B48, 0xFFFF, 0 -#define F_4E_EXT_LIGHT_BEACON_FLASH_A 0x2B48 -#define F_4E_EXT_LIGHT_BELLY 0x2B50, 0xFFFF, 0 -#define F_4E_EXT_LIGHT_BELLY_A 0x2B50 -#define F_4E_EXT_LIGHT_FORMATION 0x2B4A, 0xFFFF, 0 -#define F_4E_EXT_LIGHT_FORMATION_A 0x2B4A -#define F_4E_EXT_LIGHT_FUSELAGE_TOP 0x2B52, 0xFFFF, 0 -#define F_4E_EXT_LIGHT_FUSELAGE_TOP_A 0x2B52 -#define F_4E_EXT_LIGHT_LANDING 0x2B4C, 0xFFFF, 0 -#define F_4E_EXT_LIGHT_LANDING_A 0x2B4C -#define F_4E_EXT_LIGHT_POSITION_TAIL 0x2B44, 0xFFFF, 0 -#define F_4E_EXT_LIGHT_POSITION_TAIL_A 0x2B44 -#define F_4E_EXT_LIGHT_POSITION_WING 0x2B42, 0xFFFF, 0 -#define F_4E_EXT_LIGHT_POSITION_WING_A 0x2B42 -#define F_4E_EXT_LIGHT_TAXI 0x2B4E, 0xFFFF, 0 -#define F_4E_EXT_LIGHT_TAXI_A 0x2B4E -#define F_4E_EXT_LIGHT_WING_JOIN_UP 0x2B46, 0xFFFF, 0 -#define F_4E_EXT_LIGHT_WING_JOIN_UP_A 0x2B46 +#define F_4E_EXT_LIGHT_AAR 0x2B74, 0xFFFF, 0 +#define F_4E_EXT_LIGHT_AAR_A 0x2B74 +#define F_4E_EXT_LIGHT_BEACON 0x2B60, 0xFFFF, 0 +#define F_4E_EXT_LIGHT_BEACON_A 0x2B60 +#define F_4E_EXT_LIGHT_BEACON_FLASH 0x2B68, 0xFFFF, 0 +#define F_4E_EXT_LIGHT_BEACON_FLASH_A 0x2B68 +#define F_4E_EXT_LIGHT_BELLY 0x2B70, 0xFFFF, 0 +#define F_4E_EXT_LIGHT_BELLY_A 0x2B70 +#define F_4E_EXT_LIGHT_FORMATION 0x2B6A, 0xFFFF, 0 +#define F_4E_EXT_LIGHT_FORMATION_A 0x2B6A +#define F_4E_EXT_LIGHT_FUSELAGE_TOP 0x2B72, 0xFFFF, 0 +#define F_4E_EXT_LIGHT_FUSELAGE_TOP_A 0x2B72 +#define F_4E_EXT_LIGHT_LANDING 0x2B6C, 0xFFFF, 0 +#define F_4E_EXT_LIGHT_LANDING_A 0x2B6C +#define F_4E_EXT_LIGHT_POSITION_TAIL 0x2B64, 0xFFFF, 0 +#define F_4E_EXT_LIGHT_POSITION_TAIL_A 0x2B64 +#define F_4E_EXT_LIGHT_POSITION_WING 0x2B62, 0xFFFF, 0 +#define F_4E_EXT_LIGHT_POSITION_WING_A 0x2B62 +#define F_4E_EXT_LIGHT_TAXI 0x2B6E, 0xFFFF, 0 +#define F_4E_EXT_LIGHT_TAXI_A 0x2B6E +#define F_4E_EXT_LIGHT_WING_JOIN_UP 0x2B66, 0xFFFF, 0 +#define F_4E_EXT_LIGHT_WING_JOIN_UP_A 0x2B66 #define F_4E_PLT_AFCS_ALT_HOLD 0x2A56, 0x0100, 8 #define F_4E_PLT_AFCS_ALT_HOLD_AM 0x2A56, 0x0100 #define F_4E_PLT_AFCS_AUTOPILOT 0x2A52, 0x8000, 15 #define F_4E_PLT_AFCS_AUTOPILOT_AM 0x2A52, 0x8000 -#define F_4E_PLT_AFCS_EMERGENCY_RELEASE 0x2B3E, 0x0040, 6 -#define F_4E_PLT_AFCS_EMERGENCY_RELEASE_AM 0x2B3E, 0x0040 +#define F_4E_PLT_AFCS_EMERGENCY_RELEASE 0x2B5E, 0x0800, 11 +#define F_4E_PLT_AFCS_EMERGENCY_RELEASE_AM 0x2B5E, 0x0800 #define F_4E_PLT_AFCS_STAB_AUG_PITCH 0x2A52, 0x4000, 14 #define F_4E_PLT_AFCS_STAB_AUG_PITCH_AM 0x2A52, 0x4000 #define F_4E_PLT_AFCS_STAB_AUG_ROLL 0x2A52, 0x2000, 13 @@ -13196,8 +13196,8 @@ #define F_4E_PLT_COCKPIT_MIRROR_RIGHT_AM 0x2A4A, 0x8000 #define F_4E_PLT_COCKPIT_MIRROR_TOP 0x2A4A, 0x2000, 13 #define F_4E_PLT_COCKPIT_MIRROR_TOP_AM 0x2A4A, 0x2000 -#define F_4E_PLT_COCKPIT_PRESSURE_EMERGENCY_RELEASE 0x2B56, 0x0100, 8 -#define F_4E_PLT_COCKPIT_PRESSURE_EMERGENCY_RELEASE_AM 0x2B56, 0x0100 +#define F_4E_PLT_COCKPIT_PRESSURE_EMERGENCY_RELEASE 0x2B76, 0x2000, 13 +#define F_4E_PLT_COCKPIT_PRESSURE_EMERGENCY_RELEASE_AM 0x2B76, 0x2000 #define F_4E_PLT_CONTROLS_FLAPS_SLATS 0x2AE4, 0x0018, 3 #define F_4E_PLT_CONTROLS_FLAPS_SLATS_EMERGENCY 0x2B0A, 0xFFFF, 0 #define F_4E_PLT_CONTROLS_FLAPS_SLATS_EMERGENCY_A 0x2B0A @@ -13239,42 +13239,42 @@ #define F_4E_PLT_ENGINE_TACH_R_LARGE_A 0x2AEA #define F_4E_PLT_ENGINE_TACH_R_SMALL 0x2AEC, 0xFFFF, 0 #define F_4E_PLT_ENGINE_TACH_R_SMALL_A 0x2AEC -#define F_4E_PLT_EXT_LIGHT_ANTI_COLL 0x2B3A, 0x6000, 13 -#define F_4E_PLT_EXT_LIGHT_FLASH_MODE 0x2B3E, 0x0003, 0 -#define F_4E_PLT_EXT_LIGHT_FORMATION_BRIGHTNESS 0x2B58, 0xFFFF, 0 -#define F_4E_PLT_EXT_LIGHT_FORMATION_BRIGHTNESS_A 0x2B58 -#define F_4E_PLT_EXT_LIGHT_FORMATION_MODE 0x2B56, 0x0600, 9 -#define F_4E_PLT_EXT_LIGHT_TAIL_BRIGHTNESS 0x2B3E, 0x000C, 2 -#define F_4E_PLT_EXT_LIGHT_TAXI_LAND 0x2B56, 0x00C0, 6 -#define F_4E_PLT_EXT_LIGHT_WING_BRIGHTNESS 0x2B3E, 0x0030, 4 -#define F_4E_PLT_FUEL_AIR_REFUEL 0x2B1A, 0x0040, 6 -#define F_4E_PLT_FUEL_AIR_REFUEL_AM 0x2B1A, 0x0040 -#define F_4E_PLT_FUEL_BOOST_PUMP_L 0x2B26, 0xFFFF, 0 -#define F_4E_PLT_FUEL_BOOST_PUMP_L_A 0x2B26 -#define F_4E_PLT_FUEL_BOOST_PUMP_L_CHECK 0x2B1A, 0x0400, 10 -#define F_4E_PLT_FUEL_BOOST_PUMP_L_CHECK_AM 0x2B1A, 0x0400 -#define F_4E_PLT_FUEL_BOOST_PUMP_R 0x2B28, 0xFFFF, 0 -#define F_4E_PLT_FUEL_BOOST_PUMP_R_A 0x2B28 -#define F_4E_PLT_FUEL_BOOST_PUMP_R_CHECK 0x2B1A, 0x0800, 11 -#define F_4E_PLT_FUEL_BOOST_PUMP_R_CHECK_AM 0x2B1A, 0x0800 -#define F_4E_PLT_FUEL_EXTERNAL_TANKS_FEED 0x2B1A, 0x0300, 8 -#define F_4E_PLT_FUEL_FEED_TANK_CHECK 0x2B1A, 0x1000, 12 -#define F_4E_PLT_FUEL_FEED_TANK_CHECK_AM 0x2B1A, 0x1000 -#define F_4E_PLT_FUEL_FLOW_L 0x2B2A, 0xFFFF, 0 -#define F_4E_PLT_FUEL_FLOW_L_A 0x2B2A -#define F_4E_PLT_FUEL_FLOW_R 0x2B2C, 0xFFFF, 0 -#define F_4E_PLT_FUEL_FLOW_R_A 0x2B2C -#define F_4E_PLT_FUEL_GAUGE_TAPE 0x2B20, 0xFFFF, 0 -#define F_4E_PLT_FUEL_GAUGE_TAPE_A 0x2B20 -#define F_4E_PLT_FUEL_GAUGE_VALUE_A 0x2B22 -#define F_4E_PLT_FUEL_REFUEL_SELECTOR 0x2B1A, 0x0020, 5 -#define F_4E_PLT_FUEL_REFUEL_SELECTOR_AM 0x2B1A, 0x0020 -#define F_4E_PLT_FUEL_REFUEL_SELECTOR_COVER 0x2B1A, 0x0010, 4 -#define F_4E_PLT_FUEL_REFUEL_SELECTOR_COVER_AM 0x2B1A, 0x0010 -#define F_4E_PLT_FUEL_WING_FUEL_DUMP 0x2B1A, 0x0080, 7 -#define F_4E_PLT_FUEL_WING_FUEL_DUMP_AM 0x2B1A, 0x0080 -#define F_4E_PLT_FUEL_WING_INTERNAL_FEED 0x2B1A, 0x0008, 3 -#define F_4E_PLT_FUEL_WING_INTERNAL_FEED_AM 0x2B1A, 0x0008 +#define F_4E_PLT_EXT_LIGHT_ANTI_COLL 0x2B5E, 0x000C, 2 +#define F_4E_PLT_EXT_LIGHT_FLASH_MODE 0x2B5E, 0x0030, 4 +#define F_4E_PLT_EXT_LIGHT_FORMATION_BRIGHTNESS 0x2B78, 0xFFFF, 0 +#define F_4E_PLT_EXT_LIGHT_FORMATION_BRIGHTNESS_A 0x2B78 +#define F_4E_PLT_EXT_LIGHT_FORMATION_MODE 0x2B76, 0xC000, 14 +#define F_4E_PLT_EXT_LIGHT_TAIL_BRIGHTNESS 0x2B5E, 0x00C0, 6 +#define F_4E_PLT_EXT_LIGHT_TAXI_LAND 0x2B76, 0x1800, 11 +#define F_4E_PLT_EXT_LIGHT_WING_BRIGHTNESS 0x2B5E, 0x0300, 8 +#define F_4E_PLT_FUEL_AIR_REFUEL 0x2B1A, 0x0800, 11 +#define F_4E_PLT_FUEL_AIR_REFUEL_AM 0x2B1A, 0x0800 +#define F_4E_PLT_FUEL_BOOST_PUMP_L 0x2B4A, 0xFFFF, 0 +#define F_4E_PLT_FUEL_BOOST_PUMP_L_A 0x2B4A +#define F_4E_PLT_FUEL_BOOST_PUMP_L_CHECK 0x2B1A, 0x8000, 15 +#define F_4E_PLT_FUEL_BOOST_PUMP_L_CHECK_AM 0x2B1A, 0x8000 +#define F_4E_PLT_FUEL_BOOST_PUMP_R 0x2B4C, 0xFFFF, 0 +#define F_4E_PLT_FUEL_BOOST_PUMP_R_A 0x2B4C +#define F_4E_PLT_FUEL_BOOST_PUMP_R_CHECK 0x2B36, 0x0100, 8 +#define F_4E_PLT_FUEL_BOOST_PUMP_R_CHECK_AM 0x2B36, 0x0100 +#define F_4E_PLT_FUEL_EXTERNAL_TANKS_FEED 0x2B1A, 0x6000, 13 +#define F_4E_PLT_FUEL_FEED_TANK_CHECK 0x2B36, 0x0200, 9 +#define F_4E_PLT_FUEL_FEED_TANK_CHECK_AM 0x2B36, 0x0200 +#define F_4E_PLT_FUEL_FLOW_L 0x2B4E, 0xFFFF, 0 +#define F_4E_PLT_FUEL_FLOW_L_A 0x2B4E +#define F_4E_PLT_FUEL_FLOW_R 0x2B50, 0xFFFF, 0 +#define F_4E_PLT_FUEL_FLOW_R_A 0x2B50 +#define F_4E_PLT_FUEL_GAUGE_TAPE 0x2B44, 0xFFFF, 0 +#define F_4E_PLT_FUEL_GAUGE_TAPE_A 0x2B44 +#define F_4E_PLT_FUEL_GAUGE_VALUE_A 0x2B46 +#define F_4E_PLT_FUEL_REFUEL_SELECTOR 0x2B1A, 0x0400, 10 +#define F_4E_PLT_FUEL_REFUEL_SELECTOR_AM 0x2B1A, 0x0400 +#define F_4E_PLT_FUEL_REFUEL_SELECTOR_COVER 0x2B1A, 0x0200, 9 +#define F_4E_PLT_FUEL_REFUEL_SELECTOR_COVER_AM 0x2B1A, 0x0200 +#define F_4E_PLT_FUEL_WING_FUEL_DUMP 0x2B1A, 0x1000, 12 +#define F_4E_PLT_FUEL_WING_FUEL_DUMP_AM 0x2B1A, 0x1000 +#define F_4E_PLT_FUEL_WING_INTERNAL_FEED 0x2B1A, 0x0100, 8 +#define F_4E_PLT_FUEL_WING_INTERNAL_FEED_AM 0x2B1A, 0x0100 #define F_4E_PLT_GEAR_ANTI_SKID 0x2AA2, 0x0200, 9 #define F_4E_PLT_GEAR_ANTI_SKID_AM 0x2AA2, 0x0200 #define F_4E_PLT_GEAR_ANTI_SKID_INOP 0x2AA2, 0x0400, 10 @@ -13296,8 +13296,8 @@ #define F_4E_PLT_GEAR_LEVER_EMERGENCY_AM 0x2A8A, 0x4000 #define F_4E_PLT_GEAR_LEVER_LIGHT 0x2A8A, 0x8000, 15 #define F_4E_PLT_GEAR_LEVER_LIGHT_AM 0x2A8A, 0x8000 -#define F_4E_PLT_GEAR_NWS 0x2B3A, 0x8000, 15 -#define F_4E_PLT_GEAR_NWS_AM 0x2B3A, 0x8000 +#define F_4E_PLT_GEAR_NWS 0x2B5E, 0x0400, 10 +#define F_4E_PLT_GEAR_NWS_AM 0x2B5E, 0x0400 #define F_4E_PLT_GEAR_WHEELS_LIGHT 0x2AA2, 0x0100, 8 #define F_4E_PLT_GEAR_WHEELS_LIGHT_AM 0x2AA2, 0x0100 #define F_4E_PLT_HYDRAULIC_PC1 0x2ACE, 0xFFFF, 0 @@ -13353,8 +13353,8 @@ #define F_4E_PLT_KY_28_P_MODE_DIM_A 0x2A02 #define F_4E_PLT_KY_28_P_MODE_TEST 0x2A00, 0x0001, 0 #define F_4E_PLT_KY_28_P_MODE_TEST_AM 0x2A00, 0x0001 -#define F_4E_PLT_MASTER_ARM_SW 0x2B1A, 0x0004, 2 -#define F_4E_PLT_MASTER_ARM_SW_AM 0x2B1A, 0x0004 +#define F_4E_PLT_MASTER_ARM_SW 0x2B1A, 0x0080, 7 +#define F_4E_PLT_MASTER_ARM_SW_AM 0x2B1A, 0x0080 #define F_4E_PLT_O2_FLOW 0x2B12, 0xFFFF, 0 #define F_4E_PLT_O2_FLOW_A 0x2B12 #define F_4E_PLT_O2_LITERS 0x2B16, 0xFFFF, 0 @@ -13382,18 +13382,18 @@ #define F_4E_PLT_RADAR_ALT_PUSH_TEST_AM 0x2A56, 0x2000 #define F_4E_PLT_RADAR_ALT_WARN_LIGHT 0x2A56, 0x4000, 14 #define F_4E_PLT_RADAR_ALT_WARN_LIGHT_AM 0x2A56, 0x4000 -#define F_4E_PLT_THROTTLE_CM_DISPENSE 0x2B3E, 0x8000, 15 -#define F_4E_PLT_THROTTLE_CM_DISPENSE_AM 0x2B3E, 0x8000 -#define F_4E_PLT_THROTTLE_DETENT_L 0x2B56, 0x0001, 0 -#define F_4E_PLT_THROTTLE_DETENT_L_AM 0x2B56, 0x0001 -#define F_4E_PLT_THROTTLE_DETENT_R 0x2B56, 0x0002, 1 -#define F_4E_PLT_THROTTLE_DETENT_R_AM 0x2B56, 0x0002 -#define F_4E_PLT_THROTTLE_IGNITION_L 0x2B3E, 0x0200, 9 -#define F_4E_PLT_THROTTLE_IGNITION_L_AM 0x2B3E, 0x0200 -#define F_4E_PLT_THROTTLE_IGNITION_R 0x2B3E, 0x0400, 10 -#define F_4E_PLT_THROTTLE_IGNITION_R_AM 0x2B3E, 0x0400 -#define F_4E_PLT_THROTTLE_MIC 0x2B3E, 0x6000, 13 -#define F_4E_PLT_THROTTLE_SPEED_BRAKE 0x2B3E, 0x1800, 11 +#define F_4E_PLT_THROTTLE_CM_DISPENSE 0x2B76, 0x0010, 4 +#define F_4E_PLT_THROTTLE_CM_DISPENSE_AM 0x2B76, 0x0010 +#define F_4E_PLT_THROTTLE_DETENT_L 0x2B76, 0x0020, 5 +#define F_4E_PLT_THROTTLE_DETENT_L_AM 0x2B76, 0x0020 +#define F_4E_PLT_THROTTLE_DETENT_R 0x2B76, 0x0040, 6 +#define F_4E_PLT_THROTTLE_DETENT_R_AM 0x2B76, 0x0040 +#define F_4E_PLT_THROTTLE_IGNITION_L 0x2B5E, 0x4000, 14 +#define F_4E_PLT_THROTTLE_IGNITION_L_AM 0x2B5E, 0x4000 +#define F_4E_PLT_THROTTLE_IGNITION_R 0x2B5E, 0x8000, 15 +#define F_4E_PLT_THROTTLE_IGNITION_R_AM 0x2B5E, 0x8000 +#define F_4E_PLT_THROTTLE_MIC 0x2B76, 0x000C, 2 +#define F_4E_PLT_THROTTLE_SPEED_BRAKE 0x2B76, 0x0003, 0 #define F_4E_PLT_WCA_ALT_ENCODER_OUT 0x2ADA, 0x0020, 5 #define F_4E_PLT_WCA_ALT_ENCODER_OUT_AM 0x2ADA, 0x0020 #define F_4E_PLT_WCA_ANTI_ICE_L 0x2ADC, 0x0008, 3 @@ -13473,8 +13473,8 @@ #define F_4E_PLT_WCA_WARN_LIGHT_TEST 0x2AAA, 0x0C00, 10 #define F_4E_PLT_WCA_WINDSHIELD_TEMP 0x2ADC, 0x0200, 9 #define F_4E_PLT_WCA_WINDSHIELD_TEMP_AM 0x2ADC, 0x0200 -#define F_4E_WSO_AFCS_EMERGENCY_RELEASE 0x2B3E, 0x0100, 8 -#define F_4E_WSO_AFCS_EMERGENCY_RELEASE_AM 0x2B3E, 0x0100 +#define F_4E_WSO_AFCS_EMERGENCY_RELEASE 0x2B5E, 0x2000, 13 +#define F_4E_WSO_AFCS_EMERGENCY_RELEASE_AM 0x2B5E, 0x2000 #define F_4E_WSO_AOA_AURAL_TONE 0x2A80, 0xFFFF, 0 #define F_4E_WSO_AOA_AURAL_TONE_A 0x2A80 #define F_4E_WSO_AOA_INDEXER_BRIGHTNESS 0x2A84, 0xFFFF, 0 @@ -13595,55 +13595,55 @@ #define F_4E_WSO_GEAR_INDICATOR_LEFT 0x2AA6, 0x3000, 12 #define F_4E_WSO_GEAR_INDICATOR_NOSE 0x2AA6, 0xC000, 14 #define F_4E_WSO_GEAR_INDICATOR_RIGHT 0x2AAA, 0x0300, 8 -#define F_4E_WSO_GEAR_NWS 0x2B3E, 0x0080, 7 -#define F_4E_WSO_GEAR_NWS_AM 0x2B3E, 0x0080 +#define F_4E_WSO_GEAR_NWS 0x2B5E, 0x1000, 12 +#define F_4E_WSO_GEAR_NWS_AM 0x2B5E, 0x1000 #define F_4E_WSO_ICS_AMPLIFIER 0x2A0E, 0x0003, 0 #define F_4E_WSO_ICS_INTERCOM_VOL 0x2A0C, 0xFFFF, 0 #define F_4E_WSO_ICS_INTERCOM_VOL_A 0x2A0C #define F_4E_WSO_ICS_MODE 0x2A0E, 0x000C, 2 -#define F_4E_WSO_IFF_CHALLENGE_DIM 0x2B38, 0xFFFF, 0 -#define F_4E_WSO_IFF_CHALLENGE_DIM_A 0x2B38 -#define F_4E_WSO_IFF_CHALLENGE_LIGHT 0x2B3A, 0x0001, 0 -#define F_4E_WSO_IFF_CHALLENGE_LIGHT_AM 0x2B3A, 0x0001 -#define F_4E_WSO_IFF_CHALLENGE_TEST_BUTTON 0x2B36, 0x8000, 15 -#define F_4E_WSO_IFF_CHALLENGE_TEST_BUTTON_AM 0x2B36, 0x8000 -#define F_4E_WSO_IFF_CODE_A 0x2B30 -#define F_4E_WSO_IFF_CODE_HUNDREDS 0x2B2E, 0x0F00, 8 -#define F_4E_WSO_IFF_CODE_INC_HUNDREDS 0x2B1A, 0x8000, 15 -#define F_4E_WSO_IFF_CODE_INC_HUNDREDS_AM 0x2B1A, 0x8000 -#define F_4E_WSO_IFF_CODE_INC_ONES 0x2B36, 0x0200, 9 -#define F_4E_WSO_IFF_CODE_INC_ONES_AM 0x2B36, 0x0200 -#define F_4E_WSO_IFF_CODE_INC_TENS 0x2B36, 0x0100, 8 -#define F_4E_WSO_IFF_CODE_INC_TENS_AM 0x2B36, 0x0100 -#define F_4E_WSO_IFF_CODE_INC_THOUSANDS 0x2B1A, 0x4000, 14 -#define F_4E_WSO_IFF_CODE_INC_THOUSANDS_AM 0x2B1A, 0x4000 -#define F_4E_WSO_IFF_CODE_ONES 0x2B2E, 0x000F, 0 -#define F_4E_WSO_IFF_CODE_TENS 0x2B2E, 0x00F0, 4 -#define F_4E_WSO_IFF_CODE_THOUSANDS 0x2B2E, 0xF000, 12 -#define F_4E_WSO_IFF_COMBAT_TREE_CHALLENGE_DIM 0x2B3C, 0xFFFF, 0 -#define F_4E_WSO_IFF_COMBAT_TREE_CHALLENGE_DIM_A 0x2B3C -#define F_4E_WSO_IFF_COMBAT_TREE_CHALLENGE_TEST_BUTTON 0x2B3A, 0x0010, 4 -#define F_4E_WSO_IFF_COMBAT_TREE_CHALLENGE_TEST_BUTTON_AM 0x2B3A, 0x0010 -#define F_4E_WSO_IFF_COMBAT_TREE_CHALLENGE_TEST_LIGHT 0x2B3A, 0x0020, 5 -#define F_4E_WSO_IFF_COMBAT_TREE_CHALLENGE_TEST_LIGHT_AM 0x2B3A, 0x0020 -#define F_4E_WSO_IFF_COMBAT_TREE_MODE_2 0x2B3A, 0x0180, 7 -#define F_4E_WSO_IFF_COMBAT_TREE_MODE_3 0x2B3A, 0x0600, 9 -#define F_4E_WSO_IFF_COMBAT_TREE_TEST 0x2B3A, 0x0040, 6 -#define F_4E_WSO_IFF_COMBAT_TREE_TEST_AM 0x2B3A, 0x0040 -#define F_4E_WSO_IFF_MODE_A 0x2B34 -#define F_4E_WSO_IFF_MODE_DEC 0x2B36, 0x0400, 10 -#define F_4E_WSO_IFF_MODE_DEC_AM 0x2B36, 0x0400 -#define F_4E_WSO_IFF_MODE_DEC_HUNDREDS 0x2B36, 0x1000, 12 -#define F_4E_WSO_IFF_MODE_DEC_HUNDREDS_AM 0x2B36, 0x1000 -#define F_4E_WSO_IFF_MODE_DEC_ONES 0x2B36, 0x4000, 14 -#define F_4E_WSO_IFF_MODE_DEC_ONES_AM 0x2B36, 0x4000 -#define F_4E_WSO_IFF_MODE_DEC_TENS 0x2B36, 0x2000, 13 -#define F_4E_WSO_IFF_MODE_DEC_TENS_AM 0x2B36, 0x2000 -#define F_4E_WSO_IFF_MODE_DEC_THOUSANDS 0x2B36, 0x0800, 11 -#define F_4E_WSO_IFF_MODE_DEC_THOUSANDS_AM 0x2B36, 0x0800 -#define F_4E_WSO_IFF_MODE_INC 0x2B1A, 0x2000, 13 -#define F_4E_WSO_IFF_MODE_INC_AM 0x2B1A, 0x2000 -#define F_4E_WSO_IFF_TEST_CHALLENGE 0x2B3A, 0x0006, 1 +#define F_4E_WSO_IFF_CHALLENGE_DIM 0x2B5A, 0xFFFF, 0 +#define F_4E_WSO_IFF_CHALLENGE_DIM_A 0x2B5A +#define F_4E_WSO_IFF_CHALLENGE_LIGHT 0x2B42, 0x2000, 13 +#define F_4E_WSO_IFF_CHALLENGE_LIGHT_AM 0x2B42, 0x2000 +#define F_4E_WSO_IFF_CHALLENGE_TEST_BUTTON 0x2B42, 0x1000, 12 +#define F_4E_WSO_IFF_CHALLENGE_TEST_BUTTON_AM 0x2B42, 0x1000 +#define F_4E_WSO_IFF_CODE_A 0x2B52 +#define F_4E_WSO_IFF_CODE_HUNDREDS 0x2B3A, 0xF000, 12 +#define F_4E_WSO_IFF_CODE_INC_HUNDREDS 0x2B3E, 0x1000, 12 +#define F_4E_WSO_IFF_CODE_INC_HUNDREDS_AM 0x2B3E, 0x1000 +#define F_4E_WSO_IFF_CODE_INC_ONES 0x2B3E, 0x4000, 14 +#define F_4E_WSO_IFF_CODE_INC_ONES_AM 0x2B3E, 0x4000 +#define F_4E_WSO_IFF_CODE_INC_TENS 0x2B3E, 0x2000, 13 +#define F_4E_WSO_IFF_CODE_INC_TENS_AM 0x2B3E, 0x2000 +#define F_4E_WSO_IFF_CODE_INC_THOUSANDS 0x2B36, 0x8000, 15 +#define F_4E_WSO_IFF_CODE_INC_THOUSANDS_AM 0x2B36, 0x8000 +#define F_4E_WSO_IFF_CODE_ONES 0x2B36, 0x3C00, 10 +#define F_4E_WSO_IFF_CODE_TENS 0x2B3A, 0x0F00, 8 +#define F_4E_WSO_IFF_CODE_THOUSANDS 0x2B3E, 0x0F00, 8 +#define F_4E_WSO_IFF_COMBAT_TREE_CHALLENGE_DIM 0x2B5C, 0xFFFF, 0 +#define F_4E_WSO_IFF_COMBAT_TREE_CHALLENGE_DIM_A 0x2B5C +#define F_4E_WSO_IFF_COMBAT_TREE_CHALLENGE_TEST_BUTTON 0x2B58, 0x0200, 9 +#define F_4E_WSO_IFF_COMBAT_TREE_CHALLENGE_TEST_BUTTON_AM 0x2B58, 0x0200 +#define F_4E_WSO_IFF_COMBAT_TREE_CHALLENGE_TEST_LIGHT 0x2B58, 0x0400, 10 +#define F_4E_WSO_IFF_COMBAT_TREE_CHALLENGE_TEST_LIGHT_AM 0x2B58, 0x0400 +#define F_4E_WSO_IFF_COMBAT_TREE_MODE_2 0x2B58, 0x3000, 12 +#define F_4E_WSO_IFF_COMBAT_TREE_MODE_3 0x2B58, 0xC000, 14 +#define F_4E_WSO_IFF_COMBAT_TREE_TEST 0x2B58, 0x0800, 11 +#define F_4E_WSO_IFF_COMBAT_TREE_TEST_AM 0x2B58, 0x0800 +#define F_4E_WSO_IFF_MODE_A 0x2B56 +#define F_4E_WSO_IFF_MODE_DEC 0x2B3E, 0x8000, 15 +#define F_4E_WSO_IFF_MODE_DEC_AM 0x2B3E, 0x8000 +#define F_4E_WSO_IFF_MODE_DEC_HUNDREDS 0x2B42, 0x0200, 9 +#define F_4E_WSO_IFF_MODE_DEC_HUNDREDS_AM 0x2B42, 0x0200 +#define F_4E_WSO_IFF_MODE_DEC_ONES 0x2B42, 0x0800, 11 +#define F_4E_WSO_IFF_MODE_DEC_ONES_AM 0x2B42, 0x0800 +#define F_4E_WSO_IFF_MODE_DEC_TENS 0x2B42, 0x0400, 10 +#define F_4E_WSO_IFF_MODE_DEC_TENS_AM 0x2B42, 0x0400 +#define F_4E_WSO_IFF_MODE_DEC_THOUSANDS 0x2B42, 0x0100, 8 +#define F_4E_WSO_IFF_MODE_DEC_THOUSANDS_AM 0x2B42, 0x0100 +#define F_4E_WSO_IFF_MODE_INC 0x2B36, 0x4000, 14 +#define F_4E_WSO_IFF_MODE_INC_AM 0x2B36, 0x4000 +#define F_4E_WSO_IFF_TEST_CHALLENGE 0x2B42, 0xC000, 14 #define F_4E_WSO_INS_ALIGN 0x2A7E, 0x8000, 15 #define F_4E_WSO_INS_ALIGN_AM 0x2A7E, 0x8000 #define F_4E_WSO_INS_ALIGN_DIM 0x2A86, 0xFFFF, 0 @@ -13722,8 +13722,8 @@ #define F_4E_WSO_O2_PRESSURE_A 0x2B1E #define F_4E_WSO_O2_SUPPLY 0x2B1A, 0x0002, 1 #define F_4E_WSO_O2_SUPPLY_AM 0x2B1A, 0x0002 -#define F_4E_WSO_THROTTLE_MIC 0x2B56, 0x0030, 4 -#define F_4E_WSO_THROTTLE_SPEED_BRAKE 0x2B56, 0x000C, 2 +#define F_4E_WSO_THROTTLE_MIC 0x2B76, 0x0600, 9 +#define F_4E_WSO_THROTTLE_SPEED_BRAKE 0x2B76, 0x0180, 7 #define F_4E_WSO_WCA_CANOPY_UNLOCKED 0x2ADE, 0x0020, 5 #define F_4E_WSO_WCA_CANOPY_UNLOCKED_AM 0x2ADE, 0x0020 #define F_4E_WSO_WCA_INS_OUT 0x2ADE, 0x0040, 6 @@ -13734,6 +13734,29 @@ #define F_4E_WSO_WCA_RADAR_CNI_COOL_OFF_AM 0x2ADE, 0x0080 #define F_4E_WSO_WCA_WARN_LIGHT_TEST 0x2ADE, 0x0008, 3 #define F_4E_WSO_WCA_WARN_LIGHT_TEST_AM 0x2ADE, 0x0008 +#define F_4E_WSO_WRCS_ALT_RANGE 0x2B22, 0xFFFF, 0 +#define F_4E_WSO_WRCS_ALT_RANGE_A 0x2B22 +#define F_4E_WSO_WRCS_ALT_RANGE_VALUE_A 0x2B34 +#define F_4E_WSO_WRCS_BIT_MODE 0x2B1A, 0x001C, 2 +#define F_4E_WSO_WRCS_DRAG_COEFFICIENT 0x2B20, 0xFFFF, 0 +#define F_4E_WSO_WRCS_DRAG_COEFFICIENT_A 0x2B20 +#define F_4E_WSO_WRCS_DRAG_COEFFICIENT_VALUE_A 0x2B38 +#define F_4E_WSO_WRCS_EW_DISTANCE 0x2B26, 0xFFFF, 0 +#define F_4E_WSO_WRCS_EW_DISTANCE_A 0x2B26 +#define F_4E_WSO_WRCS_EW_DISTANCE_VALUE_A 0x2B30 +#define F_4E_WSO_WRCS_NS_DISTANCE 0x2B28, 0xFFFF, 0 +#define F_4E_WSO_WRCS_NS_DISTANCE_A 0x2B28 +#define F_4E_WSO_WRCS_NS_DISTANCE_VALUE_A 0x2B2C +#define F_4E_WSO_WRCS_RANGE_MULTIPLIER 0x2B1A, 0x0040, 6 +#define F_4E_WSO_WRCS_RANGE_MULTIPLIER_AM 0x2B1A, 0x0040 +#define F_4E_WSO_WRCS_RELEASE_ADVANCE 0x2B2A, 0xFFFF, 0 +#define F_4E_WSO_WRCS_RELEASE_ADVANCE_A 0x2B2A +#define F_4E_WSO_WRCS_RELEASE_ADVANCE_VALUE_A 0x2B3C +#define F_4E_WSO_WRCS_RELEASE_RANGE 0x2B24, 0xFFFF, 0 +#define F_4E_WSO_WRCS_RELEASE_RANGE_A 0x2B24 +#define F_4E_WSO_WRCS_RELEASE_RANGE_VALUE_A 0x2B40 +#define F_4E_WSO_WRCS_TARGET_FIND_MODE 0x2B1A, 0x0020, 5 +#define F_4E_WSO_WRCS_TARGET_FIND_MODE_AM 0x2B1A, 0x0020 #define F_5E_3_ACC 0x768E, 0x0004, 2 #define F_5E_3_ACCELEROMETER 0x76A0, 0xFFFF, 0 #define F_5E_3_ACCELEROMETER_A 0x76A0 diff --git a/Scripts/DCS-BIOS/doc/doc_assets/F-4E.jsonp b/Scripts/DCS-BIOS/doc/doc_assets/F-4E.jsonp index d09b73690..fe2d0e6b2 100644 --- a/Scripts/DCS-BIOS/doc/doc_assets/F-4E.jsonp +++ b/Scripts/DCS-BIOS/doc/doc_assets/F-4E.jsonp @@ -8,7 +8,7 @@ docdata["F-4E"] = "identifier": "EXT_LIGHT_AAR", "inputs": [ ], "outputs": [ { - "address": 11092, + "address": 11124, "address_identifier": "F_4E_EXT_LIGHT_AAR_A", "address_mask_shift_identifier": "F_4E_EXT_LIGHT_AAR", "description": "AAR Receptacle Light (White)", @@ -26,7 +26,7 @@ docdata["F-4E"] = "identifier": "EXT_LIGHT_BEACON", "inputs": [ ], "outputs": [ { - "address": 11072, + "address": 11104, "address_identifier": "F_4E_EXT_LIGHT_BEACON_A", "address_mask_shift_identifier": "F_4E_EXT_LIGHT_BEACON", "description": "Beacon Light (Red)", @@ -44,7 +44,7 @@ docdata["F-4E"] = "identifier": "EXT_LIGHT_BEACON_FLASH", "inputs": [ ], "outputs": [ { - "address": 11080, + "address": 11112, "address_identifier": "F_4E_EXT_LIGHT_BEACON_FLASH_A", "address_mask_shift_identifier": "F_4E_EXT_LIGHT_BEACON_FLASH", "description": "Flashing Beacon Light (Red)", @@ -62,7 +62,7 @@ docdata["F-4E"] = "identifier": "EXT_LIGHT_BELLY", "inputs": [ ], "outputs": [ { - "address": 11088, + "address": 11120, "address_identifier": "F_4E_EXT_LIGHT_BELLY_A", "address_mask_shift_identifier": "F_4E_EXT_LIGHT_BELLY", "description": "Belly Lights L/R (White)", @@ -80,7 +80,7 @@ docdata["F-4E"] = "identifier": "EXT_LIGHT_FORMATION", "inputs": [ ], "outputs": [ { - "address": 11082, + "address": 11114, "address_identifier": "F_4E_EXT_LIGHT_FORMATION_A", "address_mask_shift_identifier": "F_4E_EXT_LIGHT_FORMATION", "description": "Formation Lights (Green)", @@ -98,7 +98,7 @@ docdata["F-4E"] = "identifier": "EXT_LIGHT_FUSELAGE_TOP", "inputs": [ ], "outputs": [ { - "address": 11090, + "address": 11122, "address_identifier": "F_4E_EXT_LIGHT_FUSELAGE_TOP_A", "address_mask_shift_identifier": "F_4E_EXT_LIGHT_FUSELAGE_TOP", "description": "Fuselage Top Light (White)", @@ -116,7 +116,7 @@ docdata["F-4E"] = "identifier": "EXT_LIGHT_LANDING", "inputs": [ ], "outputs": [ { - "address": 11084, + "address": 11116, "address_identifier": "F_4E_EXT_LIGHT_LANDING_A", "address_mask_shift_identifier": "F_4E_EXT_LIGHT_LANDING", "description": "Landing Light (White)", @@ -134,7 +134,7 @@ docdata["F-4E"] = "identifier": "EXT_LIGHT_POSITION_TAIL", "inputs": [ ], "outputs": [ { - "address": 11076, + "address": 11108, "address_identifier": "F_4E_EXT_LIGHT_POSITION_TAIL_A", "address_mask_shift_identifier": "F_4E_EXT_LIGHT_POSITION_TAIL", "description": "Tail Position Light (White)", @@ -152,7 +152,7 @@ docdata["F-4E"] = "identifier": "EXT_LIGHT_POSITION_WING", "inputs": [ ], "outputs": [ { - "address": 11074, + "address": 11106, "address_identifier": "F_4E_EXT_LIGHT_POSITION_WING_A", "address_mask_shift_identifier": "F_4E_EXT_LIGHT_POSITION_WING", "description": "Wing Position Lights (Red/Green)", @@ -170,7 +170,7 @@ docdata["F-4E"] = "identifier": "EXT_LIGHT_TAXI", "inputs": [ ], "outputs": [ { - "address": 11086, + "address": 11118, "address_identifier": "F_4E_EXT_LIGHT_TAXI_A", "address_mask_shift_identifier": "F_4E_EXT_LIGHT_TAXI", "description": "Taxi Light (White)", @@ -188,7 +188,7 @@ docdata["F-4E"] = "identifier": "EXT_LIGHT_WING_JOIN_UP", "inputs": [ ], "outputs": [ { - "address": 11078, + "address": 11110, "address_identifier": "F_4E_EXT_LIGHT_WING_JOIN_UP_A", "address_mask_shift_identifier": "F_4E_EXT_LIGHT_WING_JOIN_UP", "description": "Wing Join-Up Lights (Red/Green)", @@ -2256,12 +2256,12 @@ docdata["F-4E"] = "max_value": 2 } ], "outputs": [ { - "address": 11066, + "address": 11102, "address_mask_shift_identifier": "F_4E_PLT_EXT_LIGHT_ANTI_COLL", "description": "selector position", - "mask": 24576, + "mask": 12, "max_value": 2, - "shift_by": 13, + "shift_by": 2, "suffix": "", "type": "integer" } ] @@ -2280,12 +2280,12 @@ docdata["F-4E"] = "max_value": 2 } ], "outputs": [ { - "address": 11070, + "address": 11102, "address_mask_shift_identifier": "F_4E_PLT_EXT_LIGHT_FLASH_MODE", "description": "selector position", - "mask": 3, + "mask": 48, "max_value": 2, - "shift_by": 0, + "shift_by": 4, "suffix": "", "type": "integer" } ] @@ -2304,12 +2304,12 @@ docdata["F-4E"] = "max_value": 2 } ], "outputs": [ { - "address": 11070, + "address": 11102, "address_mask_shift_identifier": "F_4E_PLT_EXT_LIGHT_TAIL_BRIGHTNESS", "description": "selector position", - "mask": 12, + "mask": 192, "max_value": 2, - "shift_by": 2, + "shift_by": 6, "suffix": "", "type": "integer" } ] @@ -2328,12 +2328,12 @@ docdata["F-4E"] = "max_value": 2 } ], "outputs": [ { - "address": 11070, + "address": 11102, "address_mask_shift_identifier": "F_4E_PLT_EXT_LIGHT_WING_BRIGHTNESS", "description": "selector position", - "mask": 48, + "mask": 768, "max_value": 2, - "shift_by": 4, + "shift_by": 8, "suffix": "", "type": "integer" } ] @@ -2362,9 +2362,9 @@ docdata["F-4E"] = "address_mask_identifier": "F_4E_PLT_FUEL_AIR_REFUEL_AM", "address_mask_shift_identifier": "F_4E_PLT_FUEL_AIR_REFUEL", "description": "selector position", - "mask": 64, + "mask": 2048, "max_value": 1, - "shift_by": 6, + "shift_by": 11, "suffix": "", "type": "integer" } ] @@ -2376,7 +2376,7 @@ docdata["F-4E"] = "identifier": "PLT_FUEL_BOOST_PUMP_L", "inputs": [ ], "outputs": [ { - "address": 11046, + "address": 11082, "address_identifier": "F_4E_PLT_FUEL_BOOST_PUMP_L_A", "address_mask_shift_identifier": "F_4E_PLT_FUEL_BOOST_PUMP_L", "description": "gauge position", @@ -2410,9 +2410,9 @@ docdata["F-4E"] = "address_mask_identifier": "F_4E_PLT_FUEL_BOOST_PUMP_L_CHECK_AM", "address_mask_shift_identifier": "F_4E_PLT_FUEL_BOOST_PUMP_L_CHECK", "description": "selector position", - "mask": 1024, + "mask": 32768, "max_value": 1, - "shift_by": 10, + "shift_by": 15, "suffix": "", "type": "integer" } ] @@ -2424,7 +2424,7 @@ docdata["F-4E"] = "identifier": "PLT_FUEL_BOOST_PUMP_R", "inputs": [ ], "outputs": [ { - "address": 11048, + "address": 11084, "address_identifier": "F_4E_PLT_FUEL_BOOST_PUMP_R_A", "address_mask_shift_identifier": "F_4E_PLT_FUEL_BOOST_PUMP_R", "description": "gauge position", @@ -2454,13 +2454,13 @@ docdata["F-4E"] = "interface": "action" } ], "outputs": [ { - "address": 11034, + "address": 11062, "address_mask_identifier": "F_4E_PLT_FUEL_BOOST_PUMP_R_CHECK_AM", "address_mask_shift_identifier": "F_4E_PLT_FUEL_BOOST_PUMP_R_CHECK", "description": "selector position", - "mask": 2048, + "mask": 256, "max_value": 1, - "shift_by": 11, + "shift_by": 8, "suffix": "", "type": "integer" } ] @@ -2482,9 +2482,9 @@ docdata["F-4E"] = "address": 11034, "address_mask_shift_identifier": "F_4E_PLT_FUEL_EXTERNAL_TANKS_FEED", "description": "selector position", - "mask": 768, + "mask": 24576, "max_value": 2, - "shift_by": 8, + "shift_by": 13, "suffix": "", "type": "integer" } ] @@ -2508,13 +2508,13 @@ docdata["F-4E"] = "interface": "action" } ], "outputs": [ { - "address": 11034, + "address": 11062, "address_mask_identifier": "F_4E_PLT_FUEL_FEED_TANK_CHECK_AM", "address_mask_shift_identifier": "F_4E_PLT_FUEL_FEED_TANK_CHECK", "description": "selector position", - "mask": 4096, + "mask": 512, "max_value": 1, - "shift_by": 12, + "shift_by": 9, "suffix": "", "type": "integer" } ] @@ -2526,7 +2526,7 @@ docdata["F-4E"] = "identifier": "PLT_FUEL_FLOW_L", "inputs": [ ], "outputs": [ { - "address": 11050, + "address": 11086, "address_identifier": "F_4E_PLT_FUEL_FLOW_L_A", "address_mask_shift_identifier": "F_4E_PLT_FUEL_FLOW_L", "description": "gauge position", @@ -2544,7 +2544,7 @@ docdata["F-4E"] = "identifier": "PLT_FUEL_FLOW_R", "inputs": [ ], "outputs": [ { - "address": 11052, + "address": 11088, "address_identifier": "F_4E_PLT_FUEL_FLOW_R_A", "address_mask_shift_identifier": "F_4E_PLT_FUEL_FLOW_R", "description": "gauge position", @@ -2562,7 +2562,7 @@ docdata["F-4E"] = "identifier": "PLT_FUEL_GAUGE_TAPE", "inputs": [ ], "outputs": [ { - "address": 11040, + "address": 11076, "address_identifier": "F_4E_PLT_FUEL_GAUGE_TAPE_A", "address_mask_shift_identifier": "F_4E_PLT_FUEL_GAUGE_TAPE", "description": "gauge position", @@ -2580,7 +2580,7 @@ docdata["F-4E"] = "identifier": "PLT_FUEL_GAUGE_VALUE", "inputs": [ ], "outputs": [ { - "address": 11042, + "address": 11078, "address_identifier": "F_4E_PLT_FUEL_GAUGE_VALUE_A", "description": "Pilot Fuel Gauge Total Internal Fuel (x10)", "max_length": 4, @@ -2610,9 +2610,9 @@ docdata["F-4E"] = "address_mask_identifier": "F_4E_PLT_FUEL_REFUEL_SELECTOR_AM", "address_mask_shift_identifier": "F_4E_PLT_FUEL_REFUEL_SELECTOR", "description": "selector position", - "mask": 32, + "mask": 1024, "max_value": 1, - "shift_by": 5, + "shift_by": 10, "suffix": "", "type": "integer" } ] @@ -2639,9 +2639,9 @@ docdata["F-4E"] = "address_mask_identifier": "F_4E_PLT_FUEL_REFUEL_SELECTOR_COVER_AM", "address_mask_shift_identifier": "F_4E_PLT_FUEL_REFUEL_SELECTOR_COVER", "description": "selector position", - "mask": 16, + "mask": 512, "max_value": 1, - "shift_by": 4, + "shift_by": 9, "suffix": "", "type": "integer" } ] @@ -2668,9 +2668,9 @@ docdata["F-4E"] = "address_mask_identifier": "F_4E_PLT_FUEL_WING_FUEL_DUMP_AM", "address_mask_shift_identifier": "F_4E_PLT_FUEL_WING_FUEL_DUMP", "description": "selector position", - "mask": 128, + "mask": 4096, "max_value": 1, - "shift_by": 7, + "shift_by": 12, "suffix": "", "type": "integer" } ] @@ -2697,9 +2697,9 @@ docdata["F-4E"] = "address_mask_identifier": "F_4E_PLT_FUEL_WING_INTERNAL_FEED_AM", "address_mask_shift_identifier": "F_4E_PLT_FUEL_WING_INTERNAL_FEED", "description": "selector position", - "mask": 8, + "mask": 256, "max_value": 1, - "shift_by": 3, + "shift_by": 8, "suffix": "", "type": "integer" } ] @@ -3881,12 +3881,12 @@ docdata["F-4E"] = "max_value": 2 } ], "outputs": [ { - "address": 11094, + "address": 11126, "address_mask_shift_identifier": "F_4E_PLT_EXT_LIGHT_TAXI_LAND", "description": "selector position", - "mask": 192, + "mask": 6144, "max_value": 2, - "shift_by": 6, + "shift_by": 11, "suffix": "", "type": "integer" } ] @@ -4228,13 +4228,13 @@ docdata["F-4E"] = "interface": "action" } ], "outputs": [ { - "address": 11094, + "address": 11126, "address_mask_identifier": "F_4E_PLT_COCKPIT_PRESSURE_EMERGENCY_RELEASE_AM", "address_mask_shift_identifier": "F_4E_PLT_COCKPIT_PRESSURE_EMERGENCY_RELEASE", "description": "selector position", - "mask": 256, + "mask": 8192, "max_value": 1, - "shift_by": 8, + "shift_by": 13, "suffix": "", "type": "integer" } ] @@ -4257,7 +4257,7 @@ docdata["F-4E"] = "suggested_step": 3200 } ], "outputs": [ { - "address": 11096, + "address": 11128, "address_identifier": "F_4E_PLT_EXT_LIGHT_FORMATION_BRIGHTNESS_A", "address_mask_shift_identifier": "F_4E_PLT_EXT_LIGHT_FORMATION_BRIGHTNESS", "description": "position of the potentiometer", @@ -4279,12 +4279,12 @@ docdata["F-4E"] = "max_value": 2 } ], "outputs": [ { - "address": 11094, + "address": 11126, "address_mask_shift_identifier": "F_4E_PLT_EXT_LIGHT_FORMATION_MODE", "description": "switch position -- 0 = Down, 1 = Mid, 2 = Up", - "mask": 1536, + "mask": 49152, "max_value": 2, - "shift_by": 9, + "shift_by": 14, "suffix": "", "type": "integer" } ] @@ -4310,13 +4310,13 @@ docdata["F-4E"] = "interface": "action" } ], "outputs": [ { - "address": 11070, + "address": 11102, "address_mask_identifier": "F_4E_PLT_AFCS_EMERGENCY_RELEASE_AM", "address_mask_shift_identifier": "F_4E_PLT_AFCS_EMERGENCY_RELEASE", "description": "selector position", - "mask": 64, + "mask": 2048, "max_value": 1, - "shift_by": 6, + "shift_by": 11, "suffix": "", "type": "integer" } ] @@ -4340,13 +4340,13 @@ docdata["F-4E"] = "interface": "action" } ], "outputs": [ { - "address": 11066, + "address": 11102, "address_mask_identifier": "F_4E_PLT_GEAR_NWS_AM", "address_mask_shift_identifier": "F_4E_PLT_GEAR_NWS", "description": "selector position", - "mask": 32768, + "mask": 1024, "max_value": 1, - "shift_by": 15, + "shift_by": 10, "suffix": "", "type": "integer" } ] @@ -4372,13 +4372,13 @@ docdata["F-4E"] = "interface": "action" } ], "outputs": [ { - "address": 11070, + "address": 11126, "address_mask_identifier": "F_4E_PLT_THROTTLE_CM_DISPENSE_AM", "address_mask_shift_identifier": "F_4E_PLT_THROTTLE_CM_DISPENSE", "description": "selector position", - "mask": 32768, + "mask": 16, "max_value": 1, - "shift_by": 15, + "shift_by": 4, "suffix": "", "type": "integer" } ] @@ -4402,13 +4402,13 @@ docdata["F-4E"] = "interface": "action" } ], "outputs": [ { - "address": 11094, + "address": 11126, "address_mask_identifier": "F_4E_PLT_THROTTLE_DETENT_L_AM", "address_mask_shift_identifier": "F_4E_PLT_THROTTLE_DETENT_L", "description": "selector position", - "mask": 1, + "mask": 32, "max_value": 1, - "shift_by": 0, + "shift_by": 5, "suffix": "", "type": "integer" } ] @@ -4432,13 +4432,13 @@ docdata["F-4E"] = "interface": "action" } ], "outputs": [ { - "address": 11094, + "address": 11126, "address_mask_identifier": "F_4E_PLT_THROTTLE_DETENT_R_AM", "address_mask_shift_identifier": "F_4E_PLT_THROTTLE_DETENT_R", "description": "selector position", - "mask": 2, + "mask": 64, "max_value": 1, - "shift_by": 1, + "shift_by": 6, "suffix": "", "type": "integer" } ] @@ -4462,13 +4462,13 @@ docdata["F-4E"] = "interface": "action" } ], "outputs": [ { - "address": 11070, + "address": 11102, "address_mask_identifier": "F_4E_PLT_THROTTLE_IGNITION_L_AM", "address_mask_shift_identifier": "F_4E_PLT_THROTTLE_IGNITION_L", "description": "selector position", - "mask": 512, + "mask": 16384, "max_value": 1, - "shift_by": 9, + "shift_by": 14, "suffix": "", "type": "integer" } ] @@ -4492,13 +4492,13 @@ docdata["F-4E"] = "interface": "action" } ], "outputs": [ { - "address": 11070, + "address": 11102, "address_mask_identifier": "F_4E_PLT_THROTTLE_IGNITION_R_AM", "address_mask_shift_identifier": "F_4E_PLT_THROTTLE_IGNITION_R", "description": "selector position", - "mask": 1024, + "mask": 32768, "max_value": 1, - "shift_by": 10, + "shift_by": 15, "suffix": "", "type": "integer" } ] @@ -4514,12 +4514,12 @@ docdata["F-4E"] = "max_value": 2 } ], "outputs": [ { - "address": 11070, + "address": 11126, "address_mask_shift_identifier": "F_4E_PLT_THROTTLE_MIC", "description": "switch position -- 0 = Down, 1 = Mid, 2 = Up", - "mask": 24576, + "mask": 12, "max_value": 2, - "shift_by": 13, + "shift_by": 2, "suffix": "", "type": "integer" } ] @@ -4535,12 +4535,12 @@ docdata["F-4E"] = "max_value": 2 } ], "outputs": [ { - "address": 11070, + "address": 11126, "address_mask_shift_identifier": "F_4E_PLT_THROTTLE_SPEED_BRAKE", "description": "switch position -- 0 = Down, 1 = Mid, 2 = Up", - "mask": 6144, + "mask": 3, "max_value": 2, - "shift_by": 11, + "shift_by": 0, "suffix": "", "type": "integer" } ] @@ -5306,9 +5306,9 @@ docdata["F-4E"] = "address_mask_identifier": "F_4E_PLT_MASTER_ARM_SW_AM", "address_mask_shift_identifier": "F_4E_PLT_MASTER_ARM_SW", "description": "selector position", - "mask": 4, + "mask": 128, "max_value": 1, - "shift_by": 2, + "shift_by": 7, "suffix": "", "type": "integer" } ] @@ -6944,7 +6944,7 @@ docdata["F-4E"] = "suggested_step": 3200 } ], "outputs": [ { - "address": 11064, + "address": 11098, "address_identifier": "F_4E_WSO_IFF_CHALLENGE_DIM_A", "address_mask_shift_identifier": "F_4E_WSO_IFF_CHALLENGE_DIM", "description": "position of the potentiometer", @@ -6962,13 +6962,13 @@ docdata["F-4E"] = "identifier": "WSO_IFF_CHALLENGE_LIGHT", "inputs": [ ], "outputs": [ { - "address": 11066, + "address": 11074, "address_mask_identifier": "F_4E_WSO_IFF_CHALLENGE_LIGHT_AM", "address_mask_shift_identifier": "F_4E_WSO_IFF_CHALLENGE_LIGHT", "description": "0 if light is off, 1 if light is on", - "mask": 1, + "mask": 8192, "max_value": 1, - "shift_by": 0, + "shift_by": 13, "suffix": "", "type": "integer" } ] @@ -6992,13 +6992,13 @@ docdata["F-4E"] = "interface": "action" } ], "outputs": [ { - "address": 11062, + "address": 11074, "address_mask_identifier": "F_4E_WSO_IFF_CHALLENGE_TEST_BUTTON_AM", "address_mask_shift_identifier": "F_4E_WSO_IFF_CHALLENGE_TEST_BUTTON", "description": "selector position", - "mask": 32768, + "mask": 4096, "max_value": 1, - "shift_by": 15, + "shift_by": 12, "suffix": "", "type": "integer" } ] @@ -7010,7 +7010,7 @@ docdata["F-4E"] = "identifier": "WSO_IFF_CODE", "inputs": [ ], "outputs": [ { - "address": 11056, + "address": 11090, "address_identifier": "F_4E_WSO_IFF_CODE_A", "description": "IFF Code", "max_length": 4, @@ -7025,12 +7025,12 @@ docdata["F-4E"] = "identifier": "WSO_IFF_CODE_HUNDREDS", "inputs": [ ], "outputs": [ { - "address": 11054, + "address": 11066, "address_mask_shift_identifier": "F_4E_WSO_IFF_CODE_HUNDREDS", "description": "IFF Code (hundreds)", - "mask": 3840, + "mask": 61440, "max_value": 8, - "shift_by": 8, + "shift_by": 12, "suffix": "", "type": "integer" } ] @@ -7054,13 +7054,13 @@ docdata["F-4E"] = "interface": "action" } ], "outputs": [ { - "address": 11034, + "address": 11070, "address_mask_identifier": "F_4E_WSO_IFF_CODE_INC_HUNDREDS_AM", "address_mask_shift_identifier": "F_4E_WSO_IFF_CODE_INC_HUNDREDS", "description": "selector position", - "mask": 32768, + "mask": 4096, "max_value": 1, - "shift_by": 15, + "shift_by": 12, "suffix": "", "type": "integer" } ] @@ -7084,13 +7084,13 @@ docdata["F-4E"] = "interface": "action" } ], "outputs": [ { - "address": 11062, + "address": 11070, "address_mask_identifier": "F_4E_WSO_IFF_CODE_INC_ONES_AM", "address_mask_shift_identifier": "F_4E_WSO_IFF_CODE_INC_ONES", "description": "selector position", - "mask": 512, + "mask": 16384, "max_value": 1, - "shift_by": 9, + "shift_by": 14, "suffix": "", "type": "integer" } ] @@ -7114,13 +7114,13 @@ docdata["F-4E"] = "interface": "action" } ], "outputs": [ { - "address": 11062, + "address": 11070, "address_mask_identifier": "F_4E_WSO_IFF_CODE_INC_TENS_AM", "address_mask_shift_identifier": "F_4E_WSO_IFF_CODE_INC_TENS", "description": "selector position", - "mask": 256, + "mask": 8192, "max_value": 1, - "shift_by": 8, + "shift_by": 13, "suffix": "", "type": "integer" } ] @@ -7144,13 +7144,13 @@ docdata["F-4E"] = "interface": "action" } ], "outputs": [ { - "address": 11034, + "address": 11062, "address_mask_identifier": "F_4E_WSO_IFF_CODE_INC_THOUSANDS_AM", "address_mask_shift_identifier": "F_4E_WSO_IFF_CODE_INC_THOUSANDS", "description": "selector position", - "mask": 16384, + "mask": 32768, "max_value": 1, - "shift_by": 14, + "shift_by": 15, "suffix": "", "type": "integer" } ] @@ -7162,12 +7162,12 @@ docdata["F-4E"] = "identifier": "WSO_IFF_CODE_ONES", "inputs": [ ], "outputs": [ { - "address": 11054, + "address": 11062, "address_mask_shift_identifier": "F_4E_WSO_IFF_CODE_ONES", "description": "IFF Code (ones)", - "mask": 15, + "mask": 15360, "max_value": 8, - "shift_by": 0, + "shift_by": 10, "suffix": "", "type": "integer" } ] @@ -7179,12 +7179,12 @@ docdata["F-4E"] = "identifier": "WSO_IFF_CODE_TENS", "inputs": [ ], "outputs": [ { - "address": 11054, + "address": 11066, "address_mask_shift_identifier": "F_4E_WSO_IFF_CODE_TENS", "description": "IFF Code (tens)", - "mask": 240, + "mask": 3840, "max_value": 8, - "shift_by": 4, + "shift_by": 8, "suffix": "", "type": "integer" } ] @@ -7196,12 +7196,12 @@ docdata["F-4E"] = "identifier": "WSO_IFF_CODE_THOUSANDS", "inputs": [ ], "outputs": [ { - "address": 11054, + "address": 11070, "address_mask_shift_identifier": "F_4E_WSO_IFF_CODE_THOUSANDS", "description": "IFF Code (thousands)", - "mask": 61440, + "mask": 3840, "max_value": 8, - "shift_by": 12, + "shift_by": 8, "suffix": "", "type": "integer" } ] @@ -7222,7 +7222,7 @@ docdata["F-4E"] = "suggested_step": 3200 } ], "outputs": [ { - "address": 11068, + "address": 11100, "address_identifier": "F_4E_WSO_IFF_COMBAT_TREE_CHALLENGE_DIM_A", "address_mask_shift_identifier": "F_4E_WSO_IFF_COMBAT_TREE_CHALLENGE_DIM", "description": "position of the potentiometer", @@ -7252,13 +7252,13 @@ docdata["F-4E"] = "interface": "action" } ], "outputs": [ { - "address": 11066, + "address": 11096, "address_mask_identifier": "F_4E_WSO_IFF_COMBAT_TREE_CHALLENGE_TEST_BUTTON_AM", "address_mask_shift_identifier": "F_4E_WSO_IFF_COMBAT_TREE_CHALLENGE_TEST_BUTTON", "description": "selector position", - "mask": 16, + "mask": 512, "max_value": 1, - "shift_by": 4, + "shift_by": 9, "suffix": "", "type": "integer" } ] @@ -7270,13 +7270,13 @@ docdata["F-4E"] = "identifier": "WSO_IFF_COMBAT_TREE_CHALLENGE_TEST_LIGHT", "inputs": [ ], "outputs": [ { - "address": 11066, + "address": 11096, "address_mask_identifier": "F_4E_WSO_IFF_COMBAT_TREE_CHALLENGE_TEST_LIGHT_AM", "address_mask_shift_identifier": "F_4E_WSO_IFF_COMBAT_TREE_CHALLENGE_TEST_LIGHT", "description": "0 if light is off, 1 if light is on", - "mask": 32, + "mask": 1024, "max_value": 1, - "shift_by": 5, + "shift_by": 10, "suffix": "", "type": "integer" } ] @@ -7295,12 +7295,12 @@ docdata["F-4E"] = "max_value": 2 } ], "outputs": [ { - "address": 11066, + "address": 11096, "address_mask_shift_identifier": "F_4E_WSO_IFF_COMBAT_TREE_MODE_2", "description": "selector position", - "mask": 384, + "mask": 12288, "max_value": 2, - "shift_by": 7, + "shift_by": 12, "suffix": "", "type": "integer" } ] @@ -7319,12 +7319,12 @@ docdata["F-4E"] = "max_value": 2 } ], "outputs": [ { - "address": 11066, + "address": 11096, "address_mask_shift_identifier": "F_4E_WSO_IFF_COMBAT_TREE_MODE_3", "description": "selector position", - "mask": 1536, + "mask": 49152, "max_value": 2, - "shift_by": 9, + "shift_by": 14, "suffix": "", "type": "integer" } ] @@ -7348,13 +7348,13 @@ docdata["F-4E"] = "interface": "action" } ], "outputs": [ { - "address": 11066, + "address": 11096, "address_mask_identifier": "F_4E_WSO_IFF_COMBAT_TREE_TEST_AM", "address_mask_shift_identifier": "F_4E_WSO_IFF_COMBAT_TREE_TEST", "description": "selector position", - "mask": 64, + "mask": 2048, "max_value": 1, - "shift_by": 6, + "shift_by": 11, "suffix": "", "type": "integer" } ] @@ -7366,7 +7366,7 @@ docdata["F-4E"] = "identifier": "WSO_IFF_MODE", "inputs": [ ], "outputs": [ { - "address": 11060, + "address": 11094, "address_identifier": "F_4E_WSO_IFF_MODE_A", "description": "IFF Mode", "max_length": 3, @@ -7393,13 +7393,13 @@ docdata["F-4E"] = "interface": "action" } ], "outputs": [ { - "address": 11062, + "address": 11070, "address_mask_identifier": "F_4E_WSO_IFF_MODE_DEC_AM", "address_mask_shift_identifier": "F_4E_WSO_IFF_MODE_DEC", "description": "selector position", - "mask": 1024, + "mask": 32768, "max_value": 1, - "shift_by": 10, + "shift_by": 15, "suffix": "", "type": "integer" } ] @@ -7423,13 +7423,13 @@ docdata["F-4E"] = "interface": "action" } ], "outputs": [ { - "address": 11062, + "address": 11074, "address_mask_identifier": "F_4E_WSO_IFF_MODE_DEC_HUNDREDS_AM", "address_mask_shift_identifier": "F_4E_WSO_IFF_MODE_DEC_HUNDREDS", "description": "selector position", - "mask": 4096, + "mask": 512, "max_value": 1, - "shift_by": 12, + "shift_by": 9, "suffix": "", "type": "integer" } ] @@ -7453,13 +7453,13 @@ docdata["F-4E"] = "interface": "action" } ], "outputs": [ { - "address": 11062, + "address": 11074, "address_mask_identifier": "F_4E_WSO_IFF_MODE_DEC_ONES_AM", "address_mask_shift_identifier": "F_4E_WSO_IFF_MODE_DEC_ONES", "description": "selector position", - "mask": 16384, + "mask": 2048, "max_value": 1, - "shift_by": 14, + "shift_by": 11, "suffix": "", "type": "integer" } ] @@ -7483,13 +7483,13 @@ docdata["F-4E"] = "interface": "action" } ], "outputs": [ { - "address": 11062, + "address": 11074, "address_mask_identifier": "F_4E_WSO_IFF_MODE_DEC_TENS_AM", "address_mask_shift_identifier": "F_4E_WSO_IFF_MODE_DEC_TENS", "description": "selector position", - "mask": 8192, + "mask": 1024, "max_value": 1, - "shift_by": 13, + "shift_by": 10, "suffix": "", "type": "integer" } ] @@ -7513,13 +7513,13 @@ docdata["F-4E"] = "interface": "action" } ], "outputs": [ { - "address": 11062, + "address": 11074, "address_mask_identifier": "F_4E_WSO_IFF_MODE_DEC_THOUSANDS_AM", "address_mask_shift_identifier": "F_4E_WSO_IFF_MODE_DEC_THOUSANDS", "description": "selector position", - "mask": 2048, + "mask": 256, "max_value": 1, - "shift_by": 11, + "shift_by": 8, "suffix": "", "type": "integer" } ] @@ -7543,13 +7543,13 @@ docdata["F-4E"] = "interface": "action" } ], "outputs": [ { - "address": 11034, + "address": 11062, "address_mask_identifier": "F_4E_WSO_IFF_MODE_INC_AM", "address_mask_shift_identifier": "F_4E_WSO_IFF_MODE_INC", "description": "selector position", - "mask": 8192, + "mask": 16384, "max_value": 1, - "shift_by": 13, + "shift_by": 14, "suffix": "", "type": "integer" } ] @@ -7565,12 +7565,12 @@ docdata["F-4E"] = "max_value": 2 } ], "outputs": [ { - "address": 11066, + "address": 11074, "address_mask_shift_identifier": "F_4E_WSO_IFF_TEST_CHALLENGE", "description": "switch position -- 0 = Down, 1 = Mid, 2 = Up", - "mask": 6, + "mask": 49152, "max_value": 2, - "shift_by": 1, + "shift_by": 14, "suffix": "", "type": "integer" } ] @@ -8735,13 +8735,13 @@ docdata["F-4E"] = "interface": "action" } ], "outputs": [ { - "address": 11070, + "address": 11102, "address_mask_identifier": "F_4E_WSO_AFCS_EMERGENCY_RELEASE_AM", "address_mask_shift_identifier": "F_4E_WSO_AFCS_EMERGENCY_RELEASE", "description": "selector position", - "mask": 256, + "mask": 8192, "max_value": 1, - "shift_by": 8, + "shift_by": 13, "suffix": "", "type": "integer" } ] @@ -8765,13 +8765,13 @@ docdata["F-4E"] = "interface": "action" } ], "outputs": [ { - "address": 11070, + "address": 11102, "address_mask_identifier": "F_4E_WSO_GEAR_NWS_AM", "address_mask_shift_identifier": "F_4E_WSO_GEAR_NWS", "description": "selector position", - "mask": 128, + "mask": 4096, "max_value": 1, - "shift_by": 7, + "shift_by": 12, "suffix": "", "type": "integer" } ] @@ -8789,12 +8789,12 @@ docdata["F-4E"] = "max_value": 2 } ], "outputs": [ { - "address": 11094, + "address": 11126, "address_mask_shift_identifier": "F_4E_WSO_THROTTLE_MIC", "description": "switch position -- 0 = Down, 1 = Mid, 2 = Up", - "mask": 48, + "mask": 1536, "max_value": 2, - "shift_by": 4, + "shift_by": 9, "suffix": "", "type": "integer" } ] @@ -8810,17 +8810,353 @@ docdata["F-4E"] = "max_value": 2 } ], "outputs": [ { - "address": 11094, + "address": 11126, "address_mask_shift_identifier": "F_4E_WSO_THROTTLE_SPEED_BRAKE", "description": "switch position -- 0 = Down, 1 = Mid, 2 = Up", - "mask": 12, + "mask": 384, "max_value": 2, - "shift_by": 2, + "shift_by": 7, "suffix": "", "type": "integer" } ] } }, + "WSO WRCS": { + "WSO_WRCS_ALT_RANGE": { + "category": "WSO WRCS", + "control_type": "limited_dial", + "description": "Set Target Altitude/Range (x100 ft)", + "identifier": "WSO_WRCS_ALT_RANGE", + "inputs": [ { + "description": "set the position of the dial", + "interface": "set_state", + "max_value": 65535 + }, { + "description": "turn the dial left or right", + "interface": "variable_step", + "max_value": 65535, + "suggested_step": 3200 + } ], + "outputs": [ { + "address": 11042, + "address_identifier": "F_4E_WSO_WRCS_ALT_RANGE_A", + "address_mask_shift_identifier": "F_4E_WSO_WRCS_ALT_RANGE", + "description": "position of the potentiometer", + "mask": 65535, + "max_value": 65535, + "shift_by": 0, + "suffix": "", + "type": "integer" + } ] + }, + "WSO_WRCS_ALT_RANGE_VALUE": { + "category": "WSO WRCS", + "control_type": "display", + "description": "Altitude/Range (x100 ft)", + "identifier": "WSO_WRCS_ALT_RANGE_VALUE", + "inputs": [ ], + "outputs": [ { + "address": 11060, + "address_identifier": "F_4E_WSO_WRCS_ALT_RANGE_VALUE_A", + "description": "Altitude/Range (x100 ft)", + "max_length": 3, + "suffix": "", + "type": "string" + } ] + }, + "WSO_WRCS_BIT_MODE": { + "category": "WSO WRCS", + "control_type": "selector", + "description": "Select BIT Mode", + "identifier": "WSO_WRCS_BIT_MODE", + "inputs": [ { + "description": "switch to previous or next state", + "interface": "fixed_step" + }, { + "description": "set position", + "interface": "set_state", + "max_value": 5 + } ], + "outputs": [ { + "address": 11034, + "address_mask_shift_identifier": "F_4E_WSO_WRCS_BIT_MODE", + "description": "selector position", + "mask": 28, + "max_value": 5, + "shift_by": 2, + "suffix": "", + "type": "integer" + } ] + }, + "WSO_WRCS_DRAG_COEFFICIENT": { + "category": "WSO WRCS", + "control_type": "limited_dial", + "description": "Set Drag Coefficient", + "identifier": "WSO_WRCS_DRAG_COEFFICIENT", + "inputs": [ { + "description": "set the position of the dial", + "interface": "set_state", + "max_value": 65535 + }, { + "description": "turn the dial left or right", + "interface": "variable_step", + "max_value": 65535, + "suggested_step": 3200 + } ], + "outputs": [ { + "address": 11040, + "address_identifier": "F_4E_WSO_WRCS_DRAG_COEFFICIENT_A", + "address_mask_shift_identifier": "F_4E_WSO_WRCS_DRAG_COEFFICIENT", + "description": "position of the potentiometer", + "mask": 65535, + "max_value": 65535, + "shift_by": 0, + "suffix": "", + "type": "integer" + } ] + }, + "WSO_WRCS_DRAG_COEFFICIENT_VALUE": { + "category": "WSO WRCS", + "control_type": "display", + "description": "Drag Coefficient", + "identifier": "WSO_WRCS_DRAG_COEFFICIENT_VALUE", + "inputs": [ ], + "outputs": [ { + "address": 11064, + "address_identifier": "F_4E_WSO_WRCS_DRAG_COEFFICIENT_VALUE_A", + "description": "Drag Coefficient", + "max_length": 3, + "suffix": "", + "type": "string" + } ] + }, + "WSO_WRCS_EW_DISTANCE": { + "category": "WSO WRCS", + "control_type": "limited_dial", + "description": "Set Target E/W Distance (x100 ft)", + "identifier": "WSO_WRCS_EW_DISTANCE", + "inputs": [ { + "description": "set the position of the dial", + "interface": "set_state", + "max_value": 65535 + }, { + "description": "turn the dial left or right", + "interface": "variable_step", + "max_value": 65535, + "suggested_step": 3200 + } ], + "outputs": [ { + "address": 11046, + "address_identifier": "F_4E_WSO_WRCS_EW_DISTANCE_A", + "address_mask_shift_identifier": "F_4E_WSO_WRCS_EW_DISTANCE", + "description": "position of the potentiometer", + "mask": 65535, + "max_value": 65535, + "shift_by": 0, + "suffix": "", + "type": "integer" + } ] + }, + "WSO_WRCS_EW_DISTANCE_VALUE": { + "category": "WSO WRCS", + "control_type": "display", + "description": "E/W Distance (x100 ft)", + "identifier": "WSO_WRCS_EW_DISTANCE_VALUE", + "inputs": [ ], + "outputs": [ { + "address": 11056, + "address_identifier": "F_4E_WSO_WRCS_EW_DISTANCE_VALUE_A", + "description": "E/W Distance (x100 ft)", + "max_length": 4, + "suffix": "", + "type": "string" + } ] + }, + "WSO_WRCS_NS_DISTANCE": { + "category": "WSO WRCS", + "control_type": "limited_dial", + "description": "Set Target N/S Distance (x100 ft)", + "identifier": "WSO_WRCS_NS_DISTANCE", + "inputs": [ { + "description": "set the position of the dial", + "interface": "set_state", + "max_value": 65535 + }, { + "description": "turn the dial left or right", + "interface": "variable_step", + "max_value": 65535, + "suggested_step": 3200 + } ], + "outputs": [ { + "address": 11048, + "address_identifier": "F_4E_WSO_WRCS_NS_DISTANCE_A", + "address_mask_shift_identifier": "F_4E_WSO_WRCS_NS_DISTANCE", + "description": "position of the potentiometer", + "mask": 65535, + "max_value": 65535, + "shift_by": 0, + "suffix": "", + "type": "integer" + } ] + }, + "WSO_WRCS_NS_DISTANCE_VALUE": { + "category": "WSO WRCS", + "control_type": "display", + "description": "N/S Distance (x100 ft)", + "identifier": "WSO_WRCS_NS_DISTANCE_VALUE", + "inputs": [ ], + "outputs": [ { + "address": 11052, + "address_identifier": "F_4E_WSO_WRCS_NS_DISTANCE_VALUE_A", + "description": "N/S Distance (x100 ft)", + "max_length": 4, + "suffix": "", + "type": "string" + } ] + }, + "WSO_WRCS_RANGE_MULTIPLIER": { + "category": "WSO WRCS", + "control_type": "selector", + "description": "WRCS Range x100 Multiplier", + "identifier": "WSO_WRCS_RANGE_MULTIPLIER", + "inputs": [ { + "description": "switch to previous or next state", + "interface": "fixed_step" + }, { + "description": "set position", + "interface": "set_state", + "max_value": 1 + }, { + "argument": "TOGGLE", + "description": "Toggle switch state", + "interface": "action" + } ], + "outputs": [ { + "address": 11034, + "address_mask_identifier": "F_4E_WSO_WRCS_RANGE_MULTIPLIER_AM", + "address_mask_shift_identifier": "F_4E_WSO_WRCS_RANGE_MULTIPLIER", + "description": "selector position", + "mask": 64, + "max_value": 1, + "shift_by": 6, + "suffix": "", + "type": "integer" + } ] + }, + "WSO_WRCS_RELEASE_ADVANCE": { + "category": "WSO WRCS", + "control_type": "limited_dial", + "description": "Set Release Advance (ms)", + "identifier": "WSO_WRCS_RELEASE_ADVANCE", + "inputs": [ { + "description": "set the position of the dial", + "interface": "set_state", + "max_value": 65535 + }, { + "description": "turn the dial left or right", + "interface": "variable_step", + "max_value": 65535, + "suggested_step": 3200 + } ], + "outputs": [ { + "address": 11050, + "address_identifier": "F_4E_WSO_WRCS_RELEASE_ADVANCE_A", + "address_mask_shift_identifier": "F_4E_WSO_WRCS_RELEASE_ADVANCE", + "description": "position of the potentiometer", + "mask": 65535, + "max_value": 65535, + "shift_by": 0, + "suffix": "", + "type": "integer" + } ] + }, + "WSO_WRCS_RELEASE_ADVANCE_VALUE": { + "category": "WSO WRCS", + "control_type": "display", + "description": "Release Advance (ms)", + "identifier": "WSO_WRCS_RELEASE_ADVANCE_VALUE", + "inputs": [ ], + "outputs": [ { + "address": 11068, + "address_identifier": "F_4E_WSO_WRCS_RELEASE_ADVANCE_VALUE_A", + "description": "Release Advance (ms)", + "max_length": 3, + "suffix": "", + "type": "string" + } ] + }, + "WSO_WRCS_RELEASE_RANGE": { + "category": "WSO WRCS", + "control_type": "limited_dial", + "description": "Set Release Range (x10 ft)", + "identifier": "WSO_WRCS_RELEASE_RANGE", + "inputs": [ { + "description": "set the position of the dial", + "interface": "set_state", + "max_value": 65535 + }, { + "description": "turn the dial left or right", + "interface": "variable_step", + "max_value": 65535, + "suggested_step": 3200 + } ], + "outputs": [ { + "address": 11044, + "address_identifier": "F_4E_WSO_WRCS_RELEASE_RANGE_A", + "address_mask_shift_identifier": "F_4E_WSO_WRCS_RELEASE_RANGE", + "description": "position of the potentiometer", + "mask": 65535, + "max_value": 65535, + "shift_by": 0, + "suffix": "", + "type": "integer" + } ] + }, + "WSO_WRCS_RELEASE_RANGE_VALUE": { + "category": "WSO WRCS", + "control_type": "display", + "description": "Release Range (x10 ft)", + "identifier": "WSO_WRCS_RELEASE_RANGE_VALUE", + "inputs": [ ], + "outputs": [ { + "address": 11072, + "address_identifier": "F_4E_WSO_WRCS_RELEASE_RANGE_VALUE_A", + "description": "Release Range (x10 ft)", + "max_length": 3, + "suffix": "", + "type": "string" + } ] + }, + "WSO_WRCS_TARGET_FIND_MODE": { + "category": "WSO WRCS", + "control_type": "selector", + "description": "Target Find Mode", + "identifier": "WSO_WRCS_TARGET_FIND_MODE", + "inputs": [ { + "description": "switch to previous or next state", + "interface": "fixed_step" + }, { + "description": "set position", + "interface": "set_state", + "max_value": 1 + }, { + "argument": "TOGGLE", + "description": "Toggle switch state", + "interface": "action" + } ], + "outputs": [ { + "address": 11034, + "address_mask_identifier": "F_4E_WSO_WRCS_TARGET_FIND_MODE_AM", + "address_mask_shift_identifier": "F_4E_WSO_WRCS_TARGET_FIND_MODE", + "description": "selector position", + "mask": 32, + "max_value": 1, + "shift_by": 5, + "suffix": "", + "type": "integer" + } ] + } + }, "WSO Warning Indicators": { "WSO_WCA_CANOPY_UNLOCKED": { "category": "WSO Warning Indicators", diff --git a/Scripts/DCS-BIOS/doc/json/F-4E.json b/Scripts/DCS-BIOS/doc/json/F-4E.json index ae990d9ff..e9ebb98c2 100644 --- a/Scripts/DCS-BIOS/doc/json/F-4E.json +++ b/Scripts/DCS-BIOS/doc/json/F-4E.json @@ -7,7 +7,7 @@ "identifier": "EXT_LIGHT_AAR", "inputs": [ ], "outputs": [ { - "address": 11092, + "address": 11124, "address_identifier": "F_4E_EXT_LIGHT_AAR_A", "address_mask_shift_identifier": "F_4E_EXT_LIGHT_AAR", "description": "AAR Receptacle Light (White)", @@ -25,7 +25,7 @@ "identifier": "EXT_LIGHT_BEACON", "inputs": [ ], "outputs": [ { - "address": 11072, + "address": 11104, "address_identifier": "F_4E_EXT_LIGHT_BEACON_A", "address_mask_shift_identifier": "F_4E_EXT_LIGHT_BEACON", "description": "Beacon Light (Red)", @@ -43,7 +43,7 @@ "identifier": "EXT_LIGHT_BEACON_FLASH", "inputs": [ ], "outputs": [ { - "address": 11080, + "address": 11112, "address_identifier": "F_4E_EXT_LIGHT_BEACON_FLASH_A", "address_mask_shift_identifier": "F_4E_EXT_LIGHT_BEACON_FLASH", "description": "Flashing Beacon Light (Red)", @@ -61,7 +61,7 @@ "identifier": "EXT_LIGHT_BELLY", "inputs": [ ], "outputs": [ { - "address": 11088, + "address": 11120, "address_identifier": "F_4E_EXT_LIGHT_BELLY_A", "address_mask_shift_identifier": "F_4E_EXT_LIGHT_BELLY", "description": "Belly Lights L/R (White)", @@ -79,7 +79,7 @@ "identifier": "EXT_LIGHT_FORMATION", "inputs": [ ], "outputs": [ { - "address": 11082, + "address": 11114, "address_identifier": "F_4E_EXT_LIGHT_FORMATION_A", "address_mask_shift_identifier": "F_4E_EXT_LIGHT_FORMATION", "description": "Formation Lights (Green)", @@ -97,7 +97,7 @@ "identifier": "EXT_LIGHT_FUSELAGE_TOP", "inputs": [ ], "outputs": [ { - "address": 11090, + "address": 11122, "address_identifier": "F_4E_EXT_LIGHT_FUSELAGE_TOP_A", "address_mask_shift_identifier": "F_4E_EXT_LIGHT_FUSELAGE_TOP", "description": "Fuselage Top Light (White)", @@ -115,7 +115,7 @@ "identifier": "EXT_LIGHT_LANDING", "inputs": [ ], "outputs": [ { - "address": 11084, + "address": 11116, "address_identifier": "F_4E_EXT_LIGHT_LANDING_A", "address_mask_shift_identifier": "F_4E_EXT_LIGHT_LANDING", "description": "Landing Light (White)", @@ -133,7 +133,7 @@ "identifier": "EXT_LIGHT_POSITION_TAIL", "inputs": [ ], "outputs": [ { - "address": 11076, + "address": 11108, "address_identifier": "F_4E_EXT_LIGHT_POSITION_TAIL_A", "address_mask_shift_identifier": "F_4E_EXT_LIGHT_POSITION_TAIL", "description": "Tail Position Light (White)", @@ -151,7 +151,7 @@ "identifier": "EXT_LIGHT_POSITION_WING", "inputs": [ ], "outputs": [ { - "address": 11074, + "address": 11106, "address_identifier": "F_4E_EXT_LIGHT_POSITION_WING_A", "address_mask_shift_identifier": "F_4E_EXT_LIGHT_POSITION_WING", "description": "Wing Position Lights (Red/Green)", @@ -169,7 +169,7 @@ "identifier": "EXT_LIGHT_TAXI", "inputs": [ ], "outputs": [ { - "address": 11086, + "address": 11118, "address_identifier": "F_4E_EXT_LIGHT_TAXI_A", "address_mask_shift_identifier": "F_4E_EXT_LIGHT_TAXI", "description": "Taxi Light (White)", @@ -187,7 +187,7 @@ "identifier": "EXT_LIGHT_WING_JOIN_UP", "inputs": [ ], "outputs": [ { - "address": 11078, + "address": 11110, "address_identifier": "F_4E_EXT_LIGHT_WING_JOIN_UP_A", "address_mask_shift_identifier": "F_4E_EXT_LIGHT_WING_JOIN_UP", "description": "Wing Join-Up Lights (Red/Green)", @@ -2255,12 +2255,12 @@ "max_value": 2 } ], "outputs": [ { - "address": 11066, + "address": 11102, "address_mask_shift_identifier": "F_4E_PLT_EXT_LIGHT_ANTI_COLL", "description": "selector position", - "mask": 24576, + "mask": 12, "max_value": 2, - "shift_by": 13, + "shift_by": 2, "suffix": "", "type": "integer" } ] @@ -2279,12 +2279,12 @@ "max_value": 2 } ], "outputs": [ { - "address": 11070, + "address": 11102, "address_mask_shift_identifier": "F_4E_PLT_EXT_LIGHT_FLASH_MODE", "description": "selector position", - "mask": 3, + "mask": 48, "max_value": 2, - "shift_by": 0, + "shift_by": 4, "suffix": "", "type": "integer" } ] @@ -2303,12 +2303,12 @@ "max_value": 2 } ], "outputs": [ { - "address": 11070, + "address": 11102, "address_mask_shift_identifier": "F_4E_PLT_EXT_LIGHT_TAIL_BRIGHTNESS", "description": "selector position", - "mask": 12, + "mask": 192, "max_value": 2, - "shift_by": 2, + "shift_by": 6, "suffix": "", "type": "integer" } ] @@ -2327,12 +2327,12 @@ "max_value": 2 } ], "outputs": [ { - "address": 11070, + "address": 11102, "address_mask_shift_identifier": "F_4E_PLT_EXT_LIGHT_WING_BRIGHTNESS", "description": "selector position", - "mask": 48, + "mask": 768, "max_value": 2, - "shift_by": 4, + "shift_by": 8, "suffix": "", "type": "integer" } ] @@ -2361,9 +2361,9 @@ "address_mask_identifier": "F_4E_PLT_FUEL_AIR_REFUEL_AM", "address_mask_shift_identifier": "F_4E_PLT_FUEL_AIR_REFUEL", "description": "selector position", - "mask": 64, + "mask": 2048, "max_value": 1, - "shift_by": 6, + "shift_by": 11, "suffix": "", "type": "integer" } ] @@ -2375,7 +2375,7 @@ "identifier": "PLT_FUEL_BOOST_PUMP_L", "inputs": [ ], "outputs": [ { - "address": 11046, + "address": 11082, "address_identifier": "F_4E_PLT_FUEL_BOOST_PUMP_L_A", "address_mask_shift_identifier": "F_4E_PLT_FUEL_BOOST_PUMP_L", "description": "gauge position", @@ -2409,9 +2409,9 @@ "address_mask_identifier": "F_4E_PLT_FUEL_BOOST_PUMP_L_CHECK_AM", "address_mask_shift_identifier": "F_4E_PLT_FUEL_BOOST_PUMP_L_CHECK", "description": "selector position", - "mask": 1024, + "mask": 32768, "max_value": 1, - "shift_by": 10, + "shift_by": 15, "suffix": "", "type": "integer" } ] @@ -2423,7 +2423,7 @@ "identifier": "PLT_FUEL_BOOST_PUMP_R", "inputs": [ ], "outputs": [ { - "address": 11048, + "address": 11084, "address_identifier": "F_4E_PLT_FUEL_BOOST_PUMP_R_A", "address_mask_shift_identifier": "F_4E_PLT_FUEL_BOOST_PUMP_R", "description": "gauge position", @@ -2453,13 +2453,13 @@ "interface": "action" } ], "outputs": [ { - "address": 11034, + "address": 11062, "address_mask_identifier": "F_4E_PLT_FUEL_BOOST_PUMP_R_CHECK_AM", "address_mask_shift_identifier": "F_4E_PLT_FUEL_BOOST_PUMP_R_CHECK", "description": "selector position", - "mask": 2048, + "mask": 256, "max_value": 1, - "shift_by": 11, + "shift_by": 8, "suffix": "", "type": "integer" } ] @@ -2481,9 +2481,9 @@ "address": 11034, "address_mask_shift_identifier": "F_4E_PLT_FUEL_EXTERNAL_TANKS_FEED", "description": "selector position", - "mask": 768, + "mask": 24576, "max_value": 2, - "shift_by": 8, + "shift_by": 13, "suffix": "", "type": "integer" } ] @@ -2507,13 +2507,13 @@ "interface": "action" } ], "outputs": [ { - "address": 11034, + "address": 11062, "address_mask_identifier": "F_4E_PLT_FUEL_FEED_TANK_CHECK_AM", "address_mask_shift_identifier": "F_4E_PLT_FUEL_FEED_TANK_CHECK", "description": "selector position", - "mask": 4096, + "mask": 512, "max_value": 1, - "shift_by": 12, + "shift_by": 9, "suffix": "", "type": "integer" } ] @@ -2525,7 +2525,7 @@ "identifier": "PLT_FUEL_FLOW_L", "inputs": [ ], "outputs": [ { - "address": 11050, + "address": 11086, "address_identifier": "F_4E_PLT_FUEL_FLOW_L_A", "address_mask_shift_identifier": "F_4E_PLT_FUEL_FLOW_L", "description": "gauge position", @@ -2543,7 +2543,7 @@ "identifier": "PLT_FUEL_FLOW_R", "inputs": [ ], "outputs": [ { - "address": 11052, + "address": 11088, "address_identifier": "F_4E_PLT_FUEL_FLOW_R_A", "address_mask_shift_identifier": "F_4E_PLT_FUEL_FLOW_R", "description": "gauge position", @@ -2561,7 +2561,7 @@ "identifier": "PLT_FUEL_GAUGE_TAPE", "inputs": [ ], "outputs": [ { - "address": 11040, + "address": 11076, "address_identifier": "F_4E_PLT_FUEL_GAUGE_TAPE_A", "address_mask_shift_identifier": "F_4E_PLT_FUEL_GAUGE_TAPE", "description": "gauge position", @@ -2579,7 +2579,7 @@ "identifier": "PLT_FUEL_GAUGE_VALUE", "inputs": [ ], "outputs": [ { - "address": 11042, + "address": 11078, "address_identifier": "F_4E_PLT_FUEL_GAUGE_VALUE_A", "description": "Pilot Fuel Gauge Total Internal Fuel (x10)", "max_length": 4, @@ -2609,9 +2609,9 @@ "address_mask_identifier": "F_4E_PLT_FUEL_REFUEL_SELECTOR_AM", "address_mask_shift_identifier": "F_4E_PLT_FUEL_REFUEL_SELECTOR", "description": "selector position", - "mask": 32, + "mask": 1024, "max_value": 1, - "shift_by": 5, + "shift_by": 10, "suffix": "", "type": "integer" } ] @@ -2638,9 +2638,9 @@ "address_mask_identifier": "F_4E_PLT_FUEL_REFUEL_SELECTOR_COVER_AM", "address_mask_shift_identifier": "F_4E_PLT_FUEL_REFUEL_SELECTOR_COVER", "description": "selector position", - "mask": 16, + "mask": 512, "max_value": 1, - "shift_by": 4, + "shift_by": 9, "suffix": "", "type": "integer" } ] @@ -2667,9 +2667,9 @@ "address_mask_identifier": "F_4E_PLT_FUEL_WING_FUEL_DUMP_AM", "address_mask_shift_identifier": "F_4E_PLT_FUEL_WING_FUEL_DUMP", "description": "selector position", - "mask": 128, + "mask": 4096, "max_value": 1, - "shift_by": 7, + "shift_by": 12, "suffix": "", "type": "integer" } ] @@ -2696,9 +2696,9 @@ "address_mask_identifier": "F_4E_PLT_FUEL_WING_INTERNAL_FEED_AM", "address_mask_shift_identifier": "F_4E_PLT_FUEL_WING_INTERNAL_FEED", "description": "selector position", - "mask": 8, + "mask": 256, "max_value": 1, - "shift_by": 3, + "shift_by": 8, "suffix": "", "type": "integer" } ] @@ -3880,12 +3880,12 @@ "max_value": 2 } ], "outputs": [ { - "address": 11094, + "address": 11126, "address_mask_shift_identifier": "F_4E_PLT_EXT_LIGHT_TAXI_LAND", "description": "selector position", - "mask": 192, + "mask": 6144, "max_value": 2, - "shift_by": 6, + "shift_by": 11, "suffix": "", "type": "integer" } ] @@ -4227,13 +4227,13 @@ "interface": "action" } ], "outputs": [ { - "address": 11094, + "address": 11126, "address_mask_identifier": "F_4E_PLT_COCKPIT_PRESSURE_EMERGENCY_RELEASE_AM", "address_mask_shift_identifier": "F_4E_PLT_COCKPIT_PRESSURE_EMERGENCY_RELEASE", "description": "selector position", - "mask": 256, + "mask": 8192, "max_value": 1, - "shift_by": 8, + "shift_by": 13, "suffix": "", "type": "integer" } ] @@ -4256,7 +4256,7 @@ "suggested_step": 3200 } ], "outputs": [ { - "address": 11096, + "address": 11128, "address_identifier": "F_4E_PLT_EXT_LIGHT_FORMATION_BRIGHTNESS_A", "address_mask_shift_identifier": "F_4E_PLT_EXT_LIGHT_FORMATION_BRIGHTNESS", "description": "position of the potentiometer", @@ -4278,12 +4278,12 @@ "max_value": 2 } ], "outputs": [ { - "address": 11094, + "address": 11126, "address_mask_shift_identifier": "F_4E_PLT_EXT_LIGHT_FORMATION_MODE", "description": "switch position -- 0 = Down, 1 = Mid, 2 = Up", - "mask": 1536, + "mask": 49152, "max_value": 2, - "shift_by": 9, + "shift_by": 14, "suffix": "", "type": "integer" } ] @@ -4309,13 +4309,13 @@ "interface": "action" } ], "outputs": [ { - "address": 11070, + "address": 11102, "address_mask_identifier": "F_4E_PLT_AFCS_EMERGENCY_RELEASE_AM", "address_mask_shift_identifier": "F_4E_PLT_AFCS_EMERGENCY_RELEASE", "description": "selector position", - "mask": 64, + "mask": 2048, "max_value": 1, - "shift_by": 6, + "shift_by": 11, "suffix": "", "type": "integer" } ] @@ -4339,13 +4339,13 @@ "interface": "action" } ], "outputs": [ { - "address": 11066, + "address": 11102, "address_mask_identifier": "F_4E_PLT_GEAR_NWS_AM", "address_mask_shift_identifier": "F_4E_PLT_GEAR_NWS", "description": "selector position", - "mask": 32768, + "mask": 1024, "max_value": 1, - "shift_by": 15, + "shift_by": 10, "suffix": "", "type": "integer" } ] @@ -4371,13 +4371,13 @@ "interface": "action" } ], "outputs": [ { - "address": 11070, + "address": 11126, "address_mask_identifier": "F_4E_PLT_THROTTLE_CM_DISPENSE_AM", "address_mask_shift_identifier": "F_4E_PLT_THROTTLE_CM_DISPENSE", "description": "selector position", - "mask": 32768, + "mask": 16, "max_value": 1, - "shift_by": 15, + "shift_by": 4, "suffix": "", "type": "integer" } ] @@ -4401,13 +4401,13 @@ "interface": "action" } ], "outputs": [ { - "address": 11094, + "address": 11126, "address_mask_identifier": "F_4E_PLT_THROTTLE_DETENT_L_AM", "address_mask_shift_identifier": "F_4E_PLT_THROTTLE_DETENT_L", "description": "selector position", - "mask": 1, + "mask": 32, "max_value": 1, - "shift_by": 0, + "shift_by": 5, "suffix": "", "type": "integer" } ] @@ -4431,13 +4431,13 @@ "interface": "action" } ], "outputs": [ { - "address": 11094, + "address": 11126, "address_mask_identifier": "F_4E_PLT_THROTTLE_DETENT_R_AM", "address_mask_shift_identifier": "F_4E_PLT_THROTTLE_DETENT_R", "description": "selector position", - "mask": 2, + "mask": 64, "max_value": 1, - "shift_by": 1, + "shift_by": 6, "suffix": "", "type": "integer" } ] @@ -4461,13 +4461,13 @@ "interface": "action" } ], "outputs": [ { - "address": 11070, + "address": 11102, "address_mask_identifier": "F_4E_PLT_THROTTLE_IGNITION_L_AM", "address_mask_shift_identifier": "F_4E_PLT_THROTTLE_IGNITION_L", "description": "selector position", - "mask": 512, + "mask": 16384, "max_value": 1, - "shift_by": 9, + "shift_by": 14, "suffix": "", "type": "integer" } ] @@ -4491,13 +4491,13 @@ "interface": "action" } ], "outputs": [ { - "address": 11070, + "address": 11102, "address_mask_identifier": "F_4E_PLT_THROTTLE_IGNITION_R_AM", "address_mask_shift_identifier": "F_4E_PLT_THROTTLE_IGNITION_R", "description": "selector position", - "mask": 1024, + "mask": 32768, "max_value": 1, - "shift_by": 10, + "shift_by": 15, "suffix": "", "type": "integer" } ] @@ -4513,12 +4513,12 @@ "max_value": 2 } ], "outputs": [ { - "address": 11070, + "address": 11126, "address_mask_shift_identifier": "F_4E_PLT_THROTTLE_MIC", "description": "switch position -- 0 = Down, 1 = Mid, 2 = Up", - "mask": 24576, + "mask": 12, "max_value": 2, - "shift_by": 13, + "shift_by": 2, "suffix": "", "type": "integer" } ] @@ -4534,12 +4534,12 @@ "max_value": 2 } ], "outputs": [ { - "address": 11070, + "address": 11126, "address_mask_shift_identifier": "F_4E_PLT_THROTTLE_SPEED_BRAKE", "description": "switch position -- 0 = Down, 1 = Mid, 2 = Up", - "mask": 6144, + "mask": 3, "max_value": 2, - "shift_by": 11, + "shift_by": 0, "suffix": "", "type": "integer" } ] @@ -5305,9 +5305,9 @@ "address_mask_identifier": "F_4E_PLT_MASTER_ARM_SW_AM", "address_mask_shift_identifier": "F_4E_PLT_MASTER_ARM_SW", "description": "selector position", - "mask": 4, + "mask": 128, "max_value": 1, - "shift_by": 2, + "shift_by": 7, "suffix": "", "type": "integer" } ] @@ -6943,7 +6943,7 @@ "suggested_step": 3200 } ], "outputs": [ { - "address": 11064, + "address": 11098, "address_identifier": "F_4E_WSO_IFF_CHALLENGE_DIM_A", "address_mask_shift_identifier": "F_4E_WSO_IFF_CHALLENGE_DIM", "description": "position of the potentiometer", @@ -6961,13 +6961,13 @@ "identifier": "WSO_IFF_CHALLENGE_LIGHT", "inputs": [ ], "outputs": [ { - "address": 11066, + "address": 11074, "address_mask_identifier": "F_4E_WSO_IFF_CHALLENGE_LIGHT_AM", "address_mask_shift_identifier": "F_4E_WSO_IFF_CHALLENGE_LIGHT", "description": "0 if light is off, 1 if light is on", - "mask": 1, + "mask": 8192, "max_value": 1, - "shift_by": 0, + "shift_by": 13, "suffix": "", "type": "integer" } ] @@ -6991,13 +6991,13 @@ "interface": "action" } ], "outputs": [ { - "address": 11062, + "address": 11074, "address_mask_identifier": "F_4E_WSO_IFF_CHALLENGE_TEST_BUTTON_AM", "address_mask_shift_identifier": "F_4E_WSO_IFF_CHALLENGE_TEST_BUTTON", "description": "selector position", - "mask": 32768, + "mask": 4096, "max_value": 1, - "shift_by": 15, + "shift_by": 12, "suffix": "", "type": "integer" } ] @@ -7009,7 +7009,7 @@ "identifier": "WSO_IFF_CODE", "inputs": [ ], "outputs": [ { - "address": 11056, + "address": 11090, "address_identifier": "F_4E_WSO_IFF_CODE_A", "description": "IFF Code", "max_length": 4, @@ -7024,12 +7024,12 @@ "identifier": "WSO_IFF_CODE_HUNDREDS", "inputs": [ ], "outputs": [ { - "address": 11054, + "address": 11066, "address_mask_shift_identifier": "F_4E_WSO_IFF_CODE_HUNDREDS", "description": "IFF Code (hundreds)", - "mask": 3840, + "mask": 61440, "max_value": 8, - "shift_by": 8, + "shift_by": 12, "suffix": "", "type": "integer" } ] @@ -7053,13 +7053,13 @@ "interface": "action" } ], "outputs": [ { - "address": 11034, + "address": 11070, "address_mask_identifier": "F_4E_WSO_IFF_CODE_INC_HUNDREDS_AM", "address_mask_shift_identifier": "F_4E_WSO_IFF_CODE_INC_HUNDREDS", "description": "selector position", - "mask": 32768, + "mask": 4096, "max_value": 1, - "shift_by": 15, + "shift_by": 12, "suffix": "", "type": "integer" } ] @@ -7083,13 +7083,13 @@ "interface": "action" } ], "outputs": [ { - "address": 11062, + "address": 11070, "address_mask_identifier": "F_4E_WSO_IFF_CODE_INC_ONES_AM", "address_mask_shift_identifier": "F_4E_WSO_IFF_CODE_INC_ONES", "description": "selector position", - "mask": 512, + "mask": 16384, "max_value": 1, - "shift_by": 9, + "shift_by": 14, "suffix": "", "type": "integer" } ] @@ -7113,13 +7113,13 @@ "interface": "action" } ], "outputs": [ { - "address": 11062, + "address": 11070, "address_mask_identifier": "F_4E_WSO_IFF_CODE_INC_TENS_AM", "address_mask_shift_identifier": "F_4E_WSO_IFF_CODE_INC_TENS", "description": "selector position", - "mask": 256, + "mask": 8192, "max_value": 1, - "shift_by": 8, + "shift_by": 13, "suffix": "", "type": "integer" } ] @@ -7143,13 +7143,13 @@ "interface": "action" } ], "outputs": [ { - "address": 11034, + "address": 11062, "address_mask_identifier": "F_4E_WSO_IFF_CODE_INC_THOUSANDS_AM", "address_mask_shift_identifier": "F_4E_WSO_IFF_CODE_INC_THOUSANDS", "description": "selector position", - "mask": 16384, + "mask": 32768, "max_value": 1, - "shift_by": 14, + "shift_by": 15, "suffix": "", "type": "integer" } ] @@ -7161,12 +7161,12 @@ "identifier": "WSO_IFF_CODE_ONES", "inputs": [ ], "outputs": [ { - "address": 11054, + "address": 11062, "address_mask_shift_identifier": "F_4E_WSO_IFF_CODE_ONES", "description": "IFF Code (ones)", - "mask": 15, + "mask": 15360, "max_value": 8, - "shift_by": 0, + "shift_by": 10, "suffix": "", "type": "integer" } ] @@ -7178,12 +7178,12 @@ "identifier": "WSO_IFF_CODE_TENS", "inputs": [ ], "outputs": [ { - "address": 11054, + "address": 11066, "address_mask_shift_identifier": "F_4E_WSO_IFF_CODE_TENS", "description": "IFF Code (tens)", - "mask": 240, + "mask": 3840, "max_value": 8, - "shift_by": 4, + "shift_by": 8, "suffix": "", "type": "integer" } ] @@ -7195,12 +7195,12 @@ "identifier": "WSO_IFF_CODE_THOUSANDS", "inputs": [ ], "outputs": [ { - "address": 11054, + "address": 11070, "address_mask_shift_identifier": "F_4E_WSO_IFF_CODE_THOUSANDS", "description": "IFF Code (thousands)", - "mask": 61440, + "mask": 3840, "max_value": 8, - "shift_by": 12, + "shift_by": 8, "suffix": "", "type": "integer" } ] @@ -7221,7 +7221,7 @@ "suggested_step": 3200 } ], "outputs": [ { - "address": 11068, + "address": 11100, "address_identifier": "F_4E_WSO_IFF_COMBAT_TREE_CHALLENGE_DIM_A", "address_mask_shift_identifier": "F_4E_WSO_IFF_COMBAT_TREE_CHALLENGE_DIM", "description": "position of the potentiometer", @@ -7251,13 +7251,13 @@ "interface": "action" } ], "outputs": [ { - "address": 11066, + "address": 11096, "address_mask_identifier": "F_4E_WSO_IFF_COMBAT_TREE_CHALLENGE_TEST_BUTTON_AM", "address_mask_shift_identifier": "F_4E_WSO_IFF_COMBAT_TREE_CHALLENGE_TEST_BUTTON", "description": "selector position", - "mask": 16, + "mask": 512, "max_value": 1, - "shift_by": 4, + "shift_by": 9, "suffix": "", "type": "integer" } ] @@ -7269,13 +7269,13 @@ "identifier": "WSO_IFF_COMBAT_TREE_CHALLENGE_TEST_LIGHT", "inputs": [ ], "outputs": [ { - "address": 11066, + "address": 11096, "address_mask_identifier": "F_4E_WSO_IFF_COMBAT_TREE_CHALLENGE_TEST_LIGHT_AM", "address_mask_shift_identifier": "F_4E_WSO_IFF_COMBAT_TREE_CHALLENGE_TEST_LIGHT", "description": "0 if light is off, 1 if light is on", - "mask": 32, + "mask": 1024, "max_value": 1, - "shift_by": 5, + "shift_by": 10, "suffix": "", "type": "integer" } ] @@ -7294,12 +7294,12 @@ "max_value": 2 } ], "outputs": [ { - "address": 11066, + "address": 11096, "address_mask_shift_identifier": "F_4E_WSO_IFF_COMBAT_TREE_MODE_2", "description": "selector position", - "mask": 384, + "mask": 12288, "max_value": 2, - "shift_by": 7, + "shift_by": 12, "suffix": "", "type": "integer" } ] @@ -7318,12 +7318,12 @@ "max_value": 2 } ], "outputs": [ { - "address": 11066, + "address": 11096, "address_mask_shift_identifier": "F_4E_WSO_IFF_COMBAT_TREE_MODE_3", "description": "selector position", - "mask": 1536, + "mask": 49152, "max_value": 2, - "shift_by": 9, + "shift_by": 14, "suffix": "", "type": "integer" } ] @@ -7347,13 +7347,13 @@ "interface": "action" } ], "outputs": [ { - "address": 11066, + "address": 11096, "address_mask_identifier": "F_4E_WSO_IFF_COMBAT_TREE_TEST_AM", "address_mask_shift_identifier": "F_4E_WSO_IFF_COMBAT_TREE_TEST", "description": "selector position", - "mask": 64, + "mask": 2048, "max_value": 1, - "shift_by": 6, + "shift_by": 11, "suffix": "", "type": "integer" } ] @@ -7365,7 +7365,7 @@ "identifier": "WSO_IFF_MODE", "inputs": [ ], "outputs": [ { - "address": 11060, + "address": 11094, "address_identifier": "F_4E_WSO_IFF_MODE_A", "description": "IFF Mode", "max_length": 3, @@ -7392,13 +7392,13 @@ "interface": "action" } ], "outputs": [ { - "address": 11062, + "address": 11070, "address_mask_identifier": "F_4E_WSO_IFF_MODE_DEC_AM", "address_mask_shift_identifier": "F_4E_WSO_IFF_MODE_DEC", "description": "selector position", - "mask": 1024, + "mask": 32768, "max_value": 1, - "shift_by": 10, + "shift_by": 15, "suffix": "", "type": "integer" } ] @@ -7422,13 +7422,13 @@ "interface": "action" } ], "outputs": [ { - "address": 11062, + "address": 11074, "address_mask_identifier": "F_4E_WSO_IFF_MODE_DEC_HUNDREDS_AM", "address_mask_shift_identifier": "F_4E_WSO_IFF_MODE_DEC_HUNDREDS", "description": "selector position", - "mask": 4096, + "mask": 512, "max_value": 1, - "shift_by": 12, + "shift_by": 9, "suffix": "", "type": "integer" } ] @@ -7452,13 +7452,13 @@ "interface": "action" } ], "outputs": [ { - "address": 11062, + "address": 11074, "address_mask_identifier": "F_4E_WSO_IFF_MODE_DEC_ONES_AM", "address_mask_shift_identifier": "F_4E_WSO_IFF_MODE_DEC_ONES", "description": "selector position", - "mask": 16384, + "mask": 2048, "max_value": 1, - "shift_by": 14, + "shift_by": 11, "suffix": "", "type": "integer" } ] @@ -7482,13 +7482,13 @@ "interface": "action" } ], "outputs": [ { - "address": 11062, + "address": 11074, "address_mask_identifier": "F_4E_WSO_IFF_MODE_DEC_TENS_AM", "address_mask_shift_identifier": "F_4E_WSO_IFF_MODE_DEC_TENS", "description": "selector position", - "mask": 8192, + "mask": 1024, "max_value": 1, - "shift_by": 13, + "shift_by": 10, "suffix": "", "type": "integer" } ] @@ -7512,13 +7512,13 @@ "interface": "action" } ], "outputs": [ { - "address": 11062, + "address": 11074, "address_mask_identifier": "F_4E_WSO_IFF_MODE_DEC_THOUSANDS_AM", "address_mask_shift_identifier": "F_4E_WSO_IFF_MODE_DEC_THOUSANDS", "description": "selector position", - "mask": 2048, + "mask": 256, "max_value": 1, - "shift_by": 11, + "shift_by": 8, "suffix": "", "type": "integer" } ] @@ -7542,13 +7542,13 @@ "interface": "action" } ], "outputs": [ { - "address": 11034, + "address": 11062, "address_mask_identifier": "F_4E_WSO_IFF_MODE_INC_AM", "address_mask_shift_identifier": "F_4E_WSO_IFF_MODE_INC", "description": "selector position", - "mask": 8192, + "mask": 16384, "max_value": 1, - "shift_by": 13, + "shift_by": 14, "suffix": "", "type": "integer" } ] @@ -7564,12 +7564,12 @@ "max_value": 2 } ], "outputs": [ { - "address": 11066, + "address": 11074, "address_mask_shift_identifier": "F_4E_WSO_IFF_TEST_CHALLENGE", "description": "switch position -- 0 = Down, 1 = Mid, 2 = Up", - "mask": 6, + "mask": 49152, "max_value": 2, - "shift_by": 1, + "shift_by": 14, "suffix": "", "type": "integer" } ] @@ -8734,13 +8734,13 @@ "interface": "action" } ], "outputs": [ { - "address": 11070, + "address": 11102, "address_mask_identifier": "F_4E_WSO_AFCS_EMERGENCY_RELEASE_AM", "address_mask_shift_identifier": "F_4E_WSO_AFCS_EMERGENCY_RELEASE", "description": "selector position", - "mask": 256, + "mask": 8192, "max_value": 1, - "shift_by": 8, + "shift_by": 13, "suffix": "", "type": "integer" } ] @@ -8764,13 +8764,13 @@ "interface": "action" } ], "outputs": [ { - "address": 11070, + "address": 11102, "address_mask_identifier": "F_4E_WSO_GEAR_NWS_AM", "address_mask_shift_identifier": "F_4E_WSO_GEAR_NWS", "description": "selector position", - "mask": 128, + "mask": 4096, "max_value": 1, - "shift_by": 7, + "shift_by": 12, "suffix": "", "type": "integer" } ] @@ -8788,12 +8788,12 @@ "max_value": 2 } ], "outputs": [ { - "address": 11094, + "address": 11126, "address_mask_shift_identifier": "F_4E_WSO_THROTTLE_MIC", "description": "switch position -- 0 = Down, 1 = Mid, 2 = Up", - "mask": 48, + "mask": 1536, "max_value": 2, - "shift_by": 4, + "shift_by": 9, "suffix": "", "type": "integer" } ] @@ -8809,17 +8809,353 @@ "max_value": 2 } ], "outputs": [ { - "address": 11094, + "address": 11126, "address_mask_shift_identifier": "F_4E_WSO_THROTTLE_SPEED_BRAKE", "description": "switch position -- 0 = Down, 1 = Mid, 2 = Up", - "mask": 12, + "mask": 384, "max_value": 2, - "shift_by": 2, + "shift_by": 7, "suffix": "", "type": "integer" } ] } }, + "WSO WRCS": { + "WSO_WRCS_ALT_RANGE": { + "category": "WSO WRCS", + "control_type": "limited_dial", + "description": "Set Target Altitude/Range (x100 ft)", + "identifier": "WSO_WRCS_ALT_RANGE", + "inputs": [ { + "description": "set the position of the dial", + "interface": "set_state", + "max_value": 65535 + }, { + "description": "turn the dial left or right", + "interface": "variable_step", + "max_value": 65535, + "suggested_step": 3200 + } ], + "outputs": [ { + "address": 11042, + "address_identifier": "F_4E_WSO_WRCS_ALT_RANGE_A", + "address_mask_shift_identifier": "F_4E_WSO_WRCS_ALT_RANGE", + "description": "position of the potentiometer", + "mask": 65535, + "max_value": 65535, + "shift_by": 0, + "suffix": "", + "type": "integer" + } ] + }, + "WSO_WRCS_ALT_RANGE_VALUE": { + "category": "WSO WRCS", + "control_type": "display", + "description": "Altitude/Range (x100 ft)", + "identifier": "WSO_WRCS_ALT_RANGE_VALUE", + "inputs": [ ], + "outputs": [ { + "address": 11060, + "address_identifier": "F_4E_WSO_WRCS_ALT_RANGE_VALUE_A", + "description": "Altitude/Range (x100 ft)", + "max_length": 3, + "suffix": "", + "type": "string" + } ] + }, + "WSO_WRCS_BIT_MODE": { + "category": "WSO WRCS", + "control_type": "selector", + "description": "Select BIT Mode", + "identifier": "WSO_WRCS_BIT_MODE", + "inputs": [ { + "description": "switch to previous or next state", + "interface": "fixed_step" + }, { + "description": "set position", + "interface": "set_state", + "max_value": 5 + } ], + "outputs": [ { + "address": 11034, + "address_mask_shift_identifier": "F_4E_WSO_WRCS_BIT_MODE", + "description": "selector position", + "mask": 28, + "max_value": 5, + "shift_by": 2, + "suffix": "", + "type": "integer" + } ] + }, + "WSO_WRCS_DRAG_COEFFICIENT": { + "category": "WSO WRCS", + "control_type": "limited_dial", + "description": "Set Drag Coefficient", + "identifier": "WSO_WRCS_DRAG_COEFFICIENT", + "inputs": [ { + "description": "set the position of the dial", + "interface": "set_state", + "max_value": 65535 + }, { + "description": "turn the dial left or right", + "interface": "variable_step", + "max_value": 65535, + "suggested_step": 3200 + } ], + "outputs": [ { + "address": 11040, + "address_identifier": "F_4E_WSO_WRCS_DRAG_COEFFICIENT_A", + "address_mask_shift_identifier": "F_4E_WSO_WRCS_DRAG_COEFFICIENT", + "description": "position of the potentiometer", + "mask": 65535, + "max_value": 65535, + "shift_by": 0, + "suffix": "", + "type": "integer" + } ] + }, + "WSO_WRCS_DRAG_COEFFICIENT_VALUE": { + "category": "WSO WRCS", + "control_type": "display", + "description": "Drag Coefficient", + "identifier": "WSO_WRCS_DRAG_COEFFICIENT_VALUE", + "inputs": [ ], + "outputs": [ { + "address": 11064, + "address_identifier": "F_4E_WSO_WRCS_DRAG_COEFFICIENT_VALUE_A", + "description": "Drag Coefficient", + "max_length": 3, + "suffix": "", + "type": "string" + } ] + }, + "WSO_WRCS_EW_DISTANCE": { + "category": "WSO WRCS", + "control_type": "limited_dial", + "description": "Set Target E/W Distance (x100 ft)", + "identifier": "WSO_WRCS_EW_DISTANCE", + "inputs": [ { + "description": "set the position of the dial", + "interface": "set_state", + "max_value": 65535 + }, { + "description": "turn the dial left or right", + "interface": "variable_step", + "max_value": 65535, + "suggested_step": 3200 + } ], + "outputs": [ { + "address": 11046, + "address_identifier": "F_4E_WSO_WRCS_EW_DISTANCE_A", + "address_mask_shift_identifier": "F_4E_WSO_WRCS_EW_DISTANCE", + "description": "position of the potentiometer", + "mask": 65535, + "max_value": 65535, + "shift_by": 0, + "suffix": "", + "type": "integer" + } ] + }, + "WSO_WRCS_EW_DISTANCE_VALUE": { + "category": "WSO WRCS", + "control_type": "display", + "description": "E/W Distance (x100 ft)", + "identifier": "WSO_WRCS_EW_DISTANCE_VALUE", + "inputs": [ ], + "outputs": [ { + "address": 11056, + "address_identifier": "F_4E_WSO_WRCS_EW_DISTANCE_VALUE_A", + "description": "E/W Distance (x100 ft)", + "max_length": 4, + "suffix": "", + "type": "string" + } ] + }, + "WSO_WRCS_NS_DISTANCE": { + "category": "WSO WRCS", + "control_type": "limited_dial", + "description": "Set Target N/S Distance (x100 ft)", + "identifier": "WSO_WRCS_NS_DISTANCE", + "inputs": [ { + "description": "set the position of the dial", + "interface": "set_state", + "max_value": 65535 + }, { + "description": "turn the dial left or right", + "interface": "variable_step", + "max_value": 65535, + "suggested_step": 3200 + } ], + "outputs": [ { + "address": 11048, + "address_identifier": "F_4E_WSO_WRCS_NS_DISTANCE_A", + "address_mask_shift_identifier": "F_4E_WSO_WRCS_NS_DISTANCE", + "description": "position of the potentiometer", + "mask": 65535, + "max_value": 65535, + "shift_by": 0, + "suffix": "", + "type": "integer" + } ] + }, + "WSO_WRCS_NS_DISTANCE_VALUE": { + "category": "WSO WRCS", + "control_type": "display", + "description": "N/S Distance (x100 ft)", + "identifier": "WSO_WRCS_NS_DISTANCE_VALUE", + "inputs": [ ], + "outputs": [ { + "address": 11052, + "address_identifier": "F_4E_WSO_WRCS_NS_DISTANCE_VALUE_A", + "description": "N/S Distance (x100 ft)", + "max_length": 4, + "suffix": "", + "type": "string" + } ] + }, + "WSO_WRCS_RANGE_MULTIPLIER": { + "category": "WSO WRCS", + "control_type": "selector", + "description": "WRCS Range x100 Multiplier", + "identifier": "WSO_WRCS_RANGE_MULTIPLIER", + "inputs": [ { + "description": "switch to previous or next state", + "interface": "fixed_step" + }, { + "description": "set position", + "interface": "set_state", + "max_value": 1 + }, { + "argument": "TOGGLE", + "description": "Toggle switch state", + "interface": "action" + } ], + "outputs": [ { + "address": 11034, + "address_mask_identifier": "F_4E_WSO_WRCS_RANGE_MULTIPLIER_AM", + "address_mask_shift_identifier": "F_4E_WSO_WRCS_RANGE_MULTIPLIER", + "description": "selector position", + "mask": 64, + "max_value": 1, + "shift_by": 6, + "suffix": "", + "type": "integer" + } ] + }, + "WSO_WRCS_RELEASE_ADVANCE": { + "category": "WSO WRCS", + "control_type": "limited_dial", + "description": "Set Release Advance (ms)", + "identifier": "WSO_WRCS_RELEASE_ADVANCE", + "inputs": [ { + "description": "set the position of the dial", + "interface": "set_state", + "max_value": 65535 + }, { + "description": "turn the dial left or right", + "interface": "variable_step", + "max_value": 65535, + "suggested_step": 3200 + } ], + "outputs": [ { + "address": 11050, + "address_identifier": "F_4E_WSO_WRCS_RELEASE_ADVANCE_A", + "address_mask_shift_identifier": "F_4E_WSO_WRCS_RELEASE_ADVANCE", + "description": "position of the potentiometer", + "mask": 65535, + "max_value": 65535, + "shift_by": 0, + "suffix": "", + "type": "integer" + } ] + }, + "WSO_WRCS_RELEASE_ADVANCE_VALUE": { + "category": "WSO WRCS", + "control_type": "display", + "description": "Release Advance (ms)", + "identifier": "WSO_WRCS_RELEASE_ADVANCE_VALUE", + "inputs": [ ], + "outputs": [ { + "address": 11068, + "address_identifier": "F_4E_WSO_WRCS_RELEASE_ADVANCE_VALUE_A", + "description": "Release Advance (ms)", + "max_length": 3, + "suffix": "", + "type": "string" + } ] + }, + "WSO_WRCS_RELEASE_RANGE": { + "category": "WSO WRCS", + "control_type": "limited_dial", + "description": "Set Release Range (x10 ft)", + "identifier": "WSO_WRCS_RELEASE_RANGE", + "inputs": [ { + "description": "set the position of the dial", + "interface": "set_state", + "max_value": 65535 + }, { + "description": "turn the dial left or right", + "interface": "variable_step", + "max_value": 65535, + "suggested_step": 3200 + } ], + "outputs": [ { + "address": 11044, + "address_identifier": "F_4E_WSO_WRCS_RELEASE_RANGE_A", + "address_mask_shift_identifier": "F_4E_WSO_WRCS_RELEASE_RANGE", + "description": "position of the potentiometer", + "mask": 65535, + "max_value": 65535, + "shift_by": 0, + "suffix": "", + "type": "integer" + } ] + }, + "WSO_WRCS_RELEASE_RANGE_VALUE": { + "category": "WSO WRCS", + "control_type": "display", + "description": "Release Range (x10 ft)", + "identifier": "WSO_WRCS_RELEASE_RANGE_VALUE", + "inputs": [ ], + "outputs": [ { + "address": 11072, + "address_identifier": "F_4E_WSO_WRCS_RELEASE_RANGE_VALUE_A", + "description": "Release Range (x10 ft)", + "max_length": 3, + "suffix": "", + "type": "string" + } ] + }, + "WSO_WRCS_TARGET_FIND_MODE": { + "category": "WSO WRCS", + "control_type": "selector", + "description": "Target Find Mode", + "identifier": "WSO_WRCS_TARGET_FIND_MODE", + "inputs": [ { + "description": "switch to previous or next state", + "interface": "fixed_step" + }, { + "description": "set position", + "interface": "set_state", + "max_value": 1 + }, { + "argument": "TOGGLE", + "description": "Toggle switch state", + "interface": "action" + } ], + "outputs": [ { + "address": 11034, + "address_mask_identifier": "F_4E_WSO_WRCS_TARGET_FIND_MODE_AM", + "address_mask_shift_identifier": "F_4E_WSO_WRCS_TARGET_FIND_MODE", + "description": "selector position", + "mask": 32, + "max_value": 1, + "shift_by": 5, + "suffix": "", + "type": "integer" + } ] + } + }, "WSO Warning Indicators": { "WSO_WCA_CANOPY_UNLOCKED": { "category": "WSO Warning Indicators", diff --git a/Scripts/DCS-BIOS/lib/modules/aircraft_modules/F-4E.lua b/Scripts/DCS-BIOS/lib/modules/aircraft_modules/F-4E.lua index 116ab1da7..61a2f30a9 100644 --- a/Scripts/DCS-BIOS/lib/modules/aircraft_modules/F-4E.lua +++ b/Scripts/DCS-BIOS/lib/modules/aircraft_modules/F-4E.lua @@ -70,6 +70,21 @@ local function drum_value(dev0, arg_number, invert, max_value) return val % max_value end +--- Returns the string value of a regular drum +--- @param dev0 CockpitDevice +--- @param ... integer the dcs argument numbers for each drum wheel, left to right +--- @return string value +local function drum_set(dev0, ...) + local drum_arg_numbers = { ... } + local vals = {} + + for i, arg_number in ipairs(drum_arg_numbers) do + vals[i] = drum_value(dev0, arg_number) + end + + return string.format(string.rep("%d", #vals), unpack(vals)) +end + -- ICS local ICS_DEVICE_ID = 2 @@ -480,17 +495,11 @@ end, 7, WSO_NAVIGATION_PANEL, "Magnetic Variation") -- wind F_4E:defineString("WSO_NAV_WIND_DIRECTION_VALUE", function(dev0) - local ones = drum_value(dev0, 906) - local tens = drum_value(dev0, 907) - local hundreds = drum_value(dev0, 908) - return string.format("%d%d%d", hundreds, tens, ones) + return drum_set(dev0, 908, 907, 906) end, 3, WSO_NAVIGATION_PANEL, "Wind Direction") F_4E:defineString("WSO_NAV_WIND_STRENGTH_VALUE", function(dev0) - local ones = drum_value(dev0, 902) - local tens = drum_value(dev0, 903) - local hundreds = drum_value(dev0, 904) - return string.format("%d%d%d", hundreds, tens, ones) + return drum_set(dev0, 904, 903, 902) end, 3, WSO_NAVIGATION_PANEL, "Wind Strength") -- lat/longs @@ -786,6 +795,45 @@ F_4E:defineFloat("WSO_O2_PRESSURE", 245, { 0, 1 }, WSO_O2_SYSTEM, "Oxygen Supply -- Weapons local WEAPONS_DEVICE_ID = 27 +-- WSO WRCS +local WSO_WRCS = "WSO WRCS" + +F_4E:definePotentiometer("WSO_WRCS_DRAG_COEFFICIENT", WEAPONS_DEVICE_ID, 3024, 331, { 0, 1 }, WSO_WRCS, "Set Drag Coefficient") +F_4E:definePotentiometer("WSO_WRCS_ALT_RANGE", WEAPONS_DEVICE_ID, 3025, 330, { 0, 1 }, WSO_WRCS, "Set Target Altitude/Range (x100 ft)") +F_4E:definePotentiometer("WSO_WRCS_RELEASE_RANGE", WEAPONS_DEVICE_ID, 3029, 323, { 0, 1 }, WSO_WRCS, "Set Release Range (x10 ft)") +F_4E:definePotentiometer("WSO_WRCS_EW_DISTANCE", WEAPONS_DEVICE_ID, 3026, 321, { 0, 1 }, WSO_WRCS, "Set Target E/W Distance (x100 ft)") +F_4E:definePotentiometer("WSO_WRCS_NS_DISTANCE", WEAPONS_DEVICE_ID, 3027, 320, { 0, 1 }, WSO_WRCS, "Set Target N/S Distance (x100 ft)") +F_4E:definePotentiometer("WSO_WRCS_RELEASE_ADVANCE", WEAPONS_DEVICE_ID, 3028, 322, { 0, 1 }, WSO_WRCS, "Set Release Advance (ms)") +F_4E:defineTumb("WSO_WRCS_BIT_MODE", WEAPONS_DEVICE_ID, 3030, 332, 1 / 5, { 0, 1 }, nil, true, WSO_WRCS, "Select BIT Mode") -- doesn't seem to be properly implemented in-game yet +F_4E:defineToggleSwitch("WSO_WRCS_TARGET_FIND_MODE", WEAPONS_DEVICE_ID, 3040, 1017, WSO_WRCS, "Target Find Mode") +F_4E:defineToggleSwitch("WSO_WRCS_RANGE_MULTIPLIER", WEAPONS_DEVICE_ID, 3041, 1018, WSO_WRCS, "WRCS Range x100 Multiplier") + +F_4E:defineString("WSO_WRCS_NS_DISTANCE_VALUE", function(dev0) + local south = dev0:get_argument_value(345) < 0.5 + return string.format("%s%s", south and "S" or "N", drum_set(dev0, 308, 309, 310)) +end, 4, WSO_WRCS, "N/S Distance (x100 ft)") + +F_4E:defineString("WSO_WRCS_EW_DISTANCE_VALUE", function(dev0) + local west = dev0:get_argument_value(346) < 0.5 + return string.format("%s%s", west and "W" or "E", drum_set(dev0, 311, 312, 313)) +end, 4, WSO_WRCS, "E/W Distance (x100 ft)") + +F_4E:defineString("WSO_WRCS_ALT_RANGE_VALUE", function(dev0) + return drum_set(dev0, 324, 325, 326) +end, 3, WSO_WRCS, "Altitude/Range (x100 ft)") + +F_4E:defineString("WSO_WRCS_DRAG_COEFFICIENT_VALUE", function(dev0) + return drum_set(dev0, 327, 328, 329) +end, 3, WSO_WRCS, "Drag Coefficient") + +F_4E:defineString("WSO_WRCS_RELEASE_ADVANCE_VALUE", function(dev0) + return drum_set(dev0, 314, 315, 316) +end, 3, WSO_WRCS, "Release Advance (ms)") + +F_4E:defineString("WSO_WRCS_RELEASE_RANGE_VALUE", function(dev0) + return drum_set(dev0, 317, 318, 319) +end, 3, WSO_WRCS, "Release Range (x10 ft)") + -- pilot weapons panel local PILOT_WEAPONS_PANEL = "PLT Weapons Panel"