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> <specific>
<file>Aircraft/IDG-A32X/Nasal/a320livery-cfm-100.nas</file> <file>Aircraft/IDG-A32X/Nasal/a320livery-cfm-100.nas</file>
</specific> </specific>
<fadec>
<file>Aircraft/IDG-A32X/Nasal/fadec-cfm.nas</file>
</fadec>
</nasal> </nasal>
</PropertyList> </PropertyList>

View file

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

View file

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

View file

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

View file

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

View file

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

View file

@ -1376,7 +1376,6 @@
<libraries> <libraries>
<file>Aircraft/IDG-A32X/Nasal/libraries.nas</file> <file>Aircraft/IDG-A32X/Nasal/libraries.nas</file>
<file>Aircraft/IDG-A32X/Nasal/buttons.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/efis.nas</file>
<file>Aircraft/IDG-A32X/Nasal/ECAM.nas</file> <file>Aircraft/IDG-A32X/Nasal/ECAM.nas</file>
<file>Aircraft/IDG-A32X/Nasal/shake.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/ground_services.nas</file>
<file>Aircraft/IDG-A32X/Nasal/effects.nas</file> <file>Aircraft/IDG-A32X/Nasal/effects.nas</file>
</systems> </systems>
<thrust> <fadec>
<file>Aircraft/IDG-A32X/Nasal/fadec-common.nas</file> <file>Aircraft/IDG-A32X/Nasal/fadec-common.nas</file>
</thrust> </fadec>
<fbw> <fbw>
<file>Aircraft/IDG-A32X/Nasal/it-fbw.nas</file> <file>Aircraft/IDG-A32X/Nasal/it-fbw.nas</file>
</fbw> </fbw>

View file

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

View file

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

View file

@ -195,9 +195,6 @@
<specific> <specific>
<file>Aircraft/IDG-A32X/Nasal/a320livery-neopw.nas</file> <file>Aircraft/IDG-A32X/Nasal/a320livery-neopw.nas</file>
</specific> </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> </nasal>
</PropertyList> </PropertyList>

View file

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

View file

