From: Stefan Hoffrichter Date: Fri, 30 Jun 1995 15:13:03 +0200 To: djgpp AT sun DOT soe DOT clarkson DOT edu Subject: GO32 XMS vs. EMS usage Cc: havemann AT uran DOT informatik DOT uni-bonn DOT de, dieter AT uran DOT informatik DOT uni-bonn DOT de, schenk AT uran DOT informatik DOT uni-bonn DOT de, mf AT uran DOT informatik DOT uni-bonn DOT de, kusserow AT uran DOT informatik DOT uni-bonn DOT de Hi, DJGPP specialists! Yesterday, Sven Havemann wrote: >> We have a P60 with 32MB RAM, go32m3. If we configure XMS to be 26MB, i. e. >> loading himem but NOT emm386, go32 reports these 26MB as available when >> invoked. But if we execute a binary built with gcc263, it reports "Not >> enough memory to run go32" and pretends to have only 420KB XMS left. - And >> it is not possible to execute go32 any further. - If we configure RAM to be >> EMS (emm386) it runs though I heard it's much slower that way. So is there a >> possibility to make go32 run with this much XMS memory? - My own PC has 8MB, >> and it runs fine with 6MB XMS, never had a problem... I am part of the above "we", and I'd like to give you some further information about the real nature of the problem, so maybe anyone can provide a solution. As Sven pointed out correctly, GO32 crashes when given 26 MB of XMS but no EMS. Art Kagel already suggested this might have something to do with insufficient DOS base memory (below 640K) to run the required three instances of GO32 (gcc, cpp etc., make). However, even if he is right, this does not explain why GO32 refuses to free the allocated XMS memory afterwards. A call to "mem /c" shows absolutely no free XMS memory left, a call to GO32 (without parameters) even states "-4K" (minus!) XMS memory. The real problem therefore seems to be the following: How can I convince GO32 to use XMS memory and to ignore any present EMS memory? The latter will be needed on our system, because without an expanded memory manager like EMM386 there is absolutely no chance of freeing enough DOS base memory. This is due to the fact that any drivers then cannot be loaded high (and we've got a lot of them, for instance an ethernet driver of size 70K). But if there's even a single byte of free EMS memory, GO32 seems to refuse to make use of the remain- ing XMS memory, of which there would be plenty (that is, more than 16MB). Any solution to the problem would be greatly appreciated. Thanks for your interest. Yours, Stefan ------------------------------------------------------------------------------- Stefan Hoffrichter Computer Graphics Dept. of Computer Science, tel: - University of Bonn fax: - Roemerstr. 164, Email: hoffrich AT graphics DOT cs DOT uni-bonn DOT de D-53117 Bonn, Germany/Europe -------------------------------------------------------------------------------