wasm-port: expand canonical runtime edge fixtures

This commit is contained in:
2026-06-07 05:58:11 +08:00
parent 173018162e
commit 1de1f9503e
4 changed files with 109 additions and 19 deletions

View File

@@ -152,19 +152,29 @@ void CHANGE_TOOL_NUMBER(int pocket)
} }
void RELOAD_TOOLDATA(void) {} void RELOAD_TOOLDATA(void) {}
void CLAMP_AXIS(CANON_AXIS) {} void CLAMP_AXIS(CANON_AXIS) {}
void DISABLE_ADAPTIVE_FEED() {} void DISABLE_ADAPTIVE_FEED() { standalone::push_canon_event("DISABLE_ADAPTIVE_FEED"); }
void ENABLE_ADAPTIVE_FEED() {} void ENABLE_ADAPTIVE_FEED() { standalone::push_canon_event("ENABLE_ADAPTIVE_FEED"); }
void DISABLE_FEED_OVERRIDE() {} void DISABLE_FEED_OVERRIDE() { standalone::push_canon_event("DISABLE_FEED_OVERRIDE"); }
void ENABLE_FEED_OVERRIDE() {} void ENABLE_FEED_OVERRIDE() { standalone::push_canon_event("ENABLE_FEED_OVERRIDE"); }
void DISABLE_SPEED_OVERRIDE(int) {} void DISABLE_SPEED_OVERRIDE(int spindle)
void ENABLE_SPEED_OVERRIDE(int) {} {
void DISABLE_FEED_HOLD() {} std::ostringstream oss;
void ENABLE_FEED_HOLD() {} oss << "DISABLE_SPEED_OVERRIDE spindle=" << spindle;
standalone::push_canon_event(oss.str());
}
void ENABLE_SPEED_OVERRIDE(int spindle)
{
std::ostringstream oss;
oss << "ENABLE_SPEED_OVERRIDE spindle=" << spindle;
standalone::push_canon_event(oss.str());
}
void DISABLE_FEED_HOLD() { standalone::push_canon_event("DISABLE_FEED_HOLD"); }
void ENABLE_FEED_HOLD() { standalone::push_canon_event("ENABLE_FEED_HOLD"); }
void FLOOD_OFF() { standalone::push_canon_event("FLOOD_OFF"); } void FLOOD_OFF() { standalone::push_canon_event("FLOOD_OFF"); }
void FLOOD_ON() { standalone::push_canon_event("FLOOD_ON"); } void FLOOD_ON() { standalone::push_canon_event("FLOOD_ON"); }
void MIST_OFF() { standalone::push_canon_event("MIST_OFF"); } void MIST_OFF() { standalone::push_canon_event("MIST_OFF"); }
void MIST_ON() { standalone::push_canon_event("MIST_ON"); } void MIST_ON() { standalone::push_canon_event("MIST_ON"); }
void PALLET_SHUTTLE() {} void PALLET_SHUTTLE() { standalone::push_canon_event("PALLET_SHUTTLE"); }
void TURN_PROBE_OFF() {} void TURN_PROBE_OFF() {}
void TURN_PROBE_ON() {} void TURN_PROBE_ON() {}
void UNCLAMP_AXIS(CANON_AXIS) {} void UNCLAMP_AXIS(CANON_AXIS) {}
@@ -172,18 +182,57 @@ void NURB_KNOT_VECTOR() {}
void NURB_CONTROL_POINT(int, double, double, double, double) {} void NURB_CONTROL_POINT(int, double, double, double, double) {}
void NURB_FEED(double, double) {} void NURB_FEED(double, double) {}
void SET_BLOCK_DELETE(bool) {} void SET_BLOCK_DELETE(bool) {}
void OPTIONAL_PROGRAM_STOP() {} void OPTIONAL_PROGRAM_STOP() { standalone::push_canon_event("OPTIONAL_PROGRAM_STOP"); }
void SET_OPTIONAL_PROGRAM_STOP(bool) {} void SET_OPTIONAL_PROGRAM_STOP(bool) {}
bool GET_OPTIONAL_PROGRAM_STOP() { return false; } bool GET_OPTIONAL_PROGRAM_STOP() { return false; }
void PROGRAM_END() {} void PROGRAM_END() { standalone::push_canon_event("PROGRAM_END"); }
void PROGRAM_STOP() {} void PROGRAM_STOP() { standalone::push_canon_event("PROGRAM_STOP"); }
void SET_MOTION_OUTPUT_BIT(int) {} void SET_MOTION_OUTPUT_BIT(int index)
void CLEAR_MOTION_OUTPUT_BIT(int) {} {
void SET_AUX_OUTPUT_BIT(int) {} std::ostringstream oss;
void CLEAR_AUX_OUTPUT_BIT(int) {} oss << "SET_MOTION_OUTPUT_BIT index=" << index;
void SET_MOTION_OUTPUT_VALUE(int, double) {} standalone::push_canon_event(oss.str());
void SET_AUX_OUTPUT_VALUE(int, double) {} }
int WAIT(int, int, int, double) { return 0; } void CLEAR_MOTION_OUTPUT_BIT(int index)
{
std::ostringstream oss;
oss << "CLEAR_MOTION_OUTPUT_BIT index=" << index;
standalone::push_canon_event(oss.str());
}
void SET_AUX_OUTPUT_BIT(int index)
{
std::ostringstream oss;
oss << "SET_AUX_OUTPUT_BIT index=" << index;
standalone::push_canon_event(oss.str());
}
void CLEAR_AUX_OUTPUT_BIT(int index)
{
std::ostringstream oss;
oss << "CLEAR_AUX_OUTPUT_BIT index=" << index;
standalone::push_canon_event(oss.str());
}
void SET_MOTION_OUTPUT_VALUE(int index, double value)
{
std::ostringstream oss;
oss << "SET_MOTION_OUTPUT_VALUE index=" << index << " value=" << value;
standalone::push_canon_event(oss.str());
}
void SET_AUX_OUTPUT_VALUE(int index, double value)
{
std::ostringstream oss;
oss << "SET_AUX_OUTPUT_VALUE index=" << index << " value=" << value;
standalone::push_canon_event(oss.str());
}
int WAIT(int index, int input_type, int wait_type, double timeout)
{
std::ostringstream oss;
oss << "WAIT index=" << index
<< " input_type=" << input_type
<< " wait_type=" << wait_type
<< " timeout=" << timeout;
standalone::push_canon_event(oss.str());
return 0;
}
int UNLOCK_ROTARY(int, int) { return 0; } int UNLOCK_ROTARY(int, int) { return 0; }
int LOCK_ROTARY(int, int) { return 0; } int LOCK_ROTARY(int, int) { return 0; }
void UPDATE_TAG(const StateTag &) {} void UPDATE_TAG(const StateTag &) {}

