0

I have a legacy Zip 100 drive. Of course it will not run under Windows 11. So, I installed emulated Windows 98 via PCem. I also bought a PCIe parallel port card (AX99100), as USB-to-parallel adapters just work for printers but unfortunately not for Zip drives :( I manually installed the driver for Windows 98. The iomega CD will install some applications to Windows 98 but remains adamant that there is no Zip drive attached (yes, it is plugged in and switched on). The parallel port is set to LPT1.

So, the culprit seems to be the PCIe parallel port card. Did I install the right driver? Do I have to change something in the boot menu? Thanks in advance for your suggestions!

Bernd K
  • 3
  • 1
  • That would be a feature of the emulator to support parallel pass-through. The emulator would need to support using the driver under the OS you are running the emulator. Which is impossible as PCem does not seem to support such a feature. It is possible it even can't be supported, if the parallel port driver does not expose an API making it possible, just like USB parallel ports. Frankly, PCem is not the right emulator for this, and not sure which emulator/VM would allow direct hardware pass-through to a physical parallel port, and the physical port needs to look like original hardware port. – Justme Feb 09 '24 at 21:42
  • QEMU can bind guest ports to host ports, but it still goes through operating-system APIs. – user3840170 Feb 09 '24 at 22:03
  • Would suggest to ask at the support site for the emulator you're using. Rather off topic here, as it's obvious an emulator issue not present on the real machine, which is a prerequisite for questions at RC.SE. – Raffzahn Feb 09 '24 at 22:53
  • @Raffzahn Well, it's the legacy Zip drive that I would get running again. The emulator is just a means to an end. – Bernd K Feb 09 '24 at 23:02
  • @Justme I should specify that I installed the Windows 11 driver under Windows 11 and the Windows 98 driver under emulated Windows 98. Both claim to be working. – Bernd K Feb 09 '24 at 23:07
  • Does the host computer support add-in cards? You may be able to find a direct LPT1: card which would provide a more direct access architecture required by the Zip drive. – fred_dot_u Feb 09 '24 at 23:13
  • 1
    @BerndK No doubt about it. PCem still isn't capable of providing access from to a physical parallel port from inside the emulator. You are asking a question about how to use a modern emulator to do what you want, and it can't do it, and asking support for a modern program (PCem) or modern hardware is not retrocomputing. We cannot know if the card or driver for the card or the OS allows accessing the bits and pins of the parallel port in a level required, or can it simply access printers (or maybe scanners). – Justme Feb 09 '24 at 23:17
  • @Justme Thanks for all the answers! Well, at least I tried. Guess I should look into a genuine Windows 98 PC... – Bernd K Feb 10 '24 at 00:15

1 Answers1

0

Ironically, using an antique computer is often the fastest way to interface with antique hardware; even when a modern computer can be made to work, it will often be slower.

On a PC running DOS or ancient version of windows, software that wants to manipulate the signals on the printer port can do so any time it wants, by loading a couple of registers and executing a single "OUT DX,AL" instruction. If e.g. a printer port is attached to a ZIP drive, nothing will prevent other software from manipulating the printer port bits inappropriately (e.g. because it wrongly believes there's a Lifesize Sound Expander plugged into the printer port, and is trying to feed it audio), but software can drive the port as fast as the device on the other end can handle it.

On a more modern OS, attempts to access I/O devices all have to go through system logic which needs to figure out whether the program which is trying to access the port is allowed to do so. It's possible that improvements in hardware could overcome the orders-of-magnitude speed penalty for validating each and every individual I/O operation, but most operating systems aren't designed to perform tasks 100% "smoothly". If the far end of a connection would take one microsecond to process each byte and indicate that it's ready to do so, a system that can send out a byte each microsecond will be faster than one that would only take 0.1 microseconds to send out most bytes, but would occasionally stall for a millisecond.

supercat
  • 35,993
  • 3
  • 63
  • 159