Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: UCI versus Winboard

Author: Dann Corbit

Date: 15:33:36 08/21/02

Go up one level in this thread


On August 21, 2002 at 18:23:14, Russell Reagan wrote:

>On August 21, 2002 at 17:57:36, Dann Corbit wrote:
>
>>A Winboard interface is reinvented for each and every chess engine written.
>>Doesn't it seem like we are reinventing the wheel every time?
>
>So what do you think needs to happen? Update the Winboard protocol? Create a new
>protocol which would support Winboard and UCI? Something else?

I think an unambiguous, complete, standardized and improved protocol would be a
great benefit.  Whether this occurs as an upgrade to Winboard, or an upgrade to
UCI, or as a new protocol it would be nice if it could happen.  Probably, an
upgrade to Winboard would be best.  Especially if it had a backwards
compatibility mode.  However, I think the directions that are interesting to me
are not interesting to Tim Mann (EGTB support, Hashing support, Tournament
support, EPD support, etc.).

>IMO Winboard will die out (maybe not for many years) if it is not updated and
>the complaints about it solved. Winboard is like Unix, and if it continues to
>evolve to meet the appropriate needs, it will last like Unix.

This is true for any piece of software, and the reason that 80% of software cost
is maintenance.  If you do not improve you will die.

>What about a protocol that allows configuration by each engine? For example,
>there could be certain "standard" protocol commands, then the engine could
>"create" commands. For example, if the engine author has an anti-human mode, it
>could "add" this to the protocol (maybe by sending a "create" command to the
>GUI), and the GUI could add it to the menu, and the user could select Anti-human
>Mode from the menu, or whatever. Just an idea, might not be a good one.

I am not sure how you can communicate to Winboard how these other commands
should be executed.  Since they are internal, how will Winboard benefit?

Maybe your idea could be used to {for instance} access EGTB tables, but how will
Winboard know that is what it is for and also how the other program can benefit?

Maybe a replaceable driver idea is what you are getting at (e.g. Don't use your
function Egtb_Lookup(board_pos), but instead use mine
Egtb_Lookup_Custom(board_pos) so we can supply our own callbacks if we would
prefer.  Or we might supply a null function if we mean to say "I'll use my own
EGTB lookup thank you!")


>Perhaps if the engine could "create" commands in this way, you could have two
>config files, one for Winboard that "adds" the Winboard commands to the
>protocol, and one for UCI that adds those commands. As long as there were the
>basic support for standard commands, such as making a move, reseting the game,
>etc., the user could add any additional commands he/she would like.
>
>Clearly I think something needs to happen. Thoughts?
>
>Russell



This page took 0 seconds to execute

Last modified: Thu, 15 Apr 21 08:11:13 -0700

Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.