Some older software cannot use an arbitrary port address, and you run into serious trouble.
For example, the well-known avrdude
command-line chip programmer.
rundll32
.\inpout32.dll,Info
«.
This interactive debug console will be shown.
Moreover, this DLL can run software under Windows 64 bit which will fail otherwise, even on a true on-board parallel port. For example:
If you don't need address translation on a Windows 64 bit system, the new giveio64 driver (available since May 2015) will solve your problem more convenient and without any speed loss.
Moreover, my inpout32.dll has those benefits:
This program can redirect the port accesses for you, and does it universally for all known cases (DOS Box, Win16, Win32, VxD, other kernel-mode driver) in kernel mode.
The bad news: Currently, this software runs on Windows 3.1 (Enhanced Mode), 3.11, 95, 98, Me, NT 3.51, NT4, 2000. But not on XP and newer. Not on SMP machines. ECP and EPP parallel port extensions are not supported.
This program, written for a completely other purpose, has to be set-up as follows:
It is a 16-bit program, but you won't see that. It's open-source. Look at the nice screenshots below:
This kind of port access redirection is quite fast, so you can run high-speed parallel port devices like JTAG programmers and oscilloscopes, in opposite to the more amazing USB2LPT device.