Get_Machine_Info

include vmm.inc

VMMCall Get_Machine_Info
mov     [Major], AH     ; MS-DOS major version number
mov     [Minor], AL     ; MS-DOS minor version number
mov     [OEM], BH       ; MS-DOS OEM serial number
mov     [Model], BL     ; machine model byte
shr     EBX, 16         ; machine type flags returned in the
mov     [Type], BX      ;   high-order word of EBX
mov     [SysConf], ECX  ; address of System Config. Parameters
mov     [Equip], EDX    ; equipment flags
 

Returns information about the computer system that Windows is running on. Uses EAX, EBX, ECX, EDX, Flags.

Register Description
AH MS-DOS major version number
AL MS-DOS minor version number
BH MS-DOS OEM serial number
BL Machine model byte (from address F000:FFFE in system ROM)
EBX Machine type flags, in the high-order word. For a list of possible values, see below.
ECX Ring 0 linear address to System Configuration Parameters (as returned from BIOS service Interrupt 15h, AH=C0h). Applies only to PS/2 or computers with extended BIOS. See the PS/2 BIOS documentation for details.
EDX Equipment flags (as returned from Interrupt 11h)

The machine type flags, returned in the high-order word of the EBX register, can include zero or more of these values:

Value Meaning
GMIF_80486 80486 processor or higher
GMIF_PCXT PCXT accelerator
GMIF_MCA Micro Channel
GMIF_EISA EISA
GMIF_CPUID CPUID instruction supported by this processor

The address returned in the ECX register points to a copy of the system configuration parameters because the actual parameters may have been moved into a buffer which is subject to page remapping.

Note  The CPUID instruction is supported by the Intel® Pentium™ processor and other non-Pentium processors. CPU support of the CPUID instruction does not guarantee that the CPU is a Pentium processor.