diff --git a/Models/FlightDeck/a320.flightdeck.xml b/Models/FlightDeck/a320.flightdeck.xml
index 2389bf10..8903b74d 100644
--- a/Models/FlightDeck/a320.flightdeck.xml
+++ b/Models/FlightDeck/a320.flightdeck.xml
@@ -1158,6 +1158,7 @@
vord_led
vord_led.001
vs-text
+ vs-text-last-2-digits
vs-text-test
wpt_led
wpt_led.001
@@ -4393,6 +4394,7 @@
select
vs-text
+ vs-text-last-2-digits
@@ -4631,16 +4633,42 @@
vs-text
-0.377
- 0.09043
+ 0.0850
0.50254
90
72.81
center-center
xy-plane
- number-value
- %4.0f
- it-autoflight/input/vs
+ text-value
+ %s
+ it-autoflight/output/vs-fcu-display
+ false
+ led.txf
+ true
+ false
+ false
+ 0.008
+
+ 32
+ 32
+
+
+
+
+ vs-text-last-2-digits
+
+ -0.377
+ 0.0977
+ 0.5028
+ 90
+ 72.81
+
+ center-center
+ xy-plane
+ text-value
+ oo
+ autopilot/serviceable
false
led.txf
true
@@ -4657,7 +4685,7 @@
fpa-text
-0.377
- 0.09043
+ 0.0860
0.50254
90
72.81
@@ -4665,7 +4693,7 @@
center-center
xy-plane
number-value
- %2.1f
+ %+2.1f
it-autoflight/input/fpa
false
led.txf
@@ -7235,6 +7263,7 @@
hdg-text
alt-text
vs-text
+ vs-text-last-2-digits
spd-text-test
hdg-text-test
alt-text-test
diff --git a/Nasal/FMGC/FCU.nas b/Nasal/FMGC/FCU.nas
index 30ba98a1..ebca85a6 100644
--- a/Nasal/FMGC/FCU.nas
+++ b/Nasal/FMGC/FCU.nas
@@ -379,6 +379,7 @@ var FCUController = {
} else {
fmgc.Input.vert.setValue(1);
fmgc.Input.vs.setValue(0);
+ fmgc.Custom.Output.vsFCU.setValue(left(sprintf("%+05.0f",0),3));
}
}
},
@@ -413,6 +414,7 @@ var FCUController = {
} else {
fmgc.Input.vs.setValue(me.vsTemp);
}
+ fmgc.Custom.Output.vsFCU.setValue(left(sprintf("%+05.0f",fmgc.Input.vs.getValue()),3));
} else if (fmgc.Output.vert.getValue() == 5) {
me.fpaTemp = fmgc.Input.fpa.getValue();
if (d == 1) {
diff --git a/Nasal/FMGC/FMGC-b.nas b/Nasal/FMGC/FMGC-b.nas
index 5260a87a..95ad7b6b 100644
--- a/Nasal/FMGC/FMGC-b.nas
+++ b/Nasal/FMGC/FMGC-b.nas
@@ -174,6 +174,7 @@ var Custom = {
},
Output: {
fmaPower: props.globals.initNode("/it-autoflight/output/fma-pwr", 0, "BOOL"),
+ vsFCU: props.globals.initNode("/it-autoflight/output/vs-fcu-display", "", "STRING"),
},
Sound: {
athrOff: props.globals.initNode("/it-autoflight/sound/athrsound", 0, "BOOL"),
@@ -196,6 +197,7 @@ var ITAF = {
Input.hdg.setValue(360);
Input.alt.setValue(10000);
Input.vs.setValue(0);
+ Custom.Output.vsFCU.setValue(left(sprintf("%+05.0f",0),3));
Input.fpa.setValue(0);
Input.lat.setValue(9);
Input.vert.setValue(9);
@@ -861,8 +863,11 @@ var ITAF = {
Input.alt.setValue(math.clamp(math.round(Internal.altPredicted.getValue(), 100), 0, 50000));
Internal.alt.setValue(math.clamp(math.round(Internal.altPredicted.getValue(), 100), 0, 50000));
},
+ tempVS: 0,
syncVs: func() {
- Input.vs.setValue(math.clamp(math.round(Internal.vs.getValue(), 100), -6000, 6000));
+ me.tempVS = math.clamp(math.round(Internal.vs.getValue(), 100), -6000, 6000);
+ Input.vs.setValue(me.tempVS);
+ fmgc.Custom.Output.vsFCU.setValue(left(sprintf("%+05.0f",me.tempVS),3));
},
syncFpa: func() {
Input.fpa.setValue(math.clamp(math.round(Internal.fpa.getValue(), 0.1), -9.9, 9.9));