View File

@@ -9,3 +9,25 @@ canon_event=FLOOD_ON
canon_event=MIST_OFF canon_event=MIST_OFF
canon_event=FLOOD_OFF canon_event=FLOOD_OFF
canon_event=DWELL seconds=0.25 canon_event=DWELL seconds=0.25
canon_event=ENABLE_FEED_OVERRIDE
canon_event=ENABLE_SPEED_OVERRIDE spindle=0
canon_event=DISABLE_FEED_OVERRIDE
canon_event=ENABLE_FEED_OVERRIDE
canon_event=DISABLE_SPEED_OVERRIDE spindle=0
canon_event=ENABLE_SPEED_OVERRIDE spindle=0
canon_event=DISABLE_ADAPTIVE_FEED
canon_event=ENABLE_ADAPTIVE_FEED
canon_event=DISABLE_FEED_HOLD
canon_event=ENABLE_FEED_HOLD
canon_event=SET_MOTION_OUTPUT_BIT index=3
canon_event=CLEAR_MOTION_OUTPUT_BIT index=3
canon_event=SET_AUX_OUTPUT_BIT index=4
canon_event=CLEAR_AUX_OUTPUT_BIT index=4
canon_event=SET_MOTION_OUTPUT_VALUE index=2 value=12.5
canon_event=SET_AUX_OUTPUT_VALUE index=2 value=34.5
canon_event=WAIT index=1 input_type=1 wait_type=0 timeout=0
canon_event=PROGRAM_STOP
canon_event=SET_FEED_RATE rate=0
canon_event=STOP_SPINDLE_TURNING spindle=0
canon_event=SET_SPINDLE_MODE spindle=0 css_max=0
canon_event=PROGRAM_END

View File

@@ -6,3 +6,21 @@ M7
M8 M8
M9 M9
G4 P0.25 G4 P0.25
M48
M50 P0
M50 P1
M51 P0
M51 P1
M52 P0
M52 P1
M53 P0
M53 P1
M62 P3
M63 P3
M64 P4
M65 P4
M67 E2 Q12.5
M68 E2 Q34.5
M66 P1 L0 Q0
M0
M2

View File

@@ -97,6 +97,7 @@ check_fixture_output() {
local line_number local line_number
for ((line_number = 1; line_number <= line_count; line_number += 1)); do for ((line_number = 1; line_number <= line_count; line_number += 1)); do
if ! grep -Fq "execute_line_${line_number}=0" "$stdout_file" && if ! grep -Fq "execute_line_${line_number}=0" "$stdout_file" &&
! grep -Fq "execute_line_${line_number}=1" "$stdout_file" &&
! grep -Fq "execute_line_${line_number}=2" "$stdout_file"; then ! grep -Fq "execute_line_${line_number}=2" "$stdout_file"; then
echo "missing successful execute status for line $line_number in $stdout_file" >&2 echo "missing successful execute status for line $line_number in $stdout_file" >&2
exit 1 exit 1