Compatibility: DPMI 1.0+
Expects: AX    0100H
BX    size of allocation, in 16-byte paragraphs
                                                                  
Returns: CF    NC (clear) if successful
else AX = DPMI Error Code
BX = size of largest available block, in 16-byte pares
AX    real-mode segment base address of allocated block
DX    selector for allocated block
                                                                  
Info: This allocates a block of memory from the DOS pool (i.e., memory
below the 1MB mark).  It returns both a real-mode segment address
and a protected-mode selector.

This is typically used by programs which wish to share memory
between a real-mode app and a protected mode app.

BX if this is > 1000H (a request for more than 64K), and if the
caller is in 16-bit mode, then the value returned in DX is
actually a base selector (the first in a series).  Use
INT 31H 0003H to see how much to add to this selector to access
the data above 64K.

Each selector will have a limit of 64K except the last one whose
limit is set to cover the remaining area.

Note: You must not modify the LDT descriptor entry(s) represented by
the returned selector(s).  Use INT 31H 0101H to deallocate or use
INT 31H 0102H to resize.

See Also: DPMI API
- -

INT 31H 0100H: Allocate DOS Memory Block