[Freedos-user] EMM386 gun-smoking with HIMEM /max
Hi, I did extensive testing with HIMEM /max=... to limit the amount of available XMS memory. The biggest value for /max which works for me is 84992, one kilobyte more and ZIP starts to crash (emm386 illegal instruction message, cs:ip at 0:b, ds=f, es=0...). Interesting enough, you can add a bit (less than 5 MB, did not test the exact value) to the limit before Quarterdeck MFT stops to detect the fact that EMS and XMS have a shared memory pool (MFT only looks at XMS 2.0 values, it seems). With this limit, everything works: GCUBE (PMODE/W), ZIP (CWSDPMI), CTSTOAST (with DOS32A), Jazz Jackrabbit (RTM/DPMI16BI), AuGoS (same)... There must be something interesting about it. The memory statistics tell me that I have *exactly* 27 MBytes (27648kB) of EMS free with this limit, and 27717kB of XMS free. Full usage statistics: 84992kB total, 27717kB free XMS, 344kB locked XMS for EMM386 (includes the 96kB SYSTEM handle for UMBs, I assume, and 248kB other stuff), 15000kB for TDSK ramdisk, 3kB for XMSDSK ramdisk, 4096kB for CDR- cache, 7680kB for LBA-cache, 155kB for FreeCOM XMS swap. Tempting to assume that the actual critical limit is in EMS or VCPI, not in XMS, as at this moment exactly 27 MB EMS are free... Eric PS: Even the MFT EMS benchmark starts working at the same limit, even though the shared pool detection keeps working a bit longer, until you have roughly 32 MB XMS and EMS free instead of only 27 MB. --- This SF.Net email is sponsored by: NEC IT Guy Games. Get your fingers limbered up and give it your best shot. 4 great events, 4 opportunities to win big! Highest score wins.NEC IT Guy Games. Play to win an NEC 61 plasma display. Visit http://www.necitguy.com/?r=20 ___ Freedos-user mailing list Freedos-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/freedos-user
Re: [Freedos-user] EMM386 gun-smoking with HIMEM /max
At 08:17 AM 5/1/2005 +0200, Eric Auer wrote: Hi, I did extensive testing with HIMEM /max=... to limit the amount of available XMS memory. The biggest value for /max which works for me is 84992, one kilobyte more and ZIP starts to crash (emm386 illegal instruction message, cs:ip at 0:b, ds=f, es=0...). With this limit, everything works: GCUBE (PMODE/W), ZIP (CWSDPMI), CTSTOAST (with DOS32A), Jazz Jackrabbit (RTM/DPMI16BI), AuGoS (same)... There must be something interesting about it. The memory statistics tell me that I have *exactly* 27 MBytes (27648kB) of EMS free with this limit, and 27717kB of XMS free. Full usage statistics: Could be the sideways nibble that EMM386 does if it doesn't have a full (1.5M * n) pool allocation block from a previous allocation. It tries to eat 32K off an adjacent address free XMS handle and pass it over to the currently used handle to fill out the block. Since that portion of the code was never stress tested -- I never had the proper XMS fragmenting -- the nibble code may have a bug or bugs in it. Have to study on the source, see if anything improper leaps out in that area. If present, hopefully that will address the apparent DOS32A limit on 256M VCPI and let us know if it is really there. Perhaps it's getting confused due to a similar/same bug. Otherwise we have a serious problem with it. --- This SF.Net email is sponsored by: NEC IT Guy Games. Get your fingers limbered up and give it your best shot. 4 great events, 4 opportunities to win big! Highest score wins.NEC IT Guy Games. Play to win an NEC 61 plasma display. Visit http://www.necitguy.com/?r=20 ___ Freedos-user mailing list Freedos-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/freedos-user
Re: [Freedos-user] EMM386 gun-smoking with HIMEM /max
At 02:07 AM 5/1/2005 -0500, I wrote: Could be the sideways nibble that EMM386 does if it doesn't have a full (1.5M * n) pool allocation block from a previous allocation. It tries to eat 32K off an adjacent address free XMS handle and pass it over to the currently used handle to fill out the block. Since that portion of the code was never stress tested -- I never had the proper XMS fragmenting Well, that checked out okay. I'm back to having a fully working system and trying to figure out ways to make it crash. --- This SF.Net email is sponsored by: NEC IT Guy Games. Get your fingers limbered up and give it your best shot. 4 great events, 4 opportunities to win big! Highest score wins.NEC IT Guy Games. Play to win an NEC 61 plasma display. Visit http://www.necitguy.com/?r=20 ___ Freedos-user mailing list Freedos-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/freedos-user