Hi,
my recommendation is Mach4. All development on Mach3 ceased six years ago, any bugs or shortcomings that Mach3 has
it will always have.
There is a parallel port motion controller called Darwin ($25 license fee applies) for Mach4. It has limited realtime supports.
It cannot do single point lathe threading for instance. It was designed and written to be a cheap introduction to Mach4
rather than a complete motion control solution.
Mach4 was always intended to be used with an external motion controller. There are a number which have the required Mach4
plugins.
Ethernet SmoothStepper
https://warp9td.com/57CNC
https://www.poscope.com/products/pokeys-devices/87UC100 or UC300
https://www.cncdrive.com/PMDX-424
https://www.pmdx.com/There are three other manufacturers (Vital Systems, CSLabs and Galill) but their boards are all very much more expensive.
Of these I prefer the Ethernet SmoothStepper. At the current time it enjoys a clear advantage over its rivals in realtime supports
including lathe threading, backlash comp, realtime THC, laser vectoring/rastering, Spindle PID plus all the usual limit,
homing, probing supports you would expect of any controller. The cost of the ESS is about $180USD at the time of writing.
Note also that the ESS requires one or more parallel breakout boards which add to the cost. Simple C10s ($23USD) are
flexible and cheap up to a MB03 from CNCRoom ($180USD) for a quality three port sophisticated breakout board.
If budget is really tight consider a UC100, a 57CNCdb25 or a PMDX-411. They are all USB input to one parallel output (db25)
port motion control devices. They have 12 output pins and 5 input pins just like a single parallel port. They do not enjoy
a full suite of realtime supports but are none the less useful. They are all about $120USD. Don't be tempted by the Chinese ripoff
UC100s on EBay or Amazon, they are not real UC100s. While these devices may be attractive in terms of price you will be
very restricted because you have so few inputs.
It used to be the case years ago that everyone had just one parallel port. Many useful machines were built that accommodated
the limited number of inputs.....but these days with decent external motion controllers being reasonably and readily available
with 16+ inputs are the norm. I would have to commend the ESS, UC300, 57CNC or PMDX-424 over these single port devices
simply because they have more IO....you will appreciate it over the longer term despite being more expensive initially.
An example budget might look like this:
ESS $180
C10 (x2) $46
Mach4 $200
Total $426
Craig