I have a servo spindle (using step+dir for Granite devices VSD-E) which I have configured both as spindle and as A-axis, so they have both the same LPT port pins in Mach config. .
It works.
It has been a while since I have used a parallel port, but it seems you are saying that both the Spindle and the A axis are sharing the same physical pins. If that's correct, I can't imagine the thing is working at all unless by sheer coincidence.
Why not?
As long as I don't use the A-axis (servo-spindle with angular control) and spindle (as constant RPM spindle) at the same time, there is no problem. When I use the A-axis at ATC macro code, I make certain the spindle is not rotating. Outside the ATC macro, the A-axis is not used. Much more clear to me than using swapaxis to do the same.
The pins go the the servo amplifier running the brushed DC spindle servo motor with encoder. The servo amp doesn't know whether the steps come from A-axis or spindle rotating in MACH3. When using A-axis, I have to home the axis anyway to get initial angle correct - using spindle encoder index pulse as home switch.