Merge commit 'v4.3.16'
[xboard.git] / winboard / readme.txt
1                              WinBoard 4.3.16 RELEASE NOTES\r
2 \r
3 Compared to version 4.3.15 described below, this version features\r
4 \r
5 New command-line options\r
6 /niceEngines=N       for adjusting the priority of engine processes so they don't soak up all your system resources\r
7 /firstOptions="..."   Allows the setting of options that engines define through the feature option="..." commands\r
8 /secondOptions="..."\r
9 /firstLogo=filename.bmp  Displays the mentioned bitmap next to the clock (with H:W =1:2 aspect ratio) (WB only)\r
10 /secondLogo=filename.bmp\r
11 /autoLogo=false          get logo files automatically from engineDirectory\logo.bmp\r
12 \r
13 General enhancements:\r
14 * New WB-protocol command: 'feature option="NAME -TYPE VALUE OTHER"', which engines can use to define options\r
15 * New WB-protocol command: 'option NAME VALUE' used to set value of engine-defned options.\r
16 * implements /delayAfterQuit and /delayBeforeQuit in XBoard, and uses SIGKILL to terminate rogue engine processes\r
17 \r
18 \r
19 \r
20                              WinBoard 4.3.15 RELEASE NOTES\r
21 \r
22 Compared to version 4.3.14k described below, this version features\r
23 \r
24 New command-line options\r
25 /rewindIndex=N (for the new auto-increment mode of the loadGameIndex or loadPositionIndex in match mode)\r
26 /sameColorGames=N (for playing a match where the same player has white all the time)\r
27 /egtFormats="..." (for specifying where various end-game tables are installed on the computer)\r
28 \r
29 New menu items\r
30 + Time-odds factors can be set in the time-control dialog\r
31 + Nr of CPUs for SMP engines can be set in the Options -> UCI dialog\r
32 + Own-Book options can be switched from the Options -> UCI dialog\r
33 + The ScoreIsAbs options can be set from the Options -> Engine dialog\r
34 + New-Variant menu adds Superchess\r
35 \r
36 General Enhancements:\r
37 * WinBoard engines can now also use the Polyglot opening book (implemented as general GUI book)\r
38 * New WB-protocol commands memory, cores and egtpath make interactive setting of these parameters \r
39   possible on WB engines\r
40 * New Polyglot is available that relays the interactive setting of these parameters to UCI engines\r
41 * Match mode suports an auto-increment mode, so that all games or positions from a file can be played\r
42 * Draw claims with Kings and an arbitrary number of like Bishops (e.g. KBBKB) are accepted\r
43 \r
44 The source tree in original xboard 4.2.7 format can now be compiled under Cygwin with the aid\r
45 of the cygwin.mak file in the ~/winboard/ subdirectory of the source releasy, after you put\r
46 the hep-file from an executabl distribution there. Maefiles for other compilers are not updated\r
47 since 4.2.7, as I do not have those compilers.\r
48 \r
49 \r
50                              WinBoard 4.3.14k RELEASE NOTES\r
51 \r
52 Compared to version 4.3.13 described below, this version features\r
53 \r
54 New command-line options: \r
55 /autoKibitz (for relaying the PV info of the engine to the ICS) \r
56 /userName="..." (for setting the name of the Human player, also as menu) \r
57 /engineDebugOutput=N (controlling the writing of engine output to debug file) \r
58 /firstNPS=N (for time management by node count or CPU time) \r
59 /secondNPS=N (likewise for the other engine) \r
60 \r
61 New Menu items \r
62 + Enter Username (same as /userName command-line option) \r
63 + Save Diagram (for saving the Chessboard display as bitmap file) \r
64 + Machine Both (not implemented yet, but menu item already provided) \r
65 + New-Variant menu adds CRC, Janus and Berolina (the latter only with legality testing off!) \r
66 + Any variant can be played from a shuffled opening setup \r
67 \r
68 Bugfixes: \r
69 * Problems with switching the variant in ICS zippy mode solved \r
70 * In ICS observing mode game history is now fully accessible \r
71 * Moves are not fed to engine in zippy mode, when observing a game from a variant unknown to the engine \r
72 * a problem with loading PGN of FRC games with move disambiguation and initial castling rights was fixed.\r
73 * A bug in the clock display that made previous versions of WinBoard crash for tiny displays is fixed\r
74 \r
75 General enhancements: \r
76 * variant name displayed in title bar in ICS mode, when not 'normal' \r
77 * when receiving a challenge in ICS zippy mode, it is checked if the engine supports the variant (/zippyVariants="..." can still be used to limit the allowed variants, and for protocol-1 engines is still the only thing to go on) \r
78 * when loading a game from a PGN file, WB automatically switches to the variant specified in the PGN tags \r
79 * when starting from a loaded position (using /loadPositionFile), this position will be used on subsequent 'New Game' commands as well (until we switch variant)\r
80 \r
81 New is also that the source tree is now brought back in the original WinBoard 4.2.7 format, including\r
82 xboard source files. Note, however, that the xboard sources are from an older date, and I did not test\r
83 if they still compile together with the much newer backend sources. I did add code in xboard.c to recognize\r
84 the new command-line options I added since then, and in so far they are back-end options that should be enough \r
85 to make them work. This is completely untested, though; I did not even try to compile it. Last time anyone\r
86 built a working xboard.exe from this was at a stage where WinBoard did have adjustable board size, allowing\r
87 it to play Xiangqi. But no crazyhouse holdings yet.\r
88 \r
89                              WinBoard 4.3.13a RELEASE NOTES\r
90 \r
91 This version of WinBoard_F fixes several bugs in 4.3.12, and also addse a few new features.\r
92 The new features include:\r
93 - some more fairy pieces, so that each side now has 22 piece types in stead of 17,\r
94 making most fairy pieces available in board size "petite" (next to "bulky" and "middling"),\r
95 making the ArchBishop and Chancellor, as well as one wildcard piece (the Lance) available in all \r
96 sizes from "petite" to "bulky".\r
97 - The FRC support is fully fixed, both in local and ICS mode.\r
98 - A mechanism is provided for safe draw claiming in cases where a 3-fold repetition woud occur only\r
99   after your own move. In this case a draw will be awarded by WinBoard if the engine sends "offer draw"\r
100   before making its move.\r
101 - Genuine draw offers are not passed on immediately to the opponent but held up to when the offerer announces\r
102   its move.\r
103 - Variants FRC, Cylinder and Falcon are added to the "New Variant..." menu.\r
104 - Support for playing time-odds games is added. (Options /firstTimeOdds, /secondTimeOdds, /timeOddsMode)\r
105 - A mechanism is provided for attaching WinBoard options to the engine command, to create options that\r
106 follow the engine (e.g. time odds) in a tournament run under a tournament manager.\r
107 Bugfixes include:\r
108 - Shatranj in ICS mode (did not work at all before)\r
109 - Some draw adjudications (QRKR was mistaken for KRKR, and KBKB with like Bishops is now recognized)\r
110 - time info in the PGN is now correct\r
111 \r
112 \r
113                                         COMPILING\r
114 \r
115 This version was developed using gcc under cygwin. To compile, the following set of commands was used,\r
116 given from the directory where all the source files are:\r
117   flex -oparser.o -L parser.l\r
118   windres --use-temp-file --include-dir . winboard.rc -O coff -o wbres.o\r
119   gcc -O2 -mno-cygwin -mwindows -c *.c\r
120   gcc -mno-cygwin -mwindows *.o -lwsock32 -lwinmm -o winboard.exe\r
121   strip winboard.exe\r
122   rm *.o\r
123 The first command is only needed to produce a new parser.c from the parser.l. The parser.c is included\r
124 in this release, so you only need flex if you want to modify the parser. \r
125 The windres command builds the resource file wbres.o from winboard.rc and all bitmaps and sound files in\r
126 the sub-directories.\r
127 This release should be completely self-sufficient; no source files from other releases are needed,\r
128 even the unmodified files are included here,\r
129 \r
130                                        DESCRIPTION\r
131 \r
132 This WinBoard (beta-)version is derived from Allessandro Scotti's Winboard_x, and supports the following new options, mainly in the area of adjudication of engine-engine games, improved Crazyhouse support, and allowing variants with non-conventional pieces and or board sizes. (All option are shown here with their default values):\r
133 \r
134 /variant=normal \r
135 This (already existing) option has been expanded with several new variants, involving non-conventional pieces and deviating board sizes. The board size is automatically adapted to the selected variant, unless explicitly overruled (see below). The new variants are (with default board size, files x ranks, in parentheses): \r
136 \r
137 variant name    Game           board     description\r
138 knightmate    Knightmate        (8x8)  Variant where the King moves as a Knight, and vice versa \r
139 capablanca    Capablanca Chess (10x8)  Variant featuring Archbishop and Chancellor as new pieces \r
140 gothic        Gothic Chess     (10x8)  Same as Capablanca, with a more interesting opening position \r
141 courier       Courier Chess    (12x8)  a Medieval form that combines elements of Shatranj and modern Chess \r
142 shogi         Shogi             (9x9)  Japanese Chess \r
143 xiangqi       Xiangqi          (9x10)  Chinese Chess \r
144 fairy         Fairy Chess       (8x8)  Variant were you can use all pieces of other variants together \r
145 fischerandom  FRC               (8x8)  Shuffle variant with generalized castling rule\r
146 cylinder      Cylinder Chess    (8x8)  left and right board edge are connected\r
147 falcon        Falcon Chess     (10x8)  a patented variant featuring two Falcon pieces\r
148  \r
149 The variant can be set from the newly added "File -> New Variant..." sub-menu. \r
150 Extra board files are indicated by the letters i, j, k, l, ... For boards with more than 9 ranks, the counting starts at zero! More than 10 ranks is not tested and unlikely to work in the area of PGN saving / reading. Non-FIDE pieces will be referred to in FENs and PGN by letters that depend on the variant, and might collide with piece designators in other variants. E.g. in Xiangqi 'C' is a Cannon, in Capablanca Chess it is a Chancellor. Pieces that do not belong in a variant cannot be addressed in FEN and PGN either, for as long as that variant is selected, unless the letter assignment is overruled with the aid of the /pieceToCharTable option. The variant is not saved in the winboard.ini file; on start-up we always get variant "normal" unless we use the command-line option, or have added the option to the winboard.ini file manually (in which case it will disappear when this file is overwritten by WinBoard saving its options). \r
151 WinBoard_F knows the movement of all pieces occurring in Capablanca Chess (of which FIDE Chess is a subset), Shatranj, Courier, Xiangqi and 9x9 Shogi, so that these games can be played with legality testing enabled. \r
152 \r
153 /pieceToCharTable="PNBRQFEACWMOHIJGDVLSUKpnbrqfeacwmohijgdvlsuk"  (*********** ALTERED IN 4.3.13 *******)\r
154 Each piece that WinBoard knows (in its legality test) has a letter associated with it, by which it will be referred to in FEN or PGN. The default assignment can be overruled with this option. The value has to be a string of even length, with at least 12 characters. The first half of the string designates the white pieces, the second half the black. \r
155 The last letter for each color will be assigned to the King. (This is the piece that moves as an orthodox King; note that Nightmate and Xiangqi have a different royal piece.) All letters before it will be assigned to the other pieces in the order: \r
156 \r
157 P Pawn                 (move often depends on variant) \r
158 N Knight               (move subtly different in Xiangqi (where it is written as H) or Shogi) \r
159 B Bishop \r
160 R Rook \r
161 Q Queen                (Lance L in Shogi) \r
162 F Ferz/General         (The Shatranj 'Queen' and Xiangqi 'Adviser', used for Silver General S in Shogi.) \r
163 E Alfil/Elephant       (Moves subtly different in Xiangqi vs Shatranj/Courier) \r
164 A Archbishop/Cardinal  \r
165 C Chancellor/Marshall  \r
166 W Wazir/GrandVizer     (Gold General G in Shogi, in Xiangqi it is royal and denoted by K) \r
167 M Commoner/Man\r
168 O Cannon/Pao \r
169 H Nightrider           (Promoted Knight in Shogi and CrazyHouse) \r
170 I                      (Promoted Bishop in Shogi and CrazyHouse) \r
171 J                      (Promoted Rook   in Shogi and CrazyHouse) \r
172 G Grasshopper          (Promoted Queen in Crazyhouse, promoted Lance in Shogi) \r
173 D Dabbaba              (Promoted Silver in Shogi) \r
174 V Falcon               wildcard\r
175 L Lance                wildcard\r
176 S Snake                wildcard\r
177 U Unicorn              (representation of Royal Knight in Knightmate, used as promoted Pawn in Shogi) \r
178 K King \r
179  \r
180 NOTE THIS ORDER HAS BEEN ALTERED IN 4.3.13 compred to 4.3.12. Sorry about that; this was unavoidable to accomodate an engine that can play a Crazyhouse version of Capablanca Chess. This made it impossible to continue using the Archbishop and Chancellor as promoted versions of Bishop and Rook.\r
181 \r
182 NEW IN 4.3.13 is the concept of a wildcard piece: WinBoard will accept any move of such a piece as legal, even\r
183 when legality testing is switched on. This allows participaton of a limited number of pieces that WinBoard \r
184 does not know, while still applying legality testing to the other pieces. The only rice to pay, is that WinBoard\r
185 cannot recognize checks (and thus mates) with such pieces. So if they participate, /testClaims should be off,\r
186 as WinBoard will no longer recognize all mates.\r
187 \r
188 Pieces that are not mentioned (because the argument has less than 44 characters) will remain disabled. Mentioned pieces can be disabled by assigning them a '.' (period). They are then not recognized in FEN or PGN input. Non-FIDE pieces that are not assigned a letter will also not appear on the promotion menu. It is not advisable to disable a piece that is present in the opening position of the selected variant, though. \r
189   Promoted pieces that need to be distinguished from original pieces of the same type (because of demotion on capture and transfer to the holdings) will be indicated by the letter for the unpromoted piece with a '+' in front of it (Shogi), or by the letter of the promoted piece with a '~' after it (Crazyhouse, Bughouse, in general everything with holdings that is not Shogi). To achieve this, they should be assigned the characters '+' or '~', respectively.\r
190   All the new pieces have a native bitmap representation in the board sizes 'bulky' and 'middling'. For all window sizes that do not support such fairy bitmaps, promoted NBRQ are represented as a 2-sizes-smaller normal piece symbol, so that Crazyhouse can be played at any size. People disliking the fairy representations might even prefer this. \r
191   There is an enhanced 'Edit Position' menu popup (right-clicking on the squares after selecting this mode in the main menu), featuring some common non-FIDE pieces, and 'promote' and 'demote' options to make those not directly in the menu. The promotion popup shows ArchBishop and Chancellor in Capablanca and Gothic, (or in fact in any game where this piece is not disabled or a promoted version of a normal piece), and leaves only the options YES / NO in Shogi. In Xiangqi there are no promotions.\r
192   From version 4.3.13 on, the default assignment of characters to pieces is variant dependent. This makes the\r
193 need for using this option even smaller. Xiangqi now uses H for Horse and C for Cannon. Shatranj uses B for Elephant and Q for Ferz (because some existing engines and ICC expect this)\r
194 \r
195 /fontPieceToCharTable="PNBRQFEACWMOHIJGDVLSUKpnbrqfeacwmohijgdvlsuk" (******* ALTERED IN 4.3.13 *******)\r
196 This option is similar to /pieceToCharTable, but sets the font character that is used to display the piece on the screen (when font-based rendering is in use), rather than in the FEN or PGN. The default setting should work with George Tsavdaris' WinboardF font, which uses the 'intuitive' mapping of font characters to symbols. With font-based rendering the fairy pieces can be used at any board size.\r
197 Note that UHIJGS are also used to represent the promoted versions of PNBRQF, in games like Crazyhouse and Shogi, where the promotion has to be undone on capture. In such games you are likely to prefer a different representation of those pieces then when they represent true fairy pieces.\r
198 NOTE THAT THE ORDER HAS CHANGED IN 4.3.13 compared to 4.3.12\r
199 \r
200 /boardWidth=-1 /boardHeight=-1 \r
201 Set a number of files and ranks of the playing board to a value that will override the defaults for the variant that is selected. A value of -1 means the variant default board size will be used for the corresponding parameter (and is itself the default value of these options). These parameters can be set in the "Files -> New Variant..." sub-menu, where they are reset to the default -1 if you OK the chosen variant without typing something to overrule it. These parameters are saved in the winboard.ini file. (But unless you saved while a variant with board-size override was selected, they will always be saved as -1.) \r
202 A variant with a non-standard board size will be communicated to the engine(s) with the board size prefixed to the variant name, e.g. "variant 12x8_capablanca". In protocol 2 the engine must first enable this feature by sending "boardsizeFxR" amongst the accepted variants, where F is the maximum number of files, and R the maximum number of ranks, as decimal numbers. \r
203 \r
204 /holdingsSize=-1 \r
205 Set the size of the holdings for dropable pieces to a value that will override the default for the variant that is selected. A value of -1 means the variant default holdings size will be used for that parameter (and is itself the default value of this options). This parameter can be set in the Files -> New Variant... sub-menu, where it is reset to the default -1 if you OK the chosen variant without typing something to overrule it. This parameters is saved in the winboard.ini file. \r
206 To disable holdings, set their size to 0. They will then not be displayed. For non-zero holding size N, the holdings are displayed left and right of the board, and piece drops can be effected by dragging pieces from the holdings to the drop square. In bughouse, the holdings will be filled by the ICS. In all other variants, captured pieces will go into the holdings (after reversing their color). Only the first N pieces of the /pieceToCharTable argument will go into the holdings. All other pieces will be converted to Pawns. (In Shogi, however they will be demoted in the regular way before determining if they fit.) Pieces that are disabled (per default and per /pieceToCharTable option) might not be counted when determining what are the first N pieces. \r
207 Non-standard holdingsize will be communicated to the engine by prefixing it (together with the board size, even if this is standard) to the variant name, e.g. "variant 7x7+5_shogi". In protocol 2 the engine should enable this feature by sending "holdingsH" amongst the variant names, where H is the maximum acceptable holdings size as a decimal number. \r
208 \r
209 /firstTimeOdds=1 /secondTimeOdds=1  (********** NEW IN 4.3.13 *********)\r
210 The time given to first or second engine (initially, for later sessions, as increment or in the 'st' command)\r
211 is divided by the given factor. This replaces the time odds feature of WinBoard_x, where two times separated by\r
212 a slash could be given for the /timeContron parameter or in the time-control field of the menu.\r
213 \r
214 /timeOddsMode=1\r
215 This option determines how the case is handled where both engines have a time-oddsfactor differing from 1.\r
216 In mode 1 the times will be scaled such that the engine that gets the most time will get the nominal time,\r
217 in mode 2 both engines will play at reduced time.\r
218 \r
219 /alphaRank=FALSE \r
220 When this parameter is true, a-h are converted to 1-9, and vice versa, in all move output and input (to PGN files or SAN move display as well as in communication with the engine). This might be useful for Shogi, where conventionally one uses letters to designate ranks, and digits to designate files. Engines that want to use this option must make sure pieces are never represented by lower case! This option can be set from the Files -> New Variant... menu, where it defaults to FALSE unless you explicitly set it. It is not saved in the winboard.ini file. \r
221 This kludge does not seem to work for reading PGN files. Saving works fine. For now, using it is not recommended. In the future it might be redefined as only affecting engine-engine communication, .\r
222 Note that the PGN format in Shogi also leaves out the trailing '+' as check indicator: In Shogi such a trailing '+' means promotion, while a trailing '=' means defer promotion. Prefix '+' signs are used on moves with promoted pieces, disambiguation is done western SAN style.\r
223 \r
224 /allWhite=FALSE\r
225 Causes the outline of the 'white' pieces to be superimposed onto the 'black' piece symbols as well (as a black outline) when native bitmaps are used (as opposed to font-based rendering). This is useful if we choose a very light color to represent the 'black' pieces. It might be particularly useful in Shogi, where the conventional representation of the 'black' pieces is as upside-down white pieces, so that both colors would be white. This option is saved in the winboard.ini file, and can be set in the "Options -> Board..." sub-menu. \r
226 \r
227 /flipBlack=FALSE\r
228 Setting this option will cause upside-down display of the native piece bitmaps used to represent the pieces of the side that plays black, as would be needed for a traditional representation of Shogi pieces. It can be set from the "Options -> Board..." sub-menu, and it is saved in the winboard.ini file. For now, traditional Shogi bitmaps are only included for size "moderate". For other sizes you must depend on font-based rendering.\r
229 \r
230 /detectMate=TRUE \r
231 /testClaim=TRUE \r
232 /materialDraws=TRUE \r
233 /trivialDraws=FALSE \r
234 /ruleMoves=51 \r
235 /repeatsToDraw=6 \r
236 These are all options that only affect engine-engine play, and can be set from the "Options -> Engine..." sub-menu. They are all related to adjudication of games by the GUI. Legality checking must be switched on for them to work. \r
237 If /detectMate is TRUE, the GUI recognizes checkmate and stalemate (but not in games with holdings!), and ends the game accordingly before the engines can claim. This is convenient for play with engines that fail to claim, and just exit. \r
238  With /testClaim set, all result and illegal-move claims by engines that claim more than their own loss are scrutinized for validity, and false claims result in forfeit of the game. Useful with buggy engines. \r
239  The option /materialDraws=TRUE causes games with insufficient mating material to be adjudicated immediately as draws, in case the engines would not claim these draws. This applies to KK, KNK and KBK. (A bug in 4.3.12, which\r
240 overlooked KBKB with like Bishops as a legal draw, has been corrected in 4.3.13.)\r
241  The option /trivialDraws adjudicates KNNK, KBKB, KNKN, KBKN, KRKR and KQKQ to draws after 3 moves (to allow for a quick tactical win). Note that in KQKQ this might not be sound, but that problem would disappear once bitbase probing is implemented. (A bug in 4.3.12, which led to KQKR being considered a trivail draw, is corrected in 4.3.13)\r
242  The /ruleMoves determine after how many reversible moves the game is adjudicated as a draw. Setting this to 0 turns this option off. Draw claims by the engine are still accepted (with /testClaim=TRUE) after 50 reversible moves, even if /ruleMoves species a larger number. Note that it is perfectly legal according to FIDE rules to play on after 50 reversible moves, but in tournaments having two engines that want to play on forever is a nuisance in endings like KBNKR, where one of the engines thinks it is ahead and can avoids repeats virtually forever. \r
243 The option /repeatsToDraw makes the GUI adjudicate a game as draw after the same position has occurred the specified number of times. If it is set to a value > 3, engines can still claim the draw after 3-fold repeat. \r
244 All these options are saved in the winboard.ini file. \r
245 \r
246 /matchPause=10000 \r
247 Determines the number of milliseconds that is paused between two games of a match. In the old WinBoard this was always 10 sec, which was inconveniently long in fast games. If you make the pause too short, tardy engines might get into trouble, though. Saved in the Winboard.ini.\r
248 \r
249 /zippyVariants="normal,fischerandom,crazyhouse,losers,suicide,3checks,twokings,bughouse,shatranj"\r
250 This option already existed, (giving the varinats that an engine can play on an ICS), but now by default setting\r
251 that icludes virtually all variants that WinBoard knows and that can be played on ICC. In this mode, however,\r
252 WinBoard now also checks if the variant the ICS wants to play is supportd by the engine (i.e. if it occurs\r
253 in the list given by the variant feature). Only for protocol-1 engines (which do not provide this info to WinBoard)\r
254 you would need to restrict the number of variants to those the engine can play, to avoid accepting challenges\r
255 the engine cannot handle.\r
256 \r
257 Clocks\r
258 There is an "Options -> swap clocks" command, that swaps the position of white and black clocks (convenient in over-the-board matches, where the display is standing next to the board, and you want your own time to be displayed on your side of the screen). The clocks can be adjusted in "edit game" mode: right-clicking them adds one minute, left-clicking subtracts one minute. (Also for OTB matches, to keep them synchronized with the official match clock.) The flag-fell condition is now indicated as '(!)' behind the displayed time, to eliminate the necessity for overwriting the message in the title bar (which might contain indispensible information in match mode).\r
259 \r
260 /pgnExtendedInfo  contains time (******** NEW IN 4.3.13 *********)\r
261 If you selected this option in the "Options -> General..." menu, the search time is now also saved as a comment \r
262 in the PGN file with every move, together with the depth/score info (which WinBoard_x already did). The time\r
263 written is that reported by the engine if "Show Thinking" was on. If the engine does not give times,\r
264 the WinBoard clock is used in stead.\r
265 \r
266 Other improvements / changes\r
267 Castling rights and e.p. rights are now fully maintained, and considered in legality testing. They are imported from and written to FEN, as is the 50-move counter. (When reading an incomplete FEN they are still guessed, though.) \r
268 The time (in sec, or min:sec) is now always stored together with the PV information to the PGN, if storing the latter was requested (through ticking "extended PGN info" in "Options -> General..."). The saved time is the WinBoard clock time (as opposed to the time reported by the engine).\r
269 \r
270 Options from the engine command line (******** NEW IN 4.3.13 *********)\r
271 The command to startup the engine, as typed in the startup dialog box, or given to WinBoard in the \r
272 /firstChessProgram or /secondChessProgram (/fcp, /scp) can now contain options that are not passed to the\r
273 engine, but are interpreted by WinBoard. These would then overrule a similar option given in the winboard.ini\r
274 or in the command line. Every engine option following an option 'WBopt' would be treated this way. As tournament\r
275 managers use the /fcp and /scp options to pass the engines to WinBoard, this can be used to have engine-\r
276 dependent settings of WinBoard during a tournament. For instance, if we are playing a tournament at 40/5' time\r
277 control, but we want to accomodate an engine that only supports incremental time controls, we can install that engine in the tournament manager as "badengine.exe hashsize=128 WBopt /timeIncrement=3". Every time WinBoard\r
278 would start up this engine, it would then use 5'+3" TC for that game.\r
279  Options that apply to one engine only can also be passed this way. Such options contain 'first' or 'second' as\r
280 part of their name, depending on the engine they should apply to. As a given engine will play some of its games\r
281 as first and others as second during the tourney, to create an option that follows the engine, we need WinBoard\r
282 to dynamically decide if it should use the 'first' or 'second' flavor of the option, depending on which\r
283 engine startup command provided the option. This is indicated by letting the option contain '%s' in places\r
284 where WinBoard should read 'first' or 'second'. For example "strongengine.exe WBopt /%sTimeOdds=10" would\r
285 give the engine a time-odds factor of 10, whenever it plays, irrespective if it plays as first or second engine.\r
286  Note that options that do not come in a 'first' or 'second' flavor can still be passed to only one engine by\r
287 putting the WinBoard protocol commands in the init string. E.g., if we want to limit the search depth of\r
288 a particular engine to 6 ply in all its games. we can give 'engine.exe WBopt /%sInitString="newnrandom\nsd 6\n"',\r
289 so that only the applicable engine receives the 'sd 6' command.