fix SoftNcRunner GM code normalization.

This commit is contained in:
2026-05-06 13:21:19 +08:00
parent 0fe9497552
commit 2f57932000
1238 changed files with 69405 additions and 22511 deletions
@@ -188,6 +188,37 @@ Brand-specific codes belong in their own keyword classes
<h3 id="Hi_NcParsers_Keywords_Generic_IsoKeywords_CoolantCodes" data-uid="Hi.NcParsers.Keywords.Generic.IsoKeywords.CoolantCodes">
CoolantCodes
</h3>
<div class="markdown level1 summary"><p>All coolant control codes (M07 mist, M08 flood, M09 off).</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public static readonly string[] CoolantCodes</code></pre>
</div>
<h4 class="section">Field Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a>[]</dt>
<dd></dd>
</dl>
<h3 id="Hi_NcParsers_Keywords_Generic_IsoKeywords_G00" data-uid="Hi.NcParsers.Keywords.Generic.IsoKeywords.G00">
G00
@@ -312,6 +343,161 @@ Brand-specific codes belong in their own keyword classes
<h3 id="Hi_NcParsers_Keywords_Generic_IsoKeywords_G17" data-uid="Hi.NcParsers.Keywords.Generic.IsoKeywords.G17">
G17
</h3>
<div class="markdown level1 summary"><p>XY plane selection — arcs and canned cycles operate in the XY plane. Default on most controllers.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public const string G17 = &quot;G17&quot;</code></pre>
</div>
<h4 class="section">Field Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<h3 id="Hi_NcParsers_Keywords_Generic_IsoKeywords_G18" data-uid="Hi.NcParsers.Keywords.Generic.IsoKeywords.G18">
G18
</h3>
<div class="markdown level1 summary"><p>ZX plane selection — arcs and canned cycles operate in the ZX plane.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public const string G18 = &quot;G18&quot;</code></pre>
</div>
<h4 class="section">Field Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<h3 id="Hi_NcParsers_Keywords_Generic_IsoKeywords_G19" data-uid="Hi.NcParsers.Keywords.Generic.IsoKeywords.G19">
G19
</h3>
<div class="markdown level1 summary"><p>YZ plane selection — arcs and canned cycles operate in the YZ plane.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public const string G19 = &quot;G19&quot;</code></pre>
</div>
<h4 class="section">Field Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<h3 id="Hi_NcParsers_Keywords_Generic_IsoKeywords_G20" data-uid="Hi.NcParsers.Keywords.Generic.IsoKeywords.G20">
G20
</h3>
<div class="markdown level1 summary"><p>Inch unit mode — axis values and feedrates are interpreted in inches (inch/inch-per-min). Not supported by the HiNC pipeline; emits an Unsupported Error.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public const string G20 = &quot;G20&quot;</code></pre>
</div>
<h4 class="section">Field Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<h3 id="Hi_NcParsers_Keywords_Generic_IsoKeywords_G21" data-uid="Hi.NcParsers.Keywords.Generic.IsoKeywords.G21">
G21
</h3>
<div class="markdown level1 summary"><p>Metric unit mode — axis values and feedrates are interpreted in millimetres (mm/mm-per-min). HiNC default.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public const string G21 = &quot;G21&quot;</code></pre>
</div>
<h4 class="section">Field Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<h3 id="Hi_NcParsers_Keywords_Generic_IsoKeywords_G28" data-uid="Hi.NcParsers.Keywords.Generic.IsoKeywords.G28">
G28
@@ -343,6 +529,99 @@ Brand-specific codes belong in their own keyword classes
<h3 id="Hi_NcParsers_Keywords_Generic_IsoKeywords_G40" data-uid="Hi.NcParsers.Keywords.Generic.IsoKeywords.G40">
G40
</h3>
<div class="markdown level1 summary"><p>Cutter radius compensation cancel — deactivates G41/G42 tool radius offset.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public const string G40 = &quot;G40&quot;</code></pre>
</div>
<h4 class="section">Field Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<h3 id="Hi_NcParsers_Keywords_Generic_IsoKeywords_G41" data-uid="Hi.NcParsers.Keywords.Generic.IsoKeywords.G41">
G41
</h3>
<div class="markdown level1 summary"><p>Cutter radius compensation left — offsets tool path to the left of the programmed path by the tool radius.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public const string G41 = &quot;G41&quot;</code></pre>
</div>
<h4 class="section">Field Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<h3 id="Hi_NcParsers_Keywords_Generic_IsoKeywords_G42" data-uid="Hi.NcParsers.Keywords.Generic.IsoKeywords.G42">
G42
</h3>
<div class="markdown level1 summary"><p>Cutter radius compensation right — offsets tool path to the right of the programmed path by the tool radius.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public const string G42 = &quot;G42&quot;</code></pre>
</div>
<h4 class="section">Field Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<h3 id="Hi_NcParsers_Keywords_Generic_IsoKeywords_G43" data-uid="Hi.NcParsers.Keywords.Generic.IsoKeywords.G43">
G43
@@ -1397,6 +1676,99 @@ Brand-specific codes belong in their own keyword classes
<h3 id="Hi_NcParsers_Keywords_Generic_IsoKeywords_M00" data-uid="Hi.NcParsers.Keywords.Generic.IsoKeywords.M00">
M00
</h3>
<div class="markdown level1 summary"><p>Program stop (unconditional) — halts execution; operator must press Cycle Start to resume. Modal state preserved.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public const string M00 = &quot;M00&quot;</code></pre>
</div>
<h4 class="section">Field Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<h3 id="Hi_NcParsers_Keywords_Generic_IsoKeywords_M01" data-uid="Hi.NcParsers.Keywords.Generic.IsoKeywords.M01">
M01
</h3>
<div class="markdown level1 summary"><p>Optional program stop — halts execution only when the Optional Stop switch on the panel is ON; otherwise ignored. Modal state preserved.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public const string M01 = &quot;M01&quot;</code></pre>
</div>
<h4 class="section">Field Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<h3 id="Hi_NcParsers_Keywords_Generic_IsoKeywords_M02" data-uid="Hi.NcParsers.Keywords.Generic.IsoKeywords.M02">
M02
</h3>
<div class="markdown level1 summary"><p>Program end (no rewind) — stops execution and resets modal state.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public const string M02 = &quot;M02&quot;</code></pre>
</div>
<h4 class="section">Field Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<h3 id="Hi_NcParsers_Keywords_Generic_IsoKeywords_M03" data-uid="Hi.NcParsers.Keywords.Generic.IsoKeywords.M03">
M03
@@ -1490,6 +1862,285 @@ Brand-specific codes belong in their own keyword classes
<h3 id="Hi_NcParsers_Keywords_Generic_IsoKeywords_M06" data-uid="Hi.NcParsers.Keywords.Generic.IsoKeywords.M06">
M06
</h3>
<div class="markdown level1 summary"><p>Tool change — executes automatic tool change.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public const string M06 = &quot;M06&quot;</code></pre>
</div>
<h4 class="section">Field Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<h3 id="Hi_NcParsers_Keywords_Generic_IsoKeywords_M07" data-uid="Hi.NcParsers.Keywords.Generic.IsoKeywords.M07">
M07
</h3>
<div class="markdown level1 summary"><p>Coolant ON (mist) — activates a fine oil-mist / air-blast coolant stream.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public const string M07 = &quot;M07&quot;</code></pre>
</div>
<h4 class="section">Field Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<h3 id="Hi_NcParsers_Keywords_Generic_IsoKeywords_M08" data-uid="Hi.NcParsers.Keywords.Generic.IsoKeywords.M08">
M08
</h3>
<div class="markdown level1 summary"><p>Coolant ON (flood) — activates flood coolant.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public const string M08 = &quot;M08&quot;</code></pre>
</div>
<h4 class="section">Field Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<h3 id="Hi_NcParsers_Keywords_Generic_IsoKeywords_M09" data-uid="Hi.NcParsers.Keywords.Generic.IsoKeywords.M09">
M09
</h3>
<div class="markdown level1 summary"><p>Coolant OFF — deactivates all coolant.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public const string M09 = &quot;M09&quot;</code></pre>
</div>
<h4 class="section">Field Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<h3 id="Hi_NcParsers_Keywords_Generic_IsoKeywords_M30" data-uid="Hi.NcParsers.Keywords.Generic.IsoKeywords.M30">
M30
</h3>
<div class="markdown level1 summary"><p>Program end — stops execution, resets modal state, rewinds to start.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public const string M30 = &quot;M30&quot;</code></pre>
</div>
<h4 class="section">Field Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<h3 id="Hi_NcParsers_Keywords_Generic_IsoKeywords_PlaneSelectCodes" data-uid="Hi.NcParsers.Keywords.Generic.IsoKeywords.PlaneSelectCodes">
PlaneSelectCodes
</h3>
<div class="markdown level1 summary"><p>All plane selection codes.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public static readonly string[] PlaneSelectCodes</code></pre>
</div>
<h4 class="section">Field Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a>[]</dt>
<dd></dd>
</dl>
<h3 id="Hi_NcParsers_Keywords_Generic_IsoKeywords_ProgramEndCodes" data-uid="Hi.NcParsers.Keywords.Generic.IsoKeywords.ProgramEndCodes">
ProgramEndCodes
</h3>
<div class="markdown level1 summary"><p>All program end codes.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public static readonly string[] ProgramEndCodes</code></pre>
</div>
<h4 class="section">Field Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a>[]</dt>
<dd></dd>
</dl>
<h3 id="Hi_NcParsers_Keywords_Generic_IsoKeywords_ProgramStopCodes" data-uid="Hi.NcParsers.Keywords.Generic.IsoKeywords.ProgramStopCodes">
ProgramStopCodes
</h3>
<div class="markdown level1 summary"><p>All program-stop codes (M00 unconditional, M01 optional).</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public static readonly string[] ProgramStopCodes</code></pre>
</div>
<h4 class="section">Field Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a>[]</dt>
<dd></dd>
</dl>
<h3 id="Hi_NcParsers_Keywords_Generic_IsoKeywords_UnitModeCodes" data-uid="Hi.NcParsers.Keywords.Generic.IsoKeywords.UnitModeCodes">
UnitModeCodes
</h3>
<div class="markdown level1 summary"><p>All unit-mode codes (Group 06).</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public static readonly string[] UnitModeCodes</code></pre>
</div>
<h4 class="section">Field Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a>[]</dt>
<dd></dd>
</dl>
</article>
<div class="contribution d-print-none">