How this persists in this form, even in modern PT client builds is another part of my belief that much of what Yedang build clients from is pre-compiled link time binaries which where pooly constructed in the first place from some OS that is very much older than the recommended minimum for modern PT. Photoshop 6 was the first version that wouldn't work on 95 any more and needed SP4 for NT4. Best info I can find on 3DS MAX 3.1 is that 3.x (then Discreet) required DOS... so clearly this binary was built on Windows 98, possibly SE. (to my eye)
But I must point out that it doesn't mean *all* of the PT client was built on such a system, just that one .lib which is linked in by the Visual Studio project / solution they use was. My continuing point is that they should have rebuilt those .lib files by now, and preferably updated the source for them, if they had all the source code to their own program. :lol:
Including generic binaries from Microsoft or even Zlib and such would also be fine, but then you would update the lib from the developer of those libraries. As I've said, some of the coding practices are based on Pre-Win95 standards, much of it looks either like something that was written for Win3.1 and "upgraded" to work on 95, or written by someone used to programming for Win3.1 who was starting to learn Win95 coding style.
Stuff like this suggest that it could even have been someone starting out development around 1996 / 1997 who only had access to binary libraries written for much earlier versions of Windows, and didn't want to recreate similar functionality from scratch. Maybe someone with little or no decent internet access? Dial-up 56kbps only? (full SDKs are very expensive to download, even at local call rate at those speeds)
I would guess that person either passed the license on around 98 / 99 or didn't backup all the source code and suffered a data loss around then. Maybe (and this is my greatest suspicion / fear) they knew there was something embarrassing in parts of it, so they ensured they only passed on binary libraries. :wink:
What-ever, there definitely seem to be parts of the source which where built decades ago by someone less than professional. (eg. Microsoft, Sun, IBM, Borland, Oracle, Cygnus etc. would not build release libraries for SDKs on anything other than NT4, even if they wouldn't work on NT4! If you look at Win9x games, they where usually developed on 9x, for 9x and release builds where made on an NT4 workstation. Exactly to avoid crap such as you have just pointed out. (try reversing Total Annihilation, Diablo, C&C Red Alert etc)
Of course, I'm not talking about low budget or hobby games, and I do remember one mid-range games company complaining, about the time of DX5, that they couldn't develop games on 9x because the debugging and memory management was hosed and couldn't develop on NT4 because DirectX 4 & 5 were broken on NT! XD Actually, you could build on NT4, Visual Studio and the DirectX SDK worked fine. You couldn't test your code though because the latest version of DirectX for NT4 was DirectX 3 up-until DirectX 6. (or, actually, 6a IMS)
Many versions of the DirectX SDK wouldn't compile sizeable projects on MSVC under Win9x (so I heard) because of the broken memory management and the strain their libraries put on that system. So how on earth the Windows Games industry became so successful is anyones' guess. I mean, if you needed a Mac to compile software for Linux...:scared: Then again, the reason most of us where using Windows was so our DOS games still worked. XD And it's always been common for console games to be written and compiled on a real computer. (not just because it's hard to type C on a D-pad) :thumbup: