Hi,
no...a USB to parallel converter may be adequate for a printer but it will not work for Mach.
The original Mach uses a 'parallel port' but really its much more than that. The PCs own CPU is pressed into service to create accurately timed
pulse streams to drive steppers/servos. For various reasons a PC CPU is not very good at producing accurately timed pulses, it a real credit to
Art Fennerty that he managed to get it to work as well as it does. In any event the CPU is our 'motion controller' and now it has to communicate
those pulses to each driver simultaneously, so it switches the output pins of a DB25 parallel port on and off, and can do so simultaneously.
USB is a serial communication protocol and so it appends messages front-to-back and sends off chunks. The messages cant arrive simultaneously,
they have to be reassembled. Worse USB send packet every few milliseconds so any sense of accurate timing is absolutely shot. If we use the PC
CPU to create pulse streams we need a 'realtime' communication protocol to signal the drivers. USB wont do, in fact neither will Ethernet despite being
way way faster. There are such realtime communication protocols unfortunately such solutions that exist for X86 Windows PCs are very expensive.
What can and does work is to send 'trajectory' data from Machs Gcode interpreter thru either USB or Ethernet to an external motion controller.
In this case the controller is most likely to be an FPGA, DSP or industrial microcontroller. All these ICs are optimised for generating pulse streams.
Note that the trajectory data can be sent serially, it gets assembled into a buffer table on the controller board. The pulse streams generated by the
controller chip turn output pins on and of simultaneously as is required for the motors to be co-ordinated.
As for your situation you have a couple of choices.
1) Install a PCI or PCIe card with a parallel port and use the PCs CPU as your motion controller.
2) Use an external motion controller, the cheapest and simplest are a UC100, a PMDX-411 or a PoKeys 57cncD25
A parallel port card is likely to be around $20. You may have to do a bit of research...not all parallel port cards are equal. Also because X86 Windows CPUs
aren't the best as motion controllers you will have to accept some limitations on speed, timing accuracy and especially sensitivity to other software running
on your PC.
The external controllers I've mentioned are USB and the output connection is a DB25, you might call it a USB to parallel converter, but they are in fact
way way too clever for that. They are around $100. Speed and timing accuracy is good. You can use either 32 bit or 64 bit OS. These devices all have Mach4
plugins if you want to see what all the fuss is about. There are even better and more capable controllers as well but at greater cost. If you budget allows
it I would recommend an external controller, I have used parallel ports but I wont be going back now!
Craig