In working to try to figure out why these errors are happening, I've considered the following:
1. If I am using BLOCK STEP to go through a subroutine program, does the machine have problems because there was no original "calling" program?
2. Why does the machine seem to jump several blocks ahead and give an error code for a block that hasn't even been STEPPED to yet?
3. I did find a potential logic problem when the TC subr is being run for the first time. If P45 hasn't been previously defined then it is probably being assumed to be 0 (Zero). If that is the case, then in the block of code that decides what the current tool is to be replaced into the rack, none of the condtions will have been met because the code only checks for 1,2,3,4,5 & 6. I will try a short program that defines P45 in the part program BEFORE the block with the tool change. This should define P45 to be the old tool number and prevent the case of P45=0.
4. Does the machine share Parametric Variables between part programs and standard subroutines that are called? I assume so, but can't determine from the manuals if this is actually the case.
Thanks for any help or insight.