www.delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/1998/08/01/12:30:30

From: michael DOT mauch AT gmx DOT de (Michael Mauch)
Newsgroups: comp.os.msdos.djgpp
Subject: Re: EMM386 limiting memory to 32Mb
Date: Sat, 01 Aug 1998 18:11:02 +0200
Organization: Gerhard-Mercator-Universitaet -GH- Duisburg
Message-ID: <6pvemg$3fu$1@news-hrz.uni-duisburg.de>
References: <m0z1yah-000S4JC AT inti DOT gov DOT ar> <35c266e2 DOT 643439 AT news DOT pacific DOT net DOT sg>
NNTP-Posting-Host: ppp104.uni-duisburg.de
Mime-Version: 1.0
Lines: 44
To: djgpp AT delorie DOT com
DJ-Gateway: from newsgroup comp.os.msdos.djgpp

On Sat, 01 Aug 1998 00:55:40 GMT, fesenko AT pacific DOT net DOT sg (Victor) wrote:

> Could someone please tell me why you want to beat the 32Mb limitation
> of emm386, why not just use himem.sys, which allows for 64Mb of
> extended RAM? Is there any special reason to use emm386?

Without emm386 you don't have UMBs (upper memory blocks) to load drivers
and TSRs into the memory between 640K and 1MB. (You could use
substítutes like Use-UMBs, UMBPCI or UMBT to have UMBs without emm386,
but these are tricky to setup, work only for some chipsets and are not
included with MS-DOS.)

And without emm386 (just himem) you don't have VCPI, and without VCPI
cwsdpmi will give all XMS to DJGPP programs, leaving 0 bytes of XMS for
other programs called from within these DJGPP programs. Start bash or
RHIDE, then call `mem´ and see how much XMS it displays: 0.

And you don't have EMS without emm386, and I've been told some programs
still need EMS.

So we can choose:

HIMEM.SYS alone: >32MB for DJGPP programs, 0 KB XMS for non-DJGPP
programs called from within DJGPP programs, no UMBs, no EMS

EMM386.EXE RAM NOEMS NOVCPI: >32MB for DJGPP programs, 0 KB XMS for
non-DJGPP programs called from within DJGPP programs, UMBs, no EMS

EMM386.EXE RAM NOEMS: <32MB for DJGPP programs, x KB XMS for non-DJGPP
programs called from within DJGPP programs, UMBs, no EMS

EMM386.EXE RAM FRAME=xxxx: <32MB for DJGPP programs, x KB XMS for
non-DJGPP programs called from within DJGPP programs, UMBs (but 64 KB of
them lost for EMS page frame), EMS

Tested with HIMEM.SYS/EMM386 from Win95b/OSR2.5(1214) in plain DOS mode
with cwsdpmi.

With the built-in DPMI server of Win95 (inside DOS windows) and
`EMM386.EXE RAM NOEMS NOVCPI´, I get >32MB for DJGPP programs, x MB XMS
for non-DJGPP programs called from within DJGPP programs, UMBs, no EMS.

Regards...
		Michael

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019