From: Shawn Hargreaves Newsgroups: comp.os.msdos.djgpp Subject: Re: Developing a Game Micro Kernel Date: Wed, 26 Feb 1997 20:33:15 +0000 Organization: None Distribution: world Message-ID: References: <3313599f DOT 29853182 AT 165 DOT 113 DOT 1 DOT 24> NNTP-Posting-Host: talula.demon.co.uk MIME-Version: 1.0 Lines: 34 To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp Robert Hentosh writes: >wondering why some games can run under a DOS shell in Win95 and others >need to reboot the machine into DOS mode. Does just changing the >Timer interrupt enough to cause Windows to goes nuts in some Reprogramming the timer is fine, as long as you do it once and then don't alter it. win95 will allow you to accelerate the timer interrupt, but it doesn't notice the first time you alter it: to be sure it has been accelerated, I have to do a little loop and write the same values to the PIT registers five or six times... If you try to alter the timer speed on the fly, from inside your handler, win95 gets upset: it works, but the changes are delayed by two or three interrupts, and it moans about how your program ought to be run in DOS mode. Apart from that, keyboard and soundcard interrupts seem to work the same as under DOS. The only thing to be aware of is that win95 will preempt your program at odd moments, which can cause timer interrupts to be delayed (under win95, 16 bit driver code isn't interrupted by 32 bit interrupts, no matter how long the driver is taking to do it's stuff) and sometimes makes retrace polling loops miss the fact that a retrace just occured. This tends to make everything far more jerky than under DOS, but there isn't a lot you can do about it... >instances? What things should I avoid? Extended Memory? Expanded >Memory? Why would you want to use these? Horrible things :-) Use djgpp, and all your memory is a flat 32 bit address space allocated with DPMI functions... /* * Shawn Hargreaves - shawn AT talula DOT demon DOT co DOT uk - http://www.talula.demon.co.uk/ * Beauty is a French phonetic corruption of a short cloth neck ornament. */