diff --git a/Scripts/DCS-BIOS/lib/AircraftList.lua b/Scripts/DCS-BIOS/lib/AircraftList.lua index 8b37f500a..f35ed1e29 100644 --- a/Scripts/DCS-BIOS/lib/AircraftList.lua +++ b/Scripts/DCS-BIOS/lib/AircraftList.lua @@ -88,7 +88,10 @@ add("Supercarrier", true) --FC3 add("A-10A", false) add("F-15C", false) +add("F-5E-3_FC", false) +add("F-86F_FC", false) add("J-11A", false) +add("MiG-15bis_FC", false) add("MiG-29A", false) add("MiG-29G", false) add("MiG-29S", false) diff --git a/Scripts/DCS-BIOS/lib/BIOSStateMachine.lua b/Scripts/DCS-BIOS/lib/BIOSStateMachine.lua index f9858ae22..b02314634 100644 --- a/Scripts/DCS-BIOS/lib/BIOSStateMachine.lua +++ b/Scripts/DCS-BIOS/lib/BIOSStateMachine.lua @@ -66,6 +66,7 @@ end --- @param module Module --- @param dev0 CockpitDevice? function BIOSStateMachine:queue_module_data(module, dev0) + dev0 = module.dev0_required and dev0 or {} -- if dev0 isn't required, just pass an empty object if dev0 ~= nil then for _, hook in ipairs(module.exportHooks) do local status, result = pcall(hook, dev0) diff --git a/Scripts/DCS-BIOS/lib/modules/Module.lua b/Scripts/DCS-BIOS/lib/modules/Module.lua index 22590fd36..865f4df21 100644 --- a/Scripts/DCS-BIOS/lib/modules/Module.lua +++ b/Scripts/DCS-BIOS/lib/modules/Module.lua @@ -28,6 +28,7 @@ end --- @field memoryMap MemoryMap a map of all memory allocations for sending and receiving data --- @field exportHooks fun(dev0: CockpitDevice)[] functions to run on sending data --- @field aircraftList string[] list of aircraft ids to export to +--- @field dev0_required boolean local Module = {} --- Constructs a new module @@ -43,6 +44,7 @@ function Module:new(name, baseAddress, acftList) memoryMap = MemoryMap:new(baseAddress), exportHooks = {}, aircraftList = acftList, + dev0_required = true, } setmetatable(o, self) diff --git a/Scripts/DCS-BIOS/lib/modules/aircraft_modules/FC3.lua b/Scripts/DCS-BIOS/lib/modules/aircraft_modules/FC3.lua index e9c414120..a5a3d0541 100644 --- a/Scripts/DCS-BIOS/lib/modules/aircraft_modules/FC3.lua +++ b/Scripts/DCS-BIOS/lib/modules/aircraft_modules/FC3.lua @@ -6,6 +6,7 @@ local Module = require("Scripts.DCS-BIOS.lib.modules.Module") --- @class FC3: Module local FC3 = Module:new("FC3", 0x6000, AircraftList.FLAMING_CLIFFS_AIRCRAFT) +FC3.dev0_required = false local altitude = " -- " local altitude_ground_level = " ---- " diff --git a/Scripts/DCS-BIOS/lib/modules/common_modules/CommonData.lua b/Scripts/DCS-BIOS/lib/modules/common_modules/CommonData.lua index 05e87b72b..0a0bb59e2 100644 --- a/Scripts/DCS-BIOS/lib/modules/common_modules/CommonData.lua +++ b/Scripts/DCS-BIOS/lib/modules/common_modules/CommonData.lua @@ -6,6 +6,7 @@ local Module = require("Scripts.DCS-BIOS.lib.modules.Module") --- @class CommonData: Module local CommonData = Module:new("CommonData", 0x0400, AircraftList.ALL_PLAYABLE_AIRCRAFT) +CommonData.dev0_required = false local latDeg = 0 local latSec = 0 diff --git a/Scripts/DCS-BIOS/lib/modules/common_modules/MetadataEnd.lua b/Scripts/DCS-BIOS/lib/modules/common_modules/MetadataEnd.lua index 86db6089a..2f7733d37 100644 --- a/Scripts/DCS-BIOS/lib/modules/common_modules/MetadataEnd.lua +++ b/Scripts/DCS-BIOS/lib/modules/common_modules/MetadataEnd.lua @@ -10,6 +10,7 @@ local Module = require("Scripts.DCS-BIOS.lib.modules.Module") --- setUpdateCounter --- setUpdateSkipCounter local MetadataEnd = Module:new("MetadataEnd", 0xfffe, {}) +MetadataEnd.dev0_required = false local updateCounter = 0 local updateSkipCounter = 0 diff --git a/Scripts/DCS-BIOS/lib/modules/common_modules/MetadataStart.lua b/Scripts/DCS-BIOS/lib/modules/common_modules/MetadataStart.lua index d943e7f0a..46375ed8b 100644 --- a/Scripts/DCS-BIOS/lib/modules/common_modules/MetadataStart.lua +++ b/Scripts/DCS-BIOS/lib/modules/common_modules/MetadataStart.lua @@ -10,6 +10,7 @@ local Module = require("Scripts.DCS-BIOS.lib.modules.Module") --- @class MetadataStart: Module --- @field setAircraftName function local MetadataStart = Module:new("MetadataStart", 0x0000, {}) +MetadataStart.dev0_required = false -- "data" will be set by the Protocol module local aircraft_name diff --git a/Scripts/DCS-BIOS/lib/modules/common_modules/NS430.lua b/Scripts/DCS-BIOS/lib/modules/common_modules/NS430.lua index 3509ffd5d..065da90c8 100644 --- a/Scripts/DCS-BIOS/lib/modules/common_modules/NS430.lua +++ b/Scripts/DCS-BIOS/lib/modules/common_modules/NS430.lua @@ -23,7 +23,9 @@ local ns430_aircraft = { "F-14B", "F-15C", "F-5E-3", + "F-5E-3_FC", "F-86F Sabre", + "F-86F_FC", "FW-190A8", "FW-190D9", "I-16", @@ -35,6 +37,7 @@ local ns430_aircraft = { "Mi-8MT", "Mi-24P", "MiG-15bis", + "MiG-15bis_FC", "MiG-19P", "MiG-21Bis", "MiG-29A", @@ -61,6 +64,7 @@ local ns430_aircraft = { } --- @class NS430: Module local NS430 = Module:new("NS430", 0x0600, ns430_aircraft) +NS430.dev0_required = false -- v2.0 by Celemourn -- v3.0 ArturDCS