Do not use this service. Attempting to do so may result in unexpected behavior.
<!--include v86mmgr.inc
mov ebx, VMHandle
VxDcall V86MMGR_Get_EMS_XMS_Avail
mov [LargestFreeBlockXMS], eax
mov [AvailableEMS], ecx
mov [TotalEMS], edx
mov [TotalXMS], edi
Gets the current EMS and XMS usage information for a VM. Uses all registers except EBX, EBP, and the segment registers.
EAX | Largest free XMS memory block, in kilobytes. |
ECX | Amount of available EMS memory, in units of 16 K. |
EDX | Total EMS memory size for the VM, in units of 16 K. This value does not take into account the minimum EMS limit for the VM. |
EDI | Total XMS memory size for the VM, in kilobytes. This value does not take into account the minimum XMS limit for the VM. |
To determine the minimum EMS and XMS limits, use the V86MMGR_Get_EMS_XMS_Limits service.
This service is always available for versions of V86MMGR greater than 3.1. For version 3.1, the service may or may not be available. To find out, you can attempt to hook the service using the Hook_Device_Service service. If the hook fails, the service is not available. Otherwise, the service is available, and you should unhook it by calling Hook_Device_Service again. The service is not available for versions prior to 3.1.-->