WinBoard_F now has Chess960 support

Discussions about Winboard/Xboard. News about engines or programs to use with these GUIs (e.g. tournament managers or adapters) belong in this sub forum.

Moderator: Andres Valverde

WinBoard_F now has Chess960 support

Postby H.G.Muller » 18 Jan 2008, 16:56

For those who want to hunt bugs, you can download the executable from

http://home.hccnet.nl/h.g.muller/alpha.tst

Rename it to winboard.exe. You can select FRC from the "new variant ..." menu. It seemed to work, engine-engine as well as Human-engine. (Don't forget to save the debug files!)
User avatar
H.G.Muller
 
Posts: 3453
Joined: 16 Nov 2005, 12:02
Location: Diemen, NL

Re: WinBoard_F now has Chess960 support

Postby Guenther Simon » 18 Jan 2008, 18:26

H.G.Muller wrote:For those who want to hunt bugs, you can download the executable from

http://home.hccnet.nl/h.g.muller/alpha.tst

Rename it to winboard.exe. You can select FRC from the "new variant ..." menu. It seemed to work, engine-engine as well as Human-engine. (Don't forget to save the debug files!)


Hello HG,

Just a quick question. Does the new version also fix the bug I mentioned
to you about not/wrong giving of time for the 40th/80th etc. move
in regarding time controls with moves/time?

Regards,
Guenther
User avatar
Guenther Simon
 
Posts: 794
Joined: 26 Sep 2004, 19:49
Location: Regensburg, Germany

Re: WinBoard_F now has Chess960 support

Postby H.G.Muller » 18 Jan 2008, 19:19

No, not yet. I want to overhaul the time-control code anyway, and I postpone ficing the bug till after that.

WinBoard_x already supported time-odds games, where you could write things like 5/2:30 in the time field to give white 5 minutes, and black 2:30. (The time was a string anyway, because of the colon.) I would like to extend that (and change the syntax a little) to allow things like:

40|20 (40 min vs 20 min time odds)
60+40/25 (60 min, andafter that, 40 moves per 25 min repeating)
60|30+40/25|12:30 (60 min followed by 40 moves per 25 min (W) vs 30' + 40m/12.5min (B))
60+40/25+0/5 (60 min followed by 40/25 min and then 5 min for the rest of the game)

The number of moves for the first time-control session already has a separate (numeric) input field (or command-line option), as does the increment (which will be only applied during a 'rest-of-the-game' session). How exactly I have to compensate the time for moves straddling sessions will depend on how I implement that.
User avatar
H.G.Muller
 
Posts: 3453
Joined: 16 Nov 2005, 12:02
Location: Diemen, NL

Re: WinBoard_F now has Chess960 support

Postby H.G.Muller » 18 Jan 2008, 20:02

I already fixed a bug that I discovered myself (it could long-castle through check on the square left of the King). Make sure you use an executable that you downloaded after I posted this message!
User avatar
H.G.Muller
 
Posts: 3453
Joined: 16 Nov 2005, 12:02
Location: Diemen, NL

Re: WinBoard_F now has Chess960 support

Postby PulsarMike » 18 Jan 2008, 20:27

Hi,

I've been waiting to submit chess960 bugs tell shatranj was finished, it may be, i got in to late last night to test, i cant test at work unfortunately, connection to icc is turened off only web pages.

I noticed two issues with winboard_x have not tried f but assume it inherits a lot of code. One is castle moves are sent as O-O O-O-O in home play but as 8 different types of moves like d1g1 etc for icc play. The king typically isnt on the square that the move indicates he is on and you have to check when you get one of these moves if its a legal move for anotehr piece first.

This isnt so bad but adjourned game support is broken. I tried to resume a game and got a could not parst move from ics error when ics loaded the moves of the adjourned game.

Mike
User avatar
PulsarMike
 
Posts: 83
Joined: 27 Nov 2007, 00:01
Location: California

Re: WinBoard_F now has Chess960 support

Postby Pedro Castro » 18 Jan 2008, 22:12

Hi H.G.,

I have a problem with setboard command.

Instead, setboard rbnqnkbr/pppppppp/8/8/8/8/PPPPPPPP/RBNQNKBR w HAha - 0 1

I hope to receive, setboard rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w KQkq - 0 1

All engines compatible with Chess960 and Arena receive this.


Code: Select all
recognized 'fischerandom' (-1) as variant fischerandom
WinBoard 4.3.13 + danasah341frcpgo
Reset(1, 0) from gameMode 0
recognized 'fischerandom' (-1) as variant fischerandom
GameEnds(0, (null), 2)
GameEnds(0, (null), 2) clock stopped
GameEnds(0, (null), 2) after test
StartChildProcess (dir="") danasah341frcpgo
656 >first : xboard
protover 2
672 <first : DanaSah v.3.41 FRC, web: http://danasah.tk
672 <first : 06/11/2007, Pedro Castro, Spain
672 <first :
672 <first : DanaSah only supports the winboard interface.
672 <first : Type command quit to exit
672 <first :
672 <first : Ini file danasah.ini found.
672 <first : ownbook off
672 <first : Table hash size 128 Mb.
687 <first : Eval cache size 16 Mb.
687 <first : Bitbases path: ./egbb/
687 <first : Bitbases men: 4
687 <first : Bitbases cache size: 4
687 <first : Kibitz off
687 <first : danasah> feature done=0
687 <first : EgbbProbe 3.1 by Daniel Shawul
687 <first : Cache Size = 4 Mb (517 entries)
1140 <first : Loading egbbs....
1140 <first : feature sigint=0 sigterm=0 setboard=1 draw=0 colors=0 myname="DanaSah v.3.41 FRC"
1140 >first : accepted sigint
1140 >first : accepted sigterm
1140 >first : accepted setboard
1140 >first : accepted draw
1140 >first : accepted colors
1140 >first : accepted myname
1140 <first : feature done=1
1140 >first : accepted done
1156 >first : new
random
1156 >first : variant fischerandom
write FEN 50-move: 0 0 0
e0. p=-4
1156 >first : setboard rbnqnkbr/pppppppp/8/8/8/8/PPPPPPPP/RBNQNKBR w HAha - 0 1
1156 >first : level 0 5 0
1156 >first : post
1156 >first : hard
1156 >first : easy
release
Legality test? c1b3
Legality test: c1b3
Legality test: c1d3
Legality test: e1d3
Legality test: e1f3
Legality test: a2a3
Legality test: a2a4
Legality test: b2b3
Legality test: b2b4
Legality test: c2c3
Legality test: c2c4
Legality test: d2d3
Legality test: d2d4
Legality test: e2e3
Legality test: e2e4
Legality test: f2f3
Legality test: f2f4
Legality test: g2g3
Legality test: g2g4
Legality test: h2h3
Legality test: h2h4
FRC castling, 7 0 5 7 0 5
CoordsToAlgebraic, piece=1
FRC castling, 7 0 5 7 0 5
move: c1b3
, parse: Nb3 (
)
7125 >first : time 30000
7125 >first : otim 30000
7125 >first : c1b3
GameEnds(0, (null), 2)
GameEnds(0, (null), 2) clock stopped
GameEnds(0, (null), 2) after test
20828 >first : force
20828 >first : quit

Best wishes,

Pedro Castro
User avatar
Pedro Castro
 
Posts: 180
Joined: 28 Jan 2005, 01:09
Location: Pays Basque (Spain)

Re: WinBoard_F now has Chess960 support

Postby Pedro Castro » 19 Jan 2008, 00:58

Hello again,

I am trying to make DanaSah to play in Winboard FRC. I added quotes at the command variant as you indicated in another message.

I have changed the function setboard at the beginning of a game for having full rights of castling, as I have suggested in another forum for compatibility with all engines with protocol xboard playing in Arena FRC, I will send to these engines in the setboard command "KQkq".

After doing this, I have a small problem when playing as a human and engine with Black. After the commands "time" and "otime", the engine does not start (if it does well in the normal variants)

Code: Select all
recognized 'fischerandom' (-1) as variant fischerandom
WinBoard 4.3.13 + danasah359frc
Reset(1, 0) from gameMode 0
recognized 'fischerandom' (-1) as variant fischerandom
GameEnds(0, (null), 2)
GameEnds(0, (null), 2) clock stopped
GameEnds(0, (null), 2) after test
StartChildProcess (dir="") danasah359frc
672 >first : xboard
protover 2
688 <first : DanaSah v.3.59 FRC, web: http://danasah.tk
688 <first : 19/01/2008, Pedro Castro, Spain
688 <first :
688 <first : DanaSah only supports the winboard interface.
688 <first : Type command quit to exit
688 <first :
688 <first : Ini file danasah.ini found.
704 <first : ownbook off
704 <first : Table hash size 128 Mb.
704 <first : Eval cache size 16 Mb.
704 <first : Bitbases path: ./egbb/
704 <first : Bitbases men: 4
704 <first : Bitbases cache size: 4
704 <first : Kibitz off
704 <first : danasah> feature done=0
704 <first : EgbbProbe 3.1 by Daniel Shawul
704 <first : Cache Size = 4 Mb (517 entries)
1219 <first : Loading egbbs....
1219 <first : feature setboard=1 draw=0 sigint=0 sigterm=0 myname="DanaSah v.3.59 FRC" variants="normal,fischerandom" colors=0 ics=1
1219 >first : accepted setboard
1219 >first : accepted draw
1219 >first : accepted sigint
1219 >first : accepted sigterm
1219 >first : accepted myname
1219 >first : accepted variants
1219 >first : accepted colors
1219 >first : accepted ics
1219 <first : feature done=1
1235 >first : accepted done
1250 >first : new
random
1250 >first : variant fischerandom
write FEN 50-move: 0 0 0
e0. p=-4
1250 >first : setboard nrkqnrbb/pppppppp/8/8/8/8/PPPPPPPP/NRKQNRBB w FBfb - 0 1
1250 >first : ics -
1250 >first : level 0 5 0
1250 >first : post
1250 >first : hard
1250 >first : easy
1360 <first : variante = normal
1360 <first : variante = fischerandom
release
Legality test? d2d3
Legality test: a1b3
Legality test: e1d3
Legality test: e1f3
Legality test: a2a3
Legality test: a2a4
Legality test: b2b3
Legality test: b2b4
Legality test: c2c3
Legality test: c2c4
Legality test: d2d3
Legality test: d2d4
Legality test: e2e3
Legality test: e2e4
Legality test: f2f3
Legality test: f2f4
Legality test: g2g3
Legality test: g2g4
Legality test: h2h3
Legality test: h2h4
FRC castling, 5 1 2 5 1 2
CoordsToAlgebraic, piece=0
Legality test? d2d3
Legality test: a1b3
Legality test: e1d3
Legality test: e1f3
Legality test: a2a3
Legality test: a2a4
Legality test: b2b3
Legality test: b2b4
Legality test: c2c3
Legality test: c2c4
Legality test: d2d3
Legality test: d2d4
Legality test: e2e3
Legality test: e2e4
Legality test: f2f3
Legality test: f2f4
Legality test: g2g3
Legality test: g2g4
Legality test: h2h3
Legality test: h2h4
FRC castling, 5 1 2 5 1 2
move: d2d3
, parse: d3 (
)
4079 >first : time 30000
4079 >first : otim 30000
4079 >first : d2d3
GameEnds(0, (null), 2)
GameEnds(0, (null), 2) clock stopped
GameEnds(0, (null), 2) after test
21704 >first : force
21704 >first : quit


If I decide that the engine start a game with White, then I if get the command "go", in this case you will see that the engine begins to play and that castling and recognizes the castling the contrary.

Code: Select all
recognized 'fischerandom' (-1) as variant fischerandom
WinBoard 4.3.13 + danasah359frc
Reset(1, 0) from gameMode 0
recognized 'fischerandom' (-1) as variant fischerandom
GameEnds(0, (null), 2)
GameEnds(0, (null), 2) clock stopped
GameEnds(0, (null), 2) after test
StartChildProcess (dir="") danasah359frc
641 >first : xboard
protover 2
672 <first : DanaSah v.3.59 FRC, web: http://danasah.tk
672 <first : 19/01/2008, Pedro Castro, Spain
672 <first :
672 <first : DanaSah only supports the winboard interface.
672 <first : Type command quit to exit
672 <first :
672 <first : Ini file danasah.ini found.
672 <first : ownbook off
672 <first : Table hash size 128 Mb.
672 <first : Eval cache size 16 Mb.
672 <first : Bitbases path: ./egbb/
672 <first : Bitbases men: 4
672 <first : Bitbases cache size: 4
672 <first : Kibitz off
672 <first : danasah> feature done=0
672 <first : EgbbProbe 3.1 by Daniel Shawul
672 <first : Cache Size = 4 Mb (517 entries)
1141 <first : Loading egbbs....
1141 <first : feature setboard=1 draw=0 sigint=0 sigterm=0 myname="DanaSah v.3.59 FRC" variants="normal,fischerandom" colors=0 ics=1
1141 >first : accepted setboard
1141 >first : accepted draw
1141 >first : accepted sigint
1141 >first : accepted sigterm
1141 >first : accepted myname
1141 >first : accepted variants
1141 >first : accepted colors
1141 >first : accepted ics
1141 <first : feature done=1
1141 >first : accepted done
1156 >first : new
random
1156 >first : variant fischerandom
write FEN 50-move: 0 0 0
e0. p=-4
1156 >first : setboard nrkqnrbb/pppppppp/8/8/8/8/PPPPPPPP/NRKQNRBB w FBfb - 0 1
1156 >first : ics -
1156 >first : level 0 5 0
1156 >first : post
1156 >first : hard
1156 >first : easy
1250 <first : variante = normal
1250 <first : variante = fischerandom
12344 >first : time 30000
12344 >first : otim 30000
12344 >first : go
12344 <first : 2 0 0 84 a1b3  a8b6
12344 <first : 3 41 0 216 a1b3  a8b6  e1f3
12344 <first : 4 0 0 809 a1b3  a8b6  e1f3  e8f6
12360 <first : 5 37 0 2662 a1b3  a8b6  e1f3  e8f6  b3c5
12360 <first : 6 0 1 7442 a1b3  a8b6  e1f3  e8f6  b3c5  b6c4
12360 <first : 7 8 1 11117 a1b3  a8b6  e1f3  f7f5  d2d3  g8b3  c2b3  e8f6
12391 <first : 8 16 4 26830 a1b3  a8b6  d2d3  e8f6  f2f4  d7d6  g1b6  c7b6  e1f3
12485 <first : 9 8 14 65972 a1b3  a8b6  d2d3  f7f5  f2f4  e8f6  e1f3  g8b3  c2b3  d7d6
12735 <first : 10 19 39 190458 a1b3  a8b6  d2d3  d7d5  f2f4  e8f6  g1b6  c7b6  e1f3  d8d7  e2e3
13141 <first : 11 22 79 389052 a1b3  a8b6  d2d3  d7d5  e1f3  e8f6  f3e5  d8d6  f2f4  O-O-O b3c5
15219 <first : 12 19 287 1453641 a1b3  a8b6  e2e3  f7f5  e1f3  g8d5  d1e2  e8f6  O-O-O d7d6  f3d4  e7e6
19906 <first : 13 37 756 4010228 a1b3  a8b6  d2d3  d7d5  d1d2  d8d6  f2f4  O-O-O g1c5  d6f6  O-O-O e8d6  e1f3
19906 <first : move a1b3
move to parse: a1b3
Legality test? a1b3
Legality test: a1b3
Legality test: e1d3
Legality test: e1f3
Legality test: a2a3
Legality test: a2a4
Legality test: b2b3
Legality test: b2b4
Legality test: c2c3
Legality test: c2c4
Legality test: d2d3
Legality test: d2d4
Legality test: e2e3
Legality test: e2e4
Legality test: f2f3
Legality test: f2f4
Legality test: g2g3
Legality test: g2g4
Legality test: h2h3
Legality test: h2h4
FRC castling, 5 1 2 5 1 2
CoordsToAlgebraic, piece=1
FRC castling, 5 1 2 5 1 2
move: a1b3
, parse: Nb3 (
)
release
Legality test? e7e6
Legality test: a7a6
Legality test: a7a5
Legality test: b7b6
Legality test: b7b5
Legality test: c7c6
Legality test: c7c5
Legality test: d7d6
Legality test: d7d5
Legality test: e7e6
Legality test: e7e5
Legality test: f7f6
Legality test: f7f5
Legality test: g7g6
Legality test: g7g5
Legality test: h7h6
Legality test: h7h5
Legality test: a8b6
Legality test: e8d6
Legality test: e8f6
CoordsToAlgebraic, piece=17
Legality test? e7e6
Legality test: a7a6
Legality test: a7a5
Legality test: b7b6
Legality test: b7b5
Legality test: c7c6
Legality test: c7c5
Legality test: d7d6
Legality test: d7d5
Legality test: e7e6
Legality test: e7e5
Legality test: f7f6
Legality test: f7f5
Legality test: g7g6
Legality test: g7g5
Legality test: h7h6
Legality test: h7h5
Legality test: a8b6
Legality test: e8d6
Legality test: e8f6
FRC castling, 5 1 2 5 1 2
move: e7e6
, parse: e6 (
)
41172 >first : time 29242
41172 >first : otim 27876
41172 >first : e7e6
41188 <first : 2 -7 0 94 d2d3  a8b6
41188 <first : 2 18 0 140 e1f3  a8b6
41188 <first : 3 42 0 306 d2d3  a8b6  e1f3
41188 <first : 4 28 0 731 f2f4  a8b6  g1b6  c7b6  e1f3
41188 <first : 5 31 0 2253 d2d3  a8b6  f2f4  e8f6  e1f3
41203 <first : 5 43 0 3239 d2d3  a8b6  d1d2  b6d5  O-O-O
41203 <first : 6 34 1 8281 d2d3  a8b6  f2f4  d7d6  g1b6  c7b6  e1f3
41203 <first : 7 39 3 13431 d2d3  a8b6  d1d2  d8f6  O-O-O O-O-O e1f3
41250 <first : 8 22 7 45933 d2d3  a8b6  d1d2  d8f6  d2a5  O-O-O a5a7  e8d6
41313 <first : 9 36 14 89381 d2d3  a8b6  e1f3  d8f6  d1d2  O-O-O O-O-O b6d5  b3c5
41453 <first : 10 46 28 177724 d2d3  a8b6  d1d2  d8f6  d2a5  a7a6  f2f4  b6d5  g1d4  f6h4
41828 <first : 11 44 65 419660 d2d3  a8b6  d1d2  d8f6  d2a5  a7a6  f2f4  b6d5  g1d4  f6h4  d4c5
44922 <first : 12 40 375 2355562 d2d3  d8h4  f2f4  a8b6  d1d2  O-O-O O-O-O h4h5  e1f3  e8f6  g1b6  c7b6  e2e4
48297 <first : 13 53 712 4301504 d2d3  d8h4  f2f4  a8b6  d1d2  O-O-O O-O-O h4h5  e1f3  e8f6  g1f2  d7d6  e2e4
48485 <first : move d2d3
move to parse: d2d3
Legality test? d2d3
Legality test: b1a1
Legality test: e1d3
Legality test: e1f3
Legality test: a2a3
Legality test: a2a4
Legality test: c2c3
Legality test: c2c4
Legality test: d2d3
Legality test: d2d4
Legality test: e2e3
Legality test: e2e4
Legality test: f2f3
Legality test: f2f4
Legality test: g2g3
Legality test: g2g4
Legality test: h2h3
Legality test: h2h4
Legality test: b3a1
Legality test: b3a5
Legality test: b3d4
Legality test: b3c5
FRC castling, 5 1 2 5 1 2
CoordsToAlgebraic, piece=0
Legality test? d2d3
Legality test: b1a1
Legality test: e1d3
Legality test: e1f3
Legality test: a2a3
Legality test: a2a4
Legality test: c2c3
Legality test: c2c4
Legality test: d2d3
Legality test: d2d4
Legality test: e2e3
Legality test: e2e4
Legality test: f2f3
Legality test: f2f4
Legality test: g2g3
Legality test: g2g4
Legality test: h2h3
Legality test: h2h4
Legality test: b3a1
Legality test: b3a5
Legality test: b3d4
Legality test: b3c5
FRC castling, 5 1 2 5 1 2
move: d2d3
, parse: d3 (
)
release
Legality test? d8e7
Legality test: e6e5
Legality test: a7a6
Legality test: a7a5
Legality test: b7b6
Legality test: b7b5
Legality test: c7c6
Legality test: c7c5
Legality test: d7d6
Legality test: d7d5
Legality test: f7f6
Legality test: f7f5
Legality test: g7g6
Legality test: g7g5
Legality test: h7h6
Legality test: h7h5
Legality test: a8b6
Legality test: d8e7
Legality test: d8f6
Legality test: d8g5
Legality test: d8h4
Legality test: e8d6
Legality test: e8f6
CoordsToAlgebraic, piece=21
FRC castling, 5 1 2 5 1 2
move: d8e7
, parse: Qe7 (
)
64938 >first : time 28509
64938 >first : otim 26231
64938 >first : d8e7
64953 <first : 2 -4 0 84 d1d2  a8b6
64953 <first : 2 29 0 143 e1f3  a8b6
64953 <first : 3 68 0 347 d1d2  a8b6  O-O-O
64953 <first : 4 37 0 708 d1d2  O-O-O d2a5  a7a6
64969 <first : 5 43 0 2987 d1d2  a8b6  O-O-O O-O-O e1f3
64969 <first : 6 31 1 5074 d1d2  O-O-O d2a5  a8b6  a5a7  e8f6
64969 <first : 7 45 3 15004 d1d2  O-O-O O-O-O c8b8  e1f3  a8b6  c1b1
65000 <first : 8 61 6 51178 d1d2  O-O-O d2a5  a7a6  f2f4  a8b6  g1b6  c7b6  a5b6  e8c7
65063 <first : 9 48 12 96586 d1d2  O-O-O d2a5  c8b8  g2g4  a8b6  O-O-O d7d6  h1e4
65281 <first : 10 64 34 297191 d1d2  O-O-O O-O-O c8b8  d2a5  e8f6  f2f3  a8b6  g1d4  b8a8
66781 <first : 11 81 184 1255365 d1d2  a8b6  O-O-O e8d6  d2a5  g7g6  c1b1  a7a6  e1f3  O-O-O b3d4
68688 <first : 12 85 375 2477330 d1d2  a8b6  d2a5  g7g6  f2f4  e6e5  f4e5  e7e5  a5e5  h8e5  e1f3  e5f6  g1b6  a7b6  O-O-O
72141 <first : move d1d2
move to parse: d1d2
Legality test? d1d2
Legality test: b1a1
Legality test: c1d2
Legality test: d1d2
Legality test: e1f3
Legality test: a2a3
Legality test: a2a4
Legality test: c2c3
Legality test: c2c4
Legality test: e2e3
Legality test: e2e4
Legality test: f2f3
Legality test: f2f4
Legality test: g2g3
Legality test: g2g4
Legality test: h2h3
Legality test: h2h4
Legality test: b3a1
Legality test: b3d2
Legality test: b3a5
Legality test: b3d4
Legality test: b3c5
Legality test: d3d4
FRC castling, 5 1 2 5 1 2
CoordsToAlgebraic, piece=4
FRC castling, 5 1 2 5 1 2
move: d1d2
, parse: Qd2 (
)
release
Legality test? c8b8
Legality test: e6e5
Legality test: a7a6
Legality test: a7a5
Legality test: b7b6
Legality test: b7b5
Legality test: c7c6
Legality test: c7c5
Legality test: d7d6
Legality test: d7d5
Legality test: e7d6
Legality test: e7c5
Legality test: e7b4
Legality test: e7a3
Legality test: e7f6
Legality test: e7g5
Legality test: e7h4
Legality test: e7d8
Legality test: f7f6
Legality test: f7f5
Legality test: g7g6
Legality test: g7g5
Legality test: h7h6
Legality test: h7h5
Legality test: a8b6
Legality test: c8d8
Legality test: e8d6
Legality test: e8f6
Legality test: c8b8
CoordsToAlgebraic, piece=33
Legality test? c8b8
Legality test: e6e5
Legality test: a7a6
Legality test: a7a5
Legality test: b7b6
Legality test: b7b5
Legality test: c7c6
Legality test: c7c5
Legality test: d7d6
Legality test: d7d5
Legality test: e7d6
Legality test: e7c5
Legality test: e7b4
Legality test: e7a3
Legality test: e7f6
Legality test: e7g5
Legality test: e7h4
Legality test: e7d8
Legality test: f7f6
Legality test: f7f5
Legality test: g7g6
Legality test: g7g5
Legality test: h7h6
Legality test: h7h5
Legality test: a8b6
Legality test: c8d8
Legality test: e8d6
Legality test: e8f6
Legality test: c8b8
FRC castling, 5 1 2 5 -1 -1
move: c8b8
, parse: O-O-O (
)
77578 >first : time 27789
77578 >first : otim 25689
77578 >first : O-O-O
77594 <first : 2 -4 0 123 O-O-O a8b6
77594 <first : 2 37 0 291 d2a5  a7a6
77594 <first : 3 43 0 399 O-O-O a8b6  e1f3
77594 <first : 3 68 0 834 d2a5  a8b6  a5a7
77594 <first : 4 19 0 1529 O-O-O a8b6  d2a5  a7a6
77594 <first : 4 36 0 1859 d2a5  a7a6  f2f4  e8f6
77594 <first : 4 57 0 2366 f2f4  a8b6  d2a5  e8f6  a5a7
77594 <first : 5 69 0 2746 O-O-O a8b6  d2a5  a7a6  e1f3
77610 <first : 6 61 0 6261 d2a5  a7a6  f2f4  a8b6  g1b6  c7b6  a5b6  e8c7
77610 <first : 7 78 0 7972 O-O-O a8b6  d2a5  a7a6  f2f4  e7h4  g2g4
77610 <first : 8 78 1 13667 O-O-O a8b6  d2a5  a7a6  f2f4  e7h4  g2g3  h4h3
77625 <first : 8 91 4 37145 d2a5  a7a6  f2f4  a8b6  g1b6  c7b6  a5b6  e7d6  b6d6  e8d6  O-O-O
77656 <first : 9 100 7 74546 O-O-O a8b6  d2a5  a7a6  f2f4  e7h4  g1b6  c7b6  a5b6  h4h2  c1b1
78110 <first : 10 76 53 364108 O-O-O a8b6  d2a5  c8b8  f2f4  g7g6  e1f3  e8d6  g1f2  d6c8
79453 <first : 11 99 187 1286190 O-O-O g7g6  d2a5  e7f6  d3d4  c8b8  e1d3  a8b6  c1b1  a7a6  g2g4
81438 <first : 12 79 386 2607181 O-O-O g7g6  f2f4  c8b8  d2a5  a8b6  e1f3  d7d6  e2e4  f7f5  g1f2  a7a6  f2b6  c7b6  a5b6  f5e4  d3e4  f8f4
84531 <first : move O-O-O
move to parse: O-O-O
Parser FRC long 2 1
Legality test? c1b1
Legality test: b1a1
Legality test: c1d1
Legality test: e1f3
Legality test: a2a3
Legality test: a2a4
Legality test: c2c3
Legality test: c2c4
Legality test: d2d1
Legality test: d2c3
Legality test: d2b4
Legality test: d2a5
Legality test: d2e3
Legality test: d2f4
Legality test: d2g5
Legality test: d2h6
Legality test: e2e3
Legality test: e2e4
Legality test: f2f3
Legality test: f2f4
Legality test: g2g3
Legality test: g2g4
Legality test: h2h3
Legality test: h2h4
Legality test: b3a1
Legality test: b3a5
Legality test: b3d4
Legality test: b3c5
Legality test: d3d4
FRC castling, 5 1 2 5 1 2
Legality test: c1b1
CoordsToAlgebraic, piece=16
Legality test? c1b1
Legality test: b1a1
Legality test: c1d1
Legality test: e1f3
Legality test: a2a3
Legality test: a2a4
Legality test: c2c3
Legality test: c2c4
Legality test: d2d1
Legality test: d2c3
Legality test: d2b4
Legality test: d2a5
Legality test: d2e3
Legality test: d2f4
Legality test: d2g5
Legality test: d2h6
Legality test: e2e3
Legality test: e2e4
Legality test: f2f3
Legality test: f2f4
Legality test: g2g3
Legality test: g2g4
Legality test: h2h3
Legality test: h2h4
Legality test: b3a1
Legality test: b3a5
Legality test: b3d4
Legality test: b3c5
Legality test: d3d4
FRC castling, 5 1 2 5 1 2
Legality test: c1b1
move: c1b1
, parse: O-O-O (
)
...
Best wishes,

Pedro Castro
User avatar
Pedro Castro
 
Posts: 180
Joined: 28 Jan 2005, 01:09
Location: Pays Basque (Spain)

Re: WinBoard_F now has Chess960 support

Postby H.G.Muller » 19 Jan 2008, 13:24

In game 1 it seems your engine suddenly exits, after receiving the user move d2d3. The GemeEnds() call with argument NULL suggest that WinBoard could no longer read from the output pipe of the engine. But from the debug you can see that WinBoard really did send the move.

So I think the problem is in your engine. It somehow does not accept the move, and even crashes from it. It should have known that white was on move from the FEN. Perhaps it gets confused by the 'B' in the castling rights, mistaken it for black-to-move?

I already commented on the FRC castling-rights notation on CCC. The engine has to be able to understand the A-Ha-h notation, or your setboard would fail for non-opening positions like

[diag]3kq3/3pp3/8/8/1PP2PP1/8/8/1K3RR1 w[/diag]

where during the game white moved one Rook from a1 to g1. Even Arena will use F to indicate the short castling right for this position, if the King and Rook on f1 have not yet been moved.

If you only want to work setboard correctly for opening positions, you can indeed ignore all FEN fields after the board, as you can be sure that in the opening white has the move, castling with both Rooks is allowed, e.p. is not possible, the reversible-ply counter is at 0 and it is the first move. Reading the castling field of the FEN is only useful for the purpose of handling positions that might not be openings.
User avatar
H.G.Muller
 
Posts: 3453
Joined: 16 Nov 2005, 12:02
Location: Diemen, NL

Re: WinBoard_F now has Chess960 support

Postby Teemu Pudas » 19 Jan 2008, 14:02

H.G.Muller wrote:Even Arena will use F to indicate the short castling right for this position, if the King and Rook on f1 have not yet been moved.


Actually, it won't.

[FEN "brqknrnb/pppppppp/8/8/8/8/PPPPPPPP/BRQKNRNB w KQkq - 0 1 "]

1.f4 d6 2.Rf3 d5 3.b4 d4 4.a4 a6 5.Ra3 d3 6.Bd4 b6 7.Raa1 *

brqknrnb/2p1pppp/pp6/8/PP1B1P2/3p4/2PPP1PP/RRQKN1NB b Qkq - 1 7

Not surprising, as Arena goes out of its way to be incompatible with the official UCI protocol by rejecting king-takes-rook and neglecting to set UCI_Chess960.
Teemu Pudas
 
Posts: 124
Joined: 16 Apr 2007, 14:03

Re: WinBoard_F now has Chess960 support

Postby H.G.Muller » 19 Jan 2008, 14:13

Well, this is definitely wrong. From the Q you cannot see if you can castle with Ra1 or with Rb1. The x-FEN standard clearly specifies that Q would mean the outer-most Rook (so Ra1 here) has the castling rights. As I understood it, Shredder-FEN doesn't ever use K and Q.

If Arena is buggy in this respect, we should not pay attention to what it does, as the aim is to have a system that works, and not to introduce the same bugs to remain compatible!
User avatar
H.G.Muller
 
Posts: 3453
Joined: 16 Nov 2005, 12:02
Location: Diemen, NL

Re: WinBoard_F now has Chess960 support

Postby Pedro Castro » 20 Jan 2008, 14:25

Teemu Pudas wrote:
H.G.Muller wrote:Even Arena will use F to indicate the short castling right for this position, if the King and Rook on f1 have not yet been moved.


Actually, it won't.

[FEN "brqknrnb/pppppppp/8/8/8/8/PPPPPPPP/BRQKNRNB w KQkq - 0 1 "]

1.f4 d6 2.Rf3 d5 3.b4 d4 4.a4 a6 5.Ra3 d3 6.Bd4 b6 7.Raa1 *

brqknrnb/2p1pppp/pp6/8/PP1B1P2/3p4/2PPP1PP/RRQKN1NB b Qkq - 1 7

Not surprising, as Arena goes out of its way to be incompatible with the official UCI protocol by rejecting king-takes-rook and neglecting to set UCI_Chess960.


Well, first let me say that I remain neutral on the war-x-FEN and Shredder-FEN. My opinion is that to support the protocol you have to change something about your function FEN for x-FEN and for Shredder-FEN.

If an engine plays Teemu moves in the starting position that has given, then the engine will have no problem in knowing how the castle must be, as it has moved a rook, it knows that this rook he can not castle, is the engine internally who leads the account.

If we copy the FEN to the clipboard, we have:
brqknrnb/2p1pppp/pp6/8/PP1B1P2/3p4/2PPP1PP/RRQKN1NB b - - 1 7

Arena does not indicate anything about the castles, so it is not where the FEN has gone from Teemu.

We can edit a position chess960 in Arena and give castling rights, which would have the FEN to Teemu.

brqknrnb/2p1pppp/pp6/8/PP1B1P2/3p4/2PPP1PP/RRQKN1NB b Qkq - 1 7

The FEN is incomplete, as you said Teemu and HG

The correct x-FEN would:
brqknrnb/2p1pppp/pp6/8/PP1B1P2/3p4/2PPP1PP/RRQKN1NB b Bkq - 1 7

The correct shredder-FEN would:
brqknrnb/2p1pppp/pp6/8/PP1B1P2/3p4/2PPP1PP/RRQKN1NB b Bbf - 1 7

Well, then Arena fails to edit the position because Arena forget this possibility that there may be 2 rooks on one side. (or because they still do not support X-FEN)

But you (HG) have a error, is that this error in Arena is also an error in Winboard, Winboard if we edit a position not question that the rook is good, the GUI Fritz also no asked its configuration and only GUI Shredder it does.

The only full GUI to play chess960 is Shredder GUI, therefore the engines xboard not currently have a full GUI for it, only to play complete games.
Best wishes,

Pedro Castro
User avatar
Pedro Castro
 
Posts: 180
Joined: 28 Jan 2005, 01:09
Location: Pays Basque (Spain)

Re: WinBoard_F now has Chess960 support

Postby Pedro Castro » 20 Jan 2008, 15:04

When I edit the position (Teemu) in Winboard, I receive:

brqknrnb/2p1pppp/pp6/8/PP1B1P2/3p4/2PPP1PP/RRQKN1NB b HAha - 0 1

Of course, this is wrong.

The fault of Arena is that they still do not support XFEN (and ShredderFEN?) and maybe with this they not ask which of the 2 rooks make castling. This is the same mistake made by Fritz GUI although they tend to using ShredderFEN

The Winboard fault is that even his edit has no chance of castling rights, nor can indicate other things ep, number (played) or rule of the 50 moves.
Best wishes,

Pedro Castro
User avatar
Pedro Castro
 
Posts: 180
Joined: 28 Jan 2005, 01:09
Location: Pays Basque (Spain)

Re: WinBoard_F now has Chess960 support

Postby H.G.Muller » 20 Jan 2008, 17:42

The 'edit' command I can actually fix, if there is any demand for this. In normal Chess, engines are supposed to assume that Rooks and King starting on the square of the initial position do have castling rights. For positions where the corresponding rights do not exist, because the piece was moved, biut somehow moved back, I could use a similar kludge as old WinBoard uses to load a position where black is to move. It then sets up a normal position, (with 'new'), plays a2a3, and then uses the 'edit' menu to clear the board and set up the new position.

Similarly, castling rights could be destroyed by never putting Rooks that should not have castling rights in a corner, but set up another position than the requested one, and use 'force' mode after the edit to move the Rooks to their corner (so they get there without having castling rights).

Similarly, I could enter the move number and reversible plies by first 'new', 'force', and then playing the Knights up and down for the required number of moves (throwing in a Pawn move at the right moment to set the 50-move counter), and only then start 'edit'. For e.p. rights I would simply set up the position before the double pawn move, and play the latter in 'force' mode.

A hideous kludge, of course. But it would solve all problems for existing engines, while staying completely within protocol 1.

For FRC it would be more difficult, as the engine is not aware of the initial position. But FRC engines using 'edit' mode should assume that any Rook on the back rank is virgin. When this is not desired, WB could set up the Rooks elsewhere, and move them to the requested square through force.

I wonder if this would be worth it though.
User avatar
H.G.Muller
 
Posts: 3453
Joined: 16 Nov 2005, 12:02
Location: Diemen, NL

Re: WinBoard_F now has Chess960 support

Postby H.G.Muller » 20 Jan 2008, 18:43

Pedro Castro wrote:But you (HG) have a error, is that this error in Arena is also an error in Winboard, Winboard if we edit a position not question that the rook is good, the GUI Fritz also no asked its configuration and only GUI Shredder it does.

The error was in the FEN reader: it assumed that K always meant h-file, and Q always a-file. This is of course not correct in x-FEN, so it was only correctly reading Shredder-FEN. And if the initial rights were not correct, playing the moves and saving the FEN kept the faulty rights.

I fixed it now, by actually searching for the outermost Rook when K or Q are encountered in the castling-rights field. After pasting in the game above, it now saves the FEN:
brqknrnb/2p1pppp/pp6/8/PP1B1P2/3p4/2PPP1PP/RRQKN1NB b Bfb - 1 7

The corrected WinBoard_F executable can be downloaded from http://home.hccnet.nl/h.g.muller/alpha.tst (as usual).
User avatar
H.G.Muller
 
Posts: 3453
Joined: 16 Nov 2005, 12:02
Location: Diemen, NL

Re: WinBoard_F now has Chess960 support

Postby F.Huber » 20 Jan 2008, 19:30

H.G.Muller wrote:I fixed it now, by actually searching for the outermost Rook when K or Q are encountered in the castling-rights field. After pasting in the game above, it now saves the FEN:
brqknrnb/2p1pppp/pp6/8/PP1B1P2/3p4/2PPP1PP/RRQKN1NB b Bfb - 1 7


Hmm? Is the outermost (white) rook really on b?
User avatar
F.Huber
 
Posts: 229
Joined: 27 Sep 2004, 14:29
Location: Austria

Re: WinBoard_F now has Chess960 support

Postby H.G.Muller » 20 Jan 2008, 19:40

It was in the original position, described by the FEN with the Q castling right.
User avatar
H.G.Muller
 
Posts: 3453
Joined: 16 Nov 2005, 12:02
Location: Diemen, NL

Re: WinBoard_F now has Chess960 support

Postby Teemu Pudas » 20 Jan 2008, 19:47

F.Huber wrote:Hmm? Is the outermost (white) rook really on b?

No, and that's why Arena's FEN was wrong.
Teemu Pudas
 
Posts: 124
Joined: 16 Apr 2007, 14:03

Re: WinBoard_F now has Chess960 support

Postby F.Huber » 20 Jan 2008, 19:47

Ok, it seems I just misunderstood your "actually searching for the outermost Rook".
User avatar
F.Huber
 
Posts: 229
Joined: 27 Sep 2004, 14:29
Location: Austria

Re: WinBoard_F now has Chess960 support

Postby H.G.Muller » 20 Jan 2008, 20:20

I see. So for clarity: that applies to the routine that reads the FEN. While writing the FEN it just uses the rights (stored internally as file numbers) that WinBoard has kept during the game, and writes those. It would do that even if there are no Rooks at all in those files.

Note that WinBoard_F does not check for castling rights given as A-H if there is a Rook in that file. So in principle it is capable of supporting games where you can castle with pieces other than Rooks. (The current MakeMove does recognize such moves as castlings, though. You would simply capture your own piece! :D )

Note that in KnightMate the Royal Knight (represented as Unicorn) can castle with its Rooks. Thinking of it, this might not be properly implemented yet...
User avatar
H.G.Muller
 
Posts: 3453
Joined: 16 Nov 2005, 12:02
Location: Diemen, NL

Re: WinBoard_F now has Chess960 support

Postby Pedro Castro » 20 Jan 2008, 21:36

OK, now I understand.

We can give to Winboard a position Shredder-FEN, we are going to the menu, "File" and "Paste Position From Clipboard".

Then Winboard sent to the command setboard with proper rights of castling in the same format Shredder-FEN.

We can not use in Winboard "Edit Position" of menu "Mode", in this way we can not give all information on the position.

In Arena, the routine that reads the FEN, does not recognize xFEN nor ShredderFEN.

Only one thing, I get the command setboard 2 times, the first with castling rights and the second without them, the second should not have those rights also? and perhaps should not coincide the turn and last 2 numbers with the FEN of clipboard?

Code: Select all
PasteTextFromClipboard(): lock count 0
PasteTextFromClipboard(): lock count 0
PasteTextFromClipboard(): err 0 locked 0
PasteFenFromString(): fen 'brqknrnb/2p1pppp/pp6/8/PP1B1P2/3p4/2PPP1PP/RRQKN1NB b Bfb - 1 7'
FEN castling rights: -1 1 3 5 1 3
56515 >first : force
56515 >first : new
random
56515 >first : variant fischerandom
write FEN 50-move: 1 0 0
e0. p=-4
56515 >first : setboard brqknrnb/2p1pppp/pp6/8/PP1B1P2/3p4/2PPP1PP/RRQKN1NB b Bfb - 1 1
56515 >first : ics -
56515 >first : level 0 5 0
56515 >first : post
56515 >first : hard
56531 >first : easy
56531 >first : force
write FEN 50-move: 1 1 1
e1. p=-4
56531 >first : setboard brqknrnb/2p1pppp/pp6/8/PP1B1P2/3p4/2PPP1PP/RRQKN1NB b - - 1 1
56593 <first : variante = normal
56593 <first : variante = fischerandom
StartChildProcess (dir="") danasah359frc
77281 >second: xboard
protover 2
77281 <second: DanaSah v.3.59 FRC, web: http://danasah.tk
77281 <second: 19/01/2008, Pedro Castro, Spain
77281 <second:
77281 <second: DanaSah only supports the winboard interface.
77281 <second: Type command quit to exit
77281 <second:
77281 <second: Ini file danasah.ini found.
77281 <second: ownbook off
77281 <second: Table hash size 128 Mb.
77281 <second: Eval cache size 16 Mb.
77281 <second: Bitbases path: ./egbb/
77297 <second: Bitbases men: 4
77297 <second: Bitbases cache size: 4
77297 <second: Kibitz off
77297 <second: danasah> feature done=0
77297 <second: EgbbProbe 3.1 by Daniel Shawul
77297 <second: Cache Size = 4 Mb (517 entries)
77750 <second: Loading egbbs....
77750 <second: feature setboard=1 draw=0 sigint=0 sigterm=0 myname="DanaSah v.3.59 FRC" variants="normal,fischerandom" colors=0 ics=1
77750 >second: accepted setboard
77750 >second: accepted draw
77750 >second: accepted sigint
77750 >second: accepted sigterm
77750 >second: accepted myname
77750 >second: accepted variants
77750 >second: accepted colors
77750 >second: accepted ics
77750 <second: feature done=1
77765 >second: accepted done
77781 >second: new
random
77781 >second: variant fischerandom
write FEN 50-move: 1 1 1
e1. p=-4
77781 >second: setboard brqknrnb/2p1pppp/pp6/8/PP1B1P2/3p4/2PPP1PP/RRQKN1NB w Bfb - 0 1
77781 >second: ics -
77781 >second: level 0 5 0
77781 >second: post
77781 >second: hard
77781 >second: easy
77781 >second: force
write FEN 50-move: 1 1 1
e1. p=-4
77781 >second: setboard brqknrnb/2p1pppp/pp6/8/PP1B1P2/3p4/2PPP1PP/RRQKN1NB b - - 1 1
77781 >first : computer
77781 >second: computer
77781 >second: time 30000
77797 >second: otim 30000
77797 >second: go
Best wishes,

Pedro Castro
User avatar
Pedro Castro
 
Posts: 180
Joined: 28 Jan 2005, 01:09
Location: Pays Basque (Spain)

Next

Return to Winboard and related Topics

Who is online

Users browsing this forum: No registered users and 31 guests