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 ev-
	      eryone'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 aLoad me-
	      nitioned engine asa 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  aSelect Engine from Lista
	      drop-down	list, all other	fields of the dialog will be  ignored.
	      In  other	cases, you have	to specify the engine executable, pos-
	      sible 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  automati-
	      cally  from  the	specification  of the engine executable).  You
	      will also	have to	specify	(with the aid of  checkboxes)  if  the
	      engine  is  UCI.	 If  aAdd  this	 engine	to the lista is	ticked
	      (which it	is by default),	the engine will	be added to  the  list
	      of  installed  engines 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 anicknamea, 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-en-
	      gine games.  The info you	supply with the	checkboxes whether the
	      engine  should  use GUI book, or (for variant engines) automati-
	      cally switch to the current 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 aWB protocol	v1a 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  aOKa.   Provided  that  you
	      specify  participants;  without  participants no tournament file
	      will be made, but	other entered values (e.g. for the  file  with
	      opening 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 aTourney participantsa memo.  The latter is	a nor-
	      mal  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.  XBoardas
	      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	agauntlet  en-
	      ginesa  play  an	independent  set  of opponents.	 In the	latter
	      case, you	specify	the number of gauntlet engines.	 E.g.  if  you
	      specified	 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
	      specified	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 anumber of games per pairinga, or by
	      repeating	the entire  tournament	schedule  a  number  of	 times
	      (specified by the	anumber	of tourney cyclesa).  The total	number
	      of times two engine meet will be the product of these two.   De-
	      fault 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 pro-
	      cesses, so that the generally insatiable hunger for CPU time  of
	      chess  engines  does not interfere so much with smooth operation
	      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 aresults N stringa,
	      (where N is the number of	participants, and string  the  results
	      so  far  in  the format of the results option), and apairing Na,
	      (where N is the number of	the tourney game).  To the latter  the
	      pairing  engine should answer with aA-Ba,	where A	and B are par-
	      ticipant numbers (in the range 1-N).  (There should be no	 reply
	      to the results 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
       `Reload Same Game' from the `File' menu to get back to the original po-
       sition, 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	 mate-
	      rial  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)

NAME | SYNOPSIS | DESCRIPTION | MAJOR MODES | BASIC OPERATION | MENUS, BUTTONS, AND KEYS | OPTIONS | CHESS SERVERS | FIREWALLS | ENVIRONMENT VARIABLES | LIMITATIONS AND KNOWN BUGS | REPORTING PROBLEMS | AUTHORS AND CONTRIBUTORS | CMAIL | OTHER PROGRAMS YOU CAN USE WITH XBOARD | COPYRIGHT | GNU GENERAL PUBLIC LICENSE

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

home | help