Page 1 of 1

Windows XP

Posted: 09 Jul 2015, 00:02
by Alundaio
Does anyone have Call of Pripyat installed on an XP system? I have binaries I would like to test.

Re: Windows XP

Posted: 09 Jul 2015, 13:25
by Alundaio
Okay I need someone to try these bins on XP. Note, that this is not access to CoC, I need you to test this on a vanilla install of Call of Pripyat.

XP Bins: ...
VS2013 Redist x86: ... x?id=40784

1. install vs2013 redist x86 if you don't have it already
2. Backup your cop\bins directory
3. place new bins in your cop directory
4. launch the game

If it says "This is not a valid win32 application" please tell me what version of XP you have (ie. SP3)

If it starts up to menu it is a success. You won't be able to play the game because gamedata missing some needed stuff, but it's not needed for the test.

Re: Windows XP

Posted: 10 Jul 2015, 08:26
by ikdoemaarwat
Windows xp sp3 won't run.
not a valid Win32 application

Re: Windows XP

Posted: 10 Jul 2015, 13:43
by Alundaio
Thanks. That's a shame.

Re: Windows XP

Posted: 11 Aug 2017, 19:53
by Modder-G
Copy from my post at Moddb:
Found an unnofficial CoC v1.4.22 Windows XP patch. Works fine so far. I checked out the changes and it is just the version check in the PE header inside xrEngine.exe: Change two bytes in xrEngine.exe at offset 0x170 and 0x178: both from value 06 to 04; the whole package then runs in Windows XP. :) Why did I not find this a week earlier?...

Also works with v1.5Beta-R4.

One limitation: 'Trucks Cemetery' will fail to load lacking memory. Even at the very lowest setting, even with most textures removed from the game.

Re: Windows XP

Posted: 11 Aug 2017, 21:17
by Alundaio
That's a weird fix, considering the real way to get an application to run on XP is to compile it with target version set to v120_xp, and it means everything with it too. I have tried compiling xrEngine.exe with this flag and it never worked on XP.

Re: Windows XP

Posted: 12 Aug 2017, 10:11
by Modder-G
Yes I heard about thes compiler 'target-XP' options. I cannot fully explain the trick but I played CoC 1.3/1.4/1.5 for many hours on XP. I consider it very reliable. The few crashes I have seen where either about lacking memory or were known issues on Windows 7 too.
When the PE header of an executable specifies Windows NT version 6 (=Vista) then it will give the error "not a valid Win32 application" right away on XP. When I change it with an hex editor to 4 or 5 (XP is actually NT5.1 IIRC) it runs fine. You can see it right at the start of each exe and dll right behind the marker 'PE'. But the value in the dlls is ignored, it is the .exe that matters. I tried this trick with CorsixTH too, with the same success. (CorsixTH is a Theme Hospital clone requiring MSVC 2015 runtime libraries)
After hex editing the PE header the header checksum is off, but windows won't complain about it. Just that 'PE explorer' says so, and it can correct the checksum too.

I suppose the few that kling to their XP boxes can find this post and make their own decision.