[comp.sys.ibm.pc.hardware] COM3/IRQ4

sarantos@elan.Princeton.EDU (Sarantos Kapidakis) (02/12/91)

I have a "2 serial port" card and a modem, and I am wondering what is
the best arrangement for the 3 COM ports.  There are programs that
can use COM3, even when DOS does not recognize it.

The fact that COM1 and COM3 (as well as COM2 and COM4) use the same
IRQ (on their standard configuration), means that I will not be able
to use both of them at the same time (like under Windows), right ?

If yes, then what is the use of having COM3 and COM4 ?

Otherwise, under which circumstances can I use both COM1 and COM3 at
the same time ?  Are there drivers that are needed, or specific
programs (not using IRQs, but only I/O addresses, for example) that
can run in both ports concurrently?  Can you name some ?

Which way will utilize my COM ports better ?
If I get many interesting replies, I'll summarize.

thanks

sarantos
sarantos@princeton.edu

david@csource.oz.au (david nugent) (02/13/91)

In <6820@rossignol.Princeton.EDU> sarantos@elan.Princeton.EDU (Sarantos Kapidakis) writes:

> The fact that COM1 and COM3 (as well as COM2 and COM4) use the same
> IRQ (on their standard configuration), means that I will not be able
> to use both of them at the same time (like under Windows), right ?

That depends on both the hardware and software configuration.

Some serial cards are capable of sharing IRQ's.  If you're wonding if yours
does, then refer to the documentation.  If it doesn't mention it, chances
are 99.9999% that the hardware doesn't support it.


> If yes, then what is the use of having COM3 and COM4 ?

Hanging different devices off each port.  You may not be able to use two
devices (on serial ports with the same IRQ) concurrently, but it sure
beats switching cables all the time. :-)



	david

-- 
        Fidonet: 3:632/348   SIGnet: 28:4100/1  Imex: 90:833/387
              Data:  +61-3-885-7864   Voice: +61-3-826-6711
 Internet/ACSnet: david@csource.oz.au    Uucp: ..!uunet!munnari!csource!david

dmarcher@acsu.buffalo.edu (david m archer) (02/15/91)

In article <992@csource.oz.au> david@csource.oz.au (david nugent) writes:
>> If yes, then what is the use of having COM3 and COM4 ?
>
>Hanging different devices off each port.  You may not be able to use two
>devices (on serial ports with the same IRQ) concurrently, but it sure
>beats switching cables all the time. :-)

But I can't even do this much!
 
I have an internal modem at COM3, and it's mere existance
renders my COM1 as unusable, even if COM3 hasn't been
accessed since power-up.   

---
  Dave Archer  |  Internet: V116KZND@UBVMS.CC.BUFFALO.EDU      !
               |            dmarcher@acsu.buffalo.edu
               |    Bitnet: V116KZND@UBVMS

roger@wrq.com (Roger Fulton) (02/16/91)

In article <59904@eerie.acsu.Buffalo.EDU> dmarcher@acsu.buffalo.edu (david m archer) writes:
>In article <992@csource.oz.au> david@csource.oz.au (david nugent) writes:
>>> If yes, then what is the use of having COM3 and COM4 ?
>>
>>Hanging different devices off each port.  You may not be able to use two
>>devices (on serial ports with the same IRQ) concurrently, but it sure
>>beats switching cables all the time. :-)
>
>But I can't even do this much!
> 
>I have an internal modem at COM3, and it's mere existance
>renders my COM1 as unusable, even if COM3 hasn't been
>accessed since power-up.   

Following is an article that I wrote and placed on my company's
BBS.  In the following, "Reflection" refers to our Reflection
Series Software, which is our line of terminal emulation products.

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

        What Are IRQ's, and Why Should I Care About Them?
    
One of the most frequent calls we get in Technical Support goes
something like this: "I've been using Reflection just fine on
COM1, but I added an internal modem on COM3 and now Reflection
can't work with either the modem or my COM1 port.  What's the
problem?"

This is a classic case of what we refer to as "the IRQ conflict
problem."  One aspect of Reflection is that for each serial
device (COM port) Reflection uses, that device must be the only
device in the PC using the IRQ line for which that device is
configured.

"OK, but what's an 'IRQ line'?"  Without getting too technical:
IRQ stands for Interrupt ReQuest.  An IRQ line is a physical,
electrical line in the PC that a device, like a COM port, can
use to signal to the rest of the computer, "Hey, some critical
event (like receipt of an incoming character) just occurred with
me, so you'd better interrupt whatever you're doing now and take
care of me!"
        
