Program CPUVendor; {Program to display CPU Vendor} {WARNING: Assumes CPUID supported} Var VEN: string[12]; Begin {Call CPUID} Asm {EAX determines function} mov eax,$0 cpuid mov [VEN],12 {String length} mov [VEN + 1],ebx mov [VEN + 5],edx mov [VEN + 9],ecx {These registers are modified} End ['eax','ebx','ecx','edx']; {Display results} writeln('CPU Vendor: ',VEN); End;