MAN FLX, TO PERF on MCDU working more

This commit is contained in:
Joshua Davidson 2017-05-26 13:50:53 -04:00
parent dcae21ae21
commit 35b2197b3c
15 changed files with 1058 additions and 106 deletions

View file

@ -627,7 +627,7 @@
<ILS2>0</ILS2> <ILS2>0</ILS2>
<stallvls>-10</stallvls> <stallvls>-10</stallvls>
<fma> <fma>
<athr-box>O </athr-box> <athr-box>I .</athr-box>
</fma> </fma>
</pfd> </pfd>
</modes> </modes>

View file

@ -4,7 +4,7 @@ MATERIAL "ac3dmat1" rgb 1 1 1 amb 1 1 1 emis 0 0 0 spec 1 1 1 shi 0 trans 0
OBJECT world OBJECT world
kids 4 kids 4
OBJECT poly OBJECT poly
name "vr" name "vrbox"
loc -0.0660365 -0.00059823 0.0488058 loc -0.0660365 -0.00059823 0.0488058
data 10 data 10
enginepane enginepane
@ -25,7 +25,7 @@ refs 4
2 0.772026 0.340808 2 0.772026 0.340808
kids 0 kids 0
OBJECT poly OBJECT poly
name "v1" name "v1box"
loc -0.0766055 -0.00059823 0.0486379 loc -0.0766055 -0.00059823 0.0486379
data 10 data 10
enginepane enginepane
@ -46,7 +46,7 @@ refs 4
1 0.770887 0.340902 1 0.770887 0.340902
kids 0 kids 0
OBJECT poly OBJECT poly
name "v2" name "v2box"
loc -0.055732 -0.00059823 0.0488504 loc -0.055732 -0.00059823 0.0488504
data 10 data 10
enginepane enginepane

View file

@ -0,0 +1,37 @@
<?xml version="1.0"?>
<!--
##################################################################
# A3XX mCDU by Joshua Davidson (it0uchpods) and Jonathan Redpath #
##################################################################
-->
<PropertyList>
<path>BOX.ac</path>
<animation>
<type>select</type>
<object-name>v1box</object-name>
<condition>
<not><property>/FMGC/internal/v1-set</property></not>
</condition>
</animation>
<animation>
<type>select</type>
<object-name>vrbox</object-name>
<condition>
<not><property>/FMGC/internal/vr-set</property></not>
</condition>
</animation>
<animation>
<type>select</type>
<object-name>v2box</object-name>
<condition>
<not><property>/FMGC/internal/v2-set</property></not>
</condition>
</animation>
</PropertyList>

View file

@ -1,13 +0,0 @@
<?xml version="1.0"?>
<!--
##################################################################
# A3XX mCDU by Joshua Davidson (it0uchpods) and Jonathan Redpath #
##################################################################
-->
<PropertyList>
<path>INITBOX.ac</path>
</PropertyList>

View file

@ -10,9 +10,9 @@
<path>EMPTY.ac</path> <path>EMPTY.ac</path>
<!--<model> <model>
<name>INITBOX</name> <name>BOX</name>
<path>INITBOX.xml</path> <path>BOX.xml</path>
<offsets> <offsets>
<x-m>-0.001</x-m> <x-m>-0.001</x-m>
<y-m>0.0</y-m> <y-m>0.0</y-m>
@ -21,7 +21,7 @@
<roll-deg>-180</roll-deg> <roll-deg>-180</roll-deg>
<pitch-deg>-90</pitch-deg> <pitch-deg>-90</pitch-deg>
</offsets> </offsets>
</model>--> </model>
<text> <text>
<name>page</name> <name>page</name>
@ -47,19 +47,6 @@
</font-resolution> </font-resolution>
</text> </text>
<model>
<name>INITBOX</name>
<path>INITBOX.xml</path>
<offsets>
<x-m>-0.001</x-m>
<y-m>0.0</y-m>
<z-m>0.0</z-m>
<heading-deg>-180</heading-deg>
<roll-deg>-180</roll-deg>
<pitch-deg>-90</pitch-deg>
</offsets>
</model>
<text> <text>
<name>v1</name> <name>v1</name>
<offsets> <offsets>
@ -84,6 +71,38 @@
</font-resolution> </font-resolution>
</text> </text>
<text>
<name>v12</name>
<offsets>
<x-m>-0.001</x-m>
<y-m>-0.045</y-m>
<z-m>0.0715</z-m>
</offsets>
<alignment>left-center</alignment>
<axis-alignment>yz-plane</axis-alignment>
<type type="string">text-value</type>
<format type="string">%s</format>
<truncate type="bool">false</truncate>
<font type="string">BoeingCDU-Large.ttf</font>
<property>/FMGC/internal/v1</property>
<draw-text type="bool">true</draw-text>
<draw-alignment type="bool">false</draw-alignment>
<draw-boundingbox type="bool">false</draw-boundingbox>
<character-size>0.0050</character-size>
<font-resolution>
<width type="int">64</width>
<height type="int">64</height>
</font-resolution>
</text>
<animation>
<type>select</type>
<object-name>v12</object-name>
<condition>
<property>/FMGC/internal/v1-set</property>
</condition>
</animation>
<text> <text>
<name>flprtr</name> <name>flprtr</name>
<offsets> <offsets>
@ -204,6 +223,38 @@
</font-resolution> </font-resolution>
</text> </text>
<text>
<name>vr2</name>
<offsets>
<x-m>-0.001</x-m>
<y-m>-0.045</y-m>
<z-m>0.061</z-m>
</offsets>
<alignment>left-center</alignment>
<axis-alignment>yz-plane</axis-alignment>
<type type="string">text-value</type>
<format type="string">%s</format>
<truncate type="bool">false</truncate>
<font type="string">BoeingCDU-Large.ttf</font>
<property>/FMGC/internal/vr</property>
<draw-text type="bool">true</draw-text>
<draw-alignment type="bool">false</draw-alignment>
<draw-boundingbox type="bool">false</draw-boundingbox>
<character-size>0.0050</character-size>
<font-resolution>
<width type="int">64</width>
<height type="int">64</height>
</font-resolution>
</text>
<animation>
<type>select</type>
<object-name>vr2</object-name>
<condition>
<property>/FMGC/internal/vr-set</property>
</condition>
</animation>
<text> <text>
<name>sltrtr</name> <name>sltrtr</name>
<offsets> <offsets>
@ -325,7 +376,7 @@
</text> </text>
<text> <text>
<name>flapsmcdu2</name> <name>flapsmcdu</name>
<offsets> <offsets>
<x-m>-0.001</x-m> <x-m>-0.001</x-m>
<y-m>0.045</y-m> <y-m>0.045</y-m>
@ -349,7 +400,7 @@
</text> </text>
<text> <text>
<name>flapsmcdu</name> <name>flapsmcdu2</name>
<offsets> <offsets>
<x-m>-0.001</x-m> <x-m>-0.001</x-m>
<y-m>0.045</y-m> <y-m>0.045</y-m>
@ -358,7 +409,7 @@
<alignment>right-center</alignment> <alignment>right-center</alignment>
<axis-alignment>yz-plane</axis-alignment> <axis-alignment>yz-plane</axis-alignment>
<type type="string">text-value</type> <type type="string">text-value</type>
<format type="string">[ ]/[ ]</format> <format type="string">[ ]/[ . ]</format>
<truncate type="bool">false</truncate> <truncate type="bool">false</truncate>
<font type="string">helvetica_medium.txf</font> <font type="string">helvetica_medium.txf</font>
<property>autopilot/serviceable</property> <property>autopilot/serviceable</property>
@ -372,6 +423,70 @@
</font-resolution> </font-resolution>
</text> </text>
<text>
<name>flapsmcdu3</name>
<offsets>
<x-m>-0.001</x-m>
<y-m>0.0275</y-m>
<z-m>0.0505</z-m>
</offsets>
<alignment>right-center</alignment>
<axis-alignment>yz-plane</axis-alignment>
<type type="string">text-value</type>
<format type="string">%s</format>
<truncate type="bool">false</truncate>
<font type="string">BoeingCDU-Large.ttf</font>
<property>/FMGC/internal/to-flap</property>
<draw-text type="bool">true</draw-text>
<draw-alignment type="bool">false</draw-alignment>
<draw-boundingbox type="bool">false</draw-boundingbox>
<character-size>0.0050</character-size>
<font-resolution>
<width type="int">64</width>
<height type="int">64</height>
</font-resolution>
</text>
<text>
<name>flapsmcdu3</name>
<offsets>
<x-m>-0.001</x-m>
<y-m>0.045</y-m>
<z-m>0.0505</z-m>
</offsets>
<alignment>right-center</alignment>
<axis-alignment>yz-plane</axis-alignment>
<type type="string">text-value</type>
<format type="string">/UP%s</format>
<truncate type="bool">false</truncate>
<font type="string">BoeingCDU-Large.ttf</font>
<property>/FMGC/internal/to-ths</property>
<draw-text type="bool">true</draw-text>
<draw-alignment type="bool">false</draw-alignment>
<draw-boundingbox type="bool">false</draw-boundingbox>
<character-size>0.0050</character-size>
<font-resolution>
<width type="int">64</width>
<height type="int">64</height>
</font-resolution>
</text>
<animation>
<type>select</type>
<object-name>flapsmcdu2</object-name>
<condition>
<not><property>/FMGC/internal/flap-ths-set</property></not>
</condition>
</animation>
<animation>
<type>select</type>
<object-name>flapsmcdu3</object-name>
<condition>
<property>/FMGC/internal/flap-ths-set</property>
</condition>
</animation>
<text> <text>
<name>v2</name> <name>v2</name>
<offsets> <offsets>
@ -396,6 +511,38 @@
</font-resolution> </font-resolution>
</text> </text>
<text>
<name>v22</name>
<offsets>
<x-m>-0.001</x-m>
<y-m>-0.045</y-m>
<z-m>0.0505</z-m>
</offsets>
<alignment>left-center</alignment>
<axis-alignment>yz-plane</axis-alignment>
<type type="string">text-value</type>
<format type="string">%s</format>
<truncate type="bool">false</truncate>
<font type="string">BoeingCDU-Large.ttf</font>
<property>/FMGC/internal/v2</property>
<draw-text type="bool">true</draw-text>
<draw-alignment type="bool">false</draw-alignment>
<draw-boundingbox type="bool">false</draw-boundingbox>
<character-size>0.0050</character-size>
<font-resolution>
<width type="int">64</width>
<height type="int">64</height>
</font-resolution>
</text>
<animation>
<type>select</type>
<object-name>v22</object-name>
<condition>
<property>/FMGC/internal/v2-set</property>
</condition>
</animation>
<text> <text>
<name>clean</name> <name>clean</name>
<offsets> <offsets>
@ -478,10 +625,10 @@
<alignment>left-center</alignment> <alignment>left-center</alignment>
<axis-alignment>yz-plane</axis-alignment> <axis-alignment>yz-plane</axis-alignment>
<type type="string">text-value</type> <type type="string">text-value</type>
<format type="string">18000</format> <format type="string">%s</format>
<truncate type="bool">false</truncate> <truncate type="bool">false</truncate>
<font type="string">BoeingCDU-Large.ttf</font> <font type="string">BoeingCDU-Large.ttf</font>
<property>autopilot/serviceable</property> <property>/FMGC/internal/trans-alt</property>
<draw-text type="bool">true</draw-text> <draw-text type="bool">true</draw-text>
<draw-alignment type="bool">false</draw-alignment> <draw-alignment type="bool">false</draw-alignment>
<draw-boundingbox type="bool">false</draw-boundingbox> <draw-boundingbox type="bool">false</draw-boundingbox>
@ -677,7 +824,7 @@
</animation> </animation>
<text> <text>
<name>flex2</name> <name>flex</name>
<offsets> <offsets>
<x-m>-0.001</x-m> <x-m>-0.001</x-m>
<y-m>0.042</y-m> <y-m>0.042</y-m>
@ -701,7 +848,7 @@
</text> </text>
<text> <text>
<name>flex</name> <name>flex2</name>
<offsets> <offsets>
<x-m>-0.001</x-m> <x-m>-0.001</x-m>
<y-m>0.045</y-m> <y-m>0.045</y-m>
@ -724,6 +871,46 @@
</font-resolution> </font-resolution>
</text> </text>
<text>
<name>flex3</name>
<offsets>
<x-m>-0.001</x-m>
<y-m>0.045</y-m>
<z-m>0.039</z-m>
</offsets>
<alignment>right-center</alignment>
<axis-alignment>yz-plane</axis-alignment>
<type type="string">text-value</type>
<format type="string">%sC</format>
<truncate type="bool">false</truncate>
<font type="string">BoeingCDU-Large.ttf</font>
<property>/FMGC/internal/flex</property>
<draw-text type="bool">true</draw-text>
<draw-alignment type="bool">false</draw-alignment>
<draw-boundingbox type="bool">false</draw-boundingbox>
<character-size>0.0050</character-size>
<font-resolution>
<width type="int">64</width>
<height type="int">64</height>
</font-resolution>
</text>
<animation>
<type>select</type>
<object-name>flex2</object-name>
<condition>
<not><property>/FMGC/internal/flex-set</property></not>
</condition>
</animation>
<animation>
<type>select</type>
<object-name>flex3</object-name>
<condition>
<property>/FMGC/internal/flex-set</property>
</condition>
</animation>
<text> <text>
<name>uplink</name> <name>uplink</name>
<offsets> <offsets>
@ -833,9 +1020,9 @@
<object-name>next</object-name> <object-name>next</object-name>
<object-name>phase</object-name> <object-name>phase</object-name>
<object-name>shift</object-name> <object-name>shift</object-name>
<object-name>flex2</object-name> <object-name>flex</object-name>
<object-name>thredacc</object-name> <object-name>thredacc</object-name>
<object-name>flapsmcdu2</object-name> <object-name>flapsmcdu</object-name>
<object-name>eoaccel2</object-name> <object-name>eoaccel2</object-name>
<object-name>flprtr</object-name> <object-name>flprtr</object-name>
<object-name>sltrtr</object-name> <object-name>sltrtr</object-name>
@ -926,12 +1113,17 @@
<animation> <animation>
<type>material</type> <type>material</type>
<object-name>toshift3</object-name> <object-name>toshift3</object-name>
<object-name>flapsmcdu</object-name> <object-name>flapsmcdu2</object-name>
<object-name>flapsmcdu3</object-name>
<object-name>trans2</object-name> <object-name>trans2</object-name>
<object-name>eoaccel</object-name> <object-name>eoaccel</object-name>
<object-name>thred</object-name> <object-name>thred</object-name>
<object-name>thred2</object-name> <object-name>thred2</object-name>
<object-name>flex</object-name> <object-name>flex2</object-name>
<object-name>flex3</object-name>
<object-name>v12</object-name>
<object-name>vr2</object-name>
<object-name>v22</object-name>
<diffuse> <diffuse>
<red>0</red> <red>0</red>
<green>0.5</green> <green>0.5</green>

