1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
|
/****************************************************************************
*
* Module Title : CPUIdLib.h
*
* Description : CPU specific definitions.
*
****************************************************************************/
#ifndef __INC_CPUIDLIB_H
#define __INC_CPUIDLIB_H
/****************************************************************************
* Typedefs
****************************************************************************/
typedef enum PROCTYPE
{
X86 = 0, /* 486, Pentium plain, or any other x86 compatible */
PMMX = 1, /* Pentium with MMX */
PPRO = 2, /* Pentium Pro */
PII = 3, /* Pentium II */
C6X86 = 4,
C6X86MX = 5,
AMDK63D = 6,
AMDK6 = 7,
AMDK5 = 8,
MACG3 = 9,
MAC68K = 10,
XMM = 11, /* SIMD instructions */
WMT = 12, /* Willamette Processor */
SpecialProc = -1 /* Will NEVER be returned by CPUID, function dependent meaning */
} PROCTYPE;
/****************************************************************************
* Exports
****************************************************************************/
/****************************************************************************
*
* ROUTINE : findCPUId
*
* INPUTS : None
*
* OUTPUTS : None.
*
* RETURNS : PROCTYPE: processor type.
*
* FUNCTION : Returns type of CPU in your system.
*
* SPECIAL NOTES : None.
*
****************************************************************************/
#ifdef __cplusplus /* this ifdef only works correctly for Microsoft visual C compilers */
extern "C" PROCTYPE findCPUId ( void );
#else
extern PROCTYPE findCPUId ( void );
#endif
#endif
|