Hey Craig!
Great News! I have discovered a way to map any KNob or button the CS757 to a key and then assign the key using FSUIPC to a joystick Button!!!!!
You will need to first Navigate to your Gauges/cs.b757.oh.CAB
Open the file, and copy all the contents, then rename the CAB to something else, and make a new folder. copy the contents, and rename the folder to
cs.b757.oh.CAB confirm the file extension change,
This will allow you to save a edited XML inside the cab.
Ok SO lets start out with Assigning Key to Engine start Selector Knob 1
Find. in the .CAB folder . 757_OH_13_RamAirTurb_1.XML
Open it using Notepad, it looks like this
<Gauge Name="757_OH_13_RamAirTurb_1" Version="1.0">
<Update Frequency="10"/>
<Element>
<Position X="0" Y="0"/>
<Select>
<Value>(E:TIME OF DAY, enum) 1 != (A:LIGHT PANEL, bool) &&</Value>
<Case Value="0">
<Image Name="757_OH_13_RamAirTurb_1_bkg.bmp" Bright="No"/>
</Case>
<Case Value="1">
<Image Name="757_OH_13_RamAirTurb_1_bkg_n.bmp" Bright="Yes"/>
</Case>
</Select>
</Element>
<!--L Valve Light-->
<Element>
<Visible>(A:Electrical master battery,bool) (A:General eng1 generator active,bool) ||</Visible>
<Position X="73" Y="179"/>
<Select>
<Value>(L:LEngValveFlag,enum) (L:TestLamps,bool) ||</Value>
<Case Value="0">
<Image Name="Off.bmp" Bright="no"/>
</Case>
<Case Value="1">
<Image Name="757_OH_13_RamAirTurb_1_Lmp_Valve.bmp" Bright="Yes"/>
</Case>
<Case Value="2">
<Image Name="757_OH_13_RamAirTurb_1_Lmp_Valve.bmp" Bright="Yes"/>
</Case>
</Select>
</Element>
<!--R Valve Light-->
<Element>
<Visible>(A:Electrical master battery,bool) (A:General eng1 generator active,bool) ||</Visible>
<Position X="280" Y="181"/>
<Select>
<Value>(L:REngValveFlag, enum) (L:TestLamps,bool) ||</Value>
<Case Value="0">
<Image Name="Off.bmp" Bright="no"/>
</Case>
<Case Value="2">
<Image Name="757_OH_13_RamAirTurb_1_Lmp_Valve.bmp" Bright="Yes"/>
</Case>
<Case Value="1">
<Image Name="757_OH_13_RamAirTurb_1_Lmp_Valve.bmp" Bright="Yes"/>
</Case>
</Select>
</Element>
<!--Kolpak Air Turb-->
<Element>
<Position X="61" Y="9"/>
<Select>
<Value>
(E:TIME OF DAY, enum) 1 != (A:LIGHT PANEL, bool) && if{ 2 } els{ 0 }
(L:OR001cv2Pos,position) 100 div +
</Value>
<Case Value="0"> <Image Name="757_OH_13_RamAirTurb_1_Colp_Cls.bmp"/> </Case>
<Case Value="1"> <Image Name="757_OH_13_RamAirTurb_1_Colp_Open.bmp"/> </Case>
<Case Value="2"> <Image Name="757_OH_13_RamAirTurb_1_Colp_Cls_n.bmp" Bright="Yes"/> </Case>
<Case Value="3"> <Image Name="757_OH_13_RamAirTurb_1_Colp_Open_n.bmp" Bright="Yes"/> </Case>
</Select>
</Element>
<!--Lampa Press-->
<Element>
<Visible>(A:Electrical master battery,bool) (A:ELECTRICAL HOT BATTERY BUS VOLTAGE,bool) ||</Visible>
<Position X="77" Y="53"/>
<Select>
<Value>(L:RATPressOn, bool) ! if{ 0 } els{ 1 (L:OR001cv2Pos,bool) 100 div + }</Value>
<Case Value="1">
<Image Name="757_OH_13_RamAirTurb_1_Lmp_Press_cl.bmp" Bright="Yes"/>
</Case>
<Case Value="2">
<Image Name="757_OH_13_RamAirTurb_1_Lmp_Press_op.bmp" Bright="Yes"/>
</Case>
</Select>
</Element>
<!--Lampa Unlk-->
<Element>
<Visible>(A:Electrical master battery,bool) (A:ELECTRICAL HOT BATTERY BUS VOLTAGE,bool) ||</Visible>
<Position X="77" Y="83"/>
<Select>
<Value>(L:RATUnlkOn,bool) ! if{ 0 } els{ 1 (L:OR001cv2Pos,bool) 100 div + }</Value>
<Case Value="1">
<Image Name="757_OH_13_RamAirTurb_1_Lmp_Unlk_cl.bmp" Bright="Yes"/>
</Case>
<Case Value="2">
<Image Name="757_OH_13_RamAirTurb_1_Lmp_Unlk_op.bmp" Bright="Yes"/>
</Case>
</Select>
</Element>
<!--Rotor L eng-->
<Element>
<Position X="114" Y="343"/>
<Select>
<Value>(E:TIME OF DAY, enum) 1 != (A:LIGHT PANEL, bool) &&</Value>
<Case Value="0">
<Image Name="757_OH_Rotor.bmp" Bright="No">
<Axis X="41" Y="41"/>
</Image>
</Case>
<Case Value="1">
<Image Name="757_OH_Rotor_n.bmp" Bright="Yes">
<Axis X="41" Y="41"/>
</Image>
</Case>
</Select>
<Rotate>
<Value>
(L:OR006kn5Pos,position)
</Value>
<Nonlinearity>
<Item Value="0" Degrees="-30"/>
<Item Value="20" Degrees="0"/>
<Item Value="40" Degrees="30"/>
<Item Value="60" Degrees="60"/>
<Item Value="80" Degrees="90"/>
</Nonlinearity>
</Rotate>
</Element>
<!--Rotor R eng-->
<Element>
<Position X="302" Y="343"/>
<Select>
<Value>(E:TIME OF DAY, enum) 1 != (A:LIGHT PANEL, bool) &&</Value>
<Case Value="0">
<Image Name="757_OH_Rotor.bmp" Bright="No">
<Axis X="41" Y="41"/>
</Image>
</Case>
<Case Value="1">
<Image Name="757_OH_Rotor_n.bmp" Bright="Yes">
<Axis X="41" Y="41"/>
</Image>
</Case>
</Select>
<Rotate>
<Value>
(L:OR007kn5Pos,position)
</Value>
<Nonlinearity>
<Item Value="0" Degrees="-30"/>
<Item Value="20" Degrees="0"/>
<Item Value="40" Degrees="30"/>
<Item Value="60" Degrees="60"/>
<Item Value="80" Degrees="90"/>
</Nonlinearity>
</Rotate>
</Element>
<!--Rotor C eng-->
<Element>
<Position X="205" Y="219"/>
<Select>
<Value>(E:TIME OF DAY, enum) 1 != (A:LIGHT PANEL, bool) &&</Value>
<Case Value="0">
<Image Name="757_OH_Rotor.bmp" Bright="No">
<Axis X="41" Y="41"/>
</Image>
</Case>
<Case Value="1">
<Image Name="757_OH_Rotor_n.bmp" Bright="Yes">
<Axis X="41" Y="41"/>
</Image>
</Case>
</Select>
<Rotate>
<Value>(L:R C Eng,enum)</Value>
<Nonlinearity>
<Item Value="-1" Degrees="-45"/>
<Item Value="0" Degrees="0"/>
<Item Value="1" Degrees="45"/>
</Nonlinearity>
</Rotate>
</Element>
<Mouse>
<!-- <Area Left="3" Top="3" Right="30" Bottom="30">
<Tooltip>R.A.T./Eng Start and Ignition Panel</Tooltip>
<Cursor Type="Hand"/>
<Click>10113 (>K:PANEL_ID_TOGGLE)</Click>
</Area>
-->
<!--Kolp AIR TURB-->
<Area Left="67" Top="28" Right="137" Bottom="115">
<Cursor Type="Hand"/>
<Tooltip>Right Click To Open Cover</Tooltip>
<Click Kind="LeftSingle+RightSingle">
(M:Event) 'LeftSingle' scmp 0 == if{
(L:OR001cv2Pos,position) if{ 1 (>L:GenFootOn, bool) }
4 (>L:iSndPl, position)
}
(M:Event) 'RightSingle' scmp 0 == if{
3 (>L:iSndPl, position)
1 (>L:OR001cv2On, bool)
(L:Colp Air Turb, bool) ! (>L:Colp Air Turb, bool)
}
</Click>
</Area>
<!--Rotor L Eng-->
<Area Left="40" Top="270" Width="70" Height="120">
<Cursor Type="DownArrow"/>
<Tooltip>ENG Start Selector (%((L:OR006kn5Pos, position))%{case}%{:0}GND%{:20}AUTO%{:40}OFF%{:60}CONT%{:80}FLT%{end})</Tooltip>
<Click>
4 (>L:iSndPl, position)
-1 (>L:OR006kn5On, bool)
<!--(L:R L Eng,enum) -1 == if{ 5 (>G:Var1) }-->
</Click>
</Area>
<Area Left="110" Top="270" Width="70" Height="120">
<Cursor Type="UpArrow"/>
<Tooltip>ENG Start Selector (%((L:OR006kn5Pos, position))%{case}%{:0}GND%{:20}AUTO%{:40}OFF%{:60}CONT%{:80}FLT%{end})</Tooltip>
<Click>
4 (>L:iSndPl, position)
1 (>L:OR006kn5On, bool)
</Click>
</Area>
<!--Rotor R Eng-->
<Area Left="235" Top="270" Width="70" Height="120">
<Cursor Type="Hand"/>
<Tooltip>ENG Start Selector</Tooltip>
<Click>
4 (>L:iSndPl, position)
-1 (>L:OR007kn5On, position)
<!--(L:R R Eng,enum) -1 == if{ 5 (>G:Var2) }-->
</Click>
</Area>
<Area Left="305" Top="270" Width="70" Height="120">
<Cursor Type="Hand"/>
<Tooltip>ENG Start Selector</Tooltip>
<Click>
4 (>L:iSndPl, position)
1 (>L:OR007kn5On, position)
</Click>
</Area>
<!--Rotor CENT Eng-->
<Area Left="152" Top="162" Right="191" Bottom="178">
<Tooltip>Ignition Selector Switch</Tooltip>
<Cursor Type="Hand"/>
<Click>
-1 (>L:R C Eng,enum)
8 (>L:iSndPl, position)
1 (>L:OR004kn_2DClick, bool)
</Click>
</Area>
<Area Left="184" Top="141" Right="228" Bottom="177">
<Tooltip>Ignition Selector Switch</Tooltip>
<Cursor Type="Hand"/>
<Click>
0 (>L:R C Eng,enum)
8 (>L:iSndPl, position)
1 (>L:OR004kn_2DClick, bool)
</Click>
</Area>
<Area Left="230" Top="160" Right="260" Bottom="199">
<Tooltip>Ignition Selector Switch</Tooltip>
<Cursor Type="Hand"/>
<Click>
1 (>L:R C Eng,enum)
8 (>L:iSndPl, position)
1 (>L:OR004kn_2DClick, bool)
</Click>
</Area>
</Mouse>
</Gauge>
Look in the Mouse section for Rotor L ENGINE
<!--Rotor L Eng-->
<Area Left="40" Top="270" Width="70" Height="120">
<Cursor Type="DownArrow"/>
<Tooltip>ENG Start Selector (%((L:OR006kn5Pos, position))%{case}%{:0}GND%{:20}AUTO%{:40}OFF%{:60}CONT%{:80}FLT%{end})</Tooltip>
<Click>
4 (>L:iSndPl, position)
-1 (>L:OR006kn5On, bool)
<!--(L:R L Eng,enum) -1 == if{ 5 (>G:Var1) }-->
</Click>
4 (>L:iSndPl, position) -- This is the code that sends the information to FS
-1 (>L:OR006kn5On, bool) This is the code that when you click the knob -1 is turing the knob to the LEFT, so (>L:OR006kn5On, bool) Is the Knob
this is how we add KEYS in the xml
Keys>
<On Key=" "> the code </On>
</Keys>
On key represents the ASCII code that each letter on the keyboard is a Number, see here
http://help.adobe.com/en_US/AS2LCR/Flash_10.0/help.html?content=00000520.html
Also if you hold SHIFT and a key it adds 256 to the number, same as control. If you hold both CONTROL and SHIFT 256+256 + key.
Lets take 72 which is H and copy the code we saw earlier into the key code like this.
so
Keys>
<On Key="72">4 (>L:iSndPl, position)
-1 (>L:OR006kn5On, bool) </On>
</Keys>
Now when you press H the Left Engine start Knob turns to Ground !!!!!!!!
also remember that its a click command you are copying to run as a key, So its a single click so the CS757 will automatically place the Onscreen Knob back to Auto when start is done.
youll notice that -1 entries move things to the left or counter clockwise and 1 moves them to the right,
This entry must be added after the MOUSE section the last section of the XML.
this is how my xml at the bottom works it starts right after the mouse section stops.,
I have 2 Key entries for both the left and right engine start knobs, representing keys H and I
see here
</Mouse>
<Keys>
<On Key="73">4 (>L:iSndPl, position)
-1 (>L:OR006kn5On, bool) </On>
<On Key="72">4 (>L:iSndPl, position)
-1 (>L:OR007kn5On, position) </On>
</Keys>
</Gauge>
Hope this helps! I am able to map every single knob and button In the plane to match up to my real overhead !
Any questions please feel free to ask !