Xref: news2.mv.net comp.os.msdos.djgpp:1255 From: kalzus@[128.122.230.28] (Lance Kalzus) Newsgroups: comp.os.msdos.djgpp Subject: Interrupt trapping Date: 19 Feb 1996 08:04:52 GMT Organization: Pyros Lines: 34 Message-ID: <4g9av4$fa2@cmcl2.NYU.EDU> NNTP-Posting-Host: kim.nr.res.nyu.edu To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp I apologize for this asinine question (but the only truly stupid question is an unasked one, no? :) involving hardware interrupts while running a DJGPPv2 program: My situation is this: I have an application which requires me to trap two hardware interrupts. Unfortunately, one of those hardware interrupts is the system timer itself. I'd like to trap it while my program is running, have it increment a simple counter, and if possible, call the DOS clock handler at an appropriate time (this part isn't strictly necessary, but it _is_ nice to do properly :), and interrupt-return. I tried using the _go32_set_protected_mode_interrupt_vector() call, but I found that it did not give my routine control before the DOS clock routine was called by the DPMI host (is that the program that handles this sort of thing?). Since I had altered the PIC to generate interrupts 100 times a second as opposed to ~18.2/second, the effects on the DOS clock were predictable :) I have two questions: 1] How is a for-real hardware-generated interrupt handled? A protected-mode interrupt? A real-mode interrupt? 2] How do I go about intercepting hardware-generated interrupts in C, making sure that I get them before another program calls the DOS clock routine for me? -- Just another lamer in the soup, Lance Kalzus kalzus@[128.122.230.28]