4 INFO-DIR-SECTION Games
\r
6 * xboard: (xboard). An X Window System graphical chessboard.
\r
13 \r \r XBoard is a graphical chessboard that can serve as a
\r user
14 interface to chess engines (such as GNU Chess), the
\r Internet Chess
15 Servers,
\r electronic mail correspondence chess, or your own collection
16 of saved games.
\r \r This manual documents version 4.4.0j of XBoard.
\r
22 \r XBoard always runs in one of four major modes. You select the
\r
23 major mode from the command line when you start up XBoard.
\r \r
25 As an interface to GNU Chess or another chess engine running on
26 your
\r machine, XBoard lets you play a game against the machine,
\r
27 set up arbitrary positions, force variations, watch a game between
28 two
\r chess engines, interactively analyze your stored games or
29 set up and
\r analyze arbitrary positions. (Note: Not all chess
30 engines support
\r analysis.)
\r
32 xboard -ics -icshost hostname [options]
33 As Internet Chess Server (ICS) interface, XBoard
\r lets you play
34 against other ICS users, observe games
\r they are playing, or
35 review games that have recently finished. Most
\r of the ICS
36 "wild" chess variants are supported, including bughouse.
\r
39 XBoard can also be used simply
\r as an electronic chessboard to
40 play through games. It will read and
\r write game files and allow
41 you to play through variations
\r manually. You can use it to
42 browse games off the net or review games
\r you have saved. These
43 features are also available in the other modes.
\r
46 If you want to pipe games into XBoard, use the supplied shell
\r
47 script `pxboard'. For example, from the news reader `xrn',
\r find
48 a message with one or more games in it, click the Save button,
\r
49 and type `|pxboard' as the file name.
\r
52 As an interface to electronic mail correspondence chess, XBoard
\r
53 works with the cmail program. See *note CMail:: below for
\r
57 2 Menus, buttons, and keys
58 **************************
60 \r To move a piece, you can drag it with the left mouse button, or you
\r
61 can click the left mouse button once on the piece, then once more on
\r
62 the destination square. To drop a new piece on a square (when
\r
63 applicable), press the middle or the right mouse button over the
\r
64 square and select from the popup menu. In cases where you can drop
\r
65 either a white or black piece, use the middle button (or shift+right)
\r
66 for white and the right button (or shift+middle) for black. When you
\r
67 are playing a bughouse game on an Internet Chess Server, a list of the
\r
68 offboard pieces that each player has available is shown in the window
\r
69 title after the player's name; in addition, the piece menus show the
\r
70 number of pieces available of each type. From version 4.3.14 on, it is
\r
71 also possible in crazyhouse, bughouse or shogi to dag and drop pieces
\r
72 to the board from the holdings squares displayed next to the board.
\r \r
73 All other XBoard commands are available from the menu bar. The most
\r
74 frequently used commands also have shortcut keys or on-screen buttons.
\r
75 \r When XBoard is iconized, its graphical icon is a white knight if
\r
76 it is White's turn to move, a black knight if it is Black's turn. See
\r
77 Iconize in *note Keys:: below if you have problems getting this
\r
78 feature to work.
\r \r \r
84 Resets XBoard and the chess engine to the beginning of a new
85 chess
\r game. The `r' key is a keyboard equivalent. In Internet
86 Chess
\r Server mode, clears the current state of XBoard, then
\r
87 resynchronizes with the ICS by sending a refresh command. If you
88 want to
\r stop playing, observing, or examining an ICS game, use
89 an
\r appropriate command from the Action menu, not `New Game'.
\r
90 *Note Action Menu::.
\r
93 Similar to `New Game', but allows you to specify a particular
94 initial position
\r (according to a standardized numbering
95 system)
\r in chess variants which use randomized opening positions
96 (e.g. Chess960).
\r The selected opening position will persistently
97 be chosen on any following
\r New Game command until you use this
98 menu to select another. Selecting
\r position number -1 will
99 produce a newly randomized position on any new game.
\r Using this
100 menu item in variants that normally do not shuffle their opening
101 position
\r does cause these variants to become shuffle variants
102 until you use the
\r `New Shuffle Game' menu to explicitly switch
103 the randomization off,
\r or select a new variant.
\r
106 Allows you to select a new chess variant in non-ICS mode.
\r (In
107 ICS play, the ICS is responsible for deciding which variant will
108 be played,
\r and XBoard adapts autmatically.) If you play with an
109 engine, the engine must
\r be able to play the selected variant, or
110 the command will be ignored.
\r XBoard supports all major variants,
111 such as xiangqi, shogi, chess, chess960,
\r Capablanca Chess,
112 shatranj, crazyhous, bughouse.
\r
115 Plays a game from a record file. The `g' key is a keyboard
116 equivalent.
\r A popup dialog prompts you for the file name. If the
117 file contains more
\r than one game, a second popup dialog
\r
118 displays a list of games (with information drawn from their PGN
119 tags, if
\r any), and you can select the one you want.
120 Alternatively, you can load the
\r Nth game in the file directly,
121 by typing the number `N' after the
\r file name, separated by a
122 space.
\r \r The game file parser will accept PGN (portable game
123 notation),
\r or in fact almost any file that contains moves in
124 algebraic
\r notation.
\r Notation of the form `P@f7'
\r is accepted
125 for piece-drops in bughouse games;
\r this is a nonstandard
126 extension to PGN.
\r If the file includes a PGN position (FEN tag),
127 or an old-style
\r XBoard position diagram bracketed by `[--' and
128 `--]'
\r before the first move, the game starts from that position.
129 Text
\r enclosed in parentheses, square brackets, or curly braces
130 is assumed to
\r be commentary and is displayed in a pop-up window.
131 Any other
\r text in the file is ignored. PGN variations (enclosed
132 in
\r parentheses) are treated as comments; XBoard is not able to
133 walk
\r variation trees.
\r The nonstandard PGN tag [Variant
134 "varname"] functions similarly to
\r the -variant command-line
135 option (see below), allowing games in certain chess
\r variants to
136 be loaded. There is also a heuristic to
\r recognize chess
137 variants from the Event tag, by looking for the strings
\r that the
138 Internet Chess Servers put there when saving variant ("wild")
142 Loads the next game from the last game record file you loaded.
\r
143 The shifted `N' key is a keyboard equivalent.
\r
146 Loads the previous game from the last game record file you
\r
147 loaded. The shifted `P' key is a keyboard equivalent.
\r Not
148 available if the last game was loaded from a pipe.
\r
151 Reloads the last game you loaded.
\r Not available if the last game
152 was loaded from a pipe.
\r
155 Appends a record of the current game to a file.
\r A popup dialog
\r
156 prompts you for the file name. If the game did not begin with
\r
157 the standard starting position, the game file includes the
\r
158 starting position used. Games are saved in the PGN (portable
\r
159 game notation) format, unless the oldSaveStyle option is true,
\r
160 in which case they are saved in an older format that is specific
\r
161 to XBoard. Both formats are human-readable, and both can be
\r read
162 back by the `Load Game' command.
\r Notation of the form `P@f7'
\r
163 is accepted for piece-drops in bughouse games;
\r this is a
164 nonstandard extension to PGN.
\r
167 Copies a record of the current game to an internal clipboard in
168 PGN
\r format and sets the X selection to the game text. The game
169 can be
\r pasted to another application (such as a text editor or
170 another copy
\r of XBoard) using that application's paste command.
171 In many X
\r applications, such as xterm and emacs, the middle
172 mouse button can be
\r used for pasting; in XBoard, you must use
173 the Paste Game command.
\r
176 Interprets the current X selection as a game record and loads it,
177 as
\r with Load Game.
\r
180 Sets up a position from a position file. A popup dialog prompts
\r
181 you for the file name. If the file contains more than one saved
\r
182 position, and you want to load the Nth one, type the number N
\r
183 after the file name, separated by a space. Position files must
\r
184 be in FEN (Forsythe-Edwards notation), or in the format that the
\r
185 Save Position command writes when oldSaveStyle is turned on.
\r
188 Loads the next position from the last position file you loaded.
\r
190 Load Previous Position
191 Loads the previous position from the last position file you
\r
192 loaded. Not available if the last position was loaded from a
196 Reloads the last position you loaded.
\r Not available if the last
197 position was loaded from a pipe.
\r
200 Appends a diagram of the current position to a file.
\r A popup
201 dialog
\r prompts you for the file name. Positions are saved in
\r
202 FEN (Forsythe-Edwards notation) format unless the `oldSaveStyle'
\r
203 option is true, in which case they are saved in an older,
\r
204 human-readable format that is specific to XBoard. Both formats
\r
205 can be read back by the `Load Position' command.
\r
208 Copies the current position to an internal clipboard in FEN format
209 and
\r sets the X selection to the position text. The position can
210 be pasted
\r to another application (such as a text editor or
211 another copy of
\r XBoard) using that application's paste command.
212 In many X
\r applications, such as xterm and emacs, the middle
213 mouse button can be
\r used for pasting; in XBoard, you must use
214 the Paste Position command.
\r
217 Interprets the current X selection as a FEN position and loads it,
218 as
\r with Load Position.
\r
225 Exits from XBoard. The shifted `Q' key is a keyboard equivalent.
\r
232 Tells the chess engine to play White.
\r
235 Tells the chess engine to play Black.
\r
238 Plays a game between two chess engines.
\r
241 XBoard tells the chess engine to start analyzing the current
242 game/position
\r and shows you the analysis as you move pieces
243 around.
\r Note: Some chess engines do not support Analysis mode.
\r
244 \r To set up a position to analyze, you do the following:
\r \r 1.
245 Select Edit Position from the Mode Menu
\r \r 2. Set up the
246 position. Use the middle and right buttons to
\r bring up the
247 white and black piece menus.
\r \r 3. When you are finished, click
248 on either the Black or White
\r clock to tell XBoard which side
249 moves first.
\r \r 4. Select Analysis Mode from the Mode Menu to
250 start the analysis.
\r \r The analysis function can also be used
251 when observing games on an ICS
\r with an engine loaded (zippy
252 mode); the engine then will analyse
\r the positions as they occur
253 in the observed game.
\r
256 This option lets you load a game from a file (PGN, XBoard format,
257 etc.)
\r and analyze it. When you select this menu item, a popup
258 window appears
\r and asks for a filename to load.
\r If the file
259 contains multiple games, another popup appears that lets
\r you
260 select which game you wish to analyze.
\r After a game is loaded,
261 use the XBoard arrow buttons to step
\r forwards/backwards through
262 the game and watch the analysis.
\r Note: Some chess engines do not
263 support Analysis mode.
\r
266 This is the normal mode when XBoard
\r is connected to a chess
267 server. If you have moved into
\r Edit Game or Edit Position mode,
268 you can select this option to get out.
\r \r To use xboard in ICS
269 mode, run it in the foreground with the -ics
\r option, and use the
270 terminal you started it from to type commands and
\r receive text
271 responses from the chess server. See
\r *note Chess Servers::
272 below for more information.
\r \r XBoard activates some special
273 position/game editing features when you
\r use the `examine' or
274 `bsetup' commands on ICS and you have
\r `ICS Client' selected on
275 the Mode menu. First, you can issue the
\r ICS position-editing
276 commands with the mouse. Move pieces by dragging
\r with mouse
277 button 1. To drop a new piece on a square, press mouse
\r button 2
278 or 3 over the square. This brings up a menu of white pieces
\r
279 (button 2) or black pieces (button 3). Additional menu choices
280 let
\r you empty the square or clear the board. Click on the White
281 or Black
\r clock to set the side to play. You cannot set the side
282 to play or
\r drag pieces to arbitrary squares while examining on
283 ICC, but you can
\r do so in `bsetup' mode on FICS. In addition,
284 the menu commands
\r `Forward', `Backward', `Pause', and `Stop
285 Examining'
\r have special functions in this mode; see below.
\r
288 Allows you to make moves for both Black and White, and to change
\r
289 moves after backing up with the `Backward' command. The clocks do
\r
290 not run.
\r \r In chess engine mode, the chess engine continues to
291 check moves for legality
\r but does not participate in the game.
292 You can bring the chess engine
\r into the game by selecting
293 `Machine White', `Machine Black',
\r or `Two Machines'.
\r \r In ICS
294 mode, the moves are not sent to the ICS: `Edit Game' takes
\r
295 XBoard out of ICS Client mode and lets you edit games locally.
\r
296 If you want to edit games on ICS in a way that other ICS users
\r
297 can see, use the ICS `examine' command or start an ICS match
\r
301 Lets you set up an arbitrary board position.
\r Use mouse button 1
302 to drag pieces to new squares, or to delete a piece
\r by dragging
303 it off the board or dragging an empty square on top of it.
\r To
304 drop a new piece on a square, press mouse button 2 or 3 over the
\r
305 square. This brings up a menu of white pieces (button 2) or
\r
306 black pieces (button 3). Additional menu choices let you empty
307 the
\r square or clear the board. You can set the side to play next
308 by
\r clicking on the word White or Black at the top of the
309 screen.
\r Selecting `Edit Position' causes XBoard to discard
\r all
310 remembered moves in the current game.
\r \r In ICS mode, changes
311 made to the position by `Edit Position' are
\r not sent to the ICS:
312 `Edit Position' takes XBoard out of
\r `ICS Client' mode and lets
313 you edit positions locally. If you want to
\r edit positions on ICS
314 in a way that other ICS users can see, use
\r the ICS `examine'
315 command, or start an ICS match against yourself.
\r (See also the
316 ICS Client topic above.)
\r
319 Training mode lets you interactively guess the moves of a game for
320 one
\r of the players. You guess the next move of the game by
321 playing the
\r move on the board. If the move played matches the
322 next move of the
\r game, the move is accepted and the opponent's
323 response is autoplayed.
\r If the move played is incorrect, an
324 error message is displayed. You
\r can select this mode only while
325 loading a game (that is, after
\r selecting `Load Game' from the
326 File menu). While XBoard is in
\r `Training' mode, the navigation
327 buttons are disabled.
\r
330 Shows or hides the list of games generated by the last `Load
334 Shows or hides a list of moves of the current game.
\r This list
335 allows you to move the display to any earlier position in the
336 game
\r by clicking on the corresponding move.
\r
339 Shows or hides a window in which the thinking output of any loaded
340 engines
\r is displayed.
\r
343 Lets you edit the PGN (portable game notation)
\r tags for the
344 current game. After editing, the tags must still conform to
\r the
346 <tag-section> ::= <tag-pair> <tag-section>
\r
348 <tag-pair> ::= [ <tag-name> <tag-value> ]
\r
349 <tag-name> ::= <identifier>
\r
350 <tag-value> ::= <string>
\r
351 See the PGN Standard for full details. Here is an example:
\r \r
352 [Event "Portoroz Interzonal"]
\r
353 [Site "Portoroz, Yugoslavia"]
\r
354 [Date "1958.08.16"]
\r
356 [White "Robert J. Fischer"]
\r
357 [Black "Bent Larsen"]
\r
359 Any characters that do not match this syntax are silently ignored.
360 Note that
\r the PGN standard requires all games to have at least
361 the seven tags shown
\r above. Any that you omit will be filled in
362 by XBoard
\r with `?' (unknown value), or `-' (inapplicable
366 Adds or modifies a comment on the current position. Comments are
\r
367 saved by `Save Game' and are displayed by `Load Game',
\r
368 `Forward', and `Backward'.
\r
371 If this option is set in ICS mode,
\r XBoard
\r creates an extra
372 window that you can use for typing in ICS commands.
\r The input
373 box is especially useful if you want to type in something long or
374 do
\r some editing on your input, because output from ICS doesn't
375 get mixed
\r in with your typing as it would in the main terminal
379 Pauses updates to the board, and if you are playing against a
380 chess engine,
\r also pauses your clock. To continue, select
381 `Pause' again, and the
\r display will automatically update to the
382 latest position.
\r The `P' button and keyboard `p' key are
383 equivalents.
\r \r If you select Pause when you are playing against
384 a chess engine and
\r it is not your move, the chess engine's
385 clock
\r will continue to run and it will eventually make a move,
386 at which point
\r both clocks will stop. Since board updates are
387 paused, however,
\r you will not see the move until you exit from
388 Pause mode (or select Forward).
\r This behavior is meant to
389 simulate adjournment with a sealed move.
\r \r If you select Pause
390 while you are observing or examining a game on a
\r chess server,
391 you can step backward and forward in the current history
\r of the
392 examined game without affecting the other observers and
\r
393 examiners, and without having your display jump forward to the
394 latest
\r position each time a move is made. Select Pause again to
395 reconnect
\r yourself to the current state of the game on ICS.
\r \r
396 If you select `Pause' while you are loading a game, the game
397 stops
\r loading. You can load more moves manually by selecting
398 `Forward', or
\r resume automatic loading by selecting `Pause'
406 Accepts a pending match offer. If there is more than one offer
\r
407 pending, you will have to type in a more specific command
\r
408 instead of using this menu choice.
\r
411 Declines a pending offer (match, draw, adjourn, etc.). If there
\r
412 is more than one offer pending, you will have to type in a more
\r
413 specific command instead of using this menu choice.
\r
416 Calls your opponent's flag, claiming a win on time, or claiming
\r
417 a draw if you are both out of time. You can also call your
\r
418 opponent's flag by clicking on his clock or by pressing the
\r
422 Offers a draw to your opponent, accepts a pending draw offer
\r
423 from your opponent, or claims a draw by repetition or the 50-move
\r
424 rule, as appropriate. The `d' key is a keyboard equivalent.
\r
427 Asks your opponent to agree to adjourning the current game, or
\r
428 agrees to a pending adjournment offer from your opponent.
\r
431 Asks your opponent to agree to aborting the current game, or
\r
432 agrees to a pending abort offer from your opponent. An aborted
\r
433 game ends immediately without affecting either player's rating.
\r
436 Resigns the game to your opponent. The shifted `R' key is a
\r
437 keyboard equivalent.
\r
440 Ends your participation in observing a game, by issuing the ICS
\r
441 observe command with no arguments. ICS mode only.
\r
444 Ends your participation in examining a game, by issuing the ICS
\r
445 unexamine command. ICS mode only.
\r
452 Steps backward through a series of remembered moves.
\r The `[<]'
453 button and the `b' key are equivalents,
\r as is turning the mouse
454 wheel towards you.
\r In addition, pressing the Control key steps
455 back one move, and releasing
\r it steps forward again.
\r \r In
456 most modes, `Backward' only lets you look back at old positions;
\r
457 it does not retract moves. This is the case if you are playing
458 against
\r a chess engine, playing or observing a game on an ICS,
459 or loading a game.
\r If you select `Backward' in any of these
460 situations, you will not
\r be allowed to make a different move.
461 Use `Retract Move' or
\r `Edit Game' if you want to change past
462 moves.
\r \r If you are examining an ICS game, the behavior of
463 `Backward'
\r depends on whether XBoard is in Pause mode. If Pause
464 mode is
\r off, `Backward' issues the ICS backward command, which
465 backs up
\r everyone's view of the game and allows you to make a
466 different
\r move. If Pause mode is on, `Backward' only backs up
470 Steps forward through a series of remembered moves (undoing the
\r
471 effect of `Backward') or forward through a game file. The
\r `[>]'
472 button and the `f' key are equivalents,
\r as is turning the mouse
473 wheel away from you.
\r \r If you are examining an ICS game, the
474 behavior of Forward
\r depends on whether XBoard is in Pause mode.
475 If Pause mode is
\r off, `Forward' issues the ICS forward command,
476 which moves
\r everyone's view of the game forward along the
477 current line. If
\r Pause mode is on, `Forward' only moves your
478 local view forward,
\r and it will not go past the position that
479 the game was in when
\r you paused.
\r
482 Jumps backward to the first remembered position in the game.
\r The
483 `[<<]' button and the shifted `B' key are equivalents.
\r \r In
484 most modes, Back to Start only lets you look back at old
\r
485 positions; it does not retract moves. This is the case if you
\r
486 are playing against a local chess engine, playing or observing a
487 game on
\r a chess server, or loading a game. If you select `Back
488 to Start' in any
\r of these situations, you will not be allowed to
489 make different
\r moves. Use `Retract Move' or `Edit Game' if you
490 want to change past
\r moves; or use Reset to start a new game.
\r \r
491 If you are examining an ICS game, the behavior of `Back to
\r
492 Start' depends on whether XBoard is in Pause mode. If Pause mode
\r
493 is off, `Back to Start' issues the ICS `backward 999999'
\r
494 command, which backs up everyone's view of the game to the start
495 and
\r allows you to make different moves. If Pause mode is on,
496 `Back
\r to Start' only backs up your local view.
\r
499 Jumps forward to the last remembered position in the game. The
\r
500 `[>>]' button and the shifted `F' key are equivalents.
\r \r If you
501 are examining an ICS game, the behavior of `Forward to
\r End'
502 depends on whether XBoard is in Pause mode. If Pause mode
\r is
503 off, `Forward to End' issues the ICS `forward 999999'
\r command,
504 which moves everyone's view of the game forward to the end of
\r
505 the current line. If Pause mode is on, `Forward to End' only
506 moves
\r your local view forward, and it will not go past the
507 position
\r that the game was in when you paused.
\r
510 If you are examining an ICS game and Pause mode is off, issues
\r
511 the ICS command `revert'.
\r
514 Discards all remembered moves of the game beyond the current
\r
515 position. Puts XBoard into `Edit Game' mode if it was not there
\r
519 Forces the chess engine to move immediately. Chess engine mode
523 Retracts your last move. In chess engine mode, you can do this
524 only
\r after the chess engine has replied to your move; if the
525 chess engine is still
\r thinking, use `Move Now' first. In ICS
526 mode, `Retract Move'
\r issues the command `takeback 1' or
527 `takeback 2'
\r depending on whether it is your opponent's move or
533 Terminate an ongoing game in Two-Machines mode (including match
534 mode),
\r with as result a win for white, for black, or a draw,
535 repsectively.
\r The PGN file of the game will accompany the result
536 string
\r by the comment "user adjudication".
\r
543 Inverts your view of the chess board for the duration of the
\r
544 current game. Starting a new game returns the board to normal.
\r
545 The `v' key is a keyboard equivalent.
\r
548 Pops up a sub-menu where you can enable or disable various
549 adjudications
\r that XBoard can perform in engine-engine games.
\r
550 You can instruct XBoard to detect and terminate the game on
551 checkmate
\r or stalemate, even if the engines would not do so, to
552 verify engine
\r result claims (forfeiting engines that make false
553 claims), rather than
\r naively following the engine, to declare
554 draw on posititions
\r which can never be won for lack of mating
555 material, (e.g. KBK),
\r or which are impossble to win unless the
556 opponent seeks its own demise
\r (e.g. KBKN).
\r For these
557 adjudications to work, `Test Legality' should be switched on.
\r It
558 is also possible to insruct XBoard to enforce a 50-move or
559 3-fold-repeat
\r rule and automtically declare draw (after a
560 user-adjustable number of moves
\r or repeats) even if the engines
561 are prepared to go on.
\r It is also possible to have XBoard
562 declare draw on games that seem to drag on
\r forever, or
563 adjudicate a loss if both engines agree (for 3 cosecutive moves)
564 that one
\r of them is behind more than a user-adjustable score
565 threshold.
\r For the latter adjudication to work, XBoard should be
566 able to properly understand
\r the engine's scores. To faclitate
567 the latter, you can inform xboard here if
\r the engines report
568 scores from the viewpoint of white, or from that of their own
572 Pops up a sub-menu where you can set some engine parameters common
573 to most engines,
\r such as hash-table size, tablebase cache size,
574 maximum number of processors
\r that SMP engines can use, and where
575 to find the Polyglot adapter needed
\r to run UCI engines under
576 XBoard. The feature tht allows setting of these parameters on
\r
577 engines is new since XBoard 4.3.15, so not many WinBoard engines
578 respond
\r to it yet, but UCI engines should.
\r It is also possible
579 to specify a GUI opening book here, i.e. an opening
\r book that
580 XBoard consults for any position a playing engine gets in.
\r It
581 then forces the engine to play the book move, rather than to think
582 up its own,
\r if that position is found in the book.
\r The book
583 can switched on and off independently for either engine.
\r
586 Pops up a sub-menu where you can set the time-control parameters
587 interactively.
\r Allows you to select classical or incremental
588 time controls,
\r set the moves per session, session duration, and
589 time increment.
\r Also allows specification of time-odds factors
590 for one or both engines.
\r If an engine is given a time-odds
591 factor N, all time quota it gets,
\r be it at the beginning of a
592 session or through the time increment or
\r fixed time per move,
593 will be divided by N.
\r
596 If this option is off, XBoard brings up a dialog
\r box whenever
597 you move a pawn to the last rank, asking what piece
\r you want to
598 promote it to. If the option is true, your pawns are
\r always
599 promoted to queens. Your opponent can still underpromote.
\r
602 If Animate Dragging is on, while you are dragging a piece with
603 the
\r mouse, an image of the piece follows the mouse cursor.
\r If
604 Animate Dragging is off, there is no visual feedback while you
605 are
\r dragging a piece, but if Animate Moving is on, the move will
606 be
\r animated when it is complete.
\r
609 If Animate Moving is on, all piece moves are animated. An image
610 of the
\r piece is shown moving from the old square to the new
611 square when the
\r move is completed (unless the move was already
612 animated by Animate Dragging).
\r If Animate Moving is off, a moved
613 piece instantly disappears from its
\r old square and reappears on
614 its new square when the move is complete.
\r
617 If this option is on, any remarks made on ICS while you are
618 observing or
\r playing a game are recorded as a comment on the
619 current move. This includes
\r remarks made with the ICS commands
620 `say', `tell', `whisper',
\r and `kibitz'.
\r Limitation: remarks
621 that you type yourself are not recognized;
\r XBoard scans only the
622 output from ICS, not the input you type to it.
\r
625 If this option is on and one player runs out of time
\r before the
626 other,
\r XBoard
\r will automatically call his flag, claiming a win
627 on time.
\r In ICS mode, Auto Flag will only call your opponent's
628 flag, not yours,
\r and the ICS may award you a draw instead of a
629 win if you have
\r insufficient mating material. In local chess
630 engine mode,
\r XBoard
\r may call either player's flag and will not
631 take material into account.
\r
634 If the Auto Flip View option is on when you start a game, the
635 board
\r will be automatically oriented so that your pawns move
636 from the bottom
\r of the window towards the top.
\r
639 If this option is on and you add a player to your `gnotify'
\r list
640 on ICS, XBoard will automatically observe all of that
\r player's
641 games, unless you are doing something else (such as
\r observing or
642 playing a game of your own) when one starts.
\r The games are
643 displayed
\r from the point of view of the player on your gnotify
644 list; that is, his
\r pawns move from the bottom of the window
645 towards the top.
\r Exceptions: If both players in a game are on
646 your gnotify list, if
\r your ICS
\r `highlight'
\r variable is set
647 to 0, or if the ICS you are using does not
\r properly support
648 observing from Black's point of view,
\r you will see the game from
649 White's point of view.
\r
652 If this option is on, whenever a new game begins, the chessboard
653 window
\r is deiconized (if necessary) and raised to the top of the
657 If this option is true, at the end of every game XBoard prompts
\r
658 you for a file name and appends a record of the game to the file
\r
659 you specify.
\r Disabled if the `saveGameFile' command-line
\r
660 option is set, as in that case all games are saved to the
661 specified file.
\r *Note Load and Save options::.
\r
664 If this option is on, XBoard displays the board as usual but does
\r
665 not display pieces or move highlights. You can still move in the
\r
666 usual way (with the mouse or by typing moves in ICS mode), even
667 though
\r the pieces are invisible.
\r
670 If this option is on, whenever a move is completed, the moved
671 piece flashes.
\r The number of times to flash is set by the
672 flashCount command-line
\r option; it defaults to 3 if Flash Moves
673 is first turned on from the menu.
\r \r If you are playing a game
674 on an ICS, the board is always
\r oriented at the start of the game
675 so that your pawns move from
\r the bottom of the window towards
676 the top. Otherwise, the starting
\r orientation is determined by
677 the `flipView' command line option;
\r if it is false (the
678 default), White's pawns move from bottom to top
\r at the start of
679 each game; if it is true, Black's pawns move from
\r bottom to top.
680 *Note User interface options::.
\r
683 If this option is on, whenever XBoard
\r receives the first board
684 of a new ICS game (or a different game from
\r the one it is
685 currently displaying), it
\r retrieves the list of past moves from
686 the ICS.
\r You can then review the moves with the `Forward' and
687 `Backward'
\r commands
\r or save them with `Save Game'. You might
688 want to
\r turn off this option if you are observing several blitz
689 games at once,
\r to keep from wasting time and network bandwidth
690 fetching the move lists over
\r and over.
\r When you turn this
691 option on from the menu, XBoard
\r immediately fetches the move
692 list of the current game (if any).
\r
695 If Highlight Last Move is on, after a move is made, the starting
696 and
\r ending squares remain highlighted. In addition, after you
697 use Backward
\r or Back to Start, the starting and ending squares
698 of the last move to
\r be unmade are highlighted.
\r
701 If this option is on, XBoard alerts you by playing a sound
\r after
702 each of your opponent's moves (or after every
\r move if you are
703 observing a game on the Internet Chess Server).
\r The sound is not
704 played after moves you make or moves read from a
\r saved game
705 file. By default, the
\r sound is the terminal bell, but on some
706 systems you can change it
\r to a sound file using the soundMove
707 option; see below.
\r \r If you turn on this option when using
708 XBoard with the Internet
\r Chess Server, you will probably want to
709 give the
\r `set bell 0'
\r command to the ICS, since otherwise the
710 ICS will ring the terminal bell
\r after every move (not just
711 yours). (The `.icsrc' file
\r is a good place for this; see *note
715 When this option is on, an alarm sound is played when your clock
\r
716 counts down to the icsAlarmTime (by default, 5 seconds) in an ICS
\r
717 game. For games with time controls that include an increment,
718 the
\r alarm will sound each time the clock counts down to the
719 icsAlarmTime.
\r By default, the alarm sound is the terminal bell,
720 but on some systems
\r you can change it to a sound file using the
721 soundIcsAlarm option; see
\r below.
\r
724 If this option is off, XBoard saves games in PGN
\r (portable game
725 notation) and positions in FEN (Forsythe-Edwards
\r notation). If
726 the option is on, a save style that is compatible
\r with older
727 versions of XBoard is used instead.
\r The old position style is
728 more human-readable
\r than FEN; the old game style has no
729 particular advantages.
\r
732 If this option is off (or if
\r you are using a chess engine that
733 does not support periodic updates),
\r the analysis window
\r will
734 only be updated when the analysis changes. If this option is
\r on,
735 the Analysis Window will be updated every two seconds.
\r
738 If this option is off, the chess engine will think only when it is
739 on
\r move. If the option is on, the engine will also think while
740 waiting
\r for you to make your move.
\r
743 If this option is on, when XBoard wants to display a message just
\r
744 before exiting, it brings up a modal dialog box and waits for you
745 to
\r click OK before exiting. If the option is off, XBoard prints
746 the
\r message to standard error (the terminal) and exits
750 If this option is off, when you make an error in moving (such as
\r
751 attempting an illegal move or moving the wrong color piece), the
\r
752 error message is displayed in the message area. If the option is
\r
753 on, move errors are displayed in small popup windows like other
754 errors.
\r You can dismiss an error popup either by clicking its OK
755 button or by
\r clicking anywhere on the board, including
756 downclicking to start a move.
\r
759 If this option is on while playing a game on an ICS, you can
760 register
\r your next planned move before it is your turn. Move
761 the piece with
\r the mouse in the ordinary way, and the starting
762 and ending squares
\r will be highlighted with a special color (red
763 by default). When it is
\r your turn, if your registered move is
764 legal, XBoard will send it to
\r ICS immediately; if not, it will
765 be ignored and you can make a
\r different move. If you change
766 your mind about your premove, either
\r make a different move, or
767 double-click on any piece to cancel the move
\r entirely.
\r
770 If this option is on, XBoard will automatically issue an ICS
\r
771 `set shout 0'
\r command whenever you start a game and a
\r `set
772 shout 1'
\r command whenever you finish one. Thus, you will not be
773 distracted
\r by shouts from other ICS users while playing.
\r
776 If this option is on, XBoard displays algebraic coordinates
\r
777 along the board's left and bottom edges.
\r
780 If this option is off, the chess engine's notion of the score and
781 best
\r line of play from the current position is displayed as it
782 is
\r thinking. The score indicates how many pawns ahead (or if
783 negative,
\r behind) the chess engine thinks it is. In matches
784 between two
\r machines, the score is prefixed by `W' or `B' to
785 indicate
\r whether it is showing White's thinking or Black's, and
786 only the thinking
\r of the engine that is on move is shown.
\r
789 If this option is on, XBoard tests whether the moves you try to
790 make
\r with the mouse are legal and refuses to let you make an
791 illegal move.
\r Moves loaded from a file with `Load Game' are also
792 checked. If
\r the option is off, all moves are accepted, but if a
793 local chess engine
\r or the ICS is active, they will still reject
794 illegal moves. Turning
\r off this option is useful if you are
795 playing a chess variant with
\r rules that XBoard does not
796 understand. (Bughouse, suicide, and wild
\r variants where the
797 king may castle after starting on the d file are
\r generally
798 supported with Test Legality on.)
\r
805 Displays the XBoard documentation in info format. For this
806 feature to
\r work, you must have the GNU info program installed on
807 your system, and
\r the file `xboard.info' must either be present
808 in the current
\r working directory, or have been installed by the
809 `make install'
\r command when you built XBoard.
\r
812 Displays the XBoard documentation in man page format. For this
\r
813 feature to work, the file `xboard.6' must have been installed by
\r
814 the `make install' command when you built XBoard, and the
\r
815 directory it was placed in must be on the search path for your
\r
816 system's `man' command.
\r
819 Displays a move hint from the chess engine.
\r
822 Displays a list of possible moves from the chess engine's opening
\r
823 book. The exact format depends on what chess engine you are
824 using.
\r With GNU Chess 4, the first column gives moves, the
825 second column
\r gives one possible response for each move, and the
826 third column shows
\r the number of lines in the book that include
827 the move from the first
\r column. If you select this option and
828 nothing happens, the chess
\r engine is out of its book or does not
829 support this feature.
\r
832 Shows the current XBoard version number.
\r
835 2.7 Other Shortcut Keys
836 =======================
839 Pressing the `i' or `c' key iconizes XBoard. The graphical
\r icon
840 displays a white knight if it is White's move, or a black knight
\r
841 if it is Black's move. If your X window manager displays only
842 text
\r icons, not graphical ones, check its documentation; there
843 is probably
\r a way to enable graphical icons. If you get black
844 and white reversed,
\r we would like to hear about it; see *note
845 Problems:: below for
\r instructions on how to report this
847 \r You can add or remove shortcut keys using the X resources
\r
848 `form.translations'. Here is an example of what would go in your
\r
849 `.Xresources' file:
\r \r
850 XBoard*form.translations: \
\r
851 Shift<Key>?: AboutGameProc() \n\
\r
852 <Key>y: AcceptProc() \n\
\r
853 <Key>n: DeclineProc() \n\
\r
854 <Key>i: NothingProc()
\r
855 Binding a key to `NothingProc' makes it do nothing, thus removing
\r
856 it as a shortcut key. The XBoard commands that can be bound to keys
\r
858 AbortProc, AboutGameProc, AboutProc, AcceptProc, AdjournProc,
\r
859 AlwaysQueenProc, AnalysisModeProc, AnalyzeFileProc,
\r
860 AnimateDraggingProc, AnimateMovingProc, AutobsProc, AutoflagProc,
\r
861 AutoflipProc, AutoraiseProc, AutosaveProc, BackwardProc,
\r
862 BlindfoldProc, BookProc, CallFlagProc, CopyGameProc, CopyPositionProc,
\r
863 DebugProc, DeclineProc, DrawProc, EditCommentProc, EditGameProc,
\r
864 EditPositionProc, EditTagsProc, EnterKeyProc, FlashMovesProc,
\r
865 FlipViewProc, ForwardProc, GetMoveListProc, HighlightLastMoveProc,
\r
866 HintProc, Iconify, IcsAlarmProc, IcsClientProc, IcsInputBoxProc,
\r
867 InfoProc, LoadGameProc, LoadNextGameProc, LoadNextPositionProc,
\r
868 LoadPositionProc, LoadPrevGameProc, LoadPrevPositionProc,
\r
869 LoadSelectedProc, MachineBlackProc, MachineWhiteProc, MailMoveProc,
\r
870 ManProc, MoveNowProc, MoveSoundProc, NothingProc, OldSaveStyleProc,
\r
871 PasteGameProc, PastePositionProc, PauseProc, PeriodicUpdatesProc,
\r
872 PonderNextMoveProc, PopupExitMessageProc, PopupMoveErrorsProc,
\r
873 PremoveProc, QuietPlayProc, QuitProc, ReloadCmailMsgProc,
\r
874 ReloadGameProc, ReloadPositionProc, RematchProc, ResetProc,
\r
875 ResignProc, RetractMoveProc, RevertProc, SaveGameProc,
\r
876 SavePositionProc, ShowCoordsProc, ShowGameListProc, ShowThinkingProc,
\r
877 StopExaminingProc, StopObservingProc, TestLegalityProc, ToEndProc,
\r
878 ToStartProc, TrainingProc, TruncateGameProc, and TwoMachinesProc.
\r
884 \r This section documents the command-line options to XBoard. You can
\r
885 set these options in two ways: by typing them on the shell command
\r
886 line you use to start XBoard, or by setting them as X resources
\r
887 (typically in your `.Xresources' file). Many of the options
\r cannot
888 be changed while XBoard is running; others set the initial
\r state of
889 items that can be changed with the *note Options:: menu.
\r \r Most of
890 the options have both a long name and a short name. To turn a
\r boolean
891 option on or off from the command line, either give its long
\r name
892 followed by the value true or false
\r (`-longOptionName true'), or give
893 just the short name to turn the
\r option on (`-opt'), or the short name
894 preceded by `x' to
\r turn the option off (`-xopt'). For options that
895 take strings or
\r numbers as values, you can use the long or short
896 option names
\r interchangeably.
\r \r Each option corresponds to an X
897 resource with the same name, so
\r if you like, you can set options in
898 your `.Xresources' file
\r or in a file named `XBoard' in your home
899 directory.
\r For options that have two names, the longer one is the
900 name of
\r the corresponding X resource; the short name is not
901 recognized.
\r To turn a boolean option on or off as an
\r X resource,
902 give its long name followed by the value
\r true or false
903 (`XBoard*longOptionName: true').
\r \r \r
905 3.1 Chess Engine Options
906 ========================
908 -tc or -timeControl minutes[:seconds]
909 Each player begins with his clock set to the `timeControl'
910 period.
\r Default: 5 minutes.
\r The additional options
911 `movesPerSession' and `timeIncrement'
\r are mutually exclusive.
\r
913 -mps or -movesPerSession moves
914 When both players have made `movesPerSession' moves, a
\r new
915 `timeControl' period is added to both clocks. Default: 40 moves.
\r
917 -inc or -timeIncrement seconds
918 If this option is specified, `movesPerSession' is ignored.
\r
919 Instead, after each player's move, `timeIncrement' seconds are
\r
920 added to his clock.
\r Use `-inc 0' if you want to require the
921 entire
\r game to be played in one `timeControl' period, with no
922 increment.
\r Default: -1, which specifies `movesPerSession' mode.
\r
924 -clock/-xclock or -clockMode true/false
925 Determines whether or not to display the chess clocks. If
926 clockMode is
\r false, the clocks are not shown, but the side that
927 is to play next
\r is still highlighted. Also, unless `searchTime'
\r
928 is set, the chess engine still keeps track of the clock time and
929 uses it to
\r determine how fast to make its moves.
\r
931 -st or -searchTime minutes[:seconds]
932 Tells the chess engine to spend at most the given amount of time
\r
933 searching for each of its moves. Without this option, the chess
934 engine
\r chooses its search time based on the number of moves and
935 amount
\r of time remaining until the next time control.
\r Setting
936 this option also sets clockMode to false.
\r
938 -depth or -searchDepth number
939 Tells the chess engine to look ahead at most the given number of
940 moves
\r when searching for a move to make. Without this option,
941 the chess
\r engine chooses its search depth based on the number of
942 moves and
\r amount of time remaining until the next time control.
943 With the option,
\r the engine will cut off its search early if it
944 reaches the specified depth.
\r
948 Tells the chess engine to use an internal time standard based on
949 its node count,
\r rather then wall-clock time, to make its timing
950 decisions.
\r The time in virtual seconds should be obtained by
951 dividing the node count
\r through the given number, like the
952 number was a rate in nodes per second.
\r Xboard will manage the
953 clocks in accordance with this, relying on the number
\r of nodes
954 reported by the engine in its thinking output. If the given number
955 equals zero,
\r it can obviously not be used to convert nodes to
956 seconds, and the time reported
\r by the engine is used to
957 decrement the XBoard clock in stead. The engine is supposed to
\r
958 report in CPU time it uses, rather than wall-clock time, in this
959 mode. This option
\r can provide fairer conditions for
960 engine-engine matches on heavily loaded machines,
\r or with very
961 fast games (where the wall clock is too inaccurate).
\r
962 `showThinking' must be on for this option to work. Default: -1
963 (off).
\r Not many engines might support this yet!
\r
965 -firstTimeOdds factor
966 -secondTimeOdds factor
967 Reduces the time given to the mentioned engine by the given
968 factor.
\r If pondering is off, the effect is indistinguishable
969 from what would happen
\r if the engine was running on an n-times
970 slower machine. Default: 1.
\r
973 This option determines how the case is handled where both engines
974 have a time-odds handicap.
\r If mode=1, the engine that gets the
975 most time will always get the nominal time,
\r as specified by the
976 time-control options, and its opponent's time is renormalized
977 accordingly.
\r If mode=0, both play with reduced time. Default:
980 -hideThinkingFromHuman true/false
981 Controls the Hide Thinking option. *Note Options Menu::. Default:
982 true.
\r (Relaces the Show-Thinking option of older xboard
985 -thinking/-xthinking or -showThinking true/false
986 Forces the engine to send thinking output to xboard.
\r Used to be
987 the only way to control if thinking output was displayed
\r in
988 older xboard versions,
\r but as the thinking output in xboard 4.3
989 is also used for several other
\r purposes (adjudication, storing
990 in PGN file) the display of it is now controlled
\r by the new
991 option Hide Thinking. *Note Options Menu::. Default: false.
\r (But
992 if xboard needs the thinking output for some purpose,
\r it makes
993 the engine send it despite the setting of this option.)
\r
995 -ponder/-xponder or -ponderNextMove true/false
996 Sets the Ponder Next Move menu option. *Note Options Menu::.
1000 Specifies the maxmum nmber of CPUs an SMP engine is allowed to
1001 use.
\r Only works for engines that support the WinBoard-protocol
1004 -mg or -matchGames n
1005 Automatically runs an n-game match between two chess engines,
\r
1006 with alternating colors.
\r If the `loadGameFile' or
1007 `loadPositionFile' option is set,
\r XBoard
\r starts each game with
1008 the given opening moves or the given position;
\r otherwise, the
1009 games start with the standard initial chess position.
\r If the
1010 `saveGameFile' option is set, a move record for the
\r match is
1011 appended to the specified file. If the `savePositionFile'
\r option
1012 is set, the final position reached in each game of the match is
1013 appended
\r to the specified file. When the match is over, XBoard
\r
1014 displays the match score and exits. Default: 0 (do not run a
1017 -mm/-xmm or -matchMode true/false
1018 Setting `matchMode' to true is equivalent to setting
\r
1019 `matchGames' to 1.
\r
1022 Automatically runs an n-game match between two chess engines,
\r
1023 without alternating colors.
\r Otherwise the same applies as for
1024 the `-matchGames' option,
\r over which it takes precedence if both
1025 are specified. (See there.)
\r Default: 0 (do not run a match).
\r
1027 -fcp or -firstChessProgram program
1028 Name of first chess engine.
\r Default: `Fairy-Max'.
\r
1030 -scp or -secondChessProgram program
1031 Name of second chess engine, if needed.
\r A second chess engine is
1032 started only in Two Machines (match) mode.
\r Default:
1035 -fb/-xfb or -firstPlaysBlack true/false
1036 In games between two chess engines, firstChessProgram normally
1037 plays
\r white. If this option is true, firstChessProgram plays
1038 black. In a
\r multi-game match, this option affects the colors
1039 only for the first
\r game; they still alternate in subsequent
1042 -fh or -firstHost host
1043 -sh or -secondHost host
1044 Hosts on which the chess engines are to run. The default for
\r
1045 each is `localhost'. If you specify another host, XBoard
\r uses
1046 `rsh' to run the chess engine there. (You can substitute a
\r
1047 different remote shell program for rsh using the `remoteShell'
\r
1048 option described below.)
\r
1050 -fd or -firstDirectory dir
1051 -sd or -secondDirectory dir
1052 Working directories in which the chess engines are to be run.
\r
1053 The default is "", which means to run the chess engine
\r in the
1054 same working directory as XBoard
\r itself. (See the CHESSDIR
1055 environment variable.)
\r This option is effective only when the
1056 chess engine is being run
\r on the local host; it does not work if
1057 the engine is run remotely
\r using the -fh or -sh option.
\r
1060 -secondInitString string
1061 The string that is sent to initialize each chess engine for a new
1062 game.
\r Default:
\r \r
1065 Setting this option from the command line is tricky, because you
1066 must
\r type in real newline characters, including one at the very
1067 end.
\r In most shells you can do this by
\r entering a `\'
1068 character followed by a newline. It is easier to set
\r the option
1069 from your `.Xresources' file; in that case you can
\r include the
1070 character sequence `\n' in the string, and it will
\r be converted
1071 to a newline.
\r \r If you change this option, don't remove the
1072 `new'
\r command; it is required by all chess engines to
\r start a
1073 new game.
\r \r You can remove the `random' command if you like;
1074 including it
\r causes GNU Chess 4 to randomize its move selection
1075 slightly so that it
\r doesn't play the same moves in every game.
1076 Even without
\r `random', GNU Chess 4 randomizes its choice of
1077 moves from its
\r opening book. Many other chess engines ignore
1078 this command entirely
\r and always (or never) randomize.
\r \r You
1079 can also try adding other commands to the initString; see the
\r
1080 documentation of the chess engine you are using for details.
\r
1082 -firstComputerString string
1083 -secondComputerString string
1084 The string that is sent to the chess engine if its opponent is
1085 another
\r computer chess engine. The default is `computer\n'.
1086 Probably the
\r only useful alternative is the empty string (`'),
1087 which keeps the
\r engine from knowing that it is playing another
1090 -reuse/-xreuse or -reuseFirst true/false
1091 -reuse2/-xreuse2 or -reuseSecond true/false
1092 If the option is false,
\r XBoard kills off the chess engine after
1093 every game and starts
\r it again for the next game.
\r If the
1094 option is true (the default),
\r XBoard starts the chess engine
1095 only once
\r and uses it repeatedly to play multiple games.
\r Some
1096 old chess engines may not work properly when
\r reuse is turned on,
1097 but otherwise games will start faster if it is left on.
\r
1099 -firstProtocolVersion version-number
1100 -secondProtocolVersion version-number
1101 This option specifies which version of the chess engine
1102 communication
\r protocol to use. By default, version-number is 2.
1103 In version 1, the
\r "protover" command is not sent to the engine;
1104 since version 1 is a
\r subset of version 2, nothing else changes.
1105 Other values for
\r version-number are not supported.
\r
1107 -firstScoreAbs true/false
1108 -secondScoreAbs true/false
1109 If this option is set, the score reported by the engine is taken
1110 to be
\r that in favor of white, even when the engine plays black.
1111 \r Important when XBoard uses the score for adjudications, or in
1114 -niceEngines priority
1115 This option allows you to lower the priority of the engine
1116 processes,
\r so that the generally insatiable hunger for CPU time
1117 of chess engines does not interfere so much
\r with smooth
1118 operation of WinBoard (or the rest of your system).
\r Negative
1119 values could increase the engine priority, which is not
1122 -firstOptions string
1123 -secondOptions string
1124 The given string is a comma-separated list of (option name, option
1125 value) pairs,
\r like the following example: “style=Karpov,blunder
1126 rate=0”.
\r If the options announced by the engine at startup
1127 through the feature commands of WinBoard protocol
\r matches one
1128 of the option names (i.e. “style” or “blunder rate”),
\r it would
1129 be set to the given value (i.e. “Karpov” or 0)
\r through a
1130 corresponding option command to the engine.
\r This provided that
1131 the type of the value (text or numeric) matches as well.
\r
1134 3.2 UCI + WB Engine Settings
1135 ============================
1137 -fUCI or -firstIsUCI true/false
1138 -sUCI or -secondIsUCI true/false
1139 Indicates if the mentioned engine executable file is an UCI
1140 engine,
\r and should be run with the aid of the Polyglot adapter
1141 rather than directly.
\r Xboard will then pass the other UCI
1142 options and engine name to Polyglot
\r through a .ini temporary
1143 file ceated for the purpose.
\r
1145 -PolyglotDir filename
1146 Gives the name of the directory in which the Polyglot adapter for
1147 UCI engines expects its files.
\r Default:
1148 "/usr/local/share/polyglot".
\r
1150 -usePolyglotBook true/false
1151 Specifies if the Polygot book should be used.
\r
1153 -PolyglotBook filename
1154 Gives the filename of the opening book that Polyglot should use.
\r
1155 From XBoard 4.3.15 on, native WinBoard engines will also use the
1156 opening book specified here,
\r provided the `usePolyglotBook'
1157 option is set to true,
\r and the option `firstHasOwnBookUCI' or
1158 `secondHasOwnBookUCI' applying to the engine
\r is set to false.
\r
1159 The engine will be kept in force mode as long as the current
1160 position is in book,
\r and XBoard will select the book moves for
1163 -fNoOwnBookUCI or -firstXBook or -firstHasOwnBookUCI true/false
1164 -sNoOwnBookUCI or -secondXBook or -secondHasOwnBookUCI true/false
1165 Indicates if the mentioned engine has its own opening book it
1166 should play from,
\r rather than using the external book through
1167 XBoard. Default: false.
\r
1170 Sets the size of the hash table to n MegaBytes. Together with the
1171 EGTB cache size
\r this number is also used to calculate the
1172 memory setting of WinBoard engines,
\r for those that support the
1173 memory feature of WinBoard protocol. Default: 64.
\r
1175 -defaultCacheSizeEGTB n
1176 Sets the size of the EGTB cache to n MegaBytes. Together with the
1177 hash-table size
\r this number is also used to calculate the
1178 memory setting of WinBoard engines,
\r for those that support the
1179 memory feature of WinBoard protocol. Default: 4.
\r
1181 -defaultPathEGTB filename
1182 Gives the name of the directory where the end-game tablebases are
1183 installed, for UCI engines.
\r Default: "/usr/local/share/egtb".
\r
1186 Specifies which end-game tables are installed on the computer, and
1187 where.
\r The argument is a comma-separated list of format
1188 specifications,
\r each specification consisting of a format name,
1189 a colon, and a directory path name,
\r e.g.
1190 "nalimov:/usr/local/share/egtb".
\r If the name part matches that
1191 of a format that the engine requests through a feature command,
\r
1192 xboard will relay the path name for this format to the engine
1193 through an egtpath command.
\r One egtpath command for each
1194 matching format will be sent.
\r Popular formats are "nalimov" DTM
1195 tablebases and "scorpio" bitbases.
\r Default: "".
\r
1201 -ics/-xics or -internetChessServerMode true/false
1202 Connect with an Internet Chess Server to play chess against its
\r
1203 other users, observe games they are playing, or review games
\r
1204 that have recently finished. Default: false.
\r
1206 -icshost or -internetChessServerHost host
1207 The Internet host name or address of the chess server to connect
\r
1208 to when in ICS mode. Default: `chessclub.com'.
\r Another popular
1209 chess server to try is `freechess.org'.
\r If your site doesn't
1210 have a working Internet name server, try
\r specifying the host
1211 address in numeric form.
\r You may also need
\r to specify the
1212 numeric address when using the icshelper option
\r with timestamp
1213 or timeseal (see below).
\r
1215 -icsport or -internetChessServerPort port-number
1216 The port number to use when connecting to a chess server in ICS
\r
1217 mode. Default: 5000.
\r
1219 -icshelper or -internetChessServerHelper prog-name
1220 An external helper program used to communicate with the chess
1221 server.
\r You would set it to "timestamp" for ICC (chessclub.com)
1222 or
\r "timeseal" for FICS (freechess.org), after
\r obtaining the
1223 correct version of timestamp or timeseal for your
\r computer. See
1224 "help timestamp" on ICC and "help timeseal" on FICS.
\r This option
1225 is shorthand for `-useTelnet -telnetProgram program'.
\r
1227 -telnet/-xtelnet or -useTelnet true/false
1228 This option is poorly named; it should be called useHelper.
\r If
1229 set to true, it instructs XBoard to run an external
\r program to
1230 communicate with the Internet Chess Server.
\r The program to use
1231 is given by the telnetProgram option.
\r If the option is
\r false
1232 (the default), XBoard opens a TCP socket and uses its own
\r
1233 internal implementation of the telnet protocol to communicate with
1234 the
\r ICS. *Note Firewalls::.
\r
1236 -telnetProgram prog-name
1237 This option is poorly named; it should be called helperProgram.
\r
1238 It gives the name of the telnet program to be used with
\r the
1239 `gateway' and `useTelnet' options. The default is
\r `telnet'. The
1240 telnet program is invoked with the value of
\r
1241 `internetChessServerHost' as its first argument and the value
\r of
1242 `internetChessServerPort' as its second argument.
\r *Note
1246 If this option is set to a host name, XBoard communicates with
1247 the
\r Internet Chess Server by using `rsh' to run
\r the
1248 `telnetProgram' on the given host,
\r instead of using its own
1249 internal implementation
\r of the telnet protocol. You can
1250 substitute a different remote shell
\r program for `rsh' using the
1251 `remoteShell' option described below.
\r *Note Firewalls::.
\r
1253 -internetChessServerCommPort or -icscomm dev-name
1254 If this option is set, XBoard communicates with the ICS through
\r
1255 the given character I/O device instead of opening a TCP
1256 connection.
\r Use this option if your system does not have any
1257 kind of
\r Internet connection itself (not even a SLIP or PPP
1258 connection),
\r but you do have dialup access (or a hardwired
1259 terminal line) to
\r an Internet service provider from which you
1260 can telnet to the ICS.
\r \r The support for this option in XBoard
1261 is minimal. You need to
\r set all communication parameters and tty
1262 modes before you enter
\r XBoard.
\r \r Use a script something like
1264 stty raw -echo 9600 > /dev/tty00
\r
1265 xboard -ics -icscomm /dev/tty00
\r
1266 \r Here replace `/dev/tty00' with the name of the device that
1267 your
\r modem is connected to. You might have to add several more
\r
1268 options to these stty commands. See the man pages for `stty'
\r and
1269 `tty' if you run into problems. Also, on many systems stty
\r works
1270 on its standard input instead of standard output, so you
\r have to
1271 use `<' instead of `>'.
\r \r If you are using linux, try starting
1272 with the script below.
\r Change it as necessary for your
1275 # configure modem and fire up XBoard
\r
1279 stty 2400 ; stty raw ; stty hupcl ; stty -clocal
\r
1280 stty ignbrk ; stty ignpar ; stty ixon ; stty ixoff
\r
1281 stty -iexten ; stty -echo
\r
1283 xboard -ics -icscomm /dev/modem
\r
1284 After you start XBoard in this way, type whatever commands are
\r
1285 necessary to dial out to your Internet provider and log in.
\r Then
1286 telnet to ICS, using a command like
\r `telnet chessclub.com
1287 5000'.
\r Important: See the paragraph below about extra echoes,
\r
1288 in *note Limitations::.
\r
1290 -icslogon or -internetChessServerLogonScript file-name
1291 Whenever XBoard connects to the Internet Chess Server,
\r if it
1292 finds a file with the name given in this option, it feeds the
\r
1293 file's contents to the ICS as commands. The default file name
\r is
1294 `.icsrc'.
\r Usually the first two lines of the file should be
\r
1295 your ICS user name and password.
\r The file can be either in
1296 $CHESSDIR, in XBoard's working
\r directory if CHESSDIR is not set,
1297 or in your home directory.
\r
1300 If you experience trouble logging on to an ICS when using the
\r
1301 `-icslogon' option, inserting some delay between characters
\r of
1302 the logon script may help. This option adds `delay'
\r milliseconds
1303 of delay between characters. Good values to try
\r are 100 and
1306 -icsinput/-xicsinput or -internetChessServerInputBox true/false
1307 Sets the ICS Input Box menu option. *Note Mode Menu::. Default:
1310 -autocomm/-xautocomm or -autoComment true/false
1311 Sets the Auto Comment menu option. *Note Options Menu::. Default:
1314 -autoflag/-xautoflag or -autoCallFlag true/false
1315 Sets the Auto Flag menu option. *Note Options Menu::. Default:
1318 -autobs/-xautobs or -autoObserve true/false
1319 Sets the Auto Observe menu option. *Note Options Menu::. Default:
1323 Enables kibitzing of the engines last thinking output (depth,
1324 score, time, speed, PV)
\r before it moved
\r to the ICS, in zippy
1325 mode. The option `showThinking' must be switched on for
\r this
1326 option to work.
\r Also diverts similar kibitz information of an
1327 opponent engine that is playing you
\r through the ICS to the
1328 engine-output window, as if the engine was playing locally.
\r
1330 -moves/-xmoves or -getMoveList true/false
1331 Sets the Get Move List menu option. *Note Options Menu::.
1334 -alarm/-xalarm or -icsAlarm true/false
1335 Sets the ICS Alarm menu option. *Note Options Menu::. Default:
1339 Sets the time in milliseconds for the ICS Alarm menu option.
\r
1340 *Note Options Menu::. Default: 5000.
\r
1342 -pre/-xpre \fRor\fB -premove true/false
1343 Sets the Premove menu option. *Note Options Menu::. Default:
1346 -quiet/-xquiet or -quietPlay true/false
1347 Sets the Quiet Play menu option. *Note Options Menu::. Default:
1350 -colorizeMessages or -colorize
1351 Setting colorizeMessages
\r to true tells XBoard to colorize the
1352 messages received from
\r the ICS. Colorization works only if your
1353 xterm
\r supports ISO 6429 escape sequences for changing text
1356 -colorShout foreground,background,bold
1357 -colorSShout foreground,background,bold
1358 -colorChannel1 foreground,background,bold
1359 -colorChannel foreground,background,bold
1360 -colorKibitz foreground,background,bold
1361 -colorTell foreground,background,bold
1362 -colorChallege foreground,background,bold
1363 -colorRequest foreground,background,bold
1364 -colorSeek foreground,background,bold
1365 -colorNormal foreground,background,bold
1366 These options set the colors used when colorizing ICS messages.
\r
1367 All ICS messages are grouped into one of these categories:
\r
1368 shout, sshout, channel 1, other channel, kibitz, tell, challenge,
1369 \r request (including abort, adjourn, draw, pause, and takeback),
1370 or
\r normal (all other messages).
\r \r Each foreground or
1371 background argument can be one of the following:
\r black, red,
1372 green, yellow, blue, magenta, cyan, white, or default.
\r Here
1373 "default" means the default foreground or background color of
\r
1374 your xterm. Bold can be 1 or 0. If background is omitted,
1375 "default"
\r is assumed; if bold is omitted, 0 is assumed.
\r \r
1376 Here is an example of how to set the colors in your `.Xresources'
1377 file.
\r The colors shown here are the default values; you will
1378 get
\r them if you turn `-colorize' on without specifying your own
1380 xboard*colorizeMessages: true
\r
1381 xboard*colorShout: green
\r
1382 xboard*colorSShout: green, black, 1
\r
1383 xboard*colorChannel1: cyan
\r
1384 xboard*colorChannel: cyan, black, 1
\r
1385 xboard*colorKibitz: magenta, black, 1
\r
1386 xboard*colorTell: yellow, black, 1
\r
1387 xboard*colorChallenge: red, black, 1
\r
1388 xboard*colorRequest: red
\r
1389 xboard*colorSeek: blue
\r
1390 xboard*colorNormal: default
\r
1392 -soundProgram progname
1393 If this option is set to a sound-playing program that is installed
1394 and
\r working on your system, XBoard can play sound files when
1395 certain
\r events occur, listed below. The default program name is
1396 "play". If
\r any of the sound options is set to "$", the event
1397 rings the terminal
\r bell by sending a ^G character to standard
1398 output, instead of playing
\r a sound file. If an option is set to
1399 the empty string "", no sound is
\r played for that event.
\r
1401 -soundShout filename
1402 -soundSShout filename
1403 -soundChannel filename
1404 -soundKibitz filename
1406 -soundChallenge filename
1407 -soundRequest filename
1409 These sounds are triggered in the same way as the colorization
1410 events
\r described above. They all default to "", no sound. They
1411 are played
\r only if the colorizeMessages is on.
\r
1414 This sound is used by the Move Sound menu option. Default: "$".
\r
1416 -soundIcsAlarm filename
1417 This sound is used by the ICS Alarm menu option. Default: "$".
\r
1419 -soundIcsWin filename
1420 This sound is played when you win an ICS game. Default: "" (no
1423 -soundIcsLoss filename
1424 This sound is played when you lose an ICS game. Default: "" (no
1427 -soundIcsDraw filename
1428 This sound is played when you draw an ICS game. Default: "" (no
1431 -soundIcsUnfinished filename
1432 This sound is played when an ICS game that you are participating
1433 in is
\r aborted, adjourned, or otherwise ends inconclusively.
1434 Default: "" (no
\r sound).
\r \r Here is an example of how to set
1435 the sounds in your `.Xresources' file:
\r \r
1436 xboard*soundShout: shout.wav
\r
1437 xboard*soundSShout: sshout.wav
\r
1438 xboard*soundChannel1: channel1.wav
\r
1439 xboard*soundChannel: channel.wav
\r
1440 xboard*soundKibitz: kibitz.wav
\r
1441 xboard*soundTell: tell.wav
\r
1442 xboard*soundChallenge: challenge.wav
\r
1443 xboard*soundRequest: request.wav
\r
1444 xboard*soundSeek: seek.wav
\r
1445 xboard*soundMove: move.wav
\r
1446 xboard*soundIcsWin: win.wav
\r
1447 xboard*soundIcsLoss: lose.wav
\r
1448 xboard*soundIcsDraw: draw.wav
\r
1449 xboard*soundIcsUnfinished: unfinished.wav
\r
1450 xboard*soundIcsAlarm: alarm.wav
\r
1453 3.4 Load and Save options
1454 =========================
1456 -lgf or -loadGameFile file
1457 -lgi or -loadGameIndex index
1458 If the `loadGameFile' option is set, XBoard loads the specified
\r
1459 game file at startup. The file name `-' specifies the standard
\r
1460 input. If there is more than one game in the file, XBoard
\r pops
1461 up a menu of the available games, with entries based on their PGN
1462 \r (Portable Game Notation) tags.
\r If the `loadGameIndex' option
1463 is set to `N', the menu is suppressed
\r and the N th game found in
1464 the file is loaded immediately.
\r The menu is also suppressed if
1465 `matchMode' is enabled or if the game file
\r is a pipe; in these
1466 cases the first game in the file is loaded immediately.
\r Use the
1467 `pxboard' shell script provided with XBoard if you
\r want to pipe
1468 in files containing multiple games and still see the menu.
\r If
1469 the loadGameIndex specifies an index -1, this triggers
1470 auto-increment
\r of the index in `matchMode', which means that
1471 after every game the
\r index is incremented by one, causing each
1472 game of the match to be played
\r from the next game in the file.
1473 Similarly, specifying an index value of -2
\r causes the index to
1474 be incremented every two games, so that each game
\r in the file is
1475 used twice (with reversed colors).
\r The `rewindIndex' option
1476 causes the index to be reset to the
\r first game of the file when
1477 it has reached a specified value.
\r
1480 Causes a position file or game file to be rewound to its beginning
1481 after n
\r positions or games in auto-increment `matchMode'.
\r See
1482 `loadPositionIndex' and `loadGameIndex'.
\r default: 0 (no
1485 -td or -timeDelay seconds
1486 Time delay between moves during `Load Game'. Fractional seconds
\r
1487 are allowed; try `-td 0.4'. A time delay value of -1 tells
\r
1488 XBoard not to step through game files automatically. Default: 1
\r
1491 -sgf or -saveGameFile file
1492 If this option is set, XBoard appends a record of every game
\r
1493 played to the specified file. The file name `-' specifies the
\r
1496 -autosave/-xautosave or -autoSaveGames true/false
1497 Sets the Auto Save menu option. *Note Options Menu::. Default:
1498 false.
\r Ignored if `saveGameFile' is set.
\r
1500 -lpf or -loadPositionFile file
1501 -lpi or -loadPositionIndex index
1502 If the `loadPositionFile' option is set, XBoard loads the
\r
1503 specified position file at startup. The file name `-' specifies
1504 the
\r standard input. If the `loadPositionIndex' option is set to
1505 N,
\r the Nth position found in the file is loaded; otherwise the
\r
1506 first position is loaded.
\r If the loadPositionIndex specifies an
1507 index -1, this triggers auto-increment
\r of the index in
1508 `matchMode', which means that after every game the
\r index is
1509 incremented by one, causing each game of the match to be played
\r
1510 from the next position in the file. Similarly, specifying an index
1511 value of -2
\r causes the index to be incremented every two games,
1512 so that each position
\r in the file is used twice (with the
1513 engines playing opposite colors).
\r The `rewindIndex' option
1514 causes the index to be reset to the
\r first position of the file
1515 when it has reached a specified value.
\r
1517 -spf or -savePositionFile file
1518 If this option is set, XBoard appends the final position reached
\r
1519 in every game played to the specified file. The file name `-'
\r
1520 specifies the standard output.
\r
1522 -pgnExtendedInfo true/false
1523 If this option is set, WinBoard saves depth, score and time used
1524 for each
\r move that the engine found as a comment in the PGN
1525 file.
\r Default: false.
\r
1527 -pgnEventHeader string
1528 Sets the name used in the PGN event tag to string.
\r Default:
1529 "Computer Chess Game".
\r
1531 -saveOutOfBookInfo true/false
1532 Include the information on how the engine(s) game out of its
1533 opening book in a special 'annotator' tag with the PGN file.
\r
1535 -oldsave/-xoldsave or -oldSaveStyle true/false
1536 Sets the Old Save Style menu option. *Note Options Menu::.
1539 -gameListTags string
1540 The character string lists the PGN tags that should be printed in
1541 the
\r Game List, and their order. The meaning of the codes is
1542 e=event,
\r s=site, d=date, o=round, p=players, r=result, w=white
1543 Elo, b=black Elo,
\r t=time control, v=variant, a=out-of-book
1544 info.
\r Default: "eprd"
\r
1547 3.5 User interface options
1548 ==========================
1553 These and most other standard Xt options are accepted.
\r
1556 Suppresses all GUI functions of XBoard
\r (to speed up automated
1557 ultra-fast engine-engine games, which you donÂ’t want to watch).
\r
1558 There will be no board or clock updates, no printing of moves,
\r
1559 and no update of the icon on the task bar in this mode.
\r
1561 -movesound/-xmovesound or -ringBellAfterMoves true/false
1562 Sets the Move Sound menu option. *Note Options Menu::. Default:
1563 false.
\r For compatibility with old XBoard versions, -bell/-xbell
1564 are also
\r accepted as abbreviations for this option.
\r
1566 -exit/-xexit or -popupExitMessage true/false
1567 Sets the Popup Exit Message menu option. *Note Options Menu::.
1570 -popup/-xpopup or -popupMoveErrors true/false
1571 Sets the Popup Move Errors menu option. *Note Options Menu::.
1574 -queen/-xqueen or -alwaysPromoteToQueen true/false
1575 Sets the Always Queen menu option. *Note Options Menu::.
1578 -legal/-xlegal or -testLegality true/false
1579 Sets the Test Legality menu option. *Note Options Menu::.
1582 -size or -boardSize (sizeName | n1,n2,n3,n4,n5,n6,n7)
1583 Determines how large the board will be, by selecting the pixel
1584 size
\r of the pieces and setting a few related parameters.
\r The
1585 sizeName can be one of: Titanic, giving 129x129 pixel pieces,
\r
1586 Colossal 116x116, Giant 108x108, Huge 95x95, Big 87x87, Large
1587 80x80, Bulky 72x72,
\r Medium 64x64, Moderate 58x58, Average 54x54,
1588 Middling 49x49, Mediocre
\r 45x45, Small 40x40, Slim 37x37, Petite
1589 33x33, Dinky 29x29, Teeny 25x25,
\r or Tiny 21x21.
\r Pieces of all
1590 these sizes are built into XBoard.
\r Other sizes can
\r be used if
1591 you have them; see the pixmapDirectory and bitmapDirectory
\r
1592 options.
\r The default depends on the size of your screen; it is
1593 approximately the
\r largest size that will fit without clipping.
\r
1594 \r You can select other sizes or vary other layout parameters by
1595 providing
\r a list of comma-separated values (with no spaces) as
1596 the argument.
\r You do not need to provide all the values; for any
1597 you omit from the
\r end of the list, defaults are taken from the
1598 nearest built-in size.
\r The value `n1' gives the piece size, `n2'
1599 the width of the
\r black border
\r between squares, `n3' the
1600 desired size for the
\r clockFont, `n4' the desired size for the
1601 coordFont,
\r `n5' the desired size for the default font,
\r `n6'
1602 the smallLayout flag (0 or 1),
\r and `n7' the tinyLayout flag (0
1603 or 1).
\r All dimensions are in pixels.
\r If the border between
1604 squares is eliminated (0 width), the various
\r highlight options
1605 will not work, as there is nowhere to draw the highlight.
\r If
1606 smallLayout is 1 and `titleInWindow' is true,
\r the window layout
1607 is rearranged to make more room for the title.
\r If tinyLayout is
1608 1, the labels on the menu bar are abbreviated
\r to one character
1609 each and the buttons in the button bar are made narrower.
\r
1611 -coords/-xcoords or -showCoords true/false
1612 Sets the Show Coords menu option. *Note Options Menu::. Default:
1613 false.
\r The `coordFont' option specifies what font to use.
\r
1615 -autoraise/-xautoraise or -autoRaiseBoard true/false
1616 Sets the Auto Raise Board menu option. *Note Options Menu::.
1619 -autoflip/-xautoflip or -autoFlipView true/false
1620 Sets the Auto Flip View menu option. *Note Options Menu::.
1623 -flip/-xflip or -flipView true/false
1624 If Auto Flip View is not set, or if you are observing but not
1625 participating
\r in a game, then the positioning of the board at
1626 the start of each game
\r depends on the flipView option. If
1627 flipView is false (the default),
\r the board is positioned so that
1628 the white pawns move from the bottom to the
\r top; if true, the
1629 black pawns move from the bottom to the top.
\r In any case, the
1630 Flip menu option (see *note Options Menu::)
\r can be used to flip
1631 the board after
\r the game starts.
\r
1633 -title/-xtitle or -titleInWindow true/false
1634 If this option is true, XBoard displays player names (for ICS
\r
1635 games) and game file names (for `Load Game') inside its main
\r
1636 window. If the option is false (the default), this information is
\r
1637 displayed only in the window banner. You probably won't want to
\r
1638 set this option unless the information is not showing up in the
\r
1639 banner, as happens with a few X window managers.
\r
1641 -buttons/-xbuttons or -showButtonBar True/False
1642 If this option is False, xboard omits the [<<] [<] [P] [>] [>>]
1643 button
\r bar from the window, allowing the message line to be
1644 wider. You can
\r still get the functions of these buttons using
1645 the menus or their keyboard
\r shortcuts. Default: true.
\r
1647 -mono/-xmono or -monoMode true/false
1648 Determines whether XBoard displays its pieces and squares with
\r
1649 two colors (true) or four (false). You shouldn't have to
\r specify
1650 `monoMode'; XBoard will determine if it is necessary.
\r
1655 These options enable flashing of pieces when they
\r land on their
1656 destination square.
\r `flashCount'
\r tells XBoard how many times
1657 to flash a piece after it
\r lands on its destination square.
\r
1658 `flashRate'
\r controls the rate of flashing (flashes/sec).
\r
1659 Abbreviations:
\r `flash'
\r sets flashCount to 3.
\r `xflash'
\r sets
1660 flashCount to 0.
\r Defaults: flashCount=0 (no flashing),
1663 -highlight/-xhighlight or -highlightLastMove true/false
1664 Sets the Highlight Last Move menu option. *Note Options Menu::.
1667 -blind/-xblind or -blindfold true/false
1668 Sets the Blindfold menu option. *Note Options Menu::. Default:
1672 The font used for the clocks. If the option value is a pattern
\r
1673 that does not specify the font size, XBoard tries to choose an
\r
1674 appropriate font for the board size being used.
\r Default:
1675 -*-helvetica-bold-r-normal-*-*-*-*-*-*-*-*.
\r
1678 The font used for rank and file coordinate labels if `showCoords'
\r
1679 is true. If the option value is a pattern that does not specify
\r
1680 the font size, XBoard tries to choose an appropriate font for
\r
1681 the board size being used.
\r Default:
1682 -*-helvetica-bold-r-normal-*-*-*-*-*-*-*-*.
\r
1685 The font used for popup dialogs, menus, comments, etc.
\r If the
1686 option value is a pattern that does not specify
\r the font size,
1687 XBoard tries to choose an appropriate font for
\r the board size
1688 being used.
\r Default:
1689 -*-helvetica-medium-r-normal-*-*-*-*-*-*-*-*.
\r
1691 -fontSizeTolerance tol
1692 In the font selection algorithm, a nonscalable font will be
1693 preferred
\r over a scalable font if the nonscalable font's size
1694 differs
\r by `tol' pixels
\r or less from the desired size. A
1695 value of -1 will force
\r a scalable font to always be used if
1696 available; a value of 0 will
\r use a nonscalable font only if it
1697 is exactly the right size;
\r a large value (say 1000) will force
1698 a nonscalable font to always be
\r used if available. Default: 4.
\r
1700 -bm or -bitmapDirectory dir
1701 -pixmap or -pixmapDirectory dir
1702 These options control what piece images xboard uses. The XBoard
\r
1703 distribution includes one set of pixmap pieces in xpm format, in
1704 the
\r directory `pixmaps', and one set of bitmap pieces in xbm
1705 format,
\r in the directory `bitmaps'. Pixmap
\r pieces give a
1706 better appearance on the screen: the white pieces have
\r dark
1707 borders, and the black pieces have opaque internal details. With
\r
1708 bitmaps, neither piece color has a border, and the internal
1709 details
\r are transparent; you see the square color or other
1710 background color
\r through them.
\r \r If XBoard is configured and
1711 compiled on a system that includes libXpm,
\r the X pixmap library,
1712 the xpm pixmap pieces are compiled in as the
\r default. A
1713 different xpm piece set can be selected at runtime with
\r the
1714 `pixmapDirectory' option, or a bitmap piece set can be selected
\r
1715 with the `bitmapDirectory' option.
\r \r If XBoard is configured
1716 and compiled on a system that does not include
\r libXpm (or the
1717 `--disable-xpm' option is given to the configure
\r program), the
1718 bitmap pieces are compiled in as the default. It is not
\r
1719 possible to use xpm pieces in this case, but pixmap pieces in
1720 another
\r format called "xim" can be used by giving the
1721 `pixmapDirectory' option.
\r Or again, a different bitmap piece set
1722 can be selected with the
\r `bitmapDirectory' option.
\r \r Files in
1723 the `bitmapDirectory' must be named as follows:
\r The first
1724 character of a piece bitmap name gives the piece it
\r represents
1725 (`p', `n', `b', `r', `q', or `k'),
\r the next characters give the
1726 size in pixels, the
\r following character indicates whether the
1727 piece is
\r solid or outline (`s' or `o'),
\r and the extension is
1728 `.bm'.
\r For example, a solid 80x80 knight would be named
1729 `n80s.bm'.
\r The outline bitmaps are used only in monochrome
1730 mode.
\r If bitmap pieces are compiled in and the bitmapDirectory
1731 is missing
\r some files, the compiled in pieces are used instead.
\r
1732 \r If the bitmapDirectory option is given,
\r it is also possible
1733 to replace xboard's icons and menu checkmark,
\r by supplying files
1734 named `icon_white.bm', `icon_black.bm', and
\r `checkmark.bm'.
\r \r
1735 For more information about pixmap pieces and how to get
1736 additional
\r sets, see *note zic2xpm:: below.
\r
1738 -whitePieceColor color
1739 -blackPieceColor color
1740 -lightSquareColor color
1741 -darkSquareColor color
1742 -highlightSquareColor color
1743 Colors to use for the pieces, squares, and square highlights.
\r
1745 -whitePieceColor #FFFFCC
\r
1746 -blackPieceColor #202020
\r
1747 -lightSquareColor #C8C365
\r
1748 -darkSquareColor #77A26D
\r
1749 -highlightSquareColor #FFFF00
\r
1750 -premoveHighlightColor #FF0000
\r
1751 \r On a grayscale monitor you might prefer:
\r \r
1752 -whitePieceColor gray100
\r
1753 -blackPieceColor gray0
\r
1754 -lightSquareColor gray80
\r
1755 -darkSquareColor gray60
\r
1756 -highlightSquareColor gray100
\r
1757 -premoveHighlightColor gray70
\r
1759 -drag/-xdrag or -animateDragging true/false
1760 Sets the Animate Dragging menu option. *Note Options Menu::.
1763 -animate/-xanimate or -animateMoving true/false
1764 Sets the Animate Moving menu option. *Note Options Menu::.
1768 Number of milliseconds delay between each animation frame when
1769 Animate
\r Moves is on.
\r
1772 3.6 Adjudication Options
1773 ========================
1775 -adjudicateLossThreshold n
1776 If the given value is non-zero, XBoard adjudicates the game as a
1777 loss
\r if both engines agree for a duration of 6 consecutive ply
1778 that the score
\r is below the given score threshold for that
1779 engine. Make sure the score
\r is interpreted properly by XBoard,
1780 \r using `-firstScoreAbs' and `-secondScoreAbs' if needed.
\r
1781 Default: 0 (no adjudiction)
\r
1783 -adjudicateDrawMoves n
1784 If the given value is non-zero, XBoard adjudicates the game as a
1785 draw
\r if after the given number of moves it was not yet decided.
1786 Defaut: 0 (no adjudication)
\r
1788 -checkMates true/false
1789 If this option is set, XBoard detects all checkmates and
1790 stalemates,
\r and ends the game as soon as they occur.
\r
1791 Legality-testing must be switched on for this option to work.
\r
1794 -testClaims true/false
1795 If this option is set, XBoard verifies all result claims made by
1796 engines,
\r and those who send false claims will forfeit the game
1797 because of it.
\r Legality-testing must be switched on for this
1798 option to work. Default: true
\r
1800 -materialDraws true/false
1801 If this option is set, XBoard adjudicates games as draws when
1802 there is
\r no sufficient material left to inflict a checkmate.
\r
1803 This applies to KBKB with like bishops (any number, actually), and
1804 to KBK, KNK and KK.
\r Legality-testing must be switched on for
1805 this option to work. Default: true
\r
1807 -trivialDraws true/false
1808 If this option is set, XBoard adjudicates games as draws that
1809 cannot be
\r usually won without opponent cooperation. This
1810 applies to KBKB with unlike bishops,
\r and to KBKN, KNKN, KNNK,
1811 KRKR and KQKQ. The draw is called after 6 ply into these
1812 end-games,
\r to allow quick mates that can occur in some
1813 exceptional positions to be found by the engines.
\r KQKQ does not
1814 really belong in this category, and might be taken out in the
1815 future.
\r (When bitbase-based adjudications are implemented.)
\r
1816 Legality-testing must be on for this option to work. Default:
1820 If the given value is non-zero, XBoard adjudicates the game as a
1821 draw after the given
\r number of consecutive reversible moves.
1822 Engine draw claims are always accepted after 50 moves,
\r
1823 irrespective of the given value of n.
\r
1826 If the given value is non-zero, xboard adjudicates the game as a
1827 draw if a position
\r is repeated the given number of times.
1828 Engines draw claims are always accepted after 3 repeats,
\r (on
1829 the 3rd occurrence, actually), irrespective of the value of n.
\r
1830 Beware that positions that have different castling or en-passant
1831 rights do not count
\r as repeats, XBoard is fully e.p. and
1838 -ncp/-xncp or -noChessProgram true/false
1839 If this option is true, XBoard acts as a passive chessboard; it
\r
1840 does not start a chess engine at all. Turning on this option
\r
1841 also turns off clockMode. Default: false.
\r
1843 -mode or -initialMode modename
1844 If this option is given, XBoard selects the given modename
\r from
1845 the Mode menu after starting and (if applicable) processing the
\r
1846 loadGameFile or loadPositionFile option. Default: "" (no
1847 selection).
\r Other supported values are
\r MachineWhite,
1848 MachineBlack, TwoMachines, Analysis,
\r AnalyzeFile, EditGame,
1849 EditPosition, and Training.
\r
1852 Activates preliminary, partial support for playing chess variants
\r
1853 against a local engine or editing variant games. This flag is
1854 not
\r needed in ICS mode. Recognized variant names are:
\r \r
1855 normal Normal chess
\r
1856 wildcastle Shuffle chess, king can castle from d file
\r
1857 nocastle Shuffle chess, no castling allowed
\r
1858 fischerandom Fischer Random shuffle chess
\r
1859 bughouse Bughouse, ICC/FICS rules
\r
1860 crazyhouse Crazyhouse, ICC/FICS rules
\r
1861 losers Lose all pieces or get mated (ICC wild 17)
\r
1862 suicide Lose all pieces including king (FICS)
\r
1863 giveaway Try to have no legal moves (ICC wild 26)
\r
1864 twokings Weird ICC wild 9
\r
1865 kriegspiel Opponent's pieces are invisible
\r
1866 atomic Capturing piece explodes (ICC wild 27)
\r
1867 3check Win by giving check 3 times (ICC wild 25)
\r
1868 shatranj An ancient precursor of chess (ICC wild 28)
\r
1869 xiangqi Chinese Chess (on a 9x10 board)
\r
1870 shogi Japanese Chess (on a 9x9 board & piece drops)
\r
1871 capablanca Capablanca Chess (10x8 board, with Archbishop
\r
1872 and Chancellor pieces)
\r
1873 gothic similar, with a better initial position
\r
1874 caparandom An FRC-like version of Capablanca Chess (10x8)
\r
1875 janus A game with two Archbishops (10x8 board)
\r
1876 courier Medieval intermedite between shatranj and
\r
1877 modern Chess (on 12x8 board)
\r
1878 falcon Patented 10x8 variant with two Falcon pieces
\r
1879 berolina Pawns capture straight ahead, and move diagonal
\r
1880 cylinder Pieces wrap around the board edge
\r
1881 knightmate King moves as Knight, and vice versa
\r
1882 super Superchess (shuffle variant with 4 exo-pieces)
\r
1883 fairy A catchall variant in which all piece types
\r
1884 known to XBoard can participate (8x8)
\r
1885 unknown Catchall for other unknown variants
\r
1886 \r In the shuffle variants, XBoard now does shuffle the pieces,
1887 although
\r you can still do it by hand using Edit Position. Some
1888 variants are
\r supported only in ICS mode, including bughouse,
1889 and
\r kriegspiel. The winning/drawing conditions in crazyhouse
1890 (offboard
\r interposition on mate), losers, suicide, giveaway,
1891 atomic, and 3check
\r are not fully understood.
\r Berolina and
1892 cylinder chess can only be played with legality testing off.
\r In
1893 crazyhouse, XBoard now does keep
\r track of offboard pieces. In
1894 shatranj it does implement the baring
\r rule when mate detection
1898 Allows you to set a non-standard number of board ranks in any
1899 variant.
\r If the height is given as -1, the default height for
1900 the variant is used.
\r Default: -1
\r
1903 Allows you to set a non-standard number of board files in any
1904 variant.
\r If the width is given as -1, the default width for the
1905 variant is used.
\r With a non-standard width, the initial
1906 position will always be an empty board,
\r as the usual opening
1907 array will not fit.
\r Default: -1
\r
1910 Allows you to set a non-standard size for the holdings in any
1911 variant.
\r If the size is given as -1, the default holdings size
1912 for the variant is used.
\r The first N piece types will go into
1913 the holdings on capture, and you will be
\r able to drop them on
1914 the board in stead of making a normal move. If size equals 0,
\r
1915 there will be no holdings.
\r Default: -1
\r
1917 -defaultFrcPosition N
1918 Specifies the number of the opening position in shuffle games like
1919 Chess960.
\r A value of -1 means the position is randomly
1920 generated by XBoard
\r at the beginning of every game.
\r Default:
1923 -pieceToSquareTable string
1924 The characters that are used to represent the piece types XBoard
1925 knows in FEN
\r diagrams and SAN moves. The string argument has to
1926 have an even length
\r (or it will be ignored), as white and black
1927 pieces have to be given separately
\r (in that order). The last
1928 letter for each color will be the King.
\r The letters before that
1929 will be PNBRQ and then a whole host of fairy pieces
\r in an order
1930 that has not fully crystallized yet (currently FEACWMOHIJGDVSLU,
\r
1931 F=Ferz, Elephant, A=Archbishop, C=Chancellor, W=Wazir, M=Commoner,
1932 O=Cannon,
\r H=Nightrider). You should list at least all pieces
1933 that occur in the variant
\r you are playing. If you have less
1934 than 44 characters in the string, the pieces
\r not mentioned will
1935 get assigned a period, and you will not be able to distinguish
\r
1936 them in FENs. You can also explicitly assign pieces a period, in
1937 which case they
\r will not be counted in deciding which captured
1938 pieces can go into the holdings.
\r A tilde '~' as a piece name
1939 does mean this piece is used to represent a promoted
\r Pawn in
1940 crazyhouse-like games, i.e. on capture it turns back onto a Pawn.
1941 \r A '+' similarly indicates the piece is a shogi-style promoted
1942 piece, that should
\r revert to its non-promoted version on
1943 capture (rather than to a Pawn).
\r Note that promoted pieces are
1944 represented by pieces 11 further in the list.
\r You should not
1945 have to use this option often: each variant has its own default
\r
1946 setting for the piece representation in FEN, which should be
1947 sufficient in normal use.
\r Default: ""
\r
1949 -debug/-xdebug or -debugMode true/false
1950 Turns on debugging printout.
\r
1952 -debugFile filename or -nameOfDebugFile filename
1953 Sets the name of the file to which WinBoard saves debug
1954 information
\r (including all communication to and from the
1957 -engineDebugOutput number
1958 Specifies how WinBoard should handle unsolicited output from the
1959 engine,
\r with respect to saving it in the debug file.
\r The
1960 output is further (hopefully) ignored.
\r If number=0, WinBoard
1961 refrains from writing such spurious output to the debug file.
\r
1962 If number=1, all engine output is written faithfully to the debug
1963 file.
\r If number=2, any protocol-violating line is prefixed with
1964 a ‘#’ character,
\r as the engine itself should have done if it
1965 wanted to submit info for inclusion in the debug file.
\r This
1966 option is provided for the benefit of applications that use the
1967 debug file
\r as a source of information, such as the broadcaster
1968 of live games TLCV / TLCS.
\r Such applications can be protected
1969 from spurious engine output that might otherwise confuse them.
\r
1971 -rsh or -remoteShell shell-name
1972 Name of the command used to run programs remotely. The default
\r
1973 is `rsh' or `remsh', determined when XBoard is
\r configured and
1976 -ruser or -remoteUser user-name
1977 User name on the remote system when running programs with the
\r
1978 `remoteShell'. The default is your local user name.
\r
1981 Name under which the Human player will be listed in the PGN file.
1982 \r Default is the login name on your local computer.
\r
1984 -delayBeforeQuit number
1985 -delayAfterQuit number
1986 These options specify how long WinBoard has to wait before sending
1987 a termination signal to rogue engine processes, that do not want
1988 to react to the ‘quit’ command. The second one determines the
1989 pause after killing the engine, to make sure it dies.
\r \r
1995 An "Internet Chess Server", or "ICS", is a place on the
\r Internet
1996 where people can get together to play chess, watch other
\r people's
1997 games, or just chat. You can use either `telnet' or a
\r client program
1998 like XBoard to connect to the server. There are
\r thousands of
1999 registered users on the different ICS hosts, and it is
\r not unusual to
2000 meet 200 on both chessclub.com and freechess.org.
\r \r Most people can
2001 just type `xboard -ics' to start XBoard as an ICS
\r client. Invoking
2002 XBoard in this way connects you to the Internet
\r Chess Club (ICC), a
2003 commercial ICS. You can log in there as a guest
\r even if you do not
2004 have a paid account. To connect to the largest
\r Free ICS (FICS), use
2005 the command `xboard -ics -icshost freechess.org'
\r instead, or
2006 substitute a different host name to connect to your
\r favorite ICS.
\r
2007 For a full description of command-line options that control
\r the
2008 connection to ICS and change the default values of ICS options, see
\r
2009 *note ICS options::.
\r \r While you are running XBoard as an ICS
2010 client,
\r you use the terminal window that you started XBoard from
\r as
2011 a place to type in commands and read information that is
\r not
2012 available on the chessboard.
\r \r The first time you need to use the
2013 terminal is to enter your login name
\r and password, if you are a
2014 registered player. (You don't need to do
\r this manually; the
2015 `icsLogon' option can do it for you.
\r *note ICS options::.) If you
2016 are not registered,
\r enter `g' as your name, and the server will pick
2017 a
\r unique guest name for you.
\r \r Some useful ICS commands
\r include
\r
2019 to get help on the given <topic>. To get a list of possible topics
2020 type
\r "help" without topic. Try the help command before you ask
2021 other
\r people on the server for help.
\r \r For example `help
2022 register' tells you how to become a registered
\r ICS player.
\r
2025 to see a list of people who are logged on. Administrators
\r
2026 (people you should talk to if you have a problem) are marked
\r
2027 with the character `*', an asterisk. The <flags> allow you to
\r
2028 display only selected players: For example, `who of' shows a
\r
2029 list of players who are interested in playing but do not have
\r an
2033 to see what games are being played
\r
2035 `match <player> [<mins>] [<inc>]'
2036 to challenge another player to a game. Both opponents get <mins>
2037 minutes
\r for the game, and <inc> seconds will be added after each
2038 move.
\r If another player challenges you, the server asks if you
2039 want to
\r accept the challenge; use the `accept' or `decline'
2040 commands
\r to answer.
\r
2044 to accept or decline another player's offer.
\r The offer may be
2045 to start a new game, or to agree to a
\r `draw', `adjourn' or
2046 `abort' the current game. *Note Action Menu::.
\r \r If you have
2047 more than one pending offer (for example, if more than one player
\r
2048 is challenging you, or if your opponent offers both a draw and to
2049 adjourn the
\r game), you have to supply additional information, by
2050 typing something
\r like `accept <player>', `accept draw', or
2056 asks your opponent to terminate a game by mutual agreement.
2057 Adjourned
\r games can be continued later.
\r Your opponent can
2058 either `decline' your offer or accept it (by typing the
\r same
2059 command or typing `accept'). In some cases these commands work
\r
2060 immediately, without asking your opponent to agree. For example,
2061 you can
\r abort the game unilaterally if your opponent is out of
2062 time, and you can claim
\r a draw by repetition or the 50-move rule
2063 if available simply by typing
\r `draw'.
\r
2066 to get information about the given <player>. (Default: yourself.)
\r
2069 to get a list of personal settings
\r
2072 to modify these settings
\r
2075 to observe an ongoing game of the given <player>.
\r
2079 to review a recently completed game
\r
2080 \r Some special XBoard features are activated when you are
\r in
2081 examine mode on ICS. See the descriptions of the menu commands
\r
2082 `Forward', `Backward', `Pause', `ICS Client',
\r and `Stop Examining'
2083 on the *note Step Menu::, *note Mode Menu::, and
\r *note Options
2089 By default, XBoard communicates with an Internet Chess Server
\r by
2090 opening a TCP socket directly from the machine it is running on
\r to
2091 the ICS. If there is a firewall between your machine and the ICS,
\r
2092 this won't work. Here are some recipes for getting around common
\r
2093 kinds of firewalls using special options to XBoard.
\r Important: See
2094 the paragraph in the below about extra echoes, in
\r *note
2095 Limitations::.
\r \r Suppose that you can't telnet directly to ICS, but
2096 you can telnet
\r to a firewall host, log in, and then telnet from there
2097 to ICS.
\r Let's say the firewall is called `firewall.example.com'. Set
\r
2098 command-line options as follows:
\r \r
2099 xboard -ics -icshost firewall.example.com -icsport 23
\r
2100 Or in your `.Xresources' file:
\r \r
2101 XBoard*internetChessServerHost: firewall.example.com
\r
2102 XBoard*internetChessServerPort: 23
\r
2103 Then when you run XBoard in ICS mode, you will be prompted
\r to log
2104 in to the firewall host. This works because port 23 is the
\r standard
2105 telnet login service. Do so, then telnet to ICS, using a
\r command like
2106 `telnet chessclub.com 5000', or whatever command
\r the firewall
2107 provides for telnetting to port 5000.
\r \r If your firewall lets you
2108 telnet (or rlogin) to remote hosts but
\r doesn't let you telnet to port
2109 5000, you may be able to connect to the
\r chess server on port 23
2110 instead, which is the port the telnet program
\r uses by default. Some
2111 chess servers support this (including
\r chessclub.com and
2112 freechess.org), while some do not.
\r \r If your chess server does not
2113 allow connections on port 23 and your
\r firewall does not allow you to
2114 connect to other ports, you may be able
\r to connect by hopping through
2115 another host outside the firewall that
\r you have an account on. For
2116 instance, suppose you have a shell
\r account at `foo.edu'. Follow the
2117 recipe above, but instead of
\r typing `telnet chessclub.com 5000' to
2118 the firewall, type
\r `telnet foo.edu' (or `rlogin foo.edu'), log in
2119 there, and
\r then type `telnet chessclub.com 5000'.
\r \r Suppose that
2120 you can't telnet directly to ICS, but you can use rsh
\r to run programs
2121 on a firewall host, and that host can telnet to ICS.
\r Let's say the
2122 firewall is called `rsh.example.com'. Set
\r command-line options as
2124 xboard -ics -gateway rsh.example.com -icshost chessclub.com
\r
2125 \r Or in your `.Xresources' file:
\r \r
2126 XBoard*gateway: rsh.example.com
\r
2127 XBoard*internetChessServerHost: chessclub.com
\r
2128 \r Then when you run XBoard in ICS mode, it will connect to
\r the
2129 ICS by using `rsh' to run the command
\r `telnet chessclub.com 5000' on
2130 host `rsh.example.com'.
\r \r Suppose that you can telnet anywhere you
2131 want, but you have to
\r run a special program called `ptelnet' to do
2132 so.
\r \r First, we'll consider the easy case, in which
\r `ptelnet
2133 chessclub.com 5000' gets you to the chess server.
\r In this case set
2134 command line options as follows:
\r \r
2135 xboard -ics -telnet -telnetProgram ptelnet
\r
2136 \r Or in your `.Xresources' file:
\r \r
2137 XBoard*useTelnet: true
\r
2138 XBoard*telnetProgram: ptelnet
\r
2139 \r Then when you run XBoard in ICS mode, it will issue the
\r command
2140 `ptelnet chessclub.com 5000' to connect to the ICS.
\r \r Next, suppose
2141 that `ptelnet chessclub.com 5000' doesn't work;
\r that is, your
2142 `ptelnet' program doesn't let you connect to
\r alternative ports. As
2143 noted above, your chess server may allow you to
\r connect on port 23
2144 instead. In that case, just add the option
\r `-icsport ""' to the
2145 above command, or add
\r `XBoard*internetChessServerPort:' to your
2146 `.Xresources' file.
\r But if your chess server doesn't let you connect
2147 on port 23, you will have
\r to find some other host outside the
2148 firewall and hop through it. For
\r instance, suppose you have a shell
2149 account at `foo.edu'. Set
\r command line options as follows:
\r \r
2150 xboard -ics -telnet -telnetProgram ptelnet -icshost foo.edu -icsport ""
\r
2151 \r Or in your `.Xresources' file:
\r \r
2152 XBoard*useTelnet: true
\r
2153 XBoard*telnetProgram: ptelnet
\r
2154 XBoard*internetChessServerHost: foo.edu
\r
2155 XBoard*internetChessServerPort:
\r
2156 \r Then when you run XBoard in ICS mode, it will issue the
\r command
2157 `ptelnet foo.edu' to connect to your account at
\r `foo.edu'. Log in
2158 there, then type `telnet chessclub.com 5000'.
\r \r ICC timestamp and
2159 FICS timeseal do not work through some
\r firewalls. You can use them
2160 only if your firewall gives a clean TCP
\r connection with a full 8-bit
2161 wide path. If your firewall allows you
\r to get out only by running a
2162 special telnet program, you can't use
\r timestamp or timeseal across
2163 it. But if you have access to a
\r computer just outside your firewall,
2164 and you have much lower netlag
\r when talking to that computer than to
2165 the ICS, it might be worthwhile
\r running timestamp there. Follow the
2166 instructions above for hopping
\r through a host outside the firewall
2167 (foo.edu in the example),
\r but run timestamp or timeseal on that host
2168 instead of telnet.
\r \r Suppose that you have a SOCKS firewall that
2169 will give you a clean
\r 8-bit wide TCP connection to the chess server,
2170 but only after you
\r authenticate yourself via the SOCKS protocol. In
2171 that case, you could
\r make a socksified version of XBoard and run
2172 that. If you are using
\r timestamp or timeseal, you will to socksify
2173 it, not XBoard; this may
\r be difficult seeing that ICC and FICS do not
2174 provide source code for
\r these programs. Socksification is beyond the
2175 scope of this document,
\r but see the SOCKS Web site at
2176 http://www.socks.permeo.com/.
\r If you are missing SOCKS, try
2177 http://www.funbureau.com/.
\r \r
2179 6 Environment variables
2180 ***********************
2182 Game and position files are found in a directory named by the
\r
2183 `CHESSDIR' environment variable. If this variable is not set, the
\r
2184 current working directory is used. If `CHESSDIR' is set,
\r XBoard
2185 actually changes its working directory to
\r `$CHESSDIR', so any files
2186 written by the chess engine
\r will be placed there too.
\r \r
2188 7 Limitations and known bugs
2189 ****************************
2191 There is no way for two people running copies of XBoard to play
\r each
2192 other without going through an Internet Chess Server.
\r \r Under some
2193 circumstances, your ICS password may be echoed when you log on.
\r \r If
2194 you are connecting to the ICS by running telnet on an Internet
\r
2195 provider or firewall host, you may find that each line you type is
\r
2196 echoed back an extra time after you hit <Enter>. If your Internet
\r
2197 provider is a Unix system, you can probably turn its echo off by
\r
2198 typing `stty -echo' after you log in, and/or typing
\r <^E><Enter>
2199 (Ctrl+E followed by the Enter key) to the telnet
\r program after you
2200 have logged into ICS. It is a good idea to do this
\r if you can,
2201 because the extra echo can occasionally confuse XBoard's
\r parsing
2202 routines.
\r \r The game parser recognizes only algebraic notation.
\r \r
2203 Many of the following points used to be limitations in XBoard 4.2.7 and
2204 earlier,
\r but are now fixed:
\r The internal move legality tester in
2205 XBoard 4.3.xx does look at the game history,
\r and is fully aware of
2206 castling or en-passant-capture rights. It permits castling with
\r the
2207 king on the d file because this is possible in some "wild 1" games on
2208 ICS.
\r The piece-drop menu does not check piece drops in bughouse to
2209 see if you actually hold
\r the piece you are trying to drop. But this
2210 way of dropping pieces should be considered
\r an obsolete feature, now
2211 that pieces can be dropped by dragging them from the holdings
\r to the
2212 board. Anyway, if you would attempt an illegal move when using a chess
2213 engine or the ICS,
\r WinBoard will accept the error message that comes
2214 back, undo the move, and let you try another.
\r FEN positions saved by
2215 XBoard do include correct information about whether castling or
\r en
2216 passant are legal, and also handle the 50-move counter.
\r The mate
2217 detector does not understand that non-contact mate is not really mate
2218 in bughouse.
\r The only problem this causes while playing is minor: a
2219 "#" (mate indicator) character will
\r show up after a non-contact
2220 mating move in the move list. XBoard will not assume the game
\r is
2221 over at that point, not even when the option Detect Mates is on.
\r Edit
2222 Game mode always uses the rules of the selected variant,
\r which can
2223 be a variant that uses piece drops.
\r You can load and edit games
2224 that contain piece drops.
\r The (obsolete) piece menus are not active,
2225 \r but you can perform piece drops by dragging pieces from the
2226 holdings.
\r Edit Position mode does not allow you to edit the
2227 crazyhouse holdings properly.
\r You cannot drag pieces to the holding,
2228 and using the popup menu to put pieces
\r there does not adapt the
2229 holding counts and leads to an inconsistent state.
\r Set up crazyhouse
2230 positions by loading / pasting a bFEN, from there you can set the
2231 holdings.
\r Fischer Random castling is fully understood.
\r You can
2232 enter castlings by dragging the King on top of your Rook.
\r You can
2233 probably also play Fischer Random successfully on ICS by typing
\r
2234 castling moves into the ICS Interaction window.
\r \r The menus may not
2235 work if your keyboard is in Caps Lock or Num Lock mode.
\r This seems to
2236 be a problem with the Athena menu widget,
\r not an XBoard bug.
\r \r
2237 Also see the ToDo file included with the distribution for many other
\r
2238 possible bugs, limitations, and ideas for improvement that have been
\r
2241 8 Reporting problems
2242 ********************
2244 \r Report bugs and problems with XBoard to `<bug-xboard@gnu.org>'.
\r \r
2245 Please use the `script' program to start a typescript, run
\r XBoard
2246 with the `-debug' option, and include the typescript
\r output in your
2247 message.
\r Also tell us what kind of machine and what operating system
2248 version
\r you are using. The command `uname -a' will often tell you
2249 this.
\r Here is a sample of approximately what you should type:
\r \r
2256 mail bug-xboard@gnu.org
\r
2257 Subject: Your short description of the problem
\r
2258 Your detailed description of the problem
\r
2261 \r The WinBoard / XBoard 4.3 line is being developed by H.G. Muller
2262 \r independently of the GNU Savannah xboard project.
\r Bug reports on
2263 this version, and suggestions for improvements and additions,
\r are
2264 best posted in the WinBoard forum,
\r WinBoard-development section
2265 (http://www.open-aurec.com/wbforum).
\r \r If you improve XBoard,
2266 please send a message about your changes,
\r and we will get in touch
2267 with you about merging them in
\r to the main line of development.
\r
2268 Also see our Web site at http://savannah.gnu.org/projects/xboard/.
\r \r
2270 9 Authors and contributors
2271 **************************
2273 \r Tim Mann has been responsible for XBoard versions 1.3 and beyond,
2274 and
\r for WinBoard, a port of XBoard to Microsoft Win32 (Windows NT
2275 and
\r Windows 95). H.G.Muller is responsible for version 4.3.
\r \r Mark
2276 Williams contributed the initial (WinBoard-only) implementation
\r of
2277 many new features added to both XBoard and WinBoard in version
\r 4.1.0,
2278 including copy/paste, premove, icsAlarm, autoFlipView, training
\r mode,
2279 auto raise, and blindfold. Ben Nye contributed X copy/paste
\r code for
2280 XBoard.
\r \r Hugh Fisher added animated piece movement to XBoard, and
2281 Henrik Gram
\r (henrikg@funcom.com) added it to WinBoard. Frank
2282 McIngvale added
\r click/click moving, the Analysis modes, piece
2283 flashing, ZIICS import,
\r and ICS text colorization to XBoard. Jochen
2284 Wiedmann ported XBoard to
\r the Amiga, creating AmyBoard, and converted
2285 the documentation to
\r texinfo. Elmar Bartel contributed the new piece
2286 bitmaps introduced in
\r version 3.2. John Chanak contributed the
2287 initial implementation of
\r ICS mode. The color scheme and the old
2288 80x80 piece bitmaps were taken
\r from Wayne Christopher's `XChess'
2289 program.
\r \r Chris Sears and Dan Sears wrote the original XBoard.
2290 They were
\r responsible for versions 1.0 through 1.2.
\r \r Evan Welsh
2291 wrote `CMail'. Patrick Surry helped in designing,
\r testing, and
2292 documenting CMail.
\r \r Allessandro Scotti added many elements to the
2293 user interface of WinBoard,
\r including the board textures and
2294 font-based rendering, the evaluation-graph,
\r move-history and
2295 engine-output window.
\r He was also responsible for adding the UCI
2296 support.
\r \r H.G. Muller made WinBoard castling- and e.p.-aware,
\r
2297 added variant support with adjustable board sizes,
\r the crazyhouse
2298 holdings, and the fairy pieces.
\r In addition he added most of the
2299 adjudication options,
\r made WinBoard more robust in dealing with
2300 buggy and crashing engines,
\r and extended time control with a
2301 time-odds and node-count-based modes.
\r Most of the options that
2302 initially wre WinBoard only have now been back-ported to XBoard.
\r \r
2303 Michel van den Bergh provided the code for reading Polyglot opening
2304 books.
\r \r Arun Persaud worked with H.G. Muller to combine all the
2305 features of the never-released WinBoard 4.2.8
\r of the Savannah
2306 project (mainly by Daniel Mehrmann),
\r and the never-released 4.3.16
2307 into a unified WinBoard 4.4,
\r which is now available both from the
2308 Savannah web site and the WinBoard forum.
\r
2313 The `cmail' program can help you play chess by email with opponents of
\r
2314 your choice using XBoard as an interface.
\r \r You will usually run
2315 `cmail' without giving any options.
\r \r \r
2321 Displays `cmail' usage information.
\r
2324 Shows the conditions of the GNU General Public License.
\r *Note
2328 Shows the warranty notice of the GNU General Public License.
\r
2333 Provides or inhibits verbose output from `cmail' and XBoard,
\r
2334 useful for debugging. The
\r `-xv'
\r form also inhibits the cmail
2335 introduction message.
\r
2339 Invokes or inhibits the sending of a mail message containing the
2344 Invokes or inhibits the running of XBoard on the game file.
\r
2348 Invokes or inhibits the reuse of an existing XBoard to display
2349 the
\r current game.
\r
2352 Resends the last mail message for that game. This inhibits
2356 The name of the game to be processed.
\r
2361 Number of games to start as White, as Black or in total. Default
2362 is 1 as
\r white and none as black. If only one color is specified
2363 then none of the
\r other color is assumed. If no color is
2364 specified then equal numbers of
\r White and Black games are
2365 started, with the extra game being as White if an
\r odd number of
2366 total games is specified.
\r
2370 A one-word alias for yourself or your opponent.
\r
2375 -oppname <full name>
2376 The full name of White, Black, yourself or your opponent.
\r
2381 -oppna <net address>
2382 The email address of White, Black, yourself or your opponent.
\r
2385 The directory in which `cmail' keeps its files. This defaults to
2386 the
\r environment variable `$CMAIL_DIR' or failing that,
2387 `$CHESSDIR',
\r `$HOME/Chess' or `~/Chess'. It will be created if
2388 it does not exist.
\r
2391 The directory in which `cmail' archives completed games. Defaults
2392 to
\r the environment variable `$CMAIL_ARCDIR' or, in its absence,
2393 the same
\r directory as cmail keeps its working files (above).
\r
2395 -mailprog <mail program>
2396 The program used by cmail to send email messages. This defaults to
2397 the
\r environment variable `$CMAIL_MAILPROG' or failing that
\r
2398 `/usr/ucb/Mail', `/usr/ucb/mail' or `Mail'. You will need
\r to set
2399 this variable if none of the above paths fit your system.
\r
2402 A file containing a list of games with email addresses. This
2403 defaults to
\r the environment variable `$CMAIL_GAMES' or failing
2404 that
\r `.cmailgames'.
\r
2407 A file containing one or more aliases for a set of email
2408 addresses. This
\r defaults to the environment variable
2409 `$CMAIL_ALIASES' or failing
\r that `.cmailaliases'.
\r
2412 A file in which to dump verbose debugging messages that are
2413 invoked with
\r the `-v'
\r option.
\r
2416 The PGN Event tag (default `Email correspondence game').
\r
2419 The PGN Site tag (default `NET').
\r
2422 The PGN Round tag (default `-', not applicable).
\r
2425 The PGN Mode tag (default `EM', Electronic Mail).
\r
2428 Any option flags not listed above are passed through to XBoard.
\r
2429 Invoking XBoard through CMail changes the default values of two
2430 XBoard
\r options: The default value for `-noChessProgram' is
2431 changed to
\r true; that is, by default no chess engine is started.
2432 The default
\r value for `-timeDelay' is changed to 0; that is, by
2433 default
\r XBoard immediately goes to the end of the game as played
2434 so far,
\r rather than stepping through the moves one by one. You
2435 can still set
\r these options to whatever values you prefer by
2436 supplying them on
\r CMail's command line. *Note Options::.
\r
2439 10.2 Starting a CMail Game
2440 ==========================
2442 Type `cmail' from a shell to start a game as white. After an opening
\r
2443 message, you will be prompted for a game name, which is optional--if
2444 you
\r simply press <Enter>, the game name will take the form
\r
2445 `you-VS-opponent'. You will next be prompted for the short name
\r of
2446 your opponent. If you haven't played this person before, you will also
\r
2447 be prompted for his/her email address. `cmail' will then invoke
\r
2448 XBoard in the background. Make your first move and select
\r `Mail Move'
2449 from the `File' menu. *Note File Menu::. If all is well,
\r `cmail' will
2450 mail a copy of the move to your opponent. If you select
\r `Exit'
2451 without having selected `Mail Move' then no move will be
\r made.
\r \r
2453 10.3 Answering a Move
2454 =====================
2456 When you receive a message from an opponent containing a move in one
2457 of
\r your games, simply pipe the message through `cmail'. In some
2458 mailers
\r this is as simple as typing `| cmail' when viewing the
2459 message, while in
\r others you may have to save the message to a file
2460 and do `cmail < file'
\r at the command line. In either case `cmail'
2461 will display the game using
\r XBoard. If you didn't exit XBoard when
2462 you made your first move
\r then `cmail' will do its best to use the
2463 existing XBoard instead
\r of starting a new one. As before, simply make
2464 a move and select
\r `Mail Move' from the `File' menu. *Note File
2465 Menu::. `cmail'
\r will try to use the
\r XBoard that was most recently
2466 used to display the current game. This
\r means that many games can be
2467 in progress simultaneously, each with its own
\r active XBoard.
\r \r If
2468 you want to look at the history or explore a variation, go ahead, but
\r
2469 you must return to the current position before XBoard will allow you
\r
2470 to mail a move. If you edit the game's history you must select
\r
2471 `Reload Same Game' from the `File' menu to get back to the original
\r
2472 position, then make the move you want and select `Mail Move'.
\r As
2473 before, if you decide you aren't ready to make a move just yet you can
\r
2474 either select `Exit' without sending a move or just leave
\r XBoard
2475 running until you are ready.
\r \r
2477 10.4 Multi-Game Messages
2478 ========================
2480 \r It is possible to have a `cmail' message carry more than one game.
\r
2481 This feature was implemented to handle IECG (International Email Chess
\r
2482 Group) matches, where a match consists of one game as white and one as
2483 black,
\r with moves transmitted simultaneously. In case there are more
2484 general uses,
\r `cmail' itself places no limit on the number of
2485 black/white games
\r contained in a message; however, XBoard does.
\r \r
2487 10.5 Completing a Game
2488 ======================
2490 Because XBoard can detect checkmate and stalemate, `cmail'
\r handles
2491 game termination sensibly. As well as resignation, the
\r `Action' menu
2492 allows draws to be offered and accepted for
\r `cmail' games.
\r \r For
2493 multi-game messages, only unfinished and just-finished games will be
\r
2494 included in email messages. When all the games are finished, they are
\r
2495 archived in the user's archive directory, and similarly in the
2496 opponent's
\r when he or she pipes the final message through `cmail'.
2497 The archive
\r file name includes the date the game was started.
\r \r
2499 10.6 Known CMail Problems
2500 =========================
2502 It's possible that a strange conjunction of conditions may
2503 occasionally
\r mean that `cmail' has trouble reactivating an existing
\r
2504 XBoard. If this should happen, simply trying it again should work.
\r If
2505 not, remove the file that stores the XBoard's PID
\r (`game.pid') or use
2506 the `-xreuse' option to force
\r `cmail' to start a new XBoard.
\r \r
2507 Versions of `cmail' after 2.16 no longer understand the old file
2508 format
\r that XBoard used to use and so cannot be used to correspond
2509 with
\r anyone using an older version.
\r \r Versions of `cmail' older
2510 than 2.11 do not handle multi-game messages,
\r so multi-game
2511 correspondence is not possible with opponents using an older
\r
2514 11 Other programs you can use with XBoard
2515 *****************************************
2517 \r Here are some other programs you can use with XBoard
\r \r \r
2522 \r The GNU Chess engine is available from:
\r \r
2523 ftp://ftp.gnu.org/gnu/gnuchess/
\r \r You can use XBoard to play a game
2524 against GNU Chess, or to
\r interface GNU Chess to an ICS.
\r \r
2529 \r Fairy-Max is a derivative from the World's smallest Chess program
2530 micro-Max,
\r which measures only about 100 lines of source code.
\r The
2531 main difference with micro-Max is that Fairy-Max loads its
2532 move-generator
\r tables from a file, so that the rules for piece
2533 movement can be easily configured
\r to implement unorthodox pieces.
\r
2534 Fairy-Max can therefore play a lage number of variants, normal Chess
2535 being one of those.
\r In addition it plas Knightmate, Capablanca and
2536 Gothic Chess, Shatranj, Courier Chess,
\r Cylinder chess, Berolina
2537 Chess, while the user can easily define new variants.
\r It can be
2538 obtained from:
\r \r http://home.hccnet.nl/h.g.muller/dwnldpage.html
\r \r
2543 \r HoiChess is a not-so-very-strong Chess engine, which comes with a
2544 derivative HoiXiangqi,
\r able to play Chinese Chess. It can be obtained
2545 from the standard Linux repositories
\r through:
\r \r sudo apt-get
2546 install hoichess
\r \r
2551 \r Crafty is a chess engine written by Bob Hyatt.
\r You can use XBoard
2552 to play a game against Crafty, hook Crafty up
\r to an ICS, or use
2553 Crafty to interactively analyze games and positions
\r for you.
\r \r
2554 Crafty is a strong, rapidly evolving chess program. This rapid
\r pace
2555 of development is good, because it means Crafty is always
\r getting
2556 better. This can sometimes cause problems with
\r backwards
2557 compatibility, but usually the latest version of Crafty
\r will work
2558 well with the latest version of XBoard.
\r Crafty can be obtained from
2559 its author's FTP site:
\r ftp://ftp.cis.uab.edu/hyatt/.
\r \r To use
2560 Crafty with XBoard, give the -fcp and -fd options as follows, where
\r
2561 <crafty's directory> is the directory in which you installed Crafty
\r
2562 and placed its book and other support files.
\r \r
2567 \r The "zic2xpm" program is used to import chess sets from the
2568 ZIICS(*)
\r program into XBoard. "zic2xpm" is part of the XBoard
2569 distribution.
\r ZIICS is available from:
\r \r
2570 ftp://ftp.freechess.org/pub/chess/DOS/ziics131.exe
\r \r To import ZIICS
2572 1. Unzip ziics131.exe into a directory:
2574 unzip -L ziics131.exe -d ~/ziics
\r
2576 2. Use zic2xpm to convert a set of pieces to XBoard format.
2577 \r For example, let's say you want to use the
\r FRITZ4 set. These
2578 files are named "fritz4.*" in the ZIICS distribution.
\r \r
2581 zic2xpm ~/ziics/fritz4.*
\r
2583 3. Give XBoard the "-pixmap" option when starting up, e.g.:
2585 xboard -pixmap ~/fritz4
\r
2586 \r Alternatively, you can add this line to your `.Xresources'
2588 xboard*pixmapDirectory: ~/fritz4
\r
2589 \r (*) ZIICS is a separate copyrighted work of Andy McFarland.
\r The
2590 "ZIICS pieces" are copyrighted works of their respective
\r creators.
2591 Files produced by "zic2xpm" are for PERSONAL USE ONLY
\r and may NOT be
2592 redistributed without explicit permission from
\r the original
2593 creator(s) of the pieces.
\r \r
2598 Copyright (C) 1991 Digital Equipment Corporation, Maynard,
2601 All Rights Reserved.
2603 Permission to use, copy, modify, and distribute this software and its
2604 documentation for any purpose and without fee is hereby granted,
2605 provided that the above copyright notice appear in all copies and that
2606 both that copyright notice and this permission notice appear in
2607 supporting documentation, and that the name of Digital not be used in
2608 advertising or publicity pertaining to distribution of the software
2609 without specific, written prior permission.
2611 Digital disclaims all warranties with regard to this software,
2612 including all implied warranties of merchantability and fitness. In no
2613 event shall Digital be liable for any special, indirect or
2614 consequential damages or any damages whatsoever resulting from loss of
2615 use, data or profits, whether in an action of contract, negligence or
2616 other tortious action, arising out of or in connection with the use or
2617 performance of this software.
2619 Enhancements copyright (C) 1992-2003,2004,2005,2006,2007,2008,2009
2620 Free Software Foundation, Inc.
2622 Published by the Free Software Foundation
2623 59 Temple Place - Suite 330
2624 Boston, MA 02111-1307 USA
2626 Permission is granted to make and distribute verbatim copies of this
2627 manual provided the copyright notice and this permission notice are
2628 preserved on all copies.
2630 Permission is granted to copy and distribute modified versions of
2631 this manual under the conditions for verbatim copying, provided also
2632 that the section entitled "GNU General Public License," is included
2633 exactly as in the original, and provided that the entire resulting
2634 derived work is distributed under the terms of a permission notice
2635 identical to this one.
2637 Permission is granted to copy and distribute translations of this
2638 manual into another language, under the above conditions for modified
2639 versions, except that the section entitled "GNU General Public License,"
2640 and this permission notice, may be included in translations approved by
2641 the Free Software Foundation instead of in the original English.
\r
2643 GNU GENERAL PUBLIC LICENSE
2644 **************************
2646 Version 3, 29 June 2007
2648 Copyright (C) 2007 Free Software Foundation, Inc. `http://fsf.org/'
2650 Everyone is permitted to copy and distribute verbatim copies of this
2651 license document, but changing it is not allowed.
2656 The GNU General Public License is a free, copyleft license for software
2657 and other kinds of works.
2659 The licenses for most software and other practical works are designed
2660 to take away your freedom to share and change the works. By contrast,
2661 the GNU General Public License is intended to guarantee your freedom to
2662 share and change all versions of a program--to make sure it remains
2663 free software for all its users. We, the Free Software Foundation, use
2664 the GNU General Public License for most of our software; it applies
2665 also to any other work released this way by its authors. You can apply
2666 it to your programs, too.
2668 When we speak of free software, we are referring to freedom, not
2669 price. Our General Public Licenses are designed to make sure that you
2670 have the freedom to distribute copies of free software (and charge for
2671 them if you wish), that you receive source code or can get it if you
2672 want it, that you can change the software or use pieces of it in new
2673 free programs, and that you know you can do these things.
2675 To protect your rights, we need to prevent others from denying you
2676 these rights or asking you to surrender the rights. Therefore, you
2677 have certain responsibilities if you distribute copies of the software,
2678 or if you modify it: responsibilities to respect the freedom of others.
2680 For example, if you distribute copies of such a program, whether
2681 gratis or for a fee, you must pass on to the recipients the same
2682 freedoms that you received. You must make sure that they, too, receive
2683 or can get the source code. And you must show them these terms so they
2686 Developers that use the GNU GPL protect your rights with two steps:
2687 (1) assert copyright on the software, and (2) offer you this License
2688 giving you legal permission to copy, distribute and/or modify it.
2690 For the developers' and authors' protection, the GPL clearly explains
2691 that there is no warranty for this free software. For both users' and
2692 authors' sake, the GPL requires that modified versions be marked as
2693 changed, so that their problems will not be attributed erroneously to
2694 authors of previous versions.
2696 Some devices are designed to deny users access to install or run
2697 modified versions of the software inside them, although the
2698 manufacturer can do so. This is fundamentally incompatible with the
2699 aim of protecting users' freedom to change the software. The
2700 systematic pattern of such abuse occurs in the area of products for
2701 individuals to use, which is precisely where it is most unacceptable.
2702 Therefore, we have designed this version of the GPL to prohibit the
2703 practice for those products. If such problems arise substantially in
2704 other domains, we stand ready to extend this provision to those domains
2705 in future versions of the GPL, as needed to protect the freedom of
2708 Finally, every program is threatened constantly by software patents.
2709 States should not allow patents to restrict development and use of
2710 software on general-purpose computers, but in those that do, we wish to
2711 avoid the special danger that patents applied to a free program could
2712 make it effectively proprietary. To prevent this, the GPL assures that
2713 patents cannot be used to render the program non-free.
2715 The precise terms and conditions for copying, distribution and
2716 modification follow.
2718 TERMS AND CONDITIONS
2719 ====================
2723 "This License" refers to version 3 of the GNU General Public
2726 "Copyright" also means copyright-like laws that apply to other
2727 kinds of works, such as semiconductor masks.
2729 "The Program" refers to any copyrightable work licensed under this
2730 License. Each licensee is addressed as "you". "Licensees" and
2731 "recipients" may be individuals or organizations.
2733 To "modify" a work means to copy from or adapt all or part of the
2734 work in a fashion requiring copyright permission, other than the
2735 making of an exact copy. The resulting work is called a "modified
2736 version" of the earlier work or a work "based on" the earlier work.
2738 A "covered work" means either the unmodified Program or a work
2739 based on the Program.
2741 To "propagate" a work means to do anything with it that, without
2742 permission, would make you directly or secondarily liable for
2743 infringement under applicable copyright law, except executing it
2744 on a computer or modifying a private copy. Propagation includes
2745 copying, distribution (with or without modification), making
2746 available to the public, and in some countries other activities as
2749 To "convey" a work means any kind of propagation that enables other
2750 parties to make or receive copies. Mere interaction with a user
2751 through a computer network, with no transfer of a copy, is not
2754 An interactive user interface displays "Appropriate Legal Notices"
2755 to the extent that it includes a convenient and prominently visible
2756 feature that (1) displays an appropriate copyright notice, and (2)
2757 tells the user that there is no warranty for the work (except to
2758 the extent that warranties are provided), that licensees may
2759 convey the work under this License, and how to view a copy of this
2760 License. If the interface presents a list of user commands or
2761 options, such as a menu, a prominent item in the list meets this
2766 The "source code" for a work means the preferred form of the work
2767 for making modifications to it. "Object code" means any
2768 non-source form of a work.
2770 A "Standard Interface" means an interface that either is an
2771 official standard defined by a recognized standards body, or, in
2772 the case of interfaces specified for a particular programming
2773 language, one that is widely used among developers working in that
2776 The "System Libraries" of an executable work include anything,
2777 other than the work as a whole, that (a) is included in the normal
2778 form of packaging a Major Component, but which is not part of that
2779 Major Component, and (b) serves only to enable use of the work
2780 with that Major Component, or to implement a Standard Interface
2781 for which an implementation is available to the public in source
2782 code form. A "Major Component", in this context, means a major
2783 essential component (kernel, window system, and so on) of the
2784 specific operating system (if any) on which the executable work
2785 runs, or a compiler used to produce the work, or an object code
2786 interpreter used to run it.
2788 The "Corresponding Source" for a work in object code form means all
2789 the source code needed to generate, install, and (for an executable
2790 work) run the object code and to modify the work, including
2791 scripts to control those activities. However, it does not include
2792 the work's System Libraries, or general-purpose tools or generally
2793 available free programs which are used unmodified in performing
2794 those activities but which are not part of the work. For example,
2795 Corresponding Source includes interface definition files
2796 associated with source files for the work, and the source code for
2797 shared libraries and dynamically linked subprograms that the work
2798 is specifically designed to require, such as by intimate data
2799 communication or control flow between those subprograms and other
2802 The Corresponding Source need not include anything that users can
2803 regenerate automatically from other parts of the Corresponding
2806 The Corresponding Source for a work in source code form is that
2809 2. Basic Permissions.
2811 All rights granted under this License are granted for the term of
2812 copyright on the Program, and are irrevocable provided the stated
2813 conditions are met. This License explicitly affirms your unlimited
2814 permission to run the unmodified Program. The output from running
2815 a covered work is covered by this License only if the output,
2816 given its content, constitutes a covered work. This License
2817 acknowledges your rights of fair use or other equivalent, as
2818 provided by copyright law.
2820 You may make, run and propagate covered works that you do not
2821 convey, without conditions so long as your license otherwise
2822 remains in force. You may convey covered works to others for the
2823 sole purpose of having them make modifications exclusively for
2824 you, or provide you with facilities for running those works,
2825 provided that you comply with the terms of this License in
2826 conveying all material for which you do not control copyright.
2827 Those thus making or running the covered works for you must do so
2828 exclusively on your behalf, under your direction and control, on
2829 terms that prohibit them from making any copies of your
2830 copyrighted material outside their relationship with you.
2832 Conveying under any other circumstances is permitted solely under
2833 the conditions stated below. Sublicensing is not allowed; section
2834 10 makes it unnecessary.
2836 3. Protecting Users' Legal Rights From Anti-Circumvention Law.
2838 No covered work shall be deemed part of an effective technological
2839 measure under any applicable law fulfilling obligations under
2840 article 11 of the WIPO copyright treaty adopted on 20 December
2841 1996, or similar laws prohibiting or restricting circumvention of
2844 When you convey a covered work, you waive any legal power to forbid
2845 circumvention of technological measures to the extent such
2846 circumvention is effected by exercising rights under this License
2847 with respect to the covered work, and you disclaim any intention
2848 to limit operation or modification of the work as a means of
2849 enforcing, against the work's users, your or third parties' legal
2850 rights to forbid circumvention of technological measures.
2852 4. Conveying Verbatim Copies.
2854 You may convey verbatim copies of the Program's source code as you
2855 receive it, in any medium, provided that you conspicuously and
2856 appropriately publish on each copy an appropriate copyright notice;
2857 keep intact all notices stating that this License and any
2858 non-permissive terms added in accord with section 7 apply to the
2859 code; keep intact all notices of the absence of any warranty; and
2860 give all recipients a copy of this License along with the Program.
2862 You may charge any price or no price for each copy that you convey,
2863 and you may offer support or warranty protection for a fee.
2865 5. Conveying Modified Source Versions.
2867 You may convey a work based on the Program, or the modifications to
2868 produce it from the Program, in the form of source code under the
2869 terms of section 4, provided that you also meet all of these
2872 a. The work must carry prominent notices stating that you
2873 modified it, and giving a relevant date.
2875 b. The work must carry prominent notices stating that it is
2876 released under this License and any conditions added under
2877 section 7. This requirement modifies the requirement in
2878 section 4 to "keep intact all notices".
2880 c. You must license the entire work, as a whole, under this
2881 License to anyone who comes into possession of a copy. This
2882 License will therefore apply, along with any applicable
2883 section 7 additional terms, to the whole of the work, and all
2884 its parts, regardless of how they are packaged. This License
2885 gives no permission to license the work in any other way, but
2886 it does not invalidate such permission if you have separately
2889 d. If the work has interactive user interfaces, each must display
2890 Appropriate Legal Notices; however, if the Program has
2891 interactive interfaces that do not display Appropriate Legal
2892 Notices, your work need not make them do so.
2894 A compilation of a covered work with other separate and independent
2895 works, which are not by their nature extensions of the covered
2896 work, and which are not combined with it such as to form a larger
2897 program, in or on a volume of a storage or distribution medium, is
2898 called an "aggregate" if the compilation and its resulting
2899 copyright are not used to limit the access or legal rights of the
2900 compilation's users beyond what the individual works permit.
2901 Inclusion of a covered work in an aggregate does not cause this
2902 License to apply to the other parts of the aggregate.
2904 6. Conveying Non-Source Forms.
2906 You may convey a covered work in object code form under the terms
2907 of sections 4 and 5, provided that you also convey the
2908 machine-readable Corresponding Source under the terms of this
2909 License, in one of these ways:
2911 a. Convey the object code in, or embodied in, a physical product
2912 (including a physical distribution medium), accompanied by the
2913 Corresponding Source fixed on a durable physical medium
2914 customarily used for software interchange.
2916 b. Convey the object code in, or embodied in, a physical product
2917 (including a physical distribution medium), accompanied by a
2918 written offer, valid for at least three years and valid for
2919 as long as you offer spare parts or customer support for that
2920 product model, to give anyone who possesses the object code
2921 either (1) a copy of the Corresponding Source for all the
2922 software in the product that is covered by this License, on a
2923 durable physical medium customarily used for software
2924 interchange, for a price no more than your reasonable cost of
2925 physically performing this conveying of source, or (2) access
2926 to copy the Corresponding Source from a network server at no
2929 c. Convey individual copies of the object code with a copy of
2930 the written offer to provide the Corresponding Source. This
2931 alternative is allowed only occasionally and noncommercially,
2932 and only if you received the object code with such an offer,
2933 in accord with subsection 6b.
2935 d. Convey the object code by offering access from a designated
2936 place (gratis or for a charge), and offer equivalent access
2937 to the Corresponding Source in the same way through the same
2938 place at no further charge. You need not require recipients
2939 to copy the Corresponding Source along with the object code.
2940 If the place to copy the object code is a network server, the
2941 Corresponding Source may be on a different server (operated
2942 by you or a third party) that supports equivalent copying
2943 facilities, provided you maintain clear directions next to
2944 the object code saying where to find the Corresponding Source.
2945 Regardless of what server hosts the Corresponding Source, you
2946 remain obligated to ensure that it is available for as long
2947 as needed to satisfy these requirements.
2949 e. Convey the object code using peer-to-peer transmission,
2950 provided you inform other peers where the object code and
2951 Corresponding Source of the work are being offered to the
2952 general public at no charge under subsection 6d.
2955 A separable portion of the object code, whose source code is
2956 excluded from the Corresponding Source as a System Library, need
2957 not be included in conveying the object code work.
2959 A "User Product" is either (1) a "consumer product", which means
2960 any tangible personal property which is normally used for personal,
2961 family, or household purposes, or (2) anything designed or sold for
2962 incorporation into a dwelling. In determining whether a product
2963 is a consumer product, doubtful cases shall be resolved in favor of
2964 coverage. For a particular product received by a particular user,
2965 "normally used" refers to a typical or common use of that class of
2966 product, regardless of the status of the particular user or of the
2967 way in which the particular user actually uses, or expects or is
2968 expected to use, the product. A product is a consumer product
2969 regardless of whether the product has substantial commercial,
2970 industrial or non-consumer uses, unless such uses represent the
2971 only significant mode of use of the product.
2973 "Installation Information" for a User Product means any methods,
2974 procedures, authorization keys, or other information required to
2975 install and execute modified versions of a covered work in that
2976 User Product from a modified version of its Corresponding Source.
2977 The information must suffice to ensure that the continued
2978 functioning of the modified object code is in no case prevented or
2979 interfered with solely because modification has been made.
2981 If you convey an object code work under this section in, or with,
2982 or specifically for use in, a User Product, and the conveying
2983 occurs as part of a transaction in which the right of possession
2984 and use of the User Product is transferred to the recipient in
2985 perpetuity or for a fixed term (regardless of how the transaction
2986 is characterized), the Corresponding Source conveyed under this
2987 section must be accompanied by the Installation Information. But
2988 this requirement does not apply if neither you nor any third party
2989 retains the ability to install modified object code on the User
2990 Product (for example, the work has been installed in ROM).
2992 The requirement to provide Installation Information does not
2993 include a requirement to continue to provide support service,
2994 warranty, or updates for a work that has been modified or
2995 installed by the recipient, or for the User Product in which it
2996 has been modified or installed. Access to a network may be denied
2997 when the modification itself materially and adversely affects the
2998 operation of the network or violates the rules and protocols for
2999 communication across the network.
3001 Corresponding Source conveyed, and Installation Information
3002 provided, in accord with this section must be in a format that is
3003 publicly documented (and with an implementation available to the
3004 public in source code form), and must require no special password
3005 or key for unpacking, reading or copying.
3007 7. Additional Terms.
3009 "Additional permissions" are terms that supplement the terms of
3010 this License by making exceptions from one or more of its
3011 conditions. Additional permissions that are applicable to the
3012 entire Program shall be treated as though they were included in
3013 this License, to the extent that they are valid under applicable
3014 law. If additional permissions apply only to part of the Program,
3015 that part may be used separately under those permissions, but the
3016 entire Program remains governed by this License without regard to
3017 the additional permissions.
3019 When you convey a copy of a covered work, you may at your option
3020 remove any additional permissions from that copy, or from any part
3021 of it. (Additional permissions may be written to require their own
3022 removal in certain cases when you modify the work.) You may place
3023 additional permissions on material, added by you to a covered work,
3024 for which you have or can give appropriate copyright permission.
3026 Notwithstanding any other provision of this License, for material
3027 you add to a covered work, you may (if authorized by the copyright
3028 holders of that material) supplement the terms of this License
3031 a. Disclaiming warranty or limiting liability differently from
3032 the terms of sections 15 and 16 of this License; or
3034 b. Requiring preservation of specified reasonable legal notices
3035 or author attributions in that material or in the Appropriate
3036 Legal Notices displayed by works containing it; or
3038 c. Prohibiting misrepresentation of the origin of that material,
3039 or requiring that modified versions of such material be
3040 marked in reasonable ways as different from the original
3043 d. Limiting the use for publicity purposes of names of licensors
3044 or authors of the material; or
3046 e. Declining to grant rights under trademark law for use of some
3047 trade names, trademarks, or service marks; or
3049 f. Requiring indemnification of licensors and authors of that
3050 material by anyone who conveys the material (or modified
3051 versions of it) with contractual assumptions of liability to
3052 the recipient, for any liability that these contractual
3053 assumptions directly impose on those licensors and authors.
3055 All other non-permissive additional terms are considered "further
3056 restrictions" within the meaning of section 10. If the Program as
3057 you received it, or any part of it, contains a notice stating that
3058 it is governed by this License along with a term that is a further
3059 restriction, you may remove that term. If a license document
3060 contains a further restriction but permits relicensing or
3061 conveying under this License, you may add to a covered work
3062 material governed by the terms of that license document, provided
3063 that the further restriction does not survive such relicensing or
3066 If you add terms to a covered work in accord with this section, you
3067 must place, in the relevant source files, a statement of the
3068 additional terms that apply to those files, or a notice indicating
3069 where to find the applicable terms.
3071 Additional terms, permissive or non-permissive, may be stated in
3072 the form of a separately written license, or stated as exceptions;
3073 the above requirements apply either way.
3077 You may not propagate or modify a covered work except as expressly
3078 provided under this License. Any attempt otherwise to propagate or
3079 modify it is void, and will automatically terminate your rights
3080 under this License (including any patent licenses granted under
3081 the third paragraph of section 11).
3083 However, if you cease all violation of this License, then your
3084 license from a particular copyright holder is reinstated (a)
3085 provisionally, unless and until the copyright holder explicitly
3086 and finally terminates your license, and (b) permanently, if the
3087 copyright holder fails to notify you of the violation by some
3088 reasonable means prior to 60 days after the cessation.
3090 Moreover, your license from a particular copyright holder is
3091 reinstated permanently if the copyright holder notifies you of the
3092 violation by some reasonable means, this is the first time you have
3093 received notice of violation of this License (for any work) from
3094 that copyright holder, and you cure the violation prior to 30 days
3095 after your receipt of the notice.
3097 Termination of your rights under this section does not terminate
3098 the licenses of parties who have received copies or rights from
3099 you under this License. If your rights have been terminated and
3100 not permanently reinstated, you do not qualify to receive new
3101 licenses for the same material under section 10.
3103 9. Acceptance Not Required for Having Copies.
3105 You are not required to accept this License in order to receive or
3106 run a copy of the Program. Ancillary propagation of a covered work
3107 occurring solely as a consequence of using peer-to-peer
3108 transmission to receive a copy likewise does not require
3109 acceptance. However, nothing other than this License grants you
3110 permission to propagate or modify any covered work. These actions
3111 infringe copyright if you do not accept this License. Therefore,
3112 by modifying or propagating a covered work, you indicate your
3113 acceptance of this License to do so.
3115 10. Automatic Licensing of Downstream Recipients.
3117 Each time you convey a covered work, the recipient automatically
3118 receives a license from the original licensors, to run, modify and
3119 propagate that work, subject to this License. You are not
3120 responsible for enforcing compliance by third parties with this
3123 An "entity transaction" is a transaction transferring control of an
3124 organization, or substantially all assets of one, or subdividing an
3125 organization, or merging organizations. If propagation of a
3126 covered work results from an entity transaction, each party to that
3127 transaction who receives a copy of the work also receives whatever
3128 licenses to the work the party's predecessor in interest had or
3129 could give under the previous paragraph, plus a right to
3130 possession of the Corresponding Source of the work from the
3131 predecessor in interest, if the predecessor has it or can get it
3132 with reasonable efforts.
3134 You may not impose any further restrictions on the exercise of the
3135 rights granted or affirmed under this License. For example, you
3136 may not impose a license fee, royalty, or other charge for
3137 exercise of rights granted under this License, and you may not
3138 initiate litigation (including a cross-claim or counterclaim in a
3139 lawsuit) alleging that any patent claim is infringed by making,
3140 using, selling, offering for sale, or importing the Program or any
3145 A "contributor" is a copyright holder who authorizes use under this
3146 License of the Program or a work on which the Program is based.
3147 The work thus licensed is called the contributor's "contributor
3150 A contributor's "essential patent claims" are all patent claims
3151 owned or controlled by the contributor, whether already acquired or
3152 hereafter acquired, that would be infringed by some manner,
3153 permitted by this License, of making, using, or selling its
3154 contributor version, but do not include claims that would be
3155 infringed only as a consequence of further modification of the
3156 contributor version. For purposes of this definition, "control"
3157 includes the right to grant patent sublicenses in a manner
3158 consistent with the requirements of this License.
3160 Each contributor grants you a non-exclusive, worldwide,
3161 royalty-free patent license under the contributor's essential
3162 patent claims, to make, use, sell, offer for sale, import and
3163 otherwise run, modify and propagate the contents of its
3164 contributor version.
3166 In the following three paragraphs, a "patent license" is any
3167 express agreement or commitment, however denominated, not to
3168 enforce a patent (such as an express permission to practice a
3169 patent or covenant not to sue for patent infringement). To
3170 "grant" such a patent license to a party means to make such an
3171 agreement or commitment not to enforce a patent against the party.
3173 If you convey a covered work, knowingly relying on a patent
3174 license, and the Corresponding Source of the work is not available
3175 for anyone to copy, free of charge and under the terms of this
3176 License, through a publicly available network server or other
3177 readily accessible means, then you must either (1) cause the
3178 Corresponding Source to be so available, or (2) arrange to deprive
3179 yourself of the benefit of the patent license for this particular
3180 work, or (3) arrange, in a manner consistent with the requirements
3181 of this License, to extend the patent license to downstream
3182 recipients. "Knowingly relying" means you have actual knowledge
3183 that, but for the patent license, your conveying the covered work
3184 in a country, or your recipient's use of the covered work in a
3185 country, would infringe one or more identifiable patents in that
3186 country that you have reason to believe are valid.
3188 If, pursuant to or in connection with a single transaction or
3189 arrangement, you convey, or propagate by procuring conveyance of, a
3190 covered work, and grant a patent license to some of the parties
3191 receiving the covered work authorizing them to use, propagate,
3192 modify or convey a specific copy of the covered work, then the
3193 patent license you grant is automatically extended to all
3194 recipients of the covered work and works based on it.
3196 A patent license is "discriminatory" if it does not include within
3197 the scope of its coverage, prohibits the exercise of, or is
3198 conditioned on the non-exercise of one or more of the rights that
3199 are specifically granted under this License. You may not convey a
3200 covered work if you are a party to an arrangement with a third
3201 party that is in the business of distributing software, under
3202 which you make payment to the third party based on the extent of
3203 your activity of conveying the work, and under which the third
3204 party grants, to any of the parties who would receive the covered
3205 work from you, a discriminatory patent license (a) in connection
3206 with copies of the covered work conveyed by you (or copies made
3207 from those copies), or (b) primarily for and in connection with
3208 specific products or compilations that contain the covered work,
3209 unless you entered into that arrangement, or that patent license
3210 was granted, prior to 28 March 2007.
3212 Nothing in this License shall be construed as excluding or limiting
3213 any implied license or other defenses to infringement that may
3214 otherwise be available to you under applicable patent law.
3216 12. No Surrender of Others' Freedom.
3218 If conditions are imposed on you (whether by court order,
3219 agreement or otherwise) that contradict the conditions of this
3220 License, they do not excuse you from the conditions of this
3221 License. If you cannot convey a covered work so as to satisfy
3222 simultaneously your obligations under this License and any other
3223 pertinent obligations, then as a consequence you may not convey it
3224 at all. For example, if you agree to terms that obligate you to
3225 collect a royalty for further conveying from those to whom you
3226 convey the Program, the only way you could satisfy both those
3227 terms and this License would be to refrain entirely from conveying
3230 13. Use with the GNU Affero General Public License.
3232 Notwithstanding any other provision of this License, you have
3233 permission to link or combine any covered work with a work licensed
3234 under version 3 of the GNU Affero General Public License into a
3235 single combined work, and to convey the resulting work. The terms
3236 of this License will continue to apply to the part which is the
3237 covered work, but the special requirements of the GNU Affero
3238 General Public License, section 13, concerning interaction through
3239 a network will apply to the combination as such.
3241 14. Revised Versions of this License.
3243 The Free Software Foundation may publish revised and/or new
3244 versions of the GNU General Public License from time to time.
3245 Such new versions will be similar in spirit to the present
3246 version, but may differ in detail to address new problems or
3249 Each version is given a distinguishing version number. If the
3250 Program specifies that a certain numbered version of the GNU
3251 General Public License "or any later version" applies to it, you
3252 have the option of following the terms and conditions either of
3253 that numbered version or of any later version published by the
3254 Free Software Foundation. If the Program does not specify a
3255 version number of the GNU General Public License, you may choose
3256 any version ever published by the Free Software Foundation.
3258 If the Program specifies that a proxy can decide which future
3259 versions of the GNU General Public License can be used, that
3260 proxy's public statement of acceptance of a version permanently
3261 authorizes you to choose that version for the Program.
3263 Later license versions may give you additional or different
3264 permissions. However, no additional obligations are imposed on any
3265 author or copyright holder as a result of your choosing to follow a
3268 15. Disclaimer of Warranty.
3270 THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
3271 APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE
3272 COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS"
3273 WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED,
3274 INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
3275 MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE
3276 RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU.
3277 SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL
3278 NECESSARY SERVICING, REPAIR OR CORRECTION.
3280 16. Limitation of Liability.
3282 IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
3283 WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES
3284 AND/OR CONVEYS THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU
3285 FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR
3286 CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE
3287 THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA
3288 BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD
3289 PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
3290 PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF
3291 THE POSSIBILITY OF SUCH DAMAGES.
3293 17. Interpretation of Sections 15 and 16.
3295 If the disclaimer of warranty and limitation of liability provided
3296 above cannot be given local legal effect according to their terms,
3297 reviewing courts shall apply local law that most closely
3298 approximates an absolute waiver of all civil liability in
3299 connection with the Program, unless a warranty or assumption of
3300 liability accompanies a copy of the Program in return for a fee.
3303 END OF TERMS AND CONDITIONS
3304 ===========================
3306 How to Apply These Terms to Your New Programs
3307 =============================================
3309 If you develop a new program, and you want it to be of the greatest
3310 possible use to the public, the best way to achieve this is to make it
3311 free software which everyone can redistribute and change under these
3314 To do so, attach the following notices to the program. It is safest
3315 to attach them to the start of each source file to most effectively
3316 state the exclusion of warranty; and each file should have at least the
3317 "copyright" line and a pointer to where the full notice is found.
3319 ONE LINE TO GIVE THE PROGRAM'S NAME AND A BRIEF IDEA OF WHAT IT DOES.
3320 Copyright (C) YEAR NAME OF AUTHOR
3322 This program is free software: you can redistribute it and/or modify
3323 it under the terms of the GNU General Public License as published by
3324 the Free Software Foundation, either version 3 of the License, or (at
3325 your option) any later version.
3327 This program is distributed in the hope that it will be useful, but
3328 WITHOUT ANY WARRANTY; without even the implied warranty of
3329 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
3330 General Public License for more details.
3332 You should have received a copy of the GNU General Public License
3333 along with this program. If not, see `http://www.gnu.org/licenses/'.
3335 Also add information on how to contact you by electronic and paper
3338 If the program does terminal interaction, make it output a short
3339 notice like this when it starts in an interactive mode:
3341 PROGRAM Copyright (C) YEAR NAME OF AUTHOR
3342 This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
3343 This is free software, and you are welcome to redistribute it
3344 under certain conditions; type `show c' for details.
3346 The hypothetical commands `show w' and `show c' should show the
3347 appropriate parts of the General Public License. Of course, your
3348 program's commands might be different; for a GUI interface, you would
3351 You should also get your employer (if you work as a programmer) or
3352 school, if any, to sign a "copyright disclaimer" for the program, if
3353 necessary. For more information on this, and how to apply and follow
3354 the GNU GPL, see `http://www.gnu.org/licenses/'.
3356 The GNU General Public License does not permit incorporating your
3357 program into proprietary programs. If your program is a subroutine
3358 library, you may consider it more useful to permit linking proprietary
3359 applications with the library. If this is what you want to do, use the
3360 GNU Lesser General Public License instead of this License. But first,
3361 please read `http://www.gnu.org/philosophy/why-not-lgpl.html'.
\r
3368 -animateSpeed, option: See 3.5. (line 1768)
3369 .cmailaliases: See 10.1. (line 2407)
3370 .cmailgames: See 10.1. (line 2402)
3371 .icsrc: See 3.3. (line 1291)
3372 <, Button: See 2.4. (line 452)
3373 <<, Button: See 2.4. (line 482)
3374 >, Button: See 2.4. (line 470)
3375 >>, Button: See 2.4. (line 499)
3376 abort, ICS command: See 4. (line 2056)
3377 Abort, Menu Item: See 2.3. (line 431)
3378 About XBoard, Menu Item: See 2.6. (line 832)
3379 accept, ICS command: See 4. (line 2044)
3380 Accept, Menu Item: See 2.3. (line 406)
3381 Action, Menu: See 2.3. (line 405)
3382 adjourn, ICS command: See 4. (line 2056)
3383 Adjourn, Menu Item: See 2.3. (line 427)
3384 Adjudicate Draw, Menu Item: See 2.4. (line 533)
3385 Adjudicate to Black, Menu Item: See 2.4. (line 533)
3386 Adjudicate to White, Menu Item: See 2.4. (line 533)
3387 adjudicateDrawMoves, option: See 3.6. (line 1784)
3388 adjudicateLossThreshold, option: See 3.6. (line 1776)
3389 Adjudications, Menu Item: See 2.5. (line 548)
3390 alarm, option: See 3.3. (line 1335)
3391 Always Queen, Menu Item: See 2.5. (line 596)
3392 alwaysPromoteToQueen, option: See 3.5. (line 1575)
3393 Analysis Mode, Menu Item: See 2.2. (line 241)
3394 Analyze File, Menu Item: See 2.2. (line 256)
3395 Animate Dragging, Menu Item: See 2.5. (line 602)
3396 Animate Moving, Menu Item: See 2.5. (line 609)
3397 animate, option: See 3.5. (line 1764)
3398 animateDragging, option: See 3.5. (line 1760)
3399 animateMoving, option: See 3.5. (line 1764)
3400 Authors: See 9. (line 2273)
3401 Auto Comment, Menu Item: See 2.5. (line 617)
3402 Auto Flag, Menu Item: See 2.5. (line 625)
3403 Auto Flip View, Menu Item: See 2.5. (line 634)
3404 Auto Observe, Menu Item: See 2.5. (line 639)
3405 Auto Raise Board, Menu Item: See 2.5. (line 652)
3406 Auto Save, Menu Item: See 2.5. (line 657)
3407 autobs, option: See 3.3. (line 1319)
3408 autoCallFlag, option: See 3.3. (line 1315)
3409 autocomm, option: See 3.3. (line 1311)
3410 autoComment, option: See 3.3. (line 1311)
3411 autoflag, option: See 3.3. (line 1315)
3412 autoflip, option: See 3.5. (line 1620)
3413 autoFlipView, option: See 3.5. (line 1620)
3414 autoKibitz, option: See 3.3. (line 1323)
3415 autoObserve, option: See 3.3. (line 1319)
3416 autoraise, option: See 3.5. (line 1616)
3417 autoRaiseBoard, option: See 3.5. (line 1616)
3418 autosave, option: See 3.4. (line 1497)
3419 autoSaveGames, option: See 3.4. (line 1497)
3420 Back to Start, Menu Item: See 2.4. (line 482)
3421 Backward, Menu Item: See 2.4. (line 452)
3422 bell, option: See 3.5. (line 1562)
3423 bitmapDirectory, option: See 3.5. (line 1702)
3424 blackPieceColor, option: See 3.5. (line 1743)
3425 blind, option: See 3.5. (line 1668)
3426 Blindfold, Menu Item: See 2.5. (line 664)
3427 blindfold, option: See 3.5. (line 1668)
3428 bm, option: See 3.5. (line 1702)
3429 board size: See 3.5. (line 1583)
3430 boardHeight, option: See 3.7. (line 1898)
3431 boardSize, option: See 3.5. (line 1583)
3432 boardWidth, option: See 3.7. (line 1903)
3433 Book, Menu Item: See 2.6. (line 822)
3434 Bug reports: See 8. (line 2244)
3435 Bugs <1>: See 8. (line 2244)
3436 Bugs: See 7. (line 2191)
3437 buttons, option: See 3.5. (line 1642)
3438 Call Flag, Menu Item: See 2.3. (line 416)
3439 checkMates, option: See 3.6. (line 1789)
3440 Chess engine options: See 3.1. (line 908)
3441 CHESSDIR: See 6. (line 2182)
3442 clock, option: See 3.1. (line 925)
3443 clockFont, option: See 3.5. (line 1672)
3444 clockMode, option: See 3.1. (line 925)
3445 cmail: See 10. (line 2313)
3446 colorChallenge, option: See 3.3. (line 1366)
3447 colorChannel, option: See 3.3. (line 1366)
3448 colorChannel1, option: See 3.3. (line 1366)
3449 colorize, option: See 3.3. (line 1351)
3450 colorKibitz, option: See 3.3. (line 1366)
3451 colorNormal, option: See 3.3. (line 1366)
3452 colorRequest, option: See 3.3. (line 1366)
3453 Colors <1>: See 3.5. (line 1743)
3454 Colors: See 3.3. (line 1351)
3455 colorSeek, option: See 3.3. (line 1366)
3456 colorShout, option: See 3.3. (line 1366)
3457 colorSShout, option: See 3.3. (line 1366)
3458 colorTell, option: See 3.3. (line 1366)
3459 Contributors: See 9. (line 2273)
3460 coordFont, option: See 3.5. (line 1678)
3461 coords, option: See 3.5. (line 1612)
3462 Copy Game, Menu Item: See 2.1. (line 167)
3463 Copy Position, Menu Item: See 2.1. (line 208)
3464 darkSquareColor, option: See 3.5. (line 1743)
3465 debug, option: See 3.7. (line 1950)
3466 debugFile, option: See 3.7. (line 1953)
3467 debugMode, option: See 3.7. (line 1950)
3468 decline, ICS command: See 4. (line 2044)
3469 Decline, Menu Item: See 2.3. (line 411)
3470 defaultCacheSizeEGTB, option: See 3.2. (line 1176)
3471 defaultFrcPosition, option: See 3.7. (line 1918)
3472 defaultHashSize, option: See 3.2. (line 1170)
3473 defaultPathEGTB, option: See 3.2. (line 1182)
3474 delayAfterQuit, option: See 3.7. (line 1986)
3475 delayBeforeQuit, option: See 3.7. (line 1986)
3476 display, option: See 3.5. (line 1553)
3477 drag, option: See 3.5. (line 1760)
3478 draw, ICS command: See 4. (line 2056)
3479 Draw, Menu Item: See 2.3. (line 422)
3480 Edit Comment, Menu Item: See 2.2. (line 366)
3481 Edit Game, Menu Item: See 2.2. (line 288)
3482 Edit Position, Menu Item: See 2.2. (line 301)
3483 Edit Tags, Menu Item: See 2.2. (line 343)
3484 egtFormats, option: See 3.2. (line 1186)
3485 Engine Settings: See 3.2. (line 1137)
3486 engineDebugOutput, option: See 3.7. (line 1958)
3487 Environment variables: See 6. (line 2182)
3488 examine, ICS command: See 4. (line 2079)
3489 Exit, Menu Item: See 2.1. (line 225)
3490 exit, option: See 3.5. (line 1567)
3491 fb, option: See 3.1. (line 1036)
3492 fcp, option: See 3.1. (line 1028)
3493 fd, option: See 3.1. (line 1052)
3494 fh, option: See 3.1. (line 1044)
3495 File Menu: See 2.1. (line 83)
3496 finger, ICS command: See 4. (line 2066)
3497 firstChessProgram, option: See 3.1. (line 1028)
3498 firstComputerString, option: See 3.1. (line 1084)
3499 firstDirectory, option: See 3.1. (line 1052)
3500 firstHasOwnBookUCI, option: See 3.2. (line 1165)
3501 firstHost, option: See 3.1. (line 1044)
3502 firstIsUCI, option: See 3.2. (line 1139)
3503 firstNPS, option: See 3.1. (line 948)
3504 firstOptions option: See 3.1. (line 1124)
3505 firstPlaysBlack, option: See 3.1. (line 1036)
3506 firstProtocolVersion, option: See 3.1. (line 1101)
3507 firstScoreAbs, option: See 3.1. (line 1109)
3508 firstTimeOdds, option: See 3.1. (line 967)
3509 firstXBook, option: See 3.2. (line 1165)
3510 Flash Moves, Menu Item: See 2.5. (line 670)
3511 flash, option: See 3.5. (line 1655)
3512 flashCount, option: See 3.5. (line 1655)
3513 flashRate, option: See 3.5. (line 1655)
3514 Flip View, Menu Item: See 2.5. (line 543)
3515 flip, option: See 3.5. (line 1624)
3516 flipView, option: See 3.5. (line 1624)
3517 fNoOwnBookUCI, option: See 3.2. (line 1165)
3518 Font: See 3.5. (line 1685)
3519 Font, clock: See 3.5. (line 1672)
3520 Font, coordinates: See 3.5. (line 1678)
3521 font, option: See 3.5. (line 1685)
3522 fontSizeTolerance, option: See 3.5. (line 1692)
3523 Forward to End, Menu Item: See 2.4. (line 499)
3524 Forward, Menu Item: See 2.4. (line 470)
3525 fUCI, option: See 3.2. (line 1139)
3526 gameListTags, option: See 3.4. (line 1540)
3527 games, ICS command: See 4. (line 2033)
3528 gateway, option: See 3.3. (line 1246)
3529 geometry, option: See 3.5. (line 1553)
3530 Get Move List, Menu Item: See 2.5. (line 683)
3531 getMoveList, option: See 3.3. (line 1331)
3532 Help Menu: See 2.6. (line 804)
3533 help, ICS command: See 4. (line 2019)
3534 Hide Thinking, Menu Item: See 2.5. (line 780)
3535 Highlight Last Move, Menu Item: See 2.5. (line 695)
3536 highlight, option: See 3.5. (line 1664)
3537 highlightLastMove, option: See 3.5. (line 1664)
3538 highlightSquareColor, option: See 3.5. (line 1743)
3539 Hint, Menu Item: See 2.6. (line 819)
3540 holdingsSize, option: See 3.7. (line 1910)
3541 iconic, option: See 3.5. (line 1553)
3542 ICS: See 4. (line 1995)
3543 ICS Alarm, Menu Item: See 2.5. (line 715)
3544 ICS Client, Menu Item: See 2.2. (line 266)
3545 ICS Input Box, Menu Item: See 2.2. (line 371)
3546 ICS options: See 3.3. (line 1201)
3547 ICS, addresses: See 4. (line 1995)
3548 ics, option: See 3.3. (line 1202)
3549 icsAlarm, option: See 3.3. (line 1335)
3550 icsAlarmTime, option: See 3.3. (line 1339)
3551 icscomm, option: See 3.3. (line 1254)
3552 icshelper, option: See 3.3. (line 1220)
3553 icshost, option: See 3.3. (line 1207)
3554 icsinput, option: See 3.3. (line 1307)
3555 icslogon, option: See 3.3. (line 1291)
3556 icsport, option: See 3.3. (line 1216)
3557 inc, option: See 3.1. (line 918)
3558 Info XBoard, Menu Item: See 2.6. (line 805)
3559 initalMode, option: See 3.7. (line 1844)
3560 initString, option: See 3.1. (line 1061)
3561 Internet Chess Server: See 4. (line 1995)
3562 internetChessServerCommPort, option: See 3.3. (line 1254)
3563 internetChessServerHelper, option: See 3.3. (line 1220)
3564 internetChessServerHost, option: See 3.3. (line 1207)
3565 internetChessServerInputBox, option: See 3.3. (line 1307)
3566 internetChessServerLogonScript, option: See 3.3. (line 1291)
3567 internetChessServerMode, option: See 3.3. (line 1202)
3568 internetChessServerPort, option: See 3.3. (line 1216)
3570 See ``Introduction''. (line 13)
3571 Keys: See 2.7. (line 838)
3572 legal, option: See 3.5. (line 1579)
3573 lgf, option: See 3.4. (line 1458)
3574 lgi, option: See 3.4. (line 1458)
3575 lightSquareColor, option: See 3.5. (line 1743)
3576 Limitations: See 7. (line 2191)
3577 Load and Save options: See 3.4. (line 1456)
3578 Load Game, Menu Item: See 2.1. (line 115)
3579 Load Next Game, Menu Item: See 2.1. (line 142)
3580 Load Next Position, Menu Item: See 2.1. (line 188)
3581 Load Position, Menu Item: See 2.1. (line 180)
3582 Load Previous Game, Menu Item: See 2.1. (line 146)
3583 Load Previous Position, Menu Item: See 2.1. (line 191)
3584 loadGameFile, option: See 3.4. (line 1458)
3585 loadGameIndex, option: See 3.4. (line 1458)
3586 loadPositionFile, option: See 3.4. (line 1502)
3587 loadPositionIndex, option: See 3.4. (line 1502)
3588 lpf, option: See 3.4. (line 1502)
3589 lpi, option: See 3.4. (line 1502)
3590 Machine Black, Menu Item: See 2.2. (line 235)
3591 Machine White, Menu Item: See 2.2. (line 232)
3592 Mail Move, Menu Item: See 2.1. (line 222)
3593 Major modes: See 1. (line 22)
3594 Man XBoard, Menu Item: See 2.6. (line 812)
3595 matchGames, option: See 3.1. (line 1005)
3596 matchMode, option: See 3.1. (line 1018)
3597 materialDraws, option: See 3.6. (line 1801)
3598 Menu, Action: See 2.3. (line 405)
3599 Menu, File: See 2.1. (line 83)
3600 Menu, Help: See 2.6. (line 804)
3601 Menu, Mode: See 2.2. (line 231)
3602 Menu, Options: See 2.5. (line 542)
3603 Menu, Step: See 2.4. (line 451)
3604 Menus: See 2. (line 60)
3605 mg, option: See 3.1. (line 1005)
3606 mm, option: See 3.1. (line 1018)
3607 Mode Menu: See 2.2. (line 231)
3608 mode, option: See 3.7. (line 1844)
3609 mono, option: See 3.5. (line 1648)
3610 monoMode, option: See 3.5. (line 1648)
3611 Move Now, Menu Item: See 2.4. (line 519)
3612 Move Sound, Menu Item: See 2.5. (line 701)
3613 moves, option: See 3.3. (line 1331)
3614 movesound, option: See 3.5. (line 1562)
3615 movesPerSession, option: See 3.1. (line 914)
3616 mps, option: See 3.1. (line 914)
3617 msLoginDelay, option: See 3.3. (line 1300)
3618 nameOfDebugFile, option: See 3.7. (line 1953)
3619 ncp, option: See 3.7. (line 1839)
3620 New Game, Menu Item: See 2.1. (line 84)
3621 New Shuffle Game, Menu Item: See 2.1. (line 93)
3622 New variant, Menu Item: See 2.1. (line 106)
3623 niceEngines, option: See 3.1. (line 1115)
3624 noChessProgram, option: See 3.7. (line 1839)
3625 noGUI, option: See 3.5. (line 1556)
3626 observe, ICS command: See 4. (line 2075)
3627 Old Save Style, Menu Item: See 2.5. (line 724)
3628 oldmoves, ICS command: See 4. (line 2079)
3629 oldsave, option: See 3.4. (line 1536)
3630 oldSaveStyle, option: See 3.4. (line 1536)
3631 Options: See 3. (line 884)
3632 Options Menu: See 2.5. (line 542)
3633 Options, adjudication: See 3.6. (line 1775)
3634 options, Chess engine: See 3.1. (line 908)
3635 Options, ICS: See 3.3. (line 1201)
3636 Options, Load and Save: See 3.4. (line 1456)
3637 Options, miscellaneous: See 3.7. (line 1838)
3638 Options, User interface: See 3.5. (line 1550)
3639 Other programs: See 11. (line 2517)
3640 Paste Game, Menu Item: See 2.1. (line 176)
3641 Paste Position, Menu Item: See 2.1. (line 217)
3642 Pause, Menu Item: See 2.2. (line 379)
3643 Periodic Updates, Menu Item: See 2.5. (line 732)
3644 pgnEventHeader, option`: See 3.4. (line 1528)
3645 pgnExtendedInfo, option`: See 3.4. (line 1523)
3646 pieceToSquareTable, option: See 3.7. (line 1924)
3647 pixmap, option: See 3.5. (line 1702)
3648 pixmapDirectory, option: See 3.5. (line 1702)
3649 PolyglotBook, option: See 3.2. (line 1154)
3650 PolyglotDir, option: See 3.2. (line 1146)
3651 Ponder Next Move, Menu Item: See 2.5. (line 738)
3652 ponder, option: See 3.1. (line 996)
3653 ponderNextMove, option: See 3.1. (line 996)
3654 Popup Exit Message, Menu Item: See 2.5. (line 743)
3655 Popup Move Errors, Menu Item: See 2.5. (line 750)
3656 popup, option: See 3.5. (line 1571)
3657 popupExitMessage, option: See 3.5. (line 1567)
3658 popupMoveErrors, option: See 3.5. (line 1571)
3659 pre, option: See 3.3. (line 1343)
3660 Premove, Menu Item: See 2.5. (line 759)
3661 premove, option: See 3.3. (line 1343)
3662 Problems: See 8. (line 2244)
3663 queen, option: See 3.5. (line 1575)
3664 Quiet Play, Menu Item: See 2.5. (line 770)
3665 quiet, option: See 3.3. (line 1347)
3666 quietPlay, option: See 3.3. (line 1347)
3667 Reload CMail Message, Menu Item: See 2.1. (line 222)
3668 Reload Same Game, Menu Item: See 2.1. (line 151)
3669 Reload Same Position, Menu Item: See 2.1. (line 196)
3670 remoteShell, option: See 3.7. (line 1972)
3671 remoteUser, option: See 3.7. (line 1977)
3672 Reporting bugs: See 8. (line 2244)
3673 Reporting problems: See 8. (line 2244)
3674 Resign, Menu Item: See 2.3. (line 436)
3675 Retract Move, Menu Item: See 2.4. (line 523)
3676 reuse, option: See 3.1. (line 1092)
3677 reuse2, option: See 3.1. (line 1092)
3678 reuseFirst, option: See 3.1. (line 1092)
3679 reuseSecond, option: See 3.1. (line 1092)
3680 Revert, Menu Item: See 2.4. (line 510)
3681 ringBellAfterMoves, option: See 3.5. (line 1562)
3682 rsh, option: See 3.7. (line 1972)
3683 ruleMoves, option: See 3.6. (line 1820)
3684 ruser, option: See 3.7. (line 1977)
3685 sameColorGames, option: See 3.1. (line 1022)
3686 Save Game, Menu Item: See 2.1. (line 155)
3687 saveGameFile, option: See 3.4. (line 1492)
3688 saveOutOfBookInfo, option`: See 3.4. (line 1532)
3689 savePositionFile, option: See 3.4. (line 1518)
3690 scp, option: See 3.1. (line 1031)
3691 sd, option: See 3.1. (line 939)
3692 searchDepth, option: See 3.1. (line 939)
3693 searchTime, option: See 3.1. (line 932)
3694 secondChessProgram, option: See 3.1. (line 1031)
3695 secondComputerString, option: See 3.1. (line 1084)
3696 secondDirectory, option: See 3.1. (line 1052)
3697 secondHasOwnBookUCI, option: See 3.2. (line 1165)
3698 secondHost, option: See 3.1. (line 1044)
3699 secondInitString, option: See 3.1. (line 1061)
3700 secondIsUCI, option: See 3.2. (line 1139)
3701 secondNPS, option: See 3.1. (line 948)
3702 secondOptions, option: See 3.1. (line 1124)
3703 secondProtocolVersion, option: See 3.1. (line 1101)
3704 secondScoreAbs, option: See 3.1. (line 1109)
3705 secondTimeOdds, option: See 3.1. (line 967)
3706 secondXBook, option: See 3.2. (line 1165)
3707 set, ICS command: See 4. (line 2072)
3708 Settings, Engine: See 3.2. (line 1137)
3709 sgf, option: See 3.4. (line 1492)
3710 sh, option: See 3.1. (line 1044)
3711 Shortcut keys: See 2.7. (line 838)
3712 Show Coords, Menu Item: See 2.5. (line 776)
3713 Show Engine Output, Menu Item: See 2.2. (line 339)
3714 Show Game List, Menu Item: See 2.2. (line 330)
3715 Show Move History, Menu Item: See 2.2. (line 334)
3716 showButtonBar, option: See 3.5. (line 1642)
3717 showCoords, option: See 3.5. (line 1612)
3718 showThinking, option: See 3.1. (line 986)
3719 size, option: See 3.5. (line 1583)
3720 sNoOwnBookUCI, option: See 3.2. (line 1165)
3721 soundChallenge, option: See 3.3. (line 1409)
3722 soundChannel, option: See 3.3. (line 1409)
3723 soundIcsAlarm, option: See 3.3. (line 1417)
3724 soundIcsDraw, option: See 3.3. (line 1428)
3725 soundIcsLoss, option: See 3.3. (line 1424)
3726 soundIcsUnfinished, option: See 3.3. (line 1432)
3727 soundIcsWin, option: See 3.3. (line 1420)
3728 soundKibitz, option: See 3.3. (line 1409)
3729 soundMove, option: See 3.3. (line 1414)
3730 soundProgram, option: See 3.3. (line 1393)
3731 soundRequest, option: See 3.3. (line 1409)
3732 Sounds: See 3.3. (line 1393)
3733 soundSeek, option: See 3.3. (line 1409)
3734 soundShout, option: See 3.3. (line 1409)
3735 soundSShout, option: See 3.3. (line 1409)
3736 soundTell, option: See 3.3. (line 1409)
3737 spf, option: See 3.4. (line 1518)
3738 st, option: See 3.1. (line 932)
3739 Step Menu: See 2.4. (line 451)
3740 Stop Examining, Menu Item: See 2.3. (line 444)
3741 Stop Observing, Menu Item: See 2.3. (line 440)
3742 sUCI, option: See 3.2. (line 1139)
3743 tc, option: See 3.1. (line 909)
3744 td, option: See 3.4. (line 1486)
3745 telnet, option: See 3.3. (line 1228)
3746 telnetProgram, option: See 3.3. (line 1237)
3747 Test Legality, Menu Item: See 2.5. (line 789)
3748 testClaims, option: See 3.6. (line 1795)
3749 testLegality, option: See 3.5. (line 1579)
3750 thinking, option: See 3.1. (line 986)
3751 Time Control, Menu Item: See 2.5. (line 586)
3752 timeControl, option: See 3.1. (line 909)
3753 timeDelay, option: See 3.4. (line 1486)
3754 timeIncrement, option: See 3.1. (line 918)
3755 timeOddsMode, option: See 3.1. (line 973)
3756 title, option: See 3.5. (line 1634)
3757 titleInWindow, option: See 3.5. (line 1634)
3758 Training, Menu Item: See 2.2. (line 319)
3759 trivialDraws, option: See 3.6. (line 1808)
3760 Truncate Game, Menu Item: See 2.4. (line 514)
3761 Two Machines, Menu Item: See 2.2. (line 238)
3762 usePolyglotBook, option: See 3.2. (line 1151)
3763 User interface options: See 3.5. (line 1550)
3764 userName, option: See 3.7. (line 1981)
3765 useTelnet, option: See 3.3. (line 1228)
3766 variant, option: See 3.7. (line 1852)
3767 vars, ICS command: See 4. (line 2069)
3768 whitePieceColor, option: See 3.5. (line 1743)
3769 who, ICS command: See 4. (line 2025)
3770 xflash, option: See 3.5. (line 1655)
3776 2 Menus, buttons, and keys
3783 2.7 Other Shortcut Keys
3785 3.1 Chess Engine Options
3786 3.2 UCI + WB Engine Settings
3788 3.4 Load and Save options
3789 3.5 User interface options
3790 3.6 Adjudication Options
3794 6 Environment variables
3795 7 Limitations and known bugs
3796 8 Reporting problems
3797 9 Authors and contributors
3800 10.2 Starting a CMail Game
3801 10.3 Answering a Move
3802 10.4 Multi-Game Messages
3803 10.5 Completing a Game
3804 10.6 Known CMail Problems
3805 11 Other programs you can use with XBoard
3812 GNU GENERAL PUBLIC LICENSE