INT 67H 4exxH: Get/Set Entire Page Map
Compatibility: EMS 3.2+
Expects: AH 4eH
AL subfn: 00H=Get all mapping registers into ES:DI
01H=Set all mapping registers from data at DS:SI
02H=Swap all mapping registers (01H and 00H combined)
03H=Query size of buffer needed for fns 00H-02H
ES:DI (subfns 00H and 02H) buffer to receive mapping registers
DS:SI (subfns 01H and 02H) buffer containing mapping registers
──────────────────────────────────────────────────────────────────
Returns: AH EMM status (0=successful)
AL (subfn 03H) size, in bytes of buffer for mapping registers
ES:DI (subfn 00H and 02H) buffer contains returned information
──────────────────────────────────────────────────────────────────
Info: This fn is designed to support multi-tasking operating systems in
order to more fully control EMS.
This also provides a way to quickly map all four pages of EMS
memory into the frame in one call. Just use INT 67H 44xxH four
times to map four pages into memory, then use subfn 00H to save
that state. Later, use subfn 01H to restore that state.
ES:DI and DS:SI point to data buffers. Use subfn 03H to see how large
the buffer should be.
The mapping register data contains a variety of hardware-
dependant information; its layout is not documented.
See Also: INT 67H: EMM Services
Extended Memory Specification (XMS)
Interrupts and BIOS Services
-♦-