Merge branch 'master' into MCDU

This commit is contained in:
Joshua Davidson 2017-12-30 13:10:19 -05:00
commit d4acbdd73f
50 changed files with 3921 additions and 4046 deletions

View file

@ -196,8 +196,6 @@
<specific>
<file>Aircraft/IDG-A32X/Nasal/a320livery-cfm-100.nas</file>
</specific>
<fadec>
<file>Aircraft/IDG-A32X/Nasal/fadec-cfm.nas</file>
</fadec>
</nasal>
</PropertyList>

View file

@ -19,9 +19,9 @@ xsi:noNamespaceSchemaLocation="http://jsbsim.sourceforge.net/JSBSim.xsd">
<metrics>
<wingarea unit="FT2"> 1319.79 </wingarea>
<wingspan unit="FT" > 111.26 </wingspan>
<wingspan unit="FT" > 117.26 </wingspan>
<wing_incidence > 1.03 </wing_incidence>
<chord unit="FT" > 13.76 </chord>
<chord unit="FT" > 20.76 </chord>
<htailarea unit="FT2"> 334.24 </htailarea>
<htailarm unit="FT" > 57.88 </htailarm>
<vtailarea unit="FT2"> 248.79 </vtailarea>

View file

@ -195,8 +195,6 @@
<specific>
<file>Aircraft/IDG-A32X/Nasal/a320livery-cfm.nas</file>
</specific>
<fadec>
<file>Aircraft/IDG-A32X/Nasal/fadec-cfm.nas</file>
</fadec>
</nasal>
</PropertyList>

View file

@ -19,9 +19,9 @@ xsi:noNamespaceSchemaLocation="http://jsbsim.sourceforge.net/JSBSim.xsd">
<metrics>
<wingarea unit="FT2"> 1319.79 </wingarea>
<wingspan unit="FT" > 111.26 </wingspan>
<wingspan unit="FT" > 117.26 </wingspan>
<wing_incidence > 1.03 </wing_incidence>
<chord unit="FT" > 13.76 </chord>
<chord unit="FT" > 20.76 </chord>
<htailarea unit="FT2"> 334.24 </htailarea>
<htailarm unit="FT" > 57.88 </htailarm>
<vtailarea unit="FT2"> 248.79 </vtailarea>

View file

@ -195,9 +195,6 @@
<specific>
<file>Aircraft/IDG-A32X/Nasal/a320livery-iae.nas</file>
</specific>
<fadec>
<file>Aircraft/IDG-A32X/Nasal/fadec-iae.nas</file>
</fadec>
</nasal>
</PropertyList>

View file

@ -19,9 +19,9 @@ xsi:noNamespaceSchemaLocation="http://jsbsim.sourceforge.net/JSBSim.xsd">
<metrics>
<wingarea unit="FT2"> 1319.79 </wingarea>
<wingspan unit="FT" > 111.26 </wingspan>
<wingspan unit="FT" > 117.26 </wingspan>
<wing_incidence > 1.03 </wing_incidence>
<chord unit="FT" > 13.76 </chord>
<chord unit="FT" > 20.76 </chord>
<htailarea unit="FT2"> 334.24 </htailarea>
<htailarm unit="FT" > 57.88 </htailarm>
<vtailarea unit="FT2"> 248.79 </vtailarea>

View file

@ -1376,7 +1376,6 @@
<libraries>
<file>Aircraft/IDG-A32X/Nasal/libraries.nas</file>
<file>Aircraft/IDG-A32X/Nasal/buttons.nas</file>
<file>Aircraft/IDG-A32X/Nasal/gpws.nas</file>
<file>Aircraft/IDG-A32X/Nasal/efis.nas</file>
<file>Aircraft/IDG-A32X/Nasal/ECAM.nas</file>
<file>Aircraft/IDG-A32X/Nasal/shake.nas</file>
@ -1396,9 +1395,9 @@
<file>Aircraft/IDG-A32X/Nasal/ground_services.nas</file>
<file>Aircraft/IDG-A32X/Nasal/effects.nas</file>
</systems>
<thrust>
<fadec>
<file>Aircraft/IDG-A32X/Nasal/fadec-common.nas</file>
</thrust>
</fadec>
<fbw>
<file>Aircraft/IDG-A32X/Nasal/it-fbw.nas</file>
</fbw>

View file

@ -195,9 +195,6 @@
<specific>
<file>Aircraft/IDG-A32X/Nasal/a320livery-neocfm.nas</file>
</specific>
<fadec>
<file>Aircraft/IDG-A32X/Nasal/fadec-cfm.nas</file>
</fadec>
</nasal>
</PropertyList>

View file

@ -19,9 +19,9 @@ xsi:noNamespaceSchemaLocation="http://jsbsim.sourceforge.net/JSBSim.xsd">
<metrics>
<wingarea unit="FT2"> 1319.79 </wingarea>
<wingspan unit="FT" > 111.26 </wingspan>
<wingspan unit="FT" > 117.26 </wingspan>
<wing_incidence > 1.03 </wing_incidence>
<chord unit="FT" > 13.76 </chord>
<chord unit="FT" > 20.76 </chord>
<htailarea unit="FT2"> 334.24 </htailarea>
<htailarm unit="FT" > 57.88 </htailarm>
<vtailarea unit="FT2"> 248.79 </vtailarea>

View file

@ -195,9 +195,6 @@
<specific>
<file>Aircraft/IDG-A32X/Nasal/a320livery-neopw.nas</file>
</specific>
<fadec> <!-- Apparently PW PurePower uses N1, not EPR.... sooo I use CFM FADEC -->
<file>Aircraft/IDG-A32X/Nasal/fadec-cfm.nas</file>
</fadec>
</nasal>
</PropertyList>

View file

@ -19,9 +19,9 @@ xsi:noNamespaceSchemaLocation="http://jsbsim.sourceforge.net/JSBSim.xsd">
<metrics>
<wingarea unit="FT2"> 1319.79 </wingarea>
<wingspan unit="FT" > 111.26 </wingspan>
<wingspan unit="FT" > 117.26 </wingspan>
<wing_incidence > 1.03 </wing_incidence>
<chord unit="FT" > 13.76 </chord>
<chord unit="FT" > 20.76 </chord>
<htailarea unit="FT2"> 334.24 </htailarea>
<htailarm unit="FT" > 57.88 </htailarm>
<vtailarea unit="FT2"> 248.79 </vtailarea>

View file

