Hi John,
I'm sorry for making you repeat yourself but are you saying that if you run something like:
Code:
M98 P123 L100
M30
O123
G0 X10
G0 X0
M99
The X-axis does not drift but when running arcs both axis drifts?
What if you run:
Code:
M98 P123 L100
M30
O123
G0 X10 Z10
G0 X0 Y0
M99
I was thinking that perhaps the voltage of the step- and/or dir signals are marginal but if that's the case you should've seen the error on single axis moves as well.
Does the VSDEPI buffer the LPT-ports output signals?
Crosstalk, as Tero mentioned, sounds like a possible cause (not very likely but who knows at this point). If the ribbon cable you mentioned is carrying step and direction signals and you're prepared to "sacrifice" that cable try splitting the individual conductors, separating them as much as possible.
However, I think it's more likely to be crosstalk in the DB25 cable. Do you have another one? Preferably a shorter one, perhaps even from another manufacturer.
You say that you've tried to reverse the active low setting for the DIR signal, but have you tried doing it with the step-signal. Having the wrong "polarity" could screw up the timing and make it step the wrong way. However, that too should've showed itself on single axis moves as well.
Interesting problem, I don't claim to have the solution just thinking out loud. Good luck and please keep us posted!
/Henrik.