Here's the idea. Modify the post to see if the user programmed a dwell greater than say 5 seconds (this is the trigger for the M00 program stop). I'm sure no one uses that long of a dwell. When the post sees the dwell value greater than the 5 seconds it posts a M19 for spindle orientation and a M00 at the full drill depth of the cycle using the long cycle not the canned cycle. This way any user can program a part stop using a sketched circle center point for reference of the tool for the program stop. I know the UI can't simulate this and I'm fine with that. Easy peasy boys.
G0 G90 G40 G80
G91 G28 Z0
G90 G94
T1M6
X-.55 Y0 M19 (should get spindle orient from the tool change, may not be needed)
G1 Z-.5 M00 F20. (programmed feed rate, has to be in IPM as the spindle is not turning)
G0 Z.1
(rest of machining program follows)
M30
Greg