include vmm.inc
mov ecx, 0 ; must be zero
VMMCall Get_Next_Arena
mov [Data], eax ; data value
mov [Flags], ecx ; high MS-DOS memory flags
mov [Memory], edx ; points to array of Common_Memory_struc
Returns a pointer to an MS-DOS data structure. Uses EAX, ECX, EDX, Flags.
Virtual devices must not use this service; it is intended for exclusive use by the virtual MS-DOS manager.
Register | Description |
---|---|
EAX | Contains a data value. |
ECX | Contains the high MS-DOS flags. For more information, see below. |
EDX | Contains the address of an array of Common_Memory_struc structures. For more information, see below. |
The high MS-DOS flags, returned in the ECX register, can be zero or more of these values:
Value | Meaning |
---|---|
GNA_HiDOSLinked | Set if high MS-DOS arenas were linked in when Windows was started. |
GNA_IsHighDOS | Set if high MS-DOS arenas exist. |
The EDX register contains the address of an array of Common_Memory_Struc structures, each specifying the address and size of a high MS-DOS memory segment. The last element in the array contains zero. The structure has the following form:
Common_Memory_struc struc
CM_seg dw ? ; segment address of start
CM_size dw ? ; size in paragraphs
Common_Memory_struc ends