Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
xboard(6)			 Games Manual			     xboard(6)

NAME
       xboard -	X graphical user interface for chess

SYNOPSIS
       xboard [options]
       xboard -ics -icshost hostname [options]
       xboard -ncp [options]
       |pxboard
       cmail [options]

DESCRIPTION
       XBoard  is a graphical chessboard that can serve	as a user interface to
       chess engines (such as GNU Chess), the Internet	Chess  Servers,	 elec-
       tronic  mail  correspondence  chess,  or	 your  own collection of saved
       games.

       This manual documents version 4.8.0.20151020.3-git:f49e7e1 of XBoard.

MAJOR MODES
       XBoard always runs in one of four major modes.  You  select  the	 major
       mode from the command line when you start up XBoard.

       xboard [options]
	      As  an interface to GNU Chess or another chess engine running on
	      your machine, XBoard lets	you play a game	against	 the  machine,
	      set  up  arbitrary positions, force variations, watch a game be-
	      tween two	chess engines, interactively analyze your stored games
	      or set up	and analyze arbitrary positions.  (Note: Not all chess
	      engines support analysis.)

       xboard -ics -icshost hostname [options]
	      As Internet Chess	Server (ICS) interface,	XBoard lets  you  play
	      against  other ICS users,	observe	games they are playing,	or re-
	      view games that have recently finished.  Most of the ICS	"wild"
	      chess variants are supported, including bughouse.

       xboard -ncp [options]
	      XBoard  can  also	 be used simply	as an electronic chessboard to
	      play through games. It will read and write game files and	 allow
	      you  to  play  through  variations  manually.  You can use it to
	      browse games off the net or review games you have	saved.	 These
	      features are also	available in the other modes.

       |pxboard
	      If  you  want  to	pipe games into	XBoard,	use the	supplied shell
	      script `pxboard'.	 For example, from the news reader `xrn', find
	      a	message	with one or more games in it, click the	 Save  button,
	      and type `|pxboard' as the file name.

       cmail [options]
	      As  an interface to electronic mail correspondence chess,	XBoard
	      works with the cmail program. See	CMail below for	instructions.

BASIC OPERATION
       To move a piece,	you can	drag it	with the left mouse button, or you can
       click the left mouse button once	on the piece, then once	 more  on  the
       destination  square.  In	crazyhouse, bughouse or	shogi you can drag and
       drop pieces to the board	from the holdings squares  displayed  next  to
       the board.

       Old  behavior, where right-clicking a square brings up a	menu where you
       can select what piece to	drop on	it can still be	selected  through  the
       `Drop Menu' option.  Only in Edit Position mode right and middle	click-
       ing  a square is	still used to put a piece on it, and the piece to drop
       is selected by sweeping the mouse vertically with the button held down.

       The default function of the right mouse button in  other	 modes	is  to
       display the position the	chess program thinks it	will end up in.	 While
       moving  the  mouse vertically with this button pressed XBoard will step
       through the principal variation to  show	 how  this  position  will  be
       reached.	  Lines	 of play displayed in the engine-output	window,	or PGN
       variations in the comment window	can similarly be  played  out  on  the
       board, by right-clicking	on them.  Only in Analysis mode, when you walk
       along  a	PV, releasing the mouse	button will forward the	game upto that
       point, like you entered all previous PV moves.  As the display  of  the
       PV  in  that case starts	after the first	move a simple right-click will
       play the	move the engine	indicates.

       In Analysis mode	you can	also make a move by grabbing the piece with  a
       double-click  of	 the  left mouse button	(or while keeping the Ctrl key
       pressed).  In this case the move	you enter will not be played, but will
       be excluded from	the analysis of	the current position.  (Or included if
       it was already excluded;	it is a	toggle.)  This only works for  engines
       that support this feature.

       When  connected to an ICS, it is	possible to call up a graphical	repre-
       sentation of players seeking a game in stead of the chess  board,  when
       the  latter is not in use (i.e. when you	are not	playing	or observing).
       Left-clicking the display area will switch between  this	 'seek	graph'
       and  the	 chess board.  Hovering	the mouse pointer over a dot will show
       the details of the seek ad in the message field above the board.	 Left-
       clicking	the dot	will challenge that player.  Right-clicking a dot will
       'push it	to the back', to reveal	any dots that were hidden  behind  it.
       Right-clicking off dots will refresh the	graph.

       Most  other  XBoard  commands are available from	the menu bar. The most
       frequently used commands	also have shortcut keys	or on-screen  buttons.
       These  shortcut keystrokes are mostly non-printable characters.	Typing
       a letter	or digit while the board window	has  focus  will  bring	 up  a
       type-in	box  with the typed letter already in it.  You can use that to
       type a move in siuations	where it is your turn to enter a move, type  a
       move number to call up the position after that move in the display, or,
       in  Edit	 Position  mode,  type a FEN.  Some rarely used	parameters can
       only be set through options on the command line used to invoke XBoard.

       XBoard uses a settings file, in which it	can remember  any  changes  to
       the  settings  that  are	made through menus or command-line options, so
       they will still apply when you restart XBoard for another session.  The
       settings	can be saved into this file automatically when	XBoard	exits,
       or  on explicit request of the user.  The default name for the settings
       file is /etc/xboard/xboard.conf,	but in a standard install this file is
       only used as a master settings file that	determines the system-wide de-
       fault settings, and defers reading and writing of user  settings	 to  a
       user-specific file like ~/.xboardrc in the user's home directory.

       When  XBoard is iconized, its graphical icon is a white knight if it is
       White's turn to move, a black knight if it is Black's turn.

