Virtual Devices (3.1) (vdag31qh.hlp) (Table of Contents; Topic list)
Important Notice
The pages on this site contain documentation for very old MS-DOS software, purely for historical purposes. If you're looking for up-to-date documentation, particularly for programming, you should not rely on the information found here, as it will be woefully out of date.
Get_Next_Arena
                                                     Up Next Previous
────────────────────────────────────────────────────────────────────────────
 
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
 
The Get_Next_Arena service returns a pointer to an MS-DOS data structure.
 
Virtual devices must not use this service; it is intended for exclusive use
by the virtual MS-DOS manager.
 
This service has no parameters.
 
Return Value
 
The EAX, ECX, and EDX registers contain the following information:
 
Register  Description
────────────────────────────────────────────────────────────────────────────
EAX       Specifies a data value.
 
ECX       Specifies the high MS-DOS flags. It can be a combination of the
          following 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.
 
EDX       Points to an array of Common_Memory_struc structures specifying
          the addresses and sizes of high MS-DOS memory segments. Each
          element of the list 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
 
          The last element of array contains zero.
 
Uses
 
EAX, ECX, EDX, and Flags
 
                                      ♦