We have inherited a legacy application which runs under DOS 6.2 and the Phar-Lap DOS extender (if anyone is old enough to remember that). It also uses up to 6 serial ports (16550) which are expected to exist at fixed port addresses & IRQs. There are still many of these systems in the field but the PCs are starting to fail and finding compatible motherboards is impossible due to the hard-coded IRQs used.
(The software installs interrupt handlers for the COM ports with COM3 to COM6 expected to use port/IRQ combinations of 3E8/10, 280/11, 2A0/12 & 3A8/15. With modern motherboards, this is a problem).
Does anyone know of any virtualization technology which allows you run-up a DOS guest on a host with 6 COM ports whose physical resources are mapped to the guest as above? The display requirement is VGA 640X480 and there is no network requirement.
Qemu (and therefore KVM) lets you define arbitrary serial ports, but it's limited to 4 ports, and doesn't let you specify the interrupts/IO ports. For that you'd have to get to the source code.
Virtualbox allows up to 2 serial ports with irq and i/o port configurations.
http://techtooltip.wordpress.com/2008/09/12/using-host-serial-port-from-guest-in-virtual-box/