@ -150,26 +150,6 @@ var saveSettings = func {
saveSettings();
var systemsReset = func {
fbw.fctlInit();
systems.ELEC.init();
systems.PNEU.init();
systems.HYD.init();
systems.FUEL.init();
systems.ADIRS.init();
systems.eng_init();
systems.autobrake_init();
fmgc.FMGCinit();
mcdu1.MCDU_reset();
mcdu2.MCDU_reset();
icing.icingInit();
fmgc.APinit();
setprop("/it-autoflight/input/fd1", 1);
setprop("/it-autoflight/input/fd2", 1);
libraries.ECAMinit();
libraries.variousReset();
}
################
# Panel States #
################
@ -194,7 +174,7 @@ var colddark = func {
setprop("/controls/flight/speedbrake-arm", 0);
setprop("/controls/gear/gear-down", 1);
setprop("/controls/flight/elevator-trim", 0);
systemsReset();
libraries.systemsInit();
failReset();
if (getprop("/engines/engine[1]/n2-actual") < 2) {
colddark_b();
@ -242,7 +222,7 @@ var beforestart = func {
setprop("/controls/flight/speedbrake-arm", 0);
setprop("/controls/gear/gear-down", 1);
setprop("/controls/flight/elevator-trim", 0);
systemsReset();
libraries.systemsInit();
failReset();
setprop("/controls/APU/master", 0);
setprop("/controls/APU/start", 0);
@ -316,7 +296,7 @@ var taxi = func {
setprop("/controls/flight/speedbrake-arm", 0);
setprop("/controls/gear/gear-down", 1);
setprop("/controls/flight/elevator-trim", 0);
systemsReset();
libraries.systemsInit();
failReset();
setprop("/controls/APU/master", 0);
setprop("/controls/APU/start", 0);

View file

@ -27,12 +27,12 @@
<independentVar lookup="column">atmosphere/density-altitude</independentVar>
<tableData>
-10000 0 10000 20000 30000 40000 50000
0.0 0.0430 0.0458 0.0378 0.0684 0.0819 0.0793 0.0000
0.2 0.0500 0.0291 0.0205 0.0514 0.0727 0.0729 0.0000
0.4 0.0040 0.0047 0.0012 0.0412 0.0585 0.0671 0.0000
0.6 0.0000 0.0000 0.0000 0.0000 0.0416 0.0518 0.0000
0.8 0.0000 0.0000 0.0000 0.0000 0.0354 0.0468 0.0000
1.0 0.0000 0.0000 0.0000 0.0000 0.0000 0.0352 0.0000
0.0 0.0430 0.0458 0.0378 0.0684 0.0619 0.0693 0.0000
0.2 0.0500 0.0291 0.0205 0.0514 0.0627 0.0629 0.0000
0.4 0.0040 0.0047 0.0012 0.0412 0.0485 0.0571 0.0000
0.6 0.0000 0.0000 0.0000 0.0000 0.0316 0.0418 0.0000
0.8 0.0000 0.0000 0.0000 0.0000 0.0254 0.0368 0.0000
1.0 0.0000 0.0000 0.0000 0.0000 0.0000 0.0252 0.0000
</tableData>
</table>
</function>

View file

@ -27,12 +27,12 @@
<independentVar lookup="column">atmosphere/density-altitude</independentVar>
<tableData>
-10000 0 10000 20000 30000 40000 50000
0.0 0.0430 0.0458 0.0378 0.0684 0.0819 0.0793 0.0000
0.2 0.0500 0.0291 0.0205 0.0514 0.0727 0.0729 0.0000
0.4 0.0040 0.0047 0.0012 0.0412 0.0585 0.0671 0.0000
0.6 0.0000 0.0000 0.0000 0.0000 0.0416 0.0518 0.0000
0.8 0.0000 0.0000 0.0000 0.0000 0.0354 0.0468 0.0000
1.0 0.0000 0.0000 0.0000 0.0000 0.0000 0.0352 0.0000
0.0 0.0430 0.0458 0.0378 0.0684 0.0619 0.0693 0.0000
0.2 0.0500 0.0291 0.0205 0.0514 0.0627 0.0629 0.0000
0.4 0.0040 0.0047 0.0012 0.0412 0.0485 0.0571 0.0000
0.6 0.0000 0.0000 0.0000 0.0000 0.0316 0.0418 0.0000
0.8 0.0000 0.0000 0.0000 0.0000 0.0254 0.0368 0.0000
1.0 0.0000 0.0000 0.0000 0.0000 0.0000 0.0252 0.0000
</tableData>
</table>
</function>

View file

@ -27,12 +27,12 @@
<independentVar lookup="column">atmosphere/density-altitude</independentVar>
<tableData>
-10000 0 10000 20000 30000 40000 50000
0.0 0.0430 0.0458 0.0378 0.0684 0.0819 0.0793 0.0000
0.2 0.0500 0.0291 0.0205 0.0514 0.0727 0.0729 0.0000
0.4 0.0040 0.0047 0.0012 0.0412 0.0585 0.0671 0.0000
0.6 0.0000 0.0000 0.0000 0.0000 0.0416 0.0518 0.0000
0.8 0.0000 0.0000 0.0000 0.0000 0.0354 0.0468 0.0000
1.0 0.0000 0.0000 0.0000 0.0000 0.0000 0.0352 0.0000
0.0 0.0430 0.0458 0.0378 0.0684 0.0619 0.0693 0.0000
0.2 0.0500 0.0291 0.0205 0.0514 0.0627 0.0629 0.0000
0.4 0.0040 0.0047 0.0012 0.0412 0.0485 0.0571 0.0000
0.6 0.0000 0.0000 0.0000 0.0000 0.0316 0.0418 0.0000
0.8 0.0000 0.0000 0.0000 0.0000 0.0254 0.0368 0.0000
1.0 0.0000 0.0000 0.0000 0.0000 0.0000 0.0252 0.0000
</tableData>
</table>
</function>

View file

@ -27,12 +27,12 @@
<independentVar lookup="column">atmosphere/density-altitude</independentVar>
<tableData>
-10000 0 10000 20000 30000 40000 50000
0.0 0.0430 0.0458 0.0378 0.0684 0.0819 0.0793 0.0000
0.2 0.0500 0.0291 0.0205 0.0514 0.0727 0.0729 0.0000
0.4 0.0040 0.0047 0.0012 0.0412 0.0585 0.0671 0.0000
0.6 0.0000 0.0000 0.0000 0.0000 0.0416 0.0518 0.0000
0.8 0.0000 0.0000 0.0000 0.0000 0.0354 0.0468 0.0000
1.0 0.0000 0.0000 0.0000 0.0000 0.0000 0.0352 0.0000
0.0 0.0430 0.0458 0.0378 0.0684 0.0619 0.0693 0.0000
0.2 0.0500 0.0291 0.0205 0.0514 0.0627 0.0629 0.0000
0.4 0.0040 0.0047 0.0012 0.0412 0.0485 0.0571 0.0000
0.6 0.0000 0.0000 0.0000 0.0000 0.0316 0.0418 0.0000
0.8 0.0000 0.0000 0.0000 0.0000 0.0254 0.0368 0.0000
1.0 0.0000 0.0000 0.0000 0.0000 0.0000 0.0252 0.0000
</tableData>
</table>
</function>

View file

@ -408,16 +408,10 @@
<object-name>wpt_led</object-name>
<object-name>wpt_led.001</object-name>
<condition>
<or>
<greater-than-equals>
<property>systems/electrical/bus/dc1</property>
<value>25</value>
</greater-than-equals>
<greater-than-equals>
<property>systems/electrical/bus/dc2</property>
<value>25</value>
</greater-than-equals>
</or>
<greater-than-equals>
<property>systems/electrical/bus/dc-ess</property>
<value>25</value>
</greater-than-equals>
</condition>
</animation>
@ -471,16 +465,10 @@
<repeatable type="bool">true</repeatable>
<binding>
<condition>
<or>
<greater-than-equals>
<property>systems/electrical/bus/dc1</property>
<value>25</value>
</greater-than-equals>
<greater-than-equals>
<property>systems/electrical/bus/dc2</property>
<value>25</value>
</greater-than-equals>
</or>
<greater-than-equals>
<property>systems/electrical/bus/dc-ess</property>
<value>25</value>
</greater-than-equals>
</condition>
<command>nasal</command>
<script>
@ -503,16 +491,10 @@
<repeatable type="bool">true</repeatable>
<binding>
<condition>
<or>
<greater-than-equals>
<property>systems/electrical/bus/dc1</property>
<value>25</value>
</greater-than-equals>
<greater-than-equals>
<property>systems/electrical/bus/dc2</property>
<value>25</value>
</greater-than-equals>
</or>
<greater-than-equals>
<property>systems/electrical/bus/dc-ess</property>
<value>25</value>
</greater-than-equals>
</condition>
<command>nasal</command>
<script>
@ -548,16 +530,10 @@
<repeatable type="bool">false</repeatable>
<binding>
<condition>
<or>
<greater-than-equals>
<property>systems/electrical/bus/dc1</property>
<value>25</value>
</greater-than-equals>
<greater-than-equals>
<property>systems/electrical/bus/dc2</property>
<value>25</value>
</greater-than-equals>
</or>
<greater-than-equals>
<property>systems/electrical/bus/dc-ess</property>
<value>25</value>
</greater-than-equals>
</condition>
<command>nasal</command>
<script>
@ -783,16 +759,10 @@
<button>0</button>
<binding>
<condition>
<or>
<greater-than-equals>
<property>systems/electrical/bus/dc1</property>
<value>25</value>
</greater-than-equals>
<greater-than-equals>
<property>systems/electrical/bus/dc2</property>
<value>25</value>
</greater-than-equals>
</or>
<greater-than-equals>
<property>systems/electrical/bus/dc-ess</property>
<value>25</value>
</greater-than-equals>
</condition>
<command>nasal</command>
<script>
@ -816,16 +786,10 @@
<button>0</button>
<binding>
<condition>
<or>
<greater-than-equals>
<property>systems/electrical/bus/dc1</property>
<value>25</value>
</greater-than-equals>
<greater-than-equals>
<property>systems/electrical/bus/dc2</property>
<value>25</value>
</greater-than-equals>
</or>
<greater-than-equals>
<property>systems/electrical/bus/dc-ess</property>
<value>25</value>
</greater-than-equals>
</condition>
<command>nasal</command>
<script>
@ -849,16 +813,10 @@
<button>0</button>
<binding>
<condition>
<or>
<greater-than-equals>
<property>systems/electrical/bus/dc1</property>
<value>25</value>
</greater-than-equals>
<greater-than-equals>
<property>systems/electrical/bus/dc2</property>
<value>25</value>
</greater-than-equals>
</or>
<greater-than-equals>
<property>systems/electrical/bus/dc-ess</property>
<value>25</value>
</greater-than-equals>
</condition>
<command>nasal</command>
<script>
@ -921,16 +879,10 @@
<button>0</button>
<binding>
<condition>
<or>
<greater-than-equals>
<property>systems/electrical/bus/dc1</property>
<value>25</value>
</greater-than-equals>
<greater-than-equals>
<property>systems/electrical/bus/dc2</property>
<value>25</value>
</greater-than-equals>
</or>
<greater-than-equals>
<property>systems/electrical/bus/dc-ess</property>
<value>25</value>
</greater-than-equals>
</condition>
<command>property-toggle</command>
<property>modes/cpt-du-xfr</property>
@ -1026,16 +978,10 @@
<button>0</button>
<binding>
<condition>
<or>
<greater-than-equals>
<property>systems/electrical/bus/dc1</property>
<value>25</value>
</greater-than-equals>
<greater-than-equals>
<property>systems/electrical/bus/dc2</property>
<value>25</value>
</greater-than-equals>
</or>
<greater-than-equals>
<property>systems/electrical/bus/dc-ess</property>
<value>25</value>
</greater-than-equals>
</condition>
<command>property-toggle</command>
<property>modes/fo-du-xfr</property>
@ -1172,16 +1118,10 @@
<repeatable type="bool">false</repeatable>
<binding>
<condition>
<or>
<greater-than-equals>
<property>systems/electrical/bus/dc1</property>
<value>25</value>
</greater-than-equals>
<greater-than-equals>
<property>systems/electrical/bus/dc2</property>
<value>25</value>
</greater-than-equals>
</or>
<greater-than-equals>
<property>systems/electrical/bus/dc-ess</property>
<value>25</value>
</greater-than-equals>
</condition>
<command>property-assign</command>
<property>ECAM/Lower/page</property>
@ -1198,16 +1138,10 @@
<repeatable type="bool">false</repeatable>
<binding>
<condition>
<or>
<greater-than-equals>
<property>systems/electrical/bus/dc1</property>
<value>25</value>
</greater-than-equals>
<greater-than-equals>
<property>systems/electrical/bus/dc2</property>
<value>25</value>
</greater-than-equals>
</or>
<greater-than-equals>
<property>systems/electrical/bus/dc-ess</property>
<value>25</value>
</greater-than-equals>
</condition>
<command>property-assign</command>
<property>ECAM/Lower/page</property>
@ -1224,16 +1158,10 @@
<repeatable type="bool">false</repeatable>
<binding>
<condition>
<or>
<greater-than-equals>
<property>systems/electrical/bus/dc1</property>
<value>25</value>
</greater-than-equals>
<greater-than-equals>
<property>systems/electrical/bus/dc2</property>
<value>25</value>
</greater-than-equals>
</or>
<greater-than-equals>
<property>systems/electrical/bus/dc-ess</property>
<value>25</value>
</greater-than-equals>
</condition>
<command>property-assign</command>
<property>ECAM/Lower/page</property>
@ -1250,16 +1178,10 @@
<repeatable type="bool">false</repeatable>
<binding>
<condition>
<or>
<greater-than-equals>
<property>systems/electrical/bus/dc1</property>
<value>25</value>
</greater-than-equals>
<greater-than-equals>
<property>systems/electrical/bus/dc2</property>
<value>25</value>
</greater-than-equals>
</or>
<greater-than-equals>
<property>systems/electrical/bus/dc-ess</property>
<value>25</value>
</greater-than-equals>
</condition>
<command>property-assign</command>
<property>ECAM/Lower/page</property>
@ -1276,16 +1198,10 @@
<repeatable type="bool">false</repeatable>
<binding>
<condition>
<or>
<greater-than-equals>
<property>systems/electrical/bus/dc1</property>
<value>25</value>
</greater-than-equals>
<greater-than-equals>
<property>systems/electrical/bus/dc2</property>
<value>25</value>
</greater-than-equals>
</or>
<greater-than-equals>
<property>systems/electrical/bus/dc-ess</property>
<value>25</value>
</greater-than-equals>
</condition>
<command>property-assign</command>
<property>ECAM/Lower/page</property>
@ -1302,16 +1218,10 @@
<repeatable type="bool">false</repeatable>
<binding>
<condition>
<or>
<greater-than-equals>
<property>systems/electrical/bus/dc1</property>
<value>25</value>
</greater-than-equals>
<greater-than-equals>
<property>systems/electrical/bus/dc2</property>
<value>25</value>
</greater-than-equals>
</or>
<greater-than-equals>
<property>systems/electrical/bus/dc-ess</property>
<value>25</value>
</greater-than-equals>
</condition>
<command>property-assign</command>
<property>ECAM/Lower/page</property>
@ -1328,16 +1238,10 @@
<repeatable type="bool">false</repeatable>
<binding>
<condition>
<or>
<greater-than-equals>
<property>systems/electrical/bus/dc1</property>
<value>25</value>
</greater-than-equals>
<greater-than-equals>
<property>systems/electrical/bus/dc2</property>
<value>25</value>
</greater-than-equals>
</or>
<greater-than-equals>
<property>systems/electrical/bus/dc-ess</property>
<value>25</value>
</greater-than-equals>
</condition>
<command>property-assign</command>
<property>ECAM/Lower/page</property>
@ -1354,16 +1258,10 @@
<repeatable type="bool">false</repeatable>
<binding>
<condition>
<or>
<greater-than-equals>
<property>systems/electrical/bus/dc1</property>
<value>25</value>
</greater-than-equals>
<greater-than-equals>
<property>systems/electrical/bus/dc2</property>
<value>25</value>
</greater-than-equals>
</or>
<greater-than-equals>
<property>systems/electrical/bus/dc-ess</property>
<value>25</value>
</greater-than-equals>
</condition>
<command>property-assign</command>
<property>ECAM/Lower/page</property>
@ -1380,16 +1278,10 @@
<repeatable type="bool">false</repeatable>
<binding>
<condition>
<or>
<greater-than-equals>
<property>systems/electrical/bus/dc1</property>
<value>25</value>
</greater-than-equals>
<greater-than-equals>
<property>systems/electrical/bus/dc2</property>
<value>25</value>
</greater-than-equals>
</or>
<greater-than-equals>
<property>systems/electrical/bus/dc-ess</property>
<value>25</value>
</greater-than-equals>
</condition>
<command>property-assign</command>
<property>ECAM/Lower/page</property>
@ -1406,16 +1298,10 @@
<repeatable type="bool">false</repeatable>
<binding>
<condition>
<or>
<greater-than-equals>
<property>systems/electrical/bus/dc1</property>
<value>25</value>
</greater-than-equals>
<greater-than-equals>
<property>systems/electrical/bus/dc2</property>
<value>25</value>
</greater-than-equals>
</or>
<greater-than-equals>
<property>systems/electrical/bus/dc-ess</property>
<value>25</value>
</greater-than-equals>
</condition>
<command>property-assign</command>
<property>ECAM/Lower/page</property>
@ -1432,16 +1318,10 @@
<repeatable type="bool">false</repeatable>
<binding>
<condition>
<or>
<greater-than-equals>
<property>systems/electrical/bus/dc1</property>
<value>25</value>
</greater-than-equals>
<greater-than-equals>
<property>systems/electrical/bus/dc2</property>
<value>25</value>
</greater-than-equals>
</or>
<greater-than-equals>
<property>systems/electrical/bus/dc-ess</property>
<value>25</value>
</greater-than-equals>
</condition>
<command>property-assign</command>
<property>ECAM/Lower/page</property>
@ -1458,16 +1338,10 @@
<repeatable type="bool">false</repeatable>
<binding>
<condition>
<or>
<greater-than-equals>
<property>systems/electrical/bus/dc1</property>
<value>25</value>
</greater-than-equals>
<greater-than-equals>
<property>systems/electrical/bus/dc2</property>
<value>25</value>
</greater-than-equals>
</or>
<greater-than-equals>
<property>systems/electrical/bus/dc-ess</property>
<value>25</value>
</greater-than-equals>
</condition>
<command>property-assign</command>
<property>ECAM/Lower/page</property>
@ -1476,6 +1350,25 @@
</action>
</animation>
<animation>
<type>pick</type>
<object-name>ecam_to_config</object-name>
<action>
<button>0</button>
<repeatable type="bool">false</repeatable>
<binding>
<condition>
<greater-than-equals>
<property>systems/electrical/bus/dc-ess</property>
<value>25</value>
</greater-than-equals>
</condition>
<command>nasal</command>
<script>libraries.ECAM.toConfig();</script>
</binding>
</action>
</animation>
<!-- Engine Cutoff/Mode Selector -->
<animation>
<type>pick</type>
@ -1583,16 +1476,10 @@
<repeatable type="bool">false</repeatable>
<binding>
<condition>
<or>
<greater-than-equals>
<property>systems/electrical/bus/dc1</property>
<value>25</value>
</greater-than-equals>
<greater-than-equals>
<property>systems/electrical/bus/dc2</property>
<value>25</value>
</greater-than-equals>
</or>
<greater-than-equals>
<property>systems/electrical/bus/dc-ess</property>
<value>25</value>
</greater-than-equals>
</condition>
<command>nasal</command>
<script>
@ -1618,16 +1505,10 @@
<property>modes/altimeter/std</property>
<value>0</value>
</equals>
<or>
<greater-than-equals>
<property>systems/electrical/bus/dc1</property>
<value>25</value>
</greater-than-equals>
<greater-than-equals>
<property>systems/electrical/bus/dc2</property>
<value>25</value>
</greater-than-equals>
</or>
<greater-than-equals>
<property>systems/electrical/bus/dc-ess</property>
<value>25</value>
</greater-than-equals>
</and>
</condition>
</binding>
@ -1646,16 +1527,10 @@
<property>modes/altimeter/std</property>
<value>0</value>
</equals>
<or>
<greater-than-equals>
<property>systems/electrical/bus/dc1</property>
<value>25</value>
</greater-than-equals>
<greater-than-equals>
<property>systems/electrical/bus/dc2</property>
<value>25</value>
</greater-than-equals>
</or>
<greater-than-equals>
<property>systems/electrical/bus/dc-ess</property>
<value>25</value>
</greater-than-equals>
</and>
</condition>
</binding>
@ -1686,16 +1561,10 @@
<property>modes/altimeter/std</property>
<value>0</value>
</equals>
<or>
<greater-than-equals>
<property>systems/electrical/bus/dc1</property>
<value>25</value>
</greater-than-equals>
<greater-than-equals>
<property>systems/electrical/bus/dc2</property>
<value>25</value>
</greater-than-equals>
</or>
<greater-than-equals>
<property>systems/electrical/bus/dc-ess</property>
<value>25</value>
</greater-than-equals>
</and>
</condition>
</binding>
@ -1714,16 +1583,10 @@
<property>modes/altimeter/std</property>
<value>0</value>
</equals>
<or>
<greater-than-equals>
<property>systems/electrical/bus/dc1</property>
<value>25</value>
</greater-than-equals>
<greater-than-equals>
<property>systems/electrical/bus/dc2</property>
<value>25</value>
</greater-than-equals>
</or>
<greater-than-equals>
<property>systems/electrical/bus/dc-ess</property>
<value>25</value>
</greater-than-equals>
</and>
</condition>
</binding>
@ -2078,16 +1941,10 @@
<repeatable type="bool">false</repeatable>
<binding>
<condition>
<or>
<greater-than-equals>
<property>systems/electrical/bus/dc1</property>
<value>25</value>
</greater-than-equals>
<greater-than-equals>
<property>systems/electrical/bus/dc2</property>
<value>25</value>
</greater-than-equals>
</or>
<greater-than-equals>
<property>systems/electrical/bus/dc-ess</property>
<value>25</value>
</greater-than-equals>
</condition>
<command>property-toggle</command>
<property>it-autoflight/input/fd1</property>
@ -2119,16 +1976,10 @@
<repeatable type="bool">false</repeatable>
<binding>
<condition>
<or>
<greater-than-equals>
<property>systems/electrical/bus/dc1</property>
<value>25</value>
</greater-than-equals>
<greater-than-equals>
<property>systems/electrical/bus/dc2</property>
<value>25</value>
</greater-than-equals>
</or>
<greater-than-equals>
<property>systems/electrical/bus/dc-ess</property>
<value>25</value>
</greater-than-equals>
</condition>
<command>property-toggle</command>
<property>modes/pfd/ILS1</property>
@ -2160,16 +2011,10 @@
<repeatable type="bool">false</repeatable>
<binding>
<condition>
<or>
<greater-than-equals>
<property>systems/electrical/bus/dc1</property>
<value>25</value>
</greater-than-equals>
<greater-than-equals>
<property>systems/electrical/bus/dc2</property>
<value>25</value>
</greater-than-equals>
</or>
<greater-than-equals>
<property>systems/electrical/bus/dc-ess</property>
<value>25</value>
</greater-than-equals>
</condition>
<command>property-toggle</command>
<property>modes/pfd/ILS2</property>
@ -2201,16 +2046,10 @@
<repeatable type="bool">false</repeatable>
<binding>
<condition>
<or>
<greater-than-equals>
<property>systems/electrical/bus/dc1</property>
<value>25</value>
</greater-than-equals>
<greater-than-equals>
<property>systems/electrical/bus/dc2</property>
<value>25</value>
</greater-than-equals>
</or>
<greater-than-equals>
<property>systems/electrical/bus/dc-ess</property>
<value>25</value>
</greater-than-equals>
</condition>
<command>property-toggle</command>
<property>it-autoflight/input/fd2</property>
@ -2243,16 +2082,10 @@
<repeatable type="bool">false</repeatable>
<binding>
<condition>
<or>
<greater-than-equals>
<property>systems/electrical/bus/dc1</property>
<value>25</value>
</greater-than-equals>
<greater-than-equals>
<property>systems/electrical/bus/dc2</property>
<value>25</value>
</greater-than-equals>
</or>
<greater-than-equals>
<property>systems/electrical/bus/dc-ess</property>
<value>25</value>
</greater-than-equals>
</condition>
<command>nasal</command>
<script>
@ -2291,16 +2124,10 @@
<repeatable type="bool">false</repeatable>
<binding>
<condition>
<or>
<greater-than-equals>
<property>systems/electrical/bus/dc1</property>
<value>25</value>
</greater-than-equals>
<greater-than-equals>
<property>systems/electrical/bus/dc2</property>
<value>25</value>
</greater-than-equals>
</or>
<greater-than-equals>
<property>systems/electrical/bus/dc-ess</property>
<value>25</value>
</greater-than-equals>
</condition>
<command>nasal</command>
<script>
@ -2339,16 +2166,10 @@
<repeatable type="bool">false</repeatable>
<binding>
<condition>
<or>
<greater-than-equals>
<property>systems/electrical/bus/dc1</property>
<value>25</value>
</greater-than-equals>
<greater-than-equals>
<property>systems/electrical/bus/dc2</property>
<value>25</value>
</greater-than-equals>
</or>
<greater-than-equals>
<property>systems/electrical/bus/dc-ess</property>
<value>25</value>
</greater-than-equals>
</condition>
<command>nasal</command>
<script>
@ -2387,16 +2208,10 @@
<repeatable type="bool">false</repeatable>
<binding>
<condition>
<or>
<greater-than-equals>
<property>systems/electrical/bus/dc1</property>
<value>25</value>
</greater-than-equals>
<greater-than-equals>
<property>systems/electrical/bus/dc2</property>
<value>25</value>
</greater-than-equals>
</or>
<greater-than-equals>
<property>systems/electrical/bus/dc-ess</property>
<value>25</value>
</greater-than-equals>
</condition>
<command>nasal</command>
<script>
@ -2435,16 +2250,10 @@
<repeatable type="bool">false</repeatable>
<binding>
<condition>
<or>
<greater-than-equals>
<property>systems/electrical/bus/dc1</property>
<value>25</value>
</greater-than-equals>
<greater-than-equals>
<property>systems/electrical/bus/dc2</property>
<value>25</value>
</greater-than-equals>
</or>
<greater-than-equals>
<property>systems/electrical/bus/dc-ess</property>
<value>25</value>
</greater-than-equals>
</condition>
<command>nasal</command>
<script>
@ -2483,16 +2292,10 @@
<repeatable type="bool">false</repeatable>
<binding>
<condition>
<or>
<greater-than-equals>
<property>systems/electrical/bus/dc1</property>
<value>25</value>
</greater-than-equals>
<greater-than-equals>
<property>systems/electrical/bus/dc2</property>
<value>25</value>
</greater-than-equals>
</or>
<greater-than-equals>
<property>systems/electrical/bus/dc-ess</property>
<value>25</value>
</greater-than-equals>
</condition>
<command>nasal</command>
<script>
@ -2531,16 +2334,10 @@
<repeatable type="bool">false</repeatable>
<binding>
<condition>
<or>
<greater-than-equals>
<property>systems/electrical/bus/dc1</property>
<value>25</value>
</greater-than-equals>
<greater-than-equals>
<property>systems/electrical/bus/dc2</property>
<value>25</value>
</greater-than-equals>
</or>
<greater-than-equals>
<property>systems/electrical/bus/dc-ess</property>
<value>25</value>
</greater-than-equals>
</condition>
<command>nasal</command>
<script>
@ -2579,16 +2376,10 @@
<repeatable type="bool">false</repeatable>
<binding>
<condition>
<or>
<greater-than-equals>
<property>systems/electrical/bus/dc1</property>
<value>25</value>
</greater-than-equals>
<greater-than-equals>
<property>systems/electrical/bus/dc2</property>
<value>25</value>
</greater-than-equals>
</or>
<greater-than-equals>
<property>systems/electrical/bus/dc-ess</property>
<value>25</value>
</greater-than-equals>
</condition>
<command>nasal</command>
<script>
@ -2627,16 +2418,10 @@
<repeatable type="bool">false</repeatable>
<binding>
<condition>
<or>
<greater-than-equals>
<property>systems/electrical/bus/dc1</property>
<value>25</value>
</greater-than-equals>
<greater-than-equals>
<property>systems/electrical/bus/dc2</property>
<value>25</value>
</greater-than-equals>
</or>
<greater-than-equals>
<property>systems/electrical/bus/dc-ess</property>
<value>25</value>
</greater-than-equals>
</condition>
<command>nasal</command>
<script>
@ -2675,16 +2460,10 @@
<repeatable type="bool">false</repeatable>
<binding>
<condition>
<or>
<greater-than-equals>
<property>systems/electrical/bus/dc1</property>
<value>25</value>
</greater-than-equals>
<greater-than-equals>
<property>systems/electrical/bus/dc2</property>
<value>25</value>
</greater-than-equals>
</or>
<greater-than-equals>
<property>systems/electrical/bus/dc-ess</property>
<value>25</value>
</greater-than-equals>
</condition>
<command>nasal</command>
<script>
@ -5183,7 +4962,7 @@
<animation>
<type>translate</type>
<object-name>SpdBrk</object-name>
<property>controls/flight/speedbrake</property>
<property>controls/flight/speedbrake-lever</property>
<factor>0.052</factor>
<axis>
<x>1</x>

View file

@ -58,6 +58,18 @@ var canvas_IESI_base = {
return [];
},
update: func() {
if (getprop("/systems/electrical/battery1-amps") >= 120 or getprop("/systems/electrical/battery2-amps") >= 120 or getprop("/systems/electrical/bus/dc1") >= 25 or getprop("/systems/electrical/bus/dc2") >= 25) {
if (getprop("/systems/acconfig/autoconfig-running") != 1 and getprop("/instrumentation/iesi/iesi-init") != 1) {
setprop("/instrumentation/iesi/iesi-init", 1);
setprop("/instrumentation/iesi/iesi-init-time", getprop("/sim/time/elapsed-sec"));
} else if (getprop("/systems/acconfig/autoconfig-running") == 1 and getprop("/instrumentation/iesi/iesi-init") != 1) {
setprop("/instrumentation/iesi/iesi-init", 1);
setprop("/instrumentation/iesi/iesi-init-time", getprop("/sim/time/elapsed-sec") - 87);
}
} else {
setprop("/instrumentation/iesi/iesi-init", 0);
}
if (getprop("/systems/electrical/battery1-amps") >= 120 or getprop("/systems/electrical/battery2-amps") >= 120 or getprop("/systems/electrical/bus/dc1") >= 25 or getprop("/systems/electrical/bus/dc2") >= 25) {
IESI.page.show();
IESI.update();
@ -75,9 +87,18 @@ var canvas_IESI = {
return m;
},
getKeys: func() {
return ["ASI_scale","ASI_mach","ASI_mach_decimal","AI_center","AI_horizon","AI_bank","AI_slipskid","ALT_scale","ALT_one","ALT_two","ALT_three","ALT_four","ALT_five","ALT_digits","ALT_tens","ALT_meters","QNH_setting","QNH_std"];
return ["IESI","IESI_Init","ASI_scale","ASI_mach","ASI_mach_decimal","AI_center","AI_horizon","AI_bank","AI_slipskid","ALT_scale","ALT_one","ALT_two","ALT_three","ALT_four","ALT_five","ALT_digits","ALT_tens","ALT_meters","QNH_setting","QNH_std"];
},
update: func() {
elapsedtime = getprop("/sim/time/elapsed-sec");
if (getprop("/instrumentation/iesi/iesi-init-time") + 90 >= elapsedtime) {
me["IESI"].hide();
me["IESI_Init"].show();
} else {
me["IESI_Init"].hide();
me["IESI"].show();
}
# Airspeed
# Subtract 30, since the scale starts at 30, but don"t allow less than 0, or more than 420 situations
if (getprop("/instrumentation/airspeed-indicator/indicated-speed-kt") <= 30) {
@ -163,7 +184,7 @@ setlistener("sim/signals/fdm-initialized", func {
IESI_update.start();
});
var IESI_update = maketimer(0.05, func {
var IESI_update = maketimer(0.07, func {
canvas_IESI_base.update();
});

File diff suppressed because it is too large Load diff

Before

Width:  |  Height:  |  Size: 113 KiB

After

Width:  |  Height:  |  Size: 121 KiB

File diff suppressed because it is too large Load diff

Binary file not shown.

Before

Width:  |  Height:  |  Size: 817 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7 KiB

After

Width:  |  Height:  |  Size: 7.1 KiB

View file

@ -36994,11 +36994,11 @@ refs 4
2 9.31321e-008 0.5
kids 0
OBJECT poly
name "ACESSFeedBtn2O"
name "ACESSFeedBtn2A"
loc 0.000175806 0.0480501 -0.11075
data 8
Cube.062
texture "buttons2.png"
texture "buttons7.png"
crease 30.000000
numvert 8
-0.01 -0.0464 0.0314

View file

@ -209,7 +209,8 @@ var canvas_PFD_base = {
wow2 = getprop("/gear/gear[2]/wow");
# FMA MAN TOGA MCT FLX THR
if (athr == 1 and (state1 == "TOGA" or state1 == "MCT" or state1 == "MAN THR" or state2 == "TOGA" or state2 == "MCT" or state2 == "MAN THR") and getprop("/systems/thrust/eng-out") != 1) {
if (athr == 1 and (state1 == "TOGA" or state1 == "MCT" or state1 == "MAN THR" or state2 == "TOGA" or state2 == "MCT" or state2 == "MAN THR") and getprop("/systems/thrust/eng-out") != 1 and getprop("/systems/thrust/alpha-floor") != 1 and
getprop("/systems/thrust/toga-lk") != 1) {
me["FMA_man"].show();
me["FMA_manmode"].show();
if (state1 == "TOGA" or state2 == "TOGA") {
@ -245,7 +246,7 @@ var canvas_PFD_base = {
me["FMA_man_box"].setColor(0.7333,0.3803,0);
}
} else if (athr == 1 and (state1 == "TOGA" or (state1 == "MCT" and getprop("/controls/engines/thrust-limit") == "FLX") or (state1 == "MAN THR" and thr1 >= 0.83) or state2 == "TOGA" or (state2 == "MCT" and
getprop("/controls/engines/thrust-limit") == "FLX") or (state2 == "MAN THR" and thr2 >= 0.83)) and getprop("/systems/thrust/eng-out") == 1) {
getprop("/controls/engines/thrust-limit") == "FLX") or (state2 == "MAN THR" and thr2 >= 0.83)) and getprop("/systems/thrust/eng-out") == 1 and getprop("/systems/thrust/alpha-floor") != 1 and getprop("/systems/thrust/toga-lk") != 1) {
me["FMA_man"].show();
me["FMA_manmode"].show();
if (state1 == "TOGA" or state2 == "TOGA") {
@ -293,27 +294,41 @@ var canvas_PFD_base = {
}
# FMA A/THR
if (athr == 1 and getprop("/systems/thrust/eng-out") != 1 and (state1 == "MAN" or state1 == "CL") and (state2 == "MAN" or state2 == "CL")) {
me["FMA_thrust"].show();
if (getprop("/modes/pfd/fma/throttle-mode-box") == 1 and throttle_mode != " ") {
me["FMA_thrust_box"].show();
} else {
me["FMA_thrust_box"].hide();
}
} else if (athr == 1 and getprop("/systems/thrust/eng-out") == 1 and (state1 == "MAN" or state1 == "CL" or (state1 == "MAN THR" and thr1 < 0.83) or (state1 == "MCT" and getprop("/controls/engines/thrust-limit") != "FLX")) and
(state2 == "MAN" or state2 == "CL" or (state2 == "MAN THR" and thr2 < 0.83) or (state2 == "MCT" and getprop("/controls/engines/thrust-limit") != "FLX"))) {
me["FMA_thrust"].show();
if (getprop("/modes/pfd/fma/throttle-mode-box") == 1 and throttle_mode != " ") {
me["FMA_thrust_box"].show();
if (getprop("/systems/thrust/alpha-floor") != 1 and getprop("/systems/thrust/toga-lk") != 1) {
if (athr == 1 and getprop("/systems/thrust/eng-out") != 1 and (state1 == "MAN" or state1 == "CL") and (state2 == "MAN" or state2 == "CL")) {
me["FMA_thrust"].show();
if (getprop("/modes/pfd/fma/throttle-mode-box") == 1 and throttle_mode != " ") {
me["FMA_thrust_box"].show();
} else {
me["FMA_thrust_box"].hide();
}
} else if (athr == 1 and getprop("/systems/thrust/eng-out") == 1 and (state1 == "MAN" or state1 == "CL" or (state1 == "MAN THR" and thr1 < 0.83) or (state1 == "MCT" and getprop("/controls/engines/thrust-limit") != "FLX")) and
(state2 == "MAN" or state2 == "CL" or (state2 == "MAN THR" and thr2 < 0.83) or (state2 == "MCT" and getprop("/controls/engines/thrust-limit") != "FLX"))) {
me["FMA_thrust"].show();
if (getprop("/modes/pfd/fma/throttle-mode-box") == 1 and throttle_mode != " ") {
me["FMA_thrust_box"].show();
} else {
me["FMA_thrust_box"].hide();
}
} else {
me["FMA_thrust"].hide();
me["FMA_thrust_box"].hide();
}
} else {
me["FMA_thrust"].hide();
me["FMA_thrust_box"].hide();
me["FMA_thrust"].show();
me["FMA_thrust_box"].show();
}
me["FMA_thrust"].setText(sprintf("%s", throttle_mode));
if (getprop("/systems/thrust/alpha-floor") == 1) {
me["FMA_thrust"].setText("A.FLOOR");
me["FMA_thrust_box"].setColor(0.7333,0.3803,0);
} else if (getprop("/systems/thrust/toga-lk") == 1) {
me["FMA_thrust"].setText("TOGA LK");
me["FMA_thrust_box"].setColor(0.7333,0.3803,0);
} else {
me["FMA_thrust"].setText(sprintf("%s", throttle_mode));
me["FMA_thrust_box"].setColor(0.8078,0.8039,0.8078);
}
# FMA Pitch Roll Common
me["FMA_combined"].setText(sprintf("%s", pitch_mode));

View file

@ -133,129 +133,160 @@ var canvas_upperECAM_base = {
me["FOB-LBS"].setText(sprintf("%s", math.round(getprop("/consumables/fuel/total-fuel-lbs"), 10)));
# Left ECAM Messages
me["ECAML1"].setText(sprintf("%s", getprop("/ECAM/msg/line1")));
me["ECAML2"].setText(sprintf("%s", getprop("/ECAM/msg/line2")));
me["ECAML3"].setText(sprintf("%s", getprop("/ECAM/msg/line3")));
me["ECAML4"].setText(sprintf("%s", getprop("/ECAM/msg/line4")));
me["ECAML5"].setText(sprintf("%s", getprop("/ECAM/msg/line5")));
me["ECAML6"].setText(sprintf("%s", getprop("/ECAM/msg/line6")));
me["ECAML7"].setText(sprintf("%s", getprop("/ECAM/msg/line7")));
me["ECAML8"].setText(sprintf("%s", getprop("/ECAM/msg/line8")));
if (getprop("/ECAM/msg/line1c") == "w") {
me["ECAML1"].setColor(0.8078,0.8039,0.8078);
} else if (getprop("/ECAM/msg/line1c") == "b") {
me["ECAML1"].setColor(0.0901,0.6039,0.7176);
} else if (getprop("/ECAM/msg/line1c") == "g") {
me["ECAML1"].setColor(0.0509,0.7529,0.2941);
} else if (getprop("/ECAM/msg/line1c") == "a") {
me["ECAML1"].setColor(0.7333,0.3803,0);
} else if (getprop("/ECAM/msg/line1c") == "r") {
me["ECAML1"].setColor(1,0,0);
}
if (getprop("/ECAM/msg/line2c") == "w") {
me["ECAML2"].setColor(0.8078,0.8039,0.8078);
} else if (getprop("/ECAM/msg/line2c") == "b") {
me["ECAML2"].setColor(0.0901,0.6039,0.7176);
} else if (getprop("/ECAM/msg/line2c") == "g") {
me["ECAML2"].setColor(0.0509,0.7529,0.2941);
} else if (getprop("/ECAM/msg/line2c") == "a") {
me["ECAML2"].setColor(0.7333,0.3803,0);
} else if (getprop("/ECAM/msg/line2c") == "r") {
me["ECAML2"].setColor(1,0,0);
}
if (getprop("/ECAM/msg/line3c") == "w") {
me["ECAML3"].setColor(0.8078,0.8039,0.8078);
} else if (getprop("/ECAM/msg/line3c") == "b") {
me["ECAML3"].setColor(0.0901,0.6039,0.7176);
} else if (getprop("/ECAM/msg/line3c") == "g") {
me["ECAML3"].setColor(0.0509,0.7529,0.2941);
} else if (getprop("/ECAM/msg/line3c") == "a") {
me["ECAML3"].setColor(0.7333,0.3803,0);
} else if (getprop("/ECAM/msg/line3c") == "r") {
me["ECAML3"].setColor(1,0,0);
}
if (getprop("/ECAM/msg/line4c") == "w") {
me["ECAML4"].setColor(0.8078,0.8039,0.8078);
} else if (getprop("/ECAM/msg/line4c") == "b") {
me["ECAML4"].setColor(0.0901,0.6039,0.7176);
} else if (getprop("/ECAM/msg/line4c") == "g") {
me["ECAML4"].setColor(0.0509,0.7529,0.2941);
} else if (getprop("/ECAM/msg/line4c") == "a") {
me["ECAML4"].setColor(0.7333,0.3803,0);
} else if (getprop("/ECAM/msg/line4c") == "r") {
me["ECAML4"].setColor(1,0,0);
}
if (getprop("/ECAM/msg/line5c") == "w") {
me["ECAML5"].setColor(0.8078,0.8039,0.8078);
} else if (getprop("/ECAM/msg/line5c") == "b") {
me["ECAML5"].setColor(0.0901,0.6039,0.7176);
} else if (getprop("/ECAM/msg/line5c") == "g") {
me["ECAML5"].setColor(0.0509,0.7529,0.2941);
} else if (getprop("/ECAM/msg/line5c") == "a") {
me["ECAML5"].setColor(0.7333,0.3803,0);
} else if (getprop("/ECAM/msg/line5c") == "r") {
me["ECAML5"].setColor(1,0,0);
}
if (getprop("/ECAM/msg/line6c") == "w") {
me["ECAML6"].setColor(0.8078,0.8039,0.8078);
} else if (getprop("/ECAM/msg/line6c") == "b") {
me["ECAML6"].setColor(0.0901,0.6039,0.7176);
} else if (getprop("/ECAM/msg/line6c") == "g") {
me["ECAML6"].setColor(0.0509,0.7529,0.2941);
} else if (getprop("/ECAM/msg/line6c") == "a") {
me["ECAML6"].setColor(0.7333,0.3803,0);
} else if (getprop("/ECAM/msg/line6c") == "r") {
me["ECAML6"].setColor(1,0,0);
}
if (getprop("/ECAM/msg/line7c") == "w") {
me["ECAML7"].setColor(0.8078,0.8039,0.8078);
} else if (getprop("/ECAM/msg/line7c") == "b") {
me["ECAML7"].setColor(0.0901,0.6039,0.7176);
} else if (getprop("/ECAM/msg/line7c") == "g") {
me["ECAML7"].setColor(0.0509,0.7529,0.2941);
} else if (getprop("/ECAM/msg/line7c") == "a") {
me["ECAML7"].setColor(0.7333,0.3803,0);
} else if (getprop("/ECAM/msg/line7c") == "r") {
me["ECAML7"].setColor(1,0,0);
}
if (getprop("/ECAM/msg/line8c") == "w") {
me["ECAML8"].setColor(0.8078,0.8039,0.8078);
} else if (getprop("/ECAM/msg/line8c") == "b") {
me["ECAML8"].setColor(0.0901,0.6039,0.7176);
} else if (getprop("/ECAM/msg/line8c") == "g") {
me["ECAML8"].setColor(0.0509,0.7529,0.2941);
} else if (getprop("/ECAM/msg/line8c") == "a") {
me["ECAML8"].setColor(0.7333,0.3803,0);
} else if (getprop("/ECAM/msg/line8c") == "r") {
me["ECAML8"].setColor(1,0,0);
}
if (getprop("/ECAM/left-msg") == "MSG") {
me["ECAML1"].show();
me["ECAML2"].show();
me["ECAML3"].show();
me["ECAML4"].show();
me["ECAML5"].show();
me["ECAML6"].show();
me["ECAML7"].show();
me["ECAML8"].show();
me["ECAML1"].setText(sprintf("%s", getprop("/ECAM/msg/line1")));
me["ECAML2"].setText(sprintf("%s", getprop("/ECAM/msg/line2")));
me["ECAML3"].setText(sprintf("%s", getprop("/ECAM/msg/line3")));
me["ECAML4"].setText(sprintf("%s", getprop("/ECAM/msg/line4")));
me["ECAML5"].setText(sprintf("%s", getprop("/ECAM/msg/line5")));
me["ECAML6"].setText(sprintf("%s", getprop("/ECAM/msg/line6")));
me["ECAML7"].setText(sprintf("%s", getprop("/ECAM/msg/line7")));
me["ECAML8"].setText(sprintf("%s", getprop("/ECAM/msg/line8")));
if (getprop("/ECAM/msg/line1c") == "w") {
me["ECAML1"].setColor(0.8078,0.8039,0.8078);
} else if (getprop("/ECAM/msg/line1c") == "b") {
me["ECAML1"].setColor(0.0901,0.6039,0.7176);
} else if (getprop("/ECAM/msg/line1c") == "g") {
me["ECAML1"].setColor(0.0509,0.7529,0.2941);
} else if (getprop("/ECAM/msg/line1c") == "a") {
me["ECAML1"].setColor(0.7333,0.3803,0);
} else if (getprop("/ECAM/msg/line1c") == "r") {
me["ECAML1"].setColor(1,0,0);
}
if (getprop("/ECAM/msg/line2c") == "w") {
me["ECAML2"].setColor(0.8078,0.8039,0.8078);
} else if (getprop("/ECAM/msg/line2c") == "b") {
me["ECAML2"].setColor(0.0901,0.6039,0.7176);
} else if (getprop("/ECAM/msg/line2c") == "g") {
me["ECAML2"].setColor(0.0509,0.7529,0.2941);
} else if (getprop("/ECAM/msg/line2c") == "a") {
me["ECAML2"].setColor(0.7333,0.3803,0);
} else if (getprop("/ECAM/msg/line2c") == "r") {
me["ECAML2"].setColor(1,0,0);
}
if (getprop("/ECAM/msg/line3c") == "w") {
me["ECAML3"].setColor(0.8078,0.8039,0.8078);
} else if (getprop("/ECAM/msg/line3c") == "b") {
me["ECAML3"].setColor(0.0901,0.6039,0.7176);
} else if (getprop("/ECAM/msg/line3c") == "g") {
me["ECAML3"].setColor(0.0509,0.7529,0.2941);
} else if (getprop("/ECAM/msg/line3c") == "a") {
me["ECAML3"].setColor(0.7333,0.3803,0);
} else if (getprop("/ECAM/msg/line3c") == "r") {
me["ECAML3"].setColor(1,0,0);
}
if (getprop("/ECAM/msg/line4c") == "w") {
me["ECAML4"].setColor(0.8078,0.8039,0.8078);
} else if (getprop("/ECAM/msg/line4c") == "b") {
me["ECAML4"].setColor(0.0901,0.6039,0.7176);
} else if (getprop("/ECAM/msg/line4c") == "g") {
me["ECAML4"].setColor(0.0509,0.7529,0.2941);
} else if (getprop("/ECAM/msg/line4c") == "a") {
me["ECAML4"].setColor(0.7333,0.3803,0);
} else if (getprop("/ECAM/msg/line4c") == "r") {
me["ECAML4"].setColor(1,0,0);
}
if (getprop("/ECAM/msg/line5c") == "w") {
me["ECAML5"].setColor(0.8078,0.8039,0.8078);
} else if (getprop("/ECAM/msg/line5c") == "b") {
me["ECAML5"].setColor(0.0901,0.6039,0.7176);
} else if (getprop("/ECAM/msg/line5c") == "g") {
me["ECAML5"].setColor(0.0509,0.7529,0.2941);
} else if (getprop("/ECAM/msg/line5c") == "a") {
me["ECAML5"].setColor(0.7333,0.3803,0);
} else if (getprop("/ECAM/msg/line5c") == "r") {
me["ECAML5"].setColor(1,0,0);
}
if (getprop("/ECAM/msg/line6c") == "w") {
me["ECAML6"].setColor(0.8078,0.8039,0.8078);
} else if (getprop("/ECAM/msg/line6c") == "b") {
me["ECAML6"].setColor(0.0901,0.6039,0.7176);
} else if (getprop("/ECAM/msg/line6c") == "g") {
me["ECAML6"].setColor(0.0509,0.7529,0.2941);
} else if (getprop("/ECAM/msg/line6c") == "a") {
me["ECAML6"].setColor(0.7333,0.3803,0);
} else if (getprop("/ECAM/msg/line6c") == "r") {
me["ECAML6"].setColor(1,0,0);
}
if (getprop("/ECAM/msg/line7c") == "w") {
me["ECAML7"].setColor(0.8078,0.8039,0.8078);
} else if (getprop("/ECAM/msg/line7c") == "b") {
me["ECAML7"].setColor(0.0901,0.6039,0.7176);
} else if (getprop("/ECAM/msg/line7c") == "g") {
me["ECAML7"].setColor(0.0509,0.7529,0.2941);
} else if (getprop("/ECAM/msg/line7c") == "a") {
me["ECAML7"].setColor(0.7333,0.3803,0);
} else if (getprop("/ECAM/msg/line7c") == "r") {
me["ECAML7"].setColor(1,0,0);
}
if (getprop("/ECAM/msg/line8c") == "w") {
me["ECAML8"].setColor(0.8078,0.8039,0.8078);
} else if (getprop("/ECAM/msg/line8c") == "b") {
me["ECAML8"].setColor(0.0901,0.6039,0.7176);
} else if (getprop("/ECAM/msg/line8c") == "g") {
me["ECAML8"].setColor(0.0509,0.7529,0.2941);
} else if (getprop("/ECAM/msg/line8c") == "a") {
me["ECAML8"].setColor(0.7333,0.3803,0);
} else if (getprop("/ECAM/msg/line8c") == "r") {
me["ECAML8"].setColor(1,0,0);
}
me["TO_Memo"].hide();
me["ECAM_Left"].show();
} else if (getprop("/ECAM/left-msg") == "TO-MEMO") {
if (getprop("/controls/autobrake/mode") == 3) {
me["TO_Autobrake"].setText("AUTO BRK MAX");
me["TO_Autobrake_B"].hide();
} else {
me["TO_Autobrake"].setText("AUTO BRK");
me["TO_Autobrake_B"].show();
}
if (getprop("/controls/switches/no-smoking-sign") == 1 and getprop("/controls/switches/seatbelt-sign") == 1) {
me["TO_Signs"].setText("SIGNS ON");
me["TO_Signs_B"].hide();
} else {
me["TO_Signs"].setText("SIGNS");
me["TO_Signs_B"].show();
}
if (getprop("/controls/flight/speedbrake-arm") == 1) {
me["TO_Spoilers"].setText("SPLRS ARM");
me["TO_Spoilers_B"].hide();
} else {
me["TO_Spoilers"].setText("SPLRS");
me["TO_Spoilers_B"].show();
}
if (getprop("/controls/flight/flap-pos") > 0 and getprop("/controls/flight/flap-pos") < 5) {
me["TO_Flaps"].setText("FLAPS T.O");
me["TO_Flaps_B"].hide();
} else {
me["TO_Flaps"].setText("FLAPS");
me["TO_Flaps_B"].show();
}
if (getprop("/ECAM/to-config") == 1) {
me["TO_Config"].setText("T.O CONFIG NORMAL");
me["TO_Config_B"].hide();
} else {
me["TO_Config"].setText("T.O CONFIG");
me["TO_Config_B"].show();
}
me["ECAM_Left"].hide();
me["TO_Memo"].show();
} else {
me["ECAML1"].hide();
me["ECAML2"].hide();
me["ECAML3"].hide();
me["ECAML4"].hide();
me["ECAML5"].hide();
me["ECAML6"].hide();
me["ECAML7"].hide();
me["ECAML8"].hide();
me["ECAM_Left"].hide();
me["TO_Memo"].hide();
}
},
};
@ -270,8 +301,9 @@ var canvas_upperECAM_cfm_eis2 = {
getKeys: func() {
return ["N11-needle","N11-thr","N11-ylim","N11","N11-decpnt","N11-decimal","N11-box","N11-scale","N11-scale2","N11-scaletick","N11-scalenum","N11-XX","N11-XX2","N11-XX-box","EGT1-needle","EGT1","EGT1-scale","EGT1-box","EGT1-scale2","EGT1-scaletick",
"EGT1-XX","N21","N21-decpnt","N21-decimal","N21-XX","FF1","FF1-XX","N12-needle","N12-thr","N12-ylim","N12","N12-decpnt","N12-decimal","N12-box","N12-scale","N12-scale2","N12-scaletick","N12-scalenum","N12-XX","N12-XX2","N12-XX-box","EGT2-needle","EGT2",
"EGT2-scale","EGT2-box","EGT2-scale2","EGT2-scaletick","EGT2-XX","N22","N22-decpnt","N22-decimal","N22-XX","FF2","FF2-XX","FOB-LBS","ECAML1","ECAML2","ECAML3","ECAML4","ECAML5","ECAML6","ECAML7","ECAML8","FlapTxt","FlapDots","N1Lim-mode","N1Lim",
"N1Lim-decpnt","N1Lim-decimal","N1Lim-percent","N1Lim-XX","N1Lim-XX2","REV1","REV1-box","REV2","REV2-box"];
"EGT2-scale","EGT2-box","EGT2-scale2","EGT2-scaletick","EGT2-XX","N22","N22-decpnt","N22-decimal","N22-XX","FF2","FF2-XX","FOB-LBS","FlapTxt","FlapDots","N1Lim-mode","N1Lim","N1Lim-decpnt","N1Lim-decimal","N1Lim-percent","N1Lim-XX","N1Lim-XX2","REV1",
"REV1-box","REV2","REV2-box","ECAM_Left","ECAML1","ECAML2","ECAML3","ECAML4","ECAML5","ECAML6","ECAML7","ECAML8","TO_Memo","TO_Autobrake","TO_Signs","TO_Spoilers","TO_Flaps","TO_Config","TO_Autobrake_B","TO_Signs_B","TO_Spoilers_B","TO_Flaps_B",
"TO_Config_B"];
},
update: func() {
# N1
@ -459,7 +491,7 @@ var canvas_upperECAM_cfm_eis2 = {
me["N1Lim"].setText(sprintf("%s", math.floor(getprop("/controls/engines/n1-limit") + 0.05)));
me["N1Lim-decimal"].setText(sprintf("%s", int(10*math.mod(getprop("/controls/engines/n1-limit") + 0.05,1))));
if (getprop("/systems/fadec/powered1") == 1 or getprop("/systems/fadec/powered2") == 1) {
if (getprop("/systems/fadec/powered1") == 1 or getprop("/systems/fadec/powered2") == 1 or getprop("/systems/fadec/powerup")) {
me["N1Lim-mode"].show();
me["N1Lim-XX"].hide();
me["N1Lim-XX2"].hide();
@ -469,7 +501,7 @@ var canvas_upperECAM_cfm_eis2 = {
me["N1Lim-XX2"].show();
}
if ((getprop("/systems/fadec/powered1") == 1 or getprop("/systems/fadec/powered2") == 1) and getprop("/controls/engines/thrust-limit") != "MREV") {
if ((getprop("/systems/fadec/powered1") == 1 or getprop("/systems/fadec/powered2") == 1 or getprop("/systems/fadec/powerup")) and getprop("/controls/engines/thrust-limit") != "MREV") {
me["N1Lim"].show();
me["N1Lim-decpnt"].show();
me["N1Lim-decimal"].show();
@ -496,8 +528,8 @@ var canvas_upperECAM_iae_eis2 = {
return ["EPR1-needle","EPR1-thr","EPR1-ylim","EPR1","EPR1-decpnt","EPR1-decimal","EPR1-box","EPR1-scale","EPR1-scaletick","EPR1-scalenum","EPR1-XX","EPR1-XX2","EGT1-needle","EGT1","EGT1-scale","EGT1-box","EGT1-scale2","EGT1-scaletick","EGT1-XX",
"N11-needle","N11-thr","N11-ylim","N11","N11-decpnt","N11-decimal","N11-scale","N11-scale2","N11-scaletick","N11-scalenum","N11-XX","N21","N21-decpnt","N21-decimal","N21-XX","FF1","FF1-XX","EPR2-needle","EPR2-thr","EPR2-ylim","EPR2","EPR2-decpnt",
"EPR2-decimal","EPR2-box","EPR2-scale","EPR2-scaletick","EPR2-scalenum","EPR2-XX","EPR2-XX2","EGT2-needle","EGT2","EGT2-scale","EGT2-scale2","EGT2-box","EGT2-scaletick","EGT2-XX","N12-needle","N12-thr","N12-ylim","N12","N12-decpnt","N12-decimal",
"N12-scale","N12-scale2","N12-scaletick","N12-scalenum","N12-XX","N22","N22-decpnt","N22-decimal","N22-XX","FF2","FF2-XX","FOB-LBS","ECAML1","ECAML2","ECAML3","ECAML4","ECAML5","ECAML6","ECAML7","ECAML8","FlapTxt","FlapDots","EPRLim-mode","EPRLim",
"EPRLim-decpnt","EPRLim-decimal","EPRLim-XX","EPRLim-XX2","REV1","REV1-box","REV2","REV2-box"];
"N12-scale","N12-scale2","N12-scaletick","N12-scalenum","N12-XX","N22","N22-decpnt","N22-decimal","N22-XX","FF2","FF2-XX","FOB-LBS","FlapTxt","FlapDots","EPRLim-mode","EPRLim","EPRLim-decpnt","EPRLim-decimal","EPRLim-XX","EPRLim-XX2","REV1","REV1-box",
"REV2","REV2-box","ECAM_Left","ECAML1","ECAML2","ECAML3","ECAML4","ECAML5","ECAML6","ECAML7","ECAML8","TO_Memo","TO_Autobrake","TO_Signs","TO_Spoilers","TO_Flaps","TO_Config","TO_Autobrake_B","TO_Signs_B","TO_Spoilers_B","TO_Flaps_B","TO_Config_B"];
},
update: func() {
# EPR
@ -750,7 +782,7 @@ var canvas_upperECAM_iae_eis2 = {
me["EPRLim"].setText(sprintf("%1.0f", math.floor(getprop("/controls/engines/epr-limit"))));
me["EPRLim-decimal"].setText(sprintf("%03d", (getprop("/controls/engines/epr-limit") - int(getprop("/controls/engines/epr-limit"))) * 1000));
if (getprop("/systems/fadec/powered1") == 1 or getprop("/systems/fadec/powered2") == 1) {
if (getprop("/systems/fadec/powered1") == 1 or getprop("/systems/fadec/powered2") == 1 or getprop("/systems/fadec/powerup")) {
me["EPRLim-mode"].show();
me["EPRLim-XX"].hide();
me["EPRLim-XX2"].hide();
@ -760,7 +792,7 @@ var canvas_upperECAM_iae_eis2 = {
me["EPRLim-XX2"].show();
}
if ((getprop("/systems/fadec/powered1") == 1 or getprop("/systems/fadec/powered2") == 1) and getprop("/controls/engines/thrust-limit") != "MREV") {
if ((getprop("/systems/fadec/powered1") == 1 or getprop("/systems/fadec/powered2") == 1 or getprop("/systems/fadec/powerup")) and getprop("/controls/engines/thrust-limit") != "MREV") {
me["EPRLim"].show();
me["EPRLim-decpnt"].show();
me["EPRLim-decimal"].show();

View file

@ -41,9 +41,9 @@
inkscape:window-height="1030"
id="namedview371"
showgrid="false"
inkscape:zoom="1.4142136"
inkscape:cx="520.85242"
inkscape:cy="1094.6024"
inkscape:zoom="0.50000001"
inkscape:cx="531.17625"
inkscape:cy="512.09207"
inkscape:window-x="1592"
inkscape:window-y="-8"
inkscape:window-maximized="1"
@ -197,34 +197,6 @@
x="384.25583"
id="tspan4435"
sodipodi:role="line">LBS</tspan></text>
<text
xml:space="preserve"
style="font-style:normal;font-weight:normal;font-size:11.15495205px;line-height:0%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
x="14.033532"
y="686.0564"
id="ECAML1"
inkscape:label="#text4314"
sodipodi:linespacing="0%"
transform="scale(0.92957935,1.0757554)"><tspan
sodipodi:role="line"
id="tspan4316"
x="14.033532"
y="686.0564"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.1831665px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:start;text-anchor:start;fill:#cecdce">LINE 1</tspan></text>
<text
transform="scale(0.92957935,1.0757554)"
sodipodi:linespacing="0%"
inkscape:label="#text4314"
id="ECAML2"
y="722.86761"
x="14.033532"
style="font-style:normal;font-weight:normal;font-size:11.15495205px;line-height:0%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
xml:space="preserve"><tspan
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.1831665px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:start;text-anchor:start;fill:#cecdce"
y="722.86761"
x="14.033532"
id="tspan4352"
sodipodi:role="line">LINE 2</tspan></text>
<text
transform="scale(0.92957935,1.0757554)"
sodipodi:linespacing="0%"
@ -1232,88 +1204,375 @@
style="fill:none;stroke:#ff0000;stroke-width:3.46754003;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
inkscape:transform-center-x="-74.153195" />
</g>
<text
xml:space="preserve"
style="font-style:normal;font-weight:normal;font-size:11.15495205px;line-height:0%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
x="14.033532"
y="759.67896"
id="ECAML3"
inkscape:label="#text4314"
sodipodi:linespacing="0%"
transform="scale(0.92957935,1.0757554)"><tspan
sodipodi:role="line"
id="tspan4312"
<g
id="ECAM_Left"
inkscape:label="#g4376">
<text
transform="scale(0.92957935,1.0757554)"
sodipodi:linespacing="0%"
inkscape:label="#text4314"
id="ECAML1"
y="686.0564"
x="14.033532"
style="font-style:normal;font-weight:normal;font-size:11.15495205px;line-height:0%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
xml:space="preserve"><tspan
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.1831665px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:start;text-anchor:start;fill:#cecdce"
y="686.0564"
x="14.033532"
id="tspan4316"
sodipodi:role="line">LINE 1</tspan></text>
<text
xml:space="preserve"
style="font-style:normal;font-weight:normal;font-size:11.15495205px;line-height:0%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
x="14.033532"
y="722.86761"
id="ECAML2"
inkscape:label="#text4314"
sodipodi:linespacing="0%"
transform="scale(0.92957935,1.0757554)"><tspan
sodipodi:role="line"
id="tspan4352"
x="14.033532"
y="722.86761"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.1831665px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:start;text-anchor:start;fill:#cecdce">LINE 2</tspan></text>
<text
transform="scale(0.92957935,1.0757554)"
sodipodi:linespacing="0%"
inkscape:label="#text4314"
id="ECAML3"
y="759.67896"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.1831665px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:start;text-anchor:start;fill:#cecdce">LINE 3</tspan></text>
<text
transform="scale(0.92957935,1.0757554)"
sodipodi:linespacing="0%"
inkscape:label="#text4314"
id="ECAML4"
y="796.4903"
x="14.033532"
style="font-style:normal;font-weight:normal;font-size:11.15495205px;line-height:0%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
xml:space="preserve"><tspan
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.1831665px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:start;text-anchor:start;fill:#cecdce"
x="14.033532"
style="font-style:normal;font-weight:normal;font-size:11.15495205px;line-height:0%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
xml:space="preserve"><tspan
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.1831665px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:start;text-anchor:start;fill:#cecdce"
y="759.67896"
x="14.033532"
id="tspan4312"
sodipodi:role="line">LINE 3</tspan></text>
<text
xml:space="preserve"
style="font-style:normal;font-weight:normal;font-size:11.15495205px;line-height:0%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
x="14.033532"
y="796.4903"
x="14.033532"
id="tspan4317"
sodipodi:role="line">LINE 4</tspan></text>
<text
xml:space="preserve"
style="font-style:normal;font-weight:normal;font-size:11.15495205px;line-height:0%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
x="14.033532"
y="833.30164"
id="ECAML5"
inkscape:label="#text4314"
sodipodi:linespacing="0%"
transform="scale(0.92957935,1.0757554)"><tspan
sodipodi:role="line"
id="tspan4321"
x="14.033532"
id="ECAML4"
inkscape:label="#text4314"
sodipodi:linespacing="0%"
transform="scale(0.92957935,1.0757554)"><tspan
sodipodi:role="line"
id="tspan4317"
x="14.033532"
y="796.4903"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.1831665px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:start;text-anchor:start;fill:#cecdce">LINE 4</tspan></text>
<text
transform="scale(0.92957935,1.0757554)"
sodipodi:linespacing="0%"
inkscape:label="#text4314"
id="ECAML5"
y="833.30164"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.1831665px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:start;text-anchor:start;fill:#cecdce">LINE 5</tspan></text>
<text
transform="scale(0.92957935,1.0757554)"
sodipodi:linespacing="0%"
inkscape:label="#text4314"
id="ECAML6"
y="870.11298"
x="14.033532"
style="font-style:normal;font-weight:normal;font-size:11.15495205px;line-height:0%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
xml:space="preserve"><tspan
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.1831665px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:start;text-anchor:start;fill:#cecdce"
x="14.033532"
style="font-style:normal;font-weight:normal;font-size:11.15495205px;line-height:0%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
xml:space="preserve"><tspan
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.1831665px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:start;text-anchor:start;fill:#cecdce"
y="833.30164"
x="14.033532"
id="tspan4321"
sodipodi:role="line">LINE 5</tspan></text>
<text
xml:space="preserve"
style="font-style:normal;font-weight:normal;font-size:11.15495205px;line-height:0%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
x="14.033532"
y="870.11298"
x="14.033532"
id="tspan4325"
sodipodi:role="line">LINE 6</tspan></text>
<text
xml:space="preserve"
style="font-style:normal;font-weight:normal;font-size:11.15495205px;line-height:0%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
x="14.033532"
y="906.92432"
id="ECAML7"
inkscape:label="#text4314"
sodipodi:linespacing="0%"
transform="scale(0.92957935,1.0757554)"><tspan
sodipodi:role="line"
id="tspan4329"
x="14.033532"
id="ECAML6"
inkscape:label="#text4314"
sodipodi:linespacing="0%"
transform="scale(0.92957935,1.0757554)"><tspan
sodipodi:role="line"
id="tspan4325"
x="14.033532"
y="870.11298"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.1831665px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:start;text-anchor:start;fill:#cecdce">LINE 6</tspan></text>
<text
transform="scale(0.92957935,1.0757554)"
sodipodi:linespacing="0%"
inkscape:label="#text4314"
id="ECAML7"
y="906.92432"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.1831665px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:start;text-anchor:start;fill:#cecdce">LINE 7</tspan></text>
<text
transform="scale(0.92957935,1.0757554)"
sodipodi:linespacing="0%"
inkscape:label="#text4314"
id="ECAML8"
y="943.73566"
x="14.033532"
style="font-style:normal;font-weight:normal;font-size:11.15495205px;line-height:0%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
xml:space="preserve"><tspan
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.1831665px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:start;text-anchor:start;fill:#cecdce"
y="943.73566"
x="14.033532"
id="tspan4333"
sodipodi:role="line">LINE 8</tspan></text>
style="font-style:normal;font-weight:normal;font-size:11.15495205px;line-height:0%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
xml:space="preserve"><tspan
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.1831665px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:start;text-anchor:start;fill:#cecdce"
y="906.92432"
x="14.033532"
id="tspan4329"
sodipodi:role="line">LINE 7</tspan></text>
<text
xml:space="preserve"
style="font-style:normal;font-weight:normal;font-size:11.15495205px;line-height:0%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
x="14.033532"
y="943.73566"
id="ECAML8"
inkscape:label="#text4314"
sodipodi:linespacing="0%"
transform="scale(0.92957935,1.0757554)"><tspan
sodipodi:role="line"
id="tspan4333"
x="14.033532"
y="943.73566"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.1831665px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:start;text-anchor:start;fill:#cecdce">LINE 8</tspan></text>
</g>
<g
id="TO_Memo"
inkscape:label="#g4517">
<text
transform="scale(0.92957935,1.0757554)"
sodipodi:linespacing="0%"
inkscape:label="#text4314"
id="text4412"
y="686.0564"
x="14.033532"
style="font-style:normal;font-weight:normal;font-size:11.15495205px;line-height:0%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
xml:space="preserve"><tspan
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.1831665px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:start;text-anchor:start;fill:#0dc04b;fill-opacity:1"
y="686.0564"
x="14.033532"
id="tspan4414"
sodipodi:role="line">T.O</tspan></text>
<path
style="fill:none;stroke:#0dc04b;stroke-width:2.4000001;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="m 13.8216,741.99564 77.932201,0"
id="path4556"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cc" />
<text
xml:space="preserve"
style="font-style:normal;font-weight:normal;font-size:11.15495205px;line-height:0%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
x="104.6523"
y="686.0564"
id="TO_Autobrake"
inkscape:label="#text4314"
sodipodi:linespacing="0%"
transform="scale(0.92957935,1.0757554)"><tspan
sodipodi:role="line"
id="tspan4421"
x="104.6523"
y="686.0564"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.1831665px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:start;text-anchor:start;fill:#0dc04b;fill-opacity:1">AUTO BRK</tspan></text>
<text
transform="scale(0.92957935,1.0757554)"
sodipodi:linespacing="0%"
inkscape:label="#text4314"
id="TO_Signs"
y="722.50458"
x="104.6523"
style="font-style:normal;font-weight:normal;font-size:11.15495205px;line-height:0%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
xml:space="preserve"><tspan
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.1831665px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:start;text-anchor:start;fill:#0dc04b;fill-opacity:1"
y="722.50458"
x="104.6523"
id="tspan4425"
sodipodi:role="line">SIGNS</tspan></text>
<text
xml:space="preserve"
style="font-style:normal;font-weight:normal;font-size:11.15495205px;line-height:0%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
x="104.6523"
y="759.67883"
id="TO_Spoilers"
inkscape:label="#text4314"
sodipodi:linespacing="0%"
transform="scale(0.92957935,1.0757554)"><tspan
sodipodi:role="line"
id="tspan4429"
x="104.6523"
y="759.67883"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.1831665px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:start;text-anchor:start;fill:#0dc04b;fill-opacity:1">SPLRS</tspan></text>
<text
transform="scale(0.92957935,1.0757554)"
sodipodi:linespacing="0%"
inkscape:label="#text4314"
id="TO_Flaps"
y="796.12726"
x="104.6523"
style="font-style:normal;font-weight:normal;font-size:11.15495205px;line-height:0%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
xml:space="preserve"><tspan
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.1831665px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:start;text-anchor:start;fill:#0dc04b;fill-opacity:1"
y="796.12726"
x="104.6523"
id="tspan4436"
sodipodi:role="line">FLAPS </tspan></text>
<text
xml:space="preserve"
style="font-style:normal;font-weight:normal;font-size:11.15495205px;line-height:0%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
x="104.6523"
y="833.30151"
id="TO_Config"
inkscape:label="#text4314"
sodipodi:linespacing="0%"
transform="scale(0.92957935,1.0757554)"><tspan
sodipodi:role="line"
id="tspan4440"
x="104.6523"
y="833.30151"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.1831665px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:start;text-anchor:start;fill:#0dc04b;fill-opacity:1">T.O CONFIG</tspan></text>
<g
inkscape:label="#g4487"
id="TO_Autobrake_B">
<text
xml:space="preserve"
style="font-style:normal;font-weight:normal;font-size:11.15495205px;line-height:0%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#179ab7;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
x="489.9281"
y="686.41925"
id="text4442"
inkscape:label="#text4314"
sodipodi:linespacing="0%"
transform="scale(0.92957935,1.0757554)"><tspan
sodipodi:role="line"
id="tspan4444"
x="489.9281"
y="686.41925"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.1831665px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:end;text-anchor:end;fill:#179ab7;fill-opacity:1">MAX</tspan></text>
<text
transform="scale(0.92957935,1.0757554)"
sodipodi:linespacing="0%"
inkscape:label="#text4314"
id="text4462"
y="686.41925"
x="403.6488"
style="font-style:normal;font-weight:normal;font-size:11.15495205px;line-height:0%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#179ab7;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
xml:space="preserve"><tspan
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.1831665px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:end;text-anchor:end;fill:#179ab7;fill-opacity:1"
y="686.41925"
x="403.6488"
id="tspan4465"
sodipodi:role="line">. . . . .</tspan></text>
</g>
<g
inkscape:label="#g4493"
id="TO_Signs_B">
<text
transform="scale(0.92957935,1.0757554)"
sodipodi:linespacing="0%"
inkscape:label="#text4314"
id="text4446"
y="722.50458"
x="489.9281"
style="font-style:normal;font-weight:normal;font-size:11.15495205px;line-height:0%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#179ab7;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
xml:space="preserve"><tspan
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.1831665px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:end;text-anchor:end;fill:#179ab7;fill-opacity:1"
y="722.50458"
x="489.9281"
id="tspan4448"
sodipodi:role="line"> ON</tspan></text>
<text
xml:space="preserve"
style="font-style:normal;font-weight:normal;font-size:11.15495205px;line-height:0%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#179ab7;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
x="424.27417"
y="722.86768"
id="text4471"
inkscape:label="#text4314"
sodipodi:linespacing="0%"
transform="scale(0.92957935,1.0757554)"
inkscape:transform-center-y="-46.367479"><tspan
sodipodi:role="line"
id="tspan4473"
x="424.27417"
y="722.86768"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.1831665px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:end;text-anchor:end;fill:#179ab7;fill-opacity:1">. . . . . . . . . .</tspan></text>
</g>
<g
inkscape:label="#g4499"
id="TO_Spoilers_B">
<text
xml:space="preserve"
style="font-style:normal;font-weight:normal;font-size:11.15495205px;line-height:0%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#179ab7;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
x="489.9281"
y="760.04193"
id="text4450"
inkscape:label="#text4314"
sodipodi:linespacing="0%"
transform="scale(0.92957935,1.0757554)"><tspan
sodipodi:role="line"
id="tspan4452"
x="489.9281"
y="760.04193"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.1831665px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:end;text-anchor:end;fill:#179ab7;fill-opacity:1">ARM</tspan></text>
<text
xml:space="preserve"
style="font-style:normal;font-weight:normal;font-size:11.15495205px;line-height:0%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#179ab7;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
x="403.6488"
y="760.04193"
id="text4475"
inkscape:label="#text4314"
sodipodi:linespacing="0%"
transform="scale(0.92957935,1.0757554)"><tspan
sodipodi:role="line"
id="tspan4477"
x="403.6488"
y="760.04193"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.1831665px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:end;text-anchor:end;fill:#179ab7;fill-opacity:1">. . . . . . . . .</tspan></text>
</g>
<g
inkscape:label="#g4505"
id="TO_Flaps_B">
<text
transform="scale(0.92957935,1.0757554)"
sodipodi:linespacing="0%"
inkscape:label="#text4314"
id="text4454"
y="796.12726"
x="489.9281"
style="font-style:normal;font-weight:normal;font-size:11.15495205px;line-height:0%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#179ab7;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
xml:space="preserve"><tspan
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.1831665px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:end;text-anchor:end;fill:#179ab7;fill-opacity:1"
y="796.12726"
x="489.9281"
id="tspan4456"
sodipodi:role="line">T.O</tspan></text>
<text
xml:space="preserve"
style="font-style:normal;font-weight:normal;font-size:11.15495205px;line-height:0%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#179ab7;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
x="424.27417"
y="796.49036"
id="text4479"
inkscape:label="#text4314"
sodipodi:linespacing="0%"
transform="scale(0.92957935,1.0757554)"><tspan
sodipodi:role="line"
id="tspan4481"
x="424.27417"
y="796.49036"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.1831665px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:end;text-anchor:end;fill:#179ab7;fill-opacity:1">. . . . . . . . . .</tspan></text>
</g>
<g
inkscape:label="#g4511"
id="TO_Config_B">
<text
xml:space="preserve"
style="font-style:normal;font-weight:normal;font-size:11.15495205px;line-height:0%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#179ab7;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
x="489.9281"
y="833.30151"
id="text4458"
inkscape:label="#text4314"
sodipodi:linespacing="0%"
transform="scale(0.92957935,1.0757554)"><tspan
sodipodi:role="line"
id="tspan4460"
x="489.9281"
y="833.30151"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.1831665px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:end;text-anchor:end;fill:#179ab7;fill-opacity:1">TEST</tspan></text>
<text
transform="scale(0.92957935,1.0757554)"
sodipodi:linespacing="0%"
inkscape:label="#text4314"
id="text4483"
y="833.66461"
x="383.02429"
style="font-style:normal;font-weight:normal;font-size:11.15495205px;line-height:0%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#179ab7;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
xml:space="preserve"><tspan
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.1831665px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:end;text-anchor:end;fill:#179ab7;fill-opacity:1"
y="833.66461"
x="383.02429"
id="tspan4485"
sodipodi:role="line">. . .</tspan></text>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 79 KiB

After

Width:  |  Height:  |  Size: 94 KiB

View file

@ -41,14 +41,14 @@
inkscape:window-height="1030"
id="namedview371"
showgrid="false"
inkscape:zoom="3.0622118"
inkscape:cx="1105.0255"
inkscape:cy="1220.4997"
inkscape:zoom="1.5311059"
inkscape:cx="247.80484"
inkscape:cy="355.57872"
inkscape:window-x="1592"
inkscape:window-y="-8"
inkscape:window-maximized="1"
inkscape:current-layer="svg2"
showguides="false"
showguides="true"
inkscape:snap-global="false">
<inkscape:grid
type="xygrid"
@ -213,34 +213,6 @@
x="384.25583"
id="tspan4435"
sodipodi:role="line">LBS</tspan></text>
<text
xml:space="preserve"
style="font-style:normal;font-weight:normal;font-size:11.15495205px;line-height:0%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
x="14.033532"
y="686.0564"
id="ECAML1"
inkscape:label="#text4314"
sodipodi:linespacing="0%"
transform="scale(0.92957935,1.0757554)"><tspan
sodipodi:role="line"
id="tspan4316"
x="14.033532"
y="686.0564"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.1831665px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:start;text-anchor:start;fill:#cecdce">LINE 1</tspan></text>
<text
transform="scale(0.92957935,1.0757554)"
sodipodi:linespacing="0%"
inkscape:label="#text4314"
id="ECAML2"
y="722.86761"
x="14.033532"
style="font-style:normal;font-weight:normal;font-size:11.15495205px;line-height:0%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
xml:space="preserve"><tspan
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.1831665px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:start;text-anchor:start;fill:#cecdce"
y="722.86761"
x="14.033532"
id="tspan4352"
sodipodi:role="line">LINE 2</tspan></text>
<text
transform="scale(0.92957935,1.0757554)"
sodipodi:linespacing="0%"
@ -866,90 +838,6 @@
d="m 220.39233,320.0382 42.77869,0"
style="fill:#001104;fill-opacity:0.32941176;stroke:#0dc04b;stroke-width:6;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
inkscape:transform-center-x="70.6625" />
<text
xml:space="preserve"
style="font-style:normal;font-weight:normal;font-size:11.15495205px;line-height:0%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
x="14.033532"
y="759.67896"
id="ECAML3"
inkscape:label="#text4314"
sodipodi:linespacing="0%"
transform="scale(0.92957935,1.0757554)"><tspan
sodipodi:role="line"
id="tspan4312"
x="14.033532"
y="759.67896"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.1831665px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:start;text-anchor:start;fill:#cecdce">LINE 3</tspan></text>
<text
transform="scale(0.92957935,1.0757554)"
sodipodi:linespacing="0%"
inkscape:label="#text4314"
id="ECAML4"
y="796.4903"
x="14.033532"
style="font-style:normal;font-weight:normal;font-size:11.15495205px;line-height:0%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
xml:space="preserve"><tspan
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.1831665px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:start;text-anchor:start;fill:#cecdce"
y="796.4903"
x="14.033532"
id="tspan4317"
sodipodi:role="line">LINE 4</tspan></text>
<text
xml:space="preserve"
style="font-style:normal;font-weight:normal;font-size:11.15495205px;line-height:0%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
x="14.033532"
y="833.30164"
id="ECAML5"
inkscape:label="#text4314"
sodipodi:linespacing="0%"
transform="scale(0.92957935,1.0757554)"><tspan
sodipodi:role="line"
id="tspan4321"
x="14.033532"
y="833.30164"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.1831665px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:start;text-anchor:start;fill:#cecdce">LINE 5</tspan></text>
<text
transform="scale(0.92957935,1.0757554)"
sodipodi:linespacing="0%"
inkscape:label="#text4314"
id="ECAML6"
y="870.11298"
x="14.033532"
style="font-style:normal;font-weight:normal;font-size:11.15495205px;line-height:0%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
xml:space="preserve"><tspan
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.1831665px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:start;text-anchor:start;fill:#cecdce"
y="870.11298"
x="14.033532"
id="tspan4325"
sodipodi:role="line">LINE 6</tspan></text>
<text
xml:space="preserve"
style="font-style:normal;font-weight:normal;font-size:11.15495205px;line-height:0%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
x="14.033532"
y="906.92432"
id="ECAML7"
inkscape:label="#text4314"
sodipodi:linespacing="0%"
transform="scale(0.92957935,1.0757554)"><tspan
sodipodi:role="line"
id="tspan4329"
x="14.033532"
y="906.92432"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.1831665px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:start;text-anchor:start;fill:#cecdce">LINE 7</tspan></text>
<text
transform="scale(0.92957935,1.0757554)"
sodipodi:linespacing="0%"
inkscape:label="#text4314"
id="ECAML8"
y="943.73566"
x="14.033532"
style="font-style:normal;font-weight:normal;font-size:11.15495205px;line-height:0%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
xml:space="preserve"><tspan
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.1831665px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:start;text-anchor:start;fill:#cecdce"
y="943.73566"
x="14.033532"
id="tspan4333"
sodipodi:role="line">LINE 8</tspan></text>
<text
id="text4339"
y="401.41238"
@ -1702,4 +1590,375 @@
x="720.09741"
id="tspan4434"
sodipodi:role="line">REV</tspan></text>
<g
id="ECAM_Left"
inkscape:label="#g4376">
<text
transform="scale(0.92957935,1.0757554)"
sodipodi:linespacing="0%"
inkscape:label="#text4314"
id="ECAML1"
y="686.0564"
x="14.033532"
style="font-style:normal;font-weight:normal;font-size:11.15495205px;line-height:0%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
xml:space="preserve"><tspan
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.1831665px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:start;text-anchor:start;fill:#cecdce"
y="686.0564"
x="14.033532"
id="tspan4316"
sodipodi:role="line">LINE 1</tspan></text>
<text
xml:space="preserve"
style="font-style:normal;font-weight:normal;font-size:11.15495205px;line-height:0%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
x="14.033532"
y="722.86761"
id="ECAML2"
inkscape:label="#text4314"
sodipodi:linespacing="0%"
transform="scale(0.92957935,1.0757554)"><tspan
sodipodi:role="line"
id="tspan4352"
x="14.033532"
y="722.86761"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.1831665px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:start;text-anchor:start;fill:#cecdce">LINE 2</tspan></text>
<text
transform="scale(0.92957935,1.0757554)"
sodipodi:linespacing="0%"
inkscape:label="#text4314"
id="ECAML3"
y="759.67896"
x="14.033532"
style="font-style:normal;font-weight:normal;font-size:11.15495205px;line-height:0%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
xml:space="preserve"><tspan
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.1831665px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:start;text-anchor:start;fill:#cecdce"
y="759.67896"
x="14.033532"
id="tspan4312"
sodipodi:role="line">LINE 3</tspan></text>
<text
xml:space="preserve"
style="font-style:normal;font-weight:normal;font-size:11.15495205px;line-height:0%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
x="14.033532"
y="796.4903"
id="ECAML4"
inkscape:label="#text4314"
sodipodi:linespacing="0%"
transform="scale(0.92957935,1.0757554)"><tspan
sodipodi:role="line"
id="tspan4317"
x="14.033532"
y="796.4903"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.1831665px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:start;text-anchor:start;fill:#cecdce">LINE 4</tspan></text>
<text
transform="scale(0.92957935,1.0757554)"
sodipodi:linespacing="0%"
inkscape:label="#text4314"
id="ECAML5"
y="833.30164"
x="14.033532"
style="font-style:normal;font-weight:normal;font-size:11.15495205px;line-height:0%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
xml:space="preserve"><tspan
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.1831665px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:start;text-anchor:start;fill:#cecdce"
y="833.30164"
x="14.033532"
id="tspan4321"
sodipodi:role="line">LINE 5</tspan></text>
<text
xml:space="preserve"
style="font-style:normal;font-weight:normal;font-size:11.15495205px;line-height:0%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
x="14.033532"
y="870.11298"
id="ECAML6"
inkscape:label="#text4314"
sodipodi:linespacing="0%"
transform="scale(0.92957935,1.0757554)"><tspan
sodipodi:role="line"
id="tspan4325"
x="14.033532"
y="870.11298"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.1831665px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:start;text-anchor:start;fill:#cecdce">LINE 6</tspan></text>
<text
transform="scale(0.92957935,1.0757554)"
sodipodi:linespacing="0%"
inkscape:label="#text4314"
id="ECAML7"
y="906.92432"
x="14.033532"
style="font-style:normal;font-weight:normal;font-size:11.15495205px;line-height:0%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
xml:space="preserve"><tspan
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.1831665px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:start;text-anchor:start;fill:#cecdce"
y="906.92432"
x="14.033532"
id="tspan4329"
sodipodi:role="line">LINE 7</tspan></text>
<text
xml:space="preserve"
style="font-style:normal;font-weight:normal;font-size:11.15495205px;line-height:0%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
x="14.033532"
y="943.73566"
id="ECAML8"
inkscape:label="#text4314"
sodipodi:linespacing="0%"
transform="scale(0.92957935,1.0757554)"><tspan
sodipodi:role="line"
id="tspan4333"
x="14.033532"
y="943.73566"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.1831665px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:start;text-anchor:start;fill:#cecdce">LINE 8</tspan></text>
</g>
<g
id="TO_Memo"
inkscape:label="#g4517">
<text
transform="scale(0.92957935,1.0757554)"
sodipodi:linespacing="0%"
inkscape:label="#text4314"
id="text4412"
y="686.0564"
x="14.033532"
style="font-style:normal;font-weight:normal;font-size:11.15495205px;line-height:0%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
xml:space="preserve"><tspan
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.1831665px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:start;text-anchor:start;fill:#0dc04b;fill-opacity:1"
y="686.0564"
x="14.033532"
id="tspan4414"
sodipodi:role="line">T.O</tspan></text>
<path
style="fill:none;stroke:#0dc04b;stroke-width:2.4000001;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="m 13.8216,741.99564 77.932201,0"
id="path4556"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cc" />
<text
xml:space="preserve"
style="font-style:normal;font-weight:normal;font-size:11.15495205px;line-height:0%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
x="104.6523"
y="686.0564"
id="TO_Autobrake"
inkscape:label="#text4314"
sodipodi:linespacing="0%"
transform="scale(0.92957935,1.0757554)"><tspan
sodipodi:role="line"
id="tspan4421"
x="104.6523"
y="686.0564"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.1831665px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:start;text-anchor:start;fill:#0dc04b;fill-opacity:1">AUTO BRK</tspan></text>
<text
transform="scale(0.92957935,1.0757554)"
sodipodi:linespacing="0%"
inkscape:label="#text4314"
id="TO_Signs"
y="722.50458"
x="104.6523"
style="font-style:normal;font-weight:normal;font-size:11.15495205px;line-height:0%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
xml:space="preserve"><tspan
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.1831665px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:start;text-anchor:start;fill:#0dc04b;fill-opacity:1"
y="722.50458"
x="104.6523"
id="tspan4425"
sodipodi:role="line">SIGNS</tspan></text>
<text
xml:space="preserve"
style="font-style:normal;font-weight:normal;font-size:11.15495205px;line-height:0%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
x="104.6523"
y="759.67883"
id="TO_Spoilers"
inkscape:label="#text4314"
sodipodi:linespacing="0%"
transform="scale(0.92957935,1.0757554)"><tspan
sodipodi:role="line"
id="tspan4429"
x="104.6523"
y="759.67883"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.1831665px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:start;text-anchor:start;fill:#0dc04b;fill-opacity:1">SPLRS</tspan></text>
<text
transform="scale(0.92957935,1.0757554)"
sodipodi:linespacing="0%"
inkscape:label="#text4314"
id="TO_Flaps"
y="796.12726"
x="104.6523"
style="font-style:normal;font-weight:normal;font-size:11.15495205px;line-height:0%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
xml:space="preserve"><tspan
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.1831665px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:start;text-anchor:start;fill:#0dc04b;fill-opacity:1"
y="796.12726"
x="104.6523"
id="tspan4436"
sodipodi:role="line">FLAPS </tspan></text>
<text
xml:space="preserve"
style="font-style:normal;font-weight:normal;font-size:11.15495205px;line-height:0%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#0dc04b;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
x="104.6523"
y="833.30151"
id="TO_Config"
inkscape:label="#text4314"
sodipodi:linespacing="0%"
transform="scale(0.92957935,1.0757554)"><tspan
sodipodi:role="line"
id="tspan4440"
x="104.6523"
y="833.30151"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.1831665px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:start;text-anchor:start;fill:#0dc04b;fill-opacity:1">T.O CONFIG</tspan></text>
<g
inkscape:label="#g4487"
id="TO_Autobrake_B">
<text
xml:space="preserve"
style="font-style:normal;font-weight:normal;font-size:11.15495205px;line-height:0%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#179ab7;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
x="489.9281"
y="686.41925"
id="text4442"
inkscape:label="#text4314"
sodipodi:linespacing="0%"
transform="scale(0.92957935,1.0757554)"><tspan
sodipodi:role="line"
id="tspan4444"
x="489.9281"
y="686.41925"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.1831665px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:end;text-anchor:end;fill:#179ab7;fill-opacity:1">MAX</tspan></text>
<text
transform="scale(0.92957935,1.0757554)"
sodipodi:linespacing="0%"
inkscape:label="#text4314"
id="text4462"
y="686.41925"
x="403.6488"
style="font-style:normal;font-weight:normal;font-size:11.15495205px;line-height:0%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#179ab7;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
xml:space="preserve"><tspan
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.1831665px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:end;text-anchor:end;fill:#179ab7;fill-opacity:1"
y="686.41925"
x="403.6488"
id="tspan4465"
sodipodi:role="line">. . . . .</tspan></text>
</g>
<g
inkscape:label="#g4493"
id="TO_Signs_B">
<text
transform="scale(0.92957935,1.0757554)"
sodipodi:linespacing="0%"
inkscape:label="#text4314"
id="text4446"
y="722.50458"
x="489.9281"
style="font-style:normal;font-weight:normal;font-size:11.15495205px;line-height:0%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#179ab7;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
xml:space="preserve"><tspan
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.1831665px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:end;text-anchor:end;fill:#179ab7;fill-opacity:1"
y="722.50458"
x="489.9281"
id="tspan4448"
sodipodi:role="line"> ON</tspan></text>
<text
xml:space="preserve"
style="font-style:normal;font-weight:normal;font-size:11.15495205px;line-height:0%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#179ab7;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
x="424.27417"
y="722.86768"
id="text4471"
inkscape:label="#text4314"
sodipodi:linespacing="0%"
transform="scale(0.92957935,1.0757554)"
inkscape:transform-center-y="-46.367479"><tspan
sodipodi:role="line"
id="tspan4473"
x="424.27417"
y="722.86768"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.1831665px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:end;text-anchor:end;fill:#179ab7;fill-opacity:1">. . . . . . . . . .</tspan></text>
</g>
<g
inkscape:label="#g4499"
id="TO_Spoilers_B">
<text
xml:space="preserve"
style="font-style:normal;font-weight:normal;font-size:11.15495205px;line-height:0%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#179ab7;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
x="489.9281"
y="760.04193"
id="text4450"
inkscape:label="#text4314"
sodipodi:linespacing="0%"
transform="scale(0.92957935,1.0757554)"><tspan
sodipodi:role="line"
id="tspan4452"
x="489.9281"
y="760.04193"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.1831665px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:end;text-anchor:end;fill:#179ab7;fill-opacity:1">ARM</tspan></text>
<text
xml:space="preserve"
style="font-style:normal;font-weight:normal;font-size:11.15495205px;line-height:0%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#179ab7;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
x="403.6488"
y="760.04193"
id="text4475"
inkscape:label="#text4314"
sodipodi:linespacing="0%"
transform="scale(0.92957935,1.0757554)"><tspan
sodipodi:role="line"
id="tspan4477"
x="403.6488"
y="760.04193"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.1831665px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:end;text-anchor:end;fill:#179ab7;fill-opacity:1">. . . . . . . . .</tspan></text>
</g>
<g
inkscape:label="#g4505"
id="TO_Flaps_B">
<text
transform="scale(0.92957935,1.0757554)"
sodipodi:linespacing="0%"
inkscape:label="#text4314"
id="text4454"
y="796.12726"
x="489.9281"
style="font-style:normal;font-weight:normal;font-size:11.15495205px;line-height:0%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#179ab7;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
xml:space="preserve"><tspan
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.1831665px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:end;text-anchor:end;fill:#179ab7;fill-opacity:1"
y="796.12726"
x="489.9281"
id="tspan4456"
sodipodi:role="line">T.O</tspan></text>
<text
xml:space="preserve"
style="font-style:normal;font-weight:normal;font-size:11.15495205px;line-height:0%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#179ab7;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
x="424.27417"
y="796.49036"
id="text4479"
inkscape:label="#text4314"
sodipodi:linespacing="0%"
transform="scale(0.92957935,1.0757554)"><tspan
sodipodi:role="line"
id="tspan4481"
x="424.27417"
y="796.49036"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.1831665px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:end;text-anchor:end;fill:#179ab7;fill-opacity:1">. . . . . . . . . .</tspan></text>
</g>
<g
inkscape:label="#g4511"
id="TO_Config_B">
<text
xml:space="preserve"
style="font-style:normal;font-weight:normal;font-size:11.15495205px;line-height:0%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#179ab7;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
x="489.9281"
y="833.30151"
id="text4458"
inkscape:label="#text4314"
sodipodi:linespacing="0%"
transform="scale(0.92957935,1.0757554)"><tspan
sodipodi:role="line"
id="tspan4460"
x="489.9281"
y="833.30151"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.1831665px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:end;text-anchor:end;fill:#179ab7;fill-opacity:1">TEST</tspan></text>
<text
transform="scale(0.92957935,1.0757554)"
sodipodi:linespacing="0%"
inkscape:label="#text4314"
id="text4483"
y="833.66461"
x="383.02429"
style="font-style:normal;font-weight:normal;font-size:11.15495205px;line-height:0%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#179ab7;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
xml:space="preserve"><tspan
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.1831665px;line-height:1.25;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:end;text-anchor:end;fill:#179ab7;fill-opacity:1"
y="833.66461"
x="383.02429"
id="tspan4485"
sodipodi:role="line">. . .</tspan></text>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 102 KiB

After

Width:  |  Height:  |  Size: 118 KiB

View file

@ -93,7 +93,7 @@ var ADIRS = {
if (ac1 >= 110 or ac2 >= 110) {
pwr_src = "AC";
} else if (batt1_amps >= 120 or batt2_amps >= 120) {
} else if ((batt1_amps >= 120 or batt2_amps >= 120) and (getprop("/controls/adirs/ir[0]/knob") != 0 or getprop("/controls/adirs/ir[1]/knob") != 0 or getprop("/controls/adirs/ir[2]/knob") != 0)) {
pwr_src = "BATT";
} else {
pwr_src = "XX";

View file

@ -5,194 +5,30 @@
# Copyright (c) Joshua Davidson (it0uchpods) #
##############################################
# It no works yet, so please don't touch a thing until it works. Thanks -JD
##################
# Init Functions #
##################
setprop("/ECAM/left-msg", "NONE");
setprop("/position/gear-agl-ft", 0);
setprop("/ECAM/noupdate", 0);
setprop("/ECAM/donotrevert", 0);
setprop("/ECAM/Lower/page", "eng");
setprop("/ECAM/Lower/page", "fctl");
# w = White, b = Blue, g = Green, a = Amber, r = Red
###########################################################
# w = White, b = Blue, g = Green, a = Amber, r = Red #
###########################################################
var ECAMinit = func {
if (getprop("/options/enable-ecam-actions") == 1) {
ECAMloop.start();
setprop("/ECAM/phase-1-inhibit", 0);
setprop("/ECAM/phase-2-inhibit", 0);
setprop("/ECAM/phase-3-inhibit", 0);
setprop("/ECAM/phase-4-inhibit", 0);
setprop("/ECAM/phase-5-inhibit", 0);
setprop("/ECAM/phase-6-inhibit", 0);
setprop("/ECAM/phase-7-inhibit", 0);
setprop("/ECAM/phase-8-inhibit", 0);
setprop("/ECAM/phase-9-inhibit", 0);
setprop("/ECAM/phase-10-inhibit", 0);
var stateL = getprop("/engines/engine[0]/state");
var stateR = getprop("/engines/engine[1]/state");
var thrustL = getprop("/systems/thrust/state1");
var thrustR = getprop("/systems/thrust/state2");
var elec = getprop("/systems/electrical/on");
var speed = getprop("/velocities/airspeed-kt");
var wowL = getprop("/gear/gear[1]/wow");
var altitude = getprop("/position/gear-agl-ft");
var phase1inhibit = getprop("/ECAM/phase-1-inhibit");
var phase2inhibit = getprop("/ECAM/phase-2-inhibit");
var phase3inhibit = getprop("/ECAM/phase-3-inhibit");
var phase4inhibit = getprop("/ECAM/phase-4-inhibit");
var phase5inhibit = getprop("/ECAM/phase-5-inhibit");
var phase6inhibit = getprop("/ECAM/phase-6-inhibit");
var phase7inhibit = getprop("/ECAM/phase-7-inhibit");
var phase8inhibit = getprop("/ECAM/phase-8-inhibit");
var phase9inhibit = getprop("/ECAM/phase-9-inhibit");
var phase10inhibit = getprop("/ECAM/phase-10-inhibit");
}
}
# setlistener("/ECAM/phase-10-inhibit", func {
# phase10inhibit = getprop("/ECAM/phase-10-inhibit");
# if (phase10inhibit) {
# settimer(func {
# setprop("/ECAM/phase-10-inhibit", 0);
# }, 300);
# }
#});
var MSGclr = func {
setprop("/ECAM/ecam-checklist-active", 0);
setprop("/ECAM/left-msg", "NONE");
setprop("/ECAM/msg/line1", "");
setprop("/ECAM/msg/line2", "");
setprop("/ECAM/msg/line3", "");
setprop("/ECAM/msg/line4", "");
setprop("/ECAM/msg/line5", "");
setprop("/ECAM/msg/line6", "");
setprop("/ECAM/msg/line7", "");
setprop("/ECAM/msg/line8", "");
setprop("/ECAM/msg/line1c", "w");
setprop("/ECAM/msg/line2c", "w");
setprop("/ECAM/msg/line3c", "w");
setprop("/ECAM/msg/line4c", "w");
setprop("/ECAM/msg/line5c", "w");
setprop("/ECAM/msg/line6c", "w");
setprop("/ECAM/msg/line7c", "w");
setprop("/ECAM/msg/line8c", "w");
}
MSGclr();
var ECAMloop = maketimer(0.2, func {
stateL = getprop("/engines/engine[0]/state");
stateR = getprop("/engines/engine[1]/state");
thrustL = getprop("/systems/thrust/state1");
thrustR = getprop("/systems/thrust/state2");
elec = getprop("/systems/electrical/on");
speed = getprop("/velocities/airspeed-kt");
wowL = getprop("/gear/gear[1]/wow");
altitude = getprop("/position/gear-agl-ft");
phase1inhibit = getprop("/ECAM/phase-1-inhibit");
phase2inhibit = getprop("/ECAM/phase-2-inhibit");
phase3inhibit = getprop("/ECAM/phase-3-inhibit");
phase4inhibit = getprop("/ECAM/phase-4-inhibit");
phase5inhibit = getprop("/ECAM/phase-5-inhibit");
phase6inhibit = getprop("/ECAM/phase-6-inhibit");
phase7inhibit = getprop("/ECAM/phase-7-inhibit");
phase8inhibit = getprop("/ECAM/phase-8-inhibit");
phase9inhibit = getprop("/ECAM/phase-9-inhibit");
phase10inhibit = getprop("/ECAM/phase-10-inhibit");
var noUpdate = getprop("/ECAM/noupdate");
var doNotRevert = getprop("/ECAM/donotrevert");
if (getprop("/FMGC/status/phase") == 0 and getprop("/engines/engine[0]/state") == 3 and getprop("/engines/engine[1]/state") == 3) {
setprop("/ECAM/left-msg", "TO-MEMO");
} else if (!doNotRevert) {
var ECAM = {
init: func() {
setprop("/ECAM/engine-start-time", 0);
setprop("/ECAM/engine-start-time-switch", 0);
setprop("/ECAM/to-memo-enable", 1);
setprop("/ECAM/to-config", 0);
var stateL = getprop("/engines/engine[0]/state");
var stateR = getprop("/engines/engine[1]/state");
var thrustL = getprop("/systems/thrust/state1");
var thrustR = getprop("/systems/thrust/state2");
var elec = getprop("/systems/electrical/on");
var speed = getprop("/velocities/airspeed-kt");
var wow = getprop("/gear/gear[0]/wow");
var altitude = getprop("/position/gear-agl-ft");
},
MSGclr: func() {
setprop("/ECAM/ecam-checklist-active", 0);
setprop("/ECAM/left-msg", "NONE");
}
var leftMSG = getprop("/ECAM/left-msg");
if (leftMSG == "TO-MEMO" and !noUpdate) {
setprop("/ECAM/msg/line1", " AUTO BRK");
setprop("/ECAM/msg/line2", " SIGNS");
setprop("/ECAM/msg/line3", " CABIN");
setprop("/ECAM/msg/line4", " SPLRS");
setprop("/ECAM/msg/line5", " FLAPS");
setprop("/ECAM/msg/line6", "");
setprop("/ECAM/msg/line7", "");
setprop("/ECAM/msg/line8", "");
setprop("/ECAM/msg/line1c", "g");
setprop("/ECAM/msg/line2c", "g");
setprop("/ECAM/msg/line3c", "g");
setprop("/ECAM/msg/line4c", "g");
setprop("/ECAM/msg/line5c", "g");
setprop("/ECAM/msg/line6c", "g");
setprop("/ECAM/msg/line7c", "g");
setprop("/ECAM/msg/line8c", "g");
}
###########
# Inhibit #
###########
if (elec == 1 and !phase1inhibit and !phase2inhibit and !phase3inhibit and !phase4inhibit and !phase5inhibit and !phase6inhibit and !phase7inhibit and !phase8inhibit and !phase9inhibit and !phase10inhibit) {
setprop("/ECAM/phase-1-inhibit", 1);
} else if (stateL == 3 or stateR == 3 and !phase2inhibit and !phase3inhibit and !phase4inhibit and !phase5inhibit and !phase6inhibit and !phase7inhibit and !phase8inhibit and !phase9inhibit and !phase10inhibit) {
setprop("/ECAM/phase-1-inhibit", 0);
setprop("/ECAM/phase-2-inhibit", 1);
} else if (thrustL == "FLX" or thrustL == "TOGA" or thrustR == "FLX" or thrustR == "TOGA" and speed < 80 and !phase1inhibit and !phase3inhibit and !phase4inhibit and !phase5inhibit and !phase6inhibit and !phase7inhibit and !phase8inhibit and !phase9inhibit and !phase10inhibit) {
setprop("/ECAM/phase-2-inhibit", 0);
setprop("/ECAM/phase-3-inhibit", 1);
} else if (thrustL == "FLX" or thrustL == "TOGA" or thrustR == "FLX" or thrustR == "TOGA" and speed > 80 and wowL and !phase1inhibit and !phase2inhibit and !phase4inhibit and !phase5inhibit and !phase6inhibit and !phase7inhibit and !phase8inhibit and !phase9inhibit and !phase10inhibit) {
setprop("/ECAM/phase-3-inhibit", 0);
setprop("/ECAM/phase-4-inhibit", 1);
} else if (speed > 80 and !wowL and altitude < 1501 and !phase1inhibit and !phase2inhibit and !phase3inhibit and !phase5inhibit and !phase6inhibit and !phase7inhibit and !phase8inhibit and !phase9inhibit and !phase10inhibit) {
setprop("/ECAM/phase-4-inhibit", 0);
setprop("/ECAM/phase-5-inhibit", 1);
} else if (speed > 80 and !wowL and altitude > 1501 and !phase1inhibit and !phase2inhibit and !phase3inhibit and !phase4inhibit and !phase6inhibit and !phase7inhibit and !phase8inhibit and !phase9inhibit and !phase10inhibit) {
setprop("/ECAM/phase-5-inhibit", 0);
setprop("/ECAM/phase-6-inhibit", 1);
} else if (speed > 80 and !wowL and altitude < 801 and !phase1inhibit and !phase2inhibit and !phase3inhibit and !phase4inhibit and !phase5inhibit and !phase7inhibit and !phase8inhibit and !phase9inhibit and !phase10inhibit) {
setprop("/ECAM/phase-6-inhibit", 0);
setprop("/ECAM/phase-7-inhibit", 1);
} else if (speed > 80 and wowL and !phase1inhibit and !phase2inhibit and !phase3inhibit and !phase4inhibit and !phase5inhibit and !phase6inhibit and !phase8inhibit and !phase9inhibit and !phase10inhibit) {
setprop("/ECAM/phase-7-inhibit", 0);
setprop("/ECAM/phase-8-inhibit", 1);
} else if (speed < 80 and wowL and !phase1inhibit and !phase2inhibit and !phase3inhibit and !phase4inhibit and !phase5inhibit and !phase6inhibit and !phase7inhibit and !phase9inhibit and !phase10inhibit) {
setprop("/ECAM/phase-8-inhibit", 0);
setprop("/ECAM/phase-9-inhibit", 1);
} else if (stateL == 0 and stateR == 0 and !phase1inhibit and !phase2inhibit and !phase3inhibit and !phase4inhibit and !phase5inhibit and !phase6inhibit and !phase7inhibit and !phase8inhibit and !phase10inhibit) {
setprop("/ECAM/phase-9-inhibit", 0);
setprop("/ECAM/phase-10-inhibit", 1);
}
############
# Air Cond #
############
if (getprop("/systems/failures/pack1") == 1 and getprop("/systems/failures/pack2") == 0 and getprop("/controls/pneumatic/switches/pack1") == 1 and !phase3inhibit and !phase4inhibit and !phase5inhibit and !phase7inhibit and !phase8inhibit) {
setprop("/ECAM/msg/line1", "AIR PACK 1 FAULT");
setprop("/ECAM/msg/line2", " - PACK 1: OFF");
setprop("/ECAM/msg/line3", "");
setprop("/ECAM/msg/line4", "");
setprop("/ECAM/msg/line5", "");
setprop("/ECAM/msg/line6", "");
setprop("/ECAM/msg/line7", "");
setprop("/ECAM/msg/line8", "");
setprop("/ECAM/msg/line1c", "a");
setprop("/ECAM/msg/line2c", "b");
setprop("/ECAM/msg/line3c", "g");
setprop("/ECAM/msg/line4c", "g");
setprop("/ECAM/msg/line5c", "g");
setprop("/ECAM/msg/line6c", "g");
setprop("/ECAM/msg/line7c", "g");
setprop("/ECAM/msg/line8c", "g");
setprop("/ECAM/left-msg", "MSG");
} else if (getprop("/systems/failures/pack1") == 1 and getprop("/systems/failures/pack2") == 0 and getprop("/controls/pneumatic/switches/pack1") == 0 and !phase3inhibit and !phase4inhibit and !phase5inhibit and !phase7inhibit and !phase8inhibit) {
setprop("/ECAM/msg/line1", "AIR PACK 1 FAULT");
setprop("/ECAM/msg/line1", "");
setprop("/ECAM/msg/line2", "");
setprop("/ECAM/msg/line3", "");
setprop("/ECAM/msg/line4", "");
@ -200,59 +36,60 @@ var ECAMloop = maketimer(0.2, func {
setprop("/ECAM/msg/line6", "");
setprop("/ECAM/msg/line7", "");
setprop("/ECAM/msg/line8", "");
setprop("/ECAM/msg/line1c", "a");
setprop("/ECAM/msg/line2c", "g");
setprop("/ECAM/msg/line3c", "g");
setprop("/ECAM/msg/line4c", "g");
setprop("/ECAM/msg/line5c", "g");
setprop("/ECAM/msg/line6c", "g");
setprop("/ECAM/msg/line7c", "g");
setprop("/ECAM/msg/line8c", "g");
setprop("/ECAM/left-msg", "MSG");
} else {
# MSGclr();
}
if (getprop("/systems/failures/pack1") == 0 and getprop("/systems/failures/pack2") == 1 and getprop("/controls/pneumatic/switches/pack2") == 1 and !phase3inhibit and !phase4inhibit and !phase5inhibit and !phase7inhibit and !phase8inhibit) {
setprop("/ECAM/msg/line1", "AIR PACK 2 FAULT");
setprop("/ECAM/msg/line2", " - PACK 2: OFF");
setprop("/ECAM/msg/line3", "");
setprop("/ECAM/msg/line4", "");
setprop("/ECAM/msg/line5", "");
setprop("/ECAM/msg/line6", "");
setprop("/ECAM/msg/line7", "");
setprop("/ECAM/msg/line8", "");
setprop("/ECAM/msg/line1c", "a");
setprop("/ECAM/msg/line2c", "b");
setprop("/ECAM/msg/line3c", "g");
setprop("/ECAM/msg/line4c", "g");
setprop("/ECAM/msg/line5c", "g");
setprop("/ECAM/msg/line6c", "g");
setprop("/ECAM/msg/line7c", "g");
setprop("/ECAM/msg/line8c", "g");
setprop("/ECAM/left-msg", "MSG");
} else if (getprop("/systems/failures/pack1") == 0 and getprop("/systems/failures/pack2") == 1 and getprop("/controls/pneumatic/switches/pack2") == 0 and !phase3inhibit and !phase4inhibit and !phase5inhibit and !phase7inhibit and !phase8inhibit) {
setprop("/ECAM/msg/line1", "AIR PACK 2 FAULT");
setprop("/ECAM/msg/line2", "");
setprop("/ECAM/msg/line3", "");
setprop("/ECAM/msg/line4", "");
setprop("/ECAM/msg/line5", "");
setprop("/ECAM/msg/line6", "");
setprop("/ECAM/msg/line7", "");
setprop("/ECAM/msg/line8", "");
setprop("/ECAM/msg/line1c", "a");
setprop("/ECAM/msg/line2c", "g");
setprop("/ECAM/msg/line3c", "g");
setprop("/ECAM/msg/line4c", "g");
setprop("/ECAM/msg/line5c", "g");
setprop("/ECAM/msg/line6c", "g");
setprop("/ECAM/msg/line7c", "g");
setprop("/ECAM/msg/line8c", "g");
setprop("/ECAM/left-msg", "MSG");
} else {
# MSGclr();
}
});
setprop("/ECAM/msg/line1c", "w");
setprop("/ECAM/msg/line2c", "w");
setprop("/ECAM/msg/line3c", "w");
setprop("/ECAM/msg/line4c", "w");
setprop("/ECAM/msg/line5c", "w");
setprop("/ECAM/msg/line6c", "w");
setprop("/ECAM/msg/line7c", "w");
setprop("/ECAM/msg/line8c", "w");
},
loop: func() {
stateL = getprop("/engines/engine[0]/state");
stateR = getprop("/engines/engine[1]/state");
thrustL = getprop("/systems/thrust/state1");
thrustR = getprop("/systems/thrust/state2");
elec = getprop("/systems/electrical/on");
speed = getprop("/velocities/airspeed-kt");
wow = getprop("/gear/gear[1]/wow");
if (stateL == 3 and stateR == 3 and wow == 1) {
if (getprop("/ECAM/engine-start-time-switch") != 1) {
setprop("/ECAM/engine-start-time", getprop("/sim/time/elapsed-sec"));
setprop("/ECAM/engine-start-time-switch", 1);
}
} else if (wow == 1) {
if (getprop("/ECAM/engine-start-time-switch") != 0) {
setprop("/ECAM/engine-start-time-switch", 0);
}
}
if (wow == 0) {
setprop("/ECAM/to-memo-enable", 0);
} else if ((stateL != 3 or stateR != 3) and wow == 1) {
setprop("/ECAM/to-memo-enable", 1);
}
if (getprop("/FMGC/status/phase") == 0 and stateL == 3 and stateR == 3 and getprop("/ECAM/engine-start-time") + 120 < getprop("/sim/time/elapsed-sec") and getprop("/ECAM/to-memo-enable") == 1 and wow == 1) {
setprop("/ECAM/left-msg", "TO-MEMO");
} else {
setprop("/ECAM/left-msg", "NONE");
}
if (getprop("/controls/autobrake/mode") == 3 and getprop("/controls/switches/no-smoking-sign") == 1 and getprop("/controls/switches/seatbelt-sign") == 1 and getprop("/controls/flight/speedbrake-arm") == 1 and getprop("/controls/flight/flap-pos") > 0
and getprop("/controls/flight/flap-pos") < 5) {
# Do nothing
} else {
setprop("/ECAM/to-config", 0);
}
},
toConfig: func() {
if (getprop("/controls/autobrake/mode") == 3 and getprop("/controls/switches/no-smoking-sign") == 1 and getprop("/controls/switches/seatbelt-sign") == 1 and getprop("/controls/flight/speedbrake-arm") == 1 and getprop("/controls/flight/flap-pos") > 0
and getprop("/controls/flight/flap-pos") < 5) {
setprop("/ECAM/to-config", 1);
}
},
};
ECAM.MSGclr();

View file

@ -104,12 +104,12 @@ setlistener("/it-autoflight/input/ap1", func {
var ac_ess = getprop("/systems/electrical/bus/ac-ess");
var law = getprop("/it-fbw/law");
if (apmas == 0) {
fmabox();
setprop("/it-autoflight/output/ap1", 0);
if (getprop("/it-autoflight/sound/enableapoffsound") == 1) {
setprop("/it-autoflight/sound/apoffsound", 1);
setprop("/it-autoflight/sound/enableapoffsound", 0);
}
fmabox();
updateTimers();
} else if (apmas == 1 and ac_ess >= 110 and law == 0) {
if ((getprop("/gear/gear[1]/wow") == 0) and (getprop("/gear/gear[2]/wow") == 0)) {
@ -123,10 +123,10 @@ setlistener("/it-autoflight/input/ap1", func {
setprop("/it-autoflight/input/vert", 5);
}
}
fmabox();
setprop("/it-autoflight/output/ap1", 1);
setprop("/it-autoflight/sound/enableapoffsound", 1);
setprop("/it-autoflight/sound/apoffsound", 0);
fmabox();
}
}
});
@ -137,12 +137,12 @@ setlistener("/it-autoflight/input/ap2", func {
var ac_ess = getprop("/systems/electrical/bus/ac-ess");
var law = getprop("/it-fbw/law");
if (apmas == 0) {
fmabox();
setprop("/it-autoflight/output/ap2", 0);
if (getprop("/it-autoflight/sound/enableapoffsound2") == 1) {
setprop("/it-autoflight/sound/apoffsound2", 1);
setprop("/it-autoflight/sound/enableapoffsound2", 0);
}
fmabox();
updateTimers();
} else if (apmas == 1 and ac_ess >= 110 and law == 0) {
if ((getprop("/gear/gear[1]/wow") == 0) and (getprop("/gear/gear[2]/wow") == 0)) {
@ -156,10 +156,10 @@ setlistener("/it-autoflight/input/ap2", func {
setprop("/it-autoflight/input/vert", 5);
}
}
fmabox();
setprop("/it-autoflight/output/ap2", 1);
setprop("/it-autoflight/sound/enableapoffsound2", 1);
setprop("/it-autoflight/sound/apoffsound2", 0);
fmabox();
}
}
});
@ -179,12 +179,12 @@ setlistener("/it-autoflight/input/athr", func {
setlistener("/it-autoflight/input/fd1", func {
var fdmas = getprop("/it-autoflight/input/fd1");
if (fdmas == 0) {
fmabox();
setprop("/it-autoflight/output/fd1", 0);
fmabox();
updateTimers();
} else if (fdmas == 1) {
fmabox();
setprop("/it-autoflight/output/fd1", 1);
fmabox();
}
});
@ -192,12 +192,12 @@ setlistener("/it-autoflight/input/fd1", func {
setlistener("/it-autoflight/input/fd2", func {
var fdmas = getprop("/it-autoflight/input/fd2");
if (fdmas == 0) {
fmabox();
setprop("/it-autoflight/output/fd2", 0);
fmabox();
updateTimers();
} else if (fdmas == 1) {
fmabox();
setprop("/it-autoflight/output/fd2", 1);
fmabox();
}
});
@ -208,23 +208,33 @@ var fmabox = func {
var fd1 = getprop("/it-autoflight/output/fd1");
var fd2 = getprop("/it-autoflight/output/fd2");
if (!ap1 and !ap2 and !fd1 and !fd2) {
setprop("/it-autoflight/input/lat", 9);
setprop("/it-autoflight/input/vert", 9);
setprop("/it-autoflight/output/fma-pwr", 0);
} else {
setprop("/it-autoflight/output/fma-pwr", 1);
setprop("/it-autoflight/input/lat", 3);
if (getprop("/it-autoflight/custom/trk-fpa") == 0) {
setprop("/it-autoflight/input/vert", 1);
} else if (getprop("/it-autoflight/custom/trk-fpa") == 1) {
setprop("/it-autoflight/input/vert", 5);
}
setprop("/it-autoflight/output/fma-pwr", 0);
} else {
setprop("/it-autoflight/input/vs", math.round(getprop("/it-autoflight/internal/vert-speed-fpm"), 100));
setprop("/it-autoflight/input/fpa", math.round(getprop("/it-autoflight/internal/fpa"), 0.1));
setprop("/it-autoflight/output/fma-pwr", 1);
}
}
# Master Lateral
setlistener("/it-autoflight/input/lat", func {
if ((getprop("/gear/gear[1]/wow") == 0) and (getprop("/gear/gear[2]/wow") == 0)) {
var ap1 = getprop("/it-autoflight/output/ap1");
var ap2 = getprop("/it-autoflight/output/ap2");
var fd1 = getprop("/it-autoflight/output/fd1");
var fd2 = getprop("/it-autoflight/output/fd2");
if (getprop("/gear/gear[1]/wow") == 0 and getprop("/gear/gear[2]/wow") == 0 and (ap1 or ap2 or fd1 or fd2)) {
setprop("/it-autoflight/input/lat-arm", 0);
lateral();
} else if (getprop("/gear/gear[1]/wow") == 0 and getprop("/gear/gear[2]/wow") == 0 and !ap1 and !ap2 and !fd1 and !fd2) {
setprop("/it-autoflight/input/lat", 9);
setprop("/it-autoflight/input/lat-arm", 0);
lateral();
} else {
@ -321,7 +331,14 @@ var lat_arm = func {
# Master Vertical
setlistener("/it-autoflight/input/vert", func {
if ((getprop("/gear/gear[1]/wow") == 0) and (getprop("/gear/gear[2]/wow") == 0)) {
var ap1 = getprop("/it-autoflight/output/ap1");
var ap2 = getprop("/it-autoflight/output/ap2");
var fd1 = getprop("/it-autoflight/output/fd1");
var fd2 = getprop("/it-autoflight/output/fd2");
if (getprop("/gear/gear[1]/wow") == 0 and getprop("/gear/gear[2]/wow") == 0 and (ap1 or ap2 or fd1 or fd2)) {
vertical();
} else if (getprop("/gear/gear[1]/wow") == 0 and getprop("/gear/gear[2]/wow") == 0 and !ap1 and !ap2 and !fd1 and !fd2) {
setprop("/it-autoflight/input/vert", 9);
vertical();
}
});

View file

@ -11,7 +11,6 @@
setprop("/FMGC/internal/maxspeed", 0);
setprop("/FMGC/internal/minspeed", 0);
setprop("/FMGC/internal/alpha-prot-speed", 0);
setprop("/position/gear-agl-ft", 0);
setprop("/FMGC/internal/mng-spd", 157);
setprop("/FMGC/internal/mng-spd-cmd", 157);
@ -545,8 +544,8 @@ var ManagedSPD = maketimer(0.25, func {
mng_spd_cmd = getprop("/FMGC/internal/mng-spd-cmd");
if (mng_spd_cmd > maxspeed) {
setprop("/FMGC/internal/mng-spd", maxspeed);
if (mng_spd_cmd > maxspeed -5) {
setprop("/FMGC/internal/mng-spd", maxspeed -5);
} else {
setprop("/FMGC/internal/mng-spd", mng_spd_cmd);
}

View file

@ -79,4 +79,7 @@ var absChk = maketimer(0.2, func {
setprop("/controls/gear/brake-right", 0);
}
}
if (getprop("/controls/autobrake/mode") == 3 and getprop("/controls/gear/gear-down") == 0) {
arm_autobrake(0);
}
});

View file

@ -15,8 +15,8 @@ var variousReset = func {
setprop("/instrumentation/mk-viii/inputs/discretes/terr-inhibit", 0);
setprop("/instrumentation/mk-viii/inputs/discretes/gpws-inhibit", 0);
setprop("/instrumentation/mk-viii/inputs/discretes/glideslope-cancel", 0);
setprop("/instrumentation/mk-viii/inputs/discretes/momentary-flap-override", 0);
setprop("/instrumentation/mk-viii/inputs/discretes/momentary-flap3-override", 0);
setprop("/instrumentation/mk-viii/inputs/discretes/momentary-flap-all-override", 0);
setprop("/instrumentation/mk-viii/inputs/discretes/momentary-flap-3-override", 0);
setprop("/controls/switches/cabinCall", 0);
setprop("/controls/switches/mechCall", 0);
setprop("/controls/switches/emer-lights", 0.5);
@ -51,6 +51,8 @@ var variousReset = func {
setprop("/modes/fcu/hdg-time", 0);
setprop("/controls/switching/ATTHDG", 0);
setprop("/controls/switching/AIRDATA", 0);
setprop("/controls/switches/no-smoking-sign", 1);
setprop("/controls/switches/seatbelt-sign", 1);
}
setlistener("/sim/signals/fdm-initialized", func {

View file

@ -145,7 +145,7 @@ var ELEC = {
setprop("/controls/electrical/switches/gen-apu", 1);
setprop("/controls/electrical/switches/gen-ext", 0);
setprop("/controls/electrical/switches/apu-ext-crosstie", 1);
setprop("/controls/electrical/switches/ac-ess-feed", 1);
setprop("/controls/electrical/switches/ac-ess-feed", 0);
setprop("/controls/electrical/switches/battery1", 0);
setprop("/controls/electrical/switches/battery2", 0);
setprop("/systems/electrical/battery1-volts", 25.9);
@ -419,117 +419,71 @@ var ELEC = {
# Left AC bus yes?
if (stateL == 3 and gen1_sw and !gen1_fail) {
setprop("/systems/electrical/bus/ac1", ac_volt_std);
if (!ac_ess_fail) {
setprop("/systems/electrical/bus/ac-ess", ac_volt_std);
} else {
setprop("/systems/electrical/bus/ac-ess", 0);
}
ac1_src = "GEN";
} else if (extpwr_on and gen_ext_sw and apu_ext_crosstie_sw) {
setprop("/systems/electrical/bus/ac1", ac_volt_std);
if (!ac_ess_fail) {
setprop("/systems/electrical/bus/ac-ess", ac_volt_std);
} else {
setprop("/systems/electrical/bus/ac-ess", 0);
}
ac1_src = "EXT";
} else if (gen_apu and !genapu_fail and apu_ext_crosstie_sw) {
setprop("/systems/electrical/bus/ac1", ac_volt_std);
if (!ac_ess_fail) {
setprop("/systems/electrical/bus/ac-ess", ac_volt_std);
} else {
setprop("/systems/electrical/bus/ac-ess", 0);
}
ac1_src = "APU";
} else if (apu_ext_crosstie_sw == 1 and xtieL) {
setprop("/systems/electrical/bus/ac1", ac_volt_std);
if (!ac_ess_fail) {
setprop("/systems/electrical/bus/ac-ess", ac_volt_std);
} else {
setprop("/systems/electrical/bus/ac-ess", 0);
}
ac1_src = "XTIE";
} else if (emergen) {
setprop("/systems/electrical/bus/ac1", 0);
if (!ac_ess_fail) {
setprop("/systems/electrical/bus/ac-ess", ac_volt_std);
} else {
setprop("/systems/electrical/bus/ac-ess", 0);
}
ac1_src = "ESSRAT";
} else if (dcbat and ias >= 50) {
setprop("/systems/electrical/bus/ac1", 0);
if (!ac_ess_fail) {
setprop("/systems/electrical/bus/ac-ess", ac_volt_std);
} else {
setprop("/systems/electrical/bus/ac-ess", 0);
}
ac1_src = "ESSBAT";
} else {
setprop("/systems/electrical/bus/ac1", 0);
if (getprop("/systems/electrical/bus/ac2") == 0) {
setprop("/systems/electrical/bus/ac-ess", 0);
}
ac1_src = "XX";
}
# Right AC bus yes?
if (stateR == 3 and gen2_sw and !gen2_fail) {
setprop("/systems/electrical/bus/ac2", ac_volt_std);
if (!ac_ess_fail) {
setprop("/systems/electrical/bus/ac-ess", ac_volt_std);
} else {
setprop("/systems/electrical/bus/ac-ess", 0);
}
ac2_src = "GEN";
} else if (extpwr_on and gen_ext_sw and apu_ext_crosstie_sw) {
setprop("/systems/electrical/bus/ac2", ac_volt_std);
if (!ac_ess_fail) {
setprop("/systems/electrical/bus/ac-ess", ac_volt_std);
} else {
setprop("/systems/electrical/bus/ac-ess", 0);
}
ac2_src = "EXT";
} else if (gen_apu and !genapu_fail and apu_ext_crosstie_sw) {
setprop("/systems/electrical/bus/ac2", ac_volt_std);
if (!ac_ess_fail) {
setprop("/systems/electrical/bus/ac-ess", ac_volt_std);
} else {
setprop("/systems/electrical/bus/ac-ess", 0);
}
ac2_src = "APU";
} else if (apu_ext_crosstie_sw == 1 and xtieR) {
setprop("/systems/electrical/bus/ac2", ac_volt_std);
if (!ac_ess_fail) {
setprop("/systems/electrical/bus/ac-ess", ac_volt_std);
} else {
setprop("/systems/electrical/bus/ac-ess", 0);
}
ac2_src = "XTIE";
} else if (emergen) {
setprop("/systems/electrical/bus/ac2", 0);
if (!ac_ess_fail) {
setprop("/systems/electrical/bus/ac-ess", ac_volt_std);
} else {
setprop("/systems/electrical/bus/ac-ess", 0);
}
ac2_src = "ESSRAT";
} else if (dcbat and ias >= 50) {
setprop("/systems/electrical/bus/ac2", 0);
if (!ac_ess_fail) {
ac2_src = "ESSBAT";
} else {
setprop("/systems/electrical/bus/ac2", 0);
ac2_src = "XX";
}
ac1 = getprop("/systems/electrical/bus/ac1");
ac2 = getprop("/systems/electrical/bus/ac2");
# AC ESS bus yes?
if (!ac_ess_fail) {
if (ac1 >= 110 and !ac_ess_feed_sw) {
setprop("/systems/electrical/bus/ac-ess", ac_volt_std);
} else if (ac2 >= 110 and ac_ess_feed_sw) {
setprop("/systems/electrical/bus/ac-ess", ac_volt_std);
} else if (emergen or (dcbat and ias >= 50)) {
setprop("/systems/electrical/bus/ac-ess", ac_volt_std);
} else {
setprop("/systems/electrical/bus/ac-ess", 0);
}
ac2_src = "ESSBAT";
} else {
setprop("/systems/electrical/bus/ac2", 0);
if (getprop("/systems/electrical/bus/ac1") == 0) {
setprop("/systems/electrical/bus/ac-ess", 0);
}
ac2_src = "XX";
setprop("/systems/electrical/bus/ac-ess", 0);
}
ac_ess = getprop("/systems/electrical/bus/ac-ess");
# HZ/Volts yes?
if (stateL == 3 and gen1_sw and !gen1_fail) {
setprop("/systems/electrical/extra/gen1-volts", ac_volt_std);
@ -563,10 +517,6 @@ var ELEC = {
setprop("/systems/electrical/extra/apu-hz", 0);
}
ac1 = getprop("/systems/electrical/bus/ac1");
ac2 = getprop("/systems/electrical/bus/ac2");
ac_ess = getprop("/systems/electrical/bus/ac-ess");
if (ac1 == 0 and ac2 == 0 and emergen == 0) {
setprop("/systems/electrical/bus/ac-ess-shed", 0);
} else {
@ -738,7 +688,7 @@ var ELEC = {
setprop("/systems/electrical/gen1-fault", 0);
}
if (ac_ess_fail and ac_ess_feed_sw) {
if (ac_ess_fail) {
setprop("/systems/electrical/ac-ess-feed-fault", 1);
} else {
setprop("/systems/electrical/ac-ess-feed-fault", 0);

View file

@ -17,12 +17,10 @@ setprop("/systems/fadec/eng2/ff", 1);
setprop("/systems/fadec/power-avail", 0);
setprop("/systems/fadec/powered1", 0);
setprop("/systems/fadec/powered2", 0);
setprop("/systems/fadec/powered-time", 0);
setprop("/systems/fadec/powerup", 0);
setlistener("/sim/signals/fdm-initialized", func {
fadecLoop.start();
});
var fadecLoop = maketimer(0.7, func {
var fadecLoop = func {
var ac1 = getprop("/systems/electrical/bus/ac1");
var ac2 = getprop("/systems/electrical/bus/ac2");
var acess = getprop("/systems/electrical/bus/ac-ess");
@ -33,13 +31,24 @@ var fadecLoop = maketimer(0.7, func {
var modeSel = getprop("/controls/engines/engine-start-switch");
if (ac1 >= 110 or ac2 >= 110 or acess >= 110) {
setprop("/systems/fadec/power-avail", 1);
if (getprop("/systems/fadec/power-avail") != 1) {
setprop("/systems/fadec/powered-time", getprop("/sim/time/elapsed-sec"));
setprop("/systems/fadec/power-avail", 1);
}
} else {
setprop("/systems/fadec/power-avail", 0);
if (getprop("/systems/fadec/power-avail") != 0) {
setprop("/systems/fadec/power-avail", 0);
}
}
var powerAvail = getprop("/systems/fadec/power-avail");
if (getprop("/systems/fadec/powered-time") + 300 >= getprop("/sim/time/elapsed-sec")) {
setprop("/systems/fadec/powerup", 1);
} else {
setprop("/systems/fadec/powerup", 0);
}
if (state1 == 3) {
setprop("/systems/fadec/powered1", 1);
} else if (powerAvail and modeSel == 2) {
@ -59,7 +68,7 @@ var fadecLoop = maketimer(0.7, func {
var powered1 = getprop("/systems/fadec/powered1");
var powered2 = getprop("/systems/fadec/powered2");
if (powered1) {
if (powered1 or getprop("/systems/fadec/powerup")) {
setprop("/systems/fadec/eng1/n1", 1);
setprop("/systems/fadec/eng1/egt", 1);
setprop("/systems/fadec/eng1/n2", 1);
@ -71,7 +80,7 @@ var fadecLoop = maketimer(0.7, func {
setprop("/systems/fadec/eng1/ff", 0);
}
if (powered2) {
if (powered2 or getprop("/systems/fadec/powerup")) {
setprop("/systems/fadec/eng2/n1", 1);
setprop("/systems/fadec/eng2/egt", 1);
setprop("/systems/fadec/eng2/n2", 1);
@ -82,4 +91,4 @@ var fadecLoop = maketimer(0.7, func {
setprop("/systems/fadec/eng2/n2", 0);
setprop("/systems/fadec/eng2/ff", 0);
}
});
}

View file

@ -5,6 +5,12 @@
# Copyright (c) Joshua Davidson (it0uchpods) #
##############################################
if (getprop("/options/eng") == "IAE") {
io.include("fadec-iae.nas");
} else {
io.include("fadec-cfm.nas");
}
setprop("/systems/thrust/alpha-floor", 0);
setprop("/systems/thrust/toga-lk", 0);
setprop("/systems/thrust/epr/toga-lim", 0.0);
@ -45,12 +51,13 @@ setlistener("/sim/signals/fdm-initialized", func {
var n1mct = getprop("/systems/thrust/n1/mct-lim");
var n1flx = getprop("/systems/thrust/n1/flx-lim");
var n1clb = getprop("/systems/thrust/n1/clb-lim");
var ias = getprop("/velocities/airspeed-kt");
var alpha = getprop("/fdm/jsbsim/aero/alpha-deg");
var flaps = getprop("/controls/flight/flap-pos");
var alphaProtSpd = getprop("/FMGC/internal/alpha-prot-speed");
var alphaProt = 0;
var togaLock = 0;
var gs = getprop("/velocities/groundspeed-kt");
thrust_lim.start();
thrustt.start();
thrust_loop.start();
thrust_flash.start();
});
setlistener("/controls/engines/engine[0]/throttle-pos", func {
@ -193,7 +200,7 @@ var atoff_request = func {
}
}
var thrust_lim = maketimer(0.04, func {
var thrust_loop = maketimer(0.04, func {
state1 = getprop("/systems/thrust/state1");
state2 = getprop("/systems/thrust/state2");
engstate1 = getprop("/engines/engine[0]/state");
@ -251,6 +258,34 @@ var thrust_lim = maketimer(0.04, func {
setprop("/controls/engines/epr-limit", eprtoga);
setprop("/controls/engines/n1-limit", n1toga);
}
alpha = getprop("/fdm/jsbsim/aero/alpha-deg");
flaps = getprop("/controls/flight/flap-pos");
if (flaps == 0) {
alphaProt = 9.5;
} else if (flaps == 1 or flaps == 2 or flaps == 3) {
alphaProt = 15.0;
} else if (flaps == 4) {
alphaProt = 14.0;
} else if (flaps == 5) {
alphaProt = 13.0;
}
togaLock = alphaProt - 1;
if (getprop("/gear/gear[1]/wow") == 0 and getprop("/gear/gear[2]/wow") == 0 and getprop("/it-fbw/law") == 0 and (getprop("/systems/thrust/eng-out") == 0 or (getprop("/systems/thrust/eng-out") == 1 and flaps == 0)) and getprop("/systems/fadec/n1mode1") == 0
and getprop("/systems/fadec/n1mode2") == 0) {
if (alpha > alphaProt and getprop("/position/gear-agl-ft") >= 100) {
setprop("/systems/thrust/alpha-floor", 1);
setprop("/systems/thrust/toga-lk", 0);
setprop("/it-autoflight/input/athr", 1);
} else if (getprop("/systems/thrust/alpha-floor") == 1 and alpha < togaLock) {
setprop("/systems/thrust/alpha-floor", 0);
setprop("/it-autoflight/input/athr", 1);
setprop("/systems/thrust/toga-lk", 1);
}
} else {
setprop("/systems/thrust/alpha-floor", 0);
setprop("/systems/thrust/toga-lk", 0);
}
});
var unflex = func {
@ -261,7 +296,7 @@ var unflex = func {
}
}
var thrust_loop = func {
var thrust_flash = maketimer(0.5, func {
state1 = getprop("/systems/thrust/state1");
state2 = getprop("/systems/thrust/state2");
@ -295,26 +330,4 @@ var thrust_loop = func {
setprop("/systems/thrust/lvrclb", 0);
}
}
# ias = getprop("/instrumentation/airspeed-indicator/indicated-speed-kt");
# flaps = getprop("/controls/flight/flap-pos");
# alphaProtSpd = getprop("/FMGC/internal/alpha-prot-speed");
# togaLockSpd = alphaProtSpd + 3;
# if (getprop("/gear/gear[1]/wow") == 0 and getprop("/gear/gear[2]/wow") == 0 and getprop("/it-fbw/law") == 0) {
# if (ias < alphaProtSpd) {
# setprop("/systems/thrust/alpha-floor", 1);
# setprop("/systems/thrust/toga-lk", 0);
# setprop("/it-autoflight/input/athr", 1);
# } else if (getprop("/systems/thrust/alpha-floor") == 1 and ias > togaLockSpd) {
# setprop("/systems/thrust/alpha-floor", 0);
# setprop("/it-autoflight/input/athr", 1);
# setprop("/systems/thrust/toga-lk", 1);
# }
# } else {
# setprop("/systems/thrust/alpha-floor", 0);
# setprop("/systems/thrust/toga-lk", 0);
# }
}
# Timers
var thrustt = maketimer(0.5, thrust_loop);
});

View file

@ -21,12 +21,10 @@ setprop("/systems/fadec/eng2/ff", 1);
setprop("/systems/fadec/power-avail", 0);
setprop("/systems/fadec/powered1", 0);
setprop("/systems/fadec/powered2", 0);
setprop("/systems/fadec/powered-time", 0);
setprop("/systems/fadec/powerup", 0);
setlistener("/sim/signals/fdm-initialized", func {
fadecLoop.start();
});
var fadecLoop = maketimer(0.7, func {
var fadecLoop = func {
var ac1 = getprop("/systems/electrical/bus/ac1");
var ac2 = getprop("/systems/electrical/bus/ac2");
var acess = getprop("/systems/electrical/bus/ac-ess");
@ -39,13 +37,24 @@ var fadecLoop = maketimer(0.7, func {
var N1Mode2_sw = getprop("/controls/fadec/n1mode2");
if (ac1 >= 110 or ac2 >= 110 or acess >= 110) {
setprop("/systems/fadec/power-avail", 1);
if (getprop("/systems/fadec/power-avail") != 1) {
setprop("/systems/fadec/powered-time", getprop("/sim/time/elapsed-sec"));
setprop("/systems/fadec/power-avail", 1);
}
} else {
setprop("/systems/fadec/power-avail", 0);
if (getprop("/systems/fadec/power-avail") != 0) {
setprop("/systems/fadec/power-avail", 0);
}
}
var powerAvail = getprop("/systems/fadec/power-avail");
if (getprop("/systems/fadec/powered-time") + 300 >= getprop("/sim/time/elapsed-sec")) {
setprop("/systems/fadec/powerup", 1);
} else {
setprop("/systems/fadec/powerup", 0);
}
if (state1 == 3) {
setprop("/systems/fadec/powered1", 1);
} else if (powerAvail and modeSel == 2) {
@ -62,6 +71,18 @@ var fadecLoop = maketimer(0.7, func {
setprop("/systems/fadec/powered2", 0);
}
if (N1Mode1_sw == 1) {
setprop("/systems/fadec/n1mode1", 1);
} else {
setprop("/systems/fadec/n1mode1", 0);
}
if (N1Mode2_sw == 1) {
setprop("/systems/fadec/n1mode2", 1);
} else {
setprop("/systems/fadec/n1mode2", 0);
}
var powered1 = getprop("/systems/fadec/powered1");
var powered2 = getprop("/systems/fadec/powered2");
var N1Mode1 = getprop("/systems/fadec/n1mode1");
@ -71,19 +92,19 @@ var fadecLoop = maketimer(0.7, func {
var N21 = getprop("/engines/engine[0]/n2-actual");
var N22 = getprop("/engines/engine[1]/n2-actual");
if (powered1 and N1Mode1 == 0) {
if ((powered1 or getprop("/systems/fadec/powerup")) and N1Mode1 == 0) {
setprop("/systems/fadec/eng1/epr", 1);
} else {
setprop("/systems/fadec/eng1/epr", 0);
}
if (powered2 and N1Mode2 == 0) {
if ((powered2 or getprop("/systems/fadec/powerup")) and N1Mode2 == 0) {
setprop("/systems/fadec/eng2/epr", 1);
} else {
setprop("/systems/fadec/eng2/epr", 0);
}
if (powered1) {
if (powered1 or getprop("/systems/fadec/powerup")) {
setprop("/systems/fadec/eng1/egt", 1);
setprop("/systems/fadec/eng1/ff", 1);
} else {
@ -91,7 +112,7 @@ var fadecLoop = maketimer(0.7, func {
setprop("/systems/fadec/eng1/ff", 0);
}
if (powered2) {
if (powered2 or getprop("/systems/fadec/powerup")) {
setprop("/systems/fadec/eng2/egt", 1);
setprop("/systems/fadec/eng2/ff", 1);
} else {
@ -122,16 +143,4 @@ var fadecLoop = maketimer(0.7, func {
} else {
setprop("/systems/fadec/eng2/n2", 0);
}
if (N1Mode1_sw == 1) {
setprop("/systems/fadec/n1mode1", 1);
} else {
setprop("/systems/fadec/n1mode1", 0);
}
if (N1Mode2_sw == 1) {
setprop("/systems/fadec/n1mode2", 1);
} else {
setprop("/systems/fadec/n1mode2", 0);
}
});
}

View file

@ -1,164 +0,0 @@
# GPWS Wrapper by Thorsten Brehm.
##############################################
# Copyright (c) Joshua Davidson (it0uchpods) #
##############################################
var gpws_min_landing_flaps = 0.645;
var GPWS =
{
new : func(prop1)
{
m = { parents : [GPWS]};
m.gpws = props.globals.getNode(prop1);
m.self_test = m.gpws.getNode("inputs/discretes/self-test");
m.flap_override = m.gpws.getNode("inputs/discretes/momentary-flap-override");
m.gs_inhibit = m.gpws.getNode("inputs/discretes/glideslope-inhibit");
m.gpws_inhibit = m.gpws.getNode("inputs/discretes/gpws-inhibit");
m.terrain_inhibit = m.gpws.getNode("inputs/discretes/ta-tcf-inhibit");
m.landing_gear = m.gpws.getNode("inputs/discretes/landing-gear");
m.landing_flaps = m.gpws.getNode("inputs/discretes/landing-flaps");
# mk-viii doesn't provide gear-override input. Emulate it...
m.gear_override = m.gpws.initNode("inputs/discretes/gear-override",0,"BOOL");
m.last_gear_state = 0;
# add listener to gear
setlistener("controls/gear/gear-down", func { Gpws.update_gear_state() } );
# GPWS provides two TCWs (Time Critical Warnings) to the PFD:
# "PULL UP" and "WINDSHEAR" alerts (windshears not supported here...)
m.tcw_out = m.gpws.initNode("outputs/warning","","STRING");
m.tcw_out.setValue("");
m.logic_discretes = m.gpws.getNode("outputs/arinc429/egpwc-logic-discretes");
settimer(gpws_input_feeder,0);
return m;
},
clicked_selftest : func
{
if (!me.self_test.getBoolValue())
{
# simulate a long button press (>> 5 seconds)
me.self_test.setBoolValue(1);
settimer(func { Gpws.release_selftest_button() },9);
}
else
{
# clicked again => release button early...
me.release_selftest_button();
}
},
press_selftest_button : func
{
me.self_test.setBoolValue(1);
},
release_selftest_button : func
{
me.self_test.setBoolValue(0);
},
clicked_flap_override : func
{
if (!me.flap_override.getBoolValue())
{
# simulate a short button press
me.flap_override.setBoolValue(1);
settimer(func {Gpws.release_button_flap_override() },0.5);
}
},
release_button_flap_override : func
{
me.flap_override.setBoolValue(0);
},
clicked_gear_override : func
{
# toggle
me.gear_override.setBoolValue(!me.gear_override.getBoolValue());
me.update_gear_state();
},
clicked_gs_override : func
{
# toggle g/s inhibit.
me.gs_inhibit.setBoolValue(!me.gs_inhibit.getBoolValue());
},
disable_gs_override : func
{
me.gs_inhibit.setBoolValue(0);
},
clicked_gpws_inhibit : func
{
# toggle
me.gpws_inhibit.setBoolValue(!me.gpws_inhibit.getBoolValue());
},
clicked_terrain_inhibit : func
{
# toggle
me.terrain_inhibit.setBoolValue(!me.terrain_inhibit.getBoolValue());
},
tcw_feeder : func
{
var tcwmsg="";
var alerts = me.logic_discretes.getValue();
if (gpws_test_bit(alerts,0x100000)) # bit 20="MODE1_PULL_UP"
tcwmsg="PULL UP";
me.tcw_out.setValue(tcwmsg);
},
update_gear_state : func()
{
# Simulate gear override button using a custom landing gear feeder.
# Default mk-viii gear feeder is disabled in <plane>-set.xml
var gear_state = getprop("controls/gear/gear-down");
me.landing_gear.setBoolValue(gear_state or me.gear_override.getBoolValue());
if ((me.last_gear_state)and(!gear_state))
{
# g/s override is cancelled when retracting landing gear...
me.disable_gs_override();
}
me.last_gear_state = gear_state;
},
update_flap_state : func()
{
# Feeder to configure custom "minimum landing flap position".
# Default mk-viii flap feeder is disabled in <plane>-set.xml
var flap_position = getprop("controls/flight/flaps");
me.landing_flaps.setBoolValue(flap_position < gpws_min_landing_flaps);
},
update_height : func()
{
radio_alt = getprop("position/gear-agl-ft");
# "glide-slope warning inhibited" is disabled below 50 feet
if ((radio_alt < 50.0)or(radio_alt > 1000.0))
me.disable_gs_override();
},
};
var gpws_test_bit = func(value,bitValue)
{
if (bitValue>1) value=int(value/bitValue);
# test if LSB set
return (value!=int(value/2)*2);
}
var gpws_input_feeder = func
{
Gpws.tcw_feeder();
Gpws.update_flap_state();
Gpws.update_height();
settimer(gpws_input_feeder,0.3);
}
var Gpws = GPWS.new("instrumentation/mk-viii");

View file

@ -167,8 +167,8 @@ var triggerDoor = func(door, doorName, doorDesc) {
#######################
# Various Other Stuff #
#######################
setlistener("/sim/signals/fdm-initialized", func {
var systemsInit = func {
fbw.fctlInit();
systems.ELEC.init();
systems.PNEU.init();
@ -189,8 +189,12 @@ setlistener("/sim/signals/fdm-initialized", func {
var autopilot = gui.Dialog.new("sim/gui/dialogs/autopilot/dialog", "Aircraft/IDG-A32X/Systems/autopilot-dlg.xml");
setprop("/it-autoflight/input/fd1", 1);
setprop("/it-autoflight/input/fd2", 1);
libraries.ECAMinit();
libraries.ECAM.init();
libraries.variousReset();
}
setlistener("/sim/signals/fdm-initialized", func {
systemsInit();
});
var systemsLoop = maketimer(0.1, func {
@ -199,6 +203,8 @@ var systemsLoop = maketimer(0.1, func {
systems.HYD.loop();
systems.FUEL.loop();
systems.ADIRS.loop();
libraries.ECAM.loop();
fadec.fadecLoop();
if ((getprop("/controls/pneumatic/switches/groundair") or getprop("/controls/switches/cart")) and ((getprop("/velocities/groundspeed-kt") > 2) or getprop("/controls/gear/brake-parking") == 0)) {
setprop("/controls/switches/cart", 0);
@ -214,6 +220,12 @@ var systemsLoop = maketimer(0.1, func {
if (getprop("/it-autoflight/custom/show-hdg") == 0 and getprop("/it-autoflight/output/lat") != 4) {
setprop("/it-autoflight/input/hdg", math.round(getprop("/orientation/heading-magnetic-deg")));
}
if (getprop("/instrumentation/mk-viii/inputs/discretes/momentary-flap-all-override") == 1 or (getprop("/instrumentation/mk-viii/inputs/discretes/momentary-flap-3-override") == 1 and getprop("/controls/flight/flap-pos") >= 4)) {
setprop("/instrumentation/mk-viii/inputs/discretes/momentary-flap-override", 1);
} else {
setprop("/instrumentation/mk-viii/inputs/discretes/momentary-flap-override", 0);
}
});
setlistener("/options/steep-ils", func {
@ -225,23 +237,23 @@ setlistener("/options/steep-ils", func {
});
canvas.Text._lastText = canvas.Text["_lastText"];
canvas.Text.setText = func (text) {
canvas.Text.setText = func(text) {
if (text == me._lastText) {return me;}
me._lastText = text;
me.set("text", typeof(text) == 'scalar' ? text : "");
};
canvas.Element._lastVisible = nil;
canvas.Element.show = func () {
canvas.Element.show = func {
if (1 == me._lastVisible) {return me;}
me._lastVisible = 1;
me.setBool("visible", 1);
};
canvas.Element.hide = func () {
canvas.Element.hide = func {
if (0 == me._lastVisible) {return me;}
me._lastVisible = 0;
me.setBool("visible", 0);
};
canvas.Element.setVisible = func (vis) {
canvas.Element.setVisible = func(vis) {
if (vis == me._lastVisible) {return me;}
me._lastVisible = vis;
me.setBool("visible", vis);

View file

@ -1,4 +1,4 @@
<!-- A3XX Aerodynamics -->
<!-- Airbus A320 Aerodynamics -->
<!-- Joshua Davidson (it0uchpods) -->
<!--
@ -12,7 +12,7 @@
<property value="0.0">ice/wing</property>
<axis name="LIFT">
<function name="aero/force/Lift_alpha">
<description>Lift due to alpha</description>
<product>
@ -21,16 +21,66 @@
<table>
<independentVar lookup="row">aero/alpha-rad</independentVar>
<tableData>
-0.20 -0.900
0.00 0.103
0.15 1.600
0.23 1.900
0.60 1.000
-1.57 -1.4000
-1.22 -1.3512
-1.05 -1.2426
-0.88 -1.1575
-0.64 -1.0312
-0.25 -0.9379
0.00 0.1494
0.25 1.6072
0.60 1.0305
0.88 0.6415
1.05 0.2294
1.22 0.0544
1.57 0.0000
</tableData>
</table>
</product>
</function>
<function name="aero/force/Lift_pitch_rate">
<description>Lift due to pitch rate</description>
<product>
<property>aero/qbar-psf</property>
<property>metrics/Sw-sqft</property>
<property>velocities/q-aero-rad_sec</property>
<property>aero/ci2vel</property>
<value>8.5404</value>
</product>
</function>
<function name="aero/force/Lift_alpha_rate">
<description>Lift due to alpha rate</description>
<product>
<property>aero/qbar-psf</property>
<property>metrics/Sw-sqft</property>
<property>aero/alphadot-rad_sec</property>
<property>aero/ci2vel</property>
<value>2.9706</value>
</product>
</function>
<function name="aero/force/Lift_pitch_control">
<description>Lift due to pitch control deflection</description>
<product>
<property>aero/qbar-psf</property>
<property>metrics/Sw-sqft</property>
<property>fcs/pitch-pos-geared</property>
<value>0.2395</value>
</product>
</function>
<function name="aero/force/Lift_pitch_trim_control">
<description>Lift due to pitch trim control deflection</description>
<product>
<property>aero/qbar-psf</property>
<property>metrics/Sw-sqft</property>
<property>fcs/pitch-trim-pos-geared</property>
<value>0.2395</value>
</product>
</function>
<function name="aero/force/Lift_flap">
<description>Delta Lift due to flaps</description>
<product>
@ -39,94 +89,101 @@
<table>
<independentVar lookup="row">fcs/flap-pos-norm</independentVar>
<tableData>
0.000 0.00000
0.290 0.00250
0.596 0.00700
0.645 0.01400
1.000 0.01800
0.000 0.0000
0.290 0.0648
0.596 0.1017
0.645 0.2404
1.000 0.2866
</tableData>
</table>
</product>
</function>
<function name="aero/force/Lift_slats">
<function name="aero/force/Lift_slat">
<description>Delta Lift due to slats</description>
<product>
<property>aero/qbar-psf</property>
<property>metrics/Sw-sqft</property>
<property>fcs/slat-pos-deg</property>
<value> 0.01000 </value>
<table>
<independentVar lookup="row">fcs/slat-pos-norm</independentVar>
<tableData>
0.000 0.0000
0.666 0.1734
0.814 0.2509
1.000 0.3113
</tableData>
</table>
</product>
</function>
<function name="aero/force/Lift_speedbrake">
<description>Delta Lift due to speedbrake</description>
<product>
<property>aero/qbar-psf</property>
<property>metrics/Sw-sqft</property>
<property>fcs/speedbrake-pos-norm</property>
<value>-0.15</value>
<value>-0.1</value>
</product>
</function>
<function name="aero/force/Lift_pitch_control">
<description>Lift due to pitch control deflection</description>
<function name="aero/coefficient/CLicew">
<description>Lift_decrease_due_to_ice_on_wing</description>
<product>
<property>aero/qbar-psf</property>
<property>metrics/Sw-sqft</property>
<property>fcs/pitch-pos-geared</property>
<value>0.04</value>
<table>
<independentVar>ice/wing</independentVar>
<tableData>
0.0 0.0
0.5 -0.1
1.0 -0.3
2.0 -1.5
</tableData>
</table>
</product>
</function>
<function name="aero/coefficient/CLicew">
<description>Lift_decrease_due_to_ice_on_wing</description>
<product>
<property>aero/qbar-psf</property>
<property>metrics/Sw-sqft</property>
<table>
<independentVar>ice/wing</independentVar>
<tableData>
0.0 0
0.5 -0.1
1.0 -0.3
2.0 -1.5
</tableData>
</table>
</product>
</function>
</axis>
<axis name="DRAG">
<function name="aero/force/Drag_basic">
<description>Drag at zero lift</description>
<function name="aero/force/Drag_minimum">
<description>Minimum drag</description>
<product>
<property>aero/qbar-psf</property>
<property>metrics/Sw-sqft</property>
<value>0.0125</value>
</product>
</function>
<function name="aero/force/Drag_alpha">
<description>Drag due to alpha</description>
<product>
<property>aero/qbar-psf</property>
<property>metrics/Sw-sqft</property>
<table>
<independentVar lookup="row">aero/alpha-rad</independentVar>
<tableData>
-1.57 1.275
-0.26 0.025
0.00 0.008
0.26 0.025
1.57 1.322
-1.57 1.3083
-0.20 0.0331
0.00 0.0000
0.20 0.0331
1.57 1.3083
</tableData>
</table>
</product>
</function>
<function name="aero/force/Drag_induced">
<description>Induced drag</description>
<product>
<property>aero/qbar-psf</property>
<property>metrics/Sw-sqft</property>
<property>aero/cl-squared</property>
<value>0.036</value>
<value>0.0384</value>
</product>
</function>
<function name="aero/force/Drag_mach">
<description>Drag due to mach</description>
<product>
@ -135,54 +192,16 @@
<table>
<independentVar lookup="row">velocities/mach</independentVar>
<tableData>
0.00 0.000
1.10 0.017
1.80 0.015
0.00 0.000
0.20 0.000
0.79 0.002
1.10 0.023
1.80 0.015
</tableData>
</table>
</product>
</function>
<function name="aero/force/Drag_flap">
<description>Drag due to flaps</description>
<product>
<property>aero/qbar-psf</property>
<property>metrics/Sw-sqft</property>
<property>fcs/flap-pos-deg</property>
<value> 0.00120 </value>
</product>
</function>
<function name="aero/force/Drag_slats">
<description>Drag due to slats</description>
<product>
<property>aero/qbar-psf</property>
<property>metrics/Sw-sqft</property>
<property>fcs/slat-pos-deg</property>
<value> 0.00100 </value>
</product>
</function>
<function name="aero/force/Drag_gear">
<description>Drag due to gear</description>
<product>
<property>aero/qbar-psf</property>
<property>metrics/Sw-sqft</property>
<property>gear/gear-pos-norm</property>
<value>0.025</value>
</product>
</function>
<function name="aero/force/Drag_speedbrake">
<description>Drag due to speedbrakes</description>
<product>
<property>aero/qbar-psf</property>
<property>metrics/Sw-sqft</property>
<property>fcs/speedbrake-pos-norm</property>
<value>0.025</value>
</product>
</function>
<function name="aero/force/Drag_beta">
<description>Drag due to sideslip</description>
<product>
@ -191,23 +210,23 @@
<table>
<independentVar lookup="row">aero/beta-rad</independentVar>
<tableData>
-1.57 1.230
-0.26 0.050
0.00 0.000
0.26 0.050
1.57 1.230
-1.57 1.23
-0.26 0.05
0.00 0.00
0.26 0.05
1.57 1.23
</tableData>
</table>
</product>
</function>
<function name="aero/force/Drag_pitch_control">
<description>Drag due to pitch control deflection</description>
<product>
<property>aero/qbar-psf</property>
<property>metrics/Sw-sqft</property>
<abs><property>fcs/pitch-pos-rad</property></abs>
<value>0.07</value>
<abs><property>fcs/pitch-pos-geared</property></abs>
<value>0.02</value>
</product>
</function>
@ -216,46 +235,126 @@
<product>
<property>aero/qbar-psf</property>
<property>metrics/Sw-sqft</property>
<abs><property>fcs/pitch-trim-pos-rad</property></abs>
<value>0.07</value>
<abs><property>fcs/pitch-trim-pos-geared</property></abs>
<value>0.02</value>
</product>
</function>
<function name="aero/force/Drag_gear">
<description>Drag due to gear</description>
<product>
<property>aero/qbar-psf</property>
<property>metrics/Sw-sqft</property>
<property>gear/gear-pos-norm</property>
<value>0.0175</value>
</product>
</function>
<function name="aero/force/Drag_flap">
<description>Drag due to flaps</description>
<product>
<property>aero/qbar-psf</property>
<property>metrics/Sw-sqft</property>
<property>fcs/flap-pos-deg</property>
<value>0.00125</value>
</product>
</function>
<function name="aero/force/Drag_slat">
<description>Drag due to slats</description>
<product>
<property>aero/qbar-psf</property>
<property>metrics/Sw-sqft</property>
<property>fcs/slat-pos-deg</property>
<value>0.00125</value>
</product>
</function>
<function name="aero/force/Drag_speedbrake">
<description>Drag due to speedbrake</description>
<product>
<property>aero/qbar-psf</property>
<property>metrics/Sw-sqft</property>
<property>fcs/speedbrake-pos-norm</property>
<value>0.0275</value>
</product>
</function>
</axis>
<axis name="SIDE">
<function name="aero/force/Side_beta">
<description>Side force due to beta</description>
<product>
<property>aero/qbar-psf</property>
<property>metrics/Sw-sqft</property>
<property>aero/beta-rad</property>
<value>-1</value>
<value>-0.8887</value>
</product>
</function>
<function name="aero/force/Drag_wingice">
<description>Drag_due_to_ice_on_wing</description>
<product>
<property>aero/qbar-psf</property>
<property>metrics/Sw-sqft</property>
<table>
<independentVar>ice/wing</independentVar>
<tableData>
0.0 0
0.5 0.004
1.0 0.010
2.0 0.100
</tableData>
</table>
</product>
<function name="aero/force/Side_roll_rate">
<description>Side force due to roll rate</description>
<product>
<property>aero/qbar-psf</property>
<property>metrics/Sw-sqft</property>
<property>aero/bi2vel</property>
<property>velocities/p-aero-rad_sec</property>
<table>
<independentVar lookup="row">aero/Re</independentVar>
<tableData>
25661346 0.2466
28227480 0.0178
38492020 0.0079
51187312 0.0045
</tableData>
</table>
</product>
</function>
<function name="aero/force/Side_yaw_rate">
<description>Side force due to yaw rate</description>
<product>
<property>aero/qbar-psf</property>
<property>metrics/Sw-sqft</property>
<property>aero/bi2vel</property>
<property>velocities/r-aero-rad_sec</property>
<value>0.8709</value>
</product>
</function>
<function name="aero/force/Side_rudder">
<description>Side force due to rudder</description>
<product>
<property>aero/qbar-psf</property>
<property>metrics/Sw-sqft</property>
<property>fcs/rudder-pos-rad</property>
<value>0.2653</value>
</product>
</function>
<function name="aero/force/Drag_wingice">
<description>Drag_due_to_ice_on_wing</description>
<product>
<property>aero/qbar-psf</property>
<property>metrics/Sw-sqft</property>
<table>
<independentVar>ice/wing</independentVar>
<tableData>
0.0 0.000
0.5 0.004
1.0 0.010
2.0 0.100
</tableData>
</table>
</product>
</function>
</axis>
<axis name="ROLL">
<function name="aero/moment/Roll_beta">
<description>Roll moment due to beta</description>
<product>
@ -263,10 +362,10 @@
<property>metrics/Sw-sqft</property>
<property>metrics/bw-ft</property>
<property>aero/beta-rad</property>
<value>-0.05</value>
<value>-0.1</value>
</product>
</function>
<function name="aero/moment/Roll_damp">
<description>Roll moment due to roll rate</description>
<product>
@ -278,7 +377,7 @@
<value>-0.47</value>
</product>
</function>
<function name="aero/moment/Roll_yaw">
<description>Roll moment due to yaw rate</description>
<product>
@ -287,10 +386,10 @@
<property>metrics/bw-ft</property>
<property>aero/bi2vel</property>
<property>velocities/r-aero-rad_sec</property>
<value>0.005</value>
<value>0.2</value>
</product>
</function>
<function name="aero/moment/Roll_control">
<description>Roll moment due to roll control</description>
<product>
@ -298,10 +397,10 @@
<property>metrics/Sw-sqft</property>
<property>metrics/bw-ft</property>
<property>fcs/roll-pos-rad</property>
<value>0.110</value>
<value>0.11</value>
</product>
</function>
<function name="aero/moment/Roll_rudder">
<description>Roll moment due to rudder</description>
<product>
@ -312,11 +411,11 @@
<value>0.01</value>
</product>
</function>
</axis>
<axis name="PITCH">
<function name="aero/moment/Pitch_alpha">
<description>Pitch moment due to alpha</description>
<product>
@ -324,10 +423,10 @@
<property>metrics/Sw-sqft</property>
<property>metrics/cbarw-ft</property>
<property>aero/alpha-rad</property>
<value>-0.6</value>
<value>-0.7918</value>
</product>
</function>
<function name="aero/moment/Pitch_control">
<description>Pitch moment due to pitch control</description>
<product>
@ -338,7 +437,7 @@
<value>-1.825</value>
</product>
</function>
<function name="aero/moment/Pitch_trim_control">
<description>Pitch moment due to pitch trim control</description>
<product>
@ -349,7 +448,7 @@
<value>-3.045</value>
</product>
</function>
<function name="aero/moment/Pitch_damp">
<description>Pitch moment due to pitch rate</description>
<product>
@ -361,7 +460,7 @@
<value>-37.4</value>
</product>
</function>
<function name="aero/moment/Pitch_alphadot">
<description>Pitch moment due to alpha rate</description>
<product>
@ -370,14 +469,14 @@
<property>metrics/cbarw-ft</property>
<property>aero/ci2vel</property>
<property>aero/alphadot-rad_sec</property>
<value>-1</value>
<value>-1.1356</value>
</product>
</function>
</axis>
<axis name="YAW">
<function name="aero/moment/Yaw_beta">
<description>Yaw moment due to beta</description>
<product>
@ -385,12 +484,12 @@
<property>metrics/Sw-sqft</property>
<property>metrics/bw-ft</property>
<property>aero/beta-rad</property>
<value>0.12</value>
<value>0.1292</value>
</product>
</function>
<function name="aero/moment/Yaw_damp">
<description>Yaw moment due to yaw rate</description>
<function name="aero/moment/Yaw_roll_rate">
<description>Yaw moment due to roll rate</description>
<product>
<property>aero/qbar-psf</property>
<property>metrics/Sw-sqft</property>
@ -400,7 +499,19 @@
<value>-0.2</value>
</product>
</function>
<function name="aero/moment/Yaw_damp">
<description>Yaw moment due to yaw rate</description>
<product>
<property>aero/qbar-psf</property>
<property>metrics/Sw-sqft</property>
<property>metrics/bw-ft</property>
<property>aero/bi2vel</property>
<property>velocities/r-aero-rad_sec</property>
<value>-0.1</value>
</product>
</function>
<function name="aero/moment/Yaw_rudder">
<description>Yaw moment due to rudder</description>
<product>
@ -408,20 +519,21 @@
<property>metrics/Sw-sqft</property>
<property>metrics/bw-ft</property>
<property>fcs/rudder-pos-rad</property>
<value>-0.043</value>
<value>-0.053</value>
</product>
</function>
<function name="aero/moment/Yaw_aileron">
<description>Adverse yaw</description>
<product>
<property>aero/qbar-psf</property>
<property>metrics/Sw-sqft</property>
<property>metrics/bw-ft</property>
<property>fcs/left-aileron-pos-rad</property>
<property>fcs/roll-pos-rad</property>
<value>0</value>
</product>
</function>
</axis>
</aerodynamics>

View file

@ -16,7 +16,7 @@
<type>gain</type>
<gain>1.0</gain>
<update-interval-secs type="double">0.05</update-interval-secs>
<input>
<input>
<expression>
<table>
<property>/environment/temperature-degc</property>
@ -34,7 +34,7 @@
<type>gain</type>
<gain>1.0</gain>
<update-interval-secs type="double">0.05</update-interval-secs>
<input>
<input>
<expression>
<table>
<property>/FMGC/internal/flex</property>
@ -76,7 +76,7 @@
</condition>
<expression>
<table>
<property>/position/altitude-ft</property>
<property>/fdm/jsbsim/atmosphere/density-altitude</property>
<entry><ind> 0</ind><dep>0.035</dep></entry>
<entry><ind>42000</ind><dep>0.285</dep></entry>
</table>
@ -91,7 +91,7 @@
<type>gain</type>
<gain>1.0</gain>
<update-interval-secs type="double">0.05</update-interval-secs>
<input>
<input>
<expression>
<table>
<property>/controls/engines/engine[0]/throttle-pos</property>
@ -113,7 +113,7 @@
<type>gain</type>
<gain>1.0</gain>
<update-interval-secs type="double">0.05</update-interval-secs>
<input>
<input>
<expression>
<table>
<property>/controls/engines/engine[1]/throttle-pos</property>
@ -135,7 +135,7 @@
<type>gain</type>
<gain>1.0</gain>
<update-interval-secs type="double">0.05</update-interval-secs>
<input>
<input>
<expression>
<product>
<table>
@ -160,7 +160,7 @@
<type>gain</type>
<gain>1.0</gain>
<update-interval-secs type="double">0.05</update-interval-secs>
<input>
<input>
<expression>
<product>
<table>

View file

@ -16,7 +16,7 @@
<type>gain</type>
<gain>1.0</gain>
<update-interval-secs type="double">0.05</update-interval-secs>
<input>
<input>
<expression>
<table>
<property>/environment/temperature-degc</property>
@ -34,7 +34,7 @@
<type>gain</type>
<gain>1.0</gain>
<update-interval-secs type="double">0.05</update-interval-secs>
<input>
<input>
<expression>
<table>
<property>/FMGC/internal/flex</property>
@ -76,7 +76,7 @@
</condition>
<expression>
<table>
<property>/position/altitude-ft</property>
<property>/fdm/jsbsim/atmosphere/density-altitude</property>
<entry><ind> 0</ind><dep>0.035</dep></entry>
<entry><ind>42000</ind><dep>0.285</dep></entry>
</table>
@ -91,7 +91,7 @@
<type>gain</type>
<gain>1.0</gain>
<update-interval-secs type="double">0.05</update-interval-secs>
<input>
<input>
<expression>
<table>
<property>/controls/engines/engine[0]/throttle-pos</property>
@ -113,7 +113,7 @@
<type>gain</type>
<gain>1.0</gain>
<update-interval-secs type="double">0.05</update-interval-secs>
<input>
<input>
<expression>
<table>
<property>/controls/engines/engine[1]/throttle-pos</property>
@ -135,7 +135,7 @@
<type>gain</type>
<gain>1.0</gain>
<update-interval-secs type="double">0.05</update-interval-secs>
<input>
<input>
<expression>
<product>
<table>
@ -160,7 +160,7 @@
<type>gain</type>
<gain>1.0</gain>
<update-interval-secs type="double">0.05</update-interval-secs>
<input>
<input>
<expression>
<product>
<table>
@ -184,12 +184,12 @@
<name>EPR Scale</name>
<type>gain</type>
<gain>1.0</gain>
<input>
<input>
<expression>
<table>
<property>/position/altitude-ft</property>
<property>/fdm/jsbsim/atmosphere/density-altitude</property>
<entry><ind> 0</ind><dep>0.576</dep></entry>
<entry><ind>42000</ind><dep>1.076</dep></entry>
<entry><ind>42000</ind><dep>0.876</dep></entry>
</table>
</expression>
</input>
@ -197,19 +197,61 @@
</filter>
<filter>
<name>EPR Scale 2</name>
<name>Alpha Normalizer</name>
<type>gain</type>
<gain>1.0</gain>
<input>
<input>
<condition>
<equals>
<property>/gear/gear[0]/wow</property>
<value>0</value>
</equals>
</condition>
<property>/fdm/jsbsim/aero/alpha-deg</property>
</input>
<input>0</input>
<output>/fdm/jsbsim/aero/alpha-deg-norm</output>
</filter>
<filter>
<name>EPR Scale 2 Sum/Difference</name>
<type>gain</type>
<gain>1.0</gain>
<input>
<expression>
<table>
<property>/position/altitude-ft</property>
<entry><ind> 0</ind><dep>0.988</dep></entry>
<entry><ind>42000</ind><dep>0.708</dep></entry>
</table>
<difference>
<table>
<property>/fdm/jsbsim/atmosphere/density-altitude</property>
<entry><ind> 0</ind><dep>0.988</dep></entry>
<entry><ind>43000</ind><dep>0.858</dep></entry>
</table>
<table>
<property>/fdm/jsbsim/velocities/mach</property>
<entry><ind>0.00</ind><dep>0.000</dep></entry>
<entry><ind>0.09</ind><dep>0.000</dep></entry>
<entry><ind>0.15</ind><dep>0.016</dep></entry>
<entry><ind>0.22</ind><dep>0.022</dep></entry>
<entry><ind>1.00</ind><dep>0.010</dep></entry>
</table>
<table>
<property>/fdm/jsbsim/aero/alpha-deg-norm</property>
<entry><ind> 0.0</ind><dep> 0.00</dep></entry>
<entry><ind> 7.5</ind><dep> 0.01</dep></entry>
<entry><ind> 17.0</ind><dep> 0.03</dep></entry>
</table>
</difference>
</expression>
</input>
<output>/engines/epr-scale-b-cmd</output>
</filter>
<filter>
<name>EPR Scale 2 Sum/Difference Exponential</name>
<type>exponential</type>
<gain>1.0</gain>
<input>/engines/epr-scale-b-cmd</input>
<output>/engines/epr-scale-b</output>
<filter-time>0.32</filter-time>
</filter>
<!-- -->
@ -218,7 +260,7 @@
<name>EPR N1 Input Engine 1</name>
<type>gain</type>
<gain>1.0</gain>
<input>
<input>
<expression>
<product>
<property>/engines/engine[0]/n1-actual</property>
@ -237,7 +279,7 @@
<name>EPR N1 Input Engine 2</name>
<type>gain</type>
<gain>1.0</gain>
<input>
<input>
<expression>
<product>
<property>/engines/engine[1]/n1-actual</property>
@ -256,7 +298,7 @@
<name>EPR THR Input Engine 1</name>
<type>gain</type>
<gain>1.0</gain>
<input>
<input>
<expression>
<product>
<table>
@ -283,7 +325,7 @@
<name>EPR THR Input Engine 2</name>
<type>gain</type>
<gain>1.0</gain>
<input>
<input>
<expression>
<product>
<table>
@ -310,7 +352,7 @@
<name>EPR THR Input Flex</name>
<type>gain</type>
<gain>1.0</gain>
<input>
<input>
<expression>
<product>
<table>

View file

@ -165,6 +165,8 @@
</expression>
</input>
<output>/FMGC/internal/mng-alt-spd</output>
<min>250</min>
<max>345</max>
</filter>
<filter>
@ -178,7 +180,7 @@
<table>
<property>/instrumentation/altimeter/indicated-altitude-ft</property>
<entry><ind>20000</ind><dep>0.625</dep></entry>
<entry><ind>42000</ind><dep>0.825</dep></entry>
<entry><ind>42000</ind><dep>0.805</dep></entry>
</table>
<table>
<property>/FMGC/internal/cost-index</property>
@ -189,6 +191,8 @@
</expression>
</input>
<output>/FMGC/internal/mng-alt-mach</output>
<min>0.500</min>
<max>0.815</max>
</filter>
<filter>

View file

@ -1 +1 @@
4114
4211