View file

@ -4,7 +4,7 @@ MATERIAL "ac3dmat1" rgb 1 1 1 amb 1 1 1 emis 0 0 0 spec 1 1 1 shi 0 trans 0
OBJECT world OBJECT world
kids 4 kids 4
OBJECT poly OBJECT poly
name "vr" name "vrbox"
loc -0.0660365 -0.00059823 0.0488058 loc -0.0660365 -0.00059823 0.0488058
data 10 data 10
enginepane enginepane
@ -25,7 +25,7 @@ refs 4
2 0.772026 0.340808 2 0.772026 0.340808
kids 0 kids 0
OBJECT poly OBJECT poly
name "v1" name "v1box"
loc -0.0766055 -0.00059823 0.0486379 loc -0.0766055 -0.00059823 0.0486379
data 10 data 10
enginepane enginepane
@ -46,7 +46,7 @@ refs 4
1 0.770887 0.340902 1 0.770887 0.340902
kids 0 kids 0
OBJECT poly OBJECT poly
name "v2" name "v2box"
loc -0.055732 -0.00059823 0.0488504 loc -0.055732 -0.00059823 0.0488504
data 10 data 10
enginepane enginepane

View file

@ -0,0 +1,37 @@
<?xml version="1.0"?>
<!--
##################################################################
# A3XX mCDU by Joshua Davidson (it0uchpods) and Jonathan Redpath #
##################################################################
-->
<PropertyList>
<path>BOX.ac</path>
<animation>
<type>select</type>
<object-name>v1box</object-name>
<condition>
<not><property>/FMGC/internal/v1-set</property></not>
</condition>
</animation>
<animation>
<type>select</type>
<object-name>vrbox</object-name>
<condition>
<not><property>/FMGC/internal/vr-set</property></not>
</condition>
</animation>
<animation>
<type>select</type>
<object-name>v2box</object-name>
<condition>
<not><property>/FMGC/internal/v2-set</property></not>
</condition>
</animation>
</PropertyList>

View file

@ -1,13 +0,0 @@
<?xml version="1.0"?>
<!--
##################################################################
# A3XX mCDU by Joshua Davidson (it0uchpods) and Jonathan Redpath #
##################################################################
-->
<PropertyList>
<path>INITBOX.ac</path>
</PropertyList>

View file

