XMS 01H: Request High Memory Area
Compatibility: XMS 2.0+
Expects: AH 01H
DX Space needed, in bytes (TSRs and drivers)
ffffH (application programs)
──────────────────────────────────────────────────────────────────
Returns: AX status: 0000H = successful
0001H = error and BL=XMS error code (if BL >= 80H)
──────────────────────────────────────────────────────────────────
Info: This fn attempts to reserve the 65520 bytes of the HMA▲ for the
caller. The XMM will reject this request if the value in DX is
less than a certain minimum (i.e., set via HIMEM.SYS /HMAMIN=).
Notes: ■ With DOS 5.0, DOS itself will use the HMA if the line DOS=HIGH
is in the CONFIG.SYS file.
■ Two undocumented services (INT 2fH 4axxH) can be used to
request a suballocation of the HMA if DOS has not used all of
it (there may be as much as 16K free). The DOS 6.2 version of
DoubleSpace will use that space, when available.
■ It is important to be courteous about using the HMA. The HMA
is allocated as a single large block. For instance, if your
TSR will need only 10K of RAM, you should not use the HMA:
leave it available for DOS or a TSR that can use all 64K.
■ Applications which will use the HMA temporarily can pass
DX=ffffH so they can be assured of getting it if it is
available. Be sure to XMS 02H before terminating.
See Also: XMS Functions
INT 2fH 4AxxH
Extended Memory Specification (XMS)
DOS Functions
-♦-