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