@ -10,9 +10,9 @@
<path>EMPTY.ac</path> <path>EMPTY.ac</path>
<!--<model> <model>
<name>INITBOX</name> <name>BOX</name>
<path>INITBOX.xml</path> <path>BOX.xml</path>
<offsets> <offsets>
<x-m>-0.001</x-m> <x-m>-0.001</x-m>
<y-m>0.0</y-m> <y-m>0.0</y-m>
@ -21,7 +21,7 @@
<roll-deg>-180</roll-deg> <roll-deg>-180</roll-deg>
<pitch-deg>-90</pitch-deg> <pitch-deg>-90</pitch-deg>
</offsets> </offsets>
</model>--> </model>
<text> <text>
<name>page</name> <name>page</name>
@ -47,19 +47,6 @@
</font-resolution> </font-resolution>
</text> </text>
<model>
<name>INITBOX</name>
<path>INITBOX.xml</path>
<offsets>
<x-m>-0.001</x-m>
<y-m>0.0</y-m>
<z-m>0.0</z-m>
<heading-deg>-180</heading-deg>
<roll-deg>-180</roll-deg>
<pitch-deg>-90</pitch-deg>
</offsets>
</model>
<text> <text>
<name>v1</name> <name>v1</name>
<offsets> <offsets>
@ -84,6 +71,38 @@
</font-resolution> </font-resolution>
</text> </text>
<text>
<name>v12</name>
<offsets>
<x-m>-0.001</x-m>
<y-m>-0.045</y-m>
<z-m>0.0715</z-m>
</offsets>
<alignment>left-center</alignment>
<axis-alignment>yz-plane</axis-alignment>
<type type="string">text-value</type>
<format type="string">%s</format>
<truncate type="bool">false</truncate>
<font type="string">BoeingCDU-Large.ttf</font>
<property>/FMGC/internal/v1</property>
<draw-text type="bool">true</draw-text>
<draw-alignment type="bool">false</draw-alignment>
<draw-boundingbox type="bool">false</draw-boundingbox>
<character-size>0.0050</character-size>
<font-resolution>
<width type="int">64</width>
<height type="int">64</height>
</font-resolution>
</text>
<animation>
<type>select</type>
<object-name>v12</object-name>
<condition>
<property>/FMGC/internal/v1-set</property>
</condition>
</animation>
<text> <text>
<name>flprtr</name> <name>flprtr</name>
<offsets> <offsets>
@ -204,6 +223,38 @@
</font-resolution> </font-resolution>
</text> </text>
<text>
<name>vr2</name>
<offsets>
<x-m>-0.001</x-m>
<y-m>-0.045</y-m>
<z-m>0.061</z-m>
</offsets>
<alignment>left-center</alignment>
<axis-alignment>yz-plane</axis-alignment>
<type type="string">text-value</type>
<format type="string">%s</format>
<truncate type="bool">false</truncate>
<font type="string">BoeingCDU-Large.ttf</font>
<property>/FMGC/internal/vr</property>
<draw-text type="bool">true</draw-text>
<draw-alignment type="bool">false</draw-alignment>
<draw-boundingbox type="bool">false</draw-boundingbox>
<character-size>0.0050</character-size>
<font-resolution>
<width type="int">64</width>
<height type="int">64</height>
</font-resolution>
</text>
<animation>
<type>select</type>
<object-name>vr2</object-name>
<condition>
<property>/FMGC/internal/vr-set</property>
</condition>
</animation>
<text> <text>
<name>sltrtr</name> <name>sltrtr</name>
<offsets> <offsets>
@ -325,7 +376,7 @@
</text> </text>
<text> <text>
<name>flapsmcdu2</name> <name>flapsmcdu</name>
<offsets> <offsets>
<x-m>-0.001</x-m> <x-m>-0.001</x-m>
<y-m>0.045</y-m> <y-m>0.045</y-m>
@ -349,7 +400,7 @@
</text> </text>
<text> <text>
<name>flapsmcdu</name> <name>flapsmcdu2</name>
<offsets> <offsets>
<x-m>-0.001</x-m> <x-m>-0.001</x-m>
<y-m>0.045</y-m> <y-m>0.045</y-m>
@ -358,7 +409,7 @@
<alignment>right-center</alignment> <alignment>right-center</alignment>
<axis-alignment>yz-plane</axis-alignment> <axis-alignment>yz-plane</axis-alignment>
<type type="string">text-value</type> <type type="string">text-value</type>
<format type="string">[ ]/[ ]</format> <format type="string">[ ]/[ . ]</format>
<truncate type="bool">false</truncate> <truncate type="bool">false</truncate>
<font type="string">helvetica_medium.txf</font> <font type="string">helvetica_medium.txf</font>
<property>autopilot/serviceable</property> <property>autopilot/serviceable</property>
@ -372,6 +423,70 @@
</font-resolution> </font-resolution>
</text> </text>
<text>
<name>flapsmcdu3</name>
<offsets>
<x-m>-0.001</x-m>
<y-m>0.0275</y-m>
<z-m>0.0505</z-m>
</offsets>
<alignment>right-center</alignment>
<axis-alignment>yz-plane</axis-alignment>
<type type="string">text-value</type>
<format type="string">%s</format>
<truncate type="bool">false</truncate>
<font type="string">BoeingCDU-Large.ttf</font>
<property>/FMGC/internal/to-flap</property>
<draw-text type="bool">true</draw-text>
<draw-alignment type="bool">false</draw-alignment>
<draw-boundingbox type="bool">false</draw-boundingbox>
<character-size>0.0050</character-size>
<font-resolution>
<width type="int">64</width>
<height type="int">64</height>
</font-resolution>
</text>
<text>
<name>flapsmcdu3</name>
<offsets>
<x-m>-0.001</x-m>
<y-m>0.045</y-m>
<z-m>0.0505</z-m>
</offsets>
<alignment>right-center</alignment>
<axis-alignment>yz-plane</axis-alignment>
<type type="string">text-value</type>
<format type="string">/UP%s</format>
<truncate type="bool">false</truncate>
<font type="string">BoeingCDU-Large.ttf</font>
<property>/FMGC/internal/to-ths</property>
<draw-text type="bool">true</draw-text>
<draw-alignment type="bool">false</draw-alignment>
<draw-boundingbox type="bool">false</draw-boundingbox>
<character-size>0.0050</character-size>
<font-resolution>
<width type="int">64</width>
<height type="int">64</height>
</font-resolution>
</text>
<animation>
<type>select</type>
<object-name>flapsmcdu2</object-name>
<condition>
<not><property>/FMGC/internal/flap-ths-set</property></not>
</condition>
</animation>
<animation>
<type>select</type>
<object-name>flapsmcdu3</object-name>
<condition>
<property>/FMGC/internal/flap-ths-set</property>
</condition>
</animation>
<text> <text>
<name>v2</name> <name>v2</name>
<offsets> <offsets>
@ -396,6 +511,38 @@
</font-resolution> </font-resolution>
</text> </text>
<text>
<name>v22</name>
<offsets>
<x-m>-0.001</x-m>
<y-m>-0.045</y-m>
<z-m>0.0505</z-m>
</offsets>
<alignment>left-center</alignment>
<axis-alignment>yz-plane</axis-alignment>
<type type="string">text-value</type>
<format type="string">%s</format>
<truncate type="bool">false</truncate>
<font type="string">BoeingCDU-Large.ttf</font>
<property>/FMGC/internal/v2</property>
<draw-text type="bool">true</draw-text>
<draw-alignment type="bool">false</draw-alignment>
<draw-boundingbox type="bool">false</draw-boundingbox>
<character-size>0.0050</character-size>
<font-resolution>
<width type="int">64</width>
<height type="int">64</height>
</font-resolution>
</text>
<animation>
<type>select</type>
<object-name>v22</object-name>
<condition>
<property>/FMGC/internal/v2-set</property>
</condition>
</animation>
<text> <text>
<name>clean</name> <name>clean</name>
<offsets> <offsets>
@ -478,10 +625,10 @@
<alignment>left-center</alignment> <alignment>left-center</alignment>
<axis-alignment>yz-plane</axis-alignment> <axis-alignment>yz-plane</axis-alignment>
<type type="string">text-value</type> <type type="string">text-value</type>
<format type="string">18000</format> <format type="string">%s</format>
<truncate type="bool">false</truncate> <truncate type="bool">false</truncate>
<font type="string">BoeingCDU-Large.ttf</font> <font type="string">BoeingCDU-Large.ttf</font>
<property>autopilot/serviceable</property> <property>/FMGC/internal/trans-alt</property>
<draw-text type="bool">true</draw-text> <draw-text type="bool">true</draw-text>
<draw-alignment type="bool">false</draw-alignment> <draw-alignment type="bool">false</draw-alignment>
<draw-boundingbox type="bool">false</draw-boundingbox> <draw-boundingbox type="bool">false</draw-boundingbox>
@ -677,7 +824,7 @@
</animation> </animation>
<text> <text>
<name>flex2</name> <name>flex</name>
<offsets> <offsets>
<x-m>-0.001</x-m> <x-m>-0.001</x-m>
<y-m>0.042</y-m> <y-m>0.042</y-m>
@ -701,7 +848,7 @@
</text> </text>
<text> <text>
<name>flex</name> <name>flex2</name>
<offsets> <offsets>
<x-m>-0.001</x-m> <x-m>-0.001</x-m>
<y-m>0.045</y-m> <y-m>0.045</y-m>
@ -724,6 +871,46 @@
</font-resolution> </font-resolution>
</text> </text>
<text>
<name>flex3</name>
<offsets>
<x-m>-0.001</x-m>
<y-m>0.045</y-m>
<z-m>0.039</z-m>
</offsets>
<alignment>right-center</alignment>
<axis-alignment>yz-plane</axis-alignment>
<type type="string">text-value</type>
<format type="string">%sC</format>
<truncate type="bool">false</truncate>
<font type="string">BoeingCDU-Large.ttf</font>
<property>/FMGC/internal/flex</property>
<draw-text type="bool">true</draw-text>
<draw-alignment type="bool">false</draw-alignment>
<draw-boundingbox type="bool">false</draw-boundingbox>
<character-size>0.0050</character-size>
<font-resolution>
<width type="int">64</width>
<height type="int">64</height>
</font-resolution>
</text>
<animation>
<type>select</type>
<object-name>flex2</object-name>
<condition>
<not><property>/FMGC/internal/flex-set</property></not>
</condition>
</animation>
<animation>
<type>select</type>
<object-name>flex3</object-name>
<condition>
<property>/FMGC/internal/flex-set</property>
</condition>
</animation>
<text> <text>
<name>uplink</name> <name>uplink</name>
<offsets> <offsets>
@ -833,9 +1020,9 @@
<object-name>next</object-name> <object-name>next</object-name>
<object-name>phase</object-name> <object-name>phase</object-name>
<object-name>shift</object-name> <object-name>shift</object-name>
<object-name>flex2</object-name> <object-name>flex</object-name>
<object-name>thredacc</object-name> <object-name>thredacc</object-name>
<object-name>flapsmcdu2</object-name> <object-name>flapsmcdu</object-name>
<object-name>eoaccel2</object-name> <object-name>eoaccel2</object-name>
<object-name>flprtr</object-name> <object-name>flprtr</object-name>
<object-name>sltrtr</object-name> <object-name>sltrtr</object-name>
@ -926,12 +1113,17 @@
<animation> <animation>
<type>material</type> <type>material</type>
<object-name>toshift3</object-name> <object-name>toshift3</object-name>
<object-name>flapsmcdu</object-name> <object-name>flapsmcdu2</object-name>
<object-name>flapsmcdu3</object-name>
<object-name>trans2</object-name> <object-name>trans2</object-name>
<object-name>eoaccel</object-name> <object-name>eoaccel</object-name>
<object-name>thred</object-name> <object-name>thred</object-name>
<object-name>thred2</object-name> <object-name>thred2</object-name>
<object-name>flex</object-name> <object-name>flex2</object-name>
<object-name>flex3</object-name>
<object-name>v12</object-name>
<object-name>vr2</object-name>
<object-name>v22</object-name>
<diffuse> <diffuse>
<red>0</red> <red>0</red>
<green>0.5</green> <green>0.5</green>

