Here is an UML diagram of the WinBoard protocol. I've only included the most important states and transitions, but this should be more than enough to start designing an implementation.
The green colored states are sort of "extra" states that I found useful to have in my program: they mean you are still in the "Analyzing" or "Pondering" state but there is nothing to do actually. (For example, I limit analysis depth to 99 plies: after that I enter the "Analysis Complete" state. If you think 99 plies is a lot, try analyzing a mate-in-two position!) I think entering a new state is somewhat better than, say, just spinning and waiting for input.
A description of the WinBoard protocol from the author himself, Tim Mann.
Back to the Computer Chess page.
Copyright (c) 2004 Alessandro Scotti. All rights reserved.