To: djgpp AT sun DOT soe DOT clarkson DOT edu Subject: Re: make/Windows/emu387 Date: Mon, 03 Jan 1994 12:00:27 -0800 From: Darryl Okahata > A current limitation to be aware of: go32 (1.11.maint1 and prior) does not > support emu387 under DPMI. make executes some FP instructions and the > machine will hard crash. Since we're talking about DJGPP make restrictions, I'd like to point out a problem with DPMI: if DJGPP make uses DPMI instead of VCPI, it uses 32-bit DPMI, which means that programs that use 16-bit DPMI cannot be run from make (for some unfathomable reason, you cannot mix the two, or so I am told). It just won't work. In particular, the Borland compilers use DPMI, and can crash/hang the system if 32-bit DPMI make tries to spawn them. Ideally, the 16-bit DPMI program should check to see if it can properly run, but the Borland 3.1 C/C++ compiler (among others, I'm sure) does not check for this. I was told the following technical reason for this (which I'm not sure that I understand): ------------------------------------------------------------------------------- If a 32-bit DPMI client comes up under Windows, Windows'll put 32-bit interrupt gates in the IDT. If a 16-bit client then tries to come up in the same IDT, there would indeed be serious problems. ------------------------------------------------------------------------------- If make uses VCPI, there isn't a problem, as mixing VCPI and 16-bit DPMI appears to work just fine. -- Darryl Okahata Internet: darrylo AT sr DOT hp DOT com DISCLAIMER: this message is the author's personal opinion and does not constitute the support, opinion or policy of Hewlett-Packard or of the little green men that have been following him all day.