• Please review our updated Terms and Rules here

PCI parallel port card / Windows 98

Twospruces

Veteran Member
Joined
Dec 9, 2009
Messages
787
Location
Canada
I am in moderate need of a 2nd LPT port on my Win98 box.
I tried a cheap card off ebay based on the WCH CH351 chip set. While "something" was installed that vaguely resembled an emulated LPT port, I could never make it work. Seems like legacy DOS apps don't like "redirected" I/O ports or something.
(If anyone has gotten this chip to work and can share any suggestions, it would be nice to figure it out. I downloaded and tried drivers from different sources..no luck.)

So, I've decided to look for an older generation card and an looking for suggestions.

The MOSCHIP MCS9805 chipset seems common enough; found on the Startech PCI1PECP card and the Syba SD-PCI-1P. Anyone have any good or bad experiences with this solution?
Seems like Win98 drivers are available.

Thanks for any pointers/comments.
 
Accessing the parallel ports depends on the application. Some applications can access parallel ports at any address whereas some need the ports to be at 0x3BC, 0x378 or 0x278.
Most PCI, PCI-E bus parallel adapters can't assign parallel ports to 0x3BC, 0x378 or 0x278 but some more expensive ones can.
Apparently the German ExSys EX-41021 (which uses an iTE chip) can but I have not tried it.

Depending upon what you want to do with the parallel port, it is possible to redirect DOS LPT to a USB printer port/cable using the NET USE statement.
 
Simply getting an ISA card is not an option?

I think for a PCI parallel port card to work in DOS, the BIOS must actually support that, otherwise it will not be seen at the default address in DOS. It should be working inside a DOS window in Windows 98, however.

What are you need it for? Printer, Laplink, Zip drive..?
 
I want to use Laplink, and use my Willem eprom programmer, without plugging cables. I thought maybe incorrectly that a pci card was a reasonable approach.

No isa slots..

Laplink I think needs to use the motherboard lpt port. The Willem application runs on windows.
 
yes, I was unable to get the willem card to work. maybe I need to invest another handful of hours messing around with it.
or find a
startech PCI1PM - DOS compatible PCI parallel port!
looks like it uses the SUNIX Matrix UL7512EQ - PAR5008D is the Sunix equivalent card.

There are probably more of these types of cards that specifically were able to add a DOS compatible LPT port to a PCI bus.
 
yes, I was unable to get the willem card to work. maybe I need to invest another handful of hours messing around with it.
or find a
startech PCI1PM - DOS compatible PCI parallel port!
looks like it uses the SUNIX Matrix UL7512EQ - PAR5008D is the Sunix equivalent card.

There are probably more of these types of cards that specifically were able to add a DOS compatible LPT port to a PCI bus.
I had a similar problem with my Willem and a cheap PCI card on an XP 32-bit machine and solved it in software - see this post. Your mileage may vary, but I think it is worth a try.
 
found this interesting snip: Win98 cannot remap parallel IO ports..

Q0008: Is it possible to remap the I/O addresses of MCS99xx Parallel/Serial ports to Legacy I/O address values?
A0008: In order to be compatible with some legacy software, some users might need to remap the assigned I/O addresses of MCS99xx Parallel/Serial ports to Legacy (ISA type) I/O address (such as 378h, 3F8h, etc.). It is possible on DOS and Windows 95/98/ME operating systems but impossible on Windows NT/2000/XP/Vista/7/8 operating systems because the Remap I/O Address feature is only supported on DOS and Windows 95/98/ME operating systems but is not supported on Windows NT/2000/XP/Vista/7/8 operating systems. As the newer Windows systems maintain a much tighter control over the I/O devices and prevent any Re-Mapping I/O Address operation at device driver level. When the Re-Mapping I/O Address is not permitted, the device must use the I/O Addresses assigned by the PCIe system at Boot-Up. If the software application expects the Parallel/Serial ports to use Legacy I/O address resources, it will not be possible to make it work with the Parallel/Serial ports of PCIe based devices on Windows NT/2000/XP/Vista/7/8 platforms. On DOS platform, MCS99xx can remap the I/O addresses of the Parallel/Serial ports to desired values by running MCS99xx DOS utility. However, on Windows 95/98/ME platforms, you can only remap the I/O addresses of the Serial ports (but not Parallel port)
 
I had a similar problem with my Willem and a cheap PCI card on an XP 32-bit machine and solved it in software - see this post. Your mileage may vary, but I think it is worth a try.
yes, thanks for posting that. unfortunately, the "replace IO.DLL" to support remapped IO does not work on Win98 in this case. I think in principle it can, just not that IO.DLL since it was set up for 64bit and using tools that only go back to WinXP support, not Win98. So, no luck there.

Hardware remapping PCI card may be needed.
There are several makes; I'll post a short list later.
 
yes, thanks for posting that. unfortunately, the "replace IO.DLL" to support remapped IO does not work on Win98 in this case. I think in principle it can, just not that IO.DLL since it was set up for 64bit and using tools that only go back to WinXP support, not Win98. So, no luck there.

Hardware remapping PCI card may be needed.
There are several makes; I'll post a short list later.
Ahh, well that is unfortunate.

Before I solved the problem on my XP system, I purchased this card ($17 US with shipping) and it claims to offer legacy remapping BUT there are no hardware switches on the board. The mini-CD that came with it has a ton of examples, including numerous chips and some support for 98ME and even DOS. I planned to check it out on my Win-7 machine at some point. I was not able to find any PCI boards available with hardware switching (i.e., port selection on the board). I am interested in your list, just for my own information.

Edited to add: I note that in the download section from the link, it does NOT mention 98. But, in the WIN_ME directory in the included disk, it has two .inf files (2016 date codes). Makes me curious.
 