View file

@ -1761,6 +1761,52 @@
</font-resolution> </font-resolution>
</text> </text>
<text>
<name>athr-flex-fma</name>
<offsets>
<x-m>0.00091828</x-m>
<y-m>-0.0576226</y-m>
<z-m>0.0630781</z-m>
</offsets>
<alignment>center-center</alignment>
<axis-alignment>yz-plane</axis-alignment>
<type type="string">text-value</type>
<format type="string">FLX +</format>
<property>autopilot/serviceable</property>
<font type="string">helvetica_medium.txf</font>
<draw-text type="bool">true</draw-text>
<draw-alignment type="bool">false</draw-alignment>
<draw-boundingbox type="bool">false</draw-boundingbox>
<character-size>0.0055</character-size>
<font-resolution>
<width type="int">32</width>
<height type="int">32</height>
</font-resolution>
</text>
<text>
<name>athr-flexb-fma</name>
<offsets>
<x-m>0.00091828</x-m>
<y-m>-0.0466226</y-m>
<z-m>0.0630781</z-m>
</offsets>
<alignment>center-center</alignment>
<axis-alignment>yz-plane</axis-alignment>
<type type="string">text-value</type>
<format type="string">%s</format>
<property>/FMGC/internal/flex</property>
<font type="string">helvetica_medium.txf</font>
<draw-text type="bool">true</draw-text>
<draw-alignment type="bool">false</draw-alignment>
<draw-boundingbox type="bool">false</draw-boundingbox>
<character-size>0.0055</character-size>
<font-resolution>
<width type="int">32</width>
<height type="int">32</height>
</font-resolution>
</text>
<text> <text>
<name>athr-thr-fma</name> <name>athr-thr-fma</name>
<offsets> <offsets>
@ -1880,6 +1926,46 @@
<property>/it-autoflight/output/athr</property> <property>/it-autoflight/output/athr</property>
<value>1</value> <value>1</value>
</equals> </equals>
<not-equals>
<property>/controls/engines/thrust-limit</property>
<value>FLX</value>
</not-equals>
<not-equals>
<property>/systems/thrust/state1</property>
<value>TOGA</value>
</not-equals>
<not-equals>
<property>/systems/thrust/state2</property>
<value>TOGA</value>
</not-equals>
<or>
<equals>
<property>/systems/thrust/state1</property>
<value>MCT</value>
</equals>
<equals>
<property>/systems/thrust/state2</property>
<value>MCT</value>
</equals>
</or>
</and>
</condition>
</animation>
<animation>
<type>select</type>
<object-name>athr-flex-fma</object-name>
<object-name>athr-flexb-fma</object-name>
<condition>
<and>
<equals>
<property>/it-autoflight/output/athr</property>
<value>1</value>
</equals>
<equals>
<property>/controls/engines/thrust-limit</property>
<value>FLX</value>
</equals>
<not-equals> <not-equals>
<property>/systems/thrust/state1</property> <property>/systems/thrust/state1</property>
<value>TOGA</value> <value>TOGA</value>
@ -2283,6 +2369,7 @@
<object-name>athr-man-fma</object-name> <object-name>athr-man-fma</object-name>
<object-name>athr-toga-fma</object-name> <object-name>athr-toga-fma</object-name>
<object-name>athr-mct-fma</object-name> <object-name>athr-mct-fma</object-name>
<object-name>athr-flex-fma</object-name>
<object-name>athr-thr-fma</object-name> <object-name>athr-thr-fma</object-name>
<object-name>athr-box-fma</object-name> <object-name>athr-box-fma</object-name>
<object-name>athr-lvrclb-fma</object-name> <object-name>athr-lvrclb-fma</object-name>
@ -2318,6 +2405,7 @@
<object-name>roll-mode-armed-fma</object-name> <object-name>roll-mode-armed-fma</object-name>
<object-name>pitch-mode-armed-fma</object-name> <object-name>pitch-mode-armed-fma</object-name>
<object-name>pitch-mode-armed2-fma</object-name> <object-name>pitch-mode-armed2-fma</object-name>
<object-name>athr-flexb-fma</object-name>
<diffuse> <diffuse>
<red>0</red> <red>0</red>
<green>0.886</green> <green>0.886</green>

View file

@ -1761,6 +1761,52 @@
</font-resolution> </font-resolution>
</text> </text>
<text>
<name>athr-flex-fma</name>
<offsets>
<x-m>0.00091828</x-m>
<y-m>-0.0576226</y-m>
<z-m>0.0630781</z-m>
</offsets>
<alignment>center-center</alignment>
<axis-alignment>yz-plane</axis-alignment>
<type type="string">text-value</type>
<format type="string">FLX +</format>
<property>autopilot/serviceable</property>
<font type="string">helvetica_medium.txf</font>
<draw-text type="bool">true</draw-text>
<draw-alignment type="bool">false</draw-alignment>
<draw-boundingbox type="bool">false</draw-boundingbox>
<character-size>0.0055</character-size>
<font-resolution>
<width type="int">32</width>
<height type="int">32</height>
</font-resolution>
</text>
<text>
<name>athr-flexb-fma</name>
<offsets>
<x-m>0.00091828</x-m>
<y-m>-0.0466226</y-m>
<z-m>0.0630781</z-m>
</offsets>
<alignment>center-center</alignment>
<axis-alignment>yz-plane</axis-alignment>
<type type="string">text-value</type>
<format type="string">%s</format>
<property>/FMGC/internal/flex</property>
<font type="string">helvetica_medium.txf</font>
<draw-text type="bool">true</draw-text>
<draw-alignment type="bool">false</draw-alignment>
<draw-boundingbox type="bool">false</draw-boundingbox>
<character-size>0.0055</character-size>
<font-resolution>
<width type="int">32</width>
<height type="int">32</height>
</font-resolution>
</text>
<text> <text>
<name>athr-thr-fma</name> <name>athr-thr-fma</name>
<offsets> <offsets>
@ -1880,6 +1926,46 @@
<property>/it-autoflight/output/athr</property> <property>/it-autoflight/output/athr</property>
<value>1</value> <value>1</value>
</equals> </equals>
<not-equals>
<property>/controls/engines/thrust-limit</property>
<value>FLX</value>
</not-equals>
<not-equals>
<property>/systems/thrust/state1</property>
<value>TOGA</value>
</not-equals>
<not-equals>
<property>/systems/thrust/state2</property>
<value>TOGA</value>
</not-equals>
<or>
<equals>
<property>/systems/thrust/state1</property>
<value>MCT</value>
</equals>
<equals>
<property>/systems/thrust/state2</property>
<value>MCT</value>
</equals>
</or>
</and>
</condition>
</animation>
<animation>
<type>select</type>
<object-name>athr-flex-fma</object-name>
<object-name>athr-flexb-fma</object-name>
<condition>
<and>
<equals>
<property>/it-autoflight/output/athr</property>
<value>1</value>
</equals>
<equals>
<property>/controls/engines/thrust-limit</property>
<value>FLX</value>
</equals>
<not-equals> <not-equals>
<property>/systems/thrust/state1</property> <property>/systems/thrust/state1</property>
<value>TOGA</value> <value>TOGA</value>
@ -2283,6 +2369,7 @@
<object-name>athr-man-fma</object-name> <object-name>athr-man-fma</object-name>
<object-name>athr-toga-fma</object-name> <object-name>athr-toga-fma</object-name>
<object-name>athr-mct-fma</object-name> <object-name>athr-mct-fma</object-name>
<object-name>athr-flex-fma</object-name>
<object-name>athr-thr-fma</object-name> <object-name>athr-thr-fma</object-name>
<object-name>athr-box-fma</object-name> <object-name>athr-box-fma</object-name>
<object-name>athr-lvrclb-fma</object-name> <object-name>athr-lvrclb-fma</object-name>
@ -2318,6 +2405,7 @@
<object-name>roll-mode-armed-fma</object-name> <object-name>roll-mode-armed-fma</object-name>
<object-name>pitch-mode-armed-fma</object-name> <object-name>pitch-mode-armed-fma</object-name>
<object-name>pitch-mode-armed2-fma</object-name> <object-name>pitch-mode-armed2-fma</object-name>
<object-name>athr-flexb-fma</object-name>
<diffuse> <diffuse>
<red>0</red> <red>0</red>
<green>0.886</green> <green>0.886</green>

