🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.os.msdos.programmer
Article #7670

Re: interupt vector table

#7670
From: Joe Morris
Date: Fri, 22 Jan 1993 15:29
33 lines
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!jcmorris
References: <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