123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694 |
- var input = func(v) {
- setprop("/instrumentation/cdu/input",getprop("/instrumentation/cdu/input")~v);
- }
-
- var input = func(v) {
- setprop("/instrumentation/cdu/input",getprop("/instrumentation/cdu/input")~v);
- }
-
- var key = func(v) {
- var cduDisplay = getprop("/instrumentation/cdu/display");
- var serviceable = getprop("/instrumentation/cdu/serviceable");
- var eicasDisplay = getprop("/instrumentation/eicas/display");
- var cduInput = getprop("/instrumentation/cdu/input");
-
- if (serviceable == 1){
- if (v == "LSK1L"){
- if (cduDisplay == "DEP_ARR_INDEX"){
- cduDisplay = "RTE1_DEP";
- }
- if (cduDisplay == "EICAS_MODES"){
- eicasDisplay = "ENG";
- }
- if (cduDisplay == "EICAS_SYN"){
- eicasDisplay = "ELEC";
- }
- if (cduDisplay == "INIT_REF"){
- cduDisplay = "IDENT";
- }
- if (cduDisplay == "NAV_RAD"){
- setprop("/instrumentation/nav[0]/frequencies/selected-mhz",cduInput);
- cduInput = "";
- }
- if (cduDisplay == "RTE1_1"){
- setprop("/autopilot/route-manager/departure/airport",cduInput);
- cduInput = "";
- }
- if (cduDisplay == "RTE1_LEGS"){
- if (cduInput == "DELETE"){
- setprop("/autopilot/route-manager/input","@DELETE1");
- cduInput = "";
- }
- else{
- setprop("/autopilot/route-manager/input","@INSERT2:"~cduInput);
- }
- }
- if (cduDisplay == "TO_REF"){
- setprop("/instrumentation/fmc/to-flap",cduInput);
- cduInput = "";
- }
- }
- if (v == "LSK1R"){
- if (cduDisplay == "EICAS_MODES"){
- eicasDisplay = "FUEL";
- }
- if (cduDisplay == "EICAS_SYN"){
- eicasDisplay = "HYD";
- }
- if (cduDisplay == "NAV RAD"){
- setprop("/instrumentation/nav[1]/frequencies/selected-mhz",cduInput);
- cduInput = "";
- }
- if (cduDisplay == "RTE1_1"){
- setprop("/autopilot/route-manager/destination/airport",cduInput);
- cduInput = "";
- }
- if (cduDisplay == "RTE1_LEGS"){
- setprop("/autopilot/route-manager/route/wp[1]/altitude-ft",cduInput);
- if (substr(cduInput,0,2) == "FL"){
- setprop("/autopilot/route-manager/route/wp[1]/altitude-ft",substr(cduInput,2)*100);
- }
- cduInput = "";
- }
- }
- if (v == "LSK2L"){
- if (cduDisplay == "EICAS_MODES"){
- eicasDisplay = "STAT";
- }
- if (cduDisplay == "EICAS_SYN"){
- eicasDisplay = "ECS";
- }
- if (cduDisplay == "POS_INIT"){
- setprop("/instrumentation/fmc/ref-airport",cduInput);
- cduInput = "";;
- }
- if (cduDisplay == "INIT_REF"){
- cduDisplay = "POS_INIT";
- }
- if (cduDisplay == "RTE1_1"){
- setprop("/autopilot/route-manager/departure/runway",cduInput);
- cduInput = "";;
- }
- if (cduDisplay == "RTE1_LEGS"){
- if (cduInput == "DELETE"){
- setprop("/autopilot/route-manager/input","@DELETE2");
- cduInput = "";
- }
- else{
- setprop("/autopilot/route-manager/input","@INSERT3:"~cduInput);
- }
- }
- }
- if (v == "LSK2R"){
- if (cduDisplay == "DEP_ARR_INDEX"){
- cduDisplay = "RTE1_ARR";
- }
- else if (cduDisplay == "EICAS_MODES"){
- eicasDisplay = "GEAR";
- }
- else if (cduDisplay == "EICAS_SYN"){
- eicasDisplay = "DRS";
- }
- else if (cduDisplay == "MENU"){
- eicasDisplay = "EICAS_MODES";
- }
- else if (cduDisplay == "RTE1_LEGS"){
- setprop("/autopilot/route-manager/route/wp[2]/altitude-ft",cduInput);
- if (substr(cduInput,0,2) == "FL"){
- setprop("/autopilot/route-manager/route/wp[2]/altitude-ft",substr(cduInput,2)*100);
- }
- cduInput = "";
- }
- }
- if (v == "LSK3L"){
- if (cduDisplay == "INIT_REF"){
- cduDisplay = "PERF_INIT";
- }
- if (cduDisplay == "RTE1_LEGS"){
- if (cduInput == "DELETE"){
- setprop("/autopilot/route-manager/input","@DELETE3");
- cduInput = "";
- }
- else{
- setprop("/autopilot/route-manager/input","@INSERT4:"~cduInput);
- }
- }
- }
- if (v == "LSK3R"){
- if (cduDisplay == "RTE1_LEGS"){
- setprop("/autopilot/route-manager/route/wp[3]/altitude-ft",cduInput);
- if (substr(cduInput,0,2) == "FL"){
- setprop("/autopilot/route-manager/route/wp[3]/altitude-ft",substr(cduInput,2)*100);
- }
- cduInput = "";
- }
- }
- if (v == "LSK4L"){
- if (cduDisplay == "INIT_REF"){
- cduDisplay = "THR_LIM";
- }
- if (cduDisplay == "RTE1_LEGS"){
- if (cduInput == "DELETE"){
- setprop("/autopilot/route-manager/input","@DELETE4");
- cduInput = "";
- }
- else{
- setprop("/autopilot/route-manager/input","@INSERT5:"~cduInput);
- }
- }
- }
- if (v == "LSK4R"){
- if (cduDisplay == "RTE1_LEGS"){
- setprop("/autopilot/route-manager/route/wp[4]/altitude-ft",cduInput);
- if (substr(cduInput,0,2) == "FL"){
- setprop("/autopilot/route-manager/route/wp[4]/altitude-ft",substr(cduInput,2)*100);
- }
- cduInput = "";
- }
- }
- if (v == "LSK5L"){
- if (cduDisplay == "INIT_REF"){
- cduDisplay = "TO_REF";
- }
- if (cduDisplay == "RTE1_LEGS"){
- if (cduInput == "DELETE"){
- setprop("/autopilot/route-manager/input","@DELETE5");
- cduInput = "";
- }
- else{
- setprop("/autopilot/route-manager/input","@INSERT6:"~cduInput);
- }
- }
- }
- if (v == "LSK5R"){
- if (cduDisplay == "RTE1_LEGS"){
- setprop("/autopilot/route-manager/route/wp[5]/altitude-ft",cduInput);
- if (substr(cduInput,0,2) == "FL"){
- setprop("/autopilot/route-manager/route/wp[5]/altitude-ft",substr(cduInput,2)*100);
- }
- cduInput = "";
- }
- }
- if (v == "LSK6L"){
- if (cduDisplay == "INIT_REF"){
- cduDisplay = "APP_REF";
- }
- if (cduDisplay == "APP_REF"){
- cduDisplay = "INIT_REF";
- }
- if ((cduDisplay == "IDENT") or (cduDisplay = "MAINT") or (cduDisplay = "PERF_INIT") or (cduDisplay = "POS_INIT") or (cduDisplay = "POS_REF") or (cduDisplay = "THR_LIM") or (cduDisplay = "TO_REF")){
- cduDisplay = "INIT_REF";
- }
- }
- if (v == "LSK6R"){
- if (cduDisplay == "THR_LIM"){
- cduDisplay = "TO_REF";
- }
- else if (cduDisplay == "APP_REF"){
- cduDisplay = "THR_LIM";
- }
- else if ((cduDisplay == "RTE1_1") or (cduDisplay == "RTE1_LEGS")){
- setprop("/autopilot/route-manager/input","@ACTIVATE");
- }
- else if ((cduDisplay == "POS_INIT") or (cduDisplay == "DEP") or (cduDisplay == "RTE1_ARR") or (cduDisplay == "RTE1_DEP")){
- cduDisplay = "RTE1_1";
- }
- else if ((cduDisplay == "IDENT") or (cduDisplay == "TO_REF")){
- cduDisplay = "POS_INIT";
- }
- else if (cduDisplay == "EICAS_SYN"){
- cduDisplay = "EICAS_MODES";
- }
- else if (cduDisplay == "EICAS_MODES"){
- cduDisplay = "EICAS_SYN";
- }
- else if (cduDisplay == "INIT_REF"){
- cduDisplay = "MAINT";
- }
- }
-
- setprop("/instrumentation/cdu/display",cduDisplay);
- if (eicasDisplay != nil){
- setprop("/instrumentation/eicas/display",eicasDisplay);
- }
- setprop("/instrumentation/cdu/input",cduInput);
- }
- }
-
- var delete = func {
- var length = size(getprop("/instrumentation/cdu/input")) - 1;
- setprop("/instrumentation/cdu/input",substr(getprop("/instrumentation/cdu/input"),0,length));
- }
-
- var i = 0;
- var plusminus = func {
- var end = size(getprop("/instrumentation/cdu/input"));
- var start = end - 1;
- var lastchar = substr(getprop("/instrumentation/cdu/input"),start,end);
- if (lastchar == "+"){
- me.delete();
- me.input('-');
- }
- if (lastchar == "-"){
- me.delete();
- me.input('+');
- }
- if ((lastchar != "-") and (lastchar != "+")){
- me.input('+');
- }
- }
- var cdu = func{
-
- var display = getprop("/instrumentation/cdu/display");
- var serviceable = getprop("/instrumentation/cdu/serviceable");
- title = ""; page = "";
- line1l = ""; line2l = ""; line3l = ""; line4l = ""; line5l = ""; line6l = "";
- line1lt = ""; line2lt = ""; line3lt = ""; line4lt = ""; line5lt = ""; line6lt = "";
- line1c = ""; line2c = ""; line3c = ""; line4c = ""; line5c = ""; line6c = "";
- line1ct = ""; line2ct = ""; line3ct = ""; line4ct = ""; line5ct = ""; line6ct = "";
- line1r = ""; line2r = ""; line3r = ""; line4r = ""; line5r = ""; line6r = "";
- line1rt = ""; line2rt = ""; line3rt = ""; line4rt = ""; line5rt = ""; line6rt = "";
-
- if (display == "MENU") {
- title = "MENU";
- line1l = "<FMC";
- line1rt = "EFIS CP";
- line1r = "SELECT>";
- line2l = "<ACARS";
- line2rt = "EICAS CP";
- line2r = "SELECT>";
- line6l = "<ACMS";
- line6r = "CMC>";
- }
- if (display == "ALTN_NAV_RAD") {
- title = "ALTN NAV RADIO";
- }
- if (display == "APP_REF") {
- title = "APPROACH REF";
- line1lt = "GROSS WT";
- line1rt = "FLAPS VREF";
- if (getprop("/instrumentation/fmc/vspeeds/Vref") != nil){
- line1l = getprop("/instrumentation/fmc/vspeeds/Vref");
- }
- if (getprop("/autopilot/route-manager/destination/airport") != nil){
- line4lt = getprop("/autopilot/route-manager/destination/airport");
- }
- line6l = "<INDEX";
- line6r = "THRUST LIM>";
- }
- if (display == "DEP_ARR_INDEX") {
- title = "DEP/ARR INDEX";
- line1l = "<DEP";
- line1ct = "RTE 1";
- if (getprop("/autopilot/route-manager/departure/airport") != nil){
- line1c = getprop("/autopilot/route-manager/departure/airport");
- }
- line1r = "ARR>";
- if (getprop("/autopilot/route-manager/destination/airport") != nil){
- line2c = getprop("/autopilot/route-manager/destination/airport");
- }
- line2r = "ARR>";
- line3l = "<DEP";
- line3r = "ARR>";
- line4r = "ARR>";
- line6lt ="DEP";
- line6l = "<----";
- line6c = "OTHER";
- line6rt ="ARR";
- line6r = "---->";
- }
- if (display == "EICAS_MODES") {
- title = "EICAS MODES";
- line1l = "<ENG";
- line1r = "FUEL>";
- line2l = "<STAT";
- line2r = "GEAR>";
- line5l = "<CANC";
- line5r = "RCL>";
- line6r = "SYNOPTICS>";
- }
- if (display == "EICAS_SYN") {
- title = "EICAS SYNOPTICS";
- line1l = "<ELEC";
- line1r = "HYD>";
- line2l = "<ECS";
- line2r = "DOORS>";
- line5l = "<CANC";
- line5r = "RCL>";
- line6r = "MODES>";
- }
- if (display == "FIX_INFO") {
- title = "FIX INFO";
- line1l = sprintf("%3.2f", getprop("/instrumentation/nav[0]/frequencies/selected-mhz-fmt"));
- line1r = sprintf("%3.2f", getprop("/instrumentation/nav[1]/frequencies/selected-mhz-fmt"));
- line2l = sprintf("%3.2f", getprop("/instrumentation/nav[0]/radials/selected-deg"));
- line2r = sprintf("%3.2f", getprop("/instrumentation/nav[1]/radials/selected-deg"));
- line6l = "<ERASE FIX";
- }
- if (display == "IDENT") {
- title = "IDENT";
- line1lt = "MODEL";
- if (getprop("/instrumentation/cdu/ident/model") != nil){
- line1l = getprop("/instrumentation/cdu/ident/model");
- }
- line1rt = "ENGINES";
- line2lt = "NAV DATA";
- if (getprop("/instrumentation/cdu/ident/engines") != nil){
- line1r = getprop("/instrumentation/cdu/ident/engines");
- }
- line6l = "<INDEX";
- line6r = "POS INIT>";
- }
- if (display == "INIT_REF") {
- title = "INIT/REF INDEX";
- line1l = "<IDENT";
- line1r = "NAV DATA>";
- line2l = "<POS";
- line3l = "<PERF";
- line4l = "<THRUST LIM";
- line5l = "<TAKEOFF";
- line6l = "<APPROACH";
- line6r = "MAINT>";
- }
- if (display == "MAINT") {
- title = "MAINTENANCE INDEX";
- line1l = "<CROS LOAD";
- line1r = "BITE>";
- line2l = "<PERF FACTORS";
- line3l = "<IRS MONITOR";
- line6l = "<INDEX";
- }
- if (display == "NAV_RAD") {
- title = "NAV RADIO";
- line1lt = "VOR L";
- line1l = sprintf("%3.2f", getprop("/instrumentation/nav[0]/frequencies/selected-mhz-fmt"));
- line1rt = "VOR R";
- line1r = sprintf("%3.2f", getprop("/instrumentation/nav[1]/frequencies/selected-mhz-fmt"));
- line2lt = "CRS";
- line2ct = "RADIAL";
- line2c = sprintf("%3.2f", getprop("/instrumentation/nav[0]/radials/selected-deg"))~" "~sprintf("%3.2f", getprop("/instrumentation/nav[1]/radials/selected-deg"));
- line2rt = "CRS";
- line3lt = "ADF L";
- line3l = sprintf("%3.2f", getprop("/instrumentation/adf[0]/frequencies/selected-khz"));
- line3rt = "ADF R";
- }
- if (display == "PERF_INIT") {
- title = "PERF INIT";
- line1lt = "GR WT";
- line1rt = "CRZ ALT";
- line1r = getprop("/autopilot/route-manager/cruise/altitude-ft");
- line2lt = "FUEL";
- line3lt = "ZFW";
- line4lt = "RESERVES";
- line4rt = "CRZ CG";
- line5lt = "COST INDEX";
- line5rt = "STEP SIZE";
- line6l = "<INDEX";
- line6r = "THRUST LIM>";
- if (getprop("/sim/flight-model") == "jsb") {
- line1l = sprintf("%3.1f", (getprop("/fdm/jsbsim/inertia/weight-lbs")/1000));
- line2l = sprintf("%3.1f", (getprop("/fdm/jsbsim/propulsion/total-fuel-lbs")/1000));
- line3l = sprintf("%3.1f", (getprop("/fdm/jsbsim/inertia/empty-weight-lbs")/1000));
- }
- elsif (getprop("/sim/flight-model") == "yasim") {
- line1l = sprintf("%3.1f", (getprop("/yasim/gross-weight-lbs")/1000));
- line2l = sprintf("%3.1f", (getprop("/consumables/fuel/total-fuel-lbs")/1000));
- yasim_emptyweight = getprop("/yasim/gross-weight-lbs");
- yasim_emptyweight -= getprop("/consumables/fuel/total-fuel-lbs");
- yasim_weights = props.globals.getNode("/sim").getChildren("weight");
- for (i = 0; i < size(yasim_weights); i += 1) {
- yasim_emptyweight -= yasim_weights[i].getChild("weight-lb").getValue();
- }
- line3l = sprintf("%3.1f", yasim_emptyweight/1000);
- }
- }
- if (display == "POS_INIT") {
- title = "POS INIT";
- line6l = "<INDEX";
- line6r = "ROUTE>";
- }
- if (display == "POS_REF") {
- title = "POS REF";
- line1lt = "FMC POST";
- line1l = getprop("/position/latitude-string")~" "~getprop("/position/longitude-string");
- line1rt = "GS";
- line1r = sprintf("%3.0f", getprop("/velocities/groundspeed-kt"));
- line5l = "<PURGE";
- line5r = "INHIBIT>";
- line6l = "<INDEX";
- line6r = "BRG/DIST>";
- }
- if (display == "RTE1_1") {
- title = "RTE 1";
- page = "1/2";
- line1lt = "ORIGIN";
- if (getprop("/autopilot/route-manager/departure/airport") != nil){
- line1l = getprop("/autopilot/route-manager/departure/airport");
- }
- line1rt = "DEST";
- if (getprop("/autopilot/route-manager/destination/airport") != nil){
- line1r = getprop("/autopilot/route-manager/destination/airport");
- }
- line2lt = "RUNWAY";
- if (getprop("/autopilot/route-manager/departure/runway") != nil){
- line2l = getprop("/autopilot/route-manager/departure/runway");
- }
- line2rt = "FLT NO";
- line3rt = "CO ROUTE";
- line5l = "<RTE COPY";
- line6l = "<RTE 2";
- if (getprop("/autopilot/route-manager/active") == 1){
- line6r = "PERF INIT>";
- }
- else {
- line6r = "ACTIVATE>";
- }
- }
- if (display == "RTE1_2") {
- title = "RTE 1";
- page = "2/2";
- line1lt = "VIA";
- line1rt = "TO";
- if (getprop("/autopilot/route-manager/route/wp[1]/id") != nil){
- line1r = getprop("/autopilot/route-manager/route/wp[1]/id");
- }
- if (getprop("/autopilot/route-manager/route/wp[2]/id") != nil){
- line2r = getprop("/autopilot/route-manager/route/wp[2]/id");
- }
- if (getprop("/autopilot/route-manager/route/wp[3]/id") != nil){
- line3r = getprop("/autopilot/route-manager/route/wp[3]/id");
- }
- if (getprop("/autopilot/route-manager/route/wp[4]/id") != nil){
- line4r = getprop("/autopilot/route-manager/route/wp[4]/id");
- }
- if (getprop("/autopilot/route-manager/route/wp[5]/id") != nil){
- line5r = getprop("/autopilot/route-manager/route/wp[5]/id");
- }
- line6l = "<RTE 2";
- line6r = "ACTIVATE>";
- }
- if (display == "RTE1_ARR") {
- if (getprop("/autopilot/route-manager/destination/airport") != nil){
- title = getprop("/autopilot/route-manager/destination/airport")~" ARRIVALS";
- }
- else{
- title = "ARRIVALS";
- }
- line1lt = "STARS";
- line1rt = "APPROACHES";
- if (getprop("/autopilot/route-manager/destination/runway") != nil){
- line1r = getprop("/autopilot/route-manager/destination/runway");
- }
- line2lt = "TRANS";
- line3rt = "RUNWAYS";
- line6l = "<INDEX";
- line6r = "ROUTE>";
- }
- if (display == "RTE1_DEP") {
- if (getprop("/autopilot/route-manager/departure/airport") != nil){
- title = getprop("/autopilot/route-manager/departure/airport")~" DEPARTURES";
- }
- else{
- title = "DEPARTURES";
- }
- line1lt = "SIDS";
- line1rt = "RUNWAYS";
- if (getprop("/autopilot/route-manager/departure/runway") != nil){
- line1r = getprop("/autopilot/route-manager/departure/runway");
- }
- line2lt = "TRANS";
- line6l = "<ERASE";
- line6r = "ROUTE>";
- }
- if (display == "RTE1_LEGS") {
- if (getprop("/autopilot/route-manager/active") == 1){
- title = "ACT RTE 1 LEGS";
- }
- else {
- title = "RTE 1 LEGS";
- }
- if (getprop("/autopilot/route-manager/route/wp[1]/id") != nil){
- line1lt = sprintf("%3.0f", getprop("/autopilot/route-manager/route/wp[1]/leg-bearing-true-deg"));
- line1l = getprop("/autopilot/route-manager/route/wp[1]/id");
- line2ct = sprintf("%3.0f", getprop("/autopilot/route-manager/route/wp[1]/leg-distance-nm"))~" NM";
- line1r = sprintf("%5.0f", getprop("/autopilot/route-manager/route/wp[1]/altitude-ft"));
- if (getprop("/autopilot/route-manager/route/wp[1]/speed-kts") != nil){
- line4r = getprop("/autopilot/route-manager/route/wp[1]/speed-kts")~"/"~sprintf("%5.0f", getprop("/autopilot/route-manager/route/wp[1]/altitude-ft"));
- }
- }
- if (getprop("/autopilot/route-manager/route/wp[2]/id") != nil){
- if (getprop("/autopilot/route-manager/route/wp[2]/leg-bearing-true-deg") != nil){
- line2lt = sprintf("%3.0f", getprop("/autopilot/route-manager/route/wp[2]/leg-bearing-true-deg"));
- }
- line2l = getprop("/autopilot/route-manager/route/wp[2]/id");
- if (getprop("/autopilot/route-manager/route/wp[2]/leg-distance-nm") != nil){
- line3ct = sprintf("%3.0f", getprop("/autopilot/route-manager/route/wp[2]/leg-distance-nm"))~" NM";
- }
- line2r = sprintf("%5.0f", getprop("/autopilot/route-manager/route/wp[2]/altitude-ft"));
- if (getprop("/autopilot/route-manager/route/wp[2]/speed-kts") != nil){
- line4r = getprop("/autopilot/route-manager/route/wp[2]/speed-kts")~"/"~sprintf("%5.0f", getprop("/autopilot/route-manager/route/wp[2]/altitude-ft"));
- }
- }
- if (getprop("/autopilot/route-manager/route/wp[3]/id") != nil){
- if (getprop("/autopilot/route-manager/route/wp[3]/leg-bearing-true-deg") != nil){
- line3lt = sprintf("%3.0f", getprop("/autopilot/route-manager/route/wp[3]/leg-bearing-true-deg"));
- }
- line3l = getprop("/autopilot/route-manager/route/wp[3]/id");
- if (getprop("/autopilot/route-manager/route/wp[3]/leg-distance-nm") != nil){
- line4ct = sprintf("%3.0f", getprop("/autopilot/route-manager/route/wp[3]/leg-distance-nm"))~" NM";
- }
- line3r = sprintf("%5.0f", getprop("/autopilot/route-manager/route/wp[3]/altitude-ft"));
- if (getprop("/autopilot/route-manager/route/wp[3]/speed-kts") != nil){
- line3r = getprop("/autopilot/route-manager/route/wp[3]/speed-kts")~"/"~sprintf("%5.0f", getprop("/autopilot/route-manager/route/wp[3]/altitude-ft"));;
- }
- }
- if (getprop("/autopilot/route-manager/route/wp[4]/id") != nil){
- if (getprop("/autopilot/route-manager/route/wp[4]/leg-bearing-true-deg") != nil){
- line4lt = sprintf("%3.0f", getprop("/autopilot/route-manager/route/wp[4]/leg-bearing-true-deg"));
- }
- line4l = getprop("/autopilot/route-manager/route/wp[4]/id");
- if (getprop("/autopilot/route-manager/route/wp[4]/leg-distance-nm") != nil){
- line5ct = sprintf("%3.0f", getprop("/autopilot/route-manager/route/wp[4]/leg-distance-nm"))~" NM";
- }
- line4r = sprintf("%5.0f", getprop("/autopilot/route-manager/route/wp[4]/altitude-ft"));
- if (getprop("/autopilot/route-manager/route/wp[4]/speed-kts") != nil){
- line4r = getprop("/autopilot/route-manager/route/wp[4]/speed-kts")~"/"~sprintf("%5.0f", getprop("/autopilot/route-manager/route/wp[4]/altitude-ft"));
- }
- }
- if (getprop("/autopilot/route-manager/route/wp[5]/id") != nil){
- if (getprop("/autopilot/route-manager/route/wp[5]/leg-bearing-true-deg") != nil){
- line5lt = sprintf("%3.0f", getprop("/autopilot/route-manager/route/wp[5]/leg-bearing-true-deg"));
- }
- line5l = getprop("/autopilot/route-manager/route/wp[5]/id");
- line5r = sprintf("%5.0f", getprop("/autopilot/route-manager/route/wp[5]/altitude-ft"));
- if (getprop("/autopilot/route-manager/route/wp[5]/speed-kts") != nil){
- line4r = getprop("/autopilot/route-manager/route/wp[5]/speed-kts")~"/"~sprintf("%5.0f", getprop("/autopilot/route-manager/route/wp[5]/altitude-ft"));
- }
- }
- line6l = "<RTE 2 LEGS";
- if (getprop("/autopilot/route-manager/active") == 1){
- line6r = "RTE DATA>";
- }
- else{
- line6r = "ACTIVATE>";
- }
- }
- if (display == "THR_LIM") {
- title = "THRUST LIM";
- line1lt = "SEL";
- line1ct = "OAT";
- line1c = sprintf("%2.0f", getprop("/environment/temperature-degc"))~" °C";
- line1rt = "TO 1 N1";
- line2l = "<TO";
- line2r = "CLB>";
- line3lt = "TO 1";
- line3c = "<SEL> <ARM>";
- line3r = "CLB 1>";
- line4lt = "TO 2";
- line4r = "CLB 2>";
- line6l = "<INDEX";
- line6r = "TAKEOFF>";
- }
- if (display == "TO_REF") {
- title = "TAKEOFF REF";
- line1lt = "FLAP/ACCEL HT";
- line1l = getprop("/instrumentation/fmc/to-flap");
- line1rt = "REF V1";
- if (getprop("/instrumentation/fmc/vspeeds/V1") != nil){
- line1r = sprintf("%3.0f", getprop("/instrumentation/fmc/vspeeds/V1"));
- }
- line2lt = "E/O ACCEL HT";
- line2rt = "REF VR";
- if (getprop("/instrumentation/fmc/vspeeds/VR") != nil){
- line2r = sprintf("%3.0f", getprop("/instrumentation/fmc/vspeeds/VR"));
- }
- line3lt = "THR REDUCTION";
- line3rt = "REF V2";
- if (getprop("/instrumentation/fmc/vspeeds/V2") != nil){
- line3r = sprintf("%3.0f", getprop("/instrumentation/fmc/vspeeds/V2"));
- }
- line4lt = "WIND/SLOPE";
- line4rt = "TRIM CG%";
- if (getprop("/instrumentation/fmc/cg") != nil and getprop("/instrumentation/fmc/stab-trim-units")){
- line4r = sprintf("%1.1f", getprop("/instrumentation/fmc/stab-trim-units"))~" "~sprintf("%2.1f", getprop("/instrumentation/fmc/cg"))~"%";
- }
- line5rt = "POS SHIFT";
- line6l = "<INDEX";
- line6r = "POS INIT>";
- }
-
- if (serviceable != 1){
- title = ""; page = "";
- line1l = ""; line2l = ""; line3l = ""; line4l = ""; line5l = ""; line6l = "";
- line1lt = ""; line2lt = ""; line3lt = ""; line4lt = ""; line5lt = ""; line6lt = "";
- line1c = ""; line2c = ""; line3c = ""; line4c = ""; line5c = ""; line6c = "";
- line1ct = ""; line2ct = ""; line3ct = ""; line4ct = ""; line5ct = ""; line6ct = "";
- line1r = ""; line2r = ""; line3r = ""; line4r = ""; line5r = ""; line6r = "";
- line1rt = ""; line2rt = ""; line3rt = ""; line4rt = ""; line5rt = ""; line6rt = "";
- }
-
- setprop("/instrumentation/cdu/output/title",title);
- setprop("/instrumentation/cdu/output/page",page);
- setprop("/instrumentation/cdu/output/line1/left",line1l);
- setprop("/instrumentation/cdu/output/line2/left",line2l);
- setprop("/instrumentation/cdu/output/line3/left",line3l);
- setprop("/instrumentation/cdu/output/line4/left",line4l);
- setprop("/instrumentation/cdu/output/line5/left",line5l);
- setprop("/instrumentation/cdu/output/line6/left",line6l);
- setprop("/instrumentation/cdu/output/line1/left-title",line1lt);
- setprop("/instrumentation/cdu/output/line2/left-title",line2lt);
- setprop("/instrumentation/cdu/output/line3/left-title",line3lt);
- setprop("/instrumentation/cdu/output/line4/left-title",line4lt);
- setprop("/instrumentation/cdu/output/line5/left-title",line5lt);
- setprop("/instrumentation/cdu/output/line6/left-title",line6lt);
- setprop("/instrumentation/cdu/output/line1/center",line1c);
- setprop("/instrumentation/cdu/output/line2/center",line2c);
- setprop("/instrumentation/cdu/output/line3/center",line3c);
- setprop("/instrumentation/cdu/output/line4/center",line4c);
- setprop("/instrumentation/cdu/output/line5/center",line5c);
- setprop("/instrumentation/cdu/output/line6/center",line6c);
- setprop("/instrumentation/cdu/output/line1/center-title",line1ct);
- setprop("/instrumentation/cdu/output/line2/center-title",line2ct);
- setprop("/instrumentation/cdu/output/line3/center-title",line3ct);
- setprop("/instrumentation/cdu/output/line4/center-title",line4ct);
- setprop("/instrumentation/cdu/output/line5/center-title",line5ct);
- setprop("/instrumentation/cdu/output/line6/center-title",line6ct);
- setprop("/instrumentation/cdu/output/line1/right",line1r);
- setprop("/instrumentation/cdu/output/line2/right",line2r);
- setprop("/instrumentation/cdu/output/line3/right",line3r);
- setprop("/instrumentation/cdu/output/line4/right",line4r);
- setprop("/instrumentation/cdu/output/line5/right",line5r);
- setprop("/instrumentation/cdu/output/line6/right",line6r);
- setprop("/instrumentation/cdu/output/line1/right-title",line1rt);
- setprop("/instrumentation/cdu/output/line2/right-title",line2rt);
- setprop("/instrumentation/cdu/output/line3/right-title",line3rt);
- setprop("/instrumentation/cdu/output/line4/right-title",line4rt);
- setprop("/instrumentation/cdu/output/line5/right-title",line5rt);
- setprop("/instrumentation/cdu/output/line6/right-title",line6rt);
- settimer(cdu,0.2);
- }
- _setlistener("/sim/signals/fdm-initialized", cdu);
|