MENUS, BUTTONS,	AND KEYS
   File	Menu
       New Game
	      Resets XBoard and	the chess engine to the	 beginning  of	a  new
	      chess game. The `Ctrl-N' key is a	keyboard equivalent. In	Inter-
	      net  Chess Server	mode, clears the current state of XBoard, then
	      resynchronizes with the ICS by sending a refresh command.	If you
	      want to stop playing, observing, or examining an ICS  game,  use
	      an  appropriate  command	from  the Action menu, not `New	Game'.
	      See Action Menu.

       New Shuffle Game
	      Similar to `New Game', but allows	you to	specify	 a  particular
	      initial  position	(according to a	standardized numbering system)
	      in chess variants	which use randomized opening  positions	 (e.g.
	      Chess960).   You	can  also press	the `Pick Fixed' button	to let
	      XBoard generate a	random number  for  you.   The	thus  selected
	      opening position will then persistently be chosen	on any follow-
	      ing  New Game command until you use this menu to select another.
	      Selecting	position number	-1 (or pushing the `Randomize' button)
	      will produce a newly randomized position on any new game.	 Using
	      this menu	item in	variants that normally do  not	shuffle	 their
	      opening  position	 does  cause  these variants to	become shuffle
	      variants until you use the `New Shuffle Game' menu to explicitly
	      switch the randomization off, or select a	new variant.

       New Variant
	      Allows you to select a new chess variant in non-ICS  mode.   (In
	      ICS play,	the ICS	is responsible for deciding which variant will
	      be  played,  and	XBoard	adapts	automatically.)	  The  shifted
	      `Alt+V' key is a keyboard	equivalent. If you play	 with  an  en-
	      gine,  the  engine must be able to play the selected variant, or
	      the command will be ignored.  XBoard supports  all  major	 vari-
	      ants, such as xiangqi, shogi, chess, chess960, Capablanca	Chess,
	      shatranj,	 crazyhouse,  bughouse.	  But not every	board size has
	      built-in bitmaps for un-orthodox pieces!	Only sizes bulky  (72)
	      and  middling  (49)  have	all pieces, while size petite (33) has
	      most.  These sizes would have to be set at startup  through  the
	      `size'  command-line  option  when  you start up XBoard for such
	      variants to be playable.

	      You can overrule the default board format	of the selected	 vari-
	      ant, (e.g. to play suicide chess on a 6 x	6 board), in this dia-
	      log, but normally	you would not do that, and leave them at '-1',
	      which means 'default'.

       Load Game
	      Plays  a game from a record file.	The `Ctrl-O' key is a keyboard
	      equivalent.  A pop-up dialog prompts you for the file  name.  If
	      the  file	 contains  more	 than one game,	a second pop-up	dialog
	      displays a list of games (with information drawn from their  PGN
	      tags,  if	 any),	and  you can select the	one you	want. Alterna-
	      tively, you can load the Nth game	in the file directly, by  typ-
	      ing the number `N' after the file	name, separated	by a space.

	      The  game	 file parser will accept PGN (portable game notation),
	      or in fact almost	any file that contains moves in	algebraic  no-
	      tation.  Notation	of the form `P@f7' is accepted for piece-drops
	      in  bughouse  games; this	is a nonstandard extension to PGN.  If
	      the file includes	a PGN position	(FEN  tag),  or	 an  old-style
	      XBoard  position diagram bracketed by `[--' and `--]' before the
	      first move, the game starts from that position. Text enclosed in
	      parentheses, square brackets, or curly braces is assumed	to  be
	      commentary  and  is displayed in a pop-up	window.	Any other text
	      in the file is ignored. PGN variations (enclosed in parentheses)
	      also are treated as comments; however, if	you rights-click  them
	      in  the comment window, XBoard will shelve the current line, and
	      load the the selected variation, so you  can  step  through  it.
	      You can later revert to the previous line	with the `Revert' com-
	      mand.   This  way	you can	walk quite complex varation trees with
	      XBoard.  The nonstandard PGN tag [Variant	 "varname"]  functions
	      similarly	 to  the -variant command-line option (see below), al-
	      lowing games in certain chess variants to	be loaded.  Note  that
	      it  must appear before any FEN tag for XBoard to recognize vari-
	      ant FENs appropriately.  There is	also a heuristic to  recognize
	      chess  variants  from  the Event tag, by looking for the strings
	      that the Internet	Chess Servers put there	 when  saving  variant
	      ("wild") games.

       Load Position
	      Sets  up	a  position  from  a  position	file.  A pop-up	dialog
	      prompts you for the file name.  The shifted `Ctrl-O'  key	 is  a
	      keyboard	equivalent.  If	 the file contains more	than one saved
	      position,	and you	want to	load the Nth one, type	the  number  N
	      after  the  file name, separated by a space. Position files must
	      be in FEN	(Forsythe-Edwards notation), or	in the format that the
	      Save Position command writes when	oldSaveStyle is	turned on.

       Load Next Position
	      Loads the	next position from the last position file you  loaded.
	      The shifted `PgDn' key is	a keyboard equivalent.

       Load Previous Position
	      Loads  the  previous  position  from  the	last position file you
	      loaded. The shifted `PgUp' key is	a  keyboard  equivalent.   Not
	      available	if the last position was loaded	from a pipe.

       Save Game
	      Appends  a  record  of the current game to a file.  The `Ctrl-S'
	      key is a keyboard	equivalent.  A pop-up dialog prompts  you  for
	      the  file	 name.	If  the	 game  did not begin with the standard
	      starting position, the game file includes	the starting  position
	      used.  Games  are	saved in the PGN (portable game	notation) for-
	      mat, unless the oldSaveStyle option is true, in which case  they
	      are  saved  in  an older format that is specific to XBoard. Both
	      formats are human-readable, and both can be  read	 back  by  the
	      `Load  Game'  command.   Notation	of the form `P@f7' is accepted
	      for piece-drops in bughouse games; this is a nonstandard	exten-
	      sion to PGN.

       Save Position
	      Appends  a  diagram  of  the  current  position  to a file.  The
	      shifted `Ctrl+S' key is a	keyboard equivalent.  A	pop-up	dialog
	      prompts  you  for	 the  file  name.  Positions  are saved	in FEN
	      (Forsythe-Edwards	notation) format unless	the `oldSaveStyle' op-
	      tion is true, in which case they are saved in an	older,	human-
	      readable	format that is specific	to XBoard. Both	formats	can be
	      read back	by the `Load Position' command.

       Save Selected Games
	      Will cause all games selected for	display	in  the	 current  Game
	      List to be appended to a file of the user's choice.

       Save Games as Book
	      Creates an opening book from the currently loaded	game file, in-
	      corporating  only	the games currently selected in	the Game List.
	      The book will be saved on	the file specified in the `Common  En-
	      gine'  options  dialog.	The value of `Book Depth' specified in
	      that same	dialog will be used to determine  how  many  moves  of
	      each  game will be added to the internal book buffer.  This com-
	      mand can take a long time	to process, and	the size of the	buffer
	      is currently limited.  At	the end	the buffer will	be saved as  a
	      Polyglot	book,  but the buffer will not be cleared, so that you
	      can continue adding games	from other game	files.

       Mail Move
       Reload CMail Message
	      See CMail.

       Exit   Exits from XBoard. The `Ctrl-Q' key is a keyboard	equivalent.

   Edit	Menu
       Copy Game
	      Copies a record of the current game to an	internal clipboard  in
	      PGN format and sets the X	selection to the game text. The	`Ctrl-
	      C'  key  is a keyboard equivalent. The game can be pasted	to an-
	      other application	(such as a text	 editor	 or  another  copy  of
	      XBoard)  using  that application's paste command.	 In many X ap-
	      plications, such as xterm	and emacs, the middle mouse button can
	      be used for pasting; in XBoard, you must use the Paste Game com-
	      mand.

       Copy Position
	      Copies the current position to an	internal clipboard in FEN for-
	      mat and sets the X selection to the position text.  The  shifted
	      `Ctrl-C'	key  is	 a  keyboard  equivalent.  The position	can be
	      pasted to	another	application (such as a text editor or  another
	      copy of XBoard) using that application's paste command.  In many
	      X	applications, such as xterm and	emacs, the middle mouse	button
	      can be used for pasting; in XBoard, you must use the Paste Posi-
	      tion command.

       Copy Game List
	      Copies  the  current  game list to the clipboard,	and sets the X
	      selection	to this	text.  A  format  of  comma-separated  double-
	      quoted  strings is used, including all tags, so it can be	easily
	      imported into spread-sheet programs.

       Paste Game
	      Interprets the current X selection as a game  record  and	 loads
	      it,  as  with  Load Game.	The `Ctrl-V' key is a keyboard equiva-
	      lent.

       Paste Position
	      Interprets the current X selection as a FEN position  and	 loads
	      it,  as  with  Load Position. The	shifted	`Ctrl-V' key is	a key-
	      board equivalent.

       Edit Game
	      Allows you to make moves for both	Black and White, and to	change
	      moves after backing up with the `Backward' command.  The	clocks
	      do not run. The `Ctrl-E' key is a	keyboard equivalent.

	      In  chess	engine mode, the chess engine continues	to check moves
	      for legality but does not	participate in the game. You can bring
	      the chess	engine into the	game  by  selecting  `Machine  White',
	      `Machine Black', or `Two Machines'.

	      In  ICS  mode,  the  moves  are not sent to the ICS: `Edit Game'
	      takes XBoard out of ICS Client mode and lets you edit games  lo-
	      cally.  If you want to edit games	on ICS in a way	that other ICS
	      users  can  see,	use  the ICS `examine' command or start	an ICS
	      match against yourself.

       Edit Position
	      Lets you set up an arbitrary board position.  The	shifted	`Ctrl-
	      E' key is	a keyboard equivalent.	Use mouse  button  1  to  drag
	      pieces  to  new squares, or to delete a piece by dragging	it off
	      the board	or dragging an empty square on top of it.  To  drop  a
	      new  piece  on  a	 square,  press	 mouse	button 2 or 3 over the
	      square.  This puts a white or black pawn in the square,  respec-
	      tively, but you can change that to any other piece type by drag-
	      ging  the	 mouse	down  before you release the button.  You will
	      then see the  piece  on  the  originally	clicked	 square	 cycle
	      through  the  available  pieces  (including  those  of  opposite
	      color), and can release the button when you see  the  piece  you
	      want.   To  alter	the side to move, you can click	the clock (the
	      words White and Black above the board) of	the side you  want  to
	      give the move to.	 To clear the board you	can click the clock of
	      the  side	 that  alread  has  the	 move (which is	highlighted in
	      black).  The old behavior	with a piece menu can still be config-
	      ured with	the aid	of the `pieceMenu'  option.   Selecting	 `Edit
	      Position'	 causes	 XBoard	to discard all remembered moves	in the
	      current game.

	      In ICS mode, changes made	to the position	by `Edit Position' are
	      not sent to the ICS: `Edit Position' takes XBoard	 out  of  `ICS
	      Client' mode and lets you	edit positions locally.	If you want to
	      edit positions on	ICS in a way that other	ICS users can see, use
	      the  ICS	`examine' command, or start an ICS match against your-
	      self.  (See also the ICS Client topic above.)

       Edit Tags
	      Lets you edit the	PGN (portable game notation) tags for the cur-
	      rent game. After editing,	the tags must still conform to the PGN
	      tag syntax:

		  <tag-section>	::= <tag-pair> <tag-section>
					  <empty>
		  <tag-pair> ::= [ <tag-name> <tag-value> ]
		  <tag-name> ::= <identifier>
		  <tag-value> ::= <string>

	      See the PGN Standard for full details. Here is an	example:

		  [Event "Portoroz Interzonal"]
		  [Site	"Portoroz, Yugoslavia"]
		  [Date	"1958.08.16"]
		  [Round "8"]
		  [White "Robert J. Fischer"]
		  [Black "Bent Larsen"]
		  [Result "1-0"]

	      Any characters that do not match this syntax  are	 silently  ig-
	      nored.  Note that	the PGN	standard requires all games to have at
	      least the	seven tags shown above.	Any  that  you	omit  will  be
	      filled in	by XBoard with `?' (unknown value), or `-' (inapplica-
	      ble value).

       Edit Comment
	      Adds or modifies a comment on the	current	position. Comments are
	      saved by `Save Game' and are displayed by	`Load Game', PGN vari-
	      ations  will also	be printed in this window, and can be promoted
	      to main line by right-clicking them.  `Forward', and `Backward'.

       Edit Book
	      Pops up a	window listing the moves available  in	the  GUI  book
	      (specified in the	`Common	Engine Settings' dialog) from the cur-
	      rently  displayed	position, together with	their weights and (op-
	      tionally in braces) learn	info.  You can then  edit  this	 list,
	      and  the	new  list  will	 be stored back	into the book when you
	      press OK.	 Note that the listed percentages  are	neither	 used,
	      nor  updated when	you change the weights;	they are just there as
	      an optical aid.

       Revert
       Annotate
	      If you are examining an ICS game and Pause mode is  off,	Revert
	      issues  the  ICS command `revert'.  In local mode, when you were
	      editing or analyzing a game, and the `-variations'  command-line
	      option  is switched on, you can start a new variation by holding
	      the Shift	key down while entering	a move not at the end  of  the
	      game.   Variations  can also become the currently	displayed line
	      by clicking a PGN	variation displayed  in	 the  Comment  window.
	      This  can	be applied recursively,	so that	you can	analyze	varia-
	      tions on variations; each	time you create	a new variation	by en-
	      tering an	alternative move with Shift pressed, or	select	a  new
	      one  from	 the  Comment  window,	the  current variation will be
	      shelved.	`Revert' allows	you to return  to  the	most  recently
	      shelved  variation.   The	difference between `Revert' and	`Anno-
	      tate' is that with the latter, the variation you are  now	 aban-
	      doning will be added as a	comment	(in PGN	variation syntax, i.e.
	      between  parentheses)  to	 the original move where you deviated,
	      for later	recalling.  The	`Home' key is a	keyboard equivalent to
	      `Revert'.

       Truncate	Game
	      Discards all remembered moves of the game	beyond the current po-
	      sition. Puts XBoard into `Edit Game' mode	if it  was  not	 there
	      already.	The `End' key is a keyboard equivalent.

       Backward
	      Steps  backward through a	series of remembered moves.  The `[<]'
	      button and the `Alt+LeftArrow' key are equivalents, as is	 turn-
	      ing the mouse wheel towards you.	In addition, pressing the Con-
	      trol  key	 steps	back  one move,	and releasing it steps forward
	      again.

	      In most modes, `Backward'	only lets you look back	at  old	 posi-
	      tions;  it  does	not retract moves. This	is the case if you are
	      playing against a	chess engine, playing or observing a  game  on
	      an  ICS,	or loading a game.  If you select `Backward' in	any of
	      these situations,	you will not be	allowed	to  make  a  different
	      move.  Use  `Retract  Move' or `Edit Game' if you	want to	change
	      past moves.

	      If you are examining an ICS game,	the behavior of	`Backward' de-
	      pends on whether XBoard is in Pause mode.	If Pause mode is  off,
	      `Backward'  issues  the  ICS  backward  command,	which backs up
	      everyone's view of the game and allows you to make  a  different
	      move.  If	 Pause mode is on, `Backward' only backs up your local
	      view.

       Forward
	      Steps forward through a series of	remembered moves (undoing  the
	      effect  of `Backward') or	forward	through	a game file. The `[>]'
	      button and the `Alt+RightArrow' key are equivalents, as is turn-
	      ing the mouse wheel away from you.

	      If you are examining an ICS game,	the behavior  of  Forward  de-
	      pends  on	whether	XBoard is in Pause mode. If Pause mode is off,
	      `Forward'	issues the ICS forward command,	which moves everyone's
	      view of the game forward along the current line. If  Pause  mode
	      is on, `Forward' only moves your local view forward, and it will
	      not go past the position that the	game was in when you paused.

       Back to Start
	      Jumps  backward  to  the	first remembered position in the game.
	      The `[<<]' button	and the	`Alt+Home' key are equivalents.

	      In most modes, Back to Start only	lets you look back at old  po-
	      sitions;	it does	not retract moves. This	is the case if you are
	      playing against a	local chess engine,  playing  or  observing  a
	      game  on	a chess	server,	or loading a game. If you select `Back
	      to Start'	in any of these	situations, you	will not be allowed to
	      make different moves. Use	`Retract Move' or `Edit	Game'  if  you
	      want to change past moves; or use	Reset to start a new game.

	      If  you are examining an ICS game, the behavior of @samp{Back to
	      Start} depends on	whether	XBoard is in Pause mode. If Pause mode
	      is off, `Back to Start' issues the ICS  `backward	 999999'  com-
	      mand,  which  backs  up everyone's view of the game to the start
	      and allows you to	make different moves. If  Pause	 mode  is  on,
	      @samp{Back to Start} only	backs up your local view.

       Forward to End
	      Jumps  forward  to the last remembered position in the game. The
	      `[>>]' button and	the `Alt+End' key are equivalents.

	      If you are examining an ICS game,	the behavior of	 @samp{Forward
	      to  End}	depends	 on  whether XBoard is in Pause	mode. If Pause
	      mode is off, `Forward to End' issues the	ICS  `forward  999999'
	      command,	which moves everyone's view of the game	forward	to the
	      end of the current line. If Pause	mode is	on, `Forward  to  End'
	      only  moves your local view forward, and it will not go past the
	      position that the	game was in when you paused.

   View	Menu
       Flip View
	      Inverts your view	of the chess board for	the  duration  of  the
	      current  game.  Starting a new game returns the board to normal.
	      The `F2' key is a	keyboard equivalent.

       Show Engine Output
	      Shows or hides a window in which	the  thinking  output  of  any
	      loaded  engines  is displayed. The shifted `Alt+O' key is	a key-
	      board equivalent.	 XBoard	will display lines of thinking	output
	      of  the  same  depth  ordered  by	score, (highest	score on top),
	      rather than in the order the engine produced them.  Usually this
	      amounts to the same, as a	normal engine search  will  only  find
	      new  PV (and emit	it as thinking output) when it searches	a move
	      with a higher score than the previous variation.	But  when  the
	      engine is	in multi-variation mode	this needs not always be true,
	      and it is	more convenient	for someone analyzing games to see the
	      moves sorted by score.  The order	in which the engine found them
	      is  only	of interest to the engine author, and can still	be de-
	      duced from the time or node count	printed	with the line.	Right-
	      clicking a line in this window, and then moving the mouse	verti-
	      cally with the right button kept down,  will  make  XBoard  play
	      through  the  PV	listed	there.	The use	of the board window as
	      'variation board'	will normally end when you release  the	 right
	      button,  or  when	 the  opponent	plays  a move.	But beware: in
	      Analysis mode, moves thus	played out will	be added to the	 game.
	      The  Engine-Output  pane	for  each engine will contain a	header
	      displaying the multi-PV status and a list	of excluded  moves  in
	      Analysis mode, which are also responsive to right-clicking.

       Show Move History
	      Shows or hides a list of moves of	the current game.  The shifted
	      `Alt+H'  key  is a keyboard equivalent.  This list allows	you to
	      move the display to any earlier position in the game by clicking
	      on the corresponding move.

       Show Evaluation Graph
	      Shows or hides a window which displays a graph of	how the	engine
	      score(s) evolved as a function of	the move number.  The  shifted
	      `Alt+E'  key  is	a  keyboard equivalent.	 Clicking on the graph
	      will bring the corresponding position in the board display.

       Show Game List
	      Shows or hides the list of games generated  by  the  last	 `Load
	      Game' command. The shifted `Alt+G' key is	a keyboard equivalent.

       Tags   Pops  up	a  window which	shows the PGN (portable	game notation)
	      tags for the current game.  For now this is a duplicate  of  the
	      `Edit Tags' item in the `Edit' menu.

       Comments
	      Pops  up	a  window which	shows any comments to or variations on
	      the current move.	 For now this is a duplicate of	the `Edit Com-
	      ment' item in the	`Edit' menu.

       ICS Input Box
	      If this option is	set in ICS mode, XBoard	creates	an extra  win-
	      dow  that	you can	use for	typing in ICS commands.	 The input box
	      is especially useful if you want to type in something long or do
	      some editing on your input, because output from ICS doesn't  get
	      mixed  in	with your typing as it would in	the main terminal win-
	      dow.

       Open Chat Window
	      This menu	item opens a window in which you can  conduct  upto  5
	      chats  with  other  ICS users (or	channels).  To use the window,
	      write the	name of	your chat partner, the channel number, or  the
	      words  'shouts', 'whispers', 'cshouts' in	the upper field	(clos-
	      ing with <Enter>).  Everything you type in the lowest field will
	      then automatically be sent to the	mentioned party, while	every-
	      thing  that  party  sends	to you will appear in the central text
	      box, rather than appear in the ICS console.  The row of  buttons
	      allow  you to choose between chat; to start a new	chat, just se-
	      lect an empty button, and	complete the `Chat partner' field.

       Board  Summons a	dialog where you can customize the look	of  the	 chess
	      board.   Here you	can specify the	directory from which piece im-
	      ages should be taken, when you don't want	to  use	 the  built-in
	      piece images (see	`pieceImageDirectory' option), external	images
	      to  be  used  for	 the  board squares (`liteBackTextureFile' and
	      `darkBackTextureFile' options), and square and piece colors  for
	      the default pieces.

       Game List Tags
	      a	duplicate of the Game List dialog in the Options menu.

   Mode	Menu
       Machine White
	      Tells  the  chess	 engine	 to play White.	 The `Ctrl-W' key is a
	      keyboard equivalent.

       Machine Black
	      Tells the	chess engine to	play Black.  The  `Ctrl-B'  key	 is  a
	      keyboard equivalent.

       Two Machines
	      Plays  a	game between two chess engines.	 The `Ctrl-T' key is a
	      keyboard equivalent.

       Analysis	Mode
	      XBoard tells the chess engine to	start  analyzing  the  current
	      game/position  and  shows	 you  the  analysis as you move	pieces
	      around.  The `Ctrl-A' key	is a keyboard equivalent.  Note:  Some
	      chess engines do not support Analysis mode.

	      To set up	a position to analyze, you do the following:

	      1. Select	Edit Position from the Mode Menu

	      2.  Set  up  the	position.  Use the middle and right buttons to
	      bring up the white and black piece menus.

	      3. When you are finished,	click on either	 the  Black  or	 White
	      clock to tell XBoard which side moves first.

	      4.  Select  Analysis Mode	from the Mode Menu to start the	analy-
	      sis.

	      You can now play legal moves to create follow-up	positions  for
	      the  engine  to analyze, while the moves will be remembered as a
	      stored game, and then step backward through this	game  to  take
	      the  moves  back.	 Note that you can also	click on the clocks to
	      set the opposite side to move (adding a so-called	`null move' to
	      the game).

	      You can also tell	the engine to exclude some moves  from	analy-
	      sis.   (Engines  that  do	 not support the exclude-moves feature
	      will ignore this,	however.)  The general way to do  this	is  to
	      play  the	 move you want to exclude starting with	a double click
	      on the piece.  When you use drag-drop moving, the	piece you grab
	      with a double click will also remain on its square, to show  you
	      that you are not really making the move, but just	forbid it from
	      the  current  position.	Playing	 a thus	excluded move a	second
	      time will	include	it again.  Excluded moves will	be  listed  as
	      text  in	a header line in the Engine Output window, and you can
	      also re-include them by right-clicking them there.  This	header
	      line will	also contain the words 'best' and 'tail'; right-click-
	      ing those	will exclude the currently best	move, or all moves not
	      explicitly  listed  in the header	line.  Once you	leave the cur-
	      rent position all	memory of excluded moves will be lost when you
	      return there.

	      Selecting	this menu item while already in	`Analysis  Mode'  will
	      toggle  the  participation of the	second engine in the analysis.
	      The output of this engine	will then be shown in the  lower  pane
	      of  the Engine Output window.  The analysis function can also be
	      used when	observing games	on an ICS with an engine loaded	(zippy
	      mode); the engine	then will analyse the positions	as they	 occur
	      in the observed game.

       Analyze Game
	      This  option  subjects  the  currently  loaded game to automatic
	      analysis by the loaded engine.  The `Ctrl-G' key is  a  keyboard
	      equivalent.   XBoard  will  start	auto-playing the game from the
	      currently	displayed position, while the engine is	analyzing  the
	      current  position.   The game will be annotated with the results
	      of these analyses.  In particlar,	the score and  depth  will  be
	      added as a comment, and the PV will be added as a	variation.

	      Normally	the  analysis would stop after reaching	the end	of the
	      game.  But when a	game is	loaded from a  multi-game  file	 while
	      `Analyze	Game'  was already switched on,	the analysis will con-
	      tinue with the next game in the file until the end of  the  file
	      is reached (or you switch	to another mode).

	      The  time	 the  engine spends on analyzing each move can be con-
	      trolled through the command-line option `-timeDelay', which  can
	      also  be	set  from  the `Load Game Options' menu	dialog.	 Note:
	      Some chess engines do not	support	Analysis mode.

       Edit Game
	      Duplicate	of the item in the Edit	menu.  Note that  `Edit	 Game'
	      is  the  idle  mode of XBoard, and can be	used to	get you	out of
	      other modes. E.g.	to stop	analyzing, stop	a game between two en-
	      gines or stop editing a position.

       Edit Position
	      Duplicate	of the item in the Edit	menu.

       Training
	      Training mode lets you interactively guess the moves of  a  game
	      for  one	of the players.	You guess the next move	of the game by
	      playing the move on the board. If	the move  played  matches  the
	      next  move  of the game, the move	is accepted and	the opponent's
	      response is auto-played.	If the move played  is	incorrect,  an
	      error message is displayed.  You can select this mode only while
	      loading  a  game	(that is, after	selecting `Load	Game' from the
	      File menu).  While XBoard	is in `Training' mode, the  navigation
	      buttons are disabled.

       ICS Client
	      This  is	the  normal  mode  when	XBoard is connected to a chess
	      server.  If you have moved into Edit Game	or Edit	Position mode,
	      you can select this option to get	out.

	      To use xboard in ICS mode, run it	in  the	 foreground  with  the
	      -ics  option,  and  use the terminal you started it from to type
	      commands and receive text	responses from the chess server.   See
	      Chess Servers below for more information.

	      XBoard  activates	 some  special	position/game editing features
	      when you use the `examine' or `bsetup' commands on ICS  and  you
	      have `ICS	Client'	selected on the	Mode menu.  First, you can is-
	      sue  the	ICS  position-editing  commands	 with the mouse.  Move
	      pieces by	dragging with mouse button 1.  To drop a new piece  on
	      a	 square,  press	 mouse	button	2  or 3	over the square.  This
	      brings up	a menu of white	pieces	(button	 2)  or	 black	pieces
	      (button 3).  Additional menu choices let you empty the square or
	      clear  the  board.  Click	on the White or	Black clock to set the
	      side to play.  You cannot	set the	side to	play or	drag pieces to
	      arbitrary	squares	while examining	on ICC,	but you	can do	so  in
	      `bsetup'	mode  on  FICS.	  In addition, the menu	commands `For-
	      ward', `Backward', `Pause', and `Stop  Examining'	 have  special
	      functions	in this	mode; see below.

       Machine Match
	      Starts  a	 match	between	 two  chess programs, with a number of
	      games and	other parameters set through the `Match	Options'  menu
	      dialog.	When  a	 match is already running, selecting this item
	      will make	XBoard drop out	of match mode after the	 current  game
	      finishes.

       Pause  Pauses  updates  to  the board, and if you are playing against a
	      chess engine,  also  pauses  your	 clock.	 To  continue,	select
	      `Pause'  again, and the display will automatically update	to the
	      latest position.	The `P'	button and keyboard  `Pause'  key  are
	      equivalents.

	      If  you select Pause when	you are	playing	against	a chess	engine
	      and it is	not your move, the chess engine's clock	will  continue
	      to  run  and it will eventually make a move, at which point both
	      clocks will stop.	Since board updates are	paused,	 however,  you
	      will  not	see the	move until you exit from Pause mode (or	select
	      Forward).	 This behavior is meant	to simulate adjournment	with a
	      sealed move.

	      If you select Pause while	you are	observing or examining a  game
	      on a chess server, you can step backward and forward in the cur-
	      rent  history  of	 the examined game without affecting the other
	      observers	and examiners, and without having  your	 display  jump
	      forward  to the latest position each time	a move is made.	Select
	      Pause again to reconnect yourself	to the current	state  of  the
	      game on ICS.

	      If  you  select  `Pause'	while you are loading a	game, the game
	      stops loading. You can load more	moves  manually	 by  selecting
	      `Forward',  or  resume  automatic	 loading  by selecting `Pause'
	      again.

   Action Menu
       Accept Accepts a	pending	match offer.   The  `F3'  key  is  a  keyboard
	      equivalent.   If	there is more than one offer pending, you will
	      have to type in a	more specific command instead  of  using  this
	      menu choice.

       Decline
	      Declines a pending offer (match, draw, adjourn, etc.).  The `F4'
	      key  is  a  keyboard equivalent. If there	is more	than one offer
	      pending, you will	have to	type in	a more	specific  command  in-
	      stead of using this menu choice.

       Call Flag
	      Calls  your opponent's flag, claiming a win on time, or claiming
	      a	draw if	you are	both out of time.  The `F5' key	is a  keyboard
	      equivalent.   You	can also call your opponent's flag by clicking
	      on his clock.

       Draw   Offers a draw to your opponent, accepts  a  pending  draw	 offer
	      from  your  opponent,  or	 claims	 a  draw  by repetition	or the
	      50-move rule, as appropriate. The	`F6' key is a keyboard equiva-
	      lent.

       Adjourn
	      Asks your	opponent to agree to adjourning	the current  game,  or
	      agrees  to  a pending adjournment	offer from your	opponent.  The
	      `F7' key is a keyboard equivalent.

       Abort  Asks your	opponent to agree to aborting  the  current  game,  or
	      agrees  to  a  pending abort offer from your opponent.  The `F8'
	      key is a keyboard	equivalent. An aborted game  ends  immediately
	      without affecting	either player's	rating.

       Resign Resigns  the  game  to your opponent. The	`F9' key is a keyboard
	      equivalent.

       Stop Observing
	      Ends your	participation in observing a game, by issuing the  ICS
	      observe command with no arguments. ICS mode only.	 The `F10' key
	      is a keyboard equivalent.

       Stop Examining
	      Ends  your participation in examining a game, by issuing the ICS
	      unexamine	command. ICS mode only.	 The `F11' key is  a  keyboard
	      equivalent.

       Upload to Examine
	      Create  an  examined  game of the	proper variant on the ICS, and
	      send the game there that is  currenty  loaded  in	 XBoard	 (e.g.
	      through pasting or loading from file).  You must be connected to
	      an ICS for this to work.

       Adjudicate to White
       Adjudicate to Black
       Adjudicate Draw
	      Terminate	 an ongoing game in Two-Machines mode (including match
	      mode), with as result a win for white, for black,	or a draw, re-
	      spectively.  The PGN file	of the game will accompany the	result
	      string by	the comment "user adjudication".

   Engine Menu
       Load Engine
	      Pops up a	dialog where you can select or specify an engine to be
	      loaded.	You  will  always have to indicate whether you want to
	      load the engine as first or second engine, through the Load  me-
	      nitioned	engine	as drop-down list at the bottom	of the dialog.
	      You can even replace engines during a game,  without  disturbing
	      that  game.   (Beware  that after	loading	an engine, XBoard will
	      always be	in Edit	Game mode, so you will have to	tell  the  new
	      engine  what to do before	it does	anything!)  When you select an
	      already installed	engine from the	Select Engine from List	 drop-
	      down  list,  all other fields of the dialog will be ignored.  In
	      other cases, you have to specify the engine executable, possible
	      arguments	on the engine command line (if the engine docs say the
	      engine needs any), and the directory  where  the	engine	should
	      look for its files (if this cannot be deduced automatically from
	      the specification	of the engine executable).  You	will also have
	      to  specify  (with  the aid of checkboxes) if the	engine is UCI.
	      If Add this engine to the	list is	ticked (which  it  is  by  de-
	      fault),  the  engine  will be added to the list of installed en-
	      gines in your settings file, (provided you save the  settings!),
	      so  that	next  time  you	can select it from the drop-down list.
	      You can also specify a nickname, under  which  the  engine  will
	      then  appear in that drop-down list, and even choose to use that
	      nickname for it in PGN files for engine-engine games.  The  info
	      you supply with the checkboxes whether the engine	should use GUI
	      book,  or	(for variant engines) automatically switch to the cur-
	      rent variant when	loaded,	will also be  included	in  the	 list.
	      For  obsolete  XBoard  engines, which would normally take	a long
	      delay to load because XBoard is waiting for a response they will
	      not give,	you can	tick WB	protocol v1 to speed  up  the  loading
	      process.

       Engine #N Settings
	      Pop  up  a menu dialog to	alter the settings specific to the ap-
	      plicable engine.	(The second engine is only accessible once  it
	      has been used in Two-Machines mode.)  For	each parameter the en-
	      gine allows to be	set, a control element will appear in this di-
	      alog that	can be used to alter the value.	 Depending on the type
	      of  parameter  (text  string,  number,  multiple	choice,	on/off
	      switch, instantaneous signal) the	appropriate control  will  ap-
	      pear,  with  a  description next to it.  XBoard has no idea what
	      these values mean; it just passes	them on	to  the	 engine.   How
	      this  dialog  looks  is completely determined by the engine, and
	      XBoard just passes it on to the user.  Many engines do not  have
	      any parameters that can be set by	the user, and in that case the
	      dialog  will  be	empty  (except for the OK and cancel buttons).
	      UCI engines usually have many parameters.	(But  these  are  only
	      visible  with  a	sufficiently  modern  version  of the Polyglot
	      adapter needed to	run UCI	engines, e.g. Polyglot	1.4.55b.)  For
	      native XBoard engines this is less common.

       Hint   Displays a move hint from	the chess engine.

       Book   Displays	a list of possible moves from the chess	engine's open-
	      ing book.	 The exact format depends on what chess	engine you are
	      using.  With GNU Chess 4,	the first column gives moves, the sec-
	      ond column gives one possible response for each  move,  and  the
	      third  column shows the number of	lines in the book that include
	      the move from the	first column. If you select  this  option  and
	      nothing happens, the chess engine	is out of its book or does not
	      support this feature.

       Move Now
	      Forces  the  chess engine	to move	immediately. Chess engine mode
	      only.  The `Ctrl-M' key is a keyboard equivalent.

       Retract Move
	      Retracts your last move. In chess	engine mode, you can  do  this
	      only  after  the	chess  engine has replied to your move;	if the
	      chess engine is still thinking, use `Move	 Now'  first.  In  ICS
	      mode,  `Retract  Move' issues the	command	`takeback 1' or	`take-
	      back 2' depending	on whether  it	is  your  opponent's  move  or
	      yours.  The `Ctrl-X' key is a keyboard equivalent.

       Recently	Used Engines
	      At the bottom of the engine menu there can be a list of names of
	      engines  that  you  recently loaded through the Load Engine menu
	      dialog in	previous sessions.  Clicking on	such a name will  load
	      that  engine as first engine, so you won't have to search	for it
	      in your list of installed	engines, if that is  very  long.   The
	      maximum  number  of displayed engine names is set	by the `recen-
	      tEngines'command-line option.

   Options Menu
       The following items to set option values	appear in the dialog  summoned
       by the general Options menu item.

       Absolute	Analysis Scores
	      Controls	if  scores on the Engine Output	window during analysis
	      will be printed from the white  or  the  side-to-move  point-of-
	      view.

       Almost Always Queen
	      If  this	option is on, 7th-rank pawns automatically change into
	      Queens when you pick them	up, and	when you drag them to the pro-
	      motion square and	release	them there, they will promote to that.
	      But when you drag	such a pawn backwards first, its identity will
	      start to cycle through the other available  pieces.   This  will
	      continue	until you start	to move	it forward; at which point the
	      identity of the piece will be fixed, so that you can safely  put
	      it  down	on  the	promotion square.  If this option is off, what
	      happens depends  on  the	option	`alwaysPromoteToQueen',	 which
	      would  force  promotion  to  Queen  when true.  Otherwise	XBoard
	      would bring up a dialog box whenever you move a pawn to the last
	      rank, asking what	piece you want to promote to.

       Animate Dragging
	      If Animate Dragging is on, while you are dragging	a  piece  with
	      the  mouse,  an image of the piece follows the mouse cursor.  If
	      Animate Dragging is off, there is	no visual feedback  while  you
	      are dragging a piece, but	if Animate Moving is on, the move will
	      be animated when it is complete.

       Animate Moving
	      If Animate Moving	is on, all piece moves are animated.  An image
	      of  the  piece  is  shown	 moving	from the old square to the new
	      square when the move is completed	(unless	the move  was  already
	      animated	by  Animate  Dragging).	  If  Animate Moving is	off, a
	      moved piece instantly disappears from its	old square  and	 reap-
	      pears  on	its new	square when the	move is	complete.  The shifted
	      `Ctrl-A' key is a	keyboard equivalent.

       Auto Flag
	      If this option is	on and one player runs out of time before  the
	      other,  XBoard  will automatically call his flag,	claiming a win
	      on time.	The shifted `Ctrl-F' key is a keyboard equivalent.  In
	      ICS mode,	Auto Flag will only call  your	opponent's  flag,  not
	      yours,  and the ICS may award you	a draw instead of a win	if you
	      have insufficient	mating material.  In local chess engine	 mode,
	      XBoard  may call either player's flag and	will not take material
	      into account (?).

       Auto Flip View
	      If the Auto Flip View option is on when you start	 a  game,  the
	      board  will  be  automatically  oriented so that your pawns move
	      from the bottom of the window towards the	top.

	      If you are playing a game	on an ICS, the board  is  always  ori-
	      ented  at	the start of the game so that your pawns move from the
	      bottom of	the window towards the top.  Otherwise,	 the  starting
	      orientation is determined	by the `flipView' command line option;
	      if  it is	false (the default), White's pawns move	from bottom to
	      top at the start of each game; if	it is true, Black's pawns move
	      from bottom to top. See User interface options.

       Blindfold
	      If this option is	on, XBoard displays the	 board	as  usual  but
	      does  not	display	pieces or move highlights.  You	can still move
	      in the usual way (with the mouse	or  by	typing	moves  in  ICS
	      mode), even though the pieces are	invisible.

       Drop Menu
	      Controls	if  right-clicking  the	board in crazyhouse / bughouse
	      will pop up a menu to drop a piece on the	clicked	 square	 (old,
	      deprecated  behavior)  or	allow you to step through an engine PV
	      (new, recommended	behavior).

       Enable Variation	Trees
	      If this option is	on, playing a move in  Edit  Game  or  Analyze
	      mode while keeping the Shift key pressed will start a new	varia-
	      tion.   You  can	then recall the	previous line through the `Re-
	      vert' menu item.	When off, playing a  move  will	 truncate  the
	      game and append the move irreversibly.

       Hide Thinking
	      If  this	option	is off,	the chess engine's notion of the score
	      and best line of play from the current position is displayed  as
	      it  is thinking. The score indicates how many pawns ahead	(or if
	      negative,	behind)	the chess engine thinks	it is. In matches  be-
	      tween two	machines, the score is prefixed	by `W' or `B' to indi-
	      cate whether it is showing White's thinking or Black's, and only
	      the  thinking  of	 the  engine  that  is	on move	is shown.  The
	      shifted `Ctrl-H' key is a	keyboard equivalent.

       Highlight Last Move
	      If Highlight Last	Move is	on, after a move is made, the starting
	      and ending squares remain	highlighted. In	 addition,  after  you
	      use  Backward  or	Back to	Start, the starting and	ending squares
	      of the last move to be unmade are	highlighted.

       Highlight with Arrow
	      Causes the highlighting described	in Highlight Last Move	to  be
	      done  by	drawing	 an  arrow between the highlighted squares, so
	      that it is visible even when the width of	the grid lines is  set
	      to zero.

       Move Sound
	      Enables the sounding of an audible signal	when the computer per-
	      forms  a	move.	For the	selection of the sound,	see `Sound Op-
	      tions'.  If you turn on this option when using XBoard  with  the
	      Internet	Chess  Server, you will	probably want to give the `set
	      bell 0' command to the ICS, since	otherwise the  ICS  will  ring
	      the  terminal bell after every move (not just yours). (The `.ic-
	      src' file	is a good place	for this; see ICS options.)

       One-Click Moving
	      If this option is	on, XBoard does	not wait for you to click both
	      the from-	and the	to-square, or drag the piece, but  performs  a
	      move as soon as it is uniqely specified.	This applies to	click-
	      ing  an own piece	that only has a	single legal move, clicking an
	      empty square or opponent piece where only	one of your pieces can
	      move (or capture)	to.  Furthermore, a double-click  on  a	 piece
	      that  can	 only make a single capture will cause that capture to
	      be made.	Promoting a Pawn by clicking its to-square  will  sup-
	      press  the promotion popup or other methods for selecting	an un-
	      der-promotion, and make it promote to Queen.

       Periodic	Updates
	      If this option is	off (or	if you are using a chess  engine  that
	      does  not	 support  periodic  updates), the analysis window will
	      only be updated when the analysis	changes. If this option	is on,
	      the Analysis Window will be updated every	two seconds.

       Play Move(s) of Clicked PV
	      If this option is	on, right-clicking a PV	in the	Engine	Output
	      window  during Analyze mode will cause the first move of that PV
	      to be played.  You could also play more than one (or no) PV move
	      by moving	the mouse to engage in the PV walk such	a  right-click
	      will  start, to seek out another position	along the PV where you
	      want to continue the analysis, before releasing the  mouse  but-
	      ton.

       Ponder Next Move
	      If  this option is off, the chess	engine will think only when it
	      is on move.  If the option is on,	the  engine  will  also	 think
	      while  waiting  for you to make your move.  The shifted `Ctrl-P'
	      key is a keyboard	equivalent.

       Popup Exit Message
	      If this option is	on, when XBoard	wants  to  display  a  message
	      just  before  exiting, it	brings up a modal dialog box and waits
	      for you to click OK before  exiting.   If	 the  option  is  off,
	      XBoard  prints  the message to standard error (the terminal) and
	      exits immediately.

       Popup Move Errors
	      If this option is	off, when you make an error in moving (such as
	      attempting an illegal move or moving the wrong color piece), the
	      error message is displayed in the	message	area.  If  the	option
	      is  on,  move  errors are	displayed in small pop-up windows like
	      other errors.  You can dismiss an	error pop-up either by	click-
	      ing  its OK button or by clicking	anywhere on the	board, includ-
	      ing down-clicking	to start a move.

       Scores in Move List
	      If this option is	on, XBoard will	display	the depth and score of
	      engine moves in the Move List, in	the format of a	PGN comment.

       Show Coords
	      If this option is	 on,  XBoard  displays	algebraic  coordinates
	      along the	board's	left and bottom	edges.

       Show Target Squares
	      If  this	option	is on, all squares a piece that	is 'picked up'
	      with the mouse can legally move to are  highighted  with	a  fat
	      colored dot in the highlightColor	(non-captures) or premoveHigh-
	      lightColor  (captures).	Legality testing must be on for	XBoard
	      to know how the piece moves.

       Test Legality
	      If this option is	on, XBoard tests whether the moves you try  to
	      make with	the mouse are legal and	refuses	to let you make	an il-
	      legal  move.  The	shifted	`Ctrl-L' key is	a keyboard equivalent.
	      Moves loaded from	a file with `Load Game'	are also checked.   If
	      the  option is off, all moves are	accepted, but if a local chess
	      engine or	the ICS	is active,  they  will	still  reject  illegal
	      moves.   Turning	off this option	is useful if you are playing a
	      chess variant with rules that XBoard does	not understand.	 (Bug-
	      house, suicide, and wild variants	where the king may castle  af-
	      ter starting on the d file are generally supported with Test Le-
	      gality on.)

       Flash Moves
       Flash Rate
	      If  this	option	is non-zero, whenever a	move is	completed, the
	      moved piece flashes the specified	number of times.   The	flash-
	      rate setting determines how rapidly this flashing	occurs.

       Animation Speed
	      Determines  the  duration	 (in  msec) of an animation step, when
	      `Animate Moving' is swiched on.

       Zoom factor in Evaluation Graph
	      Sets the valueof the `evalZoom' option, indicating the factor by
	      which the	score interval (-1,1) should be	blown up on the	verti-
	      cal axis of the Evaluation Graph.

       Pops up a sub-menu where	you can	set the	time-control parameters	inter-
       actively.  Allows you to	select classical or incremental	time controls,
       set the moves per session, session duration, and	time increment.	  Also
       allows  specification of	time-odds factors for one or both engines.  If
       an engine is given a time-odds factor N,	all time quota it gets,	be  it
       at  the	beginning  of a	session	or through the time increment or fixed
       time per	move, will be divided by N.  The shifted `Alt+T' key is	a key-
       board equivalent.

       Pops up a sub-menu where	you can	set some engine	parameters  common  to
       most  engines,  such  as	hash-table size, tablebase cache size, maximum
       number of processors that SMP engines can use, and where	 to  find  the
       Polyglot	 adapter  needed  to run UCI engines under XBoard. The feature
       that allows setting of these parameters on engines is new since	XBoard
       4.3.15,	so not many XBoard/WinBoard engines respond to it yet, but UCI
       engines should.

       It is also possible to specify a	GUI opening book here, i.e. an opening
       book that XBoard	consults for any position a playing  engine  gets  in.
       It  then	 forces	the engine to play the book move, rather than to think
       up its own, if that position is	found  in  the	book.	The  book  can
       switched	 on  and  off  independently  for either engine.  The way book
       moves are chosen	can be influenced through the settings of  book	 depth
       and  variety.   After both sides	have played more moves than the	speci-
       fied depth, the book will no longer be consulted.  When the variety  is
       set  to	50, moves will be played with the probability specified	in the
       book.  When set to 0, only the move(s)  with  the  highest  probability
       will  be	played.	 When set to 100, all listed moves will	be played with
       equal  pobability.   Other  settings  interpolate  between  that.   The
       shifted `Alt+U' key is a	keyboard equivalent.

       Pops  up	 a  sub-menu where you can enable or disable various adjudica-
       tions that XBoard can perform  in  engine-engine	 games.	  The  shifted
       `Alt+J'	key  is	a keyboard equivalent.	You can	instruct XBoard	to de-
       tect and	terminate the game on checkmate	or stalemate, even if the  en-
       gines  would  not do so,	to verify engine result	claims (forfeiting en-
       gines that make false claims), rather than naively  following  the  en-
       gine,  to  declare draw on positions which can never be won for lack of
       mating material,	(e.g. KBK), or which are impossible to win unless  the
       opponent	 seeks its own demise (e.g. KBKN).  For	these adjudications to
       work, `Test Legality' should be switched	on.  It	is  also  possible  to
       instruct	XBoard to enforce a 50-move or 3-fold-repeat rule and automat-
       ically  declare	draw  (after  a	user-adjustable	number of moves	or re-
       peats) even if the engines are prepared to go on.  It is	also  possible
       to  have	 XBoard	declare	draw on	games that seem	to drag	on forever, or
       adjudicate a loss if both engines agree (for 3 consecutive moves)  that
       one of them is behind more than a user-adjustable score threshold.  For
       the  latter adjudication	to work, XBoard	should be able to properly un-
       derstand	the engine's scores. To	facilitate the latter, you can	inform
       xboard  here  if	the engines report scores from the viewpoint of	white,
       or from that of their own color.

       The following options occur in a	dialog summoned	 by  the  ICS  Options
       menu item.

       Auto Kibitz
	      Setting  this option when	playing	with or	aginst a chess program
	      on an ICS	will cause the last line of thinking output of the en-
	      gine before its move to be sent to the ICS in a kibitz  command.
	      In addition, any kibitz message received through the ICS from an
	      opponent	chess  program	will  be diverted to the engine-output
	      window, (and suppressed in the  console),	 where	you  can  play
	      through its PV by	right-clicking it.

       Auto Comment
	      If  this option is on, any remarks made on ICS while you are ob-
	      serving or playing a game	are recorded as	a comment on the  cur-
	      rent  move.   This  includes  remarks made with the ICS commands
	      `say', `tell', `whisper',	 and  `kibitz'.	  Limitation:  remarks
	      that you type yourself are not recognized; XBoard	scans only the
	      output from ICS, not the input you type to it.

       Auto Observe
	      If this option is	on and you add a player	to your	`gnotify' list
	      on  ICS,	XBoard will automatically observe all of that player's
	      games, unless you	are doing something else (such as observing or
	      playing a	game of	your own) when one starts.  The	games are dis-
	      played from the point of view of	the  player  on	 your  gnotify
	      list;  that is, his pawns	move from the bottom of	the window to-
	      wards the	top.  Exceptions:  If both players in a	 game  are  on
	      your gnotify list, if your ICS `highlight' variable is set to 0,
	      or  if the ICS you are using does	not properly support observing
	      from Black's point of view, you will see the game	 from  White's
	      point of view.

       Auto Raise Board
	      If this option is	on, whenever a new game	begins,	the chessboard
	      window is	deiconized (if necessary) and raised to	the top	of the
	      stack of windows.

       Auto Save
	      If  this option is true, at the end of every game	XBoard prompts
	      you for a	file name and appends a	record of the game to the file
	      you specify.  Disabled if	the `saveGameFile' command-line	option
	      is set, as in that case all games	are  saved  to	the  specified
	      file.  See Load and Save options.

       Background Observe
	      Setting  this  option  will  make	XBoard suppress	display	of any
	      boards from observed games while you are playing.	 In stead  the
	      last  such  board	 will be remembered, and shown to you when you
	      right-click the board.  This allows you to peek at your bughouse
	      partner's	game when you want, without disturbing your  own  game
	      too much.

       Dual Board
	      Setting  this  option  in	 combination with `Background Observe'
	      will display boards of observed games while you are playing on a
	      second board next	to that	of your	own game.

       Get Move	List
	      If this option is	on, whenever XBoard receives the  first	 board
	      of  a  new ICS game (or a	different game from the	one it is cur-
	      rently displaying), it retrieves the list	of past	moves from the
	      ICS.  You	can then review	 the  moves  with  the	`Forward'  and
	      `Backward'  commands  or	save them with `Save Game'.  You might
	      want to turn off this option if you are observing	several	 blitz
	      games  at	 once, to keep from wasting time and network bandwidth
	      fetching the move	lists over and over.  When you turn  this  op-
	      tion  on from the	menu, XBoard immediately fetches the move list
	      of the current game (if any).

       Quiet Play
	      If this option is	on, XBoard will	 automatically	issue  an  ICS
	      `set shout 0' command whenever you start a game and a `set shout
	      1'  command whenever you finish one.  Thus, you will not be dis-
	      tracted by shouts	from other ICS users while playing.

       Seek Graph
	      Setting this option will cause XBoard to	display	 an  graph  of
	      currently	 active	 seek  ads when	you left-click the board while
	      idle and logged on to an ICS.

       Auto-Refresh Seek Graph
	      In combination with the `Seek Graph' option this will cause  au-
	      tomatic  update  of  the	seek  graph while it is	up.  This only
	      works on FICS and	ICC, and requires a lot	of bandwidth on	a busy
	      server.

       Premove
       Premove White
       Premove Black
       First White Move
       First Black Move
	      If this option is	on while playing a game	on  an	ICS,  you  can
	      register	your  next  planned move before	it is your turn.  Move
	      the piece	with the mouse in the ordinary way, and	 the  starting
	      and ending squares will be highlighted with a special color (red
	      by  default).   When it is your turn, if your registered move is
	      legal, XBoard will send it to ICS	immediately; if	not,  it  will
	      be  ignored  and	you  can make a	different move.	 If you	change
	      your mind	about your premove, either make	a different  move,  or
	      double-click on any piece	to cancel the move entirely.

	      You  can also enter premoves for the first white and black moves
	      of the game.

       ICS Alarm
       ICS Alarm Time
	      When this	option is on, an alarm sound is	played when your clock
	      counts down to the icsAlarmTime in an ICS	 game.	 (By  default,
	      the  time	is 5 seconds, but you can pecify other values with the
	      Alarm Time spin control.)	 For games with	time controls that in-
	      clude an increment, the alarm will sound	each  time  the	 clock
	      counts down to the icsAlarmTime.	By default, the	alarm sound is
	      the  terminal  bell,  but	on some	systems	you can	change it to a
	      sound file using the soundIcsAlarm option; see below.

       Colorize	Messages
	      Ticking this options causes various types	of ICS messages	do  be
	      displayed	 with different	foreground or background colors	in the
	      console.	The colors can be individually selected	for each type,
	      through the accompanying text edits.

       Summons a dialog	where you can set options important for	playing	 auto-
       matic  matches  between	two chess programs (e.g. by using the `Machine
       Match' menu item	in the `Mode' menu).

       Tournament file
	      To run a tournament, XBoard needs	a file to record its progress,
	      so it can	resume the tourney when	it is interrupted.   When  you
	      want  to	conduct	anything more complex than a simple two-player
	      match with the currently loaded engines, (i.e. when you select a
	      list of participants), you must  not  leave  this	 field	blank.
	      When  you	 enter the name	of an existing tournament file,	XBoard
	      will ignore all other input specified in the  dialog,  and  will
	      take  them  from	that  tournament file.	This resumes an	inter-
	      rupted tournament, or adds another XBoard	 agent	playing	 games
	      for  it  to  those that are already doing	so.  Specifying	a not-
	      yet-existing file	will cause XBoard to create it,	 according  to
	      the  tournament  parameters specified in the rest	of the dialog,
	      before it	starts the tournament on OK.  Provided that you	 spec-
	      ify  participants;  without participants no tournament file will
	      be made, but other entered values	(e.g. for the file with	 open-
	      ing  positions)  will  take  effect.  Default: configured	by the
	      `defaultTourneyName' option.

       Sync after round
       Sync after cycle
	      The sync options,	when on, will cause WinBoard to	 refrain  from
	      starting	games  of  the next round or cycle before all games of
	      the previous round or cycle are finished.	 This guarantees  cor-
	      rect  ordering  in the games file, even when multiple XBoard in-
	      stances are concurrently playing games  for  the	same  tourney.
	      Default: sync after cycle, but not after round.

       Select Engine
       Tourney participants
	      With  the	 Select	 Engine	 drop-down list	you can	pick an	engine
	      from your	list of	installed engines in the settings file,	to  be
	      added  to	 the  tournament.  The engines selected	so far will be
	      listed in	the Tourney participants memo.	The latter is a	normal
	      text edit, so you	 can  use  normal  text-editing	 functions  to
	      delete  engines you selected by accident,	or change their	order.
	      Do not type names	yourself there,	because	names that do not  ex-
	      actly  match  one	of the names from the drop-down	list will lead
	      to undefined behavior.

       Tourney type
	      Here you can specify the type of tournament you  want.   XBoards
	      intrinsic	 tournament  manager  support round-robins (type = 0),
	      where  each  participant	plays  every  other  participant,  and
	      (multi-)gauntlets,  where	 one (or a few)	so-called gauntlet en-
	      gines play an independent	set of opponents.  In the latter case,
	      you specify the number of	gauntlet engines.  E.g.	if you	speci-
	      fied  10 engines,	and tourney type = 2, the first	2 engines each
	      play the remaining 8.  A value of	-1 instructs  XBoard  to  play
	      Swiss; for this to work an external pairing engine must be spec-
	      ified through the	`pairingEngine'	option.	 Each Swiss round will
	      be considered a tourney cycle in that case.  Default:0

       Number of tourney cycles
       Default number of Games
	      You  can	specify	 tourneys  where every two opponents play each
	      other multiple times.  Such multiple games can be	 played	 in  a
	      row,  as specified by the	number of games	per pairing, or	by re-
	      peating the entire tournament schedule a number of times (speci-
	      fied by the number of tourney  cycles).	The  total  number  of
	      times two	engine meet will be the	product	of these two.  Default
	      is  1  cycle; the	number of games	per pairing is the same	as the
	      default number of	match games,  stored  in  your	settings  file
	      through the `defaultMatchGames' option.

       Save Tourney Games
	      File where the tournament	games are saved	(duplicate of the item
	      in the `Save Game	Options').

       Game File with Opening Lines
       File with Start Positions
       Game Number
       Position	Number
       Rewind Index after
	      These  items  optionally specify the file	with move sequences or
	      board positions the tourney games	should start from.  The	corre-
	      sponding numbers specify the number of the game or  position  in
	      the  file.  Here a value -1 means	automatic stepping through all
	      games on the file, -2 automatic stepping every two  games.   The
	      Rewind-Index  parameter  causes a	stepping index to reset	to one
	      after reaching a specified value.	 A setting of -2 for the  game
	      number will also be effective in a tournament without specifying
	      a	 game  file,  but  playing from	the GUI	book instead.  In this
	      case the first (odd) games will randomly select from  the	 book,
	      but  the second (even) games will	select the same	moves from the
	      book as the previous game.  (Note	this leads to the same opening
	      only if both engines use the GUI book!)  Default:	No game	or po-
	      sition file will be used.	The default index if such  a  file  is
	      used is 1.

       Disable own engine bools	be default
	      Setting  this  option  reverses the default situation for	use of
	      the GUI opening book in tournaments from what  it	 normally  is,
	      namely  not using	it.  So	unless the engine is installed with an
	      option to	explicitly specify it should  not  use	the  GUI  book
	      (i.e.  `-firstHasOwnBookUCI  true'),  it will be made to use the
	      GUI book.

       Replace Engine
       Upgrade Engine
	      With these two buttons you can alter the participants of an  al-
	      ready  running tournament.  After	opening	the Match Options dia-
	      log on an	XBoard that is playing for the tourney,	you  will  see
	      all  the	tourney	parameters in the dialog fields.  You can then
	      replace the name of one engine by	that of	another	by editing the
	      `participants' field.  (But preserve the order of	 the  others!)
	      Pressing	the  button  after  that  will cause the substitution.
	      With the `Upgrade	Engine'	button the substitution	will only  af-
	      fect  future games.  With	`Replace Engine' all games the substi-
	      tuted engine has already played will be  invalidated,  and  they
	      will  be	replayed  with	the substitute engine.	In this	latter
	      case the engine must not be playing when you do this, but	other-
	      wise there is no need to pause the tournament play for making  a
	      substitution.

       Clone Tourney
	      Pressing	this button after you have specified an	existing tour-
	      nament file will copy the	contents of the	latter to the  dialog,
	      and  then	puts the originally proposed name for the tourney file
	      back.  You can then run a	tourney	with the same parameters (pos-
	      sibly after changing the proposed	name of	the tourney  file  for
	      the new tourney) by pressing 'OK'.

       Summons	a  dialog  where you can set the `autoDisplayComment' and `au-
       toDisplayTags' options,	(which	control	 popups	 when  viewing	loaded
       games),	and specify the	rate at	which loaded games are auto-played, in
       seconds per move	(which can be a	fractional number, like	1.6).  You can
       also set	search criteria	for determining	which games will be  displayed
       in  the Game List for a multi-game file,	and thus be eligible for load-
       ing:

       Elo of strongest	player
       Elo of weakest player
       year   These numeric fields set thresholds (lower limits)  on  the  Elo
	      rating of	the mentioned player, or the date the game was played.
	      Defaults:	0

       Search mode
	      This  setting  determines	which positions	in a game will be con-
	      sidered a	match to the position currently	displayed in the board
	      window when you press the	`find position'	 button	 in  the  Game
	      List.   You  can	search for an exact match, a position that has
	      all shown	material in the	same place, but	 might	contain	 addi-
	      tional  material,	 a  position  that  has	 all Pawns in the same
	      place, but can have the  shown  material	anywhere,  a  position
	      that     can  have  all  shown  material anywhere, or a position
	      that has material	between	certain	limits anywhere.  For the lat-
	      ter you have to place the	material that must be present  in  the
	      four lowest ranks	of the board, and optional additional material
	      in the four highest ranks	of the board.  You can request the op-
	      tional  material to be balanced.	The `narrow' button is similar
	      in fuction to the	`find position'	button,	but only  searches  in
	      the  already selected games, rather than the complete game file,
	      and can thus be used to refine a search based on multiple	crite-
	      ria.

       number of consecutive positions
	      When you are searching by	material, rather  than	for  an	 exact
	      match,  this parameter indicates forhowmany consecutive game po-
	      sitions the same amount of material must be on the board	before
	      it is considered a match.

       Also match reversed colors
       Also match left-right flipped position
	      When  looking  for  matching  positions rather than by material,
	      these settings determine whether mirror images  (in  case	 of  a
	      vertical	flip  in combination with color	reversal) will be also
	      considered a match.  The left-right flipping is only useful  af-
	      ter all castling rights have expired (or in Xiangqi).

       Summons a dialog	where you can specify the files	on which XBoard	should
       automatically save any played or	entered	games, (the `saveGameFile' op-
       tion),  or the final position of	such games (the	`savePositionfile' op-
       tion).  You can also select 'auto-save' without a file name,  in	 which
       case  XBoard  will prompt the user for a	file name after	each game.  In
       ICS mode	you can	limit the auto-saving to your own games	(i.e. suppress
       saving of observed games).  You can also	set the	default	value for  the
       PGN  Event  tag that will be used for each new game you start.  Various
       options for the format of the game can be specified as  well,  such  as
       whether	scores and depths of engine games should be saved as comments,
       and if a	tag with info about the	score with which the engine  came  out
       of  book	 should	be included.  For Chess, always	set the	format to PGN,
       rather than "old	save stye"!

       Pops up a dialog	where you can select the PGN tags that	should	appear
       on the lines in the game	list, and their	order.

       Summons a dialog	where you can specify the sounds that should accompany
       various events that can occur XBoard.  Most events are only relevant to
       ICS play, but the move sound is an important exception.	For each event
       listed in the dialog, you can select a standard sound from a menu.  You
       can also	select a user-supplied sound file, by typing its name into the
       designated  text-edit  field first, and then selecting "Above WAV File"
       from the	menu for the event.  A dummy event has been provided for  try-
       ing  out	 the  sounds with the "play" button next to it.	 The directory
       with standard sounds, and the external program for playing  the	sounds
       can  be	specified  too,	 but  normally	you would not touch these once
       XBoard is properly installed.  When a move sound	other than  'None'  is
       selected,  XBoard  alerts  you by playing that sound after each of your
       opponent's moves	(or after every	move if	you are	observing  a  game  on
       the  Internet  Chess  Server).  The sound is not	played after moves you
       make or moves read from a saved game file.

       Selecting this menu item	causes the current XBoard settings to be writ-
       ten to the settings file, so they will also apply in  future  sessions.
       Note  that  some	 settings  are	'volatile', and	are not	saved, because
       XBoard considers	it too unlikely	that you  want	those  to  apply  next
       time.   In  particular this applies to the Chess	program	names, and all
       options giving information on those Chess programs (such	as  their  di-
       rectory,	if they	have their own opening book, if	they are UCI or	native
       XBoard),	 or  the variant you are playing.  Such	options	would still be
       understood when they appear in the settings file	in case	they were  put
       there  with the aid of a	text editor, but they would disappear from the
       file as soon as you save	the settings.

       Note that XBoard	no longer pays attention to options  values  specified
       in  the	.Xresources  file.   (Specifying key bindings there will still
       work, though.)  To alter	the default of volatile	options, you  can  use
       the  following  method:	Rename	your  ~/.xboardrc  settings  file  (to
       ~/.yboardrc, say), and create a new file	~/.xboardrc, which  only  con-
       tains the options

	   -settingsFile  ~/.yboardrc
	   -saveSettingsFile  ~/.yboardrc

       This will cause your settings to	be saved on ~/.yboardrc	in the future,
       so  that	 ~/.xboardrc  is  no  longer overwritten.  You can then	safely
       specify volatile	options	in ~/.xboardrc,	either	before	or  after  the
       settingsFile  options.	Note  that when	you specify persistent options
       after the settingsFile options in  ~/.xboardrc,	you  will  essentially
       turn  them  into	 volatile options with the specified value as default,
       because that value will overrule	the value  loaded  from	 the  settings
       file (being read	later).

       Setting this option has no immediate effect, but	causes the settings to
       be saved	when you quit XBoard. What happens then	is otherwise identical
       to what happens when you	use select "Save Settings Now",	see there.

   Help	Menu
       Info XBoard
	      Displays the XBoard documentation	in info	format.	 For this fea-
	      ture  to	work,  you must	have the GNU info program installed on
	      your system, and the file	`xboard.info' must either  be  present
	      in  the current working directory, or have been installed	by the
	      `make install' command when you built XBoard.

       Man XBoard
	      Displays the XBoard documentation	in man page format.  The  `F1'
	      key  is  a  keyboard  equivalent.	 For this feature to work, the
	      file `xboard.6' must have	been installed by the  `make  install'
	      command  when  you built XBoard, and the directory it was	placed
	      in must be on the	search path for	your system's `man' command.

       About XBoard
	      Shows the	current	XBoard version number.

   Other Shortcut Keys
       Show Last Move
	      By hitting `Enter' the last move will be re-animated.

       Load Next Game
	      Loads the	next game from the last	game record file  you  loaded.
	      The `Alt+PgDn' key triggers this action.

       Load Previous Game
	      Loads  the  previous  game  from	the  last game record file you
	      loaded.  The `Alt+PgUp' key triggers this	action.	 Not available
	      if the last game was loaded from a pipe.

       Reload Same Game
	      Reloads the last game you	loaded.	 Not  available	 if  the  last
	      game was loaded from a pipe.  Currently no keystroke is assigned
	      to this ReloadGameProc.

       Reload Same Position
	      Reloads the last position	you loaded.  Not available if the last
	      position	was loaded from	a pipe.	 Currently no keystroke	is as-
	      signed to	this ReloadPositionProc.

       In the Xaw build	of XBoard you can add or remove	 shortcut  keys	 using
       the X resources `paneA.translations'.  Here is an example of what could
       go into your `.Xdefaults' file:

	   XBoard*paneA.translations: \
	     Shift<Key>?: MenuItem(Help.About) \n\
	     Ctrl<Key>y: MenuItem(Action.Accept) \n\
	     Ctrl<Key>n: MenuItem(Action.Decline) \n\
	     Ctrl<Key>i: MenuItem(Nothing)

       So  the	key  should always be bound to the action 'MenuItem', with the
       (hierarchical) name of the menu item as argument.  There	are a few  ac-
       tions  available	for which no menu item exists: Binding a key to	`Noth-
       ing' makes it do	nothing, thus removing it as  a	 shortcut  key.	 Other
       such functions that can be bound	to keys	are:

	   AboutGame, DebugProc	(switches the -debug option on or off),
	   LoadNextGame, LoadPrevGame, ReloadGame, ReloadPosition.

OPTIONS
       This section documents the command-line options to XBoard.  You can set
       these options in	two ways: by typing them on the	shell command line you
       use  to	start  XBoard,	or  by	editing	 the  settings	file  (usually
       ~/.xboardrc) to alter the value of the setting that  was	 saved	there.
       Some  of	 the options cannot be changed while XBoard is running;	others
       set the initial state of	items that can be  changed  with  the  Options
       menu.

       Most  of	 the options have both a long name and a short name. To	turn a
       boolean option on or off	from the command line, either  give  its  long
       name  followed  by the value true or false (`-longOptionName true'), or
       give just the short name	to turn	the option on (`-opt'),	or  the	 short
       name preceded by	`x' to turn the	option off (`-xopt'). For options that
       take strings or numbers as values, you can use the long or short	option
       names interchangeably.

   Chess Engine	Options
       -tc or -timeControl minutes[:seconds]
	      Each  player  begins with	his clock set to the `timeControl' pe-
	      riod.  Default: 5	minutes.  The additional options `movesPerSes-
	      sion' and	`timeIncrement'	are mutually exclusive.

       -mps or -movesPerSession	moves
	      When both	players	 have  made  `movesPerSession'	moves,	a  new
	      `timeControl'  period  is	 added	to  both  clocks.  Default: 40
	      moves.

       -inc or -timeIncrement seconds
	      If this option is	specified, `movesPerSession' is	ignored.   In-
	      stead,  after  each  player's  move, `timeIncrement' seconds are
	      added to his clock.  Use `-inc 0'	if you want to require the en-
	      tire game	to be played in	one `timeControl' period, with no  in-
	      crement.	Default: -1, which specifies `movesPerSession' mode.

       -clock/-xclock or -clockMode true/false
	      Determines whether or not	to display the chess clocks. If	clock-
	      Mode is false, the clocks	are not	shown, but the side that is to
	      play  next  is  still  highlighted. Also,	unless `searchTime' is
	      set, the chess engine still keeps	track of the  clock  time  and
	      uses it to determine how fast to make its	moves.

       -st or -searchTime minutes[:seconds]
	      Tells the	chess engine to	spend at most the given	amount of time
	      searching	 for each of its moves.	Without	this option, the chess
	      engine chooses its search	time based on the number of moves  and
	      amount  of  time remaining until the next	time control.  Setting
	      this option also sets clockMode to false.

       -depth or -searchDepth number
	      Tells the	chess engine to	look ahead at most the given number of
	      moves when searching for a move to make.	Without	 this  option,
	      the chess	engine chooses its search depth	based on the number of
	      moves  and amount	of time	remaining until	the next time control.
	      With the option, the engine will cut off its search early	if  it
	      reaches the specified depth.

       -firstNPS number
       -secondNPS number
	      Tells the	chess engine to	use an internal	time standard based on
	      its  node	count, rather then wall-clock time, to make its	timing
	      decisions.  The time in virtual seconds should  be  obtained  by
	      dividing	the node count through the given number, like the num-
	      ber was a	rate in	nodes per  second.   Xboard  will  manage  the
	      clocks  in  accordance with this,	relying	on the number of nodes
	      reported by the engine in	its thinking output. If	the given num-
	      ber equals zero, it can obviously	not be used to	convert	 nodes
	      to  seconds,  and	 the  time  reported  by the engine is used to
	      decrement	the XBoard clock in stead. The engine is  supposed  to
	      report in	CPU time it uses, rather than wall-clock time, in this
	      mode.  This  option can provide fairer conditions	for engine-en-
	      gine matches on heavily loaded machines, or with very fast games
	      (where the wall clock is too inaccurate).	  `showThinking'  must
	      be  on for this option to	work. Default: -1 (off).  Not many en-
	      gines might support this yet!

       -firstTimeOdds factor
       -secondTimeOdds factor
	      Reduces the time given to	the mentioned engine by	the given fac-
	      tor.  If pondering is off, the effect is indistinguishable  from
	      what would happen	if the engine was running on an	n-times	slower
	      machine. Default:	1.

       -timeOddsMode mode
	      This  option  determines	how the	case is	handled	where both en-
	      gines have a time-odds handicap.	If  mode=1,  the  engine  that
	      gets  the	 most time will	always get the nominal time, as	speci-
	      fied by the time-control options,	and  its  opponent's  time  is
	      renormalized  accordingly.   If  mode=0,	both play with reduced
	      time. Default: 0.

       -hideThinkingFromHuman true/false
	      Controls the Hide	Thinking option. See  Options  Menu.  Default:
	      true.   (Replaces	 the Show-Thinking option of older xboard ver-
	      sions.)

       -thinking/-xthinking or -showThinking true/false
	      Forces the engine	to send	thinking output	to xboard.  Used to be
	      the only way to control if  thinking  output  was	 displayed  in
	      older  xboard versions, but as the thinking output in xboard 4.3
	      is also used for several other purposes  (adjudication,  storing
	      in  PGN file) the	display	of it is now controlled	by the new op-
	      tion Hide	Thinking. See Options Menu. Default: false.   (But  if
	      xboard  needs the	thinking output	for some purpose, it makes the
	      engine send it despite the setting of this option.)

       -ponder/-xponder	or -ponderNextMove true/false
	      Sets the Ponder Next Move	menu option.  See  Options  Menu.  De-
	      fault: true.

       -smpCores number
	      Specifies	the maximum number of CPUs an SMP engine is allowed to
	      use.   Only  works for engines that support the XBoard/WinBoard-
	      protocol cores feature.

       -mg or -matchGames n
	      Automatically runs an n-game match between  two  chess  engines,
	      with  alternating	 colors.   If the `loadGameFile' or `loadPosi-
	      tionFile'	option is set, XBoard starts each game with the	 given
	      opening  moves or	the given position; otherwise, the games start
	      with the standard	initial	chess position.	 If the	`saveGameFile'
	      option is	set, a move record for the match is  appended  to  the
	      specified	file. If the `savePositionFile'	option is set, the fi-
	      nal  position  reached  in each game of the match	is appended to
	      the specified file. When the match is over, XBoard displays  the
	      match score and exits. Default: 0	(do not	run a match).

       -mm/-xmm	or -matchMode true/false
	      Setting	`matchMode'   to   true	  is   equivalent  to  setting
	      `matchGames' to 1.

       -sameColorGames n
	      Automatically runs an n-game match between  two  chess  engines,
	      without  alternating  colors.  Otherwise the same	applies	as for
	      the `-matchGames'	option,	over which it takes precedence if both
	      are specified. (See there.)  Default: 0 (do not run a match).

       -fcp or -firstChessProgram program
	      Name of first chess engine.  Default: `Fairy-Max'.

       -scp or -secondChessProgram program
	      Name of second chess engine, if needed.  A second	 chess	engine
	      is  started only in Two Machines (match) mode.  Default: `Fairy-
	      Max'.

       -fe or -firstEngine nickname
	      This is an alternative to	the `fcp' option  for  specifying  the
	      first  engine,  for  engines that	were already configured	(using
	      the `Load	Engine'	dialog)	in XBoard's settings  file.   It  will
	      not  only	retrieve the real name of the engine, but also all op-
	      tions configured with it.	 (E.g. if it is	UCI, whether it	should
	      use book.)

       -se or -secondEngine nickname
	      As `fe', but for the second engine.

       -fb/-xfb	or -firstPlaysBlack true/false
	      In games between two chess engines,  firstChessProgram  normally
	      plays  white.   If  this option is true, firstChessProgram plays
	      black.  In a multi-game match, this option  affects  the	colors
	      only  for	 the  first  game;  they still alternate in subsequent
	      games.

       -fh or -firstHost host
       -sh or -secondHost host
	      Hosts on which the chess engines are to  run.  The  default  for
	      each  is	`localhost'.  If you specify another host, XBoard uses
	      `rsh' to run the chess engine there. (You	can substitute a  dif-
	      ferent  remote shell program for rsh using the `remoteShell' op-
	      tion described below.)

       -fd or -firstDirectory dir
       -sd or -secondDirectory dir
	      Working directories in which the chess engines are  to  be  run.
	      The  default  is	"", which means	to run the chess engine	in the
	      same working directory as	XBoard itself.	(See the CHESSDIR  en-
	      vironment	 variable.)   This  option  is effective only when the
	      chess engine is being run	on the local host; it does not work if
	      the engine is run	remotely using the -fh or -sh option.

       -initString string or -firstInitString
       -secondInitString string
	      The string that is sent to initialize each chess	engine	for  a
	      new game.	 Default:

		  new
		  random

	      Setting this option from the command line	is tricky, because you
	      must  type in real newline characters, including one at the very
	      end.  In most shells you can do this by entering a `\' character
	      followed by a newline.  Using the	character sequence `\n'	in the
	      string should work too, though.

	      If you change this option, don't remove the `new'	command; it is
	      required by all chess engines to start a new game.

	      You can remove the `random' command if you  like;	 including  it
	      causes  GNU  Chess 4 to randomize	its move selection slightly so
	      that it doesn't play the same moves in every game.  Even without
	      `random',	GNU Chess 4 randomizes its choice of  moves  from  its
	      opening  book.  Many other chess engines ignore this command en-
	      tirely and always	(or never) randomize.

	      You can also try adding other commands to	 the  initString;  see
	      the documentation	of the chess engine you	are using for details.

       -firstComputerString string
       -secondComputerString string
	      The  string  that	is sent	to the chess engine if its opponent is
	      another computer chess engine.   The  default  is	 `computer\n'.
	      Probably	the  only useful alternative is	the empty string (`'),
	      which keeps the engine from knowing that it is  playing  another
	      computer.

       -reuse/-xreuse or -reuseFirst true/false
       -reuse2/-xreuse2	or -reuseSecond	true/false
	      If  the option is	false, XBoard kills off	the chess engine after
	      every game and starts it again for the next game.	 If the	option
	      is true (the default), XBoard starts the chess engine only  once
	      and  uses	 it repeatedly to play multiple	games.	Some old chess
	      engines may not work properly when reuse is turned on, but  oth-
	      erwise games will	start faster if	it is left on.

       -firstProtocolVersion version-number
       -secondProtocolVersion version-number
	      This option specifies which version of the chess engine communi-
	      cation  protocol	to  use.  By default, version-number is	2.  In
	      version 1, the "protover"	command	is not	sent  to  the  engine;
	      since  version 1 is a subset of version 2, nothing else changes.
	      Other values for version-number are not supported.

       -firstScoreAbs true/false
       -secondScoreAbs true/false
	      If this option is	set, the score reported	by the engine is taken
	      to be that in favor of white, even when the engine plays	black.
	      Important	 when  XBoard  uses the	score for adjudications, or in
	      PGN reporting.

       -niceEngines priority
	      This option allows you to	 lower	the  priority  of  the	engine
	      processes,  so that the generally	insatiable hunger for CPU time
	      of chess engines does not	interfere so much with	smooth	opera-
	      tion  of	XBoard	(or the	rest of	your system).  Negative	values
	      could increase the engine	priority, which	is not recommended.

       -firstOptions string
       -secondOptions string
	      The given	string is a comma-separated list of  (option  name=op-
	      tion  value)  pairs,  like  the  following  example: "style=Kar-
	      pov,blunder rate=0".  If an option announced by  the  engine  at
	      startup through the feature commands of the XBoard/WinBoard pro-
	      tocol  matches one of the	option names (i.e. "style" or "blunder
	      rate"), it would be set to the given value (i.e. "Karpov"	or  0)
	      through a	corresponding option command to	the engine.  This pro-
	      vided  that  the	type of	the value (text	or numeric) matches as
	      well.

       -firstNeedsNoncompliantFEN string
       -secondNeedsNoncompliantFEN string
	      The castling rights and e.p. fields of the FEN sent to the  men-
	      tioned  engine with the setboard command will be replaced	by the
	      given string. This can for instance be used to run engines  that
	      do not understand	Chess960 FENs in variant fischerandom, to make
	      them  at	least understand the opening position, through setting
	      the string to "KQkq -". (Note you	also have  to  give  the  e.p.
	      field!)  Other possible applications are to provide work-arounds
	      for  engines  that want to see castling and e.p. fields in vari-
	      ants that	do not have castling or	e.p.  (shatranj, courier,  xi-
	      angqi,  shogi) so	that XBoard would normally omit	them (string =
	      "- -"), or to add	variant-specific fields	that are not yet  sup-
	      ported  by  XBoard  (e.g.	 to  indicate  the number of checks in
	      3check).

       -shuffleOpenings
	      Forces shuffling of the opening setup in variants	that  normally
	      have  a  fixed  initial  position.  Shufflings are symmetric for
	      black and	white, and exempt King and Rooks in variants with nor-
	      mal castling.  Remains in	force until a new variant is selected.

   UCI + WB Engine Settings
       -fUCI or	-firstIsUCI true/false
       -sUCI or	-secondIsUCI true/false
	      Indicates	if the mentioned engine	executable file	is an UCI  en-
	      gine,  and  should  be  run with the aid of the Polyglot adapter
	      rather than directly.  Xboard will then pass the other  UCI  op-
	      tions and	engine name to Polyglot	on its command line, according
	      to the option `adapterCommand'.

       -fUCCI
       -sUCCI
       -fUSI
       -sUSI  Options  similar	to `fUCI' and `sUCI', except that they use the
	      indicated	engine with the	protocol adapter specified in the `ux-
	      iAdapter'	option.	 This can then be configured  for  running  an
	      UCCI or USI adapter, as the need arises.

       -adapterCommand string
	      The  string conatins the command that should be issued by	XBoard
	      to start an engine that is accompanied  by  the  `fUCI'  option.
	      Any  identifier  following  a  percent sign in the command (e.g.
	      %fcp) will be considered the name	of an XBoard  option,  and  be
	      replaced	by  the	value of that option at	the time the engine is
	      started.	For starting the second	engine,	 any  leading  "f"  or
	      "first"  in  the	option	name  will first be replaced by	"s" or
	      "second",	before finding its value.  Default:  'polyglot	-noini
	      -ec "%fcp" -ed "%fd"'

       -uxiAdapter string
	      Similar to `adapterCommand', but used for	engines	accompanied by
	      the  `fUCCI' or `fUSI' option, so	you can	configure XBoard to be
	      ready to handle more than	one flavor  of	non-native  protocols.
	      Default: ""

       -polyglotDir filename
	      Gives  the  name	of the directory in which the Polyglot adapter
	      for UCI engines resides.	Default: "".

       -usePolyglotBook	true/false
	      Specifies	if the Polyglot	book should be used as GUI book.

       -polyglotBook filename
	      Gives the	filename of the	opening	book.  The book	is  only  used
	      when the `usePolyglotBook' option	is set to true,	and the	option
	      `firstHasOwnBookUCI'  or	`secondHasOwnBookUCI'  applying	to the
	      engine is	set to false.  The engine will be kept in  force  mode
	      as  long as the current position is in book, and XBoard will se-
	      lect the book moves for it. Default: "".

       -fNoOwnBookUCI or -firstXBook or	-firstHasOwnBookUCI true/false
       -sNoOwnBookUCI or -secondXBook or -secondHasOwnBookUCI true/false
	      Indicates	if the mentioned engine	has its	own  opening  book  it
	      should  play  from,  rather than using the external book through
	      XBoard.  Default:	depends	on setting of the option  `discourage-
	      OwnBooks'.

       -discourageOwnBooks true/false
	      When  set,  newly	 loaded	engines	will be	assumed	to use the GUI
	      book, unless they	 explicitly  specify  differently.   Otherwise
	      they will	be assumed to not use the GUI book, unless the specify
	      differently (e.g.	with `firstXBook').  Default: false.

       -bookDepth n
	      Limits  the  use	of  the	 GUI book to the first n moves of each
	      side.  Default: 12.

       -bookVariation n
	      A	value n	from 0 to 100 tunes the	choice of moves	from  the  GUI
	      books from totally random	to best-only. Default: 50

       -mcBookMode
	      When this	volatile option	is specified, the probing algorithm of
	      the  GUI	book is	altered	to always select the move that is most
	      under-represented	based on its performance.  When	all moves  are
	      played  in  approximately	the right proportion, a	book miss will
	      be reported, to give the engine opportunity  to  explore	a  new
	      move.  In	addition score of the moves will be kept track of dur-
	      ing  the	session	in a book buffer.  By playing an match in this
	      mode, a book will	be built from scratch.	The  only  output  are
	      the saved	games, which can be converted to an actual book	later,
	      with the `Save Games as Book' command.  This command can also be
	      used  to	pre-fill the book buffer before	adding new games based
	      on the probing algorithm.

       -fn string or -firstPgnName string
       -sn string or -secondPgnName string
	      Indicates	the name that should be	used for  the  engine  in  PGN
	      tags  of	engine-engine games.  Intended to allow	you to install
	      verions of the same engine with different	 settings,  and	 still
	      distinguish them.	 Default: "".

       -defaultHashSize	n
	      Sets  the	 size  of the hash table to n MegaBytes. Together with
	      the EGTB cache size this number is also used  to	calculate  the
	      memory  setting  of XBoard/WinBoard engines, for those that sup-
	      port the memory feature of  the  XBoard/WinBoard	protocol.  De-
	      fault: 64.

       -defaultCacheSizeEGTB n
	      Sets  the	 size  of the EGTB cache to n MegaBytes. Together with
	      the hash-table size this number is also used  to	calculate  the
	      memory  setting  of XBoard/WinBoard engines, for those that sup-
	      port the memory feature of  the  XBoard/WinBoard	protocol.  De-
	      fault: 4.

       -defaultPathEGTB	filename
	      Gives  the  name	of the directory where the end-game tablebases
	      are   installed,	 for   UCI   engines.	 Default:    "/usr/lo-
	      cal/share/egtb".

       -egtFormats string
	      Specifies	 which	end-game tables	are installed on the computer,
	      and where.  The argument is a  comma-separated  list  of	format
	      specifications,  each specification consisting of	a format name,
	      a	colon, and  a  directory  path	name,  e.g.  "nalimov:/usr/lo-
	      cal/share/egtb".	If the name part matches that of a format that
	      the engine requests through a feature command, xboard will relay
	      the  path	 name for this format to the engine through an egtpath
	      command.	One egtpath command for	each matching format  will  be
	      sent.   Popular  formats are "nalimov" DTM tablebases and	"scor-
	      pio" bitbases.  Default: "".

       -firstChessProgramNames={names}
	      This option lets you customize the drop-down list	of  chess  en-
	      gine names that appears in the `Load Engine' and `Match Options'
	      dialog.	It  consists of	a list of strings, one per line.  When
	      an engine	is loaded, the corresponding  line  is	prefixed  with
	      "-fcp  ",	 and  processed	 like it appeared on the command line.
	      That means that apart from the engine command,  it  can  contain
	      any  list	 of  XBoard  options you want to use with this engine.
	      (Commonly	used options here are -fd, -firstXBook,	-fUCI,	-vari-
	      ant.)

	      The  value of this option	is gradually built as you load new en-
	      gines through the	`Load Engine' menu dialog, with	`Add to	 list'
	      ticked.  To change it, edit your settings	file with a plain text
	      editor.

   Tournament options
       -defaultMatchGames n
	      Sets  the	 number	of games that will be used for a match between
	      two engines started from the menu	to n. Also used	as  games  per
	      pairing in other tournament formats.  Default: 10.

       -matchPause n
	      Specifies	the duration of	the pause between two games of a match
	      or tournament between engines as n milliseconds.	Especially en-
	      gines that do not	support	ping need this option, to prevent that
	      the  move	they are thinking on when an opponent unexpectedly re-
	      signs will be counted for	the next  game,	 (leading  to  illegal
	      moves there).  Default: 10000.

       -tf filename or -tourneyFile filename
	      Specifies	 the name of the tournament file used in match mode to
	      conduct a	multi-player tournament.  This file is a special  set-
	      tings  file, which stores	the description	of the tournament (in-
	      cluding progress info), through normal options  (e.g.  for  time
	      control,	load and save files), and through some special-purpose
	      options listed below.

       -tt number or -tourneyType number
	      Specifies	 the  type  of	tourney:  0  =	round-robin,   N>0   =
	      (multi-)gauntlet with N gauntlet engines,	-1 = Swiss through ex-
	      ternal  pairing  engine.	Volatile option, but stored in tourney
	      file.

       -cy number or -tourneyCycles number
	      Specifies	the number of cycles in	a tourney.   Volatile  option,
	      but stored in tourney file.

       -participants list
	      The  list	is a multi-line	text string that specifies engines oc-
	      curring in the `firstChesProgramNames' list in the settings file
	      by their (implied	or explicitly given) nicknames,	one engine per
	      line.  The mentioned engines will	play in	the tourney.  Volatile
	      option, but stored in tourney file.

       -results	string
	      The string of +=-	characters lists  the  result  of  all	played
	      games  in	 a  toruney.  Games currently playing are listed as *,
	      while a space indicates a	game that is not yet played or playing
	      .	 Volatile option, but stored in	tourney	file.

       -defaultTourneyName string
	      Specifies	the name of the	tournament file	XBoard should  propose
	      when  the	`Match Options'	dialog is opened.  Any %y, %M, %d, %h,
	      %m, %s in	the string are replaced	by the	current	 year,	month,
	      day  of  the month, hours, minutes, seconds of the current time,
	      respectively, as two-digit number.  A %Y would  be  replaced  by
	      the year as 4-digit number. Default: empty string.

       -pairingEngine filename
	      Specifies	 the  external program to be used to pair the partici-
	      pants in Swiss tourneys.	XBoard communicates with  this	engine
	      in the same way as it communicates with Chess engines.  The only
	      commands sent to the pairing engine are results N	string,	(where
	      N	 is  the number	of participants, and string the	results	so far
	      in the format of the results option), and	pairing	N, (where N is
	      the number of the	tourney	game).	To the latter the pairing  en-
	      gine  should answer with A-B, where A and	B are participant num-
	      bers (in the range 1-N).	(There should be no reply to  the  re-
	      sults command.) Default: empty string.

       -afterGame string
       -afterTourney string
	      When  non-empty,	the  given string will be executed as a	system
	      command after each  tournament  game,  orafterthe	 tourney  com-
	      pletes, respectively.  This can be used, for example, to autmat-
	      ically  run  a cross-table generator on the PGN file where games
	      are saved, to update the tourney standings.  Default: ""

       -syncAfterRound true/false
       -syncAfterCycle true/false
	      Controls whether different instances of XBoard concurrently run-
	      ning the same tournament will wait for  each  other.   Defaults:
	      sync after cycle,	but not	after round.

       -seedBase number
	      Used  to store the seed of the pseudo-random-number generator in
	      the tourneyFile, so that separate	instances of XBoard working on
	      the same tourney can take	coherent 'random' decisions,  such  as
	      picking an opening for a given game number.

   ICS options
       -ics/-xics or -internetChessServerMode true/false
	      Connect  with an Internet	Chess Server to	play chess against its
	      other users, observe games they are  playing,  or	 review	 games
	      that have	recently finished. Default: false.

       -icshost	or -internetChessServerHost host
	      The Internet host	name or	address	of the chess server to connect
	      to  when in ICS mode. Default: `chessclub.com'.  Another popular
	      chess server to try is `freechess.org'.  If  your	 site  doesn't
	      have a working Internet name server, try specifying the host ad-
	      dress in numeric form.  You may also need	to specify the numeric
	      address  when using the icshelper	option with timestamp or time-
	      seal (see	below).

       -icsport	or -internetChessServerPort port-number
	      The port number to use when connecting to	a chess	server in  ICS
	      mode. Default: 5000.

       -icshelper or -internetChessServerHelper	prog-name
	      An  external  helper  program used to communicate	with the chess
	      server.  You would set it	to "timestamp" for ICC (chessclub.com)
	      or "timeseal" for	FICS (freechess.org), after obtaining the cor-
	      rect version of timestamp	or timeseal for	 your  computer.   See
	      "help  timestamp"	 on ICC	and "help timeseal" on FICS.  This op-
	      tion is shorthand	for `-useTelnet	-telnetProgram program'.

       -telnet/-xtelnet	or -useTelnet true/false
	      This option is poorly named; it should be	called useHelper.   If
	      set  to  true, it	instructs XBoard to run	an external program to
	      communicate with the Internet Chess Server.  The program to  use
	      is  given	 by  the telnetProgram option.	If the option is false
	      (the default), XBoard opens a TCP	socket and uses	its own	inter-
	      nal implementation of the	telnet protocol	 to  communicate  with
	      the ICS. See Firewalls.

       -telnetProgram prog-name
	      This  option is poorly named; it should be called	helperProgram.
	      It gives the name	of the telnet program  to  be  used  with  the
	      `gateway'	and `useTelnet'	options.  The default is `telnet'. The
	      telnet   program	 is   invoked	with   the  value  of  `inter-
	      netChessServerHost' as its first argument	and the	value of  `in-
	      ternetChessServerPort' as	its second argument.  See Firewalls.

       -gateway	host-name
	      If  this	option is set to a host	name, XBoard communicates with
	      the Internet Chess Server	by using `rsh' to run the  `telnetPro-
	      gram'  on	 the given host, instead of using its own internal im-
	      plementation of the telnet protocol. You can substitute  a  dif-
	      ferent  remote  shell  program for `rsh' using the `remoteShell'
	      option described below.  See Firewalls.

       -internetChessServerCommPort or -icscomm	dev-name
	      If this option is	set, XBoard communicates with the ICS  through
	      the  given character I/O device instead of opening a TCP connec-
	      tion.  Use this option if	your system does not have any kind  of
	      Internet	connection itself (not even a SLIP or PPP connection),
	      but you do have dial-up access (or a hardwired terminal line) to
	      an Internet service provider from	which you can  telnet  to  the
	      ICS.

	      The  support  for	 this option in	XBoard is minimal. You need to
	      set all communication parameters and tty modes before you	 enter
	      XBoard.

	      Use a script something like this:

		  stty raw -echo 9600 >	/dev/tty00
		  xboard -ics -icscomm /dev/tty00

	      Here  replace `/dev/tty00' with the name of the device that your
	      modem is connected to. You might have to add  several  more  op-
	      tions  to	 these stty commands. See the man pages	for `stty' and
	      `tty' if you run into problems. Also, on many systems stty works
	      on its standard input instead of standard	output,	so you have to
	      use `<' instead of `>'.

	      If you are using linux, try  starting  with  the	script	below.
	      Change it	as necessary for your installation.

		  #!/bin/sh -f
		  # configure modem and	fire up	XBoard

		  # configure modem
		  (
		    stty 2400 ;	stty raw ; stty	hupcl ;	stty -clocal
		    stty ignbrk	; stty ignpar ;	stty ixon ; stty ixoff
		    stty -iexten ; stty	-echo
		  ) < /dev/modem
		  xboard -ics -icscomm /dev/modem

	      After  you  start	XBoard in this way, type whatever commands are
	      necessary	to dial	out to your  Internet  provider	 and  log  in.
	      Then  telnet  to ICS, using a command like `telnet chessclub.com
	      5000'.  Important: See the paragraph below about	extra  echoes,
	      in Limitations.

       -icslogon or -internetChessServerLogonScript file-name
	      Whenever	XBoard	connects  to  the Internet Chess Server, if it
	      finds a file with	the name given in this option,	it  feeds  the
	      file's contents to the ICS as commands. The default file name is
	      `.icsrc'.	  Usually  the	first  two lines of the	file should be
	      your ICS user name and password.	The  file  can	be  either  in
	      $CHESSDIR, in XBoard's working directory if CHESSDIR is not set,
	      or in your home directory.

       -msLoginDelay delay
	      If  you  experience  trouble logging on to an ICS	when using the
	      `-icslogon' option, inserting some delay between	characters  of
	      the logon	script may help. This option adds `delay' milliseconds
	      of delay between characters. Good	values to try are 100 and 250.

       -icsinput/-xicsinput or -internetChessServerInputBox true/false
	      Sets  the	 ICS  Input  Box  menu option. See Mode	Menu. Default:
	      false.

       -autocomm/-xautocomm or -autoComment true/false
	      Sets the Auto Comment menu option. See  Options  Menu.  Default:
	      false.

       -autoflag/-xautoflag or -autoCallFlag true/false
	      Sets  the	 Auto  Flag  menu  option.  See	Options	Menu. Default:
	      false.

       -autobs/-xautobs	or -autoObserve	true/false
	      Sets the Auto Observe menu option.  See Options  Menu.  Default:
	      false.

       -autoKibitz
	      Enables  kibitzing  of  the engines last thinking	output (depth,
	      score, time, speed, PV) before it	moved to  the  ICS,  in	 zippy
	      mode. The	option `showThinking' must be switched on for this op-
	      tion to work.  Also diverts similar kibitz information of	an op-
	      ponent engine that is playing you	through	the ICS	to the engine-
	      output window, as	if the engine was playing locally.

       -seekGraph true/false or	-sg
	      Enables  displaying of the seek graph by left-clicking the board
	      when you are logged on to	an ICS and currently idle.   The  seek
	      graph show all players currently seeking games on	the ICS, plot-
	      ted  according  to their rating and the time control of the game
	      they seek, in three different colors  (for  rated,  unrated  and
	      wild  games).   Computer ads are displayed as squares, human ads
	      are dots.	 Default: false.

       -autoRefresh true/false
	      Enables automatic	updating of the	seek graph, by having the  ICS
	      send  a running update of	all newly placed and removed seek ads.
	      This consumes a substantial amount of  communication  bandwidth,
	      and is only supported for	FICS and ICC.  Default:	false.

       -backgroundObserve true/false
	      When  true, boards sent to you by	the ICS	from other games while
	      you are playing (e.g. because you	are observing them)  will  not
	      be automatically displayed.  Only	a summary of time left and ma-
	      terial  of  both	players	will appear in the message field above
	      the board.  XBoard will remember the last	board it has  received
	      this  way,  and will display it in stead of the position in your
	      own game when you	press the right	mouse button.  No other	infor-
	      mation is	stored on such games observed in the  background;  you
	      cannot  save such	a game later, or step through its moves.  This
	      feature is provided solely for the benefit of bughouse  players,
	      to  enable them to peek at their partner's game without the need
	      to logon twice.  Default:	false.

       -dualBoard true/false
	      In combination with -backgroundObserve true,  this  option  will
	      display  the board of the	background game	side by	side with that
	      of your own game,	so you can have	it in view  permanently.   Any
	      board  or	 holdings info coming in will be displayed on the sec-
	      ondary board immediately.	 This feature  is  still  experimental
	      and  largely  unfinished.	 There is no animation or highlighting
	      of moves on the secondary	board.	Default: false.

       -disguisePromotedPieces true/false
	      When set promoted	Pawns  in  crazyhouse/bughouse	are  displayed
	      identical	 to  primordial	 pieces	 of the	same type, rather than
	      distinguishable.	Default: true.

       -moves/-xmoves or -getMoveList true/false
	      Sets the Get Move	List menu option.  See Options Menu.  Default:
	      true.

       -alarm/-xalarm or -icsAlarm true/false
	      Sets the ICS Alarm menu  option.	 See  Options  Menu.  Default:
	      true.

       -icsAlarmTime ms
	      Sets  the	 time  in  milliseconds	for the	ICS Alarm menu option.
	      See Options Menu.	Default: 5000.

       lowTimeWarning true/false
	      Controls a color change of the board as a	warning	your  time  is
	      running out.  See	Options	Menu. Default: false.

       -pre/-xpre or -premove true/false
	      Sets the Premove menu option. See	Options	Menu. Default: true.

       -prewhite/-xprewhite or -premoveWhite
       -preblack/-xpreblack or -premoveBlack
       -premoveWhiteText string
       -premoveBlackText string
	      Set  the	menu  options for specifying the first move for	either
	      color.  See Options Menu.	Defaults: false	and empty strings,  so
	      no pre-moves.

       -quiet/-xquiet or -quietPlay true/false
	      Sets  the	 Quiet	Play menu option.  See Options Menu.  Default:
	      false.

       -colorizeMessages or -colorize/-xcolorize
	      Setting colorizeMessages to true tells XBoard  to	 colorize  the
	      messages received	from the ICS.  Colorization works only if your
	      xterm  supports ISO 6429 escape sequences	for changing text col-
	      ors.  Default: true.

       -colorShout foreground,background,bold
       -colorSShout foreground,background,bold
       -colorCShout foreground,background,bold
       -colorChannel1 foreground,background,bold
       -colorChannel foreground,background,bold
       -colorKibitz foreground,background,bold
       -colorTell foreground,background,bold
       -colorChallege foreground,background,bold
       -colorRequest foreground,background,bold
       -colorSeek foreground,background,bold
       -colorNormal foreground,background,bold
	      These options set	the colors used	when colorizing	ICS  messages.
	      All  ICS	messages  are  grouped	into  one of these categories:
	      shout, sshout, channel 1,	other  channel,	 kibitz,  tell,	 chal-
	      lenge, request (including	abort, adjourn,	draw, pause, and take-
	      back), or	normal (all other messages).

	      Each foreground or background argument can be one	of the follow-
	      ing:  black,  red, green,	yellow,	blue, magenta, cyan, white, or
	      default.	Here ``default'' means the default foreground or back-
	      ground color of your xterm.  Bold	can be 1 or 0.	If  background
	      is omitted, ``default'' is assumed; if bold is omitted, 0	is as-
	      sumed.

       -soundProgram progname
	      If  this	option	is  set	to a sound-playing program that	is in-
	      stalled and working on your system, XBoard can play sound	 files
	      when  certain  events  occur, listed below.  The default program
	      name is "play".  If any of the sound options is set to "$",  the
	      event rings the terminal bell by sending a ^G character to stan-
	      dard  output,  instead of	playing	a sound	file.  If an option is
	      set to the empty string "", no sound is played for that event.

       -soundDirectory directoryname
	      This option specifies where XBoard will look  for	 sound	files,
	      when these are not given as an absolute path name.

       -soundShout filename
       -soundSShout filename
       -soundCShout filename
       -soundChannel filename
       -soundChannel1 filename
       -soundKibitz filename
       -soundTell filename
       -soundChallenge filename
       -soundRequest filename
       -soundSeek filename
	      These  sounds  are triggered in the same way as the colorization
	      events described above.  They all	default	to "", no sound.  They
	      are played only if the colorizeMessages is on.  CShout  is  syn-
	      onymous with SShout.

       -soundMove filename
	      This sound is used by the	Move Sound menu	option.	 Default: "$".

       -soundIcsAlarm filename
	      This sound is used by the	ICS Alarm menu option.	Default: "$".

       -soundIcsWin filename
	      This  sound is played when you win an ICS	game.  Default:	"" (no
	      sound).

       -soundIcsLoss filename
	      This sound is played when	you lose an ICS	game.  Default:	"" (no
	      sound).

       -soundIcsDraw filename
	      This sound is played when	you draw an ICS	game.  Default:	"" (no
	      sound).

       -soundIcsUnfinished filename
	      This sound is played when	an ICS game that you are participating
	      in is aborted, adjourned,	or otherwise ends inconclusively.  De-
	      fault: ""	(no sound).

   Load	and Save options
       -lgf or -loadGameFile file
       -lgi or -loadGameIndex index
	      If the `loadGameFile' option is set, XBoard loads	the  specified
	      game  file  at startup. The file name `-'	specifies the standard
	      input. If	there is more than one game in the file,  XBoard  pops
	      up  a  menu  of the available games, with	entries	based on their
	      PGN (Portable Game Notation) tags.  If the  `loadGameIndex'  op-
	      tion  is	set  to	 `N', the menu is suppressed and the N th game
	      found in the file	is loaded immediately.	The menu is also  sup-
	      pressed if `matchMode' is	enabled	or if the game file is a pipe;
	      in these cases the first game in the file	is loaded immediately.
	      Use  the `pxboard' shell script provided with XBoard if you want
	      to pipe in files containing multiple games  and  still  see  the
	      menu.  If	the loadGameIndex specifies an index -1, this triggers
	      auto-increment of	the index in `matchMode', which	means that af-
	      ter  every  game	the  index is incremented by one, causing each
	      game of the match	to be played from the next game	in  the	 file.
	      Similarly,  specifying  an index value of	-2 causes the index to
	      be incremented every two games, so that each game	in the file is
	      used twice (with reversed	 colors).   The	 `rewindIndex'	option
	      causes  the index	to be reset to the first game of the file when
	      it has reached a specified value.

       -rewindIndex n
	      Causes a position	file or	game file to be	rewound	to its	begin-
	      ning  after  n positions or games	in auto-increment `matchMode'.
	      See `loadPositionIndex' and  `loadGameIndex'.   default:	0  (no
	      rewind).

       -td or -timeDelay seconds
	      Time  delay  between moves during	`Load Game' or `Analyze	File'.
	      Fractional seconds are allowed; try `-td	0.4'.	A  time	 delay
	      value of -1 tells	XBoard not to step through game	files automat-
	      ically. Default: 1 second.

       -sgf or -saveGameFile file
	      If  this	option	is  set, XBoard	appends	a record of every game
	      played to	the specified file. The	file name  `-'	specifies  the
	      standard output.

       -autosave/-xautosave or -autoSaveGames true/false
	      Sets  the	 Auto  Save  menu option.  See Options Menu.  Default:
	      false.  Ignored if `saveGameFile'	is set.

       -onlyOwnGames true/false
	      Suppresses auto-saving of	ICS observed games. Default: false.

       -lpf or -loadPositionFile file
       -lpi or -loadPositionIndex index
	      If the `loadPositionFile'	option is set, XBoard loads the	speci-
	      fied position file at startup. The file name `-'	specifies  the
	      standard	input.	If the `loadPositionIndex' option is set to N,
	      the Nth position found in	the  file  is  loaded;	otherwise  the
	      first position is	loaded.	 If the	loadPositionIndex specifies an
	      index  -1,  this triggers	auto-increment of the index in `match-
	      Mode', which means that after every game	the  index  is	incre-
	      mented  by one, causing each game	of the match to	be played from
	      the next position	in the file. Similarly,	 specifying  an	 index
	      value  of	-2 causes the index to be incremented every two	games,
	      so that each position in the file	is used	twice  (with  the  en-
	      gines playing opposite colors).  The `rewindIndex' option	causes
	      the  index to be reset to	the first position of the file when it
	      has reached a specified value.

       -spf or -savePositionFile file
	      If this option is	set, XBoard appends the	final position reached
	      in every game played to the specified file. The  file  name  `-'
	      specifies	the standard output.

       -pgnExtendedInfo	true/false
	      If  this	option is set, XBoard saves depth, score and time used
	      for each move that the engine found as  a	 comment  in  the  PGN
	      file.  Default: false.

       -pgnEventHeader string
	      Sets  the	 name  used  in	the PGN	event tag to string.  Default:
	      "Computer	Chess Game".

       -pgnNumberTag true/false
	      Include the (unique) sequence number of a	tournament  game  into
	      the saved	PGN file as a 'number' tag.  Default: false.

       -saveOutOfBookInfo true/false
	      Include  the  information	 on  how the engine(s) game out	of its
	      opening book in a	special	'annotator' tag	 with  the  PGN	 file.
	      Default: true.

       -oldsave/-xoldsave or -oldSaveStyle true/false
	      Sets  the	 Old  Save  Style menu option.	See Options Menu.  De-
	      fault: false.

       -gameListTags string
	      The character string lists the PGN tags that should  be  printed
	      in  the  Game List, and their order. The meaning of the codes is
	      e=event, s=site, d=date, o=round,	p=players,  r=result,  w=white
	      Elo, b=black Elo,	t=time control,	v=variant, a=out-of-book info,
	      c=result comment.	 Default: "eprd"

       -ini or -settingsFile filename
       -saveSettingsFile filename
       @filename
	      When  XBoard  encounters	an  option  -settingsFile (or -ini for
	      short), or @filename, it tries to	read the mentioned  file,  and
	      substitutes  the contents	of it (presumaby more command-line op-
	      tions) in	place of the option.  In the case  of  -ini  or	 -set-
	      tingsFile, the name of a successfully read settings file is also
	      remembered as the	file to	use for	saving settings	(automatically
	      on  exit,	 or on user command).  An option of the	form @filename
	      does not affect saving.  The option -saveSettingsFile does spec-
	      ify a name of the	file to	use for	saving,	 without  reading  any
	      options  from  it,  and is thus also effective when the file did
	      not exist	yet.  So the settings will be saved to the file	speci-
	      fied in the last -saveSettingsFile or succesfull -settingsFile /
	      -ini command, if any, and	in /etc/xboard/xboard.conf  otherwise.
	      Usualy  the latter is only accessible for	the system administra-
	      tor, though, and will be used  to	 contain  system-wide  default
	      setings, amongst which a -saveSettingsFile and -settingsFile op-
	      tions  to	 specify  a settings file accessible to	the individual
	      user, such as ~/.xboardrc	in the user's home directory.

       -saveSettingsOnExit true/false
	      Controls saving of options on the	settings  file.	  See  Options
	      Menu.  Default: true.

   User	interface options
       -display
       -geometry
       -iconic
       -name  These and	most other standard Xt options are accepted.

       -noGUI Suppresses  all  GUI  functions of XBoard	(to speed up automated
	      ultra-fast engine-engine games, which you	don't want to  watch).
	      There  will  be no board or clock	updates, no printing of	moves,
	      and no update of the icon	on the task bar	in this	mode.

       -logoSize N
	      This option controls the drawing of player  logos	 next  to  the
	      clocks.	The  integer N specifies the width of the logo in pix-
	      els; the logo height will	always be half the width.  When	N = 0,
	      no logos will be diplayed.  Default: 0.

       -firstLogo imagefile
       -secondLogo imagefile
	      Specify the images to be used as player logos when `logoSize' is
	      non-zero,	next to	the white and black clocks, respectively.

       -autoLogo true/false

       -logoDir	filename
	      When `autoLogo' is set, XBoard will search for a PNG image  file
	      with the name of the engine or ICS in the	directory specified by
	      `logoDir'.

       -recentEngines number
       -recentEngineList list
	      When  the	number is larger than zero, it determines how many re-
	      cently used engines will be appended at the bottom of  the  `En-
	      gines' menu.  The	engines	will be	saved in your settings file as
	      the  option `recentEngineList', by their nicknames, and the most
	      recently used one	will always be sorted to the top.  If the list
	      after that is longer than	the specified number, the last one  is
	      discarded.   Changes  in	the  list will only become visible the
	      next session, provided you saved the settings.  Default: 6.

       -autoInstall list
	      When the list is set to a	non-empty string, XBoard will scan the
	      operating	system's plugin	directory for engines  supporting  UCI
	      and  XBoard  protocol  at	startup.  When it finds	an engine that
	      was installed after it last saved	its settings, a	line to	launch
	      that engine (as per specs	in the plugin file) is appended	to the
	      -firstChessProgramNames list of installed	engines.  In  the  fu-
	      ture it will be possible to use the list to limit	this automatic
	      adding of	engines	to a certain types of variants.

       -oneClickMove true/false
	      When set,	this option allows you to enter	moves by only clicking
	      the to- or from-square, when only	a single legal move to or from
	      that  square  is possible.  Double-clicking a piece (or clicking
	      an already selected piece) will instruct that piece to make  the
	      only capture it can legally do.  Default:	false.

       -movesound/-xmovesound or -ringBellAfterMoves true/false
	      Sets  the	 Move  Sound menu option.  See Options Menu.  Default:
	      false.  For compatibility	with old XBoard	versions, -bell/-xbell
	      are also accepted	as abbreviations for this option.

       -exit/-xexit or -popupExitMessage true/false
	      Sets the Popup Exit Message menu option.	See Options Menu.  De-
	      fault: true.

       -popup/-xpopup or -popupMoveErrors true/false
	      Sets  the	 Popup Move Errors menu	option.	 See Options Menu. De-
	      fault: false.

       -queen/-xqueen or -alwaysPromoteToQueen true/false
	      Sets the Always Queen menu option.  See Options Menu.   Default:
	      false.

       -sweepPromotions	true/false
	      Sets  the	`Almost	Always Promote to Queen' menu option.  See Op-
	      tions Menu.  Default: false.

       -legal/-xlegal or -testLegality true/false
	      Sets the Test Legality menu option.  See Options Menu.  Default:
	      true.

       -size or	-boardSize (sizeName | n1,n2,n3,n4,n5,n6,n7)
	      Determines how large the board will be, by selecting  the	 pixel
	      size  of	the  pieces and	setting	a few related parameters.  The
	      sizeName can be one of: Titanic, giving  129x129	pixel  pieces,
	      Colossal	116x116,  Giant	 108x108, Huge 95x95, Big 87x87, Large
	      80x80, Bulky 72x72, Medium 64x64,	Moderate 58x58,	Average	54x54,
	      Middling 49x49, Mediocre 45x45, Small 40x40, Slim	37x37,	Petite
	      33x33, Dinky 29x29, Teeny	25x25, or Tiny 21x21.  Xboard installs
	      with  a  set  of scalable	(svg) piece images, which it scales to
	      any of the requested sizes.  The square size can further be con-
	      tinuously	scaled by sizing  the  board  window,  but  this  only
	      adapts the size of the pieces, and has no	effect on the width of
	      the grid lines or	the font choice	(both of which would depend on
	      he selected boardSize).  The default depends on the size of your
	      screen; it is approximately the largest size that	will fit with-
	      out clipping.

	      You  can	select	other sizes or vary other layout parameters by
	      providing	a list of comma-separated values (with no  spaces)  as
	      the  argument.   You  do not need	to provide all the values; for
	      any you omit from	the end	of the list, defaults are  taken  from
	      the nearest built-in size.  The value `n1' gives the piece size,
	      `n2' the width of	the black border between squares, `n3' the de-
	      sired  size for the clockFont, `n4' the desired size for the co-
	      ordFont, `n5' the	desired	size for  the  messageFont,  `n6'  the
	      smallLayout  flag	 (0  or	1), and	`n7' the tinyLayout flag (0 or
	      1).  All dimensions  are	in  pixels.   If  the  border  between
	      squares  is  eliminated (0 width), the various highlight options
	      will not work, as	there is nowhere to draw  the  highlight.   If
	      smallLayout  is 1	and `titleInWindow' is true, the window	layout
	      is rearranged to make more room for the title.  If tinyLayout is
	      1, the labels on the menu	bar are	abbreviated to	one  character
	      each and the buttons in the button bar are made narrower.

       -overrideLineGap	n
	      When  n  >= 0, this forces the width of the black	border between
	      squares to n pixels for any board	size. Mostly used to  suppress
	      the grid entirely	by setting n = 0, e.g. in xiangqi or just get-
	      ting  a  prettier	 picture.  When	 n < 0 this the	size-dependent
	      width of the grid	lines is used. Default:	-1.

       -coords/-xcoords	or -showCoords true/false
	      Sets the Show Coords menu	option.	 See Options  Menu.   Default:
	      false.  The `coordFont' option specifies what font to use.

       -autoraise/-xautoraise or -autoRaiseBoard true/false
	      Sets  the	 Auto Raise Board menu option.	See Options Menu.  De-
	      fault: true.

       -autoflip/-xautoflip or -autoFlipView true/false
	      Sets the Auto Flip View menu option.   See  Options  Menu.   De-
	      fault: true.

       -flip/-xflip or -flipView true/false
	      If  Auto	Flip  View is not set, or if you are observing but not
	      participating in a game, then the	positioning of	the  board  at
	      the  start  of  each  game  depends  on the flipView option.  If
	      flipView is false	(the default), the board is positioned so that
	      the white	pawns move from	the bottom to the top;	if  true,  the
	      black  pawns  move from the bottom to the	top.  In any case, the
	      Flip menu	option (see Options Menu) can  be  used	 to  flip  the
	      board after the game starts.

       -title/-xtitle or -titleInWindow	true/false
	      If  this	option	is true, XBoard	displays player	names (for ICS
	      games) and game file names (for `Load  Game')  inside  its  main
	      window.  If  the option is false (the default), this information
	      is displayed only	in the window banner. You probably won't  want
	      to  set  this option unless the information is not showing up in
	      the banner, as happens with a few	X window managers.

       -buttons/-xbuttons or -showButtonBar True/False
	      If this option is	False, xboard omits the	[<<] [<] [P] [>]  [>>]
	      button  bar  from	 the  window,  allowing	the message line to be
	      wider.  You can still get	the functions of these	buttons	 using
	      the menus	or their keyboard shortcuts.  Default: true.

       -evalZoom factor
	      The  score  interval  (-1,1) is blown up on the vertical axis of
	      the Evaluation Graph by the given	factor.	 Default: 1

       -evalThreshold n
	      Score below n (centiPawn)	are plotted as	0  in  the  Evaluation
	      Graph.  Default: 25

       -mono/-xmono or -monoMode true/false
	      Determines  whether  XBoard displays its pieces and squares with
	      two colors (true)	or four	(false). You shouldn't have to specify
	      `monoMode'; XBoard will determine	if it is necessary.

       -showTargetSquares true/false
	      Determines whether XBoard	can highlight the squares a piece  has
	      legal  moves  to,	 when you grab that piece with the mouse.  De-
	      fault: false.

       -flashCount count
       -flashRate rate
       -flash/-xflash
	      These options enable flashing of pieces when they	land on	 their
	      destination square.  `flashCount'	tells XBoard how many times to
	      flash  a	piece  after  it  lands	 on  its  destination  square.
	      `flashRate' controls the rate of flashing	(flashes/sec).	Abbre-
	      viations:	`flash'	sets flashCount	to 3.	`xflash'  sets	flash-
	      Count to 0.  Defaults:  flashCount=0 (no flashing), flashRate=5.

       -highlight/-xhighlight or -highlightLastMove true/false
	      Sets  the	Highlight Last Move menu option. See Options Menu. De-
	      fault: false.

       -highlightMoveWithArrow true/false
	      Sets the Highlight with Arrow menu option. See Options Menu. De-
	      fault: false.

       -blind/-xblind or -blindfold true/false
	      Sets the Blindfold menu option.	See  Options  Menu.   Default:
	      false.

       -periodic/-xperiodic or -periodicUpdates	true/false
	      Controls	updating  of  current  move andnode counts in analysis
	      mode. Default: true.

       -fSAN
       -sSAN  Causes the PV in thinking	output of the mentioned	engine	to  be
	      converted	 to SAN	before it is further processed.	 Warning: this
	      might lose engine	output not understood by the parser, and  uses
	      a	lot of CPU power.  Default: the	PV is displayed	exactly	as the
	      engine produced it.

       -showEvalInMoveHistory true/false
	      Controls	whether	 the evaluation	scores and search depth	of en-
	      gine moves are displayed with the	move in	the move-history  win-
	      dow.  Default: true.

       -clockFont font
	      The  font	 used for the clocks. If the option value is a pattern
	      that does	not specify the	font size, XBoard tries	to  choose  an
	      appropriate  font	 for  the board	size being used.  Default Xaw:
	      -*-helvetica-bold-r-normal--*-*-*-*-*-*-*-*.  Default GTK:  Sans
	      Bold %d.

       -coordFont font
	      The  font	 used  for rank	and file coordinate labels if `showCo-
	      ords' is true. If	the option value is a pattern  that  does  not
	      specify  the  font  size,	 XBoard	tries to choose	an appropriate
	      font for the board size being used.  Default Xaw:	 -*-helvetica-
	      bold-r-normal--*-*-*-*-*-*-*-*.  Default GTK: Sans Bold %d.

       -messageFont font
	      The  font	 used  for  popup  dialogs, menus, etc.	 If the	option
	      value is a pattern that does not specify the font	 size,	XBoard
	      tries  to	 choose	 an  appropriate font for the board size being
	      used.	   Default	 Xaw:	    -*-helvetica-medium-r-nor-
	      mal--*-*-*-*-*-*-*-*.  Default GTK: Sans Bold %d.	 The font used
	      in  the  Edit  Tags  dialog.   If	 the option value contains %d,
	      XBoard will replace it by	an appropriate font for	the board size
	      being used.  (Only used in GTK build.)  Default: Sans Normal %d.
	      The font used in the Edit	Comment	dialog.	 If the	 option	 value
	      contains	%d,  XBoard will replace it by an appropriate font for
	      the board	size being used.  (Only	used in	GTK build.)   Default:
	      Sans  Normal %d.	The font used to display ICS output in the ICS
	      Chat window.  As ICS output often	 contains  tables  aligned  by
	      spaces,  a  mono-space  font is recommended here.	 If the	option
	      value contains %d, XBoard	will replace it	by an appropriate font
	      for the board size being used.  (Only used in GTK	 build.)   De-
	      fault:  Monospace	 Normal	%d.  The font used in Move History and
	      Engine Output windows.  As these windows display	mainly	moves,
	      one  could  use  a figurine font here.  If the option value con-
	      tains %d,	XBoard will replace it by an appropriate font for  the
	      board size being used.  (Only used in GTK	build.)	 Default: Sans
	      Normal  %d.   The	font used in the listbox of the	Game List win-
	      dow.  If the option value	contains %d, XBoard will replace it by
	      an appropriate font for the board	size being used.   (Only  used
	      in GTK build.)  Default: Sans Bold %d.

       -fontSizeTolerance tol
	      In the font selection algorithm, a nonscalable font will be pre-
	      ferred  over a scalable font if the nonscalable font's size dif-
	      fers by `tol' pixels or less from	the desired size.  A value  of
	      -1  will force a scalable	font to	always be used if available; a
	      value of 0 will use a nonscalable	font only if it	is exactly the
	      right size; a large value	(say 1000) will	 force	a  nonscalable
	      font to always be	used if	available.  Default: 4.

       -pid or -pieceImageDirectory dir
	      This options control what	piece images xboard uses.  XBoard will
	      look  in the specified directory for an image in png or svg for-
	      mat for  every  piece  type,  with  names	 like  BlackQueen.svg,
	      WhiteKnight.svg  etc.   When  neither  of	 these is found	(or no
	      valid directory is specified) XBoard will	use the	svg piece that
	      was installed with it (from the  source-tree  directory  `svg').
	      Both svg and png images will be scaled by	XBoard to the required
	      size,  but  the  png pieces lose much in quality when scaled too
	      much.

       -whitePieceColor	color
       -blackPieceColor	color
       -lightSquareColor color
       -darkSquareColor	color
       -highlightSquareColor color
       -preoveHighlightColor color
       -lowTimeWarningColor color
	      Colors to	use for	the pieces, squares,  and  square  highlights.
	      Defaults:

		  -whitePieceColor	 #FFFFCC
		  -blackPieceColor	 #202020
		  -lightSquareColor	 #C8C365
		  -darkSquareColor	 #77A26D
		  -highlightSquareColor	 #FFFF00
		  -premoveHighlightColor #FF0000
		  -lowTimeWarningColor	 #FF0000

	      On a grayscale monitor you might prefer:

		  -whitePieceColor	 gray100
		  -blackPieceColor	 gray0
		  -lightSquareColor	 gray80
		  -darkSquareColor	 gray60
		  -highlightSquareColor	 gray100
		  -premoveHighlightColor gray70
		  -lowTimeWarningColor	 gray70

	      The  PieceColor  options	only  work properly if the image files
	      defining the pieces were pure  black  &  white  (possibly	 anti-
	      aliased  to produce gray scales and semi-transparancy), like the
	      pieces images that come with the install.	 Their effect on  col-
	      ored  pieces  is undefined.  The SquareColor option only have an
	      effect when no board textures are	used.

       -trueColors true/false
	      When set,	this option suppresses the effect  of  the  PieceColor
	      options  mentioned  above.   This	is recommended for images that
	      are already colored.

       -useBoardTexture	true/false
       -liteBackTextureFile filename
       -darkBackTextureFile filename
	      Indicate the png image files to be used for  drawing  the	 board
	      squares,	and  if	 they  should be used rather than using	simple
	      colors.  The algorithm for cutting squares out of	a given	bitmap
	      is such that the picture is perfectly reproduced when  a	bitmap
	      the  size	 of the	complete board is given.  If the filename ends
	      in "-NxM.png", with integer N and	M, it is assumed to contain  a
	      bitmap  of  a  complete board of N files and M ranks, and	XBoard
	      will scale it to exactly match  the  current  square  size.   If
	      N=M=0  it	scales the entire bitmap to the	size of	the board, ir-
	      respective of the	number of  files  and  ranks  of  the  latter.
	      Without any -NxM suffix textures are only	blown up by an integer
	      factor  when they	are smaller than the square size, or, when the
	      name starts with "xq", too small to cover	the  complete  Xiangqi
	      board.  Default: false and ""

       -drag/-xdrag or -animateDragging	true/false
	      Sets  the	 Animate  Dragging menu	option.	See Options Menu.  De-
	      fault: true.

       -animate/-xanimate or -animateMoving true/false
	      Sets the Animate Moving menu option. See Options Menu.  Default:
	      true.

       -animateSpeed n
	      Number of	milliseconds delay between each	animation  frame  when
	      Animate Moves is on.

       -autoDisplayComment true/false
       -autoDisplayTags	true/false
	      If  set  to  true,  these	options	cause the window with the move
	      comments,	and the	window with PGN	tags, respectively, to pop  up
	      automatically  when such tags or comments	are encountered	during
	      the replaying a stored or	loaded game.  Default: true.

       -pasteSelection true/false
	      If this option is	set to true, the Paste Position	and Paste Game
	      options paste from the currently selected	text.  If false,  they
	      paste from the clipboard.	 Default: false.

       -autoCopyPV true|false
	      When  this  option  is  set, the position	displayed on the board
	      when you terminate a PV walk  (initiated	by  a  right-click  on
	      board  or	engine-output window) will be automatically put	on the
	      clipboard	as FEN.	 Default: false.

       -dropMenu true|false
	      This option allows you to	emulate	old behavior, where the	 right
	      mouse  button  brings  up	 the (now deprecated) drop menu	rather
	      than displaying the position at the end of the principal	varia-
	      tion.  Default: False.

       -pieceMenu true|false
	      This  option allows you to emulate old behavior, where the right
	      mouse button brings up the (now deprecated) piece	menu  in  Edit
	      Position	mode.	From this menu you can select the piece	to put
	      on the square you	clicked	to bring up the	menu, or select	 items
	      such  as	`clear	board'.	  You can also `promote' or `demote' a
	      clicked piece to convert it into an unorthodox piece that	is not
	      directly in the menu, or give the	move to	`black'	or `white'.

       -variations true|false
	      When this	option is on, you can start  new  variations  in  Edit
	      Game  or Analyze mode by holding the Shift key down while	enter-
	      ing a move.  When	it is off, the Shift key will be ignored.  De-
	      fault: False.

       -appendPV true|false
	      When this	option is on, right-clicking a PV in the Engine	Output
	      window will play the first move of that PV in Analyze  mode,  or
	      as many moves as you walk	through	by moving the mouse.  Default:
	      False.

       -absoluteAnalysisScores true|false
	      When  true,  scores  on the Engine Output	window during analysis
	      will be printed from the white point-of-view,  rather  than  the
	      side-to-move point-of-view.  Default: False.

       -scoreWhite true|false
	      When  true,  scores will always be printed from the white	point-
	      of-view, rather than the side-to-move  point-of-view.   Default:
	      False.

       -memoHeaders true|false
	      When true, column	headers	will be	displayed in the Engine	Output
	      window  for the depth, score, time and nodes data.  Right-click-
	      ing on these headers will	hide or	show the  corresponding	 data.
	      (Not  intended  for  dynamic use,	as already printed data	of the
	      current search will not be affected!)  Defaul: False.

   Adjudication	Options
       -adjudicateLossThreshold	n
	      If the given value is non-zero, XBoard adjudicates the game as a
	      loss if both engines agree for a duration	of 6  consecutive  ply
	      that  the	 score is below	the given score	threshold for that en-
	      gine. Make sure the score	is interpreted properly	by XBoard, us-
	      ing `-firstScoreAbs' and `-secondScoreAbs' if needed.   Default:
	      0	(no adjudication)

       -adjudicateDrawMoves n
	      If the given value is non-zero, XBoard adjudicates the game as a
	      draw  if after the given number of moves it was not yet decided.
	      Default: 0 (no adjudication)

       -checkMates true/false
	      If this option is	set, XBoard detects all	checkmates and	stale-
	      mates,  and ends the game	as soon	as they	occur.	Legality-test-
	      ing must be switched on for this option to work.	Default: true

       -testClaims true/false
	      If this option is	set, XBoard verifies all result	claims made by
	      engines, and those who send false	claims will forfeit  the  game
	      because  of  it.	 Legality-testing must be switched on for this
	      option to	work. Default: true

       -materialDraws true/false
	      If this option is	set, XBoard adjudicates	games  as  draws  when
	      there  is	 no  sufficient	 material left to inflict a checkmate.
	      This applies to KBKB with	like bishops (any  number,  actually),
	      and  to  KBK,  KNK and KK.  Legality-testing must	be switched on
	      for this option to work. Default:	true

       -trivialDraws true/false
	      If this option is	set, XBoard adjudicates	games  as  draws  that
	      cannot be	usually	won without opponent cooperation. This applies
	      to  KBKB	with unlike bishops, and to KBKN, KNKN,	KNNK, KRKR and
	      KQKQ. The	draw is	called after 6 ply into	 these	end-games,  to
	      allow  quick  mates that can occur in some exceptional positions
	      to be found by the engines.  KQKQ	does not really	belong in this
	      category,	and might be taken out in the future.  (When  bitbase-
	      based  adjudications are implemented.)  Legality-testing must be
	      on for this option to work. Default: false

       -ruleMoves n
	      If the given value is non-zero, XBoard adjudicates the game as a
	      draw after the given number of consecutive reversible moves. En-
	      gine draw	claims are always accepted after 50  moves,  irrespec-
	      tive of the given	value of n.

       -repeatsToDraw n
	      If the given value is non-zero, xboard adjudicates the game as a
	      draw  if	a  position is repeated	the given number of times. En-
	      gines draw claims	are always accepted after 3 repeats,  (on  the
	      3rd  occurrence, actually), irrespective of the value of n.  Be-
	      ware that	positions that have different castling	or  en-passant
	      rights  do  not  count  as  repeats,  XBoard  is	fully e.p. and
	      castling aware!

   Other options
       -ncp/-xncp or -noChessProgram true/false
	      If this option is	true, XBoard acts as a passive chessboard;  it
	      does  not	 start	a  chess engine	at all.	Turning	on this	option
	      also turns off clockMode.	Default: false.

       -viewer
       -viewerOptions string
	      Presence of the volatile option `viewer'	on  the	 command  line
	      will cause the value of the persistent option `viewerOptions' as
	      stored  in the settings file to be appended to the command line.
	      The `view' option	will be	used by	desktop	associations with game
	      or position file types, so that `viewerOptions' can be  used  to
	      configure	the exact mode XBoard will start in when it should act
	      on  such	a  file	(e.g. in -ncp mode, or analyzing with your fa-
	      vorite engine). The options are also automatically appended when
	      Board is invoked with a single  argument	not  being  an	option
	      name,  which  is then assumed to be the name of a	`loadGameFile'
	      or (when the name	ends in	.fen) a	`loadPositionFile'.   Default:
	      "-ncp -engineOutputUp false -saveSettingsOnExit false".

       -tourneyOptions string
	      When  XBoard  is	invoked	 with a	single argument	that is	a file
	      with .trn	extension, it will assume  this	 argument  to  be  the
	      value of a `tourneyFile' option, and apped the value of the per-
	      sistent  option  `tourneyOptions'	as stored in the settings file
	      to the command line.  Thus the value of `tourneyOptions' can  be
	      used  to configure XBoard	to automatically start running a tour-
	      nament when it should act	on such	a file.	  Default:  "-ncp  -mm
	      -saveSettingsOnExit false".

       -mode or	-initialMode modename
	      If  this option is given,	XBoard selects the given modename from
	      the Mode menu after starting and (if applicable) processing  the
	      loadGameFile  or loadPositionFile	option.	Default: "" (no	selec-
	      tion).  Other supported values are  MachineWhite,	 MachineBlack,
	      TwoMachines,  Analysis, AnalyzeFile, EditGame, EditPosition, and
	      Training.

       -variant	varname
	      Activates	preliminary, partial support for playing  chess	 vari-
	      ants against a local engine or editing variant games.  This flag
	      is not needed in ICS mode.  Recognized variant names are:

		  normal	Normal chess
		  wildcastle	Shuffle	chess, king can	castle from d file
		  nocastle	Shuffle	chess, no castling allowed
		  fischerandom	Fischer	Random shuffle chess
		  bughouse	Bughouse, ICC/FICS rules
		  crazyhouse	Crazyhouse, ICC/FICS rules
		  losers	Lose all pieces	or get mated (ICC wild 17)
		  suicide	Lose all pieces	including king (FICS)
		  giveaway	Try to have no legal moves (ICC	wild 26)
		  twokings	Weird ICC wild 9
		  kriegspiel	Opponent's pieces are invisible
		  atomic	Capturing piece	explodes (ICC wild 27)
		  3check	Win by giving check 3 times (ICC wild 25)
		  shatranj	An ancient precursor of	chess (ICC wild	28)
		  xiangqi	Chinese	Chess (on a 9x10 board)
		  shogi		Japanese Chess (on a 9x9 board & piece drops)
		  capablanca	Capablanca Chess (10x8 board, with Archbishop
				and Chancellor pieces)
		  gothic	similar, with a	better initial position
		  caparandom	An FRC-like version of Capablanca Chess	(10x8)
		  janus		A game with two	Archbishops (10x8 board)
		  courier	Medieval intermediate between shatranj and
				modern Chess (on 12x8 board)
		  falcon	Patented 10x8 variant with two Falcon pieces
		  berolina	Pawns capture straight ahead, and move diagonal
		  cylinder	Pieces wrap around the board edge
		  knightmate	King moves as Knight, and vice versa
		  super		Superchess (shuffle variant with 4 exo-pieces)
		  makruk	Thai Chess (shatranj-like, P promotes on 6th rank)
		  asean		ASEAN Chess (a modernized version of Makruk)
		  spartan	Spartan	Chess (black has unorthodox pieces)
		  fairy		A catchall variant in which all	piece types
				known to XBoard	can participate	(8x8)
		  unknown	Catchall for other unknown variants

	      NOT  ALL	BOARDSIZES  PROVIDE A COMPLETE SET OF BUILT-IN BITMAPS
	      FOR ALL UN-ORTHODOX PIECES, though. Only in `boardSize' middling
	      and bulky	all 22 piece types are provided, while -boardSize  pe-
	      tite  has	 most  of  them. Archbishop, Chancellor	and Amazon are
	      supported	in every size from petite to bulky. Kings  or  Amazons
	      are substituted for missing bitmaps. You can still play variants
	      needing  un-orthodox  pieces in other board sizes	providing your
	      own bitmaps through the `bitmapDirectory'	 or  `pixmapDirectory'
	      options.

	      In the shuffle variants, XBoard now does shuffle the pieces, al-
	      though  you  can	still do it by hand using Edit Position.  Some
	      variants are supported only in ICS mode, including bughouse, and
	      kriegspiel.  The winning/drawing conditions in crazyhouse	 (off-
	      board  interposition  on	mate)  are  not	 fully understood, but
	      losers, suicide, giveaway, atomic,  and  3check  should  be  OK.
	      Berolina	and  cylinder  chess  can only be played with legality
	      testing off.  In crazyhouse, XBoard now does keep	track of  off-
	      board  pieces.   In  shatranj  it	does implement the baring rule
	      when mate	detection is switched on.

       -boardHeight N
	      Allows you to set	a non-standard number of board	ranks  in  any
	      variant.	 If  the height	is given as -1,	the default height for
	      the variant is used.  Default: -1

       -boardWidth N
	      Allows you to set	a non-standard number of board	files  in  any
	      variant.	If the width is	given as -1, the default width for the
	      variant  is  used.  With a non-standard width, the initial posi-
	      tion will	always be an empty board, as the usual	opening	 array
	      will not fit.  Default: -1

       -holdingsSize N
	      Allows  you  to  set a non-standard size for the holdings	in any
	      variant.	If the size is given as	-1, the	default	holdings  size
	      for  the	variant	is used.  The first N piece types will go into
	      the holdings on capture, and you will be able to	drop  them  on
	      the  board  in  stead of making a	normal move. If	size equals 0,
	      there will be no holdings.  Default: -1

       -defaultFrcPosition N
	      Specifies	the number of the opening position  in	shuffle	 games
	      like  Chess960.	A  value  of -1	means the position is randomly
	      generated	by XBoard at the beginning of every game.  Default: -1

       -pieceToCharTable string
	      The characters that are used to represent	the piece types	XBoard
	      knows in FEN diagrams and	SAN moves. The string argument has  to
	      have  an even length (or it will be ignored), as white and black
	      pieces have to be	given separately (in  that  order).  The  last
	      letter for each color will be the	King.  The letters before that
	      will  be PNBRQ and then a	whole host of fairy pieces in an order
	      that has not fully crystallized yet (currently FEACWMOHIJGDVSLU,
	      F=Ferz, Elephant,	A=Archbishop,  C=Chancellor,  W=Wazir,	M=Com-
	      moner,  O=Cannon,	 H=Nightrider).	 You  should list at least all
	      pieces that occur	in the variant you are playing.	 If  you  have
	      less  than 44 characters in the string, the pieces not mentioned
	      will get assigned	a period, and you will not be able to  distin-
	      guish  them in FENs. You can also	explicitly assign pieces a pe-
	      riod, in which case they will not	be counted in  deciding	 which
	      captured	pieces	can  go	 into  the holdings.  A	tilde '~' as a
	      piece name does mean this	piece is used to represent a  promoted
	      Pawn  in	crazyhouse-like	 games,	 i.e. on capture it turns back
	      onto a Pawn.  A '+' similarly indicates the piece	 is  a	shogi-
	      style  promoted  piece,  that  should revert to its non-promoted
	      version on capture (rather than to a Pawn).  Note	that  promoted
	      pieces  are  represented	by pieces 11 further in	the list.  You
	      should not have to use this option often:	each variant  has  its
	      own  default  setting for	the piece representation in FEN, which
	      should be	sufficient in normal use.  Default: ""

       -pieceNickNames string
	      The characters in	the string are interpreted the same way	as  in
	      the  `pieceToCharTable'  option.	But on input, piece-ID letters
	      are first	looked up in the nicknames, and	only  if  not  defined
	      there,  in  the normal pieceToCharTable. This allows you to have
	      two letters designate the	same piece, (e.g. N as an  alternative
	      to H for Horse in	Xiangqi), to make reading of non-compliant no-
	      tations easier.  Default:	""

       -colorNickNames string
	      The  side-to-move	 field	in a FEN will be first matched against
	      the letters in the string	(first character for white, second for
	      black), before it	is matched to the regular 'w' and  'b'.	  This
	      makes  it	easier to read non-compliant FENs, which, say, use 'r'
	      for white.  Default: ""

       -debug/-xdebug or -debugMode true/false
	      Turns on debugging printout.

       -debugFile filename or -nameOfDebugFile filename
	      Sets the name of the file	to which XBoard	saves  debug  informa-
	      tion  (including	all communication to and from the engines).  A
	      `%d' in the given	file name (e.g.	game%d.debug) will be replaced
	      by the unique sequence number of a tournament game, so that  the
	      debug output of each game	will be	written	on a separate file.

       -engineDebugOutput number
	      Specifies	 how  XBoard should handle unsolicited output from the
	      engine, with respect to saving it	in the debug file.  The	output
	      is further (hopefully) ignored.  If  number=0,  XBoard  refrains
	      from  writing  such  spurious output to the debug	file.  If num-
	      ber=1, all engine	output is  written  faithfully	to  the	 debug
	      file.  If	number=2, any protocol-violating line is prefixed with
	      a	 '#'  character,  as  the engine itself	should have done if it
	      wanted to	submit info for	inclusion in the debug file.  This op-
	      tion is provided for the benefit of applications	that  use  the
	      debug  file  as a	source of information, such as the broadcaster
	      of live games TLCV / TLCS.  Such applications can	 be  protected
	      from spurious engine output that might otherwise confuse them.

       -rsh or -remoteShell shell-name
	      Name  of	the command used to run	programs remotely. The default
	      is `rsh' or `remsh', determined when XBoard  is  configured  and
	      compiled.

       -ruser or -remoteUser user-name
	      User  name  on  the remote system	when running programs with the
	      `remoteShell'. The default is your local user name.

       -userName username
	      Name under which the Human player	will  be  listed  in  the  PGN
	      file.  Default is	the login name on your local computer.

       -delayBeforeQuit	number
       -delayAfterQuit number
	      These  options  order pauses before and after sending the	"quit"
	      command to an engine that	must be	terminated.  The pause between
	      quit and the previous command is specified in milliseconds.  The
	      pause after quit is used to schedule a kill signal to be sent to
	      the engine process after the number of  specified	 seconds  plus
	      one.   This signal is a different	one as the terminiation	signal
	      described	in the protocol	specs which engines  can  suppress  or
	      ignore,  and  which  is  sent directly after the "quit" command.
	      Setting `delayAfterQuit' to -1 will suppress sending of the kill
	      signal.  Default:	0

       -searchMode n
	      The integer n encodes the	mode for the `find position' function.
	      Default: 1 (= Exact position match)

       -eloThresholdBoth elo
       -eloThresholdAny	elo
	      Defines a	lower limit for	the Elo	rating,	which has to  be  sur-
	      passed  before  a	 game  will be considered when searching for a
	      board position.  Default:	0

       -dateThreshold year
	      Only games not played before the given year will	be  considered
	      when searching for a board position

CHESS SERVERS
       An  "Internet Chess Server", or "ICS", is a place on the	Internet where
       people can get together to play chess, watch other people's  games,  or
       just chat.  You can use either `telnet' or a client program like	XBoard
       to  connect  to the server.  There are thousands	of registered users on
       the different ICS hosts,	and it is not unusual  to  meet	 200  on  both
       chessclub.com and freechess.org.

       Most  people  can  just	type  `xboard  -ics' to	start XBoard as	an ICS
       client.	Invoking XBoard	in this	way connects you to the	Internet Chess
       Club (ICC), a commercial	ICS.  You can log in there as a	guest even  if
       you  do	not  have  a paid account.  To connect to the largest Free ICS
       (FICS), use the command `xboard -ics -icshost  freechess.org'  instead,
       or  substitute  a  different host name to connect to your favorite ICS.
       For a full description of command-line options that control the connec-
       tion to ICS and change the default values of ICS	options, see  ICS  op-
       tions.

       While  you  are	running	 XBoard	as an ICS client, you use the terminal
       window that you started XBoard from as a	place to type in commands  and
       read information	that is	not available on the chessboard.

       The first time you need to use the terminal is to enter your login name
       and  password,  if  you	are a registered player. (You don't need to do
       this manually; the `icsLogon' option can	do it for you.	 See  ICS  op-
       tions.)	 If  you  are  not registered, enter `g' as your name, and the
       server will pick	a unique guest name for	you.

       Some useful ICS commands	include

       help <topic>
	      to get help on the given <topic>.	To get a list of possible top-
	      ics type "help" without topic.  Try the help command before  you
	      ask other	people on the server for help.

	      For example `help	register' tells	you how	to become a registered
	      ICS player.

       who <flags>
	      to see a list of people who are logged on.  Administrators (peo-
	      ple  you	should	talk to	if you have a problem) are marked with
	      the character `*', an asterisk. The <flags> allow	you to display
	      only selected players: For example, `who of'  shows  a  list  of
	      players  who  are	interested in playing but do not have an oppo-
	      nent.

       games  to see what games	are being played

       match <player> [<mins>] [<inc>]
	      to challenge another player to a game. Both opponents get	<mins>
	      minutes for the game, and	<inc> seconds will be added after each
	      move.  If	another	player challenges you, the server asks if  you
	      want to accept the challenge; use	the `accept' or	`decline' com-
	      mands to answer.

       accept
       decline
	      to  accept  or decline another player's offer.  The offer	may be
	      to start a new game, or to  agree	 to  a	`draw',	 `adjourn'  or
	      `abort' the current game.	See Action Menu.

	      If  you  have  more than one pending offer (for example, if more
	      than one player is challenging you, or if	your  opponent	offers
	      both  a  draw and	to adjourn the game), you have to supply addi-
	      tional information, by typing something like `accept  <player>',
	      `accept draw', or	`draw'.

       draw
       adjourn
       abort  asks  your opponent to terminate a game by mutual	agreement. Ad-
	      journed games can	be continued later.  Your opponent can	either
	      `decline'	your offer or accept it	(by typing the same command or
	      typing  `accept').   In  some  cases these commands work immedi-
	      ately, without asking your opponent to agree.  For example,  you
	      can abort	the game unilaterally if your opponent is out of time,
	      and  you	can  claim a draw by repetition	or the 50-move rule if
	      available	simply by typing `draw'.

       finger <player>
	      to get information about the  given  <player>.  (Default:	 your-
	      self.)

       vars   to get a list of personal	settings

       set <var> <value>
	      to modify	these settings

       observe <player>
	      to observe an ongoing game of the	given <player>.

       examine
       oldmoves
	      to review	a recently completed game

       Some special XBoard features are	activated when you are in examine mode
       on  ICS.	  See  the descriptions	of the menu commands `Forward',	`Back-
       ward', `Pause', `ICS Client', and `Stop Examining' on  the  Edit	 Menu,
       Mode Menu, and Action Menu.

FIREWALLS
       By  default, XBoard communicates	with an	Internet Chess Server by open-
       ing a TCP socket	directly from the machine it is	running	on to the ICS.
       If there	is a firewall between your machine and	the  ICS,  this	 won't
       work.  Here  are	 some recipes for getting around common	kinds of fire-
       walls using special options to XBoard.  Important: See the paragraph in
       the below about extra echoes, in	Limitations.

       Suppose that you	can't telnet directly to ICS, but you can telnet to  a
       firewall	 host,	log  in, and then telnet from there to ICS.  Let's say
       the firewall is called `firewall.example.com'. Set command-line options
       as follows:

	   xboard -ics -icshost	firewall.example.com -icsport 23

       Then when you run XBoard	in ICS mode, you will be prompted to log in to
       the firewall host. This works because port 23 is	 the  standard	telnet
       login  service. Do so, then telnet to ICS, using	a command like `telnet
       chessclub.com 5000', or whatever	command	the firewall provides for tel-
       netting to port 5000.

       If your firewall	lets you  telnet  (or  rlogin)	to  remote  hosts  but
       doesn't	let you	telnet to port 5000, you may be	able to	connect	to the
       chess server on port 23 instead,	which is the port the  telnet  program
       uses  by	 default.   Some  chess	servers	support	this (including	chess-
       club.com	and freechess.org), while some do not.

       If your chess server does not allow connections on  port	 23  and  your
       firewall	 does not allow	you to connect to other	ports, you may be able
       to connect by hopping through another host outside  the	firewall  that
       you have	an account on.	For instance, suppose you have a shell account
       at  `foo.edu'.  Follow  the recipe above, but instead of	typing `telnet
       chessclub.com 5000' to the firewall, type `telnet foo.edu' (or  `rlogin
       foo.edu'), log in there,	and then type `telnet chessclub.com 5000'.

       Suppose	that  you can't	telnet directly	to ICS,	but you	can use	rsh to
       run programs on a firewall host,	and  that  host	 can  telnet  to  ICS.
       Let's  say  the	firewall is called `rsh.example.com'. Set command-line
       options as follows:

	   xboard -ics -gateway	rsh.example.com	-icshost chessclub.com

       Then when you run XBoard	in ICS mode, it	will connect to	the ICS	by us-
       ing `rsh' to run	 the  command  `telnet	chessclub.com  5000'  on  host
       `rsh.example.com'.

       Suppose	that  you  can telnet anywhere you want, but you have to run a
       special program called `ptelnet'	to do so.

       First, we'll consider the easy case, in	which  `ptelnet	 chessclub.com
       5000'  gets you to the chess server.  In	this case set command line op-
       tions as	follows:

	   xboard -ics -telnet -telnetProgram ptelnet

       Then when you run XBoard	in ICS mode, it	will issue the command	`ptel-
       net chessclub.com 5000' to connect to the ICS.

       Next,  suppose that `ptelnet chessclub.com 5000'	doesn't	work; that is,
       your `ptelnet' program doesn't let you connect to alternative ports. As
       noted above, your chess server may allow	you to connect on port 23  in-
       stead.	In  that  case,	just add the option `-icsport ""' to the above
       command.	 But if	your chess server doesn't let you connect on port  23,
       you  will  have	to  find  some other host outside the firewall and hop
       through	it.  For  instance,  suppose  you  have	 a  shell  account  at
       `foo.edu'. Set command line options as follows:

	   xboard -ics -telnet -telnetProgram ptelnet -icshost foo.edu -icsport	""

       Then  when you run XBoard in ICS	mode, it will issue the	command	`ptel-
       net foo.edu' to connect to your account at  `foo.edu'.  Log  in	there,
       then type `telnet chessclub.com 5000'.

       ICC  timestamp  and  FICS  timeseal do not work through some firewalls.
       You can use them	only if	your firewall gives  a	clean  TCP  connection
       with  a	full  8-bit wide path.	If your	firewall allows	you to get out
       only by running a special telnet	program, you can't  use	 timestamp  or
       timeseal	 across	it.  But if you	have access to a computer just outside
       your firewall, and you have much	lower netlag when talking to that com-
       puter than to the ICS, it might be worthwhile running timestamp	there.
       Follow  the  instructions  above	for hopping through a host outside the
       firewall	(foo.edu in the	example), but run  timestamp  or  timeseal  on
       that host instead of telnet.

       Suppose that you	have a SOCKS firewall that will	give you a clean 8-bit
       wide  TCP  connection to	the chess server, but only after you authenti-
       cate yourself via the SOCKS protocol.  In that case, you	could  make  a
       socksified  version of XBoard and run that.  If you are using timestamp
       or timeseal, you	will to	socksify it, not XBoard; this may be difficult
       seeing that ICC and FICS	do not provide source code for these programs.
       Socksification is beyond	the scope of this document, but	see the	 SOCKS
       Web  site  at  http://www.socks.permeo.com/.  If	you are	missing	SOCKS,
       try http://www.funbureau.com/.

ENVIRONMENT VARIABLES
       Game and	position files are found in a directory	named by  the  `CHESS-
       DIR'  environment  variable.  If	 this variable is not set, the current
       working directory is  used.  If	`CHESSDIR'  is	set,  XBoard  actually
       changes	its  working directory to `$CHESSDIR', so any files written by
       the chess engine	will be	placed there too.

LIMITATIONS AND	KNOWN BUGS
       There is	no way for two people running copies of	XBoard	to  play  each
       other without going through an Internet Chess Server.

       Under  some circumstances, your ICS password may	be echoed when you log
       on.

       If you are connecting to	the ICS	 by  running  telnet  on  an  Internet
       provider	 or  firewall  host,  you  may find that each line you type is
       echoed back an extra time after	you  hit  <Enter>.  If	your  Internet
       provider	is a Unix system, you can probably turn	its echo off by	typing
       `stty  -echo'  after you	log in,	and/or typing <^E><Enter> (Ctrl+E fol-
       lowed by	the Enter key) to the telnet program  after  you  have	logged
       into  ICS.   It is a good idea to do this if you	can, because the extra
       echo can	occasionally confuse XBoard's parsing routines.

       The game	parser recognizes only algebraic notation.

       Many of the following points used to be limitations in XBoard 4.2.7 and
       earlier,	but are	now fixed: The internal	move legality tester in	XBoard
       4.3.xx does look	at the game history, and is fully aware	of castling or
       en-passant-capture rights. It permits castling with the king on	the  d
       file  because  this  is	possible  in  some "wild 1" games on ICS.  The
       piece-drop menu does not	check piece drops in bughouse to  see  if  you
       actually	 hold  the piece you are trying	to drop. But this way of drop-
       ping pieces should be considered	an obsolete feature, now  that	pieces
       can be dropped by dragging them from the	holdings to the	board. Anyway,
       if  you	would attempt an illegal move when using a chess engine	or the
       ICS, XBoard will	accept the error message that  comes  back,  undo  the
       move,  and  let	you try	another.  FEN positions	saved by XBoard	do in-
       clude correct information about whether castling	or en passant are  le-
       gal,  and  also handle the 50-move counter.  The	mate detector does not
       understand that non-contact mate	is not really mate in  bughouse.   The
       only problem this causes	while playing is minor:	a "#" (mate indicator)
       character  will	show  up  after	 a non-contact mating move in the move
       list. XBoard will not assume the	game is	over at	that point,  not  even
       when  the  option  Detect  Mates	is on.	Edit Game mode always uses the
       rules of	the selected variant, which can	be a variant that  uses	 piece
       drops.  You can load and	edit games that	contain	piece drops.  The (ob-
       solete)	piece menus are	not active, but	you can	perform	piece drops by
       dragging	pieces from the	holdings.  Fischer Random  castling  is	 fully
       understood.   You  can  enter  castlings	by dragging the	King on	top of
       your Rook.  You can probably also play Fischer Random  successfully  on
       ICS by typing castling moves into the ICS Interaction window.

       The  menus  may	not  work if your keyboard is in Caps Lock or Num Lock
       mode.  This seems to be a problem with the Athena menu widget,  not  an
       XBoard bug.

       Also  see  the  ToDo file included with the distribution	for many other
       possible	bugs, limitations, and ideas for improvement  that  have  been
       suggested.

REPORTING PROBLEMS
       You  can	 report	bugs and problems with XBoard using the	bug tracker at
       `https://savannah.gnu.org/projects/xboard/'  or	by  sending  mail   to
       `<bug-xboard@gnu.org>'.	 It  can  also	be useful to report or discuss
       bugs in the  WinBoard  Forum  at	 `http://www.open-aurec.com/wbforum/',
       WinBoard	development section.

       Please  use the `script'	program	to start a typescript, run XBoard with
       the `-debug' option, and	include	the typescript output in your message.
       Also tell us what kind of machine and what operating system version you
       are using.  The command `uname -a' will often tell you this.

       If you improve XBoard, please send a message about your changes,	and we
       will get	in touch with you about	merging	them in	to the	main  line  of
       development.

AUTHORS	AND CONTRIBUTORS
       Chris Sears and Dan Sears wrote the original XBoard.  They were respon-
       sible  for  versions  1.0 through 1.2.  The color scheme	was taken from
       Wayne Christopher's `XChess' program.

       Tim Mann	was primarily responsible  for	XBoard	versions  1.3  through
       4.2.7,  and for WinBoard	(a port	of XBoard to Microsoft Win32) from its
       inception through version 4.2.7.

       John Chanak contributed the initial implementation of ICS  mode.	  Evan
       Welsh  wrote  `CMail',  and Patrick Surry helped	in designing, testing,
       and documenting it.  Elmar Bartel contributed the new piece bitmaps in-
       troduced	in version 3.2.	 Jochen	Wiedmann converted  the	 documentation
       to  texinfo.   Frank  McIngvale	added click/click moving, the Analysis
       modes, piece flashing, ZIICS  import,  and  ICS	text  colorization  to
       XBoard.	 Hugh Fisher added animated piece movement to XBoard, and Hen-
       rik Gram	added it to WinBoard.  Mark Williams contributed  the  initial
       (WinBoard-only)	implementation	of  many  new  features	 added to both
       XBoard and WinBoard in version 4.1.0,  including	 copy/paste,  premove,
       icsAlarm,  autoFlipView,	training mode, auto raise, and blindfold.  Ben
       Nye contributed X copy/paste code for XBoard.

       In a fork from version 4.2.7, Alessandro	Scotti added many elements  to
       the  user interface of WinBoard,	including the board textures and font-
       based rendering,	the evaluation-graph, move-history  and	 engine-output
       window.	He was also responsible	for adding the UCI support.

       H. G. Muller continued this fork	of the project,	producing version 4.3.
       He  made	 WinBoard castling- and	e.p.-aware, added variant support with
       adjustable board	sizes, the crazyhouse holdings,	and the	fairy  pieces.
       In  addition  he	 added most of the adjudication	options, made WinBoard
       more robust in dealing with buggy and crashing  engines,	 and  extended
       time  control with a time-odds and node-count-based modes.  Most	of the
       options that initially were WinBoard only have now been back-ported  to
       XBoard.

       Michel  van  den	 Bergh	provided the code for reading Polyglot opening
       books.

       Meanwhile, some work continued on the GNU XBoard	project	maintained  at
       savannah.gnu.org,   but	version	 4.2.8	was  never  released.	Daniel
       Mehrmann	was responsible	for much of this work.

       Most recently, Arun Persaud worked with H. G. Muller to merge  all  the
       features	 of the	never-released XBoard/WinBoard 4.2.8 of	the GNU	XBoard
       project and the never-released 4.3.16 from H. G.'s fork into a  unified
       XBoard/WinBoard	4.4,  which  is	 now  available	 both  from the	savan-
       nah.gnu.org web site and	the WinBoard forum.

CMAIL
       The `cmail' program can help you	play chess by email with opponents  of
       your choice using XBoard	as an interface.

       You will	usually	run `cmail' without giving any options.

   CMail options
       -h     Displays `cmail' usage information.

       -c     Shows  the  conditions  of  the GNU General Public License.  See
	      Copying.

       -w     Shows the	warranty notice	of the	GNU  General  Public  License.
	      See Copying.

       -v
       -xv    Provides	or  inhibits  verbose  output from `cmail' and XBoard,
	      useful for debugging. The	`-xv' form also	inhibits the cmail in-
	      troduction message.

       -mail
       -xmail Invokes or inhibits the sending of a mail	message	containing the
	      move.

       -xboard
       -xxboard
	      Invokes or inhibits the running of XBoard	on the game file.

       -reuse
       -xreuse
	      Invokes or inhibits the reuse of an existing XBoard  to  display
	      the current game.

       -remail
	      Resends  the last	mail message for that game. This inhibits run-
	      ning XBoard.

       -game <name>
	      The name of the game to be processed.

       -wgames <number>
       -bgames <number>
       -games <number>
	      Number of	games to start as White, as Black or in	total. Default
	      is 1 as white and	none as	black. If only one color is  specified
	      then  none  of the other color is	assumed. If no color is	speci-
	      fied then	equal numbers of White and Black  games	 are  started,
	      with  the	 extra	game  being as White if	an odd number of total
	      games is specified.

       -me <short name>
       -opp <short name>
	      A	one-word alias for yourself or your opponent.

       -wname <full name>
       -bname <full name>
       -myname <full name>
       -oppname	<full name>
	      The full name of White, Black, yourself or your opponent.

       -wna <net address>
       -bna <net address>
       -na <net	address>
       -oppna <net address>
	      The email	address	of White, Black, yourself or your opponent.

       -dir <directory>
	      The directory in which `cmail' keeps its files. This defaults to
	      the environment variable `$CMAIL_DIR' or failing that,  `$CHESS-
	      DIR',  `$HOME/Chess' or `~/Chess'. It will be created if it does
	      not exist.

       -arcdir <directory>
	      The directory in which `cmail'  archives	completed  games.  De-
	      faults  to  the  environment variable `$CMAIL_ARCDIR' or,	in its
	      absence, the same	directory as cmail  keeps  its	working	 files
	      (above).

       -mailprog <mail program>
	      The  program used	by cmail to send email messages. This defaults
	      to the environment variable `$CMAIL_MAILPROG'  or	 failing  that
	      `/usr/ucb/Mail', `/usr/ucb/mail' or `Mail'. You will need	to set
	      this variable if none of the above paths fit your	system.

       -logFile	<file>
	      A	 file in which to dump verbose debugging messages that are in-
	      voked with the `-v' option.

       -event <event>
	      The PGN Event tag	(default `Email	correspondence game').

       -site <site>
	      The PGN Site tag (default	`NET').

       -round <round>
	      The PGN Round tag	(default `-', not applicable).

       -mode <mode>
	      The PGN Mode tag (default	`EM', Electronic Mail).

       Other options
	      Any option flags not listed above	are passed through to  XBoard.
	      Invoking	XBoard through CMail changes the default values	of two
	      XBoard options:  The  default  value  for	 `-noChessProgram'  is
	      changed to true; that is,	by default no chess engine is started.
	      The  default value for `-timeDelay' is changed to	0; that	is, by
	      default XBoard immediately goes to the end of the	game as	played
	      so far, rather than stepping through the moves one by one.   You
	      can  still  set  these  options to whatever values you prefer by
	      supplying	them on	CMail's	command	line.  See Options.

   Starting a CMail Game
       Type `cmail' from a shell to start a game as white.  After  an  opening
       message,	 you will be prompted for a game name, which is	optional -- if
       you simply press	<Enter>, the game name will take the form  `you-VS-op-
       ponent'.	You will next be prompted for the short	name of	your opponent.
       If you haven't played this person before, you will also be prompted for
       his/her	email  address.	 `cmail'  will then invoke XBoard in the back-
       ground. Make your first move and	select `Mail  Move'  from  the	`File'
       menu.  See  File	 Menu. If all is well, `cmail' will mail a copy	of the
       move to your opponent. If you select  `Exit'  without  having  selected
       `Mail Move' then	no move	will be	made.

   Answering a Move
       When you	receive	a message from an opponent containing a	move in	one of
       your  games,  simply  pipe the message through `cmail'. In some mailers
       this is as simple as typing `| cmail' when viewing the  message,	 while
       in  others  you	may have to save the message to	a file and do `cmail <
       file' at	the command line. In either case `cmail' will display the game
       using XBoard. If	you didn't exit	XBoard when you	made your  first  move
       then  `cmail'  will  do	its best to use	the existing XBoard instead of
       starting	a new one. As before, simply make  a  move  and	 select	 `Mail
       Move'  from the `File' menu. See	File Menu. `cmail' will	try to use the
       XBoard that was most recently used to display the  current  game.  This
       means  that many	games can be in	progress simultaneously, each with its
       own active XBoard.

       If you want to look at the history or explore a	variation,  go	ahead,
       but  you	 must  return to the current position before XBoard will allow
       you to mail a move. If you edit the game's history you must select `Re-
       load Same Game' from the	`File' menu to get back	to the original	 posi-
       tion,  then  make the move you want and select `Mail Move'.  As before,
       if you decide you aren't	ready to make a	move just yet you  can	either
       select `Exit' without sending a move or just leave XBoard running until
       you are ready.

   Multi-Game Messages
       It  is  possible	 to  have  a `cmail' message carry more	than one game.
       This feature was	implemented to handle IECG (International Email	 Chess
       Group)  matches,	where a	match consists of one game as white and	one as
       black, with moves transmitted simultaneously. In	case  there  are  more
       general	uses,  `cmail'	itself	places	no  limit  on  the  number  of
       black/white games contained in a	message; however, XBoard does.

   Completing a	Game
       Because XBoard can detect checkmate and stalemate, `cmail' handles game
       termination sensibly. As	well as	resignation, the `Action' menu	allows
       draws to	be offered and accepted	for `cmail' games.

       For  multi-game	messages, only unfinished and just-finished games will
       be included in email messages. When all the games  are  finished,  they
       are  archived in	the user's archive directory, and similarly in the op-
       ponent's	when he	or she pipes the final message	through	 `cmail'.  The
       archive file name includes the date the game was	started.

   Known CMail Problems
       It's possible that a strange conjunction	of conditions may occasionally
       mean  that `cmail' has trouble reactivating an existing XBoard. If this
       should happen, simply trying it again should work.  If not, remove  the
       file that stores	the XBoard's PID (`game.pid') or use the `-xreuse' op-
       tion to force `cmail' to	start a	new XBoard.

       Versions	of `cmail' after 2.16 no longer	understand the old file	format
       that XBoard used	to use and so cannot be	used to	correspond with	anyone
       using an	older version.

       Versions	 of `cmail' older than 2.11 do not handle multi-game messages,
       so multi-game correspondence is not possible with  opponents  using  an
       older version.

OTHER PROGRAMS YOU CAN USE WITH	XBOARD
       Here are	some other programs you	can use	with XBoard

   GNU Chess
       The GNU Chess engine is available from:

       ftp://ftp.gnu.org/gnu/gnuchess/

       You  can	 use  XBoard to	play a game against GNU	Chess, or to interface
       GNU Chess to an ICS.

   Fairy-Max
       Fairy-Max is a derivative from the once World's smallest	Chess  program
       micro-Max,  which  measures  only  about	100 lines of source code.  The
       main difference with micro-Max is that Fairy-Max	loads its move-genera-
       tor tables from a file, so that the rules for  piece  movement  can  be
       easily configured to implement unorthodox pieces.  Fairy-Max can	there-
       fore  play a large number of variants, normal Chess being one of	those.
       In addition it plays Knightmate,	Capablanca and Gothic Chess, Shatranj,
       Courier Chess, Cylinder chess, Berolina Chess, while the	user can  eas-
       ily define new variants.	 It can	be obtained from:

       http://home.hccnet.nl/h.g.muller/dwnldpage.html

   HoiChess
       HoiChess	 is  a not-so-very-strong Chess	engine,	which comes with a de-
       rivative	HoiXiangqi, able to play Chinese Chess.	 It  can  be  obtained
       from the	standard Linux repositories through:

       sudo apt-get install hoichess

   Crafty
       Crafty  is  a chess engine written by Bob Hyatt.	 You can use XBoard to
       play a game against Crafty, hook	Crafty up to an	ICS, or	use Crafty  to
       interactively analyze games and positions for you.

       Crafty  is a strong, rapidly evolving chess program. This rapid pace of
       development is good, because it means Crafty is always getting  better.
       This  can  sometimes  cause  problems with backwards compatibility, but
       usually the latest version of Crafty will work  well  with  the	latest
       version	of XBoard.  Crafty can be obtained from	its author's FTP site:
       ftp://ftp.cis.uab.edu/hyatt/.

       To use Crafty with XBoard, give the -fcp	and -fd	 options  as  follows,
       where  <crafty's	 directory>  is	 the  directory	in which you installed
       Crafty and placed its book and other support files.

COPYRIGHT
       Copyright (C) 1991 Digital Equipment  Corporation,  Maynard,  Massachu-
       setts.

       All Rights Reserved.

       Permission  to  use, copy, modify, and distribute this software and its
       documentation for any purpose and without fee is	hereby	granted,  pro-
       vided  that  the	 above	copyright notice appear	in all copies and that
       both that copyright notice and this permission notice  appear  in  sup-
       porting	documentation, and that	the name of Digital not	be used	in ad-
       vertising or publicity pertaining to distribution of the	software with-
       out specific, written prior permission.

       Digital disclaims all warranties	with regard to this software,  includ-
       ing all implied warranties of merchantability and fitness.  In no event
       shall Digital be	liable for any special,	indirect or consequential dam-
       ages  or	 any  damages  whatsoever  resulting from loss of use, data or
       profits,	whether	in an action of	contract, negligence or	other tortious
       action, arising out of or in connection with the	use or performance  of
       this software.

       Enhancements  copyright	(C)  1992-2003,	 2004, 2005, 2006, 2007, 2008,
       2009, 2010, 2011, 2012, 2013, 2014, 2015	Free Software Foundation, Inc.

       Published by the	Free Software Foundation
       59 Temple Place - Suite 330
       Boston, MA 02111-1307 USA

       Permission is granted to	make and distribute verbatim  copies  of  this
       manual  provided	 the  copyright	 notice	and this permission notice are
       preserved on all	copies.

       Permission is granted to	copy and distribute modified versions of  this
       manual  under  the  conditions for verbatim copying, provided also that
       the section entitled ``GNU General Public License,''  is	 included  ex-
       actly  as  in  the original, and	provided that the entire resulting de-
       rived work is distributed under the terms of a permission notice	 iden-
       tical to	this one.

       Permission  is granted to copy and distribute translations of this man-
       ual into	another	language, under	the above conditions for modified ver-
       sions, except that the section entitled ``GNU General Public License,''
       and this	permission notice, may be included in translations approved by
       the Free	Software Foundation instead of in the original English.

GNU GENERAL PUBLIC LICENSE
       Copyright (C) 2007 Free Software	Foundation, Inc. `http://fsf.org/'

       Everyone	is permitted to	copy and distribute verbatim copies of this
       license document, but changing it is not	allowed.

       The GNU General Public License is a free, copyleft license for software
       and other kinds of works.

       The licenses for	most software and other	practical works	 are  designed
       to  take	away your freedom to share and change the works.  By contrast,
       the GNU General Public License is intended to guarantee your freedom to
       share and change	all versions of	a program -- to	make sure  it  remains
       free software for all its users.	 We, the Free Software Foundation, use
       the  GNU	 General  Public  License for most of our software; it applies
       also to any other work released this way	by its authors.	 You can apply
       it to your programs, too.

       When we speak of	free software, we are referring	to freedom, not	price.
       Our General Public Licenses are designed	to make	sure that you have the
       freedom to distribute copies of free software (and charge for  them  if
       you  wish),  that you receive source code or can	get it if you want it,
       that you	can change the software	or use pieces of it in new  free  pro-
       grams, and that you know	you can	do these things.

       To  protect  your  rights,  we  need to prevent others from denying you
       these rights or asking you to surrender	the  rights.   Therefore,  you
       have certain responsibilities if	you distribute copies of the software,
       or if you modify	it: responsibilities to	respect	the freedom of others.

       For example, if you distribute copies of	such a program,	whether	gratis
       or for a	fee, you must pass on to the recipients	the same freedoms that
       you  received.	You  must make sure that they, too, receive or can get
       the source code.	 And you must show them	these terms so they know their
       rights.

       Developers that use the GNU GPL protect your rights with	two steps: (1)
       assert copyright	on the software, and (2) offer you this	License	giving
       you legal permission to copy, distribute	and/or modify it.

       For the developers' and authors'	protection, the	GPL  clearly  explains
       that  there is no warranty for this free	software.  For both users' and
       authors'	sake, the GPL requires that modified  versions	be  marked  as
       changed,	 so  that their	problems will not be attributed	erroneously to
       authors of previous versions.

       Some devices are	designed to deny users access to install or run	 modi-
       fied  versions  of  the software	inside them, although the manufacturer
       can do so.  This	is fundamentally incompatible with the aim of protect-
       ing users' freedom to change the	software.  The systematic  pattern  of
       such abuse occurs in the	area of	products for individuals to use, which
       is  precisely  where  it	 is most unacceptable.	Therefore, we have de-
       signed this version of the GPL to prohibit the practice for those prod-
       ucts.  If such problems arise substantially in other domains, we	 stand
       ready  to  extend this provision	to those domains in future versions of
       the GPL,	as needed to protect the freedom of users.

       Finally,	every program is threatened constantly	by  software  patents.
       States  should  not  allow  patents  to restrict	development and	use of
       software	on general-purpose computers, but in those that	do, we wish to
       avoid the special danger	that patents applied to	a free	program	 could
       make it effectively proprietary.	 To prevent this, the GPL assures that
       patents cannot be used to render	the program non-free.

       The  precise terms and conditions for copying, distribution and modifi-
       cation follow.

       Definitions.
	      ``This License'' refers to version 3 of the GNU  General	Public
	      License.

	      ``Copyright'' also means copyright-like laws that	apply to other
	      kinds of works, such as semiconductor masks.

	      ``The  Program'' refers to any copyrightable work	licensed under
	      this License.  Each licensee is  addressed  as  ``you''.	 ``Li-
	      censees''	 and  ``recipients''  may  be individuals or organiza-
	      tions.

	      To ``modify'' a work means to copy from or adapt all or part  of
	      the work in a fashion requiring copyright	permission, other than
	      the  making  of  an  exact copy.	The resulting work is called a
	      ``modified version'' of the earlier work or a work ``based  on''
	      the earlier work.

	      A	``covered work'' means either the unmodified Program or	a work
	      based on the Program.

	      To ``propagate'' a work means to do anything with	it that, with-
	      out  permission,	would  make you	directly or secondarily	liable
	      for infringement under applicable	copyright law, except  execut-
	      ing  it  on a computer or	modifying a private copy.  Propagation
	      includes copying,	distribution (with or  without	modification),
	      making  available	to the public, and in some countries other ac-
	      tivities as well.

	      To ``convey'' a work means any kind of propagation that  enables
	      other  parties to	make or	receive	copies.	 Mere interaction with
	      a	user through a computer	network, with no transfer of  a	 copy,
	      is not conveying.

	      An  interactive  user interface displays ``Appropriate Legal No-
	      tices'' to the extent that it includes a convenient  and	promi-
	      nently  visible  feature	that (1) displays an appropriate copy-
	      right notice, and	(2) tells the user that	there is  no  warranty
	      for  the	work  (except  to  the extent that warranties are pro-
	      vided), that licensees may convey	the work under	this  License,
	      and  how	to  view  a  copy  of  this License.  If the interface
	      presents a list of user commands or options, such	as a  menu,  a
	      prominent	item in	the list meets this criterion.

       Source Code.
	      The  ``source  code'' for	a work means the preferred form	of the
	      work for making modifications to it.  ``Object code'' means  any
	      non-source form of a work.

	      A	 ``Standard  Interface''  means	an interface that either is an
	      official standard	defined	by a recognized	standards body,	or, in
	      the case of interfaces specified for  a  particular  programming
	      language,	 one  that  is widely used among developers working in
	      that language.

	      The ``System Libraries'' of an executable	work include anything,
	      other than the work as a whole, that (a) is included in the nor-
	      mal form of packaging a Major Component, but which is  not  part
	      of  that	Major  Component, and (b) serves only to enable	use of
	      the work with that Major Component, or to	implement  a  Standard
	      Interface	for which an implementation is available to the	public
	      in  source  code	form.  A ``Major Component'', in this context,
	      means a major essential component	(kernel, window	system,	and so
	      on) of the specific operating system (if any) on which the  exe-
	      cutable work runs, or a compiler used to produce the work, or an
	      object code interpreter used to run it.

	      The  ``Corresponding  Source''  for  a  work in object code form
	      means all	the source code	needed to generate, install, and  (for
	      an  executable work) run the object code and to modify the work,
	      including	scripts	to control those activities.  However, it does
	      not include the  work's  System  Libraries,  or  general-purpose
	      tools or generally available free	programs which are used	unmod-
	      ified  in	 performing those activities but which are not part of
	      the work.	 For example, Corresponding Source includes  interface
	      definition  files	associated with	source files for the work, and
	      the source code for shared libraries and dynamically linked sub-
	      programs that the	work is	specifically designed to require, such
	      as by intimate data communication	or control flow	between	 those
	      subprograms and other parts of the work.

	      The  Corresponding  Source  need not include anything that users
	      can regenerate automatically from	other parts of the Correspond-
	      ing Source.

	      The Corresponding	Source for a work in source code form is  that
	      same work.

       Basic Permissions.
	      All  rights  granted under this License are granted for the term
	      of copyright on the Program, and are  irrevocable	 provided  the
	      stated conditions	are met.  This License explicitly affirms your
	      unlimited	 permission to run the unmodified Program.  The	output
	      from running a covered work is covered by	this License  only  if
	      the output, given	its content, constitutes a covered work.  This
	      License  acknowledges  your  rights of fair use or other equiva-
	      lent, as provided	by copyright law.

	      You may make, run	and propagate covered works that  you  do  not
	      convey, without conditions so long as your license otherwise re-
	      mains  in	force.	You may	convey covered works to	others for the
	      sole purpose of having them make modifications  exclusively  for
	      you,  or	provide	 you  with facilities for running those	works,
	      provided that you	comply with the	terms of this License in  con-
	      veying  all  material  for  which	 you do	not control copyright.
	      Those thus making	or running the covered works for you  must  do
	      so exclusively on	your behalf, under your	direction and control,
	      on terms that prohibit them from making any copies of your copy-
	      righted material outside their relationship with you.

	      Conveying	 under any other circumstances is permitted solely un-
	      der the conditions stated	below.	Sublicensing is	 not  allowed;
	      section 10 makes it unnecessary.

       Protecting Users' Legal Rights From Anti-Circumvention Law.
	      No covered work shall be deemed part of an effective technologi-
	      cal  measure under any applicable	law fulfilling obligations un-
	      der article 11 of	the WIPO copyright treaty adopted on 20	Decem-
	      ber 1996,	or similar laws	prohibiting or restricting  circumven-
	      tion of such measures.

	      When  you	 convey	 a  covered work, you waive any	legal power to
	      forbid circumvention of technological  measures  to  the	extent
	      such  circumvention  is effected by exercising rights under this
	      License with respect to the covered work,	and you	 disclaim  any
	      intention	 to  limit  operation or modification of the work as a
	      means of enforcing, against the work's users, your or third par-
	      ties' legal rights to forbid circumvention of technological mea-
	      sures.

       Conveying Verbatim Copies.
	      You may convey verbatim copies of	the Program's source  code  as
	      you  receive  it,	in any medium, provided	that you conspicuously
	      and appropriately	publish	on each	copy an	appropriate  copyright
	      notice;  keep  intact  all notices stating that this License and
	      any non-permissive terms added in	accord with section 7 apply to
	      the code;	keep intact all	notices	of the	absence	 of  any  war-
	      ranty; and give all recipients a copy of this License along with
	      the Program.

	      You may charge any price or no price for each copy that you con-
	      vey, and you may offer support or	warranty protection for	a fee.

       Conveying Modified Source Versions.
	      You may convey a work based on the Program, or the modifications
	      to produce it from the Program, in the form of source code under
	      the terms	of section 4, provided that you	also meet all of these
	      conditions:

	      The  work	must carry prominent notices stating that you modified
	      it, and giving a relevant	date.

	      The work must carry prominent notices stating  that  it  is  re-
	      leased under this	License	and any	conditions added under section
	      7.   This	 requirement  modifies the requirement in section 4 to
	      ``keep intact all	notices''.

	      You must license the entire work,	as a whole, under this License
	      to anyone	who comes into possession of  a	 copy.	 This  License
	      will  therefore apply, along with	any applicable section 7 addi-
	      tional terms, to the whole of the	work, and all its  parts,  re-
	      gardless	of  how	they are packaged.  This License gives no per-
	      mission to license the work in any other way, but	 it  does  not
	      invalidate such permission if you	have separately	received it.

	      If  the  work has	interactive user interfaces, each must display
	      Appropriate Legal	Notices; however, if the Program has  interac-
	      tive  interfaces	that do	not display Appropriate	Legal Notices,
	      your work	need not make them do so.

	      A	compilation of a covered work with other separate and indepen-
	      dent works, which	are not	by their nature	extensions of the cov-
	      ered work, and which are not combined with it such as to form  a
	      larger  program,	in or on a volume of a storage or distribution
	      medium, is called	an ``aggregate'' if the	 compilation  and  its
	      resulting	 copyright  are	 not used to limit the access or legal
	      rights of	the compilation's users	 beyond	 what  the  individual
	      works  permit.  Inclusion	of a covered work in an	aggregate does
	      not cause	this License to	apply to the other parts of the	aggre-
	      gate.

       Conveying Non-Source Forms.
	      You may convey a covered work in	object	code  form  under  the
	      terms of sections	4 and 5, provided that you also	convey the ma-
	      chine-readable  Corresponding Source under the terms of this Li-
	      cense, in	one of these ways:

	      Convey the object	code in, or embodied in,  a  physical  product
	      (including  a  physical distribution medium), accompanied	by the
	      Corresponding Source fixed on a durable physical medium  custom-
	      arily used for software interchange.

	      Convey  the  object  code	in, or embodied	in, a physical product
	      (including a physical distribution  medium),  accompanied	 by  a
	      written  offer,  valid for at least three	years and valid	for as
	      long as you offer	spare parts or customer	support	for that prod-
	      uct model, to give anyone	who possesses the object  code	either
	      (1)  a  copy of the Corresponding	Source for all the software in
	      the product that is covered by this License, on a	durable	physi-
	      cal medium customarily used  for	software  interchange,	for  a
	      price no more than your reasonable cost of physically performing
	      this  conveying of source, or (2)	access to copy the Correspond-
	      ing Source from a	network	server at no charge.

	      Convey individual	copies of the object code with a copy  of  the
	      written  offer to	provide	the Corresponding Source.  This	alter-
	      native is	allowed	only  occasionally  and	 noncommercially,  and
	      only  if you received the	object code with such an offer,	in ac-
	      cord with	subsection 6b.

	      Convey the object	code by	 offering  access  from	 a  designated
	      place  (gratis  or for a charge),	and offer equivalent access to
	      the Corresponding	Source in the same way through the same	 place
	      at  no  further charge.  You need	not require recipients to copy
	      the Corresponding	Source along with the  object  code.   If  the
	      place  to	 copy  the object code is a network server, the	Corre-
	      sponding Source may be on	a different server (operated by	you or
	      a	third party) that supports equivalent copying facilities, pro-
	      vided you	maintain clear directions next to the object code say-
	      ing where	to find	the Corresponding Source.  Regardless of  what
	      server  hosts  the Corresponding Source, you remain obligated to
	      ensure that it is	available for as long  as  needed  to  satisfy
	      these requirements.

	      Convey the object	code using peer-to-peer	transmission, provided
	      you  inform  other peers where the object	code and Corresponding
	      Source of	the work are being offered to the general public at no
	      charge under subsection 6d.

	      A	separable portion of the object	code, whose source code	is ex-
	      cluded from the Corresponding Source as a	System	Library,  need
	      not be included in conveying the object code work.

	      A	 ``User	 Product'' is either (1) a ``consumer product'', which
	      means any	tangible personal property which is normally used  for
	      personal,	 family,  or  household	 purposes, or (2) anything de-
	      signed or	sold for incorporation into a dwelling.	 In  determin-
	      ing  whether  a  product	is  a consumer product,	doubtful cases
	      shall be resolved	in favor of coverage.  For a particular	 prod-
	      uct received by a	particular user, ``normally used'' refers to a
	      typical  or  common  use of that class of	product, regardless of
	      the status of the	particular user	or of the  way	in  which  the
	      particular user actually uses, or	expects	or is expected to use,
	      the  product.   A	 product  is  a	consumer product regardless of
	      whether the product has substantial  commercial,	industrial  or
	      non-consumer  uses, unless such uses represent the only signifi-
	      cant mode	of use of the product.

	      ``Installation Information'' for a User Product means any	 meth-
	      ods,  procedures,	 authorization	keys, or other information re-
	      quired to	install	and execute modified  versions	of  a  covered
	      work  in that User Product from a	modified version of its	Corre-
	      sponding Source.	The information	must suffice  to  ensure  that
	      the  continued  functioning of the modified object code is in no
	      case prevented or	interfered with	 solely	 because  modification
	      has been made.

	      If  you  convey  an  object  code	work under this	section	in, or
	      with, or specifically for	use in,	a User Product,	and  the  con-
	      veying  occurs  as  part	of a transaction in which the right of
	      possession and use of the	User Product is	transferred to the re-
	      cipient in perpetuity or for a fixed term	(regardless of how the
	      transaction is characterized), the Corresponding Source conveyed
	      under this section must be accompanied by	the  Installation  In-
	      formation.   But	this requirement does not apply	if neither you
	      nor any third party retains the ability to install modified  ob-
	      ject  code  on  the User Product (for example, the work has been
	      installed	in ROM).

	      The requirement to provide Installation Information does not in-
	      clude a requirement to continue to provide support service, war-
	      ranty, or	updates	for a work that	has been modified or installed
	      by the recipient,	or for the User	Product	in which it  has  been
	      modified	or  installed.	Access to a network may	be denied when
	      the modification itself materially and adversely affects the op-
	      eration of the network or	violates the rules and	protocols  for
	      communication across the network.

	      Corresponding Source conveyed, and Installation Information pro-
	      vided,  in  accord with this section must	be in a	format that is
	      publicly documented (and with an implementation available	to the
	      public in	source code form), and must require no	special	 pass-
	      word or key for unpacking, reading or copying.

       Additional Terms.
	      ``Additional  permissions''  are terms that supplement the terms
	      of this License by making	exceptions from	one  or	 more  of  its
	      conditions.   Additional	permissions that are applicable	to the
	      entire Program shall be treated as though	they were included  in
	      this License, to the extent that they are	valid under applicable
	      law.   If	 additional permissions	apply only to part of the Pro-
	      gram, that part may be used separately under those  permissions,
	      but  the entire Program remains governed by this License without
	      regard to	the additional permissions.

	      When you convey a	copy of	a covered work,	you may	at your	option
	      remove any additional permissions	from that copy,	 or  from  any
	      part  of	it.  (Additional permissions may be written to require
	      their own	removal	in certain cases when you  modify  the	work.)
	      You  may	place additional permissions on	material, added	by you
	      to a covered work, for which you have or	can  give  appropriate
	      copyright	permission.

	      Notwithstanding  any other provision of this License, for	mater-
	      ial you add to a covered work, you may  (if  authorized  by  the
	      copyright	holders	of that	material) supplement the terms of this
	      License with terms:

	      Disclaiming  warranty or limiting	liability differently from the
	      terms of sections	15 and 16 of this License; or

	      Requiring	preservation of	specified reasonable legal notices  or
	      author attributions in that material or in the Appropriate Legal
	      Notices displayed	by works containing it;	or

	      Prohibiting misrepresentation of the origin of that material, or
	      requiring	 that  modified	versions of such material be marked in
	      reasonable ways as different from	the original version; or

	      Limiting the use for publicity purposes of names of licensors or
	      authors of the material; or

	      Declining	to grant rights	under trademark	law for	 use  of  some
	      trade names, trademarks, or service marks; or

	      Requiring	indemnification	of licensors and authors of that mate-
	      rial by anyone who conveys the material (or modified versions of
	      it)  with	contractual assumptions	of liability to	the recipient,
	      for any liability	that these  contractual	 assumptions  directly
	      impose on	those licensors	and authors.

	      All  other non-permissive	additional terms are considered	``fur-
	      ther restrictions'' within the meaning of	section	 10.   If  the
	      Program as you received it, or any part of it, contains a	notice
	      stating  that  it	 is governed by	this License along with	a term
	      that is a	further	restriction, you may remove that term.	 If  a
	      license  document	contains a further restriction but permits re-
	      licensing	or conveying under this	License, you may add to	a cov-
	      ered work	material governed by the terms of that	license	 docu-
	      ment,  provided  that  the  further restriction does not survive
	      such relicensing or conveying.

	      If you add terms to a covered work in accord with	this  section,
	      you must place, in the relevant source files, a statement	of the
	      additional terms that apply to those files, or a notice indicat-
	      ing where	to find	the applicable terms.

	      Additional terms,	permissive or non-permissive, may be stated in
	      the  form	 of  a separately written license, or stated as	excep-
	      tions; the above requirements apply either way.

       Termination.
	      You may not propagate or modify a	covered	 work  except  as  ex-
	      pressly  provided	 under this License.  Any attempt otherwise to
	      propagate	or modify it is	void, and will automatically terminate
	      your rights under	this License (including	 any  patent  licenses
	      granted under the	third paragraph	of section 11).

	      However,	if  you	cease all violation of this License, then your
	      license from a particular	copyright  holder  is  reinstated  (a)
	      provisionally,  unless and until the copyright holder explicitly
	      and finally terminates your license, and (b) permanently,	if the
	      copyright	holder fails to	notify you of the  violation  by  some
	      reasonable means prior to	60 days	after the cessation.

	      Moreover,	your license from a particular copyright holder	is re-
	      instated permanently if the copyright holder notifies you	of the
	      violation	 by  some reasonable means, this is the	first time you
	      have received notice of violation	of this	License	(for any work)
	      from that	copyright holder, and you cure the violation prior  to
	      30 days after your receipt of the	notice.

	      Termination of your rights under this section does not terminate
	      the  licenses of parties who have	received copies	or rights from
	      you under	this License.  If your rights have been	terminated and
	      not permanently reinstated, you do not qualify  to  receive  new
	      licenses for the same material under section 10.

       Acceptance Not Required for Having Copies.
	      You  are not required to accept this License in order to receive
	      or run a copy of the Program.  Ancillary propagation of  a  cov-
	      ered  work  occurring  solely as a consequence of	using peer-to-
	      peer transmission	to receive a copy likewise  does  not  require
	      acceptance.  However, nothing other than this License grants you
	      permission  to  propagate	or modify any covered work.  These ac-
	      tions infringe copyright if you  do  not	accept	this  License.
	      Therefore, by modifying or propagating a covered work, you indi-
	      cate your	acceptance of this License to do so.

       Automatic Licensing of Downstream Recipients.
	      Each time	you convey a covered work, the recipient automatically
	      receives	a  license from	the original licensors,	to run,	modify
	      and propagate that work, subject to this License.	 You  are  not
	      responsible  for enforcing compliance by third parties with this
	      License.

	      An ``entity transaction''	is a transaction transferring  control
	      of  an organization, or substantially all	assets of one, or sub-
	      dividing an organization,	or merging organizations.  If propaga-
	      tion of a	covered	work results from an entity transaction,  each
	      party  to	 that transaction who receives a copy of the work also
	      receives whatever	licenses to the	work the  party's  predecessor
	      in interest had or could give under the previous paragraph, plus
	      a	 right	to  possession of the Corresponding Source of the work
	      from the predecessor in interest,	if the predecessor has	it  or
	      can get it with reasonable efforts.

	      You  may	not impose any further restrictions on the exercise of
	      the rights granted or affirmed under this	License.  For example,
	      you may not impose a license fee,	royalty, or other  charge  for
	      exercise	of  rights granted under this License, and you may not
	      initiate litigation (including a cross-claim or counterclaim  in
	      a	 lawsuit)  alleging that any patent claim is infringed by mak-
	      ing, using, selling, offering for	sale, or importing the Program
	      or any portion of	it.

       Patents.
	      A	``contributor''	is a copyright holder who authorizes use under
	      this License of the Program or a work on which  the  Program  is
	      based.   The  work  thus	licensed  is  called the contributor's
	      ``contributor version''.

	      A	contributor's  ``essential  patent  claims''  are  all	patent
	      claims  owned  or	controlled by the contributor, whether already
	      acquired or hereafter acquired, that would be infringed by  some
	      manner,  permitted by this License, of making, using, or selling
	      its contributor version, but do not include claims that would be
	      infringed	only as	a consequence of further modification  of  the
	      contributor  version.   For  purposes of this definition,	``con-
	      trol'' includes the right	to grant patent	sublicenses in a  man-
	      ner consistent with the requirements of this License.

	      Each contributor grants you a non-exclusive, worldwide, royalty-
	      free  patent  license  under  the	contributor's essential	patent
	      claims, to make, use, sell, offer	for sale, import and otherwise
	      run, modify and propagate	the contents of	its  contributor  ver-
	      sion.

	      In  the  following three paragraphs, a ``patent license''	is any
	      express agreement	or commitment, however denominated, not	to en-
	      force a patent (such as an  express  permission  to  practice  a
	      patent  or  covenant  not	 to  sue for patent infringement).  To
	      ``grant''	such a patent license to a party means to make such an
	      agreement	or commitment not to  enforce  a  patent  against  the
	      party.

	      If  you convey a covered work, knowingly relying on a patent li-
	      cense, and the Corresponding Source of the work is not available
	      for anyone to copy, free of charge and under the terms  of  this
	      License,	through	 a  publicly available network server or other
	      readily accessible means,	then you must  either  (1)  cause  the
	      Corresponding  Source  to	be so available, or (2)	arrange	to de-
	      prive yourself of	the benefit of the  patent  license  for  this
	      particular work, or (3) arrange, in a manner consistent with the
	      requirements  of	this  License, to extend the patent license to
	      downstream recipients.  ``Knowingly relying'' means you have ac-
	      tual knowledge that, but for the patent license, your  conveying
	      the  covered  work  in a country,	or your	recipient's use	of the
	      covered work in a	country, would infringe	one or more  identifi-
	      able patents in that country that	you have reason	to believe are
	      valid.

	      If,  pursuant  to	 or in connection with a single	transaction or
	      arrangement, you convey, or propagate  by	 procuring  conveyance
	      of,  a  covered  work, and grant a patent	license	to some	of the
	      parties receiving	the covered  work  authorizing	them  to  use,
	      propagate, modify	or convey a specific copy of the covered work,
	      then  the	 patent	license	you grant is automatically extended to
	      all recipients of	the covered work and works based on it.

	      A	patent license is ``discriminatory'' if	it  does  not  include
	      within  the scope	of its coverage, prohibits the exercise	of, or
	      is conditioned on	the non-exercise of one	or more	of the	rights
	      that  are	 specifically granted under this License.  You may not
	      convey a covered work if you are a party to an arrangement  with
	      a	 third party that is in	the business of	distributing software,
	      under which you make payment to the third	party based on the ex-
	      tent of your activity of conveying the work, and under which the
	      third party grants, to any of the	parties	who would receive  the
	      covered  work  from  you,	a discriminatory patent	license	(a) in
	      connection with copies of	the covered work conveyed by  you  (or
	      copies made from those copies), or (b) primarily for and in con-
	      nection  with specific products or compilations that contain the
	      covered work, unless you entered into that arrangement, or  that
	      patent license was granted, prior	to 28 March 2007.

	      Nothing  in this License shall be	construed as excluding or lim-
	      iting any	implied	license	or other defenses to infringement that
	      may otherwise be available to you	under applicable patent	law.

       No Surrender of Others' Freedom.
	      If conditions are	imposed	on you (whether	by court order,	agree-
	      ment or otherwise) that contradict the conditions	 of  this  Li-
	      cense,  they  do	not excuse you from the	conditions of this Li-
	      cense.  If you cannot convey a covered work so as	to satisfy si-
	      multaneously your	obligations under this License and  any	 other
	      pertinent	 obligations, then as a	consequence you	may not	convey
	      it at all.  For example, if you agree to terms that obligate you
	      to collect a royalty for further conveying from  those  to  whom
	      you  convey  the	Program,  the  only way	you could satisfy both
	      those terms and this License would be to refrain	entirely  from
	      conveying	the Program.

       Use with	the GNU	Affero General Public License.
	      Notwithstanding  any  other  provision of	this License, you have
	      permission to link or combine any	covered	work with a  work  li-
	      censed  under version 3 of the GNU Affero	General	Public License
	      into a single combined work, and to convey the  resulting	 work.
	      The  terms  of  this  License will continue to apply to the part
	      which is the covered work, but the special requirements  of  the
	      GNU Affero General Public	License, section 13, concerning	inter-
	      action through a network will apply to the combination as	such.

       Revised Versions	of this	License.
	      The Free Software	Foundation may publish revised and/or new ver-
	      sions of the GNU General Public License from time	to time.  Such
	      new  versions  will be similar in	spirit to the present version,
	      but may differ in	detail to address new problems or concerns.

	      Each version is given a distinguishing version number.   If  the
	      Program  specifies  that	a  certain numbered version of the GNU
	      General Public License ``or any later version'' applies  to  it,
	      you have the option of following the terms and conditions	either
	      of  that	numbered  version or of	any later version published by
	      the Free Software	Foundation.  If	the Program does not specify a
	      version number of	the GNU	General	Public License,	you may	choose
	      any version ever published by the	Free Software Foundation.

	      If the Program specifies that a proxy can	 decide	 which	future
	      versions	of  the	 GNU  General Public License can be used, that
	      proxy's public statement of acceptance of	a version  permanently
	      authorizes you to	choose that version for	the Program.

	      Later license versions may give you additional or	different per-
	      missions.	 However, no additional	obligations are	imposed	on any
	      author  or copyright holder as a result of your choosing to fol-
	      low a later version.

       Disclaimer of Warranty.
	      THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
	      APPLICABLE LAW.  EXCEPT WHEN OTHERWISE  STATED  IN  WRITING  THE
	      COPYRIGHT	 HOLDERS AND/OR	OTHER PARTIES PROVIDE THE PROGRAM ``AS
	      IS'' WITHOUT WARRANTY OF ANY KIND, EITHER	EXPRESSED OR  IMPLIED,
	      INCLUDING,  BUT  NOT  LIMITED TO,	THE IMPLIED WARRANTIES OF MER-
	      CHANTABILITY AND FITNESS FOR A PARTICULAR	PURPOSE.   THE	ENTIRE
	      RISK  AS	TO  THE	QUALITY	AND PERFORMANCE	OF THE PROGRAM IS WITH
	      YOU.  SHOULD THE PROGRAM PROVE DEFECTIVE,	YOU ASSUME THE COST OF
	      ALL NECESSARY SERVICING, REPAIR OR CORRECTION.

       Limitation of Liability.
	      IN NO EVENT UNLESS REQUIRED BY APPLICABLE	LAW OR	AGREED	TO  IN
	      WRITING  WILL ANY	COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODI-
	      FIES AND/OR CONVEYS THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO
	      YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL,	INCIDENTAL  OR
	      CONSEQUENTIAL DAMAGES ARISING OUT	OF THE USE OR INABILITY	TO USE
	      THE  PROGRAM  (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA
	      BEING RENDERED INACCURATE	OR LOSSES SUSTAINED BY	YOU  OR	 THIRD
	      PARTIES  OR  A  FAILURE OF THE PROGRAM TO	OPERATE	WITH ANY OTHER
	      PROGRAMS), EVEN IF SUCH HOLDER OR	OTHER PARTY HAS	 BEEN  ADVISED
	      OF THE POSSIBILITY OF SUCH DAMAGES.

       Interpretation of Sections 15 and 16.
	      If  the  disclaimer of warranty and limitation of	liability pro-
	      vided above cannot be given  local  legal	 effect	 according  to
	      their  terms,  reviewing	courts shall apply local law that most
	      closely approximates an absolute waiver of all  civil  liability
	      in  connection with the Program, unless a	warranty or assumption
	      of liability accompanies a copy of the Program in	return	for  a
	      fee.

	      If  you  develop	a  new	program,  and you want it to be	of the
	      greatest possible	use to the public, the	best  way  to  achieve
	      this is to make it free software which everyone can redistribute
	      and change under these terms.

	      To  do  so,  attach the following	notices	to the program.	 It is
	      safest to	attach them to the start of each source	file  to  most
	      effectively  state  the  exclusion  of  warranty;	 and each file
	      should have at least the ``copyright'' line  and	a  pointer  to
	      where the	full notice is found.

	      ONE LINE TO GIVE THE PROGRAM'S NAME AND A	BRIEF IDEA OF WHAT IT DOES.
	      Copyright	(C) YEAR NAME OF AUTHOR

	      This program is free software: you can redistribute it and/or modify
	      it under the terms of the	GNU General Public License as published	by
	      the Free Software	Foundation, either version 3 of	the License, or	(at
	      your option) any later version.

	      This program is distributed in the hope that it will be useful, but
	      WITHOUT ANY WARRANTY; without even the implied warranty of
	      MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See	the GNU
	      General Public License for more details.

	      You should have received a copy of the GNU General Public	License
	      along with this program.	If not,	see `http://www.gnu.org/licenses/'.

	      Also add information on how to contact you by electronic and pa-
	      per mail.

	      If the program does terminal interaction,	make it	output a short
	      notice like this when it starts in an interactive	mode:

	      PROGRAM Copyright	(C) YEAR NAME OF AUTHOR
	      This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
	      This is free software, and you are welcome to redistribute it
	      under certain conditions;	type `show c' for details.

	      The  hypothetical	commands `show w' and `show c' should show the
	      appropriate parts	of the General	Public	License.   Of  course,
	      your program's commands might be different; for a	GUI interface,
	      you would	use an ``about box''.

	      You  should also get your	employer (if you work as a programmer)
	      or school, if any, to sign a ``copyright	disclaimer''  for  the
	      program, if necessary.  For more information on this, and	how to
	      apply  and  follow  the  GNU  GPL,  see  `http://www.gnu.org/li-
	      censes/'.

	      The GNU General Public License  does  not	 permit	 incorporating
	      your  program  into  proprietary programs.  If your program is a
	      subroutine library, you may consider it more  useful  to	permit
	      linking  proprietary  applications with the library.  If this is
	      what you want to do, use the GNU Lesser General  Public  License
	      instead	 of    this   License.	  But	first,	 please	  read
	      `http://www.gnu.org/philosophy/why-not-lgpl.html'.

GNU				    $Date:			     xboard(6)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=xboard&sektion=6&manpath=FreeBSD+Ports+14.3.quarterly>

home | help