Hi Adam, perhaps I'm just being obtuse, but I don't see how Dmitry's comment has been addressed for this patch. I'm confused by the commit comment ("Emulate Win9x if appropriate") and the change itself:
/* Win98 returns only the swapsize in ullTotalPageFile/ullAvailPageFile, WinXP returns the size of physical memory + swapsize; - mimic the behavior of XP.
You are removing the part of the comment explaining what the code actually does, which I find confusing. If you're part of the "the code is the documentation" crowd, just remove the entire comment. If not, please add a brief explanation.
Note: Project2k refuses to start if it sees less than 1Mb of free swap. */ - lpmemex->ullTotalPageFile += lpmemex->ullTotalPhys; - lpmemex->ullAvailPageFile += lpmemex->ullAvailPhys; - - /* Titan Quest refuses to run if TotalPageFile <= ullTotalPhys */ - if(lpmemex->ullTotalPageFile == lpmemex->ullTotalPhys) + if (osver.dwMajorVersion >= 5 || osver.dwPlatformId != VER_PLATFORM_WIN32_WINDOWS)
This change is confusing to me. dwPlatformId == VER_PLATFORM_WIN32_NT for NT4, Win2k, XP, etc. dwMajorVersion is never greater than 4 on Windows 9x. In other words, do you mean to exclude NT4 here, or not? If so, then the first check should suffice. If not, then the second check should. But in either case, what does this have to do with being "appropriate" for Win9x emulation? --Juan