There are situations I need to use NC programs as both main and subprogram. For example, a part has two phases: "phase 1" main program and "phase 2" main program and they should be able to be run independently. Also, you should be able to run both "phase 1" and "phase 2" in one run as subprogram calls. And this is where the main program / subprogram semantics come in the way. If the program ends with M30, "phase 2" program is never called. If the program ends with "M99", it will repeat...
Read more
Read more