[AD] [ alleg-Bugs-1586089 ] incorrect cpu_model

[ Thread Index | Date Index | More lists.liballeg.org/allegro-developers Archives ]

Bugs item #1586089, was opened at 2006-10-28 02:30
Message generated for change (Settings changed) made by elias
You can respond by visiting: 

Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: None
>Group: 4.4
Status: Open
Resolution: None
Priority: 5
Private: No
Submitted By: Robert A Lee (wcavonman)
Assigned to: Nobody/Anonymous (nobody)
Summary: incorrect cpu_model

Initial Comment:
It seems to not see a Pentium 4 right on my ststem, 
but knows its a intel, but tells me its a Cyrix model.

THe CPY Family says 15, extended, but the model is 
14, and thats defined as a Cyrix in the system.h file.

I have a P4 2.8GHz Intel CPU


int main(void)
  cout << cpu_vendor << endl;
  if ( cpu_family == CPU_FAMILY_EXTENDED )
    cout << "CPU IS A EXTENDED CPU - TYPE - ";
    if ( cpu_model == CPU_MODEL_PENTIUMIV) { cout 
<< "Intel Pentium 4" << endl; }
    if ( cpu_model == CPU_MODEL_XEON) { cout 
<< "Intel XEON" << endl; }
    if ( cpu_model == CPU_MODEL_OPTERON) { cout 
<< "Intel Opteron" << endl; }
    if ( cpu_model == CPU_MODEL_ATHLON64) { cout 
<< "AMD Athlon 64" << endl; }



Comment By: Evert Glebbeek (eglebbk)
Date: 2006-10-29 07:54

Logged In: YES 

Maybe we could remove the call to _i_is_cyrix? Who is using
one these days?
The same could be said about an i386, but as long as it
doesn't interfere with detection...


Comment By: Robert A Lee (wcavonman)
Date: 2006-10-29 04:05

Logged In: YES 

Ok, I was just mostley worryied that if it was saying its reading
something so... off, 
thier would be a problem with the area I do plan on using, the
cpu_capabilities option in 
my codes, so wanted to make sure before I made a big all out code that
uses that if thier 
was a problem :) thanks for the reply


Comment By: Peter Wang (tjaden)
Date: 2006-10-29 03:16

Logged In: YES 

At a guess, cpu_model is being set in i386/icpu.c due to an
incorrect _i_is_cyrix().  But I don't know anything about
this.  cpu_model is not actually used by Allegro itself, so
it should not make any difference.  I don't know why we
didn't remove cpu_model at the start of the 4.2 branch, it's
clearly a pain to maintain (and IMHO useless).  Unless
someone sends in a patch, I don't think this bug will go
away any time soon.  Sorry.


Comment By: Robert A Lee (wcavonman)
Date: 2006-10-29 02:49

Logged In: YES 

Well, yes I am the same person that reported it in the support chan on
irc, I got the 
version info from the package itself, and turns out was in the wrong area.
I am using 
version 4.2.0, downloaded from the Allegro/SourceForge site, 2 days ago,
stable release, 
win32 binarys.

The first version I used was from a DevPak, and the binaries from the
allegro site have 
the exact same problem. 2 Diffrent version, a DevPak, and a pre-compiled
version from this 
site, both return the same results, I have a Genuine Intel, thats a Cyrix
CPU, yet have 
SSE, MMX, MMX+, ect for supported CPU Capabilities.
Comparing the LIB/DLL/Source from the DevPack and the bins from this site,
thier the same, 
same dates, same file sizes. Its version 4.2.0, plain and simple. I might
be new to this 
allegro software, but im not new to programing. Though still not a expert.
I have created 
several progams with libSDL Package, MultiPlatformed programs and the

I simply posted it as a Possible bug in reading the CPU ID info, since it
says it can read 
the CPU ID, its availible, and the docs say that makes it always correct
with determining 
the info, yet I get the wrong info.

Without the if statements, just cout << cpu_family << endl << cpu_model, I
get 15, 14, so 
its a Extended CPU, and a Cyrix Model according the system.h allegro


Comment By: Peter Wang (tjaden)
Date: 2006-10-28 03:12

Logged In: YES 

Unlikely.  There's no 1.2.3 version, and versions =< 3.9
wouldn't compile with mingw32 anyway.  I suspect the user
just doesn't know what version he's using (perhaps
downloaded a devpak or something?)


Comment By: Jon Rafkind (kazzmir)
Date: 2006-10-28 03:08

Logged In: YES 

I believe this is the same issue as reported on IRC in
#allegro-support. The user was using Allegro 1.2.3 which is
probably the root of the problem.

<MidnightMan> hello, kinda weird thing here, and this is my
first time using allegro
<MidnightMan> I initilized allegro, and did a cpu_family,
and cpu_model, and it says I am on a Cyrix CPU, but it says
I have a genuine intel
<MidnightMan> in reality, I am on a Pentium 4, 2.8GHz, is
this a bug, or what could that be to make it see the wrong
cpu type ?
<MidnightMan> im compiling with Dev-CPP MingW32 compiler, no
other libs or options, just the allegro lib, and its the
source/bins from the allegro site, version 1.2.3
<MidnightMan> any ideas :)
<kazzmir> what version of allegro
<kazzmir> wait, allegro 1.2.3??
<MidnightMan> allegro 1.2.3
<MidnightMan> yes


You can respond by visiting: 

Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/