Processor-Type and -Level

Marcus Meissner marcus at jet.franken.de
Mon Dec 1 13:59:40 CST 2003


On Mon, Dec 01, 2003 at 08:22:49PM +0100, Olaf Leidinger wrote:
> Hello!
> 
> Once I tried to install the win32 version of gimp-1.3.xx-i686 using wine
> and the installer refused to install because gimp was only compiled for
> newer processors. The author told me, that he uses the GetSystemInfo
> function to get the data he needs.
> 
> Running a modified MS-example on wine I get this result:
> 
> Hardware information:
>   OEM ID: 0
>   Number of processors: 1
>   Page size: 4096
>   Processor type: 586
>   Processor Level: 5
>   Processor Revision: 0
>   Minimum application address: 10000
>   Maximum application address: 7fffffff
>   Active processor mask: 1
> 
> 
> /********** end of some source ***********/
> 
> To bring a long story to an end:
> I had a look at cpu.c from dll/kernel directory and I found this part:
> [line 251]
> 	/* FIXME: the two entries below should be computed somehow... */
> 	cachedsi.lpMinimumApplicationAddress	= (void *)0x00010000;
> 	cachedsi.lpMaximumApplicationAddress	= (void *)0x7FFFFFFF;
> 	cachedsi.dwActiveProcessorMask		= 1;
> 	cachedsi.dwNumberOfProcessors		= 1;
> 	cachedsi.dwProcessorType		= PROCESSOR_INTEL_PENTIUM;
> 	cachedsi.dwAllocationGranularity	= 0x10000;
> 	cachedsi.wProcessorLevel		= 5; /* 586 */
> 	cachedsi.wProcessorRevision		= 0;
> 
> So the corresponding values are compiled in. 


> Either we change wProcessorLevel to 6 or get it from the running system.
> I'd prefer the later ;-)
> 
> When I have some free time I could -perhaps- try to fix it  but I've
> never changed something in the wine source. Does anybody have any
> proposals of how to change it in an acceptable manner?

No, if you read further down they are adjusted on Linux depending on /proc/cpuinfo.

However, on i686 it does not change the processor level.

Ciao, Marcus



More information about the wine-devel mailing list