Files
JIMRI/help/en/html/apps/DecoderPro/LocoFile.shtml
T
2026-06-17 14:00:51 +02:00

63 lines
2.9 KiB
Plaintext

<!DOCTYPE html>
<html lang="en">
<head>
<meta name="generator" content="HTML Tidy for HTML5 for Apple macOS version 5.8.0">
<!-- Copyright Bob Jacobsen 2008 -->
<title>JMRI: DecoderPro User Guide - Locomotive Files</title>
<!--#include virtual="/help/en/parts/Style.shtml" -->
</head>
<body>
<!--#include virtual="/help/en/parts/Header.shtml" -->
<div id="mBody">
<!--#include virtual="Sidebar.shtml" -->
<div id="mainContent">
<h1>JMRI: DecoderPro User Guide</h1>
<h2>Locomotive Files</h2>
<p>DecoderPro maintains the information for each roster entry in a separate file. You
generally don't have to edit these, or even look at them. This page describes their content
just in case you're interested.</p>
<p>First, the XML contains some header information that describes the format & history of the
file:</p>
<p class="example">&lt;?xml version="1.0" encoding="UTF-8"?&gt;<br>
&lt;!DOCTYPE locomotive-config SYSTEM "locomotive-config.dtd"&gt;<br>
&lt;locomotive-config&gt;<br>
&lt;!--Written by JMRI version 1.6.1 on Sat Oct 08 07:00:30 PDT 2005 $Id$--&gt;</p>
This is followed by the summary information for the entry. Most of this comes from the
"Roster Entry" pane in DecoderPro:
<p class="example">&lt;locomotive id="UP 792" roadNumber="" roadName="" mfg="" model=""
dccAddress="792" comment=""&gt;<br>
&lt;decoder model="DH163" family="Series 3 with FX3, silent, readback" comment=""
/&gt;<br></p>
That's then followed by a section that contains values for all the variables defined in the
decoder definition file. Note that these are numeric values; the decoder definition file are
used to convert these to strings, etc, when this is read back in.
<p class="example">&lt;values&gt;<br>
&lt;decoderDef&gt;<br>
&lt;varValue item="Primary Address" value="24" /&gt;<br>
&lt;varValue item="Start Volts" value="0" /&gt;<br>
&lt;varValue item="Acceleration Rate" value="0" /&gt;<br>
&lt;varValue item="Deceleration Rate" value="0" /&gt;<br>
&lt;varValue item="Max Volts" value="0" /&gt;<br>
&lt;varValue item="Mid Volts" value="0" /&gt;<br>
&lt;varValue item="Version ID" value="0" /&gt;<br></p>
Finally, there's a similar section that contains numeric values for all the CVs. We store
both variables and CVs so that if a decoder definition changes in the future, we can sort out
what's actually in the decoder.
<p class="example">&lt;CVvalue name="1" value="24" /&gt;<br>
&lt;CVvalue name="2" value="0" /&gt;<br>
&lt;CVvalue name="3" value="0" /&gt;<br>
&lt;CVvalue name="4" value="0" /&gt;<br></p>
<!--#include virtual="/help/en/parts/Footer.shtml" -->
</div><!-- close #mainContent -->
</div><!-- closes #mBody -->
<script src="/js/help.js"></script>
</body>
</html>