|
Main
Date: 19 Sep 2006 22:28:09
From: Folkert van Heusden
Subject: xboard protocol ambiguities
|
Hi, I saw that crafty (and others e.g. gnuchess(!)) start moving when received a move after a 'force'. It also seems that icsDrone depends on this behaviour? Now just the get all ambiguities out of the way: - xboard / protover 2 / force / edit / . / e2e4 (or whatever move) does NOT start the clock - xboard / protover 2 / force / white / e2e4 *DOES* start the clock am I right? So 'edit' is a special force-mode? Example GNUChess: [email protected]:/usr/local/games/pos/src/icsDrone$ gnuchess GNU Chess 5.07 Adjusting HashSize to 1024 slots Transposition table: Entries=1K Size=40K Pawn hash table: Entries=0K Size=28K White (1) : xboard White (1) : protover 2 feature setboard=1 analyze=1 ping=1 draw=0 sigint=0 variants="normal" myname="GNU Chess 5.07" done=1 White (1) : force White (1) : white White (1) : e2e4 1. e2e4 1. ... b8c6 Example Crafty: [email protected]:~/pos$ crafty hash table memory = 12M bytes. pawn hash table memory = 3M bytes. show book statistics EGTB access enabled using tbpath=/var/lib/crafty/TB 0 piece tablebase files found parallel threads disabled. Crafty v20.0 (1 cpus) White(1): xboard tellicsnoalias set 1 Crafty v20.0 (1 cpus) tellicsnoalias kibitz Hello from Crafty v20.0! (1 cpus) protover 2 feature ping=1 setboard=1 san=1 time=1 draw=1 feature sigint=0 sigterm=0 reuse=1 analyze=1 feature myname="Crafty-20.0" name=1 feature playother=1 colors=0 feature variants="normal,nocastle" feature done=1 force white e2e4 move c6 Example icsDrone session with freechess.org: Tue Sep 19 19:17:47 GMT+01:00 2006 Pos in xboard mode started Tue Sep 19 19:17:47 GMT+01:00 2006 In: xboard Tue Sep 19 19:17:47 GMT+01:00 2006 In: protover 2 Tue Sep 19 19:17:47 GMT+01:00 2006 In: ics freechess.org Tue Sep 19 19:17:47 GMT+01:00 2006 Opponent is on host: freechess.org Tue Sep 19 19:34:20 GMT+01:00 2006 In: level 0 10 7 Tue Sep 19 19:34:20 GMT+01:00 2006 In: time 66800 Tue Sep 19 19:34:20 GMT+01:00 2006 In: otim 54800 Tue Sep 19 19:34:20 GMT+01:00 2006 In: force Tue Sep 19 19:34:20 GMT+01:00 2006 In: d2d4 Tue Sep 19 19:34:20 GMT+01:00 2006 pos will move: from: D2, to: D4, movetype: REGULAR Tue Sep 19 19:34:20 GMT+01:00 2006 (pos) move g8f6, value: 1.7 ('in:' is what I receive from icsDrone) Could someone enlighten me? Folkert van Heusden
|
|
|
Date: 20 Sep 2006 23:56:08
From: Simon Waters
Subject: Re: xboard protocol ambiguities
|
> Yes. But the documentation says: force - stop clocks, white - stop clocks, > then a move comes in: the documentation does not say that the clocks should > then be started? It is implied because force "sets the engine to play neither colour" But "White" makes "the engine black", thus ending force mode. The move then starts blacks clock, because it is no longer in force mode. It could be written better, but that is the expected behaviour. You shouldn't be writing code that depends on "white" and "black", if you can avoid it (and you probably can).
|
| |
Date: 21 Sep 2006 18:42:13
From: Folkert van Heusden
Subject: Re: xboard protocol ambiguities
|
Hi, Thanks for the reply! >> Yes. But the documentation says: force - stop clocks, white - stop >> clocks, then a move comes in: the documentation does not say that the >> clocks should then be started? > It is implied because force "sets the engine to play neither colour" > But "White" makes "the engine black", thus ending force mode. > The move then starts blacks clock, because it is no longer in force mode. > It could be written better, but that is the expected behaviour. > You shouldn't be writing code that depends on "white" and "black", if you > can avoid it (and you probably can). Probably but I tried to stick so close as possible to the xboard specs as possible to prevent compatibility problems.
|
|
Date: 20 Sep 2006 03:09:19
From: Simon Waters
Subject: Re: xboard protocol ambiguities
|
> White (1) : force > White (1) : white > White (1) : e2e4 > 1. e2e4 > 1. ... b8c6 > force > white > e2e4 > move c6 force works exactly how the documentation says it does. Your examples send "white" which changes who is to play. The use of "white" and "black" are obsolete, and also cause problems for recent versions of GNU Chess when pondering (I'm working on it, but I don't use "white"/"black" at all myself, so it isn't a priority). white (This command is obsolete as of protocol version 2, but is still sent in some situations to accommodate older engines unless you disable it with the feature command.) Set White on move. Set the engine to play Black. Stop clocks.
|
| |
Date: 20 Sep 2006 13:57:58
From: Folkert van Heusden
Subject: Re: xboard protocol ambiguities
|
>> White (1) : force >> White (1) : white >> White (1) : e2e4 >> 1. e2e4 >> 1. ... b8c6 > >> force >> white >> e2e4 >> move c6 > > force works exactly how the documentation says it does. > Your examples send "white" which changes who is to play. Yes. But the documentation says: force - stop clocks, white - stop clocks, then a move comes in: the documentation does not say that the clocks should then be started? > The use of "white" and "black" are obsolete, and also cause problems for > recent versions of GNU Chess when pondering (I'm working on it, but I > don't use "white"/"black" at all myself, so it isn't a priority). > > white > (This command is obsolete as of protocol version 2, but is still sent > in some situations to accommodate older engines unless you disable it > with the feature command.) Set White on move. Set the engine to play > Black. Stop clocks.
|
|