In PC and XT class machines, there are eight IRQ lines: IRQ0
through IRQ7.  In AT class machines, there are sixteen IRQ
lines: IRQ0 through IRQ15.  In PC, XT, and AT class machines,
COM1, by definition, uses IRQ4, and COM2, by definition, uses
IRQ3.  Beyond COM2, there are no standards.  However, it is
quite common to have a serial device (such as a serial card or
internal modem) that does COM3 and COM4 use IRQ4 for COM3 and
IRQ3 for COM4.

When two or more devices are configured to use the same IRQ
line, the potential exists for an IRQ conflict to occur.
Consider the following example: a PC contains a serial card
configured for COM1/IRQ4 and an internal modem configured for
COM3/IRQ4.  With this configuration, it is possible that the
modem could interfere with an interrupt request from the serial
card (or vice versa).  The problems one can experience with an
IRQ conflict range from missing characters to a completely
locked up PC.

Reflection is an interrupt driven program.  In designing
Reflection, a decision was made to circumvent any potential IRQ
conflict situations.  This is accomplished by providing default
Datacomm Port configurations in Reflection that can't result in
an IRQ conflict.  Thus, the following Datacomm Port
configurations are possible with Reflection:

COM PORT     IRQ LINE
--------     --------

   1         4
   2         3
   3         10, 5, or 2
   4         11, 5, or 2

So, it is evident that in order to use COM3 and COM4 with
Reflection, you can either use IRQ10 with COM3 and IRQ11 with
COM4 (although cards that do IRQ10 or IRQ11 are quite rare), or
you can use IRQ5 or IRQ2 for either COM3 or COM4.  (Note that
you can't use IRQ10 or IRQ11 on PC or XT class machines, since
they only go up to IRQ7.)

There are other potential sources of IRQ conflicts.  Bus mouse
cards and LAN cards (for example) use IRQ lines, and if they are
configured to use an IRQ line that is the same as the IRQ line
of a COM port that Reflection is trying to use, an IRQ conflict
can occur.

One of the utilities shipped with Reflection is called COMCHECK.
With COMCHECK, it is possible to determine what COM ports are
installed in the PC, as well as whether the COM ports are
configured for the correct IRQ line.  However, COMCHECK can't
always detect a potential IRQ conflict situation.
-- 
Roger Fulton
roger@wrq.com

amichiel@rodan.acs.syr.edu (Allen J Michielsen) (02/16/91)

In article <59904@eerie.acsu.Buffalo.EDU> dmarcher@acsu.buffalo.edu (david m archer) writes:
>In article <992@csource.oz.au> david@csource.oz.au (david nugent) writes:
>>> If yes, then what is the use of having COM3 and COM4 ?
>>
>>Hanging different devices off each port.  You may not be able to use two
>>devices (on serial ports with the same IRQ) concurrently, but it sure
>>beats switching cables all the time. :-)
>
>I have an internal modem at COM3, and it's mere existance
>renders my COM1 as unusable, even if COM3 hasn't been
>accessed since power-up.   

   Cascading interrupts works well, and I do it all the time.  I have
nearly 100 pc's sharing int's concurrently, that work very very well.
However, The selection of your hardware is critical, and generally, you 
get just what you pay for.  The same can be said for some software which
when written poorly crashed randomly....
al



-- 
Al. Michielsen, Mechanical & Aerospace Engineering, Syracuse University
 InterNet: amichiel@rodan.acs.syr.edu  amichiel@sunrise.acs.syr.edu
 Bitnet: AMICHIEL@SUNRISE 

ong@d.cs.okstate.edu (ONG ENG TENG) (02/17/91)

From article <1991Feb16.035711.22145@rodan.acs.syr.edu>, by amichiel@rodan.acs.syr.edu (Allen J Michielsen):
> In article <59904@eerie.acsu.Buffalo.EDU> dmarcher@acsu.buffalo.edu (david m archer) writes:
>>I have an internal modem at COM3, and it's mere existance
>>renders my COM1 as unusable, even if COM3 hasn't been
>>accessed since power-up.   
> 
>    Cascading interrupts works well, and I do it all the time.  I have
> nearly 100 pc's sharing int's concurrently, that work very very well.
> However, The selection of your hardware is critical, and generally, you 
> get just what you pay for.  The same can be said for some software which
> when written poorly crashed randomly....
> al

Please, don't keep us in suspense.  Please list what kind of devices you 
have installed in sharing interrupts.  What card, what brand, what 
combination?  Give us the "beef"!