added a what's new section
[xboard.git] / whats_new / 4.5.0 / News-4.5.0.html
1 <!--#include virtual="/server/header.html" -->
2 <title>XBoard - GNU Project - Free Software Foundation - NEWS</title>
3 <!--#include virtual="/server/banner.html" -->
4 <h2>What is new in WinBoard / XBoard 4.5.0?</h2>
5 <table cellpadding="20"><tr valign="top"><td>
6 <h4>General New Features</h4>
7 <ul>
8 <li><a href="#tag-C13">Each user his own settings file</a></li>
9 <li><a href="#tag-D1">More logical (and standard) menu structure</a></li>
10 <li><a href="#tag-C6">Translation into other languages (WB)</a></li>
11 <li><a href="#tag-A3">Walking the PV of an engine</a></li>
12 <li><a href="#tag-A2">Exploring variations</a></li>
13 <li><a href="#tag-C4">Playing through PGN variations</a></li>
14 <li><a href="#tag-D2">Annotating a game with analysis results</a></li>
15 <li><a href="#tag-C12">Editing Comments</a></li>
16 <li><a href="#tag-C10">Controlling move choice of the GUI book</a></li>
17 <li><a href="#tag-C11">Keeping the clock in sync in tournaments</a></li>
18 <li><a href="#tag-C9">Starting an engine match from the menu</a></li>
19 <li><a href="#tag-A1">Fixed thinking time per move</a></li>
20 <li><a href="#tag-A5">Improved multi-PV support</a></li>
21 <li><a href="#tag-A4">Where your pieces can move to</a></li>
22 <li><a href="#tag-A8">Editing crazyhouse holdings</a></li>
23 <li><a href="#tag-A9">Thai Chess (Makruk) and Seirawan Chess</a></li>
24 <li><a href="#tag-C7">Non-compliant FEN and SAN input</a></li>
25 <li><a href="#tag-C8">Improved Xiangqi adjudications</a></li>
26 <li><a href="#tag-D4">Allowing engines to setup a position</a></li>
27 </ul>
28 </td><td>
29 <h4>XBoard -> WinBoard Convergence</h4>
30 <ul>
31 <li><a href="#tag-A6">Evaluation graph (XB)</a></li>
32 <li><a href="#tag-A7">Settings file (XB)</a></li>
33 <li><a href="#tag-B1">Filtering the game list (XB)</a></li>
34 <li><a href="#tag-B4">Game-List options dialog (XB)</a></li>
35 <li><a href="#tag-C1">Recalling the ICS input history (XB)</a></li>
36 <li><a href="#tag-D3">Aribtrary board textures (XB)</a></li>
37 <li><a href="#tag-D5">Highlight arrow (XB)</a></li>
38 </ul>
39 <h4>ICS-client Enhancements</h4>
40 <ul>
41 <li><a href="#tag-B2">Maintaining a healty ICS connection</a></li>
42 <li><a href="#tag-B5">Claiming a draw after your move</a></li>
43 <li><a href="#tag-B6">ICS seek graph</a></li>
44 <li><a href="#tag-B7">One-click moving</a></li>
45 <li><a href="#tag-B8">Observing your bughouse partner</a></li>
46 <li><a href="#tag-C2">Improved Chat-Box interface (WB)</a></li>
47 <li><a href="#tag-C3">Uploading games to an ICS</a></li>
48 <li><a href="#tag-C5">Side-by-side boards</a></li>
49 </ul>
50 </td><td>
51 <img src="winboardF.png">
52 </td></tr></table>
53 <h3><a name="tag-A1">Fixed thinking time per move</a></h3>
54 <p>
55 The clocks are now displayed counting down in fixed-time-per-move time controls.
56 This mode of time control can still be selected through the command-line
57 option -st (-searchTime), but in WinBoard it is now also possible
58 to select it interactively from the Options -> Time-Control menu dialog.
59 As soon as a player's turn comes up, his clock will be reset to the
60 selected time per move, and start counting down.
61 If he does not move before the clock reaches zero,
62 a time loss can result.
63 </p><p>
64 </p>
65 <h3><a name="tag-A2">Exploring variations</a></h3>
66 <p>
67 XBoard and WinBoard now allow you to explore variations on a given game,
68 much like you can do on an Internet Chess Server in "examine" mode.
69 You can do this in Edit Game mode, 
70 for the purpose of annotating the game with alternative variations,
71 or in Analyze mode, where an engine evaluates the various branches.
72 </p><p>
73 It works like this: you can use the &lt; and > buttons
74 (or equivalently, the Left and Right arrow keys,
75 or the Step -> Forward and Step -> Backward menu items),
76 to step through a game or variation.
77 When you are not at the end of the game, and start playing moves,
78 XBoard would normally truncate the game at that point,
79 and append the new move.
80 However, you can now indicate that the entered move starts a new variation
81 by keeping the Shift key pressed while entering it.
82 XBoard then stores the tail of the game in memory, rather than discarding it.
83 You can then continue the game along a new line of play,
84 and the arrow keys will step you through that new line
85 (the "current variation"),
86 </p><p>
87 When you have studied the variation to your satisfaction,
88 you can then use the Step -> Revert menu to recall the previous variation,
89 i.e. the one that XBoard stored last because you altered a move in it.
90 This brings you back to the position where you played the alternative move,
91 and puts back the original tail of the game, 
92 so that the arrow keys now step you through that.
93 The later variation you now abandoned will be irretrievably lost,
94 but as an alternative to 'Revert' there is a new 'Annotate' menu item,
95 which would add that variation as a comment
96 (in PGN variation format, i.e. between parentheses)
97 to the next move.
98 So you will see the alternative to the played move 
99 displayed in the comment window as soon as you play that move.
100 This can be repeated any number of times,
101 so you can make variations on variations
102 (leading to nested variation comments in the PGN).
103 </p>
104 <h3><a name="tag-C4">Playing through variations from PGN</a></h3>
105 <p>
106 PGN files can contain (nested) variations between parentheses.
107 WinBoard and XBoard have always treated such variations like comments,
108 adding them to the move after which they occurred,
109 and displaying them in the comment popup.
110 In WinBoard as well as XBoard it is now possible to right-click
111 such a variation in the comment popup,
112 in Edit Game or Analyze mode,
113 on which the current line will be shelved,
114 and the clicked variation will take over its place.
115 (See <a href="#tag-A2">Exploring Variations</a> above.)
116 </p><p>
117 The user can then play through the variation on the board in the
118 way he would normally play through the main line of the game.
119 When he is done, he can use Revert in the Step menu
120 to resume the main line.
121 </p>
122 <table cellpadding="20" valign="top"><tr><td>
123 <h3><a name="tag-A8">Editing a crazyhouse position</a></h3>
124 <p>
125 Previous versions of XBoard and WinBoard did not allow you to edit the holdings
126 in Edit Positon mode, which made this mode useless for setting up
127 crazyhouse or bughouse positions.
128 (You could still paste a bughouse FEN containing the holdings in brackets
129 between the board and side-to-move fields.)
130 The new version does allow such editing.
131 When you drag a piece into the holdings file,
132 it automatically puts it on the square designated for it,
133 and adapts the piece counts consistently.
134 When you drag it out of the holdings, the piece counts are decreased,
135 and if non-zero the other copies of the piece will stay in the holding
136 while you take one to the board.
137 </p><p>
138 It is even possible to add pieces in the holdings using the piece menu.
139 Setting an empty square on top of a stack of pieces,
140 will delete all these pieces.
141 </p>
142 </td><td>
143 <img src="crazy.png">
144 </td></tr></table>
145 <h3><a name="tag-A3">Walking the PV of an engine</a></h3>
146 <p>
147 XBoard and WinBoard now allow you to see the position the engine thinks
148 it will end up in (i.e. the positon at the end of the Principal Variation),
149 by right-clicking the board.
150 When you then move the mouse vertically, keeping the right button pressed,
151 it will step through all the positions of the PV that ly between this
152 end position and the current game position on which the engine is thinking
153 or analyzing.
154 This 'PV walk' will continue until you either release the right button,
155 or the engine moves,
156 after which the board display will revert to the current game position.
157 </p><p>
158 On right-clicking the board, 
159 you will always get to see the last PV the engine produced as thinking output.
160 (Show Thinking must be on for this feature to work.)
161 This can be a PV from before the engine made the move,
162 but if the engine is pondering,
163 it will in general be a PV from its ponder search.
164 In Two-Machines mode, you will get to see the PV of the
165 engine that is currently thinking.
166 </p><p>
167 You can also call up a PV in the board display by right-clicking
168 the Engine-Output window.
169 In this case you will get to see the PV that you clicked on.
170 So you can select from which engine you will see the PV,
171 but also walk through PVs of lower depth than the most recent one.
172 If the engine is in multi-PV mode,
173 you can select one of the alternative variations.
174 This also works for PVs received through an ICS from the opponent,
175 captured by the -autoKibitz option to the Engine-Output window.
176 </p><p>
177 Also in this case, the selected PV will remain displayed as long
178 as you keep the right mouse button down,
179 even when the engine in the mean time produces new lines
180 of thinking output.
181 (But not if it actualy moves; then you revert to the game.)
182 The line you selected will be highlighted in the Engine-Output window.
183 If a selected PV from before the engine moved starts with
184 a different move than was actually played,
185 the retraction of the played move is inserted before the PV.
186 </p><p>
187 This new feature interferes with the historic usage of the right mouse button,
188 namely the summoning up of the (now deprecated) piece-drop menu
189 in crazyhouse and bughouse.
190 For people that still want the old behavior,
191 an option -dropMenu true|false is provided.
192 The default value of this option is false,
193 but by setting it, the old behavior is restored,
194 and the PV display on right-clicking the board disabled.
195 </p>
196 <table cellpadding="20" valign="top"><tr><td>
197 <h3><a name="tag-A4">Where your pieces can move to</a></h3>
198 <p>
199 Experienced Chess players will not need it, or even dislike this option,
200 but it might be useful to a beginner.
201 And even an experienced Chess player might appreciate it 
202 when he plays a variant he is not so familiar with:
203 XBoard and WinBoard can now indicate the possible locations a piece can move to.
204 When you switch this option on,
205 as soon as you 'pick up' a piece with the mouse,
206 (i.e. left-click it, for as long as you keep the left mouse button down),
207 XBoard will indicate all the squares that piece can move to with a fat dot.
208 For captures, it will use another color (the -premoveHighlightColor, normally red)
209 than for non-captures (where it uses the -highlightColor, normally yellow).
210 </p><p>
211 This feature is only active with the option -showMoveTargets true
212 (stored in the settings file),
213 but can then still be controlled with the option -highlightDragging,
214 which also has an item in the Options menu,
215 so you can quickly switch it on and off.
216 Furthermore, legality testing must be on for XBoard to know how the piece moves.
217 </p><p>
218 In variants with mandatory capture (suicide, losers, giveaway)
219 it works a bit different:
220 if the piece you pick up has a capture it is still indicated in red,
221 but as non-captures with this piece are then automatically illegal,
222 the yellow dots are used to indicate captures by other pieces.
223 This can be handy to quickly alert you when you overlooked a capture:
224 when you pick up another piece than the one who must capture,
225 you will not see the expected non-capture moves of that piece light up,
226 but in stead see some yellow dots on enemy pieces appear.
227 </p><p>
228 One other peculiarity in variants is that XBoard implements some pieces
229 occurring in variants as 'wildcard pieces', that are allowed to do any
230 move even when legality testing is on.
231 (To facilitate playing exotic variants without switching legality
232 checking off completely.)
233 For such a piece, a red dot on the starting square of the piece itself
234 will appear.
235 Drop moves (e.g in crazyhouse) will not be indicated.
236 </p>
237 </td><td>
238 <img src="showXQmove.png">
239 </td></tr></table>
240 <h3><a name="tag-A5">Improved Muti-PV support</a></h3>
241 <p>
242 Normally an engine produces only a single PV for each move it plays.
243 Some engines can operate in multi-PV mode, however,
244 where they produce mutiple lines with an exact score.
245 This is more a matter of the engine than the GUI,
246 but the new XBoard and WinBoard have a tiny improvement to help
247 interpretation of multi-PV engine output.
248 </p><p>
249 In stead of displaying the Thinking-Output lines in the
250 Engine-Output window strictly in the order that they came in,
251 XBoard now sorts lines of the same depth by score,
252 so that the line of the highest score (the true PV)
253 is always displayed on top.
254 In practice this requires new lines to be inserted not at the top,
255 (as always happened in earlier versions),
256 but can be inserted somewhat lower down if their score was lower.
257 Not a big deal, but it helps to get a more quiet display.
258 The original order, which usually is of less importance,
259 can aways be deduced from the time or number of nodes displayed with the line.
260 </p>
261 <table cellpadding="20" valign="top"><tr><td>
262 <img src="evalgraph.png">
263 </td><td>
264 <h3><a name="tag-A6">Evaluation Graph</a></h3>
265 <p>
266 XBoard now has a new auxilliary window (which WinBoard already had for years),
267 for displaying the engine score(s) as a function of move number as a graph.
268 Clicking a point on this graph will bring you to the corresponding
269 position in this game.
270 (I.e. it will display the position on the board like you moved there
271 with the arrow keys.)
272 </p><p>
273 Like the other windows, the Evaluation Graph can be sized and moved with the mouse,
274 and its size and psition can be determined by command-line options,
275 which are saved in the settings file.
276 By compiled-in default XBoard starts with this window open,
277 but closing it once and saving the settings is enough to change that for future sessions.
278 </p>
279 </td></tr></table>
280 <h3><a name="tag-C13">Settings-file redirection</a></h3>
281 <p>
282 There is one novelty in the way WinBoard and XBoard handle their settings files.
283 It has always been possible to have one settings file specify another.
284 The contents of that settings file would simply be substituted at the place where you refer to it
285 with the -settinngsFile option (-ini, for short).
286 But the saving of settings then used to still go to the original settings file.
287 This should be considered a bug, really, and has now been fixed.
288 The settings file to which you save now will be the last one that was encountered in an -ini option
289 (and did actually exist).
290 This change makes new, very versatile use of the settings files possible,
291 for instance to give every user its own, private settings file.
292 </p><p>
293 So "-settingsFile FILENAME" is a way to redirect saving of settings to an existing settings file.
294 The option "-saveSettingsFile FILENAME" has been added as a way to specify where to save settings
295 without any options being read, and without the need for a file of that name to already exist.
296 </p><p>
297 The settings file name specification can now contain symbolic references to user-dependent file names,
298 such as '%HOMEPATH%' for WinBoard and '~' for XBoard.
299 For WinBoard, any environment variables at the beginning of the path names will be recognized and expanded.
300 You could, for instance, also use %HOMEDRIVE%\%HOMEPATH%\winboard.ini,
301 so that people will get their private settings files in (say) 
302 C:\Documents and Settings\&lt;USER NAME>\winboard.ini.
303 The pre-configured winboard.ini in the binary install now will redirect the
304 reading and saving of settings to %APPDATA%\winboard.ini, which on most Windows systems would
305 translate to C:\Documents and Settings\&lt;USER NAME>\Application Data\winboard.ini.
306 <b>So people used to editing their winboard.ini file, beware:
307 you now have to look for that in a completely different place!</b>
308 </p><p>
309 Note that this mechanism of redirection an be nested,
310 and even on a system where a user has no access to the master settings file,
311 and is not comfortable with the location of his private settings file,
312 he could use the -settingsFile option in the latter 
313 to order a second redirection to a location where he would like it.
314 There are in fact novel configuration tricks one can play using such redirection.
315 If you are not happy with the defaults of somem volatile options, 
316 (i.e. options that are not sved with the settings, so that they reset to their defaults the next session),
317 you can change them by editing the required volatile options into your primary user settings file.
318 Because this primary users settings file will never be overwritten when you redirect the settings file away from it,
319 the volatile options in there will stick.
320 And when you write settings for persistent options in that primary file
321 after the -settingsFile option that redirects reading to the settings file where you save,
322 these will overrule the saved options,
323 so that effectively you turn those persistent options in volatile ones with a default chosen by yourself!
324 </p>
325 <h3><a name="tag-A7">Settings file</a></h3>
326 <p>
327 XBoard now can save its settings on a file,
328 like WinBoard already does for years.
329 The format in which the settings are stored is the same as that of the command line,
330 except that all options are on separate lines.
331 The settings can be saved on user command (from the Options menu),
332 as well as automatically on exit, under control of an option -saveSettingsOnExit,
333 which is itself saved in the file.
334 Its value can be changed from the Option menu.
335 </p><p>
336 The contents of the default settings file
337 (/etc/xboard/xboard.conf for XBoard)
338 will be prefixed to the command line,
339 so that the latter overrules any settings in the file.
340 Furthermore, both the settings file and the command line
341 can contain options that refer to other settings files:
342 -settingsFile filename (or its shorthand -ini filename)
343 and @filename both cause the contents of the mentioned file to be inserted in that place.
344 In the case of -settingsFile the filename is also remembered as the place
345 to save the settings.
346 </p><p>
347 The standard install of XBoard uses a -saveSettingsFile and a -settingsFile option
348 in the default settings file to divert loading and saving to a user-specific file
349 ~/.xboardrc in the user's home directory.
350 The system adminitrator can the use the default settings file /etc/xboard/xboard.conf
351 to specify default settings for xboard that he wants to deviate from the compiled-in defaults.
352 As the -settingsFile option that includes the user settings is at the end of the
353 default settings file, the user settings will overrule such system-wide defaults.
354 </p><p>
355 The settings include the open/closed status of the auxiliary windows
356 (Engine Output, Move History, Evaluation Graph),
357 and their position and size.
358 So XBoard will open in the same window configuration and layout
359 as the previous time you left it,
360 when you have Save Settings on Exit on.
361 </p><p>
362 Not all options are saved in the settings file.
363 Some options that are considered unlikely to need the same values next time, are 'volatile'.
364 This applies or instance to the engine names (-fcp, -scp) and accompanying info
365 (-fd, -firstXBook, -fUCI), or the selected variant.
366 These options will thus revert to the compiled-in or system-wide defaults
367 in the next session.
368 </p>
369 <table cellpadding="20" valign="top"><tr><td>
370 <img src="makruk.png">
371 </td><td valign="top">
372 <h3><a name="tag-A9">Thai chess</a></h3>
373 Makruk is a form of Chess played in Thailand,
374 by about 2 million people, which makes it one of the World's major
375 Chess variants.
376 WinBoard / Xboard now supports Makruk:
377 it knows how the pieces moves, that Pawns promote on the 6th rank,
378 and how to set up the initial position (with Pawns on the 3rd rank).
379 Just start XBoard with the option "-variant makruk",
380 or select it from the "File -> New Variant" menu.
381 The letters used in SAN and PGN are M for the Queen replacement
382 (for the Thai name "Med"),
383 which moves one step dagonal, as in Shatranj,
384 and S for the Bishop replacement
385 (which moves like the Silver General from Shogi).
386 </p><p>
387 The latest version of Fairy-Max (4.8o) supports Makruk as a
388 pre-programmed variant.
389 So it can be used as an engine to play this game against the computer.
390 </p>
391 <h3><a>Seirawan chess</a></h3>
392 <p>
393 Another variant that has been added is Seirawan Chess.
394 In this variants the players start with two un-orthodox pieces in hand,
395 which can be 'gated' onto the board when a piece is developed
396 from the back rank (appearing on the square that piece evacuated).
397 In XBoard such moves can now be entered by first selecting the
398 piece you want to gate from the holdings,
399 and then perform your move on the board.
400 When you drag a back-rank piece, you will immediately see
401 the gated piece appearing from under it.
402 Gating moves use SAN (orlong algebraic) promotion notation.
403 </p>
404 </td></tr></table>
405 <h3><a name="tag-B1">Filtering the Game List</a></h3>
406 <p>
407 The XBoard Game-List window now includes a "Filter" field
408 (like WinBoard has),
409 where you can type any text string.
410 The display of the Game List will then be limited to those lines
411 containing the given string. So if you want to see only drawn games,
412 like the screenshot example shown here,
413 you can put "1/2-1/2" in the filter, an press the "Apply" button
414 (or type &lt;Enter>).
415 Of course you have to make sure that the game result is actually
416 amongst the items that are displayed in the Game List lines.
417 (This can be controlled with the -gameListTags option.)
418 </p>
419 <table cellpadding="20" valign="top"><tr><td>
420 <img src="gamelist.png">
421 </td><td valign="top">
422 <p>
423 This feature is very convenient when you are dealing with large game lists.
424 As the 'result comment' is one of the items you can select for
425 display in the game list,
426 it is for instance very easy to find time losses, false claims or
427 illegal moves in your tournaments.
428 Just filter on the phrases "on time", "False" or "Illegal",
429 and only the games appear in the list that ended that way.
430 You can also use it to  easily pick out the games of your own engine from the
431 PGN file of a large tournament like ChessWar.
432 </p><p>
433 Selecting the game to load from the list can now also be done
434 in XBoard using the arrow keys (and &lt;Home>, &lt;End>),
435 which have been given key bindings to the "prev" and "next" buttons
436 in the Game List dialog.
437 </p>
438 </td></tr></table>
439 <h3><a name="tag-B2">Maintaining a healthy ICS connection</a></h3>
440 <p>
441 The -keepAlive option in WinBoard and XBoard now not only serves
442 to prevent you from being automaticaly logged out by the ICS,
443 (be careful not to abuse that!),
444 but now is also checking if the ICS is still responding.
445 If there is no message from the ICS at all in reaction to the 'date'
446 command that WinBoard sends to 'ping' it by the time the next 'date'
447 command is sent, WinBoard will conclude the connection has been
448 broken without the proper notification by the system,
449 and performs a fatal error exit.
450 You can the use a script to have WinBoard automatically
451 establish a new connection, and login again.
452 </p><p>
453 </p>
454 <table cellpadding="20"><tr valign="top"><td>
455 <h3><a name="tag-B4">Game-List options dialog</a></h3>
456 <p>
457 XBoard now has a dialog in its Options menu to select the PGN tags
458 that will be displayed in the Game List,
459 similar to that of WinBoard.
460 The tags can be selected and ordered in a user-friendy way,
461 by selecting them with the mouse, and moving them auround
462 with the up and down buttons.
463 </p><p>
464 The newly selected layout wil become effective
465 the next time a new Game List is made.
466 This can be because you open a new file with multiple games in it,
467 or because you re-open the Game-List window.
468 </p>
469 </td><td>
470 <img src="glopt.png">
471 </td></tr></table>
472 <h3><a name="tag-B5">Claiming a draw in ICS play</a></h3>
473 <p>
474 To claim a draw that will only become claimable after your move,
475 different ICS have different mechanisms.
476 On FICS you have to write "draw MOVE" on the same line.
477 ICC does not understand this, but will count a draw offer made through
478 a plain "draw" command before your move count as a draw claim
479 after that move when this move creates a third repetition or
480 a 50-move draw.
481 </p><p>
482 The ICC mechanism did not need special support,
483 but WinBoard and XBoard now also support the FICS mechanism.
484 You will have to trigger it the same way as doing things on ICC:
485 first offer the draw, then do the move.
486 XBoard will check now for any move (by user or engine) if it will create
487 a claimable draw.
488 And if it does, while the user or engine have just offered a draw,
489 it will first send the move to the ICS 'FICS fashion',
490 and after that it sends the plain move
491 (to accomodate ICS that do not understand this).
492 This should provide a secure way to claim the draw.
493 </p><p>
494 In connection with this patch, the adjudications
495 were made to work in any non-ICS game, not only in Two Machines mode.
496 (For ICS play the ICS of course decides.)
497 </p>
498 <table cellpadding="20"><tr valign="top"><td>
499 <img src="seekgraph.png">
500 </td><td>
501 <h3><a name="tag-B6">Answering seek ads on an ICS</a></h3>
502 <p>
503 WinBoard and XBoard now support a seek graph.
504 This graph can appear in place of the board when you are
505 logged on to an ICS, and not playing or observing a game.
506 When you click the board in this situation,
507 a 'sought' command will be sent to the ICS to fetch the list of
508 seek ads (without you seeing it).
509 This list will then be represented as a 2-dimensional graph,
510 with time-control on the horizontal axis, and opponent rating on the vertical.
511 </p><p>
512 Clicking one of the dots will send a 'play' command to the ICS
513 to challenge that opponent (which will usually start the game immediately).
514 You can also click a dot to interrogate it,
515 i.e. see the details of the corresponding seek ad displayed
516 in the message field above the board.
517 </p><p>
518 Which click will do what is not yet fully decided;
519 the current trial version (in the 'seekgraph' branch of the repository here)
520 can do everything with only the left mouse button,
521 the down-click for showing the ad details,
522 the up-click (if it is still on the dot) to start the game.
523 The right button can make life a bit easier, though;
524 the press here also shows the ad text,
525 but the release is always ignored,
526 so that you don't have to worry where to do the up-click
527 in case you don't want to make the challenge after reading the ad.
528 </p><p>
529 To activate this functionality, you will have to use the option
530 "-seekGraph true" (shorthand "-sg").
531 The automatic refreshing of the graph currently is supported only for
532 FICS and ICC (and compatible servers),
533 and must be swiched on with the option "-autoRefresh true".
534 Both these options are persistent, i.e. saved to the settings file,
535 but their default setting is "false", so you have to enable them
536 at least once.
537 WinBoard has checkboxes in the Options -> ICS menu dialog for setting these options.
538 </p>
539 </td></tr></table>
540 <h3><a name="tag-B7">One-click moving</a></h3>
541 <p>
542 When the option "-oneClickMove" is set to "true",
543 clicking a square to or from which only a single legal move is possible
544 causes that move to be made immediately.
545 I.e. you can click your own piece to make it move,
546 or you can click an empty squareto move there,
547 or an enemy piece to capture it.
548 This works when playing on ICS or against an engine.
549 Currently left-click is used,
550 but it is still under study if it would be better
551 (e.g. less accident prone)
552 to use another type of click for this.
553 (E.g. double clicking, or right-clicking.)
554 </p><p>
555 Another type of'smart move' enabled by this option is an only-capture:
556 when a piece has only a single captur move, a double left-click
557 on that piece makes the capture.
558 WinBoard has a checkbox in the Options -> ICS menu dialog for switching this option.
559 </p>
560 <h3><a name="tag-B8">Observing an ICS game while playing</a></h3>
561 It is now possible to observe a game 'in the background',
562 while playing on an ICS.
563 When the (persistent) option "-backgroundObserve true" is used,
564 XBoard / WinBoard will not let incoming boards from observed games disturb the
565 display of a game you are currently playing.
566 It will merely store the board in memory for safe keeping,
567 and will display a summary line in the message field above the board,
568 listing the remaining times of white and black player,
569 their strength, and which side is to move.
570 Pressing the right mouse button will summon up the last such received board
571 on the display, in stead of the position in your own game,
572 until you release that button again.
573 </p><p>
574 This way you can have a quick peek at the game you are observing,
575 which might be useful when playing bughouse on an ICS that
576 does not allow guest logins to follow the game of your partner
577 on another instance of XBoard.
578 WinBoard has a checkbox in the Options -> ICS menu dialog for switching this option.
579 </p>
580 <h3><a name="tag-C1">Recalling old input lines in ICS play</a></h3>
581 <p>
582 XBoard now allows the use op the <Up> and <Down> arrow keys
583 to call up and walk through previously given input lines,
584 (WinBoard already had this.)
585 so you can reset them (possibly after correcting the typo that made
586 the ICS not understand them in the first place.
587 For this you must use the ICS input box,
588 like with any other form of local line editing;
589 what you type directly in the X-terminal console window will
590 not be remembered, and the arrows will not work there.
591 <h3><a name="tag-C2">Making it easier to start a chat</a></h3>
592 <p>
593 The user interface for the chat windows of WinBoard has been improved.
594 Next to dedicating a Chat Box to a single handle, channel or whispers,
595 it is now also possible to dedicate it to shouts.
596 (Just type 'shouts' in the chat-partner field.)
597 In addition, it is now possible to open a Chat Box pre-intialized
598 for talking to a given handle from the ICS context menu:
599 right-clicking a player name in the ICS text field of the console
600 will pop up the ICS context menu.
601 You will now find an item "Open Chat Box (name)" in this menu.
602 Selecting that will pop up a fresh Chat Box,
603 (provided that you have not yet reached your maximum quota of chat boxes,
604 which has been increased to 5),
605 with the name that
606 you clicked already in the Chat Partner field,
607 so that you can immediately start typing your first message
608 to that person.
609 (And receive his answers in that Chat Box, as usual.)
610 </p><p>
611 The Chat Boxes now aso contain buttons to directly navigate to other
612 Chat Windows, making a stacked set of Chat Windows behave
613 like it was a single tabbed window.
614 The buttons turn grey if there was activity in the corresponding
615 box (if it is not the top-most).
616 A new command-line option -chatBoxes can be used to already have some
617 boxes opened at startup.
618 E.g. -chatBoxes "shouts;50" would open Chat Boxes for handling shouts
619 and channel-50 traffic.
620 WinBoard has a textedit in the Options -> ICS menu dialog for
621 defining the startup Chat Boxes.
622 </p><p>
623 The ICS text menu now already appears on the down-click of the right
624 mouse button, so that the release of the same click can already be used
625 to select an item from the menu.
626 The menu now also pops up in such a way that the upper-right item
627 is already under the mouse pointer as soon as it appears.
628 As the menu is user-configurable through the -icsMenu option,
629 the user could put a default action there.
630 This action will then be triggered by a simple (stationary) right-click
631 in the ICS text field.
632 In the default setting, the "Open Chat Box (name)" item is in this
633 position, so a right-click on a handle will open a Chat Box to that handle.
634 But all other actions can also still be selected, by moving the pointer there
635 before you up-click.
636 </p><p>
637 It is now possible to define commands in the ICS text menu that use the
638 clicked player name not at the end, but somewhere in the middle.
639 A "%s" contained in the defined command string will be replaced by the player name
640 (or selected text), and only if the command does not contain %s it is appended at the end.
641 </p><p>
642 Yet another improvement is that the Chat Boxes now recognize URLs,
643 and open a browser to display the corresponding web page when you click one.
644 </p>
645 <table cellpadding="20" valign="top"><tr><td>
646 <h3><a name="tag-C3">Uploading a game to an ICS</a></h3>
647 <p>
648 It is now possible to let XBoard and WinBoard upload a game to the ICS
649 for examining.
650 When you are logged on to an ICS,
651 there is an item "Upload to Examine" available in the "Action" menu.
652 Selecting this will start an examined game on the ICS,
653 and send all moves of the game currently in XBoard.
654 This could be a game you just played or observed,
655 but it could also be a game loaded from a game file,
656 or pasted into XBoard from the clipboard.
657 If there is no current game in XBoard,
658 an new examined game will be started in the opening position
659 </p><p>
660 You can only use this command at times you are not doing anything else
661 on the ICS (like playing or observing).
662 When the currently loaded game is a variant,
663 XBoard tries to figure out the wild number to start an examined
664 game in that variant.
665 This is experimental, and might not always work,
666 especially in variants that not every ICS supports
667 (e.g. Shatranj, Xiangqi, Shogi or Makruk).
668 Castling rights in FRC might still be problematic.
669 </p>
670 </td><td>
671 <img src="upload.png">
672 </td></tr></table>
673 <table cellpadding="20" valign="top"><tr><td>
674 <img src="dual.png">
675 </td><td>
676 <h3><a name="tag-C5">Displaying two boards at once</a></h3>
677 <p>
678 This is a _very_ experimental patch (more a hack really).
679 When the option -backgroundObserve is in force,
680 so that you can observe an ICS game while playing one,
681 using the (persistent) option -dualBoard true,
682 the board of the observed game is displayed right of the
683 board of your own game,
684 in the same window.
685 This way you can keep it in view all the time,
686 rather than having to press a mouse button for it.
687 </p><p>
688 This works in both WinBoard and XBoard,
689 although in the latter it messes up positioning of the clocks
690 for your own game.
691 (No clocks are displayed for the partner game yet.)
692 When the observed game has a different board format than
693 the one you are playing, the result is undefined.
694 Many other things, such as highlighting, might not work correctly yet.
695 WinBoard has a checkbox in the Options -> ICS menu dialog for switching this option.
696 </p>
697 </td></tr></table>
698 <h3><a name="tag-C6">National versions</a></h3>
699 <p>
700 WinBoard is now able to display all texts in its menus,
701 dialogs and displayed messages, in a foreign language, under direction of a language file.
702 This file must contain a list of substitutions to be made,
703 of the form "original English text" === "replacement text".
704 A new persistent option /language=FILENAME will cause WinBoard
705 to use the mentioned file to translate itself.
706 If the FILENAME does not contain a period, the extention ".LNG" will be automatically appended.
707 </p><p>
708 All available translations should appear in the Help menu, and by clicking one
709 WinBoard should switch to that language. 
710 (This is still an experimental feature,
711 and not all text might change when you apply it a second time.)
712 </p><p>
713 A Spanish translation is already available in a file espaƱol.lng.
714 We hope other translations will follow soon.
715 </p>
716 <h3><a name="tag-C7">Local PGN and FEN standards</a></h3>
717 <p>
718 Sometimes one encounters FENs or SAN moves that use piece indicators that are not standard.
719 E.g. because they are in another language, or for a variant that has no unambiguous standard.
720 The (volatile) options -pieceNickNames and -colorNickNames can be used to make XBoard / WinBoard aware of these alternative names,
721 so it can read FEN ans PGN files using them, next to the standard names.
722 If standard names and nick names conflict, the nick names will prevail.
723 On output, and for communicating with engines, the standard names will always be used.
724 </p>
725 <h3><a name="tag-C8">Xiangqi adjudications</a></h3>
726 <p>
727 The recognition of mating potential in Xiangqi has been made 100% accurate,
728 so that this variant can now be played with the option -materialDraws on.
729 The option -trivialDraws now also has special Xiangqi knowledge,
730 and catches most cases where both sides have not enough material to overcome the opponent defenders.
731 The Xiangqi 50-move rule has been changed to not count checks and check evasions.
732 </p>
733 <h3><a name="tag-C9">Starting an engine-engine match</a></h3>
734 <p>
735 WinBoard now has a menu item (in the Mode menu) to start a match between two engines.
736 The number of games will be taken from the value of the (persistent) option /defaultMatchGames,
737 which can now be set from the Options -> Common Engine dialog.
738 WinBoard will not automatically exit after a match that was started this way finishes,
739 as it does with matches started with the -mg or -mm option.
740 </p>
741 <h3><a name="tag-C10">Book-move selection</a></h3>
742 <p>
743 The selection of moves from the GUI book can now be controlled through two new (persistent) options:
744 -bookDepth and -bookVariation.
745 The value of these options can be set in the Options -> COmmon Engine menu dialog.
746 With -bookDepth N you can limit use of the book to the first N full moves of each game.
747 The value of -bookVariation N can be used to tune the randomness of the move choice.
748 It can be varied from totally random picking of one of the listed moves,
749 ignoring the book weights (N=100), to playng the move(s) with the highest weights only (N=0).
750 The default setting, N=50, would play the moves with a frequency proportional to the book weight.
751 </p>
752 <h3><a name="tag-C11">Adjusting the clocks in OTB tournaments</a></h3>
753 <p>
754 The clocks can no be adjusted in any mode using them, by Shift left-click to subtract a minute,
755 and Shift right-click to add one.
756 Before this was only possible by (unshifted) clicking in Edit-Game mode.
757 Plain clicking still counts as claiming the flag in other modes.
758 </p>
759 <h3><a name="tag-C12">Editing Comments</a></h3>
760 <p>
761 The editing of comments has been slightly changed.
762 Previous versions of WinBoard / XBoard considered anything enclosed in (), [], or {} as comment,
763 and when you edited it, automatically put braces {} around it before saving the result.
764 This would mess up (sub-)variations, which should be in parentheses ().
765 The editing of comments now has been changed to explicitly show you the enclosing delimiters.
766 This way the correct type of bracketing will be preserved on editing.
767 The downside of this is that the user will remain responsible for preserving correctness
768 of the nesting and concatenation of different types of comments.
769 E.g. the comment box could contain a true comment, starting with '{',
770 and be followed by a variation, ending with ')',
771 and changing the latter into '}' before saving the new comment would thoroughly mess things up.
772 </p><p>
773 There is one exception: when enclosing bracketing is obviously missing,
774 enclosing braces {} are still added.
775 So when adding a comment in places where there was nothing,
776 if you type a plain text,
777 the old behavior still applies, and you will get a regular comment in your PGN.
778 </p>
779 <h3><a name="tag-D1">Reorganization of the menus</a></h3>
780 <p>
781 The menus of XBoard and WinBoard have been re-organized.
782 You will still find most of the familiar items,
783 but they have been re-grouped into different main menus now.
784 New are the 'Edit' and 'View' main menus,
785 created to make the menu structure more standard.
786 Another new main item is the 'Engine' menu, while the 'Step' menu is gone.
787 </p><p>
788 The 'File' menu has been slimmed down a bit.
789 The Copy and Paste items have been relocated to 'Edit',
790 where they belong.
791 The items to load next,previous or the same games or positions
792 have been removed.
793 (The shortcut keys will still work, though.)
794 The Game List should provide a more convenient way
795 to select games from multi-game files.
796 </p><p>
797 All items for popping up auxiliary windows have been removed
798 from the 'Mode' menu, and now are in the new 'View' menu.
799 The latter also contains the items for Board and Font options
800 (which do not yet exist in XBoard).
801 Flip View and Swap Clocks (WB) have also been moved there.
802 </p><p>
803 The 'Step' menu is gone;
804 its items are mostly moved to the new 'Edit' menu,
805 as some (like 'Truncate Game') were clearly edit functions,
806 and also stepping through the game is mostly used for editing.
807 (And I cannot imagine anyone using menus for that anyway,
808 as the button bar and keyboard arrows perform amuch less
809 clumsy way to do that...)
810 For completeness also all other editing functions
811 (games, positions, tags, comments)
812 have been added to the 'Edit' menu as duplicats.
813 </p><p>
814 The new 'Engine' main menu contains the items for setting
815 Engine options.
816 (And the second engine now automatically starts when
817 you want to see or alter its options!)
818 It also contains the items that directly interact with the engine,
819 such as Move Now, Retract Move, Book and Hint.
820 </p>
821 <h3><a name="tag-D2">Annotating a game with analysis results</a></h3>
822 <p>
823 The mode 'Analyze File' has been given a new function.
824 In stead of switching to plain analysis mode after loading the file,
825 (which you could have done by loading the file,
826 and then switching on 'Analysis Mode'),
827 it now auto-plays the game in analysis mode.
828 As the auto-play steps through all positions,
829 these are analyzed by the engine,
830 and the game is annotated with the results from this analysis.
831 In particular the score and depth of the engine's
832 final PV line are stored,
833 (so later appear in the PGN as comments, when you save the game),
834 and the PV itself is added as a comment in PGN variation format.
835 </p>
836 <table cellpadding="10"><tr><td>
837 <img src="Spartan.png">
838 </td><td>
839 <h3><a name="tag-D3">Using arbitrary graphics for the board</a></h3>
840 <p>
841 In XBoard the graphics for the squares used to come
842 together with those for the pieces.
843 This made all squares of the same color look exactly the same.
844 The human eye is very sensitive to such spatial repetition.
845 It is now possible to use an arbitrary image as texture for the board squares.
846 The options -liteBackTextureFile and -darkBackTextureFile,
847 which were already working in WinBoard, can now also be used in XBoard
848 to accomplish this.
849 They must specify a pixmap file that is at least as large as a board square.
850 If the pixmap is larger, XBoard will cut the squares from it with
851 as little overlap as possible, to prevent repetitive patterns.
852 If you supply a pixmap larger than the entire board,
853 the squares cut from them are not overlapping at all,
854 and are cut in a way that centers them on the largest squares
855 that could be cut from the pixmap without overlapping.
856 This is useful when you want to supply a pixmap of a complete
857 Xiangqi board, and then want to use it at a different square size.
858 </p>
859 <h3><a name="tag-D5">Highlight moves with arrow</a></h3>
860 <p>
861 XBoard now also allows highlighting of the last move with an arrow.
862 This allows you to set the width of the grid lines to zero,
863 for a nicer look of the board when you use textures,
864 and still highlight the move.
865 (Not for pre-move yet, sorry.)
866 A menu item in the Option menu controls this feature.
867 <h3><a name="tag-D4">Variant engines can setup the opening position</a></h3>
868 <p>
869 General support for variants has been enhanced by extending
870 WinBoard protocol with a command that an engine can use to set up
871 the opening position of a variant that XBoard does not know.
872 When XBoard at the beginning of the game, when legality testing is off,
873 receives a 'setup' command from the first engine,
874 it takes the setting of the pieceToCharTable and FEN for the
875 initial position from this command.
876 In all other cases the command is ignored.
877 The second engine will receive the start position from XBoard,
878 and the game counts as having been started from a setup position.
879 Fairy-Max uses this feature to play, (amongst others),
880 Spartan Chess, (picture on the left), which requires two Kings,
881 and thus cannot be mapped on the standard opening position
882 for variants where white and black have different pieces
883 (as is used in variant fairy).
884 </td></tr></table>
885
886 <!--#include virtual="/server/footer.html" -->