Thanks everyone for your suggestions. This program was actually generated by Fusion 360. Once I found what was going on, I stripped it down to bare essentials and rounded the numbers to some values easier to visualise.

Sorry, I have not quite understood what it is you guys are discussing I have done wrong. Bear in mind I am new to g code and CNC programming in general.

I can see that I have done a Z move to Z110 before the tool height offset is applied, which would put the tip of the tool to well below Z110, then applied the tool height with G43 Z105. H1, which would bring the tip of the tool back up to Z105. Not ideal in a real world scenario, but remember this is an example to demonstrate the machine losing the plot part way through the arc movement (as per the loud bang in the video). No actual metal is going to be cut with this program.

In the video you can see those two movements being made. When the example is being run without the G43 line, Z Z110 move is there to set the starting point of the cycle (e.g. first cycle in the video)

To switch between the two examples, instead of adding/removing the G43 line, I probably should have replaced G0 X50. Y0 Z110. with G43 Z105 H1, and had a G0 Z0 at the program start.

All that aside, none of it should affect the radius of the arc or make the machine go bang while it makes the arc right???