diff --git a/Models/Instruments/MCDU/MCDU.nas b/Models/Instruments/MCDU/MCDU.nas index 5e71b2b8..d4e0c476 100644 --- a/Models/Instruments/MCDU/MCDU.nas +++ b/Models/Instruments/MCDU/MCDU.nas @@ -588,6 +588,61 @@ var canvas_MCDU_base = { me["Simple_R6"].hide(); me["Simple_R6_Arrow"].hide(); } + } else if (page == "AOCCONFIG") { + if (!pageSwitch[i].getBoolValue()) { + me.defaultHideWithCenter(); + me["Simple_Title"].setText("AOC CONFIGURATION"); + me.defaultPageNumbers(); + + me.showLeft(1, -1, -1, -1, -1, 1); + me["Simple_L0S"].hide(); + me.showLeftS(1, -1, -1, -1, -1, 1); + me.showLeftArrow(-1, -1, -1, -1, -1, 1); + me.showCenter(1, 1, 1, 1, 1, -1); + me.showCenterS(1, -1, 1, -1, 1, -1); + me.showRight(1, -1, -1, -1, -1, 1); + me.showRightS(1, -1, -1, -1, -1, -1); + me.showRightArrow(-1, -1, -1, -1, -1, -1); + me["Simple_C3B"].hide(); + me["Simple_C4B"].hide(); + + me.standardFontSize(); + me.standardFontColour(); + + me["Simple_L1S"].setText("A/C REG"); + me["Simple_L1"].setFontSize(small); + me["Simple_L1"].setColor(GREEN); + me["Simple_C1S"].setColor(GREEN); + me["Simple_R1"].setFontSize(small); + me["Simple_R1"].setColor(GREEN); + me["Simple_R1S"].setText("TYPE"); + me["Simple_L6S"].setText(" RETURN TO"); + me["Simple_L6"].setText(" AOC MENU"); + me["Simple_C2"].setText("ATSU SW AND DB PN"); + me["Simple_C3S"].setText("998.2459.501"); + me["Simple_C3S"].setFontSize(small); + me["Simple_C3S"].setColor(GREEN); + me["Simple_C3"].setText("998.2460.501"); + me["Simple_C3"].setFontSize(small); + me["Simple_C3"].setColor(GREEN); + me["Simple_C4"].setText("ATSU AOC ID"); + me["Simple_C5S"].setText("AS2TOC1015010F1"); + me["Simple_C5S"].setFontSize(small); + me["Simple_C5S"].setColor(GREEN); + me["Simple_C5"].setText("AS2TOC1012001F2"); + me["Simple_C5"].setFontSize(small); + me["Simple_C5"].setColor(GREEN); + me["Simple_R6"].setText("PRINT "); + me["Simple_R6"].setColor(BLUE); + me["Simple_C1"].setFontSize(small); + me["Simple_C1"].setColor(GREEN); + pageSwitch[i].setBoolValue(1); + } + me["Simple_L1"].setText(getprop("/options/model-options/registration")); + me["Simple_C1S"].setText(sprintf("%02.0f", getprop("/sim/time/utc/hour")) ~ sprintf("%02.0f", getprop("/sim/time/utc/minute"))); + me["Simple_C1"].setText(sprintf("%02.0f", getprop("/sim/time/utc/day")) ~ "/" ~ sprintf("%02.0f", getprop("/sim/time/utc/month")) ~ "/" ~ right(sprintf(getprop("/sim/time/utc/year")), 2)); + me["Simple_R1S"].setText("TYPE"); + me["Simple_R1"].setText(getprop("/MCDUC/type")); } else if (page == "WEATHERREQ") { if (!pageSwitch[i].getBoolValue()) { me.defaultHide(); diff --git a/Nasal/ECAM/ECAM-logic.nas b/Nasal/ECAM/ECAM-logic.nas index a654498f..37041611 100644 --- a/Nasal/ECAM/ECAM-logic.nas +++ b/Nasal/ECAM/ECAM-logic.nas @@ -2482,6 +2482,11 @@ var messages_memo = func { gpws_flap_mode_off.active = 0; } + if (!fmgc.FMGCInternal.flightNumSet and toMemoLine1.active != 1 and ldgMemoLine1.active != 1 and (phaseVarMemo2 <= 2 or phaseVarMemo2 == 6 or phaseVarMemo2 >= 9)) { + company_datalink_stby.active = 1; + } else { + company_datalink_stby.active = 0; + } } var messages_right_memo = func { @@ -2624,7 +2629,13 @@ var messages_right_memo = func { } else { ldg_lt.active = 0; } - + + if (mcdu.ReceivedMessagesDatabase.firstUnviewed() != -99 and (phaseVarMemo2 <= 2 or phaseVarMemo2 == 6 or phaseVarMemo2 >= 9)) { + company_msg.active = 1; + } else { + 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) { eng_aice.active = 1; } else { diff --git a/Nasal/ECAM/ECAM-messages.nas b/Nasal/ECAM/ECAM-messages.nas index c4a925b6..5df843e6 100644 --- a/Nasal/ECAM/ECAM-messages.nas +++ b/Nasal/ECAM/ECAM-messages.nas @@ -543,11 +543,9 @@ var memos = std.Vector.new([ var pred_ws_off = memo.new(msg: "PRED W/S OFF"), # Not yet implemented var terr_stby = memo.new(msg: "TERR STBY" ), # Not yet implemented var tcas_stby = memo.new(msg: "TCAS STBY" ), # Not yet implemented - var acars_call = memo.new(msg: "ACARS CALL" ), # Not yet implemented var company_call = memo.new(msg: "COMPANY CALL"), var satcom_alert = memo.new(msg: "SATCOM ALERT"), # Not yet implemented - var acars_msg = memo.new(msg: "ACARS MSG" ), # Not yet implemented - var company_msg = memo.new(msg: "COMPANY MSG" ), # Not yet implemented + var company_msg = memo.new(msg: "COMPANY MSG" ), var eng_aice = memo.new(msg: "ENG A.ICE" ), var wing_aice = memo.new(msg: "WING A.ICE" ), var ice_not_det = memo.new(msg: "ICE NOT DET" ), # Not yet implemented @@ -561,7 +559,6 @@ var memos = std.Vector.new([ var gpws_flap3 = memo.new(msg: "GPWS FLAP 3" ), var hf_data_ovrd = memo.new(msg: "HF DATA OVRD"), # Not yet implemented var hf_voice = memo.new(msg: "HF VOICE" ), # Not yet implemented - var acars_stby = memo.new(msg: "ACARS STBY" ), # Not yet implemented var vhf3_voice = memo.new(msg: "VHF3 VOICE" ), var auto_brk_lo = memo.new(msg: "AUTO BRK LO" ), var auto_brk_med = memo.new(msg: "AUTO BRK MED"), diff --git a/Nasal/MCDU/MCDU.nas b/Nasal/MCDU/MCDU.nas index 39682ca0..05d5d240 100644 --- a/Nasal/MCDU/MCDU.nas +++ b/Nasal/MCDU/MCDU.nas @@ -860,6 +860,8 @@ var lskbutton = func(btn, i) { pageNode[i].setValue("ATCMENU2"); } else if (page == "ATISDETAIL") { pageNode[i].setValue("ATIS"); + } else if (page == "AOCCONFIG") { + pageNode[i].setValue("AOCMENU"); } else { mcdu_message(i, "NOT ALLOWED"); } @@ -1195,6 +1197,8 @@ var rskbutton = func(btn, i) { rmp.transfer(i + 1); } } + } else if (page == "AOCMENU") { + pageNode[i].setValue("AOCCONFIG"); } else { mcdu_message(i, "NOT ALLOWED"); } @@ -1402,7 +1406,7 @@ var pagebutton = func(btn, i) { pageNode[i].setValue("DATA"); } else if (btn == "mcdu") { var page = page; - if (page != "ATSUDLINK" and page != "AOCMENU" and page != "WEATHERREQ" and page != "WEATHERTYPE" and page != "RECEIVEDMSGS" and page != "RECEIVEDMSG" and page != "ATCMENU" and page != "ATCMENU2" and page != "NOTIFICATION" and page != "CONNECTSTATUS" and page != "COMPANYCALL" and page != "VOICEDIRECTORY" and page != "DATAMODE" and page != "COMMMENU" and page != "COMMSTATUS" and page != "COMMINIT") { + if (page != "ATSUDLINK" and page != "AOCMENU" and page != "AOCCONFIG" and page != "WEATHERREQ" and page != "WEATHERTYPE" and page != "RECEIVEDMSGS" and page != "RECEIVEDMSG" and page != "ATCMENU" and page != "ATCMENU2" and page != "NOTIFICATION" and page != "CONNECTSTATUS" and page != "COMPANYCALL" and page != "VOICEDIRECTORY" and page != "DATAMODE" and page != "COMMMENU" and page != "COMMSTATUS" and page != "COMMINIT" and page != "ATIS" and page != "ATISDETAIL") { setprop("/MCDU[" ~ i ~ "]/last-fmgc-page", page); } else { setprop("/MCDU[" ~ i ~ "]/last-atsu-page", page); diff --git a/Nasal/Systems/Comm/Notification.nas b/Nasal/Systems/Comm/Notification.nas index fc7a3ac9..2f6b79ce 100644 --- a/Nasal/Systems/Comm/Notification.nas +++ b/Nasal/Systems/Comm/Notification.nas @@ -157,7 +157,7 @@ var AOC = { me.sent = 0; }, fetchMETAR: func(airport, i) { - if (!ATSU.working) { + if (!ATSU.working or !fmgc.FMGCInternal.flightNumSet) { me.sent = 0; return 2; } @@ -179,7 +179,7 @@ var AOC = { return 0; }, fetchTAF: func(airport, i) { - if (!ATSU.working) { + if (!ATSU.working or !fmgc.FMGCInternal.flightNumSet) { me.sent = 0; return 2; }