Mail Archives: djgpp/1996/06/26/03:36:05
Xref: | news2.mv.net comp.os.msdos.djgpp:5385
|
Newsgroups: | comp.os.msdos.djgpp
|
From: | tob AT world DOT std DOT com (Tom Breton)
|
Subject: | [Q] How does go32 handle the timer tick (interrupt 0x08)?
|
Message-ID: | <DtLE6z.IKn@world.std.com>
|
Reply-To: | tob AT world DOT std DOT com
|
Organization: | BREnterprises
|
Date: | Wed, 26 Jun 1996 05:35:23 GMT
|
Lines: | 42
|
To: | djgpp AT delorie DOT com
|
DJ-Gateway: | from newsgroup comp.os.msdos.djgpp
|
I have been trying to install a timer interrupt (0x08) handler for a
program under DJGPP/Go32. I've tried a dozen different things and none
worked. No matter what I do, it often crashes, won't deinstall, and
won't co-operate with the keyboard handler. If it's waiting for a
keystroke it loses interrupts.
Can someone please tell me:
How has the timer tick been handled in other apps?
Roughly, what does go32 do with the timer tick? In which source
files would I find this? (Some idea of the function names would
be nice too)
I read the FAQ, of course, but it about says that timer, keyboard and
mouse interrupts will be a problem and recommends looking for a program
I can't find (ladybug debugger) I checked Oakland, the 3 US Simtel
mirrors mentioned, and archie.
I checked out the timer interrupt section in the DJGPP game programming
FAQ, but it crashes and it has some big mistakes anyways.
I checked out the DPMI spec, and tutorials, but there is no mention of
special handling of the timer tick.
I have checked out both programs recommended in the FAQ: sb02 sets
totally different interrupts. If you use it on 0x08 it just dies
(Specifically, it always dies when it calls
_go32_dpmi_set_real_mode_interrupt_vector. No way around that. It also
often (unpredictably) dies after
_go32_dpmi_set_protected_mode_interrupt_vector) I know it's special to
0x08 because the same code has no problem when I tell it to set a
different interrupt (0x50, which doesn't get called AFAIK)
I checked out the go32 source code, but I could find no mention of the
timer interrupt. grep didn't help and it would take forever to puzzle it
out with no idea where to start.
Tom
- Raw text -