all the button does is this. If your machine is running Gcode, when you push it, it will go into an Optional Stop. when you press it again, it will activate the cycle start (or if the machine is currently NOT running it will push the Cycle start.
when you goto a M1, you can jog around if you want, BUT, when you hit the button to cycle start, the Prepositional move window will come on so you can put it back to where you left off. OR, you could look at the corrdinates the M1 has stopped at and after you finish jogging around use the MDI to get back to it, or you can do more code to do all that automatically....
In a nutshell, it would be better to run the Gcode hit the toggle button, but dont jog it around. You can put a: Code "M3" as a line in the cycle start VB code.
scott