View file

@ -10,10 +10,7 @@ setprop("/position/gear-agl-ft", 0);
var FMGCinit = func { var FMGCinit = func {
setprop("/FMGC/status/to-state", 0); setprop("/FMGC/status/to-state", 0);
setprop("/FMGC/status/phase", "0"); # 0 is preflight 1 takeoff 2 climb 3 cruise 4 descent 5 approach 6 go around 7 done setprop("/FMGC/status/phase", "0"); # 0 is preflight 1 takeoff 2 climb 3 cruise 4 descent 5 approach 6 go around 7 done
setprop("/FMGC/internal/cruise-ft", 10000);
setprop("/FMGC/internal/cruise-fl", 100);
setprop("/FMGC/internal/tropo", 36090); setprop("/FMGC/internal/tropo", 36090);
setprop("/FMGC/internal/cost-index", "0");
phasecheck.start(); phasecheck.start();
} }
@ -100,6 +97,7 @@ var phasecheck = maketimer(0.2, func {
} }
if ((phase == "5") and (state1 == "TOGA") and (state2 == "TOGA")) { # this is the only fully correct one to FCOM if ((phase == "5") and (state1 == "TOGA") and (state2 == "TOGA")) { # this is the only fully correct one to FCOM
setprop("/FMGC/status/phase", "6"); setprop("/FMGC/status/phase", "6");
setprop("/it-autoflight/input/toga", 1);
} }
# forget transition from APP to climb for now because it would be too complex # forget transition from APP to climb for now because it would be too complex
if ((phase == "6") and ((vertmode == "G/A CLB") or (vertmode == "SPD CLB") or (vertmode == "CLB") or ((vertmode == "V/S") and (targetvs > 0)) or ((vertmode == "FPA") and (targetfpa > 0))) and (alt <= targetalt)) { if ((phase == "6") and ((vertmode == "G/A CLB") or (vertmode == "SPD CLB") or (vertmode == "CLB") or ((vertmode == "V/S") and (targetvs > 0)) or ((vertmode == "FPA") and (targetfpa > 0))) and (alt <= targetalt)) {
@ -112,7 +110,7 @@ var phasecheck = maketimer(0.2, func {
FMGCinit(); FMGCinit();
mcdu1.MCDU_reset(); mcdu1.MCDU_reset();
mcdu2.MCDU_reset(); mcdu2.MCDU_reset();
}, 30); }, 20);
} }
}); });

View file

