Article View: comp.os.msdos.programmer
Article #7670Re: interupt vector table
From: Joe Morris
Date: Fri, 22 Jan 1993 15:29
Date: Fri, 22 Jan 1993 15:29
33 lines
2002 bytes
2002 bytes
rmascaro@uniwa.uwa.edu.au (Robert Mascaro) writes:
>I have a strong interest in writing software interupt handlers. I know
>that dos keeps a table of 1024 bytes from 0:0 which point to the address
>to jump to from servicing the interupt. My question is, I have tryed to
>follow the path (using debug) of interupt 1C (second clock timer), which
>by my calculations should be located at hex 0:70 (4 bytes per address *
>int number). This should contain the offset address of the handler which
>should point to an IRET. It seems to point to nothing. What am I doing
>wrong?? could someone step me through the process in DEBUG.
1. Display the interrupt vectors using DEBUG. If you display the block
starting at 0:0 the 1C vector will be at the left of the bottom line.
On my NEC system the data reads:
0000:0070 53FF 00F0 xxxx xxxx - xxxx xxxx xxxx xxxx
Offset--**** ****--Segment
2. Note the segment and offset values. Both are stored inverted, so the
bytes are exchanged, and represent the location F000:FF53.
3. Display this location (well, I mean "display the location which
is pointed to by 00:70 in *your* system"). If no programs have
linked to the vector, it should be an IRET (0xCF) instruction.
(BTW: Ralf Brown's interrupt list notes that the INT 1C timer tick
exit is *not* available on NEC 9800-series PC's.)
Maybe the question should go to alt.folklore.computers, but can anyone
explain just why so many CPU chips insist on byte inversion when storing
data?
Joe Morris / MITRE
Technical Details
Message-ID:
<jcmorris.727716551@mwunix>Path:
arc1-ca.pugleaf.net!sparky!uunet!olivea!spool.mu.edu!agate!linus!linus.mitre.org!jcmorrisReferences:
<1jni6oINNkjt@uniwa.uwa.edu.au>Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!sparky!uunet!olivea!spool.mu.edu!agate!linus!linus.mitre.org!jcmorris From: jcmorris@mwunix.mitre.org (Joe Morris) Newsgroups: comp.os.msdos.programmer Subject: Re: interupt vector table Message-ID: <jcmorris.727716551@mwunix> Date: 22 Jan 93 15:29:11 GMT References: <1jni6oINNkjt@uniwa.uwa.edu.au> Sender: news@linus.mitre.org (News Service) Organization: The MITRE Corporation Lines: 33 Nntp-Posting-Host: mwunix.mitre.org