fix SoftNcRunner GM code normalization.
This commit is contained in:
@@ -169,6 +169,14 @@ Heidenhain: CYCL DEF 247 (Datum Preset) / CYCL DEF 7 (Datum Shift).
|
||||
<dl class="jumplist">
|
||||
<dt><a class="xref" href="Hi.NcParsers.Keywords.FanucPathSmoothing.html">FanucPathSmoothing</a></dt>
|
||||
<dd><p>Section data holder for <a class="xref" href="Hi.NcParsers.Keywords.IFanucPathSmoothingDef.html">IFanucPathSmoothingDef</a>.</p>
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="jumplist">
|
||||
<dt><a class="xref" href="Hi.NcParsers.Keywords.FanucProgramNumber.html">FanucProgramNumber</a></dt>
|
||||
<dd><p>Fanuc-family program identifier header that follows a
|
||||
<a class="xref" href="Hi.NcParsers.Keywords.TapeBoundary.html">TapeBoundary</a> line — e.g. <code>O1234</code> or
|
||||
<code><O1234></code>. <a class="xref" href="Hi.NcParsers.Keywords.FanucProgramNumber.html#Hi_NcParsers_Keywords_FanucProgramNumber_Wrapper">Wrapper</a> records the surface form
|
||||
so a parsed block can be emitted back to the original notation.</p>
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="jumplist">
|
||||
@@ -232,13 +240,6 @@ do not share this key, because their data shapes are richer.
|
||||
<dl class="jumplist">
|
||||
<dt><a class="xref" href="Hi.NcParsers.Keywords.Positioning.html">Positioning</a></dt>
|
||||
<dd><p>Section key holder + concrete implementation for <a class="xref" href="Hi.NcParsers.Keywords.IPositioningDef.html">IPositioningDef</a>.</p>
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="jumplist">
|
||||
<dt><a class="xref" href="Hi.NcParsers.Keywords.ProgramBoundary.html">ProgramBoundary</a></dt>
|
||||
<dd><p>Program start/end delimiter line (e.g., <code>%</code> in Fanuc/Mazak/Syntec,
|
||||
<code>%_N_xxx_MPF</code> in Siemens).
|
||||
Not a comment — the controller uses it as a tape/file boundary marker.</p>
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="jumplist">
|
||||
@@ -269,6 +270,33 @@ Not a comment — the controller uses it as a tape/file boundary marker.</p>
|
||||
<dl class="jumplist">
|
||||
<dt><a class="xref" href="Hi.NcParsers.Keywords.SpindleSpeed.html">SpindleSpeed</a></dt>
|
||||
<dd><p>Section key holder + concrete implementation for <a class="xref" href="Hi.NcParsers.Keywords.ISpindleSpeedDef.html">ISpindleSpeedDef</a>.</p>
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="jumplist">
|
||||
<dt><a class="xref" href="Hi.NcParsers.Keywords.SubProgramCall.html">SubProgramCall</a></dt>
|
||||
<dd><p>Subprogram call record left on the M98 / M198 host block by
|
||||
<a class="xref" href="Hi.NcParsers.EvaluationSyntaxs.SubProgramCallSyntax.html">SubProgramCallSyntax</a> after the subprogram
|
||||
file has been inlined into the source layer. The call itself emits no
|
||||
motion act; this section is bookkeeping so cache dumps and diagnostic
|
||||
readers can see "this block triggered an inline of file <code>File</code>".</p>
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="jumplist">
|
||||
<dt><a class="xref" href="Hi.NcParsers.Keywords.SubProgramReturn.html">SubProgramReturn</a></dt>
|
||||
<dd><p>Subprogram return record left on the M99 host block by
|
||||
<a class="xref" href="Hi.NcParsers.EvaluationSyntaxs.SubProgramReturnSyntax.html">SubProgramReturnSyntax</a>. Return blocks
|
||||
produce no motion acts; this section makes the consumed M99 visible
|
||||
in cache dumps and reserves a slot for future <code>M99 P{seq}</code>
|
||||
(return-to-sequence-number) support.</p>
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="jumplist">
|
||||
<dt><a class="xref" href="Hi.NcParsers.Keywords.TapeBoundary.html">TapeBoundary</a></dt>
|
||||
<dd><p>Tape leader / trailer line — the literal <code>%</code> that historically
|
||||
marked the start and end of a punched paper-tape program. ISO-style
|
||||
controllers (Fanuc, Mazak, Syntec, Siemens) all preserve it as a
|
||||
file-level boundary marker. Distinct from a comment: the controller
|
||||
uses it as a tape/file delimiter, not as embedded operator text.</p>
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="jumplist">
|
||||
@@ -284,6 +312,30 @@ Not a comment — the controller uses it as a tape/file boundary marker.</p>
|
||||
<dl class="jumplist">
|
||||
<dt><a class="xref" href="Hi.NcParsers.Keywords.Unit.html">Unit</a></dt>
|
||||
<dd><p>Section key holder + concrete implementation for <a class="xref" href="Hi.NcParsers.Keywords.IUnitDef.html">IUnitDef</a>.</p>
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="jumplist">
|
||||
<dt><a class="xref" href="Hi.NcParsers.Keywords.Vars.html">Vars</a></dt>
|
||||
<dd><p>JSON section schema for per-block variable storage. Each sub-property
|
||||
names a sub-section that holds a <code>{ “#nnn”: value }</code> dictionary
|
||||
keyed by Fanuc-style variable id.</p>
|
||||
<p>
|
||||
The sub-sections partition the variable space by lifetime:
|
||||
</p>
|
||||
<ul><li><a class="xref" href="Hi.NcParsers.Keywords.Vars.html#Hi_NcParsers_Keywords_Vars_Local">Local</a> — <code>#1-#33</code>, scope: macro call frame
|
||||
(pushed/popped by G65 / G66 / M99).</li><li><a class="xref" href="Hi.NcParsers.Keywords.Vars.html#Hi_NcParsers_Keywords_Vars_Volatile">Volatile</a> — <code>#100-#499</code>, non-retained common;
|
||||
carries block-to-block, cleared by <code>ProgramEndCleanSyntax</code> on M02 / M30.</li><li><a class="xref" href="Hi.NcParsers.Keywords.Vars.html#Hi_NcParsers_Keywords_Vars_SystemControl">SystemControl</a> — <code>#3000-#3999</code>, controller-side
|
||||
system variables; offline-only round-trip record (real controller
|
||||
effects such as clock reset / alarm trigger / message pause are not
|
||||
simulated).</li></ul>
|
||||
<p>
|
||||
The property types are <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.text.json.nodes.jsonobject">JsonObject</a> rather than strongly-typed
|
||||
dictionaries because each sub-section's keys are dynamic Fanuc variable
|
||||
ids (<code>#100</code>, <code>#5001</code>, …) discovered at parse time, not a fixed
|
||||
schema. This class exists solely to give the section name and sub-keys
|
||||
stable <code>nameof()</code> targets — instances are never constructed at
|
||||
runtime.
|
||||
</p>
|
||||
</dd>
|
||||
</dl>
|
||||
<h3 id="interfaces">
|
||||
|
||||
Reference in New Issue
Block a user