diff --git a/README.md b/README.md
index d7d1e91..e9f7144 100644
--- a/README.md
+++ b/README.md
@@ -6,35 +6,46 @@ Joystick maps and game configuration files for the [CH Products][] [Fighterstick
These maps are my own personal configuration that I've put together while playing Elite: Dangerous. The maps have evolved over time and are presented here as it's a much easier way of distributing changes. As the game evolves and my play style evolves you may see additional changes. Feel free to download, use and tweak for your own setup.
+### Version
+
+This version of the map is designed for use with Elite: Dangerous 1.2.03 and above.
+
+This map introduces a new modifier button (the `alt` button), tightens up much of the grouping that was set in previous versions, and moves some button assignments around to facilitate this.
+
+Notes are included below to indicate changes from previous maps. It is also recommended you study the [Layout][pdf] before flying with this map.
+
+> **Note:** The map is almost entirely virtual. Most definitions are done via CMS rather than direct mappings on the devices.
+
+### Previous versions
+
+Previous versions of the joystick maps, including the relevant README.md and layout guides, can be found [here][previous]. Major version number changes indicate complete overhauls of the map.
+
## Requirements
* [CH Products][] [Fighterstick][]
* [CH Products][] [Pro Throttle][]
* [CH Products][] [Control Manager][] software
-* [Elite: Dangerous][] 1.2 or above
+* [Elite: Dangerous][] 1.2.03 or above
* Optional: PDF viewer
## Installation
Download and extract the [zip file][] containing the game files.
-### Version
-
-This version of the map is designed for use with Elite: Dangerous 1.2 and above.
+### Joystick Maps
-### Previous versions
+Navigate to `My Documents` and create a folder called `CH Control Manager` if it doesn't already exist, and under it a folder called `Maps`.
-Previous versions of the joystick maps, including the relevant README.md, can
-be found [here][previous]
+Within the extracted zip file under the `maps` folder you'll find two files
+called `elite.cms` and `elite.map`. These need to be copied to the `CH Control Manager/Maps` folder.
-### Joystick Maps
+![The load dialog](images/load.png)
-Navigate to `My Documents` and create a folder called `CH Control Manager` if it doesn't already exist.
+Plugin your [Fighterstick][] and [Pro Throttle][], then launch the [CH Control Manager][Control Manager]. Load the `elite.map`. The load dialog should default to the folder you copied your maps to. If it doesn't just navigate to that folder.
-Within the extracted zip file under the `maps` folder you'll find two files
-called `elite.cms` and `elite.map`. These need to be copied to the `CH Control Manager` folder.
+![The Download Button](images/download.png)
-Plugin your [Fighterstick][] and [Pro Throttle][], then launch the [CH Control Manager][Control Manager] and load the `elite.map`. The load dialog should default to the folder you copied your maps to. If it doesn't just navigate to that folder. Once loaded click the `Download` button to enable the map.
+Once loaded click the `Download` button to enable the map.
### Game Configuration
@@ -47,188 +58,362 @@ You can optionally copy `StartPreset.start` to the same folder. All this does is
Within the root of the extracted zip file you'll find a file called `layout.pdf`. This file contains the button layout for the joystick map which can be used as a cheat sheet.
-## Axis Layout
+## Conventions
-### Fighterstick
-
-Axis | Action
------------------------------------- | ------
-`Stick Forward` | Pitch down
-`Stick Back` | Pitch up
-`Stick Left` | Roll left
-`Stick Right` | Roll right
-`Throttle Wheel` forward1 | Enable `Throttle`
-`Throttle Wheel` back1 | Disable `Throttle`
-
-> 1 The throttle wheel on the stick is used to enable and disable analogue throttle inputs from the [Pro Throttle][]. This allows you to bring the ship to a full stop even if your throttle is suffering from drift and not returning completely to zero when fully back. With the wheel moved back input from the [Pro Throttle][] is ignored and a throttle setting of zero (full stop) is used. With the wheen moved forward the [Pro Throttle][] is enabled. You should ensure the throttle wheel is fully forward if the [Pro Throttle][] is not responding.
-
-### Pro Throttle
-
-Axis | Action
------------------------- | ------
-`Throttle` fully back | 0% Throttle
-`Throttle` fully forward | 100% Throttle
-`Thumb Stick` up | Thrust up
-`Thumb Stick` down | Thrust down
-`Thumb Stick` left | Thrust left
-`Thumb stick` right | Thrust right
-
-**Note:** Analogue inputs for reverse thrust (0% to -100%) are achieved by holding the `back` button on the front 4-way hat on the throttle. With this button held the mappings for the throttle axis become
+This document uses a few basic conventions. Buttons and Axis are denoted using `fixed width` type. In game actions are given in _italics_ . Button and hat numbers can be found on the Cheat Sheet.
-Axis | Action
------------------------- | ------
-`Throttle` fully back | 0% Throttle
-`Throttle` fully forward | -100% Throttle
+The [Fighterstick][] is referred to as `Stick` and the [Pro Throttle][] is referred to as `Throttle`.
-**Tip:** The `forwards` and `back` buttons on `Joystick Hat 3` are mapped to _Forwards_ and _Backwards_. These can be used to temporarily override the throttle setting _100%_ or _0%_.
+Axis are referred to using `Device axis` where `axis` is either `x`, `y` or `z`. `Stick x` and `Stick y` are left/right and forward/back respectively. `Stick z` is the throttle wheel. `Throttle x` and `Throttle y` are mini-stick left/right and mini-stick up/down respectively. `Throttle z` is the throttle axis.
-### Mouse
+Individual buttons are referred to using the format `Btn n` where `n` is the button number from the cheat sheet. This can be prefixed with `Throttle` or `Stick`.
-By default mouse head look is disabled. On screens where the mouse can be used (e.g. station interface and galaxy may) it controls the cursor.
+Hats are referred to using the format `Hat n` where `n` is the hat number from the cheat sheet. This can be prefixed with `Throttle` or `Stick`.
-## Button Layout
+Individual hat buttons are referred to using the direction you need to move the hat to activate the button. For most hats this is `Up`, `Down`, `Left` and `Right`. The exception here is `Stick Hat 3` which uses `Forwards` and `Backwards` instead of `Up` and `Down`.
-Please refer to the cheat sheet to identify the various button and hat names.
+POV Hat buttons are referred to in a similar way to hats, except they use `POV` instead of `Hat n`. For example: `Stick POV Up`.
-### Shift Button
+Modifier buttons are referred to as `shift` (`Stick Btn 4`) and `alt` (`Throttle Btn 3`). Where a modifier is used it is written as `modifier` + `button` where `modifier` is either `shift` or `alt`, and `button` is the button or hat switch to press at the same time. Modifiers can stack, so `shift` + `alt` + `button` is valid and means you need to press 3 buttons to achieve the effect.
-`Button 4` on the [Fighterstick][] is used as a `shift` button. Pressing it at the same time as another button will yield the _Shift Action_.
+## Axis Layout
### Fighterstick
-#### Buttons
-
-Button | Action | Shift Action
-------- | ------------------------ | ------------
-`Btn 1` | Primary Fire | Secondary Fire
-`Btn 2` | Toggle Hard Points | Reset Head Look
-`Btn 3` | Primary + Secondary Fire | Fire Chaff
-`Btn 4` | `shift` | `shift`
-
-**Note:** The `shift` action for `Button 2` is now _Reset Head Look_ not _Fire Chaff_. _Fire Chaff_ is now `shift`+`Btn 3`. `Btn 3` has been given the new function _Primary + Secondary Fire_ which will fire all primary and secondary weapons.
-
-### `POV Hat` - Head Look
+Axis | Action
+--------- | ------
+`Stick x` | _Roll left/right_
+`Stick y` | _Pitch up/down_
+`Stick z` | _Scanner Range_[1]
-The 8-way POV (Point Of View) hat is used to control head look with the 8 directions corresponding to the relevant direction to look in.
+Notes:
+> [1] Previously `Stick z` disabled and enabled `Throttle z`. `Throttle z` is now toggled on and off by `alt`+`Throttle Hat 1 Left`.
-**Note:** Head look is now always on (and mouse head look is disabled). Resetting head look is done using `shift`+`btn 2` on the [Fighterstick][].
-
-#### `Hat 1` - Power Management
+### Pro Throttle
-Direction | Action | Shift Action
---------- | -------------------------- | ------------
-`Left` | Divert Power to Systems | `Macro 1`
-`Up` | Divert Power to Engines | `Macro 2`
-`Right` | Divert Power to Weapons | `Macro 3`
-`Down` | Balance Power Distribution | Toggle Silent Running
+Axis | Action
+------------ | ------
+`Throttle x` | _Thrust left/right_
+`Throttle y` | _Thrust up/down_
+`Throttle z` | _Throttle_ (0%-100%)[1], [2]
-The three macros configure the ship in the following fashion:
+Notes:
+> [1] Reverse thrust (0% to -100%) using the `Throttle` can be achieved by holding `Throttle Hat 1 Up`.
-Macro | Systems | Engines | Weapons
---------- | ------- | ------- | -------
-`Macro 1` | 4 Pips | 2 Pips | 0 Pips
-`Macro 2` | 2 Pips | 4 Pips | 0 Pips
-`Macro 3` | 0 Pips | 2 Pips | 4 Pips
+> [2] `Stick hat 3 Forward` and `Stick Hat 3 Back` are mapped to _Thrust Forwards_ and _Thrust Backwards_ respectively. These override the `Throttle` setting while pressed and allow for digital control when docking, 'blipping' the throttle, and emergency reverse without touching the throttle.
-The macros work by balancing power distribution, then diverting the power as need be. This is literally done by sending the correct key presses in quick succession and so takes a fraction of a second to take effect. You will also notice the visual and audio feedback from the power management panel as the macro runs.
+### Mouse
-#### `Hat 2` - Targeting
+By default mouse head-look is disabled. On screens where the mouse can be used (e.g. station interface and galaxy may) it controls the cursor.
-Direction | Action | Shift Action
---------- | ---------------------------- | ------------
-`Up` | Select Target Ahead | Select Next Subsystem
-`Down` | Select Highest Threat | Select Previous Subsystem
-`Left` | Select Previous Hostile Ship | Select Previous Ship
-`Right` | Select Next Hostile Ship | Select Next Ship
+## Button Layout
-#### `Hat 3` - Fine ship control
+### Modifier Buttons
-Direction | Action | Shift Action
------------ | ---------------- | ------------
-`Forwards` | Thrust Forwards | Thrust Forwards
-`Backwards` | Thrust Backwards | Thrust Backwards
-`Left` | Yaw Left | Yaw Left
-`Right` | Yaw Right | Yaw Right
+Button | Modifier
+---------------- | --------
+`Stick Btn 4` | `shift`
+`Throttle Btn 3` | `alt`
-**Note:** `Thrust Forwards` and `Thrust Backwards` temporarily override the `Throttle` setting.
+### Fighterstick
-**Tip:** The `Thrust Forwards` and `Thrust Backwards` buttons are primarily used when docking. Once the ship is roughly in the right position over the docking pad throttle back completely. A combination of `Thumb Stick`, `Stick`, and `Hat 3` inputs can be used to provide fine control over positioning or orientation relative to the pad.
+#### Buttons
-**Tip:** `Thrust Backwards` with _Flight Assist Off_ can result in harder braking than simply zeroing the throttle.
+Trigger (`Btn 1`) | Action
+------------------------- | ------
+`Btn 1` | _Primary Fire_
+`shift` + `Btn 1` | _Secondary Fire_
+`alt` + `Btn 1` | _Primary + Secondary Fire_[1]
+`shift` + `alt` + `Btn 1` | _Primary + Secondary Fire_[1]
+
+Button 2 (`Btn 2`) | Action
+------------------------- | ------
+`Btn 2` | _Toggle Hard Points_
+`shift` + `Btn 2` | _Toggle Hard Points_[2]
+`alt` + `Btn 2` | _Toggle Hard Points_
+`shift` + `alt` + `Btn 2` | _Toggle Silent Running_[3]
+
+Countermeasures (`Btn 3`) | Action
+------------------------- | ------
+`Btn 3` | _Fire Chaff_[4]
+`shift` + `Btn 3` | _Use Shield Cell_[5]
+`alt` + `Btn 3` | _Deploy Heat Sink_[6]
+`shift` + `alt` + `Btn 3` | _Deploy Heat Sink_[6]
+
+Notes:
+> [1] Moved from `Stick Btn 3`
+> [2] _Reset Head-Look_ is now `shift`+`Stick POV Up`
+> [3] Moved from `shift`+`Stick Hat 1 Down`
+> [4] Moved from `shift`+`Stick Btn 3`
+> [5] Moved from `shift`+`Throttle Hat 3 Right`
+> [6] Moved from `shift`+`Throttle Hat 4 Left`
+
+### Head-Look (`POV Hat`)
+
+`Stick POV` is used to control head-look with the 8 directions corresponding to the relevant direction to look in. Head-Look is now always on (and mouse head-look is disabled). `Stick POV` also has some modified button assignments. These are:
+
+Reset (`POV Up`) | Action
+-------------------------------- | ------
+`shift` + `POV Up` | _Reset Head-Look_[2]
+`alt` + `POV Up` | _Toggle Head-Look_
+`shift` + `alt` + `POV Up` | _Reset Oculus Orientation_
+
+Dev Camera (`POV Down`) | Action
+-------------------------------- | ------
+`alt` + `POV Down` | _Toggle Dev Camera_[3]
+`shift` + `alt` + `POV Down` | _Toggle Recording_[4]
+
+Screen Shot (`POV Left`) | Action
+-------------------------------- | ------
+`shift` + `POV Left` | _Screen Shot_
+`alt` + `POV Left` | _Screen Shot_
+`shift` + `alt` + `POV Left` | _Screen Shot_
+
+Hi-Res Screen Shot (`POV Right`) | Action
+-------------------------------- | ------
+`shift` + `POV Right` | _High ResolutionScreen Shot_
+`alt` + `POV Right` | _High ResolutionScreen Shot_
+`shift` + `alt` + `POV Right` | _High ResolutionScreen Shot_
+
+Notes:
+> [1] All other combinations are mapped to the 8 directions corresponding to the relevant direction to look in
+> [2] Moved from `shift`+`Stick Btn 2` (and `Stick Btn 3` before that)
+> [3] Moved from `Throttle Hat 2 Left`
+> [4] I use NVidia ShadowPlay mapped to `ALT` + `F9` to record playing. Feel free to ignore this mapping, or use it for something else bound to the same key combination
+
+#### Power Management (`Hat 1`)
+
+Systems (`Left`) | Action
+------------------------- | ------
+`Left` | _Divert Power to Systems_
+`shift` + `Left` | `Preset: Systems 1`
+`alt` + `Left` | `Preset: Systems 2`[1]
+`shift` + `alt` + `Left` | `Preset: Systems 3`[1]
+
+Engines (`Up`) | Action
+------------------------- | ------
+`Up` | _Divert Power to Engines_
+`shift` + `Up` | `Preset: Engines 1`
+`alt` + `Up` | `Preset: Engines 2`[1]
+`shift` + `alt` + `Up` | `Preset: Engines 3`[1]
+
+Weapons (`Right`) | Action
+------------------------- | ------
+`Right` | _Divert Power to Engines_
+`shift` + `Right` | `Preset: Weapons 1`
+`alt` + `Right` | `Preset: Weapons 2`[1]
+`shift` + `alt` + `Right` | `Preset: Weapons 3`[1]
+
+Balance/Misc (`Down`) | Action
+------------------------- | ------
+`Down` | _Balance Power Distribution_
+`shift` + `Down` | `Preset: Misc 1`[2]
+`alt` + `Down` | `Preset: Misc 2`[1]
+`shift` + `alt` + `Down` | `Preset: Misc 3`[1]
+
+Notes:
+> [1] New presets added in this version
+> [2] _Toggle Silent Running_ has moved to `alt`+`Stick Btn 2`
+
+The presets configure the ship in the following fashion:
+
+Preset | Systems | Engines | Weapons
+------------------- | -------- | -------- | -------
+`Preset: Systems 1` | 4 Pips | 2 Pips | 0 Pips
+`Preset: Systems 2` | 4 Pips | 1 Pip | 1 Pip
+`Preset: Systems 3` | 3 Pips | 1.5 Pips | 1.5 Pips
+`Preset: Engines 1` | 2 Pips | 4 Pips | 0 Pips
+`Preset: Engines 2` | 1 Pip | 4 Pips | 1 Pip
+`Preset: Engines 3` | 1.5 Pips | 3 Pips | 1.5 Pips
+`Preset: Weapons 1` | 0 Pips | 2 Pips | 4 Pips
+`Preset: Weapons 2` | 1 Pip | 1 Pip | 4 Pips
+`Preset: Weapons 3` | 1.5 Pips | 1.5 Pips | 3 Pips
+`Preset: Misc 1` | 1 Pip | 2.5 Pips | 2.5 Pips
+`Preset: Misc 2` | 2.5 Pips | 1 Pip | 2.5 Pips
+`Preset: Misc 3` | 2.5 Pips | 2.5 Pips | 1 Pip
+
+> **Note:** The presets work by balancing power distribution, then diverting the power as need be. This is literally done by sending the correct key presses in quick succession and so takes a fraction of a second to take effect. You will also notice the visual and audio feedback from the power management panel as the macro runs.
+
+#### Targeting (`Hat 2`)
+
+Direction: `Up` | Action
+------------------------- | ------
+`Up` | _Select Target Ahead_
+`shift` + `Up` | _Select Next Subsystem_
+`alt` + `Up` | _Select Wingman's Target_[1]
+`shift` + `alt` + `Up` | _Select Wingman's Target_[1]
+
+Direction: `Down` | Action
+------------------------- | ------
+`Down` | _Select Highest Threat_
+`shift` + `Down` | _Select Previous Subsystem_
+`alt` + `Down` | _Next System In Route_[2]
+`shift` + `alt` + `Down` | _Next System In Route_[2]
+
+Direction: `Left` | Action
+------------------------- | ------
+`Left` | _Select Previous Hostile Ship_
+`shift` + `Left` | _Select Previous Ship_
+`alt` + `Left` | _Select Previous Ship_
+`shift` + `alt` + `Left` | _Select Previous Ship_
+
+Direction: `Right` | Action
+------------------------- | ------
+`Right` | _Select Next Hostile Ship_
+`shift` + `Right` | _Select Next Ship_
+`alt` + `Right` | _Select Next Ship_
+`shift` + `alt` + `Right` | _Select Next Ship_
+
+Notes:
+> [1] Moved from `shift`+`Throttle Hat 2 Right`
+> [2] Moved from `shift`+`Throttle Hat 2 Down`
+
+#### Fine ship control (`Hat 3`)
+
+Direction | Action[1]
+----------- | --------------------
+`Forwards` | _Thrust Forwards_[2]
+`Backwards` | _Thrust Backwards_[2],[3]
+`Left` | _Yaw Left_
+`Right` | _Yaw Right_
+
+Notes:
+> [1] These buttons always have the same action, regardless of modifier button.
+
+> [2] _Thrust Forwards_ and _Thrust Backwards_ override the `Throttle` setting while pressed and allow for digital control when docking. A combination of `Throttle x`, `Throttle y`, `Stick`, and `Stick Hat 3` inputs can be used to provide fine control over positioning or orientation relative to the pad.
+
+> [3] _Thrust Backwards_ with _Flight Assist Off_ can result in harder braking than simply zeroing the throttle.
### Pro Throttle
#### Buttons
-Button | Action | Shift Action
-------- | --------------------- | ------------
-`Btn 4` | UI Select | UI Back
-`Btn 3` | Galaxy Map | `ESC`
-`Btn 2` | Disable Flight Assist | Disable Flight Assist
-`Btn 1` | Jettison All Cargo | Jettison All Cargo
-
-**Note:** The `UI Back` mapping doesn't appear to work in the _Galaxy Map_, however, pressing `Btn 3` again will exit the map.
-
-**Note:** _Galaxy Map_ has been moved from `shift`+`Btn 3` to just `Btn 3`. The _Comms Panel_ mapping is now on `shift`+`Hat 2`. The `ESC` key is now mapped to `shift`+`Btn 3` to allow easier use of the _Comms Panel_.
-
-**Note:** Button 2 will disable flight assist as long as it's held.
-
-**Note:** Button 1 is activated by pressing the thumb stick. I'm aware this is hard to press. It's the reason this has been mapped here.
-
-#### `POV Hat` - Menu Navigation and Wingmen
-
-Direction | Action | Shift Action
---------- | --------------------- | ------------
-`Up` | UI Panel Up | Select Wingman 2
-`Down` | UI Panel Down | Wingman Nav-Lock
-`Left` | UI Panel Previous Tab | Select Wingman 1
-`Right` | UI Panel Next Tab | Select Wingman 3
-
-
-**Note:** Only 4 of the possible 8 directions on the throttle POV hat have been mapped. The 4 unmapped directions are simply ignored.
-
-**Note:** This hat now has `shift` actions for wingman control.
-
-**Tip:** The POV hat is designed to be used in conjunction with `Hat 2`, `Hat 3` and `Btn 4` on the throttle.
-
-#### `Hat 1` - Engine Control and Misc Controls
-
-Direction | Action | Shift Action
---------- | ---------------------------- | ------------
-`Down` | Boost | Toggle Supercruise
-`Up` | Reverse Throttle | Engage FSD to Hyperspace
-`Left` | Cycle Previous Fire Group | Decrease Sensor Range
-`Right` | Cycle Next Fire Group | Increase Sensor Range
-
-**Note:** `shift`+`Down` and `shift`+`Up` are now separate actions for _Supercruise_ and _Hyperspace_ respectively.
-
-#### Hat 2 - UI Panel Select and Misc Controls
-
-Direction | Action | Shift Action
---------- | --------------| ------------
-`Left` | Target Panel | Toggle Dev Camera
-`Up` | UI Focus Mode | Comms Panel
-`Right` | Systems Panel | Select Wingman's Target
-`Down` | Radar Panel | Next System in Route
-
-**Note:** This hat has now acquired `shift` functions
-
-**Tip:** This hat is mainly used to select a panel to interact with before using the POV hat to then navigate through that panel. Pressing `Up` has the effect of dismissing a panel if one is shown, or giving a slightly wider field of view if no panel is selected. This can be useful for seeing some HUD elements if they're cut off by the edge of the screen.
-
-**Tip:** Selecting a direction a second time will also dismiss the currently displayed panel.
-
-**Tip:** The _Comms Panel_ is now accessed via `shift`+`Up` on this hat. By default the text entry box is not selected. Select it using `Btn 4`. Deselect it by using `shift`+`Btn 3`.
-
-#### Hat 3 - Select and Misc Controls
-
-Direction | Action | Shift Action
---------- | ------------------- | ------------
-`Left` | UI Left | Deploy Heat Sink
-`Right` | UI Right | Use Shield Cell
-`Up` | Toggle Ship Lights | Toggle Rotational Correction
-`Down` | Toggle Landing Gear | Toggle Cargo Scoop
+UI Actions (`Btn 4`) | Action
+------------------------- | ------
+`Btn 4` | _UI Select_
+`shift` + `Btn 4` | _UI Back_[1]
+`alt` + `Btn 4` | `ESC`[2]
+`shift` + `alt` + `Btn 4` | _Game Menu_
+
+Other Buttons | Action
+------------------------- | ------
+`Btn 1` | Not Used[3]
+`Btn 2` | _Disable Flight Assist_[4]
+`Btn 3` | `alt`[5]
+`shift` + `Btn 3` | `shift` + `alt`[6]
+
+Notes:
+> [1] Doesn't exit _Galaxy Map_, use `shift` + `Throttle Hat 2 Left`
+> [2] Previously `Throttle Btn 3`
+> [3] _Jettison All Cargo_ is now `alt` + `shift` + `Throttle Hat 3 Down`
+> [4] Will disable flight assist as long as it's held
+> [5] _Galaxy Map_ is now `shift` + `Throttle Hat 2 Left`
+> [6] `ESC` is now `alt` + `Btn 4`
+
+#### Menu Navigation (`POV Hat`)
+
+> **Note:** Only 4 of the possible 8 directions on the throttle POV hat have been mapped. The 4 unmapped directions are simply ignored.
+
+> **Tip:** With the way the UI works, UI Left and UI Right are more like _Increment_/_Decrement_ and _Panel Left_/_Right_ than move left and right hence mixing and matching Up/Down and Left/Right between unmodified/modified and having _Next_/_Previous Tab_ unmodified.
+
+Direction | Action | Modified Action[1]
+--------- | ----------------------- | -----------------------------
+`Up` | _UI Panel Up_ | _UI Panel Up_[2]
+`Down` | _UI Panel Down_ | _UI Panel Down_[3]
+`Left` | _UI Panel Previous Tab_ | _UI Panel Left_[4], [5]
+`Right` | _UI Panel Next Tab_ | _UI Panel Right_[6], [7]
+
+Notes:
+> [1] Actions work with `shift`, `alt`, and `shift` + `alt`
+> [2] _Select Wingman 2_ is now `Throttle Hat 3 Up`
+> [3] _Wingman Nav-Lock_ is now `shift` + `Throttle Hat 3 Up`
+> [4] _Select Wingman 1_ is now `Throttle Hat 3 Left`
+> [5] Previously `Throttle Hat 3 Left`
+> [6] _Select Wingman 3_ is now `Throttle Hat 3 Right`
+> [7] Previously `Throttle Hat 3 Right`
+
+#### Engine Control and Misc Controls (`Hat 1`)
+
+Direction: `Up` | Action
+------------------------- | ------
+`Up` | _Reverse Throttle_
+`shift` + `Up` | _Toggle Hyperdrive_
+`alt` + `Up` | _Toggle Rotational Correct_[1]
+`shift` + `alt` + `Up` | _Toggle Rotational Correct_[1]
+
+Direction: `Down` | Action
+------------------------- | ------
+`Down` | _Boost_
+`shift` + `Down` | _Toggle Supercruise_
+`alt` + `Down` | _Toggle Ships Lights_[2]
+`shift` + `alt` + `Down` | _Toggle Ships Lights_
+
+Direction: `Left` | Action
+------------------------- | ------
+`Left` | _Previous Fire Group_
+`shift` + `Left` | _Previous Fire Group_[3]
+`alt` + `Left` | _Disable/Enable`Throttle`_[4]
+`shift` + `alt` + `Left` | _Show FPS_
+
+Direction: `Right` | Action
+------------------------- | ------
+`Right` | _Next Fire Group_
+`shift` + `Right` | _Next Fire Group_[3]
+`alt` + `Right` | _Toggle Roll/Yaw_[5]
+`shift` + `alt` + `Right` | _Show Network Details_
+
+Notes:
+> [1] Previously `shift` + `Throttle Hat 3 Up`
+> [2] Previously `Throttle Hat 3 Up`
+> [3] _Scanner Range_ is now `Stick z`
+> [4] Previously `Stick z`
+> [5] Toggles `Stick x` between _Roll_ and _Yaw_
+
+#### UI Panels/Maps (`Hat 2`)
+
+> **Tip:** This hat is mainly used to select a panel to interact with before using the POV hat to then navigate through that panel. Pressing `Up` has the effect of dismissing a panel if one is shown, or giving a slightly wider field of view if no panel is selected. This can be useful for seeing some HUD elements if they're cut off by the edge of the screen.
+
+> **Tip:** Selecting a direction a second time will also dismiss the currently displayed panel.
+
+Direction | Action | Modified Action[1]
+--------- | ----------------| -----------------------------
+`Up` | _UI Focus Mode_ | _Comms Panel_[2]
+`Down` | _Radar Panel_ | _Mute/Unmute Microphone_
+`Left` | _Target Panel_ | _Galaxy Map_[3]
+`Right` | _Systems Panel_ | _System Map_
+
+Notes:
+> [1] Actions work with `shift`, `alt`, and `shift` + `alt`
+> [1] By default the text entry box is not selected. Select it using `Btn 4`. Deselect it by using `shift` + `alt` + `Btn 3`
+> [3] Previously `Throttle Btn 3` (and `shift` + `Throttle Btn 3` prior to that)
+
+
+#### Wingmen (`Hat 3`)
+
+Direction | Action | Modified Action[1]
+--------- | -------------------------------- | -----------------------------
+`Left` | _Select Wingman 1_[2] | _Select Wingman 1_
+`Up` | _Select Wingman 2_[3] | _Wingman Nav-Lock_[5]
+`Right` | _Select Wingman 3_[4] | _Select Wingman 3_
+
+Notes:
+> [1] Actions work with `shift`, `alt`, and `shift` + `alt`
+> [2] Previously `shift` + `Throttle POV Left`
+> [3] Previously `shift` + `Throttle POV Up`
+> [4] Previously `shift` + `Throttle POV Right`
+> [5] PReviously `shift` + `Throttle POV Down`
+
+#### Landing Gear and Cargo (`Hat 3`)
+
+Button | Action
+------------------------ | ------
+`Down` | _Toggle Landing Gear_
+`shift` + `Down` | _Toggle Cargo Scoop_
+`alt` + `Down` | _Toggle Cargo Scoop_
+`shift` + `alt` + `Down` | _Jettison All Cargo_[1]
-**Tip:** With the way the UI works, UI Left and UI Right are more like increment and decrement than move left and right, hence mixing and matching Up/Down and Left/Right between Hat 2 and Hat 3
+Notes:
+> [1] Previously `Throttle Btn 1`
### Mouse
@@ -242,40 +427,56 @@ Pressing `SPACE` brings up Quick Comms, i.e. a chat entry to the current target.
### In Flight
-UI Navigation is a little counter intuitive if you simply go by button assignments. In flight you generally use `Hat 2` on the `Throttle` and either `Left` or `Right` to select the relevant UI Panel. The `POV Hat` on the `Throttle` is then used to navigate between tabs and up and down within tabs. `Btn 4` on the `Throttle` is used to select elements. `Left` and `Right` on `Throttle Hat 3` can then be used to alter values that can be altered (for example system priority) and to move between the _Location_ list and map buttons on the _Navigation_ tab. `Forward` and `Back` also moved you between _Fire Groups_ in the _Fire Groups_ tab.
+UI Navigation is a little counter intuitive if you simply go by button assignments. In flight you generally use `Throttle Hat 2` and either `Left` or `Right` to select the relevant UI Panel. `Throttle POV` is then used to navigate between tabs and up and down within tabs with `Throttle Btn 4` used to select elements. `shift` + `Throttle POV Left` and `Right` can then be used to alter values that can be altered (for example system priority) and to move between sub-panels (e.g. the _Location_ list and map buttons on the _Navigation_ tab, and _Fire Groups_ in the _Fire Groups_ tab).
-**Tip:** It is also possible to bring up the relevant UI panels with Head Look by looking in the right direction.
+> **Tip:** It is also possible to bring up the relevant UI panels with Head Look by looking in the right direction.
### Comms Menu
-Use `Left` and `Right` on the `Throttle POV Hat` to navigate the _Comms Menu_. Use Throttle Button 4 to select an action. If the _Text Input_ is selected then use `shift`+`Btn 3` to deselect it. `Up` and `Down` can be used to scroll.
+Use `Left` and `Right` on the `Throttle POV Hat` to navigate the _Comms Menu_. Use `Throttle Btn 4` to select an action. If the _Text Input_ box is selected then use `shift` + `alt` + `Throttle Btn 4` to deselect it. `Throttle POV Up` and `Down` can be used to scroll.
### In Station
-The In Flight UI Navigation remains the same in station provided you haven't connected to the Station interface. Once in the station interface use up and down on the `Throttle POV Hat` to move up and down menus, and `Btn 1` on the `Throttle` to select items. `Left` and `Right` on `Throttle Hat 3` can be used for selecting cargo amounts. `shift`+`Throttle Btn 4` can be used to exit the current menu.
+The In Flight UI Navigation remains the same in station provided you haven't connected to the Station interface. Once in the station interface use `Up` and `Down` on the `Throttle POV Hat` to move up and down menus, and `Throttle Btn 1` to select items. `shift` + `Left` and `Right` on `Throttle POV Hat` can be used for moving between sub-panels and selecting cargo amounts. `shift` + `Throttle Btn 4` can be used to exit the current menu.
-You may find it easier to simply use the mouse in station.
+> **Tip:** You may find it easier to simply use the mouse in station.
### Galaxy Map
A number of overrides are provided for navigating the Galaxy Map. These are:
-Control | Action
------------------------- | ------
-`Joystick Stick Forward` | Pitch Camera Down
-`Joystick Stick Back` | Pitch Camera Up
-`Joystick Left` | Yaw Camera Left
-`Joystick Right` | Yaw Camera Right
-`Thumb Stick Up` | Translate Camera Left
-`Thumb Stick Down` | Translate Camera Right
-`Thumb Stick Left` | Translate Camera Backwards
-`Thumb Stick Right` | Translate Camera Forwards
-`Throttle Hat 1 Up` | Zoom Out
-`Throttle Hat 1 Down` | Zoom In
-`Throttle Hat 3 Up` | Translate Camera Up
-`Throttle Hat 3 Down` | Translate Camera Down
-
-It's generally easier to just use the mouse in the Galaxy Map.
+Axis/Button | Action
+--------------------- | ------
+`Stick x` | _Yaw Camera Left/Right_
+`Stick y` | _Pitch Camera Up/Down_
+`Throttle x` | _Translate Camera Forwards/Backwards_
+`Throttle y` | _Translate Camera Left/Right_
+`Throttle Hat 1 Up` | _Zoom Out_
+`Throttle Hat 1 Down` | _Zoom In_
+`Throttle Hat 1 Left` | _Galaxy Cam Set Y-Axis to Z-Axis_
+`Throttle Hat 3 Up` | _Translate Camera Up_
+`Throttle Hat 3 Down` | _Translate Camera Down_
+
+> **Tip:** It's generally easier to just use the mouse in the Galaxy Map.
+
+### Development Camera
+
+You 'fly' the camera much like you do your ship. Controls are:
+
+Axis/Button | Action
+----------------------- | ------
+`Stick x` | _Roll Camera Left/Right_
+`Stick y` | _Pitch Camera Up/Down_
+`Throttle x` | _Translate Camera Left/Right_
+`Throttle y` | _Translate Camera Up/Down_
+`Throttle z` | _Zoom Camera In/Out_[1]
+`Stick Hat 3 Forwards` | _Zoom Camera In_[1]
+`Stick Hat 3 Backwards` | _Zoom Camera Out_[1]
+`Stick Hat 3 Left` | _Yaw Camera Left_
+`Stick Hat 3 Right` | _Yaw Camera Right_
+
+Notes:
+> [1] To avoid sudden changes in speed when exiting the camera it's best to use `Stick Hat 3` for zoom
## Landing Overrides
@@ -283,24 +484,24 @@ This set up doesn't make use of _Landing Overrides_.
## Joystick Modes
-This set up doesn't make use of Joystick modes. The colour of the lit LED on both the stick and the throttle is irrelevant.
+This set up doesn't make use of Joystick modes. The colour of the lit LED on both the `Stick` and the `Throttle` is irrelevant.
## Adding Rudder Pedals
I no longer own the CH Products [Pro Pedals][], however, I have had experience using them. You can add them to this map by clicking the `Add Device` button and selecting the pedals from the list. Order is important in Joystick maps so ensure they are the **3rd** tab, otherwise the CMS script will need to be updated with the new position for the Throttle.
-The Axis `Slider 0` and `Slider 1` should be available to bind the yaw axis to, you can then map this in game. The toe pedals can be converted to buttons by copying and adapting the CMS script used for the Throttle Wheel, or you could completely un-map the Throttle wheel and have all three pedal Axis mapped.
+The Axis `Slider 0` and `Slider 1` should be available to bind the yaw axis to, you can then map this in game. The toe pedals can be converted to buttons by using the UI.
-## Possible Future Enhancement
-
-Short of radical control changes or the introduction of several new controls it's unlikely the map will change much. Things that may change are:
+> **Note:** If you want to use CMS scripts for your pedals please see [these notes][notes].
-* The power setting macros may get a tweak so they provide slightly different settings.
-* If we end up with an Iron Man mode and an eject button this may get mapped to `Throtle Btn 1` since cargo can be ejected via the menus.
+## Possible Future Enhancement
-## TODO
+With the addition of the new modifier button there are now many duplicate bindings that can be used to map new controls too. The underlying CMS scripts and buttons assignments have been written to be easily expandable. This allows for 33 usable buttons and one POV hat giving a total of 144 button bindings and 8 POV directions. Radical future changes are therefore unlikely.
-* Add images to this README to make it easier for those not familiar with the [CH Products][] control software.
+ * If we end up with an Iron Man mode and an eject button this may get mapped to `shift` + `alt` + `Throttle Hat 1 Down`
+ * _Increase_/_Decrease Throttle_ may get mapped to `shift` + `Stick Hat 3 Forwards`/`Backwards` to allow for single hand flying while typing.
+ * The _Yaw/Roll Button_ may get replaced with a button that actually swaps `Stick x` for a _Yaw_ axis, and then remaps _Yaw Left_/_Right_ to _Roll Left_/_Right_.
+ * For technical reasons I want to look at changing _Stick Hat 3_ to using axis rather than buttons.
## About The Author
@@ -316,9 +517,28 @@ With the exception of the PDF all the files contained in this project are text f
## Changelog
+### Version 2.0.0
+
+ * New `alt` modifier button added
+ * All in game controls either have a button, keyboard or axis mapping
+ * Moved all fire actions to the trigger (`Stick Btn 1`)
+ * Moved all countermeasure actions to `Stick Btn 3`
+ * Added new power presets
+ * Moved _Silent Running_ to `shift` + `alt` + `Stick Btn 2`
+ * Moved _Reset Head-Look_ and _Toggle Dev Camera_ to the `Stick POV Hat`
+ * `Stick z` now mapped to _Scanner Range_
+ * `Throttle Btn 4` now handles UI Input, UI Back and `ESC`
+ * `Throttle POV Hat` now handles all UI movement
+ * `Throttle Hat 2` now handled all UI panels and maps
+ * Added more functions to `Throttle Hat 1`
+ * Wingman functions moved to `Throttle Hat 3`
+ * No longer use `Throttle Btn 1`
+ * Entire map is now virtual
+ * Complete rewrite of the README
+
### Version 1.2.1
- * Remove mouse axis from head look so mouse head look off is now honoured
+ * Remove mouse axis from head-look so mouse head-look off is now honoured
### Version 1.2.0
@@ -339,7 +559,6 @@ Improvements for the 1.2 release:
* `shift`+`Throttle Hat 2 Up` is now _Comms Pannel_ (was previously `btn 3`)
* `shift`+`Throttle 2 Hat` has had functions mapped to it
* Tidied up README
- * Change of version numbering to match the version of ED it's intended for
### Version 0.0.5 (Previously version 5)
@@ -355,6 +574,7 @@ Improvements for the Gamma release:
* Minor tweaks to the way headlook works with the mouse and bindings
* Added changelog :)
+[pdf]: https://github.com/domdavis/ch-products-elite-map/blob/master/layout.pdf?raw=true
[previous]: https://github.com/domdavis/ch-products-elite-map/releases/
[CH Products]: http://www.chproducts.com/
[Fighterstick]: http://www.chproducts.com/Fighterstick-v13-d-722.html
@@ -366,3 +586,4 @@ Improvements for the Gamma release:
[Cmdr Davis]: https://twitter.com/cmdr_davis
[blog]: http://elite.domdavis.com
[YouTube]: https://www.youtube.com/user/idomdavis
+[notes]: https://github.com/domdavis/ch-products-elite-map/wiki
diff --git a/config/Custom.binds b/config/Custom.binds
index 8200d95..c868d7a 100755
--- a/config/Custom.binds
+++ b/config/Custom.binds
@@ -15,16 +15,16 @@
-
-
+
+
-
+
-
+
@@ -92,11 +92,11 @@
-
+
-
+
@@ -237,7 +237,7 @@
-
+
@@ -250,11 +250,11 @@
-
+
-
+
@@ -263,27 +263,27 @@
-
+
-
+
-
+
-
+
-
+
-
+
@@ -299,7 +299,7 @@
-
+
@@ -307,11 +307,11 @@
-
+
-
+
@@ -328,25 +328,25 @@
-
+
-
+
-
+
-
+
-
+
@@ -354,16 +354,16 @@
-
-
+
+
-
+
-
+
@@ -383,54 +383,54 @@
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
@@ -438,21 +438,25 @@
-
+
-
+
+
+
+
+
-
+
-
+
@@ -476,9 +480,7 @@
-
-
-
+
@@ -498,15 +500,15 @@
-
+
-
+
-
+
@@ -515,11 +517,11 @@
-
+
-
+
@@ -585,11 +587,11 @@
-
+
-
+
@@ -602,13 +604,11 @@
-
-
-
+
-
+
diff --git a/images/download.png b/images/download.png
new file mode 100644
index 0000000..3577bfb
Binary files /dev/null and b/images/download.png differ
diff --git a/images/load.png b/images/load.png
new file mode 100644
index 0000000..553f3d6
Binary files /dev/null and b/images/load.png differ
diff --git a/layout.pdf b/layout.pdf
index f4cf91e..4f99dd5 100644
Binary files a/layout.pdf and b/layout.pdf differ
diff --git a/maps/elite.cms b/maps/elite.cms
index 2c3fc99..e8e4fc8 100755
--- a/maps/elite.cms
+++ b/maps/elite.cms
@@ -1,26 +1,245 @@
+// This script defines each of the assignable virtual buttons, then assigns
+// CMS controls to each logical combination. Where a combination is not used
+// it is commented out, but the assigned CMS control is considered reserved for
+// future expansion
+
script
- if ( [ JS2.A3 > 128 ] ) then
- CMS.A1 = 256;
- else
- CMS.A1 = JS1.A3;
- endif
-
- if ( JS2.B1 and not JS2.B4 ) then
- CMS.B1 = true;
- endif
- if ( JS2.B1 and JS2.B4 ) then
- CMS.B2 = true;
- endif
-
- if ( JS2.B3 and not JS2.b4 ) then
- CMS.B1 = true;
- CMS.B2 = true;
+ %define stick.x.axis JS2.A1
+ %define stick.y.axis JS2.A2
+ %define stick.z.axis JS2.A3
+
+ %define throttle.x.axis JS1.A1
+ %define throttle.y.axis JS1.A2
+ %define throttle.z.axis JS1.A3
+
+ %define shift JS2.B4
+ %define alt JS1.B3
+
+ %define stick.btn1 JS2.B1
+ %define stick.btn2 JS2.B2
+ %define stick.btn3 JS2.B3
+
+ %define stick.hat1.up JS2.B5
+ %define stick.hat1.right JS2.B6
+ %define stick.hat1.down JS2.B7
+ %define stick.hat1.left JS2.B8
+
+ %define stick.hat2.up JS2.B9
+ %define stick.hat2.right JS2.B10
+ %define stick.hat2.down JS2.B11
+ %define stick.hat2.left JS2.B12
+
+ %define stick.pov.up JS2.B25
+ %define stick.pov.right JS2.B27
+ %define stick.pov.down JS2.B29
+ %define stick.pov.left JS2.B31
+
+ %define throttle.btn4 JS1.B4
+
+ %define throttle.hat1.up JS1.B7
+ %define throttle.hat1.right JS1.B6
+ %define throttle.hat1.down JS1.B5
+ %define throttle.hat1.left JS1.B8
+
+ %define throttle.hat2.up JS1.B12
+ %define throttle.hat2.right JS1.B9
+ %define throttle.hat2.down JS1.B10
+ %define throttle.hat2.left JS1.B11
+
+ %define throttle.hat3.up JS1.B16
+ %define throttle.hat3.right JS1.B13
+ %define throttle.hat3.down JS1.B14
+ %define throttle.hat3.left JS1.B15
+
+ %define throttle.pov.up JS1.B31
+ %define throttle.pov.right JS1.B25
+ %define throttle.pov.down JS1.B27
+ %define throttle.pov.left JS1.B29
+
+//CMS.A1 = stick.x.axis;
+ CMS.A2 = stick.y.axis;
+ CMS.A3 = stick.z.axis;
+
+ CMS.A17 = throttle.x.axis;
+ CMS.A18 = throttle.y.axis;
+//CMS.A19 = throttle.z.axis;
+
+ CMS.B1 = stick.btn1 and not (shift and not alt);
+ CMS.B2 = stick.btn1 and (shift or alt);
+//CMS.B3 = stick.btn1 and not shift and alt;
+//CMS.B4 = stick.btn1 and shift and alt;
+
+ CMS.B5 = stick.btn2 and not (shift and alt);
+//CMS.B6 = stick.btn2 and shift and not alt;
+//CMS.B7 = stick.btn2 and not shift and alt;
+ CMS.B8 = stick.btn2 and shift and alt;
+
+ CMS.B9 = stick.btn3 and not shift and not alt;
+ CMS.B10 = stick.btn3 and shift and not alt;
+ CMS.B11 = stick.btn3 and alt;
+//CMS.B12 = stick.btn3 and shift and alt;
+
+ CMS.B13 = stick.hat1.up and not shift and not alt;
+ CMS.B14 = stick.hat1.up and shift and not alt;
+ CMS.B15 = stick.hat1.up and not shift and alt;
+ CMS.B16 = stick.hat1.up and shift and alt;
+
+ CMS.B17 = stick.hat1.right and not shift and not alt;
+ CMS.B18 = stick.hat1.right and shift and not alt;
+ CMS.B19 = stick.hat1.right and not shift and alt;
+ CMS.B20 = stick.hat1.right and shift and alt;
+
+ CMS.B21 = stick.hat1.down and not shift and not alt;
+ CMS.B22 = stick.hat1.down and shift and not alt;
+ CMS.B23 = stick.hat1.down and not shift and alt;
+ CMS.B24 = stick.hat1.down and shift and alt;
+
+ CMS.B25 = stick.hat1.left and not shift and not alt;
+ CMS.B26 = stick.hat1.left and shift and not alt;
+ CMS.B27 = stick.hat1.left and not shift and alt;
+ CMS.B28 = stick.hat1.left and shift and alt;
+
+ CMS.B29 = stick.hat2.up and not shift and not alt;
+ CMS.B30 = stick.hat2.up and shift and not alt;
+ CMS.B31 = stick.hat2.up and alt;
+//CMS.B32 = stick.hat2.up and shift and alt;
+
+ CMS.B33 = stick.hat2.right and not shift and not alt;
+ CMS.B34 = stick.hat2.right and (shift or alt);
+//CMS.B35 = stick.hat2.right and not shift and alt;
+//CMS.B36 = stick.hat2.right and shift and alt;
+
+ CMS.B37 = stick.hat2.down and not shift and not alt;
+ CMS.B38 = stick.hat2.down and shift and not alt;
+ CMS.B39 = stick.hat2.down and alt;
+//CMS.B40 = stick.hat2.down and shift and alt;
+
+ CMS.B41 = stick.hat2.left and not shift and not alt;
+ CMS.B42 = stick.hat2.left and (shift or alt);
+//CMS.B43 = stick.hat2.left and not shift and alt;
+//CMS.B44 = stick.hat2.left and shift and alt;
+
+ CMS.B45 = stick.pov.up and not shift and not alt;
+ CMS.B46 = stick.pov.up and shift and not alt;
+ CMS.B47 = stick.pov.up and not shift and alt;
+ CMS.B48 = stick.pov.up and shift and alt;
+
+ CMS.B49 = stick.pov.right and not shift and not alt;
+ CMS.B50 = stick.pov.right and (shift or alt);
+//CMS.B51 = stick.pov.right and not shift and alt;
+//CMS.B52 = stick.pov.right and shift and alt;
+
+ CMS.B53 = stick.pov.down and not alt;
+//CMS.B54 = stick.pov.down and shift and not alt;
+ CMS.B55 = stick.pov.down and not shift and alt;
+ CMS.B56 = stick.pov.down and shift and alt;
+
+ CMS.B57 = stick.pov.left and not shift and not alt;
+ CMS.B58 = stick.pov.left and (shift or alt);
+//CMS.B59 = stick.pov.left and not shift and alt;
+//CMS.B60 = stick.pov.left and shift and alt;
+
+ CMS.B61 = throttle.btn4 and not shift and not alt;
+ CMS.B62 = throttle.btn4 and shift and not alt;
+ CMS.B63 = throttle.btn4 and not shift and alt;
+ CMS.B64 = throttle.btn4 and shift and alt;
+
+ CMS.B65 = throttle.hat1.up and not shift and not alt;
+ CMS.B66 = throttle.hat1.up and shift and not alt;
+ CMS.B67 = throttle.hat1.up and alt;
+//CMS.B68 = throttle.hat1.up and shift and alt;
+
+ CMS.B69 = throttle.hat1.right and not alt;
+//CMS.B70 = throttle.hat1.right and shift and not alt;
+//CMS.B71 = throttle.hat1.right and not shift and alt;
+ CMS.B72 = throttle.hat1.right and shift and alt;
+
+ CMS.B73 = throttle.hat1.down and not shift and not alt;
+ CMS.B74 = throttle.hat1.down and shift and not alt;
+ CMS.B75 = throttle.hat1.down and alt;
+//CMS.B76 = throttle.hat1.down and shift and alt;
+
+ CMS.B77 = throttle.hat1.left and not alt;
+//CMS.B78 = throttle.hat1.left and shift and not alt;
+//CMS.B79 = throttle.hat1.left and alt;
+ CMS.B80 = throttle.hat1.left and shift and alt;
+
+ CMS.B81 = throttle.hat2.up and not shift and not alt;
+ CMS.B82 = throttle.hat2.up and (shift or alt);
+//CMS.B83 = throttle.hat2.up and not shift and alt;
+//CMS.B84 = throttle.hat2.up and shift and alt;
+
+ CMS.B85 = throttle.hat2.right and not alt;
+ CMS.B86 = throttle.hat2.right and (shift or alt);
+//CMS.B87 = throttle.hat2.right and not shift and alt;
+//CMS.B88 = throttle.hat2.right and shift and alt;
+
+ CMS.B89 = throttle.hat2.down and not shift and not alt;
+ CMS.B90 = throttle.hat2.down and (shift or alt);
+//CMS.B91 = throttle.hat2.down and not shift and alt;
+//CMS.B92 = throttle.hat2.down and shift and alt;
+
+ CMS.B93 = throttle.hat2.left and not shift and not alt;
+ CMS.B94 = throttle.hat2.left and (shift or alt);
+//CMS.B95 = throttle.hat2.left and not shift and alt;
+//CMS.B96 = throttle.hat2.left and shift and alt;
+
+ CMS.B97 = throttle.hat3.up and not shift and not alt;
+ CMS.B98 = throttle.hat3.up and (shift or alt);
+//CMS.B99 = throttle.hat3.up and not shift and alt;
+//CMS.B100 = throttle.hat3.up and shift and alt;
+
+ CMS.B101 = throttle.hat3.right;
+//CMS.B102 = throttle.hat3.right and shift and not alt;
+//CMS.B103 = throttle.hat3.right and not shift and alt;
+//CMS.B104 = throttle.hat3.right and shift and alt;
+
+ CMS.B105 = throttle.hat3.down and not shift and not alt;
+ CMS.B106 = throttle.hat3.down and (shift or alt) and not (shift and alt);
+//CMS.B107 = throttle.hat3.down and not shift and alt;
+ CMS.B108 = throttle.hat3.down and shift and alt;
+
+ CMS.B109 = throttle.hat3.left;
+//CMS.B110 = throttle.hat3.left and shift and not alt;
+//CMS.B111 = throttle.hat3.left and not shift and alt;
+//CMS.B112 = throttle.hat3.left and shift and alt;
+
+ CMS.B113 = throttle.pov.up;
+//CMS.B114 = throttle.pov.up and shift and not alt;
+//CMS.B115 = throttle.pov.up and not shift and alt;
+//CMS.B116 = throttle.pov.up and shift and alt;
+
+ CMS.B117 = throttle.pov.right and not shift and not alt;
+ CMS.B118 = throttle.pov.right and (shift or alt);
+//CMS.B119 = throttle.pov.right and not shift and alt;
+//CMS.B120 = throttle.pov.right and shift and alt;
+
+ CMS.B121 = throttle.pov.down;
+//CMS.B122 = throttle.pov.down and shift and not alt;
+//CMS.B123 = throttle.pov.down and not shift and alt;
+//CMS.B124 = throttle.pov.down and shift and alt;
+
+ CMS.B125 = throttle.pov.left and not shift and not alt;
+ CMS.B126 = throttle.pov.left and (shift or alt);
+//CMS.B127 = throttle.pov.left and not shift and alt;
+//CMS.B128 = throttle.pov.left and shift and alt;
+
+ toggle(D1) = throttle.hat1.left and not shift and alt;
+ toggle(D2) = throttle.hat1.right and not shift and alt;
+
+ if (D1) then
+ CMS.A19 = 256;
+ else
+ CMS.A19 = throttle.z.axis;
endif
- if ( not JS2.B1 and not JS2.B3 ) then
- CMS.B1 = false;
- CMS.B2 = false;
+ if (D2) then
+ CMS.A1 = 128;
+ CMS.A4 = stick.x.axis;
+ else
+ CMS.A1 = stick.x.axis;
+ CMS.A4 = 128;
endif
-endScript
+endscript
diff --git a/maps/elite.map b/maps/elite.map
index bdb4e36..311de77 100755
--- a/maps/elite.map
+++ b/maps/elite.map
@@ -1,14 +1,8 @@
-010A05=1
-010A22=ESC
-010A20=0
-124204=1
-124225=2
-124224=1
-124104=1
-124127=2
-124125=1
-124124=1
-125701=2
+120414=84435979
+120404=1
+120411=41
+120410=1
+120401=2
000001=2
000002=11
000003=50
@@ -18,273 +12,488 @@
000012=5
000013=13
010101=2
-010104=1
-010110=1
-010111=4
-010114=85484555
010201=2
-010204=1
-010210=1
-010211=5
-010214=85484555
010301=2
010701=1
-010801=1
-010804=1
-010805=1
-010820=`
-010822=`
+010801=2
010901=1
010904=1
010905=1
-010920=m
-010922=m
+010920=0
010924=1
-010925=20
-010926=1
-010927=20
-010A01=1
-010A04=1
-010A24=1
-010A25=19
-010A26=1
-010A27=20
-010B01=1
-010B04=1
-010B05=1
-010B20=ENT
-010B22=#
-010B24=1
-010B25=26
-010B26=1
-010B27=26
-010C01=1
-010C04=1
-010C05=1
-010C20=TAB
-010C22=f
+010925=32
+010A01=2
+010B01=2
+010C01=2
010D01=2
-010D04=1
-010D24=1
-010D25=30
-010D26=1
-010D27=32
-010E01=1
-010E04=1
-010E05=1
-010E20=#
-010E22=j
-010E24=1
-010E25=27
-010E26=1
-010E27=31
+010E01=2
010F01=2
-010F04=1
-010F24=1
-010F25=29
-010F26=1
-010F27=31
011001=2
-011004=1
-011024=1
-011025=26
-011026=1
-011027=22
011101=2
-011104=1
-011124=1
-011125=27
-011126=1
-011127=23
011201=2
-011204=1
-011224=1
-011225=28
-011226=1
-011227=24
011301=2
-011304=1
-011324=1
-011325=25
-011326=1
-011327=21
-011401=1
-011404=1
-011405=1
-011420=KBRIGHT
-011422=[
-011501=1
-011504=1
-011505=1
-011520=g
-011522=c
-011601=1
-011604=1
-011605=1
-011620=KBLEFT
-011622=]
-011701=1
-011704=1
-011705=1
-011720=l
-011722=r
-012001=1
-012005=1
-012020=KBPGDN
-012022=3
+011401=2
+011501=2
+011601=2
+011701=2
+012001=2
012101=2
-012201=1
-012205=1
-012220=KBDOWN
-012222=4
+012201=2
012301=2
-012401=1
-012405=1
-012420=KBDEL
-012422=1
+012401=2
012501=2
-012601=1
-012605=1
-012620=KBUP
-012622=2
+012601=2
012701=2
020101=2
-020104=1
-020110=1
-020111=1
-020114=84435979
020201=2
-020204=1
-020210=1
-020211=2
-020214=84435979
020301=2
-020701=2
-020704=1
-020710=1
-020711=7
+020701=1
020801=2
020901=2
-020904=1
-020924=1
-020925=3
-020926=1
-020927=4
020A01=2
-020A04=1
-020A06=1
-020A26=1
-020A27=6
020B01=2
-020C01=1
-020C04=1
-020C05=1
-020C20=KBHOME
-020C22=KBEND CHARDLY KBHOME CHARDLY KBHOME CHARDLY KBINS CHARDLY KBHOME
-020C24=1
-020C25=6
-020C26=1
-020C27=7
-020D01=1
-020D04=1
-020D05=1
-020D20=KBPGUP
-020D22=KBEND CHARDLY KBPGUP CHARDLY KBPGUP CHARDLY KBHOME CHARDLY KBPGUP
-020D24=1
-020D25=8
-020D26=1
-020D27=8
-020E01=1
-020E04=1
-020E05=1
-020E20=KBEND
-020E22=BKSPC
-020E24=1
-020E25=9
-020E26=1
-020E27=9
-020F01=1
-020F04=1
-020F05=1
-020F20=KBINS
-020F22=KBEND CHARDLY KBINS CHARDLY KBINS CHARDLY KBHOME CHARDLY KBINS
-020F24=1
-020F25=10
-020F26=1
-020F27=10
+020C01=2
+020D01=2
+020E01=2
+020F01=2
021001=2
-021004=1
-021024=1
-021025=7
-021026=1
-021027=11
021101=2
-021104=1
-021124=1
-021125=8
-021126=1
-021127=12
021201=2
-021204=1
-021224=1
-021225=9
-021226=1
-021227=13
021301=2
-021304=1
-021324=1
-021325=10
-021326=1
-021327=14
-021401=2
+021401=1
021404=1
+021405=1
+021420=8
021424=1
-021425=15
-021426=1
-021427=15
-021501=2
+021425=25
+021501=1
021504=1
+021505=1
+021520=o
021524=1
-021525=16
-021526=1
-021527=16
-021601=2
+021525=26
+021601=1
021604=1
+021605=1
+021620=i
021624=1
-021625=17
-021626=1
-021627=17
-021701=2
+021625=27
+021701=1
021704=1
+021705=1
+021720=u
021724=1
-021725=18
-021726=1
-021727=18
+021725=28
022001=2
-022029=1
022101=1
022105=1
-022120=HOLD d w
-022122=HOLD KP8 KP6
+022120=HOLD KP8 KP6
022201=2
-022301=2
+022301=1
+022305=1
+022320=HOLD KP2 KP6
022401=2
-022501=2
+022501=1
+022505=1
+022520=HOLD KP2 KP4
022601=2
022701=1
022705=1
-022720=HOLD w a
-022722=HOLD KP8 KP4
+022720=HOLD KP8 KP4
120101=2
120104=1
120110=1
-120111=3
-120114=83911689
+120111=1
+120114=84435979
120201=2
+120204=1
+120210=1
+120211=2
+120214=84435979
120301=2
+120304=1
+120310=1
+120311=6
+120314=83911691
+121101=2
+121104=1
+121110=1
+121111=4
+121114=85484555
+121201=2
+121204=1
+121210=1
+121211=5
+121214=85484555
+121301=2
+121304=1
+121310=1
+121311=3
+121314=83911691
+122101=2
+123101=2
124101=2
-124106=1
+124104=1
+124124=1
+124125=1
124201=2
+124204=1
+124224=1
+124225=2
124301=2
+124304=1
+124324=1
+124325=3
124401=2
+124404=1
+124424=1
+124425=4
124501=2
+124504=1
+124524=1
+124525=5
+124601=2
+124604=1
+124624=1
+124625=6
+124701=2
+124704=1
+124724=1
+124725=7
+124801=2
+124804=1
+124824=1
+124825=8
+124901=2
+124904=1
+124924=1
+124925=9
+124A01=2
+124A04=1
+124A24=1
+124A25=10
+124B01=2
+124B04=1
+124B24=1
+124B25=11
+124C01=2
+124C04=1
+124C24=1
+124C25=12
+124D01=1
+124D04=1
+124D05=1
+124D20=KBHOME
+124E01=1
+124E04=1
+124E05=1
+124E20=KBEND CHARDLY KBHOME CHARDLY KBHOME CHARDLY KBINS CHARDLY KBHOME
+124F01=1
+124F04=1
+124F05=1
+124F20=KBEND CHARDLY KBHOME CHARDLY KBHOME
+125001=1
+125004=1
+125005=1
+125020=KBEND CHARDLY KBHOME CHARDLY KBHOME CHARDLY KBINS CHARDLY KBPGUP
+125101=1
+125104=1
+125105=1
+125120=KBPGUP
+125201=1
+125204=1
+125205=1
+125220=KBEND CHARDLY KBPGUP CHARDLY KBPGUP CHARDLY KBHOME CHARDLY KBPGUP
+125301=1
+125304=1
+125305=1
+125320=KBEND CHARDLY KBPGUP CHARDLY KBPGUP
+125401=1
+125404=1
+125405=1
+125420=KBEND CHARDLY KBPGUP CHARDLY KBPGUP CHARDLY KBHOME CHARDLY KBINS
+125501=1
+125504=1
+125505=1
+125520=KBEND
+125601=1
+125604=1
+125605=1
+125620=KBEND CHARDLY KBPGUP CHARDLY KBHOME
+125701=1
+125704=1
+125705=1
+125720=KBEND CHARDLY KBINS CHARDLY KBPGUP
+125801=1
+125804=1
+125805=1
+125820=KBEND CHARDLY KBINS CHARDLY KBHOME
+125901=1
+125904=1
+125905=1
+125920=KBINS
+125A01=1
+125A04=1
+125A05=1
+125A20=KBEND CHARDLY KBINS CHARDLY KBINS CHARDLY KBHOME CHARDLY KBINS
+125B01=1
+125B04=1
+125B05=1
+125B20=KBEND CHARDLY KBINS CHARDLY KBINS
+125C01=1
+125C04=1
+125C05=1
+125C20=KBEND CHARDLY KBINS CHARDLY KBINS CHARDLY KBHOME CHARDLY KBPGUP
+125D01=2
+125D04=1
+125D24=1
+125D25=13
+125E01=2
+125E04=1
+125E24=1
+125E25=17
+125F01=2
+125F04=1
+125F24=1
+125F25=21
+126001=2
+126004=1
+126024=1
+126025=25
+126101=2
+126104=1
+126124=1
+126125=14
+126201=2
+126204=1
+126224=1
+126225=18
+126301=2
+126304=1
+126324=1
+126325=22
+126401=2
+126404=1
+126424=1
+126425=26
+126501=2
+126504=1
+126524=1
+126525=15
+126601=2
+126604=1
+126624=1
+126625=19
+126701=2
+126704=1
+126724=1
+126725=23
+126801=2
+126804=1
+126824=1
+126825=27
+126901=2
+126904=1
+126924=1
+126925=16
+126A01=2
+126A04=1
+126A24=1
+126A25=20
+126B01=2
+126B04=1
+126B24=1
+126B25=24
+126C01=2
+126C04=1
+126C24=1
+126C25=28
+126D01=1
+126D04=1
+126D05=1
+126D20=KP8
+126D24=1
+126D25=33
+126E01=2
+126E04=1
+126E24=1
+126E25=29
+126F01=2
+126F04=1
+126F24=1
+126F25=30
+127001=2
+127004=1
+127024=1
+127025=32
+127101=1
+127104=1
+127105=1
+127120=KP6
+127201=1
+127204=1
+127205=1
+127220=ALT F10
+127501=1
+127504=1
+127505=1
+127520=KP2
+127701=2
+127704=1
+127724=1
+127725=31
+127801=1
+127804=1
+127805=1
+127820=ALT F9
+127901=1
+127904=1
+127905=1
+127920=KP4
+127A01=1
+127A04=1
+127A05=1
+127A20=F10
+127D01=1
+127D04=1
+127D05=1
+127D20=ENT
+127E01=1
+127E04=1
+127E05=1
+127E20=BKSPC
+127F01=1
+127F04=1
+127F05=1
+127F20=ESC
+128001=1
+128004=1
+128005=1
+128020=z
+128101=1
+128104=1
+128105=1
+128120=#
+128201=1
+128204=1
+128205=1
+128220=h
+128301=1
+128304=1
+128305=1
+128320=r
+128501=1
+128504=1
+128505=1
+128520=]
+128701=2
+128801=1
+128804=1
+128805=1
+128820=CTL b
+128901=1
+128904=1
+128905=1
+128920=TAB
+128A01=1
+128A04=1
+128A05=1
+128A20=j
+128B01=1
+128B04=1
+128B05=1
+128B20=l
+128D01=1
+128D04=1
+128D05=1
+128D20=[
+128E01=2
+129001=1
+129004=1
+129005=1
+129020=CTL f
+129101=1
+129104=1
+129105=1
+129120=x
+129201=1
+129204=1
+129205=1
+129220=w
+129501=1
+129504=1
+129505=1
+129520=d
+129601=1
+129604=1
+129605=1
+129620=e
+129801=2
+129901=1
+129904=1
+129905=1
+129920=s
+129A01=1
+129A04=1
+129A05=1
+129A20=m
+129D01=1
+129D04=1
+129D05=1
+129D20=a
+129E01=1
+129E04=1
+129E05=1
+129E20=q
+12A101=1
+12A104=1
+12A105=1
+12A120=2
+12A201=1
+12A204=1
+12A205=1
+12A220=4
+12A501=1
+12A504=1
+12A505=1
+12A520=3
+12A901=1
+12A904=1
+12A905=1
+12A920=5
+12AA01=1
+12AA04=1
+12AA05=1
+12AA20=6
+12AC01=1
+12AC04=1
+12AC05=1
+12AC20=7
+12AD01=1
+12AD04=1
+12AD05=1
+12AD20=1
+12B101=1
+12B104=1
+12B105=1
+12B120=KBUP
+12B501=1
+12B504=1
+12B505=1
+12B520=KBPGDN
+12B601=1
+12B604=1
+12B605=1
+12B620=KBRIGHT
+12B901=1
+12B904=1
+12B905=1
+12B920=KBDOWN
+12BD01=1
+12BD04=1
+12BD05=1
+12BD20=KBDEL
+12BE01=1
+12BE04=1
+12BE05=1
+12BE20=KBLEFT