The Interrupt Is Your Friend!
Preventing And Fixing IRQ Conflicts

Anthony Olszewski

An Interrupt Is An Opportunity, Not A Problem

The PC uses 16 interrupts (often abbreviated as IRQ, short for Interrupt ReQuest), numbered from 0 to 15. All of the devices hooked up to the system get the CPUs attention through an interrupt. It's best for each piece of the personal computer that needs an IRQ, to have its OWN unique IRQ. Sometimes you can gamble and get away with two cards, ports, whatever sharing an interrupt. This often does not work. In any case, if two devices try to use an interrupt at the same time, one may not work, both may not work, or the whole system may freeze. As "goodies" get added to a PC, the pool of IRQs shrinks.

Here is a list of the IRQs and common settings:

IRQ 0 System timer interrupt from TIMER-0. No user-definable options.
IRQ 1 Keyboard controller
IRQ 2 Cascade for IRQs 8-15. IRQ 9 cascade to IRQ 2 through a software redirect.
IRQ 3 Available. The standard IRQ for COM 2/COM 4.
IRQ 4 Available. IRQ 4 is the standard for COM 1/COM 3 -- the serial mouse connection. Don't try to have the mouse share an IRQ.
IRQ 5 Available. This is the default IRQ for most sound cards. Network card and LPT 2 are often set to IRQ 5, IF a sound card is not used.
IRQ 6 Floppy Drive controller. No user-definable options.
IRQ 7 Primary parallel (printer) port - LPT 1. If a parallel port is not used, then IRQ 7 can be assigned to another device.
IRQ 8 Real Time Clock. No user-definable options.
IRQ 9 Cascades to IRQ 2.
IRQ 10 Available. If a sound card is using IRQ 5, then this IRQ can be used for a network card.
IRQ 11 Available. Often used for a SCSI controller.
IRQ 12 Available. Often used for the PS2 style mouse.
IRQ 13 Math Coprocessor. No user-definable optinos.
IRQ 14 Primary IDE (hard drive, CD ROM) controller. The 2 IDE devices on the same cable use the one IRQ.
IRQ 15 Secondary IDE channel. Available if the secondary channel is disabled.

IRQ Priorities
IRQ 2/9
IRQ 10
IRQ 11
IRQ 12
IRQ 13
IRQ 14
IRQ 15
This table illustrates how the system handles simultaneous interrupts. The top men in the IRQ setting totem pole get taken care of first!

These defaults usually work fine:
Mouse COM1IRQ 4
Modem COM 2 IRQ 3
Extra Serial COM 4 IRQ 3 (Possible conflict with COM 2)
Sound Card IRQ 5
Printer IRQ 7
Network Card IRQ 10
PS2 Mouse IRQ 12
Primary IDEIRQ 14
Secondary IDE IRQ15

You can squeeze extra interrupts out by disabling everything that you do not use! Disabling COM 2 makes IRQ 3 available. Disabling the secondary IDE channel will let you use IRQ 15 for something else. Disabling a PS2 mouse port releases IRQ 12. To get "good to the last drop," use a SCSI hard drive. You can then disable both IDE channels. This way both IRQs 14 and 15 get their freedom.

COM Ports (short for Communication Ports) are serial interfaces to the system. Each one must have an interrupt. Mice, modems, serial printers, all use COM ports. The system can have up to 4 COM Ports: COM 1, COM 2, COM 3, and COM 4. Systems generally have 2 in use: mouse (usually on COM 1) and modem (Usually on COM 2 or COM 4). Serial ports end in either 9-pin or 25-pin connectors. Adapters are available to convert the 25 pin to the 9.

COM Port Settings
COM Interrupt Address
COM 1 IRQ 4 3f8h
COM 2 IRQ 3 2f8h
COM 3 IRQ 4 3e8h
COM 4 IRQ 3 3f8h

