w8sdz@WSMR-SIMTEL20.ARMY.MIL (Keith Petersen) (03/05/89)
Now available from Simtel20:
Filename Type Bytes CRC
Directory PD1:<MSDOS.SYSUTL>
HIMEM206.ARC BINARY 8770 D46DH
HIMEM206.ARC contains HIMEM.SYS version 2.06, released February 7, 1989.
It also contains HIMEM.TXT, the user documentation for HIMEM.SYS.
HIMEM.SYS is an installable device driver which conforms to the XMS
(eXxtended Memory Specification) Version 2.0. It allows MS-DOS
programs on 80286 and 80386 systems with extended memory to access the
extended memory using a standard, machine independent manner. It also
allows MS-DOS programs to utilize a 64KB region of memory located just
above the 1MB boundary for code and data. Microsoft Windows currently
makes use of this area.
If you have an expanded memory (EMS, not XMS) board, you can usually
configure the board so that some part of the memory is allocated to
extended memory (64K would be optimal), leaving the rest as expanded.
If other extended memory programs are also being loaded which do not
use the XMS interface to manage the extended memory, they should be
configured to leave at least 64KB of extended memory free.
The following problems were found in the previous release of HIMEM.SYS
and have been corrected in this release:
1) When a program would call the XMM HIMEM.SYS to query the amount of
free extended memory, HIMEM would incorrectly report back a value
that is 64KB too large. HIMEM was not properly taking the 64KB High
Memory Area (HMA) into its calculations of the size of free extended
memory, which could cause a program to allocate an EMB on top of the
HMA, causing data to be overwritten. This problem has been fixed in
HIMEM.SYS Version 2.06.
2) When using the command line option NUMHANDLES with the value of 0,
the driver would hang. This problem has been fixed in HIMEM.SYS
Version 2.06.
3) The minor version returned by HIMEM.SYS (the version of the XMM,
as opposed to the version of the XMS the driver is based on), was
incorrectly returning 2.03. It now returns 2.06. This problem has
been fixed in HIMEM.SYS Version 2.06.
4) The HIMEM.SYS source code located in the OEMSRC subdirectory on
the XMS Distribution Diskette will now produce a binary-identical
copy of HIMEM.SYS, which was built using using Microsoft Macro
Assembler (MASM) 5.10. Previous versions of the source code did not
build an exact copy of the distributed copy of HIMEM.SYS. This
problem has been fixed in HIMEM.SYS Version 2.06.
Note that the HIMEM user documentation (HIMEM.TXT) as well as the XMS
programmer documentation (XMS.TXT, included with the XMS distribution
disk) both state that VDISK.SYS is not compatible with HIMEM.SYS.
This is no longer completely true. The VDISK.SYS that is shipped with
IBM PC-DOS 4.00 is compatible with HIMEM.SYS, since it uses a
compatible method of allocating extended memory. This is a
documentation errata, not a change in HIMEM.SYS 2.06.
---
Also available from SIMTEL20:
Filename Type Bytes CRC
Directory PD1:<MSDOS.SYSUTL>
XMS20.ARC BINARY 128841 AD2CH
XMS20.ARC contains the contents of the XMS distribution disk, released
February 7, 1989. However it is not the OFFICIAL XMS distribution disk.
It does contain all of the files that the current XMS release disk does.
The only item which this archive does not contain is the printed version
of the file SPEC\XMS.TXT. In the domestic United States, to obtain the
latest official XMS release disk, call Microsoft customer service at
(800)426-9400 and ask for a copy of the "XMS Specification and it's
supplemental diskette."
This archive, XMS20.ARC, contains the following files:
README.TXT general information: read this file first
HIMEM.SYS the latest xms driver (v2.06) released Feb. 7, 1989
CLIB.ARC: archive of c/masm library code
OEMSRC.ARC: source code for the latest himem.sys driver (v2.06)
SPEC.ARC: archive of xms and himem documentation
TESTS.ARC: archive of c and masm xms test code
Some users may not need all of this programmer-oriented information,
and may instead want to obtain just the latest HIMEM.SYS driver, in
the archive HIMEM206.ARC. This archive contains the latest version
of HIMEM.SYSm 2.06, and the user documentation for this device driver.
However, this is also included in this archive.
The following problems were found in the previous release of HIMEM.SYS
and have been corrected in this release:
1) When a program would call the XMM HIMEM.SYS to query the amount of
free extended memory, HIMEM would incorrectly report back a value
that is 64KB too large. HIMEM was not properly taking the 64KB High
Memory Area (HMA) into its calculations of the size of free extended
memory, which could cause a program to allocate an EMB on top of the
HMA, causing data to be overwritten. This problem has been fixed in
HIMEM.SYS Version 2.06.
2) When using the command line option NUMHANDLES with the value of 0,
the driver would hang. This problem has been fixed in HIMEM.SYS
Version 2.06.
3) The minor version returned by HIMEM.SYS (the version of the XMM,
as opposed to the version of the XMS the driver is based on), was
incorrectly returning 2.03. It now returns 2.06. This problem has
been fixed in HIMEM.SYS Version 2.06.
4) The HIMEM.SYS source code located in the OEMSRC subdirectory on
the XMS Distribution Diskette will now produce a binary-identical
copy of HIMEM.SYS, which was built using using Microsoft Macro
Assembler (MASM) 5.10. Previous versions of the source code did not
build an exact copy of the distributed copy of HIMEM.SYS. This
problem has been fixed in HIMEM.SYS Version 2.06.
Note that the HIMEM user documentation (HIMEM.TXT) as well as the XMS
programmer documentation (XMS.TXT, included with the XMS distribution
disk) both state that VDISK.SYS is not compatible with HIMEM.SYS.
This is no longer completely true. The VDISK.SYS that is shipped with
IBM PC-DOS 4.00 is compatible with HIMEM.SYS, since it uses a
compatible method of allocating extended memory. This is a
documentation errata, not a change in HIMEM.SYS 2.06.
---
Thanks to Lee Fisher of Microsoft for providing these files for the
SIMTEL20 archives.
--Keith Petersen
Maintainer of the CP/M & MSDOS archives at wsmr-simtel20.army.mil [26.0.0.74]
DDN: w8sdz@wsmr-simtel20.army.mil
Uucp: {ames,decwrl,harvard,rutgers,ucbvax,uunet}!wsmr-simtel20.army.mil!w8sdz