EMM Functions
TECH Help! describes all services supported by the Expanded Memory Manager
version 4.0 and previous versions. 4.0 has been standard since 1987 so
there should be few compatibility problems if you use the 4.0 functions.
To access an EMM function, load AX with a function number, set other
registers as described for the function, and invoke INT 67H. Be sure to
check the return status in AH. A non-zero return value indicates an
error.
AX
▀▀▀▀▀ ─────────────────────────────────────────────── Standard Functions
4000H Get EMM status
4100H Get frame segment address
4200H Get memory total and available
4300H Open handle / allocate pages
44xxH Map memory (swap EMS page into/out of memory)
4500H Close handle / free pages
4600H Get EMM version number
─────────────────────────────────────────────── Advanced Functions
4700H Save mapping context
4800H Restore mapping context
4b00H Count handle's pages
4c00H Count active handles
4d00H Get page info (all handles)
4exxH Get/Set entire page map
4e00H Get all mapping registers into an array at ES:DI
4e01H Set all mapping registers from array at DS:SI
4e02H Get and set mapping registers (SubFns 0 and 1 combined)
4e03H Query size of buffer needed for SubFns 0-2
4fxxH Get/Set partial page map (EMS 4.0).
4f00H Get mapping registers
4f01H Restore mapping
4f02H Query size of buffer needed for SubFn 0.
50xxH Map/Unmap multiple pages (EMS 4.0).
5100H Reallocate (resize) EMS Handle (EMS 4.0).
52xxH Get/Set Handle attribute (EMS 4.0).
5200H Get handle attribute
5201H Set Handle attribute
5202H Query attribute capability
53xxH Get/Set Handle name (EMS 4.0).
5300H Get handle name
5301H Set handle name
54xxH Find Named Handle (EMS 4.0).
5400H Get handle directory
5401H Search for named handle
5401H Count all open handles
55xxH Alter Page Map and Jump (EMS 4.0).
56xxH Alter Page Map and Call (EMS 4.0).
57xxH Move/Exchange Memory (EMS 4.0).
5700H Move memory region
5701H Exchange memory regions
58xxH Get Mappable Physical Address Array (EMS 4.0).
5800H Get segment-to-page map array
5801H Count segment-to-page array entries
─────────────────────────────────────── Operating System Functions
59xxH Get Hardware configuration (EMS 4.0)
5900H Get hardware info
5901H Get unallocated raw page count
5axxH Allocate Standard/Raw Pages (EMS 4.0)
5a00H Allocate standard 16K byte logical pages
5a01H Allocate raw pages
5bxxH Alternate Map Register Set (EMS 4.0)
5b00H Get alternate map register set
5b01H Set alternate map register set
5b02H Get alternate map register set array size
5b03H Allocate alternate map register set
5b04H Deallocate alternate map register set
5b05H Allocate DMA register set
5b06H Enable DMA on alternate map register set
5b07H Disable DMA on alternate map register set
5b08H Deallocate DMA register set
5c00H Prepare for warm boot (EMS 4.0)
5dxxH Enable/Disable OS Function Set Functions (EMS 4.0)
5d00H Enable all OS-only EMM functions
5d01H Disable all OS-only EMM functions
5d02H Return access key (enable next caller to get a key)
See Also: EMS
Extended Memory Specification (XMS)
DOS Interrupts
Interrupts and BIOS Services
-♦-