The problem with HIMEM and XMSDSK running under a 2G machine has been resolved. XMSDSK uses 1 XMS handler per 64M memory allocated. When there are no more XMS handles, XMSDSK seems to fail checking for a return error code, leading to a crashed PC. This appears to be a design flaw in XMSDSK.
The problem did not occur with later versions of Microsoft HIMEM because Microsoft silently increased the default handles from 32 to 48, while FreeDOS HIMEM continues to use 32 handles. I find no documentation for this increase, even on the Microsoft site. While the error may lie in XMSDSK, this is a sufficiently good reason to increase the HIMEM default handles count and avoid the whole situation. Even at 4G max, the number of handles XMSDSK could need is 64, plus the HIMEM overhead for itself and EMM386 of 2 or 3. Accordingly, I am probably going to increase the default setting of HIMEM XMS handles to 72. There is no difference in memory consumed when changing FreeDOS number of handles, the maximum space is pre-allocated at startup. The only reason not to default to the highest possible setting of 128 is that someone, somewhere, doubtless has written code which depends on the default being less than the maximum, such as allocating until failure in a 128 count loop. Of course, other programs may have similar errors and we can't adjust for every wrong, but this is a fairly painless solution. . ------------------------------------------------------- This SF.Net email is sponsored by: IBM Linux Tutorials Free Linux tutorial presented by Daniel Robbins, President and CEO of GenToo technologies. Learn everything from fundamentals to system administration.http://ads.osdn.com/?ad_id=1470&alloc_id=3638&op=click _______________________________________________ Freedos-devel mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/freedos-devel