Xref: news-dnh.mv.net comp.os.msdos.djgpp:178 Newsgroups: comp.os.msdos.djgpp Path: news-dnh.mv.net!mv!news.sprintlink.net!gatech!psinntp!psinntp!psinntp!psinntp!netrixgw.netrix.com!jasmine!ld From: ld AT jasmine DOT netrix DOT com (Long Doan) Subject: Re: [HELP] New int handler messes up fprintf To: gantose AT lerc DOT nasa DOT gov (Dave Gantose) Sender: ld AT jasmine (Long Doan) Organization: Netrix Corporation References: Date: Tue, 6 Jun 1995 19:46:14 GMT Lines: 15 Dj-Gateway: from newsgroup comp.os.msdos.djgpp > In my program, I install a new interrupt handler for the system timer (int 8) > so that I can get 64 ticks per second. After a while, I put the old interrupt > handler back. Later in the program, when I try to fprintf some values, the > program crashes with "Unsupported INT 0x0d". The traceback indicates that the > problem occurred at the fprintf call from my program (_fprintf+103). Is > there something I need to reset, or clear, or watch out for after I have set > and reset the timer interrupt handler? The FAQ kind of alludes to this, but I > didn't understand that part. Instead of using _go32_dpmi_set..._vector () to put the old handler back, try to put back the value of the original entry of the IDT. The code to do that should be similar to the code Ladybug (ftp://oak.oakland.edu/SimTel/msdos/djgpp/ldbg102.zip) uses to install/deinstall the timer interrupt. Long.