1 <!--#include virtual="/server/html5-header.html" -->
2 <title>XBoard - GNU Project - Free Software Foundation - NEWS</title>
3 <!--#include virtual="/server/banner.html" -->
4 <!--#set var="article_name" value="/server/standards/boilerplate" -->
5 <!--#include virtual="/server/gnun/initial-translations-list.html" -->
6 <h2>WinBoard / XBoard 4.4.0 features ported from WinBoard 4.3</h2>
8 <table cellpadding="20"><tr valign="top"><td>
11 <li><a href="#tag-B1">Castling awareness</a></li>
12 <li><a href="#tag-B2">Extensions of WB protocol</a></li>
13 <li><a href="#tag-A1">Support for unorthodox pieces</a></li>
14 <li><a href="#tag-A2">Configuring the board format</a></li>
15 <li><a href="#tag-A3">SAN and FEN with fairy pieces</a></li>
16 <li><a href="#tag-A4">Support of complete chess variants</a></li>
17 <li><a href="#tag-A5">Bughouse piece drops and holdings display</a></li>
18 <li><a href="#tag-A6">Distinguishing promoted pieces in Bughouse</a></li>
19 <li><a href="#tag-A7">Displaying player logos</a></li>
20 <li><a href="#tag-A8">Japanese Shogi bitmaps</a></li>
21 <li><a href="#tag-C1">Added command-line options</a></li>
24 </td><td valign="top">
25 <img src="../4.5.0/winboardF.png">
26 </td><td valign="top">
28 <a href="index.html">Follow-up release (4.4.0)</a>
31 <a href="Winboard_x.html">Preceding fork (Winboard_x)</a>
35 <h3><a name="tag-B1">Treating castling and e.p. rights seriously</a></h3>
37 One of the most important changes betwen WinBoard 3.4 and predecessors is that it is fully aware of the game state.
38 That is, it keeps track of castling rights and e.p. status,
39 and takes that knowledge into account in legality checking of the moves and mate testing.
40 As a result it can do 100% reliable adjudications:
41 forfeit engines that do illegal moves, or make false result claims,
42 and terminate the game on 3-fold repetition of due to the 50-move rule.
45 <table cellpadding="20"><tr><td valign="top">
46 <h3><a name="tag-A1">Supporting fairy pieces</a></h3>
48 WinBoard F does not only support the six piece types of orthdox chess,
49 but expanded the number to 22.
50 Most of these have well-specified moves known to WinBoard,
51 such as the Archbishop (a B+N compound) and the Chancellor (R+N) of Capablanca Chess.
52 Others are wild cards just supplied as graphics, and can only be used with legality testing off.
54 In board sizes middling (49) and bulky (72) a bitmap for each of these 22 pieces is supplied,
55 while size petite (33) supports most.
56 In the intermediate sizes, only Archbishop and Chancellor are available,
57 while for sizes below 33 and above 72, none are.
58 Some of the more common piece types, such as those for Chinese or Capablanca Chess,
59 were added to the piece menu in Edit Position mode,
60 while others can be made by 'promoting' or 'demoting' the more common ones.
62 </td><td valign="top">
63 <img src="fairies.png">
66 <table cellpadding="20"><tr><td valign="top">
67 <img src="couriersmall.gif">
68 </td><td valign="top">
69 <h3><a name="tag-A2">Configurable and non-square board formats</a></h3>
71 WinBoard F allows the use of other boards than 8x8.
72 In particular, the number of ranks does not have to be equal to the number of files.
73 Options -boardWidth and -boardHeight can be used to specify exactly the board you want,
74 but a value -1 for these options means WinBoard will use the default size for the
75 variant you are playing (so 8x8 for normal chess or suicide).
77 <h3><a name="tag-A3">Piece-ID letters in SAN and FEN</a></h3>
79 Unfortunately the names of fairy pieces are not as standardized as they are in orthodoc chess:
80 a piece that moves in the same way can be called Marshall in one variant, Chancellor in another,
81 and Champion in a third.
82 This affects the single-letter abbreviation one would use for writing SAN moves in notations for these variants.
83 WinBoard accounts for this through the -pieceToCharTable option,
84 where you can define for each of the 44 colored piece types what letter should be used for them.
85 This can also used to disable pieces, by setting their character to a period.
86 For each of the predefined variants, WinBoard has a default table, and uses that as soon as you select the variant.
90 <table cellpadding="20"><tr><td valign="top">
91 <h3><a name="tag-A4">Predefined variants</a></h3>
93 With the unorthodox piece types and board formats WinBoard F can support a large number of chess variants.
94 Some of these variants are pre-defined:
95 they can be selected through a New Variant item in the File menu,
96 which brings you to a dialog where you can pick one,
97 and optionally change its board size from the default.
100 For these predefined variants, WinBoard usually knows the rules exactly,
101 meaning that it can do legality checking, reliably detect checkmate, etc.
102 Some variants are only partially supported, however, and need to be played with legality testing off.
103 The predefined new variants are:
106 <li>Xiangqi (Chinese chess)</li>
107 <li>Shogi (Japanese chess)</li>
108 <li>Capablanca, Gothic and Capa-random Chess (on 10x8 board)</li>
109 <li>Courier chess (a medieval precursor of modern chess)</li>
110 <li>Shatranj (ancient Arabic chess)</li>
111 <li>Knightmate (King moves as Knight, and vice versa)</li>
112 <li>Cylinder chess (the board wraps around at the edge files)</li>
113 <li>Berolina chess (Pawns capture straight and move diagonally)</li>
116 The latter two can only be played with legality testing off.
117 The ICS variants that were already supported in 4.2.7
118 (Fischerandom, Suicide, Losers, Giveaway, Atomic, Twokings, Threechecks)
119 are all fully supported in local mode,
120 and WinBoard is aware of their rules for victory, so it can adjudicate.
123 Normally all these variants would be played with the piece symbols shown above.
124 But the almost infinite configurability of the WinBoard look
125 through board textures and font-based rendering
126 does allow you to perfectly mimic traditional representation of Asian variants, for example.
127 On the right you see how suppressing the grid that normally separates the squares,
128 and using a drawing of a Xiangqi board and the XIANGQI font for piece rendering
129 can give a very good looking Xiangqi interface.
131 </td><td valign="top">
132 <img src="WinBoardXQ2.png">
135 <h3><a name="tag-A5">Dragging and dropping from displayed holdings in Bughouse</a></h3>
136 <table cellpadding="20"><tr><td valign="top">
137 <img src="crazy.gif">
138 </td><td valign="top">
140 Drop variants like Bughouse and Crazyhouse used to keep track of the holdings as text in the title bar,
141 and required a drop menu to select dropped pieces from.
142 This only worked in ICS mode, as the holdings were not updated in local play.
143 In WinBoard F, the holdings are displayed beside the board,
144 and you can grab and drag the piece to drop from there.
145 They are also fully updated in local Crazyhouse play.
146 (Bughouse still can only be played on an ICS, being a 4-player game where WinBoard is only a 2-player GUI.)
149 Shogi is also a drop game, and uses the same mechanism.
150 In fact WinBoard F allows you to play any variant as a Crazyhouse-style drop game,
151 by configuring holdings for it through the options -holdingsSize,
152 where you can specify the number of piece types for which space should be reserved in the holdings.
153 (Beware: for practical reasons this cannot be larger than the number of board ranks!)
154 Piece types for which no space is reserved will revert to Pawn oon capture.
156 <h3><a name="tag-A6">Promoted Pawn or primordial piece?</a></h3>
158 In Bughouse promoted Pawns revert to Pawn on capture, and are thus in principle different pieces
159 than the primordial pieces of the same type.
160 WinBoard F shows this difference by using alternate representations for pieces obtained through promotions.
161 In sizes where these are available, fairy pieces are used;
162 in other sizes a slightly smaller representation of the normal chess piece.
166 <table cellpadding="20"><tr><td valign="top">
167 <h3><a name="tag-A7">Displaying engine logos</a></h3>
169 WinBoard F offers the possibility to display logos of the playing engines next to the clock.
170 The options -firstLogo, -secondLogo allow you to explicitly specify bitmap files for those.
171 The logos will be scaled to 2x1 aspect ratio, so results are better if they already have this to begin with.
174 There also is a persistent boolean option -autoLogo,
175 which makes WinBoard look automatically in the engine directory for a file called logo.bmp,
176 and display that if it finds it (and this is not overruled by an explicitly given file).
177 In ICS mode this option makes WinBoard look for a logo of the ICS in the logos folder,
178 e.g. freechess.org.bmp for FICS.
180 <h3><a name="tag-B2">Modernizing WinBoard protocol</a></h3>
182 WinBoard protocol lacked commands to control the engine's hash-table size and number of CPUs it could use.
183 This was of course because such things did not exist at the time when it was devised.
184 This situation was corrected in WinBoard 4.3, by adding the 'memory' and 'cores' commands.
185 These commands allow the GUI to specify the hash size and CPU number through the protocol interface,
186 with as a result they can now be set through the GUI, rather than requiring editing of obscure ini files.
189 Of course this only works on engines that actually support these features.
190 But (through Polyglot) all UCI engines do, so the dialogs to set these options were useful from the beginning.
192 </td><td valign="top">
193 <img src="marble.png">
196 <table cellpadding="20"><tr><td valign="top">
197 <img src="Shogi.png">
198 </td><td valign="top">
199 <h3><a name="tag-A8">Bitmaps for traditional Japanese Shogi pieces</a></h3>
201 As an extra service to Japanese users, board size 'moderate' (58) uses a complete set of traditional Shogi pieces in variant shogi.
202 To properly use them, the options -allWhite and -flipBlack were added, and have to be set to true.
203 Other board sizes (i.e. middling and bulky) use the normal chess-style bitmaps,
204 except that special forms of the Gold are used to indicate some promoted pieces.
208 <h3><a name="tag-C1">Overview of new command-line options</a></h3>
210 Below follows a table that lists the new features,
211 the command-line option needed to control them,
212 and if there is a menu provided that can switch the option while WinBoard is running
213 (command-line options exert their effect only at startup).
214 Note that, unlike WinBoard 4.2.7, the WinBoard 4.3 series is fully castling and e.p. aware,
215 and handles the castling, e.p. and 50-move field in FENs on input and output as should be expected.
217 <table cellpadding="3" border="1"><tr><td width="310">
218 <h3>command-line option</h3>
221 </td><td width="250">
225 </td><td bgcolor="lightblue">
226 <strong>ENGINE-ENGINE ADJUDICATION OPTIONS<strong>
230 -adjudicateLossThreshold 0 (*x)
232 adjudicates engine-engine game based on score
234 Options -> Engine... (x)
236 -checkMates false (*x)
238 detect and end game on checkmates and stalemates
240 Options -> Engine... (x)
242 -testClaims false (*x)
244 WinBoard corrects false RESULT claims
246 Options -> Engine.. (x)
248 -materialDraws false (*x)
250 adjudicate draw when no mating material present
252 Options -> Engine.. (x)
254 -trivialDraws false (*x)
256 adjudicate draw in endgames like KRKR and KNNK
258 Options -> Engine.. (x)
260 -adjudicateDrawMoves 0 (*x)
262 adjudicate draw when game lasts too long
264 Options -> Engine.. (x)
268 number of reversible moves after which to adjudicate draw
270 Options -> Engine.. (x)
272 -repeatsToDraw 6 (*x)
274 adjudicate draw when a position occurs this many times
276 Options -> Engine.. (x)
278 -firstScoreAbs false (x)
280 -secondScoreAbs false (x)
282 Engine indicates score for white, even when playing black
284 Options -> Adjudications.. (xboard-only)
288 Adjudicate the game in progress as win to white, win to black, or draw
290 Action -> Adjudicate to White
292 Action -> Adjudicate to Black
294 Action -> Adjudicate Draw
297 </td><td bgcolor="lightblue">
298 <strong>TIME-CONTROL AND TIMING OPTIONS</strong>
304 -secondTimeOdds 1 (x)
306 reduce the thinking time of the mentioned engine by the given factor
308 Options -> Engine Settings.. (xboard only)
312 determines what happens when both engine have time odds
314 Options -> Engine Settings.. (xboard only)
320 engine must use node count for its time control, as if running at specified rate
324 -matchPause 10000 (*x)
326 number of msec to wait between games in match mode
330 -delayBeforeQuit 0 (*x)
332 -delayAfterQuit 0 (*x)
334 timing parameter specifying how to terminate the engine processes
340 adjust the clocks by 1 minute (up or down)
342 left- or right-cick on clock in edit-game mode
346 lower the CPU priority of the engines
351 </td><td bgcolor="lightblue">
352 <strong>DISPLAY-LOOK OPTIONS</strong>
356 -liteBackTextureFile "" (*)
358 -darkBackTextureFile "" (*)
360 -liteBackTextureMode 1 (*)
362 -darkBackTextureMode 1 (*)
364 Allows you to use any bitmap picture for displaying the board square
368 -renderPiecesWithFont "" (*)
370 specifies a true-type Chess font to be used for piece symbols
374 -fontPieceToCharTable "" (*)
376 specifies which font character to use for the various piece types
380 -overrideLineGap 1 (*)
382 controls the width of the black grid lines between squares
386 -fontPieceBackColorWhite #0 (*)
388 -fontPieceForeColorWhite #0 (*)
390 -fontPieceBackColorBlack #0 (*)
392 -fontPieceForeColorBlack #0 (*)
394 control piece colors in font-based rendering
398 -fontPieceSize 80 (*)
400 tunes the size of pieces in font-based rendering (% of square size)
404 -highlightMoveWithArrow false (*)
406 draws a big arrow to indicate the move last played
408 Options -> General...
410 -highlightArrowColor #FFFF80 (*)
412 controls the color of the highlight arrow
422 causes WinBoard to display player logos above the board, next to the clocks.
428 Swap white and black clock
430 Options -> Swap Clocks
433 </td><td bgcolor="lightblue">
434 <strong>(UCI) ENGINE OPTIONS</strong>
440 tells WinBoard where you installed Polyglot, for automatic invocation with UCI engines
442 Options -> Global Settings... (x)
444 -polyglotBook "" (*x)
446 tells WinBoard which opening book it should use, or should make Polyglot use.
448 Options -> Global Settings... (x)
450 -usePolyglotBook false (*x)
452 turns the use of the Polygot book on or off
454 Options -> Global Settings... (x)
456 -defaultPathEGTB "c:\egtb" (*x)
458 folder where to find end-game tables
460 Options -> Global Settings... (x)
462 -defaultCacheSizeEGTB 4 (*x)
464 specifies the cache size for UCI engines
466 Options -> Global Settings... (x)
468 -defaultHashSize 64 (*x)
470 specifies the size of the main hash table for UCI engines and WinBoard engines implementing the memory command
472 Options -> Global Settings... (x)
474 -firstIsUCI false (x)
476 -secondIsUCI false (x)
482 tells WinBoard the corresponding engine should be run through Polyglot
486 -firstHasOwnBookUCI true (x)
488 -secondHasOwnBookUCI true (x)
490 -fNoOwnBookUCI true (x)
492 -sNoOwnBookUCI true (x)
498 tells WinBoard (or Polyglot) if the engine should use its own opening book
500 Options -> Global Settings... (x)
504 sets the maximum number of CPUs an SMP engine can use.
505 (only affects engines that support the <strong>cores</strong> command of WB protocol)
507 Options -> Global Settings... (x)
511 specifies which end-game tables are installed on the computer,
512 and where they can be found
513 (e.g. "nalimov:\chess\egtb,scorpio:\chess\bitbases")
519 -secondOptions "" (x)
521 sets engine-defined options of UCI engines and WinBoard engines that support the option feature.
523 Options -> Engine #1 Settings... (x)
525 Options -> Engine #2 Settings... (x)
527 -firstNeedsNoncompliantFEN "" (x)
529 -secondNeedsNoncompliantFEN "" (x)
531 directly specifies castling and e.p. field to be used in all FENs sent to mentioned engine
536 </td><td bgcolor="lightblue">
537 <strong>CHESS-VARIANT OPTIONS</strong>
545 -holdingsSize -1 (*x)
547 specifies the board format and nr of piece types that can be dropped,
548 when you want it to be different from what is usual in the chosen varint
550 File -> New Variant...
554 supports many new variants: xiangqi, shogi, fischerandom, capabanca, gothic, caparandom, janus,
555 shatranj, courier, knightmate, berolina, falcon, cylinder, fairy, super, great
557 File -> New Variant... (x)
559 -defaultFrcOpening -1 (x)
561 allows you to play from a specific opening shuffle, or make a new shuffle each game
563 File -> New Shuffle Game... (x)
565 -pieceToCharTable "" (x)
567 allows you to specify by which letters pieces are referred to in FEN and SAN,
568 if you want to deviate from what is usual for the current variant
574 displays opponent pieces uppside down (for Shogi)
580 use white bitmaps (with black outline) also for display of black pieces (for Shogi)
585 </td><td bgcolor="lightblue">
586 <strong>PGN FILE OPTIONS</strong>
590 -pgnExtendedInfo false (*x)
592 save engine output (depth, score time) in PGN
596 -pgnEventHeader </br>"Computer Chess Game" (*x)
598 specify the event for the PGN event tag
602 -saveOutOfBookInfo true (*)
604 include an 'annotator' tag in the PGN file
608 -hideThinkingFromHuman false (*x)
610 suppresses the engine thinking output in the display, without the need to switch it off
611 (so it can still appear in the PGN file)
613 Options -> General... (x)
617 sets the name of the human player
619 Mode -> Enter Username... (x)
622 </td><td bgcolor="lightblue">
623 <strong>USER-INTERFACE OPTIONS AND WINDOW CONTROL</strong>
627 -moveHistoryUp true (*)
637 controls opening, placement and size of a window containing the moves of the current game
638 (new in 4.4 is that all X and Y coordinates of auxiliary windows are stored relative to the main window)
640 Mode -> Show Move History (x)
642 -evalGraphUp true (*)
652 controls opening, placement and size of a window containing a graph of the
653 evaluation score of the engine(s) as a function of move number of the current game
655 Mode -> Show Evaluation Graph
657 -engineOutputUp true (*)
667 controls opening, placement and size of a window containing the thinking output of the engine(s)
669 Mode -> Show Engine Output (x)
671 -stickyWindows true (*)
673 make the various windows snap onto each other, and stick together
677 -showEvalInMoveHistory true (*)
679 depth/score info of the engine is included as comments in the move history window
681 Options -> General...
683 -evalHistColorWhite #FFFFB0 (*)
685 -evalHistColorBlack #AD5D3D (*)
687 determines the color of the eval-score comments in the move-history window
691 -autoDisplayComment true (*)
693 causes a window for displaying PGN comments to pop up automatically when such a comment is encountered
697 -autoDisplayTags true (*)
699 causes a window with PGN tags to be displayed as soon as a PGN file is loaded
703 -gameListTags "eprd" (*)
705 specifies the PGN tags that should be displayed in the game list
707 Options -> Game List...
711 suppress update of display on all machine and ICS moves (moves, clocks, icon)
716 </td><td bgcolor="lightblue">
717 <strong>ICS OPTIONS</strong>
723 kibitz engine Thinking Output to ICS, and capture opponent kibitz for in PGN
727 -zippyShortGame 0 (x)
729 ban opponents on ICS that abort without playing
734 </td><td bgcolor="lightblue">
735 <strong>MISCELLANEOUS</strong>
739 -debugFile "winboard.debug" (x)
741 -nameOfDebugFile "winboard.debug" (x)
743 allows you to specify an alternative name for saving the debug information
747 -engineDebugOutput 0 (x)
749 tells WinBoard if and how to put protocol-violating output in the debug file
755 save chess-board display as diagram in bitmap file
756 (only works for the smaller board formats!)
758 File -> Save Diagram...
760 -defaultFrcPosition -1 (*x)
762 specify the number of the starting position in shuffle Chess variants
764 File -> New Shuffle Game... (x)
768 display only those lines in the game list that contain a given string
774 A nonzero value for this option causes the loadGameIndex or loadPositionIndex
775 to rewind to the beginning of the Games or Position file when it reaches
776 the given value in auto-increment match mode.
777 This mode is specified by a negative value as argument of the /lgi or /lpi options,
778 where -1 increments the index after every game of the match,
779 and -2 after every two games (so that each position is played with black and white).
783 -sameColorGames 0 (x)
785 play a match, but without alternating the colors (overrules -matchGames)
790 The value with which the option is listed is the default value.
791 If it is false or true, it is a Boolean option, a number implies an integer option.
792 A value starting with # indicates an RGB color indication in hexadecimal notation.
793 Options the settings of which are saved into the winboard.ini file are marked with (*).
796 </div><!-- for id="content", starts in the include above -->
797 <!--#include virtual="/server/footer.html" -->
800 <p>Please send general FSF & GNU inquiries to
801 <a href="mailto:gnu@gnu.org"><gnu@gnu.org></a>.
802 There are also <a href="/contact/">other ways to contact</a>
804 Please send broken links and other corrections or suggestions to
805 <a href="mailto:bug-xboard@gnu.org"><bug-xboard@gnu.org></a>.</p>
808 href="/server/standards/README.translations.html">Translations
809 README</a> for information on coordinating and submitting translations
812 <p>Copyright © 2009, 2010, 2011, 2012 Free Software Foundation, Inc.</p>
814 <p>This page is licensed under a <a rel="license"
815 href="http://creativecommons.org/licenses/by-nd/3.0/us/">Creative
816 Commons Attribution-NoDerivs 3.0 United States License</a>.</p>
819 <!-- timestamp start -->
820 $Date: 2012/02/29 05:48:58 $
821 <!-- timestamp end -->