Hi,
I think Mach3 is like Mach4 in that it has one spindle only. Thus if you have a free running mill spindle the you can't
have a lathe spindle as well without getting creative.
I've never used it but I believe Mach3 has a 'swap axis' command such that you could have two spindles say, provided
you use only one at a time.
I have upgraded to Mach4 and am more familiar with those arrangements. Mach4 introduces Out-of-Band (OB) axes, up to six
of them in addition to X, Y, Z, A, B and C axes. One, and only one, OB axis may be a spindle with all the usual spindle commands
and interpretations, things like PMW, spindle PID or alternately free running step/direction. The other five remaining OB axes
can be jogged only. Thus if you wanted to turn your turning axis 60 degrees to mill a flat when making a nut say you would
jog that axis 60 degrees using an API command. It is also possible to jog continuously. Lets say you jogged the OB axis
for a move of 108,000,000 degrees or 300,000 revolutions. Its a bit of a cheat, its not a genuinely free rotating spindle
but surely you can complete your lathe turning op in 300,000 revs!
Note that the OB axes are NOT coordinated with X,Y,Z,A,B,C axes. Thus if you started a 108,000,000 degree jog as I explained
above you can now still execute coordinated moves while the jog is running. This gives you the means of 'creating' MillTurn
behavior.
Note also that Mach4 has the possibility, not yet implemented but hinted at by Smurph, that would allow two machines
to operate at once on the same PC, using multiple instances of Mach4. There is supposed to be a common interface
between the two instances that allow genuine MillTurn behavior. Looking forward to that, and incidentally a third order
motion planner.
Craig