Note that you can also click on the clocks to set the opposite
side to move (adding a so-called @samp{null move} to the game).
+You can also tell the engine to exclude some moves from analysis.
+(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-clicking those will exclude the currently best move,
+or all moves not explicitly listed in the header line.
+Once you leave the current position all memory of excluded
+moves will be lost when you return there.
+
+
+Selecting this menu item while already in @samp{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.
+
@item Analyze Game
@cindex Analyze Game, Menu Item
This option subjects the currently loaded game to automatic
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 @samp{Analyze Game} was already switched on,
+the analysis will continue 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 controlled
-through the command-line option @samp{-timeDelay}.
+through the command-line option @samp{-timeDelay},
+which can also be set from the @samp{Load Game Options} menu dialog.
Note: Some chess engines do not support Analysis mode.
@item Edit Game
Duplicate of the item in the Edit menu.
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 contains the options
+
+@example
+-settingsFile ~/.yboardrc
+-saveSettingsFile ~/.yboardrc
+@end example
+
+@noindent
+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).
@item Save Settings on Exit
@cindex Save Settings on Exit, Menu Item
Setting this option has no immediate effect, but causes the settings
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 @samp{\} character followed by a newline. It is easier to set
-the option from your @file{.Xresources} file; in that case you can
-include the character sequence @samp{\n} in the string, and it will
-be converted to a newline.
+entering a @samp{\} character followed by a newline.
+Using the character sequence @samp{\n} in the string should work too, though.
If you change this option, don't remove the @samp{new}
command; it is required by all chess engines to
your xterm. Bold can be 1 or 0. If background is omitted, ``default''
is assumed; if bold is omitted, 0 is assumed.
-Here is an example of how to set the colors in your @file{.Xresources} file.
-The colors shown here are the default values; you will get
-them if you turn @code{-colorize} on without specifying your own colors.
-CShout is synonymous with SShout.
-
-@example
-xboard*colorizeMessages: true
-xboard*colorShout: green
-xboard*colorSShout: green, black, 1
-xboard*colorChannel1: cyan
-xboard*colorChannel: cyan, black, 1
-xboard*colorKibitz: magenta, black, 1
-xboard*colorTell: yellow, black, 1
-xboard*colorChallenge: red, black, 1
-xboard*colorRequest: red
-xboard*colorSeek: blue
-xboard*colorNormal: default
-@end example
@item -soundProgram progname
@cindex soundProgram, option
@cindex Sounds
This sound is played when an ICS game that you are participating in is
aborted, adjourned, or otherwise ends inconclusively. Default: "" (no
sound).
-
-Here is an example of how to set the sounds in your @file{.Xresources} file:
-
-@example
-xboard*soundShout: shout.wav
-xboard*soundSShout: sshout.wav
-xboard*soundChannel1: channel1.wav
-xboard*soundChannel: channel.wav
-xboard*soundKibitz: kibitz.wav
-xboard*soundTell: tell.wav
-xboard*soundChallenge: challenge.wav
-xboard*soundRequest: request.wav
-xboard*soundSeek: seek.wav
-xboard*soundMove: move.wav
-xboard*soundIcsWin: win.wav
-xboard*soundIcsLoss: lose.wav
-xboard*soundIcsDraw: draw.wav
-xboard*soundIcsUnfinished: unfinished.wav
-xboard*soundIcsAlarm: alarm.wav
-@end example
@end table
@node Load and Save options
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.
+@item -autoCopyPV true|false
+@cindex autoCopyPV, option
+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.
@item -dropMenu true|false
@cindex dropMenu, option
This option allows you to emulate old behavior,
xboard -ics -icshost firewall.example.com -icsport 23
@end example
@noindent
-Or in your @file{.Xresources} file:
-
-@example
-XBoard*internetChessServerHost: firewall.example.com
-XBoard*internetChessServerPort: 23
-@end example
-@noindent
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
@end example
@noindent
-Or in your @file{.Xresources} file:
-
-@example
-XBoard*gateway: rsh.example.com
-XBoard*internetChessServerHost: chessclub.com
-@end example
-
Then when you run XBoard in ICS mode, it will connect to
the ICS by using @file{rsh} to run the command
@samp{telnet chessclub.com 5000} on host @samp{rsh.example.com}.
@end example
@noindent
-Or in your @file{.Xresources} file:
-
-@example
-XBoard*useTelnet: true
-XBoard*telnetProgram: ptelnet
-@end example
-
-@noindent
Then when you run XBoard in ICS mode, it will issue the
command @samp{ptelnet chessclub.com 5000} to connect to the ICS.
that is, your @file{ptelnet} program doesn't let you connect to
alternative ports. As noted above, your chess server may allow you to
connect on port 23 instead. In that case, just add the option
-@samp{-icsport ""} to the above command, or add
-@samp{XBoard*internetChessServerPort:} to your @file{.Xresources} file.
+@samp{-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 @samp{foo.edu}. Set
@end example
@noindent
-Or in your @file{.Xresources} file:
-
-@example
-XBoard*useTelnet: true
-XBoard*telnetProgram: ptelnet
-XBoard*internetChessServerHost: foo.edu
-XBoard*internetChessServerPort:
-@end example
-
-@noindent
Then when you run XBoard in ICS mode, it will issue the
command @samp{ptelnet foo.edu} to connect to your account at
@samp{foo.edu}. Log in there, then type @samp{telnet chessclub.com 5000}.
@example
xboard -pixmap ~/fritz4
@end example
-
-Alternatively, you can add this line to your @file{.Xresources} file:
-
-@example
-xboard*pixmapDirectory: ~/fritz4
-@end example
@end table
(*) ZIICS is a separate copyrighted work of Andy McFarland.