3 * xboard: (xboard). An X Window System graphical chessboard.
9 XBoard is a graphical chessboard that can serve as a user interface to
10 chess engines (such as GNU Chess), the Internet Chess Servers,
11 electronic mail correspondence chess, or your own collection of saved
14 This manual documents version 4.8.0 of XBoard.
19 XBoard always runs in one of four major modes. You select the major
20 mode from the command line when you start up XBoard.
23 As an interface to GNU Chess or another chess engine running on
24 your machine, XBoard lets you play a game against the machine, set
25 up arbitrary positions, force variations, watch a game between two
26 chess engines, interactively analyze your stored games or set up
27 and analyze arbitrary positions. (Note: Not all chess engines
30 xboard -ics -icshost hostname [options]
31 As Internet Chess Server (ICS) interface, XBoard lets you play
32 against other ICS users, observe games they are playing, or review
33 games that have recently finished. Most of the ICS "wild" chess
34 variants are supported, including bughouse.
37 XBoard can also be used simply as an electronic chessboard to play
38 through games. It will read and write game files and allow you to
39 play through variations manually. You can use it to browse games
40 off the net or review games you have saved. These features are
41 also available in the other modes.
44 If you want to pipe games into XBoard, use the supplied shell
45 script `pxboard'. For example, from the news reader `xrn', find a
46 message with one or more games in it, click the Save button, and
47 type `|pxboard' as the file name.
50 As an interface to electronic mail correspondence chess, XBoard
51 works with the cmail program. See *note CMail:: below for
57 To move a piece, you can drag it with the left mouse button, or you can
58 click the left mouse button once on the piece, then once more on the
59 destination square. In crazyhouse, bughouse or shogi you can drag and
60 drop pieces to the board from the holdings squares displayed next to
63 Old behavior, where right-clicking a square brings up a menu where
64 you can select what piece to drop on it can still be selected through
65 the `Drop Menu' option. Only in Edit Position mode right and middle
66 clicking a square is still used to put a piece on it, and the piece to
67 drop is selected by sweeping the mouse vertically with the button held
70 The default function of the right mouse button in other modes is to
71 display the position the chess program thinks it will end up in. While
72 moving the mouse vertically with this button pressed XBoard will step
73 through the principal variation to show how this position will be
74 reached. Lines of play displayed in the engine-output window, or PGN
75 variations in the comment window can similarly be played out on the
76 board, by right-clicking on them. Only in Analysis mode, when you walk
77 along a PV, releasing the mouse button will forward the game upto that
78 point, like you entered all previous PV moves. As the display of the
79 PV in that case starts after the first move a simple right-click will
80 play the move the engine indicates.
82 In Analysis mode you can also make a move by grabbing the piece with
83 a double-click of the left mouse button (or while keeping the Ctrl key
84 pressed). In this case the move you enter will not be played, but will
85 be excluded from the analysis of the current position. (Or included if
86 it was already excluded; it is a toggle.) This only works for engines
87 that support this feature.
89 When connected to an ICS, it is possible to call up a graphical
90 representation of players seeking a game in stead of the chess board,
91 when the latter is not in use (i.e. when you are not playing or
92 observing). Left-clicking the display area will switch between this
93 'seek graph' and the chess board. Hovering the mouse pointer over a
94 dot will show the details of the seek ad in the message field above the
95 board. Left-clicking the dot will challenge that player.
96 Right-clicking a dot will 'push it to the back', to reveal any dots
97 that were hidden behind it. Right-clicking off dots will refresh the
100 Most other XBoard commands are available from the menu bar. The most
101 frequently used commands also have shortcut keys or on-screen buttons.
102 These shortcut keystrokes are mostly non-printable characters. Typing
103 a letter or digit while the board window has focus will bring up a
104 type-in box with the typed letter already in it. You can use that to
105 type a move in siuations where it is your turn to enter a move, type a
106 move number to call up the position after that move in the display, or,
107 in Edit Position mode, type a FEN. Some rarely used parameters can
108 only be set through options on the command line used to invoke XBoard.
110 XBoard uses a settings file, in which it can remember any changes to
111 the settings that are made through menus or command-line options, so
112 they will still apply when you restart XBoard for another session. The
113 settings can be saved into this file automatically when XBoard exits,
114 or on explicit request of the user. The default name for the settings
115 file is /etc/xboard/xboard.conf, but in a standard install this file is
116 only used as a master settings file that determines the system-wide
117 default settings, and defers reading and writing of user settings to a
118 user-specific file like ~/.xboardrc in the user's home directory.
120 When XBoard is iconized, its graphical icon is a white knight if it
121 is White's turn to move, a black knight if it is Black's turn.
123 3 Menus, buttons, and keys
124 **************************
130 Resets XBoard and the chess engine to the beginning of a new chess
131 game. The `Ctrl-N' key is a keyboard equivalent. In Internet Chess
132 Server mode, clears the current state of XBoard, then
133 resynchronizes with the ICS by sending a refresh command. If you
134 want to stop playing, observing, or examining an ICS game, use an
135 appropriate command from the Action menu, not `New Game'. *Note
139 Similar to `New Game', but allows you to specify a particular
140 initial position (according to a standardized numbering system) in
141 chess variants which use randomized opening positions (e.g.
142 Chess960). You can also press the `Pick Fixed' button to let
143 XBoard generate a random number for you. The thus selected
144 opening position will then persistently be chosen on any following
145 New Game command until you use this menu to select another.
146 Selecting position number -1 (or pushing the `Randomize' button)
147 will produce a newly randomized position on any new game. Using
148 this menu item in variants that normally do not shuffle their
149 opening position does cause these variants to become shuffle
150 variants until you use the `New Shuffle Game' menu to explicitly
151 switch the randomization off, or select a new variant.
154 Allows you to select a new chess variant in non-ICS mode. (In ICS
155 play, the ICS is responsible for deciding which variant will be
156 played, and XBoard adapts automatically.) The shifted `Alt+V' key
157 is a keyboard equivalent. If you play with an engine, the engine
158 must be able to play the selected variant, or the command will be
159 ignored. XBoard supports all major variants, such as xiangqi,
160 shogi, chess, chess960, Capablanca Chess, shatranj, crazyhouse,
161 bughouse. But not every board size has built-in bitmaps for
162 un-orthodox pieces! Only sizes bulky (72) and middling (49) have
163 all pieces, while size petite (33) has most. These sizes would
164 have to be set at startup through the `size' command-line option
165 when you start up XBoard for such variants to be playable.
167 You can overrule the default board format of the selected variant,
168 (e.g. to play suicide chess on a 6 x 6 board), in this dialog, but
169 normally you would not do that, and leave them at '-1', which
173 Plays a game from a record file. The `Ctrl-O' key is a keyboard
174 equivalent. A pop-up dialog prompts you for the file name. If the
175 file contains more than one game, a second pop-up dialog displays
176 a list of games (with information drawn from their PGN tags, if
177 any), and you can select the one you want. Alternatively, you can
178 load the Nth game in the file directly, by typing the number `N'
179 after the file name, separated by a space.
181 The game file parser will accept PGN (portable game notation), or
182 in fact almost any file that contains moves in algebraic notation.
183 Notation of the form `P@f7' is accepted for piece-drops in
184 bughouse games; this is a nonstandard extension to PGN. If the
185 file includes a PGN position (FEN tag), or an old-style XBoard
186 position diagram bracketed by `[--' and `--]' before the first
187 move, the game starts from that position. Text enclosed in
188 parentheses, square brackets, or curly braces is assumed to be
189 commentary and is displayed in a pop-up window. Any other text in
190 the file is ignored. PGN variations (enclosed in parentheses) also
191 are treated as comments; however, if you rights-click them in the
192 comment window, XBoard will shelve the current line, and load the
193 the selected variation, so you can step through it. You can later
194 revert to the previous line with the `Revert' command. This way
195 you can walk quite complex varation trees with XBoard. The
196 nonstandard PGN tag [Variant "varname"] functions similarly to the
197 -variant command-line option (see below), allowing games in
198 certain chess variants to be loaded. Note that it must appear
199 before any FEN tag for XBoard to recognize variant FENs
200 appropriately. There is also a heuristic to recognize chess
201 variants from the Event tag, by looking for the strings that the
202 Internet Chess Servers put there when saving variant ("wild")
206 Sets up a position from a position file. A pop-up dialog prompts
207 you for the file name. The shifted `Ctrl-O' key is a keyboard
208 equivalent. If the file contains more than one saved position, and
209 you want to load the Nth one, type the number N after the file
210 name, separated by a space. Position files must be in FEN
211 (Forsythe-Edwards notation), or in the format that the Save
212 Position command writes when oldSaveStyle is turned on.
215 Loads the next position from the last position file you loaded.
216 The shifted `PgDn' key is a keyboard equivalent.
218 Load Previous Position
219 Loads the previous position from the last position file you
220 loaded. The shifted `PgUp' key is a keyboard equivalent. Not
221 available if the last position was loaded from a pipe.
224 Appends a record of the current game to a file. The `Ctrl-S' key
225 is a keyboard equivalent. A pop-up dialog prompts you for the
226 file name. If the game did not begin with the standard starting
227 position, the game file includes the starting position used. Games
228 are saved in the PGN (portable game notation) format, unless the
229 oldSaveStyle option is true, in which case they are saved in an
230 older format that is specific to XBoard. Both formats are
231 human-readable, and both can be read back by the `Load Game'
232 command. Notation of the form `P@f7' is accepted for piece-drops
233 in bughouse games; this is a nonstandard extension to PGN.
236 Appends a diagram of the current position to a file. The shifted
237 `Ctrl+S' key is a keyboard equivalent. A pop-up dialog prompts
238 you for the file name. Positions are saved in FEN
239 (Forsythe-Edwards notation) format unless the `oldSaveStyle'
240 option is true, in which case they are saved in an older,
241 human-readable format that is specific to XBoard. Both formats can
242 be read back by the `Load Position' command.
245 Will cause all games selected for display in the current Game List
246 to be appended to a file of the user's choice.
249 Creates an opening book from the currently loaded game file,
250 incorporating only the games currently selected in the Game List.
251 The book will be saved on the file specified in the `Common Engine'
252 options dialog. The value of `Book Depth' specified in that same
253 dialog will be used to determine how many moves of each game will
254 be added to the internal book buffer. This command can take a
255 long time to process, and the size of the buffer is currently
256 limited. At the end the buffer will be saved as a Polyglot book,
257 but the buffer will not be cleared, so that you can continue
258 adding games from other game files.
265 Exits from XBoard. The `Ctrl-Q' key is a keyboard equivalent.
271 Copies a record of the current game to an internal clipboard in PGN
272 format and sets the X selection to the game text. The `Ctrl-C' key
273 is a keyboard equivalent. The game can be pasted to another
274 application (such as a text editor or another copy of XBoard)
275 using that application's paste command. In many X applications,
276 such as xterm and emacs, the middle mouse button can be used for
277 pasting; in XBoard, you must use the Paste Game command.
280 Copies the current position to an internal clipboard in FEN format
281 and sets the X selection to the position text. The shifted
282 `Ctrl-C' key is a keyboard equivalent. The position can be pasted
283 to another application (such as a text editor or another copy of
284 XBoard) using that application's paste command. In many X
285 applications, such as xterm and emacs, the middle mouse button can
286 be used for pasting; in XBoard, you must use the Paste Position
290 Copies the current game list to the clipboard, and sets the X
291 selection to this text. A format of comma-separated double-quoted
292 strings is used, including all tags, so it can be easily imported
293 into spread-sheet programs.
296 Interprets the current X selection as a game record and loads it,
297 as with Load Game. The `Ctrl-V' key is a keyboard equivalent.
300 Interprets the current X selection as a FEN position and loads it,
301 as with Load Position. The shifted `Ctrl-V' key is a keyboard
305 Allows you to make moves for both Black and White, and to change
306 moves after backing up with the `Backward' command. The clocks do
307 not run. The `Ctrl-E' key is a keyboard equivalent.
309 In chess engine mode, the chess engine continues to check moves
310 for legality but does not participate in the game. You can bring
311 the chess engine into the game by selecting `Machine White',
312 `Machine Black', or `Two Machines'.
314 In ICS mode, the moves are not sent to the ICS: `Edit Game' takes
315 XBoard out of ICS Client mode and lets you edit games locally. If
316 you want to edit games on ICS in a way that other ICS users can
317 see, use the ICS `examine' command or start an ICS match against
321 Lets you set up an arbitrary board position. The shifted `Ctrl-E'
322 key is a keyboard equivalent. Use mouse button 1 to drag pieces
323 to new squares, or to delete a piece by dragging it off the board
324 or dragging an empty square on top of it. To drop a new piece on
325 a square, press mouse button 2 or 3 over the square. This puts a
326 white or black pawn in the square, respectively, but you can
327 change that to any other piece type by dragging the mouse down
328 before you release the button. You will then see the piece on the
329 originally clicked square cycle through the available pieces
330 (including those of opposite color), and can release the button
331 when you see the piece you want. To alter the side to move, you
332 can click the clock (the words White and Black above the board) of
333 the side you want to give the move to. To clear the board you can
334 click the clock of the side that alread has the move (which is
335 highlighted in black). The old behavior with a piece menu can
336 still be configured with the aid of the `pieceMenu' option.
337 Selecting `Edit Position' causes XBoard to discard all remembered
338 moves in the current game.
340 In ICS mode, changes made to the position by `Edit Position' are
341 not sent to the ICS: `Edit Position' takes XBoard out of `ICS
342 Client' mode and lets you edit positions locally. If you want to
343 edit positions on ICS in a way that other ICS users can see, use
344 the ICS `examine' command, or start an ICS match against yourself.
345 (See also the ICS Client topic above.)
348 Lets you edit the PGN (portable game notation) tags for the
349 current game. After editing, the tags must still conform to the
352 <tag-section> ::= <tag-pair> <tag-section>
354 <tag-pair> ::= [ <tag-name> <tag-value> ]
355 <tag-name> ::= <identifier>
356 <tag-value> ::= <string>
357 See the PGN Standard for full details. Here is an example:
359 [Event "Portoroz Interzonal"]
360 [Site "Portoroz, Yugoslavia"]
363 [White "Robert J. Fischer"]
364 [Black "Bent Larsen"]
366 Any characters that do not match this syntax are silently ignored.
367 Note that the PGN standard requires all games to have at least the
368 seven tags shown above. Any that you omit will be filled in by
369 XBoard with `?' (unknown value), or `-' (inapplicable value).
372 Adds or modifies a comment on the current position. Comments are
373 saved by `Save Game' and are displayed by `Load Game', PGN
374 variations will also be printed in this window, and can be
375 promoted to main line by right-clicking them. `Forward', and
379 Pops up a window listing the moves available in the GUI book
380 (specified in the `Common Engine Settings' dialog) from the
381 currently displayed position, together with their weights and
382 (optionally in braces) learn info. You can then edit this list,
383 and the new list will be stored back into the book when you press
384 OK. Note that the listed percentages are neither used, nor
385 updated when you change the weights; they are just there as an
390 If you are examining an ICS game and Pause mode is off, Revert
391 issues the ICS command `revert'. In local mode, when you were
392 editing or analyzing a game, and the `-variations' command-line
393 option is switched on, you can start a new variation by holding
394 the Shift key down while entering a move not at the end of the
395 game. Variations can also become the currently displayed line by
396 clicking a PGN variation displayed in the Comment window. This
397 can be applied recursively, so that you can analyze variations on
398 variations; each time you create a new variation by entering an
399 alternative move with Shift pressed, or select a new one from the
400 Comment window, the current variation will be shelved. `Revert'
401 allows you to return to the most recently shelved variation. The
402 difference between `Revert' and `Annotate' is that with the latter,
403 the variation you are now abandoning will be added as a comment
404 (in PGN variation syntax, i.e. between parentheses) to the
405 original move where you deviated, for later recalling. The `Home'
406 key is a keyboard equivalent to `Revert'.
409 Discards all remembered moves of the game beyond the current
410 position. Puts XBoard into `Edit Game' mode if it was not there
411 already. The `End' key is a keyboard equivalent.
414 Steps backward through a series of remembered moves. The `[<]'
415 button and the `Alt+LeftArrow' key are equivalents, as is turning
416 the mouse wheel towards you. In addition, pressing the Control
417 key steps back one move, and releasing it steps forward again.
419 In most modes, `Backward' only lets you look back at old positions;
420 it does not retract moves. This is the case if you are playing
421 against a chess engine, playing or observing a game on an ICS, or
422 loading a game. If you select `Backward' in any of these
423 situations, you will not be allowed to make a different move. Use
424 `Retract Move' or `Edit Game' if you want to change past moves.
426 If you are examining an ICS game, the behavior of `Backward'
427 depends on whether XBoard is in Pause mode. If Pause mode is off,
428 `Backward' issues the ICS backward command, which backs up
429 everyone's view of the game and allows you to make a different
430 move. If Pause mode is on, `Backward' only backs up your local
434 Steps forward through a series of remembered moves (undoing the
435 effect of `Backward') or forward through a game file. The `[>]'
436 button and the `Alt+RightArrow' key are equivalents, as is turning
437 the mouse wheel away from you.
439 If you are examining an ICS game, the behavior of Forward depends
440 on whether XBoard is in Pause mode. If Pause mode is off,
441 `Forward' issues the ICS forward command, which moves everyone's
442 view of the game forward along the current line. If Pause mode is
443 on, `Forward' only moves your local view forward, and it will not
444 go past the position that the game was in when you paused.
447 Jumps backward to the first remembered position in the game. The
448 `[<<]' button and the `Alt+Home' key are equivalents.
450 In most modes, Back to Start only lets you look back at old
451 positions; it does not retract moves. This is the case if you are
452 playing against a local chess engine, playing or observing a game
453 on a chess server, or loading a game. If you select `Back to
454 Start' in any of these situations, you will not be allowed to make
455 different moves. Use `Retract Move' or `Edit Game' if you want to
456 change past moves; or use Reset to start a new game.
458 If you are examining an ICS game, the behavior of `Back to Start'
459 depends on whether XBoard is in Pause mode. If Pause mode is off,
460 `Back to Start' issues the ICS `backward 999999' command, which
461 backs up everyone's view of the game to the start and allows you
462 to make different moves. If Pause mode is on, `Back to Start' only
463 backs up your local view.
466 Jumps forward to the last remembered position in the game. The
467 `[>>]' button and the `Alt+End' key are equivalents.
469 If you are examining an ICS game, the behavior of `Forward to End'
470 depends on whether XBoard is in Pause mode. If Pause mode is off,
471 `Forward to End' issues the ICS `forward 999999' command, which
472 moves everyone's view of the game forward to the end of the
473 current line. If Pause mode is on, `Forward to End' only moves
474 your local view forward, and it will not go past the position that
475 the game was in when you paused.
481 Inverts your view of the chess board for the duration of the
482 current game. Starting a new game returns the board to normal.
483 The `F2' key is a keyboard equivalent.
486 Shows or hides a window in which the thinking output of any loaded
487 engines is displayed. The shifted `Alt+O' key is a keyboard
488 equivalent. XBoard will display lines of thinking output of the
489 same depth ordered by score, (highest score on top), rather than
490 in the order the engine produced them. Usually this amounts to
491 the same, as a normal engine search will only find new PV (and
492 emit it as thinking output) when it searches a move with a higher
493 score than the previous variation. But when the engine is in
494 multi-variation mode this needs not always be true, and it is more
495 convenient for someone analyzing games to see the moves sorted by
496 score. The order in which the engine found them is only of
497 interest to the engine author, and can still be deduced from the
498 time or node count printed with the line. Right-clicking a line
499 in this window, and then moving the mouse vertically with the
500 right button kept down, will make XBoard play through the PV
501 listed there. The use of the board window as 'variation board'
502 will normally end when you release the right button, or when the
503 opponent plays a move. But beware: in Analysis mode, moves thus
504 played out will be added to the game. The Engine-Output pane for
505 each engine will contain a header displaying the multi-PV status
506 and a list of excluded moves in Analysis mode, which are also
507 responsive to right-clicking.
510 Shows or hides a list of moves of the current game. The shifted
511 `Alt+H' key is a keyboard equivalent. This list allows you to
512 move the display to any earlier position in the game by clicking
513 on the corresponding move.
515 Show Evaluation Graph
516 Shows or hides a window which displays a graph of how the engine
517 score(s) evolved as a function of the move number. The shifted
518 `Alt+E' key is a keyboard equivalent. Clicking on the graph will
519 bring the corresponding position in the board display.
522 Shows or hides the list of games generated by the last `Load Game'
523 command. The shifted `Alt+G' key is a keyboard equivalent.
526 Pops up a window which shows the PGN (portable game notation) tags
527 for the current game. For now this is a duplicate of the `Edit
528 Tags' item in the `Edit' menu.
531 Pops up a window which shows any comments to or variations on the
532 current move. For now this is a duplicate of the `Edit Comment'
533 item in the `Edit' menu.
536 If this option is set in ICS mode, XBoard creates an extra window
537 that you can use for typing in ICS commands. The input box is
538 especially useful if you want to type in something long or do some
539 editing on your input, because output from ICS doesn't get mixed
540 in with your typing as it would in the main terminal window.
543 This menu item opens a window in which you can conduct upto 5 chats
544 with other ICS users (or channels). To use the window, write the
545 name of your chat partner, the channel number, or the words
546 'shouts', 'whispers', 'cshouts' in the upper field (closing with
547 <Enter>). Everything you type in the lowest field will then
548 automatically be sent to the mentioned party, while everything
549 that party sends to you will appear in the central text box,
550 rather than appear in the ICS console. The row of buttons allow
551 you to choose between chat; to start a new chat, just select an
552 empty button, and complete the `Chat partner' field.
555 Summons a dialog where you can customize the look of the chess
556 board. Here you can specify the directory from which piece images
557 should be taken, when you don't want to use the built-in piece
558 images (see `pieceImageDirectory' option), external images to be
559 used for the board squares (`liteBackTextureFile' and
560 `darkBackTextureFile' options), and square and piece colors for
564 a duplicate of the Game List dialog in the Options menu.
570 Tells the chess engine to play White. The `Ctrl-W' key is a
574 Tells the chess engine to play Black. The `Ctrl-B' key is a
578 Plays a game between two chess engines. The `Ctrl-T' key is a
582 XBoard tells the chess engine to start analyzing the current
583 game/position and shows you the analysis as you move pieces around.
584 The `Ctrl-A' key is a keyboard equivalent. Note: Some chess
585 engines do not support Analysis mode.
587 To set up a position to analyze, you do the following:
589 1. Select Edit Position from the Mode Menu
591 2. Set up the position. Use the middle and right buttons to bring
592 up the white and black piece menus.
594 3. When you are finished, click on either the Black or White clock
595 to tell XBoard which side moves first.
597 4. Select Analysis Mode from the Mode Menu to start the analysis.
599 You can now play legal moves to create follow-up positions for the
600 engine to analyze, while the moves will be remembered as a stored
601 game, and then step backward through this game to take the moves
602 back. Note that you can also click on the clocks to set the
603 opposite side to move (adding a so-called `null move' to the game).
605 You can also tell the engine to exclude some moves from analysis.
606 (Engines that do not support the exclude-moves feature will ignore
607 this, however.) The general way to do this is to play the move
608 you want to exclude starting with a double click on the piece.
609 When you use drag-drop moving, the piece you grab with a double
610 click will also remain on its square, to show you that you are not
611 really making the move, but just forbid it from the current
612 position. Playing a thus excluded move a second time will include
613 it again. Excluded moves will be listed as text in a header line
614 in the Engine Output window, and you can also re-include them by
615 right-clicking them there. This header line will also contain the
616 words 'best' and 'tail'; right-clicking those will exclude the
617 currently best move, or all moves not explicitly listed in the
618 header line. Once you leave the current position all memory of
619 excluded moves will be lost when you return there.
621 Selecting this menu item while already in `Analysis Mode' will
622 toggle the participation of the second engine in the analysis.
623 The output of this engine will then be shown in the lower pane of
624 the Engine Output window. The analysis function can also be used
625 when observing games on an ICS with an engine loaded (zippy mode);
626 the engine then will analyse the positions as they occur in the
630 This option subjects the currently loaded game to automatic
631 analysis by the loaded engine. The `Ctrl-G' key is a keyboard
632 equivalent. XBoard will start auto-playing the game from the
633 currently displayed position, while the engine is analyzing the
634 current position. The game will be annotated with the results of
635 these analyses. In particlar, the score and depth will be added
636 as a comment, and the PV will be added as a variation.
638 Normally the analysis would stop after reaching the end of the
639 game. But when a game is loaded from a multi-game file while
640 `Analyze Game' was already switched on, the analysis will continue
641 with the next game in the file until the end of the file is
642 reached (or you switch to another mode).
644 The time the engine spends on analyzing each move can be controlled
645 through the command-line option `-timeDelay', which can also be
646 set from the `Load Game Options' menu dialog. Note: Some chess
647 engines do not support Analysis mode.
650 Duplicate of the item in the Edit menu. Note that `Edit Game' is
651 the idle mode of XBoard, and can be used to get you out of other
652 modes. E.g. to stop analyzing, stop a game between two engines or
653 stop editing a position.
656 Duplicate of the item in the Edit menu.
659 Training mode lets you interactively guess the moves of a game for
660 one of the players. You guess the next move of the game by playing
661 the move on the board. If the move played matches the next move of
662 the game, the move is accepted and the opponent's response is
663 auto-played. If the move played is incorrect, an error message is
664 displayed. You can select this mode only while loading a game
665 (that is, after selecting `Load Game' from the File menu). While
666 XBoard is in `Training' mode, the navigation buttons are disabled.
669 This is the normal mode when XBoard is connected to a chess
670 server. If you have moved into Edit Game or Edit Position mode,
671 you can select this option to get out.
673 To use xboard in ICS mode, run it in the foreground with the -ics
674 option, and use the terminal you started it from to type commands
675 and receive text responses from the chess server. See *note Chess
676 Servers:: below for more information.
678 XBoard activates some special position/game editing features when
679 you use the `examine' or `bsetup' commands on ICS and you have
680 `ICS Client' selected on the Mode menu. First, you can issue the
681 ICS position-editing commands with the mouse. Move pieces by
682 dragging with mouse button 1. To drop a new piece on a square,
683 press mouse button 2 or 3 over the square. This brings up a menu
684 of white pieces (button 2) or black pieces (button 3). Additional
685 menu choices let you empty the square or clear the board. Click
686 on the White or Black clock to set the side to play. You cannot
687 set the side to play or drag pieces to arbitrary squares while
688 examining on ICC, but you can do so in `bsetup' mode on FICS. In
689 addition, the menu commands `Forward', `Backward', `Pause', and
690 `Stop Examining' have special functions in this mode; see below.
693 Starts a match between two chess programs, with a number of games
694 and other parameters set through the `Match Options' menu dialog.
695 When a match is already running, selecting this item will make
696 XBoard drop out of match mode after the current game finishes.
699 Pauses updates to the board, and if you are playing against a
700 chess engine, also pauses your clock. To continue, select `Pause'
701 again, and the display will automatically update to the latest
702 position. The `P' button and keyboard `Pause' key are equivalents.
704 If you select Pause when you are playing against a chess engine and
705 it is not your move, the chess engine's clock will continue to run
706 and it will eventually make a move, at which point both clocks
707 will stop. Since board updates are paused, however, you will not
708 see the move until you exit from Pause mode (or select Forward).
709 This behavior is meant to simulate adjournment with a sealed move.
711 If you select Pause while you are observing or examining a game on
712 a chess server, you can step backward and forward in the current
713 history of the examined game without affecting the other observers
714 and examiners, and without having your display jump forward to the
715 latest position each time a move is made. Select Pause again to
716 reconnect yourself to the current state of the game on ICS.
718 If you select `Pause' while you are loading a game, the game stops
719 loading. You can load more moves manually by selecting `Forward',
720 or resume automatic loading by selecting `Pause' again.
726 Accepts a pending match offer. The `F3' key is a keyboard
727 equivalent. If there is more than one offer pending, you will
728 have to type in a more specific command instead of using this menu
732 Declines a pending offer (match, draw, adjourn, etc.). The `F4'
733 key is a keyboard equivalent. If there is more than one offer
734 pending, you will have to type in a more specific command instead
735 of using this menu choice.
738 Calls your opponent's flag, claiming a win on time, or claiming a
739 draw if you are both out of time. The `F5' key is a keyboard
740 equivalent. You can also call your opponent's flag by clicking on
744 Offers a draw to your opponent, accepts a pending draw offer from
745 your opponent, or claims a draw by repetition or the 50-move rule,
746 as appropriate. The `F6' key is a keyboard equivalent.
749 Asks your opponent to agree to adjourning the current game, or
750 agrees to a pending adjournment offer from your opponent. The
751 `F7' key is a keyboard equivalent.
754 Asks your opponent to agree to aborting the current game, or
755 agrees to a pending abort offer from your opponent. The `F8' key
756 is a keyboard equivalent. An aborted game ends immediately without
757 affecting either player's rating.
760 Resigns the game to your opponent. The `F9' key is a keyboard
764 Ends your participation in observing a game, by issuing the ICS
765 observe command with no arguments. ICS mode only. The `F10' key
766 is a keyboard equivalent.
769 Ends your participation in examining a game, by issuing the ICS
770 unexamine command. ICS mode only. The `F11' key is a keyboard
774 Create an examined game of the proper variant on the ICS, and send
775 the game there that is currenty loaded in XBoard (e.g. through
776 pasting or loading from file). You must be connected to an ICS
782 Terminate an ongoing game in Two-Machines mode (including match
783 mode), with as result a win for white, for black, or a draw,
784 respectively. The PGN file of the game will accompany the result
785 string by the comment "user adjudication".
791 Pops up a dialog where you can select or specify an engine to be
792 loaded. You will always have to indicate whether you want to load
793 the engine as first or second engine, through the ‘Load
794 menitioned engine as’ drop-down list at the bottom of the dialog.
795 You can even replace engines during a game, without disturbing
796 that game. (Beware that after loading an engine, XBoard will
797 always be in Edit Game mode, so you will have to tell the new
798 engine what to do before it does anything!) When you select an
799 already installed engine from the ‘Select Engine from List’
800 drop-down list, all other fields of the dialog will be ignored.
801 In other cases, you have to specify the engine executable,
802 possible arguments on the engine command line (if the engine docs
803 say the engine needs any), and the directory where the engine
804 should look for its files (if this cannot be deduced automatically
805 from the specification of the engine executable). You will also
806 have to specify (with the aid of checkboxes) if the engine is UCI.
807 If ‘Add this engine to the list’ is ticked (which it is by
808 default), the engine will be added to the list of installed
809 engines in your settings file, (provided you save the settings!),
810 so that next time you can select it from the drop-down list. You
811 can also specify a ‘nickname’, under which the engine will
812 then appear in that drop-down list, and even choose to use that
813 nickname for it in PGN files for engine-engine games. The info
814 you supply with the checkboxes whether the engine should use GUI
815 book, or (for variant engines) automatically switch to the current
816 variant when loaded, will also be included in the list. For
817 obsolete XBoard engines, which would normally take a long delay to
818 load because XBoard is waiting for a response they will not give,
819 you can tick ‘WB protocol v1’ to speed up the loading process.
822 Pop up a menu dialog to alter the settings specific to the
823 applicable engine. (The second engine is only accessible once it
824 has been used in Two-Machines mode.) For each parameter the
825 engine allows to be set, a control element will appear in this
826 dialog that can be used to alter the value. Depending on the type
827 of parameter (text string, number, multiple choice, on/off switch,
828 instantaneous signal) the appropriate control will appear, with a
829 description next to it. XBoard has no idea what these values
830 mean; it just passes them on to the engine. How this dialog looks
831 is completely determined by the engine, and XBoard just passes it
832 on to the user. Many engines do not have any parameters that can
833 be set by the user, and in that case the dialog will be empty
834 (except for the OK and cancel buttons). UCI engines usually have
835 many parameters. (But these are only visible with a sufficiently
836 modern version of the Polyglot adapter needed to run UCI engines,
837 e.g. Polyglot 1.4.55b.) For native XBoard engines this is less
841 Displays a move hint from the chess engine.
844 Displays a list of possible moves from the chess engine's opening
845 book. The exact format depends on what chess engine you are using.
846 With GNU Chess 4, the first column gives moves, the second column
847 gives one possible response for each move, and the third column
848 shows the number of lines in the book that include the move from
849 the first column. If you select this option and nothing happens,
850 the chess engine is out of its book or does not support this
854 Forces the chess engine to move immediately. Chess engine mode
855 only. The `Ctrl-M' key is a keyboard equivalent.
858 Retracts your last move. In chess engine mode, you can do this only
859 after the chess engine has replied to your move; if the chess
860 engine is still thinking, use `Move Now' first. In ICS mode,
861 `Retract Move' issues the command `takeback 1' or `takeback 2'
862 depending on whether it is your opponent's move or yours. The
863 `Ctrl-X' key is a keyboard equivalent.
865 Recently Used Engines
866 At the bottom of the engine menu there can be a list of names of
867 engines that you recently loaded through the Load Engine menu
868 dialog in previous sessions. Clicking on such a name will load
869 that engine as first engine, so you won't have to search for it in
870 your list of installed engines, if that is very long. The maximum
871 number of displayed engine names is set by the
872 `recentEngines'command-line option.
877 3.7.1 General Options
878 ---------------------
880 The following items to set option values appear in the dialog summoned
881 by the general Options menu item.
882 Absolute Analysis Scores
883 Controls if scores on the Engine Output window during analysis
884 will be printed from the white or the side-to-move point-of-view.
887 If this option is on, 7th-rank pawns automatically change into
888 Queens when you pick them up, and when you drag them to the
889 promotion square and release them there, they will promote to that.
890 But when you drag such a pawn backwards first, its identity will
891 start to cycle through the other available pieces. This will
892 continue until you start to move it forward; at which point the
893 identity of the piece will be fixed, so that you can safely put it
894 down on the promotion square. If this option is off, what happens
895 depends on the option `alwaysPromoteToQueen', which would force
896 promotion to Queen when true. Otherwise XBoard would bring up a
897 dialog box whenever you move a pawn to the last rank, asking what
898 piece you want to promote to.
901 If Animate Dragging is on, while you are dragging a piece with the
902 mouse, an image of the piece follows the mouse cursor. If Animate
903 Dragging is off, there is no visual feedback while you are
904 dragging a piece, but if Animate Moving is on, the move will be
905 animated when it is complete.
908 If Animate Moving is on, all piece moves are animated. An image
909 of the piece is shown moving from the old square to the new square
910 when the move is completed (unless the move was already animated
911 by Animate Dragging). If Animate Moving is off, a moved piece
912 instantly disappears from its old square and reappears on its new
913 square when the move is complete. The shifted `Ctrl-A' key is a
917 If this option is on and one player runs out of time before the
918 other, XBoard will automatically call his flag, claiming a win on
919 time. The shifted `Ctrl-F' key is a keyboard equivalent. In ICS
920 mode, Auto Flag will only call your opponent's flag, not yours,
921 and the ICS may award you a draw instead of a win if you have
922 insufficient mating material. In local chess engine mode, XBoard
923 may call either player's flag and will not take material into
927 If the Auto Flip View option is on when you start a game, the board
928 will be automatically oriented so that your pawns move from the
929 bottom of the window towards the top.
931 If you are playing a game on an ICS, the board is always oriented
932 at the start of the game so that your pawns move from the bottom
933 of the window towards the top. Otherwise, the starting orientation
934 is determined by the `flipView' command line option; if it is
935 false (the default), White's pawns move from bottom to top at the
936 start of each game; if it is true, Black's pawns move from bottom
937 to top. *Note User interface options::.
940 If this option is on, XBoard displays the board as usual but does
941 not display pieces or move highlights. You can still move in the
942 usual way (with the mouse or by typing moves in ICS mode), even
943 though the pieces are invisible.
946 Controls if right-clicking the board in crazyhouse / bughouse will
947 pop up a menu to drop a piece on the clicked square (old,
948 deprecated behavior) or allow you to step through an engine PV
949 (new, recommended behavior).
951 Enable Variation Trees
952 If this option is on, playing a move in Edit Game or Analyze mode
953 while keeping the Shift key pressed will start a new variation.
954 You can then recall the previous line through the `Revert' menu
955 item. When off, playing a move will truncate the game and append
956 the move irreversibly.
959 If this option is off, the chess engine's notion of the score and
960 best line of play from the current position is displayed as it is
961 thinking. The score indicates how many pawns ahead (or if negative,
962 behind) the chess engine thinks it is. In matches between two
963 machines, the score is prefixed by `W' or `B' to indicate whether
964 it is showing White's thinking or Black's, and only the thinking
965 of the engine that is on move is shown. The shifted `Ctrl-H' key
966 is a keyboard equivalent.
969 If Highlight Last Move is on, after a move is made, the starting
970 and ending squares remain highlighted. In addition, after you use
971 Backward or Back to Start, the starting and ending squares of the
972 last move to be unmade are highlighted.
975 Causes the highlighting described in Highlight Last Move to be done
976 by drawing an arrow between the highlighted squares, so that it is
977 visible even when the width of the grid lines is set to zero.
980 Enables the sounding of an audible signal when the computer
981 performs a move. For the selection of the sound, see `Sound
982 Options'. If you turn on this option when using XBoard with the
983 Internet Chess Server, you will probably want to give the `set
984 bell 0' command to the ICS, since otherwise the ICS will ring the
985 terminal bell after every move (not just yours). (The `.icsrc' file
986 is a good place for this; see *note ICS options::.)
989 If this option is on, XBoard does not wait for you to click both
990 the from- and the to-square, or drag the piece, but performs a
991 move as soon as it is uniqely specified. This applies to clicking
992 an own piece that only has a single legal move, clicking an empty
993 square or opponent piece where only one of your pieces can move
994 (or capture) to. Furthermore, a double-click on a piece that can
995 only make a single capture will cause that capture to be made.
996 Promoting a Pawn by clicking its to-square will suppress the
997 promotion popup or other methods for selecting an under-promotion,
998 and make it promote to Queen.
1001 If this option is off (or if you are using a chess engine that
1002 does not support periodic updates), the analysis window will only
1003 be updated when the analysis changes. If this option is on, the
1004 Analysis Window will be updated every two seconds.
1006 Play Move(s) of Clicked PV
1007 If this option is on, right-clicking a PV in the Engine Output
1008 window during Analyze mode will cause the first move of that PV to
1009 be played. You could also play more than one (or no) PV move by
1010 moving the mouse to engage in the PV walk such a right-click will
1011 start, to seek out another position along the PV where you want to
1012 continue the analysis, before releasing the mouse button.
1015 If this option is off, the chess engine will think only when it is
1016 on move. If the option is on, the engine will also think while
1017 waiting for you to make your move. The shifted `Ctrl-P' key is a
1018 keyboard equivalent.
1021 If this option is on, when XBoard wants to display a message just
1022 before exiting, it brings up a modal dialog box and waits for you
1023 to click OK before exiting. If the option is off, XBoard prints
1024 the message to standard error (the terminal) and exits immediately.
1027 If this option is off, when you make an error in moving (such as
1028 attempting an illegal move or moving the wrong color piece), the
1029 error message is displayed in the message area. If the option is
1030 on, move errors are displayed in small pop-up windows like other
1031 errors. You can dismiss an error pop-up either by clicking its OK
1032 button or by clicking anywhere on the board, including
1033 down-clicking to start a move.
1036 If this option is on, XBoard will display the depth and score of
1037 engine moves in the Move List, in the format of a PGN comment.
1040 If this option is on, XBoard displays algebraic coordinates along
1041 the board's left and bottom edges.
1044 If this option is on, all squares a piece that is 'picked up' with
1045 the mouse can legally move to are highighted with a fat colored
1046 dot in the highlightColor (non-captures) or premoveHighlightColor
1047 (captures). Legality testing must be on for XBoard to know how
1051 If this option is on, XBoard tests whether the moves you try to
1052 make with the mouse are legal and refuses to let you make an
1053 illegal move. The shifted `Ctrl-L' key is a keyboard equivalent.
1054 Moves loaded from a file with `Load Game' are also checked. If
1055 the option is off, all moves are accepted, but if a local chess
1056 engine or the ICS is active, they will still reject illegal moves.
1057 Turning off this option is useful if you are playing a chess
1058 variant with rules that XBoard does not understand. (Bughouse,
1059 suicide, and wild variants where the king may castle after
1060 starting on the d file are generally supported with Test Legality
1065 If this option is non-zero, whenever a move is completed, the
1066 moved piece flashes the specified number of times. The flash-rate
1067 setting determines how rapidly this flashing occurs.
1070 Determines the duration (in msec) of an animation step, when
1071 `Animate Moving' is swiched on.
1073 Zoom factor in Evaluation Graph
1074 Sets the valueof the `evalZoom' option, indicating the factor by
1075 which the score interval (-1,1) should be blown up on the vertical
1076 axis of the Evaluation Graph.
1081 Pops up a sub-menu where you can set the time-control parameters
1082 interactively. Allows you to select classical or incremental time
1083 controls, set the moves per session, session duration, and time
1084 increment. Also allows specification of time-odds factors for one or
1085 both engines. If an engine is given a time-odds factor N, all time
1086 quota it gets, be it at the beginning of a session or through the time
1087 increment or fixed time per move, will be divided by N. The shifted
1088 `Alt+T' key is a keyboard equivalent.
1093 Pops up a sub-menu where you can set some engine parameters common to
1094 most engines, such as hash-table size, tablebase cache size, maximum
1095 number of processors that SMP engines can use, and where to find the
1096 Polyglot adapter needed to run UCI engines under XBoard. The feature
1097 that allows setting of these parameters on engines is new since XBoard
1098 4.3.15, so not many XBoard/WinBoard engines respond to it yet, but UCI
1101 It is also possible to specify a GUI opening book here, i.e. an
1102 opening book that XBoard consults for any position a playing engine
1103 gets in. It then forces the engine to play the book move, rather than
1104 to think up its own, if that position is found in the book. The book
1105 can switched on and off independently for either engine. The way book
1106 moves are chosen can be influenced through the settings of book depth
1107 and variety. After both sides have played more moves than the
1108 specified depth, the book will no longer be consulted. When the
1109 variety is set to 50, moves will be played with the probability
1110 specified in the book. When set to 0, only the move(s) with the
1111 highest probability will be played. When set to 100, all listed moves
1112 will be played with equal pobability. Other settings interpolate
1113 between that. The shifted `Alt+U' key is a keyboard equivalent.
1118 Pops up a sub-menu where you can enable or disable various adjudications
1119 that XBoard can perform in engine-engine games. The shifted `Alt+J'
1120 key is a keyboard equivalent. You can instruct XBoard to detect and
1121 terminate the game on checkmate or stalemate, even if the engines would
1122 not do so, to verify engine result claims (forfeiting engines that make
1123 false claims), rather than naively following the engine, to declare
1124 draw on positions which can never be won for lack of mating material,
1125 (e.g. KBK), or which are impossible to win unless the opponent seeks
1126 its own demise (e.g. KBKN). For these adjudications to work, `Test
1127 Legality' should be switched on. It is also possible to instruct
1128 XBoard to enforce a 50-move or 3-fold-repeat rule and automatically
1129 declare draw (after a user-adjustable number of moves or repeats) even
1130 if the engines are prepared to go on. It is also possible to have
1131 XBoard declare draw on games that seem to drag on forever, or
1132 adjudicate a loss if both engines agree (for 3 consecutive moves) that
1133 one of them is behind more than a user-adjustable score threshold. For
1134 the latter adjudication to work, XBoard should be able to properly
1135 understand the engine's scores. To facilitate the latter, you can
1136 inform xboard here if the engines report scores from the viewpoint of
1137 white, or from that of their own color.
1142 The following options occur in a dialog summoned by the ICS Options
1145 Setting this option when playing with or aginst a chess program on
1146 an ICS will cause the last line of thinking output of the engine
1147 before its move to be sent to the ICS in a kibitz command. In
1148 addition, any kibitz message received through the ICS from an
1149 opponent chess program will be diverted to the engine-output
1150 window, (and suppressed in the console), where you can play
1151 through its PV by right-clicking it.
1154 If this option is on, any remarks made on ICS while you are
1155 observing or playing a game are recorded as a comment on the
1156 current move. This includes remarks made with the ICS commands
1157 `say', `tell', `whisper', and `kibitz'. Limitation: remarks that
1158 you type yourself are not recognized; XBoard scans only the output
1159 from ICS, not the input you type to it.
1162 If this option is on and you add a player to your `gnotify' list
1163 on ICS, XBoard will automatically observe all of that player's
1164 games, unless you are doing something else (such as observing or
1165 playing a game of your own) when one starts. The games are
1166 displayed from the point of view of the player on your gnotify
1167 list; that is, his pawns move from the bottom of the window
1168 towards the top. Exceptions: If both players in a game are on
1169 your gnotify list, if your ICS `highlight' variable is set to 0,
1170 or if the ICS you are using does not properly support observing
1171 from Black's point of view, you will see the game from White's
1175 If this option is on, whenever a new game begins, the chessboard
1176 window is deiconized (if necessary) and raised to the top of the
1180 If this option is true, at the end of every game XBoard prompts
1181 you for a file name and appends a record of the game to the file
1182 you specify. Disabled if the `saveGameFile' command-line option
1183 is set, as in that case all games are saved to the specified file.
1184 *Note Load and Save options::.
1187 Setting this option will make XBoard suppress display of any boards
1188 from observed games while you are playing. In stead the last such
1189 board will be remembered, and shown to you when you right-click
1190 the board. This allows you to peek at your bughouse partner's
1191 game when you want, without disturbing your own game too much.
1194 Setting this option in combination with `Background Observe' will
1195 display boards of observed games while you are playing on a second
1196 board next to that of your own game.
1199 If this option is on, whenever XBoard receives the first board of
1200 a new ICS game (or a different game from the one it is currently
1201 displaying), it retrieves the list of past moves from the ICS.
1202 You can then review the moves with the `Forward' and `Backward'
1203 commands or save them with `Save Game'. You might want to turn
1204 off this option if you are observing several blitz games at once,
1205 to keep from wasting time and network bandwidth fetching the move
1206 lists over and over. When you turn this option on from the menu,
1207 XBoard immediately fetches the move list of the current game (if
1211 If this option is on, XBoard will automatically issue an ICS `set
1212 shout 0' command whenever you start a game and a `set shout 1'
1213 command whenever you finish one. Thus, you will not be distracted
1214 by shouts from other ICS users while playing.
1217 Setting this option will cause XBoard to display an graph of
1218 currently active seek ads when you left-click the board while idle
1219 and logged on to an ICS.
1221 Auto-Refresh Seek Graph
1222 In combination with the `Seek Graph' option this will cause
1223 automatic update of the seek graph while it is up. This only
1224 works on FICS and ICC, and requires a lot of bandwidth on a busy
1232 If this option is on while playing a game on an ICS, you can
1233 register your next planned move before it is your turn. Move the
1234 piece with the mouse in the ordinary way, and the starting and
1235 ending squares will be highlighted with a special color (red by
1236 default). When it is your turn, if your registered move is legal,
1237 XBoard will send it to ICS immediately; if not, it will be ignored
1238 and you can make a different move. If you change your mind about
1239 your premove, either make a different move, or double-click on any
1240 piece to cancel the move entirely.
1242 You can also enter premoves for the first white and black moves of
1247 When this option is on, an alarm sound is played when your clock
1248 counts down to the icsAlarmTime in an ICS game. (By default, the
1249 time is 5 seconds, but you can pecify other values with the Alarm
1250 Time spin control.) For games with time controls that include an
1251 increment, the alarm will sound each time the clock counts down to
1252 the icsAlarmTime. By default, the alarm sound is the terminal
1253 bell, but on some systems you can change it to a sound file using
1254 the soundIcsAlarm option; see below.
1257 Ticking this options causes various types of ICS messages do be
1258 displayed with different foreground or background colors in the
1259 console. The colors can be individually selected for each type,
1260 through the accompanying text edits.
1265 Summons a dialog where you can set options important for playing
1266 automatic matches between two chess programs (e.g. by using the
1267 `Machine Match' menu item in the `Mode' menu).
1269 To run a tournament, XBoard needs a file to record its progress,
1270 so it can resume the tourney when it is interrupted. When you
1271 want to conduct anything more complex than a simple two-player
1272 match with the currently loaded engines, (i.e. when you select a
1273 list of participants), you must not leave this field blank. When
1274 you enter the name of an existing tournament file, XBoard will
1275 ignore all other input specified in the dialog, and will take them
1276 from that tournament file. This resumes an interrupted
1277 tournament, or adds another XBoard agent playing games for it to
1278 those that are already doing so. Specifying a not-yet-existing
1279 file will cause XBoard to create it, according to the tournament
1280 parameters specified in the rest of the dialog, before it starts
1281 the tournament on ‘OK’. Provided that you specify
1282 participants; without participants no tournament file will be
1283 made, but other entered values (e.g. for the file with opening
1284 positions) will take effect. Default: configured by the
1285 `defaultTourneyName' option.
1289 The sync options, when on, will cause WinBoard to refrain from
1290 starting games of the next round or cycle before all games of the
1291 previous round or cycle are finished. This guarantees correct
1292 ordering in the games file, even when multiple XBoard instances
1293 are concurrently playing games for the same tourney. Default:
1294 sync after cycle, but not after round.
1297 Tourney participants
1298 With the Select Engine drop-down list you can pick an engine from
1299 your list of installed engines in the settings file, to be added
1300 to the tournament. The engines selected so far will be listed in
1301 the ‘Tourney participants’ memo. The latter is a normal text
1302 edit, so you can use normal text-editing functions to delete
1303 engines you selected by accident, or change their order. Do not
1304 type names yourself there, because names that do not exactly match
1305 one of the names from the drop-down list will lead to undefined
1309 Here you can specify the type of tournament you want. XBoard’s
1310 intrinsic tournament manager support round-robins (type = 0),
1311 where each participant plays every other participant, and
1312 (multi-)gauntlets, where one (or a few) so-called ‘gauntlet
1313 engines’ play an independent set of opponents. In the latter
1314 case, you specify the number of gauntlet engines. E.g. if you
1315 specified 10 engines, and tourney type = 2, the first 2 engines
1316 each play the remaining 8. A value of -1 instructs XBoard to play
1317 Swiss; for this to work an external pairing engine must be
1318 specified through the `pairingEngine' option. Each Swiss round
1319 will be considered a tourney cycle in that case. Default:0
1321 Number of tourney cycles
1322 Default number of Games
1323 You can specify tourneys where every two opponents play each other
1324 multiple times. Such multiple games can be played in a row, as
1325 specified by the ‘number of games per pairing’, or by
1326 repeating the entire tournament schedule a number of times
1327 (specified by the ‘number of tourney cycles’). The total
1328 number of times two engine meet will be the product of these two.
1329 Default is 1 cycle; the number of games per pairing is the same as
1330 the default number of match games, stored in your settings file
1331 through the `defaultMatchGames' option.
1334 File where the tournament games are saved (duplicate of the item
1335 in the `Save Game Options').
1337 Game File with Opening Lines
1338 File with Start Positions
1342 These items optionally specify the file with move sequences or
1343 board positions the tourney games should start from. The
1344 corresponding numbers specify the number of the game or position
1345 in the file. Here a value -1 means automatic stepping through all
1346 games on the file, -2 automatic stepping every two games. The
1347 Rewind-Index parameter causes a stepping index to reset to one
1348 after reaching a specified value. A setting of -2 for the game
1349 number will also be effective in a tournament without specifying a
1350 game file, but playing from the GUI book instead. In this case
1351 the first (odd) games will randomly select from the book, but the
1352 second (even) games will select the same moves from the book as
1353 the previous game. (Note this leads to the same opening only if
1354 both engines use the GUI book!) Default: No game or position file
1355 will be used. The default index if such a file is used is 1.
1357 Disable own engine bools be default
1358 Setting this option reverses the default situation for use of the
1359 GUI opening book in tournaments from what it normally is, namely
1360 not using it. So unless the engine is installed with an option to
1361 explicitly specify it should not use the GUI book (i.e.
1362 `-firstHasOwnBookUCI true'), it will be made to use the GUI book.
1366 With these two buttons you can alter the participants of an
1367 already running tournament. After opening the Match Options
1368 dialog on an XBoard that is playing for the tourney, you will see
1369 all the tourney parameters in the dialog fields. You can then
1370 replace the name of one engine by that of another by editing the
1371 `participants' field. (But preserve the order of the others!)
1372 Pressing the button after that will cause the substitution. With
1373 the `Upgrade Engine' button the substitution will only affect
1374 future games. With `Replace Engine' all games the substituted
1375 engine has already played will be invalidated, and they will be
1376 replayed with the substitute engine. In this latter case the
1377 engine must not be playing when you do this, but otherwise there
1378 is no need to pause the tournament play for making a substitution.
1381 Pressing this button after you have specified an existing
1382 tournament file will copy the contents of the latter to the dialog,
1383 and then puts the originally proposed name for the tourney file
1384 back. You can then run a tourney with the same parameters
1385 (possibly after changing the proposed name of the tourney file for
1386 the new tourney) by pressing 'OK'.
1388 3.7.7 Load Game Options
1389 -----------------------
1391 Summons a dialog where you can set the `autoDisplayComment' and
1392 `autoDisplayTags' options, (which control popups when viewing loaded
1393 games), and specify the rate at which loaded games are auto-played, in
1394 seconds per move (which can be a fractional number, like 1.6). You can
1395 also set search criteria for determining which games will be displayed
1396 in the Game List for a multi-game file, and thus be eligible for
1398 Elo of strongest player
1399 Elo of weakest player
1401 These numeric fields set thresholds (lower limits) on the Elo
1402 rating of the mentioned player, or the date the game was played.
1406 This setting determines which positions in a game will be
1407 considered a match to the position currently displayed in the
1408 board window when you press the `find position' button in the Game
1409 List. You can search for an exact match, a position that has all
1410 shown material in the same place, but might contain additional
1411 material, a position that has all Pawns in the same place, but can
1412 have the shown material anywhere, a position that can have all
1413 shown material anywhere, or a position that has material between
1414 certain limits anywhere. For the latter you have to place the
1415 material that must be present in the four lowest ranks of the
1416 board, and optional additional material in the four highest ranks
1417 of the board. You can request the optional material to be
1418 balanced. The `narrow' button is similar in fuction to the `find
1419 position' button, but only searches in the already selected games,
1420 rather than the complete game file, and can thus be used to refine
1421 a search based on multiple criteria.
1423 number of consecutive positions
1424 When you are searching by material, rather than for an exact match,
1425 this parameter indicates forhowmany consecutive game positions the
1426 same amount of material must be on the board before it is
1429 Also match reversed colors
1430 Also match left-right flipped position
1431 When looking for matching positions rather than by material, these
1432 settings determine whether mirror images (in case of a vertical
1433 flip in combination with color reversal) will be also considered a
1434 match. The left-right flipping is only useful after all castling
1435 rights have expired (or in Xiangqi).
1437 3.7.8 Save Game Options
1438 -----------------------
1440 Summons a dialog where you can specify the files on which XBoard should
1441 automatically save any played or entered games, (the `saveGameFile'
1442 option), or the final position of such games (the `savePositionfile'
1443 option). You can also select 'auto-save' without a file name, in which
1444 case XBoard will prompt the user for a file name after each game. In
1445 ICS mode you can limit the auto-saving to your own games (i.e. suppress
1446 saving of observed games). You can also set the default value for the
1447 PGN Event tag that will be used for each new game you start. Various
1448 options for the format of the game can be specified as well, such as
1449 whether scores and depths of engine games should be saved as comments,
1450 and if a tag with info about the score with which the engine came out
1451 of book should be included. For Chess, always set the format to PGN,
1452 rather than "old save stye"!
1457 Pops up a dialog where you can select the PGN tags that should appear
1458 on the lines in the game list, and their order.
1460 3.7.10 Sound Options
1461 --------------------
1463 Summons a dialog where you can specify the sounds that should accompany
1464 various events that can occur XBoard. Most events are only relevant to
1465 ICS play, but the move sound is an important exception. For each event
1466 listed in the dialog, you can select a standard sound from a menu. You
1467 can also select a user-supplied sound file, by typing its name into the
1468 designated text-edit field first, and then selecting "Above WAV File"
1469 from the menu for the event. A dummy event has been provided for
1470 trying out the sounds with the "play" button next to it. The directory
1471 with standard sounds, and the external program for playing the sounds
1472 can be specified too, but normally you would not touch these once
1473 XBoard is properly installed. When a move sound other than 'None' is
1474 selected, XBoard alerts you by playing that sound after each of your
1475 opponent's moves (or after every move if you are observing a game on
1476 the Internet Chess Server). The sound is not played after moves you
1477 make or moves read from a saved game file.
1479 3.7.11 Save Settings Now
1480 ------------------------
1482 Selecting this menu item causes the current XBoard settings to be
1483 written to the settings file, so they will also apply in future
1484 sessions. Note that some settings are 'volatile', and are not saved,
1485 because XBoard considers it too unlikely that you want those to apply
1486 next time. In particular this applies to the Chess program names, and
1487 all options giving information on those Chess programs (such as their
1488 directory, if they have their own opening book, if they are UCI or
1489 native XBoard), or the variant you are playing. Such options would
1490 still be understood when they appear in the settings file in case they
1491 were put there with the aid of a text editor, but they would disappear
1492 from the file as soon as you save the settings.
1494 Note that XBoard no longer pays attention to options values specified
1495 in the .Xresources file. (Specifying key bindings there will still
1496 work, though.) To alter the default of volatile options, you can use
1497 the following method: Rename your ~/.xboardrc settings file (to
1498 ~/.yboardrc, say), and create a new file ~/.xboardrc, which only
1499 contains the options
1501 -settingsFile ~/.yboardrc
1502 -saveSettingsFile ~/.yboardrc
1504 This will cause your settings to be saved on ~/.yboardrc in the future,
1505 so that ~/.xboardrc is no longer overwritten. You can then safely
1506 specify volatile options in ~/.xboardrc, either before or after the
1507 settingsFile options. Note that when you specify persistent options
1508 after the settingsFile options in ~/.xboardrc, you will essentially
1509 turn them into volatile options with the specified value as default,
1510 because that value will overrule the value loaded from the settings
1511 file (being read later).
1513 3.7.12 Save Settings on Exit
1514 ----------------------------
1516 Setting this option has no immediate effect, but causes the settings to
1517 be saved when you quit XBoard. What happens then is otherwise identical
1518 to what happens when you use select "Save Settings Now", see there.
1524 Displays the XBoard documentation in info format. For this
1525 feature to work, you must have the GNU info program installed on
1526 your system, and the file `xboard.info' must either be present in
1527 the current working directory, or have been installed by the `make
1528 install' command when you built XBoard.
1531 Displays the XBoard documentation in man page format. The `F1'
1532 key is a keyboard equivalent. For this feature to work, the file
1533 `xboard.6' must have been installed by the `make install' command
1534 when you built XBoard, and the directory it was placed in must be
1535 on the search path for your system's `man' command.
1538 Shows the current XBoard version number.
1540 3.9 Other Shortcut Keys
1541 =======================
1544 By hitting `Enter' the last move will be re-animated.
1547 Loads the next game from the last game record file you loaded.
1548 The `Alt+PgDn' key triggers this action.
1551 Loads the previous game from the last game record file you loaded.
1552 The `Alt+PgUp' key triggers this action. Not available if the
1553 last game was loaded from a pipe.
1556 Reloads the last game you loaded. Not available if the last game
1557 was loaded from a pipe. Currently no keystroke is assigned to
1558 this ReloadGameProc.
1560 Reload Same Position
1561 Reloads the last position you loaded. Not available if the last
1562 position was loaded from a pipe. Currently no keystroke is
1563 assigned to this ReloadPositionProc.
1565 In the Xaw build of XBoard you can add or remove shortcut keys using
1566 the X resources `paneA.translations'. Here is an example of what could
1567 go into your `.Xdefaults' file:
1569 XBoard*paneA.translations: \
1570 Shift<Key>?: MenuItem(Help.About) \n\
1571 Ctrl<Key>y: MenuItem(Action.Accept) \n\
1572 Ctrl<Key>n: MenuItem(Action.Decline) \n\
1573 Ctrl<Key>i: MenuItem(Nothing)
1574 So the key should always be bound to the action 'MenuItem', with the
1575 (hierarchical) name of the menu item as argument. There are a few
1576 actions available for which no menu item exists: Binding a key to
1577 `Nothing' makes it do nothing, thus removing it as a shortcut key.
1578 Other such functions that can be bound to keys are:
1580 AboutGame, DebugProc (switches the -debug option on or off),
1581 LoadNextGame, LoadPrevGame, ReloadGame, ReloadPosition.
1586 This section documents the command-line options to XBoard. You can set
1587 these options in two ways: by typing them on the shell command line you
1588 use to start XBoard, or by editing the settings file (usually
1589 ~/.xboardrc) to alter the value of the setting that was saved there.
1590 Some of the options cannot be changed while XBoard is running; others
1591 set the initial state of items that can be changed with the *note
1594 Most of the options have both a long name and a short name. To turn a
1595 boolean option on or off from the command line, either give its long
1596 name followed by the value true or false (`-longOptionName true'), or
1597 give just the short name to turn the option on (`-opt'), or the short
1598 name preceded by `x' to turn the option off (`-xopt'). For options that
1599 take strings or numbers as values, you can use the long or short option
1600 names interchangeably.
1602 4.1 Chess Engine Options
1603 ========================
1605 -tc or -timeControl minutes[:seconds]
1606 Each player begins with his clock set to the `timeControl' period.
1607 Default: 5 minutes. The additional options `movesPerSession' and
1608 `timeIncrement' are mutually exclusive.
1610 -mps or -movesPerSession moves
1611 When both players have made `movesPerSession' moves, a new
1612 `timeControl' period is added to both clocks. Default: 40 moves.
1614 -inc or -timeIncrement seconds
1615 If this option is specified, `movesPerSession' is ignored.
1616 Instead, after each player's move, `timeIncrement' seconds are
1617 added to his clock. Use `-inc 0' if you want to require the entire
1618 game to be played in one `timeControl' period, with no increment.
1619 Default: -1, which specifies `movesPerSession' mode.
1621 -clock/-xclock or -clockMode true/false
1622 Determines whether or not to display the chess clocks. If
1623 clockMode is false, the clocks are not shown, but the side that is
1624 to play next is still highlighted. Also, unless `searchTime' is
1625 set, the chess engine still keeps track of the clock time and uses
1626 it to determine how fast to make its moves.
1628 -st or -searchTime minutes[:seconds]
1629 Tells the chess engine to spend at most the given amount of time
1630 searching for each of its moves. Without this option, the chess
1631 engine chooses its search time based on the number of moves and
1632 amount of time remaining until the next time control. Setting
1633 this option also sets clockMode to false.
1635 -depth or -searchDepth number
1636 Tells the chess engine to look ahead at most the given number of
1637 moves when searching for a move to make. Without this option, the
1638 chess engine chooses its search depth based on the number of moves
1639 and amount of time remaining until the next time control. With
1640 the option, the engine will cut off its search early if it reaches
1641 the specified depth.
1645 Tells the chess engine to use an internal time standard based on
1646 its node count, rather then wall-clock time, to make its timing
1647 decisions. The time in virtual seconds should be obtained by
1648 dividing the node count through the given number, like the number
1649 was a rate in nodes per second. Xboard will manage the clocks in
1650 accordance with this, relying on the number of nodes reported by
1651 the engine in its thinking output. If the given number equals zero,
1652 it can obviously not be used to convert nodes to seconds, and the
1653 time reported by the engine is used to decrement the XBoard clock
1654 in stead. The engine is supposed to report in CPU time it uses,
1655 rather than wall-clock time, in this mode. This option can provide
1656 fairer conditions for engine-engine matches on heavily loaded
1657 machines, or with very fast games (where the wall clock is too
1658 inaccurate). `showThinking' must be on for this option to work.
1659 Default: -1 (off). Not many engines might support this yet!
1661 -firstTimeOdds factor
1662 -secondTimeOdds factor
1663 Reduces the time given to the mentioned engine by the given factor.
1664 If pondering is off, the effect is indistinguishable from what
1665 would happen if the engine was running on an n-times slower
1666 machine. Default: 1.
1669 This option determines how the case is handled where both engines
1670 have a time-odds handicap. If mode=1, the engine that gets the
1671 most time will always get the nominal time, as specified by the
1672 time-control options, and its opponent's time is renormalized
1673 accordingly. If mode=0, both play with reduced time. Default: 0.
1675 -hideThinkingFromHuman true/false
1676 Controls the Hide Thinking option. *Note Options Menu::. Default:
1677 true. (Replaces the Show-Thinking option of older xboard
1680 -thinking/-xthinking or -showThinking true/false
1681 Forces the engine to send thinking output to xboard. Used to be
1682 the only way to control if thinking output was displayed in older
1683 xboard versions, but as the thinking output in xboard 4.3 is also
1684 used for several other purposes (adjudication, storing in PGN
1685 file) the display of it is now controlled by the new option Hide
1686 Thinking. *Note Options Menu::. Default: false. (But if xboard
1687 needs the thinking output for some purpose, it makes the engine
1688 send it despite the setting of this option.)
1690 -ponder/-xponder or -ponderNextMove true/false
1691 Sets the Ponder Next Move menu option. *Note Options Menu::.
1695 Specifies the maximum number of CPUs an SMP engine is allowed to
1696 use. Only works for engines that support the
1697 XBoard/WinBoard-protocol cores feature.
1699 -mg or -matchGames n
1700 Automatically runs an n-game match between two chess engines, with
1701 alternating colors. If the `loadGameFile' or `loadPositionFile'
1702 option is set, XBoard starts each game with the given opening
1703 moves or the given position; otherwise, the games start with the
1704 standard initial chess position. If the `saveGameFile' option is
1705 set, a move record for the match is appended to the specified
1706 file. If the `savePositionFile' option is set, the final position
1707 reached in each game of the match is appended to the specified
1708 file. When the match is over, XBoard displays the match score and
1709 exits. Default: 0 (do not run a match).
1711 -mm/-xmm or -matchMode true/false
1712 Setting `matchMode' to true is equivalent to setting `matchGames'
1716 Automatically runs an n-game match between two chess engines,
1717 without alternating colors. Otherwise the same applies as for the
1718 `-matchGames' option, over which it takes precedence if both are
1719 specified. (See there.) Default: 0 (do not run a match).
1721 -fcp or -firstChessProgram program
1722 Name of first chess engine. Default: `Fairy-Max'.
1724 -scp or -secondChessProgram program
1725 Name of second chess engine, if needed. A second chess engine is
1726 started only in Two Machines (match) mode. Default: `Fairy-Max'.
1728 -fe or -firstEngine nickname
1729 This is an alternative to the `fcp' option for specifying the
1730 first engine, for engines that were already configured (using the
1731 `Load Engine' dialog) in XBoard's settings file. It will not only
1732 retrieve the real name of the engine, but also all options
1733 configured with it. (E.g. if it is UCI, whether it should use
1736 -se or -secondEngine nickname
1737 As `fe', but for the second engine.
1739 -fb/-xfb or -firstPlaysBlack true/false
1740 In games between two chess engines, firstChessProgram normally
1741 plays white. If this option is true, firstChessProgram plays
1742 black. In a multi-game match, this option affects the colors only
1743 for the first game; they still alternate in subsequent games.
1745 -fh or -firstHost host
1746 -sh or -secondHost host
1747 Hosts on which the chess engines are to run. The default for each
1748 is `localhost'. If you specify another host, XBoard uses `rsh' to
1749 run the chess engine there. (You can substitute a different remote
1750 shell program for rsh using the `remoteShell' option described
1753 -fd or -firstDirectory dir
1754 -sd or -secondDirectory dir
1755 Working directories in which the chess engines are to be run. The
1756 default is "", which means to run the chess engine in the same
1757 working directory as XBoard itself. (See the CHESSDIR environment
1758 variable.) This option is effective only when the chess engine is
1759 being run on the local host; it does not work if the engine is run
1760 remotely using the -fh or -sh option.
1762 -initString string or -firstInitString
1763 -secondInitString string
1764 The string that is sent to initialize each chess engine for a new
1769 Setting this option from the command line is tricky, because you
1770 must type in real newline characters, including one at the very
1771 end. In most shells you can do this by entering a `\' character
1772 followed by a newline. Using the character sequence `\n' in the
1773 string should work too, though.
1775 If you change this option, don't remove the `new' command; it is
1776 required by all chess engines to start a new game.
1778 You can remove the `random' command if you like; including it
1779 causes GNU Chess 4 to randomize its move selection slightly so
1780 that it doesn't play the same moves in every game. Even without
1781 `random', GNU Chess 4 randomizes its choice of moves from its
1782 opening book. Many other chess engines ignore this command
1783 entirely and always (or never) randomize.
1785 You can also try adding other commands to the initString; see the
1786 documentation of the chess engine you are using for details.
1788 -firstComputerString string
1789 -secondComputerString string
1790 The string that is sent to the chess engine if its opponent is
1791 another computer chess engine. The default is `computer\n'.
1792 Probably the only useful alternative is the empty string (`'),
1793 which keeps the engine from knowing that it is playing another
1796 -reuse/-xreuse or -reuseFirst true/false
1797 -reuse2/-xreuse2 or -reuseSecond true/false
1798 If the option is false, XBoard kills off the chess engine after
1799 every game and starts it again for the next game. If the option
1800 is true (the default), XBoard starts the chess engine only once
1801 and uses it repeatedly to play multiple games. Some old chess
1802 engines may not work properly when reuse is turned on, but
1803 otherwise games will start faster if it is left on.
1805 -firstProtocolVersion version-number
1806 -secondProtocolVersion version-number
1807 This option specifies which version of the chess engine
1808 communication protocol to use. By default, version-number is 2.
1809 In version 1, the "protover" command is not sent to the engine;
1810 since version 1 is a subset of version 2, nothing else changes.
1811 Other values for version-number are not supported.
1813 -firstScoreAbs true/false
1814 -secondScoreAbs true/false
1815 If this option is set, the score reported by the engine is taken
1816 to be that in favor of white, even when the engine plays black.
1817 Important when XBoard uses the score for adjudications, or in PGN
1820 -niceEngines priority
1821 This option allows you to lower the priority of the engine
1822 processes, so that the generally insatiable hunger for CPU time of
1823 chess engines does not interfere so much with smooth operation of
1824 XBoard (or the rest of your system). Negative values could
1825 increase the engine priority, which is not recommended.
1827 -firstOptions string
1828 -secondOptions string
1829 The given string is a comma-separated list of (option name=option
1830 value) pairs, like the following example: "style=Karpov,blunder
1831 rate=0". If an option announced by the engine at startup through
1832 the feature commands of the XBoard/WinBoard protocol matches one
1833 of the option names (i.e. "style" or "blunder rate"), it would be
1834 set to the given value (i.e. "Karpov" or 0) through a
1835 corresponding option command to the engine. This provided that
1836 the type of the value (text or numeric) matches as well.
1838 -firstNeedsNoncompliantFEN string
1839 -secondNeedsNoncompliantFEN string
1840 The castling rights and e.p. fields of the FEN sent to the
1841 mentioned engine with the setboard command will be replaced by the
1842 given string. This can for instance be used to run engines that do
1843 not understand Chess960 FENs in variant fischerandom, to make them
1844 at least understand the opening position, through setting the
1845 string to "KQkq -". (Note you also have to give the e.p. field!)
1846 Other possible applications are to provide work-arounds for
1847 engines that want to see castling and e.p. fields in variants that
1848 do not have castling or e.p. (shatranj, courier, xiangqi, shogi)
1849 so that XBoard would normally omit them (string = "- -"), or to
1850 add variant-specific fields that are not yet supported by XBoard
1851 (e.g. to indicate the number of checks in 3check).
1854 Forces shuffling of the opening setup in variants that normally
1855 have a fixed initial position. Shufflings are symmetric for black
1856 and white, and exempt King and Rooks in variants with normal
1857 castling. Remains in force until a new variant is selected.
1859 4.2 UCI + WB Engine Settings
1860 ============================
1862 -fUCI or -firstIsUCI true/false
1863 -sUCI or -secondIsUCI true/false
1864 Indicates if the mentioned engine executable file is an UCI engine,
1865 and should be run with the aid of the Polyglot adapter rather than
1866 directly. Xboard will then pass the other UCI options and engine
1867 name to Polyglot on its command line, according to the option
1874 Options similar to `fUCI' and `sUCI', except that they use the
1875 indicated engine with the protocol adapter specified in the
1876 `uxiAdapter' option. This can then be configured for running an
1877 UCCI or USI adapter, as the need arises.
1879 -adapterCommand string
1880 The string conatins the command that should be issued by XBoard to
1881 start an engine that is accompanied by the `fUCI' option. Any
1882 identifier following a percent sign in the command (e.g. %fcp)
1883 will be considered the name of an XBoard option, and be replaced
1884 by the value of that option at the time the engine is started.
1885 For starting the second engine, any leading "f" or "first" in the
1886 option name will first be replaced by "s" or "second", before
1887 finding its value. Default: 'polyglot -noini -ec "%fcp" -ed "%fd"'
1890 Similar to `adapterCommand', but used for engines accompanied by
1891 the `fUCCI' or `fUSI' option, so you can configure XBoard to be
1892 ready to handle more than one flavor of non-native protocols.
1895 -polyglotDir filename
1896 Gives the name of the directory in which the Polyglot adapter for
1897 UCI engines resides. Default: "".
1899 -usePolyglotBook true/false
1900 Specifies if the Polyglot book should be used as GUI book.
1902 -polyglotBook filename
1903 Gives the filename of the opening book. The book is only used
1904 when the `usePolyglotBook' option is set to true, and the option
1905 `firstHasOwnBookUCI' or `secondHasOwnBookUCI' applying to the
1906 engine is set to false. The engine will be kept in force mode as
1907 long as the current position is in book, and XBoard will select
1908 the book moves for it. Default: "".
1910 -fNoOwnBookUCI or -firstXBook or -firstHasOwnBookUCI true/false
1911 -sNoOwnBookUCI or -secondXBook or -secondHasOwnBookUCI true/false
1912 Indicates if the mentioned engine has its own opening book it
1913 should play from, rather than using the external book through
1914 XBoard. Default: depends on setting of the option
1915 `discourageOwnBooks'.
1917 -discourageOwnBooks true/false
1918 When set, newly loaded engines will be assumed to use the GUI book,
1919 unless they explicitly specify differently. Otherwise they will
1920 be assumed to not use the GUI book, unless the specify differently
1921 (e.g. with `firstXBook'). Default: false.
1924 Limits the use of the GUI book to the first n moves of each side.
1928 A value n from 0 to 100 tunes the choice of moves from the GUI
1929 books from totally random to best-only. Default: 50
1932 When this volatile option is specified, the probing algorithm of
1933 the GUI book is altered to always select the move that is most
1934 under-represented based on its performance. When all moves are
1935 played in approximately the right proportion, a book miss will be
1936 reported, to give the engine opportunity to explore a new move.
1937 In addition score of the moves will be kept track of during the
1938 session in a book buffer. By playing an match in this mode, a
1939 book will be built from scratch. The only output are the saved
1940 games, which can be converted to an actual book later, with the
1941 `Save Games as Book' command. This command can also be used to
1942 pre-fill the book buffer before adding new games based on the
1945 -fn string or -firstPgnName string
1946 -sn string or -secondPgnName string
1947 Indicates the name that should be used for the engine in PGN tags
1948 of engine-engine games. Intended to allow you to install verions
1949 of the same engine with different settings, and still distinguish
1953 Sets the size of the hash table to n MegaBytes. Together with the
1954 EGTB cache size this number is also used to calculate the memory
1955 setting of XBoard/WinBoard engines, for those that support the
1956 memory feature of the XBoard/WinBoard protocol. Default: 64.
1958 -defaultCacheSizeEGTB n
1959 Sets the size of the EGTB cache to n MegaBytes. Together with the
1960 hash-table size this number is also used to calculate the memory
1961 setting of XBoard/WinBoard engines, for those that support the
1962 memory feature of the XBoard/WinBoard protocol. Default: 4.
1964 -defaultPathEGTB filename
1965 Gives the name of the directory where the end-game tablebases are
1966 installed, for UCI engines. Default: "/usr/local/share/egtb".
1969 Specifies which end-game tables are installed on the computer, and
1970 where. The argument is a comma-separated list of format
1971 specifications, each specification consisting of a format name, a
1972 colon, and a directory path name, e.g.
1973 "nalimov:/usr/local/share/egtb". If the name part matches that of
1974 a format that the engine requests through a feature command,
1975 xboard will relay the path name for this format to the engine
1976 through an egtpath command. One egtpath command for each matching
1977 format will be sent. Popular formats are "nalimov" DTM tablebases
1978 and "scorpio" bitbases. Default: "".
1980 -firstChessProgramNames={names}
1981 This option lets you customize the drop-down list of chess engine
1982 names that appears in the `Load Engine' and `Match Options' dialog.
1983 It consists of a list of strings, one per line. When an engine is
1984 loaded, the corresponding line is prefixed with "-fcp ", and
1985 processed like it appeared on the command line. That means that
1986 apart from the engine command, it can contain any list of XBoard
1987 options you want to use with this engine. (Commonly used options
1988 here are -fd, -firstXBook, -fUCI, -variant.)
1990 The value of this option is gradually built as you load new engines
1991 through the `Load Engine' menu dialog, with `Add to list' ticked.
1992 To change it, edit your settings file with a plain text editor.
1994 4.3 Tournament options
1995 ======================
1997 -defaultMatchGames n
1998 Sets the number of games that will be used for a match between two
1999 engines started from the menu to n. Also used as games per pairing
2000 in other tournament formats. Default: 10.
2003 Specifies the duration of the pause between two games of a match
2004 or tournament between engines as n milliseconds. Especially
2005 engines that do not support ping need this option, to prevent that
2006 the move they are thinking on when an opponent unexpectedly
2007 resigns will be counted for the next game, (leading to illegal
2008 moves there). Default: 10000.
2010 -tf filename or -tourneyFile filename
2011 Specifies the name of the tournament file used in match mode to
2012 conduct a multi-player tournament. This file is a special
2013 settings file, which stores the description of the tournament
2014 (including progress info), through normal options (e.g. for time
2015 control, load and save files), and through some special-purpose
2016 options listed below.
2018 -tt number or -tourneyType number
2019 Specifies the type of tourney: 0 = round-robin, N>0 =
2020 (multi-)gauntlet with N gauntlet engines, -1 = Swiss through
2021 external pairing engine. Volatile option, but stored in tourney
2024 -cy number or -tourneyCycles number
2025 Specifies the number of cycles in a tourney. Volatile option, but
2026 stored in tourney file.
2029 The list is a multi-line text string that specifies engines
2030 occurring in the `firstChesProgramNames' list in the settings file
2031 by their (implied or explicitly given) nicknames, one engine per
2032 line. The mentioned engines will play in the tourney. Volatile
2033 option, but stored in tourney file.
2036 The string of +=- characters lists the result of all played games
2037 in a toruney. Games currently playing are listed as *, while a
2038 space indicates a game that is not yet played or playing .
2039 Volatile option, but stored in tourney file.
2041 -defaultTourneyName string
2042 Specifies the name of the tournament file XBoard should propose
2043 when the `Match Options' dialog is opened. Any %y, %M, %d, %h,
2044 %m, %s in the string are replaced by the current year, month, day
2045 of the month, hours, minutes, seconds of the current time,
2046 respectively, as two-digit number. A %Y would be replaced by the
2047 year as 4-digit number. Default: empty string.
2049 -pairingEngine filename
2050 Specifies the external program to be used to pair the participants
2051 in Swiss tourneys. XBoard communicates with this engine in the
2052 same way as it communicates with Chess engines. The only commands
2053 sent to the pairing engine are “results N string”, (where N is
2054 the number of participants, and string the results so far in the
2055 format of the results option), and “pairing N”, (where N is
2056 the number of the tourney game). To the latter the pairing engine
2057 should answer with “A-B”, where A and B are participant
2058 numbers (in the range 1-N). (There should be no reply to the
2059 results command.) Default: empty string.
2062 -afterTourney string
2063 When non-empty, the given string will be executed as a system
2064 command after each tournament game, orafterthe tourney completes,
2065 respectively. This can be used, for example, to autmatically run
2066 a cross-table generator on the PGN file where games are saved, to
2067 update the tourney standings. Default: ""
2069 -syncAfterRound true/false
2070 -syncAfterCycle true/false
2071 Controls whether different instances of XBoard concurrently
2072 running the same tournament will wait for each other. Defaults:
2073 sync after cycle, but not after round.
2076 Used to store the seed of the pseudo-random-number generator in the
2077 tourneyFile, so that separate instances of XBoard working on the
2078 same tourney can take coherent 'random' decisions, such as picking
2079 an opening for a given game number.
2084 -ics/-xics or -internetChessServerMode true/false
2085 Connect with an Internet Chess Server to play chess against its
2086 other users, observe games they are playing, or review games that
2087 have recently finished. Default: false.
2089 -icshost or -internetChessServerHost host
2090 The Internet host name or address of the chess server to connect
2091 to when in ICS mode. Default: `chessclub.com'. Another popular
2092 chess server to try is `freechess.org'. If your site doesn't have
2093 a working Internet name server, try specifying the host address in
2094 numeric form. You may also need to specify the numeric address
2095 when using the icshelper option with timestamp or timeseal (see
2098 -icsport or -internetChessServerPort port-number
2099 The port number to use when connecting to a chess server in ICS
2100 mode. Default: 5000.
2102 -icshelper or -internetChessServerHelper prog-name
2103 An external helper program used to communicate with the chess
2104 server. You would set it to "timestamp" for ICC (chessclub.com) or
2105 "timeseal" for FICS (freechess.org), after obtaining the correct
2106 version of timestamp or timeseal for your computer. See "help
2107 timestamp" on ICC and "help timeseal" on FICS. This option is
2108 shorthand for `-useTelnet -telnetProgram program'.
2110 -telnet/-xtelnet or -useTelnet true/false
2111 This option is poorly named; it should be called useHelper. If
2112 set to true, it instructs XBoard to run an external program to
2113 communicate with the Internet Chess Server. The program to use is
2114 given by the telnetProgram option. If the option is false (the
2115 default), XBoard opens a TCP socket and uses its own internal
2116 implementation of the telnet protocol to communicate with the ICS.
2119 -telnetProgram prog-name
2120 This option is poorly named; it should be called helperProgram.
2121 It gives the name of the telnet program to be used with the
2122 `gateway' and `useTelnet' options. The default is `telnet'. The
2123 telnet program is invoked with the value of
2124 `internetChessServerHost' as its first argument and the value of
2125 `internetChessServerPort' as its second argument. *Note
2129 If this option is set to a host name, XBoard communicates with the
2130 Internet Chess Server by using `rsh' to run the `telnetProgram' on
2131 the given host, instead of using its own internal implementation
2132 of the telnet protocol. You can substitute a different remote shell
2133 program for `rsh' using the `remoteShell' option described below.
2136 -internetChessServerCommPort or -icscomm dev-name
2137 If this option is set, XBoard communicates with the ICS through
2138 the given character I/O device instead of opening a TCP connection.
2139 Use this option if your system does not have any kind of Internet
2140 connection itself (not even a SLIP or PPP connection), but you do
2141 have dial-up access (or a hardwired terminal line) to an Internet
2142 service provider from which you can telnet to the ICS.
2144 The support for this option in XBoard is minimal. You need to set
2145 all communication parameters and tty modes before you enter XBoard.
2147 Use a script something like this:
2149 stty raw -echo 9600 > /dev/tty00
2150 xboard -ics -icscomm /dev/tty00
2152 Here replace `/dev/tty00' with the name of the device that your
2153 modem is connected to. You might have to add several more options
2154 to these stty commands. See the man pages for `stty' and `tty' if
2155 you run into problems. Also, on many systems stty works on its
2156 standard input instead of standard output, so you have to use `<'
2159 If you are using linux, try starting with the script below.
2160 Change it as necessary for your installation.
2163 # configure modem and fire up XBoard
2167 stty 2400 ; stty raw ; stty hupcl ; stty -clocal
2168 stty ignbrk ; stty ignpar ; stty ixon ; stty ixoff
2169 stty -iexten ; stty -echo
2171 xboard -ics -icscomm /dev/modem
2172 After you start XBoard in this way, type whatever commands are
2173 necessary to dial out to your Internet provider and log in. Then
2174 telnet to ICS, using a command like `telnet chessclub.com 5000'.
2175 Important: See the paragraph below about extra echoes, in *note
2178 -icslogon or -internetChessServerLogonScript file-name
2179 Whenever XBoard connects to the Internet Chess Server, if it finds
2180 a file with the name given in this option, it feeds the file's
2181 contents to the ICS as commands. The default file name is `.icsrc'.
2182 Usually the first two lines of the file should be your ICS user
2183 name and password. The file can be either in $CHESSDIR, in
2184 XBoard's working directory if CHESSDIR is not set, or in your home
2188 If you experience trouble logging on to an ICS when using the
2189 `-icslogon' option, inserting some delay between characters of the
2190 logon script may help. This option adds `delay' milliseconds of
2191 delay between characters. Good values to try are 100 and 250.
2193 -icsinput/-xicsinput or -internetChessServerInputBox true/false
2194 Sets the ICS Input Box menu option. *Note Mode Menu::. Default:
2197 -autocomm/-xautocomm or -autoComment true/false
2198 Sets the Auto Comment menu option. *Note Options Menu::. Default:
2201 -autoflag/-xautoflag or -autoCallFlag true/false
2202 Sets the Auto Flag menu option. *Note Options Menu::. Default:
2205 -autobs/-xautobs or -autoObserve true/false
2206 Sets the Auto Observe menu option. *Note Options Menu::. Default:
2210 Enables kibitzing of the engines last thinking output (depth,
2211 score, time, speed, PV) before it moved to the ICS, in zippy mode.
2212 The option `showThinking' must be switched on for this option to
2213 work. Also diverts similar kibitz information of an opponent
2214 engine that is playing you through the ICS to the engine-output
2215 window, as if the engine was playing locally.
2217 -seekGraph true/false or -sg
2218 Enables displaying of the seek graph by left-clicking the board
2219 when you are logged on to an ICS and currently idle. The seek
2220 graph show all players currently seeking games on the ICS, plotted
2221 according to their rating and the time control of the game they
2222 seek, in three different colors (for rated, unrated and wild
2223 games). Computer ads are displayed as squares, human ads are dots.
2226 -autoRefresh true/false
2227 Enables automatic updating of the seek graph, by having the ICS
2228 send a running update of all newly placed and removed seek ads.
2229 This consumes a substantial amount of communication bandwidth, and
2230 is only supported for FICS and ICC. Default: false.
2232 -backgroundObserve true/false
2233 When true, boards sent to you by the ICS from other games while
2234 you are playing (e.g. because you are observing them) will not be
2235 automatically displayed. Only a summary of time left and material
2236 of both players will appear in the message field above the board.
2237 XBoard will remember the last board it has received this way, and
2238 will display it in stead of the position in your own game when you
2239 press the right mouse button. No other information is stored on
2240 such games observed in the background; you cannot save such a game
2241 later, or step through its moves. This feature is provided solely
2242 for the benefit of bughouse players, to enable them to peek at
2243 their partner's game without the need to logon twice. Default:
2246 -dualBoard true/false
2247 In combination with -backgroundObserve true, this option will
2248 display the board of the background game side by side with that of
2249 your own game, so you can have it in view permanently. Any board
2250 or holdings info coming in will be displayed on the secondary
2251 board immediately. This feature is still experimental and largely
2252 unfinished. There is no animation or highlighting of moves on the
2253 secondary board. Default: false.
2255 -disguisePromotedPieces true/false
2256 When set promoted Pawns in crazyhouse/bughouse are displayed
2257 identical to primordial pieces of the same type, rather than
2258 distinguishable. Default: true.
2260 -moves/-xmoves or -getMoveList true/false
2261 Sets the Get Move List menu option. *Note Options Menu::.
2264 -alarm/-xalarm or -icsAlarm true/false
2265 Sets the ICS Alarm menu option. *Note Options Menu::. Default:
2269 Sets the time in milliseconds for the ICS Alarm menu option.
2270 *Note Options Menu::. Default: 5000.
2272 lowTimeWarning true/false
2273 Controls a color change of the board as a warning your time is
2274 running out. *Note Options Menu::. Default: false.
2276 -pre/-xpre \fRor\fB -premove true/false
2277 Sets the Premove menu option. *Note Options Menu::. Default: true.
2279 -prewhite/-xprewhite or -premoveWhite
2280 -preblack/-xpreblack or -premoveBlack
2281 -premoveWhiteText string
2282 -premoveBlackText string
2283 Set the menu options for specifying the first move for either
2284 color. *Note Options Menu::. Defaults: false and empty strings,
2287 -quiet/-xquiet or -quietPlay true/false
2288 Sets the Quiet Play menu option. *Note Options Menu::. Default:
2291 -colorizeMessages or -colorize/-xcolorize
2292 Setting colorizeMessages to true tells XBoard to colorize the
2293 messages received from the ICS. Colorization works only if your
2294 xterm supports ISO 6429 escape sequences for changing text colors.
2297 -colorShout foreground,background,bold
2298 -colorSShout foreground,background,bold
2299 -colorCShout foreground,background,bold
2300 -colorChannel1 foreground,background,bold
2301 -colorChannel foreground,background,bold
2302 -colorKibitz foreground,background,bold
2303 -colorTell foreground,background,bold
2304 -colorChallege foreground,background,bold
2305 -colorRequest foreground,background,bold
2306 -colorSeek foreground,background,bold
2307 -colorNormal foreground,background,bold
2308 These options set the colors used when colorizing ICS messages.
2309 All ICS messages are grouped into one of these categories: shout,
2310 sshout, channel 1, other channel, kibitz, tell, challenge, request
2311 (including abort, adjourn, draw, pause, and takeback), or normal
2312 (all other messages).
2314 Each foreground or background argument can be one of the following:
2315 black, red, green, yellow, blue, magenta, cyan, white, or default.
2316 Here "default" means the default foreground or background color of
2317 your xterm. Bold can be 1 or 0. If background is omitted,
2318 "default" is assumed; if bold is omitted, 0 is assumed.
2320 -soundProgram progname
2321 If this option is set to a sound-playing program that is installed
2322 and working on your system, XBoard can play sound files when
2323 certain events occur, listed below. The default program name is
2324 "play". If any of the sound options is set to "$", the event
2325 rings the terminal bell by sending a ^G character to standard
2326 output, instead of playing a sound file. If an option is set to
2327 the empty string "", no sound is played for that event.
2329 -soundDirectory directoryname
2330 This option specifies where XBoard will look for sound files, when
2331 these are not given as an absolute path name.
2333 -soundShout filename
2334 -soundSShout filename
2335 -soundCShout filename
2336 -soundChannel filename
2337 -soundChannel1 filename
2338 -soundKibitz filename
2340 -soundChallenge filename
2341 -soundRequest filename
2343 These sounds are triggered in the same way as the colorization
2344 events described above. They all default to "", no sound. They
2345 are played only if the colorizeMessages is on. CShout is
2346 synonymous with SShout.
2349 This sound is used by the Move Sound menu option. Default: "$".
2351 -soundIcsAlarm filename
2352 This sound is used by the ICS Alarm menu option. Default: "$".
2354 -soundIcsWin filename
2355 This sound is played when you win an ICS game. Default: "" (no
2358 -soundIcsLoss filename
2359 This sound is played when you lose an ICS game. Default: "" (no
2362 -soundIcsDraw filename
2363 This sound is played when you draw an ICS game. Default: "" (no
2366 -soundIcsUnfinished filename
2367 This sound is played when an ICS game that you are participating
2368 in is aborted, adjourned, or otherwise ends inconclusively.
2369 Default: "" (no sound).
2371 4.5 Load and Save options
2372 =========================
2374 -lgf or -loadGameFile file
2375 -lgi or -loadGameIndex index
2376 If the `loadGameFile' option is set, XBoard loads the specified
2377 game file at startup. The file name `-' specifies the standard
2378 input. If there is more than one game in the file, XBoard pops up
2379 a menu of the available games, with entries based on their PGN
2380 (Portable Game Notation) tags. If the `loadGameIndex' option is
2381 set to `N', the menu is suppressed and the N th game found in the
2382 file is loaded immediately. The menu is also suppressed if
2383 `matchMode' is enabled or if the game file is a pipe; in these
2384 cases the first game in the file is loaded immediately. Use the
2385 `pxboard' shell script provided with XBoard if you want to pipe in
2386 files containing multiple games and still see the menu. If the
2387 loadGameIndex specifies an index -1, this triggers auto-increment
2388 of the index in `matchMode', which means that after every game the
2389 index is incremented by one, causing each game of the match to be
2390 played from the next game in the file. Similarly, specifying an
2391 index value of -2 causes the index to be incremented every two
2392 games, so that each game in the file is used twice (with reversed
2393 colors). The `rewindIndex' option causes the index to be reset to
2394 the first game of the file when it has reached a specified value.
2397 Causes a position file or game file to be rewound to its beginning
2398 after n positions or games in auto-increment `matchMode'. See
2399 `loadPositionIndex' and `loadGameIndex'. default: 0 (no rewind).
2401 -td or -timeDelay seconds
2402 Time delay between moves during `Load Game' or `Analyze File'.
2403 Fractional seconds are allowed; try `-td 0.4'. A time delay value
2404 of -1 tells XBoard not to step through game files automatically.
2407 -sgf or -saveGameFile file
2408 If this option is set, XBoard appends a record of every game
2409 played to the specified file. The file name `-' specifies the
2412 -autosave/-xautosave or -autoSaveGames true/false
2413 Sets the Auto Save menu option. *Note Options Menu::. Default:
2414 false. Ignored if `saveGameFile' is set.
2416 -onlyOwnGames true/false
2417 Suppresses auto-saving of ICS observed games. Default: false.
2419 -lpf or -loadPositionFile file
2420 -lpi or -loadPositionIndex index
2421 If the `loadPositionFile' option is set, XBoard loads the
2422 specified position file at startup. The file name `-' specifies the
2423 standard input. If the `loadPositionIndex' option is set to N, the
2424 Nth position found in the file is loaded; otherwise the first
2425 position is loaded. If the loadPositionIndex specifies an index
2426 -1, this triggers auto-increment of the index in `matchMode',
2427 which means that after every game the index is incremented by one,
2428 causing each game of the match to be played from the next position
2429 in the file. Similarly, specifying an index value of -2 causes the
2430 index to be incremented every two games, so that each position in
2431 the file is used twice (with the engines playing opposite colors).
2432 The `rewindIndex' option causes the index to be reset to the first
2433 position of the file when it has reached a specified value.
2435 -spf or -savePositionFile file
2436 If this option is set, XBoard appends the final position reached
2437 in every game played to the specified file. The file name `-'
2438 specifies the standard output.
2440 -pgnExtendedInfo true/false
2441 If this option is set, XBoard saves depth, score and time used for
2442 each move that the engine found as a comment in the PGN file.
2445 -pgnEventHeader string
2446 Sets the name used in the PGN event tag to string. Default:
2447 "Computer Chess Game".
2449 -pgnNumberTag true/false
2450 Include the (unique) sequence number of a tournament game into the
2451 saved PGN file as a 'number' tag. Default: false.
2453 -saveOutOfBookInfo true/false
2454 Include the information on how the engine(s) game out of its
2455 opening book in a special 'annotator' tag with the PGN file.
2458 -oldsave/-xoldsave or -oldSaveStyle true/false
2459 Sets the Old Save Style menu option. *Note Options Menu::.
2462 -gameListTags string
2463 The character string lists the PGN tags that should be printed in
2464 the Game List, and their order. The meaning of the codes is
2465 e=event, s=site, d=date, o=round, p=players, r=result, w=white
2466 Elo, b=black Elo, t=time control, v=variant, a=out-of-book info,
2467 c=result comment. Default: "eprd"
2469 -ini or -settingsFile filename
2470 -saveSettingsFile filename
2472 When XBoard encounters an option -settingsFile (or -ini for short),
2473 or @filename, it tries to read the mentioned file, and substitutes
2474 the contents of it (presumaby more command-line options) in place
2475 of the option. In the case of -ini or -settingsFile, the name of
2476 a successfully read settings file is also remembered as the file
2477 to use for saving settings (automatically on exit, or on user
2478 command). An option of the form @filename does not affect saving.
2479 The option -saveSettingsFile does specify a name of the file to use
2480 for saving, without reading any options from it, and is thus also
2481 effective when the file did not exist yet. So the settings will
2482 be saved to the file specified in the last -saveSettingsFile or
2483 succesfull -settingsFile / -ini command, if any, and in
2484 /etc/xboard/xboard.conf otherwise. Usualy the latter is only
2485 accessible for the system administrator, though, and will be used
2486 to contain system-wide default setings, amongst which a
2487 -saveSettingsFile and -settingsFile options to specify a settings
2488 file accessible to the individual user, such as ~/.xboardrc in the
2489 user's home directory.
2491 -saveSettingsOnExit true/false
2492 Controls saving of options on the settings file. *Note Options
2493 Menu::. Default: true.
2495 4.6 User interface options
2496 ==========================
2502 These and most other standard Xt options are accepted.
2505 Suppresses all GUI functions of XBoard (to speed up automated
2506 ultra-fast engine-engine games, which you don't want to watch).
2507 There will be no board or clock updates, no printing of moves, and
2508 no update of the icon on the task bar in this mode.
2511 This option controls the drawing of player logos next to the
2512 clocks. The integer N specifies the width of the logo in pixels;
2513 the logo height will always be half the width. When N = 0, no
2514 logos will be diplayed. Default: 0.
2516 -firstLogo imagefile
2517 -secondLogo imagefile
2518 Specify the images to be used as player logos when `logoSize' is
2519 non-zero, next to the white and black clocks, respectively.
2521 -autoLogo true/false
2524 When `autoLogo' is set, XBoard will search for a PNG image file
2525 with the name of the engine or ICS in the directory specified by
2528 -recentEngines number
2529 -recentEngineList list
2530 When the number is larger than zero, it determines how many
2531 recently used engines will be appended at the bottom of the
2532 `Engines' menu. The engines will be saved in your settings file
2533 as the option `recentEngineList', by their nicknames, and the most
2534 recently used one will always be sorted to the top. If the list
2535 after that is longer than the specified number, the last one is
2536 discarded. Changes in the list will only become visible the next
2537 session, provided you saved the settings. Default: 6.
2540 When the list is set to a non-empty string, XBoard will scan the
2541 operating system's plugin directory for engines supporting UCI and
2542 XBoard protocol at startup. When it finds an engine that was
2543 installed after it last saved its settings, a line to launch that
2544 engine (as per specs in the plugin file) is appended to the
2545 -firstChessProgramNames list of installed engines. In the future
2546 it will be possible to use the list to limit this automatic adding
2547 of engines to a certain types of variants.
2549 -oneClickMove true/false
2550 When set, this option allows you to enter moves by only clicking
2551 the to- or from-square, when only a single legal move to or from
2552 that square is possible. Double-clicking a piece (or clicking an
2553 already selected piece) will instruct that piece to make the only
2554 capture it can legally do. Default: false.
2556 -movesound/-xmovesound or -ringBellAfterMoves true/false
2557 Sets the Move Sound menu option. *Note Options Menu::. Default:
2558 false. For compatibility with old XBoard versions, -bell/-xbell
2559 are also accepted as abbreviations for this option.
2561 -exit/-xexit or -popupExitMessage true/false
2562 Sets the Popup Exit Message menu option. *Note Options Menu::.
2565 -popup/-xpopup or -popupMoveErrors true/false
2566 Sets the Popup Move Errors menu option. *Note Options Menu::.
2569 -queen/-xqueen or -alwaysPromoteToQueen true/false
2570 Sets the Always Queen menu option. *Note Options Menu::.
2573 -sweepPromotions true/false
2574 Sets the `Almost Always Promote to Queen' menu option. *Note
2575 Options Menu::. Default: false.
2577 -legal/-xlegal or -testLegality true/false
2578 Sets the Test Legality menu option. *Note Options Menu::.
2581 -size or -boardSize (sizeName | n1,n2,n3,n4,n5,n6,n7)
2582 Determines how large the board will be, by selecting the pixel size
2583 of the pieces and setting a few related parameters. The sizeName
2584 can be one of: Titanic, giving 129x129 pixel pieces, Colossal
2585 116x116, Giant 108x108, Huge 95x95, Big 87x87, Large 80x80, Bulky
2586 72x72, Medium 64x64, Moderate 58x58, Average 54x54, Middling
2587 49x49, Mediocre 45x45, Small 40x40, Slim 37x37, Petite 33x33,
2588 Dinky 29x29, Teeny 25x25, or Tiny 21x21. Xboard installs with a
2589 set of scalable (svg) piece images, which it scales to any of the
2590 requested sizes. The square size can further be continuously
2591 scaled by sizing the board window, but this only adapts the size
2592 of the pieces, and has no effect on the width of the grid lines or
2593 the font choice (both of which would depend on he selected
2594 boardSize). The default depends on the size of your screen; it is
2595 approximately the largest size that will fit without clipping.
2597 You can select other sizes or vary other layout parameters by
2598 providing a list of comma-separated values (with no spaces) as the
2599 argument. You do not need to provide all the values; for any you
2600 omit from the end of the list, defaults are taken from the nearest
2601 built-in size. The value `n1' gives the piece size, `n2' the
2602 width of the black border between squares, `n3' the desired size
2603 for the clockFont, `n4' the desired size for the coordFont, `n5'
2604 the desired size for the messageFont, `n6' the smallLayout flag (0
2605 or 1), and `n7' the tinyLayout flag (0 or 1). All dimensions are
2606 in pixels. If the border between squares is eliminated (0 width),
2607 the various highlight options will not work, as there is nowhere
2608 to draw the highlight. If smallLayout is 1 and `titleInWindow' is
2609 true, the window layout is rearranged to make more room for the
2610 title. If tinyLayout is 1, the labels on the menu bar are
2611 abbreviated to one character each and the buttons in the button
2612 bar are made narrower.
2615 When n >= 0, this forces the width of the black border between
2616 squares to n pixels for any board size. Mostly used to suppress
2617 the grid entirely by setting n = 0, e.g. in xiangqi or just
2618 getting a prettier picture. When n < 0 this the size-dependent
2619 width of the grid lines is used. Default: -1.
2621 -coords/-xcoords or -showCoords true/false
2622 Sets the Show Coords menu option. *Note Options Menu::. Default:
2623 false. The `coordFont' option specifies what font to use.
2625 -autoraise/-xautoraise or -autoRaiseBoard true/false
2626 Sets the Auto Raise Board menu option. *Note Options Menu::.
2629 -autoflip/-xautoflip or -autoFlipView true/false
2630 Sets the Auto Flip View menu option. *Note Options Menu::.
2633 -flip/-xflip or -flipView true/false
2634 If Auto Flip View is not set, or if you are observing but not
2635 participating in a game, then the positioning of the board at the
2636 start of each game depends on the flipView option. If flipView is
2637 false (the default), the board is positioned so that the white
2638 pawns move from the bottom to the top; if true, the black pawns
2639 move from the bottom to the top. In any case, the Flip menu
2640 option (see *note Options Menu::) can be used to flip the board
2641 after the game starts.
2643 -title/-xtitle or -titleInWindow true/false
2644 If this option is true, XBoard displays player names (for ICS
2645 games) and game file names (for `Load Game') inside its main
2646 window. If the option is false (the default), this information is
2647 displayed only in the window banner. You probably won't want to
2648 set this option unless the information is not showing up in the
2649 banner, as happens with a few X window managers.
2651 -buttons/-xbuttons or -showButtonBar True/False
2652 If this option is False, xboard omits the [<<] [<] [P] [>] [>>]
2653 button bar from the window, allowing the message line to be wider.
2654 You can still get the functions of these buttons using the menus
2655 or their keyboard shortcuts. Default: true.
2658 The score interval (-1,1) is blown up on the vertical axis of the
2659 Evaluation Graph by the given factor. Default: 1
2662 Score below n (centiPawn) are plotted as 0 in the Evaluation Graph.
2665 -mono/-xmono or -monoMode true/false
2666 Determines whether XBoard displays its pieces and squares with two
2667 colors (true) or four (false). You shouldn't have to specify
2668 `monoMode'; XBoard will determine if it is necessary.
2670 -showTargetSquares true/false
2671 Determines whether XBoard can highlight the squares a piece has
2672 legal moves to, when you grab that piece with the mouse. Default:
2678 These options enable flashing of pieces when they land on their
2679 destination square. `flashCount' tells XBoard how many times to
2680 flash a piece after it lands on its destination square.
2681 `flashRate' controls the rate of flashing (flashes/sec).
2682 Abbreviations: `flash' sets flashCount to 3. `xflash' sets
2683 flashCount to 0. Defaults: flashCount=0 (no flashing),
2686 -highlight/-xhighlight or -highlightLastMove true/false
2687 Sets the Highlight Last Move menu option. *Note Options Menu::.
2690 -highlightMoveWithArrow true/false
2691 Sets the Highlight with Arrow menu option. *Note Options Menu::.
2694 -blind/-xblind or -blindfold true/false
2695 Sets the Blindfold menu option. *Note Options Menu::. Default:
2698 -periodic/-xperiodic or -periodicUpdates true/false
2699 Controls updating of current move andnode counts in analysis mode.
2704 Causes the PV in thinking output of the mentioned engine to be
2705 converted to SAN before it is further processed. Warning: this
2706 might lose engine output not understood by the parser, and uses a
2707 lot of CPU power. Default: the PV is displayed exactly as the
2710 -showEvalInMoveHistory true/false
2711 Controls whether the evaluation scores and search depth of engine
2712 moves are displayed with the move in the move-history window.
2716 The font used for the clocks. If the option value is a pattern
2717 that does not specify the font size, XBoard tries to choose an
2718 appropriate font for the board size being used. Default Xaw:
2719 -*-helvetica-bold-r-normal-*-*-*-*-*-*-*-*. Default GTK: Sans
2723 The font used for rank and file coordinate labels if `showCoords'
2724 is true. If the option value is a pattern that does not specify
2725 the font size, XBoard tries to choose an appropriate font for the
2726 board size being used. Default Xaw:
2727 -*-helvetica-bold-r-normal-*-*-*-*-*-*-*-*. Default GTK: Sans
2731 The font used for popup dialogs, menus, etc. If the option value
2732 is a pattern that does not specify the font size, XBoard tries to
2733 choose an appropriate font for the board size being used. Default
2734 Xaw: -*-helvetica-medium-r-normal-*-*-*-*-*-*-*-*. Default GTK:
2735 Sans Bold %d. The font used in the Edit Tags dialog. If the
2736 option value contains %d, XBoard will replace it by an appropriate
2737 font for the board size being used. (Only used in GTK build.)
2738 Default: Sans Normal %d. The font used in the Edit Comment dialog.
2739 If the option value contains %d, XBoard will replace it by an
2740 appropriate font for the board size being used. (Only used in GTK
2741 build.) Default: Sans Normal %d. The font used to display ICS
2742 output in the ICS Chat window. As ICS output often contains
2743 tables aligned by spaces, a mono-space font is recommended here.
2744 If the option value contains %d, XBoard will replace it by an
2745 appropriate font for the board size being used. (Only used in GTK
2746 build.) Default: Monospace Normal %d. The font used in Move
2747 History and Engine Output windows. As these windows display
2748 mainly moves, one could use a figurine font here. If the option
2749 value contains %d, XBoard will replace it by an appropriate font
2750 for the board size being used. (Only used in GTK build.)
2751 Default: Sans Normal %d. The font used in the listbox of the Game
2752 List window. If the option value contains %d, XBoard will replace
2753 it by an appropriate font for the board size being used. (Only
2754 used in GTK build.) Default: Sans Bold %d.
2756 -fontSizeTolerance tol
2757 In the font selection algorithm, a nonscalable font will be
2758 preferred over a scalable font if the nonscalable font's size
2759 differs by `tol' pixels or less from the desired size. A value of
2760 -1 will force a scalable font to always be used if available; a
2761 value of 0 will use a nonscalable font only if it is exactly the
2762 right size; a large value (say 1000) will force a nonscalable font
2763 to always be used if available. Default: 4.
2765 -pid or -pieceImageDirectory dir
2766 This options control what piece images xboard uses. XBoard will
2767 look in the specified directory for an image in png or svg format
2768 for every piece type, with names like BlackQueen.svg,
2769 WhiteKnight.svg etc. When neither of these is found (or no valid
2770 directory is specified) XBoard will use the svg piece that was
2771 installed with it (from the source-tree directory `svg'). Both
2772 svg and png images will be scaled by XBoard to the required size,
2773 but the png pieces lose much in quality when scaled too much.
2775 -whitePieceColor color
2776 -blackPieceColor color
2777 -lightSquareColor color
2778 -darkSquareColor color
2779 -highlightSquareColor color
2780 -preoveHighlightColor color
2781 -lowTimeWarningColor color
2782 Colors to use for the pieces, squares, and square highlights.
2785 -whitePieceColor #FFFFCC
2786 -blackPieceColor #202020
2787 -lightSquareColor #C8C365
2788 -darkSquareColor #77A26D
2789 -highlightSquareColor #FFFF00
2790 -premoveHighlightColor #FF0000
2791 -lowTimeWarningColor #FF0000
2793 On a grayscale monitor you might prefer:
2795 -whitePieceColor gray100
2796 -blackPieceColor gray0
2797 -lightSquareColor gray80
2798 -darkSquareColor gray60
2799 -highlightSquareColor gray100
2800 -premoveHighlightColor gray70
2801 -lowTimeWarningColor gray70
2803 The PieceColor options only work properly if the image files
2804 defining the pieces were pure black & white (possibly anti-aliased
2805 to produce gray scales and semi-transparancy), like the pieces
2806 images that come with the install. Their effect on colored pieces
2807 is undefined. The SquareColor option only have an effect when no
2808 board textures are used.
2810 -trueColors true/false
2811 When set, this option suppresses the effect of the PieceColor
2812 options mentioned above. This is recommended for images that are
2815 -useBoardTexture true/false
2816 -liteBackTextureFile filename
2817 -darkBackTextureFile filename
2818 Indicate the png image files to be used for drawing the board
2819 squares, and if they should be used rather than using simple
2820 colors. The algorithm for cutting squares out of a given bitmap
2821 is such that the picture is perfectly reproduced when a bitmap the
2822 size of the complete board is given. If the filename ends in
2823 "-NxM.png", with integer N and M, it is assumed to contain a
2824 bitmap of a complete board of N files and M ranks, and XBoard will
2825 scale it to exactly match the current square size. If N=M=0 it
2826 scales the entire bitmap to the size of the board, irrespective of
2827 the number of files and ranks of the latter. Without any -NxM
2828 suffix textures are only blown up by an integer factor when they
2829 are smaller than the square size, or, when the name starts with
2830 "xq", too small to cover the complete Xiangqi board. Default:
2833 -drag/-xdrag or -animateDragging true/false
2834 Sets the Animate Dragging menu option. *Note Options Menu::.
2837 -animate/-xanimate or -animateMoving true/false
2838 Sets the Animate Moving menu option. *Note Options Menu::.
2842 Number of milliseconds delay between each animation frame when
2843 Animate Moves is on.
2845 -autoDisplayComment true/false
2846 -autoDisplayTags true/false
2847 If set to true, these options cause the window with the move
2848 comments, and the window with PGN tags, respectively, to pop up
2849 automatically when such tags or comments are encountered during
2850 the replaying a stored or loaded game. Default: true.
2852 -pasteSelection true/false
2853 If this option is set to true, the Paste Position and Paste Game
2854 options paste from the currently selected text. If false, they
2855 paste from the clipboard. Default: false.
2857 -autoCopyPV true|false
2858 When this option is set, the position displayed on the board when
2859 you terminate a PV walk (initiated by a right-click on board or
2860 engine-output window) will be automatically put on the clipboard
2861 as FEN. Default: false.
2863 -dropMenu true|false
2864 This option allows you to emulate old behavior, where the right
2865 mouse button brings up the (now deprecated) drop menu rather than
2866 displaying the position at the end of the principal variation.
2869 -pieceMenu true|false
2870 This option allows you to emulate old behavior, where the right
2871 mouse button brings up the (now deprecated) piece menu in Edit
2872 Position mode. From this menu you can select the piece to put on
2873 the square you clicked to bring up the menu, or select items such
2874 as `clear board'. You can also `promote' or `demote' a clicked
2875 piece to convert it into an unorthodox piece that is not directly
2876 in the menu, or give the move to `black' or `white'.
2878 -variations true|false
2879 When this option is on, you can start new variations in Edit Game
2880 or Analyze mode by holding the Shift key down while entering a
2881 move. When it is off, the Shift key will be ignored. Default:
2884 -appendPV true|false
2885 When this option is on, right-clicking a PV in the Engine Output
2886 window will play the first move of that PV in Analyze mode, or as
2887 many moves as you walk through by moving the mouse. Default:
2890 -absoluteAnalysisScores true|false
2891 When true, scores on the Engine Output window during analysis will
2892 be printed from the white point-of-view, rather than the
2893 side-to-move point-of-view. Default: False.
2895 -scoreWhite true|false
2896 When true, scores will always be printed from the white
2897 point-of-view, rather than the side-to-move point-of-view.
2900 -memoHeaders true|false
2901 When true, column headers will be displayed in the Engine Output
2902 window for the depth, score, time and nodes data. Right-clicking
2903 on these headers will hide or show the corresponding data. (Not
2904 intended for dynamic use, as already printed data of the current
2905 search will not be affected!) Defaul: False.
2907 4.7 Adjudication Options
2908 ========================
2910 -adjudicateLossThreshold n
2911 If the given value is non-zero, XBoard adjudicates the game as a
2912 loss if both engines agree for a duration of 6 consecutive ply
2913 that the score is below the given score threshold for that engine.
2914 Make sure the score is interpreted properly by XBoard, using
2915 `-firstScoreAbs' and `-secondScoreAbs' if needed. Default: 0 (no
2918 -adjudicateDrawMoves n
2919 If the given value is non-zero, XBoard adjudicates the game as a
2920 draw if after the given number of moves it was not yet decided.
2921 Default: 0 (no adjudication)
2923 -checkMates true/false
2924 If this option is set, XBoard detects all checkmates and
2925 stalemates, and ends the game as soon as they occur.
2926 Legality-testing must be switched on for this option to work.
2929 -testClaims true/false
2930 If this option is set, XBoard verifies all result claims made by
2931 engines, and those who send false claims will forfeit the game
2932 because of it. Legality-testing must be switched on for this
2933 option to work. Default: true
2935 -materialDraws true/false
2936 If this option is set, XBoard adjudicates games as draws when
2937 there is no sufficient material left to inflict a checkmate. This
2938 applies to KBKB with like bishops (any number, actually), and to
2939 KBK, KNK and KK. Legality-testing must be switched on for this
2940 option to work. Default: true
2942 -trivialDraws true/false
2943 If this option is set, XBoard adjudicates games as draws that
2944 cannot be usually won without opponent cooperation. This applies
2945 to KBKB with unlike bishops, and to KBKN, KNKN, KNNK, KRKR and
2946 KQKQ. The draw is called after 6 ply into these end-games, to
2947 allow quick mates that can occur in some exceptional positions to
2948 be found by the engines. KQKQ does not really belong in this
2949 category, and might be taken out in the future. (When
2950 bitbase-based adjudications are implemented.) Legality-testing
2951 must be on for this option to work. Default: false
2954 If the given value is non-zero, XBoard adjudicates the game as a
2955 draw after the given number of consecutive reversible moves.
2956 Engine draw claims are always accepted after 50 moves,
2957 irrespective of the given value of n.
2960 If the given value is non-zero, xboard adjudicates the game as a
2961 draw if a position is repeated the given number of times. Engines
2962 draw claims are always accepted after 3 repeats, (on the 3rd
2963 occurrence, actually), irrespective of the value of n. Beware
2964 that positions that have different castling or en-passant rights
2965 do not count as repeats, XBoard is fully e.p. and castling aware!
2970 -ncp/-xncp or -noChessProgram true/false
2971 If this option is true, XBoard acts as a passive chessboard; it
2972 does not start a chess engine at all. Turning on this option also
2973 turns off clockMode. Default: false.
2976 -viewerOptions string
2977 Presence of the volatile option `viewer' on the command line will
2978 cause the value of the persistent option `viewerOptions' as stored
2979 in the settings file to be appended to the command line. The
2980 `view' option will be used by desktop associations with game or
2981 position file types, so that `viewerOptions' can be used to
2982 configure the exact mode XBoard will start in when it should act
2983 on such a file (e.g. in -ncp mode, or analyzing with your favorite
2984 engine). The options are also automatically appended when Board is
2985 invoked with a single argument not being an option name, which is
2986 then assumed to be the name of a `loadGameFile' or (when the name
2987 ends in .fen) a `loadPositionFile'. Default: "-ncp
2988 -engineOutputUp false -saveSettingsOnExit false".
2990 -tourneyOptions string
2991 When XBoard is invoked with a single argument that is a file with
2992 .trn extension, it will assume this argument to be the value of a
2993 `tourneyFile' option, and apped the value of the persistent option
2994 `tourneyOptions' as stored in the settings file to the command
2995 line. Thus the value of `tourneyOptions' can be used to configure
2996 XBoard to automatically start running a tournament when it should
2997 act on such a file. Default: "-ncp -mm -saveSettingsOnExit false".
2999 -mode or -initialMode modename
3000 If this option is given, XBoard selects the given modename from
3001 the Mode menu after starting and (if applicable) processing the
3002 loadGameFile or loadPositionFile option. Default: "" (no
3003 selection). Other supported values are MachineWhite,
3004 MachineBlack, TwoMachines, Analysis, AnalyzeFile, EditGame,
3005 EditPosition, and Training.
3008 Activates preliminary, partial support for playing chess variants
3009 against a local engine or editing variant games. This flag is not
3010 needed in ICS mode. Recognized variant names are:
3013 wildcastle Shuffle chess, king can castle from d file
3014 nocastle Shuffle chess, no castling allowed
3015 fischerandom Fischer Random shuffle chess
3016 bughouse Bughouse, ICC/FICS rules
3017 crazyhouse Crazyhouse, ICC/FICS rules
3018 losers Lose all pieces or get mated (ICC wild 17)
3019 suicide Lose all pieces including king (FICS)
3020 giveaway Try to have no legal moves (ICC wild 26)
3021 twokings Weird ICC wild 9
3022 kriegspiel Opponent's pieces are invisible
3023 atomic Capturing piece explodes (ICC wild 27)
3024 3check Win by giving check 3 times (ICC wild 25)
3025 shatranj An ancient precursor of chess (ICC wild 28)
3026 xiangqi Chinese Chess (on a 9x10 board)
3027 shogi Japanese Chess (on a 9x9 board & piece drops)
3028 capablanca Capablanca Chess (10x8 board, with Archbishop
3029 and Chancellor pieces)
3030 gothic similar, with a better initial position
3031 caparandom An FRC-like version of Capablanca Chess (10x8)
3032 janus A game with two Archbishops (10x8 board)
3033 courier Medieval intermediate between shatranj and
3034 modern Chess (on 12x8 board)
3035 falcon Patented 10x8 variant with two Falcon pieces
3036 berolina Pawns capture straight ahead, and move diagonal
3037 cylinder Pieces wrap around the board edge
3038 knightmate King moves as Knight, and vice versa
3039 super Superchess (shuffle variant with 4 exo-pieces)
3040 makruk Thai Chess (shatranj-like, P promotes on 6th rank)
3041 asean ASEAN Chess (a modernized version of Makruk)
3042 spartan Spartan Chess (black has unorthodox pieces)
3043 fairy A catchall variant in which all piece types
3044 known to XBoard can participate (8x8)
3045 unknown Catchall for other unknown variants
3047 NOT ALL BOARDSIZES PROVIDE A COMPLETE SET OF BUILT-IN BITMAPS FOR
3048 ALL UN-ORTHODOX PIECES, though. Only in `boardSize' middling and
3049 bulky all 22 piece types are provided, while -boardSize petite has
3050 most of them. Archbishop, Chancellor and Amazon are supported in
3051 every size from petite to bulky. Kings or Amazons are substituted
3052 for missing bitmaps. You can still play variants needing
3053 un-orthodox pieces in other board sizes providing your own bitmaps
3054 through the `bitmapDirectory' or `pixmapDirectory' options.
3056 In the shuffle variants, XBoard now does shuffle the pieces,
3057 although you can still do it by hand using Edit Position. Some
3058 variants are supported only in ICS mode, including bughouse, and
3059 kriegspiel. The winning/drawing conditions in crazyhouse
3060 (off-board interposition on mate) are not fully understood, but
3061 losers, suicide, giveaway, atomic, and 3check should be OK.
3062 Berolina and cylinder chess can only be played with legality
3063 testing off. In crazyhouse, XBoard now does keep track of
3064 off-board pieces. In shatranj it does implement the baring rule
3065 when mate detection is switched on.
3068 Allows you to set a non-standard number of board ranks in any
3069 variant. If the height is given as -1, the default height for the
3070 variant is used. Default: -1
3073 Allows you to set a non-standard number of board files in any
3074 variant. If the width is given as -1, the default width for the
3075 variant is used. With a non-standard width, the initial position
3076 will always be an empty board, as the usual opening array will not
3080 Allows you to set a non-standard size for the holdings in any
3081 variant. If the size is given as -1, the default holdings size
3082 for the variant is used. The first N piece types will go into the
3083 holdings on capture, and you will be able to drop them on the
3084 board in stead of making a normal move. If size equals 0, there
3085 will be no holdings. Default: -1
3087 -defaultFrcPosition N
3088 Specifies the number of the opening position in shuffle games like
3089 Chess960. A value of -1 means the position is randomly generated
3090 by XBoard at the beginning of every game. Default: -1
3092 -pieceToCharTable string
3093 The characters that are used to represent the piece types XBoard
3094 knows in FEN diagrams and SAN moves. The string argument has to
3095 have an even length (or it will be ignored), as white and black
3096 pieces have to be given separately (in that order). The last
3097 letter for each color will be the King. The letters before that
3098 will be PNBRQ and then a whole host of fairy pieces in an order
3099 that has not fully crystallized yet (currently FEACWMOHIJGDVSLU,
3100 F=Ferz, Elephant, A=Archbishop, C=Chancellor, W=Wazir, M=Commoner,
3101 O=Cannon, H=Nightrider). You should list at least all pieces that
3102 occur in the variant you are playing. If you have less than 44
3103 characters in the string, the pieces not mentioned will get
3104 assigned a period, and you will not be able to distinguish them in
3105 FENs. You can also explicitly assign pieces a period, in which
3106 case they will not be counted in deciding which captured pieces
3107 can go into the holdings. A tilde '~' as a piece name does mean
3108 this piece is used to represent a promoted Pawn in crazyhouse-like
3109 games, i.e. on capture it turns back onto a Pawn. A '+' similarly
3110 indicates the piece is a shogi-style promoted piece, that should
3111 revert to its non-promoted version on capture (rather than to a
3112 Pawn). Note that promoted pieces are represented by pieces 11
3113 further in the list. You should not have to use this option
3114 often: each variant has its own default setting for the piece
3115 representation in FEN, which should be sufficient in normal use.
3118 -pieceNickNames string
3119 The characters in the string are interpreted the same way as in the
3120 `pieceToCharTable' option. But on input, piece-ID letters are
3121 first looked up in the nicknames, and only if not defined there,
3122 in the normal pieceToCharTable. This allows you to have two letters
3123 designate the same piece, (e.g. N as an alternative to H for Horse
3124 in Xiangqi), to make reading of non-compliant notations easier.
3127 -colorNickNames string
3128 The side-to-move field in a FEN will be first matched against the
3129 letters in the string (first character for white, second for
3130 black), before it is matched to the regular 'w' and 'b'. This
3131 makes it easier to read non-compliant FENs, which, say, use 'r'
3132 for white. Default: ""
3134 -debug/-xdebug or -debugMode true/false
3135 Turns on debugging printout.
3137 -debugFile filename or -nameOfDebugFile filename
3138 Sets the name of the file to which XBoard saves debug information
3139 (including all communication to and from the engines). A `%d' in
3140 the given file name (e.g. game%d.debug) will be replaced by the
3141 unique sequence number of a tournament game, so that the debug
3142 output of each game will be written on a separate file.
3144 -engineDebugOutput number
3145 Specifies how XBoard should handle unsolicited output from the
3146 engine, with respect to saving it in the debug file. The output
3147 is further (hopefully) ignored. If number=0, XBoard refrains from
3148 writing such spurious output to the debug file. If number=1, all
3149 engine output is written faithfully to the debug file. If
3150 number=2, any protocol-violating line is prefixed with a '#'
3151 character, as the engine itself should have done if it wanted to
3152 submit info for inclusion in the debug file. This option is
3153 provided for the benefit of applications that use the debug file
3154 as a source of information, such as the broadcaster of live games
3155 TLCV / TLCS. Such applications can be protected from spurious
3156 engine output that might otherwise confuse them.
3158 -rsh or -remoteShell shell-name
3159 Name of the command used to run programs remotely. The default is
3160 `rsh' or `remsh', determined when XBoard is configured and
3163 -ruser or -remoteUser user-name
3164 User name on the remote system when running programs with the
3165 `remoteShell'. The default is your local user name.
3168 Name under which the Human player will be listed in the PGN file.
3169 Default is the login name on your local computer.
3171 -delayBeforeQuit number
3172 -delayAfterQuit number
3173 These options order pauses before and after sending the "quit"
3174 command to an engine that must be terminated. The pause between
3175 quit and the previous command is specified in milliseconds. The
3176 pause after quit is used to schedule a kill signal to be sent to
3177 the engine process after the number of specified seconds plus one.
3178 This signal is a different one as the terminiation signal
3179 described in the protocol specs which engines can suppress or
3180 ignore, and which is sent directly after the "quit" command.
3181 Setting `delayAfterQuit' to -1 will suppress sending of the kill
3185 The integer n encodes the mode for the `find position' function.
3186 Default: 1 (= Exact position match)
3188 -eloThresholdBoth elo
3189 -eloThresholdAny elo
3190 Defines a lower limit for the Elo rating, which has to be surpassed
3191 before a game will be considered when searching for a board
3192 position. Default: 0
3195 Only games not played before the given year will be considered when
3196 searching for a board position
3202 An "Internet Chess Server", or "ICS", is a place on the Internet where
3203 people can get together to play chess, watch other people's games, or
3204 just chat. You can use either `telnet' or a client program like XBoard
3205 to connect to the server. There are thousands of registered users on
3206 the different ICS hosts, and it is not unusual to meet 200 on both
3207 chessclub.com and freechess.org.
3209 Most people can just type `xboard -ics' to start XBoard as an ICS
3210 client. Invoking XBoard in this way connects you to the Internet Chess
3211 Club (ICC), a commercial ICS. You can log in there as a guest even if
3212 you do not have a paid account. To connect to the largest Free ICS
3213 (FICS), use the command `xboard -ics -icshost freechess.org' instead,
3214 or substitute a different host name to connect to your favorite ICS.
3215 For a full description of command-line options that control the
3216 connection to ICS and change the default values of ICS options, see
3217 *note ICS options::.
3219 While you are running XBoard as an ICS client, you use the terminal
3220 window that you started XBoard from as a place to type in commands and
3221 read information that is not available on the chessboard.
3223 The first time you need to use the terminal is to enter your login
3224 name and password, if you are a registered player. (You don't need to do
3225 this manually; the `icsLogon' option can do it for you. *note ICS
3226 options::.) If you are not registered, enter `g' as your name, and the
3227 server will pick a unique guest name for you.
3229 Some useful ICS commands include
3231 to get help on the given <topic>. To get a list of possible topics
3232 type "help" without topic. Try the help command before you ask
3233 other people on the server for help.
3235 For example `help register' tells you how to become a registered
3239 to see a list of people who are logged on. Administrators (people
3240 you should talk to if you have a problem) are marked with the
3241 character `*', an asterisk. The <flags> allow you to display only
3242 selected players: For example, `who of' shows a list of players
3243 who are interested in playing but do not have an opponent.
3246 to see what games are being played
3248 `match <player> [<mins>] [<inc>]'
3249 to challenge another player to a game. Both opponents get <mins>
3250 minutes for the game, and <inc> seconds will be added after each
3251 move. If another player challenges you, the server asks if you
3252 want to accept the challenge; use the `accept' or `decline'
3257 to accept or decline another player's offer. The offer may be to
3258 start a new game, or to agree to a `draw', `adjourn' or `abort'
3259 the current game. *Note Action Menu::.
3261 If you have more than one pending offer (for example, if more than
3262 one player is challenging you, or if your opponent offers both a
3263 draw and to adjourn the game), you have to supply additional
3264 information, by typing something like `accept <player>', `accept
3270 asks your opponent to terminate a game by mutual agreement.
3271 Adjourned games can be continued later. Your opponent can either
3272 `decline' your offer or accept it (by typing the same command or
3273 typing `accept'). In some cases these commands work immediately,
3274 without asking your opponent to agree. For example, you can abort
3275 the game unilaterally if your opponent is out of time, and you can
3276 claim a draw by repetition or the 50-move rule if available simply
3280 to get information about the given <player>. (Default: yourself.)
3283 to get a list of personal settings
3286 to modify these settings
3289 to observe an ongoing game of the given <player>.
3293 to review a recently completed game
3295 Some special XBoard features are activated when you are in examine
3296 mode on ICS. See the descriptions of the menu commands `Forward',
3297 `Backward', `Pause', `ICS Client', and `Stop Examining' on the *note
3298 Edit Menu::, *note Mode Menu::, and *note Action Menu::.
3303 By default, XBoard communicates with an Internet Chess Server by
3304 opening a TCP socket directly from the machine it is running on to the
3305 ICS. If there is a firewall between your machine and the ICS, this
3306 won't work. Here are some recipes for getting around common kinds of
3307 firewalls using special options to XBoard. Important: See the
3308 paragraph in the below about extra echoes, in *note Limitations::.
3310 Suppose that you can't telnet directly to ICS, but you can telnet to
3311 a firewall host, log in, and then telnet from there to ICS. Let's say
3312 the firewall is called `firewall.example.com'. Set command-line options
3315 xboard -ics -icshost firewall.example.com -icsport 23
3316 Then when you run XBoard in ICS mode, you will be prompted to log in
3317 to the firewall host. This works because port 23 is the standard telnet
3318 login service. Do so, then telnet to ICS, using a command like `telnet
3319 chessclub.com 5000', or whatever command the firewall provides for
3320 telnetting to port 5000.
3322 If your firewall lets you telnet (or rlogin) to remote hosts but
3323 doesn't let you telnet to port 5000, you may be able to connect to the
3324 chess server on port 23 instead, which is the port the telnet program
3325 uses by default. Some chess servers support this (including
3326 chessclub.com and freechess.org), while some do not.
3328 If your chess server does not allow connections on port 23 and your
3329 firewall does not allow you to connect to other ports, you may be able
3330 to connect by hopping through another host outside the firewall that
3331 you have an account on. For instance, suppose you have a shell account
3332 at `foo.edu'. Follow the recipe above, but instead of typing `telnet
3333 chessclub.com 5000' to the firewall, type `telnet foo.edu' (or `rlogin
3334 foo.edu'), log in there, and then type `telnet chessclub.com 5000'.
3336 Suppose that you can't telnet directly to ICS, but you can use rsh
3337 to run programs on a firewall host, and that host can telnet to ICS.
3338 Let's say the firewall is called `rsh.example.com'. Set command-line
3341 xboard -ics -gateway rsh.example.com -icshost chessclub.com
3343 Then when you run XBoard in ICS mode, it will connect to the ICS by
3344 using `rsh' to run the command `telnet chessclub.com 5000' on host
3347 Suppose that you can telnet anywhere you want, but you have to run a
3348 special program called `ptelnet' to do so.
3350 First, we'll consider the easy case, in which `ptelnet chessclub.com
3351 5000' gets you to the chess server. In this case set command line
3354 xboard -ics -telnet -telnetProgram ptelnet
3356 Then when you run XBoard in ICS mode, it will issue the command
3357 `ptelnet chessclub.com 5000' to connect to the ICS.
3359 Next, suppose that `ptelnet chessclub.com 5000' doesn't work; that
3360 is, your `ptelnet' program doesn't let you connect to alternative
3361 ports. As noted above, your chess server may allow you to connect on
3362 port 23 instead. In that case, just add the option `-icsport ""' to
3363 the above command. But if your chess server doesn't let you connect on
3364 port 23, you will have to find some other host outside the firewall and
3365 hop through it. For instance, suppose you have a shell account at
3366 `foo.edu'. Set command line options as follows:
3368 xboard -ics -telnet -telnetProgram ptelnet -icshost foo.edu -icsport ""
3370 Then when you run XBoard in ICS mode, it will issue the command
3371 `ptelnet foo.edu' to connect to your account at `foo.edu'. Log in
3372 there, then type `telnet chessclub.com 5000'.
3374 ICC timestamp and FICS timeseal do not work through some firewalls.
3375 You can use them only if your firewall gives a clean TCP connection
3376 with a full 8-bit wide path. If your firewall allows you to get out
3377 only by running a special telnet program, you can't use timestamp or
3378 timeseal across it. But if you have access to a computer just outside
3379 your firewall, and you have much lower netlag when talking to that
3380 computer than to the ICS, it might be worthwhile running timestamp
3381 there. Follow the instructions above for hopping through a host
3382 outside the firewall (foo.edu in the example), but run timestamp or
3383 timeseal on that host instead of telnet.
3385 Suppose that you have a SOCKS firewall that will give you a clean
3386 8-bit wide TCP connection to the chess server, but only after you
3387 authenticate yourself via the SOCKS protocol. In that case, you could
3388 make a socksified version of XBoard and run that. If you are using
3389 timestamp or timeseal, you will to socksify it, not XBoard; this may be
3390 difficult seeing that ICC and FICS do not provide source code for these
3391 programs. Socksification is beyond the scope of this document, but see
3392 the SOCKS Web site at http://www.socks.permeo.com/. If you are missing
3393 SOCKS, try http://www.funbureau.com/.
3395 7 Environment variables
3396 ***********************
3398 Game and position files are found in a directory named by the
3399 `CHESSDIR' environment variable. If this variable is not set, the
3400 current working directory is used. If `CHESSDIR' is set, XBoard
3401 actually changes its working directory to `$CHESSDIR', so any files
3402 written by the chess engine will be placed there too.
3404 8 Limitations and known bugs
3405 ****************************
3407 There is no way for two people running copies of XBoard to play each
3408 other without going through an Internet Chess Server.
3410 Under some circumstances, your ICS password may be echoed when you
3413 If you are connecting to the ICS by running telnet on an Internet
3414 provider or firewall host, you may find that each line you type is
3415 echoed back an extra time after you hit <Enter>. If your Internet
3416 provider is a Unix system, you can probably turn its echo off by typing
3417 `stty -echo' after you log in, and/or typing <^E><Enter> (Ctrl+E
3418 followed by the Enter key) to the telnet program after you have logged
3419 into ICS. It is a good idea to do this if you can, because the extra
3420 echo can occasionally confuse XBoard's parsing routines.
3422 The game parser recognizes only algebraic notation.
3424 Many of the following points used to be limitations in XBoard 4.2.7
3425 and earlier, but are now fixed: The internal move legality tester in
3426 XBoard 4.3.xx does look at the game history, and is fully aware of
3427 castling or en-passant-capture rights. It permits castling with the
3428 king on the d file because this is possible in some "wild 1" games on
3429 ICS. The piece-drop menu does not check piece drops in bughouse to see
3430 if you actually hold the piece you are trying to drop. But this way of
3431 dropping pieces should be considered an obsolete feature, now that
3432 pieces can be dropped by dragging them from the holdings to the board.
3433 Anyway, if you would attempt an illegal move when using a chess engine
3434 or the ICS, XBoard will accept the error message that comes back, undo
3435 the move, and let you try another. FEN positions saved by XBoard do
3436 include correct information about whether castling or en passant are
3437 legal, and also handle the 50-move counter. The mate detector does not
3438 understand that non-contact mate is not really mate in bughouse. The
3439 only problem this causes while playing is minor: a "#" (mate indicator)
3440 character will show up after a non-contact mating move in the move
3441 list. XBoard will not assume the game is over at that point, not even
3442 when the option Detect Mates is on. Edit Game mode always uses the
3443 rules of the selected variant, which can be a variant that uses piece
3444 drops. You can load and edit games that contain piece drops. The
3445 (obsolete) piece menus are not active, but you can perform piece drops
3446 by dragging pieces from the holdings. Fischer Random castling is fully
3447 understood. You can enter castlings by dragging the King on top of
3448 your Rook. You can probably also play Fischer Random successfully on
3449 ICS by typing castling moves into the ICS Interaction window.
3451 The menus may not work if your keyboard is in Caps Lock or Num Lock
3452 mode. This seems to be a problem with the Athena menu widget, not an
3455 Also see the ToDo file included with the distribution for many other
3456 possible bugs, limitations, and ideas for improvement that have been
3459 9 Reporting problems
3460 ********************
3462 You can report bugs and problems with XBoard using the bug tracker at
3463 `https://savannah.gnu.org/projects/xboard/' or by sending mail to
3464 `<bug-xboard@gnu.org>'. It can also be useful to report or discuss
3465 bugs in the WinBoard Forum at `http://www.open-aurec.com/wbforum/',
3466 WinBoard development section.
3468 Please use the `script' program to start a typescript, run XBoard
3469 with the `-debug' option, and include the typescript output in your
3470 message. Also tell us what kind of machine and what operating system
3471 version you are using. The command `uname -a' will often tell you this.
3473 If you improve XBoard, please send a message about your changes, and
3474 we will get in touch with you about merging them in to the main line of
3477 10 Authors and contributors
3478 ***************************
3480 Chris Sears and Dan Sears wrote the original XBoard. They were
3481 responsible for versions 1.0 through 1.2. The color scheme was taken
3482 from Wayne Christopher's `XChess' program.
3484 Tim Mann was primarily responsible for XBoard versions 1.3 through
3485 4.2.7, and for WinBoard (a port of XBoard to Microsoft Win32) from its
3486 inception through version 4.2.7.
3488 John Chanak contributed the initial implementation of ICS mode. Evan
3489 Welsh wrote `CMail', and Patrick Surry helped in designing, testing,
3490 and documenting it. Elmar Bartel contributed the new piece bitmaps
3491 introduced in version 3.2. Jochen Wiedmann converted the documentation
3492 to texinfo. Frank McIngvale added click/click moving, the Analysis
3493 modes, piece flashing, ZIICS import, and ICS text colorization to
3494 XBoard. Hugh Fisher added animated piece movement to XBoard, and
3495 Henrik Gram added it to WinBoard. Mark Williams contributed the
3496 initial (WinBoard-only) implementation of many new features added to
3497 both XBoard and WinBoard in version 4.1.0, including copy/paste,
3498 premove, icsAlarm, autoFlipView, training mode, auto raise, and
3499 blindfold. Ben Nye contributed X copy/paste code for XBoard.
3501 In a fork from version 4.2.7, Alessandro Scotti added many elements
3502 to the user interface of WinBoard, including the board textures and
3503 font-based rendering, the evaluation-graph, move-history and
3504 engine-output window. He was also responsible for adding the UCI
3507 H. G. Muller continued this fork of the project, producing version
3508 4.3. He made WinBoard castling- and e.p.-aware, added variant support
3509 with adjustable board sizes, the crazyhouse holdings, and the fairy
3510 pieces. In addition he added most of the adjudication options, made
3511 WinBoard more robust in dealing with buggy and crashing engines, and
3512 extended time control with a time-odds and node-count-based modes.
3513 Most of the options that initially were WinBoard only have now been
3514 back-ported to XBoard.
3516 Michel van den Bergh provided the code for reading Polyglot opening
3519 Meanwhile, some work continued on the GNU XBoard project maintained
3520 at savannah.gnu.org, but version 4.2.8 was never released. Daniel
3521 Mehrmann was responsible for much of this work.
3523 Most recently, Arun Persaud worked with H. G. Muller to merge all
3524 the features of the never-released XBoard/WinBoard 4.2.8 of the GNU
3525 XBoard project and the never-released 4.3.16 from H. G.'s fork into a
3526 unified XBoard/WinBoard 4.4, which is now available both from the
3527 savannah.gnu.org web site and the WinBoard forum.
3532 The `cmail' program can help you play chess by email with opponents of
3533 your choice using XBoard as an interface.
3535 You will usually run `cmail' without giving any options.
3541 Displays `cmail' usage information.
3544 Shows the conditions of the GNU General Public License. *Note
3548 Shows the warranty notice of the GNU General Public License.
3553 Provides or inhibits verbose output from `cmail' and XBoard,
3554 useful for debugging. The `-xv' form also inhibits the cmail
3555 introduction message.
3559 Invokes or inhibits the sending of a mail message containing the
3564 Invokes or inhibits the running of XBoard on the game file.
3568 Invokes or inhibits the reuse of an existing XBoard to display the
3572 Resends the last mail message for that game. This inhibits running
3576 The name of the game to be processed.
3581 Number of games to start as White, as Black or in total. Default
3582 is 1 as white and none as black. If only one color is specified
3583 then none of the other color is assumed. If no color is specified
3584 then equal numbers of White and Black games are started, with the
3585 extra game being as White if an odd number of total games is
3590 A one-word alias for yourself or your opponent.
3595 -oppname <full name>
3596 The full name of White, Black, yourself or your opponent.
3601 -oppna <net address>
3602 The email address of White, Black, yourself or your opponent.
3605 The directory in which `cmail' keeps its files. This defaults to
3606 the environment variable `$CMAIL_DIR' or failing that, `$CHESSDIR',
3607 `$HOME/Chess' or `~/Chess'. It will be created if it does not
3611 The directory in which `cmail' archives completed games. Defaults
3612 to the environment variable `$CMAIL_ARCDIR' or, in its absence,
3613 the same directory as cmail keeps its working files (above).
3615 -mailprog <mail program>
3616 The program used by cmail to send email messages. This defaults to
3617 the environment variable `$CMAIL_MAILPROG' or failing that
3618 `/usr/ucb/Mail', `/usr/ucb/mail' or `Mail'. You will need to set
3619 this variable if none of the above paths fit your system.
3622 A file in which to dump verbose debugging messages that are
3623 invoked with the `-v' option.
3626 The PGN Event tag (default `Email correspondence game').
3629 The PGN Site tag (default `NET').
3632 The PGN Round tag (default `-', not applicable).
3635 The PGN Mode tag (default `EM', Electronic Mail).
3638 Any option flags not listed above are passed through to XBoard.
3639 Invoking XBoard through CMail changes the default values of two
3640 XBoard options: The default value for `-noChessProgram' is changed
3641 to true; that is, by default no chess engine is started. The
3642 default value for `-timeDelay' is changed to 0; that is, by default
3643 XBoard immediately goes to the end of the game as played so far,
3644 rather than stepping through the moves one by one. You can still
3645 set these options to whatever values you prefer by supplying them
3646 on CMail's command line. *Note Options::.
3648 11.2 Starting a CMail Game
3649 ==========================
3651 Type `cmail' from a shell to start a game as white. After an opening
3652 message, you will be prompted for a game name, which is optional--if you
3653 simply press <Enter>, the game name will take the form
3654 `you-VS-opponent'. You will next be prompted for the short name of your
3655 opponent. If you haven't played this person before, you will also be
3656 prompted for his/her email address. `cmail' will then invoke XBoard in
3657 the background. Make your first move and select `Mail Move' from the
3658 `File' menu. *Note File Menu::. If all is well, `cmail' will mail a
3659 copy of the move to your opponent. If you select `Exit' without having
3660 selected `Mail Move' then no move will be made.
3662 11.3 Answering a Move
3663 =====================
3665 When you receive a message from an opponent containing a move in one of
3666 your games, simply pipe the message through `cmail'. In some mailers
3667 this is as simple as typing `| cmail' when viewing the message, while in
3668 others you may have to save the message to a file and do `cmail < file'
3669 at the command line. In either case `cmail' will display the game using
3670 XBoard. If you didn't exit XBoard when you made your first move then
3671 `cmail' will do its best to use the existing XBoard instead of starting
3672 a new one. As before, simply make a move and select `Mail Move' from
3673 the `File' menu. *Note File Menu::. `cmail' will try to use the XBoard
3674 that was most recently used to display the current game. This means
3675 that many games can be in progress simultaneously, each with its own
3678 If you want to look at the history or explore a variation, go ahead,
3679 but you must return to the current position before XBoard will allow you
3680 to mail a move. If you edit the game's history you must select `Reload
3681 Same Game' from the `File' menu to get back to the original position,
3682 then make the move you want and select `Mail Move'. As before, if you
3683 decide you aren't ready to make a move just yet you can either select
3684 `Exit' without sending a move or just leave XBoard running until you
3687 11.4 Multi-Game Messages
3688 ========================
3690 It is possible to have a `cmail' message carry more than one game.
3691 This feature was implemented to handle IECG (International Email Chess
3692 Group) matches, where a match consists of one game as white and one as
3693 black, with moves transmitted simultaneously. In case there are more
3694 general uses, `cmail' itself places no limit on the number of
3695 black/white games contained in a message; however, XBoard does.
3697 11.5 Completing a Game
3698 ======================
3700 Because XBoard can detect checkmate and stalemate, `cmail' handles game
3701 termination sensibly. As well as resignation, the `Action' menu allows
3702 draws to be offered and accepted for `cmail' games.
3704 For multi-game messages, only unfinished and just-finished games
3705 will be included in email messages. When all the games are finished,
3706 they are archived in the user's archive directory, and similarly in the
3707 opponent's when he or she pipes the final message through `cmail'. The
3708 archive file name includes the date the game was started.
3710 11.6 Known CMail Problems
3711 =========================
3713 It's possible that a strange conjunction of conditions may occasionally
3714 mean that `cmail' has trouble reactivating an existing XBoard. If this
3715 should happen, simply trying it again should work. If not, remove the
3716 file that stores the XBoard's PID (`game.pid') or use the `-xreuse'
3717 option to force `cmail' to start a new XBoard.
3719 Versions of `cmail' after 2.16 no longer understand the old file
3720 format that XBoard used to use and so cannot be used to correspond with
3721 anyone using an older version.
3723 Versions of `cmail' older than 2.11 do not handle multi-game
3724 messages, so multi-game correspondence is not possible with opponents
3725 using an older version.
3727 12 Other programs you can use with XBoard
3728 *****************************************
3730 Here are some other programs you can use with XBoard
3735 The GNU Chess engine is available from:
3737 ftp://ftp.gnu.org/gnu/gnuchess/
3739 You can use XBoard to play a game against GNU Chess, or to interface
3740 GNU Chess to an ICS.
3745 Fairy-Max is a derivative from the once World's smallest Chess program
3746 micro-Max, which measures only about 100 lines of source code. The
3747 main difference with micro-Max is that Fairy-Max loads its
3748 move-generator tables from a file, so that the rules for piece movement
3749 can be easily configured to implement unorthodox pieces. Fairy-Max can
3750 therefore play a large number of variants, normal Chess being one of
3751 those. In addition it plays Knightmate, Capablanca and Gothic Chess,
3752 Shatranj, Courier Chess, Cylinder chess, Berolina Chess, while the user
3753 can easily define new variants. It can be obtained from:
3755 http://home.hccnet.nl/h.g.muller/dwnldpage.html
3760 HoiChess is a not-so-very-strong Chess engine, which comes with a
3761 derivative HoiXiangqi, able to play Chinese Chess. It can be obtained
3762 from the standard Linux repositories through:
3764 sudo apt-get install hoichess
3769 Crafty is a chess engine written by Bob Hyatt. You can use XBoard to
3770 play a game against Crafty, hook Crafty up to an ICS, or use Crafty to
3771 interactively analyze games and positions for you.
3773 Crafty is a strong, rapidly evolving chess program. This rapid pace
3774 of development is good, because it means Crafty is always getting
3775 better. This can sometimes cause problems with backwards
3776 compatibility, but usually the latest version of Crafty will work well
3777 with the latest version of XBoard. Crafty can be obtained from its
3778 author's FTP site: ftp://ftp.cis.uab.edu/hyatt/.
3780 To use Crafty with XBoard, give the -fcp and -fd options as follows,
3781 where <crafty's directory> is the directory in which you installed
3782 Crafty and placed its book and other support files.
3787 Copyright (C) 1991 Digital Equipment Corporation, Maynard,
3790 All Rights Reserved.
3792 Permission to use, copy, modify, and distribute this software and its
3793 documentation for any purpose and without fee is hereby granted,
3794 provided that the above copyright notice appear in all copies and that
3795 both that copyright notice and this permission notice appear in
3796 supporting documentation, and that the name of Digital not be used in
3797 advertising or publicity pertaining to distribution of the software
3798 without specific, written prior permission.
3800 Digital disclaims all warranties with regard to this software,
3801 including all implied warranties of merchantability and fitness. In no
3802 event shall Digital be liable for any special, indirect or
3803 consequential damages or any damages whatsoever resulting from loss of
3804 use, data or profits, whether in an action of contract, negligence or
3805 other tortious action, arising out of or in connection with the use or
3806 performance of this software.
3808 Enhancements copyright (C) 1992-2003, 2004, 2005, 2006, 2007, 2008,
3809 2009, 2010, 2011, 2012, 2013, 2014 Free Software Foundation, Inc.
3811 Published by the Free Software Foundation
3812 59 Temple Place - Suite 330
3813 Boston, MA 02111-1307 USA
3815 Permission is granted to make and distribute verbatim copies of this
3816 manual provided the copyright notice and this permission notice are
3817 preserved on all copies.
3819 Permission is granted to copy and distribute modified versions of
3820 this manual under the conditions for verbatim copying, provided also
3821 that the section entitled "GNU General Public License," is included
3822 exactly as in the original, and provided that the entire resulting
3823 derived work is distributed under the terms of a permission notice
3824 identical to this one.
3826 Permission is granted to copy and distribute translations of this
3827 manual into another language, under the above conditions for modified
3828 versions, except that the section entitled "GNU General Public License,"
3829 and this permission notice, may be included in translations approved by
3830 the Free Software Foundation instead of in the original English.
3832 GNU GENERAL PUBLIC LICENSE
3833 **************************
3835 Version 3, 29 June 2007
3837 Copyright (C) 2007 Free Software Foundation, Inc. `http://fsf.org/'
3839 Everyone is permitted to copy and distribute verbatim copies of this
3840 license document, but changing it is not allowed.
3845 The GNU General Public License is a free, copyleft license for software
3846 and other kinds of works.
3848 The licenses for most software and other practical works are designed
3849 to take away your freedom to share and change the works. By contrast,
3850 the GNU General Public License is intended to guarantee your freedom to
3851 share and change all versions of a program--to make sure it remains
3852 free software for all its users. We, the Free Software Foundation, use
3853 the GNU General Public License for most of our software; it applies
3854 also to any other work released this way by its authors. You can apply
3855 it to your programs, too.
3857 When we speak of free software, we are referring to freedom, not
3858 price. Our General Public Licenses are designed to make sure that you
3859 have the freedom to distribute copies of free software (and charge for
3860 them if you wish), that you receive source code or can get it if you
3861 want it, that you can change the software or use pieces of it in new
3862 free programs, and that you know you can do these things.
3864 To protect your rights, we need to prevent others from denying you
3865 these rights or asking you to surrender the rights. Therefore, you
3866 have certain responsibilities if you distribute copies of the software,
3867 or if you modify it: responsibilities to respect the freedom of others.
3869 For example, if you distribute copies of such a program, whether
3870 gratis or for a fee, you must pass on to the recipients the same
3871 freedoms that you received. You must make sure that they, too, receive
3872 or can get the source code. And you must show them these terms so they
3875 Developers that use the GNU GPL protect your rights with two steps:
3876 (1) assert copyright on the software, and (2) offer you this License
3877 giving you legal permission to copy, distribute and/or modify it.
3879 For the developers' and authors' protection, the GPL clearly explains
3880 that there is no warranty for this free software. For both users' and
3881 authors' sake, the GPL requires that modified versions be marked as
3882 changed, so that their problems will not be attributed erroneously to
3883 authors of previous versions.
3885 Some devices are designed to deny users access to install or run
3886 modified versions of the software inside them, although the
3887 manufacturer can do so. This is fundamentally incompatible with the
3888 aim of protecting users' freedom to change the software. The
3889 systematic pattern of such abuse occurs in the area of products for
3890 individuals to use, which is precisely where it is most unacceptable.
3891 Therefore, we have designed this version of the GPL to prohibit the
3892 practice for those products. If such problems arise substantially in
3893 other domains, we stand ready to extend this provision to those domains
3894 in future versions of the GPL, as needed to protect the freedom of
3897 Finally, every program is threatened constantly by software patents.
3898 States should not allow patents to restrict development and use of
3899 software on general-purpose computers, but in those that do, we wish to
3900 avoid the special danger that patents applied to a free program could
3901 make it effectively proprietary. To prevent this, the GPL assures that
3902 patents cannot be used to render the program non-free.
3904 The precise terms and conditions for copying, distribution and
3905 modification follow.
3907 TERMS AND CONDITIONS
3908 ====================
3912 "This License" refers to version 3 of the GNU General Public
3915 "Copyright" also means copyright-like laws that apply to other
3916 kinds of works, such as semiconductor masks.
3918 "The Program" refers to any copyrightable work licensed under this
3919 License. Each licensee is addressed as "you". "Licensees" and
3920 "recipients" may be individuals or organizations.
3922 To "modify" a work means to copy from or adapt all or part of the
3923 work in a fashion requiring copyright permission, other than the
3924 making of an exact copy. The resulting work is called a "modified
3925 version" of the earlier work or a work "based on" the earlier work.
3927 A "covered work" means either the unmodified Program or a work
3928 based on the Program.
3930 To "propagate" a work means to do anything with it that, without
3931 permission, would make you directly or secondarily liable for
3932 infringement under applicable copyright law, except executing it
3933 on a computer or modifying a private copy. Propagation includes
3934 copying, distribution (with or without modification), making
3935 available to the public, and in some countries other activities as
3938 To "convey" a work means any kind of propagation that enables other
3939 parties to make or receive copies. Mere interaction with a user
3940 through a computer network, with no transfer of a copy, is not
3943 An interactive user interface displays "Appropriate Legal Notices"
3944 to the extent that it includes a convenient and prominently visible
3945 feature that (1) displays an appropriate copyright notice, and (2)
3946 tells the user that there is no warranty for the work (except to
3947 the extent that warranties are provided), that licensees may
3948 convey the work under this License, and how to view a copy of this
3949 License. If the interface presents a list of user commands or
3950 options, such as a menu, a prominent item in the list meets this
3955 The "source code" for a work means the preferred form of the work
3956 for making modifications to it. "Object code" means any
3957 non-source form of a work.
3959 A "Standard Interface" means an interface that either is an
3960 official standard defined by a recognized standards body, or, in
3961 the case of interfaces specified for a particular programming
3962 language, one that is widely used among developers working in that
3965 The "System Libraries" of an executable work include anything,
3966 other than the work as a whole, that (a) is included in the normal
3967 form of packaging a Major Component, but which is not part of that
3968 Major Component, and (b) serves only to enable use of the work
3969 with that Major Component, or to implement a Standard Interface
3970 for which an implementation is available to the public in source
3971 code form. A "Major Component", in this context, means a major
3972 essential component (kernel, window system, and so on) of the
3973 specific operating system (if any) on which the executable work
3974 runs, or a compiler used to produce the work, or an object code
3975 interpreter used to run it.
3977 The "Corresponding Source" for a work in object code form means all
3978 the source code needed to generate, install, and (for an executable
3979 work) run the object code and to modify the work, including
3980 scripts to control those activities. However, it does not include
3981 the work's System Libraries, or general-purpose tools or generally
3982 available free programs which are used unmodified in performing
3983 those activities but which are not part of the work. For example,
3984 Corresponding Source includes interface definition files
3985 associated with source files for the work, and the source code for
3986 shared libraries and dynamically linked subprograms that the work
3987 is specifically designed to require, such as by intimate data
3988 communication or control flow between those subprograms and other
3991 The Corresponding Source need not include anything that users can
3992 regenerate automatically from other parts of the Corresponding
3995 The Corresponding Source for a work in source code form is that
3998 2. Basic Permissions.
4000 All rights granted under this License are granted for the term of
4001 copyright on the Program, and are irrevocable provided the stated
4002 conditions are met. This License explicitly affirms your unlimited
4003 permission to run the unmodified Program. The output from running
4004 a covered work is covered by this License only if the output,
4005 given its content, constitutes a covered work. This License
4006 acknowledges your rights of fair use or other equivalent, as
4007 provided by copyright law.
4009 You may make, run and propagate covered works that you do not
4010 convey, without conditions so long as your license otherwise
4011 remains in force. You may convey covered works to others for the
4012 sole purpose of having them make modifications exclusively for
4013 you, or provide you with facilities for running those works,
4014 provided that you comply with the terms of this License in
4015 conveying all material for which you do not control copyright.
4016 Those thus making or running the covered works for you must do so
4017 exclusively on your behalf, under your direction and control, on
4018 terms that prohibit them from making any copies of your
4019 copyrighted material outside their relationship with you.
4021 Conveying under any other circumstances is permitted solely under
4022 the conditions stated below. Sublicensing is not allowed; section
4023 10 makes it unnecessary.
4025 3. Protecting Users' Legal Rights From Anti-Circumvention Law.
4027 No covered work shall be deemed part of an effective technological
4028 measure under any applicable law fulfilling obligations under
4029 article 11 of the WIPO copyright treaty adopted on 20 December
4030 1996, or similar laws prohibiting or restricting circumvention of
4033 When you convey a covered work, you waive any legal power to forbid
4034 circumvention of technological measures to the extent such
4035 circumvention is effected by exercising rights under this License
4036 with respect to the covered work, and you disclaim any intention
4037 to limit operation or modification of the work as a means of
4038 enforcing, against the work's users, your or third parties' legal
4039 rights to forbid circumvention of technological measures.
4041 4. Conveying Verbatim Copies.
4043 You may convey verbatim copies of the Program's source code as you
4044 receive it, in any medium, provided that you conspicuously and
4045 appropriately publish on each copy an appropriate copyright notice;
4046 keep intact all notices stating that this License and any
4047 non-permissive terms added in accord with section 7 apply to the
4048 code; keep intact all notices of the absence of any warranty; and
4049 give all recipients a copy of this License along with the Program.
4051 You may charge any price or no price for each copy that you convey,
4052 and you may offer support or warranty protection for a fee.
4054 5. Conveying Modified Source Versions.
4056 You may convey a work based on the Program, or the modifications to
4057 produce it from the Program, in the form of source code under the
4058 terms of section 4, provided that you also meet all of these
4061 a. The work must carry prominent notices stating that you
4062 modified it, and giving a relevant date.
4064 b. The work must carry prominent notices stating that it is
4065 released under this License and any conditions added under
4066 section 7. This requirement modifies the requirement in
4067 section 4 to "keep intact all notices".
4069 c. You must license the entire work, as a whole, under this
4070 License to anyone who comes into possession of a copy. This
4071 License will therefore apply, along with any applicable
4072 section 7 additional terms, to the whole of the work, and all
4073 its parts, regardless of how they are packaged. This License
4074 gives no permission to license the work in any other way, but
4075 it does not invalidate such permission if you have separately
4078 d. If the work has interactive user interfaces, each must display
4079 Appropriate Legal Notices; however, if the Program has
4080 interactive interfaces that do not display Appropriate Legal
4081 Notices, your work need not make them do so.
4083 A compilation of a covered work with other separate and independent
4084 works, which are not by their nature extensions of the covered
4085 work, and which are not combined with it such as to form a larger
4086 program, in or on a volume of a storage or distribution medium, is
4087 called an "aggregate" if the compilation and its resulting
4088 copyright are not used to limit the access or legal rights of the
4089 compilation's users beyond what the individual works permit.
4090 Inclusion of a covered work in an aggregate does not cause this
4091 License to apply to the other parts of the aggregate.
4093 6. Conveying Non-Source Forms.
4095 You may convey a covered work in object code form under the terms
4096 of sections 4 and 5, provided that you also convey the
4097 machine-readable Corresponding Source under the terms of this
4098 License, in one of these ways:
4100 a. Convey the object code in, or embodied in, a physical product
4101 (including a physical distribution medium), accompanied by the
4102 Corresponding Source fixed on a durable physical medium
4103 customarily used for software interchange.
4105 b. Convey the object code in, or embodied in, a physical product
4106 (including a physical distribution medium), accompanied by a
4107 written offer, valid for at least three years and valid for
4108 as long as you offer spare parts or customer support for that
4109 product model, to give anyone who possesses the object code
4110 either (1) a copy of the Corresponding Source for all the
4111 software in the product that is covered by this License, on a
4112 durable physical medium customarily used for software
4113 interchange, for a price no more than your reasonable cost of
4114 physically performing this conveying of source, or (2) access
4115 to copy the Corresponding Source from a network server at no
4118 c. Convey individual copies of the object code with a copy of
4119 the written offer to provide the Corresponding Source. This
4120 alternative is allowed only occasionally and noncommercially,
4121 and only if you received the object code with such an offer,
4122 in accord with subsection 6b.
4124 d. Convey the object code by offering access from a designated
4125 place (gratis or for a charge), and offer equivalent access
4126 to the Corresponding Source in the same way through the same
4127 place at no further charge. You need not require recipients
4128 to copy the Corresponding Source along with the object code.
4129 If the place to copy the object code is a network server, the
4130 Corresponding Source may be on a different server (operated
4131 by you or a third party) that supports equivalent copying
4132 facilities, provided you maintain clear directions next to
4133 the object code saying where to find the Corresponding Source.
4134 Regardless of what server hosts the Corresponding Source, you
4135 remain obligated to ensure that it is available for as long
4136 as needed to satisfy these requirements.
4138 e. Convey the object code using peer-to-peer transmission,
4139 provided you inform other peers where the object code and
4140 Corresponding Source of the work are being offered to the
4141 general public at no charge under subsection 6d.
4144 A separable portion of the object code, whose source code is
4145 excluded from the Corresponding Source as a System Library, need
4146 not be included in conveying the object code work.
4148 A "User Product" is either (1) a "consumer product", which means
4149 any tangible personal property which is normally used for personal,
4150 family, or household purposes, or (2) anything designed or sold for
4151 incorporation into a dwelling. In determining whether a product
4152 is a consumer product, doubtful cases shall be resolved in favor of
4153 coverage. For a particular product received by a particular user,
4154 "normally used" refers to a typical or common use of that class of
4155 product, regardless of the status of the particular user or of the
4156 way in which the particular user actually uses, or expects or is
4157 expected to use, the product. A product is a consumer product
4158 regardless of whether the product has substantial commercial,
4159 industrial or non-consumer uses, unless such uses represent the
4160 only significant mode of use of the product.
4162 "Installation Information" for a User Product means any methods,
4163 procedures, authorization keys, or other information required to
4164 install and execute modified versions of a covered work in that
4165 User Product from a modified version of its Corresponding Source.
4166 The information must suffice to ensure that the continued
4167 functioning of the modified object code is in no case prevented or
4168 interfered with solely because modification has been made.
4170 If you convey an object code work under this section in, or with,
4171 or specifically for use in, a User Product, and the conveying
4172 occurs as part of a transaction in which the right of possession
4173 and use of the User Product is transferred to the recipient in
4174 perpetuity or for a fixed term (regardless of how the transaction
4175 is characterized), the Corresponding Source conveyed under this
4176 section must be accompanied by the Installation Information. But
4177 this requirement does not apply if neither you nor any third party
4178 retains the ability to install modified object code on the User
4179 Product (for example, the work has been installed in ROM).
4181 The requirement to provide Installation Information does not
4182 include a requirement to continue to provide support service,
4183 warranty, or updates for a work that has been modified or
4184 installed by the recipient, or for the User Product in which it
4185 has been modified or installed. Access to a network may be denied
4186 when the modification itself materially and adversely affects the
4187 operation of the network or violates the rules and protocols for
4188 communication across the network.
4190 Corresponding Source conveyed, and Installation Information
4191 provided, in accord with this section must be in a format that is
4192 publicly documented (and with an implementation available to the
4193 public in source code form), and must require no special password
4194 or key for unpacking, reading or copying.
4196 7. Additional Terms.
4198 "Additional permissions" are terms that supplement the terms of
4199 this License by making exceptions from one or more of its
4200 conditions. Additional permissions that are applicable to the
4201 entire Program shall be treated as though they were included in
4202 this License, to the extent that they are valid under applicable
4203 law. If additional permissions apply only to part of the Program,
4204 that part may be used separately under those permissions, but the
4205 entire Program remains governed by this License without regard to
4206 the additional permissions.
4208 When you convey a copy of a covered work, you may at your option
4209 remove any additional permissions from that copy, or from any part
4210 of it. (Additional permissions may be written to require their own
4211 removal in certain cases when you modify the work.) You may place
4212 additional permissions on material, added by you to a covered work,
4213 for which you have or can give appropriate copyright permission.
4215 Notwithstanding any other provision of this License, for material
4216 you add to a covered work, you may (if authorized by the copyright
4217 holders of that material) supplement the terms of this License
4220 a. Disclaiming warranty or limiting liability differently from
4221 the terms of sections 15 and 16 of this License; or
4223 b. Requiring preservation of specified reasonable legal notices
4224 or author attributions in that material or in the Appropriate
4225 Legal Notices displayed by works containing it; or
4227 c. Prohibiting misrepresentation of the origin of that material,
4228 or requiring that modified versions of such material be
4229 marked in reasonable ways as different from the original
4232 d. Limiting the use for publicity purposes of names of licensors
4233 or authors of the material; or
4235 e. Declining to grant rights under trademark law for use of some
4236 trade names, trademarks, or service marks; or
4238 f. Requiring indemnification of licensors and authors of that
4239 material by anyone who conveys the material (or modified
4240 versions of it) with contractual assumptions of liability to
4241 the recipient, for any liability that these contractual
4242 assumptions directly impose on those licensors and authors.
4244 All other non-permissive additional terms are considered "further
4245 restrictions" within the meaning of section 10. If the Program as
4246 you received it, or any part of it, contains a notice stating that
4247 it is governed by this License along with a term that is a further
4248 restriction, you may remove that term. If a license document
4249 contains a further restriction but permits relicensing or
4250 conveying under this License, you may add to a covered work
4251 material governed by the terms of that license document, provided
4252 that the further restriction does not survive such relicensing or
4255 If you add terms to a covered work in accord with this section, you
4256 must place, in the relevant source files, a statement of the
4257 additional terms that apply to those files, or a notice indicating
4258 where to find the applicable terms.
4260 Additional terms, permissive or non-permissive, may be stated in
4261 the form of a separately written license, or stated as exceptions;
4262 the above requirements apply either way.
4266 You may not propagate or modify a covered work except as expressly
4267 provided under this License. Any attempt otherwise to propagate or
4268 modify it is void, and will automatically terminate your rights
4269 under this License (including any patent licenses granted under
4270 the third paragraph of section 11).
4272 However, if you cease all violation of this License, then your
4273 license from a particular copyright holder is reinstated (a)
4274 provisionally, unless and until the copyright holder explicitly
4275 and finally terminates your license, and (b) permanently, if the
4276 copyright holder fails to notify you of the violation by some
4277 reasonable means prior to 60 days after the cessation.
4279 Moreover, your license from a particular copyright holder is
4280 reinstated permanently if the copyright holder notifies you of the
4281 violation by some reasonable means, this is the first time you have
4282 received notice of violation of this License (for any work) from
4283 that copyright holder, and you cure the violation prior to 30 days
4284 after your receipt of the notice.
4286 Termination of your rights under this section does not terminate
4287 the licenses of parties who have received copies or rights from
4288 you under this License. If your rights have been terminated and
4289 not permanently reinstated, you do not qualify to receive new
4290 licenses for the same material under section 10.
4292 9. Acceptance Not Required for Having Copies.
4294 You are not required to accept this License in order to receive or
4295 run a copy of the Program. Ancillary propagation of a covered work
4296 occurring solely as a consequence of using peer-to-peer
4297 transmission to receive a copy likewise does not require
4298 acceptance. However, nothing other than this License grants you
4299 permission to propagate or modify any covered work. These actions
4300 infringe copyright if you do not accept this License. Therefore,
4301 by modifying or propagating a covered work, you indicate your
4302 acceptance of this License to do so.
4304 10. Automatic Licensing of Downstream Recipients.
4306 Each time you convey a covered work, the recipient automatically
4307 receives a license from the original licensors, to run, modify and
4308 propagate that work, subject to this License. You are not
4309 responsible for enforcing compliance by third parties with this
4312 An "entity transaction" is a transaction transferring control of an
4313 organization, or substantially all assets of one, or subdividing an
4314 organization, or merging organizations. If propagation of a
4315 covered work results from an entity transaction, each party to that
4316 transaction who receives a copy of the work also receives whatever
4317 licenses to the work the party's predecessor in interest had or
4318 could give under the previous paragraph, plus a right to
4319 possession of the Corresponding Source of the work from the
4320 predecessor in interest, if the predecessor has it or can get it
4321 with reasonable efforts.
4323 You may not impose any further restrictions on the exercise of the
4324 rights granted or affirmed under this License. For example, you
4325 may not impose a license fee, royalty, or other charge for
4326 exercise of rights granted under this License, and you may not
4327 initiate litigation (including a cross-claim or counterclaim in a
4328 lawsuit) alleging that any patent claim is infringed by making,
4329 using, selling, offering for sale, or importing the Program or any
4334 A "contributor" is a copyright holder who authorizes use under this
4335 License of the Program or a work on which the Program is based.
4336 The work thus licensed is called the contributor's "contributor
4339 A contributor's "essential patent claims" are all patent claims
4340 owned or controlled by the contributor, whether already acquired or
4341 hereafter acquired, that would be infringed by some manner,
4342 permitted by this License, of making, using, or selling its
4343 contributor version, but do not include claims that would be
4344 infringed only as a consequence of further modification of the
4345 contributor version. For purposes of this definition, "control"
4346 includes the right to grant patent sublicenses in a manner
4347 consistent with the requirements of this License.
4349 Each contributor grants you a non-exclusive, worldwide,
4350 royalty-free patent license under the contributor's essential
4351 patent claims, to make, use, sell, offer for sale, import and
4352 otherwise run, modify and propagate the contents of its
4353 contributor version.
4355 In the following three paragraphs, a "patent license" is any
4356 express agreement or commitment, however denominated, not to
4357 enforce a patent (such as an express permission to practice a
4358 patent or covenant not to sue for patent infringement). To
4359 "grant" such a patent license to a party means to make such an
4360 agreement or commitment not to enforce a patent against the party.
4362 If you convey a covered work, knowingly relying on a patent
4363 license, and the Corresponding Source of the work is not available
4364 for anyone to copy, free of charge and under the terms of this
4365 License, through a publicly available network server or other
4366 readily accessible means, then you must either (1) cause the
4367 Corresponding Source to be so available, or (2) arrange to deprive
4368 yourself of the benefit of the patent license for this particular
4369 work, or (3) arrange, in a manner consistent with the requirements
4370 of this License, to extend the patent license to downstream
4371 recipients. "Knowingly relying" means you have actual knowledge
4372 that, but for the patent license, your conveying the covered work
4373 in a country, or your recipient's use of the covered work in a
4374 country, would infringe one or more identifiable patents in that
4375 country that you have reason to believe are valid.
4377 If, pursuant to or in connection with a single transaction or
4378 arrangement, you convey, or propagate by procuring conveyance of, a
4379 covered work, and grant a patent license to some of the parties
4380 receiving the covered work authorizing them to use, propagate,
4381 modify or convey a specific copy of the covered work, then the
4382 patent license you grant is automatically extended to all
4383 recipients of the covered work and works based on it.
4385 A patent license is "discriminatory" if it does not include within
4386 the scope of its coverage, prohibits the exercise of, or is
4387 conditioned on the non-exercise of one or more of the rights that
4388 are specifically granted under this License. You may not convey a
4389 covered work if you are a party to an arrangement with a third
4390 party that is in the business of distributing software, under
4391 which you make payment to the third party based on the extent of
4392 your activity of conveying the work, and under which the third
4393 party grants, to any of the parties who would receive the covered
4394 work from you, a discriminatory patent license (a) in connection
4395 with copies of the covered work conveyed by you (or copies made
4396 from those copies), or (b) primarily for and in connection with
4397 specific products or compilations that contain the covered work,
4398 unless you entered into that arrangement, or that patent license
4399 was granted, prior to 28 March 2007.
4401 Nothing in this License shall be construed as excluding or limiting
4402 any implied license or other defenses to infringement that may
4403 otherwise be available to you under applicable patent law.
4405 12. No Surrender of Others' Freedom.
4407 If conditions are imposed on you (whether by court order,
4408 agreement or otherwise) that contradict the conditions of this
4409 License, they do not excuse you from the conditions of this
4410 License. If you cannot convey a covered work so as to satisfy
4411 simultaneously your obligations under this License and any other
4412 pertinent obligations, then as a consequence you may not convey it
4413 at all. For example, if you agree to terms that obligate you to
4414 collect a royalty for further conveying from those to whom you
4415 convey the Program, the only way you could satisfy both those
4416 terms and this License would be to refrain entirely from conveying
4419 13. Use with the GNU Affero General Public License.
4421 Notwithstanding any other provision of this License, you have
4422 permission to link or combine any covered work with a work licensed
4423 under version 3 of the GNU Affero General Public License into a
4424 single combined work, and to convey the resulting work. The terms
4425 of this License will continue to apply to the part which is the
4426 covered work, but the special requirements of the GNU Affero
4427 General Public License, section 13, concerning interaction through
4428 a network will apply to the combination as such.
4430 14. Revised Versions of this License.
4432 The Free Software Foundation may publish revised and/or new
4433 versions of the GNU General Public License from time to time.
4434 Such new versions will be similar in spirit to the present
4435 version, but may differ in detail to address new problems or
4438 Each version is given a distinguishing version number. If the
4439 Program specifies that a certain numbered version of the GNU
4440 General Public License "or any later version" applies to it, you
4441 have the option of following the terms and conditions either of
4442 that numbered version or of any later version published by the
4443 Free Software Foundation. If the Program does not specify a
4444 version number of the GNU General Public License, you may choose
4445 any version ever published by the Free Software Foundation.
4447 If the Program specifies that a proxy can decide which future
4448 versions of the GNU General Public License can be used, that
4449 proxy's public statement of acceptance of a version permanently
4450 authorizes you to choose that version for the Program.
4452 Later license versions may give you additional or different
4453 permissions. However, no additional obligations are imposed on any
4454 author or copyright holder as a result of your choosing to follow a
4457 15. Disclaimer of Warranty.
4459 THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
4460 APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE
4461 COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS"
4462 WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED,
4463 INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
4464 MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE
4465 RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU.
4466 SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL
4467 NECESSARY SERVICING, REPAIR OR CORRECTION.
4469 16. Limitation of Liability.
4471 IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
4472 WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES
4473 AND/OR CONVEYS THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU
4474 FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR
4475 CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE
4476 THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA
4477 BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD
4478 PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
4479 PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF
4480 THE POSSIBILITY OF SUCH DAMAGES.
4482 17. Interpretation of Sections 15 and 16.
4484 If the disclaimer of warranty and limitation of liability provided
4485 above cannot be given local legal effect according to their terms,
4486 reviewing courts shall apply local law that most closely
4487 approximates an absolute waiver of all civil liability in
4488 connection with the Program, unless a warranty or assumption of
4489 liability accompanies a copy of the Program in return for a fee.
4492 END OF TERMS AND CONDITIONS
4493 ===========================
4495 How to Apply These Terms to Your New Programs
4496 =============================================
4498 If you develop a new program, and you want it to be of the greatest
4499 possible use to the public, the best way to achieve this is to make it
4500 free software which everyone can redistribute and change under these
4503 To do so, attach the following notices to the program. It is safest
4504 to attach them to the start of each source file to most effectively
4505 state the exclusion of warranty; and each file should have at least the
4506 "copyright" line and a pointer to where the full notice is found.
4508 ONE LINE TO GIVE THE PROGRAM'S NAME AND A BRIEF IDEA OF WHAT IT DOES.
4509 Copyright (C) YEAR NAME OF AUTHOR
4511 This program is free software: you can redistribute it and/or modify
4512 it under the terms of the GNU General Public License as published by
4513 the Free Software Foundation, either version 3 of the License, or (at
4514 your option) any later version.
4516 This program is distributed in the hope that it will be useful, but
4517 WITHOUT ANY WARRANTY; without even the implied warranty of
4518 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
4519 General Public License for more details.
4521 You should have received a copy of the GNU General Public License
4522 along with this program. If not, see `http://www.gnu.org/licenses/'.
4524 Also add information on how to contact you by electronic and paper
4527 If the program does terminal interaction, make it output a short
4528 notice like this when it starts in an interactive mode:
4530 PROGRAM Copyright (C) YEAR NAME OF AUTHOR
4531 This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
4532 This is free software, and you are welcome to redistribute it
4533 under certain conditions; type `show c' for details.
4535 The hypothetical commands `show w' and `show c' should show the
4536 appropriate parts of the General Public License. Of course, your
4537 program's commands might be different; for a GUI interface, you would
4540 You should also get your employer (if you work as a programmer) or
4541 school, if any, to sign a "copyright disclaimer" for the program, if
4542 necessary. For more information on this, and how to apply and follow
4543 the GNU GPL, see `http://www.gnu.org/licenses/'.
4545 The GNU General Public License does not permit incorporating your
4546 program into proprietary programs. If your program is a subroutine
4547 library, you may consider it more useful to permit linking proprietary
4548 applications with the library. If this is what you want to do, use the
4549 GNU Lesser General Public License instead of this License. But first,
4550 please read `http://www.gnu.org/philosophy/why-not-lgpl.html'.
4555 -animateSpeed, option: See 4.6. (line 2842)
4556 -autoDisplayComment, option: See 4.6. (line 2847)
4557 -autoDisplayTags, option: See 4.6. (line 2847)
4558 -pasteSelection, option: See 4.6. (line 2853)
4559 .icsrc: See 4.4. (line 2179)
4560 <, Button: See 3.2. (line 414)
4561 <<, Button: See 3.2. (line 447)
4562 >, Button: See 3.2. (line 434)
4563 >>, Button: See 3.2. (line 466)
4564 abort, ICS command: See 5. (line 3270)
4565 Abort, Menu Item: See 3.5. (line 754)
4566 About XBoard, Menu Item: See 3.8. (line 1538)
4567 Absolute Analysis Scores, Menu Item: See 3.7.1. (line 883)
4568 absoluteAnalysisScores, option: See 4.6. (line 2891)
4569 accept, ICS command: See 5. (line 3257)
4570 Accept, Menu Item: See 3.5. (line 726)
4571 Action, Menu: See 3.5. (line 725)
4572 adapterCommand, option: See 4.2. (line 1880)
4573 adjourn, ICS command: See 5. (line 3270)
4574 Adjourn, Menu Item: See 3.5. (line 749)
4575 Adjudicate Draw, Menu Item: See 3.5. (line 782)
4576 Adjudicate to Black, Menu Item: See 3.5. (line 782)
4577 Adjudicate to White, Menu Item: See 3.5. (line 782)
4578 adjudicateDrawMoves, option: See 4.7. (line 2919)
4579 adjudicateLossThreshold, option: See 4.7. (line 2911)
4580 Adjudications, Menu Item: See 3.7.4. (line 1118)
4581 afterGame, option: See 4.3. (line 2063)
4582 afterTourney, option: See 4.3. (line 2063)
4583 alarm, option: See 4.4. (line 2265)
4584 Almost Always Queen, Menu Item: See 3.7.1. (line 887)
4585 Also match left-right flipped position, Menu Item:See 3.7.7. (line 1431)
4586 Also match reversed colors, Menu Item: See 3.7.7. (line 1431)
4587 alwaysPromoteToQueen, option: See 4.6. (line 2570)
4588 Analysis Mode, Menu Item: See 3.4. (line 582)
4589 Analyze Game, Menu Item: See 3.4. (line 630)
4590 Animate Dragging, Menu Item: See 3.7.1. (line 901)
4591 Animate Moving, Menu Item: See 3.7.1. (line 908)
4592 animate, option: See 4.6. (line 2838)
4593 animateDragging, option: See 4.6. (line 2834)
4594 animateMoving, option: See 4.6. (line 2838)
4595 Animation Speed, Menu Item: See 3.7.1. (line 1070)
4596 Annotate, Menu Item: See 3.2. (line 390)
4597 appendPV, option: See 4.6. (line 2885)
4598 at sign, option: See 4.5. (line 2472)
4599 Authors: See 10. (line 3480)
4600 Auto Comment, Menu Item: See 3.7.5. (line 1154)
4601 Auto Flag, Menu Item: See 3.7.1. (line 917)
4602 Auto Flip View, Menu Item: See 3.7.1. (line 927)
4603 Auto Kibitz, Menu Item: See 3.7.5. (line 1145)
4604 Auto Observe, Menu Item: See 3.7.5. (line 1162)
4605 Auto Raise Board, Menu Item: See 3.7.5. (line 1175)
4606 Auto Save, Menu Item: See 3.7.5. (line 1180)
4607 Auto-Refresh Seek Graph, Menu Item: See 3.7.5. (line 1222)
4608 autobs, option: See 4.4. (line 2206)
4609 autoCallFlag, option: See 4.4. (line 2202)
4610 autocomm, option: See 4.4. (line 2198)
4611 autoComment, option: See 4.4. (line 2198)
4612 autoCopyPV, option: See 4.6. (line 2858)
4613 autoflag, option: See 4.4. (line 2202)
4614 autoflip, option: See 4.6. (line 2630)
4615 autoFlipView, option: See 4.6. (line 2630)
4616 autoInstall, option: See 4.6. (line 2540)
4617 autoKibitz, option: See 4.4. (line 2210)
4618 autoLogo, option: See 4.6. (line 2524)
4619 autoObserve, option: See 4.4. (line 2206)
4620 autoraise, option: See 4.6. (line 2626)
4621 autoRaiseBoard, option: See 4.6. (line 2626)
4622 autoRefresh, option: See 4.4. (line 2227)
4623 autosave, option: See 4.5. (line 2413)
4624 autoSaveGames, option: See 4.5. (line 2413)
4625 Back to Start, Menu Item: See 3.2. (line 447)
4626 Background Observe, Menu Item: See 3.7.5. (line 1187)
4627 backgroundObserve, option: See 4.4. (line 2233)
4628 Backward, Menu Item: See 3.2. (line 414)
4629 Basic operation: See 2. (line 57)
4630 bell, option: See 4.6. (line 2557)
4631 blackPieceColor, option: See 4.6. (line 2782)
4632 blind, option: See 4.6. (line 2695)
4633 Blindfold, Menu Item: See 3.7.1. (line 940)
4634 blindfold, option: See 4.6. (line 2695)
4635 board size: See 4.6. (line 2582)
4636 Board, Menu Item: See 3.3. (line 555)
4637 boardHeight, option: See 4.8. (line 3068)
4638 boardSize, option: See 4.6. (line 2582)
4639 boardWidth, option: See 4.8. (line 3073)
4640 Book, Menu Item: See 3.6. (line 844)
4641 bookDepth, option: See 4.2. (line 1924)
4642 bookVariation, option: See 4.2. (line 1928)
4643 Bug reports: See 9. (line 3462)
4644 Bugs <1>: See 9. (line 3462)
4645 Bugs: See 8. (line 3407)
4646 buttons, option: See 4.6. (line 2652)
4647 Call Flag, Menu Item: See 3.5. (line 738)
4648 checkMates, option: See 4.7. (line 2924)
4649 Chess engine options: See 4.1. (line 1605)
4650 CHESSDIR: See 7. (line 3398)
4651 clock, option: See 4.1. (line 1622)
4652 clockFont, option: See 4.6. (line 2716)
4653 clockMode, option: See 4.1. (line 1622)
4654 CloneTourney, Menu Item: See 3.7.6. (line 1381)
4655 cmail: See 11. (line 3532)
4656 colorChallenge, option: See 4.4. (line 2308)
4657 colorChannel, option: See 4.4. (line 2308)
4658 colorChannel1, option: See 4.4. (line 2308)
4659 colorCShout, option: See 4.4. (line 2308)
4660 Colorize Messages, Menu Item: See 3.7.5. (line 1257)
4661 colorize, option: See 4.4. (line 2292)
4662 colorizeMessages, option: See 4.4. (line 2292)
4663 colorKibitz, option: See 4.4. (line 2308)
4664 colorNickNames, option: See 4.8. (line 3128)
4665 colorNormal, option: See 4.4. (line 2308)
4666 colorRequest, option: See 4.4. (line 2308)
4667 Colors <1>: See 4.6. (line 2782)
4668 Colors: See 4.4. (line 2292)
4669 colorSeek, option: See 4.4. (line 2308)
4670 colorShout, option: See 4.4. (line 2308)
4671 colorSShout, option: See 4.4. (line 2308)
4672 colorTell, option: See 4.4. (line 2308)
4673 commentFont, option: See 4.6. (line 2738)
4674 Comments, Menu Item: See 3.3. (line 531)
4675 Common Engine, Menu Item: See 3.7.3. (line 1093)
4676 Contributors: See 10. (line 3480)
4677 coordFont, option: See 4.6. (line 2723)
4678 coords, option: See 4.6. (line 2622)
4679 Copy Game List, Menu Item: See 3.2. (line 290)
4680 Copy Game, Menu Item: See 3.2. (line 271)
4681 Copy Position, Menu Item: See 3.2. (line 280)
4682 cy, option: See 4.3. (line 2025)
4683 darkBackTextureFile, option: See 4.6. (line 2818)
4684 darkSquareColor, option: See 4.6. (line 2782)
4685 dateThreshold, option: See 4.8. (line 3195)
4686 debug, option: See 4.8. (line 3135)
4687 debugFile, option: See 4.8. (line 3138)
4688 debugMode, option: See 4.8. (line 3135)
4689 decline, ICS command: See 5. (line 3257)
4690 Decline, Menu Item: See 3.5. (line 732)
4691 Default number of Games, Menu Item: See 3.7.6. (line 1323)
4692 defaultCacheSizeEGTB, option: See 4.2. (line 1959)
4693 defaultFrcPosition, option: See 4.8. (line 3088)
4694 defaultHashSize, option: See 4.2. (line 1953)
4695 defaultMatchGames, option: See 4.3. (line 1998)
4696 defaultPathEGTB, option: See 4.2. (line 1965)
4697 defaultTourneyName, option: See 4.3. (line 2042)
4698 delayAfterQuit, option: See 4.8. (line 3173)
4699 delayBeforeQuit, option: See 4.8. (line 3173)
4700 Disable own engine bools be default, Menu Item:See 3.7.6. (line 1358)
4701 discourageOwnBooks, option: See 4.2. (line 1918)
4702 disguisePromotedPieces, option: See 4.4. (line 2256)
4703 display, option: See 4.6. (line 2502)
4704 drag, option: See 4.6. (line 2834)
4705 draw, ICS command: See 5. (line 3270)
4706 Draw, Menu Item: See 3.5. (line 744)
4707 Drop Menu, Menu Item: See 3.7.1. (line 946)
4708 dropMenu, option: See 4.6. (line 2864)
4709 Dual Board, Menu Item: See 3.7.5. (line 1194)
4710 dualBoard, option: See 4.4. (line 2247)
4711 Edit Book, Menu Item: See 3.2. (line 379)
4712 Edit Comment, Menu Item: See 3.2. (line 372)
4713 Edit Game, Menu Item: See 3.2. (line 305)
4714 Edit Menu: See 3.2. (line 270)
4715 Edit Position, Menu Item: See 3.2. (line 321)
4716 Edit Tags, Menu Item: See 3.2. (line 348)
4717 egtFormats, option: See 4.2. (line 1969)
4718 Elo of strongest player, Menu Item: See 3.7.7. (line 1401)
4719 Elo of weakest player, Menu Item: See 3.7.7. (line 1401)
4720 eloThresholdAny, option: See 4.8. (line 3190)
4721 eloThresholdBoth, option: See 4.8. (line 3190)
4722 Enable Variation Trees, Menu Item: See 3.7.1. (line 952)
4723 Engine #1 Settings, Menu Item: See 3.6. (line 822)
4724 Engine #2 Settings, Menu Item: See 3.6. (line 822)
4725 Engine Menu: See 3.6. (line 790)
4726 Engine Settings: See 4.2. (line 1862)
4727 Engine Settings, Menu Item: See 3.6. (line 822)
4728 engineDebugOutput, option: See 4.8. (line 3145)
4729 Environment variables: See 7. (line 3398)
4730 evalThreshold, option: See 4.6. (line 2662)
4731 evalZoom, option: See 4.6. (line 2658)
4732 examine, ICS command: See 5. (line 3293)
4733 Exit, Menu Item: See 3.1. (line 265)
4734 exit, option: See 4.6. (line 2562)
4735 fb, option: See 4.1. (line 1740)
4736 fcp, option: See 4.1. (line 1722)
4737 fd, option: See 4.1. (line 1755)
4738 fe, option: See 4.1. (line 1729)
4739 fh, option: See 4.1. (line 1747)
4740 File Menu: See 3.1. (line 129)
4741 File with Start Positions, Menu Item: See 3.7.6. (line 1342)
4742 find position, Menu Item: See 3.7.7. (line 1406)
4743 finger, ICS command: See 5. (line 3280)
4744 First Black Move, Menu Item: See 3.7.5. (line 1232)
4745 First White Move, Menu Item: See 3.7.5. (line 1232)
4746 firstChessProgram, option: See 4.1. (line 1722)
4747 firstComputerString, option: See 4.1. (line 1790)
4748 firstDirectory, option: See 4.1. (line 1755)
4749 firstEngine, option: See 4.1. (line 1729)
4750 firstHasOwnBookUCI, option: See 4.2. (line 1912)
4751 firstHost, option: See 4.1. (line 1747)
4752 firstInitString, option: See 4.1. (line 1764)
4753 firstIsUCI, option: See 4.2. (line 1864)
4754 firstLogo, option: See 4.6. (line 2518)
4755 firstNeedsNoncompliantFEN, option: See 4.1. (line 1840)
4756 firstNPS, option: See 4.1. (line 1645)
4757 firstOptions, option: See 4.1. (line 1829)
4758 firstPgnName, option: See 4.2. (line 1947)
4759 firstPlaysBlack, option: See 4.1. (line 1740)
4760 firstProtocolVersion, option: See 4.1. (line 1807)
4761 firstScoreAbs, option: See 4.1. (line 1815)
4762 firstTimeOdds, option: See 4.1. (line 1663)
4763 firstXBook, option: See 4.2. (line 1912)
4764 Flash Moves, Menu Item: See 3.7.1. (line 1065)
4765 Flash Rate, Menu Item: See 3.7.1. (line 1065)
4766 flash, option: See 4.6. (line 2678)
4767 flashCount, option: See 4.6. (line 2678)
4768 flashRate, option: See 4.6. (line 2678)
4769 Flip View, Menu Item: See 3.3. (line 481)
4770 flip, option: See 4.6. (line 2634)
4771 flipView, option: See 4.6. (line 2634)
4772 fn, option: See 4.2. (line 1947)
4773 fNoOwnBookUCI, option: See 4.2. (line 1912)
4774 Font, clock: See 4.6. (line 2716)
4775 Font, comment: See 4.6. (line 2738)
4776 Font, coordinates: See 4.6. (line 2723)
4777 Font, gameList: See 4.6. (line 2751)
4778 Font, ics: See 4.6. (line 2741)
4779 Font, message: See 4.6. (line 2731)
4780 Font, moveHistory: See 4.6. (line 2746)
4781 Font, tags: See 4.6. (line 2735)
4782 fontSizeTolerance, option: See 4.6. (line 2757)
4783 Forward to End, Menu Item: See 3.2. (line 466)
4784 Forward, Menu Item: See 3.2. (line 434)
4785 fSAN, option: See 4.6. (line 2704)
4786 fUCCI, option: See 4.2. (line 1874)
4787 fUCI, option: See 4.2. (line 1864)
4788 fUSI, option: See 4.2. (line 1874)
4789 Game File with Opening Lines, Menu Item: See 3.7.6. (line 1342)
4790 Game List Tags, Menu Item <1>: See 3.7.9. (line 1457)
4791 Game List Tags, Menu Item: See 3.3. (line 564)
4792 Game Number, Menu Item: See 3.7.6. (line 1342)
4793 gameListFont, option: See 4.6. (line 2751)
4794 gameListTags, option: See 4.5. (line 2463)
4795 games, ICS command: See 5. (line 3246)
4796 gateway, option: See 4.4. (line 2129)
4797 General Options, Menu Item: See 3.7.1. (line 880)
4798 geometry, option: See 4.6. (line 2502)
4799 Get Move List, Menu Item: See 3.7.5. (line 1199)
4800 getMoveList, option: See 4.4. (line 2261)
4801 Help Menu: See 3.8. (line 1523)
4802 help, ICS command: See 5. (line 3231)
4803 Hide Thinking, Menu Item: See 3.7.1. (line 959)
4804 highlight Arrow, option: See 4.6. (line 2691)
4805 Highlight Last Move, Menu Item: See 3.7.1. (line 969)
4806 Highlight with Arrow, Menu Item: See 3.7.1. (line 975)
4807 highlight, option: See 4.6. (line 2687)
4808 highlightLastMove, option: See 4.6. (line 2687)
4809 highlightMoveWithArrow, option: See 4.6. (line 2691)
4810 highlightSquareColor, option: See 4.6. (line 2782)
4811 Hint, Menu Item: See 3.6. (line 841)
4812 holdingsSize, option: See 4.8. (line 3080)
4813 iconic, option: See 4.6. (line 2502)
4814 ICS: See 5. (line 3202)
4815 ICS Alarm Time, Menu Item: See 3.7.5. (line 1247)
4816 ICS Alarm, Menu Item: See 3.7.5. (line 1247)
4817 ICS Client, Menu Item: See 3.4. (line 669)
4818 ICS Input Box, Menu Item: See 3.3. (line 536)
4819 ICS options: See 4.4. (line 2084)
4820 ICS Options, Menu Item: See 3.7.5. (line 1142)
4821 ICS, addresses: See 5. (line 3202)
4822 ics, option: See 4.4. (line 2085)
4823 icsAlarm, option: See 4.4. (line 2265)
4824 icsAlarmTime, option: See 4.4. (line 2269)
4825 icscomm, option: See 4.4. (line 2137)
4826 icsFont, option: See 4.6. (line 2741)
4827 icshelper, option: See 4.4. (line 2103)
4828 icshost, option: See 4.4. (line 2090)
4829 icsinput, option: See 4.4. (line 2194)
4830 icslogon, option: See 4.4. (line 2179)
4831 icsport, option: See 4.4. (line 2099)
4832 inc, option: See 4.1. (line 1615)
4833 Info XBoard, Menu Item: See 3.8. (line 1524)
4834 init, option: See 4.5. (line 2472)
4835 initalMode, option: See 4.8. (line 3000)
4836 initString, option: See 4.1. (line 1764)
4837 Internet Chess Server: See 5. (line 3202)
4838 internetChessServerCommPort, option: See 4.4. (line 2137)
4839 internetChessServerHelper, option: See 4.4. (line 2103)
4840 internetChessServerHost, option: See 4.4. (line 2090)
4841 internetChessServerInputBox, option: See 4.4. (line 2194)
4842 internetChessServerLogonScript, option: See 4.4. (line 2179)
4843 internetChessServerMode, option: See 4.4. (line 2085)
4844 internetChessServerPort, option: See 4.4. (line 2099)
4846 See ``Introduction''. (line 9)
4847 Keys: See 3.9. (line 1543)
4848 legal, option: See 4.6. (line 2578)
4849 lgf, option: See 4.5. (line 2376)
4850 lgi, option: See 4.5. (line 2376)
4851 lightSquareColor, option: See 4.6. (line 2782)
4852 Limitations: See 8. (line 3407)
4853 liteBackTextureFile, option: See 4.6. (line 2818)
4854 Load and Save options: See 4.5. (line 2374)
4855 Load Engine, Menu Item: See 3.6. (line 791)
4856 Load Game Options, Menu Item: See 3.7.7. (line 1391)
4857 Load Game, Menu Item: See 3.1. (line 173)
4858 Load Next Game, Menu Item: See 3.9. (line 1547)
4859 Load Next Position, Menu Item: See 3.1. (line 215)
4860 Load Position, Menu Item: See 3.1. (line 206)
4861 Load Previous Game, Menu Item: See 3.9. (line 1551)
4862 Load Previous Position, Menu Item: See 3.1. (line 219)
4863 loadGameFile, option: See 4.5. (line 2376)
4864 loadGameIndex, option: See 4.5. (line 2376)
4865 loadPositionFile, option: See 4.5. (line 2421)
4866 loadPositionIndex, option: See 4.5. (line 2421)
4867 logoDir, option: See 4.6. (line 2524)
4868 logoSize, option: See 4.6. (line 2511)
4869 lowTimeWarning, option: See 4.4. (line 2273)
4870 lowTimeWarningColor, option: See 4.6. (line 2782)
4871 lpf, option: See 4.5. (line 2421)
4872 lpi, option: See 4.5. (line 2421)
4873 Machine Black, Menu Item: See 3.4. (line 574)
4874 Machine match, Menu Item: See 3.4. (line 693)
4875 Machine White, Menu Item: See 3.4. (line 570)
4876 Mail Move, Menu Item: See 3.1. (line 262)
4877 Major modes: See 1. (line 19)
4878 Man XBoard, Menu Item: See 3.8. (line 1531)
4879 Match Options, Menu Item: See 3.7.6. (line 1265)
4880 matchGames, option: See 4.1. (line 1700)
4881 matchMode, option: See 4.1. (line 1712)
4882 matchPause, option: See 4.3. (line 2003)
4883 materialDraws, option: See 4.7. (line 2936)
4884 mcBookMode, option: See 4.2. (line 1932)
4885 memoHeaders, option: See 4.6. (line 2901)
4886 Menu, Action: See 3.5. (line 725)
4887 Menu, Edit: See 3.2. (line 270)
4888 Menu, Engine: See 3.6. (line 790)
4889 Menu, File: See 3.1. (line 129)
4890 Menu, Help: See 3.8. (line 1523)
4891 Menu, Mode: See 3.4. (line 569)
4892 Menu, Options: See 3.7. (line 877)
4893 Menu, View: See 3.3. (line 480)
4894 Menus: See 3. (line 126)
4895 messageFont, option: See 4.6. (line 2731)
4896 mg, option: See 4.1. (line 1700)
4897 mm, option: See 4.1. (line 1712)
4898 Mode Menu: See 3.4. (line 569)
4899 mode, option: See 4.8. (line 3000)
4900 mono, option: See 4.6. (line 2666)
4901 monoMode, option: See 4.6. (line 2666)
4902 Move Now, Menu Item: See 3.6. (line 854)
4903 Move Sound, Menu Item: See 3.7.1. (line 980)
4904 moveHistoryFont, option: See 4.6. (line 2746)
4905 moves, option: See 4.4. (line 2261)
4906 movesound, option: See 4.6. (line 2557)
4907 movesPerSession, option: See 4.1. (line 1611)
4908 mps, option: See 4.1. (line 1611)
4909 msLoginDelay, option: See 4.4. (line 2188)
4910 nameOfDebugFile, option: See 4.8. (line 3138)
4911 narrow, Menu Item: See 3.7.7. (line 1406)
4912 ncp, option: See 4.8. (line 2971)
4913 New Game, Menu Item: See 3.1. (line 130)
4914 New Shuffle Game, Menu Item: See 3.1. (line 139)
4915 New variant, Menu Item: See 3.1. (line 154)
4916 niceEngines, option: See 4.1. (line 1821)
4917 noChessProgram, option: See 4.8. (line 2971)
4918 noGUI, option: See 4.6. (line 2505)
4919 null move: See 3.4. (line 582)
4920 number of consecutive positions, Menu Item: See 3.7.7. (line 1424)
4921 Number of tourney cycles, Menu Item: See 3.7.6. (line 1323)
4922 observe, ICS command: See 5. (line 3289)
4923 oldmoves, ICS command: See 5. (line 3293)
4924 oldsave, option: See 4.5. (line 2459)
4925 oldSaveStyle, option: See 4.5. (line 2459)
4926 One-Click Moving, Menu Item: See 3.7.1. (line 989)
4927 oneClickMove, option: See 4.6. (line 2550)
4928 onlyOwnGames, option: See 4.5. (line 2417)
4929 Open Chat Window, Menu Item: See 3.3. (line 543)
4930 Options: See 4. (line 1586)
4931 Options Menu: See 3.7. (line 877)
4932 Options, adjudication: See 4.7. (line 2910)
4933 options, Chess engine: See 4.1. (line 1605)
4934 Options, ICS: See 4.4. (line 2084)
4935 Options, Load and Save: See 4.5. (line 2374)
4936 Options, miscellaneous: See 4.8. (line 2970)
4937 Options, Tournament: See 4.3. (line 1997)
4938 Options, User interface: See 4.6. (line 2498)
4939 Other programs: See 12. (line 3730)
4940 overrideLineGap, option: See 4.6. (line 2615)
4941 pairingEngine, option: See 4.3. (line 2050)
4942 participants, option: See 4.3. (line 2029)
4943 Paste Game, Menu Item: See 3.2. (line 296)
4944 Paste Position, Menu Item: See 3.2. (line 300)
4945 Pause, Menu Item: See 3.4. (line 699)
4946 Periodic Updates, Menu Item: See 3.7.1. (line 1001)
4947 periodic, option: See 4.6. (line 2699)
4948 periodicUpdates, option: See 4.6. (line 2699)
4949 pgnEventHeader, option: See 4.5. (line 2446)
4950 pgnExtendedInfo, option: See 4.5. (line 2441)
4951 pgnNumberTag, option: See 4.5. (line 2450)
4952 pid, option: See 4.6. (line 2766)
4953 pieceImageDirectory, option: See 4.6. (line 2766)
4954 pieceMenu, option: See 4.6. (line 2870)
4955 pieceNickNames, option: See 4.8. (line 3119)
4956 pieceToCharTable, option: See 4.8. (line 3093)
4957 Play Move(s) of Clicked PV, Menu Item: See 3.7.1. (line 1007)
4958 polyglotBook, option: See 4.2. (line 1903)
4959 polyglotDir, option: See 4.2. (line 1896)
4960 Ponder Next Move, Menu Item: See 3.7.1. (line 1015)
4961 ponder, option: See 4.1. (line 1691)
4962 ponderNextMove, option: See 4.1. (line 1691)
4963 Popup Exit Message, Menu Item: See 3.7.1. (line 1021)
4964 Popup Move Errors, Menu Item: See 3.7.1. (line 1027)
4965 popup, option: See 4.6. (line 2566)
4966 popupExitMessage, option: See 4.6. (line 2562)
4967 popupMoveErrors, option: See 4.6. (line 2566)
4968 Position Number, Menu Item: See 3.7.6. (line 1342)
4969 pre, option: See 4.4. (line 2277)
4970 preblack, option: See 4.4. (line 2283)
4971 Premove Black, Menu Item: See 3.7.5. (line 1232)
4972 Premove White, Menu Item: See 3.7.5. (line 1232)
4973 Premove, Menu Item: See 3.7.5. (line 1232)
4974 premove, option: See 4.4. (line 2277)
4975 premoveBlack, option: See 4.4. (line 2283)
4976 premoveBlackText, option: See 4.4. (line 2283)
4977 premoveHighlightColor, option: See 4.6. (line 2782)
4978 premoveWhite, option: See 4.4. (line 2283)
4979 premoveWhiteText, option: See 4.4. (line 2283)
4980 prewhite, option: See 4.4. (line 2283)
4981 Problems: See 9. (line 3462)
4982 queen, option: See 4.6. (line 2570)
4983 Quiet Play, Menu Item: See 3.7.5. (line 1211)
4984 quiet, option: See 4.4. (line 2288)
4985 quietPlay, option: See 4.4. (line 2288)
4986 recentEngineList, option: See 4.6. (line 2530)
4987 recentEngines, option: See 4.6. (line 2530)
4988 Recently Used Engines, In Menu: See 3.6. (line 866)
4989 Reload CMail Message, Menu Item: See 3.1. (line 262)
4990 Reload Same Game, Menu Item: See 3.9. (line 1556)
4991 Reload Same Position, Menu Item: See 3.9. (line 1561)
4992 remoteShell, option: See 4.8. (line 3159)
4993 remoteUser, option: See 4.8. (line 3164)
4994 Replace Engine, Menu Item: See 3.7.6. (line 1366)
4995 Reporting bugs: See 9. (line 3462)
4996 Reporting problems: See 9. (line 3462)
4997 Resign, Menu Item: See 3.5. (line 760)
4998 resource name, option: See 4.6. (line 2502)
4999 results, option: See 4.3. (line 2036)
5000 Retract Move, Menu Item: See 3.6. (line 858)
5001 reuse, option: See 4.1. (line 1798)
5002 reuse2, option: See 4.1. (line 1798)
5003 reuseFirst, option: See 4.1. (line 1798)
5004 reuseSecond, option: See 4.1. (line 1798)
5005 Revert, Menu Item: See 3.2. (line 390)
5006 Rewind Index after, Menu Item: See 3.7.6. (line 1342)
5007 ringBellAfterMoves, option: See 4.6. (line 2557)
5008 rsh, option: See 4.8. (line 3159)
5009 ruleMoves, option: See 4.7. (line 2954)
5010 ruser, option: See 4.8. (line 3164)
5011 sameColorGames, option: See 4.1. (line 1716)
5012 Save Game Options, Menu Item: See 3.7.8. (line 1440)
5013 Save Game, Menu Item: See 3.1. (line 224)
5014 Save Games as Book, Menu Item: See 3.1. (line 249)
5015 Save Position, Menu Item: See 3.1. (line 236)
5016 Save Selected Games: See 3.1. (line 245)
5017 Save Settings Now, Menu Item: See 3.7.11. (line 1482)
5018 Save Settings on Exit, Menu Item: See 3.7.12. (line 1516)
5019 Save Tourney Games, Menu Item: See 3.7.6. (line 1334)
5020 saveGameFile, option: See 4.5. (line 2408)
5021 saveOutOfBookInfo, option: See 4.5. (line 2454)
5022 savePositionFile, option: See 4.5. (line 2436)
5023 saveSettingsFile, option: See 4.5. (line 2472)
5024 saveSettingsOnExit, option: See 4.5. (line 2492)
5025 Scores in Move List, Menu Item: See 3.7.1. (line 1036)
5026 scoreWhite, option: See 4.6. (line 2896)
5027 scp, option: See 4.1. (line 1725)
5028 sd, option: See 4.1. (line 1636)
5029 se, option: See 4.1. (line 1737)
5030 Search mode, Menu Item: See 3.7.7. (line 1406)
5031 searchDepth, option: See 4.1. (line 1636)
5032 searchMode, option: See 4.8. (line 3185)
5033 searchTime, option: See 4.1. (line 1629)
5034 secondChessProgram, option: See 4.1. (line 1725)
5035 secondComputerString, option: See 4.1. (line 1790)
5036 secondDirectory, option: See 4.1. (line 1755)
5037 secondEngine, option: See 4.1. (line 1737)
5038 secondHasOwnBookUCI, option: See 4.2. (line 1912)
5039 secondHost, option: See 4.1. (line 1747)
5040 secondInitString, option: See 4.1. (line 1764)
5041 secondIsUCI, option: See 4.2. (line 1864)
5042 secondLogo, option: See 4.6. (line 2518)
5043 secondNeedsNoncompliantFEN, option: See 4.1. (line 1840)
5044 secondNPS, option: See 4.1. (line 1645)
5045 secondOptions, option: See 4.1. (line 1829)
5046 secondPgnName, option: See 4.2. (line 1947)
5047 secondProtocolVersion, option: See 4.1. (line 1807)
5048 secondScoreAbs, option: See 4.1. (line 1815)
5049 secondTimeOdds, option: See 4.1. (line 1663)
5050 secondXBook, option: See 4.2. (line 1912)
5051 seedBase, option: See 4.3. (line 2076)
5052 Seek Graph, Menu Item: See 3.7.5. (line 1217)
5053 seekGraph, option: See 4.4. (line 2218)
5054 Select Engine, Menu Item: See 3.7.6. (line 1298)
5055 set, ICS command: See 5. (line 3286)
5056 Settings, Engine: See 4.2. (line 1862)
5057 SettingsFile, option: See 4.5. (line 2472)
5058 sg, option: See 4.4. (line 2218)
5059 sgf, option: See 4.5. (line 2408)
5060 sh, option: See 4.1. (line 1747)
5061 Shortcut keys: See 3.9. (line 1543)
5062 Show Coords, Menu Item: See 3.7.1. (line 1040)
5063 Show Engine Output, Menu Item: See 3.3. (line 486)
5064 Show Evaluation Graph, Menu Item: See 3.3. (line 516)
5065 Show Game List, Menu Item: See 3.3. (line 522)
5066 Show Last Move, Shortcut Key: See 3.9. (line 1544)
5067 Show Move History, Menu Item: See 3.3. (line 510)
5068 Show Target Squares, Menu Item: See 3.7.1. (line 1044)
5069 showButtonBar, option: See 4.6. (line 2652)
5070 showCoords, option: See 4.6. (line 2622)
5071 showEvalInMoveHistory, option: See 4.6. (line 2711)
5072 showTargetSquares, option: See 4.6. (line 2671)
5073 showThinking, option: See 4.1. (line 1681)
5074 shuffleOpenings, option: See 4.1. (line 1854)
5075 size, option: See 4.6. (line 2582)
5076 sn, option: See 4.2. (line 1947)
5077 sNoOwnBookUCI, option: See 4.2. (line 1912)
5078 Sound Options, Menu Item: See 3.7.10. (line 1463)
5079 soundChallenge, option: See 4.4. (line 2343)
5080 soundChannel, option: See 4.4. (line 2343)
5081 soundChannel1, option: See 4.4. (line 2343)
5082 soundCShout, option: See 4.4. (line 2343)
5083 soundDirectory, option: See 4.4. (line 2330)
5084 soundIcsAlarm, option: See 4.4. (line 2352)
5085 soundIcsDraw, option: See 4.4. (line 2363)
5086 soundIcsLoss, option: See 4.4. (line 2359)
5087 soundIcsUnfinished, option: See 4.4. (line 2367)
5088 soundIcsWin, option: See 4.4. (line 2355)
5089 soundKibitz, option: See 4.4. (line 2343)
5090 soundMove, option: See 4.4. (line 2349)
5091 soundProgram, option: See 4.4. (line 2321)
5092 soundRequest, option: See 4.4. (line 2343)
5093 Sounds: See 4.4. (line 2321)
5094 soundSeek, option: See 4.4. (line 2343)
5095 soundShout, option: See 4.4. (line 2343)
5096 soundSShout, option: See 4.4. (line 2343)
5097 soundTell, option: See 4.4. (line 2343)
5098 spf, option: See 4.5. (line 2436)
5099 sSAN, option: See 4.6. (line 2704)
5100 st, option: See 4.1. (line 1629)
5101 Stop Examining, Menu Item: See 3.5. (line 769)
5102 Stop Observing, Menu Item: See 3.5. (line 764)
5103 sUCCI, option: See 4.2. (line 1874)
5104 sUCI, option: See 4.2. (line 1864)
5105 sUSI, option: See 4.2. (line 1874)
5106 sweepPromotion, option: See 4.6. (line 2574)
5107 Sync after cycle, Menu Item: See 3.7.6. (line 1289)
5108 Sync after round, Menu Item: See 3.7.6. (line 1289)
5109 syncAfterCycle, option: See 4.3. (line 2071)
5110 syncAfterRound, option: See 4.3. (line 2071)
5111 Tags, Menu Item: See 3.3. (line 526)
5112 tagsFont, option: See 4.6. (line 2735)
5113 tc, option: See 4.1. (line 1606)
5114 td, option: See 4.5. (line 2402)
5115 telnet, option: See 4.4. (line 2111)
5116 telnetProgram, option: See 4.4. (line 2120)
5117 Test Legality, Menu Item: See 3.7.1. (line 1051)
5118 testClaims, option: See 4.7. (line 2930)
5119 testLegality, option: See 4.6. (line 2578)
5120 tf, option: See 4.3. (line 2011)
5121 thinking, option: See 4.1. (line 1681)
5122 Time Control, Menu Item: See 3.7.2. (line 1081)
5123 timeControl, option: See 4.1. (line 1606)
5124 timeDelay, option: See 4.5. (line 2402)
5125 timeIncrement, option: See 4.1. (line 1615)
5126 timeOddsMode, option: See 4.1. (line 1669)
5127 title, option: See 4.6. (line 2644)
5128 titleInWindow, option: See 4.6. (line 2644)
5129 Tournament file, Menu item: See 3.7.6. (line 1269)
5130 Tournament Options: See 4.3. (line 1997)
5131 Tourney participants, Menu Item: See 3.7.6. (line 1298)
5132 Tourney type, Menu Item: See 3.7.6. (line 1309)
5133 tourneyCycles, option: See 4.3. (line 2025)
5134 tourneyFile, option: See 4.3. (line 2011)
5135 tourneyOptions, option: See 4.8. (line 2991)
5136 tourneyType, option: See 4.3. (line 2019)
5137 Training, Menu Item: See 3.4. (line 659)
5138 trivialDraws, option: See 4.7. (line 2943)
5139 trueColors, option: See 4.6. (line 2811)
5140 Truncate Game, Menu Item: See 3.2. (line 409)
5141 tt, option: See 4.3. (line 2019)
5142 Two Machines, Menu Item: See 3.4. (line 578)
5143 Upgrade Engine, Menu Item: See 3.7.6. (line 1366)
5144 Upload to Examine, Menu Item: See 3.5. (line 774)
5145 useBoardTexture, option: See 4.6. (line 2818)
5146 usePolyglotBook, option: See 4.2. (line 1900)
5147 User interface options: See 4.6. (line 2498)
5148 userName, option: See 4.8. (line 3168)
5149 useTelnet, option: See 4.4. (line 2111)
5150 uxiAdapter, option: See 4.2. (line 1890)
5151 variant, option: See 4.8. (line 3008)
5152 variations, option: See 4.6. (line 2879)
5153 vars, ICS command: See 5. (line 3283)
5154 View Menu: See 3.3. (line 480)
5155 viewer, option: See 4.8. (line 2977)
5156 viewerOptions, option: See 4.8. (line 2977)
5157 whitePieceColor, option: See 4.6. (line 2782)
5158 who, ICS command: See 5. (line 3239)
5159 xflash, option: See 4.6. (line 2678)
5160 year, Menu Item: See 3.7.7. (line 1401)
5161 Zoom factor in Evaluation Graph, Menu Item: See 3.7.1. (line 1074)
5168 3 Menus, buttons, and keys
5176 3.7.1 General Options
5182 3.7.7 Load Game Options
5183 3.7.8 Save Game Options
5185 3.7.10 Sound Options
5186 3.7.11 Save Settings Now
5187 3.7.12 Save Settings on Exit
5189 3.9 Other Shortcut Keys
5191 4.1 Chess Engine Options
5192 4.2 UCI + WB Engine Settings
5193 4.3 Tournament options
5195 4.5 Load and Save options
5196 4.6 User interface options
5197 4.7 Adjudication Options
5201 7 Environment variables
5202 8 Limitations and known bugs
5203 9 Reporting problems
5204 10 Authors and contributors
5207 11.2 Starting a CMail Game
5208 11.3 Answering a Move
5209 11.4 Multi-Game Messages
5210 11.5 Completing a Game
5211 11.6 Known CMail Problems
5212 12 Other programs you can use with XBoard
5218 GNU GENERAL PUBLIC LICENSE