comparison cpudetect.c @ 2280:b318387bfeda

amd fix
author pontscho
date Fri, 19 Oct 2001 13:01:31 +0000
parents c26a9eff0993
children faf96aeb93ef
comparison
equal deleted inserted replaced
2279:9b9c3363abbe 2280:b318387bfeda
89 printf("CPUid available: %s\n",has_cpuid()?"yes":"no"); 89 printf("CPUid available: %s\n",has_cpuid()?"yes":"no");
90 /*if (!has_cpuid()) 90 /*if (!has_cpuid())
91 return;*/ 91 return;*/
92 do_cpuid(0x00000000, regs); 92 do_cpuid(0x00000000, regs);
93 printf("CPU vendor name: %.4s%.4s%.4s\n",&regs[1],&regs[3],&regs[2]); 93 printf("CPU vendor name: %.4s%.4s%.4s\n",&regs[1],&regs[3],&regs[2]);
94 if (regs[0]>0x00000001) { 94 // if (regs[0]>0x00000001)
95 {
95 do_cpuid(0x00000001, regs2); 96 do_cpuid(0x00000001, regs2);
96 printf("CPU family: %d\n",(regs2[0] >> 8)&0xf); 97 printf("CPU family: %d\n",(regs2[0] >> 8)&0xf);
97 switch ((regs2[0] >> 8)&0xf) { 98 switch ((regs2[0] >> 8)&0xf) {
98 case 3: 99 case 3:
99 caps->cpuType=CPUTYPE_I386; 100 caps->cpuType=CPUTYPE_I386;
103 break; 104 break;
104 case 5: 105 case 5:
105 caps->cpuType=CPUTYPE_I586; 106 caps->cpuType=CPUTYPE_I586;
106 break; 107 break;
107 case 6: 108 case 6:
108 caps->cpuType=CPUTYPE_I586; 109 caps->cpuType=CPUTYPE_I686;
109 break; 110 break;
110 default: 111 default:
111 printf("Unknown cpu type, default to i386\n"); 112 printf("Unknown cpu type, default to i386\n");
112 break; 113 break;
113 } 114 }