Oh, I assume that you don't code manually ... since I started with a lathe and my first project was already too complicated for a CAM software, I write my gcode self. Just take a look at the GCode reference in the Mach3Mill Manual and perhaps here:
http://www.cnccookbook.com/CCCNCGCodeCourse.htmI would simply edit the code in a text editor.
So, if i look at the generated code ... the spindle is stopped (line 250: m5), so you go up a bit, something like
N251 G0 Z50
the next one is a return to home which you don't need and it just costs time, so delete the rows 252, 254, and 256 ... if you can change your tool anywhere.
the Line 258: T2M6 is the Tool change command, be sure that in the Mach3 General Options Tool Change command is set to "manually", so you're asked to press "Start cycle" after manually changing the tool.
Line 260: N260G0G90G54X11.5Y12.5125A0.S5000M3 returns to the previous position (not sure), set speed to 5000 and starts the spindle
Line 262: N262G43H2Z.25 applies the new tool offset and goes to the starting z position.
If I code manually, i would put the G43H2 command before the tool change, so you have the new tool length correction already in the DRO and you can test it by simply measuring the distance between tool and surface.
As I've written before, you'ld need a functioning tool table - and the very real risk is if something is wrong and the offsets aren't exact you can crash full on in your workpiece. As a safety measure, I often write the returning to the surface in two steps, to a safe distance with G0 speed and then at feed rate .. so you have a chance to push the emergency stop.
So, before you do anything without knowing what it really does, I propose a crash course in manual g code programming ... there're only a handful of basic commands ... because there're so much possibilities for a failure
![Evil >:D](https://www.machsupport.com/forum/Smileys/default/evil.gif)