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
                                    -♦-