Even though you can install 4 COM ports, traditionally there are only 2 IRQs for them. This way, even with 4 serial devices attached, only 2 can be in use at a time. since the mouse is constantly used, interrupt sharing with the mouse is not possible. That basically leaves COM 1 hogging IRQ 4. COM 2 and COM 4 can be set to IRQ 3 (as long as only one is used at a time. New modems and motherboards often allow a wide range of IRQ settings.

For BBS, or ISP applications, you can get a Multiport Board which can handle from 2 to 128 ports. These are not cheap. For a shoe-horn, you can buy a box that will allow several external devices to use one port - one at a time.

For the standard installation of an internal modem, the easiest thing to do is to disable the COM 2 on the motherboard or the IDE card (for older systems). The Internal modem is then set to COM 2, IRQ 3.

Parallel Port Settings
LPT PortIRQAddress
LPT1 7 378h , 3BCh, or 278h
LPT2 5 278h , 378h
LPT3 available 278h

Formerly PCs only needed 1 Parallel port, since it was only used for the printer. Now with ZIP drives, and digital cameras, a second parallel port is becoming a necessity. Switch boxes, as for the serial, are used to allow several external devices to share one port. But, again, only one at a time.

A large number of shareware programs are available for checking IRQs, COM ports, and other facets of hardware.

I Installed A New Card And Now Nothing Works!

First off, look at the above tables. Is the new device obviously at odds with something else. If the system has got a serial mouse, it's pretty clear that a new modem just ain't gonna buzz on COM 1!

If the situation is not so simple, take out one of the other cards WITH THE POWER OFF, OF COURSE. Don't pull the video card, for then the machine can't do anything. Turn on the system. If the computer comes back to life, you've found the opposition to the new hardware. If the system still won't boot, then remove a different card and try again.

In general, I prefer to try to adjust the settings on the new card.

If after removing just about everything no progress has been made, start to investigate if the new card is just plain defective

The Brave New World

Windows 95

Windows 95 offers a whole new set of tools for examining an dealing with interrupts. Ideally, PnP (Plug and Play) should automate the whole process. Don't bet on it.

Double Click On CONTROL PANEL To Check Out The System
Double Click on the SYSTEM ICON
to Investigate And Change Hardware Settings

DEVICE MANAGER Lists The Hardware Settings. You Can Adjust Them From here, Too.

To Work On The Settings For A Particular Device, Select That Device By Clicking On Its Description And Then Double CLicking On PROPERTIES.
A Yellow Exclamation Point Or A Red X Next To A Device Means That A Problem Is Recognized By WINDOWS 95.
Unfortunately, Often WINDOWS 95 Will Optimistically Say That, "THIS DEVICE IS WORKING PROPERLY" When It Doesn't Work At All!

To Actually Change The Settings, You Can Select Various BASIC CONFIGURATIONS Or, Obviously, CHANGE SETTING. Have A Good Idea What Interrupts, Memory Locations, and DMAs Are Possible For A Given Device. Also, List What Resources Are Being Used Currently By The System. Selecting At Random Not Only Probably Won't Work, But Will Also Knock Something Else Out Of Wack! WINDOWS 95 Will Give You A Seemingly Dire Warning After You Manually Make Any Changes. If You're Confident That You're Right, Go For It. You Can Always Go Back And Change Things Again.

If In DEVICE MANAGER You Select COMPUTER (At The Very Top Of The List) And Then Double Click On PROPERTIES, You Get This Screen. This Is Really The Place To Start Before Installing Any New Hardware.

The ADD NEW HARDWARE ICON In CONTROL PANEL. WINDOWS 95 Attempts To Automate The Allocation Of IRQs And Other System Resources Through PnP.
The ADD NEW HARDWARE Wizard Screen Window

The ADD NEW HARDWARE Search Screen. A YES Tries To Do It Automatically. This Takes A Long Time And Often Does Not Work. By Selecting NO, You'll Have To Tell The System What It Is That You're Installing.

WINDOWS 95's Guesstimate Of What To Do. Unless The Settings Are So Obviously Off As To Make The System Unstable (Which Is Very Rare), Go With The ADD NEW HARDWARE Wizard's Suggestion. You Can Always Go Into DEVICE MANAGER And Make Any Needed Changes Later.

WINDOWS 95 Also Gives Some Help With Resolving Conflicts. Double Click On HELP From The Start Menu.


This Puts You Into The HARDWARE CONFLICT TROUBLESHOOTER Window. Sad To Say, The Feature Is Painfully Lame. It Generally Only Points Out The Obvious. But If You Are Lost, It's As Good As Any Other Place To Start.