[comp.sys.ibm.pc] COM1 interrupts

gc0d+@andrew.cmu.edu (Glenn Cadoret) (08/22/89)

I have been trying to write a program for an IBM-AT which will catch
interrupts from COM1.  It is my understanding that three things must be done
to enable this type of interrupt:

1) Bit 7 of 0x3FB must be set low
2) Bits 0-3 of 0x3F9 must be set high
3) Bit 4 of 0x21 must be set low

I do all of these things, but I still don't see an interrupt.  Specifically,
I am interested in the interrupt which is generated when a character comes
into the port.
If anyone could suggest why program is not working, it would be greatly
appreciated.

Many thanks,
Glenn

Replies to: gc0d@andrew.cmu.edu (E-mail)
            (703) 760-1429 (Voice)

franke@rwthinf.UUCP (Christian Franke) (09/06/89)

In article <oYwKauu00WB3IJNEhE@andrew.cmu.edu>, 
	gc0d+@andrew.cmu.edu (Glenn Cadoret) writes:
> I have been trying to write a program for an IBM-AT which will catch
> interrupts from COM1.  It is my understanding that three things must be done
> to enable this type of interrupt:
> 
> 1) Bit 7 of 0x3FB must be set low
> 2) Bits 0-3 of 0x3F9 must be set high
> 3) Bit 4 of 0x21 must be set low
> 
> I do all of these things, but I still don't see an interrupt. [...]

The OUT2 signal (Bit 3) of the Modem Control Register (0x3fc) must be set
also. This is because the OUT2 signal is used to enable the hardware
interrupt line of the IBM compatible serial cards.

For the first tries, you should enable the receiver interrupt only,
because some clone cards seem to have a problem with the generation of
interrupts from multiple sources. 
I mentioned this problem and a workaround in a previous posting
in comp.sys.ibm.pc.

Regards,

	Christian Franke

	Aachen University of Technology
	Lehrstuhl fuer Informatik I
	Ahornstrasse 55
	D-5100 Aachen
	Federal Republic of Germany
	Tel.: 0241 / 80-3586

	UUCP: franke@rwthinf.uucp ({...mcvax}!unido!rwthinf!franke)