Obtains an EMM handle and allocates logical pages of expanded memory to be controlled by that handle.
Call with:
AH = 43H
BX = number of pages to allocate (must be nonzero)
Returns:
If function successful
AH = 00H
DX = EMM handle
If function unsuccessful
AH = error code
Notes:
This is the equivalent of a file open function for the expanded memory manager. The handle that is returned is analogous to a file handle and owns a certain number of expanded memory pages. The handle must be used with every subsequent request to map memory and must be released by a close operation before the application terminates.
This function may fail because there are no handles left to allocate or because there is an insufficient number of expanded memory pages to satisfy the request. In the latter case, Int 67H Function 42H can be used to determine the actual number of pages available.
[EMS 4.0] Int 67H Function 51H can be called to change the number of pages allocated to an EMM handle.
[EMS 4.0] The pages allocated by this function are always 16 KB for compatibility with earlier versions of EMS. See also Int 67H Function 5AH Subfunctions 00H and 01H.
[EMS 4.0] Handle 0000H is always available for use by the operating system, and a prior call to this function is not required. The operating system must call Int 67H Function 51H to assign the desired number of pages to its reserved handle.