Using PCI Multiport Cards Under MSDOS

Most new motherboards no longer include ISA slots. As such if you once used ISA multiport or single port serial cards with custom software you developed you may think that you are at an impasse. If that is the case, do not despair

Most non-intelligent multiport cards behave virtually the same as the ISA multiport cards. There is an interrupt request line (IRQ) for the card as well as the base address for the UARTs on the card. Unlike ISA cards, there are generally no jumpers/switches to determine or to set the IRQs and addresses. The PCI architecture allows for auto configuring of PCI cards.

In order to determine the address and IRQ of the PCI serial multiport card, your application must read what is known as the PCI configuration space of the card. While not difficult it can be a bit error prone. We have a utility that can be freely download named PCIFind.exe. The utility requires both the vendor ID and device ID of the serial multiport card whose address you want. Some motherboards will actually display these values at boot time for each PCI card in the computer. Alternatively, you can call the manufacturer to get these two values. Once you are able to determine the address and IRQ of the multiport card, you can program your application as you would any other multiport ISA card.

We have several tools that support PCI multiport cards. Specifically COMM-DRV/Dos and COMM-DRV/Lib provide drivers and libraries to simplify development. We also have a myriad of PCI multiport serial cards of RS232, RS422, RS485 flavors.