VMware Workstation LPT passthrough with PCIe parallel card (MosChip 9710) – does this even work?

Hi,

I’m trying to make a legacy setup work and I suspect I’m hitting a fundamental limitation rather than a configuration issue.

Setup:

Host:

  • Windows 11 Pro x64
  • VMware Workstation 25H2

Hardware:

  • PCIe serial/parallel card (MosChip MCS9901 / VEN_9710&DEV_9912)
  • Provides COM2/COM3 and LPT2

Host side:

  • Drivers installed (WHQL 3.18.x)
  • Device Manager shows “PCIe to Multi Mode Parallel Port (LPT2)” working fine
  • LPT ports visible (LPT1 placeholder + LPT2 from PCIe card)

Guest:

  • Windows XP 32-bit

VM config:

  • Parallel port added in VMware
  • Tried mapping to LPT1 and LPT2
  • Bidirectional mode tested
  • Also tried tweaking the .vmx manually

Problem:

Inside the VM:

  • Printing to LPT does nothing
  • echo test > LPT1 → no output
  • No errors, just no communication at all

The printer is an old Epson EX-1000 which works fine on real legacy hardware.

What makes me suspicious:

It looks like the guest never performs real I/O port access (0x378-style),
so I’m wondering if VMware only supports legacy onboard LPT and not PCIe-based parallel ports that depend on drivers instead of direct I/O.

Questions:

  • Does VMware Workstation actually support physical LPT passthrough on modern Windows hosts?
  • Is it limited to real legacy motherboard ports only?
  • Has anyone successfully used a PCIe parallel card with it?
  • Or is this simply not possible due to how VMware handles parallel ports?

If VMware is a dead end here, I’m open to alternative approaches (KVM, passthrough, dedicated hardware, etc.).

Thanks

Can you confirm the port works in the host? As in: actually print from the host?

Passing ports through like this as opposed to the full pcie device you will need it working on the host side.

If you can’t get it working an alternative may be Linux to drive the pcie csrd and a print queue shared over the network to map as an lpt port inside of windows.

VMware can’t properly passthrough PCIe-based LPT ports—only real motherboard legacy ports work. Just pass the entire PCIe card through directly in VMware or switch to KVM for full hardware passthrough, that’ll fix it.

1 Like

VMware can’t properly passthrough PCIe-based LPT ports—only real motherboard legacy ports work. Just pass the entire PCIe card through directly in VMware or switch to KVM for full hardware passthrough, that’ll fix it.