OK, I installed the older version of mach3 with the suggested modifications.
I produced a series of test squares to cut using different tools to see what would happen, code attached.
These are simple squares, cut with an engraving tool for the fist 3 using code generated by Aspire in Vcarve, profile and pocket options without the 'display on 3d model' selected, the second 3 with that option selected, all set to 1mm depth of cut by Aspire. The third set of 3 use the same Aspire options but with a 2mm ball nose tool.
The results were interesting and confusing.
The first 3 cut to 1.80mm deep, the second 3 to , 2.10 mm and the 3rd set to3.46 ! I then changed the tool to a 4mm mill and using the code from the ball end setup and ran that, these cut to 2.18mm deep.
I had manually set the depth z=0 so it was not an issue with the auto zero tool, I also checked the calibration in the approved method and all was spot on. ( the x and y axis cuts were precise)
Then, just when I thought I could not get more confused
I set the 4mm end mill to z=0 dropped the depth using Mach3 to 1mm and simply ran a straight line cut by jogging the x axis across, it cut to 1mm deep. So it would appear that the Mach3 is working correctly (??)
I have to say I did not notice any difference in the performance with the changes made to the Mach3 version or the suggested modifications to kernel speed etc. but this was a very simple set of code and perhaps it would be more stable on more complex cuts.
As a self-confessed ignoramus on these matters I am totally baffled, why, when the code shows -1mm Z in all cases, should it cut differently in the different examples when the calibration would appear to be OK.
I am saving the files from Aspire in what I think is the correct format, Mach2/3 Arcs (mm) (*.txt), and as the x and y are correct I can't be that far out, can I ??
I even installed Mach3 on a different, more powerful computer, just in case that was a problem source, but the results were the same.