@ -150,26 +150,6 @@ var saveSettings = func {
saveSettings(); 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 # # Panel States #
################ ################
@ -194,7 +174,7 @@ var colddark = func {
setprop("/controls/flight/speedbrake-arm", 0); setprop("/controls/flight/speedbrake-arm", 0);
setprop("/controls/gear/gear-down", 1); setprop("/controls/gear/gear-down", 1);
setprop("/controls/flight/elevator-trim", 0); setprop("/controls/flight/elevator-trim", 0);
systemsReset(); libraries.systemsInit();
failReset(); failReset();
if (getprop("/engines/engine[1]/n2-actual") < 2) { if (getprop("/engines/engine[1]/n2-actual") < 2) {
colddark_b(); colddark_b();
@ -242,7 +222,7 @@ var beforestart = func {
setprop("/controls/flight/speedbrake-arm", 0); setprop("/controls/flight/speedbrake-arm", 0);
setprop("/controls/gear/gear-down", 1); setprop("/controls/gear/gear-down", 1);
setprop("/controls/flight/elevator-trim", 0); setprop("/controls/flight/elevator-trim", 0);
systemsReset(); libraries.systemsInit();
failReset(); failReset();
setprop("/controls/APU/master", 0); setprop("/controls/APU/master", 0);
setprop("/controls/APU/start", 0); setprop("/controls/APU/start", 0);
@ -316,7 +296,7 @@ var taxi = func {
setprop("/controls/flight/speedbrake-arm", 0); setprop("/controls/flight/speedbrake-arm", 0);
setprop("/controls/gear/gear-down", 1); setprop("/controls/gear/gear-down", 1);
setprop("/controls/flight/elevator-trim", 0); setprop("/controls/flight/elevator-trim", 0);
systemsReset(); libraries.systemsInit();
failReset(); failReset();
setprop("/controls/APU/master", 0); setprop("/controls/APU/master", 0);
setprop("/controls/APU/start", 0); setprop("/controls/APU/start", 0);

View file

@ -27,12 +27,12 @@
<independentVar lookup="column">atmosphere/density-altitude</independentVar> <independentVar lookup="column">atmosphere/density-altitude</independentVar>
<tableData> <tableData>
-10000 0 10000 20000 30000 40000 50000 -10000 0 10000 20000 30000 40000 50000
0.0 0.0430 0.0458 0.0378 0.0684 0.0819 0.0793 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.0727 0.0729 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.0585 0.0671 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.0416 0.0518 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.0354 0.0468 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.0352 0.0000 1.0 0.0000 0.0000 0.0000 0.0000 0.0000 0.0252 0.0000
</tableData> </tableData>
</table> </table>
</function> </function>

View file

@ -27,12 +27,12 @@
<independentVar lookup="column">atmosphere/density-altitude</independentVar> <independentVar lookup="column">atmosphere/density-altitude</independentVar>
<tableData> <tableData>
-10000 0 10000 20000 30000 40000 50000 -10000 0 10000 20000 30000 40000 50000
0.0 0.0430 0.0458 0.0378 0.0684 0.0819 0.0793 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.0727 0.0729 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.0585 0.0671 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.0416 0.0518 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.0354 0.0468 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.0352 0.0000 1.0 0.0000 0.0000 0.0000 0.0000 0.0000 0.0252 0.0000
</tableData> </tableData>
</table> </table>
</function> </function>

View file

@ -27,12 +27,12 @@
<independentVar lookup="column">atmosphere/density-altitude</independentVar> <independentVar lookup="column">atmosphere/density-altitude</independentVar>
<tableData> <tableData>
-10000 0 10000 20000 30000 40000 50000 -10000 0 10000 20000 30000 40000 50000
0.0 0.0430 0.0458 0.0378 0.0684 0.0819 0.0793 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.0727 0.0729 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.0585 0.0671 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.0416 0.0518 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.0354 0.0468 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.0352 0.0000 1.0 0.0000 0.0000 0.0000 0.0000 0.0000 0.0252 0.0000
</tableData> </tableData>
</table> </table>
</function> </function>

View file

@ -27,12 +27,12 @@
<independentVar lookup="column">atmosphere/density-altitude</independentVar> <independentVar lookup="column">atmosphere/density-altitude</independentVar>
<tableData> <tableData>
-10000 0 10000 20000 30000 40000 50000 -10000 0 10000 20000 30000 40000 50000
0.0 0.0430 0.0458 0.0378 0.0684 0.0819 0.0793 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.0727 0.0729 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.0585 0.0671 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.0416 0.0518 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.0354 0.0468 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.0352 0.0000 1.0 0.0000 0.0000 0.0000 0.0000 0.0000 0.0252 0.0000
</tableData> </tableData>
</table> </table>
</function> </function>

View file

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

View file

@ -58,6 +58,18 @@ var canvas_IESI_base = {
return []; return [];
}, },
update: func() { 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) { 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.page.show();
IESI.update(); IESI.update();
@ -75,9 +87,18 @@ var canvas_IESI = {
return m; return m;
}, },
getKeys: func() { 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() { 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 # Airspeed
# Subtract 30, since the scale starts at 30, but don"t allow less than 0, or more than 420 situations # 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) { if (getprop("/instrumentation/airspeed-indicator/indicated-speed-kt") <= 30) {
@ -163,7 +184,7 @@ setlistener("sim/signals/fdm-initialized", func {
IESI_update.start(); IESI_update.start();
}); });
var IESI_update = maketimer(0.05, func { var IESI_update = maketimer(0.07, func {
canvas_IESI_base.update(); canvas_IESI_base.update();
}); });

File diff suppressed because it is too large Load diff

Before

(image error) Size: 113 KiB

After

(image error) Size: 121 KiB

File diff suppressed because it is too large Load diff

Binary file not shown.

Before

(image error) Size: 817 B

Binary file not shown.

Before

(image error) Size: 6 KiB

Binary file not shown.

Before

(image error) Size: 6.2 KiB

Binary file not shown.

Before

(image error) Size: 6.3 KiB

Binary file not shown.

Before

(image error) Size: 7.5 KiB

Binary file not shown.

Before

(image error) Size: 8.9 KiB

Binary file not shown.

Before

(image error) Size: 7.2 KiB

Binary file not shown.

Before

(image error) Size: 7 KiB

After

(image error) Size: 7.1 KiB

View file

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

View file

@ -209,7 +209,8 @@ var canvas_PFD_base = {
wow2 = getprop("/gear/gear[2]/wow"); wow2 = getprop("/gear/gear[2]/wow");
# FMA MAN TOGA MCT FLX THR # 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_man"].show();
me["FMA_manmode"].show(); me["FMA_manmode"].show();
if (state1 == "TOGA" or state2 == "TOGA") { if (state1 == "TOGA" or state2 == "TOGA") {
@ -245,7 +246,7 @@ var canvas_PFD_base = {
me["FMA_man_box"].setColor(0.7333,0.3803,0); 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 } 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_man"].show();
me["FMA_manmode"].show(); me["FMA_manmode"].show();
if (state1 == "TOGA" or state2 == "TOGA") { if (state1 == "TOGA" or state2 == "TOGA") {
@ -293,27 +294,41 @@ var canvas_PFD_base = {
} }
# FMA A/THR # 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")) { if (getprop("/systems/thrust/alpha-floor") != 1 and getprop("/systems/thrust/toga-lk") != 1) {
me["FMA_thrust"].show(); if (athr == 1 and getprop("/systems/thrust/eng-out") != 1 and (state1 == "MAN" or state1 == "CL") and (state2 == "MAN" or state2 == "CL")) {
if (getprop("/modes/pfd/fma/throttle-mode-box") == 1 and throttle_mode != " ") { me["FMA_thrust"].show();
me["FMA_thrust_box"].show(); if (getprop("/modes/pfd/fma/throttle-mode-box") == 1 and throttle_mode != " ") {
} else { me["FMA_thrust_box"].show();
me["FMA_thrust_box"].hide(); } 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"))) { } 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
me["FMA_thrust"].show(); (state2 == "MAN" or state2 == "CL" or (state2 == "MAN THR" and thr2 < 0.83) or (state2 == "MCT" and getprop("/controls/engines/thrust-limit") != "FLX"))) {
if (getprop("/modes/pfd/fma/throttle-mode-box") == 1 and throttle_mode != " ") { me["FMA_thrust"].show();
me["FMA_thrust_box"].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 { } else {
me["FMA_thrust"].hide();
me["FMA_thrust_box"].hide(); me["FMA_thrust_box"].hide();
} }
} else { } else {
me["FMA_thrust"].hide(); me["FMA_thrust"].show();
me["FMA_thrust_box"].hide(); 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 # FMA Pitch Roll Common
me["FMA_combined"].setText(sprintf("%s", pitch_mode)); 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))); me["FOB-LBS"].setText(sprintf("%s", math.round(getprop("/consumables/fuel/total-fuel-lbs"), 10)));
# Left ECAM Messages # 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") { if (getprop("/ECAM/left-msg") == "MSG") {
me["ECAML1"].show(); me["ECAML1"].setText(sprintf("%s", getprop("/ECAM/msg/line1")));
me["ECAML2"].show(); me["ECAML2"].setText(sprintf("%s", getprop("/ECAM/msg/line2")));
me["ECAML3"].show(); me["ECAML3"].setText(sprintf("%s", getprop("/ECAM/msg/line3")));
me["ECAML4"].show(); me["ECAML4"].setText(sprintf("%s", getprop("/ECAM/msg/line4")));
me["ECAML5"].show(); me["ECAML5"].setText(sprintf("%s", getprop("/ECAM/msg/line5")));
me["ECAML6"].show(); me["ECAML6"].setText(sprintf("%s", getprop("/ECAM/msg/line6")));
me["ECAML7"].show(); me["ECAML7"].setText(sprintf("%s", getprop("/ECAM/msg/line7")));
me["ECAML8"].show(); 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 { } else {
me["ECAML1"].hide(); me["ECAM_Left"].hide();
me["ECAML2"].hide(); me["TO_Memo"].hide();
me["ECAML3"].hide();
me["ECAML4"].hide();
me["ECAML5"].hide();
me["ECAML6"].hide();
me["ECAML7"].hide();
me["ECAML8"].hide();
} }
}, },
}; };
@ -270,8 +301,9 @@ var canvas_upperECAM_cfm_eis2 = {
getKeys: func() { 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", 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", "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", "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",
"N1Lim-decpnt","N1Lim-decimal","N1Lim-percent","N1Lim-XX","N1Lim-XX2","REV1","REV1-box","REV2","REV2-box"]; "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() { update: func() {
# N1 # 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"].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)))); 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-mode"].show();
me["N1Lim-XX"].hide(); me["N1Lim-XX"].hide();
me["N1Lim-XX2"].hide(); me["N1Lim-XX2"].hide();
@ -469,7 +501,7 @@ var canvas_upperECAM_cfm_eis2 = {
me["N1Lim-XX2"].show(); 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"].show();
me["N1Lim-decpnt"].show(); me["N1Lim-decpnt"].show();
me["N1Lim-decimal"].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", 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", "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", "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", "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",
"EPRLim-decpnt","EPRLim-decimal","EPRLim-XX","EPRLim-XX2","REV1","REV1-box","REV2","REV2-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() { update: func() {
# EPR # 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"].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)); 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-mode"].show();
me["EPRLim-XX"].hide(); me["EPRLim-XX"].hide();
me["EPRLim-XX2"].hide(); me["EPRLim-XX2"].hide();
@ -760,7 +792,7 @@ var canvas_upperECAM_iae_eis2 = {
me["EPRLim-XX2"].show(); 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"].show();
me["EPRLim-decpnt"].show(); me["EPRLim-decpnt"].show();
me["EPRLim-decimal"].show(); me["EPRLim-decimal"].show();

View file

@ -41,9 +41,9 @@
inkscape:window-height="1030" inkscape:window-height="1030"
id="namedview371" id="namedview371"
showgrid="false" showgrid="false"
inkscape:zoom="1.4142136" inkscape:zoom="0.50000001"
inkscape:cx="520.85242" inkscape:cx="531.17625"
inkscape:cy="1094.6024" inkscape:cy="512.09207"
inkscape:window-x="1592" inkscape:window-x="1592"
inkscape:window-y="-8" inkscape:window-y="-8"
inkscape:window-maximized="1" inkscape:window-maximized="1"
@ -197,34 +197,6 @@
x="384.25583" x="384.25583"
id="tspan4435" id="tspan4435"
sodipodi:role="line">LBS</tspan></text> 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 <text
transform="scale(0.92957935,1.0757554)" transform="scale(0.92957935,1.0757554)"
sodipodi:linespacing="0%" 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" 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" /> inkscape:transform-center-x="-74.153195" />
</g> </g>
<text <g
xml:space="preserve" id="ECAM_Left"
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" inkscape:label="#g4376">
x="14.033532" <text
y="759.67896" transform="scale(0.92957935,1.0757554)"
id="ECAML3" sodipodi:linespacing="0%"
inkscape:label="#text4314" inkscape:label="#text4314"
sodipodi:linespacing="0%" id="ECAML1"
transform="scale(0.92957935,1.0757554)"><tspan y="686.0564"
sodipodi:role="line"
id="tspan4312"
x="14.033532" 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" 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> x="14.033532"
<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"
transform="scale(0.92957935,1.0757554)" xml:space="preserve"><tspan
sodipodi:linespacing="0%" 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"
inkscape:label="#text4314" y="759.67896"
id="ECAML4" x="14.033532"
y="796.4903" id="tspan4312"
x="14.033532" sodipodi:role="line">LINE 3</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" <text
xml:space="preserve"><tspan xml:space="preserve"
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" 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" y="796.4903"
x="14.033532" id="ECAML4"
id="tspan4317" inkscape:label="#text4314"
sodipodi:role="line">LINE 4</tspan></text> sodipodi:linespacing="0%"
<text transform="scale(0.92957935,1.0757554)"><tspan
xml:space="preserve" sodipodi:role="line"
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" id="tspan4317"
x="14.033532" x="14.033532"
y="833.30164" y="796.4903"
id="ECAML5" 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>
inkscape:label="#text4314" <text
sodipodi:linespacing="0%" transform="scale(0.92957935,1.0757554)"
transform="scale(0.92957935,1.0757554)"><tspan sodipodi:linespacing="0%"
sodipodi:role="line" inkscape:label="#text4314"
id="tspan4321" id="ECAML5"
x="14.033532"
y="833.30164" 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> x="14.033532"
<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"
transform="scale(0.92957935,1.0757554)" xml:space="preserve"><tspan
sodipodi:linespacing="0%" 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"
inkscape:label="#text4314" y="833.30164"
id="ECAML6" x="14.033532"
y="870.11298" id="tspan4321"
x="14.033532" sodipodi:role="line">LINE 5</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" <text
xml:space="preserve"><tspan xml:space="preserve"
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" 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" y="870.11298"
x="14.033532" id="ECAML6"
id="tspan4325" inkscape:label="#text4314"
sodipodi:role="line">LINE 6</tspan></text> sodipodi:linespacing="0%"
<text transform="scale(0.92957935,1.0757554)"><tspan
xml:space="preserve" sodipodi:role="line"
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" id="tspan4325"
x="14.033532" x="14.033532"
y="906.92432" y="870.11298"
id="ECAML7" 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>
inkscape:label="#text4314" <text
sodipodi:linespacing="0%" transform="scale(0.92957935,1.0757554)"
transform="scale(0.92957935,1.0757554)"><tspan sodipodi:linespacing="0%"
sodipodi:role="line" inkscape:label="#text4314"
id="tspan4329" id="ECAML7"
x="14.033532"
y="906.92432" 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" x="14.033532"
id="tspan4333" 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"
sodipodi:role="line">LINE 8</tspan></text> 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> </svg>

Before

(image error) Size: 79 KiB

After

(image error) Size: 94 KiB

View file

@ -41,14 +41,14 @@
inkscape:window-height="1030" inkscape:window-height="1030"
id="namedview371" id="namedview371"
showgrid="false" showgrid="false"
inkscape:zoom="3.0622118" inkscape:zoom="1.5311059"
inkscape:cx="1105.0255" inkscape:cx="247.80484"
inkscape:cy="1220.4997" inkscape:cy="355.57872"
inkscape:window-x="1592" inkscape:window-x="1592"
inkscape:window-y="-8" inkscape:window-y="-8"
inkscape:window-maximized="1" inkscape:window-maximized="1"
inkscape:current-layer="svg2" inkscape:current-layer="svg2"
showguides="false" showguides="true"
inkscape:snap-global="false"> inkscape:snap-global="false">
<inkscape:grid <inkscape:grid
type="xygrid" type="xygrid"
@ -213,34 +213,6 @@
x="384.25583" x="384.25583"
id="tspan4435" id="tspan4435"
sodipodi:role="line">LBS</tspan></text> 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 <text
transform="scale(0.92957935,1.0757554)" transform="scale(0.92957935,1.0757554)"
sodipodi:linespacing="0%" sodipodi:linespacing="0%"
@ -866,90 +838,6 @@
d="m 220.39233,320.0382 42.77869,0" 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" 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" /> 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 <text
id="text4339" id="text4339"
y="401.41238" y="401.41238"
@ -1702,4 +1590,375 @@
x="720.09741" x="720.09741"
id="tspan4434" id="tspan4434"
sodipodi:role="line">REV</tspan></text> 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> </svg>

Before

(image error) Size: 102 KiB

After

(image error) Size: 118 KiB

View file

@ -93,7 +93,7 @@ var ADIRS = {
if (ac1 >= 110 or ac2 >= 110) { if (ac1 >= 110 or ac2 >= 110) {
pwr_src = "AC"; 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"; pwr_src = "BATT";
} else { } else {
pwr_src = "XX"; pwr_src = "XX";

View file

@ -5,194 +5,30 @@
# Copyright (c) Joshua Davidson (it0uchpods) # # Copyright (c) Joshua Davidson (it0uchpods) #
############################################## ##############################################
# It no works yet, so please don't touch a thing until it works. Thanks -JD setprop("/ECAM/left-msg", "NONE");
##################
# Init Functions #
##################
setprop("/position/gear-agl-ft", 0); setprop("/position/gear-agl-ft", 0);
setprop("/ECAM/noupdate", 0); setprop("/ECAM/Lower/page", "fctl");
setprop("/ECAM/donotrevert", 0); # w = White, b = Blue, g = Green, a = Amber, r = Red
setprop("/ECAM/Lower/page", "eng");
########################################################### var ECAM = {
# w = White, b = Blue, g = Green, a = Amber, r = Red # init: func() {
########################################################### setprop("/ECAM/engine-start-time", 0);
setprop("/ECAM/engine-start-time-switch", 0);
var ECAMinit = func { setprop("/ECAM/to-memo-enable", 1);
if (getprop("/options/enable-ecam-actions") == 1) { setprop("/ECAM/to-config", 0);
ECAMloop.start(); var stateL = getprop("/engines/engine[0]/state");
setprop("/ECAM/phase-1-inhibit", 0); var stateR = getprop("/engines/engine[1]/state");
setprop("/ECAM/phase-2-inhibit", 0); var thrustL = getprop("/systems/thrust/state1");
setprop("/ECAM/phase-3-inhibit", 0); var thrustR = getprop("/systems/thrust/state2");
setprop("/ECAM/phase-4-inhibit", 0); var elec = getprop("/systems/electrical/on");
setprop("/ECAM/phase-5-inhibit", 0); var speed = getprop("/velocities/airspeed-kt");
setprop("/ECAM/phase-6-inhibit", 0); var wow = getprop("/gear/gear[0]/wow");
setprop("/ECAM/phase-7-inhibit", 0); var altitude = getprop("/position/gear-agl-ft");
setprop("/ECAM/phase-8-inhibit", 0); },
setprop("/ECAM/phase-9-inhibit", 0); MSGclr: func() {
setprop("/ECAM/phase-10-inhibit", 0); setprop("/ECAM/ecam-checklist-active", 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) {
setprop("/ECAM/left-msg", "NONE"); setprop("/ECAM/left-msg", "NONE");
} setprop("/ECAM/msg/line1", "");
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/line2", ""); setprop("/ECAM/msg/line2", "");
setprop("/ECAM/msg/line3", ""); setprop("/ECAM/msg/line3", "");
setprop("/ECAM/msg/line4", ""); setprop("/ECAM/msg/line4", "");
@ -200,59 +36,60 @@ var ECAMloop = maketimer(0.2, func {
setprop("/ECAM/msg/line6", ""); setprop("/ECAM/msg/line6", "");
setprop("/ECAM/msg/line7", ""); setprop("/ECAM/msg/line7", "");
setprop("/ECAM/msg/line8", ""); setprop("/ECAM/msg/line8", "");
setprop("/ECAM/msg/line1c", "a"); setprop("/ECAM/msg/line1c", "w");
setprop("/ECAM/msg/line2c", "g"); setprop("/ECAM/msg/line2c", "w");
setprop("/ECAM/msg/line3c", "g"); setprop("/ECAM/msg/line3c", "w");
setprop("/ECAM/msg/line4c", "g"); setprop("/ECAM/msg/line4c", "w");
setprop("/ECAM/msg/line5c", "g"); setprop("/ECAM/msg/line5c", "w");
setprop("/ECAM/msg/line6c", "g"); setprop("/ECAM/msg/line6c", "w");
setprop("/ECAM/msg/line7c", "g"); setprop("/ECAM/msg/line7c", "w");
setprop("/ECAM/msg/line8c", "g"); setprop("/ECAM/msg/line8c", "w");
setprop("/ECAM/left-msg", "MSG"); },
} else { loop: func() {
# MSGclr(); stateL = getprop("/engines/engine[0]/state");
} stateR = getprop("/engines/engine[1]/state");
thrustL = getprop("/systems/thrust/state1");
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) { thrustR = getprop("/systems/thrust/state2");
setprop("/ECAM/msg/line1", "AIR PACK 2 FAULT"); elec = getprop("/systems/electrical/on");
setprop("/ECAM/msg/line2", " - PACK 2: OFF"); speed = getprop("/velocities/airspeed-kt");
setprop("/ECAM/msg/line3", ""); wow = getprop("/gear/gear[1]/wow");
setprop("/ECAM/msg/line4", "");
setprop("/ECAM/msg/line5", ""); if (stateL == 3 and stateR == 3 and wow == 1) {
setprop("/ECAM/msg/line6", ""); if (getprop("/ECAM/engine-start-time-switch") != 1) {
setprop("/ECAM/msg/line7", ""); setprop("/ECAM/engine-start-time", getprop("/sim/time/elapsed-sec"));
setprop("/ECAM/msg/line8", ""); setprop("/ECAM/engine-start-time-switch", 1);
setprop("/ECAM/msg/line1c", "a"); }
setprop("/ECAM/msg/line2c", "b"); } else if (wow == 1) {
setprop("/ECAM/msg/line3c", "g"); if (getprop("/ECAM/engine-start-time-switch") != 0) {
setprop("/ECAM/msg/line4c", "g"); setprop("/ECAM/engine-start-time-switch", 0);
setprop("/ECAM/msg/line5c", "g"); }
setprop("/ECAM/msg/line6c", "g"); }
setprop("/ECAM/msg/line7c", "g");
setprop("/ECAM/msg/line8c", "g"); if (wow == 0) {
setprop("/ECAM/left-msg", "MSG"); setprop("/ECAM/to-memo-enable", 0);
} 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) { } else if ((stateL != 3 or stateR != 3) and wow == 1) {
setprop("/ECAM/msg/line1", "AIR PACK 2 FAULT"); setprop("/ECAM/to-memo-enable", 1);
setprop("/ECAM/msg/line2", ""); }
setprop("/ECAM/msg/line3", "");
setprop("/ECAM/msg/line4", ""); 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/msg/line5", ""); setprop("/ECAM/left-msg", "TO-MEMO");
setprop("/ECAM/msg/line6", ""); } else {
setprop("/ECAM/msg/line7", ""); setprop("/ECAM/left-msg", "NONE");
setprop("/ECAM/msg/line8", ""); }
setprop("/ECAM/msg/line1c", "a");
setprop("/ECAM/msg/line2c", "g"); 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
setprop("/ECAM/msg/line3c", "g"); and getprop("/controls/flight/flap-pos") < 5) {
setprop("/ECAM/msg/line4c", "g"); # Do nothing
setprop("/ECAM/msg/line5c", "g"); } else {
setprop("/ECAM/msg/line6c", "g"); setprop("/ECAM/to-config", 0);
setprop("/ECAM/msg/line7c", "g"); }
setprop("/ECAM/msg/line8c", "g"); },
setprop("/ECAM/left-msg", "MSG"); toConfig: func() {
} else { 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
# MSGclr(); 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 ac_ess = getprop("/systems/electrical/bus/ac-ess");
var law = getprop("/it-fbw/law"); var law = getprop("/it-fbw/law");
if (apmas == 0) { if (apmas == 0) {
fmabox();
setprop("/it-autoflight/output/ap1", 0); setprop("/it-autoflight/output/ap1", 0);
if (getprop("/it-autoflight/sound/enableapoffsound") == 1) { if (getprop("/it-autoflight/sound/enableapoffsound") == 1) {
setprop("/it-autoflight/sound/apoffsound", 1); setprop("/it-autoflight/sound/apoffsound", 1);
setprop("/it-autoflight/sound/enableapoffsound", 0); setprop("/it-autoflight/sound/enableapoffsound", 0);
} }
fmabox();
updateTimers(); updateTimers();
} else if (apmas == 1 and ac_ess >= 110 and law == 0) { } 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)) { 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); setprop("/it-autoflight/input/vert", 5);
} }
} }
fmabox();
setprop("/it-autoflight/output/ap1", 1); setprop("/it-autoflight/output/ap1", 1);
setprop("/it-autoflight/sound/enableapoffsound", 1); setprop("/it-autoflight/sound/enableapoffsound", 1);
setprop("/it-autoflight/sound/apoffsound", 0); 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 ac_ess = getprop("/systems/electrical/bus/ac-ess");
var law = getprop("/it-fbw/law"); var law = getprop("/it-fbw/law");
if (apmas == 0) { if (apmas == 0) {
fmabox();
setprop("/it-autoflight/output/ap2", 0); setprop("/it-autoflight/output/ap2", 0);
if (getprop("/it-autoflight/sound/enableapoffsound2") == 1) { if (getprop("/it-autoflight/sound/enableapoffsound2") == 1) {
setprop("/it-autoflight/sound/apoffsound2", 1); setprop("/it-autoflight/sound/apoffsound2", 1);
setprop("/it-autoflight/sound/enableapoffsound2", 0); setprop("/it-autoflight/sound/enableapoffsound2", 0);
} }
fmabox();
updateTimers(); updateTimers();
} else if (apmas == 1 and ac_ess >= 110 and law == 0) { } 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)) { 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); setprop("/it-autoflight/input/vert", 5);
} }
} }
fmabox();
setprop("/it-autoflight/output/ap2", 1); setprop("/it-autoflight/output/ap2", 1);
setprop("/it-autoflight/sound/enableapoffsound2", 1); setprop("/it-autoflight/sound/enableapoffsound2", 1);
setprop("/it-autoflight/sound/apoffsound2", 0); setprop("/it-autoflight/sound/apoffsound2", 0);
fmabox();
} }
} }
}); });
@ -179,12 +179,12 @@ setlistener("/it-autoflight/input/athr", func {
setlistener("/it-autoflight/input/fd1", func { setlistener("/it-autoflight/input/fd1", func {
var fdmas = getprop("/it-autoflight/input/fd1"); var fdmas = getprop("/it-autoflight/input/fd1");
if (fdmas == 0) { if (fdmas == 0) {
fmabox();
setprop("/it-autoflight/output/fd1", 0); setprop("/it-autoflight/output/fd1", 0);
fmabox();
updateTimers(); updateTimers();
} else if (fdmas == 1) { } else if (fdmas == 1) {
fmabox();
setprop("/it-autoflight/output/fd1", 1); setprop("/it-autoflight/output/fd1", 1);
fmabox();
} }
}); });
@ -192,12 +192,12 @@ setlistener("/it-autoflight/input/fd1", func {
setlistener("/it-autoflight/input/fd2", func { setlistener("/it-autoflight/input/fd2", func {
var fdmas = getprop("/it-autoflight/input/fd2"); var fdmas = getprop("/it-autoflight/input/fd2");
if (fdmas == 0) { if (fdmas == 0) {
fmabox();
setprop("/it-autoflight/output/fd2", 0); setprop("/it-autoflight/output/fd2", 0);
fmabox();
updateTimers(); updateTimers();
} else if (fdmas == 1) { } else if (fdmas == 1) {
fmabox();
setprop("/it-autoflight/output/fd2", 1); setprop("/it-autoflight/output/fd2", 1);
fmabox();
} }
}); });
@ -208,23 +208,33 @@ var fmabox = func {
var fd1 = getprop("/it-autoflight/output/fd1"); var fd1 = getprop("/it-autoflight/output/fd1");
var fd2 = getprop("/it-autoflight/output/fd2"); var fd2 = getprop("/it-autoflight/output/fd2");
if (!ap1 and !ap2 and !fd1 and !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); setprop("/it-autoflight/input/lat", 3);
if (getprop("/it-autoflight/custom/trk-fpa") == 0) { if (getprop("/it-autoflight/custom/trk-fpa") == 0) {
setprop("/it-autoflight/input/vert", 1); setprop("/it-autoflight/input/vert", 1);
} else if (getprop("/it-autoflight/custom/trk-fpa") == 1) { } else if (getprop("/it-autoflight/custom/trk-fpa") == 1) {
setprop("/it-autoflight/input/vert", 5); 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/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/input/fpa", math.round(getprop("/it-autoflight/internal/fpa"), 0.1));
setprop("/it-autoflight/output/fma-pwr", 1);
} }
} }
# Master Lateral # Master Lateral
setlistener("/it-autoflight/input/lat", func { 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); setprop("/it-autoflight/input/lat-arm", 0);
lateral(); lateral();
} else { } else {
@ -321,7 +331,14 @@ var lat_arm = func {
# Master Vertical # Master Vertical
setlistener("/it-autoflight/input/vert", func { 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(); vertical();
} }
}); });

View file

@ -11,7 +11,6 @@
setprop("/FMGC/internal/maxspeed", 0); setprop("/FMGC/internal/maxspeed", 0);
setprop("/FMGC/internal/minspeed", 0); setprop("/FMGC/internal/minspeed", 0);
setprop("/FMGC/internal/alpha-prot-speed", 0);
setprop("/position/gear-agl-ft", 0); setprop("/position/gear-agl-ft", 0);
setprop("/FMGC/internal/mng-spd", 157); setprop("/FMGC/internal/mng-spd", 157);
setprop("/FMGC/internal/mng-spd-cmd", 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"); mng_spd_cmd = getprop("/FMGC/internal/mng-spd-cmd");
if (mng_spd_cmd > maxspeed) { if (mng_spd_cmd > maxspeed -5) {
setprop("/FMGC/internal/mng-spd", maxspeed); setprop("/FMGC/internal/mng-spd", maxspeed -5);
} else { } else {
setprop("/FMGC/internal/mng-spd", mng_spd_cmd); 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); 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/terr-inhibit", 0);
setprop("/instrumentation/mk-viii/inputs/discretes/gpws-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/glideslope-cancel", 0);
setprop("/instrumentation/mk-viii/inputs/discretes/momentary-flap-override", 0); setprop("/instrumentation/mk-viii/inputs/discretes/momentary-flap-all-override", 0);
setprop("/instrumentation/mk-viii/inputs/discretes/momentary-flap3-override", 0); setprop("/instrumentation/mk-viii/inputs/discretes/momentary-flap-3-override", 0);
setprop("/controls/switches/cabinCall", 0); setprop("/controls/switches/cabinCall", 0);
setprop("/controls/switches/mechCall", 0); setprop("/controls/switches/mechCall", 0);
setprop("/controls/switches/emer-lights", 0.5); setprop("/controls/switches/emer-lights", 0.5);
@ -51,6 +51,8 @@ var variousReset = func {
setprop("/modes/fcu/hdg-time", 0); setprop("/modes/fcu/hdg-time", 0);
setprop("/controls/switching/ATTHDG", 0); setprop("/controls/switching/ATTHDG", 0);
setprop("/controls/switching/AIRDATA", 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 { 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-apu", 1);
setprop("/controls/electrical/switches/gen-ext", 0); setprop("/controls/electrical/switches/gen-ext", 0);
setprop("/controls/electrical/switches/apu-ext-crosstie", 1); 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/battery1", 0);
setprop("/controls/electrical/switches/battery2", 0); setprop("/controls/electrical/switches/battery2", 0);
setprop("/systems/electrical/battery1-volts", 25.9); setprop("/systems/electrical/battery1-volts", 25.9);
@ -419,117 +419,71 @@ var ELEC = {
# Left AC bus yes? # Left AC bus yes?
if (stateL == 3 and gen1_sw and !gen1_fail) { if (stateL == 3 and gen1_sw and !gen1_fail) {
setprop("/systems/electrical/bus/ac1", ac_volt_std); 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"; ac1_src = "GEN";
} else if (extpwr_on and gen_ext_sw and apu_ext_crosstie_sw) { } else if (extpwr_on and gen_ext_sw and apu_ext_crosstie_sw) {
setprop("/systems/electrical/bus/ac1", ac_volt_std); 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"; ac1_src = "EXT";
} else if (gen_apu and !genapu_fail and apu_ext_crosstie_sw) { } else if (gen_apu and !genapu_fail and apu_ext_crosstie_sw) {
setprop("/systems/electrical/bus/ac1", ac_volt_std); 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"; ac1_src = "APU";
} else if (apu_ext_crosstie_sw == 1 and xtieL) { } else if (apu_ext_crosstie_sw == 1 and xtieL) {
setprop("/systems/electrical/bus/ac1", ac_volt_std); 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"; ac1_src = "XTIE";
} else if (emergen) { } else if (emergen) {
setprop("/systems/electrical/bus/ac1", 0); 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"; ac1_src = "ESSRAT";
} else if (dcbat and ias >= 50) { } else if (dcbat and ias >= 50) {
setprop("/systems/electrical/bus/ac1", 0); 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"; ac1_src = "ESSBAT";
} else { } else {
setprop("/systems/electrical/bus/ac1", 0); setprop("/systems/electrical/bus/ac1", 0);
if (getprop("/systems/electrical/bus/ac2") == 0) {
setprop("/systems/electrical/bus/ac-ess", 0);
}
ac1_src = "XX"; ac1_src = "XX";
} }
# Right AC bus yes? # Right AC bus yes?
if (stateR == 3 and gen2_sw and !gen2_fail) { if (stateR == 3 and gen2_sw and !gen2_fail) {
setprop("/systems/electrical/bus/ac2", ac_volt_std); 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"; ac2_src = "GEN";
} else if (extpwr_on and gen_ext_sw and apu_ext_crosstie_sw) { } else if (extpwr_on and gen_ext_sw and apu_ext_crosstie_sw) {
setprop("/systems/electrical/bus/ac2", ac_volt_std); 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"; ac2_src = "EXT";
} else if (gen_apu and !genapu_fail and apu_ext_crosstie_sw) { } else if (gen_apu and !genapu_fail and apu_ext_crosstie_sw) {
setprop("/systems/electrical/bus/ac2", ac_volt_std); 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"; ac2_src = "APU";
} else if (apu_ext_crosstie_sw == 1 and xtieR) { } else if (apu_ext_crosstie_sw == 1 and xtieR) {
setprop("/systems/electrical/bus/ac2", ac_volt_std); 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"; ac2_src = "XTIE";
} else if (emergen) { } else if (emergen) {
setprop("/systems/electrical/bus/ac2", 0); 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"; ac2_src = "ESSRAT";
} else if (dcbat and ias >= 50) { } else if (dcbat and ias >= 50) {
setprop("/systems/electrical/bus/ac2", 0); 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); setprop("/systems/electrical/bus/ac-ess", ac_volt_std);
} else { } else {
setprop("/systems/electrical/bus/ac-ess", 0); setprop("/systems/electrical/bus/ac-ess", 0);
} }
ac2_src = "ESSBAT";
} else { } else {
setprop("/systems/electrical/bus/ac2", 0); setprop("/systems/electrical/bus/ac-ess", 0);
if (getprop("/systems/electrical/bus/ac1") == 0) {
setprop("/systems/electrical/bus/ac-ess", 0);
}
ac2_src = "XX";
} }
ac_ess = getprop("/systems/electrical/bus/ac-ess");
# HZ/Volts yes? # HZ/Volts yes?
if (stateL == 3 and gen1_sw and !gen1_fail) { if (stateL == 3 and gen1_sw and !gen1_fail) {
setprop("/systems/electrical/extra/gen1-volts", ac_volt_std); setprop("/systems/electrical/extra/gen1-volts", ac_volt_std);
@ -563,10 +517,6 @@ var ELEC = {
setprop("/systems/electrical/extra/apu-hz", 0); 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) { if (ac1 == 0 and ac2 == 0 and emergen == 0) {
setprop("/systems/electrical/bus/ac-ess-shed", 0); setprop("/systems/electrical/bus/ac-ess-shed", 0);
} else { } else {
@ -738,7 +688,7 @@ var ELEC = {
setprop("/systems/electrical/gen1-fault", 0); 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); setprop("/systems/electrical/ac-ess-feed-fault", 1);
} else { } else {
setprop("/systems/electrical/ac-ess-feed-fault", 0); 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/power-avail", 0);
setprop("/systems/fadec/powered1", 0); setprop("/systems/fadec/powered1", 0);
setprop("/systems/fadec/powered2", 0); setprop("/systems/fadec/powered2", 0);
setprop("/systems/fadec/powered-time", 0);
setprop("/systems/fadec/powerup", 0);
setlistener("/sim/signals/fdm-initialized", func { var fadecLoop = func {
fadecLoop.start();
});
var fadecLoop = maketimer(0.7, func {
var ac1 = getprop("/systems/electrical/bus/ac1"); var ac1 = getprop("/systems/electrical/bus/ac1");
var ac2 = getprop("/systems/electrical/bus/ac2"); var ac2 = getprop("/systems/electrical/bus/ac2");
var acess = getprop("/systems/electrical/bus/ac-ess"); 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"); var modeSel = getprop("/controls/engines/engine-start-switch");
if (ac1 >= 110 or ac2 >= 110 or acess >= 110) { 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 { } 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"); 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) { if (state1 == 3) {
setprop("/systems/fadec/powered1", 1); setprop("/systems/fadec/powered1", 1);
} else if (powerAvail and modeSel == 2) { } else if (powerAvail and modeSel == 2) {
@ -59,7 +68,7 @@ var fadecLoop = maketimer(0.7, func {
var powered1 = getprop("/systems/fadec/powered1"); var powered1 = getprop("/systems/fadec/powered1");
var powered2 = getprop("/systems/fadec/powered2"); 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/n1", 1);
setprop("/systems/fadec/eng1/egt", 1); setprop("/systems/fadec/eng1/egt", 1);
setprop("/systems/fadec/eng1/n2", 1); setprop("/systems/fadec/eng1/n2", 1);
@ -71,7 +80,7 @@ var fadecLoop = maketimer(0.7, func {
setprop("/systems/fadec/eng1/ff", 0); 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/n1", 1);
setprop("/systems/fadec/eng2/egt", 1); setprop("/systems/fadec/eng2/egt", 1);
setprop("/systems/fadec/eng2/n2", 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/n2", 0);
setprop("/systems/fadec/eng2/ff", 0); setprop("/systems/fadec/eng2/ff", 0);
} }
}); }

View file

@ -5,6 +5,12 @@
# Copyright (c) Joshua Davidson (it0uchpods) # # 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/alpha-floor", 0);
setprop("/systems/thrust/toga-lk", 0); setprop("/systems/thrust/toga-lk", 0);
setprop("/systems/thrust/epr/toga-lim", 0.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 n1mct = getprop("/systems/thrust/n1/mct-lim");
var n1flx = getprop("/systems/thrust/n1/flx-lim"); var n1flx = getprop("/systems/thrust/n1/flx-lim");
var n1clb = getprop("/systems/thrust/n1/clb-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 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"); var gs = getprop("/velocities/groundspeed-kt");
thrust_lim.start(); thrust_loop.start();
thrustt.start(); thrust_flash.start();
}); });
setlistener("/controls/engines/engine[0]/throttle-pos", func { 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"); state1 = getprop("/systems/thrust/state1");
state2 = getprop("/systems/thrust/state2"); state2 = getprop("/systems/thrust/state2");
engstate1 = getprop("/engines/engine[0]/state"); 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/epr-limit", eprtoga);
setprop("/controls/engines/n1-limit", n1toga); 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 { 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"); state1 = getprop("/systems/thrust/state1");
state2 = getprop("/systems/thrust/state2"); state2 = getprop("/systems/thrust/state2");
@ -295,26 +330,4 @@ var thrust_loop = func {
setprop("/systems/thrust/lvrclb", 0); 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/power-avail", 0);
setprop("/systems/fadec/powered1", 0); setprop("/systems/fadec/powered1", 0);
setprop("/systems/fadec/powered2", 0); setprop("/systems/fadec/powered2", 0);
setprop("/systems/fadec/powered-time", 0);
setprop("/systems/fadec/powerup", 0);
setlistener("/sim/signals/fdm-initialized", func { var fadecLoop = func {
fadecLoop.start();
});
var fadecLoop = maketimer(0.7, func {
var ac1 = getprop("/systems/electrical/bus/ac1"); var ac1 = getprop("/systems/electrical/bus/ac1");
var ac2 = getprop("/systems/electrical/bus/ac2"); var ac2 = getprop("/systems/electrical/bus/ac2");
var acess = getprop("/systems/electrical/bus/ac-ess"); 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"); var N1Mode2_sw = getprop("/controls/fadec/n1mode2");
if (ac1 >= 110 or ac2 >= 110 or acess >= 110) { 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 { } 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"); 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) { if (state1 == 3) {
setprop("/systems/fadec/powered1", 1); setprop("/systems/fadec/powered1", 1);
} else if (powerAvail and modeSel == 2) { } else if (powerAvail and modeSel == 2) {
@ -62,6 +71,18 @@ var fadecLoop = maketimer(0.7, func {
setprop("/systems/fadec/powered2", 0); 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 powered1 = getprop("/systems/fadec/powered1");
var powered2 = getprop("/systems/fadec/powered2"); var powered2 = getprop("/systems/fadec/powered2");
var N1Mode1 = getprop("/systems/fadec/n1mode1"); 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 N21 = getprop("/engines/engine[0]/n2-actual");
var N22 = getprop("/engines/engine[1]/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); setprop("/systems/fadec/eng1/epr", 1);
} else { } else {
setprop("/systems/fadec/eng1/epr", 0); 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); setprop("/systems/fadec/eng2/epr", 1);
} else { } else {
setprop("/systems/fadec/eng2/epr", 0); 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/egt", 1);
setprop("/systems/fadec/eng1/ff", 1); setprop("/systems/fadec/eng1/ff", 1);
} else { } else {
@ -91,7 +112,7 @@ var fadecLoop = maketimer(0.7, func {
setprop("/systems/fadec/eng1/ff", 0); 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/egt", 1);
setprop("/systems/fadec/eng2/ff", 1); setprop("/systems/fadec/eng2/ff", 1);
} else { } else {
@ -122,16 +143,4 @@ var fadecLoop = maketimer(0.7, func {
} else { } else {
setprop("/systems/fadec/eng2/n2", 0); 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 # # Various Other Stuff #
####################### #######################
setlistener("/sim/signals/fdm-initialized", func { var systemsInit = func {
fbw.fctlInit(); fbw.fctlInit();
systems.ELEC.init(); systems.ELEC.init();
systems.PNEU.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"); 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/fd1", 1);
setprop("/it-autoflight/input/fd2", 1); setprop("/it-autoflight/input/fd2", 1);
libraries.ECAMinit(); libraries.ECAM.init();
libraries.variousReset(); libraries.variousReset();
}
setlistener("/sim/signals/fdm-initialized", func {
systemsInit();
}); });
var systemsLoop = maketimer(0.1, func { var systemsLoop = maketimer(0.1, func {
@ -199,6 +203,8 @@ var systemsLoop = maketimer(0.1, func {
systems.HYD.loop(); systems.HYD.loop();
systems.FUEL.loop(); systems.FUEL.loop();
systems.ADIRS.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)) { 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); 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) { 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"))); 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 { setlistener("/options/steep-ils", func {
@ -225,23 +237,23 @@ setlistener("/options/steep-ils", func {
}); });
canvas.Text._lastText = canvas.Text["_lastText"]; canvas.Text._lastText = canvas.Text["_lastText"];
canvas.Text.setText = func (text) { canvas.Text.setText = func(text) {
if (text == me._lastText) {return me;} if (text == me._lastText) {return me;}
me._lastText = text; me._lastText = text;
me.set("text", typeof(text) == 'scalar' ? text : ""); me.set("text", typeof(text) == 'scalar' ? text : "");
}; };
canvas.Element._lastVisible = nil; canvas.Element._lastVisible = nil;
canvas.Element.show = func () { canvas.Element.show = func {
if (1 == me._lastVisible) {return me;} if (1 == me._lastVisible) {return me;}
me._lastVisible = 1; me._lastVisible = 1;
me.setBool("visible", 1); me.setBool("visible", 1);
}; };
canvas.Element.hide = func () { canvas.Element.hide = func {
if (0 == me._lastVisible) {return me;} if (0 == me._lastVisible) {return me;}
me._lastVisible = 0; me._lastVisible = 0;
me.setBool("visible", 0); me.setBool("visible", 0);
}; };
canvas.Element.setVisible = func (vis) { canvas.Element.setVisible = func(vis) {
if (vis == me._lastVisible) {return me;} if (vis == me._lastVisible) {return me;}
me._lastVisible = vis; me._lastVisible = vis;
me.setBool("visible", vis); me.setBool("visible", vis);

View file

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

View file

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

View file

@ -16,7 +16,7 @@
<type>gain</type> <type>gain</type>
<gain>1.0</gain> <gain>1.0</gain>
<update-interval-secs type="double">0.05</update-interval-secs> <update-interval-secs type="double">0.05</update-interval-secs>
<input> <input>
<expression> <expression>
<table> <table>
<property>/environment/temperature-degc</property> <property>/environment/temperature-degc</property>
@ -34,7 +34,7 @@
<type>gain</type> <type>gain</type>
<gain>1.0</gain> <gain>1.0</gain>
<update-interval-secs type="double">0.05</update-interval-secs> <update-interval-secs type="double">0.05</update-interval-secs>
<input> <input>
<expression> <expression>
<table> <table>
<property>/FMGC/internal/flex</property> <property>/FMGC/internal/flex</property>
@ -76,7 +76,7 @@
</condition> </condition>
<expression> <expression>
<table> <table>
<property>/position/altitude-ft</property> <property>/fdm/jsbsim/atmosphere/density-altitude</property>
<entry><ind> 0</ind><dep>0.035</dep></entry> <entry><ind> 0</ind><dep>0.035</dep></entry>
<entry><ind>42000</ind><dep>0.285</dep></entry> <entry><ind>42000</ind><dep>0.285</dep></entry>
</table> </table>
@ -91,7 +91,7 @@
<type>gain</type> <type>gain</type>
<gain>1.0</gain> <gain>1.0</gain>
<update-interval-secs type="double">0.05</update-interval-secs> <update-interval-secs type="double">0.05</update-interval-secs>
<input> <input>
<expression> <expression>
<table> <table>
<property>/controls/engines/engine[0]/throttle-pos</property> <property>/controls/engines/engine[0]/throttle-pos</property>
@ -113,7 +113,7 @@
<type>gain</type> <type>gain</type>
<gain>1.0</gain> <gain>1.0</gain>
<update-interval-secs type="double">0.05</update-interval-secs> <update-interval-secs type="double">0.05</update-interval-secs>
<input> <input>
<expression> <expression>
<table> <table>
<property>/controls/engines/engine[1]/throttle-pos</property> <property>/controls/engines/engine[1]/throttle-pos</property>
@ -135,7 +135,7 @@
<type>gain</type> <type>gain</type>
<gain>1.0</gain> <gain>1.0</gain>
<update-interval-secs type="double">0.05</update-interval-secs> <update-interval-secs type="double">0.05</update-interval-secs>
<input> <input>
<expression> <expression>
<product> <product>
<table> <table>
@ -160,7 +160,7 @@
<type>gain</type> <type>gain</type>
<gain>1.0</gain> <gain>1.0</gain>
<update-interval-secs type="double">0.05</update-interval-secs> <update-interval-secs type="double">0.05</update-interval-secs>
<input> <input>
<expression> <expression>
<product> <product>
<table> <table>
@ -184,12 +184,12 @@
<name>EPR Scale</name> <name>EPR Scale</name>
<type>gain</type> <type>gain</type>
<gain>1.0</gain> <gain>1.0</gain>
<input> <input>
<expression> <expression>
<table> <table>
<property>/position/altitude-ft</property> <property>/fdm/jsbsim/atmosphere/density-altitude</property>
<entry><ind> 0</ind><dep>0.576</dep></entry> <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> </table>
</expression> </expression>
</input> </input>
@ -197,19 +197,61 @@
</filter> </filter>
<filter> <filter>
<name>EPR Scale 2</name> <name>Alpha Normalizer</name>
<type>gain</type> <type>gain</type>
<gain>1.0</gain> <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> <expression>
<table> <difference>
<property>/position/altitude-ft</property> <table>
<entry><ind> 0</ind><dep>0.988</dep></entry> <property>/fdm/jsbsim/atmosphere/density-altitude</property>
<entry><ind>42000</ind><dep>0.708</dep></entry> <entry><ind> 0</ind><dep>0.988</dep></entry>
</table> <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> </expression>
</input> </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> <output>/engines/epr-scale-b</output>
<filter-time>0.32</filter-time>
</filter> </filter>
<!-- --> <!-- -->
@ -218,7 +260,7 @@
<name>EPR N1 Input Engine 1</name> <name>EPR N1 Input Engine 1</name>
<type>gain</type> <type>gain</type>
<gain>1.0</gain> <gain>1.0</gain>
<input> <input>
<expression> <expression>
<product> <product>
<property>/engines/engine[0]/n1-actual</property> <property>/engines/engine[0]/n1-actual</property>
@ -237,7 +279,7 @@
<name>EPR N1 Input Engine 2</name> <name>EPR N1 Input Engine 2</name>
<type>gain</type> <type>gain</type>
<gain>1.0</gain> <gain>1.0</gain>
<input> <input>
<expression> <expression>
<product> <product>
<property>/engines/engine[1]/n1-actual</property> <property>/engines/engine[1]/n1-actual</property>
@ -256,7 +298,7 @@
<name>EPR THR Input Engine 1</name> <name>EPR THR Input Engine 1</name>
<type>gain</type> <type>gain</type>
<gain>1.0</gain> <gain>1.0</gain>
<input> <input>
<expression> <expression>
<product> <product>
<table> <table>
@ -283,7 +325,7 @@
<name>EPR THR Input Engine 2</name> <name>EPR THR Input Engine 2</name>
<type>gain</type> <type>gain</type>
<gain>1.0</gain> <gain>1.0</gain>
<input> <input>
<expression> <expression>
<product> <product>
<table> <table>
@ -310,7 +352,7 @@
<name>EPR THR Input Flex</name> <name>EPR THR Input Flex</name>
<type>gain</type> <type>gain</type>
<gain>1.0</gain> <gain>1.0</gain>
<input> <input>
<expression> <expression>
<product> <product>
<table> <table>

View file

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

View file

@ -1 +1 @@
4114 4211