Expand LinuxCNC interpreter regression coverage
This commit is contained in:
12
wasm-port/vendor/linuxcnc/tests/interp/m98m99/03-error-M98-no-P-word/expected
vendored
Normal file
12
wasm-port/vendor/linuxcnc/tests/interp/m98m99/03-error-M98-no-P-word/expected
vendored
Normal file
@@ -0,0 +1,12 @@
|
||||
executing
|
||||
1 N..... USE_LENGTH_UNITS(CANON_UNITS_MM)
|
||||
2 N..... SET_G5X_OFFSET(1, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000)
|
||||
3 N..... SET_G92_OFFSET(0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000)
|
||||
4 N..... SET_XY_ROTATION(0.0000)
|
||||
5 N..... SET_FEED_REFERENCE(CANON_XYZ)
|
||||
6 N..... ON_RESET()
|
||||
7 N..... COMMENT("Fanuc M98 requires P-word ")
|
||||
Found 'm98' code with no P-word
|
||||
M98
|
||||
8 N..... ON_RESET()
|
||||
9 N..... ON_RESET()
|
||||
9
wasm-port/vendor/linuxcnc/tests/interp/m98m99/03-error-M98-no-P-word/test.ngc
vendored
Normal file
9
wasm-port/vendor/linuxcnc/tests/interp/m98m99/03-error-M98-no-P-word/test.ngc
vendored
Normal file
@@ -0,0 +1,9 @@
|
||||
%
|
||||
( Fanuc M98 requires P-word )
|
||||
|
||||
M98
|
||||
|
||||
O1
|
||||
#1 = 13
|
||||
M99
|
||||
%
|
||||
7
wasm-port/vendor/linuxcnc/tests/interp/m98m99/03-error-M98-no-P-word/test.sh
vendored
Executable file
7
wasm-port/vendor/linuxcnc/tests/interp/m98m99/03-error-M98-no-P-word/test.sh
vendored
Executable file
@@ -0,0 +1,7 @@
|
||||
#!/bin/bash
|
||||
if ! rs274 -g test.ngc 2>&1; then
|
||||
# expected to fail
|
||||
exit 0
|
||||
fi
|
||||
|
||||
exit 1
|
||||
10
wasm-port/vendor/linuxcnc/tests/interp/m98m99/04-M98-but-no-sub/expected
vendored
Normal file
10
wasm-port/vendor/linuxcnc/tests/interp/m98m99/04-M98-but-no-sub/expected
vendored
Normal file
@@ -0,0 +1,10 @@
|
||||
1 N..... USE_LENGTH_UNITS(CANON_UNITS_MM)
|
||||
2 N..... SET_G5X_OFFSET(1, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000)
|
||||
3 N..... SET_G92_OFFSET(0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000)
|
||||
4 N..... SET_XY_ROTATION(0.0000)
|
||||
5 N..... SET_FEED_REFERENCE(CANON_XYZ)
|
||||
6 N..... ON_RESET()
|
||||
7 N..... COMMENT("M98 call non-existant sub ")
|
||||
8 N..... FINISH()
|
||||
9 N..... ON_RESET()
|
||||
10 N..... ON_RESET()
|
||||
6
wasm-port/vendor/linuxcnc/tests/interp/m98m99/04-M98-but-no-sub/test.ngc
vendored
Normal file
6
wasm-port/vendor/linuxcnc/tests/interp/m98m99/04-M98-but-no-sub/test.ngc
vendored
Normal file
@@ -0,0 +1,6 @@
|
||||
%
|
||||
( M98 call non-existant sub )
|
||||
|
||||
M98 P1
|
||||
M30
|
||||
%
|
||||
2
wasm-port/vendor/linuxcnc/tests/interp/m98m99/04-M98-but-no-sub/test.sh
vendored
Executable file
2
wasm-port/vendor/linuxcnc/tests/interp/m98m99/04-M98-but-no-sub/test.sh
vendored
Executable file
@@ -0,0 +1,2 @@
|
||||
#!/bin/bash -e
|
||||
! rs274 -g test.ngc
|
||||
135
wasm-port/vendor/linuxcnc/tests/interp/m98m99/05-M98-loops/expected
vendored
Normal file
135
wasm-port/vendor/linuxcnc/tests/interp/m98m99/05-M98-loops/expected
vendored
Normal file
@@ -0,0 +1,135 @@
|
||||
N..... USE_LENGTH_UNITS(CANON_UNITS_MM)
|
||||
N..... SET_G5X_OFFSET(1, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000)
|
||||
N..... SET_G92_OFFSET(0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000)
|
||||
N..... SET_XY_ROTATION(0.0000)
|
||||
N..... SET_FEED_REFERENCE(CANON_XYZ)
|
||||
N..... ON_RESET()
|
||||
N..... COMMENT("A simple O sub example ")
|
||||
N..... SET_FEED_RATE(40.0000)
|
||||
N..... STRAIGHT_TRAVERSE(0.0000, 0.0000, 0.2500, 0.0000, 0.0000, 0.0000)
|
||||
N..... COMMENT("interpreter: distance mode changed to incremental")
|
||||
N..... COMMENT("interpreter: retract mode set to r_plane")
|
||||
N..... STRAIGHT_TRAVERSE(0.0000, 0.0000, 0.5000, 0.0000, 0.0000, 0.0000)
|
||||
N..... SET_MOTION_CONTROL_MODE(CANON_EXACT_PATH)
|
||||
N..... STRAIGHT_TRAVERSE(1.0000, 0.0000, 0.5000, 0.0000, 0.0000, 0.0000)
|
||||
N..... STRAIGHT_FEED(1.0000, 0.0000, -0.5000, 0.0000, 0.0000, 0.0000)
|
||||
N..... STRAIGHT_TRAVERSE(1.0000, 0.0000, 0.5000, 0.0000, 0.0000, 0.0000)
|
||||
N..... SET_MOTION_CONTROL_MODE(CANON_CONTINUOUS, 0.000000)
|
||||
N..... SET_NAIVECAM_TOLERANCE(0.0000)
|
||||
SUB O1 PARAM1 = 1.000000
|
||||
N..... COMMENT("interpreter: retract mode set to r_plane")
|
||||
N..... STRAIGHT_TRAVERSE(1.0000, 0.0000, 0.5000, 0.0000, 0.0000, 0.0000)
|
||||
N..... SET_MOTION_CONTROL_MODE(CANON_EXACT_PATH)
|
||||
N..... STRAIGHT_TRAVERSE(2.0000, 0.0000, 0.5000, 0.0000, 0.0000, 0.0000)
|
||||
N..... STRAIGHT_FEED(2.0000, 0.0000, -0.5000, 0.0000, 0.0000, 0.0000)
|
||||
N..... STRAIGHT_TRAVERSE(2.0000, 0.0000, 0.5000, 0.0000, 0.0000, 0.0000)
|
||||
N..... SET_MOTION_CONTROL_MODE(CANON_CONTINUOUS, 0.000000)
|
||||
N..... SET_NAIVECAM_TOLERANCE(0.0000)
|
||||
SUB O1 PARAM1 = 2.000000
|
||||
N..... COMMENT("interpreter: retract mode set to r_plane")
|
||||
N..... STRAIGHT_TRAVERSE(2.0000, 0.0000, 0.5000, 0.0000, 0.0000, 0.0000)
|
||||
N..... SET_MOTION_CONTROL_MODE(CANON_EXACT_PATH)
|
||||
N..... STRAIGHT_TRAVERSE(3.0000, 0.0000, 0.5000, 0.0000, 0.0000, 0.0000)
|
||||
N..... STRAIGHT_FEED(3.0000, 0.0000, -0.5000, 0.0000, 0.0000, 0.0000)
|
||||
N..... STRAIGHT_TRAVERSE(3.0000, 0.0000, 0.5000, 0.0000, 0.0000, 0.0000)
|
||||
N..... SET_MOTION_CONTROL_MODE(CANON_CONTINUOUS, 0.000000)
|
||||
N..... SET_NAIVECAM_TOLERANCE(0.0000)
|
||||
SUB O1 PARAM1 = 3.000000
|
||||
N..... COMMENT("interpreter: retract mode set to r_plane")
|
||||
N..... STRAIGHT_TRAVERSE(3.0000, 0.0000, 0.5000, 0.0000, 0.0000, 0.0000)
|
||||
N..... SET_MOTION_CONTROL_MODE(CANON_EXACT_PATH)
|
||||
N..... STRAIGHT_TRAVERSE(4.0000, 0.0000, 0.5000, 0.0000, 0.0000, 0.0000)
|
||||
N..... STRAIGHT_FEED(4.0000, 0.0000, -0.5000, 0.0000, 0.0000, 0.0000)
|
||||
N..... STRAIGHT_TRAVERSE(4.0000, 0.0000, 0.5000, 0.0000, 0.0000, 0.0000)
|
||||
N..... SET_MOTION_CONTROL_MODE(CANON_CONTINUOUS, 0.000000)
|
||||
N..... SET_NAIVECAM_TOLERANCE(0.0000)
|
||||
SUB O1 PARAM1 = 4.000000
|
||||
N..... COMMENT("interpreter: retract mode set to r_plane")
|
||||
N..... STRAIGHT_TRAVERSE(4.0000, 0.0000, 0.5000, 0.0000, 0.0000, 0.0000)
|
||||
N..... SET_MOTION_CONTROL_MODE(CANON_EXACT_PATH)
|
||||
N..... STRAIGHT_TRAVERSE(5.0000, 0.0000, 0.5000, 0.0000, 0.0000, 0.0000)
|
||||
N..... STRAIGHT_FEED(5.0000, 0.0000, -0.5000, 0.0000, 0.0000, 0.0000)
|
||||
N..... STRAIGHT_TRAVERSE(5.0000, 0.0000, 0.5000, 0.0000, 0.0000, 0.0000)
|
||||
N..... SET_MOTION_CONTROL_MODE(CANON_CONTINUOUS, 0.000000)
|
||||
N..... SET_NAIVECAM_TOLERANCE(0.0000)
|
||||
SUB O1 PARAM1 = 5.000000
|
||||
N..... COMMENT("interpreter: retract mode set to r_plane")
|
||||
N..... STRAIGHT_TRAVERSE(5.0000, 0.0000, 0.5000, 0.0000, 0.0000, 0.0000)
|
||||
N..... SET_MOTION_CONTROL_MODE(CANON_EXACT_PATH)
|
||||
N..... STRAIGHT_TRAVERSE(6.0000, 0.0000, 0.5000, 0.0000, 0.0000, 0.0000)
|
||||
N..... STRAIGHT_FEED(6.0000, 0.0000, -0.5000, 0.0000, 0.0000, 0.0000)
|
||||
N..... STRAIGHT_TRAVERSE(6.0000, 0.0000, 0.5000, 0.0000, 0.0000, 0.0000)
|
||||
N..... SET_MOTION_CONTROL_MODE(CANON_CONTINUOUS, 0.000000)
|
||||
N..... SET_NAIVECAM_TOLERANCE(0.0000)
|
||||
SUB O1 PARAM1 = 6.000000
|
||||
N..... COMMENT("interpreter: retract mode set to r_plane")
|
||||
N..... STRAIGHT_TRAVERSE(6.0000, 0.0000, 0.5000, 0.0000, 0.0000, 0.0000)
|
||||
N..... SET_MOTION_CONTROL_MODE(CANON_EXACT_PATH)
|
||||
N..... STRAIGHT_TRAVERSE(7.0000, 0.0000, 0.5000, 0.0000, 0.0000, 0.0000)
|
||||
N..... STRAIGHT_FEED(7.0000, 0.0000, -0.5000, 0.0000, 0.0000, 0.0000)
|
||||
N..... STRAIGHT_TRAVERSE(7.0000, 0.0000, 0.5000, 0.0000, 0.0000, 0.0000)
|
||||
N..... SET_MOTION_CONTROL_MODE(CANON_CONTINUOUS, 0.000000)
|
||||
N..... SET_NAIVECAM_TOLERANCE(0.0000)
|
||||
SUB O1 PARAM1 = 7.000000
|
||||
N..... COMMENT("interpreter: retract mode set to r_plane")
|
||||
N..... STRAIGHT_TRAVERSE(7.0000, 0.0000, 0.5000, 0.0000, 0.0000, 0.0000)
|
||||
N..... SET_MOTION_CONTROL_MODE(CANON_EXACT_PATH)
|
||||
N..... STRAIGHT_TRAVERSE(8.0000, 0.0000, 0.5000, 0.0000, 0.0000, 0.0000)
|
||||
N..... STRAIGHT_FEED(8.0000, 0.0000, -0.5000, 0.0000, 0.0000, 0.0000)
|
||||
N..... STRAIGHT_TRAVERSE(8.0000, 0.0000, 0.5000, 0.0000, 0.0000, 0.0000)
|
||||
N..... SET_MOTION_CONTROL_MODE(CANON_CONTINUOUS, 0.000000)
|
||||
N..... SET_NAIVECAM_TOLERANCE(0.0000)
|
||||
SUB O1 PARAM1 = 8.000000
|
||||
N..... COMMENT("interpreter: retract mode set to r_plane")
|
||||
N..... STRAIGHT_TRAVERSE(8.0000, 0.0000, 0.5000, 0.0000, 0.0000, 0.0000)
|
||||
N..... SET_MOTION_CONTROL_MODE(CANON_EXACT_PATH)
|
||||
N..... STRAIGHT_TRAVERSE(9.0000, 0.0000, 0.5000, 0.0000, 0.0000, 0.0000)
|
||||
N..... STRAIGHT_FEED(9.0000, 0.0000, -0.5000, 0.0000, 0.0000, 0.0000)
|
||||
N..... STRAIGHT_TRAVERSE(9.0000, 0.0000, 0.5000, 0.0000, 0.0000, 0.0000)
|
||||
N..... SET_MOTION_CONTROL_MODE(CANON_CONTINUOUS, 0.000000)
|
||||
N..... SET_NAIVECAM_TOLERANCE(0.0000)
|
||||
SUB O1 PARAM1 = 9.000000
|
||||
N..... COMMENT("interpreter: retract mode set to r_plane")
|
||||
N..... STRAIGHT_TRAVERSE(9.0000, 0.0000, 0.5000, 0.0000, 0.0000, 0.0000)
|
||||
N..... SET_MOTION_CONTROL_MODE(CANON_EXACT_PATH)
|
||||
N..... STRAIGHT_TRAVERSE(10.0000, 0.0000, 0.5000, 0.0000, 0.0000, 0.0000)
|
||||
N..... STRAIGHT_FEED(10.0000, 0.0000, -0.5000, 0.0000, 0.0000, 0.0000)
|
||||
N..... STRAIGHT_TRAVERSE(10.0000, 0.0000, 0.5000, 0.0000, 0.0000, 0.0000)
|
||||
N..... SET_MOTION_CONTROL_MODE(CANON_CONTINUOUS, 0.000000)
|
||||
N..... SET_NAIVECAM_TOLERANCE(0.0000)
|
||||
SUB O1 PARAM1 = 10.000000
|
||||
MAIN 10LOOP PARAM1 = 10.000000
|
||||
N..... COMMENT("interpreter: distance mode changed to absolute")
|
||||
N..... STRAIGHT_TRAVERSE(0.0000, 0.0000, 0.2500, 0.0000, 0.0000, 0.0000)
|
||||
MAIN 0LOOP PARAM1 = 0.000000
|
||||
N..... STRAIGHT_TRAVERSE(0.0000, 0.0000, 0.2500, 0.0000, 0.0000, 0.0000)
|
||||
N..... COMMENT("interpreter: distance mode changed to incremental")
|
||||
N..... COMMENT("interpreter: retract mode set to r_plane")
|
||||
N..... STRAIGHT_TRAVERSE(0.0000, 0.0000, 0.5000, 0.0000, 0.0000, 0.0000)
|
||||
N..... SET_MOTION_CONTROL_MODE(CANON_EXACT_PATH)
|
||||
N..... STRAIGHT_TRAVERSE(1.0000, 0.0000, 0.5000, 0.0000, 0.0000, 0.0000)
|
||||
N..... STRAIGHT_FEED(1.0000, 0.0000, -0.5000, 0.0000, 0.0000, 0.0000)
|
||||
N..... STRAIGHT_TRAVERSE(1.0000, 0.0000, 0.5000, 0.0000, 0.0000, 0.0000)
|
||||
N..... SET_MOTION_CONTROL_MODE(CANON_CONTINUOUS, 0.000000)
|
||||
N..... SET_NAIVECAM_TOLERANCE(0.0000)
|
||||
SUB O1 PARAM1 = 1.000000
|
||||
N..... COMMENT("interpreter: retract mode set to r_plane")
|
||||
N..... STRAIGHT_TRAVERSE(1.0000, 0.0000, 0.5000, 0.0000, 0.0000, 0.0000)
|
||||
N..... SET_MOTION_CONTROL_MODE(CANON_EXACT_PATH)
|
||||
N..... STRAIGHT_TRAVERSE(2.0000, 0.0000, 0.5000, 0.0000, 0.0000, 0.0000)
|
||||
N..... STRAIGHT_FEED(2.0000, 0.0000, -0.5000, 0.0000, 0.0000, 0.0000)
|
||||
N..... STRAIGHT_TRAVERSE(2.0000, 0.0000, 0.5000, 0.0000, 0.0000, 0.0000)
|
||||
N..... SET_MOTION_CONTROL_MODE(CANON_CONTINUOUS, 0.000000)
|
||||
N..... SET_NAIVECAM_TOLERANCE(0.0000)
|
||||
SUB O1 PARAM1 = 2.000000
|
||||
MAIN 2LOOP PARAM1 = 2.000000
|
||||
N..... SET_G5X_OFFSET(1, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000)
|
||||
N..... SET_XY_ROTATION(0.0000)
|
||||
N..... SET_FEED_MODE(0, 0)
|
||||
N..... SET_FEED_RATE(0.0000)
|
||||
N..... STOP_SPINDLE_TURNING(0)
|
||||
N..... SET_SPINDLE_MODE(0 0.0000)
|
||||
N..... PALLET_SHUTTLE()
|
||||
N..... PROGRAM_END()
|
||||
N..... ON_RESET()
|
||||
N..... ON_RESET()
|
||||
27
wasm-port/vendor/linuxcnc/tests/interp/m98m99/05-M98-loops/test.ngc
vendored
Normal file
27
wasm-port/vendor/linuxcnc/tests/interp/m98m99/05-M98-loops/test.ngc
vendored
Normal file
@@ -0,0 +1,27 @@
|
||||
%
|
||||
( A simple O sub example )
|
||||
|
||||
F40
|
||||
; Test with 10 loops
|
||||
#1 = 0
|
||||
G90 G0 X0 Y0 Z0.25
|
||||
M98 P1 L10
|
||||
(PRINT,X MAIN 10LOOP PARAM1 = #1)
|
||||
; Test with 0 loops
|
||||
#1 = 0
|
||||
G90 G0 X0 Y0 Z0.25
|
||||
M98 P1 L0
|
||||
(PRINT,X MAIN 0LOOP PARAM1 = #1)
|
||||
; Test with 2 loops
|
||||
#1 = 0
|
||||
G90 G0 X0 Y0 Z0.25
|
||||
M98 P1 L2
|
||||
(PRINT,X MAIN 2LOOP PARAM1 = #1)
|
||||
M30
|
||||
|
||||
O1
|
||||
G91 G99 G81 X1 Z-1.0 R0.25 ; Drill to Z-1.0
|
||||
#1 = [#1 + 1]
|
||||
(PRINT,X SUB O1 PARAM1 = #1)
|
||||
M99
|
||||
%
|
||||
3
wasm-port/vendor/linuxcnc/tests/interp/m98m99/05-M98-loops/test.sh
vendored
Executable file
3
wasm-port/vendor/linuxcnc/tests/interp/m98m99/05-M98-loops/test.sh
vendored
Executable file
@@ -0,0 +1,3 @@
|
||||
#!/bin/bash
|
||||
rs274 -g test.ngc | awk '{$1=""; print}'
|
||||
exit "${PIPESTATUS[0]}"
|
||||
@@ -0,0 +1,9 @@
|
||||
%
|
||||
( Fanuc 'O...' sub must be called with M98 )
|
||||
|
||||
O1 call
|
||||
|
||||
O1
|
||||
(PRINT,X FANUC)
|
||||
M99
|
||||
%
|
||||
@@ -0,0 +1,9 @@
|
||||
%
|
||||
( Fanuc 'O...' sub must end with M99 )
|
||||
|
||||
M98 P1
|
||||
|
||||
O1
|
||||
(PRINT,X FANUC)
|
||||
O1 endsub
|
||||
%
|
||||
@@ -0,0 +1,9 @@
|
||||
%
|
||||
( RS274NGC 'O...' sub must not be called with M98 )
|
||||
|
||||
M98 P1
|
||||
|
||||
O1 sub
|
||||
(PRINT,X FANUC)
|
||||
O1 endsub
|
||||
%
|
||||
@@ -0,0 +1,9 @@
|
||||
%
|
||||
( RS274NGC 'O... sub' sub must not end with M99 )
|
||||
|
||||
O1 call
|
||||
|
||||
O1 sub
|
||||
(PRINT,X FANUC)
|
||||
M99
|
||||
%
|
||||
50
wasm-port/vendor/linuxcnc/tests/interp/m98m99/06-error-mixed-sub-styles/expected
vendored
Normal file
50
wasm-port/vendor/linuxcnc/tests/interp/m98m99/06-error-mixed-sub-styles/expected
vendored
Normal file
@@ -0,0 +1,50 @@
|
||||
executing
|
||||
1 N..... USE_LENGTH_UNITS(CANON_UNITS_MM)
|
||||
2 N..... SET_G5X_OFFSET(1, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000)
|
||||
3 N..... SET_G92_OFFSET(0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000)
|
||||
4 N..... SET_XY_ROTATION(0.0000)
|
||||
5 N..... SET_FEED_REFERENCE(CANON_XYZ)
|
||||
6 N..... ON_RESET()
|
||||
7 N..... COMMENT("Fanuc 'O...' sub must be called with M98 ")
|
||||
Fanuc 'O....' subroutine must be called with 'M98'
|
||||
O1
|
||||
8 N..... ON_RESET()
|
||||
9 N..... ON_RESET()
|
||||
executing
|
||||
1 N..... USE_LENGTH_UNITS(CANON_UNITS_MM)
|
||||
2 N..... SET_G5X_OFFSET(1, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000)
|
||||
3 N..... SET_G92_OFFSET(0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000)
|
||||
4 N..... SET_XY_ROTATION(0.0000)
|
||||
5 N..... SET_FEED_REFERENCE(CANON_XYZ)
|
||||
6 N..... ON_RESET()
|
||||
7 N..... COMMENT("Fanuc 'O...' sub must end with M99 ")
|
||||
X FANUC
|
||||
Fanuc 'O....' subroutine definition must end with 'M99'
|
||||
O1 endsub
|
||||
8 N..... ON_RESET()
|
||||
9 N..... ON_RESET()
|
||||
executing
|
||||
1 N..... USE_LENGTH_UNITS(CANON_UNITS_MM)
|
||||
2 N..... SET_G5X_OFFSET(1, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000)
|
||||
3 N..... SET_G92_OFFSET(0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000)
|
||||
4 N..... SET_XY_ROTATION(0.0000)
|
||||
5 N..... SET_FEED_REFERENCE(CANON_XYZ)
|
||||
6 N..... ON_RESET()
|
||||
7 N..... COMMENT("RS274NGC 'O...' sub must not be called with M98 ")
|
||||
'O.... sub' subroutine must be called with 'O.... call'
|
||||
O1 sub
|
||||
8 N..... ON_RESET()
|
||||
9 N..... ON_RESET()
|
||||
executing
|
||||
1 N..... USE_LENGTH_UNITS(CANON_UNITS_MM)
|
||||
2 N..... SET_G5X_OFFSET(1, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000)
|
||||
3 N..... SET_G92_OFFSET(0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000)
|
||||
4 N..... SET_XY_ROTATION(0.0000)
|
||||
5 N..... SET_FEED_REFERENCE(CANON_XYZ)
|
||||
6 N..... ON_RESET()
|
||||
7 N..... COMMENT("RS274NGC 'O... sub' sub must not end with M99 ")
|
||||
X FANUC
|
||||
'O.... endsub' or 'O.... return' must follow 'O.... sub' subroutine definition
|
||||
M99
|
||||
8 N..... ON_RESET()
|
||||
9 N..... ON_RESET()
|
||||
10
wasm-port/vendor/linuxcnc/tests/interp/m98m99/06-error-mixed-sub-styles/test.sh
vendored
Executable file
10
wasm-port/vendor/linuxcnc/tests/interp/m98m99/06-error-mixed-sub-styles/test.sh
vendored
Executable file
@@ -0,0 +1,10 @@
|
||||
#!/bin/bash
|
||||
# All expected to fail
|
||||
|
||||
# Fanuc 'O...' sub definition mixed with RS274NGC 'O... endsub'/'O... call'
|
||||
! rs274 -g O...-called-with-O..._call.ngc 2>&1 || exit 1
|
||||
! rs274 -g O...-ended-with-O..._endsub.ngc 2>&1 || exit 1
|
||||
|
||||
# RS274 'O... sub' sub definition mixed with Fanuc 'M99'/'M98'
|
||||
! rs274 -g O...-sub-called-with-M98.ngc 2>&1 || exit 1
|
||||
! rs274 -g O...-sub-ended-with-M99.ngc 2>&1 || exit 1
|
||||
206
wasm-port/vendor/linuxcnc/tests/interp/m98m99/09-disable-fanuc-subs/expected
vendored
Normal file
206
wasm-port/vendor/linuxcnc/tests/interp/m98m99/09-disable-fanuc-subs/expected
vendored
Normal file
@@ -0,0 +1,206 @@
|
||||
program: fanuc; INI: fanuc
|
||||
executing
|
||||
N..... USE_LENGTH_UNITS(CANON_UNITS_MM)
|
||||
N..... SET_G5X_OFFSET(1, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000)
|
||||
N..... SET_G92_OFFSET(0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000)
|
||||
N..... SET_XY_ROTATION(0.0000)
|
||||
N..... SET_FEED_REFERENCE(CANON_XYZ)
|
||||
N..... ON_RESET()
|
||||
N..... COMMENT("A simple O sub example ")
|
||||
N..... SET_FEED_RATE(40.0000)
|
||||
N..... STRAIGHT_TRAVERSE(0.0000, 0.0000, 0.2500, 0.0000, 0.0000, 0.0000)
|
||||
N..... COMMENT("interpreter: distance mode changed to incremental")
|
||||
N..... STRAIGHT_TRAVERSE(1.0000, 0.0000, 0.2500, 0.0000, 0.0000, 0.0000)
|
||||
N..... COMMENT("interpreter: distance mode changed to absolute")
|
||||
N..... COMMENT("interpreter: retract mode set to r_plane")
|
||||
N..... SET_MOTION_CONTROL_MODE(CANON_EXACT_PATH)
|
||||
N..... STRAIGHT_TRAVERSE(1.0000, 0.0000, 0.2500, 0.0000, 0.0000, 0.0000)
|
||||
N..... STRAIGHT_FEED(1.0000, 0.0000, -1.0000, 0.0000, 0.0000, 0.0000)
|
||||
N..... STRAIGHT_TRAVERSE(1.0000, 0.0000, 0.2500, 0.0000, 0.0000, 0.0000)
|
||||
N..... SET_MOTION_CONTROL_MODE(CANON_CONTINUOUS, 0.000000)
|
||||
N..... SET_NAIVECAM_TOLERANCE(0.0000)
|
||||
N..... COMMENT("interpreter: distance mode changed to incremental")
|
||||
N..... STRAIGHT_TRAVERSE(2.0000, 0.0000, 0.2500, 0.0000, 0.0000, 0.0000)
|
||||
N..... COMMENT("interpreter: distance mode changed to absolute")
|
||||
N..... COMMENT("interpreter: retract mode set to r_plane")
|
||||
N..... SET_MOTION_CONTROL_MODE(CANON_EXACT_PATH)
|
||||
N..... STRAIGHT_TRAVERSE(2.0000, 0.0000, 0.2500, 0.0000, 0.0000, 0.0000)
|
||||
N..... STRAIGHT_FEED(2.0000, 0.0000, -1.0000, 0.0000, 0.0000, 0.0000)
|
||||
N..... STRAIGHT_TRAVERSE(2.0000, 0.0000, 0.2500, 0.0000, 0.0000, 0.0000)
|
||||
N..... SET_MOTION_CONTROL_MODE(CANON_CONTINUOUS, 0.000000)
|
||||
N..... SET_NAIVECAM_TOLERANCE(0.0000)
|
||||
N..... COMMENT("interpreter: distance mode changed to incremental")
|
||||
N..... STRAIGHT_TRAVERSE(3.0000, 0.0000, 0.2500, 0.0000, 0.0000, 0.0000)
|
||||
N..... COMMENT("interpreter: distance mode changed to absolute")
|
||||
N..... COMMENT("interpreter: retract mode set to r_plane")
|
||||
N..... SET_MOTION_CONTROL_MODE(CANON_EXACT_PATH)
|
||||
N..... STRAIGHT_TRAVERSE(3.0000, 0.0000, 0.2500, 0.0000, 0.0000, 0.0000)
|
||||
N..... STRAIGHT_FEED(3.0000, 0.0000, -1.0000, 0.0000, 0.0000, 0.0000)
|
||||
N..... STRAIGHT_TRAVERSE(3.0000, 0.0000, 0.2500, 0.0000, 0.0000, 0.0000)
|
||||
N..... SET_MOTION_CONTROL_MODE(CANON_CONTINUOUS, 0.000000)
|
||||
N..... SET_NAIVECAM_TOLERANCE(0.0000)
|
||||
N..... SET_G5X_OFFSET(1, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000)
|
||||
N..... SET_XY_ROTATION(0.0000)
|
||||
N..... SET_FEED_MODE(0, 0)
|
||||
N..... SET_FEED_RATE(0.0000)
|
||||
N..... STOP_SPINDLE_TURNING(0)
|
||||
N..... SET_SPINDLE_MODE(0 0.0000)
|
||||
N..... PALLET_SHUTTLE()
|
||||
N..... PROGRAM_END()
|
||||
N..... ON_RESET()
|
||||
program: rs274ngc; INI: fanuc
|
||||
executing
|
||||
N..... USE_LENGTH_UNITS(CANON_UNITS_MM)
|
||||
N..... SET_G5X_OFFSET(1, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000)
|
||||
N..... SET_G92_OFFSET(0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000)
|
||||
N..... SET_XY_ROTATION(0.0000)
|
||||
N..... SET_FEED_REFERENCE(CANON_XYZ)
|
||||
N..... ON_RESET()
|
||||
N..... COMMENT("A simple O sub example ")
|
||||
N..... SET_FEED_RATE(40.0000)
|
||||
N..... STRAIGHT_TRAVERSE(0.0000, 0.0000, 0.2500, 0.0000, 0.0000, 0.0000)
|
||||
N..... COMMENT("interpreter: distance mode changed to incremental")
|
||||
N..... STRAIGHT_TRAVERSE(1.0000, 0.0000, 0.2500, 0.0000, 0.0000, 0.0000)
|
||||
N..... COMMENT("interpreter: distance mode changed to absolute")
|
||||
N..... COMMENT("interpreter: retract mode set to r_plane")
|
||||
N..... SET_MOTION_CONTROL_MODE(CANON_EXACT_PATH)
|
||||
N..... STRAIGHT_TRAVERSE(1.0000, 0.0000, 0.2500, 0.0000, 0.0000, 0.0000)
|
||||
N..... STRAIGHT_FEED(1.0000, 0.0000, -1.0000, 0.0000, 0.0000, 0.0000)
|
||||
N..... STRAIGHT_TRAVERSE(1.0000, 0.0000, 0.2500, 0.0000, 0.0000, 0.0000)
|
||||
N..... SET_MOTION_CONTROL_MODE(CANON_CONTINUOUS, 0.000000)
|
||||
N..... SET_NAIVECAM_TOLERANCE(0.0000)
|
||||
N..... SET_G5X_OFFSET(1, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000)
|
||||
N..... SET_XY_ROTATION(0.0000)
|
||||
N..... SET_FEED_MODE(0, 0)
|
||||
N..... SET_FEED_RATE(0.0000)
|
||||
N..... STOP_SPINDLE_TURNING(0)
|
||||
N..... SET_SPINDLE_MODE(0 0.0000)
|
||||
N..... PALLET_SHUTTLE()
|
||||
N..... PROGRAM_END()
|
||||
N..... ON_RESET()
|
||||
program: fanuc; INI: NO fanuc
|
||||
executing
|
||||
N..... USE_LENGTH_UNITS(CANON_UNITS_MM)
|
||||
N..... SET_G5X_OFFSET(1, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000)
|
||||
N..... SET_G92_OFFSET(0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000)
|
||||
N..... SET_XY_ROTATION(0.0000)
|
||||
N..... SET_FEED_REFERENCE(CANON_XYZ)
|
||||
N..... ON_RESET()
|
||||
N..... COMMENT("A simple O sub example ")
|
||||
N..... SET_FEED_RATE(40.0000)
|
||||
N..... STRAIGHT_TRAVERSE(0.0000, 0.0000, 0.2500, 0.0000, 0.0000, 0.0000)
|
||||
DISABLE_FANUC_STYLE_SUB set in INI file, but found m98
|
||||
M98 P1 L3
|
||||
N..... ON_RESET()
|
||||
program: rs274ngc; INI: NO fanuc
|
||||
executing
|
||||
N..... USE_LENGTH_UNITS(CANON_UNITS_MM)
|
||||
N..... SET_G5X_OFFSET(1, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000)
|
||||
N..... SET_G92_OFFSET(0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000)
|
||||
N..... SET_XY_ROTATION(0.0000)
|
||||
N..... SET_FEED_REFERENCE(CANON_XYZ)
|
||||
N..... ON_RESET()
|
||||
N..... COMMENT("A simple O sub example ")
|
||||
N..... SET_FEED_RATE(40.0000)
|
||||
N..... STRAIGHT_TRAVERSE(0.0000, 0.0000, 0.2500, 0.0000, 0.0000, 0.0000)
|
||||
N..... COMMENT("interpreter: distance mode changed to incremental")
|
||||
N..... STRAIGHT_TRAVERSE(1.0000, 0.0000, 0.2500, 0.0000, 0.0000, 0.0000)
|
||||
N..... COMMENT("interpreter: distance mode changed to absolute")
|
||||
N..... COMMENT("interpreter: retract mode set to r_plane")
|
||||
N..... SET_MOTION_CONTROL_MODE(CANON_EXACT_PATH)
|
||||
N..... STRAIGHT_TRAVERSE(1.0000, 0.0000, 0.2500, 0.0000, 0.0000, 0.0000)
|
||||
N..... STRAIGHT_FEED(1.0000, 0.0000, -1.0000, 0.0000, 0.0000, 0.0000)
|
||||
N..... STRAIGHT_TRAVERSE(1.0000, 0.0000, 0.2500, 0.0000, 0.0000, 0.0000)
|
||||
N..... SET_MOTION_CONTROL_MODE(CANON_CONTINUOUS, 0.000000)
|
||||
N..... SET_NAIVECAM_TOLERANCE(0.0000)
|
||||
N..... SET_G5X_OFFSET(1, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000)
|
||||
N..... SET_XY_ROTATION(0.0000)
|
||||
N..... SET_FEED_MODE(0, 0)
|
||||
N..... SET_FEED_RATE(0.0000)
|
||||
N..... STOP_SPINDLE_TURNING(0)
|
||||
N..... SET_SPINDLE_MODE(0 0.0000)
|
||||
N..... PALLET_SHUTTLE()
|
||||
N..... PROGRAM_END()
|
||||
N..... ON_RESET()
|
||||
program: fanuc; INI: (none)
|
||||
executing
|
||||
N..... USE_LENGTH_UNITS(CANON_UNITS_MM)
|
||||
N..... SET_G5X_OFFSET(1, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000)
|
||||
N..... SET_G92_OFFSET(0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000)
|
||||
N..... SET_XY_ROTATION(0.0000)
|
||||
N..... SET_FEED_REFERENCE(CANON_XYZ)
|
||||
N..... ON_RESET()
|
||||
N..... COMMENT("A simple O sub example ")
|
||||
N..... SET_FEED_RATE(40.0000)
|
||||
N..... STRAIGHT_TRAVERSE(0.0000, 0.0000, 0.2500, 0.0000, 0.0000, 0.0000)
|
||||
N..... COMMENT("interpreter: distance mode changed to incremental")
|
||||
N..... STRAIGHT_TRAVERSE(1.0000, 0.0000, 0.2500, 0.0000, 0.0000, 0.0000)
|
||||
N..... COMMENT("interpreter: distance mode changed to absolute")
|
||||
N..... COMMENT("interpreter: retract mode set to r_plane")
|
||||
N..... SET_MOTION_CONTROL_MODE(CANON_EXACT_PATH)
|
||||
N..... STRAIGHT_TRAVERSE(1.0000, 0.0000, 0.2500, 0.0000, 0.0000, 0.0000)
|
||||
N..... STRAIGHT_FEED(1.0000, 0.0000, -1.0000, 0.0000, 0.0000, 0.0000)
|
||||
N..... STRAIGHT_TRAVERSE(1.0000, 0.0000, 0.2500, 0.0000, 0.0000, 0.0000)
|
||||
N..... SET_MOTION_CONTROL_MODE(CANON_CONTINUOUS, 0.000000)
|
||||
N..... SET_NAIVECAM_TOLERANCE(0.0000)
|
||||
N..... COMMENT("interpreter: distance mode changed to incremental")
|
||||
N..... STRAIGHT_TRAVERSE(2.0000, 0.0000, 0.2500, 0.0000, 0.0000, 0.0000)
|
||||
N..... COMMENT("interpreter: distance mode changed to absolute")
|
||||
N..... COMMENT("interpreter: retract mode set to r_plane")
|
||||
N..... SET_MOTION_CONTROL_MODE(CANON_EXACT_PATH)
|
||||
N..... STRAIGHT_TRAVERSE(2.0000, 0.0000, 0.2500, 0.0000, 0.0000, 0.0000)
|
||||
N..... STRAIGHT_FEED(2.0000, 0.0000, -1.0000, 0.0000, 0.0000, 0.0000)
|
||||
N..... STRAIGHT_TRAVERSE(2.0000, 0.0000, 0.2500, 0.0000, 0.0000, 0.0000)
|
||||
N..... SET_MOTION_CONTROL_MODE(CANON_CONTINUOUS, 0.000000)
|
||||
N..... SET_NAIVECAM_TOLERANCE(0.0000)
|
||||
N..... COMMENT("interpreter: distance mode changed to incremental")
|
||||
N..... STRAIGHT_TRAVERSE(3.0000, 0.0000, 0.2500, 0.0000, 0.0000, 0.0000)
|
||||
N..... COMMENT("interpreter: distance mode changed to absolute")
|
||||
N..... COMMENT("interpreter: retract mode set to r_plane")
|
||||
N..... SET_MOTION_CONTROL_MODE(CANON_EXACT_PATH)
|
||||
N..... STRAIGHT_TRAVERSE(3.0000, 0.0000, 0.2500, 0.0000, 0.0000, 0.0000)
|
||||
N..... STRAIGHT_FEED(3.0000, 0.0000, -1.0000, 0.0000, 0.0000, 0.0000)
|
||||
N..... STRAIGHT_TRAVERSE(3.0000, 0.0000, 0.2500, 0.0000, 0.0000, 0.0000)
|
||||
N..... SET_MOTION_CONTROL_MODE(CANON_CONTINUOUS, 0.000000)
|
||||
N..... SET_NAIVECAM_TOLERANCE(0.0000)
|
||||
N..... SET_G5X_OFFSET(1, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000)
|
||||
N..... SET_XY_ROTATION(0.0000)
|
||||
N..... SET_FEED_MODE(0, 0)
|
||||
N..... SET_FEED_RATE(0.0000)
|
||||
N..... STOP_SPINDLE_TURNING(0)
|
||||
N..... SET_SPINDLE_MODE(0 0.0000)
|
||||
N..... PALLET_SHUTTLE()
|
||||
N..... PROGRAM_END()
|
||||
N..... ON_RESET()
|
||||
N..... ON_RESET()
|
||||
program: rs274ngc; INI: (none)
|
||||
executing
|
||||
N..... USE_LENGTH_UNITS(CANON_UNITS_MM)
|
||||
N..... SET_G5X_OFFSET(1, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000)
|
||||
N..... SET_G92_OFFSET(0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000)
|
||||
N..... SET_XY_ROTATION(0.0000)
|
||||
N..... SET_FEED_REFERENCE(CANON_XYZ)
|
||||
N..... ON_RESET()
|
||||
N..... COMMENT("A simple O sub example ")
|
||||
N..... SET_FEED_RATE(40.0000)
|
||||
N..... STRAIGHT_TRAVERSE(0.0000, 0.0000, 0.2500, 0.0000, 0.0000, 0.0000)
|
||||
N..... COMMENT("interpreter: distance mode changed to incremental")
|
||||
N..... STRAIGHT_TRAVERSE(1.0000, 0.0000, 0.2500, 0.0000, 0.0000, 0.0000)
|
||||
N..... COMMENT("interpreter: distance mode changed to absolute")
|
||||
N..... COMMENT("interpreter: retract mode set to r_plane")
|
||||
N..... SET_MOTION_CONTROL_MODE(CANON_EXACT_PATH)
|
||||
N..... STRAIGHT_TRAVERSE(1.0000, 0.0000, 0.2500, 0.0000, 0.0000, 0.0000)
|
||||
N..... STRAIGHT_FEED(1.0000, 0.0000, -1.0000, 0.0000, 0.0000, 0.0000)
|
||||
N..... STRAIGHT_TRAVERSE(1.0000, 0.0000, 0.2500, 0.0000, 0.0000, 0.0000)
|
||||
N..... SET_MOTION_CONTROL_MODE(CANON_CONTINUOUS, 0.000000)
|
||||
N..... SET_NAIVECAM_TOLERANCE(0.0000)
|
||||
N..... SET_G5X_OFFSET(1, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000)
|
||||
N..... SET_XY_ROTATION(0.0000)
|
||||
N..... SET_FEED_MODE(0, 0)
|
||||
N..... SET_FEED_RATE(0.0000)
|
||||
N..... STOP_SPINDLE_TURNING(0)
|
||||
N..... SET_SPINDLE_MODE(0 0.0000)
|
||||
N..... PALLET_SHUTTLE()
|
||||
N..... PROGRAM_END()
|
||||
N..... ON_RESET()
|
||||
N..... ON_RESET()
|
||||
2
wasm-port/vendor/linuxcnc/tests/interp/m98m99/09-disable-fanuc-subs/test-fanuc.ini
vendored
Normal file
2
wasm-port/vendor/linuxcnc/tests/interp/m98m99/09-disable-fanuc-subs/test-fanuc.ini
vendored
Normal file
@@ -0,0 +1,2 @@
|
||||
[RS274NGC]
|
||||
DISABLE_FANUC_STYLE_SUB = 0
|
||||
13
wasm-port/vendor/linuxcnc/tests/interp/m98m99/09-disable-fanuc-subs/test-fanuc.ngc
vendored
Normal file
13
wasm-port/vendor/linuxcnc/tests/interp/m98m99/09-disable-fanuc-subs/test-fanuc.ngc
vendored
Normal file
@@ -0,0 +1,13 @@
|
||||
%
|
||||
( A simple O sub example )
|
||||
|
||||
F40
|
||||
G90 G0 X0 Y0 Z0.25
|
||||
M98 P1 L3
|
||||
M30
|
||||
|
||||
O1
|
||||
G91 G0 X1 ; Jog 1" along X (relative)
|
||||
G90 G99 G81 Z-1.0 R0.25 ; Drill to Z-1.0
|
||||
M99
|
||||
%
|
||||
4
wasm-port/vendor/linuxcnc/tests/interp/m98m99/09-disable-fanuc-subs/test-no-fanuc.ini
vendored
Normal file
4
wasm-port/vendor/linuxcnc/tests/interp/m98m99/09-disable-fanuc-subs/test-no-fanuc.ini
vendored
Normal file
@@ -0,0 +1,4 @@
|
||||
[RS274NGC]
|
||||
DISABLE_FANUC_STYLE_SUB = 1
|
||||
[EMC]
|
||||
DEBUG = 2147483647
|
||||
13
wasm-port/vendor/linuxcnc/tests/interp/m98m99/09-disable-fanuc-subs/test-rs274ngc.ngc
vendored
Normal file
13
wasm-port/vendor/linuxcnc/tests/interp/m98m99/09-disable-fanuc-subs/test-rs274ngc.ngc
vendored
Normal file
@@ -0,0 +1,13 @@
|
||||
%
|
||||
( A simple O sub example )
|
||||
|
||||
O1 sub
|
||||
G91 G0 X1 ; Jog 1" along X (relative)
|
||||
G90 G99 G81 Z-1.0 R0.25 ; Drill to Z-1.0
|
||||
O1 endsub
|
||||
|
||||
F40
|
||||
G90 G0 X0 Y0 Z0.25
|
||||
O1 call
|
||||
M30
|
||||
%
|
||||
27
wasm-port/vendor/linuxcnc/tests/interp/m98m99/09-disable-fanuc-subs/test.sh
vendored
Executable file
27
wasm-port/vendor/linuxcnc/tests/interp/m98m99/09-disable-fanuc-subs/test.sh
vendored
Executable file
@@ -0,0 +1,27 @@
|
||||
#!/bin/bash
|
||||
|
||||
trim() { sed 's/^ *[0-9][0-9]* //'; }
|
||||
|
||||
# Fanuc enabled:
|
||||
# - with Fanuc sub: pass
|
||||
echo "program: fanuc; INI: fanuc"
|
||||
rs274 -g -i test-fanuc.ini test-fanuc.ngc 2>&1 | trim
|
||||
# - with rs274ngc sub: pass (rs274ngc subs not disabled)
|
||||
echo "program: rs274ngc; INI: fanuc"
|
||||
rs274 -g -i test-fanuc.ini test-rs274ngc.ngc 2>&1 | trim
|
||||
|
||||
# Fanuc disabled:
|
||||
# - with Fanuc sub: fail
|
||||
echo "program: fanuc; INI: NO fanuc"
|
||||
{ ! rs274 -g -i test-no-fanuc.ini test-fanuc.ngc 2>&1; } | trim || exit 1
|
||||
# - with rs274ngc sub: pass
|
||||
echo "program: rs274ngc; INI: NO fanuc"
|
||||
rs274 -g -i test-no-fanuc.ini test-rs274ngc.ngc 2>&1 | trim
|
||||
|
||||
# Default (Fanuc enabled):
|
||||
# - with Fanuc sub: pass
|
||||
echo "program: fanuc; INI: (none)"
|
||||
rs274 -g test-fanuc.ngc 2>&1 | trim
|
||||
# - with rs274ngc sub: pass (rs274ngc subs not disabled)
|
||||
echo "program: rs274ngc; INI: (none)"
|
||||
rs274 -g test-rs274ngc.ngc 2>&1 | trim
|
||||
145
wasm-port/vendor/linuxcnc/tests/interp/m98m99/11-main-program-oword/expected
vendored
Normal file
145
wasm-port/vendor/linuxcnc/tests/interp/m98m99/11-main-program-oword/expected
vendored
Normal file
@@ -0,0 +1,145 @@
|
||||
Legal test end-main-with-m2:
|
||||
N..... USE_LENGTH_UNITS(CANON_UNITS_MM)
|
||||
N..... SET_G5X_OFFSET(1, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000)
|
||||
N..... SET_G92_OFFSET(0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000)
|
||||
N..... SET_XY_ROTATION(0.0000)
|
||||
N..... SET_FEED_REFERENCE(CANON_XYZ)
|
||||
N..... ON_RESET()
|
||||
N..... COMMENT("legal example")
|
||||
N..... COMMENT("Main program defined with numeric O-word title, terminated by M2")
|
||||
N..... STRAIGHT_TRAVERSE(1.0000, 2.0000, 0.0000, 0.0000, 0.0000, 0.0000)
|
||||
N..... COMMENT("calling sub 2")
|
||||
N..... COMMENT("in sub 2")
|
||||
N..... STRAIGHT_TRAVERSE(1.0000, 2.0000, 3.0000, 0.0000, 0.0000, 0.0000)
|
||||
N..... COMMENT("returning from sub 2")
|
||||
N..... COMMENT("returned from sub 2")
|
||||
N..... COMMENT("end of main")
|
||||
N..... SET_G5X_OFFSET(1, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000)
|
||||
N..... SET_XY_ROTATION(0.0000)
|
||||
N..... SET_FEED_MODE(0, 0)
|
||||
N..... SET_FEED_RATE(0.0000)
|
||||
N..... STOP_SPINDLE_TURNING(0)
|
||||
N..... SET_SPINDLE_MODE(0 0.0000)
|
||||
N..... PROGRAM_END()
|
||||
N..... ON_RESET()
|
||||
N..... ON_RESET()
|
||||
Legal test end-main-with-m02:
|
||||
N..... USE_LENGTH_UNITS(CANON_UNITS_MM)
|
||||
N..... SET_G5X_OFFSET(1, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000)
|
||||
N..... SET_G92_OFFSET(0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000)
|
||||
N..... SET_XY_ROTATION(0.0000)
|
||||
N..... SET_FEED_REFERENCE(CANON_XYZ)
|
||||
N..... ON_RESET()
|
||||
N..... COMMENT("legal example")
|
||||
N..... COMMENT("Main program defined with numeric O-word title, terminated by M02")
|
||||
N..... STRAIGHT_TRAVERSE(1.0000, 2.0000, 0.0000, 0.0000, 0.0000, 0.0000)
|
||||
N..... COMMENT("calling sub 2")
|
||||
N..... COMMENT("in sub 2")
|
||||
N..... STRAIGHT_TRAVERSE(1.0000, 2.0000, 3.0000, 0.0000, 0.0000, 0.0000)
|
||||
N..... COMMENT("returning from sub 2")
|
||||
N..... COMMENT("returned from sub 2")
|
||||
N..... COMMENT("end of main")
|
||||
N..... SET_G5X_OFFSET(1, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000)
|
||||
N..... SET_XY_ROTATION(0.0000)
|
||||
N..... SET_FEED_MODE(0, 0)
|
||||
N..... SET_FEED_RATE(0.0000)
|
||||
N..... STOP_SPINDLE_TURNING(0)
|
||||
N..... SET_SPINDLE_MODE(0 0.0000)
|
||||
N..... PROGRAM_END()
|
||||
N..... ON_RESET()
|
||||
N..... ON_RESET()
|
||||
Legal test end-main-with-m30:
|
||||
N..... USE_LENGTH_UNITS(CANON_UNITS_MM)
|
||||
N..... SET_G5X_OFFSET(1, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000)
|
||||
N..... SET_G92_OFFSET(0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000)
|
||||
N..... SET_XY_ROTATION(0.0000)
|
||||
N..... SET_FEED_REFERENCE(CANON_XYZ)
|
||||
N..... ON_RESET()
|
||||
N..... COMMENT("legal example")
|
||||
N..... COMMENT("Main program defined with numeric O-word title, terminated by M30")
|
||||
N..... STRAIGHT_TRAVERSE(1.0000, 2.0000, 0.0000, 0.0000, 0.0000, 0.0000)
|
||||
N..... COMMENT("calling sub 2")
|
||||
N..... COMMENT("in sub 2")
|
||||
N..... STRAIGHT_TRAVERSE(1.0000, 2.0000, 3.0000, 0.0000, 0.0000, 0.0000)
|
||||
N..... COMMENT("returning from sub 2")
|
||||
N..... COMMENT("returned from sub 2")
|
||||
N..... COMMENT("end of main")
|
||||
N..... SET_G5X_OFFSET(1, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000)
|
||||
N..... SET_XY_ROTATION(0.0000)
|
||||
N..... SET_FEED_MODE(0, 0)
|
||||
N..... SET_FEED_RATE(0.0000)
|
||||
N..... STOP_SPINDLE_TURNING(0)
|
||||
N..... SET_SPINDLE_MODE(0 0.0000)
|
||||
N..... PALLET_SHUTTLE()
|
||||
N..... PROGRAM_END()
|
||||
N..... ON_RESET()
|
||||
N..... ON_RESET()
|
||||
Legal test end-main-with-percent:
|
||||
N..... USE_LENGTH_UNITS(CANON_UNITS_MM)
|
||||
N..... SET_G5X_OFFSET(1, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000)
|
||||
N..... SET_G92_OFFSET(0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000)
|
||||
N..... SET_XY_ROTATION(0.0000)
|
||||
N..... SET_FEED_REFERENCE(CANON_XYZ)
|
||||
N..... ON_RESET()
|
||||
N..... COMMENT("legal example")
|
||||
N..... COMMENT("Main program defined with numeric O-word title, terminated by percent")
|
||||
N..... STRAIGHT_TRAVERSE(1.0000, 2.0000, 0.0000, 0.0000, 0.0000, 0.0000)
|
||||
N..... COMMENT("calling sub 2")
|
||||
N..... COMMENT("in sub 2")
|
||||
N..... STRAIGHT_TRAVERSE(1.0000, 2.0000, 3.0000, 0.0000, 0.0000, 0.0000)
|
||||
N..... COMMENT("returning from sub 2")
|
||||
N..... COMMENT("returned from sub 2")
|
||||
N..... COMMENT("end of main signaled by percent")
|
||||
N..... FINISH()
|
||||
N..... ON_RESET()
|
||||
N..... ON_RESET()
|
||||
Illegal test end-main-with-eof:
|
||||
N..... USE_LENGTH_UNITS(CANON_UNITS_MM)
|
||||
N..... SET_G5X_OFFSET(1, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000)
|
||||
N..... SET_G92_OFFSET(0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000)
|
||||
N..... SET_XY_ROTATION(0.0000)
|
||||
N..... SET_FEED_REFERENCE(CANON_XYZ)
|
||||
N..... ON_RESET()
|
||||
N..... COMMENT("legal example")
|
||||
N..... COMMENT("Main program defined with numeric O-word title, terminated by EOF")
|
||||
N..... STRAIGHT_TRAVERSE(1.0000, 2.0000, 0.0000, 0.0000, 0.0000, 0.0000)
|
||||
N..... COMMENT("calling sub 2")
|
||||
N..... COMMENT("in sub 2")
|
||||
N..... STRAIGHT_TRAVERSE(1.0000, 2.0000, 3.0000, 0.0000, 0.0000, 0.0000)
|
||||
N..... COMMENT("returning from sub 2")
|
||||
N..... COMMENT("returned from sub 2")
|
||||
N..... COMMENT("end of main signaled by EOF")
|
||||
N..... ON_RESET()
|
||||
N..... ON_RESET()
|
||||
Illegal test no-m30-before-osub:
|
||||
N..... USE_LENGTH_UNITS(CANON_UNITS_MM)
|
||||
N..... SET_G5X_OFFSET(1, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000)
|
||||
N..... SET_G92_OFFSET(0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000)
|
||||
N..... SET_XY_ROTATION(0.0000)
|
||||
N..... SET_FEED_REFERENCE(CANON_XYZ)
|
||||
N..... ON_RESET()
|
||||
N..... COMMENT("illegal example")
|
||||
N..... COMMENT("Define rs274-style sub before numeric O-word main program end")
|
||||
N..... STRAIGHT_TRAVERSE(1.0000, 2.0000, 0.0000, 0.0000, 0.0000, 0.0000)
|
||||
N..... COMMENT("calling sub 2")
|
||||
N..... COMMENT("in sub 2")
|
||||
N..... STRAIGHT_TRAVERSE(1.0000, 2.0000, 3.0000, 0.0000, 0.0000, 0.0000)
|
||||
N..... COMMENT("returning from sub 2")
|
||||
N..... COMMENT("returned from sub 2")
|
||||
N..... COMMENT("Illegal: O-sub with no M02 or M30 terminating main")
|
||||
N..... ON_RESET()
|
||||
N..... ON_RESET()
|
||||
Illegal test sub-after-percent:
|
||||
N..... USE_LENGTH_UNITS(CANON_UNITS_MM)
|
||||
N..... SET_G5X_OFFSET(1, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000)
|
||||
N..... SET_G92_OFFSET(0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000)
|
||||
N..... SET_XY_ROTATION(0.0000)
|
||||
N..... SET_FEED_REFERENCE(CANON_XYZ)
|
||||
N..... ON_RESET()
|
||||
N..... COMMENT("illegal example")
|
||||
N..... COMMENT("Define sub after percent [= after EOF]")
|
||||
N..... STRAIGHT_TRAVERSE(1.0000, 2.0000, 0.0000, 0.0000, 0.0000, 0.0000)
|
||||
N..... COMMENT("calling sub 2")
|
||||
N..... FINISH()
|
||||
N..... ON_RESET()
|
||||
N..... ON_RESET()
|
||||
@@ -0,0 +1,15 @@
|
||||
(legal example)
|
||||
(Main program defined with numeric O-word title, terminated by EOF)
|
||||
O2 sub (subprogram begin) (program end signaled by O2 sub)
|
||||
(in sub 2)
|
||||
G0 Z3
|
||||
(returning from sub 2)
|
||||
O2 endsub
|
||||
|
||||
O1 (main program begin)
|
||||
G0 X1Y2
|
||||
(calling sub 2)
|
||||
O2 call
|
||||
(returned from sub 2)
|
||||
|
||||
(end of main signaled by EOF)
|
||||
@@ -0,0 +1,14 @@
|
||||
(illegal example)
|
||||
(Define rs274-style sub before numeric O-word main program end)
|
||||
O1 (main program begin)
|
||||
G0 X1Y2
|
||||
(calling sub 2)
|
||||
O2 call
|
||||
(returned from sub 2)
|
||||
|
||||
(Illegal: O-sub with no M02 or M30 terminating main)
|
||||
O2 sub (subprogram begin)
|
||||
(in sub 2)
|
||||
G0 Z3
|
||||
(returning from sub 2)
|
||||
O2 endsub
|
||||
@@ -0,0 +1,25 @@
|
||||
%
|
||||
(illegal example)
|
||||
(Define sub after percent [= after EOF])
|
||||
O1 (main program begin)
|
||||
G0 X1Y2
|
||||
(calling sub 2)
|
||||
O2 call
|
||||
(returned from sub 2)
|
||||
%
|
||||
(Nothing should follow % sign)
|
||||
|
||||
(From http://linuxcnc.org/docs/html/gcode/overview.html#_overview )
|
||||
( The useful contents of a file demarcated by percents stop after )
|
||||
( the second percent line. Anything after that is ignored. )
|
||||
|
||||
(From Smid 3rd Ed. p. 62)
|
||||
( The percent sign (%) after M30 is a special _stop_code_. This )
|
||||
( symbol terminates the loading of a program from an external )
|
||||
( device. It is also called the _end-of-file_marker_. )
|
||||
|
||||
O2 sub (subprogram begin) (program end signaled by O2 sub)
|
||||
(in sub 2)
|
||||
G0 Z3
|
||||
(returning from sub 2)
|
||||
O2 endsub
|
||||
@@ -0,0 +1,15 @@
|
||||
(legal example)
|
||||
(Main program defined with numeric O-word title, terminated by M02)
|
||||
O1 (main program begin)
|
||||
G0 X1Y2
|
||||
(calling sub 2)
|
||||
O2 call
|
||||
(returned from sub 2)
|
||||
M02 (end of main)
|
||||
(should never get here)
|
||||
|
||||
O2 sub (subprogram begin) (program end signaled by O2 sub)
|
||||
(in sub 2)
|
||||
G0 Z3
|
||||
(returning from sub 2)
|
||||
O2 endsub
|
||||
@@ -0,0 +1,15 @@
|
||||
(legal example)
|
||||
(Main program defined with numeric O-word title, terminated by M2)
|
||||
O1 (main program begin)
|
||||
G0 X1Y2
|
||||
(calling sub 2)
|
||||
O2 call
|
||||
(returned from sub 2)
|
||||
M2 (end of main)
|
||||
(should never get here)
|
||||
|
||||
O2 sub (subprogram begin) (program end signaled by O2 sub)
|
||||
(in sub 2)
|
||||
G0 Z3
|
||||
(returning from sub 2)
|
||||
O2 endsub
|
||||
@@ -0,0 +1,15 @@
|
||||
(legal example)
|
||||
(Main program defined with numeric O-word title, terminated by M30)
|
||||
O1 (main program begin)
|
||||
G0 X1Y2
|
||||
(calling sub 2)
|
||||
O2 call
|
||||
(returned from sub 2)
|
||||
M30 (end of main)
|
||||
(should never get here)
|
||||
|
||||
O2 sub (subprogram begin) (program end signaled by O2 sub)
|
||||
(in sub 2)
|
||||
G0 Z3
|
||||
(returning from sub 2)
|
||||
O2 endsub
|
||||
@@ -0,0 +1,17 @@
|
||||
%
|
||||
(legal example)
|
||||
(Main program defined with numeric O-word title, terminated by percent)
|
||||
O2 sub (subprogram begin) (program end signaled by O2 sub)
|
||||
(in sub 2)
|
||||
G0 Z3
|
||||
(returning from sub 2)
|
||||
O2 endsub
|
||||
|
||||
O1 (main program begin)
|
||||
G0 X1Y2
|
||||
(calling sub 2)
|
||||
O2 call
|
||||
(returned from sub 2)
|
||||
|
||||
(end of main signaled by percent)
|
||||
%
|
||||
44
wasm-port/vendor/linuxcnc/tests/interp/m98m99/11-main-program-oword/test.sh
vendored
Normal file
44
wasm-port/vendor/linuxcnc/tests/interp/m98m99/11-main-program-oword/test.sh
vendored
Normal file
@@ -0,0 +1,44 @@
|
||||
#!/bin/bash -e
|
||||
|
||||
LEGAL_TESTS="
|
||||
end-main-with-m2
|
||||
end-main-with-m02
|
||||
end-main-with-m30
|
||||
end-main-with-percent
|
||||
"
|
||||
|
||||
ILLEGAL_TESTS="
|
||||
end-main-with-eof
|
||||
no-m30-before-osub
|
||||
sub-after-percent
|
||||
"
|
||||
|
||||
#
|
||||
# Run legal tests
|
||||
#
|
||||
for t in $LEGAL_TESTS; do
|
||||
echo "Legal test ${t}:"
|
||||
rs274 -g "test-legal-${t}.ngc" | awk '{$1=""; print}'
|
||||
res=${PIPESTATUS[0]}
|
||||
if test "$res" = 0; then
|
||||
echo "Success: Test '${t}' exited ${res}" >&2
|
||||
else
|
||||
echo "Error: Test '${t}' exited ${res}" >&2
|
||||
exit "$res"
|
||||
fi
|
||||
done
|
||||
|
||||
# Run illegal tests
|
||||
#
|
||||
for t in $ILLEGAL_TESTS; do
|
||||
echo "Illegal test ${t}:"
|
||||
res=-1
|
||||
rs274 -g "test-illegal-${t}.ngc" | awk '{$1=""; print}'
|
||||
res=${PIPESTATUS[0]}
|
||||
if test "$res" = 0; then
|
||||
echo "Error: Illegal test '${t}' exited ${res}" >&2
|
||||
exit "$res"
|
||||
else
|
||||
echo "Success: Illegal test '${t}' exited ${res} (non-zero=success)" >&2
|
||||
fi
|
||||
done
|
||||
Reference in New Issue
Block a user