From: "Michael N. Filippov" Newsgroups: comp.os.msdos.djgpp Subject: Re: Announce: CWSDPMI r5 public beta Date: 24 Oct 2000 15:51:42 GMT Lines: 36 Message-ID: <8t4b6e$1k3v$1@news.itfs.nsk.su> References: <8t1i2c$30hu$1 AT news DOT itfs DOT nsk DOT su> <39f41e9e DOT sandmann AT clio DOT rice DOT edu> NNTP-Posting-Host: idisys.iae.nsk.su X-Trace: news.itfs.nsk.su 972402702 53375 193.124.169.11 (24 Oct 2000 15:51:42 GMT) X-Complaints-To: usenet AT news DOT itfs DOT nsk DOT su NNTP-Posting-Date: 24 Oct 2000 15:51:42 GMT User-Agent: tin/pre-1.4-19990517 ("Psychonaut") (UNIX) (Linux/2.4.0-test1 (i586)) To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp Reply-To: djgpp AT delorie DOT com Charles Sandmann wrote: >> Why not just add parameter "reserved DOS memory", then if (for example) >> 240 of 640 is taken by DOS/TSRs and "reserved DOS memory" == 100 KB >> CWSDPMI would allow to work with 250-300 MB instead of this hardcoded 128. >> It would be a more flexible variant for nested programs too. > There is already such a parameter which is defined when using DOS memory as > DPMI memory. It's currently set for about 64Kb. Eventually I may just > support that value with pagetables, too. But for now I want to make minimum > changes and get it released. VALLOC.C { ... #define SAVEPARA CWSpar.savepar /* If we use DOS memory for paging, amt to save */ ... static int alloc_pagetables(int mintable, int wanttable) { ... geninterrupt(0x21); /* lol == size of largest free memory block */ ... if (lol > wanttable*PAGE2PARA) { /* 8 will probably result in 5 user pt */ if (mem_avail > MINAPPMEM) /* 256K extended */ lol = wanttable*PAGE2PARA; else { if (lol > wanttable*PAGE2PARA+SAVEPARA) lol -= SAVEPARA; /* Reserve extra DOS memory */ mem_avail += (lol >> 8) - wanttable; } } ... } ... } So you say it will be supported for pagetable