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.7.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 Creates an opening book from the currently loaded game file. The
246 book will be saved on the file specified in the `Common Engine'
247 options dialog. The value of `Book Depth' specified in that same
248 dialog will be used to determine how many moves of each game will
249 be added to the internal book buffer. This command can take a
250 long time to process, and the size of the buffer is currently
251 limited. At the end the buffer will be saved as a Polyglot book,
252 but the buffer will ot be cleared, so that you can continue adding
253 games from other game files.
260 Exits from XBoard. The `Ctrl-Q' key is a keyboard equivalent.
266 Copies a record of the current game to an internal clipboard in PGN
267 format and sets the X selection to the game text. The `Ctrl-C' key
268 is a keyboard equivalent. The game can be pasted to another
269 application (such as a text editor or another copy of XBoard)
270 using that application's paste command. In many X applications,
271 such as xterm and emacs, the middle mouse button can be used for
272 pasting; in XBoard, you must use the Paste Game command.
275 Copies the current position to an internal clipboard in FEN format
276 and sets the X selection to the position text. The shifted
277 `Ctrl-C' key is a keyboard equivalent. The position can be pasted
278 to another application (such as a text editor or another copy of
279 XBoard) using that application's paste command. In many X
280 applications, such as xterm and emacs, the middle mouse button can
281 be used for pasting; in XBoard, you must use the Paste Position
285 Copies the current game list to the clipboard, and sets the X
286 selection to this text. A format of comma-separated double-quoted
287 strings is used, including all tags, so it can be easily imported
288 into spread-sheet programs.
291 Interprets the current X selection as a game record and loads it,
292 as with Load Game. The `Ctrl-V' key is a keyboard equivalent.
295 Interprets the current X selection as a FEN position and loads it,
296 as with Load Position. The shifted `Ctrl-V' key is a keyboard
300 Allows you to make moves for both Black and White, and to change
301 moves after backing up with the `Backward' command. The clocks do
302 not run. The `Ctrl-E' key is a keyboard equivalent.
304 In chess engine mode, the chess engine continues to check moves
305 for legality but does not participate in the game. You can bring
306 the chess engine into the game by selecting `Machine White',
307 `Machine Black', or `Two Machines'.
309 In ICS mode, the moves are not sent to the ICS: `Edit Game' takes
310 XBoard out of ICS Client mode and lets you edit games locally. If
311 you want to edit games on ICS in a way that other ICS users can
312 see, use the ICS `examine' command or start an ICS match against
316 Lets you set up an arbitrary board position. The shifted `Ctrl-E'
317 key is a keyboard equivalent. Use mouse button 1 to drag pieces
318 to new squares, or to delete a piece by dragging it off the board
319 or dragging an empty square on top of it. To drop a new piece on
320 a square, press mouse button 2 or 3 over the square. This puts a
321 white or black pawn in the square, respectively, but you can
322 change that to any other piece type by dragging the mouse down
323 before you release the button. You will then see the piece on the
324 originally clicked square cycle through the available pieces
325 (including those of opposite color), and can release the button
326 when you see the piece you want. To alter the side to move, you
327 can click the clock (the words White and Black above the board) of
328 the side you want to give the move to. To clear the board you can
329 click the clock of the side that alread has the move (which is
330 highlighted in black). The old behavior with a piece menu can
331 still be configured with the aid of the `pieceMenu' option.
332 Selecting `Edit Position' causes XBoard to discard all remembered
333 moves in the current game.
335 In ICS mode, changes made to the position by `Edit Position' are
336 not sent to the ICS: `Edit Position' takes XBoard out of `ICS
337 Client' mode and lets you edit positions locally. If you want to
338 edit positions on ICS in a way that other ICS users can see, use
339 the ICS `examine' command, or start an ICS match against yourself.
340 (See also the ICS Client topic above.)
343 Lets you edit the PGN (portable game notation) tags for the
344 current game. After editing, the tags must still conform to the
347 <tag-section> ::= <tag-pair> <tag-section>
349 <tag-pair> ::= [ <tag-name> <tag-value> ]
350 <tag-name> ::= <identifier>
351 <tag-value> ::= <string>
352 See the PGN Standard for full details. Here is an example:
354 [Event "Portoroz Interzonal"]
355 [Site "Portoroz, Yugoslavia"]
358 [White "Robert J. Fischer"]
359 [Black "Bent Larsen"]
361 Any characters that do not match this syntax are silently ignored.
362 Note that the PGN standard requires all games to have at least the
363 seven tags shown above. Any that you omit will be filled in by
364 XBoard with `?' (unknown value), or `-' (inapplicable value).
367 Adds or modifies a comment on the current position. Comments are
368 saved by `Save Game' and are displayed by `Load Game', PGN
369 variations will also be printed in this window, and can be
370 promoted to main line by right-clicking them. `Forward', and
374 Pops up a window listing the moves available in the GUI book
375 (specified in the `Common Engine Settings' dialog) from the
376 currently displayed position, together with their weights and
377 (optionally in braces) learn info. You can then edit this list,
378 and the new list will be stored back into the book when you press
379 OK. Note that the listed percentages are neither used, nor
380 updated when you change the weights; they are just there as an
385 If you are examining an ICS game and Pause mode is off, Revert
386 issues the ICS command `revert'. In local mode, when you were
387 editing or analyzing a game, and the `-variations' command-line
388 option is switched on, you can start a new variation by holding
389 the Shift key down while entering a move not at the end of the
390 game. Variations can also become the currently displayed line by
391 clicking a PGN variation displayed in the Comment window. This
392 can be applied recursively, so that you can analyze variations on
393 variations; each time you create a new variation by entering an
394 alternative move with Shift pressed, or select a new one from the
395 Comment window, the current variation will be shelved. `Revert'
396 allows you to return to the most recently shelved variation. The
397 difference between `Revert' and `Annotate' is that with the latter,
398 the variation you are now abandoning will be added as a comment
399 (in PGN variation syntax, i.e. between parentheses) to the
400 original move where you deviated, for later recalling. The `Home'
401 key is a keyboard equivalent to `Revert'.
404 Discards all remembered moves of the game beyond the current
405 position. Puts XBoard into `Edit Game' mode if it was not there
406 already. The `End' key is a keyboard equivalent.
409 Steps backward through a series of remembered moves. The `[<]'
410 button and the `Alt+LeftArrow' key are equivalents, as is turning
411 the mouse wheel towards you. In addition, pressing the Control
412 key steps back one move, and releasing it steps forward again.
414 In most modes, `Backward' only lets you look back at old positions;
415 it does not retract moves. This is the case if you are playing
416 against a chess engine, playing or observing a game on an ICS, or
417 loading a game. If you select `Backward' in any of these
418 situations, you will not be allowed to make a different move. Use
419 `Retract Move' or `Edit Game' if you want to change past moves.
421 If you are examining an ICS game, the behavior of `Backward'
422 depends on whether XBoard is in Pause mode. If Pause mode is off,
423 `Backward' issues the ICS backward command, which backs up
424 everyone's view of the game and allows you to make a different
425 move. If Pause mode is on, `Backward' only backs up your local
429 Steps forward through a series of remembered moves (undoing the
430 effect of `Backward') or forward through a game file. The `[>]'
431 button and the `Alt+RightArrow' key are equivalents, as is turning
432 the mouse wheel away from you.
434 If you are examining an ICS game, the behavior of Forward depends
435 on whether XBoard is in Pause mode. If Pause mode is off,
436 `Forward' issues the ICS forward command, which moves everyone's
437 view of the game forward along the current line. If Pause mode is
438 on, `Forward' only moves your local view forward, and it will not
439 go past the position that the game was in when you paused.
442 Jumps backward to the first remembered position in the game. The
443 `[<<]' button and the `Alt+Home' key are equivalents.
445 In most modes, Back to Start only lets you look back at old
446 positions; it does not retract moves. This is the case if you are
447 playing against a local chess engine, playing or observing a game
448 on a chess server, or loading a game. If you select `Back to
449 Start' in any of these situations, you will not be allowed to make
450 different moves. Use `Retract Move' or `Edit Game' if you want to
451 change past moves; or use Reset to start a new game.
453 If you are examining an ICS game, the behavior of `Back to Start'
454 depends on whether XBoard is in Pause mode. If Pause mode is off,
455 `Back to Start' issues the ICS `backward 999999' command, which
456 backs up everyone's view of the game to the start and allows you
457 to make different moves. If Pause mode is on, `Back to Start' only
458 backs up your local view.
461 Jumps forward to the last remembered position in the game. The
462 `[>>]' button and the `Alt+End' key are equivalents.
464 If you are examining an ICS game, the behavior of `Forward to End'
465 depends on whether XBoard is in Pause mode. If Pause mode is off,
466 `Forward to End' issues the ICS `forward 999999' command, which
467 moves everyone's view of the game forward to the end of the
468 current line. If Pause mode is on, `Forward to End' only moves
469 your local view forward, and it will not go past the position that
470 the game was in when you paused.
476 Inverts your view of the chess board for the duration of the
477 current game. Starting a new game returns the board to normal.
478 The `F2' key is a keyboard equivalent.
481 Shows or hides a window in which the thinking output of any loaded
482 engines is displayed. The shifted `Alt+O' key is a keyboard
483 equivalent. XBoard will display lines of thinking output of the
484 same depth ordered by score, (highest score on top), rather than
485 in the order the engine produced them. Usually this amounts to
486 the same, as a normal engine search will only find new PV (and
487 emit it as thinking output) when it searches a move with a higher
488 score than the previous variation. But when the engine is in
489 multi-variation mode this needs not always be true, and it is more
490 convenient for someone analyzing games to see the moves sorted by
491 score. The order in which the engine found them is only of
492 interest to the engine author, and can still be deduced from the
493 time or node count printed with the line. Right-clicking a line
494 in this window, and then moving the mouse vertically with the
495 right button kept down, will make XBoard play through the PV
496 listed there. The use of the board window as 'variation board'
497 will normally end when you release the right button, or when the
498 opponent plays a move. But beware: in Analysis mode, moves thus
499 played out will be added to the game. The Engine-Output pane for
500 each engine will contain a header displaying the multi-PV status
501 and a list of excluded moves in Analysis mode, which are also
502 responsive to right-clicking.
505 Shows or hides a list of moves of the current game. The shifted
506 `Alt+H' key is a keyboard equivalent. This list allows you to
507 move the display to any earlier position in the game by clicking
508 on the corresponding move.
510 Show Evaluation Graph
511 Shows or hides a window which displays a graph of how the engine
512 score(s) evolved as a function of the move number. The shifted
513 `Alt+E' key is a keyboard equivalent. Clicking on the graph will
514 bring the corresponding position in the board display.
517 Shows or hides the list of games generated by the last `Load Game'
518 command. The shifted `Alt+G' key is a keyboard equivalent.
521 Pops up a window which shows the PGN (portable game notation) tags
522 for the current game. For now this is a duplicate of the `Edit
523 Tags' item in the `Edit' menu.
526 Pops up a window which shows any comments to or variations on the
527 current move. For now this is a duplicate of the `Edit Comment'
528 item in the `Edit' menu.
531 If this option is set in ICS mode, XBoard creates an extra window
532 that you can use for typing in ICS commands. The input box is
533 especially useful if you want to type in something long or do some
534 editing on your input, because output from ICS doesn't get mixed
535 in with your typing as it would in the main terminal window.
538 This menu item opens a window in which you can conduct upto 5 chats
539 with other ICS users (or channels). To use the window, write the
540 name of your chat partner, the channel number, or the words
541 'shouts', 'whispers', 'cshouts' in the upper field (closing with
542 <Enter>). Everything you type in the lowest field will then
543 automatically be sent to the mentioned party, while everything
544 that party sends to you will appear in the central text box,
545 rather than appear in the ICS console. The row of buttons allow
546 you to choose between chat; to start a new chat, just select an
547 empty button, and complete the `Chat partner' field.
550 Summons a dialog where you can customize the look of the chess
551 board. Here you can specify the directory from which piece images
552 should be taken, when you don't want to use the built-in piece
553 images (see `pieceImageDirectory' option), external images to be
554 used for the board squares (`liteBackTextureFile' and
555 `darkBackTextureFile' options), and square and piece colors for
559 a duplicate of the Game List dialog in the Options menu.
565 Tells the chess engine to play White. The `Ctrl-W' key is a
569 Tells the chess engine to play Black. The `Ctrl-B' key is a
573 Plays a game between two chess engines. The `Ctrl-T' key is a
577 XBoard tells the chess engine to start analyzing the current
578 game/position and shows you the analysis as you move pieces around.
579 The `Ctrl-A' key is a keyboard equivalent. Note: Some chess
580 engines do not support Analysis mode.
582 To set up a position to analyze, you do the following:
584 1. Select Edit Position from the Mode Menu
586 2. Set up the position. Use the middle and right buttons to bring
587 up the white and black piece menus.
589 3. When you are finished, click on either the Black or White clock
590 to tell XBoard which side moves first.
592 4. Select Analysis Mode from the Mode Menu to start the analysis.
594 You can now play legal moves to create follow-up positions for the
595 engine to analyze, while the moves will be remembered as a stored
596 game, and then step backward through this game to take the moves
597 back. Note that you can also click on the clocks to set the
598 opposite side to move (adding a so-called `null move' to the game).
600 You can also tell the engine to exclude some moves from analysis.
601 (Engines that do not support the exclude-moves feature will ignore
602 this, however.) The general way to do this is to play the move
603 you want to exclude starting with a double click on the piece.
604 When you use drag-drop moving, the piece you grab with a double
605 click will also remain on its square, to show you that you are not
606 really making the move, but just forbid it from the current
607 position. Playing a thus excluded move a second time will include
608 it again. Excluded moves will be listed as text in a header line
609 in the Engine Output window, and you can also re-include them by
610 right-clicking them there. This header line will also contain the
611 words 'best' and 'tail'; right-clicking those will exclude the
612 currently best move, or all moves not explicitly listed in the
613 header line. Once you leave the current position all memory of
614 excluded moves will be lost when you return there.
616 Selecting this menu item while already in `Analysis Mode' will
617 toggle the participation of the second engine in the analysis.
618 The output of this engine will then be shown in the lower pane of
619 the Engine Output window. The analysis function can also be used
620 when observing games on an ICS with an engine loaded (zippy mode);
621 the engine then will analyse the positions as they occur in the
625 This option subjects the currently loaded game to automatic
626 analysis by the loaded engine. The `Ctrl-G' key is a keyboard
627 equivalent. XBoard will start auto-playing the game from the
628 currently displayed position, while the engine is analyzing the
629 current position. The game will be annotated with the results of
630 these analyses. In particlar, the score and depth will be added
631 as a comment, and the PV will be added as a variation.
633 Normally the analysis would stop after reaching the end of the
634 game. But when a game is loaded from a multi-game file while
635 `Analyze Game' was already switched on, the analysis will continue
636 with the next game in the file until the end of the file is
637 reached (or you switch to another mode).
639 The time the engine spends on analyzing each move can be controlled
640 through the command-line option `-timeDelay', which can also be
641 set from the `Load Game Options' menu dialog. Note: Some chess
642 engines do not support Analysis mode.
645 Duplicate of the item in the Edit menu. Note that `Edit Game' is
646 the idle mode of XBoard, and can be used to get you out of other
647 modes. E.g. to stop analyzing, stop a game between two engines or
648 stop editing a position.
651 Duplicate of the item in the Edit menu.
654 Training mode lets you interactively guess the moves of a game for
655 one of the players. You guess the next move of the game by playing
656 the move on the board. If the move played matches the next move of
657 the game, the move is accepted and the opponent's response is
658 auto-played. If the move played is incorrect, an error message is
659 displayed. You can select this mode only while loading a game
660 (that is, after selecting `Load Game' from the File menu). While
661 XBoard is in `Training' mode, the navigation buttons are disabled.
664 This is the normal mode when XBoard is connected to a chess
665 server. If you have moved into Edit Game or Edit Position mode,
666 you can select this option to get out.
668 To use xboard in ICS mode, run it in the foreground with the -ics
669 option, and use the terminal you started it from to type commands
670 and receive text responses from the chess server. See *note Chess
671 Servers:: below for more information.
673 XBoard activates some special position/game editing features when
674 you use the `examine' or `bsetup' commands on ICS and you have
675 `ICS Client' selected on the Mode menu. First, you can issue the
676 ICS position-editing commands with the mouse. Move pieces by
677 dragging with mouse button 1. To drop a new piece on a square,
678 press mouse button 2 or 3 over the square. This brings up a menu
679 of white pieces (button 2) or black pieces (button 3). Additional
680 menu choices let you empty the square or clear the board. Click
681 on the White or Black clock to set the side to play. You cannot
682 set the side to play or drag pieces to arbitrary squares while
683 examining on ICC, but you can do so in `bsetup' mode on FICS. In
684 addition, the menu commands `Forward', `Backward', `Pause', and
685 `Stop Examining' have special functions in this mode; see below.
688 Starts a match between two chess programs, with a number of games
689 and other parameters set through the `Match Options' menu dialog.
690 When a match is already running, selecting this item will make
691 XBoard drop out of match mode after the current game finishes.
694 Pauses updates to the board, and if you are playing against a
695 chess engine, also pauses your clock. To continue, select `Pause'
696 again, and the display will automatically update to the latest
697 position. The `P' button and keyboard `Pause' key are equivalents.
699 If you select Pause when you are playing against a chess engine and
700 it is not your move, the chess engine's clock will continue to run
701 and it will eventually make a move, at which point both clocks
702 will stop. Since board updates are paused, however, you will not
703 see the move until you exit from Pause mode (or select Forward).
704 This behavior is meant to simulate adjournment with a sealed move.
706 If you select Pause while you are observing or examining a game on
707 a chess server, you can step backward and forward in the current
708 history of the examined game without affecting the other observers
709 and examiners, and without having your display jump forward to the
710 latest position each time a move is made. Select Pause again to
711 reconnect yourself to the current state of the game on ICS.
713 If you select `Pause' while you are loading a game, the game stops
714 loading. You can load more moves manually by selecting `Forward',
715 or resume automatic loading by selecting `Pause' again.
721 Accepts a pending match offer. The `F3' key is a keyboard
722 equivalent. If there is more than one offer pending, you will
723 have to type in a more specific command instead of using this menu
727 Declines a pending offer (match, draw, adjourn, etc.). The `F4'
728 key is a keyboard equivalent. If there is more than one offer
729 pending, you will have to type in a more specific command instead
730 of using this menu choice.
733 Calls your opponent's flag, claiming a win on time, or claiming a
734 draw if you are both out of time. The `F5' key is a keyboard
735 equivalent. You can also call your opponent's flag by clicking on
739 Offers a draw to your opponent, accepts a pending draw offer from
740 your opponent, or claims a draw by repetition or the 50-move rule,
741 as appropriate. The `F6' key is a keyboard equivalent.
744 Asks your opponent to agree to adjourning the current game, or
745 agrees to a pending adjournment offer from your opponent. The
746 `F7' key is a keyboard equivalent.
749 Asks your opponent to agree to aborting the current game, or
750 agrees to a pending abort offer from your opponent. The `F8' key
751 is a keyboard equivalent. An aborted game ends immediately without
752 affecting either player's rating.
755 Resigns the game to your opponent. The `F9' key is a keyboard
759 Ends your participation in observing a game, by issuing the ICS
760 observe command with no arguments. ICS mode only. The `F10' key
761 is a keyboard equivalent.
764 Ends your participation in examining a game, by issuing the ICS
765 unexamine command. ICS mode only. The `F11' key is a keyboard
769 Create an examined game of the proper variant on the ICS, and send
770 the game there that is currenty loaded in XBoard (e.g. through
771 pasting or loading from file). You must be connected to an ICS
777 Terminate an ongoing game in Two-Machines mode (including match
778 mode), with as result a win for white, for black, or a draw,
779 respectively. The PGN file of the game will accompany the result
780 string by the comment "user adjudication".
786 Pops up a dialog where you can select or specify an engine to be
787 loaded. You will always have to indicate whether you want to load
788 the engine as first or second engine, through the ‘Load
789 menitioned engine as’ drop-down list at the bottom of the dialog.
790 You can even replace engines during a game, without disturbing
791 that game. (Beware that after loading an engine, XBoard will
792 always be in Edit Game mode, so you will have to tell the new
793 engine what to do before it does anything!) When you select an
794 already installed engine from the ‘Select Engine from List’
795 drop-down list, all other fields of the dialog will be ignored.
796 In other cases, you have to specify the engine executable,
797 possible arguments on the engine command line (if the engine docs
798 say the engine needs any), and the directory where the engine
799 should look for its files (if this cannot be deduced automatically
800 from the specification of the engine executable). You will also
801 have to specify (with the aid of checkboxes) if the engine is UCI.
802 If ‘Add this engine to the list’ is ticked (which it is by
803 default), the engine will be added to the list of installed
804 engines in your settings file, (provided you save the settings!),
805 so that next time you can select it from the drop-down list. You
806 can also specify a ‘nickname’, under which the engine will
807 then appear in that drop-down list, and even choose to use that
808 nickname for it in PGN files for engine-engine games. The info
809 you supply with the checkboxes whether the engine should use GUI
810 book, or (for variant engines) automatically switch to the current
811 variant when loaded, will also be included in the list. For
812 obsolete XBoard engines, which would normally take a long delay to
813 load because XBoard is waiting for a response they will not give,
814 you can tick ‘WB protocol v1’ to speed up the loading process.
817 Pop up a menu dialog to alter the settings specific to the
818 applicable engine. (The second engine is only accessible once it
819 has been used in Two-Machines mode.) For each parameter the
820 engine allows to be set, a control element will appear in this
821 dialog that can be used to alter the value. Depending on the type
822 of parameter (text string, number, multiple choice, on/off switch,
823 instantaneous signal) the appropriate control will appear, with a
824 description next to it. XBoard has no idea what these values
825 mean; it just passes them on to the engine. How this dialog looks
826 is completely determined by the engine, and XBoard just passes it
827 on to the user. Many engines do not have any parameters that can
828 be set by the user, and in that case the dialog will be empty
829 (except for the OK and cancel buttons). UCI engines usually have
830 many parameters. (But these are only visible with a sufficiently
831 modern version of the Polyglot adapter needed to run UCI engines,
832 e.g. Polyglot 1.4.55b.) For native XBoard engines this is less
836 Displays a move hint from the chess engine.
839 Displays a list of possible moves from the chess engine's opening
840 book. The exact format depends on what chess engine you are using.
841 With GNU Chess 4, the first column gives moves, the second column
842 gives one possible response for each move, and the third column
843 shows the number of lines in the book that include the move from
844 the first column. If you select this option and nothing happens,
845 the chess engine is out of its book or does not support this
849 Forces the chess engine to move immediately. Chess engine mode
850 only. The `Ctrl-M' key is a keyboard equivalent.
853 Retracts your last move. In chess engine mode, you can do this only
854 after the chess engine has replied to your move; if the chess
855 engine is still thinking, use `Move Now' first. In ICS mode,
856 `Retract Move' issues the command `takeback 1' or `takeback 2'
857 depending on whether it is your opponent's move or yours. The
858 `Ctrl-X' key is a keyboard equivalent.
860 Recently Used Engines
861 At the bottom of the engine menu there can be a list of names of
862 engines that you recently loaded through the Load Engine menu
863 dialog in previous sessions. Clicking on such a name will load
864 that engine as first engine, so you won't have to search for it in
865 your list of installed engines, if that is very long. The maximum
866 number of displayed engine names is set by the
867 `recentEngines'command-line option.
873 The following items to set option values appear in the dialog
874 summoned by the general Options menu item.
876 Absolute Analysis Scores
877 Controls if scores on the Engine Output window during analysis
878 will be printed from the white or the side-to-move point-of-view.
881 If this option is on, 7th-rank pawns automatically change into
882 Queens when you pick them up, and when you drag them to the
883 promotion square and release them there, they will promote to that.
884 But when you drag such a pawn backwards first, its identity will
885 start to cycle through the other available pieces. This will
886 continue until you start to move it forward; at which point the
887 identity of the piece will be fixed, so that you can safely put it
888 down on the promotion square. If this option is off, what happens
889 depends on the option `alwaysPromoteToQueen', which would force
890 promotion to Queen when true. Otherwise XBoard would bring up a
891 dialog box whenever you move a pawn to the last rank, asking what
892 piece you want to promote to.
895 If Animate Dragging is on, while you are dragging a piece with the
896 mouse, an image of the piece follows the mouse cursor. If Animate
897 Dragging is off, there is no visual feedback while you are
898 dragging a piece, but if Animate Moving is on, the move will be
899 animated when it is complete.
902 If Animate Moving is on, all piece moves are animated. An image
903 of the piece is shown moving from the old square to the new square
904 when the move is completed (unless the move was already animated
905 by Animate Dragging). If Animate Moving is off, a moved piece
906 instantly disappears from its old square and reappears on its new
907 square when the move is complete. The shifted `Ctrl-A' key is a
911 If this option is on and one player runs out of time before the
912 other, XBoard will automatically call his flag, claiming a win on
913 time. The shifted `Ctrl-F' key is a keyboard equivalent. In ICS
914 mode, Auto Flag will only call your opponent's flag, not yours,
915 and the ICS may award you a draw instead of a win if you have
916 insufficient mating material. In local chess engine mode, XBoard
917 may call either player's flag and will not take material into
921 If the Auto Flip View option is on when you start a game, the board
922 will be automatically oriented so that your pawns move from the
923 bottom of the window towards the top.
925 If you are playing a game on an ICS, the board is always oriented
926 at the start of the game so that your pawns move from the bottom
927 of the window towards the top. Otherwise, the starting orientation
928 is determined by the `flipView' command line option; if it is
929 false (the default), White's pawns move from bottom to top at the
930 start of each game; if it is true, Black's pawns move from bottom
931 to top. *Note User interface options::.
934 If this option is on, XBoard displays the board as usual but does
935 not display pieces or move highlights. You can still move in the
936 usual way (with the mouse or by typing moves in ICS mode), even
937 though the pieces are invisible.
940 Controls if right-clicking the board in crazyhouse / bughouse will
941 pop up a menu to drop a piece on the clicked square (old,
942 deprecated behavior) or allow you to step through an engine PV
943 (new, recommended behavior).
945 Enable Variation Trees
946 If this option is on, playing a move in Edit Game or Analyze mode
947 while keeping the Shift key pressed will start a new variation.
948 You can then recall the previous line through the `Revert' menu
949 item. When off, playing a move will truncate the game and append
950 the move irreversibly.
953 If this option is off, the chess engine's notion of the score and
954 best line of play from the current position is displayed as it is
955 thinking. The score indicates how many pawns ahead (or if negative,
956 behind) the chess engine thinks it is. In matches between two
957 machines, the score is prefixed by `W' or `B' to indicate whether
958 it is showing White's thinking or Black's, and only the thinking
959 of the engine that is on move is shown. The shifted `Ctrl-H' key
960 is a keyboard equivalent.
963 If Highlight Last Move is on, after a move is made, the starting
964 and ending squares remain highlighted. In addition, after you use
965 Backward or Back to Start, the starting and ending squares of the
966 last move to be unmade are highlighted.
969 Causes the highlighting described in Highlight Last Move to be done
970 by drawing an arrow between the highlighted squares, so that it is
971 visible even when the width of the grid lines is set to zero.
974 Enables the sounding of an audible signal when the computer
975 performs a move. For the selection of the sound, see `Sound
976 Options'. If you turn on this option when using XBoard with the
977 Internet Chess Server, you will probably want to give the `set
978 bell 0' command to the ICS, since otherwise the ICS will ring the
979 terminal bell after every move (not just yours). (The `.icsrc' file
980 is a good place for this; see *note ICS options::.)
983 If this option is on, XBoard does not wait for you to click both
984 the from- and the to-square, or drag the piece, but performs a
985 move as soon as it is uniqely specified. This applies to clicking
986 an own piece that only has a single legal move, clicking an empty
987 square or opponent piece where only one of your pieces can move
988 (or capture) to. Furthermore, a double-click on a piece that can
989 only make a single capture will cause that capture to be made.
990 Promoting a Pawn by clicking its to-square will suppress the
991 promotion popup or other methods for selecting an under-promotion,
992 and make it promote to Queen.
995 If this option is off (or if you are using a chess engine that
996 does not support periodic updates), the analysis window will only
997 be updated when the analysis changes. If this option is on, the
998 Analysis Window will be updated every two seconds.
1000 Play Move(s) of Clicked PV
1001 If this option is on, right-clicking a PV in the Engine Output
1002 window during Analyze mode will cause the first move of that PV to
1003 be played. You could also play more than one (or no) PV move by
1004 moving the mouse to engage in the PV walk such a right-click will
1005 start, to seek out another position along the PV where you want to
1006 continue the analysis, before releasing the mouse button.
1009 If this option is off, the chess engine will think only when it is
1010 on move. If the option is on, the engine will also think while
1011 waiting for you to make your move. The shifted `Ctrl-P' key is a
1012 keyboard equivalent.
1015 If this option is on, when XBoard wants to display a message just
1016 before exiting, it brings up a modal dialog box and waits for you
1017 to click OK before exiting. If the option is off, XBoard prints
1018 the message to standard error (the terminal) and exits immediately.
1021 If this option is off, when you make an error in moving (such as
1022 attempting an illegal move or moving the wrong color piece), the
1023 error message is displayed in the message area. If the option is
1024 on, move errors are displayed in small pop-up windows like other
1025 errors. You can dismiss an error pop-up either by clicking its OK
1026 button or by clicking anywhere on the board, including
1027 down-clicking to start a move.
1030 If this option is on, XBoard will display the depth and score of
1031 engine moves in the Move List, in the format of a PGN comment.
1034 If this option is on, XBoard displays algebraic coordinates along
1035 the board's left and bottom edges.
1038 If this option is on, all squares a piece that is 'picked up' with
1039 the mouse can legally move to are highighted with a fat colored
1040 dot in the highlightColor (non-captures) or premoveHighlightColor
1041 (captures). Legality testing must be on for XBoard to know how
1045 If this option is on, XBoard tests whether the moves you try to
1046 make with the mouse are legal and refuses to let you make an
1047 illegal move. The shifted `Ctrl-L' key is a keyboard equivalent.
1048 Moves loaded from a file with `Load Game' are also checked. If
1049 the option is off, all moves are accepted, but if a local chess
1050 engine or the ICS is active, they will still reject illegal moves.
1051 Turning off this option is useful if you are playing a chess
1052 variant with rules that XBoard does not understand. (Bughouse,
1053 suicide, and wild variants where the king may castle after
1054 starting on the d file are generally supported with Test Legality
1059 If this option is non-zero, whenever a move is completed, the
1060 moved piece flashes the specified number of times. The flash-rate
1061 setting determines how rapidly this flashing occurs.
1064 Determines the duration (in msec) of an animation step, when
1065 `Animate Moving' is swiched on.
1067 Zoom factor in Evaluation Graph
1068 Sets the valueof the `evalZoom' option, indicating the factor by
1069 which the score interval (-1,1) should be blown up on the vertical
1070 axis of the Evaluation Graph.
1073 Pops up a sub-menu where you can set the time-control parameters
1074 interactively. Allows you to select classical or incremental time
1075 controls, set the moves per session, session duration, and time
1076 increment. Also allows specification of time-odds factors for one
1077 or both engines. If an engine is given a time-odds factor N, all
1078 time quota it gets, be it at the beginning of a session or through
1079 the time increment or fixed time per move, will be divided by N.
1080 The shifted `Alt+T' key is a keyboard equivalent.
1083 Pops up a sub-menu where you can set some engine parameters common
1084 to most engines, such as hash-table size, tablebase cache size,
1085 maximum number of processors that SMP engines can use, and where
1086 to find the Polyglot adapter needed to run UCI engines under
1087 XBoard. The feature that allows setting of these parameters on
1088 engines is new since XBoard 4.3.15, so not many XBoard/WinBoard
1089 engines respond to it yet, but UCI engines should.
1091 It is also possible to specify a GUI opening book here, i.e. an
1092 opening book that XBoard consults for any position a playing
1093 engine gets in. It then forces the engine to play the book move,
1094 rather than to think up its own, if that position is found in the
1095 book. The book can switched on and off independently for either
1096 engine. The way book moves are chosen can be influenced through
1097 the settings of book depth and variety. After both sides have
1098 played more moves than the specified depth, the book will no
1099 longer be consulted. When the variety is set to 50, moves will be
1100 played with the probability specified in the book. When set to 0,
1101 only the move(s) with the highest probability will be played.
1102 When set to 100, all listed moves will be played with equal
1103 pobability. Other settings interpolate between that. The shifted
1104 `Alt+U' key is a keyboard equivalent.
1107 Pops up a sub-menu where you can enable or disable various
1108 adjudications that XBoard can perform in engine-engine games. The
1109 shifted `Alt+J' key is a keyboard equivalent. You can instruct
1110 XBoard to detect and terminate the game on checkmate or stalemate,
1111 even if the engines would not do so, to verify engine result
1112 claims (forfeiting engines that make false claims), rather than
1113 naively following the engine, to declare draw on positions which
1114 can never be won for lack of mating material, (e.g. KBK), or which
1115 are impossible to win unless the opponent seeks its own demise
1116 (e.g. KBKN). For these adjudications to work, `Test Legality'
1117 should be switched on. It is also possible to instruct XBoard to
1118 enforce a 50-move or 3-fold-repeat rule and automatically declare
1119 draw (after a user-adjustable number of moves or repeats) even if
1120 the engines are prepared to go on. It is also possible to have
1121 XBoard declare draw on games that seem to drag on forever, or
1122 adjudicate a loss if both engines agree (for 3 consecutive moves)
1123 that one of them is behind more than a user-adjustable score
1124 threshold. For the latter adjudication to work, XBoard should be
1125 able to properly understand the engine's scores. To facilitate the
1126 latter, you can inform xboard here if the engines report scores
1127 from the viewpoint of white, or from that of their own color.
1130 The following options occur in a dialog summoned by the ICS
1134 Setting this option when playing with or aginst a chess program on
1135 an ICS will cause the last line of thinking output of the engine
1136 before its move to be sent to the ICS in a kibitz command. In
1137 addition, any kibitz message received through the ICS from an
1138 opponent chess program will be diverted to the engine-output
1139 window, (and suppressed in the console), where you can play
1140 through its PV by right-clicking it.
1143 If this option is on, any remarks made on ICS while you are
1144 observing or playing a game are recorded as a comment on the
1145 current move. This includes remarks made with the ICS commands
1146 `say', `tell', `whisper', and `kibitz'. Limitation: remarks that
1147 you type yourself are not recognized; XBoard scans only the output
1148 from ICS, not the input you type to it.
1151 If this option is on and you add a player to your `gnotify' list
1152 on ICS, XBoard will automatically observe all of that player's
1153 games, unless you are doing something else (such as observing or
1154 playing a game of your own) when one starts. The games are
1155 displayed from the point of view of the player on your gnotify
1156 list; that is, his pawns move from the bottom of the window
1157 towards the top. Exceptions: If both players in a game are on
1158 your gnotify list, if your ICS `highlight' variable is set to 0,
1159 or if the ICS you are using does not properly support observing
1160 from Black's point of view, you will see the game from White's
1164 If this option is on, whenever a new game begins, the chessboard
1165 window is deiconized (if necessary) and raised to the top of the
1169 If this option is true, at the end of every game XBoard prompts
1170 you for a file name and appends a record of the game to the file
1171 you specify. Disabled if the `saveGameFile' command-line option
1172 is set, as in that case all games are saved to the specified file.
1173 *Note Load and Save options::.
1176 Setting this option will make XBoard suppress display of any boards
1177 from observed games while you are playing. In stead the last such
1178 board will be remembered, and shown to you when you right-click
1179 the board. This allows you to peek at your bughouse partner's
1180 game when you want, without disturbing your own game too much.
1183 Setting this option in combination with `Background Observe' will
1184 display boards of observed games while you are playing on a second
1185 board next to that of your own game.
1188 If this option is on, whenever XBoard receives the first board of
1189 a new ICS game (or a different game from the one it is currently
1190 displaying), it retrieves the list of past moves from the ICS.
1191 You can then review the moves with the `Forward' and `Backward'
1192 commands or save them with `Save Game'. You might want to turn
1193 off this option if you are observing several blitz games at once,
1194 to keep from wasting time and network bandwidth fetching the move
1195 lists over and over. When you turn this option on from the menu,
1196 XBoard immediately fetches the move list of the current game (if
1200 If this option is on, XBoard will automatically issue an ICS `set
1201 shout 0' command whenever you start a game and a `set shout 1'
1202 command whenever you finish one. Thus, you will not be distracted
1203 by shouts from other ICS users while playing.
1206 Setting this option will cause XBoard to display an graph of
1207 currently active seek ads when you left-click the board while idle
1208 and logged on to an ICS.
1210 Auto-Refresh Seek Graph
1211 In combination with the `Seek Graph' option this will cause
1212 automatic update of the seek graph while it is up. This only
1213 works on FICS and ICC, and requires a lot of bandwidth on a busy
1221 If this option is on while playing a game on an ICS, you can
1222 register your next planned move before it is your turn. Move the
1223 piece with the mouse in the ordinary way, and the starting and
1224 ending squares will be highlighted with a special color (red by
1225 default). When it is your turn, if your registered move is legal,
1226 XBoard will send it to ICS immediately; if not, it will be ignored
1227 and you can make a different move. If you change your mind about
1228 your premove, either make a different move, or double-click on any
1229 piece to cancel the move entirely.
1231 You can also enter premoves for the first white and black moves of
1236 When this option is on, an alarm sound is played when your clock
1237 counts down to the icsAlarmTime in an ICS game. (By default, the
1238 time is 5 seconds, but you can pecify other values with the Alarm
1239 Time spin control.) For games with time controls that include an
1240 increment, the alarm will sound each time the clock counts down to
1241 the icsAlarmTime. By default, the alarm sound is the terminal
1242 bell, but on some systems you can change it to a sound file using
1243 the soundIcsAlarm option; see below.
1246 Ticking this options causes various types of ICS messages do be
1247 displayed with different foreground or background colors in the
1248 console. The colors can be individually selected for each type,
1249 through the accompanying text edits.
1252 Summons a dialog where you can set options important for playing
1253 automatic matches between two chess programs (e.g. by using the
1254 `Machine Match' menu item in the `Mode' menu).
1257 To run a tournament, XBoard needs a file to record its progress,
1258 so it can resume the tourney when it is interrupted. When you
1259 want to conduct anything more complex than a simple two-player
1260 match with the currently loaded engines, (i.e. when you select a
1261 list of participants), you must not leave this field blank. When
1262 you enter the name of an existing tournament file, XBoard will
1263 ignore all other input specified in the dialog, and will take them
1264 from that tournament file. This resumes an interrupted
1265 tournament, or adds another XBoard agent playing games for it to
1266 those that are already doing so. Specifying a not-yet-existing
1267 file will cause XBoard to create it, according to the tournament
1268 parameters specified in the rest of the dialog, before it starts
1269 the tournament on ‘OK’. Provided that you specify
1270 participants; without participants no tournament file will be
1271 made, but other entered values (e.g. for the file with opening
1272 positions) will take effect. Default: configured by the
1273 `defaultTourneyName' option.
1277 The sync options, when on, will cause WinBoard to refrain from
1278 starting games of the next round or cycle before all games of the
1279 previous round or cycle are finished. This guarantees correct
1280 ordering in the games file, even when multiple XBoard instances
1281 are concurrently playing games for the same tourney. Default:
1282 sync after cycle, but not after round.
1285 Tourney participants
1286 With the Select Engine drop-down list you can pick an engine from
1287 your list of installed engines in the settings file, to be added
1288 to the tournament. The engines selected so far will be listed in
1289 the ‘Tourney participants’ memo. The latter is a normal text
1290 edit, so you can use normal text-editing functions to delete
1291 engines you selected by accident, or change their order. Do not
1292 type names yourself there, because names that do not exactly match
1293 one of the names from the drop-down list will lead to undefined
1297 Here you can specify the type of tournament you want. XBoard’s
1298 intrinsic tournament manager support round-robins (type = 0),
1299 where each participant plays every other participant, and
1300 (multi-)gauntlets, where one (or a few) so-called ‘gauntlet
1301 engines’ play an independent set of opponents. In the latter
1302 case, you specify the number of gauntlet engines. E.g. if you
1303 specified 10 engines, and tourney type = 2, the first 2 engines
1304 each play the remaining 8. A value of -1 instructs XBoard to play
1305 Swiss; for this to work an external pairing engine must be
1306 specified through the `pairingEngine' option. Each Swiss round
1307 will be considered a tourney cycle in that case. Default:0
1309 Number of tourney cycles
1310 Default number of Games
1311 You can specify tourneys where every two opponents play each other
1312 multiple times. Such multiple games can be played in a row, as
1313 specified by the ‘number of games per pairing’, or by
1314 repeating the entire tournament schedule a number of times
1315 (specified by the ‘number of tourney cycles’). The total
1316 number of times two engine meet will be the product of these two.
1317 Default is 1 cycle; the number of games per pairing is the same as
1318 the default number of match games, stored in your settings file
1319 through the `defaultMatchGames' option.
1322 File where the tournament games are saved (duplicate of the item
1323 in the `Save Game Options').
1325 Game File with Opening Lines
1326 File with Start Positions
1330 These items optionally specify the file with move sequences or
1331 board positions the tourney games should start from. The
1332 corresponding numbers specify the number of the game or position
1333 in the file. Here a value -1 means automatic stepping through all
1334 games on the file, -2 automatic stepping every two games. The
1335 Rewind-Index parameter causes a stepping index to reset to one
1336 after reaching a specified value. A setting of -2 for the game
1337 number will also be effective in a tournament without specifying a
1338 game file, but playing from the GUI book instead. In this case
1339 the first (odd) games will randomly select from the book, but the
1340 second (even) games will select the same moves from the book as
1341 the previous game. (Note this leads to the same opening only if
1342 both engines use the GUI book!) Default: No game or position file
1343 will be used. The default index if such a file is used is 1.
1345 Disable own engine bools be default
1346 Setting this option reverses the default situation for use of the
1347 GUI opening book in tournaments from what it normally is, namely
1348 not using it. So unless the engine is installed with an option to
1349 explicitly specify it should not use the GUI book (i.e.
1350 `-firstHasOwnBookUCI true'), it will be made to use the GUI book.
1354 With these two buttons you can alter the participants of an
1355 already running tournament. After opening the Match Options
1356 dialog on an XBoard that is playing for the tourney, you will see
1357 all the tourney parameters in the dialog fields. You can then
1358 replace the name of one engine by that of another by editing the
1359 `participants' field. (But preserve the order of the others!)
1360 Pressing the button after that will cause the substitution. With
1361 the `Upgrade Engine' button the substitution will only affect
1362 future games. With `Replace Engine' all games the substituted
1363 engine has already played will be invalidated, and they will be
1364 replayed with the substitute engine. In this latter case the
1365 engine must not be playing when you do this, but otherwise there
1366 is no need to pause the tournament play for making a substitution.
1369 Pressing this button after you have specified an existing
1370 tournament file will copy the contents of the latter to the dialog,
1371 and then puts the originally proposed name for the tourney file
1372 back. You can then run a tourney with the same parameters
1373 (possibly after changing the proposed name of the tourney file for
1374 the new tourney) by pressing 'OK'.
1377 Summons a dialog where you can set the `autoDisplayComment' and
1378 `autoDisplayTags' options, (which control popups when viewing
1379 loaded games), and specify the rate at which loaded games are
1380 auto-played, in seconds per move (which can be a fractional
1381 number, like 1.6). You can also set search criteria for
1382 determining which games will be displayed in the Game List for a
1383 multi-game file, and thus be eligible for loading:
1385 Elo of strongest player
1386 Elo of weakest player
1388 These numeric fields set thresholds (lower limits) on the Elo
1389 rating of the mentioned player, or the date the game was played.
1393 This setting determines which positions in a game will be
1394 considered a match to the position currently displayed in the
1395 board window when you press the `find position' button in the Game
1396 List. You can search for an exact match, a position that has all
1397 shown material in the same place, but might contain additional
1398 material, a position that has all Pawns in the same place, but can
1399 have the shown material anywhere, a position that can have all
1400 shown material anywhere, or a position that has material between
1401 certain limits anywhere. For the latter you have to place the
1402 material that must be present in the four lowest ranks of the
1403 board, and optional additional material in the four highest ranks
1404 of the board. You can request the optional material to be
1405 balanced. The `narrow' button is similar in fuction to the `find
1406 position' button, but only searches in the already selected games,
1407 rather than the complete game file, and can thus be used to refine
1408 a search based on multiple criteria.
1410 number of consecutive positions
1411 When you are searching by material, rather than for an exact match,
1412 this parameter indicates forhowmany consecutive game positions the
1413 same amount of material must be on the board before it is
1416 Also match reversed colors
1417 Also match left-right flipped position
1418 When looking for matching positions rather than by material, these
1419 settings determine whether mirror images (in case of a vertical
1420 flip in combination with color reversal) will be also considered a
1421 match. The left-right flipping is only useful after all castling
1422 rights have expired (or in Xiangqi).
1425 Summons a dialog where you can specify the files on which XBoard
1426 should automatically save any played or entered games, (the
1427 `saveGameFile' option), or the final position of such games (the
1428 `savePositionfile' option). You can also select 'auto-save'
1429 without a file name, in which case XBoard will prompt the user for
1430 a file name after each game. In ICS mode you can limit the
1431 auto-saving to your own games (i.e. suppress saving of observed
1432 games). You can also set the default value for the PGN Event tag
1433 that will be used for each new game you start. Various options
1434 for the format of the game can be specified as well, such as
1435 whether scores and depths of engine games should be saved as
1436 comments, and if a tag with info about the score with which the
1437 engine came out of book should be included. For Chess, always set
1438 the format to PGN, rather than "old save stye"!
1441 Pops up a dialog where you can select the PGN tags that should
1442 appear on the lines in the game list, and their order.
1445 Summons a dialog where you can specify the sounds that should
1446 accompany various events that can occur XBoard. Most events are
1447 only relevant to ICS play, but the move sound is an important
1448 exception. For each event listed in the dialog, you can select a
1449 standard sound from a menu. You can also select a user-supplied
1450 sound file, by typing its name into the designated text-edit field
1451 first, and then selecting "Above WAV File" from the menu for the
1452 event. A dummy event has been provided for trying out the sounds
1453 with the "play" button next to it. The directory with standard
1454 sounds, and the external program for playing the sounds can be
1455 specified too, but normally you would not touch these once XBoard
1456 is properly installed. When a move sound other than 'None' is
1457 selected, XBoard alerts you by playing that sound after each of
1458 your opponent's moves (or after every move if you are observing a
1459 game on the Internet Chess Server). The sound is not played after
1460 moves you make or moves read from a saved game file.
1463 Selecting this menu item causes the current XBoard settings to be
1464 written to the settings file, so they will also apply in future
1465 sessions. Note that some settings are 'volatile', and are not
1466 saved, because XBoard considers it too unlikely that you want
1467 those to apply next time. In particular this applies to the Chess
1468 program names, and all options giving information on those Chess
1469 programs (such as their directory, if they have their own opening
1470 book, if they are UCI or native XBoard), or the variant you are
1471 playing. Such options would still be understood when they appear
1472 in the settings file in case they were put there with the aid of a
1473 text editor, but they would disappear from the file as soon as you
1476 Note that XBoard no longer pays attention to options values
1477 specified in the .Xresources file. (Specifying key bindings there
1478 will still work, though.) To alter the default of volatile
1479 options, you can use the following method: Rename your ~/.xboardrc
1480 settings file (to ~/.yboardrc, say), and create a new file
1481 ~/.xboardrc, which only contains the options
1483 -settingsFile ~/.yboardrc
1484 -saveSettingsFile ~/.yboardrc
1486 This will cause your settings to be saved on ~/.yboardrc in the
1487 future, so that ~/.xboardrc is no longer overwritten. You can
1488 then safely specify volatile options in ~/.xboardrc, either before
1489 or after the settingsFile options. Note that when you specify
1490 persistent options after the settingsFile options in ~/.xboardrc,
1491 you will essentially turn them into volatile options with the
1492 specified value as default, because that value will overrule the
1493 value loaded from the settings file (being read later).
1495 Save Settings on Exit
1496 Setting this option has no immediate effect, but causes the
1497 settings to be saved when you quit XBoard. What happens then is
1498 otherwise identical to what happens when you use select "Save
1499 Settings Now", see there.
1505 Displays the XBoard documentation in info format. For this
1506 feature to work, you must have the GNU info program installed on
1507 your system, and the file `xboard.info' must either be present in
1508 the current working directory, or have been installed by the `make
1509 install' command when you built XBoard.
1512 Displays the XBoard documentation in man page format. The `F1'
1513 key is a keyboard equivalent. For this feature to work, the file
1514 `xboard.6' must have been installed by the `make install' command
1515 when you built XBoard, and the directory it was placed in must be
1516 on the search path for your system's `man' command.
1519 Shows the current XBoard version number.
1521 3.9 Other Shortcut Keys
1522 =======================
1525 By hitting `Enter' the last move will be re-animated.
1528 Loads the next game from the last game record file you loaded.
1529 The `Alt+PgDn' key triggers this action.
1532 Loads the previous game from the last game record file you loaded.
1533 The `Alt+PgUp' key triggers this action. Not available if the
1534 last game was loaded from a pipe.
1537 Reloads the last game you loaded. Not available if the last game
1538 was loaded from a pipe. Currently no keystroke is assigned to
1539 this ReloadGameProc.
1541 Reload Same Position
1542 Reloads the last position you loaded. Not available if the last
1543 position was loaded from a pipe. Currently no keystroke is
1544 assigned to this ReloadPositionProc.
1546 You can add or remove shortcut keys using the X resources
1547 `form.translations'. Here is an example of what would go in your
1550 XBoard*form.translations: \
1551 Shift<Key>?: AboutGameProc() \n\
1552 <Key>y: AcceptProc() \n\
1553 <Key>n: DeclineProc() \n\
1554 <Key>i: NothingProc()
1555 Binding a key to `NothingProc' makes it do nothing, thus removing it
1556 as a shortcut key. The XBoard commands that can be bound to keys are:
1558 AbortProc, AboutGameProc, AboutProc, AcceptProc, AdjournProc,
1559 AlwaysQueenProc, AnalysisModeProc, AnalyzeFileProc,
1560 AnimateDraggingProc, AnimateMovingProc, AutobsProc, AutoflagProc,
1561 AutoflipProc, AutoraiseProc, AutosaveProc, BackwardProc,
1562 BlindfoldProc, BookProc, CallFlagProc, CopyGameProc, CopyPositionProc,
1563 DebugProc, DeclineProc, DrawProc, EditCommentProc, EditGameProc,
1564 EditPositionProc, EditTagsProc, EnterKeyProc, FlashMovesProc,
1565 FlipViewProc, ForwardProc, GetMoveListProc, HighlightLastMoveProc,
1566 HintProc, IcsAlarmProc, IcsClientProc, IcsInputBoxProc,
1567 InfoProc, LoadGameProc, LoadNextGameProc, LoadNextPositionProc,
1568 LoadPositionProc, LoadPrevGameProc, LoadPrevPositionProc,
1569 LoadSelectedProc, MachineBlackProc, MachineWhiteProc, MailMoveProc,
1570 ManProc, MoveNowProc, MoveSoundProc, NothingProc, OldSaveStyleProc,
1571 PasteGameProc, PastePositionProc, PauseProc, PeriodicUpdatesProc,
1572 PonderNextMoveProc, PopupExitMessageProc, PopupMoveErrorsProc,
1573 PremoveProc, QuietPlayProc, QuitProc, ReloadCmailMsgProc,
1574 ReloadGameProc, ReloadPositionProc, RematchProc, ResetProc,
1575 ResignProc, RetractMoveProc, RevertProc, SaveGameProc,
1576 SavePositionProc, ShowCoordsProc, ShowGameListProc, ShowThinkingProc,
1577 StopExaminingProc, StopObservingProc, TestLegalityProc, ToEndProc,
1578 ToStartProc, TrainingProc, TruncateGameProc, and TwoMachinesProc.
1583 This section documents the command-line options to XBoard. You can set
1584 these options in two ways: by typing them on the shell command line you
1585 use to start XBoard, or by editing the settings file (usually
1586 ~/.xboardrc) to alter the value of the setting that was saved there.
1587 Some of the options cannot be changed while XBoard is running; others
1588 set the initial state of items that can be changed with the *note
1591 Most of the options have both a long name and a short name. To turn a
1592 boolean option on or off from the command line, either give its long
1593 name followed by the value true or false (`-longOptionName true'), or
1594 give just the short name to turn the option on (`-opt'), or the short
1595 name preceded by `x' to turn the option off (`-xopt'). For options that
1596 take strings or numbers as values, you can use the long or short option
1597 names interchangeably.
1599 4.1 Chess Engine Options
1600 ========================
1602 -tc or -timeControl minutes[:seconds]
1603 Each player begins with his clock set to the `timeControl' period.
1604 Default: 5 minutes. The additional options `movesPerSession' and
1605 `timeIncrement' are mutually exclusive.
1607 -mps or -movesPerSession moves
1608 When both players have made `movesPerSession' moves, a new
1609 `timeControl' period is added to both clocks. Default: 40 moves.
1611 -inc or -timeIncrement seconds
1612 If this option is specified, `movesPerSession' is ignored.
1613 Instead, after each player's move, `timeIncrement' seconds are
1614 added to his clock. Use `-inc 0' if you want to require the entire
1615 game to be played in one `timeControl' period, with no increment.
1616 Default: -1, which specifies `movesPerSession' mode.
1618 -clock/-xclock or -clockMode true/false
1619 Determines whether or not to display the chess clocks. If
1620 clockMode is false, the clocks are not shown, but the side that is
1621 to play next is still highlighted. Also, unless `searchTime' is
1622 set, the chess engine still keeps track of the clock time and uses
1623 it to determine how fast to make its moves.
1625 -st or -searchTime minutes[:seconds]
1626 Tells the chess engine to spend at most the given amount of time
1627 searching for each of its moves. Without this option, the chess
1628 engine chooses its search time based on the number of moves and
1629 amount of time remaining until the next time control. Setting
1630 this option also sets clockMode to false.
1632 -depth or -searchDepth number
1633 Tells the chess engine to look ahead at most the given number of
1634 moves when searching for a move to make. Without this option, the
1635 chess engine chooses its search depth based on the number of moves
1636 and amount of time remaining until the next time control. With
1637 the option, the engine will cut off its search early if it reaches
1638 the specified depth.
1642 Tells the chess engine to use an internal time standard based on
1643 its node count, rather then wall-clock time, to make its timing
1644 decisions. The time in virtual seconds should be obtained by
1645 dividing the node count through the given number, like the number
1646 was a rate in nodes per second. Xboard will manage the clocks in
1647 accordance with this, relying on the number of nodes reported by
1648 the engine in its thinking output. If the given number equals zero,
1649 it can obviously not be used to convert nodes to seconds, and the
1650 time reported by the engine is used to decrement the XBoard clock
1651 in stead. The engine is supposed to report in CPU time it uses,
1652 rather than wall-clock time, in this mode. This option can provide
1653 fairer conditions for engine-engine matches on heavily loaded
1654 machines, or with very fast games (where the wall clock is too
1655 inaccurate). `showThinking' must be on for this option to work.
1656 Default: -1 (off). Not many engines might support this yet!
1658 -firstTimeOdds factor
1659 -secondTimeOdds factor
1660 Reduces the time given to the mentioned engine by the given factor.
1661 If pondering is off, the effect is indistinguishable from what
1662 would happen if the engine was running on an n-times slower
1663 machine. Default: 1.
1666 This option determines how the case is handled where both engines
1667 have a time-odds handicap. If mode=1, the engine that gets the
1668 most time will always get the nominal time, as specified by the
1669 time-control options, and its opponent's time is renormalized
1670 accordingly. If mode=0, both play with reduced time. Default: 0.
1672 -hideThinkingFromHuman true/false
1673 Controls the Hide Thinking option. *Note Options Menu::. Default:
1674 true. (Replaces the Show-Thinking option of older xboard
1677 -thinking/-xthinking or -showThinking true/false
1678 Forces the engine to send thinking output to xboard. Used to be
1679 the only way to control if thinking output was displayed in older
1680 xboard versions, but as the thinking output in xboard 4.3 is also
1681 used for several other purposes (adjudication, storing in PGN
1682 file) the display of it is now controlled by the new option Hide
1683 Thinking. *Note Options Menu::. Default: false. (But if xboard
1684 needs the thinking output for some purpose, it makes the engine
1685 send it despite the setting of this option.)
1687 -ponder/-xponder or -ponderNextMove true/false
1688 Sets the Ponder Next Move menu option. *Note Options Menu::.
1692 Specifies the maximum number of CPUs an SMP engine is allowed to
1693 use. Only works for engines that support the
1694 XBoard/WinBoard-protocol cores feature.
1696 -mg or -matchGames n
1697 Automatically runs an n-game match between two chess engines, with
1698 alternating colors. If the `loadGameFile' or `loadPositionFile'
1699 option is set, XBoard starts each game with the given opening
1700 moves or the given position; otherwise, the games start with the
1701 standard initial chess position. If the `saveGameFile' option is
1702 set, a move record for the match is appended to the specified
1703 file. If the `savePositionFile' option is set, the final position
1704 reached in each game of the match is appended to the specified
1705 file. When the match is over, XBoard displays the match score and
1706 exits. Default: 0 (do not run a match).
1708 -mm/-xmm or -matchMode true/false
1709 Setting `matchMode' to true is equivalent to setting `matchGames'
1713 Automatically runs an n-game match between two chess engines,
1714 without alternating colors. Otherwise the same applies as for the
1715 `-matchGames' option, over which it takes precedence if both are
1716 specified. (See there.) Default: 0 (do not run a match).
1718 -fcp or -firstChessProgram program
1719 Name of first chess engine. Default: `Fairy-Max'.
1721 -scp or -secondChessProgram program
1722 Name of second chess engine, if needed. A second chess engine is
1723 started only in Two Machines (match) mode. Default: `Fairy-Max'.
1725 -fe or -firstEngine nickname
1726 This is an alternative to the `fcp' option for specifying the
1727 first engine, for engines that were already configured (using the
1728 `Load Engine' dialog) in XBoard's settings file. It will not only
1729 retrieve the real name of the engine, but also all options
1730 configured with it. (E.g. if it is UCI, whether it should use
1733 -se or -secondEngine nickname
1734 As `fe', but for the second engine.
1736 -fb/-xfb or -firstPlaysBlack true/false
1737 In games between two chess engines, firstChessProgram normally
1738 plays white. If this option is true, firstChessProgram plays
1739 black. In a multi-game match, this option affects the colors only
1740 for the first game; they still alternate in subsequent games.
1742 -fh or -firstHost host
1743 -sh or -secondHost host
1744 Hosts on which the chess engines are to run. The default for each
1745 is `localhost'. If you specify another host, XBoard uses `rsh' to
1746 run the chess engine there. (You can substitute a different remote
1747 shell program for rsh using the `remoteShell' option described
1750 -fd or -firstDirectory dir
1751 -sd or -secondDirectory dir
1752 Working directories in which the chess engines are to be run. The
1753 default is "", which means to run the chess engine in the same
1754 working directory as XBoard itself. (See the CHESSDIR environment
1755 variable.) This option is effective only when the chess engine is
1756 being run on the local host; it does not work if the engine is run
1757 remotely using the -fh or -sh option.
1759 -initString string or -firstInitString
1760 -secondInitString string
1761 The string that is sent to initialize each chess engine for a new
1766 Setting this option from the command line is tricky, because you
1767 must type in real newline characters, including one at the very
1768 end. In most shells you can do this by entering a `\' character
1769 followed by a newline. Using the character sequence `\n' in the
1770 string should work too, though.
1772 If you change this option, don't remove the `new' command; it is
1773 required by all chess engines to start a new game.
1775 You can remove the `random' command if you like; including it
1776 causes GNU Chess 4 to randomize its move selection slightly so
1777 that it doesn't play the same moves in every game. Even without
1778 `random', GNU Chess 4 randomizes its choice of moves from its
1779 opening book. Many other chess engines ignore this command
1780 entirely and always (or never) randomize.
1782 You can also try adding other commands to the initString; see the
1783 documentation of the chess engine you are using for details.
1785 -firstComputerString string
1786 -secondComputerString string
1787 The string that is sent to the chess engine if its opponent is
1788 another computer chess engine. The default is `computer\n'.
1789 Probably the only useful alternative is the empty string (`'),
1790 which keeps the engine from knowing that it is playing another
1793 -reuse/-xreuse or -reuseFirst true/false
1794 -reuse2/-xreuse2 or -reuseSecond true/false
1795 If the option is false, XBoard kills off the chess engine after
1796 every game and starts it again for the next game. If the option
1797 is true (the default), XBoard starts the chess engine only once
1798 and uses it repeatedly to play multiple games. Some old chess
1799 engines may not work properly when reuse is turned on, but
1800 otherwise games will start faster if it is left on.
1802 -firstProtocolVersion version-number
1803 -secondProtocolVersion version-number
1804 This option specifies which version of the chess engine
1805 communication protocol to use. By default, version-number is 2.
1806 In version 1, the "protover" command is not sent to the engine;
1807 since version 1 is a subset of version 2, nothing else changes.
1808 Other values for version-number are not supported.
1810 -firstScoreAbs true/false
1811 -secondScoreAbs true/false
1812 If this option is set, the score reported by the engine is taken
1813 to be that in favor of white, even when the engine plays black.
1814 Important when XBoard uses the score for adjudications, or in PGN
1817 -niceEngines priority
1818 This option allows you to lower the priority of the engine
1819 processes, so that the generally insatiable hunger for CPU time of
1820 chess engines does not interfere so much with smooth operation of
1821 XBoard (or the rest of your system). Negative values could
1822 increase the engine priority, which is not recommended.
1824 -firstOptions string
1825 -secondOptions string
1826 The given string is a comma-separated list of (option name=option
1827 value) pairs, like the following example: "style=Karpov,blunder
1828 rate=0". If an option announced by the engine at startup through
1829 the feature commands of the XBoard/WinBoard protocol matches one
1830 of the option names (i.e. "style" or "blunder rate"), it would be
1831 set to the given value (i.e. "Karpov" or 0) through a
1832 corresponding option command to the engine. This provided that
1833 the type of the value (text or numeric) matches as well.
1835 -firstNeedsNoncompliantFEN string
1836 -secondNeedsNoncompliantFEN string
1837 The castling rights and e.p. fields of the FEN sent to the
1838 mentioned engine with the setboard command will be replaced by the
1839 given string. This can for instance be used to run engines that do
1840 not understand Chess960 FENs in variant fischerandom, to make them
1841 at least understand the opening position, through setting the
1842 string to "KQkq -". (Note you also have to give the e.p. field!)
1843 Other possible applications are to provide work-arounds for
1844 engines that want to see castling and e.p. fields in variants that
1845 do not have castling or e.p. (shatranj, courier, xiangqi, shogi)
1846 so that XBoard would normally omit them (string = "- -"), or to
1847 add variant-specific fields that are not yet supported by XBoard
1848 (e.g. to indicate the number of checks in 3check).
1851 Forces shuffling of the opening setup in variants that normally
1852 have a fixed initial position. Shufflings are symmetric for black
1853 and white, and exempt King and Rooks in variants with normal
1854 castling. Remains in force until a new variant is selected.
1856 4.2 UCI + WB Engine Settings
1857 ============================
1859 -fUCI or -firstIsUCI true/false
1860 -sUCI or -secondIsUCI true/false
1861 Indicates if the mentioned engine executable file is an UCI engine,
1862 and should be run with the aid of the Polyglot adapter rather than
1863 directly. Xboard will then pass the other UCI options and engine
1864 name to Polyglot on its command line, according to the option
1871 Options similar to `fUCI' and `sUCI', except that they use the
1872 indicated engine with the protocol adapter specified in the
1873 `uxiAdapter' option. This can then be configured for running an
1874 UCCI or USI adapter, as the need arises.
1876 -adapterCommand string
1877 The string conatins the command that should be issued by XBoard to
1878 start an engine that is accompanied by the `fUCI' option. Any
1879 identifier following a percent sign in the command (e.g. %fcp)
1880 will be considered the name of an XBoard option, and be replaced
1881 by the value of that option at the time the engine is started.
1882 For starting the second engine, any leading "f" or "first" in the
1883 option name will first be replaced by "s" or "second", before
1884 finding its value. Default: 'polyglot -noini -ec "%fcp" -ed "%fd"'
1887 Similar to `adapterCommand', but used for engines accompanied by
1888 the `fUCCI' or `fUSI' option, so you can configure XBoard to be
1889 ready to handle more than one flavor of non-native protocols.
1892 -polyglotDir filename
1893 Gives the name of the directory in which the Polyglot adapter for
1894 UCI engines resides. Default: "".
1896 -usePolyglotBook true/false
1897 Specifies if the Polyglot book should be used as GUI book.
1899 -polyglotBook filename
1900 Gives the filename of the opening book. The book is only used
1901 when the `usePolyglotBook' option is set to true, and the option
1902 `firstHasOwnBookUCI' or `secondHasOwnBookUCI' applying to the
1903 engine is set to false. The engine will be kept in force mode as
1904 long as the current position is in book, and XBoard will select
1905 the book moves for it. Default: "".
1907 -fNoOwnBookUCI or -firstXBook or -firstHasOwnBookUCI true/false
1908 -sNoOwnBookUCI or -secondXBook or -secondHasOwnBookUCI true/false
1909 Indicates if the mentioned engine has its own opening book it
1910 should play from, rather than using the external book through
1911 XBoard. Default: depends on setting of the option
1912 `discourageOwnBooks'.
1914 -discourageOwnBooks true/false
1915 When set, newly loaded engines will be assumed to use the GUI book,
1916 unless they explicitly specify differently. Otherwise they will
1917 be assumed to not use the GUI book, unless the specify differently
1918 (e.g. with `firstXBook'). Default: false.
1921 Limits the use of the GUI book to the first n moves of each side.
1925 A value n from 0 to 100 tunes the choice of moves from the GUI
1926 books from totally random to best-only. Default: 50
1929 When this volatile option is specified, the probing algorithm of
1930 the GUI book is altered to always select the move that is most
1931 under-represented based on its performance. When all moves are
1932 played in approximately the right proportion, a book miss will be
1933 reported, to give the engine opportunity to explore a new move.
1934 In addition score of the moves will be kept track of during the
1935 session in a book buffer. By playing an match in this mode, a
1936 book will be built from scratch. The only output are the saved
1937 games, which can be converted to an actual book later, with the
1938 `Save Games as Book' command. This command can also be used to
1939 pre-fill the book buffer before adding new games based on the
1942 -fn string or -firstPgnName string
1943 -sn string or -secondPgnName string
1944 Indicates the name that should be used for the engine in PGN tags
1945 of engine-engine games. Intended to allow you to install verions
1946 of the same engine with different settings, and still distinguish
1950 Sets the size of the hash table to n MegaBytes. Together with the
1951 EGTB cache size this number is also used to calculate the memory
1952 setting of XBoard/WinBoard engines, for those that support the
1953 memory feature of the XBoard/WinBoard protocol. Default: 64.
1955 -defaultCacheSizeEGTB n
1956 Sets the size of the EGTB cache to n MegaBytes. Together with the
1957 hash-table size this number is also used to calculate the memory
1958 setting of XBoard/WinBoard engines, for those that support the
1959 memory feature of the XBoard/WinBoard protocol. Default: 4.
1961 -defaultPathEGTB filename
1962 Gives the name of the directory where the end-game tablebases are
1963 installed, for UCI engines. Default: "/usr/local/share/egtb".
1966 Specifies which end-game tables are installed on the computer, and
1967 where. The argument is a comma-separated list of format
1968 specifications, each specification consisting of a format name, a
1969 colon, and a directory path name, e.g.
1970 "nalimov:/usr/local/share/egtb". If the name part matches that of
1971 a format that the engine requests through a feature command,
1972 xboard will relay the path name for this format to the engine
1973 through an egtpath command. One egtpath command for each matching
1974 format will be sent. Popular formats are "nalimov" DTM tablebases
1975 and "scorpio" bitbases. Default: "".
1977 -firstChessProgramNames={names}
1978 This option lets you customize the drop-down list of chess engine
1979 names that appears in the `Load Engine' and `Match Options' dialog.
1980 It consists of a list of strings, one per line. When an engine is
1981 loaded, the corresponding line is prefixed with "-fcp ", and
1982 processed like it appeared on the command line. That means that
1983 apart from the engine command, it can contain any list of XBoard
1984 options you want to use with this engine. (Commonly used options
1985 here are -fd, -firstXBook, -fUCI, -variant.)
1987 The value of this option is gradually built as you load new engines
1988 through the `Load Engine' menu dialog, with `Add to list' ticked.
1989 To change it, edit your settings file with a plain text editor.
1991 4.3 Tournament options
1992 ======================
1994 -defaultMatchGames n
1995 Sets the number of games that will be used for a match between two
1996 engines started from the menu to n. Also used as games per pairing
1997 in other tournament formats. Default: 10.
2000 Specifies the duration of the pause between two games of a match
2001 or tournament between engines as n milliseconds. Especially
2002 engines that do not support ping need this option, to prevent that
2003 the move they are thinking on when an opponent unexpectedly
2004 resigns will be counted for the next game, (leading to illegal
2005 moves there). Default: 10000.
2007 -tf filename or -tourneyFile filename
2008 Specifies the name of the tournament file used in match mode to
2009 conduct a multi-player tournament. This file is a special
2010 settings file, which stores the description of the tournament
2011 (including progress info), through normal options (e.g. for time
2012 control, load and save files), and through some special-purpose
2013 options listed below.
2015 -tt number or -tourneyType number
2016 Specifies the type of tourney: 0 = round-robin, N>0 =
2017 (multi-)gauntlet with N gauntlet engines, -1 = Swiss through
2018 external pairing engine. Volatile option, but stored in tourney
2021 -cy number or -tourneyCycles number
2022 Specifies the number of cycles in a tourney. Volatile option, but
2023 stored in tourney file.
2026 The list is a multi-line text string that specifies engines
2027 occurring in the `firstChesProgramNames' list in the settings file
2028 by their (implied or explicitly given) nicknames, one engine per
2029 line. The mentioned engines will play in the tourney. Volatile
2030 option, but stored in tourney file.
2033 The string of +=- characters lists the result of all played games
2034 in a toruney. Games currently playing are listed as *, while a
2035 space indicates a game that is not yet played or playing .
2036 Volatile option, but stored in tourney file.
2038 -defaultTourneyName string
2039 Specifies the name of the tournament file XBoard should propose
2040 when the `Match Options' dialog is opened. Any %y, %M, %d, %h,
2041 %m, %s in the string are replaced by the current year, month, day
2042 of the month, hours, minutes, seconds of the current time,
2043 respectively, as two-digit number. A %Y would be replaced by the
2044 year as 4-digit number. Default: empty string.
2046 -pairingEngine filename
2047 Specifies the external program to be used to pair the participants
2048 in Swiss tourneys. XBoard communicates with this engine in the
2049 same way as it communicates with Chess engines. The only commands
2050 sent to the pairing engine are “results N string”, (where N is
2051 the number of participants, and string the results so far in the
2052 format of the results option), and “pairing N”, (where N is
2053 the number of the tourney game). To the latter the pairing engine
2054 should answer with “A-B”, where A and B are participant
2055 numbers (in the range 1-N). (There should be no reply to the
2056 results command.) Default: empty string.
2059 -afterTourney string
2060 When non-empty, the given string will be executed as a system
2061 command after each tournament game, orafterthe tourney completes,
2062 respectively. This can be used, for example, to autmatically run
2063 a cross-table generator on the PGN file where games are saved, to
2064 update the tourney standings. Default: ""
2066 -syncAfterRound true/false
2067 -syncAfterCycle true/false
2068 Controls whether different instances of XBoard concurrently
2069 running the same tournament will wait for each other. Defaults:
2070 sync after cycle, but not after round.
2073 Used to store the seed of the pseudo-random-number generator in the
2074 tourneyFile, so that separate instances of XBoard working on the
2075 same tourney can take coherent 'random' decisions, such as picking
2076 an opening for a given game number.
2081 -ics/-xics or -internetChessServerMode true/false
2082 Connect with an Internet Chess Server to play chess against its
2083 other users, observe games they are playing, or review games that
2084 have recently finished. Default: false.
2086 -icshost or -internetChessServerHost host
2087 The Internet host name or address of the chess server to connect
2088 to when in ICS mode. Default: `chessclub.com'. Another popular
2089 chess server to try is `freechess.org'. If your site doesn't have
2090 a working Internet name server, try specifying the host address in
2091 numeric form. You may also need to specify the numeric address
2092 when using the icshelper option with timestamp or timeseal (see
2095 -icsport or -internetChessServerPort port-number
2096 The port number to use when connecting to a chess server in ICS
2097 mode. Default: 5000.
2099 -icshelper or -internetChessServerHelper prog-name
2100 An external helper program used to communicate with the chess
2101 server. You would set it to "timestamp" for ICC (chessclub.com) or
2102 "timeseal" for FICS (freechess.org), after obtaining the correct
2103 version of timestamp or timeseal for your computer. See "help
2104 timestamp" on ICC and "help timeseal" on FICS. This option is
2105 shorthand for `-useTelnet -telnetProgram program'.
2107 -telnet/-xtelnet or -useTelnet true/false
2108 This option is poorly named; it should be called useHelper. If
2109 set to true, it instructs XBoard to run an external program to
2110 communicate with the Internet Chess Server. The program to use is
2111 given by the telnetProgram option. If the option is false (the
2112 default), XBoard opens a TCP socket and uses its own internal
2113 implementation of the telnet protocol to communicate with the ICS.
2116 -telnetProgram prog-name
2117 This option is poorly named; it should be called helperProgram.
2118 It gives the name of the telnet program to be used with the
2119 `gateway' and `useTelnet' options. The default is `telnet'. The
2120 telnet program is invoked with the value of
2121 `internetChessServerHost' as its first argument and the value of
2122 `internetChessServerPort' as its second argument. *Note
2126 If this option is set to a host name, XBoard communicates with the
2127 Internet Chess Server by using `rsh' to run the `telnetProgram' on
2128 the given host, instead of using its own internal implementation
2129 of the telnet protocol. You can substitute a different remote shell
2130 program for `rsh' using the `remoteShell' option described below.
2133 -internetChessServerCommPort or -icscomm dev-name
2134 If this option is set, XBoard communicates with the ICS through
2135 the given character I/O device instead of opening a TCP connection.
2136 Use this option if your system does not have any kind of Internet
2137 connection itself (not even a SLIP or PPP connection), but you do
2138 have dial-up access (or a hardwired terminal line) to an Internet
2139 service provider from which you can telnet to the ICS.
2141 The support for this option in XBoard is minimal. You need to set
2142 all communication parameters and tty modes before you enter XBoard.
2144 Use a script something like this:
2146 stty raw -echo 9600 > /dev/tty00
2147 xboard -ics -icscomm /dev/tty00
2149 Here replace `/dev/tty00' with the name of the device that your
2150 modem is connected to. You might have to add several more options
2151 to these stty commands. See the man pages for `stty' and `tty' if
2152 you run into problems. Also, on many systems stty works on its
2153 standard input instead of standard output, so you have to use `<'
2156 If you are using linux, try starting with the script below.
2157 Change it as necessary for your installation.
2160 # configure modem and fire up XBoard
2164 stty 2400 ; stty raw ; stty hupcl ; stty -clocal
2165 stty ignbrk ; stty ignpar ; stty ixon ; stty ixoff
2166 stty -iexten ; stty -echo
2168 xboard -ics -icscomm /dev/modem
2169 After you start XBoard in this way, type whatever commands are
2170 necessary to dial out to your Internet provider and log in. Then
2171 telnet to ICS, using a command like `telnet chessclub.com 5000'.
2172 Important: See the paragraph below about extra echoes, in *note
2175 -icslogon or -internetChessServerLogonScript file-name
2176 Whenever XBoard connects to the Internet Chess Server, if it finds
2177 a file with the name given in this option, it feeds the file's
2178 contents to the ICS as commands. The default file name is `.icsrc'.
2179 Usually the first two lines of the file should be your ICS user
2180 name and password. The file can be either in $CHESSDIR, in
2181 XBoard's working directory if CHESSDIR is not set, or in your home
2185 If you experience trouble logging on to an ICS when using the
2186 `-icslogon' option, inserting some delay between characters of the
2187 logon script may help. This option adds `delay' milliseconds of
2188 delay between characters. Good values to try are 100 and 250.
2190 -icsinput/-xicsinput or -internetChessServerInputBox true/false
2191 Sets the ICS Input Box menu option. *Note Mode Menu::. Default:
2194 -autocomm/-xautocomm or -autoComment true/false
2195 Sets the Auto Comment menu option. *Note Options Menu::. Default:
2198 -autoflag/-xautoflag or -autoCallFlag true/false
2199 Sets the Auto Flag menu option. *Note Options Menu::. Default:
2202 -autobs/-xautobs or -autoObserve true/false
2203 Sets the Auto Observe menu option. *Note Options Menu::. Default:
2207 Enables kibitzing of the engines last thinking output (depth,
2208 score, time, speed, PV) before it moved to the ICS, in zippy mode.
2209 The option `showThinking' must be switched on for this option to
2210 work. Also diverts similar kibitz information of an opponent
2211 engine that is playing you through the ICS to the engine-output
2212 window, as if the engine was playing locally.
2214 -seekGraph true/false or -sg
2215 Enables displaying of the seek graph by left-clicking the board
2216 when you are logged on to an ICS and currently idle. The seek
2217 graph show all players currently seeking games on the ICS, plotted
2218 according to their rating and the time control of the game they
2219 seek, in three different colors (for rated, unrated and wild
2220 games). Computer ads are displayed as squares, human ads are dots.
2223 -autoRefresh true/false
2224 Enables automatic updating of the seek graph, by having the ICS
2225 send a running update of all newly placed and removed seek ads.
2226 This consumes a substantial amount of communication bandwidth, and
2227 is only supported for FICS and ICC. Default: false.
2229 -backgroundObserve true/false
2230 When true, boards sent to you by the ICS from other games while
2231 you are playing (e.g. because you are observing them) will not be
2232 automatically displayed. Only a summary of time left and material
2233 of both players will appear in the message field above the board.
2234 XBoard will remember the last board it has received this way, and
2235 will display it in stead of the position in your own game when you
2236 press the right mouse button. No other information is stored on
2237 such games observed in the background; you cannot save such a game
2238 later, or step through its moves. This feature is provided solely
2239 for the benefit of bughouse players, to enable them to peek at
2240 their partner's game without the need to logon twice. Default:
2243 -dualBoard true/false
2244 In combination with -backgroundObserve true, this option will
2245 display the board of the background game side by side with that of
2246 your own game, so you can have it in view permanently. Any board
2247 or holdings info coming in will be displayed on the secondary
2248 board immediately. This feature is still experimental and largely
2249 unfinished. There is no animation or highlighting of moves on the
2250 secondary board. Default: false.
2252 -disguisePromotedPieces true/false
2253 When set promoted Pawns in crazyhouse/bughouse are displayed
2254 identical to primordial pieces of the same type, rather than
2255 distinguishable. Default: true.
2257 -moves/-xmoves or -getMoveList true/false
2258 Sets the Get Move List menu option. *Note Options Menu::.
2261 -alarm/-xalarm or -icsAlarm true/false
2262 Sets the ICS Alarm menu option. *Note Options Menu::. Default:
2266 Sets the time in milliseconds for the ICS Alarm menu option.
2267 *Note Options Menu::. Default: 5000.
2269 lowTimeWarning true/false
2270 Controls a color change of the board as a warning your time is
2271 running out. *Note Options Menu::. Default: false.
2273 -pre/-xpre \fRor\fB -premove true/false
2274 Sets the Premove menu option. *Note Options Menu::. Default: true.
2276 -prewhite/-xprewhite or -premoveWhite
2277 -preblack/-xpreblack or -premoveBlack
2278 -premoveWhiteText string
2279 -premoveBlackText string
2280 Set the menu options for specifying the first move for either
2281 color. *Note Options Menu::. Defaults: false and empty strings,
2284 -quiet/-xquiet or -quietPlay true/false
2285 Sets the Quiet Play menu option. *Note Options Menu::. Default:
2288 -colorizeMessages or -colorize/-xcolorize
2289 Setting colorizeMessages to true tells XBoard to colorize the
2290 messages received from the ICS. Colorization works only if your
2291 xterm supports ISO 6429 escape sequences for changing text colors.
2294 -colorShout foreground,background,bold
2295 -colorSShout foreground,background,bold
2296 -colorCShout foreground,background,bold
2297 -colorChannel1 foreground,background,bold
2298 -colorChannel foreground,background,bold
2299 -colorKibitz foreground,background,bold
2300 -colorTell foreground,background,bold
2301 -colorChallege foreground,background,bold
2302 -colorRequest foreground,background,bold
2303 -colorSeek foreground,background,bold
2304 -colorNormal foreground,background,bold
2305 These options set the colors used when colorizing ICS messages.
2306 All ICS messages are grouped into one of these categories: shout,
2307 sshout, channel 1, other channel, kibitz, tell, challenge, request
2308 (including abort, adjourn, draw, pause, and takeback), or normal
2309 (all other messages).
2311 Each foreground or background argument can be one of the following:
2312 black, red, green, yellow, blue, magenta, cyan, white, or default.
2313 Here "default" means the default foreground or background color of
2314 your xterm. Bold can be 1 or 0. If background is omitted,
2315 "default" is assumed; if bold is omitted, 0 is assumed.
2317 -soundProgram progname
2318 If this option is set to a sound-playing program that is installed
2319 and working on your system, XBoard can play sound files when
2320 certain events occur, listed below. The default program name is
2321 "play". If any of the sound options is set to "$", the event
2322 rings the terminal bell by sending a ^G character to standard
2323 output, instead of playing a sound file. If an option is set to
2324 the empty string "", no sound is played for that event.
2326 -soundDirectory directoryname
2327 This option specifies where XBoard will look for sound files, when
2328 these are not given as an absolute path name.
2330 -soundShout filename
2331 -soundSShout filename
2332 -soundCShout filename
2333 -soundChannel filename
2334 -soundChannel1 filename
2335 -soundKibitz filename
2337 -soundChallenge filename
2338 -soundRequest filename
2340 These sounds are triggered in the same way as the colorization
2341 events described above. They all default to "", no sound. They
2342 are played only if the colorizeMessages is on. CShout is
2343 synonymous with SShout.
2346 This sound is used by the Move Sound menu option. Default: "$".
2348 -soundIcsAlarm filename
2349 This sound is used by the ICS Alarm menu option. Default: "$".
2351 -soundIcsWin filename
2352 This sound is played when you win an ICS game. Default: "" (no
2355 -soundIcsLoss filename
2356 This sound is played when you lose an ICS game. Default: "" (no
2359 -soundIcsDraw filename
2360 This sound is played when you draw an ICS game. Default: "" (no
2363 -soundIcsUnfinished filename
2364 This sound is played when an ICS game that you are participating
2365 in is aborted, adjourned, or otherwise ends inconclusively.
2366 Default: "" (no sound).
2368 4.5 Load and Save options
2369 =========================
2371 -lgf or -loadGameFile file
2372 -lgi or -loadGameIndex index
2373 If the `loadGameFile' option is set, XBoard loads the specified
2374 game file at startup. The file name `-' specifies the standard
2375 input. If there is more than one game in the file, XBoard pops up
2376 a menu of the available games, with entries based on their PGN
2377 (Portable Game Notation) tags. If the `loadGameIndex' option is
2378 set to `N', the menu is suppressed and the N th game found in the
2379 file is loaded immediately. The menu is also suppressed if
2380 `matchMode' is enabled or if the game file is a pipe; in these
2381 cases the first game in the file is loaded immediately. Use the
2382 `pxboard' shell script provided with XBoard if you want to pipe in
2383 files containing multiple games and still see the menu. If the
2384 loadGameIndex specifies an index -1, this triggers auto-increment
2385 of the index in `matchMode', which means that after every game the
2386 index is incremented by one, causing each game of the match to be
2387 played from the next game in the file. Similarly, specifying an
2388 index value of -2 causes the index to be incremented every two
2389 games, so that each game in the file is used twice (with reversed
2390 colors). The `rewindIndex' option causes the index to be reset to
2391 the first game of the file when it has reached a specified value.
2394 Causes a position file or game file to be rewound to its beginning
2395 after n positions or games in auto-increment `matchMode'. See
2396 `loadPositionIndex' and `loadGameIndex'. default: 0 (no rewind).
2398 -td or -timeDelay seconds
2399 Time delay between moves during `Load Game' or `Analyze File'.
2400 Fractional seconds are allowed; try `-td 0.4'. A time delay value
2401 of -1 tells XBoard not to step through game files automatically.
2404 -sgf or -saveGameFile file
2405 If this option is set, XBoard appends a record of every game
2406 played to the specified file. The file name `-' specifies the
2409 -autosave/-xautosave or -autoSaveGames true/false
2410 Sets the Auto Save menu option. *Note Options Menu::. Default:
2411 false. Ignored if `saveGameFile' is set.
2413 -onlyOwnGames true/false
2414 Suppresses auto-saving of ICS observed games. Default: false.
2416 -lpf or -loadPositionFile file
2417 -lpi or -loadPositionIndex index
2418 If the `loadPositionFile' option is set, XBoard loads the
2419 specified position file at startup. The file name `-' specifies the
2420 standard input. If the `loadPositionIndex' option is set to N, the
2421 Nth position found in the file is loaded; otherwise the first
2422 position is loaded. If the loadPositionIndex specifies an index
2423 -1, this triggers auto-increment of the index in `matchMode',
2424 which means that after every game the index is incremented by one,
2425 causing each game of the match to be played from the next position
2426 in the file. Similarly, specifying an index value of -2 causes the
2427 index to be incremented every two games, so that each position in
2428 the file is used twice (with the engines playing opposite colors).
2429 The `rewindIndex' option causes the index to be reset to the first
2430 position of the file when it has reached a specified value.
2432 -spf or -savePositionFile file
2433 If this option is set, XBoard appends the final position reached
2434 in every game played to the specified file. The file name `-'
2435 specifies the standard output.
2437 -pgnExtendedInfo true/false
2438 If this option is set, XBoard saves depth, score and time used for
2439 each move that the engine found as a comment in the PGN file.
2442 -pgnEventHeader string
2443 Sets the name used in the PGN event tag to string. Default:
2444 "Computer Chess Game".
2446 -pgnNumberTag true/false
2447 Include the (unique) sequence number of a tournament game into the
2448 saved PGN file as a 'number' tag. Default: false.
2450 -saveOutOfBookInfo true/false
2451 Include the information on how the engine(s) game out of its
2452 opening book in a special 'annotator' tag with the PGN file.
2455 -oldsave/-xoldsave or -oldSaveStyle true/false
2456 Sets the Old Save Style menu option. *Note Options Menu::.
2459 -gameListTags string
2460 The character string lists the PGN tags that should be printed in
2461 the Game List, and their order. The meaning of the codes is
2462 e=event, s=site, d=date, o=round, p=players, r=result, w=white
2463 Elo, b=black Elo, t=time control, v=variant, a=out-of-book info,
2464 c=result comment. Default: "eprd"
2466 -ini or -settingsFile filename
2467 -saveSettingsFile filename
2469 When XBoard encounters an option -settingsFile (or -ini for short),
2470 or @filename, it tries to read the mentioned file, and substitutes
2471 the contents of it (presumaby more command-line options) in place
2472 of the option. In the case of -ini or -settingsFile, the name of
2473 a successfully read settings file is also remembered as the file
2474 to use for saving settings (automatically on exit, or on user
2475 command). An option of the form @filename does not affect saving.
2476 The option -saveSettingsFile does specify a name of the file to use
2477 for saving, without reading any options from it, and is thus also
2478 effective when the file did not exist yet. So the settings will
2479 be saved to the file specified in the last -saveSettingsFile or
2480 succesfull -settingsFile / -ini command, if any, and in
2481 /etc/xboard/xboard.conf otherwise. Usualy the latter is only
2482 accessible for the system administrator, though, and will be used
2483 to contain system-wide default setings, amongst which a
2484 -saveSettingsFile and -settingsFile options to specify a settings
2485 file accessible to the individual user, such as ~/.xboardrc in the
2486 user's home directory.
2488 -saveSettingsOnExit true/false
2489 Controls saving of options on the settings file. *Note Options
2490 Menu::. Default: true.
2492 4.6 User interface options
2493 ==========================
2499 These and most other standard Xt options are accepted.
2502 Suppresses all GUI functions of XBoard (to speed up automated
2503 ultra-fast engine-engine games, which you don't want to watch).
2504 There will be no board or clock updates, no printing of moves, and
2505 no update of the icon on the task bar in this mode.
2508 This option controls the drawing of player logos next to the
2509 clocks. The integer N specifies the width of the logo in pixels;
2510 the logo height will always be half the width. When N = 0, no
2511 logos will be diplayed. Default: 0.
2513 -firstLogo imagefile
2514 -secondLogo imagefile
2515 Specify the images to be used as player logos when `logoSize' is
2516 non-zero, next to the white and black clocks, respectively.
2518 -autoLogo true/false
2521 When `autoLogo' is set, XBoard will search for a PNG image file
2522 with the name of the engine or ICS in the directory specified by
2525 -recentEngines number
2526 -recentEngineList list
2527 When the number is larger than zero, it determines how many
2528 recently used engines will be appended at the bottom of the
2529 `Engines' menu. The engines will be saved in your settings file
2530 as the option `recentEngineList', by their nicknames, and the most
2531 recently used one will always be sorted to the top. If the list
2532 after that is longer than the specified number, the last one is
2533 discarded. Changes in the list will only become visible the next
2534 session, provided you saved the settings. Default: 6.
2536 -oneClickMove true/false
2537 When set, this option allows you to enter moves by only clicking
2538 the to- or from-square, when only a single legal move to or from
2539 that square is possible. Double-clicking a piece (or clicking an
2540 already selected piece) will instruct that piece to make the only
2541 capture it can legally do. Default: false.
2543 -movesound/-xmovesound or -ringBellAfterMoves true/false
2544 Sets the Move Sound menu option. *Note Options Menu::. Default:
2545 false. For compatibility with old XBoard versions, -bell/-xbell
2546 are also accepted as abbreviations for this option.
2548 -exit/-xexit or -popupExitMessage true/false
2549 Sets the Popup Exit Message menu option. *Note Options Menu::.
2552 -popup/-xpopup or -popupMoveErrors true/false
2553 Sets the Popup Move Errors menu option. *Note Options Menu::.
2556 -queen/-xqueen or -alwaysPromoteToQueen true/false
2557 Sets the Always Queen menu option. *Note Options Menu::.
2560 -sweepPromotions true/false
2561 Sets the `Almost Always Promote to Queen' menu option. *Note
2562 Options Menu::. Default: false.
2564 -legal/-xlegal or -testLegality true/false
2565 Sets the Test Legality menu option. *Note Options Menu::.
2568 -size or -boardSize (sizeName | n1,n2,n3,n4,n5,n6,n7)
2569 Determines how large the board will be, by selecting the pixel size
2570 of the pieces and setting a few related parameters. The sizeName
2571 can be one of: Titanic, giving 129x129 pixel pieces, Colossal
2572 116x116, Giant 108x108, Huge 95x95, Big 87x87, Large 80x80, Bulky
2573 72x72, Medium 64x64, Moderate 58x58, Average 54x54, Middling
2574 49x49, Mediocre 45x45, Small 40x40, Slim 37x37, Petite 33x33,
2575 Dinky 29x29, Teeny 25x25, or Tiny 21x21. Xboard installs with a
2576 set of scalable (svg) piece images, which it scales to any of the
2577 requested sizes. The square size can further be continuously
2578 scaled by sizing the board window, but this only adapts the size
2579 of the pieces, and has no effect on the width of the grid lines or
2580 the font choice (both of which would depend on he selected
2581 boardSize). The default depends on the size of your screen; it is
2582 approximately the largest size that will fit without clipping.
2584 You can select other sizes or vary other layout parameters by
2585 providing a list of comma-separated values (with no spaces) as the
2586 argument. You do not need to provide all the values; for any you
2587 omit from the end of the list, defaults are taken from the nearest
2588 built-in size. The value `n1' gives the piece size, `n2' the
2589 width of the black border between squares, `n3' the desired size
2590 for the clockFont, `n4' the desired size for the coordFont, `n5'
2591 the desired size for the messageFont, `n6' the smallLayout flag (0
2592 or 1), and `n7' the tinyLayout flag (0 or 1). All dimensions are
2593 in pixels. If the border between squares is eliminated (0 width),
2594 the various highlight options will not work, as there is nowhere
2595 to draw the highlight. If smallLayout is 1 and `titleInWindow' is
2596 true, the window layout is rearranged to make more room for the
2597 title. If tinyLayout is 1, the labels on the menu bar are
2598 abbreviated to one character each and the buttons in the button
2599 bar are made narrower.
2602 When n >= 0, this forces the width of the black border between
2603 squares to n pixels for any board size. Mostly used to suppress
2604 the grid entirely by setting n = 0, e.g. in xiangqi or just
2605 getting a prettier picture. When n < 0 this the size-dependent
2606 width of the grid lines is used. Default: -1.
2608 -coords/-xcoords or -showCoords true/false
2609 Sets the Show Coords menu option. *Note Options Menu::. Default:
2610 false. The `coordFont' option specifies what font to use.
2612 -autoraise/-xautoraise or -autoRaiseBoard true/false
2613 Sets the Auto Raise Board menu option. *Note Options Menu::.
2616 -autoflip/-xautoflip or -autoFlipView true/false
2617 Sets the Auto Flip View menu option. *Note Options Menu::.
2620 -flip/-xflip or -flipView true/false
2621 If Auto Flip View is not set, or if you are observing but not
2622 participating in a game, then the positioning of the board at the
2623 start of each game depends on the flipView option. If flipView is
2624 false (the default), the board is positioned so that the white
2625 pawns move from the bottom to the top; if true, the black pawns
2626 move from the bottom to the top. In any case, the Flip menu
2627 option (see *note Options Menu::) can be used to flip the board
2628 after the game starts.
2630 -title/-xtitle or -titleInWindow true/false
2631 If this option is true, XBoard displays player names (for ICS
2632 games) and game file names (for `Load Game') inside its main
2633 window. If the option is false (the default), this information is
2634 displayed only in the window banner. You probably won't want to
2635 set this option unless the information is not showing up in the
2636 banner, as happens with a few X window managers.
2638 -buttons/-xbuttons or -showButtonBar True/False
2639 If this option is False, xboard omits the [<<] [<] [P] [>] [>>]
2640 button bar from the window, allowing the message line to be wider.
2641 You can still get the functions of these buttons using the menus
2642 or their keyboard shortcuts. Default: true.
2645 The score interval (-1,1) is blown up on the vertical axis of the
2646 Evaluation Graph by the given factor. Default: 1
2649 Score below n (centiPawn) are plotted as 0 in the Evaluation Graph.
2652 -mono/-xmono or -monoMode true/false
2653 Determines whether XBoard displays its pieces and squares with two
2654 colors (true) or four (false). You shouldn't have to specify
2655 `monoMode'; XBoard will determine if it is necessary.
2657 -showTargetSquares true/false
2658 Determines whether XBoard can highlight the squares a piece has
2659 legal moves to, when you grab that piece with the mouse. Default:
2665 These options enable flashing of pieces when they land on their
2666 destination square. `flashCount' tells XBoard how many times to
2667 flash a piece after it lands on its destination square.
2668 `flashRate' controls the rate of flashing (flashes/sec).
2669 Abbreviations: `flash' sets flashCount to 3. `xflash' sets
2670 flashCount to 0. Defaults: flashCount=0 (no flashing),
2673 -highlight/-xhighlight or -highlightLastMove true/false
2674 Sets the Highlight Last Move menu option. *Note Options Menu::.
2677 -highlightMoveWithArrow true/false
2678 Sets the Highlight with Arrow menu option. *Note Options Menu::.
2681 -blind/-xblind or -blindfold true/false
2682 Sets the Blindfold menu option. *Note Options Menu::. Default:
2685 -periodic/-xperiodic or -periodicUpdates true/false
2686 Controls updating of current move andnode counts in analysis mode.
2691 Causes the PV in thinking output of the mentioned engine to be
2692 converted to SAN before it is further processed. Warning: this
2693 might lose engine output not understood by the parser, and uses a
2694 lot of CPU power. Default: the PV is displayed exactly as the
2697 -showEvalInMoveHistory true/false
2698 Controls whether the evaluation scores and search depth of engine
2699 moves are displayed with the move in the move-history window.
2703 The font used for the clocks. If the option value is a pattern
2704 that does not specify the font size, XBoard tries to choose an
2705 appropriate font for the board size being used. Default:
2706 -*-helvetica-bold-r-normal-*-*-*-*-*-*-*-*.
2709 The font used for rank and file coordinate labels if `showCoords'
2710 is true. If the option value is a pattern that does not specify
2711 the font size, XBoard tries to choose an appropriate font for the
2712 board size being used. Default:
2713 -*-helvetica-bold-r-normal-*-*-*-*-*-*-*-*.
2716 The font used for popup dialogs, menus, comments, etc. If the
2717 option value is a pattern that does not specify the font size,
2718 XBoard tries to choose an appropriate font for the board size
2719 being used. Default: -*-helvetica-medium-r-normal-*-*-*-*-*-*-*-*.
2721 -fontSizeTolerance tol
2722 In the font selection algorithm, a nonscalable font will be
2723 preferred over a scalable font if the nonscalable font's size
2724 differs by `tol' pixels or less from the desired size. A value of
2725 -1 will force a scalable font to always be used if available; a
2726 value of 0 will use a nonscalable font only if it is exactly the
2727 right size; a large value (say 1000) will force a nonscalable font
2728 to always be used if available. Default: 4.
2730 -pid or -pieceImageDirectory dir
2731 This options control what piece images xboard uses. XBoard will
2732 look in the specified directory for an image in png or svg format
2733 for every piece type, with names like BlackQueen.svg,
2734 WhiteKnight.svg etc. When neither of these is found (or no valid
2735 directory is specified) XBoard will use the svg piece that was
2736 installed with it (from the source-tree directory `svg'). Both
2737 svg and png images will be scaled by XBoard to the required size,
2738 but the png pieces lose much in quality when scaled too much.
2740 -whitePieceColor color
2741 -blackPieceColor color
2742 -lightSquareColor color
2743 -darkSquareColor color
2744 -highlightSquareColor color
2745 -preoveHighlightColor color
2746 -lowTimeWarningColor color
2747 Colors to use for the pieces, squares, and square highlights.
2750 -whitePieceColor #FFFFCC
2751 -blackPieceColor #202020
2752 -lightSquareColor #C8C365
2753 -darkSquareColor #77A26D
2754 -highlightSquareColor #FFFF00
2755 -premoveHighlightColor #FF0000
2756 -lowTimeWarningColor #FF0000
2758 On a grayscale monitor you might prefer:
2760 -whitePieceColor gray100
2761 -blackPieceColor gray0
2762 -lightSquareColor gray80
2763 -darkSquareColor gray60
2764 -highlightSquareColor gray100
2765 -premoveHighlightColor gray70
2766 -lowTimeWarningColor gray70
2768 The PieceColor options only work properly if the image files
2769 defining the pieces were pure black & white (possibly anti-aliased
2770 to produce gray scales and semi-transparancy), like the pieces
2771 images that come with the install. Their effect on colored pieces
2772 is undefined. The SquareColor option only have an effect when no
2773 board textures are used.
2775 -trueColors true/false
2776 When set, this option suppresses the effect of the PieceColor
2777 options mentioned above. This is recommended for images that are
2780 -useBoardTexture true/false
2781 -liteBackTextureFile filename
2782 -darkBackTextureFile filename
2783 Indicate the png image files to be used for drawing the board
2784 squares, and if they should be used rather than using simple
2785 colors. The algorithm for cutting squares out of a given bitmap
2786 is such that the picture is perfectly reproduced when a bitmap the
2787 size of the complete board is given. Default: false and ""
2789 -drag/-xdrag or -animateDragging true/false
2790 Sets the Animate Dragging menu option. *Note Options Menu::.
2793 -animate/-xanimate or -animateMoving true/false
2794 Sets the Animate Moving menu option. *Note Options Menu::.
2798 Number of milliseconds delay between each animation frame when
2799 Animate Moves is on.
2801 -autoDisplayComment true/false
2802 -autoDisplayTags true/false
2803 If set to true, these options cause the window with the move
2804 comments, and the window with PGN tags, respectively, to pop up
2805 automatically when such tags or comments are encountered during
2806 the replaying a stored or loaded game. Default: true.
2808 -pasteSelection true/false
2809 If this option is set to true, the Paste Position and Paste Game
2810 options paste from the currently selected text. If false, they
2811 paste from the clipboard. Default: false.
2813 -autoCopyPV true|false
2814 When this option is set, the position displayed on the board when
2815 you terminate a PV walk (initiated by a right-click on board or
2816 engine-output window) will be automatically put on the clipboard
2817 as FEN. Default: false.
2819 -dropMenu true|false
2820 This option allows you to emulate old behavior, where the right
2821 mouse button brings up the (now deprecated) drop menu rather than
2822 displaying the position at the end of the principal variation.
2825 -pieceMenu true|false
2826 This option allows you to emulate old behavior, where the right
2827 mouse button brings up the (now deprecated) piece menu in Edit
2828 Position mode. From this menu you can select the piece to put on
2829 the square you clicked to bring up the menu, or select items such
2830 as `clear board'. You can also `promote' or `demote' a clicked
2831 piece to convert it into an unorthodox piece that is not directly
2832 in the menu, or give the move to `black' or `white'.
2834 -variations true|false
2835 When this option is on, you can start new variations in Edit Game
2836 or Analyze mode by holding the Shift key down while entering a
2837 move. When it is off, the Shift key will be ignored. Default:
2840 -appendPV true|false
2841 When this option is on, right-clicking a PV in the Engine Output
2842 window will play the first move of that PV in Analyze mode, or as
2843 many moves as you walk through by moving the mouse. Default:
2846 -absoluteAnalysisScores true|false
2847 When true, scores on the Engine Output window during analysis will
2848 be printed from the white point-of-view, rather than the
2849 side-to-move point-of-view. Default: False.
2851 -scoreWhite true|false
2852 When true, scores will always be printed from the white
2853 point-of-view, rather than the side-to-move point-of-view.
2856 4.7 Adjudication Options
2857 ========================
2859 -adjudicateLossThreshold n
2860 If the given value is non-zero, XBoard adjudicates the game as a
2861 loss if both engines agree for a duration of 6 consecutive ply
2862 that the score is below the given score threshold for that engine.
2863 Make sure the score is interpreted properly by XBoard, using
2864 `-firstScoreAbs' and `-secondScoreAbs' if needed. Default: 0 (no
2867 -adjudicateDrawMoves n
2868 If the given value is non-zero, XBoard adjudicates the game as a
2869 draw if after the given number of moves it was not yet decided.
2870 Default: 0 (no adjudication)
2872 -checkMates true/false
2873 If this option is set, XBoard detects all checkmates and
2874 stalemates, and ends the game as soon as they occur.
2875 Legality-testing must be switched on for this option to work.
2878 -testClaims true/false
2879 If this option is set, XBoard verifies all result claims made by
2880 engines, and those who send false claims will forfeit the game
2881 because of it. Legality-testing must be switched on for this
2882 option to work. Default: true
2884 -materialDraws true/false
2885 If this option is set, XBoard adjudicates games as draws when
2886 there is no sufficient material left to inflict a checkmate. This
2887 applies to KBKB with like bishops (any number, actually), and to
2888 KBK, KNK and KK. Legality-testing must be switched on for this
2889 option to work. Default: true
2891 -trivialDraws true/false
2892 If this option is set, XBoard adjudicates games as draws that
2893 cannot be usually won without opponent cooperation. This applies
2894 to KBKB with unlike bishops, and to KBKN, KNKN, KNNK, KRKR and
2895 KQKQ. The draw is called after 6 ply into these end-games, to
2896 allow quick mates that can occur in some exceptional positions to
2897 be found by the engines. KQKQ does not really belong in this
2898 category, and might be taken out in the future. (When
2899 bitbase-based adjudications are implemented.) Legality-testing
2900 must be on for this option to work. Default: false
2903 If the given value is non-zero, XBoard adjudicates the game as a
2904 draw after the given number of consecutive reversible moves.
2905 Engine draw claims are always accepted after 50 moves,
2906 irrespective of the given value of n.
2909 If the given value is non-zero, xboard adjudicates the game as a
2910 draw if a position is repeated the given number of times. Engines
2911 draw claims are always accepted after 3 repeats, (on the 3rd
2912 occurrence, actually), irrespective of the value of n. Beware
2913 that positions that have different castling or en-passant rights
2914 do not count as repeats, XBoard is fully e.p. and castling aware!
2919 -ncp/-xncp or -noChessProgram true/false
2920 If this option is true, XBoard acts as a passive chessboard; it
2921 does not start a chess engine at all. Turning on this option also
2922 turns off clockMode. Default: false.
2925 -viewerOptions string
2926 Presence of the volatile option `viewer' on the command line will
2927 cause the value of the persistent option `viewerOptions' as stored
2928 in the settings file to be appended to the command line. The
2929 `view' option will be used by desktop associations with game or
2930 position file types, so that `viewerOptions' can be used to
2931 configure the exact mode XBoard will start in when it should act
2932 on such a file (e.g. in -ncp mode, or analyzing with your favorite
2933 engine). The options are also automatically appended when Board is
2934 invoked with a single argument not being an option name, which is
2935 then assumed to be the name of a `loadGameFile' or (when the name
2936 ends in .fen) a `loadPositionFile'. Default: "-ncp
2937 -engineOutputUp false -saveSettingsOnExit false".
2939 -tourneyOptions string
2940 When XBoard is invoked with a single argument that is a file with
2941 .trn extension, it will assume this argument to be the value of a
2942 `tourneyFile' option, and apped the value of the persistent option
2943 `tourneyOptions' as stored in the settings file to the command
2944 line. Thus the value of `tourneyOptions' can be used to configure
2945 XBoard to automatically start running a tournament when it should
2946 act on such a file. Default: "-ncp -mm -saveSettingsOnExit false".
2948 -mode or -initialMode modename
2949 If this option is given, XBoard selects the given modename from
2950 the Mode menu after starting and (if applicable) processing the
2951 loadGameFile or loadPositionFile option. Default: "" (no
2952 selection). Other supported values are MachineWhite,
2953 MachineBlack, TwoMachines, Analysis, AnalyzeFile, EditGame,
2954 EditPosition, and Training.
2957 Activates preliminary, partial support for playing chess variants
2958 against a local engine or editing variant games. This flag is not
2959 needed in ICS mode. Recognized variant names are:
2962 wildcastle Shuffle chess, king can castle from d file
2963 nocastle Shuffle chess, no castling allowed
2964 fischerandom Fischer Random shuffle chess
2965 bughouse Bughouse, ICC/FICS rules
2966 crazyhouse Crazyhouse, ICC/FICS rules
2967 losers Lose all pieces or get mated (ICC wild 17)
2968 suicide Lose all pieces including king (FICS)
2969 giveaway Try to have no legal moves (ICC wild 26)
2970 twokings Weird ICC wild 9
2971 kriegspiel Opponent's pieces are invisible
2972 atomic Capturing piece explodes (ICC wild 27)
2973 3check Win by giving check 3 times (ICC wild 25)
2974 shatranj An ancient precursor of chess (ICC wild 28)
2975 xiangqi Chinese Chess (on a 9x10 board)
2976 shogi Japanese Chess (on a 9x9 board & piece drops)
2977 capablanca Capablanca Chess (10x8 board, with Archbishop
2978 and Chancellor pieces)
2979 gothic similar, with a better initial position
2980 caparandom An FRC-like version of Capablanca Chess (10x8)
2981 janus A game with two Archbishops (10x8 board)
2982 courier Medieval intermediate between shatranj and
2983 modern Chess (on 12x8 board)
2984 falcon Patented 10x8 variant with two Falcon pieces
2985 berolina Pawns capture straight ahead, and move diagonal
2986 cylinder Pieces wrap around the board edge
2987 knightmate King moves as Knight, and vice versa
2988 super Superchess (shuffle variant with 4 exo-pieces)
2989 makruk Thai Chess (shatranj-like, P promotes on 6th rank)
2990 spartan Spartan Chess (black has unorthodox pieces)
2991 fairy A catchall variant in which all piece types
2992 known to XBoard can participate (8x8)
2993 unknown Catchall for other unknown variants
2995 NOT ALL BOARDSIZES PROVIDE A COMPLETE SET OF BUILT-IN BITMAPS FOR
2996 ALL UN-ORTHODOX PIECES, though. Only in `boardSize' middling and
2997 bulky all 22 piece types are provided, while -boardSize petite has
2998 most of them. Archbishop, Chancellor and Amazon are supported in
2999 every size from petite to bulky. Kings or Amazons are substituted
3000 for missing bitmaps. You can still play variants needing
3001 un-orthodox pieces in other board sizes providing your own bitmaps
3002 through the `bitmapDirectory' or `pixmapDirectory' options.
3004 In the shuffle variants, XBoard now does shuffle the pieces,
3005 although you can still do it by hand using Edit Position. Some
3006 variants are supported only in ICS mode, including bughouse, and
3007 kriegspiel. The winning/drawing conditions in crazyhouse
3008 (off-board interposition on mate) are not fully understood, but
3009 losers, suicide, giveaway, atomic, and 3check should be OK.
3010 Berolina and cylinder chess can only be played with legality
3011 testing off. In crazyhouse, XBoard now does keep track of
3012 off-board pieces. In shatranj it does implement the baring rule
3013 when mate detection is switched on.
3016 Allows you to set a non-standard number of board ranks in any
3017 variant. If the height is given as -1, the default height for the
3018 variant is used. Default: -1
3021 Allows you to set a non-standard number of board files in any
3022 variant. If the width is given as -1, the default width for the
3023 variant is used. With a non-standard width, the initial position
3024 will always be an empty board, as the usual opening array will not
3028 Allows you to set a non-standard size for the holdings in any
3029 variant. If the size is given as -1, the default holdings size
3030 for the variant is used. The first N piece types will go into the
3031 holdings on capture, and you will be able to drop them on the
3032 board in stead of making a normal move. If size equals 0, there
3033 will be no holdings. Default: -1
3035 -defaultFrcPosition N
3036 Specifies the number of the opening position in shuffle games like
3037 Chess960. A value of -1 means the position is randomly generated
3038 by XBoard at the beginning of every game. Default: -1
3040 -pieceToCharTable string
3041 The characters that are used to represent the piece types XBoard
3042 knows in FEN diagrams and SAN moves. The string argument has to
3043 have an even length (or it will be ignored), as white and black
3044 pieces have to be given separately (in that order). The last
3045 letter for each color will be the King. The letters before that
3046 will be PNBRQ and then a whole host of fairy pieces in an order
3047 that has not fully crystallized yet (currently FEACWMOHIJGDVSLU,
3048 F=Ferz, Elephant, A=Archbishop, C=Chancellor, W=Wazir, M=Commoner,
3049 O=Cannon, H=Nightrider). You should list at least all pieces that
3050 occur in the variant you are playing. If you have less than 44
3051 characters in the string, the pieces not mentioned will get
3052 assigned a period, and you will not be able to distinguish them in
3053 FENs. You can also explicitly assign pieces a period, in which
3054 case they will not be counted in deciding which captured pieces
3055 can go into the holdings. A tilde '~' as a piece name does mean
3056 this piece is used to represent a promoted Pawn in crazyhouse-like
3057 games, i.e. on capture it turns back onto a Pawn. A '+' similarly
3058 indicates the piece is a shogi-style promoted piece, that should
3059 revert to its non-promoted version on capture (rather than to a
3060 Pawn). Note that promoted pieces are represented by pieces 11
3061 further in the list. You should not have to use this option
3062 often: each variant has its own default setting for the piece
3063 representation in FEN, which should be sufficient in normal use.
3066 -pieceNickNames string
3067 The characters in the string are interpreted the same way as in the
3068 `pieceToCharTable' option. But on input, piece-ID letters are
3069 first looked up in the nicknames, and only if not defined there,
3070 in the normal pieceToCharTable. This allows you to have two letters
3071 designate the same piece, (e.g. N as an alternative to H for Horse
3072 in Xiangqi), to make reading of non-compliant notations easier.
3075 -colorNickNames string
3076 The side-to-move field in a FEN will be first matched against the
3077 letters in the string (first character for white, second for
3078 black), before it is matched to the regular 'w' and 'b'. This
3079 makes it easier to read non-compliant FENs, which, say, use 'r'
3080 for white. Default: ""
3082 -debug/-xdebug or -debugMode true/false
3083 Turns on debugging printout.
3085 -debugFile filename or -nameOfDebugFile filename
3086 Sets the name of the file to which XBoard saves debug information
3087 (including all communication to and from the engines). A `%d' in
3088 the given file name (e.g. game%d.debug) will be replaced by the
3089 unique sequence number of a tournament game, so that the debug
3090 output of each game will be written on a separate file.
3092 -engineDebugOutput number
3093 Specifies how XBoard should handle unsolicited output from the
3094 engine, with respect to saving it in the debug file. The output
3095 is further (hopefully) ignored. If number=0, XBoard refrains from
3096 writing such spurious output to the debug file. If number=1, all
3097 engine output is written faithfully to the debug file. If
3098 number=2, any protocol-violating line is prefixed with a '#'
3099 character, as the engine itself should have done if it wanted to
3100 submit info for inclusion in the debug file. This option is
3101 provided for the benefit of applications that use the debug file
3102 as a source of information, such as the broadcaster of live games
3103 TLCV / TLCS. Such applications can be protected from spurious
3104 engine output that might otherwise confuse them.
3106 -rsh or -remoteShell shell-name
3107 Name of the command used to run programs remotely. The default is
3108 `rsh' or `remsh', determined when XBoard is configured and
3111 -ruser or -remoteUser user-name
3112 User name on the remote system when running programs with the
3113 `remoteShell'. The default is your local user name.
3116 Name under which the Human player will be listed in the PGN file.
3117 Default is the login name on your local computer.
3119 -delayBeforeQuit number
3120 -delayAfterQuit number
3121 These options specify how long XBoard has to wait before sending a
3122 termination signal to rogue engine processes, that do not want to
3123 react to the 'quit' command. The second one determines the pause
3124 after killing the engine, to make sure it dies.
3127 The integer n encodes the mode for the `find position' function.
3128 Default: 1 (= Exact position match)
3130 -eloThresholdBoth elo
3131 -eloThresholdAny elo
3132 Defines a lower limit for the Elo rating, which has to be surpassed
3133 before a game will be considered when searching for a board
3134 position. Default: 0
3137 Only games not played before the given year will be considered when
3138 searching for a board position
3144 An "Internet Chess Server", or "ICS", is a place on the Internet where
3145 people can get together to play chess, watch other people's games, or
3146 just chat. You can use either `telnet' or a client program like XBoard
3147 to connect to the server. There are thousands of registered users on
3148 the different ICS hosts, and it is not unusual to meet 200 on both
3149 chessclub.com and freechess.org.
3151 Most people can just type `xboard -ics' to start XBoard as an ICS
3152 client. Invoking XBoard in this way connects you to the Internet Chess
3153 Club (ICC), a commercial ICS. You can log in there as a guest even if
3154 you do not have a paid account. To connect to the largest Free ICS
3155 (FICS), use the command `xboard -ics -icshost freechess.org' instead,
3156 or substitute a different host name to connect to your favorite ICS.
3157 For a full description of command-line options that control the
3158 connection to ICS and change the default values of ICS options, see
3159 *note ICS options::.
3161 While you are running XBoard as an ICS client, you use the terminal
3162 window that you started XBoard from as a place to type in commands and
3163 read information that is not available on the chessboard.
3165 The first time you need to use the terminal is to enter your login
3166 name and password, if you are a registered player. (You don't need to do
3167 this manually; the `icsLogon' option can do it for you. *note ICS
3168 options::.) If you are not registered, enter `g' as your name, and the
3169 server will pick a unique guest name for you.
3171 Some useful ICS commands include
3173 to get help on the given <topic>. To get a list of possible topics
3174 type "help" without topic. Try the help command before you ask
3175 other people on the server for help.
3177 For example `help register' tells you how to become a registered
3181 to see a list of people who are logged on. Administrators (people
3182 you should talk to if you have a problem) are marked with the
3183 character `*', an asterisk. The <flags> allow you to display only
3184 selected players: For example, `who of' shows a list of players
3185 who are interested in playing but do not have an opponent.
3188 to see what games are being played
3190 `match <player> [<mins>] [<inc>]'
3191 to challenge another player to a game. Both opponents get <mins>
3192 minutes for the game, and <inc> seconds will be added after each
3193 move. If another player challenges you, the server asks if you
3194 want to accept the challenge; use the `accept' or `decline'
3199 to accept or decline another player's offer. The offer may be to
3200 start a new game, or to agree to a `draw', `adjourn' or `abort'
3201 the current game. *Note Action Menu::.
3203 If you have more than one pending offer (for example, if more than
3204 one player is challenging you, or if your opponent offers both a
3205 draw and to adjourn the game), you have to supply additional
3206 information, by typing something like `accept <player>', `accept
3212 asks your opponent to terminate a game by mutual agreement.
3213 Adjourned games can be continued later. Your opponent can either
3214 `decline' your offer or accept it (by typing the same command or
3215 typing `accept'). In some cases these commands work immediately,
3216 without asking your opponent to agree. For example, you can abort
3217 the game unilaterally if your opponent is out of time, and you can
3218 claim a draw by repetition or the 50-move rule if available simply
3222 to get information about the given <player>. (Default: yourself.)
3225 to get a list of personal settings
3228 to modify these settings
3231 to observe an ongoing game of the given <player>.
3235 to review a recently completed game
3237 Some special XBoard features are activated when you are in examine
3238 mode on ICS. See the descriptions of the menu commands `Forward',
3239 `Backward', `Pause', `ICS Client', and `Stop Examining' on the *note
3240 Edit Menu::, *note Mode Menu::, and *note Action Menu::.
3245 By default, XBoard communicates with an Internet Chess Server by
3246 opening a TCP socket directly from the machine it is running on to the
3247 ICS. If there is a firewall between your machine and the ICS, this
3248 won't work. Here are some recipes for getting around common kinds of
3249 firewalls using special options to XBoard. Important: See the
3250 paragraph in the below about extra echoes, in *note Limitations::.
3252 Suppose that you can't telnet directly to ICS, but you can telnet to
3253 a firewall host, log in, and then telnet from there to ICS. Let's say
3254 the firewall is called `firewall.example.com'. Set command-line options
3257 xboard -ics -icshost firewall.example.com -icsport 23
3258 Then when you run XBoard in ICS mode, you will be prompted to log in
3259 to the firewall host. This works because port 23 is the standard telnet
3260 login service. Do so, then telnet to ICS, using a command like `telnet
3261 chessclub.com 5000', or whatever command the firewall provides for
3262 telnetting to port 5000.
3264 If your firewall lets you telnet (or rlogin) to remote hosts but
3265 doesn't let you telnet to port 5000, you may be able to connect to the
3266 chess server on port 23 instead, which is the port the telnet program
3267 uses by default. Some chess servers support this (including
3268 chessclub.com and freechess.org), while some do not.
3270 If your chess server does not allow connections on port 23 and your
3271 firewall does not allow you to connect to other ports, you may be able
3272 to connect by hopping through another host outside the firewall that
3273 you have an account on. For instance, suppose you have a shell account
3274 at `foo.edu'. Follow the recipe above, but instead of typing `telnet
3275 chessclub.com 5000' to the firewall, type `telnet foo.edu' (or `rlogin
3276 foo.edu'), log in there, and then type `telnet chessclub.com 5000'.
3278 Suppose that you can't telnet directly to ICS, but you can use rsh
3279 to run programs on a firewall host, and that host can telnet to ICS.
3280 Let's say the firewall is called `rsh.example.com'. Set command-line
3283 xboard -ics -gateway rsh.example.com -icshost chessclub.com
3285 Then when you run XBoard in ICS mode, it will connect to the ICS by
3286 using `rsh' to run the command `telnet chessclub.com 5000' on host
3289 Suppose that you can telnet anywhere you want, but you have to run a
3290 special program called `ptelnet' to do so.
3292 First, we'll consider the easy case, in which `ptelnet chessclub.com
3293 5000' gets you to the chess server. In this case set command line
3296 xboard -ics -telnet -telnetProgram ptelnet
3298 Then when you run XBoard in ICS mode, it will issue the command
3299 `ptelnet chessclub.com 5000' to connect to the ICS.
3301 Next, suppose that `ptelnet chessclub.com 5000' doesn't work; that
3302 is, your `ptelnet' program doesn't let you connect to alternative
3303 ports. As noted above, your chess server may allow you to connect on
3304 port 23 instead. In that case, just add the option `-icsport ""' to
3305 the above command. But if your chess server doesn't let you connect on
3306 port 23, you will have to find some other host outside the firewall and
3307 hop through it. For instance, suppose you have a shell account at
3308 `foo.edu'. Set command line options as follows:
3310 xboard -ics -telnet -telnetProgram ptelnet -icshost foo.edu -icsport ""
3312 Then when you run XBoard in ICS mode, it will issue the command
3313 `ptelnet foo.edu' to connect to your account at `foo.edu'. Log in
3314 there, then type `telnet chessclub.com 5000'.
3316 ICC timestamp and FICS timeseal do not work through some firewalls.
3317 You can use them only if your firewall gives a clean TCP connection
3318 with a full 8-bit wide path. If your firewall allows you to get out
3319 only by running a special telnet program, you can't use timestamp or
3320 timeseal across it. But if you have access to a computer just outside
3321 your firewall, and you have much lower netlag when talking to that
3322 computer than to the ICS, it might be worthwhile running timestamp
3323 there. Follow the instructions above for hopping through a host
3324 outside the firewall (foo.edu in the example), but run timestamp or
3325 timeseal on that host instead of telnet.
3327 Suppose that you have a SOCKS firewall that will give you a clean
3328 8-bit wide TCP connection to the chess server, but only after you
3329 authenticate yourself via the SOCKS protocol. In that case, you could
3330 make a socksified version of XBoard and run that. If you are using
3331 timestamp or timeseal, you will to socksify it, not XBoard; this may be
3332 difficult seeing that ICC and FICS do not provide source code for these
3333 programs. Socksification is beyond the scope of this document, but see
3334 the SOCKS Web site at http://www.socks.permeo.com/. If you are missing
3335 SOCKS, try http://www.funbureau.com/.
3337 7 Environment variables
3338 ***********************
3340 Game and position files are found in a directory named by the
3341 `CHESSDIR' environment variable. If this variable is not set, the
3342 current working directory is used. If `CHESSDIR' is set, XBoard
3343 actually changes its working directory to `$CHESSDIR', so any files
3344 written by the chess engine will be placed there too.
3346 8 Limitations and known bugs
3347 ****************************
3349 There is no way for two people running copies of XBoard to play each
3350 other without going through an Internet Chess Server.
3352 Under some circumstances, your ICS password may be echoed when you
3355 If you are connecting to the ICS by running telnet on an Internet
3356 provider or firewall host, you may find that each line you type is
3357 echoed back an extra time after you hit <Enter>. If your Internet
3358 provider is a Unix system, you can probably turn its echo off by typing
3359 `stty -echo' after you log in, and/or typing <^E><Enter> (Ctrl+E
3360 followed by the Enter key) to the telnet program after you have logged
3361 into ICS. It is a good idea to do this if you can, because the extra
3362 echo can occasionally confuse XBoard's parsing routines.
3364 The game parser recognizes only algebraic notation.
3366 Many of the following points used to be limitations in XBoard 4.2.7
3367 and earlier, but are now fixed: The internal move legality tester in
3368 XBoard 4.3.xx does look at the game history, and is fully aware of
3369 castling or en-passant-capture rights. It permits castling with the
3370 king on the d file because this is possible in some "wild 1" games on
3371 ICS. The piece-drop menu does not check piece drops in bughouse to see
3372 if you actually hold the piece you are trying to drop. But this way of
3373 dropping pieces should be considered an obsolete feature, now that
3374 pieces can be dropped by dragging them from the holdings to the board.
3375 Anyway, if you would attempt an illegal move when using a chess engine
3376 or the ICS, XBoard will accept the error message that comes back, undo
3377 the move, and let you try another. FEN positions saved by XBoard do
3378 include correct information about whether castling or en passant are
3379 legal, and also handle the 50-move counter. The mate detector does not
3380 understand that non-contact mate is not really mate in bughouse. The
3381 only problem this causes while playing is minor: a "#" (mate indicator)
3382 character will show up after a non-contact mating move in the move
3383 list. XBoard will not assume the game is over at that point, not even
3384 when the option Detect Mates is on. Edit Game mode always uses the
3385 rules of the selected variant, which can be a variant that uses piece
3386 drops. You can load and edit games that contain piece drops. The
3387 (obsolete) piece menus are not active, but you can perform piece drops
3388 by dragging pieces from the holdings. Fischer Random castling is fully
3389 understood. You can enter castlings by dragging the King on top of
3390 your Rook. You can probably also play Fischer Random successfully on
3391 ICS by typing castling moves into the ICS Interaction window.
3393 The menus may not work if your keyboard is in Caps Lock or Num Lock
3394 mode. This seems to be a problem with the Athena menu widget, not an
3397 Also see the ToDo file included with the distribution for many other
3398 possible bugs, limitations, and ideas for improvement that have been
3401 9 Reporting problems
3402 ********************
3404 You can report bugs and problems with XBoard using the bug tracker at
3405 `https://savannah.gnu.org/projects/xboard/' or by sending mail to
3406 `<bug-xboard@gnu.org>'. It can also be useful to report or discuss
3407 bugs in the WinBoard Forum at `http://www.open-aurec.com/wbforum/',
3408 WinBoard development section.
3410 Please use the `script' program to start a typescript, run XBoard
3411 with the `-debug' option, and include the typescript output in your
3412 message. Also tell us what kind of machine and what operating system
3413 version you are using. The command `uname -a' will often tell you this.
3415 If you improve XBoard, please send a message about your changes, and
3416 we will get in touch with you about merging them in to the main line of
3419 10 Authors and contributors
3420 ***************************
3422 Chris Sears and Dan Sears wrote the original XBoard. They were
3423 responsible for versions 1.0 through 1.2. The color scheme was taken
3424 from Wayne Christopher's `XChess' program.
3426 Tim Mann was primarily responsible for XBoard versions 1.3 through
3427 4.2.7, and for WinBoard (a port of XBoard to Microsoft Win32) from its
3428 inception through version 4.2.7.
3430 John Chanak contributed the initial implementation of ICS mode. Evan
3431 Welsh wrote `CMail', and Patrick Surry helped in designing, testing,
3432 and documenting it. Elmar Bartel contributed the new piece bitmaps
3433 introduced in version 3.2. Jochen Wiedmann converted the documentation
3434 to texinfo. Frank McIngvale added click/click moving, the Analysis
3435 modes, piece flashing, ZIICS import, and ICS text colorization to
3436 XBoard. Hugh Fisher added animated piece movement to XBoard, and
3437 Henrik Gram added it to WinBoard. Mark Williams contributed the
3438 initial (WinBoard-only) implementation of many new features added to
3439 both XBoard and WinBoard in version 4.1.0, including copy/paste,
3440 premove, icsAlarm, autoFlipView, training mode, auto raise, and
3441 blindfold. Ben Nye contributed X copy/paste code for XBoard.
3443 In a fork from version 4.2.7, Alessandro Scotti added many elements
3444 to the user interface of WinBoard, including the board textures and
3445 font-based rendering, the evaluation-graph, move-history and
3446 engine-output window. He was also responsible for adding the UCI
3449 H. G. Muller continued this fork of the project, producing version
3450 4.3. He made WinBoard castling- and e.p.-aware, added variant support
3451 with adjustable board sizes, the crazyhouse holdings, and the fairy
3452 pieces. In addition he added most of the adjudication options, made
3453 WinBoard more robust in dealing with buggy and crashing engines, and
3454 extended time control with a time-odds and node-count-based modes.
3455 Most of the options that initially were WinBoard only have now been
3456 back-ported to XBoard.
3458 Michel van den Bergh provided the code for reading Polyglot opening
3461 Meanwhile, some work continued on the GNU XBoard project maintained
3462 at savannah.gnu.org, but version 4.2.8 was never released. Daniel
3463 Mehrmann was responsible for much of this work.
3465 Most recently, Arun Persaud worked with H. G. Muller to merge all
3466 the features of the never-released XBoard/WinBoard 4.2.8 of the GNU
3467 XBoard project and the never-released 4.3.16 from H. G.'s fork into a
3468 unified XBoard/WinBoard 4.4, which is now available both from the
3469 savannah.gnu.org web site and the WinBoard forum.
3474 The `cmail' program can help you play chess by email with opponents of
3475 your choice using XBoard as an interface.
3477 You will usually run `cmail' without giving any options.
3483 Displays `cmail' usage information.
3486 Shows the conditions of the GNU General Public License. *Note
3490 Shows the warranty notice of the GNU General Public License.
3495 Provides or inhibits verbose output from `cmail' and XBoard,
3496 useful for debugging. The `-xv' form also inhibits the cmail
3497 introduction message.
3501 Invokes or inhibits the sending of a mail message containing the
3506 Invokes or inhibits the running of XBoard on the game file.
3510 Invokes or inhibits the reuse of an existing XBoard to display the
3514 Resends the last mail message for that game. This inhibits running
3518 The name of the game to be processed.
3523 Number of games to start as White, as Black or in total. Default
3524 is 1 as white and none as black. If only one color is specified
3525 then none of the other color is assumed. If no color is specified
3526 then equal numbers of White and Black games are started, with the
3527 extra game being as White if an odd number of total games is
3532 A one-word alias for yourself or your opponent.
3537 -oppname <full name>
3538 The full name of White, Black, yourself or your opponent.
3543 -oppna <net address>
3544 The email address of White, Black, yourself or your opponent.
3547 The directory in which `cmail' keeps its files. This defaults to
3548 the environment variable `$CMAIL_DIR' or failing that, `$CHESSDIR',
3549 `$HOME/Chess' or `~/Chess'. It will be created if it does not
3553 The directory in which `cmail' archives completed games. Defaults
3554 to the environment variable `$CMAIL_ARCDIR' or, in its absence,
3555 the same directory as cmail keeps its working files (above).
3557 -mailprog <mail program>
3558 The program used by cmail to send email messages. This defaults to
3559 the environment variable `$CMAIL_MAILPROG' or failing that
3560 `/usr/ucb/Mail', `/usr/ucb/mail' or `Mail'. You will need to set
3561 this variable if none of the above paths fit your system.
3564 A file in which to dump verbose debugging messages that are
3565 invoked with the `-v' option.
3568 The PGN Event tag (default `Email correspondence game').
3571 The PGN Site tag (default `NET').
3574 The PGN Round tag (default `-', not applicable).
3577 The PGN Mode tag (default `EM', Electronic Mail).
3580 Any option flags not listed above are passed through to XBoard.
3581 Invoking XBoard through CMail changes the default values of two
3582 XBoard options: The default value for `-noChessProgram' is changed
3583 to true; that is, by default no chess engine is started. The
3584 default value for `-timeDelay' is changed to 0; that is, by default
3585 XBoard immediately goes to the end of the game as played so far,
3586 rather than stepping through the moves one by one. You can still
3587 set these options to whatever values you prefer by supplying them
3588 on CMail's command line. *Note Options::.
3590 11.2 Starting a CMail Game
3591 ==========================
3593 Type `cmail' from a shell to start a game as white. After an opening
3594 message, you will be prompted for a game name, which is optional--if you
3595 simply press <Enter>, the game name will take the form
3596 `you-VS-opponent'. You will next be prompted for the short name of your
3597 opponent. If you haven't played this person before, you will also be
3598 prompted for his/her email address. `cmail' will then invoke XBoard in
3599 the background. Make your first move and select `Mail Move' from the
3600 `File' menu. *Note File Menu::. If all is well, `cmail' will mail a
3601 copy of the move to your opponent. If you select `Exit' without having
3602 selected `Mail Move' then no move will be made.
3604 11.3 Answering a Move
3605 =====================
3607 When you receive a message from an opponent containing a move in one of
3608 your games, simply pipe the message through `cmail'. In some mailers
3609 this is as simple as typing `| cmail' when viewing the message, while in
3610 others you may have to save the message to a file and do `cmail < file'
3611 at the command line. In either case `cmail' will display the game using
3612 XBoard. If you didn't exit XBoard when you made your first move then
3613 `cmail' will do its best to use the existing XBoard instead of starting
3614 a new one. As before, simply make a move and select `Mail Move' from
3615 the `File' menu. *Note File Menu::. `cmail' will try to use the XBoard
3616 that was most recently used to display the current game. This means
3617 that many games can be in progress simultaneously, each with its own
3620 If you want to look at the history or explore a variation, go ahead,
3621 but you must return to the current position before XBoard will allow you
3622 to mail a move. If you edit the game's history you must select `Reload
3623 Same Game' from the `File' menu to get back to the original position,
3624 then make the move you want and select `Mail Move'. As before, if you
3625 decide you aren't ready to make a move just yet you can either select
3626 `Exit' without sending a move or just leave XBoard running until you
3629 11.4 Multi-Game Messages
3630 ========================
3632 It is possible to have a `cmail' message carry more than one game.
3633 This feature was implemented to handle IECG (International Email Chess
3634 Group) matches, where a match consists of one game as white and one as
3635 black, with moves transmitted simultaneously. In case there are more
3636 general uses, `cmail' itself places no limit on the number of
3637 black/white games contained in a message; however, XBoard does.
3639 11.5 Completing a Game
3640 ======================
3642 Because XBoard can detect checkmate and stalemate, `cmail' handles game
3643 termination sensibly. As well as resignation, the `Action' menu allows
3644 draws to be offered and accepted for `cmail' games.
3646 For multi-game messages, only unfinished and just-finished games
3647 will be included in email messages. When all the games are finished,
3648 they are archived in the user's archive directory, and similarly in the
3649 opponent's when he or she pipes the final message through `cmail'. The
3650 archive file name includes the date the game was started.
3652 11.6 Known CMail Problems
3653 =========================
3655 It's possible that a strange conjunction of conditions may occasionally
3656 mean that `cmail' has trouble reactivating an existing XBoard. If this
3657 should happen, simply trying it again should work. If not, remove the
3658 file that stores the XBoard's PID (`game.pid') or use the `-xreuse'
3659 option to force `cmail' to start a new XBoard.
3661 Versions of `cmail' after 2.16 no longer understand the old file
3662 format that XBoard used to use and so cannot be used to correspond with
3663 anyone using an older version.
3665 Versions of `cmail' older than 2.11 do not handle multi-game
3666 messages, so multi-game correspondence is not possible with opponents
3667 using an older version.
3669 12 Other programs you can use with XBoard
3670 *****************************************
3672 Here are some other programs you can use with XBoard
3677 The GNU Chess engine is available from:
3679 ftp://ftp.gnu.org/gnu/gnuchess/
3681 You can use XBoard to play a game against GNU Chess, or to interface
3682 GNU Chess to an ICS.
3687 Fairy-Max is a derivative from the once World's smallest Chess program
3688 micro-Max, which measures only about 100 lines of source code. The
3689 main difference with micro-Max is that Fairy-Max loads its
3690 move-generator tables from a file, so that the rules for piece movement
3691 can be easily configured to implement unorthodox pieces. Fairy-Max can
3692 therefore play a large number of variants, normal Chess being one of
3693 those. In addition it plays Knightmate, Capablanca and Gothic Chess,
3694 Shatranj, Courier Chess, Cylinder chess, Berolina Chess, while the user
3695 can easily define new variants. It can be obtained from:
3697 http://home.hccnet.nl/h.g.muller/dwnldpage.html
3702 HoiChess is a not-so-very-strong Chess engine, which comes with a
3703 derivative HoiXiangqi, able to play Chinese Chess. It can be obtained
3704 from the standard Linux repositories through:
3706 sudo apt-get install hoichess
3711 Crafty is a chess engine written by Bob Hyatt. You can use XBoard to
3712 play a game against Crafty, hook Crafty up to an ICS, or use Crafty to
3713 interactively analyze games and positions for you.
3715 Crafty is a strong, rapidly evolving chess program. This rapid pace
3716 of development is good, because it means Crafty is always getting
3717 better. This can sometimes cause problems with backwards
3718 compatibility, but usually the latest version of Crafty will work well
3719 with the latest version of XBoard. Crafty can be obtained from its
3720 author's FTP site: ftp://ftp.cis.uab.edu/hyatt/.
3722 To use Crafty with XBoard, give the -fcp and -fd options as follows,
3723 where <crafty's directory> is the directory in which you installed
3724 Crafty and placed its book and other support files.
3729 The "zic2xpm" program is used to import chess sets from the ZIICS(*)
3730 program into XBoard. "zic2xpm" is part of the XBoard distribution.
3731 ZIICS is available from:
3733 ftp://ftp.freechess.org/pub/chess/DOS/ziics131.exe
3735 To import ZIICS pieces, do this:
3736 1. Unzip ziics131.exe into a directory:
3737 unzip -L ziics131.exe -d ~/ziics
3739 2. Use zic2xpm to convert a set of pieces to XBoard format.
3740 For example, let's say you want to use the FRITZ4 set. These files
3741 are named "fritz4.*" in the ZIICS distribution.
3745 zic2xpm ~/ziics/fritz4.*
3747 3. Give XBoard the "-pixmap" option when starting up, e.g.:
3748 xboard -pixmap ~/fritz4
3750 (*) ZIICS is a separate copyrighted work of Andy McFarland. The
3751 "ZIICS pieces" are copyrighted works of their respective creators.
3752 Files produced by "zic2xpm" are for PERSONAL USE ONLY and may NOT be
3753 redistributed without explicit permission from the original creator(s)
3759 Copyright (C) 1991 Digital Equipment Corporation, Maynard,
3762 All Rights Reserved.
3764 Permission to use, copy, modify, and distribute this software and its
3765 documentation for any purpose and without fee is hereby granted,
3766 provided that the above copyright notice appear in all copies and that
3767 both that copyright notice and this permission notice appear in
3768 supporting documentation, and that the name of Digital not be used in
3769 advertising or publicity pertaining to distribution of the software
3770 without specific, written prior permission.
3772 Digital disclaims all warranties with regard to this software,
3773 including all implied warranties of merchantability and fitness. In no
3774 event shall Digital be liable for any special, indirect or
3775 consequential damages or any damages whatsoever resulting from loss of
3776 use, data or profits, whether in an action of contract, negligence or
3777 other tortious action, arising out of or in connection with the use or
3778 performance of this software.
3780 Enhancements copyright (C) 1992-2003, 2004, 2005, 2006, 2007, 2008,
3781 2009, 2010, 2011, 2012, 2013 Free Software Foundation, Inc.
3783 Published by the Free Software Foundation
3784 59 Temple Place - Suite 330
3785 Boston, MA 02111-1307 USA
3787 Permission is granted to make and distribute verbatim copies of this
3788 manual provided the copyright notice and this permission notice are
3789 preserved on all copies.
3791 Permission is granted to copy and distribute modified versions of
3792 this manual under the conditions for verbatim copying, provided also
3793 that the section entitled "GNU General Public License," is included
3794 exactly as in the original, and provided that the entire resulting
3795 derived work is distributed under the terms of a permission notice
3796 identical to this one.
3798 Permission is granted to copy and distribute translations of this
3799 manual into another language, under the above conditions for modified
3800 versions, except that the section entitled "GNU General Public License,"
3801 and this permission notice, may be included in translations approved by
3802 the Free Software Foundation instead of in the original English.
3804 GNU GENERAL PUBLIC LICENSE
3805 **************************
3807 Version 3, 29 June 2007
3809 Copyright (C) 2007 Free Software Foundation, Inc. `http://fsf.org/'
3811 Everyone is permitted to copy and distribute verbatim copies of this
3812 license document, but changing it is not allowed.
3817 The GNU General Public License is a free, copyleft license for software
3818 and other kinds of works.
3820 The licenses for most software and other practical works are designed
3821 to take away your freedom to share and change the works. By contrast,
3822 the GNU General Public License is intended to guarantee your freedom to
3823 share and change all versions of a program--to make sure it remains
3824 free software for all its users. We, the Free Software Foundation, use
3825 the GNU General Public License for most of our software; it applies
3826 also to any other work released this way by its authors. You can apply
3827 it to your programs, too.
3829 When we speak of free software, we are referring to freedom, not
3830 price. Our General Public Licenses are designed to make sure that you
3831 have the freedom to distribute copies of free software (and charge for
3832 them if you wish), that you receive source code or can get it if you
3833 want it, that you can change the software or use pieces of it in new
3834 free programs, and that you know you can do these things.
3836 To protect your rights, we need to prevent others from denying you
3837 these rights or asking you to surrender the rights. Therefore, you
3838 have certain responsibilities if you distribute copies of the software,
3839 or if you modify it: responsibilities to respect the freedom of others.
3841 For example, if you distribute copies of such a program, whether
3842 gratis or for a fee, you must pass on to the recipients the same
3843 freedoms that you received. You must make sure that they, too, receive
3844 or can get the source code. And you must show them these terms so they
3847 Developers that use the GNU GPL protect your rights with two steps:
3848 (1) assert copyright on the software, and (2) offer you this License
3849 giving you legal permission to copy, distribute and/or modify it.
3851 For the developers' and authors' protection, the GPL clearly explains
3852 that there is no warranty for this free software. For both users' and
3853 authors' sake, the GPL requires that modified versions be marked as
3854 changed, so that their problems will not be attributed erroneously to
3855 authors of previous versions.
3857 Some devices are designed to deny users access to install or run
3858 modified versions of the software inside them, although the
3859 manufacturer can do so. This is fundamentally incompatible with the
3860 aim of protecting users' freedom to change the software. The
3861 systematic pattern of such abuse occurs in the area of products for
3862 individuals to use, which is precisely where it is most unacceptable.
3863 Therefore, we have designed this version of the GPL to prohibit the
3864 practice for those products. If such problems arise substantially in
3865 other domains, we stand ready to extend this provision to those domains
3866 in future versions of the GPL, as needed to protect the freedom of
3869 Finally, every program is threatened constantly by software patents.
3870 States should not allow patents to restrict development and use of
3871 software on general-purpose computers, but in those that do, we wish to
3872 avoid the special danger that patents applied to a free program could
3873 make it effectively proprietary. To prevent this, the GPL assures that
3874 patents cannot be used to render the program non-free.
3876 The precise terms and conditions for copying, distribution and
3877 modification follow.
3879 TERMS AND CONDITIONS
3880 ====================
3884 "This License" refers to version 3 of the GNU General Public
3887 "Copyright" also means copyright-like laws that apply to other
3888 kinds of works, such as semiconductor masks.
3890 "The Program" refers to any copyrightable work licensed under this
3891 License. Each licensee is addressed as "you". "Licensees" and
3892 "recipients" may be individuals or organizations.
3894 To "modify" a work means to copy from or adapt all or part of the
3895 work in a fashion requiring copyright permission, other than the
3896 making of an exact copy. The resulting work is called a "modified
3897 version" of the earlier work or a work "based on" the earlier work.
3899 A "covered work" means either the unmodified Program or a work
3900 based on the Program.
3902 To "propagate" a work means to do anything with it that, without
3903 permission, would make you directly or secondarily liable for
3904 infringement under applicable copyright law, except executing it
3905 on a computer or modifying a private copy. Propagation includes
3906 copying, distribution (with or without modification), making
3907 available to the public, and in some countries other activities as
3910 To "convey" a work means any kind of propagation that enables other
3911 parties to make or receive copies. Mere interaction with a user
3912 through a computer network, with no transfer of a copy, is not
3915 An interactive user interface displays "Appropriate Legal Notices"
3916 to the extent that it includes a convenient and prominently visible
3917 feature that (1) displays an appropriate copyright notice, and (2)
3918 tells the user that there is no warranty for the work (except to
3919 the extent that warranties are provided), that licensees may
3920 convey the work under this License, and how to view a copy of this
3921 License. If the interface presents a list of user commands or
3922 options, such as a menu, a prominent item in the list meets this
3927 The "source code" for a work means the preferred form of the work
3928 for making modifications to it. "Object code" means any
3929 non-source form of a work.
3931 A "Standard Interface" means an interface that either is an
3932 official standard defined by a recognized standards body, or, in
3933 the case of interfaces specified for a particular programming
3934 language, one that is widely used among developers working in that
3937 The "System Libraries" of an executable work include anything,
3938 other than the work as a whole, that (a) is included in the normal
3939 form of packaging a Major Component, but which is not part of that
3940 Major Component, and (b) serves only to enable use of the work
3941 with that Major Component, or to implement a Standard Interface
3942 for which an implementation is available to the public in source
3943 code form. A "Major Component", in this context, means a major
3944 essential component (kernel, window system, and so on) of the
3945 specific operating system (if any) on which the executable work
3946 runs, or a compiler used to produce the work, or an object code
3947 interpreter used to run it.
3949 The "Corresponding Source" for a work in object code form means all
3950 the source code needed to generate, install, and (for an executable
3951 work) run the object code and to modify the work, including
3952 scripts to control those activities. However, it does not include
3953 the work's System Libraries, or general-purpose tools or generally
3954 available free programs which are used unmodified in performing
3955 those activities but which are not part of the work. For example,
3956 Corresponding Source includes interface definition files
3957 associated with source files for the work, and the source code for
3958 shared libraries and dynamically linked subprograms that the work
3959 is specifically designed to require, such as by intimate data
3960 communication or control flow between those subprograms and other
3963 The Corresponding Source need not include anything that users can
3964 regenerate automatically from other parts of the Corresponding
3967 The Corresponding Source for a work in source code form is that
3970 2. Basic Permissions.
3972 All rights granted under this License are granted for the term of
3973 copyright on the Program, and are irrevocable provided the stated
3974 conditions are met. This License explicitly affirms your unlimited
3975 permission to run the unmodified Program. The output from running
3976 a covered work is covered by this License only if the output,
3977 given its content, constitutes a covered work. This License
3978 acknowledges your rights of fair use or other equivalent, as
3979 provided by copyright law.
3981 You may make, run and propagate covered works that you do not
3982 convey, without conditions so long as your license otherwise
3983 remains in force. You may convey covered works to others for the
3984 sole purpose of having them make modifications exclusively for
3985 you, or provide you with facilities for running those works,
3986 provided that you comply with the terms of this License in
3987 conveying all material for which you do not control copyright.
3988 Those thus making or running the covered works for you must do so
3989 exclusively on your behalf, under your direction and control, on
3990 terms that prohibit them from making any copies of your
3991 copyrighted material outside their relationship with you.
3993 Conveying under any other circumstances is permitted solely under
3994 the conditions stated below. Sublicensing is not allowed; section
3995 10 makes it unnecessary.
3997 3. Protecting Users' Legal Rights From Anti-Circumvention Law.
3999 No covered work shall be deemed part of an effective technological
4000 measure under any applicable law fulfilling obligations under
4001 article 11 of the WIPO copyright treaty adopted on 20 December
4002 1996, or similar laws prohibiting or restricting circumvention of
4005 When you convey a covered work, you waive any legal power to forbid
4006 circumvention of technological measures to the extent such
4007 circumvention is effected by exercising rights under this License
4008 with respect to the covered work, and you disclaim any intention
4009 to limit operation or modification of the work as a means of
4010 enforcing, against the work's users, your or third parties' legal
4011 rights to forbid circumvention of technological measures.
4013 4. Conveying Verbatim Copies.
4015 You may convey verbatim copies of the Program's source code as you
4016 receive it, in any medium, provided that you conspicuously and
4017 appropriately publish on each copy an appropriate copyright notice;
4018 keep intact all notices stating that this License and any
4019 non-permissive terms added in accord with section 7 apply to the
4020 code; keep intact all notices of the absence of any warranty; and
4021 give all recipients a copy of this License along with the Program.
4023 You may charge any price or no price for each copy that you convey,
4024 and you may offer support or warranty protection for a fee.
4026 5. Conveying Modified Source Versions.
4028 You may convey a work based on the Program, or the modifications to
4029 produce it from the Program, in the form of source code under the
4030 terms of section 4, provided that you also meet all of these
4033 a. The work must carry prominent notices stating that you
4034 modified it, and giving a relevant date.
4036 b. The work must carry prominent notices stating that it is
4037 released under this License and any conditions added under
4038 section 7. This requirement modifies the requirement in
4039 section 4 to "keep intact all notices".
4041 c. You must license the entire work, as a whole, under this
4042 License to anyone who comes into possession of a copy. This
4043 License will therefore apply, along with any applicable
4044 section 7 additional terms, to the whole of the work, and all
4045 its parts, regardless of how they are packaged. This License
4046 gives no permission to license the work in any other way, but
4047 it does not invalidate such permission if you have separately
4050 d. If the work has interactive user interfaces, each must display
4051 Appropriate Legal Notices; however, if the Program has
4052 interactive interfaces that do not display Appropriate Legal
4053 Notices, your work need not make them do so.
4055 A compilation of a covered work with other separate and independent
4056 works, which are not by their nature extensions of the covered
4057 work, and which are not combined with it such as to form a larger
4058 program, in or on a volume of a storage or distribution medium, is
4059 called an "aggregate" if the compilation and its resulting
4060 copyright are not used to limit the access or legal rights of the
4061 compilation's users beyond what the individual works permit.
4062 Inclusion of a covered work in an aggregate does not cause this
4063 License to apply to the other parts of the aggregate.
4065 6. Conveying Non-Source Forms.
4067 You may convey a covered work in object code form under the terms
4068 of sections 4 and 5, provided that you also convey the
4069 machine-readable Corresponding Source under the terms of this
4070 License, in one of these ways:
4072 a. Convey the object code in, or embodied in, a physical product
4073 (including a physical distribution medium), accompanied by the
4074 Corresponding Source fixed on a durable physical medium
4075 customarily used for software interchange.
4077 b. Convey the object code in, or embodied in, a physical product
4078 (including a physical distribution medium), accompanied by a
4079 written offer, valid for at least three years and valid for
4080 as long as you offer spare parts or customer support for that
4081 product model, to give anyone who possesses the object code
4082 either (1) a copy of the Corresponding Source for all the
4083 software in the product that is covered by this License, on a
4084 durable physical medium customarily used for software
4085 interchange, for a price no more than your reasonable cost of
4086 physically performing this conveying of source, or (2) access
4087 to copy the Corresponding Source from a network server at no
4090 c. Convey individual copies of the object code with a copy of
4091 the written offer to provide the Corresponding Source. This
4092 alternative is allowed only occasionally and noncommercially,
4093 and only if you received the object code with such an offer,
4094 in accord with subsection 6b.
4096 d. Convey the object code by offering access from a designated
4097 place (gratis or for a charge), and offer equivalent access
4098 to the Corresponding Source in the same way through the same
4099 place at no further charge. You need not require recipients
4100 to copy the Corresponding Source along with the object code.
4101 If the place to copy the object code is a network server, the
4102 Corresponding Source may be on a different server (operated
4103 by you or a third party) that supports equivalent copying
4104 facilities, provided you maintain clear directions next to
4105 the object code saying where to find the Corresponding Source.
4106 Regardless of what server hosts the Corresponding Source, you
4107 remain obligated to ensure that it is available for as long
4108 as needed to satisfy these requirements.
4110 e. Convey the object code using peer-to-peer transmission,
4111 provided you inform other peers where the object code and
4112 Corresponding Source of the work are being offered to the
4113 general public at no charge under subsection 6d.
4116 A separable portion of the object code, whose source code is
4117 excluded from the Corresponding Source as a System Library, need
4118 not be included in conveying the object code work.
4120 A "User Product" is either (1) a "consumer product", which means
4121 any tangible personal property which is normally used for personal,
4122 family, or household purposes, or (2) anything designed or sold for
4123 incorporation into a dwelling. In determining whether a product
4124 is a consumer product, doubtful cases shall be resolved in favor of
4125 coverage. For a particular product received by a particular user,
4126 "normally used" refers to a typical or common use of that class of
4127 product, regardless of the status of the particular user or of the
4128 way in which the particular user actually uses, or expects or is
4129 expected to use, the product. A product is a consumer product
4130 regardless of whether the product has substantial commercial,
4131 industrial or non-consumer uses, unless such uses represent the
4132 only significant mode of use of the product.
4134 "Installation Information" for a User Product means any methods,
4135 procedures, authorization keys, or other information required to
4136 install and execute modified versions of a covered work in that
4137 User Product from a modified version of its Corresponding Source.
4138 The information must suffice to ensure that the continued
4139 functioning of the modified object code is in no case prevented or
4140 interfered with solely because modification has been made.
4142 If you convey an object code work under this section in, or with,
4143 or specifically for use in, a User Product, and the conveying
4144 occurs as part of a transaction in which the right of possession
4145 and use of the User Product is transferred to the recipient in
4146 perpetuity or for a fixed term (regardless of how the transaction
4147 is characterized), the Corresponding Source conveyed under this
4148 section must be accompanied by the Installation Information. But
4149 this requirement does not apply if neither you nor any third party
4150 retains the ability to install modified object code on the User
4151 Product (for example, the work has been installed in ROM).
4153 The requirement to provide Installation Information does not
4154 include a requirement to continue to provide support service,
4155 warranty, or updates for a work that has been modified or
4156 installed by the recipient, or for the User Product in which it
4157 has been modified or installed. Access to a network may be denied
4158 when the modification itself materially and adversely affects the
4159 operation of the network or violates the rules and protocols for
4160 communication across the network.
4162 Corresponding Source conveyed, and Installation Information
4163 provided, in accord with this section must be in a format that is
4164 publicly documented (and with an implementation available to the
4165 public in source code form), and must require no special password
4166 or key for unpacking, reading or copying.
4168 7. Additional Terms.
4170 "Additional permissions" are terms that supplement the terms of
4171 this License by making exceptions from one or more of its
4172 conditions. Additional permissions that are applicable to the
4173 entire Program shall be treated as though they were included in
4174 this License, to the extent that they are valid under applicable
4175 law. If additional permissions apply only to part of the Program,
4176 that part may be used separately under those permissions, but the
4177 entire Program remains governed by this License without regard to
4178 the additional permissions.
4180 When you convey a copy of a covered work, you may at your option
4181 remove any additional permissions from that copy, or from any part
4182 of it. (Additional permissions may be written to require their own
4183 removal in certain cases when you modify the work.) You may place
4184 additional permissions on material, added by you to a covered work,
4185 for which you have or can give appropriate copyright permission.
4187 Notwithstanding any other provision of this License, for material
4188 you add to a covered work, you may (if authorized by the copyright
4189 holders of that material) supplement the terms of this License
4192 a. Disclaiming warranty or limiting liability differently from
4193 the terms of sections 15 and 16 of this License; or
4195 b. Requiring preservation of specified reasonable legal notices
4196 or author attributions in that material or in the Appropriate
4197 Legal Notices displayed by works containing it; or
4199 c. Prohibiting misrepresentation of the origin of that material,
4200 or requiring that modified versions of such material be
4201 marked in reasonable ways as different from the original
4204 d. Limiting the use for publicity purposes of names of licensors
4205 or authors of the material; or
4207 e. Declining to grant rights under trademark law for use of some
4208 trade names, trademarks, or service marks; or
4210 f. Requiring indemnification of licensors and authors of that
4211 material by anyone who conveys the material (or modified
4212 versions of it) with contractual assumptions of liability to
4213 the recipient, for any liability that these contractual
4214 assumptions directly impose on those licensors and authors.
4216 All other non-permissive additional terms are considered "further
4217 restrictions" within the meaning of section 10. If the Program as
4218 you received it, or any part of it, contains a notice stating that
4219 it is governed by this License along with a term that is a further
4220 restriction, you may remove that term. If a license document
4221 contains a further restriction but permits relicensing or
4222 conveying under this License, you may add to a covered work
4223 material governed by the terms of that license document, provided
4224 that the further restriction does not survive such relicensing or
4227 If you add terms to a covered work in accord with this section, you
4228 must place, in the relevant source files, a statement of the
4229 additional terms that apply to those files, or a notice indicating
4230 where to find the applicable terms.
4232 Additional terms, permissive or non-permissive, may be stated in
4233 the form of a separately written license, or stated as exceptions;
4234 the above requirements apply either way.
4238 You may not propagate or modify a covered work except as expressly
4239 provided under this License. Any attempt otherwise to propagate or
4240 modify it is void, and will automatically terminate your rights
4241 under this License (including any patent licenses granted under
4242 the third paragraph of section 11).
4244 However, if you cease all violation of this License, then your
4245 license from a particular copyright holder is reinstated (a)
4246 provisionally, unless and until the copyright holder explicitly
4247 and finally terminates your license, and (b) permanently, if the
4248 copyright holder fails to notify you of the violation by some
4249 reasonable means prior to 60 days after the cessation.
4251 Moreover, your license from a particular copyright holder is
4252 reinstated permanently if the copyright holder notifies you of the
4253 violation by some reasonable means, this is the first time you have
4254 received notice of violation of this License (for any work) from
4255 that copyright holder, and you cure the violation prior to 30 days
4256 after your receipt of the notice.
4258 Termination of your rights under this section does not terminate
4259 the licenses of parties who have received copies or rights from
4260 you under this License. If your rights have been terminated and
4261 not permanently reinstated, you do not qualify to receive new
4262 licenses for the same material under section 10.
4264 9. Acceptance Not Required for Having Copies.
4266 You are not required to accept this License in order to receive or
4267 run a copy of the Program. Ancillary propagation of a covered work
4268 occurring solely as a consequence of using peer-to-peer
4269 transmission to receive a copy likewise does not require
4270 acceptance. However, nothing other than this License grants you
4271 permission to propagate or modify any covered work. These actions
4272 infringe copyright if you do not accept this License. Therefore,
4273 by modifying or propagating a covered work, you indicate your
4274 acceptance of this License to do so.
4276 10. Automatic Licensing of Downstream Recipients.
4278 Each time you convey a covered work, the recipient automatically
4279 receives a license from the original licensors, to run, modify and
4280 propagate that work, subject to this License. You are not
4281 responsible for enforcing compliance by third parties with this
4284 An "entity transaction" is a transaction transferring control of an
4285 organization, or substantially all assets of one, or subdividing an
4286 organization, or merging organizations. If propagation of a
4287 covered work results from an entity transaction, each party to that
4288 transaction who receives a copy of the work also receives whatever
4289 licenses to the work the party's predecessor in interest had or
4290 could give under the previous paragraph, plus a right to
4291 possession of the Corresponding Source of the work from the
4292 predecessor in interest, if the predecessor has it or can get it
4293 with reasonable efforts.
4295 You may not impose any further restrictions on the exercise of the
4296 rights granted or affirmed under this License. For example, you
4297 may not impose a license fee, royalty, or other charge for
4298 exercise of rights granted under this License, and you may not
4299 initiate litigation (including a cross-claim or counterclaim in a
4300 lawsuit) alleging that any patent claim is infringed by making,
4301 using, selling, offering for sale, or importing the Program or any
4306 A "contributor" is a copyright holder who authorizes use under this
4307 License of the Program or a work on which the Program is based.
4308 The work thus licensed is called the contributor's "contributor
4311 A contributor's "essential patent claims" are all patent claims
4312 owned or controlled by the contributor, whether already acquired or
4313 hereafter acquired, that would be infringed by some manner,
4314 permitted by this License, of making, using, or selling its
4315 contributor version, but do not include claims that would be
4316 infringed only as a consequence of further modification of the
4317 contributor version. For purposes of this definition, "control"
4318 includes the right to grant patent sublicenses in a manner
4319 consistent with the requirements of this License.
4321 Each contributor grants you a non-exclusive, worldwide,
4322 royalty-free patent license under the contributor's essential
4323 patent claims, to make, use, sell, offer for sale, import and
4324 otherwise run, modify and propagate the contents of its
4325 contributor version.
4327 In the following three paragraphs, a "patent license" is any
4328 express agreement or commitment, however denominated, not to
4329 enforce a patent (such as an express permission to practice a
4330 patent or covenant not to sue for patent infringement). To
4331 "grant" such a patent license to a party means to make such an
4332 agreement or commitment not to enforce a patent against the party.
4334 If you convey a covered work, knowingly relying on a patent
4335 license, and the Corresponding Source of the work is not available
4336 for anyone to copy, free of charge and under the terms of this
4337 License, through a publicly available network server or other
4338 readily accessible means, then you must either (1) cause the
4339 Corresponding Source to be so available, or (2) arrange to deprive
4340 yourself of the benefit of the patent license for this particular
4341 work, or (3) arrange, in a manner consistent with the requirements
4342 of this License, to extend the patent license to downstream
4343 recipients. "Knowingly relying" means you have actual knowledge
4344 that, but for the patent license, your conveying the covered work
4345 in a country, or your recipient's use of the covered work in a
4346 country, would infringe one or more identifiable patents in that
4347 country that you have reason to believe are valid.
4349 If, pursuant to or in connection with a single transaction or
4350 arrangement, you convey, or propagate by procuring conveyance of, a
4351 covered work, and grant a patent license to some of the parties
4352 receiving the covered work authorizing them to use, propagate,
4353 modify or convey a specific copy of the covered work, then the
4354 patent license you grant is automatically extended to all
4355 recipients of the covered work and works based on it.
4357 A patent license is "discriminatory" if it does not include within
4358 the scope of its coverage, prohibits the exercise of, or is
4359 conditioned on the non-exercise of one or more of the rights that
4360 are specifically granted under this License. You may not convey a
4361 covered work if you are a party to an arrangement with a third
4362 party that is in the business of distributing software, under
4363 which you make payment to the third party based on the extent of
4364 your activity of conveying the work, and under which the third
4365 party grants, to any of the parties who would receive the covered
4366 work from you, a discriminatory patent license (a) in connection
4367 with copies of the covered work conveyed by you (or copies made
4368 from those copies), or (b) primarily for and in connection with
4369 specific products or compilations that contain the covered work,
4370 unless you entered into that arrangement, or that patent license
4371 was granted, prior to 28 March 2007.
4373 Nothing in this License shall be construed as excluding or limiting
4374 any implied license or other defenses to infringement that may
4375 otherwise be available to you under applicable patent law.
4377 12. No Surrender of Others' Freedom.
4379 If conditions are imposed on you (whether by court order,
4380 agreement or otherwise) that contradict the conditions of this
4381 License, they do not excuse you from the conditions of this
4382 License. If you cannot convey a covered work so as to satisfy
4383 simultaneously your obligations under this License and any other
4384 pertinent obligations, then as a consequence you may not convey it
4385 at all. For example, if you agree to terms that obligate you to
4386 collect a royalty for further conveying from those to whom you
4387 convey the Program, the only way you could satisfy both those
4388 terms and this License would be to refrain entirely from conveying
4391 13. Use with the GNU Affero General Public License.
4393 Notwithstanding any other provision of this License, you have
4394 permission to link or combine any covered work with a work licensed
4395 under version 3 of the GNU Affero General Public License into a
4396 single combined work, and to convey the resulting work. The terms
4397 of this License will continue to apply to the part which is the
4398 covered work, but the special requirements of the GNU Affero
4399 General Public License, section 13, concerning interaction through
4400 a network will apply to the combination as such.
4402 14. Revised Versions of this License.
4404 The Free Software Foundation may publish revised and/or new
4405 versions of the GNU General Public License from time to time.
4406 Such new versions will be similar in spirit to the present
4407 version, but may differ in detail to address new problems or
4410 Each version is given a distinguishing version number. If the
4411 Program specifies that a certain numbered version of the GNU
4412 General Public License "or any later version" applies to it, you
4413 have the option of following the terms and conditions either of
4414 that numbered version or of any later version published by the
4415 Free Software Foundation. If the Program does not specify a
4416 version number of the GNU General Public License, you may choose
4417 any version ever published by the Free Software Foundation.
4419 If the Program specifies that a proxy can decide which future
4420 versions of the GNU General Public License can be used, that
4421 proxy's public statement of acceptance of a version permanently
4422 authorizes you to choose that version for the Program.
4424 Later license versions may give you additional or different
4425 permissions. However, no additional obligations are imposed on any
4426 author or copyright holder as a result of your choosing to follow a
4429 15. Disclaimer of Warranty.
4431 THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
4432 APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE
4433 COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS"
4434 WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED,
4435 INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
4436 MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE
4437 RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU.
4438 SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL
4439 NECESSARY SERVICING, REPAIR OR CORRECTION.
4441 16. Limitation of Liability.
4443 IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
4444 WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES
4445 AND/OR CONVEYS THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU
4446 FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR
4447 CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE
4448 THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA
4449 BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD
4450 PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
4451 PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF
4452 THE POSSIBILITY OF SUCH DAMAGES.
4454 17. Interpretation of Sections 15 and 16.
4456 If the disclaimer of warranty and limitation of liability provided
4457 above cannot be given local legal effect according to their terms,
4458 reviewing courts shall apply local law that most closely
4459 approximates an absolute waiver of all civil liability in
4460 connection with the Program, unless a warranty or assumption of
4461 liability accompanies a copy of the Program in return for a fee.
4464 END OF TERMS AND CONDITIONS
4465 ===========================
4467 How to Apply These Terms to Your New Programs
4468 =============================================
4470 If you develop a new program, and you want it to be of the greatest
4471 possible use to the public, the best way to achieve this is to make it
4472 free software which everyone can redistribute and change under these
4475 To do so, attach the following notices to the program. It is safest
4476 to attach them to the start of each source file to most effectively
4477 state the exclusion of warranty; and each file should have at least the
4478 "copyright" line and a pointer to where the full notice is found.
4480 ONE LINE TO GIVE THE PROGRAM'S NAME AND A BRIEF IDEA OF WHAT IT DOES.
4481 Copyright (C) YEAR NAME OF AUTHOR
4483 This program is free software: you can redistribute it and/or modify
4484 it under the terms of the GNU General Public License as published by
4485 the Free Software Foundation, either version 3 of the License, or (at
4486 your option) any later version.
4488 This program is distributed in the hope that it will be useful, but
4489 WITHOUT ANY WARRANTY; without even the implied warranty of
4490 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
4491 General Public License for more details.
4493 You should have received a copy of the GNU General Public License
4494 along with this program. If not, see `http://www.gnu.org/licenses/'.
4496 Also add information on how to contact you by electronic and paper
4499 If the program does terminal interaction, make it output a short
4500 notice like this when it starts in an interactive mode:
4502 PROGRAM Copyright (C) YEAR NAME OF AUTHOR
4503 This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
4504 This is free software, and you are welcome to redistribute it
4505 under certain conditions; type `show c' for details.
4507 The hypothetical commands `show w' and `show c' should show the
4508 appropriate parts of the General Public License. Of course, your
4509 program's commands might be different; for a GUI interface, you would
4512 You should also get your employer (if you work as a programmer) or
4513 school, if any, to sign a "copyright disclaimer" for the program, if
4514 necessary. For more information on this, and how to apply and follow
4515 the GNU GPL, see `http://www.gnu.org/licenses/'.
4517 The GNU General Public License does not permit incorporating your
4518 program into proprietary programs. If your program is a subroutine
4519 library, you may consider it more useful to permit linking proprietary
4520 applications with the library. If this is what you want to do, use the
4521 GNU Lesser General Public License instead of this License. But first,
4522 please read `http://www.gnu.org/philosophy/why-not-lgpl.html'.
4527 -animateSpeed, option: See 4.6. (line 2798)
4528 -autoDisplayComment, option: See 4.6. (line 2803)
4529 -autoDisplayTags, option: See 4.6. (line 2803)
4530 -pasteSelection, option: See 4.6. (line 2809)
4531 .icsrc: See 4.4. (line 2176)
4532 <, Button: See 3.2. (line 409)
4533 <<, Button: See 3.2. (line 442)
4534 >, Button: See 3.2. (line 429)
4535 >>, Button: See 3.2. (line 461)
4536 abort, ICS command: See 5. (line 3212)
4537 Abort, Menu Item: See 3.5. (line 749)
4538 About XBoard, Menu Item: See 3.8. (line 1519)
4539 Absolute Analysis Scores, Menu Item: See 3.7. (line 877)
4540 absoluteAnalysisScores, option: See 4.6. (line 2847)
4541 accept, ICS command: See 5. (line 3199)
4542 Accept, Menu Item: See 3.5. (line 721)
4543 Action, Menu: See 3.5. (line 720)
4544 adapterCommand, option: See 4.2. (line 1877)
4545 adjourn, ICS command: See 5. (line 3212)
4546 Adjourn, Menu Item: See 3.5. (line 744)
4547 Adjudicate Draw, Menu Item: See 3.5. (line 777)
4548 Adjudicate to Black, Menu Item: See 3.5. (line 777)
4549 Adjudicate to White, Menu Item: See 3.5. (line 777)
4550 adjudicateDrawMoves, option: See 4.7. (line 2868)
4551 adjudicateLossThreshold, option: See 4.7. (line 2860)
4552 Adjudications, Menu Item: See 3.7. (line 1107)
4553 afterGame, option: See 4.3. (line 2060)
4554 afterTourney, option: See 4.3. (line 2060)
4555 alarm, option: See 4.4. (line 2262)
4556 Almost Always Queen, Menu Item: See 3.7. (line 881)
4557 Also match left-right flipped position, Menu Item:See 3.7. (line 1418)
4558 Also match reversed colors, Menu Item: See 3.7. (line 1418)
4559 alwaysPromoteToQueen, option: See 4.6. (line 2557)
4560 Analysis Mode, Menu Item: See 3.4. (line 577)
4561 Analyze Game, Menu Item: See 3.4. (line 625)
4562 Animate Dragging, Menu Item: See 3.7. (line 895)
4563 Animate Moving, Menu Item: See 3.7. (line 902)
4564 animate, option: See 4.6. (line 2794)
4565 animateDragging, option: See 4.6. (line 2790)
4566 animateMoving, option: See 4.6. (line 2794)
4567 Animation Speed, Menu Item: See 3.7. (line 1064)
4568 Annotate, Menu Item: See 3.2. (line 385)
4569 appendPV, option: See 4.6. (line 2841)
4570 at sign, option: See 4.5. (line 2469)
4571 Authors: See 10. (line 3422)
4572 Auto Comment, Menu Item: See 3.7. (line 1143)
4573 Auto Flag, Menu Item: See 3.7. (line 911)
4574 Auto Flip View, Menu Item: See 3.7. (line 921)
4575 Auto Kibitz, Menu Item: See 3.7. (line 1134)
4576 Auto Observe, Menu Item: See 3.7. (line 1151)
4577 Auto Raise Board, Menu Item: See 3.7. (line 1164)
4578 Auto Save, Menu Item: See 3.7. (line 1169)
4579 Auto-Refresh Seek Graph, Menu Item: See 3.7. (line 1211)
4580 autobs, option: See 4.4. (line 2203)
4581 autoCallFlag, option: See 4.4. (line 2199)
4582 autocomm, option: See 4.4. (line 2195)
4583 autoComment, option: See 4.4. (line 2195)
4584 autoCopyPV, option: See 4.6. (line 2814)
4585 autoflag, option: See 4.4. (line 2199)
4586 autoflip, option: See 4.6. (line 2617)
4587 autoFlipView, option: See 4.6. (line 2617)
4588 autoKibitz, option: See 4.4. (line 2207)
4589 autoLogo, option: See 4.6. (line 2521)
4590 autoObserve, option: See 4.4. (line 2203)
4591 autoraise, option: See 4.6. (line 2613)
4592 autoRaiseBoard, option: See 4.6. (line 2613)
4593 autoRefresh, option: See 4.4. (line 2224)
4594 autosave, option: See 4.5. (line 2410)
4595 autoSaveGames, option: See 4.5. (line 2410)
4596 Back to Start, Menu Item: See 3.2. (line 442)
4597 Background Observe, Menu Item: See 3.7. (line 1176)
4598 backgroundObserve, option: See 4.4. (line 2230)
4599 Backward, Menu Item: See 3.2. (line 409)
4600 Basic operation: See 2. (line 57)
4601 bell, option: See 4.6. (line 2544)
4602 blackPieceColor, option: See 4.6. (line 2747)
4603 blind, option: See 4.6. (line 2682)
4604 Blindfold, Menu Item: See 3.7. (line 934)
4605 blindfold, option: See 4.6. (line 2682)
4606 board size: See 4.6. (line 2569)
4607 Board, Menu Item: See 3.3. (line 550)
4608 boardHeight, option: See 4.8. (line 3016)
4609 boardSize, option: See 4.6. (line 2569)
4610 boardWidth, option: See 4.8. (line 3021)
4611 Book, Menu Item: See 3.6. (line 839)
4612 bookDepth, option: See 4.2. (line 1921)
4613 bookVariation, option: See 4.2. (line 1925)
4614 Bug reports: See 9. (line 3404)
4615 Bugs <1>: See 9. (line 3404)
4616 Bugs: See 8. (line 3349)
4617 buttons, option: See 4.6. (line 2639)
4618 Call Flag, Menu Item: See 3.5. (line 733)
4619 checkMates, option: See 4.7. (line 2873)
4620 Chess engine options: See 4.1. (line 1602)
4621 CHESSDIR: See 7. (line 3340)
4622 clock, option: See 4.1. (line 1619)
4623 clockFont, option: See 4.6. (line 2703)
4624 clockMode, option: See 4.1. (line 1619)
4625 CloneTourney, Menu Item: See 3.7. (line 1369)
4626 cmail: See 11. (line 3474)
4627 colorChallenge, option: See 4.4. (line 2305)
4628 colorChannel, option: See 4.4. (line 2305)
4629 colorChannel1, option: See 4.4. (line 2305)
4630 colorCShout, option: See 4.4. (line 2305)
4631 Colorize Messages, Menu Item: See 3.7. (line 1246)
4632 colorize, option: See 4.4. (line 2289)
4633 colorizeMessages, option: See 4.4. (line 2289)
4634 colorKibitz, option: See 4.4. (line 2305)
4635 colorNickNames, option: See 4.8. (line 3076)
4636 colorNormal, option: See 4.4. (line 2305)
4637 colorRequest, option: See 4.4. (line 2305)
4638 Colors <1>: See 4.6. (line 2747)
4639 Colors: See 4.4. (line 2289)
4640 colorSeek, option: See 4.4. (line 2305)
4641 colorShout, option: See 4.4. (line 2305)
4642 colorSShout, option: See 4.4. (line 2305)
4643 colorTell, option: See 4.4. (line 2305)
4644 Comments, Menu Item: See 3.3. (line 526)
4645 Common Engine, Menu Item: See 3.7. (line 1083)
4646 Contributors: See 10. (line 3422)
4647 coordFont, option: See 4.6. (line 2709)
4648 coords, option: See 4.6. (line 2609)
4649 Copy Game List, Menu Item: See 3.2. (line 285)
4650 Copy Game, Menu Item: See 3.2. (line 266)
4651 Copy Position, Menu Item: See 3.2. (line 275)
4652 cy, option: See 4.3. (line 2022)
4653 darkBackTextureFile, option: See 4.6. (line 2783)
4654 darkSquareColor, option: See 4.6. (line 2747)
4655 dateThreshold, option: See 4.8. (line 3137)
4656 debug, option: See 4.8. (line 3083)
4657 debugFile, option: See 4.8. (line 3086)
4658 debugMode, option: See 4.8. (line 3083)
4659 decline, ICS command: See 5. (line 3199)
4660 Decline, Menu Item: See 3.5. (line 727)
4661 Default number of Games, Menu Item: See 3.7. (line 1311)
4662 defaultCacheSizeEGTB, option: See 4.2. (line 1956)
4663 defaultFrcPosition, option: See 4.8. (line 3036)
4664 defaultHashSize, option: See 4.2. (line 1950)
4665 defaultMatchGames, option: See 4.3. (line 1995)
4666 defaultPathEGTB, option: See 4.2. (line 1962)
4667 defaultTourneyName, option: See 4.3. (line 2039)
4668 delayAfterQuit, option: See 4.8. (line 3121)
4669 delayBeforeQuit, option: See 4.8. (line 3121)
4670 Disable own engine bools be default, Menu Item:See 3.7. (line 1346)
4671 discourageOwnBooks, option: See 4.2. (line 1915)
4672 disguisePromotedPieces, option: See 4.4. (line 2253)
4673 display, option: See 4.6. (line 2499)
4674 drag, option: See 4.6. (line 2790)
4675 draw, ICS command: See 5. (line 3212)
4676 Draw, Menu Item: See 3.5. (line 739)
4677 Drop Menu, Menu Item: See 3.7. (line 940)
4678 dropMenu, option: See 4.6. (line 2820)
4679 Dual Board, Menu Item: See 3.7. (line 1183)
4680 dualBoard, option: See 4.4. (line 2244)
4681 Edit Book, Menu Item: See 3.2. (line 374)
4682 Edit Comment, Menu Item: See 3.2. (line 367)
4683 Edit Game, Menu Item: See 3.2. (line 300)
4684 Edit Menu: See 3.2. (line 265)
4685 Edit Position, Menu Item: See 3.2. (line 316)
4686 Edit Tags, Menu Item: See 3.2. (line 343)
4687 egtFormats, option: See 4.2. (line 1966)
4688 Elo of strongest player, Menu Item: See 3.7. (line 1388)
4689 Elo of weakest player, Menu Item: See 3.7. (line 1388)
4690 eloThresholdAny, option: See 4.8. (line 3132)
4691 eloThresholdBoth, option: See 4.8. (line 3132)
4692 Enable Variation Trees, Menu Item: See 3.7. (line 946)
4693 Engine #1 Settings, Menu Item: See 3.6. (line 817)
4694 Engine #2 Settings, Menu Item: See 3.6. (line 817)
4695 Engine Menu: See 3.6. (line 785)
4696 Engine Settings: See 4.2. (line 1859)
4697 Engine Settings, Menu Item: See 3.6. (line 817)
4698 engineDebugOutput, option: See 4.8. (line 3093)
4699 Environment variables: See 7. (line 3340)
4700 evalThreshold, option: See 4.6. (line 2649)
4701 evalZoom, option: See 4.6. (line 2645)
4702 examine, ICS command: See 5. (line 3235)
4703 Exit, Menu Item: See 3.1. (line 260)
4704 exit, option: See 4.6. (line 2549)
4705 fb, option: See 4.1. (line 1737)
4706 fcp, option: See 4.1. (line 1719)
4707 fd, option: See 4.1. (line 1752)
4708 fe, option: See 4.1. (line 1726)
4709 fh, option: See 4.1. (line 1744)
4710 File Menu: See 3.1. (line 129)
4711 File with Start Positions, Menu Item: See 3.7. (line 1330)
4712 find position, Menu Item: See 3.7. (line 1393)
4713 finger, ICS command: See 5. (line 3222)
4714 First Black Move, Menu Item: See 3.7. (line 1221)
4715 First White Move, Menu Item: See 3.7. (line 1221)
4716 firstChessProgram, option: See 4.1. (line 1719)
4717 firstComputerString, option: See 4.1. (line 1787)
4718 firstDirectory, option: See 4.1. (line 1752)
4719 firstEngine, option: See 4.1. (line 1726)
4720 firstHasOwnBookUCI, option: See 4.2. (line 1909)
4721 firstHost, option: See 4.1. (line 1744)
4722 firstInitString, option: See 4.1. (line 1761)
4723 firstIsUCI, option: See 4.2. (line 1861)
4724 firstLogo, option: See 4.6. (line 2515)
4725 firstNeedsNoncompliantFEN, option: See 4.1. (line 1837)
4726 firstNPS, option: See 4.1. (line 1642)
4727 firstOptions, option: See 4.1. (line 1826)
4728 firstPgnName, option: See 4.2. (line 1944)
4729 firstPlaysBlack, option: See 4.1. (line 1737)
4730 firstProtocolVersion, option: See 4.1. (line 1804)
4731 firstScoreAbs, option: See 4.1. (line 1812)
4732 firstTimeOdds, option: See 4.1. (line 1660)
4733 firstXBook, option: See 4.2. (line 1909)
4734 Flash Moves, Menu Item: See 3.7. (line 1059)
4735 Flash Rate, Menu Item: See 3.7. (line 1059)
4736 flash, option: See 4.6. (line 2665)
4737 flashCount, option: See 4.6. (line 2665)
4738 flashRate, option: See 4.6. (line 2665)
4739 Flip View, Menu Item: See 3.3. (line 476)
4740 flip, option: See 4.6. (line 2621)
4741 flipView, option: See 4.6. (line 2621)
4742 fn, option: See 4.2. (line 1944)
4743 fNoOwnBookUCI, option: See 4.2. (line 1909)
4744 Font, clock: See 4.6. (line 2703)
4745 Font, coordinates: See 4.6. (line 2709)
4746 Font, message: See 4.6. (line 2716)
4747 fontSizeTolerance, option: See 4.6. (line 2722)
4748 Forward to End, Menu Item: See 3.2. (line 461)
4749 Forward, Menu Item: See 3.2. (line 429)
4750 fSAN, option: See 4.6. (line 2691)
4751 fUCCI, option: See 4.2. (line 1871)
4752 fUCI, option: See 4.2. (line 1861)
4753 fUSI, option: See 4.2. (line 1871)
4754 Game File with Opening Lines, Menu Item: See 3.7. (line 1330)
4755 Game List Tags, Menu Item <1>: See 3.7. (line 1441)
4756 Game List Tags, Menu Item: See 3.3. (line 559)
4757 Game Number, Menu Item: See 3.7. (line 1330)
4758 gameListTags, option: See 4.5. (line 2460)
4759 games, ICS command: See 5. (line 3188)
4760 gateway, option: See 4.4. (line 2126)
4761 General Options, Menu Item: See 3.7. (line 873)
4762 geometry, option: See 4.6. (line 2499)
4763 Get Move List, Menu Item: See 3.7. (line 1188)
4764 getMoveList, option: See 4.4. (line 2258)
4765 Help Menu: See 3.8. (line 1504)
4766 help, ICS command: See 5. (line 3173)
4767 Hide Thinking, Menu Item: See 3.7. (line 953)
4768 highlight Arrow, option: See 4.6. (line 2678)
4769 Highlight Last Move, Menu Item: See 3.7. (line 963)
4770 Highlight with Arrow, Menu Item: See 3.7. (line 969)
4771 highlight, option: See 4.6. (line 2674)
4772 highlightLastMove, option: See 4.6. (line 2674)
4773 highlightMoveWithArrow, option: See 4.6. (line 2678)
4774 highlightSquareColor, option: See 4.6. (line 2747)
4775 Hint, Menu Item: See 3.6. (line 836)
4776 holdingsSize, option: See 4.8. (line 3028)
4777 iconic, option: See 4.6. (line 2499)
4778 ICS: See 5. (line 3144)
4779 ICS Alarm Time, Menu Item: See 3.7. (line 1236)
4780 ICS Alarm, Menu Item: See 3.7. (line 1236)
4781 ICS Client, Menu Item: See 3.4. (line 664)
4782 ICS Input Box, Menu Item: See 3.3. (line 531)
4783 ICS options: See 4.4. (line 2081)
4784 ICS Options, Menu Item: See 3.7. (line 1130)
4785 ICS, addresses: See 5. (line 3144)
4786 ics, option: See 4.4. (line 2082)
4787 icsAlarm, option: See 4.4. (line 2262)
4788 icsAlarmTime, option: See 4.4. (line 2266)
4789 icscomm, option: See 4.4. (line 2134)
4790 icshelper, option: See 4.4. (line 2100)
4791 icshost, option: See 4.4. (line 2087)
4792 icsinput, option: See 4.4. (line 2191)
4793 icslogon, option: See 4.4. (line 2176)
4794 icsport, option: See 4.4. (line 2096)
4795 inc, option: See 4.1. (line 1612)
4796 Info XBoard, Menu Item: See 3.8. (line 1505)
4797 init, option: See 4.5. (line 2469)
4798 initalMode, option: See 4.8. (line 2949)
4799 initString, option: See 4.1. (line 1761)
4800 Internet Chess Server: See 5. (line 3144)
4801 internetChessServerCommPort, option: See 4.4. (line 2134)
4802 internetChessServerHelper, option: See 4.4. (line 2100)
4803 internetChessServerHost, option: See 4.4. (line 2087)
4804 internetChessServerInputBox, option: See 4.4. (line 2191)
4805 internetChessServerLogonScript, option: See 4.4. (line 2176)
4806 internetChessServerMode, option: See 4.4. (line 2082)
4807 internetChessServerPort, option: See 4.4. (line 2096)
4809 See ``Introduction''. (line 9)
4810 Keys: See 3.9. (line 1524)
4811 legal, option: See 4.6. (line 2565)
4812 lgf, option: See 4.5. (line 2373)
4813 lgi, option: See 4.5. (line 2373)
4814 lightSquareColor, option: See 4.6. (line 2747)
4815 Limitations: See 8. (line 3349)
4816 liteBackTextureFile, option: See 4.6. (line 2783)
4817 Load and Save options: See 4.5. (line 2371)
4818 Load Engine, Menu Item: See 3.6. (line 786)
4819 Load Game Options, Menu Item: See 3.7. (line 1377)
4820 Load Game, Menu Item: See 3.1. (line 173)
4821 Load Next Game, Menu Item: See 3.9. (line 1528)
4822 Load Next Position, Menu Item: See 3.1. (line 215)
4823 Load Position, Menu Item: See 3.1. (line 206)
4824 Load Previous Game, Menu Item: See 3.9. (line 1532)
4825 Load Previous Position, Menu Item: See 3.1. (line 219)
4826 loadGameFile, option: See 4.5. (line 2373)
4827 loadGameIndex, option: See 4.5. (line 2373)
4828 loadPositionFile, option: See 4.5. (line 2418)
4829 loadPositionIndex, option: See 4.5. (line 2418)
4830 logoDir, option: See 4.6. (line 2521)
4831 logoSize, option: See 4.6. (line 2508)
4832 lowTimeWarning, option: See 4.4. (line 2270)
4833 lowTimeWarningColor, option: See 4.6. (line 2747)
4834 lpf, option: See 4.5. (line 2418)
4835 lpi, option: See 4.5. (line 2418)
4836 Machine Black, Menu Item: See 3.4. (line 569)
4837 Machine match, Menu Item: See 3.4. (line 688)
4838 Machine White, Menu Item: See 3.4. (line 565)
4839 Mail Move, Menu Item: See 3.1. (line 257)
4840 Major modes: See 1. (line 19)
4841 Man XBoard, Menu Item: See 3.8. (line 1512)
4842 Match Options, Menu Item: See 3.7. (line 1252)
4843 matchGames, option: See 4.1. (line 1697)
4844 matchMode, option: See 4.1. (line 1709)
4845 matchPause, option: See 4.3. (line 2000)
4846 materialDraws, option: See 4.7. (line 2885)
4847 mcBookMode, option: See 4.2. (line 1929)
4848 Menu, Action: See 3.5. (line 720)
4849 Menu, Edit: See 3.2. (line 265)
4850 Menu, Engine: See 3.6. (line 785)
4851 Menu, File: See 3.1. (line 129)
4852 Menu, Help: See 3.8. (line 1504)
4853 Menu, Mode: See 3.4. (line 564)
4854 Menu, Options: See 3.7. (line 872)
4855 Menu, View: See 3.3. (line 475)
4856 Menus: See 3. (line 126)
4857 messageFont, option: See 4.6. (line 2716)
4858 mg, option: See 4.1. (line 1697)
4859 mm, option: See 4.1. (line 1709)
4860 Mode Menu: See 3.4. (line 564)
4861 mode, option: See 4.8. (line 2949)
4862 mono, option: See 4.6. (line 2653)
4863 monoMode, option: See 4.6. (line 2653)
4864 Move Now, Menu Item: See 3.6. (line 849)
4865 Move Sound, Menu Item: See 3.7. (line 974)
4866 moves, option: See 4.4. (line 2258)
4867 movesound, option: See 4.6. (line 2544)
4868 movesPerSession, option: See 4.1. (line 1608)
4869 mps, option: See 4.1. (line 1608)
4870 msLoginDelay, option: See 4.4. (line 2185)
4871 nameOfDebugFile, option: See 4.8. (line 3086)
4872 narrow, Menu Item: See 3.7. (line 1393)
4873 ncp, option: See 4.8. (line 2920)
4874 New Game, Menu Item: See 3.1. (line 130)
4875 New Shuffle Game, Menu Item: See 3.1. (line 139)
4876 New variant, Menu Item: See 3.1. (line 154)
4877 niceEngines, option: See 4.1. (line 1818)
4878 noChessProgram, option: See 4.8. (line 2920)
4879 noGUI, option: See 4.6. (line 2502)
4880 null move: See 3.4. (line 577)
4881 number of consecutive positions, Menu Item: See 3.7. (line 1411)
4882 Number of tourney cycles, Menu Item: See 3.7. (line 1311)
4883 observe, ICS command: See 5. (line 3231)
4884 oldmoves, ICS command: See 5. (line 3235)
4885 oldsave, option: See 4.5. (line 2456)
4886 oldSaveStyle, option: See 4.5. (line 2456)
4887 One-Click Moving, Menu Item: See 3.7. (line 983)
4888 oneClickMove, option: See 4.6. (line 2537)
4889 onlyOwnGames, option: See 4.5. (line 2414)
4890 Open Chat Window, Menu Item: See 3.3. (line 538)
4891 Options: See 4. (line 1583)
4892 Options Menu: See 3.7. (line 872)
4893 Options, adjudication: See 4.7. (line 2859)
4894 options, Chess engine: See 4.1. (line 1602)
4895 Options, ICS: See 4.4. (line 2081)
4896 Options, Load and Save: See 4.5. (line 2371)
4897 Options, miscellaneous: See 4.8. (line 2919)
4898 Options, Tournament: See 4.3. (line 1994)
4899 Options, User interface: See 4.6. (line 2495)
4900 Other programs: See 12. (line 3672)
4901 overrideLineGap, option: See 4.6. (line 2602)
4902 pairingEngine, option: See 4.3. (line 2047)
4903 participants, option: See 4.3. (line 2026)
4904 Paste Game, Menu Item: See 3.2. (line 291)
4905 Paste Position, Menu Item: See 3.2. (line 295)
4906 Pause, Menu Item: See 3.4. (line 694)
4907 Periodic Updates, Menu Item: See 3.7. (line 995)
4908 periodic, option: See 4.6. (line 2686)
4909 periodicUpdates, option: See 4.6. (line 2686)
4910 pgnEventHeader, option: See 4.5. (line 2443)
4911 pgnExtendedInfo, option: See 4.5. (line 2438)
4912 pgnNumberTag, option: See 4.5. (line 2447)
4913 pid, option: See 4.6. (line 2731)
4914 pieceImageDirectory, option: See 4.6. (line 2731)
4915 pieceMenu, option: See 4.6. (line 2826)
4916 pieceNickNames, option: See 4.8. (line 3067)
4917 pieceToCharTable, option: See 4.8. (line 3041)
4918 Play Move(s) of Clicked PV, Menu Item: See 3.7. (line 1001)
4919 polyglotBook, option: See 4.2. (line 1900)
4920 polyglotDir, option: See 4.2. (line 1893)
4921 Ponder Next Move, Menu Item: See 3.7. (line 1009)
4922 ponder, option: See 4.1. (line 1688)
4923 ponderNextMove, option: See 4.1. (line 1688)
4924 Popup Exit Message, Menu Item: See 3.7. (line 1015)
4925 Popup Move Errors, Menu Item: See 3.7. (line 1021)
4926 popup, option: See 4.6. (line 2553)
4927 popupExitMessage, option: See 4.6. (line 2549)
4928 popupMoveErrors, option: See 4.6. (line 2553)
4929 Position Number, Menu Item: See 3.7. (line 1330)
4930 pre, option: See 4.4. (line 2274)
4931 preblack, option: See 4.4. (line 2280)
4932 Premove Black, Menu Item: See 3.7. (line 1221)
4933 Premove White, Menu Item: See 3.7. (line 1221)
4934 Premove, Menu Item: See 3.7. (line 1221)
4935 premove, option: See 4.4. (line 2274)
4936 premoveBlack, option: See 4.4. (line 2280)
4937 premoveBlackText, option: See 4.4. (line 2280)
4938 premoveHighlightColor, option: See 4.6. (line 2747)
4939 premoveWhite, option: See 4.4. (line 2280)
4940 premoveWhiteText, option: See 4.4. (line 2280)
4941 prewhite, option: See 4.4. (line 2280)
4942 Problems: See 9. (line 3404)
4943 queen, option: See 4.6. (line 2557)
4944 Quiet Play, Menu Item: See 3.7. (line 1200)
4945 quiet, option: See 4.4. (line 2285)
4946 quietPlay, option: See 4.4. (line 2285)
4947 recentEngineList, option: See 4.6. (line 2527)
4948 recentEngines, option: See 4.6. (line 2527)
4949 Recently Used Engines, In Menu: See 3.6. (line 861)
4950 Reload CMail Message, Menu Item: See 3.1. (line 257)
4951 Reload Same Game, Menu Item: See 3.9. (line 1537)
4952 Reload Same Position, Menu Item: See 3.9. (line 1542)
4953 remoteShell, option: See 4.8. (line 3107)
4954 remoteUser, option: See 4.8. (line 3112)
4955 Replace Engine, Menu Item: See 3.7. (line 1354)
4956 Reporting bugs: See 9. (line 3404)
4957 Reporting problems: See 9. (line 3404)
4958 Resign, Menu Item: See 3.5. (line 755)
4959 resource name, option: See 4.6. (line 2499)
4960 results, option: See 4.3. (line 2033)
4961 Retract Move, Menu Item: See 3.6. (line 853)
4962 reuse, option: See 4.1. (line 1795)
4963 reuse2, option: See 4.1. (line 1795)
4964 reuseFirst, option: See 4.1. (line 1795)
4965 reuseSecond, option: See 4.1. (line 1795)
4966 Revert, Menu Item: See 3.2. (line 385)
4967 Rewind Index after, Menu Item: See 3.7. (line 1330)
4968 ringBellAfterMoves, option: See 4.6. (line 2544)
4969 rsh, option: See 4.8. (line 3107)
4970 ruleMoves, option: See 4.7. (line 2903)
4971 ruser, option: See 4.8. (line 3112)
4972 sameColorGames, option: See 4.1. (line 1713)
4973 Save Game Options, Menu Item: See 3.7. (line 1425)
4974 Save Game, Menu Item: See 3.1. (line 224)
4975 Save Games as Book, Menu Item: See 3.1. (line 245)
4976 Save Position, Menu Item: See 3.1. (line 236)
4977 Save Settings Now, Menu Item: See 3.7. (line 1463)
4978 Save Settings on Exit, Menu Item: See 3.7. (line 1496)
4979 Save Tourney Games, Menu Item: See 3.7. (line 1322)
4980 saveGameFile, option: See 4.5. (line 2405)
4981 saveOutOfBookInfo, option: See 4.5. (line 2451)
4982 savePositionFile, option: See 4.5. (line 2433)
4983 saveSettingsFile, option: See 4.5. (line 2469)
4984 saveSettingsOnExit, option: See 4.5. (line 2489)
4985 Scores in Move List, Menu Item: See 3.7. (line 1030)
4986 scoreWhite, option: See 4.6. (line 2852)
4987 scp, option: See 4.1. (line 1722)
4988 sd, option: See 4.1. (line 1633)
4989 se, option: See 4.1. (line 1734)
4990 Search mode, Menu Item: See 3.7. (line 1393)
4991 searchDepth, option: See 4.1. (line 1633)
4992 searchMode, option: See 4.8. (line 3127)
4993 searchTime, option: See 4.1. (line 1626)
4994 secondChessProgram, option: See 4.1. (line 1722)
4995 secondComputerString, option: See 4.1. (line 1787)
4996 secondDirectory, option: See 4.1. (line 1752)
4997 secondEngine, option: See 4.1. (line 1734)
4998 secondHasOwnBookUCI, option: See 4.2. (line 1909)
4999 secondHost, option: See 4.1. (line 1744)
5000 secondInitString, option: See 4.1. (line 1761)
5001 secondIsUCI, option: See 4.2. (line 1861)
5002 secondLogo, option: See 4.6. (line 2515)
5003 secondNeedsNoncompliantFEN, option: See 4.1. (line 1837)
5004 secondNPS, option: See 4.1. (line 1642)
5005 secondOptions, option: See 4.1. (line 1826)
5006 secondPgnName, option: See 4.2. (line 1944)
5007 secondProtocolVersion, option: See 4.1. (line 1804)
5008 secondScoreAbs, option: See 4.1. (line 1812)
5009 secondTimeOdds, option: See 4.1. (line 1660)
5010 secondXBook, option: See 4.2. (line 1909)
5011 seedBase, option: See 4.3. (line 2073)
5012 Seek Graph, Menu Item: See 3.7. (line 1206)
5013 seekGraph, option: See 4.4. (line 2215)
5014 Select Engine, Menu Item: See 3.7. (line 1286)
5015 set, ICS command: See 5. (line 3228)
5016 Settings, Engine: See 4.2. (line 1859)
5017 SettingsFile, option: See 4.5. (line 2469)
5018 sg, option: See 4.4. (line 2215)
5019 sgf, option: See 4.5. (line 2405)
5020 sh, option: See 4.1. (line 1744)
5021 Shortcut keys: See 3.9. (line 1524)
5022 Show Coords, Menu Item: See 3.7. (line 1034)
5023 Show Engine Output, Menu Item: See 3.3. (line 481)
5024 Show Evaluation Graph, Menu Item: See 3.3. (line 511)
5025 Show Game List, Menu Item: See 3.3. (line 517)
5026 Show Last Move, Shortcut Key: See 3.9. (line 1525)
5027 Show Move History, Menu Item: See 3.3. (line 505)
5028 Show Target Squares, Menu Item: See 3.7. (line 1038)
5029 showButtonBar, option: See 4.6. (line 2639)
5030 showCoords, option: See 4.6. (line 2609)
5031 showEvalInMoveHistory, option: See 4.6. (line 2698)
5032 showTargetSquares, option: See 4.6. (line 2658)
5033 showThinking, option: See 4.1. (line 1678)
5034 shuffleOpenings, option: See 4.1. (line 1851)
5035 size, option: See 4.6. (line 2569)
5036 sn, option: See 4.2. (line 1944)
5037 sNoOwnBookUCI, option: See 4.2. (line 1909)
5038 Sound Options, Menu Item: See 3.7. (line 1445)
5039 soundChallenge, option: See 4.4. (line 2340)
5040 soundChannel, option: See 4.4. (line 2340)
5041 soundChannel1, option: See 4.4. (line 2340)
5042 soundCShout, option: See 4.4. (line 2340)
5043 soundDirectory, option: See 4.4. (line 2327)
5044 soundIcsAlarm, option: See 4.4. (line 2349)
5045 soundIcsDraw, option: See 4.4. (line 2360)
5046 soundIcsLoss, option: See 4.4. (line 2356)
5047 soundIcsUnfinished, option: See 4.4. (line 2364)
5048 soundIcsWin, option: See 4.4. (line 2352)
5049 soundKibitz, option: See 4.4. (line 2340)
5050 soundMove, option: See 4.4. (line 2346)
5051 soundProgram, option: See 4.4. (line 2318)
5052 soundRequest, option: See 4.4. (line 2340)
5053 Sounds: See 4.4. (line 2318)
5054 soundSeek, option: See 4.4. (line 2340)
5055 soundShout, option: See 4.4. (line 2340)
5056 soundSShout, option: See 4.4. (line 2340)
5057 soundTell, option: See 4.4. (line 2340)
5058 spf, option: See 4.5. (line 2433)
5059 sSAN, option: See 4.6. (line 2691)
5060 st, option: See 4.1. (line 1626)
5061 Stop Examining, Menu Item: See 3.5. (line 764)
5062 Stop Observing, Menu Item: See 3.5. (line 759)
5063 sUCCI, option: See 4.2. (line 1871)
5064 sUCI, option: See 4.2. (line 1861)
5065 sUSI, option: See 4.2. (line 1871)
5066 sweepPromotion, option: See 4.6. (line 2561)
5067 Sync after cycle, Menu Item: See 3.7. (line 1277)
5068 Sync after round, Menu Item: See 3.7. (line 1277)
5069 syncAfterCycle, option: See 4.3. (line 2068)
5070 syncAfterRound, option: See 4.3. (line 2068)
5071 Tags, Menu Item: See 3.3. (line 521)
5072 tc, option: See 4.1. (line 1603)
5073 td, option: See 4.5. (line 2399)
5074 telnet, option: See 4.4. (line 2108)
5075 telnetProgram, option: See 4.4. (line 2117)
5076 Test Legality, Menu Item: See 3.7. (line 1045)
5077 testClaims, option: See 4.7. (line 2879)
5078 testLegality, option: See 4.6. (line 2565)
5079 tf, option: See 4.3. (line 2008)
5080 thinking, option: See 4.1. (line 1678)
5081 Time Control, Menu Item: See 3.7. (line 1073)
5082 timeControl, option: See 4.1. (line 1603)
5083 timeDelay, option: See 4.5. (line 2399)
5084 timeIncrement, option: See 4.1. (line 1612)
5085 timeOddsMode, option: See 4.1. (line 1666)
5086 title, option: See 4.6. (line 2631)
5087 titleInWindow, option: See 4.6. (line 2631)
5088 Tournament file, Menu item: See 3.7. (line 1257)
5089 Tournament Options: See 4.3. (line 1994)
5090 Tourney participants, Menu Item: See 3.7. (line 1286)
5091 Tourney type, Menu Item: See 3.7. (line 1297)
5092 tourneyCycles, option: See 4.3. (line 2022)
5093 tourneyFile, option: See 4.3. (line 2008)
5094 tourneyOptions, option: See 4.8. (line 2940)
5095 tourneyType, option: See 4.3. (line 2016)
5096 Training, Menu Item: See 3.4. (line 654)
5097 trivialDraws, option: See 4.7. (line 2892)
5098 trueColors, option: See 4.6. (line 2776)
5099 Truncate Game, Menu Item: See 3.2. (line 404)
5100 tt, option: See 4.3. (line 2016)
5101 Two Machines, Menu Item: See 3.4. (line 573)
5102 Upgrade Engine, Menu Item: See 3.7. (line 1354)
5103 Upload to Examine, Menu Item: See 3.5. (line 769)
5104 useBoardTexture, option: See 4.6. (line 2783)
5105 usePolyglotBook, option: See 4.2. (line 1897)
5106 User interface options: See 4.6. (line 2495)
5107 userName, option: See 4.8. (line 3116)
5108 useTelnet, option: See 4.4. (line 2108)
5109 uxiAdapter, option: See 4.2. (line 1887)
5110 variant, option: See 4.8. (line 2957)
5111 variations, option: See 4.6. (line 2835)
5112 vars, ICS command: See 5. (line 3225)
5113 View Menu: See 3.3. (line 475)
5114 viewer, option: See 4.8. (line 2926)
5115 viewerOptions, option: See 4.8. (line 2926)
5116 whitePieceColor, option: See 4.6. (line 2747)
5117 who, ICS command: See 5. (line 3181)
5118 xflash, option: See 4.6. (line 2665)
5119 year, Menu Item: See 3.7. (line 1388)
5120 Zoom factor in Evaluation Graph, Menu Item: See 3.7. (line 1068)
5127 3 Menus, buttons, and keys
5136 3.9 Other Shortcut Keys
5138 4.1 Chess Engine Options
5139 4.2 UCI + WB Engine Settings
5140 4.3 Tournament options
5142 4.5 Load and Save options
5143 4.6 User interface options
5144 4.7 Adjudication Options
5148 7 Environment variables
5149 8 Limitations and known bugs
5150 9 Reporting problems
5151 10 Authors and contributors
5154 11.2 Starting a CMail Game
5155 11.3 Answering a Move
5156 11.4 Multi-Game Messages
5157 11.5 Completing a Game
5158 11.6 Known CMail Problems
5159 12 Other programs you can use with XBoard
5166 GNU GENERAL PUBLIC LICENSE