Program DetectCPUID; {Test for NON 386 first!!} function has_cpuid: boolean; assembler; asm pushfl pushfl pop eax mov ecx,eax xor eax,$200000 push eax popfl pushfl pop eax popfl xor eax,ecx setnz al end ['eax','ecx']; {Returning al=0 means FALSE} begin writeln('CPUID: ',has_cpuid); end.