diff --git a/Scripts/DCS-ExportScript/ExportsModules/T-45.lua b/Scripts/DCS-ExportScript/ExportsModules/T-45.lua new file mode 100644 index 0000000..e6e023a --- /dev/null +++ b/Scripts/DCS-ExportScript/ExportsModules/T-45.lua @@ -0,0 +1,242 @@ +-- T-45C Mod +-- ExportScript created by skypickle + +ExportScript.FoundDCSModule = true +ExportScript.Version.T45 = "1.2.1" +ExportScript.ConfigEveryFrameArguments = +{ + --[[ + every frames arguments + based of "mainpanel_init.lua" + Example (http://www.lua.org/manual/5.1/manual.html#pdf-string.format) + [DeviceID] = "Format" + [4] = "%.4f", <- floating-point number with 4 digits after point + [19] = "%0.1f", <- floating-point number with 1 digit after point + [129] = "%1d", <- decimal number + [5] = "%.f", <- floating point number rounded to a decimal number + ]] +} +ExportScript.ConfigArguments = +{ + --[[ + arguments for export in low tick interval + based on "clickabledata.lua" + ]] + --Arg ID] = "%.2f", --Hints +[92] = "%.2f", --Control Aug Switch +[181] = "%.2f", --Hook Bypass +[165] = "%.2f", --Altimeter Setting Knob +[250] = "%.2f", --COMM 1 Frequency Tens +[251] = "%.2f", --COMM 1 Frequency Ones +[252] = "%.2f", --COMM 1 Frequency Tenths +[253] = "%.2f", --COMM 1 Frequency Hundredths +[254] = "%.2f", --COMM 1 AM/FM Mode Switch +[246] = "%.2f", --COMM 1 Volume +[256] = "%.2f", --COMM 1 Mode Control Selector +[255] = "%.2f", --COMM 1 Brightness +[196] = "%.2f", --MIC Switch +[198] = "%.2f", --Intercom Volume +[191] = "%.2f", --COMM 1 Switch +[192] = "%.2f", --COMM 2 Switch +[294] = "%.2f", --Microphone Button +[274] = "%.2f", --COMM 2 Frequency Tens +[275] = "%.2f", --COMM 2 Frequency Ones +[276] = "%.2f", --COMM 2 Frequency Tenths +[277] = "%.2f", --COMM 2 Frequency Hundredths +[278] = "%.2f", --COMM 2 AM/FM Mode Switch +[270] = "%.2f", --COMM 2 Volume +[280] = "%.2f", --COMM 2 Mode Control Selector +[279] = "%.2f", --COMM 2 Brightness +[201] = "%.2f", --1 +[202] = "%.2f", --2 +[203] = "%.2f", --3 +[204] = "%.2f", --4 +[205] = "%.2f", --5 +[206] = "%.2f", --6 +[207] = "%.2f", --7 +[208] = "%.2f", --8 +[209] = "%.2f", --9 +[200] = "%.2f", --0 +[211] = "%.2f", --Enter +[212] = "%.2f", --Clear +[210] = "%.2f", --Declutter +[214] = "%.2f", --Low Altitude Warning Set +[215] = "%.2f", --Course Set +[216] = "%.2f", --Heading Set +[217] = "%.2f", --Bingo Set +[218] = "%.2f", --Master Mode +[223] = "%.2f", --Mil Depression Increase +[224] = "%.2f", --Mil Depression Decrease +[8] = "%.2f", --Tail Hook Lever +[7] = "%.2f", --Flaps Lever +[67] = "%.2f", --Launch Bar Switch +[6] = "%.2f", --Landing Gear Lever +[10] = "%.2f", --Anti-Skid Switch +[183] = "%.2f", --Landing Gear Emergency Release Handle +[11] = "%.2f", --Engine Switch +[300] = "%.2f", --Battery 1 Switch +[301] = "%.2f", --Battery 2 Switch +[303] = "%.2f", --Generator Switch +[35] = "%.2f", --Gas Turbine Starter Button +[0] = "%.2f", --Finger Lift +[66] = "%.2f", --HYD 2 Reset Button +[180] = "%.2f", --Pitot Heat Switch +[184] = "%.2f", --EMER FLAPS Switch +[402] = "%.2f", --Anti-Collision/Strobe Lights +[404] = "%.2f", --Tail Lights +[405] = "%.2f", --Wing Lights +[406] = "%.2f", --Formation Lights +[401] = "%.2f", --Landing/Taxi Light +[403] = "%.2f", --Nav Lights +[452] = "%.2f", --Flood Lights Knob +[451] = "%.2f", --Console Lights Knob +[450] = "%.2f", --MIP Lights Knob +[400] = "%.2f", --Exterior Lights Master Switch +[117] = "%.2f", --Parking Brake Handle +[143] = "%.2f", --Master Alert Button - Push To Reset +[12] = "%.2f", --Rudder Trim Knob +[116] = "%.2f", --Canopy Handle +[455] = "%.2f", --Flood Lights Knob +[454] = "%.2f", --Console Lights Knob +[453] = "%.2f", --MIP Lights Knob +[265] = "%.2f", --Seat Arming Handle +[264] = "%.2f", --Ejection Handle - Pull To Eject +[219] = "%.2f", --HUD Power Knob +[221] = "%.2f", --HUD Brightness Knob +[424] = "%.2f", --MFD On Day +[425] = "%.2f", --MFD On Night +[426] = "%.2f", --MFD Off +[422] = "%.2f", --MFD Brightness Increase +[423] = "%.2f", --MFD Brightness Decrease +[15] = "%.2f", --Push Button 1 +[16] = "%.2f", --Push Button 2 +[17] = "%.2f", --Push Button 3 +[18] = "%.2f", --Push Button 4 +[19] = "%.2f", --Push Button 5 +[20] = "%.2f", --Push Button 6 +[21] = "%.2f", --Push Button 7 +[22] = "%.2f", --Push Button 8 +[23] = "%.2f", --Push Button 9 +[24] = "%.2f", --Push Button 10 +[25] = "%.2f", --Push Button 11 +[26] = "%.2f", --Push Button 12 +[27] = "%.2f", --Push Button 13 +[28] = "%.2f", --Push Button 14 +[29] = "%.2f", --Push Button 15 +[30] = "%.2f", --Push Button 16 +[31] = "%.2f", --Push Button 17 +[32] = "%.2f", --Push Button 18 +[33] = "%.2f", --Push Button 19 +[34] = "%.2f", --Push Button 20 +[434] = "%.2f", --MFD On Day +[435] = "%.2f", --MFD On Night +[436] = "%.2f", --MFD Off +[432] = "%.2f", --MFD Brightness Increase +[433] = "%.2f", --MFD Brightness Decrease +[40] = "%.2f", --Push Button 1 +[41] = "%.2f", --Push Button 2 +[42] = "%.2f", --Push Button 3 +[43] = "%.2f", --Push Button 4 +[44] = "%.2f", --Push Button 5 +[45] = "%.2f", --Push Button 6 +[46] = "%.2f", --Push Button 7 +[47] = "%.2f", --Push Button 8 +[48] = "%.2f", --Push Button 9 +[49] = "%.2f", --Push Button 10 +[50] = "%.2f", --Push Button 11 +[51] = "%.2f", --Push Button 12 +[52] = "%.2f", --Push Button 13 +[53] = "%.2f", --Push Button 14 +[54] = "%.2f", --Push Button 15 +[55] = "%.2f", --Push Button 16 +[56] = "%.2f", --Push Button 17 +[57] = "%.2f", --Push Button 18 +[58] = "%.2f", --Push Button 19 +[59] = "%.2f", --Push Button 20 +[245] = "%.2f", --TACAN Channel Selector Ones +[242] = "%.2f", --TACAN Channel Selector Tens +[241] = "%.2f", --TACAN Power Switch +[230] = "%.2f", --VOR/ILS 1MHz Frequency Knob +[232] = "%.2f", --VOR/ILS 50KHz Frequency Knob +[231] = "%.2f", --VOR/ILS Power Knob +[182] = "%.2f", --Emergency Jettison Button +[114] = "%.2f", --Master Arm + +----------------------------- +-- HIGH IMPORTANCE EXPORTS -- +-- done every export event -- +-- Pointed to by ProcessIkarusDCSHighImportance +----------------------------- + +function ExportScript.ProcessIkarusDCSConfigHighImportance(mainPanelDevice) + --[[ + every frame export to Ikarus + Example from A-10C + Get Radio Frequencies + get data from device + local lUHFRadio = GetDevice(54) + ExportScript.Tools.SendData("ExportID", "Format") + ExportScript.Tools.SendData(2000, string.format("%7.3f", lUHFRadio:get_frequency()/1000000)) -- <- special function for get frequency data + ExportScript.Tools.SendData(2000, ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) +]] +end + +function ExportScript.ProcessDACConfigHighImportance(mainPanelDevice) + --[[ + every frame export to DAC + Example from A-10C + Get Radio Frequencies + get data from device + local UHF_RADIO = GetDevice(54) + ExportScript.Tools.SendDataDAC("ExportID", "Format") + ExportScript.Tools.SendDataDAC("ExportID", "Format", HardwareConfigID) + ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", UHF_RADIO:get_frequency()/1000000)) + ExportScript.Tools.SendDataDAC("2000", ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) +]] +end + +----------------------------------------------------- +-- LOW IMPORTANCE EXPORTS -- +-- done every gExportLowTickInterval export events -- +-- Pointed to by ExportScript.ProcessIkarusDCSConfigLowImportance +----------------------------------------------------- + + --------------- + -- Log Dumps -- + --------------- +--[[ + ExportScript.Tools.WriteToLog('list_cockpit_params(): '..ExportScript.Tools.dump(list_cockpit_params())) + local ltmp1 = 0 + for ltmp2 = 0, 20, 1 do + ltmp1 = list_indication(ltmp2) + ExportScript.Tools.WriteToLog(ltmp2..': '..ExportScript.Tools.dump(ltmp1)) + end + local ltmp1 = 0 + for ltmp2 = 1, 70, 1 do + ltmp1 = GetDevice(ltmp2) + ExportScript.Tools.WriteToLog(ltmp2..': '..ExportScript.Tools.dump(ltmp1)) + ExportScript.Tools.WriteToLog(ltmp2..' (metatable): '..ExportScript.Tools.dump(getmetatable(ltmp1))) + end +]] +end + +function ExportScript.ProcessDACConfigLowImportance(mainPanelDevice) + --[[ + export in low tick interval to DAC + Example from A-10C + Get Radio Frequencies + get data from device + local UHF_RADIO = GetDevice(3) - I dont really know how to set this up + ExportScript.Tools.SendDataDAC("ExportID", "Format") + ExportScript.Tools.SendDataDAC("ExportID", "Format", HardwareConfigID) + ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", UHF_RADIO:get_frequency()/1000000)) + ExportScript.Tools.SendDataDAC("2000", ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) + ]] + + + local radio1 = (GetDevice(3):get_frequency())/1000000 --left radio freq unrounded + local radio2 = (GetDevice(4):get_frequency())/1000000 --right radio freq unrounded + + ExportScript.Tools.SendData(2001, radio1) + ExportScript.Tools.SendData(2002, radio2) +end \ No newline at end of file