diff --git a/Input/Joysticks/Logitech/wingman-strike-force-3d.xml b/Input/Joysticks/Logitech/wingman-strike-force-3d.xml new file mode 100644 index 000000000..8d0390690 --- /dev/null +++ b/Input/Joysticks/Logitech/wingman-strike-force-3d.xml @@ -0,0 +1,220 @@ +<?xml version="1.0"?> + +<!-- +************************************************************************ +* Bindings for Logitech WingMan Strike Force 3D joystick. +* +* This joystick is dual-mode: it can connect either through the +* gameport or through a USB port. Bindings are as follow: +* +* Axis 0: ailerons lotki +* Axis 1: elevator ster wysokosci +* Axis 2 (twist): rudder ster kierunku +* Axis 3 (slider): throttle przepustnica +* Axes 4 and 5 (hat): view direction +* +* Button 0 (trigger): all brakes hamulce +* Button 1 (02): elevator trim up trymer steru wysokosci +* Button 2 (03): elevator trim down trymer steru wysokosci +* Button 9 (H2 up): mixture richer +* Button 11 (H2 down): mixture leaner +* Button 12 (H2 left): left brake only +* Button 10 (H2 right): right brake only +* Button 4 (05): Flaps Down +* Button 5 (06): Flaps Up +* Button 6 (07): Landing Gear Up/Down toggle +* Button 3 (04): View Cycle + +************************************************************************ +$Id$ +--> + +<PropertyList> + + <name>Logitech Inc. WingMan Strike Force 3D</name> + + <axis n="0"> + <desc>Aileron</desc> + <binding> + <command>property-scale</command> + <property>/controls/flight/aileron</property> + <squared>true</squared> + <factor type="double">5.0</factor> + </binding> + </axis> + + <axis n="1"> + <desc>Elevator</desc> + <binding> + <command>property-scale</command> + <property>/controls/flight/elevator</property> + <factor type="double">-5.0</factor> + <squared>true</squared> + </binding> + </axis> + + <axis n="2"> + <desc>Rudder</desc> + <binding> + <command>property-scale</command> + <property>/controls/flight/rudder</property> + <factor type="double">3.0</factor> + <squared>true</squared> + </binding> + </axis> + + <axis n="3"> + <desc>Throttle</desc> + <binding> + <command>nasal</command> + <script>controls.throttleAxis()</script> + </binding> + </axis> + + <!-- The next two axes are the view hat --> + + <axis n="4"> + <desc>View left</desc> + <binding> + <command>property-scale</command> + <property>/sim/current-view/axes/lat</property> + </binding> + </axis> + + <axis n="5"> + <desc>View right</desc> + <binding> + <command>property-scale</command> + <property>/sim/current-view/axes/long</property> + </binding> + </axis> + + <button n="3"> + <desc>View Cycle</desc> + <repeatable>false</repeatable> + <binding> + <command>view-cycle</command> + <step type="double">1</step> + </binding> + </button> + + <button n="0"> + <desc>Brakes</desc> + <binding> + <command>nasal</command> + <script>controls.applyBrakes(1)</script> + </binding> + <mod-up> + <binding> + <command>nasal</command> + <script>controls.applyBrakes(0)</script> + </binding> + </mod-up> + </button> + + <button n="1"> + <desc>Aileron trim right</desc> + <repeatable>true</repeatable> + <binding> + <command>nasal</command> + <script>controls.elevatorTrim(0.75)</script> + </binding> + </button> + + <button n="2"> + <desc>Aileron trim left</desc> + <repeatable>true</repeatable> + <binding> + <command>nasal</command> + <script>controls.elevatorTrim(-0.75)</script> + </binding> + </button> + + <button n="9"> + <desc>Mixture richer</desc> + <repeatable>true</repeatable> + <binding> + <command>nasal</command> + <script>controls.adjMixture(1)</script> + </binding> + </button> + + <button n="11"> + <desc>Mixture leaner</desc> + <repeatable>true</repeatable> + <binding> + <command>nasal</command> + <script>controls.adjMixture(-1)</script> + </binding> + </button> + + <button n="12"> + <desc>Apply left brakes</desc> + <repeatable>false</repeatable> + <binding> + <command>nasal</command> + <script>controls.applyBrakes(1,-1)</script> + </binding> + <mod-up> + <binding> + <command>nasal</command> + <script>controls.applyBrakes(0,-1)</script> + </binding> + </mod-up> + </button> + + <button n="10"> + <desc>Apply right brakes</desc> + <repeatable>false</repeatable> + <binding> + <command>nasal</command> + <script>controls.applyBrakes(1,1)</script> + </binding> + <mod-up> + <binding> + <command>nasal</command> + <script>controls.applyBrakes(0,1)</script> + </binding> + </mod-up> + </button> + + <button n="5"> + <desc>Flaps Up</desc> + <repeatable>false</repeatable> + <binding> + <command>nasal</command> + <script>controls.flapsDown(-1)</script> + </binding> + <mod-up> + <binding> + <command>nasal</command> + <script>controls.flapsDown(0)</script> + </binding> + </mod-up> + </button> + + <button n="4"> + <desc>Flaps Down</desc> + <repeatable>false</repeatable> + <binding> + <command>nasal</command> + <script>controls.flapsDown(1)</script> + </binding> + <mod-up> + <binding> + <command>nasal</command> + <script>controls.flapsDown(0)</script> + </binding> + </mod-up> + </button> + + <button n="6"> + <desc>Gear Toggle</desc> + <repeatable>false</repeatable> + <binding> + <command>nasal</command> + <script>controls.gearToggle()</script> + </binding> + </button> + +</PropertyList>