The alternative to parallel port operation is an External Motion Controller. There are a number of different External Motion Controllers for you to choose from but, from reports given by others, the Ethernet versions are preferable to the USB versions.
In addition some External Motion Controllers work only with Mach3, some only work with Mach4 whilst others work with both Mach3 and Mach4 - everybody seems to have their own preference.
Perhaps do some research and forum reading to help you decide on which type or make is best for your application.
Tweakie.