At 08:34 PM 26/08/2001 -0700, you wrote:
The return value of GetVersion16() for win95 changed recently from 0x5f03 to 0x304 in misc/version.c (patch 1.43 -> 1.44). The version of "real"
win95 I use
(Czech, win95 2nd ed) gives 0x5f03 while "wine --winver win95" gives 0x304. As I do not have the US version of win95 I am not able to determine the right value.
I would like to help you and I have a Win95 system around. But I don't have a Win16 compiler as these things are getting quite rare.
I can compile and run 16 bits apps, on win3.1 if needed (it's a pain because it's old hardware I hardly use otherwise)
GetVersion 16 bits must be a special case, returns 3.95, while 32 bits apps get 4.00
Gerard
On Mon, 27 Aug 2001, Gerard Patel wrote: [...]
I can compile and run 16 bits apps, on win3.1 if needed (it's a pain because it's old hardware I hardly use otherwise)
:-)
GetVersion 16 bits must be a special case, returns 3.95, while 32 bits apps get 4.00
Yes, I think I read something about that at the time. IIRC, MS messed up with GetVersion16. They documented HIWORD(GetVersion16()) as returning the major version number when it was in fact in the lower version number or vice-versa. Because of that when they switched to Win95 they wanted the new version number to be greater than the old, no matter how you read it, hence the 3.95: 0x5f03: 3.95 > 3.1 and 95.3 > 1.3 0x0304: 4.3 > 3.1 and 3.4 > 1.3 0x0004: 4.0 would not do since 0.4 < 1.3
Now, why would we have a version with 3.95 and another with 3.4? Is it a Win95 vs Win95 OSR2 issue? Localization should not affect this (though everything is possible).
-- Francois Gouget fgouget@free.fr http://fgouget.free.fr/ I haven't lost my mind, it's backed up on tape around here somewhere...