Last edited:
Yah that's a MOSCHIP based card if you believe the image. 9865 though, not the 9805.
I think based on my earlier post, I cannot expect that card to support remapped io for LPT. It can for COM ports. I did find a used card for 10$ with the 9805, maybe it is worth experimentation.

PCI cards with hardware switches:
Startech PCI1PM (SUNIX Matrix UL7512EQ)
SUNIX PAR5008D (SUNIX Matrix UL7512EQ?), PAR5008R (UL7502AQ)
Koutech IO-PP120 (SUNIX Matrix UL7512EQ)

will keep looking for cards..
 
Last edited:
You could be absolutely correct. I think the chip is some variant, which I guess you identified as the 9865.
20240116_125058.jpg

The CD contains a large number of files, including:
D:\IOC\Win98_ME\ ------- Folders: 0 Files: 3 Size: 41,252 Space: 41,252
R------X C:11/12/2014 21:31 M:11/12/2014 21:31 A:1/1/1601 00:00
2,114 Mt98Mf.inf
R------X C:11/12/2014 21:31 M:11/12/2014 21:31 A:1/1/1601 00:00
2,274 PORTS.INF
R------X C:11/12/2014 21:31 M:11/12/2014 21:31 A:1/1/1601 00:00
36,864 Uninstall.exe
D:\IOC\Win98_ME\ ------- Folders: 0 Files: 3 Size: 41,252 Space: 41,252

BUT, the CD has a ton of files and may have support files for many products - we have all seen that.

It's interesting, but I can't check it out on anything other than XP (which I don't need to do anymore) or Win-7. I searched for those cards - I remember Sunix, but I either could not find any available or what was available was too high priced.
 
Last edited:
.... However, on Windows 95/98/ME platforms, you can only remap the I/O addresses of the Serial ports (but not Parallel port)
If I misunderstand what is meant with "remapping", please forgive me. But in DOS and W98 there is this area starting from 0040:0000 where the address of the COM and LPT ports are stored. The first four words are for the four possible COM ports, the next three for the LPT ports. By changing the addresses by hand, you can change the order of the physical LPT cards. In one occasion I even let AUTOEXEC.BAT do that for me.
I'm not sure on what PC I saw that but I remember a system with a PCI LPT card that showed E000 as address for LPT3. The only system I have with a PCI card is an old ASUS quad core, running W7-32. So if this I/O area is still used by W7, then you have it. I'm not at home right now so I cannot check that.
 
In the case of the Willem, it installs its io.dll and the port addresses are hard-coded there - you select LPT from a drop down and it uses the respective legacy addresses). Hence, the problem, as I understand the situation. See here. I don't have either Win 98 (it's some kind of 16/32 bit??) or a parallel board with bit switch legacy port settings like this one and I don't know how they are doing what they are doing.
 
You could be absolutely correct. I think the chip is some variant, which I guess you identified as the 9865.
View attachment 1271477

The CD contains a large number of files, including:
D:\IOC\Win98_ME\ ------- Folders: 0 Files: 3 Size: 41,252 Space: 41,252
R------X C:11/12/2014 21:31 M:11/12/2014 21:31 A:1/1/1601 00:00
2,114 Mt98Mf.inf
R------X C:11/12/2014 21:31 M:11/12/2014 21:31 A:1/1/1601 00:00
2,274 PORTS.INF
R------X C:11/12/2014 21:31 M:11/12/2014 21:31 A:1/1/1601 00:00
36,864 Uninstall.exe
D:\IOC\Win98_ME\ ------- Folders: 0 Files: 3 Size: 41,252 Space: 41,252

BUT, the CD has a ton of files and may have support files for many products - we have all seen that.

It's interesting, but I can't check it out on anything other than XP (which I don't need to do anymore) or Win-7. I searched for those cards - I remember Sunix, but I either could not find any available or what was available was too high priced.

Would you be able to somehow share the CD contents?
 
Ahh, well that is unfortunate.

Before I solved the problem on my XP system, I purchased this card ($17 US with shipping) and it claims to offer legacy remapping BUT there are no hardware switches on the board. The mini-CD that came with it has a ton of examples, including numerous chips and some support for 98ME and even DOS. I planned to check it out on my Win-7 machine at some point. I was not able to find any PCI boards available with hardware switching (i.e., port selection on the board). I am interested in your list, just for my own information.

Edited to add: I note that in the download section from the link, it does NOT mention 98. But, in the WIN_ME directory in the included disk, it has two .inf files (2016 date codes). Makes me curious.
Found that exact card for a good deal on Amazon. Worth the price to experiment.
I'll report back if I was able to assign legacy ports via software with this MCS9865 chip.
 
I'd like to repeat Timo's question: Why not use an ISA card? No need to redirect if the hardware uses the correct port.

You can likely use any cheap ISA multi-I/O card, just set LPT to 0x278 and disable all other peripherals.
 
I'd like to repeat Timo's question: Why not use an ISA card? No need to redirect if the hardware uses the correct port.

You can likely use any cheap ISA multi-I/O card, just set LPT to 0x278 and disable all other peripherals.
honestly guys, if it was that easy I would have. I don't have an ISA port on the motherboard!
 
Found that exact card for a good deal on Amazon. Worth the price to experiment.
I'll report back if I was able to assign legacy ports via software with this MCS9865 chip.
Seems that my earlier post was not posted...
Update:
I was able to get an old Startech PCI1PECP card with the Moschip MSC9805 chipset.
This installed easily with the startech driver in my Win98 box, and the port came up working on LPT2 no problem!

This addresses my need; adding an LPT port to a Pentium 4 vintage motherboard ASUS P4P-800 Deluxe, via a PCI card.
 
Back
Top