Fixing what IRQs you


Tip
You might think that installing an expansion card is easy, especially after hearing all the hype about Windows 95's Plug and Play. Unfortunately, Plug and Play isn't necessarily playing in your neighbourhood -- mostly because PnP-compatible systems and peripherals are still in the minority, and Plug and Play needs both in order to work.
When you install an expansion card, the most likely problem you'll encounter is a hardware interrupt conflict. Every PC has 16 interrupt request lines, or IRQs -- special channels to the CPU used by various devices in your system to get the CPU's attention. Normally when any two devices try to use the same IRQ, either your computer won't boot or the device won't work properly. (There are exceptions: the PCI bus lets more than one device use a single IRQ, and a chain of SCSI devices can use more than one, too.)
So how do you avoid IRQ conflicts? It should take just two steps. First, find out which IRQ is taken by each device in your system. Second, when you install a new device, set it to an IRQ not currently used (by flipping a switch, moving a jumper on the card, or running a utility that comes with the card).
But finding out how your system currently allocates IRQs is not necessarily simple. Microsoft's MSD (which comes with DOS and Windows 3.x) and a number of other diagnostic programs claim to give you accurate IRQ information. And many expansion cards come with a disk-based routine that you run before you install the card to determine the available IRQs. Unfortunately, neither method is particularly reliable.
If you're running DOS or Windows 3.x, the easiest way to determine which IRQs are being used is to check the common IRQ assignments. For other devices in your system, you'll have to consult the manual that came with the device. (Some expansion cards help out with a tiny list of jumper settings printed on the front or back).
Windows 95 users have it easier. Even without Plug and Play devices, you can get a reasonably accurate readout of the IRQs in use. Right-click My Computer, choose Properties, click the Device Manager tab, and double-click the Computer icon for a complete list.
Once you know what's allocated where, how should you assign your new device? Keep in mind the following points:
1. IRQ2 and IRQ9 are actually one IRQ. If you install a device on IRQ2, you can't use IRQ9, and vice versa.
2. Almost all systems allow you to turn off one or more of the COM1, COM2, LPT1, and LPT2 ports using the system setup utility, which frees up the IRQ assigned to that port. By default, all the ports are generally turned on except for LPT2 -- not many people have a second printer.
3. IRQ5 is the most popular assignment for expansion cards. Sound Blaster cards, for example, grab it by default, although you can change the assignment.
4. This leaves IRQs 9 through 12 as the most likely free IRQs, although some systems use IRQ12 for a PS/2-compatible mouse (which takes the place of a serial mouse, freeing up a COM port).
5. SCSI cards generally give you a choice of IRQs 5, 10, 11, and usually a couple of other assignments.
Is it possible to run out of IRQs? Yes, although it's rare.
You might try to get around this in PCI systems (virtually all Pentium PCs). Every PCI card shares the single IRQ that the system assigns to the PCI bus, typically IRQ11, so you might think that you could free up a couple of IRQs by installing more PCI cards and fewer ISA cards. But the graphics card and the hard disk interface typically are already on the PCI bus. And aside from high-priced PCI SCSI cards, few cards come in PCI flavours.
Not many people run up against the IRQ limit, but avoiding conflicts can be a hassle. Do yourself a favour and keep a written record of every IRQ taken by every expansion device in your system.
- Eric Knorr

Category: Hardware
Issue: Nov 1996
Pages: 160

These Web pages are produced by Australian PC World © 1997 IDG Communications