@ -8,33 +8,56 @@ var MCDU_init = func {
} }
var MCDU_reset = func { var MCDU_reset = func {
setprop("/it-autoflight/settings/togaspd", 157);
setprop("/MCDU[0]/page", "STATUS"); setprop("/MCDU[0]/page", "STATUS");
setprop("/MCDU[0]/scratchpad", ""); setprop("/MCDU[0]/scratchpad", "");
setprop("/MCDUC/flight-num", ""); setprop("/MCDUC/flight-num", "");
setprop("/MCDUC/flight-num-set", 0);
setprop("/MCDUC/thracc-set", 0); setprop("/MCDUC/thracc-set", 0);
setprop("/MCDUC/flight-num-set", 0);
setprop("/FMGC/internal/flex", 0);
setprop("/FMGC/internal/dep-arpt", ""); setprop("/FMGC/internal/dep-arpt", "");
setprop("/FMGC/internal/arr-arpt", ""); setprop("/FMGC/internal/arr-arpt", "");
setprop("/FMGC/internal/tofrom-set", 0);
setprop("/FMGC/internal/cruise-ft", 10000); setprop("/FMGC/internal/cruise-ft", 10000);
setprop("/FMGC/internal/cruise-fl", 100); setprop("/FMGC/internal/cruise-fl", 100);
setprop("/FMGC/internal/cost-index", "0"); setprop("/FMGC/internal/cost-index", "0");
setprop("/FMGC/internal/trans-alt", 18000);
setprop("/FMGC/internal/v1", 0);
setprop("/FMGC/internal/vr", 0);
setprop("/FMGC/internal/v2", 0);
setprop("/FMGC/internal/v1-set", 0);
setprop("/FMGC/internal/vr-set", 0);
setprop("/FMGC/internal/v2-set", 0);
setprop("/FMGC/internal/to-flap", 0);
setprop("/FMGC/internal/to-ths", "0.0");
setprop("/FMGC/internal/tofrom-set", 0);
setprop("/FMGC/internal/cost-index-set", 0); setprop("/FMGC/internal/cost-index-set", 0);
setprop("/FMGC/internal/cruise-lvl-set", 0); setprop("/FMGC/internal/cruise-lvl-set", 0);
setprop("/FMGC/internal/flap-ths-set", 0);
setprop("/FMGC/internal/flex-set", 0);
} }
var lskbutton = func(btn) { var lskbutton = func(btn) {
if (btn == "2") { if (btn == "1") {
if (getprop("/MCDU[0]/page") == "TO") {
PerfTOInput("L1");
}
} else if (btn == "2") {
if (getprop("/MCDU[0]/page") == "INITA") { if (getprop("/MCDU[0]/page") == "INITA") {
PerfInput("L2"); PerfInput("L2");
} else if (getprop("/MCDU[0]/page") == "TO") {
PerfTOInput("L2");
} }
} else if (btn == "3") { } else if (btn == "3") {
if (getprop("/MCDU[0]/page") == "INITA") { if (getprop("/MCDU[0]/page") == "INITA") {
initInputA("L3"); initInputA("L3");
} else if (getprop("/MCDU[0]/page") == "TO") {
PerfTOInput("L3");
} }
} else if (btn == "4") { } else if (btn == "4") {
if (getprop("/MCDU[0]/page") == "DATA") { if (getprop("/MCDU[0]/page") == "DATA") {
setprop("/MCDU[0]/page", "STATUS"); setprop("/MCDU[0]/page", "STATUS");
} else if (getprop("/MCDU[0]/page") == "TO") {
PerfTOInput("L4");
} }
} else if (btn == "5") { } else if (btn == "5") {
if (getprop("/MCDU[0]/page") == "INITA") { if (getprop("/MCDU[0]/page") == "INITA") {
@ -63,6 +86,12 @@ var rskbutton = func(btn) {
} else if (btn == "3") { } else if (btn == "3") {
if (getprop("/MCDU[0]/page") == "INITA") { if (getprop("/MCDU[0]/page") == "INITA") {
initInputA("R3"); initInputA("R3");
} else if (getprop("/MCDU[0]/page") == "TO") {
PerfTOInput("R3");
}
} else if (btn == "4") {
if (getprop("/MCDU[0]/page") == "TO") {
PerfTOInput("R4");
} }
} else if (btn == "6") { } else if (btn == "6") {
if (getprop("/MCDU[0]/page") == "TO") { if (getprop("/MCDU[0]/page") == "TO") {
@ -181,7 +210,91 @@ var initInputA = func(key) {
var PerfTOInput = func(key) { var PerfTOInput = func(key) {
var scratchpad = getprop("/MCDU[0]/scratchpad"); var scratchpad = getprop("/MCDU[0]/scratchpad");
if (key == "L5") { if (key == "L1") {
if (scratchpad == "CLR") {
setprop("/FMGC/internal/v1", 0);
setprop("/FMGC/internal/v1-set", 0);
setprop("/MCDU[0]/scratchpad", "");
} else {
var tfs = size(scratchpad);
if (tfs == 3) {
if (scratchpad >= 100 and scratchpad <= 200) {
setprop("/FMGC/internal/v1", scratchpad);
setprop("/FMGC/internal/v1-set", 1);
setprop("/MCDU[0]/scratchpad", "");
} else {
setprop("/MCDU[0]/scratchpad-msg", "1");
setprop("/MCDU[0]/scratchpad", "NOT ALLOWED");
}
} else {
setprop("/MCDU[0]/scratchpad-msg", "1");
setprop("/MCDU[0]/scratchpad", "NOT ALLOWED");
}
}
} else if (key == "L2") {
if (scratchpad == "CLR") {
setprop("/FMGC/internal/vr", 0);
setprop("/FMGC/internal/vr-set", 0);
setprop("/MCDU[0]/scratchpad", "");
} else {
var tfs = size(scratchpad);
if (tfs == 3) {
if (scratchpad >= 100 and scratchpad <= 200) {
setprop("/FMGC/internal/vr", scratchpad);
setprop("/FMGC/internal/vr-set", 1);
setprop("/MCDU[0]/scratchpad", "");
} else {
setprop("/MCDU[0]/scratchpad-msg", "1");
setprop("/MCDU[0]/scratchpad", "NOT ALLOWED");
}
} else {
setprop("/MCDU[0]/scratchpad-msg", "1");
setprop("/MCDU[0]/scratchpad", "NOT ALLOWED");
}
}
} else if (key == "L3") {
if (scratchpad == "CLR") {
setprop("/FMGC/internal/v2", 0);
setprop("/FMGC/internal/v2-set", 0);
setprop("/it-autoflight/settings/togaspd", 157);
setprop("/MCDU[0]/scratchpad", "");
} else {
var tfs = size(scratchpad);
if (tfs == 3) {
if (scratchpad >= 100 and scratchpad <= 200) {
setprop("/FMGC/internal/v2", scratchpad);
setprop("/FMGC/internal/v2-set", 1);
setprop("/it-autoflight/settings/togaspd", scratchpad + 15);
setprop("/MCDU[0]/scratchpad", "");
} else {
setprop("/MCDU[0]/scratchpad-msg", "1");
setprop("/MCDU[0]/scratchpad", "NOT ALLOWED");
}
} else {
setprop("/MCDU[0]/scratchpad-msg", "1");
setprop("/MCDU[0]/scratchpad", "NOT ALLOWED");
}
}
} else if (key == "L4") {
if (scratchpad == "CLR") {
setprop("/MCDU[0]/scratchpad-msg", "1");
setprop("/MCDU[0]/scratchpad", "NOT ALLOWED");
} else {
var tfs = size(scratchpad);
if (tfs == 4 or tfs == 5) {
if (scratchpad >= 1000 and scratchpad <= 18000) {
setprop("/FMGC/internal/trans-alt", scratchpad);
setprop("/MCDU[0]/scratchpad", "");
} else {
setprop("/MCDU[0]/scratchpad-msg", "1");
setprop("/MCDU[0]/scratchpad", "NOT ALLOWED");
}
} else {
setprop("/MCDU[0]/scratchpad-msg", "1");
setprop("/MCDU[0]/scratchpad", "NOT ALLOWED");
}
}
} else if (key == "L5") {
if (scratchpad == "CLR") { if (scratchpad == "CLR") {
setprop("/systems/thrust/clbreduc-ft", "1500"); setprop("/systems/thrust/clbreduc-ft", "1500");
setprop("/it-autoflight/settings/reduc-agl-ft", "3000"); setprop("/it-autoflight/settings/reduc-agl-ft", "3000");
@ -193,7 +306,7 @@ var PerfTOInput = func(key) {
var thracc = split("/", scratchpad); var thracc = split("/", scratchpad);
var thrred = size(thracc[0]); var thrred = size(thracc[0]);
var acc = size(thracc[1]); var acc = size(thracc[1]);
if ((thrred >= 1 and thrred <= 4) and (acc >= 1 and acc <= 4)) { if ((thrred >= 3 and thrred <= 5) and (acc >= 3 and acc <= 5)) {
setprop("/systems/thrust/clbreduc-ft", thracc[0]); setprop("/systems/thrust/clbreduc-ft", thracc[0]);
setprop("/it-autoflight/settings/reduc-agl-ft", thracc[1]); setprop("/it-autoflight/settings/reduc-agl-ft", thracc[1]);
setprop("/MCDUC/thracc-set", 1); setprop("/MCDUC/thracc-set", 1);
@ -209,6 +322,51 @@ var PerfTOInput = func(key) {
} }
} else if (key == "R6") { } else if (key == "R6") {
setprop("/MCDU[0]/page", "CLB"); setprop("/MCDU[0]/page", "CLB");
} else if (key == "R3") {
if (scratchpad == "CLR") {
setprop("/FMGC/internal/to-flap", 0);
setprop("/FMGC/internal/to-ths", "0.0");
setprop("/FMGC/internal/flap-ths-set", 0);
setprop("/MCDU[0]/scratchpad", "");
} else {
var tfs = size(scratchpad);
if (tfs == 7) {
var flapths = split("/UP", scratchpad);
if ((flapths[0] >= 1 and flapths[0] <= 4) and (flapths[1] >= 0.0 and flapths[1] <= 2.5)) {
setprop("/FMGC/internal/to-flap", flapths[0]);
setprop("/FMGC/internal/to-ths", flapths[1]);
setprop("/FMGC/internal/flap-ths-set", 1);
setprop("/MCDU[0]/scratchpad", "");
} else {
setprop("/MCDU[0]/scratchpad-msg", "1");
setprop("/MCDU[0]/scratchpad", "NOT ALLOWED");
}
} else {
setprop("/MCDU[0]/scratchpad-msg", "1");
setprop("/MCDU[0]/scratchpad", "NOT ALLOWED");
}
}
} else if (key == "R4") {
if (scratchpad == "CLR") {
setprop("/FMGC/internal/flex", 0);
setprop("/FMGC/internal/flex-set", 0);
setprop("/MCDU[0]/scratchpad", "");
} else {
var tfs = size(scratchpad);
if (tfs == 1 or tfs == 2) {
if (scratchpad >= 0 and scratchpad <= 70) {
setprop("/FMGC/internal/flex", scratchpad);
setprop("/FMGC/internal/flex-set", 1);
setprop("/MCDU[0]/scratchpad", "");
} else {
setprop("/MCDU[0]/scratchpad-msg", "1");
setprop("/MCDU[0]/scratchpad", "NOT ALLOWED");
}
} else {
setprop("/MCDU[0]/scratchpad-msg", "1");
setprop("/MCDU[0]/scratchpad", "NOT ALLOWED");
}
}
} }
} }

View file

@ -8,33 +8,56 @@ var MCDU_init = func {
} }
var MCDU_reset = func { var MCDU_reset = func {
setprop("/it-autoflight/settings/togaspd", 157);
setprop("/MCDU[1]/page", "STATUS"); setprop("/MCDU[1]/page", "STATUS");
setprop("/MCDU[1]/scratchpad", ""); setprop("/MCDU[1]/scratchpad", "");
setprop("/MCDUC/flight-num", ""); setprop("/MCDUC/flight-num", "");
setprop("/MCDUC/flight-num-set", 0);
setprop("/MCDUC/thracc-set", 0); setprop("/MCDUC/thracc-set", 0);
setprop("/MCDUC/flight-num-set", 0);
setprop("/FMGC/internal/flex", 0);
setprop("/FMGC/internal/dep-arpt", ""); setprop("/FMGC/internal/dep-arpt", "");
setprop("/FMGC/internal/arr-arpt", ""); setprop("/FMGC/internal/arr-arpt", "");
setprop("/FMGC/internal/tofrom-set", 0);
setprop("/FMGC/internal/cruise-ft", 10000); setprop("/FMGC/internal/cruise-ft", 10000);
setprop("/FMGC/internal/cruise-fl", 100); setprop("/FMGC/internal/cruise-fl", 100);
setprop("/FMGC/internal/cost-index", "0"); setprop("/FMGC/internal/cost-index", "0");
setprop("/FMGC/internal/trans-alt", 18000);
setprop("/FMGC/internal/v1", 0);
setprop("/FMGC/internal/vr", 0);
setprop("/FMGC/internal/v2", 0);
setprop("/FMGC/internal/v1-set", 0);
setprop("/FMGC/internal/vr-set", 0);
setprop("/FMGC/internal/v2-set", 0);
setprop("/FMGC/internal/to-flap", 0);
setprop("/FMGC/internal/to-ths", "0.0");
setprop("/FMGC/internal/tofrom-set", 0);
setprop("/FMGC/internal/cost-index-set", 0); setprop("/FMGC/internal/cost-index-set", 0);
setprop("/FMGC/internal/cruise-lvl-set", 0); setprop("/FMGC/internal/cruise-lvl-set", 0);
setprop("/FMGC/internal/flap-ths-set", 0);
setprop("/FMGC/internal/flex-set", 0);
} }
var lskbutton = func(btn) { var lskbutton = func(btn) {
if (btn == "2") { if (btn == "1") {
if (getprop("/MCDU[1]/page") == "TO") {
PerfTOInput("L1");
}
} else if (btn == "2") {
if (getprop("/MCDU[1]/page") == "INITA") { if (getprop("/MCDU[1]/page") == "INITA") {
PerfInput("L2"); PerfInput("L2");
} else if (getprop("/MCDU[1]/page") == "TO") {
PerfTOInput("L2");
} }
} else if (btn == "3") { } else if (btn == "3") {
if (getprop("/MCDU[1]/page") == "INITA") { if (getprop("/MCDU[1]/page") == "INITA") {
initInputA("L3"); initInputA("L3");
} else if (getprop("/MCDU[1]/page") == "TO") {
PerfTOInput("L3");
} }
} else if (btn == "4") { } else if (btn == "4") {
if (getprop("/MCDU[1]/page") == "DATA") { if (getprop("/MCDU[1]/page") == "DATA") {
setprop("/MCDU[1]/page", "STATUS"); setprop("/MCDU[1]/page", "STATUS");
} else if (getprop("/MCDU[1]/page") == "TO") {
PerfTOInput("L4");
} }
} else if (btn == "5") { } else if (btn == "5") {
if (getprop("/MCDU[1]/page") == "INITA") { if (getprop("/MCDU[1]/page") == "INITA") {
@ -63,6 +86,12 @@ var rskbutton = func(btn) {
} else if (btn == "3") { } else if (btn == "3") {
if (getprop("/MCDU[1]/page") == "INITA") { if (getprop("/MCDU[1]/page") == "INITA") {
initInputA("R3"); initInputA("R3");
} else if (getprop("/MCDU[1]/page") == "TO") {
PerfTOInput("R3");
}
} else if (btn == "4") {
if (getprop("/MCDU[1]/page") == "TO") {
PerfTOInput("R4");
} }
} else if (btn == "6") { } else if (btn == "6") {
if (getprop("/MCDU[1]/page") == "TO") { if (getprop("/MCDU[1]/page") == "TO") {
@ -181,7 +210,91 @@ var initInputA = func(key) {
var PerfTOInput = func(key) { var PerfTOInput = func(key) {
var scratchpad = getprop("/MCDU[1]/scratchpad"); var scratchpad = getprop("/MCDU[1]/scratchpad");
if (key == "L5") { if (key == "L1") {
if (scratchpad == "CLR") {
setprop("/FMGC/internal/v1", 0);
setprop("/FMGC/internal/v1-set", 0);
setprop("/MCDU[1]/scratchpad", "");
} else {
var tfs = size(scratchpad);
if (tfs == 3) {
if (scratchpad >= 100 and scratchpad <= 200) {
setprop("/FMGC/internal/v1", scratchpad);
setprop("/FMGC/internal/v1-set", 1);
setprop("/MCDU[1]/scratchpad", "");
} else {
setprop("/MCDU[1]/scratchpad-msg", "1");
setprop("/MCDU[1]/scratchpad", "NOT ALLOWED");
}
} else {
setprop("/MCDU[1]/scratchpad-msg", "1");
setprop("/MCDU[1]/scratchpad", "NOT ALLOWED");
}
}
} else if (key == "L2") {
if (scratchpad == "CLR") {
setprop("/FMGC/internal/vr", 0);
setprop("/FMGC/internal/vr-set", 0);
setprop("/MCDU[1]/scratchpad", "");
} else {
var tfs = size(scratchpad);
if (tfs == 3) {
if (scratchpad >= 100 and scratchpad <= 200) {
setprop("/FMGC/internal/vr", scratchpad);
setprop("/FMGC/internal/vr-set", 1);
setprop("/MCDU[1]/scratchpad", "");
} else {
setprop("/MCDU[1]/scratchpad-msg", "1");
setprop("/MCDU[1]/scratchpad", "NOT ALLOWED");
}
} else {
setprop("/MCDU[1]/scratchpad-msg", "1");
setprop("/MCDU[1]/scratchpad", "NOT ALLOWED");
}
}
} else if (key == "L3") {
if (scratchpad == "CLR") {
setprop("/FMGC/internal/v2", 0);
setprop("/FMGC/internal/v2-set", 0);
setprop("/it-autoflight/settings/togaspd", 157);
setprop("/MCDU[1]/scratchpad", "");
} else {
var tfs = size(scratchpad);
if (tfs == 3) {
if (scratchpad >= 100 and scratchpad <= 200) {
setprop("/FMGC/internal/v2", scratchpad);
setprop("/FMGC/internal/v2-set", 1);
setprop("/it-autoflight/settings/togaspd", scratchpad + 15);
setprop("/MCDU[1]/scratchpad", "");
} else {
setprop("/MCDU[1]/scratchpad-msg", "1");
setprop("/MCDU[1]/scratchpad", "NOT ALLOWED");
}
} else {
setprop("/MCDU[1]/scratchpad-msg", "1");
setprop("/MCDU[1]/scratchpad", "NOT ALLOWED");
}
}
} else if (key == "L4") {
if (scratchpad == "CLR") {
setprop("/MCDU[1]/scratchpad-msg", "1");
setprop("/MCDU[1]/scratchpad", "NOT ALLOWED");
} else {
var tfs = size(scratchpad);
if (tfs == 4 or tfs == 5) {
if (scratchpad >= 1000 and scratchpad <= 18000) {
setprop("/FMGC/internal/trans-alt", scratchpad);
setprop("/MCDU[1]/scratchpad", "");
} else {
setprop("/MCDU[1]/scratchpad-msg", "1");
setprop("/MCDU[1]/scratchpad", "NOT ALLOWED");
}
} else {
setprop("/MCDU[1]/scratchpad-msg", "1");
setprop("/MCDU[1]/scratchpad", "NOT ALLOWED");
}
}
} else if (key == "L5") {
if (scratchpad == "CLR") { if (scratchpad == "CLR") {
setprop("/systems/thrust/clbreduc-ft", "1500"); setprop("/systems/thrust/clbreduc-ft", "1500");
setprop("/it-autoflight/settings/reduc-agl-ft", "3000"); setprop("/it-autoflight/settings/reduc-agl-ft", "3000");
@ -193,7 +306,7 @@ var PerfTOInput = func(key) {
var thracc = split("/", scratchpad); var thracc = split("/", scratchpad);
var thrred = size(thracc[0]); var thrred = size(thracc[0]);
var acc = size(thracc[1]); var acc = size(thracc[1]);
if ((thrred >= 1 and thrred <= 4) and (acc >= 1 and acc <= 4)) { if ((thrred >= 3 and thrred <= 5) and (acc >= 3 and acc <= 5)) {
setprop("/systems/thrust/clbreduc-ft", thracc[0]); setprop("/systems/thrust/clbreduc-ft", thracc[0]);
setprop("/it-autoflight/settings/reduc-agl-ft", thracc[1]); setprop("/it-autoflight/settings/reduc-agl-ft", thracc[1]);
setprop("/MCDUC/thracc-set", 1); setprop("/MCDUC/thracc-set", 1);
@ -209,6 +322,51 @@ var PerfTOInput = func(key) {
} }
} else if (key == "R6") { } else if (key == "R6") {
setprop("/MCDU[1]/page", "CLB"); setprop("/MCDU[1]/page", "CLB");
} else if (key == "R3") {
if (scratchpad == "CLR") {
setprop("/FMGC/internal/to-flap", 0);
setprop("/FMGC/internal/to-ths", "0.0");
setprop("/FMGC/internal/flap-ths-set", 0);
setprop("/MCDU[1]/scratchpad", "");
} else {
var tfs = size(scratchpad);
if (tfs == 7) {
var flapths = split("/UP", scratchpad);
if ((flapths[0] >= 1 and flapths[0] <= 4) and (flapths[1] >= 0.0 and flapths[1] <= 2.5)) {
setprop("/FMGC/internal/to-flap", flapths[0]);
setprop("/FMGC/internal/to-ths", flapths[1]);
setprop("/FMGC/internal/flap-ths-set", 1);
setprop("/MCDU[1]/scratchpad", "");
} else {
setprop("/MCDU[1]/scratchpad-msg", "1");
setprop("/MCDU[1]/scratchpad", "NOT ALLOWED");
}
} else {
setprop("/MCDU[1]/scratchpad-msg", "1");
setprop("/MCDU[1]/scratchpad", "NOT ALLOWED");
}
}
} else if (key == "R4") {
if (scratchpad == "CLR") {
setprop("/FMGC/internal/flex", 0);
setprop("/FMGC/internal/flex-set", 0);
setprop("/MCDU[1]/scratchpad", "");
} else {
var tfs = size(scratchpad);
if (tfs == 1 or tfs == 2) {
if (scratchpad >= 0 and scratchpad <= 70) {
setprop("/FMGC/internal/flex", scratchpad);
setprop("/FMGC/internal/flex-set", 1);
setprop("/MCDU[1]/scratchpad", "");
} else {
setprop("/MCDU[1]/scratchpad-msg", "1");
setprop("/MCDU[1]/scratchpad", "NOT ALLOWED");
}
} else {
setprop("/MCDU[1]/scratchpad-msg", "1");
setprop("/MCDU[1]/scratchpad", "NOT ALLOWED");
}
}
} }
} }

View file

@ -14,6 +14,7 @@ setlistener("/sim/signals/fdm-initialized", func {
setprop("/systems/thrust/state2", "IDLE"); setprop("/systems/thrust/state2", "IDLE");
setprop("/systems/thrust/lvrclb", "0"); setprop("/systems/thrust/lvrclb", "0");
setprop("/systems/thrust/clbreduc-ft", "1500"); setprop("/systems/thrust/clbreduc-ft", "1500");
setprop("/systems/thrust/lim-flex", 0);
thrustt.start(); thrustt.start();
}); });
@ -22,13 +23,17 @@ setlistener("/controls/engines/engine[0]/throttle-pos", func {
if (getprop("/systems/thrust/alpha-floor") == 0 and getprop("/systems/thrust/toga-lk") == 0) { if (getprop("/systems/thrust/alpha-floor") == 0 and getprop("/systems/thrust/toga-lk") == 0) {
if (thrr < 0.01) { if (thrr < 0.01) {
setprop("/systems/thrust/state1", "IDLE"); setprop("/systems/thrust/state1", "IDLE");
unflex();
atoff_request(); atoff_request();
} else if (thrr >= 0.01 and thrr < 0.60) { } else if (thrr >= 0.01 and thrr < 0.60) {
setprop("/systems/thrust/state1", "MAN"); setprop("/systems/thrust/state1", "MAN");
unflex();
} else if (thrr >= 0.60 and thrr < 0.65) { } else if (thrr >= 0.60 and thrr < 0.65) {
setprop("/systems/thrust/state1", "CL"); setprop("/systems/thrust/state1", "CL");
unflex();
} else if (thrr >= 0.65 and thrr < 0.78) { } else if (thrr >= 0.65 and thrr < 0.78) {
setprop("/systems/thrust/state1", "MAN THR"); setprop("/systems/thrust/state1", "MAN THR");
unflex();
} else if (thrr >= 0.78 and thrr < 0.83) { } else if (thrr >= 0.78 and thrr < 0.83) {
setprop("/it-autoflight/input/athr", 1); setprop("/it-autoflight/input/athr", 1);
setprop("/controls/engines/engine[0]/throttle-fdm", 0.90); setprop("/controls/engines/engine[0]/throttle-fdm", 0.90);
@ -36,10 +41,12 @@ setlistener("/controls/engines/engine[0]/throttle-pos", func {
} else if (thrr >= 0.83 and thrr < 0.95) { } else if (thrr >= 0.83 and thrr < 0.95) {
setprop("/it-autoflight/input/athr", 1); setprop("/it-autoflight/input/athr", 1);
setprop("/systems/thrust/state1", "MAN THR"); setprop("/systems/thrust/state1", "MAN THR");
unflex();
} else if (thrr >= 0.95) { } else if (thrr >= 0.95) {
setprop("/it-autoflight/input/athr", 1); setprop("/it-autoflight/input/athr", 1);
setprop("/controls/engines/engine[0]/throttle-fdm", 0.95); setprop("/controls/engines/engine[0]/throttle-fdm", 0.95);
setprop("/systems/thrust/state1", "TOGA"); setprop("/systems/thrust/state1", "TOGA");
unflex();
} }
} else { } else {
if (thrr < 0.01) { if (thrr < 0.01) {
@ -66,13 +73,17 @@ setlistener("/controls/engines/engine[1]/throttle-pos", func {
if (getprop("/systems/thrust/alpha-floor") == 0 and getprop("/systems/thrust/toga-lk") == 0) { if (getprop("/systems/thrust/alpha-floor") == 0 and getprop("/systems/thrust/toga-lk") == 0) {
if (thrr < 0.01) { if (thrr < 0.01) {
setprop("/systems/thrust/state2", "IDLE"); setprop("/systems/thrust/state2", "IDLE");
unflex();
atoff_request(); atoff_request();
} else if (thrr >= 0.01 and thrr < 0.60) { } else if (thrr >= 0.01 and thrr < 0.60) {
setprop("/systems/thrust/state2", "MAN"); setprop("/systems/thrust/state2", "MAN");
unflex();
} else if (thrr >= 0.60 and thrr < 0.65) { } else if (thrr >= 0.60 and thrr < 0.65) {
setprop("/systems/thrust/state2", "CL"); setprop("/systems/thrust/state2", "CL");
unflex();
} else if (thrr >= 0.65 and thrr < 0.78) { } else if (thrr >= 0.65 and thrr < 0.78) {
setprop("/systems/thrust/state2", "MAN THR"); setprop("/systems/thrust/state2", "MAN THR");
unflex();
} else if (thrr >= 0.78 and thrr < 0.83) { } else if (thrr >= 0.78 and thrr < 0.83) {
setprop("/it-autoflight/input/athr", 1); setprop("/it-autoflight/input/athr", 1);
setprop("/controls/engines/engine[1]/throttle-fdm", 0.90); setprop("/controls/engines/engine[1]/throttle-fdm", 0.90);
@ -80,10 +91,12 @@ setlistener("/controls/engines/engine[1]/throttle-pos", func {
} else if (thrr >= 0.83 and thrr < 0.95) { } else if (thrr >= 0.83 and thrr < 0.95) {
setprop("/it-autoflight/input/athr", 1); setprop("/it-autoflight/input/athr", 1);
setprop("/systems/thrust/state2", "MAN THR"); setprop("/systems/thrust/state2", "MAN THR");
unflex();
} else if (thrr >= 0.95) { } else if (thrr >= 0.95) {
setprop("/it-autoflight/input/athr", 1); setprop("/it-autoflight/input/athr", 1);
setprop("/controls/engines/engine[1]/throttle-fdm", 0.95); setprop("/controls/engines/engine[1]/throttle-fdm", 0.95);
setprop("/systems/thrust/state2", "TOGA"); setprop("/systems/thrust/state2", "TOGA");
unflex();
} }
} else { } else {
if (thrr < 0.01) { if (thrr < 0.01) {
@ -141,15 +154,24 @@ var thrust_lim = func {
setprop("/controls/engines/thrust-limit", "TOGA"); setprop("/controls/engines/thrust-limit", "TOGA");
setprop("/controls/engines/epr-limit", 1.308); setprop("/controls/engines/epr-limit", 1.308);
setprop("/controls/engines/n1-limit", 101.8); setprop("/controls/engines/n1-limit", 101.8);
} else if (state1 == "MCT" or state2 == "MCT" or (state1 == "MAN THR" and thr1 < 0.83) or (state2 == "MAN THR" and thr2 < 0.83)) { } else if ((state1 == "MCT" or state2 == "MCT" or (state1 == "MAN THR" and thr1 < 0.83) or (state2 == "MAN THR" and thr2 < 0.83)) and getprop("/systems/thrust/lim-flex") == 0) {
setprop("/controls/engines/thrust-limit", "MCT"); setprop("/controls/engines/thrust-limit", "MCT");
setprop("/controls/engines/epr-limit", 1.293); setprop("/controls/engines/epr-limit", 1.293);
setprop("/controls/engines/n1-limit", 97.7); setprop("/controls/engines/n1-limit", 97.7);
} else if ((state1 == "MCT" or state2 == "MCT" or (state1 == "MAN THR" and thr1 < 0.83) or (state2 == "MAN THR" and thr2 < 0.83)) and getprop("/systems/thrust/lim-flex") == 1) {
setprop("/controls/engines/thrust-limit", "FLX");
setprop("/controls/engines/epr-limit", 1.293);
setprop("/controls/engines/n1-limit", 97.7);
} else if (state1 == "CL" or state2 == "CL" or state1 == "MAN" or state2 == "MAN" or state1 == "IDLE" or state2 == "IDLE") { } else if (state1 == "CL" or state2 == "CL" or state1 == "MAN" or state2 == "MAN" or state1 == "IDLE" or state2 == "IDLE") {
setprop("/controls/engines/thrust-limit", "CLB"); setprop("/controls/engines/thrust-limit", "CLB");
setprop("/controls/engines/epr-limit", 1.271); setprop("/controls/engines/epr-limit", 1.271);
setprop("/controls/engines/n1-limit", 91.9); setprop("/controls/engines/n1-limit", 91.9);
} }
} else if (getprop("/FMGC/internal/flex-set") == 1) {
setprop("/systems/thrust/lim-flex", 1);
setprop("/controls/engines/thrust-limit", "FLX");
setprop("/controls/engines/epr-limit", 1.293);
setprop("/controls/engines/n1-limit", 97.7);
} else { } else {
setprop("/controls/engines/thrust-limit", "TOGA"); setprop("/controls/engines/thrust-limit", "TOGA");
setprop("/controls/engines/epr-limit", 1.308); setprop("/controls/engines/epr-limit", 1.308);
@ -157,6 +179,14 @@ var thrust_lim = func {
} }
} }
var unflex = func {
var state1 = getprop("/systems/thrust/state1");
var state2 = getprop("/systems/thrust/state2");
if (state1 != "MCT" and state2 != "MCT" and getprop("/gear/gear[1]/wow") == 0 and getprop("/gear/gear[2]/wow") == 0) {
setprop("/systems/thrust/lim-flex", 0);
}
}
var thrust_loop = func { var thrust_loop = func {
var state1 = getprop("/systems/thrust/state1"); var state1 = getprop("/systems/thrust/state1");
var state2 = getprop("/systems/thrust/state2"); var state2 = getprop("/systems/thrust/state2");