按规划继续工作
结论:修正 standalone 工具表 adapter 的工具查找顺序,使 M61 Q2 current-pocket 行为与 upstream rs274 -t -i 对齐,并将 tool_semantics 的 M61 事件纳入原生 side-by-side 基线。
This commit is contained in:
@@ -522,13 +522,13 @@ parser/conversion, arc geometry, offsets, feed-control and feed-state
|
|||||||
readback, comment/logging,
|
readback, comment/logging,
|
||||||
numbered-parameter, local named-parameter plus `_ini[...]` lookup through
|
numbered-parameter, local named-parameter plus `_ini[...]` lookup through
|
||||||
`rs274 -i`, probing, spindle-orient, file-open reset, file-finish,
|
`rs274 -i`, probing, spindle-orient, file-open reset, file-finish,
|
||||||
tool-reload, tool select/change/length-offset, canned-cycle, state-tag motion,
|
tool-reload, tool select/change/length-offset, M61 current-tool-number update,
|
||||||
tool-table setup, and O-word subroutine fixtures, plus threading/rigid tap,
|
canned-cycle, state-tag motion, tool-table setup, and O-word subroutine
|
||||||
NURBS dispatch boundaries, and the comparable canonical runtime edge and
|
fixtures, plus threading/rigid tap, NURBS dispatch boundaries, and the
|
||||||
program-end cleanup calls. The same upstream baseline also validates the
|
comparable canonical runtime edge and program-end cleanup calls. The same
|
||||||
current negative fixture error text and absent canonical-event constraints.
|
upstream baseline also validates the current negative fixture error text and
|
||||||
Fixtures that depend on standalone-only runtime
|
absent canonical-event constraints. Fixtures that depend on standalone-only runtime
|
||||||
adapters, HAL/tool-change state, upstream `rs274` output gaps such as
|
adapters, HAL state, upstream `rs274` output gaps such as
|
||||||
`WAIT` or hidden NURBS control-point detail, or richer machine session state
|
`WAIT` or hidden NURBS control-point detail, or richer machine session state
|
||||||
still need dedicated native LinuxCNC baselines.
|
still need dedicated native LinuxCNC baselines.
|
||||||
|
|
||||||
@@ -539,10 +539,9 @@ while `namedparam_ini_semantics` now covers the local named-parameter and
|
|||||||
LinuxCNC `_ini[...]` subset against upstream `rs274 -i`. `state_tag_motion`
|
LinuxCNC `_ini[...]` subset against upstream `rs274 -i`. `state_tag_motion`
|
||||||
now compares its motion events with upstream `rs274`, while `UPDATE_TAG`
|
now compares its motion events with upstream `rs274`, while `UPDATE_TAG`
|
||||||
events remain a standalone state-tag capture boundary. `tool_semantics` now
|
events remain a standalone state-tag capture boundary. `tool_semantics` now
|
||||||
compares T/M6/G43/G49 canonical events with upstream `rs274`; M61
|
compares T/M6/G43/G49 and M61 canonical/current-pocket readback with upstream
|
||||||
current-pocket host-state behavior remains covered by the standalone fixture
|
`rs274 -t -i`; `Interp::synch()` current/selected tool slot reads are covered
|
||||||
expectation, and `Interp::synch()` current/selected tool slot reads are
|
by the native init harness.
|
||||||
covered by the native init harness.
|
|
||||||
|
|
||||||
The kinematics probes currently cover LinuxCNC identity/trivial kinematics, the
|
The kinematics probes currently cover LinuxCNC identity/trivial kinematics, the
|
||||||
switchable `5axiskins` XYZBCW bridge-mill model, TRT `xyzac`/`xyzbc`
|
switchable `5axiskins` XYZBCW bridge-mill model, TRT `xyzac`/`xyzbc`
|
||||||
|
|||||||
@@ -93,10 +93,10 @@ semantic rewrites:
|
|||||||
arc geometry, offsets, feed-control, comment/logging, numbered-parameter,
|
arc geometry, offsets, feed-control, comment/logging, numbered-parameter,
|
||||||
local named-parameter plus `_ini[...]` lookup through `rs274 -i`, probing,
|
local named-parameter plus `_ini[...]` lookup through `rs274 -i`, probing,
|
||||||
spindle-orient, file-open reset, file-finish, tool-reload, and tool
|
spindle-orient, file-open reset, file-finish, tool-reload, and tool
|
||||||
select/change/length-offset, canned-cycle, state-tag motion, tool-table
|
select/change/length-offset plus M61 current-tool-number update,
|
||||||
setup, and O-word subroutine fixtures; it also covers threading/rigid tap,
|
canned-cycle, state-tag motion, tool-table setup, and O-word subroutine
|
||||||
NURBS dispatch boundaries, and comparable canonical runtime edge and
|
fixtures; it also covers threading/rigid tap, NURBS dispatch boundaries, and
|
||||||
program-end cleanup calls. It now also checks the negative fixture set
|
comparable canonical runtime edge and program-end cleanup calls. It now also checks the negative fixture set
|
||||||
against upstream `rs274 -g` for expected error text and absent canonical
|
against upstream `rs274 -g` for expected error text and absent canonical
|
||||||
event constraints.
|
event constraints.
|
||||||
HAL-backed adapter-heavy fixtures, standalone modal-state assertions, and upstream
|
HAL-backed adapter-heavy fixtures, standalone modal-state assertions, and upstream
|
||||||
@@ -107,9 +107,9 @@ semantic rewrites:
|
|||||||
default `G73/G83` peck-clearance values for millimeter units.
|
default `G73/G83` peck-clearance values for millimeter units.
|
||||||
- `tool_table_setup` is now in the upstream `rs274` side-by-side baseline using
|
- `tool_table_setup` is now in the upstream `rs274` side-by-side baseline using
|
||||||
a dedicated `rs274 -t` tool table and `-i` millimeter-unit INI boundary.
|
a dedicated `rs274 -t` tool table and `-i` millimeter-unit INI boundary.
|
||||||
- `tool_semantics` now compares its T/M6/G43/G49 canonical subset with
|
- `tool_semantics` now compares T/M6/G43/G49 plus M61
|
||||||
upstream `rs274 -t -i`; M61 current-pocket host-state behavior remains a
|
`CHANGE_TOOL_NUMBER` and current-pocket readback with upstream
|
||||||
standalone fixture expectation.
|
`rs274 -t -i`.
|
||||||
- `namedparam_ini_semantics` now compares local named-parameter behavior and
|
- `namedparam_ini_semantics` now compares local named-parameter behavior and
|
||||||
`_ini[...]` lookup with upstream `rs274 -i`; the broader
|
`_ini[...]` lookup with upstream `rs274 -i`; the broader
|
||||||
`namedparam_semantics` fixture still keeps `_hal[...]` lookup on the
|
`namedparam_semantics` fixture still keeps `_hal[...]` lookup on the
|
||||||
|
|||||||
@@ -88,11 +88,14 @@ int find_tool_index_for_tool(int toolno)
|
|||||||
}
|
}
|
||||||
|
|
||||||
const auto &tools = tool_table();
|
const auto &tools = tool_table();
|
||||||
for (int index = 0; index < CANON_POCKETS_MAX; ++index) {
|
for (int index = 1; index < CANON_POCKETS_MAX; ++index) {
|
||||||
if (tools[index].toolno == toolno) {
|
if (tools[index].toolno == toolno) {
|
||||||
return index;
|
return index;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if (tools[0].toolno == toolno) {
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -7,5 +7,5 @@ canon_event=USE_TOOL_LENGTH_OFFSET x=0 y=0 z=1.25 a=0 b=0 c=0 u=0 v=0 w=0
|
|||||||
canon_event=MESSAGE: tool g43 offset=1 x=0.0000 y=0.0000 z=1.2500
|
canon_event=MESSAGE: tool g43 offset=1 x=0.0000 y=0.0000 z=1.2500
|
||||||
canon_event=USE_TOOL_LENGTH_OFFSET x=0 y=0 z=0 a=0 b=0 c=0 u=0 v=0 w=0
|
canon_event=USE_TOOL_LENGTH_OFFSET x=0 y=0 z=0 a=0 b=0 c=0 u=0 v=0 w=0
|
||||||
canon_event=MESSAGE: tool g49 offset=0 x=0.0000 y=0.0000 z=0.0000
|
canon_event=MESSAGE: tool g49 offset=0 x=0.0000 y=0.0000 z=0.0000
|
||||||
canon_event=CHANGE_TOOL_NUMBER pocket=0
|
canon_event=CHANGE_TOOL_NUMBER pocket=2
|
||||||
canon_event=MESSAGE: tool after_m61 current_pocket=0 current_tool=2
|
canon_event=MESSAGE: tool after_m61 current_pocket=2 current_tool=2
|
||||||
|
|||||||
@@ -871,12 +871,6 @@ for name in "${FIXTURES[@]}"; do
|
|||||||
mv "$TMP_DIR/$name.rs274.no-comments" "$native_norm"
|
mv "$TMP_DIR/$name.rs274.no-comments" "$native_norm"
|
||||||
mv "$TMP_DIR/$name.expected.no-comments" "$expected_norm"
|
mv "$TMP_DIR/$name.expected.no-comments" "$expected_norm"
|
||||||
fi
|
fi
|
||||||
if [[ "$name" == "tool_semantics" ]]; then
|
|
||||||
grep -Ev '^(CHANGE_TOOL_NUMBER|MESSAGE\| tool after_m61)' "$native_norm" > "$TMP_DIR/$name.rs274.tool-subset"
|
|
||||||
grep -Ev '^(CHANGE_TOOL_NUMBER|MESSAGE\| tool after_m61)' "$expected_norm" > "$TMP_DIR/$name.expected.tool-subset"
|
|
||||||
mv "$TMP_DIR/$name.rs274.tool-subset" "$native_norm"
|
|
||||||
mv "$TMP_DIR/$name.expected.tool-subset" "$expected_norm"
|
|
||||||
fi
|
|
||||||
if grep -Eq '^STRAIGHT_(TRAVERSE|FEED)$' "$expected_norm"; then
|
if grep -Eq '^STRAIGHT_(TRAVERSE|FEED)$' "$expected_norm"; then
|
||||||
sparse_ops_file="$TMP_DIR/$name.sparse_ops"
|
sparse_ops_file="$TMP_DIR/$name.sparse_ops"
|
||||||
grep -E '^STRAIGHT_(TRAVERSE|FEED)$' "$expected_norm" > "$sparse_ops_file"
|
grep -E '^STRAIGHT_(TRAVERSE|FEED)$' "$expected_norm" > "$sparse_ops_file"
|
||||||
|
|||||||
Reference in New Issue
Block a user