Mail Archives: djgpp/1999/10/21/23:50:09
On 486DX-4 100 MHz, the program gives:
CPUID level = 1
CPUID value = 480
Regards,
Tanes Sriviroolchai
----- Original Message -----
From: Prashant TR <prashant_tr AT yahoo DOT com>
Newsgroups: comp.os.msdos.djgpp
To: <djgpp AT delorie DOT com>
Sent: Thursday, October 21, 1999 5:59 PM
Subject: HELLO! Anyone with a 486DX4 ?
>
> Hi everyone,
>
> I needed to get some details about the CPU
> information on a 486DX4. I couldn't find one to test
> this. I would be grateful if you guys could send me
> the output of this program to me. People with access
> to any 486s can also send me the reports.
>
> Here it is:
> -----------
> #include <stdio.h>
>
> unsigned idflag()
> {
> register unsigned long eax __asm__("ax");
>
> asm("pushfl;
> popl %eax;
> orl $0x200000, %eax;
> pushl %eax;
> popfl;
> pushfl;
> popl %eax;
> andl $0x200000, %eax;");
>
> return (eax);
> }
>
> unsigned long cpuid(unsigned fn)
> {
> register unsigned long eax __asm__("ax");
>
> eax = fn;
> __asm__("pushl %ebx;
> pushl %ecx;
> pushl %edx;
> cpuid;
> popl %edx;
> popl %ecx;
> popl %ebx");
> return (eax);
> }
>
> int main()
> {
> register int level;
>
> if (!idflag()) {
> printf("Sorry! No CPUID.\n");
> return 0;
> }
>
> printf("CPUID level = %d\n", level = cpuid(0));
> if (level) printf("CPUID value = %lX\n", cpuid(1));
> return 0;
> }
> -----------
>
> Thank in advance.
> If possible, please CC to me as well.
>
> ----
> Prashant TR
> __________________________________________________
> Do You Yahoo!?
> Bid and sell for free at http://auctions.yahoo.com
- Raw text -