Download at: http://johnson.tmfc.net/freedos
QHIMEM is a DOS driver that functions as an XMS memory manager. It is a replacement for HIMEM, FDXMS, and other XMS managers, and it is meant to complement the UMBPCI Upper-Memory Manager driver. QHIMEM supports up to 64 Megabytes of XMS memory and is designed in accordance with the V2.0 XMS Specifications. It is not intended to run with more complex drivers like EMM386 or QEMM, which require V3.0 XMS functions. QHIMEM is a smaller and simpler driver that, when used with UMBPCI, can handle memory-management needs for the majority of DOS users. QHIMEM can be used in one of two ways. As a "stand alone" XMS manager it is loaded via the CONFIG.SYS file, always the first system driver to be brought in during a DOS system "boot". It always allocates a "High Memory Area", or HMA, since most users load the DOS "kernel" in the HMA to save space below 640K. The HMA is the first 64K of extended memory at address 000100000h or 1 Megabyte. QHIMEM then allows access to the remaining XMS memory through user requests, that assign portions of XMS memory to "handles" within QHIMEM. Up to 128 "handles" are permitted, with 32 as default. See the /N switch notes in section 4 below. As with all XMS managers, QHIMEM's main task after allocating memory is to perform data "moves" between user programs and XMS. This is done with BIOS calls if the system is in "protected mode" or with a switch to 32-lat mode" when running in "real mode". Both methods are normal and work on all systems. Note that "real mode"/"flat mode" can yield a small improvement in performance v.s. "protected" or "V86" mode (as in EMM386) due to less hardware being involved. Many users prefer the UMBPCI upper-memory driver written by Uwe Sieber, as it takes MUCH less low-memory than EMM386. When used with UMBPCI, QHIMEM can reside in upper-memory with the help of its companion driver QHMBOOT. QHMBOOT is a skeleton XMS manager written to be a DOS "boot" driver. It must be loaded first, to provide "temporary" XMS services for the system, until UMBPCI and the main QHIMEM driver are brought in. QHIMEM is written to "notice" the presence of QHMBOOT, and it will copy over all variables and take-over XMS functions from QHMBOOT. Only an 80-byte "stub" stays in low-memory, so other programs which "hooked" to QHMBOOT can now deal with QHIMEM instead. After QHIMEM takes-over and "disconnects" it, QHMBOOT then "disappears"! This SAVES between 1500 and 2000 bytes of low-memory, so larger DOS programs can be run! Whether loaded low or high, QHIMEM takes 1520 bytes of memory using its default 32 "handles", up to a maximum of 2000 bytes with 128 "handles". QHIMEM also requires an 80386 or better CPU and at least 512K "extended memory". Any system with at least 2 Megabytes of RAM can use QHIMEM. ------------------------------------------------------- This SF.Net email is sponsored by xPML, a groundbreaking scripting language that extends applications into web and mobile media. Attend the live webcast and join the prime developer group breaking into this new coding territory! http://sel.as-us.falkag.net/sel?cmd=lnk&kid=110944&bid=241720&dat=121642 _______________________________________________ Freedos-user mailing list Freedos-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/freedos-user