diff --git a/A320-main.xml b/A320-main.xml index ad5901bc..776b33ed 100644 --- a/A320-main.xml +++ b/A320-main.xml @@ -956,7 +956,7 @@ 0 - 0 + 1 0 0 1 @@ -1880,8 +1880,9 @@ 30 10 30 - 1219 + 1525 true + 0 @@ -1894,8 +1895,9 @@ 30 10 30 - 1219 + 1525 true + 0 diff --git a/AircraftConfig/acconfig.nas b/AircraftConfig/acconfig.nas index 77c197ab..e78551f4 100644 --- a/AircraftConfig/acconfig.nas +++ b/AircraftConfig/acconfig.nas @@ -302,6 +302,7 @@ var colddark = func { setprop("/controls/lighting/overhead-panel-knb", 0); atc.transponderPanel.modeSwitch(1); libraries.systemsInit(); + libraries.variousReset(); failResetOld(); if (getprop("/engines/engine[1]/n2-actual") < 2) { colddark_b(); @@ -347,6 +348,7 @@ var beforestart = func { setprop("/controls/gear/gear-down", 1); setprop("/controls/flight/elevator-trim", 0); libraries.systemsInit(); + libraries.variousReset(); failResetOld(); # Now the Startup! @@ -404,6 +406,9 @@ var beforestart_b = func { setprop("/controls/adirs/mcducbtn", 1); setprop("/controls/switches/beacon", 1); setprop("/controls/lighting/nav-lights-switch", 1); + setprop("/controls/switches/no-smoking-sign", 0.5); + setprop("/controls/switches/seatbelt-sign", 1); + setprop("/controls/switches/emer-lights", 0.5); setprop("/controls/radio/rmp[0]/on", 1); setprop("/controls/radio/rmp[1]/on", 1); setprop("/controls/radio/rmp[2]/on", 1); @@ -438,6 +443,7 @@ var taxi = func { setprop("/controls/gear/gear-down", 1); setprop("/controls/flight/elevator-trim", 0); libraries.systemsInit(); + libraries.variousReset(); failResetOld(); # Now the Startup! @@ -496,6 +502,9 @@ var taxi_b = func { setprop("/controls/switches/beacon", 1); setprop("/controls/switches/wing-lights", 1); setprop("/controls/lighting/nav-lights-switch", 1); + setprop("/controls/switches/no-smoking-sign", 0.5); + setprop("/controls/switches/seatbelt-sign", 1); + setprop("/controls/switches/emer-lights", 0.5); setprop("/controls/radio/rmp[0]/on", 1); setprop("/controls/radio/rmp[1]/on", 1); setprop("/controls/radio/rmp[2]/on", 1); diff --git a/Models/FlightDeck/a320.flightdeck.xml b/Models/FlightDeck/a320.flightdeck.xml index 551dd8ee..944782a3 100644 --- a/Models/FlightDeck/a320.flightdeck.xml +++ b/Models/FlightDeck/a320.flightdeck.xml @@ -8807,6 +8807,40 @@ + + + pick + chrono_cpt + + + false + + property-cycle + /instrumentation/efis/inputs/CHRONO + 0 + 1 + 2 + + + + + + + pick + chrono_fo + + + false + + property-cycle + /instrumentation/efis[1]/inputs/CHRONO + 0 + 1 + 2 + + + + diff --git a/Models/Instruments/MCDU/MCDU.nas b/Models/Instruments/MCDU/MCDU.nas index 727988a1..a7fac7c6 100644 --- a/Models/Instruments/MCDU/MCDU.nas +++ b/Models/Instruments/MCDU/MCDU.nas @@ -153,7 +153,6 @@ var baro = props.globals.getNode("/FMGC/internal/baro", 1); # GA PERF # AOC - SENSORS -var parking_brake = props.globals.getNode("/controls/gear/brake-parking", 1); var gear0_wow = props.globals.getNode("/gear/gear[0]/wow", 1); var doorL1_pos = props.globals.getNode("/sim/model/door-positions/doorl1/position-norm", 1); #FWD door var doorR1_pos = props.globals.getNode("/sim/model/door-positions/doorr1/position-norm", 1); #FWD door @@ -846,8 +845,8 @@ var canvas_MCDU_base = { pageSwitch[i].setBoolValue(1); } - me["Simple_R1S"].setText(sprintf("%-10s",(parking_brake.getValue() == 1) ? "SET" : "RELEASED")); - me["Simple_R1"].setText(sprintf("%-10s",(gear0_wow.getValue() == 1) ? "GROUND" : "FLIGHT")); + me["Simple_R1S"].setText(sprintf("%-10s",(pts.Controls.Gear.parkingBrake.getValue() == 1) ? "SET" : "RELEASED")); + me["Simple_R1"].setText(sprintf("%-10s",(pts.Gear.wow[0].getValue() == 1) ? "GROUND" : "FLIGHT")); me["Simple_R2S"].setText(sprintf("%-10s",(doorL1_pos.getValue() > 0.1) ? "OPEN" : "CLOSED")); me["Simple_R2"].setText(sprintf("%-10s",(doorR1_pos.getValue() > 0.1) ? "OPEN" : "CLOSED")); me["Simple_R3S"].setText(sprintf("%-10s",(doorL4_pos.getValue() > 0.1) ? "OPEN" : "CLOSED")); @@ -5192,6 +5191,8 @@ var canvas_MCDU_base = { me.dynamicPageArrowFunc(myVertRev[i]); me.colorLeftArrow(myVertRev[i].arrowsColour[0][0],myVertRev[i].arrowsColour[0][1],myVertRev[i].arrowsColour[0][2],myVertRev[i].arrowsColour[0][3],myVertRev[i].arrowsColour[0][4],myVertRev[i].arrowsColour[0][5]); + me.colorRightArrow(myVertRev[i].arrowsColour[1][0],myVertRev[i].arrowsColour[1][1],myVertRev[i].arrowsColour[1][2],myVertRev[i].arrowsColour[1][3],myVertRev[i].arrowsColour[1][4],myVertRev[i].arrowsColour[1][5]); + me.dynamicPageFontFunc(myVertRev[i]); diff --git a/Nasal/FMGC/SimbriefParser.nas b/Nasal/FMGC/SimbriefParser.nas index 087c1f44..9c4b7d21 100644 --- a/Nasal/FMGC/SimbriefParser.nas +++ b/Nasal/FMGC/SimbriefParser.nas @@ -134,12 +134,14 @@ var SimbriefParser = { fmgc.flightPlanController.flightplans[3].destination_runway = runwayStore; } - var alternateID = me.OFP.getNode("alternate/icao_code").getValue(); - var alternates = findAirportsByICAO(alternateID); - if (alternates != nil and size(alternates) != 0) { - fmgc.FMGCInternal.altAirport = alternateID; - atsu.ATISInstances[2].newStation(alternateID); - fmgc.FMGCInternal.altAirportSet = 1; + var alternateID = me.OFP.getNode("alternate/icao_code") == nil ? nil : me.OFP.getNode("alternate/icao_code").getValue(); + if (alternateID != nil) { + var alternates = findAirportsByICAO(alternateID); + if (size(alternates) != 0) { + fmgc.FMGCInternal.altAirport = alternateID; + atsu.ATISInstances[2].newStation(alternateID); + fmgc.FMGCInternal.altAirportSet = 1; + } } var wps = []; diff --git a/Nasal/Libraries/buttons.nas b/Nasal/Libraries/buttons.nas index 289abfb2..24dbb3a6 100644 --- a/Nasal/Libraries/buttons.nas +++ b/Nasal/Libraries/buttons.nas @@ -32,7 +32,7 @@ var variousReset = func() { setprop("/controls/CVR/gndctl", 0); setprop("/controls/CVR/erase", 0); setprop("/controls/switches/pneumatics/cabin-fans", 1); - setprop("/controls/oxygen/crewOxyPB", 1); # 0 = OFF 1 = AUTO + setprop("/controls/oxygen/crewOxyPB", 0); # 0 = OFF 1 = AUTO setprop("/controls/switches/emerCallLtO", 0); # ON light, flashes white for 10s setprop("/controls/switches/emerCallLtC", 0); # CALL light, flashes amber for 10s setprop("/controls/switches/emerCall", 0); @@ -62,8 +62,9 @@ var variousReset = func() { setprop("/modes/fcu/hdg-time", -45); setprop("/controls/navigation/switching/att-hdg", 0); setprop("/controls/navigation/switching/air-data", 0); - setprop("/controls/switches/no-smoking-sign", 0.5); - setprop("/controls/switches/seatbelt-sign", 1); + setprop("/controls/switches/no-smoking-sign", 0.0); + setprop("/controls/switches/seatbelt-sign", 0); + setprop("/controls/switches/emer-lights", 0); } var BUTTONS = { diff --git a/Nasal/MCDU/F-PLN.nas b/Nasal/MCDU/F-PLN.nas index f3cab9a5..65c2348c 100644 --- a/Nasal/MCDU/F-PLN.nas +++ b/Nasal/MCDU/F-PLN.nas @@ -117,15 +117,15 @@ var fplnItem = { }, getAlt: func() { if (me.index == 0 and left(me.wp.wp_name, 4) == fmgc.FMGCInternal.depApt and fmgc.flightPlanController.flightplans[me.plan].departure != nil) { - return [" " ~ sprintf("%5.0f", math.round(fmgc.flightPlanController.flightplans[me.plan].departure.elevation * M2FT)), "grn"]; #fixed - aligned to right + return [" " ~ sprintf("%5.0f", math.round(fmgc.flightPlanController.flightplans[me.plan].departure.elevation * M2FT)), "grn"]; } elsif (me.index == (fmgc.flightPlanController.currentToWptIndex.getValue() - 1) and fmgc.flightPlanController.fromWptAlt != nil) { return [" " ~ fmgc.flightPlanController.fromWptAlt, "mag"]; } elsif (me.wp.alt_cstr != nil and me.wp.alt_cstr > 0) { var tcol = (me.wp.alt_cstr_type == "computed" or me.wp.alt_cstr_type == "computed_mach") ? "grn" : "mag"; # TODO - check if only computed if (me.wp.alt_cstr > fmgc.FMGCInternal.transAlt) { - return [" " ~ sprintf("%5s", "FL" ~ math.round(num(me.wp.alt_cstr) / 100)), tcol]; #fixed - aligned to right + return [" " ~ sprintf("%5s", "FL" ~ math.round(num(me.wp.alt_cstr) / 100)), tcol]; } else { - return [" " ~ sprintf("%5.0f", me.wp.alt_cstr), tcol]; #fixed - aligned to right + return [" " ~ sprintf("%5.0f", me.wp.alt_cstr), tcol]; } } else { return ["------", "wht"]; diff --git a/Nasal/MCDU/INITA.nas b/Nasal/MCDU/INITA.nas index e96f0df2..9d048ea0 100644 --- a/Nasal/MCDU/INITA.nas +++ b/Nasal/MCDU/INITA.nas @@ -238,6 +238,7 @@ var initInputA = func(key, i) { fmgc.flightPlanController.reset(2); fmgc.flightPlanController.init(); Simbrief.SimbriefParser.inhibit = 0; + fmgc.updateARPT(); mcdu_scratchpad.scratchpads[i].empty(); #} else if (scratchpad == "") { #fmgc.FMGCInternal.altSelected = 0; @@ -264,6 +265,7 @@ var initInputA = func(key, i) { mcdu_scratchpad.scratchpads[i].empty(); fmgc.flightPlanController.updateAirports(fromto[0], fromto[1], 2); fmgc.FMGCInternal.altSelected = 0; + fmgc.updateARPT(); fmgc.updateArptLatLon(); #setprop("MCDU[" ~ i ~ "]/page", "ROUTESELECTION"); } else { diff --git a/Nasal/MCDU/MCDU.nas b/Nasal/MCDU/MCDU.nas index 975237a3..592f6f26 100644 --- a/Nasal/MCDU/MCDU.nas +++ b/Nasal/MCDU/MCDU.nas @@ -636,6 +636,8 @@ var lskbutton = func(btn, i) { mcdu_scratchpad.scratchpads[i].empty(); } } + } else if (page == "VERTREV") { + canvas_mcdu.myVertRev[i].pushButtonLeft(3); } else if (page == "MCDUTEXT") { atsu.freeTexts[i].selection = 2; atsu.freeTexts[i].changed = 1; @@ -1085,6 +1087,8 @@ var rskbutton = func(btn, i) { atsu.freeTexts[i].changed = 1; } else if (page == "ATCMENU") { pageNode[i].setValue("MCDUTEXT"); + } else if (page == "VERTREV") { + canvas_mcdu.myVertRev[i].pushButtonRight(3); } else { mcdu_message(i, "NOT ALLOWED"); } diff --git a/Nasal/MCDU/VERTREV.nas b/Nasal/MCDU/VERTREV.nas index 05513585..e3ced48d 100644 --- a/Nasal/MCDU/VERTREV.nas +++ b/Nasal/MCDU/VERTREV.nas @@ -1,3 +1,5 @@ +var scratchpadStore = nil; + var vertRev = { title: [nil, nil, nil], subtitle: [nil, nil], @@ -42,6 +44,28 @@ var vertRev = { canvas_mcdu.pageSwitch[me.computer].setBoolValue(0); } }, + getSpd: func() { + if (me.wp.speed_cstr != nil and me.wp.speed_cstr > 0) { + var tcol = (me.wp.speed_cstr_type == "computed" or me.wp.speed_cstr_type == "computed_mach") ? "grn" : "mag"; # TODO - check if only computed + return [" " ~ sprintf("%3.0f", me.wp.speed_cstr), tcol]; + } else { + return [nil,nil]; + } + }, + getAlt: func() { + if (me.wp.alt_cstr != nil and me.wp.alt_cstr > 0) { + var tcol = (me.wp.alt_cstr_type == "computed" or me.wp.alt_cstr_type == "computed_mach") ? "grn" : "mag"; # TODO - check if only computed + if (me.wp.alt_cstr > fmgc.FMGCInternal.transAlt) { + return [sprintf("%5s", "FL" ~ math.round(num(me.wp.alt_cstr) / 100)) ~ " ", tcol]; + } else { + return [sprintf("%5.0f", me.wp.alt_cstr) ~ " ", tcol]; + } + } else { + return [nil,nil]; + } + }, + alt: nil, + speed: nil, _setupPageWithData: func() { if (me.type == 3) { me.title = ["VERT REV", " AT ", "PPOS"]; @@ -57,15 +81,30 @@ var vertRev = { me.fontMatrix = [[0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0]]; } elsif (me.type == 2) { me.title = ["VERT REV", " AT ", me.id]; + me.fontMatrix = [[0, 0, 1, 0, 0, 0], [0, 0, 1, 0, 0, 0]]; me.L1 = ["", " EFOB ---.-", "wht"]; me.R1 = ["", "EXTRA ---.- ", "wht"]; me.L2 = ["250/10000", " CLB SPD LIM", "mag"]; - me.L3 = [" [ ]", " SPD CSTR", "blu"]; + me.speed = me.getSpd(); + if (me.speed[0] == nil) { + me.L3 = [" [ ]", " SPD CSTR", "blu"]; + me.fontMatrix[0][2] = 1; + } else { + me.L3 = [me.speed[0], " SPD CSTR", me.speed[1]]; + me.fontMatrix[0][2] = 0; + } me.L4 = [" CONSTANT MACH", nil, "wht"]; me.L5 = [" WIND DATA", nil, "wht"]; me.L6 = [" CLB", nil, "amb"]; me.R2 = ["RTA ", nil, "wht"]; - me.R3 = ["[ ] ", "ALT CSTR ", "blu"]; + me.alt = me.getAlt(); + if (me.alt[0] == nil) { + me.R3 = ["[ ] ", "ALT CSTR ", "blu"]; + me.fontMatrix[1][2] = 1; + } else { + me.R3 = [me.alt[0], "ALT CSTR ", me.alt[1]]; + me.fontMatrix[1][2] = 0; + } me.R6 = ["DES ", nil, "amb"]; # When the system does vertical planning, L6 should be RETURN and R6 not used if the MCDU knows the waypoint is during climb or descent. # The CLB or DES prompts should only be shown for a vertical revision in the cruise phase. @@ -74,7 +113,6 @@ var vertRev = { # The 'arrows' for CLB/DES should actually be asterisks. me.arrowsMatrix = [[0, 0, 0, 1, 1, 1], [0, 1, 0, 0, 0, 1]]; me.arrowsColour = [["ack", "ack", "ack", "wht", "wht", "amb"], ["ack", "wht", "ack", "ack", "wht", "amb"]]; - me.fontMatrix = [[0, 0, 1, 0, 0, 0], [0, 0, 1, 0, 0, 0]]; } else { me.title = ["VERT REV", " AT ", me.id]; @@ -135,8 +173,22 @@ var vertRev = { } }, pushButtonLeft: func(index) { - if (index == 5) { - #print("role: ", me.wp.wp_role, ", type: ", me.wp.wp_type); + scratchpadStore = mcdu_scratchpad.scratchpads[me.computer].scratchpad; + if (index == 3 and me.type == 2) { + if (scratchpadStore == "CLR") { + me.wp.setSpeed("delete"); + mcdu_scratchpad.scratchpads[me.computer].empty(); + me._setupPageWithData(); + canvas_mcdu.pageSwitch[me.computer].setBoolValue(0); + } elsif (num(scratchpadStore) != nil and size(scratchpadStore) == 3 and scratchpadStore >= 100 and scratchpadStore <= 350) { + me.wp.setSpeed(scratchpadStore, "at"); + mcdu_scratchpad.scratchpads[me.computer].empty(); + me._setupPageWithData(); + canvas_mcdu.pageSwitch[me.computer].setBoolValue(0); + } else { + mcdu_message(me.computer, "FORMAT ERROR"); + } + } elsif (index == 5) { if (me.wp.wp_role == "sid") { if (canvas_mcdu.myCLBWIND[me.computer] == nil) { canvas_mcdu.myCLBWIND[me.computer] = windCLBPage.new(me.computer); @@ -182,6 +234,24 @@ var vertRev = { mcdu_message(me.computer, "NOT ALLOWED"); } }, + pushButtonRight: func(index) { + scratchpadStore = mcdu_scratchpad.scratchpads[me.computer].scratchpad; + if (index == 3 and me.type == 2) { + if (scratchpadStore == "CLR") { + me.wp.setAltitude("delete"); + mcdu_scratchpad.scratchpads[me.computer].empty(); + me._setupPageWithData(); + canvas_mcdu.pageSwitch[me.computer].setBoolValue(0); + } elsif (num(scratchpadStore) != nil and (size(scratchpadStore) == 4 or size(scratchpadStore) == 5) and scratchpadStore >= 0 and scratchpadStore <= 39000) { + me.wp.setAltitude(math.round(scratchpadStore, 10), "at"); + mcdu_scratchpad.scratchpads[me.computer].empty(); + me._setupPageWithData(); + canvas_mcdu.pageSwitch[me.computer].setBoolValue(0); + } else { + mcdu_message(me.computer, "FORMAT ERROR"); + } + } + }, }; var updateCrzLvlCallback = func () { diff --git a/Nasal/Panels/clock.nas b/Nasal/Panels/clock.nas index d41b30ff..8cfcea5e 100644 --- a/Nasal/Panels/clock.nas +++ b/Nasal/Panels/clock.nas @@ -1,5 +1,5 @@ # -# Chrono - Clock - ET +# Chrono - Clock - ET # var chr = aircraft.timer.new("instrumentation/chrono[0]/elapsetime-sec",1); var clk = aircraft.timer.new("instrumentation/clock/elapsetime-sec",1); @@ -52,7 +52,6 @@ var chrono = { #Cpt chrono var cpt_chrono = { - #elapsetime_cpt: props.globals.initNode("/instrumentation/ndchrono[0]/chrono/elapsetime-sec", 0, "INT"), etHh_cpt: props.globals.initNode("/instrumentation/ndchrono[0]/etHh_cpt", 0, "INT"), etMin_cpt: props.globals.initNode("/instrumentation/ndchrono[0]/etMin_cpt", 0, "INT"), etSec_cpt: props.globals.initNode("/instrumentation/ndchrono[0]/etSec_cpt", 0, "INT"), @@ -61,7 +60,6 @@ var cpt_chrono = { #Fo chrono var fo_chrono = { - #elapsetime_fo: props.globals.initNode("/instrumentation/ndchrono[1]/elapsetime-sec", 0, "INT"), etHh_fo: props.globals.initNode("/instrumentation/ndchrono[1]/etHh_fo", 0, "INT"), etMin_fo: props.globals.initNode("/instrumentation/ndchrono[1]/etMin_fo", 0, "INT"), etSec_fo: props.globals.initNode("/instrumentation/ndchrono[1]/etSec_fo", 0, "INT"), @@ -141,6 +139,31 @@ setlistener("/instrumentation/chrono[0]/chrono-reset", func(et){ }; }, 0, 0); +#Chrono +setlistener("instrumentation/efis[0]/inputs/CHRONO", func(et){ + chrono0 = et.getValue(); + if (chrono0 == 1){ + chrono_cpt.start(); + } elsif (chrono0 == 2) { + chrono_cpt.stop(); + } elsif (chrono0 == 0) { + chrono_cpt.reset(); + setprop("instrumentation/ndchrono[0]/elapsetime-sec", 0); + } +}, 0, 0); + +setlistener("instrumentation/efis[1]/inputs/CHRONO", func(et){ + chrono1 = et.getValue(); + if (chrono1 == 1){ + chrono_fo.start(); + } elsif (chrono1 == 2) { + chrono_fo.stop(); + } elsif (chrono1 == 0) { + chrono_fo.reset(); + setprop("instrumentation/ndchrono[1]/elapsetime-sec", 0); + } +}, 0, 0); + setlistener("instrumentation/clock/et-selector", func(et){ tmp1 = et.getValue(); if (tmp1 == 2){ @@ -271,6 +294,7 @@ var start_loop = maketimer(0.1, func { item.update(nil); } } + #Cpt Chrono chr0_tmp = getprop("instrumentation/ndchrono[0]/elapsetime-sec"); if (chr0_tmp >= 360000) { diff --git a/Systems/a320-adr.xml b/Systems/a320-adr.xml index 9d3479fd..19df4159 100644 --- a/Systems/a320-adr.xml +++ b/Systems/a320-adr.xml @@ -914,7 +914,7 @@ - + /instrumentation/radar-altimeter[1]/radar-altitude-ft 1 diff --git a/Systems/a320-fuel.xml b/Systems/a320-fuel.xml index 1954fc56..49f44ceb 100644 --- a/Systems/a320-fuel.xml +++ b/Systems/a320-fuel.xml @@ -633,9 +633,9 @@ /systems/fuel/quantity/center-low eq 1 /systems/fuel/feed-center-2 eq 0 - /systems/fuel/feed-left-inner eq 0 /systems/fuel/feed-right-inner eq 1 /systems/fuel/valves/crossfeed-valve eq 1 + /consumables/fuel/tank[1]/level-gal_us le /consumables/fuel/tank[3]/unusable-gal_us /consumables/fuel/tank[3]/level-gal_us gt /consumables/fuel/tank[3]/unusable-gal_us propulsion/tank[5]/contents-lbs lt 9 @@ -649,9 +649,9 @@ /systems/fuel/feed-center-1 eq 0 /systems/fuel/feed-left-inner eq 1 - /systems/fuel/feed-right-inner eq 0 /systems/fuel/valves/crossfeed-valve eq 1 /consumables/fuel/tank[1]/level-gal_us gt /consumables/fuel/tank[1]/unusable-gal_us + /consumables/fuel/tank[3]/level-gal_us le /consumables/fuel/tank[3]/unusable-gal_us propulsion/tank[6]/contents-lbs lt 9 diff --git a/Systems/a320-fwc.xml b/Systems/a320-fwc.xml index 6d085add..71bd392e 100644 --- a/Systems/a320-fwc.xml +++ b/Systems/a320-fwc.xml @@ -2206,8 +2206,8 @@ - /instrumentation/radar-altimeter[0]/radar-altitude-ft lt 1500 - /instrumentation/radar-altimeter[1]/radar-altitude-ft lt 1500 + /instrumentation/radar-altimeter[0]/radar-altitude-ft-corrected lt 1500 + /instrumentation/radar-altimeter[1]/radar-altitude-ft-corrected lt 1500 /it-fbw/law eq 0 /ECAM/warnings/logic/stall/phase-flipflop eq 1 @@ -3016,8 +3016,8 @@ - /instrumentation/radar-altimeter[0]/radar-altitude-ft lt 750 - /instrumentation/radar-altimeter[1]/radar-altitude-ft lt 750 + /instrumentation/radar-altimeter[0]/radar-altitude-ft-corrected lt 750 + /instrumentation/radar-altimeter[1]/radar-altitude-ft-corrected lt 750 /ECAM/phases/phase-calculation/takeoff-power eq 0 @@ -3052,8 +3052,8 @@ - /instrumentation/radar-altimeter[0]/radar-altitude-ft lt 750 - /instrumentation/radar-altimeter[1]/radar-altitude-ft lt 750 + /instrumentation/radar-altimeter[0]/radar-altitude-ft-corrected lt 750 + /instrumentation/radar-altimeter[1]/radar-altitude-ft-corrected lt 750 /ECAM/phases/phase-calculation/takeoff-power eq 0