Date: Tue, 12 Nov 1996 08:42:39 +0200 (IST) From: Eli Zaretskii To: brien oberstein Cc: djgpp AT delorie DOT com Subject: Re: hooking mscdex (int 2f/ah=15) under windows In-Reply-To: <32866ede.3084452@news.earthlink.net> Message-Id: Mime-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII On Mon, 11 Nov 1996, brien oberstein wrote: > i was wondering if someone could elaborate a little on how windows > deals with certain interrupts. Which version of Windows is that? If that's 3.11 or 95, please tell if you have 32-bit File Access enabled. > i'm trying to hook some mscdex > functions (int 2fh, ah=15h). i wrote a 16 bit real mode asm program > to do it, but the interrupts never reach the handler (specifically I > tried looking for ax=1500h). Int 2Fh/AX=1500h is the MSCDEX installation check. How do you know that Windows calls this function? Maybe it has some other ways of knowing that MSCDEX is installed? Can you elaborate about what you are trying to accomplish? Also, how do you install that ``16 bit real mode asm program'' as the handler for Int 2Fh? Can you present a code fragment which does that? > so then i read about how hardware > interrupts are handled in the faq (protected mode handler first, then > if necessary reflected to real mode) and wrote a djgpp protected mode > hook, but it doesn't seem to be reached. This is irrelevant. Int 2Fh is a *software* interrupt, and so is not reflected to PM. You should only use the real-mode interrupt hook. > the conclusion that i've drawn is that windows services a fault on the > (real mode) int 2f/ah=15 request, processes it, and NO interrupt > handler ever gets called! You are jumping to conclusions too fast, IMHO.