Path: utzoo!attcan!uunet!ncrlnk!ncr-sd!hp-sdd!hplabs!sm.unisys.com!randvax!edhall From: edhall@randvax.UUCP (Ed Hall) Newsgroups: comp.sys.intel Subject: Interrupt/Exception Confusion on PC/AT Summary: How do you distinguish a COM1 interrupt from a stack overflow? Keywords: 80286, PC/AT, Interrupts, Protected Mode Message-ID: <385@ives.randvax.UUCP> Date: 1 Nov 88 23:14:29 GMT Organization: Info. Sci. Dept., The RAND Corporation, Santa Monica, CA Lines: 24 I may be missing something obvious, here: When running an 80286 in protected mode (and for some limited cases in real mode) it is possible to generate exceptions with vector numbers between 0x8 and 0xf. Now, on a PC/AT, COM1 is at INT 0xa--which is the INT for a stack overflow. Just how do you tell the two apart? How about LPT2 and a general protection violation? In fact, all of these vectors have some flavor of PC/AT hardware that claims them. Of course, the INTEL 80286 reference says all over it that INT 0x0 to INT 0x1f are ``reserved by INTEL.'' Maybe the folks at IBM can't read... Short of hacking hardware, how do people deal with this problem? Or am I missing something? Do the PC/AT hardware vectors mysteriously move when the 80286 is in protected mode? Or is there some simple way to figure out whether an interrupt is external or some internal exception condition? Thanks for any help or advice you might give me. -Ed Hall edhall@rand.org hplabs!sm.unisys.com!randvax!edhall