I am maybe way off course (usually am)
but isn't this stuff usually in the post processor of your CAM program, here is part of mine for Aspire,
I have edited mine (dont forget to keep a backup just in case)
+---------------------------------------------------
+ Commands output at toolchange
+---------------------------------------------------
begin TOOLCHANGE
"[N]M05"
"( Router stop M05 )"
"[N]G00[XH][YH]" *******
"[N]G00Z70X20Y50"
"[N]T[T]M6"
"[N] ([TOOLNAME])"
"[N]G43H[T]"
+---------------------------------------------------
the line marked with ****** are moving the head and could be edited/deleted to not goto home,
if you put a + at the beginning of the sentence, it will not be parsed into the gcode file
the line under is my addition, because when I changed bits they fell on off the edge of the table onto the floor,
I also made the z move up so I could get in better to change the bits.
regards Ford