<?xml version="1.0" encoding="ISO-8859-1"?>
<?xml-stylesheet type="text/xsl" href="../XSLT/decoder.xsl"?>
<!-- Copyright (C) JMRI 2002, 2005, 2006, 2008 All rights reserved -->
<!-- $Id: Digitrax_0SFX0x4.xml 17977 2011-07-18 17:23:46Z zoo $ -->
<!--                                                                        -->
<!-- JMRI is free software; you can redistribute it and/or modify it under  -->
<!-- the terms of version 2 of the GNU General Public License as published  -->
<!-- by the Free Software Foundation. See the "COPYING" file for a copy     -->
<!-- of this license.                                                       -->
<!--                                                                        -->
<!-- JMRI is distributed in the hope that it will be useful, but WITHOUT    -->
<!-- ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or  -->
<!-- FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License  -->
<!-- for more details.                                                      -->
<decoder-config xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://jmri.org/xml/schema/decoder.xsd">
  <version author="Michael Mosher" version="1" lastUpdated="20070824"/>
  <version author="Michael Mosher" version="2" lastUpdated="20080204"/>
  <version author="Michael Mosher" version="3" lastUpdated="20080222"/>
<!-- V1: Created from version 3 of the Digitrax_0SFX file -->
<!-- V2: Update versions, bug fix, add SFX0416 -->
<!-- V3: Add CV 133 & 134 -->
  <decoder>
    <family name="SFX Sound Only Decoders" mfg="Digitrax">
      <model model="SFX004" numOuts="0" numFns="0" lowVersionID="16" highVersionID="16" formFactor="HO">
        <size length=".71" width="0.75" height="0.25" units="inches"/>
      </model>
      <model model="SFX0416" numOuts="6" numFns="8" lowVersionID="16" highVersionID="16" formFactor="HO">
        <output name="1" label="wht" connection="solder"/>
        <output name="2" label="yel" connection="solder"/>
        <output name="3" label="grn" connection="solder"/>
        <output name="4" label="vlt" connection="solder"/>
        <size length="1.2" width="0.41" height="0.18" units="inches"/>
      </model>
      <model model="SFX064" numOuts="6" numFns="8" lowVersionID="16" highVersionID="16" formFactor="HO">
        <output name="1" label="wht" connection="solder"/>
        <output name="2" label="yel" connection="solder"/>
        <output name="3" label="grn" connection="solder"/>
        <output name="4" label="vlt" connection="solder"/>
        <output name="5" label="org" connection="solder"/>
        <output name="6" label="gry" connection="solder"/>
        <size length="1.22" width="0.66" height="0.25" units="inches"/>
      </model>
    </family>
    <programming direct="yes" paged="yes" register="yes" ops="yes" transpRead="yes"/>
    <variables>
      <variable label="Primary Address" CV="1" comment="Short address" item="Short Address" default="03">
        <shortAddressVal/>
        <label>Primary Address</label>
        <comment>Short address</comment>
      </variable>
      <variable label="Version ID" CV="7" readOnly="yes" item="Decoder Version">
        <decVal/>
        <label>Version ID</label>
      </variable>
      <variable label="Manufacturer ID" CV="8" readOnly="yes" item="Manufacturer">
        <decVal/>
        <label>Manufacturer ID</label>
      </variable>
      <variable label="Long Address" CV="17" item="Extended Address">
        <longAddressVal/>
        <label>Long Address</label>
      </variable>
      <variable label="Advanced Consist address" CV="19" item="Consist Address" mask="XVVVVVVV" default="0">
        <decVal max="127"/>
        <label>Advanced Consist address</label>
      </variable>
      <variable label="Advanced Consist direction" CV="19" item="Consist Direction" mask="VXXXXXXX" default="0">
        <enumVal>
          <enumChoice choice="forward">
            <choice>forward</choice>
          </enumChoice>
          <enumChoice choice="reverse">
            <choice>reverse</choice>
          </enumChoice>
        </enumVal>
        <label>Advanced Consist direction</label>
      </variable>
      <variable label="Advanced Consist Function 1 Override" CV="21" mask="XXXXXXXV" item="Consist Address Active For F1" default="0">
        <enumVal>
          <enumChoice choice="No">
            <choice>No</choice>
          </enumChoice>
          <enumChoice choice="Yes">
            <choice>Yes</choice>
          </enumChoice>
        </enumVal>
        <label>Advanced Consist Function 1 Override</label>
      </variable>
      <variable label="Advanced Consist Function 2 Override" CV="21" mask="XXXXXXVX" item="Consist Address Active For F2" default="0">
        <enumVal>
          <enumChoice choice="No">
            <choice>No</choice>
          </enumChoice>
          <enumChoice choice="Yes">
            <choice>Yes</choice>
          </enumChoice>
        </enumVal>
        <label>Advanced Consist Function 2 Override</label>
      </variable>
      <variable label="Advanced Consist Function 3 Override" CV="21" mask="XXXXXVXX" item="Consist Address Active For F3" default="0">
        <enumVal>
          <enumChoice choice="No">
            <choice>No</choice>
          </enumChoice>
          <enumChoice choice="Yes">
            <choice>Yes</choice>
          </enumChoice>
        </enumVal>
        <label>Advanced Consist Function 3 Override</label>
      </variable>
      <variable label="Advanced Consist Function 4 Override" CV="21" mask="XXXXVXXX" item="Consist Address Active For F4" default="0">
        <enumVal>
          <enumChoice choice="No">
            <choice>No</choice>
          </enumChoice>
          <enumChoice choice="Yes">
            <choice>Yes</choice>
          </enumChoice>
        </enumVal>
        <label>Advanced Consist Function 4 Override</label>
      </variable>
      <variable label="Advanced Consist Function 5 Override" CV="21" mask="XXXVXXXX" item="Consist Address Active For F5" default="0">
        <enumVal>
          <enumChoice choice="No">
            <choice>No</choice>
          </enumChoice>
          <enumChoice choice="Yes">
            <choice>Yes</choice>
          </enumChoice>
        </enumVal>
        <label>Advanced Consist Function 5 Override</label>
      </variable>
      <variable label="Advanced Consist Function 6 Override" CV="21" mask="XXVXXXXX" item="Consist Address Active For F6" default="0">
        <enumVal>
          <enumChoice choice="No">
            <choice>No</choice>
          </enumChoice>
          <enumChoice choice="Yes">
            <choice>Yes</choice>
          </enumChoice>
        </enumVal>
        <label>Advanced Consist Function 6 Override</label>
      </variable>
      <variable label="Advanced Consist Function 7 Override" CV="21" mask="XVXXXXXX" item="Consist Address Active For F7" default="0">
        <enumVal>
          <enumChoice choice="No">
            <choice>No</choice>
          </enumChoice>
          <enumChoice choice="Yes">
            <choice>Yes</choice>
          </enumChoice>
        </enumVal>
        <label>Advanced Consist Function 7 Override</label>
      </variable>
      <variable label="Advanced Consist Function 8 Override" CV="21" mask="VXXXXXXX" item="Consist Address Active For F8" default="0">
        <enumVal>
          <enumChoice choice="No">
            <choice>No</choice>
          </enumChoice>
          <enumChoice choice="Yes">
            <choice>Yes</choice>
          </enumChoice>
        </enumVal>
        <label>Advanced Consist Function 8 Override</label>
      </variable>
      <variable label="Advanced Consist Function 0 Override" CV="22" mask="XXXXXXXV" item="Consist Address Active For F0" default="0">
        <enumVal>
          <enumChoice choice="No">
            <choice>No</choice>
          </enumChoice>
          <enumChoice choice="Yes">
            <choice>Yes</choice>
          </enumChoice>
        </enumVal>
        <label>Advanced Consist Function 0 Override</label>
      </variable>
      <variable label="Advanced Consist Function 9 Override" CV="22" mask="XXXVXXXX" item="Consist Address Active For F9" default="0">
        <enumVal>
          <enumChoice choice="No">
            <choice>No</choice>
          </enumChoice>
          <enumChoice choice="Yes">
            <choice>Yes</choice>
          </enumChoice>
        </enumVal>
        <label>Advanced Consist Function 9 Override</label>
      </variable>
      <variable label="Advanced Consist Function 10 Override" CV="22" mask="XXVXXXXX" item="Consist Address Active For F10" default="0">
        <enumVal>
          <enumChoice choice="No">
            <choice>No</choice>
          </enumChoice>
          <enumChoice choice="Yes">
            <choice>Yes</choice>
          </enumChoice>
        </enumVal>
        <label>Advanced Consist Function 10 Override</label>
      </variable>
      <variable label="Advanced Consist Function 11 Override" CV="22" mask="XVXXXXXX" item="Consist Address Active For F11" default="0">
        <enumVal>
          <enumChoice choice="No">
            <choice>No</choice>
          </enumChoice>
          <enumChoice choice="Yes">
            <choice>Yes</choice>
          </enumChoice>
        </enumVal>
        <label>Advanced Consist Function 11 Override</label>
      </variable>
      <variable label="Advanced Consist Function 12 Override" CV="22" mask="VXXXXXXX" item="Consist Address Active For F12" default="0">
        <enumVal>
          <enumChoice choice="No">
            <choice>No</choice>
          </enumChoice>
          <enumChoice choice="Yes">
            <choice>Yes</choice>
          </enumChoice>
        </enumVal>
        <label>Advanced Consist Function 12 Override</label>
      </variable>
      <variable label="Speed steps" CV="29" mask="XXXXXXVX" item="Speed Step Mode" default="1">
        <enumVal>
          <enumChoice choice="14">
            <choice>14</choice>
          </enumChoice>
          <enumChoice choice="28/128">
            <choice>28/128</choice>
          </enumChoice>
        </enumVal>
        <label>Speed steps</label>
      </variable>
      <variable label="Addressing Mode" CV="29" mask="XXVXXXXX" item="Address Format">
        <enumVal>
          <enumChoice choice="2 digit addressing">
            <choice>2 digit addressing</choice>
          </enumChoice>
          <enumChoice choice="4 digit addressing">
            <choice>4 digit addressing</choice>
          </enumChoice>
        </enumVal>
        <label>Addressing Mode</label>
      </variable>
      <variable label="Forward light F0F effect generated" CV="49" mask="XXXXVVVV" minOut="1" item="Function F0F effect generated">
        <xi:include href="http://jmri.org/xml/decoders/digitrax/effectgen.xml"/>
        <label>Forward light F0F effect generated</label>
      </variable>
      <variable label="Forward light F0F behavior" CV="49" mask="VVVVXXXX" minOut="1" item="Function F0F behavior">
        <xi:include href="http://jmri.org/xml/decoders/digitrax/functionbehavior.xml"/>
        <label>Forward light F0F behavior</label>
      </variable>
      <variable label="Reverse light F0R effect generated" CV="50" mask="XXXXVVVV" minOut="2" item="Function F0R effect generated">
        <xi:include href="http://jmri.org/xml/decoders/digitrax/effectgen.xml"/>
        <label>Reverse light F0R effect generated</label>
      </variable>
      <variable label="Reverse light F0R behavior" CV="50" mask="VVVVXXXX" minOut="2" item="Function F0R behavior">
        <xi:include href="http://jmri.org/xml/decoders/digitrax/functionbehavior.xml"/>
        <label>Reverse light F0R behavior</label>
      </variable>
      <variable label="Function 1 effect generated" CV="51" mask="XXXXVVVV" minOut="3">
        <xi:include href="http://jmri.org/xml/decoders/digitrax/effectgen.xml"/>
        <label>Function 1 effect generated</label>
      </variable>
      <variable label="Function 1 behavior" CV="51" mask="VVVVXXXX" minOut="3">
        <xi:include href="http://jmri.org/xml/decoders/digitrax/functionbehavior.xml"/>
        <label>Function 1 behavior</label>
      </variable>
      <variable label="Function 2 effect generated" CV="52" mask="XXXXVVVV" minOut="4">
        <xi:include href="http://jmri.org/xml/decoders/digitrax/effectgen.xml"/>
        <label>Function 2 effect generated</label>
      </variable>
      <variable label="Function 2 behavior" CV="52" mask="VVVVXXXX" minOut="4">
        <xi:include href="http://jmri.org/xml/decoders/digitrax/functionbehavior.xml"/>
        <label>Function 2 behavior</label>
      </variable>
      <variable label="Function 3 effect generated" CV="113" mask="XXXXVVVV" minOut="5">
        <xi:include href="http://jmri.org/xml/decoders/digitrax/effectgen.xml"/>
        <label>Function 3 effect generated</label>
      </variable>
      <variable label="Function 3 behavior" CV="113" mask="VVVVXXXX" minOut="5">
        <xi:include href="http://jmri.org/xml/decoders/digitrax/functionbehavior.xml"/>
        <label>Function 3 behavior</label>
      </variable>
      <variable label="Function 4 effect generated" CV="114" mask="XXXXVVVV" minOut="6">
        <xi:include href="http://jmri.org/xml/decoders/digitrax/effectgen.xml"/>
        <label>Function 4 effect generated</label>
      </variable>
      <variable label="Function 4 behavior" CV="114" mask="VVVVXXXX" minOut="6">
        <xi:include href="http://jmri.org/xml/decoders/digitrax/functionbehavior.xml"/>
        <label>Function 4 behavior</label>
      </variable>
      <variable label="Function 5 effect generated" CV="115" mask="XXXXVVVV" minOut="7">
        <xi:include href="http://jmri.org/xml/decoders/digitrax/effectgen.xml"/>
        <label>Function 5 effect generated</label>
      </variable>
      <variable label="Function 5 behavior" CV="115" mask="VVVVXXXX" minOut="7">
        <xi:include href="http://jmri.org/xml/decoders/digitrax/functionbehavior.xml"/>
        <label>Function 5 behavior</label>
      </variable>
      <variable label="Function 6 effect generated" CV="116" mask="XXXXVVVV" minOut="8">
        <xi:include href="http://jmri.org/xml/decoders/digitrax/effectgen.xml"/>
        <label>Function 6 effect generated</label>
      </variable>
      <variable label="Function 6 behavior" CV="116" mask="VVVVXXXX" minOut="8">
        <xi:include href="http://jmri.org/xml/decoders/digitrax/functionbehavior.xml"/>
        <label>Function 6 behavior</label>
      </variable>
      <variable label="Lamp keep-alive voltage" CV="62" mask="VVVVXXXX" minOut="1" item="Global lighting option 1" comment="0 is no keep-alive, use with LEDs">
        <decVal max="15"/>
        <label>Lamp keep-alive voltage</label>
        <comment>0 is no keep-alive, use with LEDs</comment>
      </variable>
      <variable label="FX rate adjust" CV="62" mask="XXXXVVVV" minOut="1" item="Global lighting option 2" comment="0 is fast, 15 is slow, 4 is recommended for start">
        <decVal max="15"/>
        <label>FX rate adjust</label>
        <comment>0 is fast, 15 is slow, 4 is recommended for start</comment>
      </variable>
      <variable label="Ditch light hold-over time" CV="63" minOut="1" item="Global lighting option 3" comment="0 is none, 40 is realistic 5 seconds, 255 is about 20 seconds">
        <decVal/>
        <label>Ditch light hold-over time</label>
        <comment>0 is none, 40 is realistic 5 seconds, 255 is about 20 seconds</comment>
      </variable>
      <variable label="User Private ID #1" CV="105" item="User Id #1">
        <decVal/>
        <label>User Private ID #1</label>
      </variable>
      <variable label="User Private ID #2" CV="106" item="User Id #2">
        <decVal/>
        <label>User Private ID #2</label>
      </variable>

    <xi:include href="http://jmri.org/xml/decoders/digitrax/functionmap.xml"/>

    <!-- Sound options -->
      <variable label="Sound Time Out" CV="11" tooltip="Sound stays on after loco is de-selected" item="Sound Option 4" default="6">
        <enumVal>
          <enumChoice choice="Yes" value="0">
            <choice>Yes</choice>
          </enumChoice>
          <enumChoice choice="No" value="6">
            <choice>No</choice>
          </enumChoice>
        </enumVal>
        <label>Sound Time Out</label>
      </variable>
      <variable label="Master Volume" CV="58" item="Sound Setting 1" comment="0-15" default="9">
        <decVal max="15"/>
        <label>Master Volume</label>
        <comment>0-15</comment>
      </variable>
      <variable label="Sound Select" CV="60" item="Sound Option 5" default="0">
        <decVal/>
        <label>Sound Select</label>
      </variable>
      <variable label="Notch Rate" CV="132" item="Sound Setting 2" default="127">
        <decVal/>
        <label>Notch Rate</label>
      </variable>
      <variable label="Steam Chuff" CV="133" item="Sound Setting 14" default="63" tooltip=" 128=&gt;EXT cam, 1-127=&gt;DRIVER dia in inches">
        <decVal/>
        <label>Steam Chuff</label>
      </variable>
      <variable label="Steam Gear Ratio" CV="134" item="Sound Setting 15" default="32" tooltip="32=100% ratio">
        <decVal/>
        <label>Steam Gear Ratio</label>
      </variable>
      <variable label="Volume When Muted" CV="135" item="Sound Setting 3" default="0">
        <decVal/>
        <label>Volume When Muted</label>
      </variable>
      <variable label="Prime Mover Volume" CV="140" item="Sound Setting 4" default="60">
        <decVal max="64"/>
        <label>Prime Mover Volume</label>
      </variable>
      <variable label="Bell Volume" CV="141" item="Sound Setting 5" default="25">
        <decVal max="64"/>
        <label>Bell Volume</label>
      </variable>
      <variable label="Whistle Volume" CV="142" item="Sound Setting 6" default="60">
        <decVal max="64"/>
        <label>Whistle Volume</label>
      </variable>
      <variable label="Air Features Volume" CV="143" item="Sound Setting 7" default="30">
        <decVal max="64"/>
        <label>Air Features Volume</label>
      </variable>
      <variable label="Misc Volumes (reserved)" CV="145" item="Sound Setting 8" default="40">
        <decVal max="64"/>
        <label>Misc Volumes (reserved)</label>
      </variable>
      <variable label="Bell Rate" CV="146" item="Sound Setting 9" comment="24msec counts" default="7">
        <decVal/>
        <label>Bell Rate</label>
        <comment>24msec counts</comment>
      </variable>
      <variable label="Drier Rate" CV="147" item="Sound Setting 10" default="2">
        <decVal/>
        <label>Drier Rate</label>
      </variable>
      <variable label="Popoff Rate" CV="148" item="Sound Setting 11" default="30">
        <decVal/>
        <label>Popoff Rate</label>
      </variable>
      <variable label="Compressor On Time" CV="149" item="Sound Setting 12" default="20">
        <decVal/>
        <label>Compressor On Time</label>
      </variable>
      <variable label="Horn Selector" CV="150" item="Sound Option 1" default="0">
        <enumVal>
          <enumChoice choice="Standard Horn">
            <choice>Standard Horn</choice>
          </enumChoice>
          <enumChoice choice="Playable Horn">
            <choice>Playable Horn</choice>
          </enumChoice>
          <enumChoice choice="Alternate Horn">
            <choice>Alternate Horn</choice>
          </enumChoice>
        </enumVal>
        <label>Horn Selector</label>
      </variable>
      <variable label="Peak Speed for Auto coupler/brake on dir change" CV="151" item="Sound Option 2" default="48">
        <decVal/>
        <label>Peak Speed for Auto coupler/brake on dir change</label>
      </variable>
      <variable label="Sound Project Author ID" CV="152" default="221">
        <decVal/>
        <label>Sound Project Author ID</label>
      </variable>
      <variable label="Sound Project ID" CV="153">
        <decVal/>
        <label>Sound Project ID</label>
      </variable>
      <variable label="Blowdown Volume" CV="154" item="Sound Setting 13" default="60">
        <decVal max="64"/>
        <label>Blowdown Volume</label>
      </variable>
      <variable label="Notching Mode" CV="155" item="Sound Option 3" default="0" tooltip="Not supported on early EVO">
        <enumVal>
          <enumChoice choice="Automatic">
            <choice>Automatic</choice>
          </enumChoice>
          <enumChoice choice="Semi-Automatic">
            <choice>Semi-Automatic</choice>
          </enumChoice>
          <enumChoice choice="Manual">
            <choice>Manual</choice>
          </enumChoice>
        </enumVal>
        <label>Notching Mode</label>
      </variable>
    </variables>
    <resets>
      <factReset label="Reset All CVs" CV="8" default="8"/>
      <factReset label="Reset All CVs except speed table" CV="8" default="9"/>
    </resets>
  </decoder>
  <pane name="Digitrax">
    <column>
      <display item="Sound Project Author ID"/>
      <display item="Sound Project ID"/>
    </column>
    <name>Digitrax</name>
  </pane>
</decoder-config>

