From 631ca818603f61c3a8cb30cdaa4ef69554d9d7b7 Mon Sep 17 00:00:00 2001 From: legoboyvdlp R Date: Tue, 3 Aug 2021 19:06:24 +0100 Subject: [PATCH 1/5] Remove 2 extra bits --- Models/Instruments/ND/canvas/res/airbusND.svg | 8 -------- 1 file changed, 8 deletions(-) diff --git a/Models/Instruments/ND/canvas/res/airbusND.svg b/Models/Instruments/ND/canvas/res/airbusND.svg index 63aa5f1a..33706324 100644 --- a/Models/Instruments/ND/canvas/res/airbusND.svg +++ b/Models/Instruments/ND/canvas/res/airbusND.svg @@ -1204,14 +1204,6 @@ d="m 497.671,651.001 h 27.578" id="path3823" inkscape:connector-curvature="0" /> Date: Tue, 3 Aug 2021 20:49:42 +0100 Subject: [PATCH 2/5] Consistencize the various orange colours --- Models/FlightDeck/a320.flightdeck.xml | 42 ++++++++++++-------------- Models/FlightDeck/res/fcu.png | Bin 8689 -> 8708 bytes Models/FlightDeck/res/fcu2.png | Bin 7803 -> 8947 bytes Models/Instruments/Radio/Radio1.xml | 12 ++++---- Models/Instruments/Radio/Radio2.xml | 12 ++++---- 5 files changed, 32 insertions(+), 34 deletions(-) diff --git a/Models/FlightDeck/a320.flightdeck.xml b/Models/FlightDeck/a320.flightdeck.xml index 0626c6a8..8102b1b5 100644 --- a/Models/FlightDeck/a320.flightdeck.xml +++ b/Models/FlightDeck/a320.flightdeck.xml @@ -7535,19 +7535,15 @@ vs.ind fpa.ind fpa.ind.001 - atc-code - atc-test fpa-text qnh-inhg qnh-hpa qnh-std qnh-test - rudder-trim - rudder-trim-letter - 0.75 - 0.30 - 0.0 + 1.00 + 0.515 + 0.00 controls/lighting/fcu-digit-norm @@ -7561,9 +7557,9 @@ 0 - 0.75 - 0.30 - 0.0 + 1.00 + 0.515 + 0.00 controls/lighting/fcu-digit-norm @@ -7572,10 +7568,12 @@ material rudder-trim rudder-trim-letter + atc-code + atc-test - 0.75 - 0.30 - 0.0 + 1.00 + 0.355 + 0.00 0 @@ -7588,9 +7586,9 @@ 0 - 0.75 - 0.30 - 0.0 + 1.00 + 0.355 + 0.00 @@ -8991,9 +8989,9 @@ dme1 - 0.89 - 0.37 - 0.08 + 1.00 + 0.355 + 0.00 0 @@ -9006,9 +9004,9 @@ 0 - 0.89 - 0.37 - 0.08 + 1.00 + 0.355 + 0.00 diff --git a/Models/FlightDeck/res/fcu.png b/Models/FlightDeck/res/fcu.png index 12c2f466695039fede326f1a2dd277c9b9382dff..24a71eb799621410677b19a6ade36b5fd049cafb 100644 GIT binary patch literal 8708 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 literal 7803 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 Nrmp-standby rmp-standby-test - 0.89 - 0.37 - 0.08 + 1.00 + 0.355 + 0.00 0 @@ -2191,9 +2191,9 @@ 0 - 0.89 - 0.37 - 0.08 + 1.00 + 0.355 + 0.00 diff --git a/Models/Instruments/Radio/Radio2.xml b/Models/Instruments/Radio/Radio2.xml index 2d9d7589..8ef9b533 100644 --- a/Models/Instruments/Radio/Radio2.xml +++ b/Models/Instruments/Radio/Radio2.xml @@ -2176,9 +2176,9 @@ rmp-standby rmp-standby-test - 0.89 - 0.37 - 0.08 + 1.00 + 0.355 + 0.00 0 @@ -2191,9 +2191,9 @@ 0 - 0.89 - 0.37 - 0.08 + 1.00 + 0.355 + 0.00 From d92279b6fc3e00b530ebde2ddc916fbc5541e4e2 Mon Sep 17 00:00:00 2001 From: legoboyvdlp R Date: Wed, 4 Aug 2021 17:17:35 +0100 Subject: [PATCH 3/5] Metric altitude --- Models/FlightDeck/a320.flightdeck.xml | 16 ++++++++ Models/Instruments/PFD/PFD.nas | 54 ++++++++++++++++++++++++-- Models/Instruments/PFD/res/pfd.svg | 56 ++++++++++++++++++++++++--- Nasal/FMGC/FCU.nas | 6 +++ 4 files changed, 124 insertions(+), 8 deletions(-) diff --git a/Models/FlightDeck/a320.flightdeck.xml b/Models/FlightDeck/a320.flightdeck.xml index 8102b1b5..c312fea1 100644 --- a/Models/FlightDeck/a320.flightdeck.xml +++ b/Models/FlightDeck/a320.flightdeck.xml @@ -5591,6 +5591,22 @@ + + + pick + metric_alt + + + false + + nasal + + + + diff --git a/Models/Instruments/PFD/PFD.nas b/Models/Instruments/PFD/PFD.nas index 4fd4074b..956e118a 100644 --- a/Models/Instruments/PFD/PFD.nas +++ b/Models/Instruments/PFD/PFD.nas @@ -219,9 +219,9 @@ var canvas_PFD_base = { "FMA_athr_box","FMA_Middle1","FMA_Middle2","ALPHA_MAX","ALPHA_PROT","ALPHA_SW","ALPHA_bars","VLS_min","ASI_max","ASI_scale","ASI_target","ASI_mach","ASI_mach_decimal","ASI_trend_up","ASI_trend_down","ASI_digit_UP","ASI_digit_DN","ASI_decimal_UP", "ASI_decimal_DN","ASI_index","ASI_error","ASI_group","ASI_frame","AI_center","AI_bank","AI_bank_lim","AI_bank_lim_X","AI_pitch_lim","AI_pitch_lim_X","AI_slipskid","AI_horizon","AI_horizon_ground","AI_horizon_sky","AI_stick","AI_stick_pos","AI_heading", "AI_agl_g","AI_agl","AI_error","AI_group","FD_roll","FD_pitch","ALT_box_flash","ALT_box","ALT_box_amber","ALT_scale","ALT_target","ALT_target_digit","ALT_one","ALT_two","ALT_three","ALT_four","ALT_five","ALT_digits","ALT_tens","ALT_digit_UP", - "ALT_digit_DN","ALT_error","ALT_neg","ALT_group","ALT_group2","ALT_frame","VS_pointer","VS_box","VS_digit","VS_error","VS_group","QNH","QNH_setting","QNH_std","QNH_box","LOC_pointer","LOC_scale","GS_scale","GS_pointer","CRS_pointer","HDG_target","HDG_scale", + "ALT_digit_DN","ALT_digit_UP_metric","ALT_error","ALT_neg","ALT_group","ALT_group2","ALT_frame","VS_pointer","VS_box","VS_digit","VS_error","VS_group","QNH","QNH_setting","QNH_std","QNH_box","LOC_pointer","LOC_scale","GS_scale","GS_pointer","CRS_pointer","HDG_target","HDG_scale", "HDG_one","HDG_two","HDG_three","HDG_four","HDG_five","HDG_six","HDG_seven","HDG_digit_L","HDG_digit_R","HDG_error","HDG_group","HDG_frame","TRK_pointer","machError","ilsError","ils_code","ils_freq","dme_dist","dme_dist_legend","ILS_HDG_R","ILS_HDG_L", - "ILS_right","ILS_left","outerMarker","middleMarker","innerMarker","v1_group","v1_text","vr_speed","F_target","S_target","FS_targets","flap_max","clean_speed","ground","ground_ref","FPV","spdLimError","vsFMArate","tailstrikeInd"]; + "ILS_right","ILS_left","outerMarker","middleMarker","innerMarker","v1_group","v1_text","vr_speed","F_target","S_target","FS_targets","flap_max","clean_speed","ground","ground_ref","FPV","spdLimError","vsFMArate","tailstrikeInd","Metric_box","Metric_letter","Metric_cur_alt"]; }, off: 0, on: 0, @@ -346,6 +346,7 @@ var canvas_PFD_base = { PFD_2_mismatch.page.show(); } }, + showMetricAlt: 0, updateCommon: func () { # FMA MAN TOGA MCT FLX THR # Set properties used a lot to a variable to avoid calling getValue() multiple times @@ -1039,7 +1040,6 @@ var canvas_PFD_base = { me["QNH_std"].hide(); me["QNH_box"].hide(); } - }, # Get Angle of Attack from ADR1 or, depending on Switching panel, ADR3 @@ -1702,6 +1702,18 @@ var canvas_PFD_1 = { me["ALT_scale"].show(); me.altitude = dmc.DMController.DMCs[0].outputs[1].getValue(); + + if (me.showMetricAlt) { + me["Metric_box"].show(); + me["Metric_letter"].show(); + me["Metric_cur_alt"].show(); + me["Metric_cur_alt"].setText(sprintf("%5.0f", me.altitude * 0.3048)); + } else { + me["Metric_box"].hide(); + me["Metric_letter"].hide(); + me["Metric_cur_alt"].hide(); + } + me.altOffset = me.altitude / 500 - int(me.altitude / 500); me.middleAltText = roundaboutAlt(me.altitude / 100); me.middleAltOffset = nil; @@ -1729,6 +1741,14 @@ var canvas_PFD_1 = { me["ALT_tens"].setTranslation(0, altTens * 1.392); ap_alt_cur = ap_alt.getValue(); + + if (me.showMetricAlt) { + me["ALT_digit_UP_metric"].show(); + me["ALT_digit_UP_metric"].setText(sprintf("%5.0fM", ap_alt_cur * 0.3048)); + } else { + me["ALT_digit_UP_metric"].hide(); + } + alt_diff_cur = dmc.DMController.DMCs[0].outputs[7].getValue(); if (alt_diff_cur >= -565 and alt_diff_cur <= 565) { me["ALT_target"].setTranslation(0, (alt_diff_cur / 100) * -48.66856); @@ -1838,6 +1858,10 @@ var canvas_PFD_1 = { me["ALT_box_flash"].hide(); me["ALT_box_amber"].hide(); me["ALT_box"].hide(); + me["Metric_box"].hide(); + me["Metric_letter"].hide(); + me["Metric_cur_alt"].hide(); + me["ALT_digit_UP_metric"].hide(); } me.updateCommon(); @@ -2474,6 +2498,18 @@ var canvas_PFD_2 = { me["ALT_scale"].show(); me.altitude = dmc.DMController.DMCs[1].outputs[1].getValue(); + + if (me.showMetricAlt) { + me["Metric_box"].show(); + me["Metric_letter"].show(); + me["Metric_cur_alt"].show(); + me["Metric_cur_alt"].setText(sprintf("%5.0f", me.altitude * 0.3048)); + } else { + me["Metric_box"].hide(); + me["Metric_letter"].hide(); + me["Metric_cur_alt"].hide(); + } + me.altOffset = me.altitude / 500 - int(me.altitude / 500); me.middleAltText = roundaboutAlt(me.altitude / 100); me.middleAltOffset = nil; @@ -2501,6 +2537,14 @@ var canvas_PFD_2 = { me["ALT_tens"].setTranslation(0, altTens * 1.392); ap_alt_cur = ap_alt.getValue(); + + if (me.showMetricAlt) { + me["ALT_digit_UP_metric"].show(); + me["ALT_digit_UP_metric"].setText(sprintf("%5.0fM", ap_alt_cur * 0.3048)); + } else { + me["ALT_digit_UP_metric"].hide(); + } + alt_diff_cur = dmc.DMController.DMCs[1].outputs[7].getValue(); if (alt_diff_cur >= -565 and alt_diff_cur <= 565) { me["ALT_target"].setTranslation(0, (alt_diff_cur / 100) * -48.66856); @@ -2610,6 +2654,10 @@ var canvas_PFD_2 = { me["ALT_box_flash"].hide(); me["ALT_box_amber"].hide(); me["ALT_box"].hide(); + me["Metric_box"].hide(); + me["Metric_letter"].hide(); + me["Metric_cur_alt"].hide(); + me["ALT_digit_UP_metric"].hide(); } me.updateCommon(); diff --git a/Models/Instruments/PFD/res/pfd.svg b/Models/Instruments/PFD/res/pfd.svg index 7eb9c07a..28c3d817 100644 --- a/Models/Instruments/PFD/res/pfd.svg +++ b/Models/Instruments/PFD/res/pfd.svg @@ -41,9 +41,9 @@ inkscape:window-maximized="1" inkscape:window-y="-8" inkscape:window-x="-8" - inkscape:cy="876.13786" - inkscape:cx="522.86542" - inkscape:zoom="5.6568542" + inkscape:cy="1074.3176" + inkscape:cx="955.3885" + inkscape:zoom="2" showgrid="true" id="namedview371" inkscape:window-height="705" @@ -2269,11 +2269,11 @@ id="QNH_setting" y="885.26117" x="907.61713" - style="font-style:normal;font-weight:normal;line-height:0%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:0.75" + style="font-style:normal;font-weight:normal;line-height:0%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:0.75;stroke-opacity:1;" xml:space="preserve" transform="scale(1.0000144,0.9999856)" inkscape:label="#text979">-800 + + 11070 + M + 10000M diff --git a/Nasal/FMGC/FCU.nas b/Nasal/FMGC/FCU.nas index 69196aa4..cbe4d337 100644 --- a/Nasal/FMGC/FCU.nas +++ b/Nasal/FMGC/FCU.nas @@ -460,6 +460,12 @@ var FCUController = { } } }, + MetricAlt: func() { + if (me.FCUworking) { + canvas_pfd.PFD_1.showMetricAlt = !canvas_pfd.PFD_1.showMetricAlt; + canvas_pfd.PFD_2.showMetricAlt = !canvas_pfd.PFD_2.showMetricAlt; + } + }, }; # Master / slave principle of operation depending on the autopilot / flight director engagement From fbbbbc68097a43269ed3bf917b190be651d31f3e Mon Sep 17 00:00:00 2001 From: legoboyvdlp R Date: Wed, 4 Aug 2021 18:39:47 +0100 Subject: [PATCH 4/5] ECAM right memos: remove getprop --- Nasal/ECAM/ECAM-logic.nas | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/Nasal/ECAM/ECAM-logic.nas b/Nasal/ECAM/ECAM-logic.nas index b2664d8a..e2d4262a 100644 --- a/Nasal/ECAM/ECAM-logic.nas +++ b/Nasal/ECAM/ECAM-logic.nas @@ -3148,7 +3148,7 @@ var messages_config_memo = func { setprop("/ECAM/to-config-reset", 0); } - if (getprop("/controls/autobrake/mode") == 3) { + if (systems.Autobrake.mode.getValue() == 3) { toMemoLine1.msg = "T.O AUTO BRK MAX"; toMemoLine1.colour = "g"; } else { @@ -3411,14 +3411,14 @@ var messages_right_memo = func { ldg_inhibit.active = 0; } - if ((!pts.Gear.wow[1].getValue()) and (systems.ELEC.EmerElec.getValue() or getprop("/systems/fire/engine1/warning-active") == 1 or getprop("/systems/fire/engine2/warning-active") == 1 or getprop("/systems/fire/apu/warning-active") == 1 or getprop("/systems/failures/fire/cargo-aft-fire") == 1 or getprop("/systems/failures/fire/cargo-fwd-fire") == 1) or (((systems.HYD.Psi.green.getValue() < 1500 and pts.Engines.Engine.state[0].getValue() == 3) and (systems.HYD.Psi.yellow.getValue() < 1500 and pts.Engines.Engine.state[1].getValue() == 3)) or ((systems.HYD.Psi.green.getValue() < 1500 or systems.HYD.Psi.yellow.getValue() < 1500) and pts.Engines.Engine.state[0].getValue() == 3 and pts.Engines.Engine.state[1].getValue() == 3) and phaseVarMemo3 >= 3 and phaseVarMemo3 <= 8)) { + if ((!pts.Gear.wow[1].getValue()) and (systems.ELEC.EmerElec.getValue() or systems.eng1FireWarn.getValue() == 1 or systems.eng2FireWarn.getValue() == 1 or systems.apuFireWarn.getValue() == 1 or systems.aftCargoFireWarn.getValue() == 1 or systems.fwdCargoFireWarn.getValue() == 1) or (((systems.HYD.Psi.green.getValue() < 1500 and pts.Engines.Engine.state[0].getValue() == 3) and (systems.HYD.Psi.yellow.getValue() < 1500 and pts.Engines.Engine.state[1].getValue() == 3)) or ((systems.HYD.Psi.green.getValue() < 1500 or systems.HYD.Psi.yellow.getValue() < 1500) and pts.Engines.Engine.state[0].getValue() == 3 and pts.Engines.Engine.state[1].getValue() == 3) and phaseVarMemo3 >= 3 and phaseVarMemo3 <= 8)) { # todo: emer elec land_asap_r.active = 1; } else { land_asap_r.active = 0; } - if (land_asap_r.active == 0 and !pts.Gear.wow[1].getValue() and ((getprop("/fdm/jsbsim/propulsion/tank[0]/contents-lbs") < 1650 and getprop("/fdm/jsbsim/propulsion/tank[1]/contents-lbs") < 1650) or ((getprop("/systems/electrical/bus/dc-2") < 25 and (getprop("/systems/failures/fctl/elac1") == 1 or getprop("/systems/failures/fctl/sec1") == 1)) or (systems.HYD.Psi.green.getValue() < 1500 and (getprop("/systems/failures/fctl/elac1") == 1 and getprop("/systems/failures/fctl/sec1") == 1)) or (systems.HYD.Psi.yellow.getValue() < 1500 and (getprop("/systems/failures/fctl/elac1") == 1 and getprop("/systems/failures/fctl/sec1") == 1)) or (systems.HYD.Psi.blue.getValue() < 1500 and (getprop("/systems/failures/fctl/elac2") == 1 and getprop("/systems/failures/fctl/sec2") == 1))) or (phaseVarMemo3 >= 3 and phaseVarMemo3 <= 8 and (pts.Engines.Engine.state[0].getValue() != 3 or pts.Engines.Engine.state[1].getValue() != 3)))) { + if (land_asap_r.active == 0 and !pts.Gear.wow[1].getValue() and ((getprop("/fdm/jsbsim/propulsion/tank[0]/contents-lbs") < 1650 and getprop("/fdm/jsbsim/propulsion/tank[1]/contents-lbs") < 1650) or ((systems.ELEC.Bus.dc2.getValue() < 25 and (fbw.FBW.Failures.elac1.getValue() == 1 or fbw.FBW.Failures.sec1.getValue() == 1)) or (systems.HYD.Psi.green.getValue() < 1500 and (fbw.FBW.Failures.elac1.getValue() == 1 and fbw.FBW.Failures.sec1.getValue() == 1)) or (systems.HYD.Psi.yellow.getValue() < 1500 and (fbw.FBW.Failures.elac1.getValue() == 1 and fbw.FBW.Failures.sec1.getValue() == 1)) or (systems.HYD.Psi.blue.getValue() < 1500 and (fbw.FBW.Failures.elac2.getValue() == 1 and fbw.FBW.Failures.sec2.getValue() == 1))) or (phaseVarMemo3 >= 3 and phaseVarMemo3 <= 8 and (pts.Engines.Engine.state[0].getValue() != 3 or pts.Engines.Engine.state[1].getValue() != 3)))) { land_asap_a.active = 1; } else { land_asap_a.active = 0; @@ -3496,7 +3496,7 @@ var messages_right_memo = func { nw_strg_disc.colour = "g"; } - if (getprop("/controls/pneumatics/switches/ram-air") == 1) { + if (systems.PNEU.Switch.ramAir.getValue() == 1) { ram_air.active = 1; } else { ram_air.active = 0; @@ -3537,7 +3537,7 @@ var messages_right_memo = func { company_msg.active = 0; } - if (getprop("/controls/ice-protection/leng") == 1 or getprop("/controls/ice-protection/reng") == 1 or getprop("/systems/electrical/bus/dc-1") == 0 or getprop("/systems/electrical/bus/dc-2") == 0) { + if (getprop("/controls/ice-protection/leng") == 1 or getprop("/controls/ice-protection/reng") == 1 or systems.ELEC.Bus.dc1.getValue() < 25 or systems.ELEC.Bus.dc2.getValue() < 25) { eng_aice.active = 1; } else { eng_aice.active = 0; @@ -3549,7 +3549,7 @@ var messages_right_memo = func { wing_aice.active = 0; } - if (getprop("/controls/pneumatics/switches/apu") == 1 and pts.APU.rpm.getValue() >= 95) { + if (systems.PNEU.Switch.apu.getValue() == 1 and pts.APU.rpm.getValue() >= 95) { apu_bleed.active = 1; } else { apu_bleed.active = 0; @@ -3561,43 +3561,43 @@ var messages_right_memo = func { apu_avail.active = 0; } - if (getprop("/controls/lighting/landing-lights[1]") > 0 or getprop("/controls/lighting/landing-lights[2]") > 0) { + if (pts.Controls.Lighting.landingLights[1].getValue() > 0 or pts.Controls.Lighting.landingLights[2].getValue() > 0) { ldg_lt.active = 1; } else { ldg_lt.active = 0; } - if (getprop("/controls/gear/brake-fans") == 1) { + if (systems.BrakeSys.brakeFans.getValue() == 1) { brk_fan.active = 1; } else { brk_fan.active = 0; } - if (getprop("instrumentation/mk-viii/inputs/discretes/momentary-flap-3-override") == 1) { # todo: emer elec + if (pts.Instrumentation.MKVII.Inputs.Discretes.flap3Override.getValue() == 1) { # todo: emer elec gpws_flap3.active = 1; } else { gpws_flap3.active = 0; } - if (!getprop("/systems/radio/vhf3-data-mode") and (phaseVarMemo3 == 1 or phaseVarMemo3 == 2 or phaseVarMemo3 == 6 or phaseVarMemo3 == 9 or phaseVarMemo3 == 10)) { + if (!rmp.vhf3_data_mode.getValue() and (phaseVarMemo3 == 1 or phaseVarMemo3 == 2 or phaseVarMemo3 == 6 or phaseVarMemo3 == 9 or phaseVarMemo3 == 10)) { vhf3_voice.active = 1; } else { vhf3_voice.active = 0; } - if (getprop("/controls/autobrake/mode") == 1 and (phaseVarMemo3 == 7 or phaseVarMemo3 == 8)) { + if (systems.Autobrake.mode.getValue() == 1 and (phaseVarMemo3 == 7 or phaseVarMemo3 == 8)) { auto_brk_lo.active = 1; } else { auto_brk_lo.active = 0; } - if (getprop("/controls/autobrake/mode") == 2 and (phaseVarMemo3 == 7 or phaseVarMemo3 == 8)) { + if (systems.Autobrake.mode.getValue() == 2 and (phaseVarMemo3 == 7 or phaseVarMemo3 == 8)) { auto_brk_med.active = 1; } else { auto_brk_med.active = 0; } - if (getprop("/controls/autobrake/mode") == 3 and (phaseVarMemo3 == 7 or phaseVarMemo3 == 8)) { + if (systems.Autobrake.mode.getValue() == 3 and (phaseVarMemo3 == 7 or phaseVarMemo3 == 8)) { auto_brk_max.active = 1; } else { auto_brk_max.active = 0; From 6daa0345dd00d08cd53cd1dfa78dec205a37ee93 Mon Sep 17 00:00:00 2001 From: legoboyvdlp R Date: Wed, 4 Aug 2021 19:14:32 +0100 Subject: [PATCH 5/5] Improve the quality of the LAND ASAP memos --- Nasal/ECAM/ECAM-logic.nas | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/Nasal/ECAM/ECAM-logic.nas b/Nasal/ECAM/ECAM-logic.nas index e2d4262a..56973748 100644 --- a/Nasal/ECAM/ECAM-logic.nas +++ b/Nasal/ECAM/ECAM-logic.nas @@ -36,6 +36,7 @@ var altAlertInhibit = nil; var alt200 = nil; var alt750 = nil; var bigThree = nil; +var fltCtlLandAsap = 0; var altAlertSteady = 0; var altAlertFlash = 0; @@ -3411,14 +3412,20 @@ var messages_right_memo = func { ldg_inhibit.active = 0; } - if ((!pts.Gear.wow[1].getValue()) and (systems.ELEC.EmerElec.getValue() or systems.eng1FireWarn.getValue() == 1 or systems.eng2FireWarn.getValue() == 1 or systems.apuFireWarn.getValue() == 1 or systems.aftCargoFireWarn.getValue() == 1 or systems.fwdCargoFireWarn.getValue() == 1) or (((systems.HYD.Psi.green.getValue() < 1500 and pts.Engines.Engine.state[0].getValue() == 3) and (systems.HYD.Psi.yellow.getValue() < 1500 and pts.Engines.Engine.state[1].getValue() == 3)) or ((systems.HYD.Psi.green.getValue() < 1500 or systems.HYD.Psi.yellow.getValue() < 1500) and pts.Engines.Engine.state[0].getValue() == 3 and pts.Engines.Engine.state[1].getValue() == 3) and phaseVarMemo3 >= 3 and phaseVarMemo3 <= 8)) { - # todo: emer elec + if (!(FWC.Timer.gnd.getValue() == 1) and (systems.ELEC.EmerElec.getValue() or dualFailNode.getValue() == 1 or systems.eng1FireWarn.getValue() == 1 or systems.eng2FireWarn.getValue() == 1 or systems.apuFireWarn.getValue() == 1 or systems.aftCargoFireWarn.getValue() == 1 or systems.fwdCargoFireWarn.getValue() == 1 or (getprop("/ECAM/warnings/hyd/green-abnorm-lo-pr") and getprop("/ECAM/warnings/hyd/yellow-abnorm-lo-pr")) or (getprop("/ECAM/warnings/hyd/green-abnorm-lo-pr") and getprop("/ECAM/warnings/hyd/blue-abnorm-lo-pr")) or (getprop("/ECAM/warnings/hyd/blue-abnorm-lo-pr") and getprop("/ECAM/warnings/hyd/yellow-abnorm-lo-pr")))) { land_asap_r.active = 1; } else { land_asap_r.active = 0; } - if (land_asap_r.active == 0 and !pts.Gear.wow[1].getValue() and ((getprop("/fdm/jsbsim/propulsion/tank[0]/contents-lbs") < 1650 and getprop("/fdm/jsbsim/propulsion/tank[1]/contents-lbs") < 1650) or ((systems.ELEC.Bus.dc2.getValue() < 25 and (fbw.FBW.Failures.elac1.getValue() == 1 or fbw.FBW.Failures.sec1.getValue() == 1)) or (systems.HYD.Psi.green.getValue() < 1500 and (fbw.FBW.Failures.elac1.getValue() == 1 and fbw.FBW.Failures.sec1.getValue() == 1)) or (systems.HYD.Psi.yellow.getValue() < 1500 and (fbw.FBW.Failures.elac1.getValue() == 1 and fbw.FBW.Failures.sec1.getValue() == 1)) or (systems.HYD.Psi.blue.getValue() < 1500 and (fbw.FBW.Failures.elac2.getValue() == 1 and fbw.FBW.Failures.sec2.getValue() == 1))) or (phaseVarMemo3 >= 3 and phaseVarMemo3 <= 8 and (pts.Engines.Engine.state[0].getValue() != 3 or pts.Engines.Engine.state[1].getValue() != 3)))) { + if ((systems.ELEC.Bus.dc2.getValue() < 25 and (fbw.FBW.Failures.elac1.getValue() == 1 or fbw.FBW.Failures.sec1.getValue() == 1)) or ((systems.HYD.Psi.yellow.getValue() < 1500 or systems.HYD.Psi.green.getValue() < 1500) and (fbw.FBW.Failures.elac1.getValue() == 1 and fbw.FBW.Failures.sec1.getValue() == 1)) or (systems.HYD.Psi.blue.getValue() < 1500 and (fbw.FBW.Failures.elac2.getValue() == 1 and fbw.FBW.Failures.sec2.getValue() == 1))) { + fltCtlLandAsap = 1; + } else { + fltCtlLandAsap = 0; + } + + if (land_asap_r.active == 0 and !(FWC.Timer.gnd.getValue() == 1) and (warningNodes.Timers.lowLevelBoth.getValue() == 1 or warningNodes.Logic.eng1Shutdown.getValue() or warningNodes.Logic.eng2Shutdown.getValue() or warningNodes.Logic.eng1Fail.getValue() or warningNodes.Logic.eng2Fail.getValue() or warningNodes.Timers.dcEmerConfig.getValue() == 1 or fltCtlLandAsap)) { + # todo avionics smoke and reverse unlocked land_asap_a.active = 1; } else { land_asap_a.active = 0;