Hi,
Do you happen to know why Mach 4would change the code like that?
Mach does not change the Gcode. What is happenig is that you have code written for your old machine/controller and according to
your system is going the right way. Now you have a different controller and one axis is reversed relative to your old controller.
It homes and jogs properly but the Y is mirrored during an actual job run.
Forget jogging, it is not a reasonable test, a button can be assigned to jog positively or negatively when you are actually concerned with the
DROs, do they count up or count down?. The correct means of testing your machine for things like axis calibration and axis direction is with MDI.
With the machine approximately centered zero X and Y axes. Then MDI
g0 x100 (mm units assumed) and the axis should move such that the controlled point is 100mm further to the right.
g0y100 should cause the controlled point to move 100mm further away from you. These are the industry standard axis directions, called right hand
after the right hand rule.
It sounds to me like you have your Y axis reversed. It can be direction swapped in the ESS plugin Ports&Pins tab, and should only ever be swapped there.
Craig