Page 1 of 1
Detecting a 486+ processor in real mode?
Posted: Fri Mar 21, 2003 6:57 pm
by Perica
..
Re:Detecting a 486+ Processor in RealMode?
Posted: Sat Mar 22, 2003 6:06 am
by Peter_Vigren
You can check if the processor is at least a 286, remap int 6 and then use an 486+ opcode. If the processor is just an 386, it will issue the invalid opcode exception (int 6).
Re:Detecting a 486+ Processor in RealMode?
Posted: Sat Mar 22, 2003 9:27 am
by RicoSanchez
Besides that the IA-32 manual discusses how to identify 8086, 286 and 386+ processors, it also discusses how to identify between 386 and 486+, and between 486 without CPUID and 486+ with CPUID. Here's a quote from the IA-32 Intel? Architecture Software Developer's manual, Volume 1: Basic Architecture, Chapter 13, paragraph 2:
Other EFLAG register bits that can be used to differentiate between the 32-bit processors:
? Bit 18 (AC) ? Implemented only on the Pentium 4, Intel Xeon, P6 family, Pentium, and
Intel486 processors. The inability to set or clear this bit distinguishes an Intel386 processor
from the later IA-32 processors.
? Bit 21 (ID) ? Determines if the processor is able to execute the CPUID instruction. The
ability to set and clear this bit indicates that it is a Pentium 4, Intel Xeon, P6 family,
Pentium, or later- version Intel486 processor.
Have fun!