Himem.sys is the device driver required by Dos to use extended memory (all installed RAM in excess of 1 Mb) including the free memory in the high memory area (HMA).
||The full path. Default is the root directory of the start-up drive (usually C:/).|
The A20 handler controls access to extended memory (including the HMA):
||HIMEM always takes control of the A20 line (Default).|
||HIMEM only takes control of the A20 line if it is off when Himem.sys loads.|
On some computers, HIMEM may change the CPU clock speed.
||Ignores changes (if any) to CPU clock speed arising from loading HIMEM (Default).|
||Prevents HIMEM from changing the CPU clock speed. Including this switch may slow down loading of Himem.sys slightly|
By default, HIMEM will only recognise the first 16 Mb of RAM on EISA computers:
||Specifies that HIMEM should allocate all available extended memory.|
||Specifies that HIMEM should not do EISA scanning for extended memory.|
Only one application can use the High Memory Area (HMA) at one time. By default, HIMEM allocates the HMA to the first program that requests it whatever memory requirements it might have. This switch allows some control over the use of HMA by disqualifying small programs.
||Sets the minimum memory requirements of a program before HIMEM will allocate HMA (if available) for its use.|
||The minimum amount of memory to be requested. m must be in the range 0 to 63 (Default: 0). |
The prime candidate for HMA is Dos as this will free up 43 Kb of conventional memory. However, HMA is not allocated until all device drivers and programs in Config.sys have been loaded. To improve the chances that Dos is loaded into the HMA, include the switch: HMAmin=40
Some older programs use the Interrupt 15h interface to allocate extended memory rather than using the XMS (eXtended-Memory Specification) method provided by HIMEM.
||Allocates extended memory to be reserved for the Interrupt 15h interface.|
||The amount of memory (in Kb) to be reserved for the Interrupt 15h interface.|
64 < xxxx < 65535 (Default: 0). The value specified should be 64K more than the application requires because HMA is allocated from this as well. If xxxx is specified as less than 64, it is taken as 0.
||Specifies not to use INT 15h (ax==E820h), the latest extended memory support API.|
||Specifies not to use INT 15h (ax==E801h) Compaq Bigmem support to scan for extended memory.|
HIMEM needs to have an understanding of the computer hardware on which it is installed in order to take control of the A20 address line. In most cases, HIMEM can automatically detect hardware but sometimes it gets confused and needs help.
||Specifies the computer type.|
|Can be either the "Code" or "Number" to match the Computer Type as in:|
Code Number Computer type
at 1 IBM AT or 100% compatible
ps2 2 IBM PS/2
ptlcascade 3 Phoenix Cascade BIOS
hpvectra 4 HP Vectra (A & A+)
att6300plus 5 AT&T 6300 Plus
acer1100 6 Acer 1100
toshiba 7 Toshiba 1600 & 1200XE
wyse 8 Wyse 12.5 Mhz 286
tulip 9 Tulip SX
zenith 10 Zenith ZBIOS
at1 11 IBM PC/AT (alternative delay)
at2 12 IBM PC/AT (alternative delay)
css 12 CSS Labs
at3 13 IBM PC/AT (alternative delay)
philips 13 Philips
fasthp 14 HP Vectra
ibm7552 15 IBM 7552 Industrial Computer
bullmicral 16 Bull Micral 60
dell 17 Dell XBIOS
When a program requires extended memory, it is allocated a "handle" to a block by HIMEM. Each available handle takes 6 bytes of conventional memory.
||Specifies the number of extended memory handles to be made available.|
||The number of handles. 1 < n < 128 (Default: 32).|
Some computers make ROM code run faster by "shadowing" it in RAM - that is, by copying the ROM code into faster RAM memory at startup. This, of course uses some extended memory. If there is less than 2MB of RAM available, HIMEM will attempt to disable Shadow RAM to make available as much extended memory as possible. It is unlikely that any computer running Dos7 will have less than 2 Mb RAM, so this switch is not particularly relevant
||Disables Shadow RAM if there is less than 2 Mb of total RAM available. (Default).|
||Leaves Shadow RAM on for all machines set up to run it.|
The HIMEM memory test is more thorough than the standard power-up memory test performed by most computers and is able to identify unreliable memory.
||Memory testing is undertaken at startup (Default).|
||Memory testing is not undertaken at startup. This option will slightly speed the startup process.|
Directs HIMEM to display status and error messages while loading. By default, HIMEM does not display any messages unless it encounters an error. As an alternative to using the switch, status messages can be displayed by holding down the Alt key while Himem is loading.