Article View: alt.msdos.programmer
Article #478Intercepting Interrupt Vectors
From: LMS5
Date: Sat, 14 Apr 1990 16:42
Date: Sat, 14 Apr 1990 16:42
30 lines
1774 bytes
1774 bytes
I am currently working on a TSR that will capture both keystroke and mouse
input. To do this it is nesseccary to intercept both key and mouse
interrupts. According to my Turbo C reference book the getvect() and setvect()
functions are good only for replacing and restoring the ISR address in a DOS
interrupt (21h) function. However, the variables ,for these functions, are
described as interrupt numbers not as functions numbers of the DOS interrupt
number 21h. For example:
setvect(0x28, dos_idle); /* 0x28 is the function of DOS interrupt 21h */
setvect(8, new_int8); /* 8 is also a function of DOS interrupt 21h not
an interrupt itself or is it? */
old_int28 = getvect(0x28); /* 28 is the ISR addr of the DOS function
dos_idle interrupt, function 8 is the DOS
timer interrupt */
Confused yet? So am I. What I need to do is grab the ISR address
of 3 different function under the Mouse Interrupt number of 33h. It appears
as if I will have to write assembler code to do this, but the section in the
Assembler book I am referencing isn't any clearer. Is there anyone out there
that can help me make sense of all this? Fortunately, the professor I am
writing this for is not in any big hurry.
Thanks in Advance,
Laurie M. Salopek
LMS5 at PSUVM
Computer Operator
Pennsylvania State University
Technical Details
Message-ID:
<90104.124233LMS5@psuvm.psu.edu>Path:
arc1-ca.pugleaf.net!utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!wuarchive!psuvax1!psuvm!lms5Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!wuarchive!psuvax1!psuvm!lms5 From: LMS5@psuvm.psu.edu Newsgroups: alt.msdos.programmer,comp.lang.c,comp.sys.ibm.pc Subject: Intercepting Interrupt Vectors Message-ID: <90104.124233LMS5@psuvm.psu.edu> Date: 14 Apr 90 16:42:33 GMT Organization: Penn State University Lines: 30