diff --git a/A320-main.xml b/A320-main.xml
index 5d0a042c..34e1d157 100644
--- a/A320-main.xml
+++ b/A320-main.xml
@@ -23,10 +23,17 @@
0
+
+
+
+ exterior
+ true
+ Splash/Splash1.png
+
+
- Aircraft/A320Family/Splash/splash.png
- Aircraft/A320Family/Splash/splash1.png
+ Aircraft/A320Family/Splash/SplashOld.png
@@ -537,22 +544,18 @@
-
+
-
- FCTL
+ FCTL
-
-
- FCTL
+ FCTL
-
diff --git a/Models/Instruments/MCDU1/RADNAV/RADNAV.xml b/Models/Instruments/MCDU1/RADNAV/RADNAV.xml
index c60b21d6..878a9e9b 100644
--- a/Models/Instruments/MCDU1/RADNAV/RADNAV.xml
+++ b/Models/Instruments/MCDU1/RADNAV/RADNAV.xml
@@ -67,19 +67,58 @@
left-center
yz-plane
text-value
- XXX/XXX.XX
+ %s
false
BoeingCDU-Large.ttf
- autopilot/serviceable
+ /FMGC/internal/vor1-mcdu
true
false
false
- 0.0055
+ 0.0045
64
64
+
+ vor1freq3
+
+ -0.001
+ -0.042
+ 0.0705
+
+ left-center
+ yz-plane
+ text-value
+ %s
+ false
+ BoeingCDU-Large.ttf
+ /FMGC/internal/vor1-mcdu
+ true
+ false
+ false
+ 0.0050
+
+ 64
+ 64
+
+
+
+
+ select
+ vor1freq2
+
+ /FMGC/internal/vor1freq-set
+
+
+
+
+ select
+ vor1freq3
+
+ /FMGC/internal/vor1freq-set
+
+
vor2freq
@@ -114,19 +153,58 @@
right-center
yz-plane
text-value
- XXX.XX/XXX
+ %s
false
BoeingCDU-Large.ttf
- autopilot/serviceable
+ /FMGC/internal/vor2-mcdu
true
false
false
- 0.0055
+ 0.0045
64
64
+
+ vor2freq3
+
+ -0.001
+ 0.041
+ 0.0705
+
+ right-center
+ yz-plane
+ text-value
+ %s
+ false
+ BoeingCDU-Large.ttf
+ /FMGC/internal/vor2-mcdu
+ true
+ false
+ false
+ 0.0050
+
+ 64
+ 64
+
+
+
+
+ select
+ vor2freq2
+
+ /FMGC/internal/vor2freq-set
+
+
+
+
+ select
+ vor2freq3
+
+ /FMGC/internal/vor2freq-set
+
+
crs1
@@ -174,6 +252,45 @@
64
+
+ crs13
+
+ -0.001
+ -0.045
+ 0.061
+
+ left-center
+ yz-plane
+ text-value
+ %s
+ false
+ BoeingCDU-Large.ttf
+ /instrumentation/nav[0]/radials/selected-deg
+ true
+ false
+ false
+ 0.0050
+
+ 64
+ 64
+
+
+
+
+ select
+ crs12
+
+ /FMGC/internal/vor1crs-set
+
+
+
+
+ select
+ crs13
+
+ /FMGC/internal/vor1crs-set
+
+
crs2
@@ -221,6 +338,45 @@
64
+
+ crs23
+
+ -0.001
+ 0.044
+ 0.061
+
+ right-center
+ yz-plane
+ text-value
+ %s
+ false
+ BoeingCDU-Large.ttf
+ /instrumentation/nav[1]/radials/selected-deg
+ true
+ false
+ false
+ 0.0050
+
+ 64
+ 64
+
+
+
+
+ select
+ crs22
+
+ /FMGC/internal/vor2crs-set
+
+
+
+
+ select
+ crs23
+
+ /FMGC/internal/vor2crs-set
+
+
ilsfreq
@@ -255,19 +411,58 @@
left-center
yz-plane
text-value
- XXX/XXX.XX
+ %s
false
BoeingCDU-Large.ttf
- autopilot/serviceable
+ /FMGC/internal/ils-mcdu
true
false
false
- 0.0055
+ 0.0045
64
64
+
+ ilsfreq3
+
+ -0.001
+ -0.042
+ 0.0505
+
+ left-center
+ yz-plane
+ text-value
+ %s
+ false
+ BoeingCDU-Large.ttf
+ /FMGC/internal/ils-mcdu
+ true
+ false
+ false
+ 0.0050
+
+ 64
+ 64
+
+
+
+
+ select
+ ilsfreq2
+
+ /FMGC/internal/vor1freq-set
+
+
+
+
+ select
+ ilsfreq3
+
+ /FMGC/internal/vor1freq-set
+
+
chanmls
@@ -362,6 +557,45 @@
64
+
+ ilscrs13
+
+ -0.001
+ -0.045
+ 0.0395
+
+ left-center
+ yz-plane
+ text-value
+ %s
+ false
+ BoeingCDU-Large.ttf
+ /instrumentation/nav[0]/radials/selected-deg
+ true
+ false
+ false
+ 0.0050
+
+ 64
+ 64
+
+
+
+
+ select
+ ilscrs12
+
+ /FMGC/internal/vor1crs-set
+
+
+
+
+ select
+ ilscrs13
+
+ /FMGC/internal/vor1crs-set
+
+
slopecrs
@@ -467,14 +701,14 @@
left-center
yz-plane
text-value
- [ ]/[ .]
+ [ ]/[ . ]
false
helvetica_medium.txf
autopilot/serviceable
true
false
false
- 0.0045
+ 0.0040
64
64
@@ -514,14 +748,14 @@
right-center
yz-plane
text-value
- [ .]/[ ]
+ [ . ]/[ ]
false
helvetica_medium.txf
autopilot/serviceable
true
false
false
- 0.0045
+ 0.0040
64
64
@@ -566,42 +800,19 @@
-
-
- material
- engtype
- activedata3
- idleperf2
-
- 0.2
- 0.4
- 0.2
-
-
- 0
- 0
- 0
-
-
- 0
- 0
- 0
-
-
- 0.2
- 0.4
- 0.2
-
-
-
material
vor1freq2
+ vor1freq3
vor2freq2
+ vor2freq3
crs12
+ crs13
crs22
+ crs23
ilsfreq2
+ ilsfreq3
chanmls2
ilscrs12
mlscrs2
diff --git a/Models/Instruments/MCDU2/RADNAV/RADNAV.xml b/Models/Instruments/MCDU2/RADNAV/RADNAV.xml
index c60b21d6..878a9e9b 100644
--- a/Models/Instruments/MCDU2/RADNAV/RADNAV.xml
+++ b/Models/Instruments/MCDU2/RADNAV/RADNAV.xml
@@ -67,19 +67,58 @@
left-center
yz-plane
text-value
- XXX/XXX.XX
+ %s
false
BoeingCDU-Large.ttf
- autopilot/serviceable
+ /FMGC/internal/vor1-mcdu
true
false
false
- 0.0055
+ 0.0045
64
64
+
+ vor1freq3
+
+ -0.001
+ -0.042
+ 0.0705
+
+ left-center
+ yz-plane
+ text-value
+ %s
+ false
+ BoeingCDU-Large.ttf
+ /FMGC/internal/vor1-mcdu
+ true
+ false
+ false
+ 0.0050
+
+ 64
+ 64
+
+
+
+
+ select
+ vor1freq2
+
+ /FMGC/internal/vor1freq-set
+
+
+
+
+ select
+ vor1freq3
+
+ /FMGC/internal/vor1freq-set
+
+
vor2freq
@@ -114,19 +153,58 @@
right-center
yz-plane
text-value
- XXX.XX/XXX
+ %s
false
BoeingCDU-Large.ttf
- autopilot/serviceable
+ /FMGC/internal/vor2-mcdu
true
false
false
- 0.0055
+ 0.0045
64
64
+
+ vor2freq3
+
+ -0.001
+ 0.041
+ 0.0705
+
+ right-center
+ yz-plane
+ text-value
+ %s
+ false
+ BoeingCDU-Large.ttf
+ /FMGC/internal/vor2-mcdu
+ true
+ false
+ false
+ 0.0050
+
+ 64
+ 64
+
+
+
+
+ select
+ vor2freq2
+
+ /FMGC/internal/vor2freq-set
+
+
+
+
+ select
+ vor2freq3
+
+ /FMGC/internal/vor2freq-set
+
+
crs1
@@ -174,6 +252,45 @@
64
+
+ crs13
+
+ -0.001
+ -0.045
+ 0.061
+
+ left-center
+ yz-plane
+ text-value
+ %s
+ false
+ BoeingCDU-Large.ttf
+ /instrumentation/nav[0]/radials/selected-deg
+ true
+ false
+ false
+ 0.0050
+
+ 64
+ 64
+
+
+
+
+ select
+ crs12
+
+ /FMGC/internal/vor1crs-set
+
+
+
+
+ select
+ crs13
+
+ /FMGC/internal/vor1crs-set
+
+
crs2
@@ -221,6 +338,45 @@
64
+
+ crs23
+
+ -0.001
+ 0.044
+ 0.061
+
+ right-center
+ yz-plane
+ text-value
+ %s
+ false
+ BoeingCDU-Large.ttf
+ /instrumentation/nav[1]/radials/selected-deg
+ true
+ false
+ false
+ 0.0050
+
+ 64
+ 64
+
+
+
+
+ select
+ crs22
+
+ /FMGC/internal/vor2crs-set
+
+
+
+
+ select
+ crs23
+
+ /FMGC/internal/vor2crs-set
+
+
ilsfreq
@@ -255,19 +411,58 @@
left-center
yz-plane
text-value
- XXX/XXX.XX
+ %s
false
BoeingCDU-Large.ttf
- autopilot/serviceable
+ /FMGC/internal/ils-mcdu
true
false
false
- 0.0055
+ 0.0045
64
64
+
+ ilsfreq3
+
+ -0.001
+ -0.042
+ 0.0505
+
+ left-center
+ yz-plane
+ text-value
+ %s
+ false
+ BoeingCDU-Large.ttf
+ /FMGC/internal/ils-mcdu
+ true
+ false
+ false
+ 0.0050
+
+ 64
+ 64
+
+
+
+
+ select
+ ilsfreq2
+
+ /FMGC/internal/vor1freq-set
+
+
+
+
+ select
+ ilsfreq3
+
+ /FMGC/internal/vor1freq-set
+
+
chanmls
@@ -362,6 +557,45 @@
64
+
+ ilscrs13
+
+ -0.001
+ -0.045
+ 0.0395
+
+ left-center
+ yz-plane
+ text-value
+ %s
+ false
+ BoeingCDU-Large.ttf
+ /instrumentation/nav[0]/radials/selected-deg
+ true
+ false
+ false
+ 0.0050
+
+ 64
+ 64
+
+
+
+
+ select
+ ilscrs12
+
+ /FMGC/internal/vor1crs-set
+
+
+
+
+ select
+ ilscrs13
+
+ /FMGC/internal/vor1crs-set
+
+
slopecrs
@@ -467,14 +701,14 @@
left-center
yz-plane
text-value
- [ ]/[ .]
+ [ ]/[ . ]
false
helvetica_medium.txf
autopilot/serviceable
true
false
false
- 0.0045
+ 0.0040
64
64
@@ -514,14 +748,14 @@
right-center
yz-plane
text-value
- [ .]/[ ]
+ [ . ]/[ ]
false
helvetica_medium.txf
autopilot/serviceable
true
false
false
- 0.0045
+ 0.0040
64
64
@@ -566,42 +800,19 @@
-
-
- material
- engtype
- activedata3
- idleperf2
-
- 0.2
- 0.4
- 0.2
-
-
- 0
- 0
- 0
-
-
- 0
- 0
- 0
-
-
- 0.2
- 0.4
- 0.2
-
-
-
material
vor1freq2
+ vor1freq3
vor2freq2
+ vor2freq3
crs12
+ crs13
crs22
+ crs23
ilsfreq2
+ ilsfreq3
chanmls2
ilscrs12
mlscrs2
diff --git a/Models/Liveries/A320/IAE/OPRF_Combat_Ready.png b/Models/Liveries/A320/IAE/OPRF_Combat_Ready.png
new file mode 100644
index 00000000..ed9d8c7e
Binary files /dev/null and b/Models/Liveries/A320/IAE/OPRF_Combat_Ready.png differ
diff --git a/Models/Liveries/A320/IAE/OPRF_Combat_Ready.xml b/Models/Liveries/A320/IAE/OPRF_Combat_Ready.xml
new file mode 100644
index 00000000..8eb76150
--- /dev/null
+++ b/Models/Liveries/A320/IAE/OPRF_Combat_Ready.xml
@@ -0,0 +1,18 @@
+
+
+
+
+
+
+ OPRF Combat Ready
+ Liveries/A320/IAE/OPRF Combat Ready.png
+
+
+
+
+
+ 1
+
+
+ 0
+
diff --git a/Nasal/FMGC.nas b/Nasal/FMGC.nas
index 1cf0b528..95c010a5 100644
--- a/Nasal/FMGC.nas
+++ b/Nasal/FMGC.nas
@@ -15,6 +15,11 @@ setprop("/FMGC/internal/mach-switchover", 0);
setprop("/it-autoflight/settings/reduc-agl-ft", 3000);
setprop("/it-autoflight/internal/vert-speed-fpm", 0);
setprop("/it-autoflight/output/fma-pwr", 0);
+setprop("/instrumentation/nav[0]/nav-id", "XXX");
+setprop("/instrumentation/nav[1]/nav-id", "XXX");
+setprop("/FMGC/internal/ils-mcdu", "XXX/999.99");
+setprop("/FMGC/internal/vor1-mcdu", "XXX/999.99");
+setprop("/FMGC/internal/vor2-mcdu", "999.99/XXX");
var FMGCinit = func {
setprop("/FMGC/status/to-state", 0);
@@ -27,6 +32,7 @@ var FMGCinit = func {
setprop("/FMGC/internal/mach-switchover", 0);
setprop("/it-autoflight/settings/reduc-agl-ft", 3000);
setprop("/FMGC/internal/decel", 0);
+ setprop("/FMGC/internal/loc-source", "NAV0");
phasecheck.start();
various.start();
}
@@ -185,8 +191,38 @@ var various = maketimer(1, func {
} else {
setprop("/it-autoflight/settings/reduc-agl-ft", getprop("/FMGC/internal/reduc-agl-ft"));
}
+ nav0();
+ nav1();
});
+var nav0 = func {
+ var freqnav0uf = getprop("/instrumentation/nav[0]/frequencies/selected-mhz");
+ var freqnav0 = sprintf("%.2f", freqnav0uf);
+ var namenav0 = getprop("/instrumentation/nav[0]/nav-id");
+ if (freqnav0 >= 108.10 and freqnav0 <= 117.95) {
+ if (namenav0 != "") {
+ setprop("/FMGC/internal/ils-mcdu", namenav0 ~ "/" ~ freqnav0);
+ setprop("/FMGC/internal/vor1-mcdu", namenav0 ~ "/" ~ freqnav0);
+ } else {
+ setprop("/FMGC/internal/ils-mcdu", freqnav0);
+ setprop("/FMGC/internal/vor1-mcdu", freqnav0);
+ }
+ }
+}
+
+var nav1 = func {
+ var freqnav1uf = getprop("/instrumentation/nav[1]/frequencies/selected-mhz");
+ var freqnav1 = sprintf("%.2f", freqnav1uf);
+ var namenav1 = getprop("/instrumentation/nav[1]/nav-id");
+ if (freqnav1 >= 108.10 and freqnav1 <= 117.95) {
+ if (namenav1 != "") {
+ setprop("/FMGC/internal/vor2-mcdu", namenav1 ~ "/" ~ freqnav1);
+ } else {
+ setprop("/FMGC/internal/vor2-mcdu", freqnav1);
+ }
+ }
+}
+
#################
# Managed Speed #
#################
@@ -342,7 +378,6 @@ var APinit = func {
setprop("/it-autoflight/output/lat", 5);
setprop("/it-autoflight/output/vert", 7);
setprop("/it-autoflight/output/fma-pwr", 0);
- setprop("/it-autoflight/settings/use-nav2-radio", 0);
setprop("/it-autoflight/settings/use-backcourse", 0);
setprop("/it-autoflight/internal/min-vs", -500);
setprop("/it-autoflight/internal/max-vs", 500);
@@ -591,7 +626,6 @@ var vertical = func {
# Do nothing because G/S or LAND or FLARE is active
} else {
setprop("/instrumentation/nav[0]/gs-rate-of-climb", 0);
- setprop("/instrumentation/nav[1]/gs-rate-of-climb", 0);
setprop("/it-autoflight/output/appr-armed", 1);
setprop("/it-autoflight/mode/arm", "ILS");
}
@@ -937,9 +971,9 @@ var update_apparmelec = func {
var locarmcheck = func {
var locdefl = getprop("instrumentation/nav[0]/heading-needle-deflection-norm");
var locdefl_b = getprop("instrumentation/nav[1]/heading-needle-deflection-norm");
- if ((locdefl < 0.9233) and (getprop("instrumentation/nav[0]/signal-quality-norm") > 0.99) and (getprop("/it-autoflight/settings/use-nav2-radio") == 0)) {
+ if ((locdefl < 0.9233) and (getprop("instrumentation/nav[0]/signal-quality-norm") > 0.99) and (getprop("/FMGC/internal/loc-source") == "NAV0")) {
make_loc_active();
- } else if ((locdefl_b < 0.9233) and (getprop("instrumentation/nav[1]/signal-quality-norm") > 0.99) and (getprop("/it-autoflight/settings/use-nav2-radio") == 1)) {
+ } else if ((locdefl_b < 0.9233) and (getprop("instrumentation/nav[1]/signal-quality-norm") > 0.99) and (getprop("/FMGC/internal/loc-source") == "NAV1")) {
make_loc_active();
} else {
return 0;
@@ -959,10 +993,7 @@ var make_loc_active = func {
var apparmcheck = func {
var signal = getprop("/instrumentation/nav[0]/gs-needle-deflection-norm");
- var signal_b = getprop("/instrumentation/nav[1]/gs-needle-deflection-norm");
- if ((signal <= -0.000000001) and (getprop("/it-autoflight/settings/use-nav2-radio") == 0) and (getprop("/it-autoflight/output/lat") == 2)) {
- make_appr_active();
- } else if ((signal_b <= -0.000000001) and (getprop("/it-autoflight/settings/use-nav2-radio") == 1) and (getprop("/it-autoflight/output/lat") == 2)) {
+ if ((signal <= -0.000000001) and (getprop("/FMGC/internal/loc-source") == "NAV0") and (getprop("/it-autoflight/output/lat") == 2)) {
make_appr_active();
} else {
return 0;
diff --git a/Nasal/MCDU/MCDU1.nas b/Nasal/MCDU/MCDU1.nas
index da17f313..d92a0c38 100644
--- a/Nasal/MCDU/MCDU1.nas
+++ b/Nasal/MCDU/MCDU1.nas
@@ -40,6 +40,10 @@ var MCDU_reset = func {
setprop("/FMGC/internal/cruise-lvl-set", 0);
setprop("/FMGC/internal/flap-ths-set", 0);
setprop("/FMGC/internal/flex-set", 0);
+ setprop("/FMGC/internal/vor1freq-set", 0);
+ setprop("/FMGC/internal/vor1crs-set", 0);
+ setprop("/FMGC/internal/vor2freq-set", 0);
+ setprop("/FMGC/internal/vor2crs-set", 0);
}
var lskbutton = func(btn) {
@@ -50,24 +54,32 @@ var lskbutton = func(btn) {
setprop("/MCDU[0]/scratchpad", "GPS PRIMARY");
} else if (getprop("/MCDU[0]/page") == "TO") {
PerfTOInput("L1");
+ } else if (getprop("/MCDU[0]/page") == "RADNAV") {
+ radnavInput("L1");
}
} else if (btn == "2") {
if (getprop("/MCDU[0]/page") == "INITA") {
PerfInput("L2");
} else if (getprop("/MCDU[0]/page") == "TO") {
PerfTOInput("L2");
+ } else if (getprop("/MCDU[0]/page") == "RADNAV") {
+ radnavInput("L2");
}
} else if (btn == "3") {
if (getprop("/MCDU[0]/page") == "INITA") {
initInputA("L3");
} else if (getprop("/MCDU[0]/page") == "TO") {
PerfTOInput("L3");
+ } else if (getprop("/MCDU[0]/page") == "RADNAV") {
+ radnavInput("L3");
}
} else if (btn == "4") {
if (getprop("/MCDU[0]/page") == "DATA") {
setprop("/MCDU[0]/page", "STATUS");
} else if (getprop("/MCDU[0]/page") == "TO") {
PerfTOInput("L4");
+ } else if (getprop("/MCDU[0]/page") == "RADNAV") {
+ radnavInput("L4");
}
} else if (btn == "5") {
if (getprop("/MCDU[0]/page") == "INITA") {
@@ -96,10 +108,14 @@ var rskbutton = func(btn) {
if (btn == "1") {
if (getprop("/MCDU[0]/page") == "INITA") {
initInputA("R1");
+ } else if (getprop("/MCDU[0]/page") == "RADNAV") {
+ radnavInput("R1");
}
} else if (btn == "2") {
if (getprop("/MCDU[0]/page") == "INITB") {
initInputB("R2");
+ } else if (getprop("/MCDU[0]/page") == "RADNAV") {
+ radnavInput("R2");
}
} else if (btn == "3") {
if (getprop("/MCDU[0]/page") == "INITA") {
@@ -110,6 +126,8 @@ var rskbutton = func(btn) {
} else if (btn == "4") {
if (getprop("/MCDU[0]/page") == "TO") {
PerfTOInput("R4");
+ } else if (getprop("/MCDU[0]/page") == "RADNAV") {
+ radnavInput("R4");
}
} else if (btn == "5") {
if (getprop("/MCDU[0]/page") == "TO") {
@@ -130,6 +148,163 @@ var rskbutton_b = func(btn) {
# Special Middle Click Functions
}
+var radnavInput = func(key) {
+ var scratchpad = getprop("/MCDU[0]/scratchpad");
+ if (key == "L1") {
+ if (scratchpad == "CLR") {
+ setprop("/FMGC/internal/vor1freq-set", 0);
+ setprop("/MCDU[0]/scratchpad", "");
+ } else {
+ var tfs = size(scratchpad);
+ if (tfs == 3 or tfs == 5 or tfs == 6) {
+ if (scratchpad >= 108.10 and scratchpad <= 111.95) {
+ if (scratchpad == 108.10 or scratchpad == 108.15 or scratchpad == 108.30 or scratchpad == 108.35 or scratchpad == 108.50 or scratchpad == 108.55 or scratchpad == 108.70 or scratchpad == 108.75 or scratchpad == 108.90 or scratchpad == 108.95
+ or scratchpad == 109.10 or scratchpad == 109.15 or scratchpad == 109.30 or scratchpad == 109.35 or scratchpad == 109.50 or scratchpad == 109.55 or scratchpad == 109.70 or scratchpad == 109.75 or scratchpad == 109.90 or scratchpad == 109.95
+ or scratchpad == 110.10 or scratchpad == 110.15 or scratchpad == 110.30 or scratchpad == 110.35 or scratchpad == 110.50 or scratchpad == 110.55 or scratchpad == 110.70 or scratchpad == 110.75 or scratchpad == 110.90 or scratchpad == 110.95
+ or scratchpad == 111.10 or scratchpad == 111.15 or scratchpad == 111.30 or scratchpad == 111.35 or scratchpad == 111.50 or scratchpad == 111.55 or scratchpad == 111.70 or scratchpad == 111.75 or scratchpad == 111.90 or scratchpad == 111.95) {
+ setprop("/MCDU[0]/scratchpad-msg", "1");
+ setprop("/MCDU[0]/scratchpad", "NOT ALLOWED");
+ } else {
+ setprop("/instrumentation/nav[0]/frequencies/selected-mhz", scratchpad);
+ setprop("/FMGC/internal/vor1freq-set", 1);
+ setprop("/MCDU[0]/scratchpad", "");
+ }
+ } else if (scratchpad >= 112.00 and scratchpad <= 117.95) {
+ setprop("/instrumentation/nav[0]/frequencies/selected-mhz", scratchpad);
+ setprop("/FMGC/internal/vor1freq-set", 1);
+ setprop("/MCDU[0]/scratchpad", "");
+ } else {
+ setprop("/MCDU[0]/scratchpad-msg", "1");
+ setprop("/MCDU[0]/scratchpad", "NOT ALLOWED");
+ }
+ } else {
+ setprop("/MCDU[0]/scratchpad-msg", "1");
+ setprop("/MCDU[0]/scratchpad", "NOT ALLOWED");
+ }
+ }
+ } else if (key == "L2") {
+ if (scratchpad == "CLR") {
+ setprop("/FMGC/internal/vor1crs-set", 0);
+ setprop("/MCDU[0]/scratchpad", "");
+ } else {
+ var tfs = size(scratchpad);
+ if (tfs >= 1 and tfs <= 3) {
+ if (scratchpad >= 0 and scratchpad <= 360) {
+ setprop("/instrumentation/nav[0]/radials/selected-deg", scratchpad);
+ setprop("/FMGC/internal/vor1crs-set", 1);
+ setprop("/MCDU[0]/scratchpad", "");
+ } else {
+ setprop("/MCDU[0]/scratchpad-msg", "1");
+ setprop("/MCDU[0]/scratchpad", "NOT ALLOWED");
+ }
+ } else {
+ setprop("/MCDU[0]/scratchpad-msg", "1");
+ setprop("/MCDU[0]/scratchpad", "NOT ALLOWED");
+ }
+ }
+ } else if (key == "L3") {
+ if (scratchpad == "CLR") {
+ setprop("/FMGC/internal/vor1freq-set", 0);
+ setprop("/MCDU[0]/scratchpad", "");
+ } else {
+ var tfs = size(scratchpad);
+ if (tfs == 3 or tfs == 5 or tfs == 6) {
+ if (scratchpad >= 108.10 and scratchpad <= 111.95) {
+ if (scratchpad == 108.10 or scratchpad == 108.15 or scratchpad == 108.30 or scratchpad == 108.35 or scratchpad == 108.50 or scratchpad == 108.55 or scratchpad == 108.70 or scratchpad == 108.75 or scratchpad == 108.90 or scratchpad == 108.95
+ or scratchpad == 109.10 or scratchpad == 109.15 or scratchpad == 109.30 or scratchpad == 109.35 or scratchpad == 109.50 or scratchpad == 109.55 or scratchpad == 109.70 or scratchpad == 109.75 or scratchpad == 109.90 or scratchpad == 109.95
+ or scratchpad == 110.10 or scratchpad == 110.15 or scratchpad == 110.30 or scratchpad == 110.35 or scratchpad == 110.50 or scratchpad == 110.55 or scratchpad == 110.70 or scratchpad == 110.75 or scratchpad == 110.90 or scratchpad == 110.95
+ or scratchpad == 111.10 or scratchpad == 111.15 or scratchpad == 111.30 or scratchpad == 111.35 or scratchpad == 111.50 or scratchpad == 111.55 or scratchpad == 111.70 or scratchpad == 111.75 or scratchpad == 111.90 or scratchpad == 111.95) {
+ setprop("/instrumentation/nav[0]/frequencies/selected-mhz", scratchpad);
+ setprop("/FMGC/internal/vor1freq-set", 1);
+ setprop("/MCDU[0]/scratchpad", "");
+ } else {
+ setprop("/MCDU[0]/scratchpad-msg", "1");
+ setprop("/MCDU[0]/scratchpad", "NOT ALLOWED");
+ }
+ } else {
+ setprop("/MCDU[0]/scratchpad-msg", "1");
+ setprop("/MCDU[0]/scratchpad", "NOT ALLOWED");
+ }
+ } else {
+ setprop("/MCDU[0]/scratchpad-msg", "1");
+ setprop("/MCDU[0]/scratchpad", "NOT ALLOWED");
+ }
+ }
+ } else if (key == "L4") {
+ if (scratchpad == "CLR") {
+ setprop("/FMGC/internal/vor1crs-set", 0);
+ setprop("/MCDU[0]/scratchpad", "");
+ } else {
+ var tfs = size(scratchpad);
+ if (tfs >= 1 and tfs <= 3) {
+ if (scratchpad >= 0 and scratchpad <= 360) {
+ setprop("/instrumentation/nav[0]/radials/selected-deg", scratchpad);
+ setprop("/FMGC/internal/vor1crs-set", 1);
+ setprop("/MCDU[0]/scratchpad", "");
+ } else {
+ setprop("/MCDU[0]/scratchpad-msg", "1");
+ setprop("/MCDU[0]/scratchpad", "NOT ALLOWED");
+ }
+ } else {
+ setprop("/MCDU[0]/scratchpad-msg", "1");
+ setprop("/MCDU[0]/scratchpad", "NOT ALLOWED");
+ }
+ }
+ } else if (key == "R1") {
+ if (scratchpad == "CLR") {
+ setprop("/FMGC/internal/vor2freq-set", 0);
+ setprop("/MCDU[0]/scratchpad", "");
+ } else {
+ var tfs = size(scratchpad);
+ if (tfs == 3 or tfs == 5 or tfs == 6) {
+ if (scratchpad >= 108.10 and scratchpad <= 111.95) {
+ if (scratchpad == 108.10 or scratchpad == 108.15 or scratchpad == 108.30 or scratchpad == 108.35 or scratchpad == 108.50 or scratchpad == 108.55 or scratchpad == 108.70 or scratchpad == 108.75 or scratchpad == 108.90 or scratchpad == 108.95
+ or scratchpad == 109.10 or scratchpad == 109.15 or scratchpad == 109.30 or scratchpad == 109.35 or scratchpad == 109.50 or scratchpad == 109.55 or scratchpad == 109.70 or scratchpad == 109.75 or scratchpad == 109.90 or scratchpad == 109.95
+ or scratchpad == 110.10 or scratchpad == 110.15 or scratchpad == 110.30 or scratchpad == 110.35 or scratchpad == 110.50 or scratchpad == 110.55 or scratchpad == 110.70 or scratchpad == 110.75 or scratchpad == 110.90 or scratchpad == 110.95
+ or scratchpad == 111.10 or scratchpad == 111.15 or scratchpad == 111.30 or scratchpad == 111.35 or scratchpad == 111.50 or scratchpad == 111.55 or scratchpad == 111.70 or scratchpad == 111.75 or scratchpad == 111.90 or scratchpad == 111.95) {
+ setprop("/MCDU[0]/scratchpad-msg", "1");
+ setprop("/MCDU[0]/scratchpad", "NOT ALLOWED");
+ } else {
+ setprop("/instrumentation/nav[1]/frequencies/selected-mhz", scratchpad);
+ setprop("/FMGC/internal/vor2freq-set", 1);
+ setprop("/MCDU[0]/scratchpad", "");
+ }
+ } else if (scratchpad >= 112.00 and scratchpad <= 117.95) {
+ setprop("/instrumentation/nav[1]/frequencies/selected-mhz", scratchpad);
+ setprop("/FMGC/internal/vor2freq-set", 1);
+ setprop("/MCDU[0]/scratchpad", "");
+ } else {
+ setprop("/MCDU[0]/scratchpad-msg", "1");
+ setprop("/MCDU[0]/scratchpad", "NOT ALLOWED");
+ }
+ } else {
+ setprop("/MCDU[0]/scratchpad-msg", "1");
+ setprop("/MCDU[0]/scratchpad", "NOT ALLOWED");
+ }
+ }
+ } else if (key == "R2") {
+ if (scratchpad == "CLR") {
+ setprop("/FMGC/internal/vor2crs-set", 0);
+ setprop("/MCDU[0]/scratchpad", "");
+ } else {
+ var tfs = size(scratchpad);
+ if (tfs >= 1 and tfs <= 3) {
+ if (scratchpad >= 0 and scratchpad <= 360) {
+ setprop("/instrumentation/nav[1]/radials/selected-deg", scratchpad);
+ setprop("/FMGC/internal/vor2crs-set", 1);
+ setprop("/MCDU[0]/scratchpad", "");
+ } else {
+ setprop("/MCDU[0]/scratchpad-msg", "1");
+ setprop("/MCDU[0]/scratchpad", "NOT ALLOWED");
+ }
+ } else {
+ setprop("/MCDU[0]/scratchpad-msg", "1");
+ setprop("/MCDU[0]/scratchpad", "NOT ALLOWED");
+ }
+ }
+ }
+}
+
var initInputA = func(key) {
var scratchpad = getprop("/MCDU[0]/scratchpad");
if (key == "L3") {
diff --git a/Nasal/MCDU/MCDU2.nas b/Nasal/MCDU/MCDU2.nas
index 7a777f39..a03d800d 100644
--- a/Nasal/MCDU/MCDU2.nas
+++ b/Nasal/MCDU/MCDU2.nas
@@ -40,6 +40,10 @@ var MCDU_reset = func {
setprop("/FMGC/internal/cruise-lvl-set", 0);
setprop("/FMGC/internal/flap-ths-set", 0);
setprop("/FMGC/internal/flex-set", 0);
+ setprop("/FMGC/internal/vor1freq-set", 0);
+ setprop("/FMGC/internal/vor1crs-set", 0);
+ setprop("/FMGC/internal/vor2freq-set", 0);
+ setprop("/FMGC/internal/vor2crs-set", 0);
}
var lskbutton = func(btn) {
@@ -50,24 +54,32 @@ var lskbutton = func(btn) {
setprop("/MCDU[1]/scratchpad", "GPS PRIMARY");
} else if (getprop("/MCDU[1]/page") == "TO") {
PerfTOInput("L1");
+ } else if (getprop("/MCDU[1]/page") == "RADNAV") {
+ radnavInput("L1");
}
} else if (btn == "2") {
if (getprop("/MCDU[1]/page") == "INITA") {
PerfInput("L2");
} else if (getprop("/MCDU[1]/page") == "TO") {
PerfTOInput("L2");
+ } else if (getprop("/MCDU[1]/page") == "RADNAV") {
+ radnavInput("L2");
}
} else if (btn == "3") {
if (getprop("/MCDU[1]/page") == "INITA") {
initInputA("L3");
} else if (getprop("/MCDU[1]/page") == "TO") {
PerfTOInput("L3");
+ } else if (getprop("/MCDU[1]/page") == "RADNAV") {
+ radnavInput("L3");
}
} else if (btn == "4") {
if (getprop("/MCDU[1]/page") == "DATA") {
setprop("/MCDU[1]/page", "STATUS");
} else if (getprop("/MCDU[1]/page") == "TO") {
PerfTOInput("L4");
+ } else if (getprop("/MCDU[1]/page") == "RADNAV") {
+ radnavInput("L4");
}
} else if (btn == "5") {
if (getprop("/MCDU[1]/page") == "INITA") {
@@ -96,10 +108,14 @@ var rskbutton = func(btn) {
if (btn == "1") {
if (getprop("/MCDU[1]/page") == "INITA") {
initInputA("R1");
+ } else if (getprop("/MCDU[1]/page") == "RADNAV") {
+ radnavInput("R1");
}
} else if (btn == "2") {
if (getprop("/MCDU[1]/page") == "INITB") {
initInputB("R2");
+ } else if (getprop("/MCDU[1]/page") == "RADNAV") {
+ radnavInput("R2");
}
} else if (btn == "3") {
if (getprop("/MCDU[1]/page") == "INITA") {
@@ -110,6 +126,8 @@ var rskbutton = func(btn) {
} else if (btn == "4") {
if (getprop("/MCDU[1]/page") == "TO") {
PerfTOInput("R4");
+ } else if (getprop("/MCDU[1]/page") == "RADNAV") {
+ radnavInput("R4");
}
} else if (btn == "5") {
if (getprop("/MCDU[1]/page") == "TO") {
@@ -130,6 +148,163 @@ var rskbutton_b = func(btn) {
# Special Middle Click Functions
}
+var radnavInput = func(key) {
+ var scratchpad = getprop("/MCDU[1]/scratchpad");
+ if (key == "L1") {
+ if (scratchpad == "CLR") {
+ setprop("/FMGC/internal/vor1freq-set", 0);
+ setprop("/MCDU[1]/scratchpad", "");
+ } else {
+ var tfs = size(scratchpad);
+ if (tfs == 3 or tfs == 5 or tfs == 6) {
+ if (scratchpad >= 108.10 and scratchpad <= 111.95) {
+ if (scratchpad == 108.10 or scratchpad == 108.15 or scratchpad == 108.30 or scratchpad == 108.35 or scratchpad == 108.50 or scratchpad == 108.55 or scratchpad == 108.70 or scratchpad == 108.75 or scratchpad == 108.90 or scratchpad == 108.95
+ or scratchpad == 109.10 or scratchpad == 109.15 or scratchpad == 109.30 or scratchpad == 109.35 or scratchpad == 109.50 or scratchpad == 109.55 or scratchpad == 109.70 or scratchpad == 109.75 or scratchpad == 109.90 or scratchpad == 109.95
+ or scratchpad == 110.10 or scratchpad == 110.15 or scratchpad == 110.30 or scratchpad == 110.35 or scratchpad == 110.50 or scratchpad == 110.55 or scratchpad == 110.70 or scratchpad == 110.75 or scratchpad == 110.90 or scratchpad == 110.95
+ or scratchpad == 111.10 or scratchpad == 111.15 or scratchpad == 111.30 or scratchpad == 111.35 or scratchpad == 111.50 or scratchpad == 111.55 or scratchpad == 111.70 or scratchpad == 111.75 or scratchpad == 111.90 or scratchpad == 111.95) {
+ setprop("/MCDU[1]/scratchpad-msg", "1");
+ setprop("/MCDU[1]/scratchpad", "NOT ALLOWED");
+ } else {
+ setprop("/instrumentation/nav[0]/frequencies/selected-mhz", scratchpad);
+ setprop("/FMGC/internal/vor1freq-set", 1);
+ setprop("/MCDU[1]/scratchpad", "");
+ }
+ } else if (scratchpad >= 112.00 and scratchpad <= 117.95) {
+ setprop("/instrumentation/nav[0]/frequencies/selected-mhz", scratchpad);
+ setprop("/FMGC/internal/vor1freq-set", 1);
+ setprop("/MCDU[1]/scratchpad", "");
+ } else {
+ setprop("/MCDU[1]/scratchpad-msg", "1");
+ setprop("/MCDU[1]/scratchpad", "NOT ALLOWED");
+ }
+ } else {
+ setprop("/MCDU[1]/scratchpad-msg", "1");
+ setprop("/MCDU[1]/scratchpad", "NOT ALLOWED");
+ }
+ }
+ } else if (key == "L2") {
+ if (scratchpad == "CLR") {
+ setprop("/FMGC/internal/vor1crs-set", 0);
+ setprop("/MCDU[1]/scratchpad", "");
+ } else {
+ var tfs = size(scratchpad);
+ if (tfs >= 1 and tfs <= 3) {
+ if (scratchpad >= 0 and scratchpad <= 360) {
+ setprop("/instrumentation/nav[0]/radials/selected-deg", scratchpad);
+ setprop("/FMGC/internal/vor1crs-set", 1);
+ setprop("/MCDU[1]/scratchpad", "");
+ } else {
+ setprop("/MCDU[1]/scratchpad-msg", "1");
+ setprop("/MCDU[1]/scratchpad", "NOT ALLOWED");
+ }
+ } else {
+ setprop("/MCDU[1]/scratchpad-msg", "1");
+ setprop("/MCDU[1]/scratchpad", "NOT ALLOWED");
+ }
+ }
+ } else if (key == "L3") {
+ if (scratchpad == "CLR") {
+ setprop("/FMGC/internal/vor1freq-set", 0);
+ setprop("/MCDU[1]/scratchpad", "");
+ } else {
+ var tfs = size(scratchpad);
+ if (tfs == 3 or tfs == 5 or tfs == 6) {
+ if (scratchpad >= 108.10 and scratchpad <= 111.95) {
+ if (scratchpad == 108.10 or scratchpad == 108.15 or scratchpad == 108.30 or scratchpad == 108.35 or scratchpad == 108.50 or scratchpad == 108.55 or scratchpad == 108.70 or scratchpad == 108.75 or scratchpad == 108.90 or scratchpad == 108.95
+ or scratchpad == 109.10 or scratchpad == 109.15 or scratchpad == 109.30 or scratchpad == 109.35 or scratchpad == 109.50 or scratchpad == 109.55 or scratchpad == 109.70 or scratchpad == 109.75 or scratchpad == 109.90 or scratchpad == 109.95
+ or scratchpad == 110.10 or scratchpad == 110.15 or scratchpad == 110.30 or scratchpad == 110.35 or scratchpad == 110.50 or scratchpad == 110.55 or scratchpad == 110.70 or scratchpad == 110.75 or scratchpad == 110.90 or scratchpad == 110.95
+ or scratchpad == 111.10 or scratchpad == 111.15 or scratchpad == 111.30 or scratchpad == 111.35 or scratchpad == 111.50 or scratchpad == 111.55 or scratchpad == 111.70 or scratchpad == 111.75 or scratchpad == 111.90 or scratchpad == 111.95) {
+ setprop("/instrumentation/nav[0]/frequencies/selected-mhz", scratchpad);
+ setprop("/FMGC/internal/vor1freq-set", 1);
+ setprop("/MCDU[1]/scratchpad", "");
+ } else {
+ setprop("/MCDU[1]/scratchpad-msg", "1");
+ setprop("/MCDU[1]/scratchpad", "NOT ALLOWED");
+ }
+ } else {
+ setprop("/MCDU[1]/scratchpad-msg", "1");
+ setprop("/MCDU[1]/scratchpad", "NOT ALLOWED");
+ }
+ } else {
+ setprop("/MCDU[1]/scratchpad-msg", "1");
+ setprop("/MCDU[1]/scratchpad", "NOT ALLOWED");
+ }
+ }
+ } else if (key == "L4") {
+ if (scratchpad == "CLR") {
+ setprop("/FMGC/internal/vor1crs-set", 0);
+ setprop("/MCDU[1]/scratchpad", "");
+ } else {
+ var tfs = size(scratchpad);
+ if (tfs >= 1 and tfs <= 3) {
+ if (scratchpad >= 0 and scratchpad <= 360) {
+ setprop("/instrumentation/nav[0]/radials/selected-deg", scratchpad);
+ setprop("/FMGC/internal/vor1crs-set", 1);
+ setprop("/MCDU[1]/scratchpad", "");
+ } else {
+ setprop("/MCDU[1]/scratchpad-msg", "1");
+ setprop("/MCDU[1]/scratchpad", "NOT ALLOWED");
+ }
+ } else {
+ setprop("/MCDU[1]/scratchpad-msg", "1");
+ setprop("/MCDU[1]/scratchpad", "NOT ALLOWED");
+ }
+ }
+ } else if (key == "R1") {
+ if (scratchpad == "CLR") {
+ setprop("/FMGC/internal/vor2freq-set", 0);
+ setprop("/MCDU[1]/scratchpad", "");
+ } else {
+ var tfs = size(scratchpad);
+ if (tfs == 3 or tfs == 5 or tfs == 6) {
+ if (scratchpad >= 108.10 and scratchpad <= 111.95) {
+ if (scratchpad == 108.10 or scratchpad == 108.15 or scratchpad == 108.30 or scratchpad == 108.35 or scratchpad == 108.50 or scratchpad == 108.55 or scratchpad == 108.70 or scratchpad == 108.75 or scratchpad == 108.90 or scratchpad == 108.95
+ or scratchpad == 109.10 or scratchpad == 109.15 or scratchpad == 109.30 or scratchpad == 109.35 or scratchpad == 109.50 or scratchpad == 109.55 or scratchpad == 109.70 or scratchpad == 109.75 or scratchpad == 109.90 or scratchpad == 109.95
+ or scratchpad == 110.10 or scratchpad == 110.15 or scratchpad == 110.30 or scratchpad == 110.35 or scratchpad == 110.50 or scratchpad == 110.55 or scratchpad == 110.70 or scratchpad == 110.75 or scratchpad == 110.90 or scratchpad == 110.95
+ or scratchpad == 111.10 or scratchpad == 111.15 or scratchpad == 111.30 or scratchpad == 111.35 or scratchpad == 111.50 or scratchpad == 111.55 or scratchpad == 111.70 or scratchpad == 111.75 or scratchpad == 111.90 or scratchpad == 111.95) {
+ setprop("/MCDU[1]/scratchpad-msg", "1");
+ setprop("/MCDU[1]/scratchpad", "NOT ALLOWED");
+ } else {
+ setprop("/instrumentation/nav[1]/frequencies/selected-mhz", scratchpad);
+ setprop("/FMGC/internal/vor2freq-set", 1);
+ setprop("/MCDU[1]/scratchpad", "");
+ }
+ } else if (scratchpad >= 112.00 and scratchpad <= 117.95) {
+ setprop("/instrumentation/nav[1]/frequencies/selected-mhz", scratchpad);
+ setprop("/FMGC/internal/vor2freq-set", 1);
+ setprop("/MCDU[1]/scratchpad", "");
+ } else {
+ setprop("/MCDU[1]/scratchpad-msg", "1");
+ setprop("/MCDU[1]/scratchpad", "NOT ALLOWED");
+ }
+ } else {
+ setprop("/MCDU[1]/scratchpad-msg", "1");
+ setprop("/MCDU[1]/scratchpad", "NOT ALLOWED");
+ }
+ }
+ } else if (key == "R2") {
+ if (scratchpad == "CLR") {
+ setprop("/FMGC/internal/vor2crs-set", 0);
+ setprop("/MCDU[1]/scratchpad", "");
+ } else {
+ var tfs = size(scratchpad);
+ if (tfs >= 1 and tfs <= 3) {
+ if (scratchpad >= 0 and scratchpad <= 360) {
+ setprop("/instrumentation/nav[1]/radials/selected-deg", scratchpad);
+ setprop("/FMGC/internal/vor2crs-set", 1);
+ setprop("/MCDU[1]/scratchpad", "");
+ } else {
+ setprop("/MCDU[1]/scratchpad-msg", "1");
+ setprop("/MCDU[1]/scratchpad", "NOT ALLOWED");
+ }
+ } else {
+ setprop("/MCDU[1]/scratchpad-msg", "1");
+ setprop("/MCDU[1]/scratchpad", "NOT ALLOWED");
+ }
+ }
+ }
+}
+
var initInputA = func(key) {
var scratchpad = getprop("/MCDU[1]/scratchpad");
if (key == "L3") {
diff --git a/Splash/SplashOld.png b/Splash/SplashOld.png
new file mode 100644
index 00000000..e49e266c
Binary files /dev/null and b/Splash/SplashOld.png differ
diff --git a/Splash/splash.png b/Splash/splash.png
deleted file mode 100644
index 374b1d5d..00000000
Binary files a/Splash/splash.png and /dev/null differ
diff --git a/Splash/splash1.png b/Splash/splash1.png
index 21d61d86..2b96ff8c 100644
Binary files a/Splash/splash1.png and b/Splash/splash1.png differ
diff --git a/Systems/instrumentation.xml b/Systems/instrumentation.xml
index 7acc2114..be894889 100644
--- a/Systems/instrumentation.xml
+++ b/Systems/instrumentation.xml
@@ -103,11 +103,6 @@ file, these values will be used (they are hardcoded).
nav
1
-
-
- nav
- 2
-
slip-skid-ball