[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [XBoard-devel] WinBoard installer

From: h.g. muller
Subject: Re: [XBoard-devel] WinBoard installer
Date: Mon, 08 Jun 2009 08:36:01 +0200

At 15:07 7-6-2009 -0600, Eric Mullins wrote:
It is. I have a 95 machine that I keep around for one very old hardware-specific game. But I do test chess software on it from time to time, mostly because I can do so easily-- it's on my home network, so I don't need to use sneaker-net with a floppy. Engines are what bother me the most when it comes to 95 support. They don't make any system calls that 95 doesn't have, but they won't work because they were compiled with Visual Studio 2005 or later. (Its CRT initializes by making calls 95 doesn't have)

Well, if most of the engines won't run on Win95, why should we even bother to make Polyglot run on Win95? It is not on our agenda to make all engines (or even any egines) Win95 compatible. We could not do that anyway, as most engines are closed source.
Anything relating to the affinity option must be stripped. You could leave in the option, and just not make the system call, and that would work, but then you'd have an uci option that doesn't do anything. I basically just conditionally compiled that code depending on a definition: WIN95. I can send you the polyglot source I use, but it's rather customized, but based on 1.4w12 mostly. Except I've converted it to C. It doesn't have any of the book changes by Michel van den Bergh, nor any of his winboard extensions.

So the probem is that the API call SetSystemAffinityMask is not supported in Win95, and is not a no-op there, but actually makes Polyglot crash? The compiler swich does not seem a solution to that, as we are going to distribute a binary package that should work for people that do not have any compiler installed. So we either should disable the option altogether, or we should somehow make Polyglot figure out if it is running on Win95, and suppress the call if it is. I know next to nothing of Windows API. Is there a call to find out which OS you are running on? Or is there some system file whose presence betrays the fact that we run on Win95?

Actually, if I look at the code, the situation is not that bad: people running on Win95 would only crash if thy actually set the affinity option. Which WinBoard would never do when it invokes Polyglot automatically. So the existing Polyglots are usable without problems for th purpose we supply it for, even on Win95. If people are so foolhardy as to try it for other purposes, and try to use the affinity option on Win95.... Well, I would say they bring it pretty much on themselves, whatever happens.


I use the same source for windows and linux, which, btw, is why I am in favor of linking with cygwin1.dll-- that way you run much more code in common. That makes it very easy to keep source that compiles in either OS, and keep out bugs specific to one OS.

reply via email to

[Prev in Thread] Current Thread [Next in Thread]