Hi,

Mach4 adheres very strictly to the Gcode definition of Fanuc21i, being as close to an industry standard as there is.

A lot of the sloppy Gcode tricks that Mach3 used to accommodate will just not wash with Mach4. Look for any Mach3 shortcut G82 cycles,

they will stop Mach4.

For example this PCB drilling code would work with Mach3:

`N00340 G82 X-33.4000 Y25.4000 Z-2.2000 F300 R2.0000 P0.100000`

N00350 G82 X-35.7750 Y24.1250

N00360 G82 X-38.9500 Y32.9000

N00370 G82 X-40.4750 Y9.5250

N00380 G82 X-42.1000 Y13.3000

N00390 G82 X-48.3000 Y2.6500

N00400 G82 X-49.4500 Y18.5000

N00410 G82 X-51.8000 Y33.2500

N00420 G82 X-5.7500 Y10.5000

N00430 G82 X-57.7500 Y34.5500

N00440 G82 X-5.8250 Y17.2750

N00450 G82 X-59.5000 Y13.5000

N00460 G82 X-13.1500 Y33.5000

N00470 G82 X-17.2750 Y27.0250

N00480 G82 X-1.9750 Y32.9750

N00490 G82 X-19.7500 Y26.9500

Whereas this code works with Mach4 and is near identical and was derived from the Mach3 code, but adheres to the stricter definition of G82

`N00340 G82 X-33.4000 Y25.4000 Z-2.2000 F300 R2.0000 P0.100000`

X-35.7750 Y24.1250

X-38.9500 Y32.9000

X-40.4750 Y9.5250

X-42.1000 Y13.3000

X-48.3000 Y2.6500

X-49.4500 Y18.5000

X-51.8000 Y33.2500

X-5.7500 Y10.5000

X-57.7500 Y34.5500

X-5.8250 Y17.2750

X-59.5000 Y13.5000

X-13.1500 Y33.5000

X-17.2750 Y27.0250

X-1.9750 Y32.9750

X-19.7500 Y26.9500

While it might appear that the line numbers are the difference, that is a red herring, note how the Mach3 code will accept an abbreviated G82 block like

G82 X-51.8000 Y33.2500 the Mach4 compliant block is like this:

X-51.8000 Y33.2500

So in Mach4 the G82 is modal and thus an X,Y coordinate carries on in the same mode and works, where the Mach3 code attempts to use a shortened G82 which is

contrary to the ANSI definition of G82 and such a shortened block is unacceptable in Mach4.

Craig