Next is a piece of the code, it is written in perl:
- Code: Select all
my $s12=sprintf("\n<12> ".
#bd tn ep wcswclbcsbcldr # wn bn rl timincwm bm wt bt mv vc mt ds fp
"%s %s %d %d %d %d %d %d %d %s %s %d %d %d %d %d %d %d %d %s %s %s 0\n",
join(' ',@bd), # position
qw(W B)[$bo{'turn'}], # turn (W/B)
@bo{'dpush', # en passant file
'castlewh','castlewa', # white can castle short/long
'castlebh','castleba'}, # black can castle short/long
0, # last reversible move (in half-moves) TODO
$table->[0], # game number
$white, # white's name
$black, # black's name
$relation, # my relation to the game
$time, # initial time
$inc, # increment
$board->strength, # white and black's strength
$wtime, # white's clock
$btime, # black's clock
$moves, # move number (not half-move)
$bo{'desc'}, # verbose coordinate notation of last move FIXME
'0:00', # time to make last move TODO
$bo{'algebraic'}, # descriptive notation of last move TODO
);
print $s12;
prompt;
return 0;
print $s12 prints $12 which is read by the pipe between the emulator and WinBoard.
Please observe:
$board->strength, # white and black's strength
Another perl module has an algorythm to calculate the board "strength".
My question is: What WinBoard does with this strength value? Is it there just because it must be there as part of the style 12 format? Or is this value actually parsed to the engine? More specific: to an UCI engine.
The reason I am asking is because I have observed over the years, that the UCI engines performed much better under Fritz: WinBoard-winboard232d.exe-Fritz-Engine than polyglot: WinBoard-Polyglot-Engine. But I and all the people I (unofficially) represent, don not like much the WinBoard-winboard232d.exe-Fritz-Engine combination for many reasons:
-Too many adapters between Yahoo and the engine
-auto232 protocol (handled in this case by winboard232d.exe) is very defective and does not relays the clocks to Fritz
-I prefer bin books over CTG books.
So, I am in a quest to try to find out the reason behind this diference in performance, and the first thing that strikes me is this "strength" variable.
Thanks for reading.