Download as rtf, pdf, or txt
Download as rtf, pdf, or txt
You are on page 1of 82

+$#K

WinBoard: Chessboard for Windows

An updated description with the release of version 4.2010xxxx. For the ultimate WinBoard Experience New features since WinBoard 4.2.7 that are implemented in Allessandro Scottis Winboard_x are highlighted in red. New features in the WinBoard 4.3.xx series by H.G. Muller are highlighted in green, that in the unified 4.4 series in blue. Additions for the 4.5 series are in purple.
K#

Description WinBoard is a graphical user interface for chess. It displays a chessboard on the screen, accepts moves made with the mouse, and loads and saves game files in standard chess notation. WinBoard serves as a front-end for many different services, including: Chess engines that run on your PC. You can play a game against an engine, set up arbitrary positions, force variations, or watch a game between two engines. Fairy-Max is supplied with WinBoard 4.3.14, and over 100 other free chess engines are available separately. Of these, Crafty is the most popular. See Installing Chess Engines for instructions on installing additional chess engines. Chess servers on the Internet. You can play against other Internet Chess Server (ICS) users, observe games they are playing, review games in the ICS libraries, chat, analyze observed games with a chess program, and more. WinBoard can also be used to run an automated computer player on the ICS, but this feature is for advanced users only and is subject to some caveats; see the separate file zippy.README for information. The Web and your own saved games. You can use WinBoard as a helper application to view files in your Web browser or the Explorer. You can use it to keep track of email postal games, browse games off the net, or review games you have saved.

K#

Getting Started WinBoard starts up in one of three major modes: chess engine mode, ICS client mode, or game viewer mode. You cannot change modes while WinBoard is running, but you can access all the game viewer features directly from the other two modes. Also, you can start WinBoard several times to get multiple chessboard windows running in any combination of modes. You will usually run WinBoard by choosing an item from the Windows Start menu that runs it in the mode you want. If you just double-click on WinBoard.exe, you get a startup dialog asking which mode you want. If you choose chess engine mode, you can then select from the installed engines; if you choose ICS client mode, you can then select from a list of known chess servers. More advanced users can customize these lists or type in WinBoard command line options directly. After starting WinBoard, you can make K#moves in several different ways. To move by dragging, press the left mouse button while the cursor is on one of your pieces, move the cursor to another square, and release the button. You can also move by clicking the left mouse button once (press and release) over one of your pieces, moving the cursor to another square, and clicking again. You drop new pieces on the board (when applicable) by similarly dragging them from the holdings displayed next to the board. The old way of selecting them from a context menu can still be enabled by an option. Press the right mouse button over a square to bring up the menu; no menu will come up in modes where dropping a new piece is not permitted. Normally pressing the right mouse button will enable you to see the position at the end of the PV given by an active engine as thinking output. Moving the mouse with the right button kept down will allow you to step through this PV. You can also make moves by typing them in standard algebraic chess notation. Either a dialog box will pop up for you to type into, or in ICS mode, your typing will be redirected into the ICS interaction window. In the dialog box you can also type a move number, to call up the position of the current game after that move in the display, or (in Edit Position mode) type a FEN. When WinBoard is iconized, its K#icon is a white knight if it is White's turn to move, a black knight if it is

Black's turn. Next to the main window, WinBoard does use many auxiliary windows for dedicated tasks. We mention the Engine-Output window (formerly analysis window) for a better display of the thinking output of engines (which you can then right-click to play out the selected PV in the board window), the GameHistory window (where the game is displayed in SAN, and where you can double-click a move to call up the corresponding position in the board window), the Evaluation Graph window (where you see a graph of engine scores vs. move number, and can call up the corresponding position in the board window by clicking a point on the graph), the Comment popup (where you can right-click variation comments to play them out on the main board, or add and edit comments), the Game-List window (where you see an overview of all games in a game file you loaded, and can select a game for loading by clicking on it, and limit the list to games you are interested in by filtering). These auxiliary windows can be opened or closed as the need arises. Additional Information Menus Shortcut Buttons Command Line Options Initialization Files Installing Chess Engines Firewalls Limitations Authors Copyright Frequently Asked Questions

K#$+

MENUS

File Menu Mode Menu Action Menu Step Menu Options Menu Help Menu ICS Interaction Context Menu

K#$+

File Menu

K#

New Game (former Reset) Resets WinBoard and the chess engine (if any) to the beginning of a new chess game. In Internet Chess Server mode, clears the current state of WinBoard, then resynchronizes with ICS by sending a refresh command. If you want to stop playing, observing, or examining a game on ICS, use an appropriate command from the Action menu, not New Game.
K#

New Shuffle Game Brings you to a dialog box where you can enter the number of an opening setup for shuffle variants like FRC, or ask for a random number. After pressing OK, a new game is set up, using this position. The chosen position will continue to be used on every subsequent New Game, even if you are playing a variant that normally is not shuffled, until you select a new variant through the New Variant menu. If you enter -1 for the position number, new random number is drawn before every game. The type of shuffling that is done in reaction to a given position number obeys restrictions that depend on the selected variant. In variants that allow castling, Kings remain on the central files, Rooks in the corners. In games with FRC-style castlings, the King starts between the Rooks, but apart from that they could be anywhere. In games without castling, there are no restrictions on King and Rook placement. Pairs of color-bound pieces (such as Bishops) will be placed on oppositely colored squares. In ICS mode this feature has no effect, as the ICS determines the starting position.
K#

New Variant Select a new variant. There are controls to enter a board width, board height and holdings size, but normally you leave them at -1, which means the default value for the selected variant will be used (e.g. 8x8 for normal Chess, 9x10 for xiangqi, 10x8 for capablanca, holdings for 5 pieces in crazyhouse). You can set a deviating value for each of the three parameters (e.g. to play a crazyhouse version of xiangqi or capablanca you would set the holdings to 6 or 7). If the board width deviates from the default, the game will start with an empty board. The variant will remain in force until you select a new one; i.e. subsequent New Game commands will start a new game of the same variant. In ICS mode this command has no effect, as the ICS determines which variant will be played.
K#

Load Game Plays a game from a record file. A popup dialog prompts you for the filename. If the file contains more than one game, a second popup dialog displays a list of games (with information drawn from their PGN tags, if any), and you can select the one you want. The game file parser will accept PGN (portable game notation), or in fact almost any file that contains moves in algebraic notation. 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 a WinBoard 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) appear in the comment popup amongst genuine comments; to walk the variation tree, you have to right-click them in this window. This will cause WinBoard to load them as the current line. You can revert to the previous line with the Revert command. (Beware! Currently WinBoards PGN parser is limited to 3 levels of nesting in variations.) The nonstandard PGN tag [Variant "varname"] functions similarly to the variant command-line option, allowing games in certain chess variants to be loaded. Note that it has to appear before any FEN tag! 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.
K#

Load Next Game

Loads the next game from the last game record file you loaded.
K#

Load Previous Game Loads the previous game from the last game record file you loaded. Not available if the last game was loaded from a pipe.
K#

Reload Same Game Reloads the last game you loaded. Not available if the last game was loaded from a pipe.
K#

Save Game Appends a record of the current game to a file. A popup dialog prompts you for the filename. If the game did not begin with the standard starting position, the game file includes the starting position used. Game files are saved in the PGN (portable game notation) format, unless the oldSaveStyle option is True, in which case they are saved in an older format that is specific to WinBoard. Both formats are humanreadable, and both can be read back by the Load Game command. Notation of the form P@f7 is generated for piece-drops in bughouse games; this is a nonstandard extension to PGN.
K#

Copy Game To Clipboard

Copies the record of the current game to the Windows clipboard in PGN (portable game notation) format.
K#

Paste Game From Clipboard

Plays a game from the Windows clipboard. See Load Game for a discussion of game file format and parser behavior.
K#

Load Position Sets up a position from a position file. A popup dialog prompts you for the filename. Position files must be in FEN (Forsythe-Edwards notation), or in the format that the Save Position command writes when oldSaveStyle is turned on. Note that many variants require an extension of the original FEN standard. WinBoard tries to be as universal as possible in understanding FENs when different standards are raound, but has to make a choice when writing them. In FRC is uses Shredder-FEN (Haha castling notation) , but it understands KQkq as the outermost Rook, so it also reads X-FEN. In Crazyhouse / Bughouse it appends the holdings immediately behind the board info between brackets [], but on input it also understands bFEN (which puts it behind a slash / as if it were an extra board rank). It uses a tilde ~ behind a piece to indicate it is really a promoted Pawn (like bFEN). In Shogi the holdings are printed like in Crazyhouse, but promoted pieces are represented by a plus sign + before the letter of the original piece. Letters used for the pieces can be set with the /pieceToCharTable command-line option.
K#

Load Next Position Loads the next position from the last position file you loaded.
K#

Load Previous Position Loads the previous position from the last position file you loaded. Not available if the last position was loaded from a pipe.
K#

Reload Same Position Reloads the last position you loaded. Not available if the last position was loaded from a pipe.
K#

Save Position Appends a diagram of the current position to a file. A popup dialog prompts you for the filename. Positions are saved in FEN (Forsythe-Edwards notation) format, unless the oldSaveStyle option is True, in which case they are saved in an older, human-readable format that is specific to WinBoard. Both formats can be read back by the Load Position command; however, currently Load Position can load only the first position in a file.
K#

Save Diagram Writes the current board display as a bitmap file. With this command you can use WinBoard as a

diagram generator.
K#

Copy Position To Clipboard

Places a diagram of the current position (in Forsythe-Edwards notation) into the Windows clipboard.
K#

Paste Position From Clipboard Sets up a position from the Windows clipboard. Position must be in FEN (Forsythe-Edwards notation). Puts WinBoard into Edit Game mode if it was not there already.
K#

Exit Exits from WinBoard.

K#$+

Mode Menu

K#

Machine White Forces the chess engine to play white.


K#

Machine Black Forces the chess engine to play black.


K#

Two Machines Starts a game between two chess engines.


K#

Machine Both A single chess engine plays itself. Mainly useful for pseudo-engines, that are in fact communication links to another machine, where you want to observe a game that is being played. (E.g. the gothic-chess.com server). This command is not implemented yet (version 4.3.14).
K#

Analysis Mode In this mode, you can make moves for both sides on the board. After each move, the chess engine will think about possible replies and display its analysis in a separate window. Crafty was the first engine to support this feature, but by now there are many others that support it as well. With respect to playing variations, the same holds as in Edit Game mode. From WinBoard 4.4 on this function can also be invoked in zippy mode, i.e. when you are logged on to an ICS with an engine loaded. In that case it is not your own moves that the engine analyzes, but the moves that are played in a game on the ICS that you are observing. You must start observing before you start the analysis mode! See the file zippy.README for how to connect to an ICS and a chess engine running on your local computer at the same time. (Basically this amounts to adding the /zp command-line option in addition to all options you would need for connecting to the ICS, as well as those needed for running the chess engine.)
K#

Analyze File In this mode, you can load a game from a file, and the chess engine will analyze each move as in Analysis Mode. Crafty was the first engine to support this feature, but by now there are many others that support it as well.
K#

ICS Client This is the normal mode when WinBoard 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. When you run WinBoard in ICS mode, it starts up a console window in which you can type commands and receive text responses from the chess server. You can use the standard Windows editing keys to edit your command line before pressing Enter. The console window keeps a history of the last few commands you typed. Press the up-arrow key to go back to a previous command; press the down-arrow key to go forward again to a later command. Press the right mouse button in the output area for a context menu of editing commands and ICS command shortcuts. Some useful ICS commands include who to see who is logged on, games to see what games are being played, match to challenge another player to a game, observe to observe an ongoing game, examine or smoves to review a recently completed game, and of course help. Whenever you ask to observe an ongoing game, review a completed game, or resume an adjourned game, WinBoard retrieves and parses the list of past moves from the ICS, so you can review them with Forward and Backward or save them with Save Game. In ICS mode a graph of players seeking games can be displayed in stead of the chess board, when you are idle (i.e. not playing, observing or examining). When this feature is enabled, left-clicking in the board area will switch between board and the seek graph. For details on this, see the Seek Graph command.

Some special ICS Client features are activated when you are in examine or bsetup mode on ICS. See the descriptions of the menu commands Forward, Backward, Pause, and Stop Examining below. You can also issue the ICS position-editing commands with the mouse. Move pieces by dragging with the left mouse button, or by left-clicking once on the starting square and once on the ending square. Press the right mouse button over a square for a context menu that lets you drop a new piece, 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. You can also make moves by typing them into the ICS window; you may have to do this occasionally if you are playing a chess variant whose rules WinBoard does not understand. (But this list is getting shorter, and Fischer Random is not on it anymore; you can enter castling there with the mouse by dragging the King on top of the Rook.) If you are playing a bughouse game on the ICS, a list of the offboard pieces that each player holds is shown in the window title bar, and graphically in the holdings area next to the board. To drop an offboard piece, drag it from the holdings to the board. (Pressing the right mouse button over an empty square to bring up a context menu will still work if you have set the /dropMenu option.) To observe your partner's games, start a second copy of WinBoard, log in as a guest, and use the ICS follow or pfollow command in the new window. You can also use the Background Observe or Dual Board features to follow your partners game through a single connection on which you are also playing yourself, in the background (peeking at it by pressing the right mouse button), or on side-by-side boards in the board window.
K#

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, but you can adjust their reading by clicking on them. A leftclick subtracts one minute, a right-click adds one minute. 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 back 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 WinBoard out of ICS Client mode and lets you edit games locally. If you want to edit a game on ICS in a way that other ICS users can see, use the ICS examine command or start an ICS match against yourself. If you edit an existing game locally by playing new moves while not at the end, you will create a new variation. (New moves at the end will simply be appended to the existing game.) WinBoard will then shelve the original variation (main line) from beyond the point where you played a new move. You can later revert to that new line with the Revert or Annotate commands. This will discard the variation you just entered, and restores the moves of the original main line that you overwrote. This procedure can be applied recursively, so you an make (sub-)variations on variations. Rather than entering variations move by move, you can also recall them from PGN variations in the Comment window, by right-clicking those.
K#

Edit Position Lets you set up an arbitrary board position. Use the left mouse button 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 the right mouse button over the square. This brings up a menu of pieces. Additional menu choices let you empty the square or clear the board. You can set the side to play next by clicking on the White or Black indicator at the top of the screen. The pop-up menu also contains options to promote or demote the piece currently in the square. (In variants like Crazyhouse a piece has a different representation when it is a promoted Pawn rater than an original piece.) This allows you to create some of the not-so-common pieces (e.g. a Unicorn is a promoted King, a Commoner is a demoted King). Selecting Edit Position causes WinBoard to discard all remembered moves in the current game. In ICS mode, change made to the position by Edit Position are not sent to the ICS: Edit Position takes WinBoard 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

yourself. (See also ICS Client above.)


K#

Show Engine Output

Open a new window dedicated to showing the thinking output of the engine(s), as controlled by Show Thinking. In ICS mode kibitzed info of an opponent engine can appear here as well, under control of the /autoKibitz option. Right-clicking a line of thinking output will allow you to step through the PV it contains on the main board, by vertically moving the mouse, keeping the right-button pressed. WinBoard 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 o the engine author, and can still be deduced from the time or node count printed with the line.
K#

Show Evaluation Graph

Open a new window dedicated to displaying a graph, representing the development of the engine score(s) from the current game over time. (Needs show Thinking to be enabled in order to work). Clicking a point on the graph selects the corresponding position in the board display.
K#

Show Game List Shows or hides the list of games generated by the last Load Game command.
K#

Show Move History

Open a new window dedicated to showing the game currently in progress. Double-clicking on a move selects the corresponding position in the board display.
K#

Open Chat Window

Open a new window that in ICS mode can be used to display messages received from ICS tell commands from a specified ICS handle, from a channel (when you set the handle to the channel number), shouts / c-shouts, or whispers / kibitzes from co-observers of a game (when you set the handle to shouts, c-shouts, whisper or kibitzes). You have to press the Change button in the chat window to activate the entered handle, or type <Enter>. Typing into the bottom field of the window will send tell messages to the handle or channel, or whispers to co-observers. You can open up to five chat windows. Messages that are diverted to such a chat window will not appear in the ICS interaction window. A window dedicated to shouts will also capture c-shouts (if there is no dedicated c-shout box) and It messages, recognizable on the type of brackets used around the shouter name ( [ ], ( ) or < >, respectively).
K#

Training

Training mode lets you interactively guess the moves of a game for one of the players. While in Training mode, the navigation buttons are disabled. You guess the next move of the game by playing the move on the board (or using the Type In Move command). If the move played matches the next move of the game, the move is accepted and the opponents response is autoplayed. If the move played is incorrect, an error message is displayed.
K#

Edit Tags Lets you edit the PGN (portable game notation) tags for the current 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 ignored. 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 WinBoard with "?" (unknown value) or "-" (inapplicable value).
K#

Edit Comment Adds or modifies a comment on the current position. Comments are saved by Save Game and are displayed by Load Game, Forward, and Backward.
K#

Enter Username Allows you to type the name of the human player, which will appear in the PGN header and in the window title.
K#

Pause Pauses updates to the board, and if you are playing against a local chess engine, also pauses your clock. To continue, select Pause again, and the display will automatically update to the latest position. The P (or C) button is equivalent to selecting Pause. If you select Pause when you are playing against a chess engine and it is not your move, the chess engines 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 in examine mode on ICS, you can step backward and forward in the current history of the examined game without affecting the other examiners or observers. 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 one at a time by selecting Forward, or resume automatic loading by selecting Pause again.

K#$+

Action Menu

Most of these commands are available in chess server mode only.


K#

Accept Accepts a pending match offer. If there is more than one offer pending, you will have to type in a more specific command instead of using this menu choice.
K#

Decline Declines a pending offer (match, draw, etc.). If there is more than one offer pending, you will have to type in a more specific command instead of using this menu choice.
K#

Rematch Issues the ICS rematch command, which asks for another game against your last opponent with the same time control and rule set.
K#

Call Flag Calls your opponent's flag, claiming a win on time, or claiming a draw if you are both out of time. You can also call your opponent's flag by clicking on his clock.
K#

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.
K#

Adjourn Asks your opponent to agree to adjourning the current game, or agrees to a pending adjournment offer from your opponent. You continue an adjourned ICS game by challenging the same player again with the ICS match command.
K#

Abort Asks your opponent to agree to abort the current game, or agrees to a pending abort offer from your opponent. An aborted ICS game ends immediately without affecting either player's rating.
K#

Resign Resigns the game to your opponent.


K#

Stop Observing Ends your participation in observing a game, by issuing the ICS unobserve command.
K#

Stop Examining Ends your participation in observing a game, by issuing the ICS unobserve command.
K#

Upload to Examine Starts an examined game on the ICS, and uploads the game currently loaded in WinBoard (by pasting it, or loading from a file) to it.
K#

Adjudicate To White End the current game and stop participating engine. The result will appear in the PGN as a win for white.
K#

Adjudicate To Black Same as above, but game will appear as a win for black.
K#

Adjudicate Draw Same as above, but game will appear as a draw.

K#$+

Step Menu

K#

Type In Move Pops up a dialog box, into which you can type moves in standard algebraic chess notation. (You can also get this dialog box by simply starting to type over the chessboard, except in ICS mode, where such typing is redirected into the ICS interaction window.) Typing a number will have the same effect as stepping forward or backward to the position after that move. In Edit Position mode you can also type a FEN to set up the position.
K#

Backward

Steps backward through a series of remembered moves. The < button is equivalent to selecting Backward, as is turning the mouse wheel towards you. In most modes, Backward only lets you look back at old positions; it does not retract moves. This is the case if you are playing against a chess engine, playing or observing a game on the 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 a game on the ICS, the behavior of Backward depends on whether WinBoard is in Pause mode. If Pause mode is off, Backward issues the ICS command backward, which backs up everyone's view of the game and allows you to make a different move. If Pause mode is on, Backward only backs up your local view.
K#

Forward Steps forward through a series of remembered moves (undoing the effect of Backward) or through a game file. The > button is equivalent, as is turning the mouse wheel away from you. If you are examining a game on the ICS, the behavior of Forward depends on whether WinBoard is in Pause mode. If Pause mode is off, Forward issues the ICS command forward, 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 the game was in when you paused.
K#

Back to Start Jumps backward to the first remembered position in the game. The << button is equivalent. In most modes, Back to Start only lets you look back at old positions; it does not retract moves. This is the case if you are playing against a chess engine, playing or observing a game on the ICS, or loading a game. If you select Back to Start 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; or use New Game to start a new game. If you are examining a game on the ICS, the behavior of Back to Start depends on whether WinBoard is in Pause mode. If Pause mode is off, Backward issues the ICS command backward 999999, which backs up everyone's view of the game to the start and allows you to make different moves. If Pause mode is on, Back to Start only backs up your local view.
K#

Forward to End Jumps forward to the last position in the game. The >> button is equivalent. If you are examining a game on the ICS, the behavior of Forward to End depends on whether WinBoard is in Pause mode. If Pause mode is off, Forward to End issues the ICS command forward 999999, 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 the game was in when you paused.
K#

Revert If you are examining a game on the ICS, issues the ICS command revert. In local mode, it reverts to the

previous line that was loaded in WinBoard, before you started entering a variation on it in Edit Game or Analyze mode.
K#

Annotate Similar to the Revert command, but in local mode it will add the variation you are abandoning as a comment to the move where it first deviated, in PGN variation format (i.e. in parentheses).
K#

Truncate Game Discards all remembered moves of the game beyond the current position. Puts WinBoard into Edit Game mode if it was not there already.
K#

Move Now Forces the chess engine to move immediately. May not work with all chess engines.
K#

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 takeback 2, depending on whether it is your opponent's move or yours.

K#$+

Options Menu

K#

Flip View Inverts your view of the chessboard. If you are playing a game on the ICS, the board is always oriented at the start of the game so that your pawns move from the bottom of the window towards the top. Otherwise, the starting position is determined by the flipView command line option.
K#

Swap Clocks Interchanges the position of the white and black clocks on the screen. Intended for manually-operated computer-computer games, where the monitor is standing to the side of the playing board, to make sure that the operator sees the time of his own machine on his side of the table. Note that it is possible to adjust the clocks in steps of one minute, by left- (decrement) or right-clicking (increment) it with the mouse in Edit Game mode. (Clicking the clocks in other modes is interpreted as claiming the flag.)
K#

Mute all Sounds Provides a quick way to switch on or off all sounds, without affecting the settings for them.
K#

General

K#

Always On Top If this option is on, WinBoard sets its chessboard to be a topmost window, meaning that it always appears on top of all ordinary windows on the screen.
K#

Always Queen If Always Queen is off, WinBoard brings up a dialog box whenever you move a pawn to the last rank, asking what piece you want to promote it to. If the option is on, your pawns are always promoted to queens. Your opponent can still underpromote, however.
K#

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.
K#

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 reappears on its new square when the move is complete.
K#

Auto Flag If this option is on and one player runs out of time before the other, WinBoard will automatically call his flag, claiming a win on time. 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. On most chess servers, you can now do set autoflag 1 instead and have the server call the flag. In local chess engine mode, WinBoard may call either player's flag and will not take material into account.
K#

Auto Flip View

If this 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.
K#

Auto Raise Board

If this option is on, whenever a new game begins, the chessboard window will be deiconized (if necessary) and raised to the top of the stack of windows on your screen.

K#

Blindfold

If Blindfold is on, WinBoard displays a blank board. Moves can still be entered with the mouse, either by dragging the (invisible) piece or clicking the starting and ending square. You can also enter your move by typing it on the keyboard.
K#

Highlight Dragging If Highlight Dragging is on while you are dragging a piece with the mouse, the starting square and the square that the mouse cursor is over are highlighted. This option works even if Animate Dragging is off. Also controls if the option /showTargetSquares, which can cause marking of al squares a piece you pick up can legally move to, can be active.
K#

Extended PGN Info The PGN will contain the engine search depth, score and time for each move where the depth is nonzero, as a comment behind the move if this option is on. Works only when Show Thinking is enabled. The recorded time is the time reported by the engine.
K#

Extra Info In Move History Same as above, but in move-history window.


K#

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.
K#

Periodic Updates If Periodic Updates is on, the Analysis window is updated every two seconds. If not, it is updated only when the best move found changes. The Analysis window currently works only with Crafty, and Periodic Updates may not work with all versions of Crafty.
K#

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.
K#

Popup Exit Message If this option is on, when WinBoard 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, WinBoard prints exits immediately without showing the message. If debugMode is on, however, the message will appear in the debug log.
K#

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 popup windows like other errors. You can dismiss an error popup either by clicking its OK button or by clicking anywhere on the board, including downclicking to start a move.
K#

Show Button Bar If Show Button Bar is on, WinBoard displays on-screen buttons to step forward, backward, or pause the game. If it is off, the buttons are hidden, making the message line wider.
K#

Show Coords If Show Coords is on, WinBoard displays algebraic coordinates along the board's left and bottom edges.
K#

Show Thinking If this option is set, WinBoard displays the chess engines current search depth and its notion of the score and best line of play from the current position as it is thinking. The score indicates how many pawns ahead (or if negative, behind) the engine thinks it is. In matches between two machines, the score

is prefixed by W or B to indicate whether it is showing White's thinking or Black's.


K#

Test Legality If Test Legality is on, WinBoard tests whether the moves you enter with the mouse or read from game files are legal, and displays an error if they are not. Turn this option off if you are playing a chess variant that WinBoard does not understand. (Bughouse, suicide, and wild variants where the king may castle after starting on the d file are generally supported with Test Legality on. The same holds for variants with non-FIDE pieces, like shatranj, xangqi, shogi, gothic, capablanca, courier, knightmate: WinBoard knows how all pieces occurring in those variants move. Falcon, cylinder and berolina are only partly supported, though, and the latter two should definitely be played with legality testing off, and falcon uses a wildcard piece for the Falcons, so it considers any move of them legal, but might miss checkmates that involve a Falcon. So you should not play it with claim verification switched on.)
K#

Hide Thinking From Human An alternative to suppressing the Thinking Output in the display above the board by switching Show Thinking off, but doing it in a way that still allows the extended PGN info to be recorded.
K#

Highlight Move With Arrow A big, fat arrow is drawn between the start and target field of the last move, so you cannot possibly miss it.
K#

Display Logos Controls the display of engine, user or ICS logos above the board, next to the clocks, by switching on or off the option /autoLogo..
K#

Board

K#

Board Size Determines how large the board will be and what fonts and piece bitmaps will be used. On a Titanic board the piece bitmaps are 129x129 pixels, on 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, and Tiny 21x21. The smaller boards have no system menu, but you can minimize or close them from the File menu. You can also change the board size by dragging the window edges or corners with the mouse. The board will snap to the largest size that fits into the area you outline. Note that only sizes Bulky, Middling and to a lesser extent Petite have built-in bitmaps for the non-FIDEpieces. Archbishop, Chancellor and the wildcard Lance exist in all sizes from Petite to Bulky, though. In size Moderate, variant shogi uses the traditional Japanese piece representation.
K#

Board Colors Lets you change the colors WinBoard is using to draw the board and pieces.
K#

All White Uses the representation of the white pieces (a filled-in black outline) also for the black pieces (where you can fill them with another color to distinguish them). If you do not choose a very dark color for the black pieces, they look very ugly without outline, and using this option can fix that.
K#

Flip Black Displays the black pieces upside down (or the white pieces in Flip View). This is useful in Shogi, when you want to use the traditional Japanese representation of the pieces.
K#

Adjudications Ponder Next Move, K# Show Thinking, K# Hide Thinking from Human and K# Periodic Updates

K#

Duplicates of the controls in the General option menu.


K#

Adjudicate Draw Moves Adjudicate a draw after the given number of moves, to prevent games from dragging on forever if two engines in a dead-drawn position, conspire to avoid 50-move draws. This and the folowing options are only active in Two Machines mode.
K#

Adjudicate Loss Threshold Adjudicate the game as a loss when both engines agree that the (negative) score is below the given threshold for the duration of 6 consecutive plies.
K#

Verify Claims Verify result claims made by engines when they terminate the game. If needed, correct the results to a loss for the engine making the false claim. Needs Test Legality to be on in order to work.
K#

Detect Mates Let WinBoard detect checkmate and stalemate, even before the engine gets the chance to claim it. Useful with buggy engines, that exit without a claim, or just hang. Needs Test Legality to be on in order to work.
K#

Draw If Insufficient Material If this option is on, WinBoard will recognize KBKB positions with equally colored Bishops, KBK, KNK, and KK positions as draws, even before the engine can claim them. Needs Test Legality to be on in order to work.
K#

Adjudicate Trivial Draws If this option is on, KBKB (with B on unlike color), KBKN, KNKN, KNNK, KRKR and KQKQ positions will be adjudicated draw after 6 ply. For KQKQ this is not really sound, and in the future it might be taken out of this option. But as long as tablebase adjudications are not implemented, it seems best to group this end-game with the trivial draws. Needs Test Legality to be on in order to work.
K#

N-Move Rule Here you can set the number of reversible moves (non-pawn, non-capture) after which WinBoard should adjudicate a game as draw. Engine draw claims are always considered valid after 50 moves (in the context of Verify Claims), but you can set a different value here to either give the engine more leeway if it wants to play on, or test its claiming capabilities, or set it to a smaller value if you are impatient.
K#

N-Fold Repetition Rule Here you can set the number of repetitions of the same position that should occur in order for WinBoard to adjudicate the game as draw. Engine draw claims are always considered valid after 3 repetitions (in the context of Verify Claims) , but you can set a different value here to either give the engine more leeway if it wants to play on, or test its claiming capabilities, or set it to 2 if you are impatient. (Do not set it to 1!)
K#

Common Engine Settings Polyglot Directory

K#

If WinBoard knows where to find Polyglot, you can install UCI engines as if they were WinBoard engines, and WinBoard will automatically invoke Polyglot as an adapter to run them.
K#

Hash Size, K# EGTB Path, K# EGTB Cache Size, K# Opening Book, K# Number of CPUs These are options that UCI engines expect to be specified. WinBoard protocol now also allows native WinBoard engines to request similar information, so it might be used for these engines as well. The memory size specified by the WinBoard-protocol memory command is the sum of the hash and EGTB cache sizes. The specified opening book, when enabled through the Use Book check box, will be used

as GUI book for engines that do not have their own book (as indicated by the check boxes). It must be a book in Polyglot format.

K#

Engine #1 Settings , Engine #2 Settings

This pops up a dialog that allows the user to set engine-defined options of the mentioned engine (if it is in use). What is in the dialog is entirely determined by the engine. Generally, any changes you make to the controls are only sent to the engine after you press OK. An exception are engine-defined push buttons; the corresponding signal is sent to the engine immediately when you push those. To see the options of UCI engines, you need a Polyglot adapter that supports the recent WB-protocol extensions.

K#

ICS

K#

Auto Comment If Auto Comment is on, any remarks made on ICS while you are observing or playing a game are recorded as a comment on the current move. This includes remarks made with the ICS commands say, tell, whisper, and kibitz. Limitation: remarks that you type yourself are not recognized; WinBoard scans only the output from ICS, not the input you type to it.
K#

Auto Observe If Auto Observe is on and you add a player to your gnotify list on ICS, WinBoard 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. On most chess servers, you can now do follow player instead, and the server will automatically observe all of players games.
K#

Auto Kibitz Auto Kibitz controls how output of computers playing on an ICS is handled. In many tournaments, computers are obliged to kibitz their thinking output to the ICS, and this option will do that automatically, without the engine having to know it. In addition, such kibitzed output by your opponent will be kept out of the console window, and will be diverted to the engine-output window.
K#

Get Move List If Get Move List is on, whenever WinBoard receives the first board of a new ICS game (or a different ICS game from the one it is currently displaying), it retrieves the list of past moves from the server. 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. If you turn this option on while a game is in progress, WinBoard immediately fetches the current move list.
K#

Local Line Editing If Local Line Editing is on, your machine handles echoing, backspacing, etc., for the characters that you type into the ICS Interaction window. Output is forwarded to the ICS only when you hit Enter.The Enter key produces a newline character, also known as Ctrl+J, \n, LF, linefeed, or decimal ASCII code 10. In this mode you can force a control character into the edit buffer by preceding it with Ctrl+Q (quote); however, the edit buffer will not accept certain control characters even when they are quoted in this way. You can force a control character to be sent immediately to ICS, bypassing the edit buffer, by preceding it with Ctrl+S (send). WinBoard keeps a history of lines you recently typed in Local Line Editing mode. You can bring back old lines by pressing the cursor up key in the text entry box. Press the cursor down key to go back down to newer lines. If Local Line Editing is off, all characters are sent to ICS as you type them. The Enter key produces a

carriage return character, also known as Ctrl+M, \r, CR, or decimal ASCII code 13. Use Ctrl+Backspace if you need the ASCII DEL character. You can enter any character code by holding down the Alt key and typing its decimal value (always beginning with 0) on the numeric keypad; this is a little-known standard feature of Windows. In both modes, if WinBoards internal telnet protocol implementation is active, it translates all \n characters to the standard telnet end-of-line sequence \r\n just before sending them out to ICS; see telnetProgram. It is generally not a good idea to turn off this option while connected to ICS. If you are tempted to do so because everything you type is being echoed an extra time, see the paragraph about extra echoes under LIMITATIONS below.
K#

Quiet Play If Quiet Play is on, WinBoard 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 distracted by shouts from other ICS users while playing.
K#

Seek Graph, K# Auto Refresh If Seek Graph is on, you can summon up a graphical representation of players seeking a game on the ICS in stead of the chess board, by left-clicking the latter when you are not using it. The requested games are separated out by rating and time control. Rated, unrated and wild games are displayed in different colors, computers as squares, humans as dots. Hovering the mouse over a dot in the graph will display the details of the corresponding seek ad in the message field above the board. Left-clicking the dot will take up the challenge. Right-clicking dots will push them to the back, so you can see seek ads that might have been hidden behind it. Right-clicking off dots will refresh the graph, left-clicking off dots will take the graph down ad display the chess board again. In combination with Auto Refresh, the seek graph will be updated automatically. This is only implemented for the FICS and ICC servers. To make switching on of this option effective might require you to log off and on again to the ICS, as it requires changing ICS settings that are locked during a session.
K#

Background Observe, K# Dual Board If Background Observe is on, boards sent to you by the ICS when you are playing, but which are not of your game, (but of games you are observing), will not be displayed automatically. In stead WinBoard will remember the last board it received that way, and display it when you press the right mouse button in stead of the board of your own game. This feature is meant to enable bughouse players a peek at their partners game, without the need to log on to the ICS a second time. If in addition Dual Board is also on, such background games are even displayed on a second board, side by side with your own game, so that it is always in view. This feature is experimental, and largely undeveloped; there is no animation of moves on this second board, while the effets are undefined if the board format of the observed game is not the same as that of your own game.
K#

Premove

Premove allows you to play a move on the board before you have received your opponents move. This move is highlighted on the board using the Premove Highlight color, and is sent to the ICS as soon as your opponents move is received. To cancel a premove, either click twice on the piece that was premoved or premove an illegal move. This group of controls allows you to set the following options: premove, premoveWhite, premoveWhiteText, premoveBlack, premoveBlackText.
K#

One-Click Move

When One-Click Move is set, a click on an own piece will immediately move that piece if it only has a single legal move, without waiting for you to click a to-square. Similarly, clicking an opponent piece or empty square will immediately perform the move to that square, if only a single legal move to it existed.

This is the mouse equivalent of having to type only e4 when you mean e2-e4. Finally, double clicking an own piece (or clicking an already selected piece) will make it execute its only capture, which can save you some time if the target square was far away. Legality testing has to be switched on for this to work.
K#

ICS Alarm

When icsAlarm is set to True, the alarm sound is played when your clock counts down to icsAlarmTime seconds. For ICS games with time controls that include an increment, the alarm will sound each time the clock counts down to the icsAlarmTime.
K#

ICS Interaction Colors Lets you change the colors and type styles that WinBoard uses to distinguish between different types of messages in the ICS Interaction window. The types distinguished are: shout, sshout, channel 1 tell, other channel tell, kibitz (or whisper), personal tell (or new message notification), challenge, request (including abort, adjourn, draw, pause, and takeback), seek, and normal (all other messages).
K#

Startup Chat Boxes You can put a semicolon-separated list of ICS handles or channel numbers here, WinBoard will open a chat window for each handle at startup in ICS mode. (See the Open Chat Window command.)
K#

Fonts Lets you change the fonts WinBoard is using. The clock font, message font and coordinates font are specific to each board size. The tags font, comments font and ICS Interaction font are not dependent on the current size of the board. The Revert to Defaults button will reset the clock font, message font and coordinates font for the current board size, and will set the tags font, message font and Ics Interaction font for all board sizes.
K#

Sounds Lets you change the sounds that WinBoard plays for various events.
K#

If the Move sound is on, WinBoard alerts you by playing a 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. If you turn on the Move sound when using WinBoard with the Internet Chess Server, you will probably want to give the set bell 0 command to the ICS. Otherwise the ICS will send a bell character after every move (not just yours), causing WinBoard to play the ICS Bell sound too. Alternatively, you could turn off the ICS Bell sound in WinBoard, but that might cause you to miss ICS alerts for other interesting events. The other sound events correspond directly to the types of messages that the ICS Interaction Colors option knows how to colorize.
K#

Game List Lets you select which information is displayed in the Game List window.
K#

Communications Lets you change the communication port parameters when the internetChessServerComPort option is in use.
K#

Load Game Lets you change options used while loading games (timeDelay option).
K#

Save Game Lets you change options used for saving games (autoSaveGames, oldSaveStyle, and saveGameFile options).
K#

Time Control Lets you change the time control to be used in games against a chess engine. Three types of timing are available.

With conventional chess clocks, each player begins with his clock set to the timeControl period. When both players have made movesPerSession moves, a new time control period begins. The time in the new period is added to whatever time the players have left on their clocks. With incremental clocks, each player is given an initial time allotment, and a timeIncrement is added to his clock after every move. The increment may be zero, in which case the entire game must be finished within the initial time allotment. With fixed time per move, each player gets a certain (maximum) time to make one move, and any leftover time is not carried to subsequent moves. Note that in local modes it is always possible to adjust the clocks during a game by Shift + click on it, where a right-click adds a minute, and a left-click subtracts one.
K#

Save Settings Now Save the current option settings to a file, along with the current window sizes and positions, to be automatically reloaded next time WinBoard is run. See Settings for the fine points.
K#

Save Settings on Exit If this option is on, the current settings are automatically saved when WinBoard exits, as with Save Settings Now.

K# $+

Help Menu

K#

Help Contents Brings up this help file, starting at the Contents page.
K#

Help Index Brings up this help file, starting at the Index/Find dialog.
K#

How to Use Help Brings up the standard help file that explains how to use Windows Help.
K#

Hint Displays a move hint from the chess engine.


K#

Book Displays a list of possible moves from the chess engines opening book. The first column gives moves, the second 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 engine is out of its book or does not support the book command.
K#

About WinBoard Displays the WinBoard version number.

K# $+

ICS Interaction Context Menu

To see this menu, press the right mouse button anywhere in the output (upper) pane of the ICS Interaction window. Pressing the right mouse button in the input (lower) pane gives a standard editing context menu, not described here. Use the help command on ICS to learn what these commands mean. You can customize the lower part of this menu (below the Paste option) by setting the icsMenu option. The easiest way to accomplish this is to edit your settings file with Notepad or another plain text editor. Sorry, there is no graphical user interface for customizing the menu.
K#

Copy and Paste Copies the current selection to the clipboard, then pastes it to the input box. As a shortcut to this function, you can press the middle mouse button (if you have one), or Shift plus the right mouse button.
K#

Copy Copies the current selection to the clipboard.


K#

Paste Pastes the clipboard contents to the input box.


K#

Who Sends the command who to ICS.


K#

Players Sends the command players to ICS.


K#

Games Sends the command games to ICS.


K#

Sought Sends the command sought to ICS.


K#

Tell (name) Inserts tell name into the input box. The string name is the current selection if it is not empty. Otherwise name is the word surrounding the mouse position, where a word is a string of letters, digits, or hyphens (-), such as an ICS user handle or game number.
K#

Open Chat Box (name) Causes WinBoard to open a new Chat Window, with name in the chat Partner field, where name is as defined above.
K#

Message (name) Inserts message name into the input box, where name is as defined above.
K#

Finger (name) Sends the command finger name to ICS, where name is as defined above.
K#

Vars (name) Sends the command vars name to ICS, where name is as defined above.
K#

Observe (name) Sends the command observe name to ICS, where name is as defined above. Here name can be either a user handle or a game number.
K#

Match (name) Sends the command match name to ICS, where name is as defined above.

K#

Play (name) Sends the command play name to ICS, where name is as defined above. Here name can be either a user handle or a seek ad number.

K#$+

BUTTONS

<< Same as Back to Start.


K

< Same as Backward.


K

P Same as Pause. The button label changes to C while WinBoard is pausing.


K

> Same as Forward.


K

>> Same as Forward to End. Note that using the mouse wheel has the same effect as using the < or > button.

KK # $ +

COMMAND LINE OPTIONS

All WinBoard options can be set either on the command line (if you start WinBoard by typing into an MSDOS Prompt box), in the Properties/Shortcut/Target box of a Windows shortcut, in a settings file, or in the Additional Options box of the WinBoard startup dialog. Exactly the same syntax is used in all four places. Most options can also be set from the menus and saved using Save Settings Now or Save Settings on Exit, so most people will not need to read this section. Most options have two names, a long one that is easy to read and a short one that is easy to type. To turn on a boolean (true/false) option opt, you can just give its short name preceded by a minus sign or slash (-opt or /opt); to turn one off, prefix the short name by an x or an extra minus sign (-xopt or /-opt). To set any other kind of option, or to set a boolean option using its long name, give the value after the name, separated by a space, colon, or equal sign. (-opt 23 or /option:true). If a string option contains spaces or special characters, enclose it in double quotes and use the \ quoting convention of C to name the special characters. Alternatively, you can enclose a string value in curly braces (/opt={string}), as long as the value does not contain a closing curly brace. If a filename option contains spaces, enclose it in either single or double quotes. In filename options, the \ character is not treated specially, so use single quotes around the outside of the value if it has double quotes inside (and vice versa). When you start WinBoard, it will pop up the Startup dialog box unless you provide sufficient options on the command line for WinBoard to determine which major mode to be in and what engines to use or chess server to connect to. To bypass this box, you must at minimum give one of the three options /cp, /ics, or /ncp. If you give the /cp option, you must also give the /fcp and /scp options. If you give the /ics option, you must also give the /icshost option. Chess Engine Options UCI Engine Support !NEW! Internet Chess Server Options Load and Save Options User Interface Options Adjudication Options !NEW! Other Options

K$#+

Chess Engine Options

K#

/cp or /xcp, or K#/chessProgram true|false If true, puts WinBoard in chess engine mode. In this mode, you can play against a chess program running on your PC or use it as an analysis partner.
K#

/tc or K#/timeControl minutes[:seconds] Each player begins with his clock set to the timeControl period. Default: 5 minutes. The additional options movesPerSession and timeIncrement are mutually exclusive.
K#

/mps or K#/movesPerSession moves When both players have made movesPerSession moves, a new timeControl period is added to both clocks. Default: 40 moves.
K#

/inc or K#/timeIncrement seconds If this option is specified, movesPerSession is ignored. Instead, after each player's move, timeIncrement seconds are added to his clock. Use -timeIncrement 0 if you want to require the entire game to be played in one timeControl period, with no increment. Default: -1, which specifies movesPerSession mode.
K#

/clock or /xclock, or K# /clockMode true|false Determines whether or not to display the chess clocks. If clockMode 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.
K#

/st or K# /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 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.
K#

/depth or K# /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 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.
K# K#

/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 time decisions. The time in virtual seconds should be obtained by dividing the node count through the given number, like the number was a rate in nodes per second. WinBoard will manage the clocks in accordance with this, relying on the number of nodes reported by the engine in its thinking output. If number 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 WinBoard clock. 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-engine matches on heavily loaded machines, or with very fast games (where the wall clock is too inaccurate). Show Thinking must be on for this option to work. Not many engines might support this yet! /firstTimeOdds factor /secondTimeOdds factor Reduces the time given to the mentioned engine by the given factor. If pondering is off, the effect is indistinguishable from what would happen if the engine was running on a factor times slower machine.
K#

K# K#

/timeOddsMode mode This option determines how the case is handled when both engines have a time-odds handicap. If

mode=1, the engine that gets the most time will always get the nominal time, as specified by the timecontrol options, and its opponents time is normalized similarly. If mode=0, both play with reduced time.
K#

/ponder or /xponder, or K# /ponderNextMove true|false Sets the Ponder Next Move option. Default: True.
K#

/thinking or /xthinking, or K# /showThinking true|false Sets the Show Thinking option. Default: False.
K#

/periodic or /xperiodic, or K# /periodicUpdates true|false Sets the Periodic Updates option. Default: True.
K#

/mg or K# /matchGames n Automatically runs an n-game match between two chess engines, with alternating colors. If the loadGameFile or loadPositionFile option is set, WinBoard will start each game with the given opening moves or the given position; otherwise, the games will start with the standard initial chess position. If the saveGameFile option is set, a move record for the match will be appended to the specified file. If the savePositionFile option is set, the final position reached in each game of the match will be appended to the specified file. When the match is over, WinBoard will display the match score and exit. Default: 0 (do not run a match).
K#

/mm or /xmm, or K# /matchMode true|false Provided for backward compatibility. If true and matchGames=0, sets matchGames=1.
K#

/matchPause number Sets the length of the pause between games in match mode to number msec. Default value is 10000, i.e. 10 sec. (If this pause is too short, engines not implementing ping will sometimes send the last move of their previous game only when a new game has started, at which time the move is illegal, and causes them to forfeit the game.)
K# K#

/fd or K# /firstDirectory dir /sd or K# /secondDirectory dir K# /fcp or K# /firstChessProgram command K# /scp or K# /secondChessProgram command Names of the chess engines and working directories in which they are to be run. The second chess engine is started only in Two Machines (match) mode. These arguments are parsed as filenames; that is, the \ character is interpreted literally, not as a C-style escape. The dir argument specifies the initial working directory for the chess engine. It should usually be the directory where the engine and its working files are installed. If dir is not an absolute pathname, it is interpreted relative to the directory from which WinBoard.exe itself was loaded. The dir argument is ignored if the chess engine is being run on a remote machine (see firstHost and secondHost below). The default value for dir "", meaning that the chess engine is expected to be installed in the same directory as WinBoard. The command argument is actually the command line to the chess engine, so if the engine itself needs command line arguments, you can include them by enclosing command in single or double quotes. If the engine name or an engine argument has a space in it, use single quotes around the whole command, and inside them use double quotes around each item that contains spaces. If the engine name has more than one period in it (for example, QChess1.5.exe), you must include the ".exe" extension; otherwise you can leave it out. The default value for command is "", which brings up the startup dialog to ask which engines you want. Examples:
WinBoard /cp /fd="C:\Program Files\Crafty" /fcp=WCrafty-15.12.exe /scp=GNUChess WinBoard /cp /fd="C:\Miracle Games" /fcp='"Miracle Chess.exe" /wow' /scp=GNUChess

The basic rule is thus that what is inside the quotes delimiting the argument to /fcp and /scp, all goes to

the engine, and is ignored by WinBoard. WinBoard 4.3.13 and later, however, knows an exception to this: If, within the quotes, the word WBopt appears, everything that follows this word will be interpreted as a WinBoard argument, in stead of being passed to the engine on startup of the latter. (The WBopt itself is also not passed to the engine.) This possibility of hiding WinBoard arguments in the engine command is provided in order to create options that follow the engine in a tournament, when a tournament manager like PSWBTM is used to invoke WinBoard. Because, in order to apply to a given engine, some options need to know if they apply to first or second engine, which might vary during the tournament, options hidden inside the engine command-line can contain %s which will be replaced at the time the option is used by first or second, as applicable. Examples:
WinBoard /cp /fd="C:\Engines\Crafty" /fcp=WCrafty-15.12 WBopt /%sTimeOdds=2 /scp=GNUChess

Meaning that Crafty will have to play with half the time GNUChess will get.
K# K#

/fh or K# /firstHost host /sh or K# /secondHost host Hosts on which the chess engines are to run. The default for each is "localhost". If you specify another host, WinBoard uses rsh to run the chess program there. The /fd and /sd flags do not work in conjunction with these flags; if you need a remote chess engine to run somewhere other than your default login directory on the remote machine, you will have to include a "cd" command in the argument to /fcp or /scp.
K# K#

/firstInitString or /initString string /secondInitString string The strings that are sent to initialize the chess engines. Default: "new\nrandom\n". The "\n" sequences represent newlines. You can type "\n" on the command line or in a settings file, and WinBoard will convert it to a newline. All chess engines require the "new" command to start a new game. You can remove the "random" command if you like; including it causes GNU Chess to randomize its move selection slightly so that it doesn't play the same moves in every game. Even without "random", GNU Chess randomizes its choice of moves from its opening book. You can also try adding other commands to the initString; see the GNU Chess documentation (gnuchess.txt) for details. Crafty ignores the "random" command; see its documentation for the commands it accepts.
K# K#

/firstComputerString string /secondComputerString string If the chess engine is playing against another computer program (whether locally or on a chess server), by default the command "computer\n" is sent to it. Some chess engines change their playing style when they receive this command. If you do not want the engine to know when it is playing another computer, you can set the string to "". Note that the computer string is sent to the engine after most other initialization commands, and is thus ideal for hiding a WinBoard-protocol command in that should be sent only to one engine, when the WinBoard option that normally specifies this command cannot be differentiated by engine, but s always sent to both engines. E.g. if you want one of the engines to ponder, and the other not. Because it is sent last, in can overrule earlier commands.
K#

/fb or /xfb, or K# /firstPlaysBlack true|false In games between two chess programs, the firstChessProgram normally plays white. (This is a change from earlier versions of WinBoard.) 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.
K# K#

/reuse or /xreuse, or K#/reuseFirst true|false /reuse2 or /xreuse2, or K#/reuseSecond true|false

If this option is True (the default), WinBoard uses the same chess engine process repeatedly when playing multiple games. If the option is False, WinBoard kills off the chess engine after every game and starts a fresh one for the next game. Starting a fresh chess engine can be slow, so it is not recommended. However, some chess engines may not work properly when reused, such as versions of Crafty earlier than 12.0.
K# K#

/firstProtocolVersion ver /secondProtocolVersion ver This option specifies which version of the chess engine communication 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.
K# K#

/firstScoreAbs true|false /secondScoreAbs true|false

If this option is true, the score reported by the engine is taken to be that in favor of white, even when the engine plays black. Important when winboard uses the score for adjudications, or in PGN reporting. This can be a useful option in combination with WBopt in the engine command-line, see under /fcp.
K#

/niceEngines priority

This option allows you to lower the priority of the engine processes, so that the generally insatiable hunger for CPU time of chess engines does not interfere so much with smooth operation of WinBoard (or the rest of your system). Try priority = 10 or even 20 to lower the priority of the engines. Negative values could increase the engine priority, which is not recommended.
K# K#

/firstOptions string /secondOptions string

The given string is a comma-separated list of (option name, option value) pairs, like the following example: style=Karpov,blunder rate=0. If the options announced by the engine at startup through the feature commands of WinBoard protocol 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 provided that the type of the value (text or numeric) matches as well.
K# K#

/firstNeedsNoncompliantFEN string /secondNeedsNoncompliantFEN string

The castling rights and e.p. fields of the FEN sent to the mentioned 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 variants that do not have castling or e.p. (shatranj, courier, xiangqi, shogi) so that WinBoard would normally omit them (string = - -, or to add variant-specific fields that are not yet supported by WinBoard (e.g. to indicate the number of checks in 3check).

+K$#

UCI Engine Support

K# K#

/fUCI or K# /firstIsUCI true|false /sUCI or K# /secondIsUCI true|false

Indicates if the mentioned engine executable file is an UCI engine, and should be run with the aid of the Polyglot adapter rather than directly. WinBoard will then pass the other UCI options and engine name to Polyglot through a .ini temporary file ceated for the purpose.
K#

/PolyglotDir filename

Gives the name of the folder in which Polyglot is installed.


K#

/usePolyglotBook true|false

Specifies if the Polygot book should be used.


K#

/PolyglotBook filename

Gives the filename of the opening book that Polyglot should use.
K# K#

/fNoOwnBookUCI or K# /firstXBook or K# /firstHasOwnBookUCI true|false /sNoOwnBookUCI or K# /secondXBook or K# /secondHasOwnBookUCI true|false

Indicates if the mentioned engine lacks an opening book or not. Engines that have an own opening book will not use the GUI book (as given by /polyglotBook) even if /usePolyglotBook is set to true.
K#

/defaultHashSize number

Sets the size of the hash table to number MegaBytes.


K#

/defaultCacheSizeEGTB number

Sets the size of the EGTB cache to number MegaBytes.


K#

/defaultPathEGTB filename

Gives the name of the folder where the end-game tablebases are installed.

+K$#

Internet Chess Server Options

K#

/ics or /xics, or K# /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. See ICS Client Default: False. You can create a script file containing ICS commands that WinBoard will type in for you whenever you connect to the ICS. See ICS Logon.
K#

/icshost or K# /internetChessServerHost hostname The host name or numeric address of the Internet Chess Server to connect to when in ICS mode. The default is the empty string, which causes WinBoard to pop up a menu of known ICS sites. The file icsaddresses.txt in the WinBoard distribution gives slightly more information on these sites. It includes their numeric addresses, which you can use if your site does not have a working name server.
K#

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

/icshelper program An external helper program used to communicate with the chess server. Typically Ktimestamp for the ICC (chessclub.com) or Ktimeseal for FICS (freechess.org, eics.daimi.aau.dk, etc.). This option is shorthand for /useTelnet /telnetProgram program.
K#

/telnet or /xtelnet, or K#/useTelnet true|false This option is poorly named; it should be called /useHelper. If set to True, it instructs WinBoard to use an external helper program to communicate with the ICS, as specified by the telnetProgram option. The external program must be a pure console application that can communicate with WinBoard through pipes; the Windows telnet application is not suitable. If the option is False (the default), WinBoard communicates with the ICS by opening a Winsock TCP socket and using its own internal implementation of the telnet protocol.
K#

/gateway hostname If this option is set to a host name, WinBoard uses rsh to run the telnetProgram remotely on the given host to communicate with the Internet Chess Server instead of using its own internal implementation of the telnet protocol. See the FIREWALLS section below for an explanation of when this option is useful.
K#

/telnetProgram program This option is poorly named; it should be called /helperProgram. It gives the name of the remote or external helper program to be used with the gateway or useTelnet option. The default is "telnet". The telnet program is invoked with the value of internetChessServer as the first argument and the value of internetChessServerPort as the second argument on its command line.
K#

/icscom or K#/internetChessServerComPort name If this option is set, WinBoard communicates with the Internet Chess Server using a serial communication port instead of a network connection. Use this option if your machine is not connected to a network (not even via SLIP or PPP), but you do have Internet access through another machine by dialing in using a modem or by connecting directly to a serial terminal port. Example:
WinBoard /ics /icscom:com1

After you start WinBoard in this way, type whatever modem commands are necessary to dial out to your Internet provider and log in. You may need to turn off Local Line Editing on the Options menu while typing commands to the modem, but turn it on again afterwards. Then telnet to the ICS, using a command like "telnet chessclub.com 5000". Important: See the paragraph in the LIMITATIONS section below about extra echoes.

K#

/comPortSettings dataRate,dataBits,parity,stopBits,flow This option allows serial port parameters to be set from the command line or a settings file. The values are simply filled in to the Communications dialog.
K#

/icslogon or K# /internetChessServerLogonScript filename This option lets you change the name used for the ICS Logon file. Default: "ICS.ini". The filename is interpreted relative to WinBoard's installation directory (the directory containing WinBoard.exe).
K#

/autocomm or /xautocomm, or K# /autoComment true|false Sets the Auto Comment option. Default: False.
K#

/autoflag or /xautoflag, or K# /autoCallFlag true|false Sets the Auto Flag option. Default: False.
K#

/autobs or /xautobs, or K# /autoObserve true|false Sets the Auto Observe option. Default: False.
K#

/autoKibitz Kibitzes the engines last thinking output (depth, score, time, speed, PV) to the ICS in zippy mode. Show Thinking must be on for this option to work. Also diverts similar kibitz information of an opponent engine that is playing you through the ICS to the engine-output window, as if the engine was playing locally.
K#

/moves or /xmoves, or K# /getMoveList true|false Sets the Get Move List option. Default: True.
K#

/edit or /xedit, or K# /localLineEditing true|false Sets the Local Line Editing option. Default: True.
K#

/quiet or /xquiet, or K# /quietPlay true|false Sets the Quiet Play option. Default: False
K#

/seekGraph true|false, or K# /sg Enables summoning up of the Seek Graph by left-clicking the board. Default: False
K#

/autoRefresh true|false Sets the Auto Refresh option of the Seek Graph. Default: False
K#

/backgroundObserve true|false Sets the Background Observe option for observing other games during play. Default: False
K#

/dualBoard true|false Sets the Dual Board option for observing your partners bughouse game. Default: False
K#

/blindfold true|false Sets the Blindfold option. Default: False


K#

/pre or K#/xpre, or K# /premove true|false Sets the Premove option. If set to True, the premove feature is enabled. If set to False, premove is disabled and the other Premove settings are ignored. Default: False.
K# K#

/prewhite or K#/xprewhite, or K# /premoveWhite true|false /premoveWhiteText movetext If premoveWhite is set to True and you are playing white in an ICS game, the text specified by the premoveWhiteText option is sent to the ICS as soon as the game starts. These options can be set from the Premove section of the ICS Options dialog box. The default for premoveWhite is False. /preblack or K#/xpreblack, or K# /premoveBlack true|false /premoveBlackText movetext

K# K#

If premoveBlack is set to True and you are playing black in an ICS game, the text specified by the premoveBlackText option is sent to the ICS as soon as the first move is received from your opponent, even if you make a different premove on the board before the first white move is received. These options can be set from the Premove section of the ICS Options dialog box. The default for premoveBlack is False.
K#

/oneClickMove true|false Sets the One-ClickMove option. Default: False


K# K#

/alarm or K#/xalarm, or K#/icsAlarm true|false /icsAlarmTime milliseconds

When icsAlarm is set to True, the alarm sound is played when your clock counts down to icsAlarmTime seconds. For ICS games with time controls that include an increment, the alarm will sound each time the clock counts down to the icsAlarmTime. The icsAlarmTime can be set by selecting ICS Alarm from the ICS options dialog. The default is 5 seconds.
K#

/keepAlive time When time is non-zero, send a date command every time minutes after your last move to the ICS, to prevent it from logging you off. (Do not use frivolously! The ICS operator might ban you.) Default: 0.
K#

/chatBoxes handles Sets the list of Chat Windows to be opened at startup. The given string handles should be a semicolonseparated list, like shouts;53;Johnny to open 3 chat boxes, to capture all shouts (including c-shouts and it messages), the traffic on channel 53, and for a player named Johnny. Default: no chat windows.

+K$#

Load and Save Options

K# K#

/lgf or K# /loadGameFile filename /lgi or K# /loadGameIndex N If loadGameFile is set, WinBoard reads the specified game file at startup. You can leave out the name of this option and give just the file name, which is handy if you want to configure WinBoard as a game viewer with a browser such as the Windows Explorer or Netscape. The filename is interpreted relative to WinBoard's initial working directory. The filename "-" specifies the standard input. If there is more than one game in the file, WinBoard pops up a menu of the available games, with entries based on their PGN tags. If loadGameIndex is set to N, the menu is suppressed and the Nth game found in the file is loaded immediately.
K#

/td or K# /timeDelay seconds

Time delay between moves during Load Game. Fractional seconds are allowed; try 0.4. A time delay value of -1 tells WinBoard not to step through game files automatically. Default: 1 second.
K#

/sgf or K# /saveGameFile filename If this option is set, WinBoard appends a record of every game played to the specified file. The filename is interpreted relative to WinBoard's initial working directory. The filename "-" specifies the standard output.
K#

/autosave or /xautosave, or K# /autoSaveGames true|false If this option is True, at the end of every game WinBoard prompts you for a filename and appends a record of the game to the file you specify. Ignored if saveGameFile is set. Default: False.
K# K#

/lpf or K# /loadPositionFile filename /lpi or K# /loadPositionIndex N If loadPositionFile is set, WinBoard loads the specified position file at startup. The filename is interpreted relative to WinBoard's initial working directory. The filename "-" specifies the standard input. If loadPositionIndex is set to N, the Nth position found in the file is loaded; otherwise the first is loaded.
K#

/spf or K# /savePositionFile filename If this option is set, WinBoard appends the final position reached in every game played to the specified file. The filename is interpreted relative to WinBoard's initial working directory. The file name "-" specifies the standard output.
K#

/pgnExtendedInfo true|false If this option is set, WinBoard saves depth, score and time used for each move that the engine found as a comment in the PGN file.
K#

/pgnEventHeader string Sets the name used in the PGN event tag to string.
K#

/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.
K#

/oldsave or /xoldsave, or K# /oldSaveStyle true|false If this option is False (the default), WinBoard saves games in PGN (portable game notation) and positions in FEN (Forsythe-Edwards notation). If the option is True, a save style that is compatible with older versions of WinBoard (and of xboard) is used instead.
K#

/debug or /xdebug, or K# /debugMode true|false Writes debugging information to the file WinBoard.debug, including all commands sent to the chess

engine, all output received from it, and all commands sent to ICS. You can press Ctrl+Alt+F12 to turn this option on or off while WinBoard is running. Each time you turn it on, any existing debug file is overwritten.
K#

/debugFile filename or K# /nameOfDebugFile filename Sets the name of the file to which WinBoard saves debug information (including all communication to and from the engines).
K#

/engineDebugOutput number Specifies how WinBoard 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, WinBoard refrains from writing such spurious output to the debug file. If number=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. The case number=3 is similar, but now marks non-compliant engine output with a more conspicuous prefix. This option 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.

+K$#

User Interface Options

K# K#

/firstLogo filename /secondLogo filename The appearance of either of these options causes WinBoard to reserve space for displaying logos on both sides of the clocks. Normally the first logo goes left, the second right, unless the option swap clocks is in effect. The filename must refer to a bitmap file (.bmp) containing a logo for the particular player (usually a 130x65 or 100x50 bitmap, which will be scaled to the height of two clock lines.)
K#

/autoLogo true|false When true, causes WinBoard to automatically supply a logo for the first and second chess program, by looking for a file named logo.bmp in the engine directory (as specified by the /fd or /sd option), and then displays it like this file was given as an argument to the /firstLogo or /secondLogo option. In this mode it will also look in a sub-folder of its installation folder called logos, for finding logos with names corresponding to the ICS (e.g. chessclub.com.bmp) or to the human user, should they be involved in a game.
K#

/hideThinkingFromHuman true|false Prevents the engine thinking output to appear in the display, without necessitating to suppress the sending of this information altogether (so it can still appear in the PGN).
K#

/noGUI Suppresses all GUI functions of WinBoard (to speed up automated ultra-fast engine-engine games, which you dont 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.
K#

/top or /xtop, or K# /alwaysOnTop true|false Sets the Always On Top option. Default: False.
K#

/queen or /xqueen, or K# /alwaysPromoteToQueen true|false Sets the Always Queen option. Default: False.
K#

/drag or /xdrag, or K#/animateDragging true|false Sets the Animate Dragging option. Default: True.
K#

/animate or /xanimate, or K#/animateMoving true|false Sets the Animate Moving option. Default: True.
K#

/flip or /xflip, or K# /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 View menu command can be used to flip the board after the game starts
K#

/autoflip or /xautoflip, or K#/autoFlipView true|false Sets the Auto Flip View option. Default: True. /autoraise or /xautoraise, or K#/autoRaiseBoard true|false Sets the Auto Raise Board option. Default: True.
K#

K#

/highdrag or /xhighdrag, or K#/highlightDragging true|false Sets the Highlight Dragging option. Must be on for /showTargetSquares to work. Default: False.
K#

/showTargetSquares true|false

When set, causes WinBoard to mark all squares the piece you pick up can legally move to with big fat dot, in different colors for captures and non-captures. Highlight Dragging must be on for this to work. Default: False.
K#

/dropMenu true|false When set, the right mouse button used on the board will call up a context menu, (old behavior) rather than allowing you to walk the latest engine PV (new behavior). Default: False.
K#

/highlight or /xhighlight, or K#/highlightLastMove true|false Sets the Highlight Last Move option. Default: False.
K#

/exit or /xexit, or K# /popupExitMessage true|false Sets the Popup Exit Message menu option. Default: False.
K#

/popup or /xpopup, or K# /popupMoveErrors true|false Sets the Popup Move Errors menu option. Default: False.
K#

/coords or /xcoords, or K# /showCoords true|false Sets the Show Coords option. Default: False.
K#

/legal or /xlegal, or K# /testLegality true|false Sets the Test Legality option. Default: True.
K#

/size or K# /boardSize sizename Sets the Board Size option. Also chooses which board size any following Font options will affect. The default is the largest size that will fit on your screen.
K# K#

/wpc or K# /whitePieceColor color /bpc or K# /blackPieceColor color K# /lsc or K# /lightSquareColor color K# /dsc or K# /darkSquareColor color Color specifications for white pieces, black pieces, light squares, and dark squares. Colors can be specified only by red/green/blue intensity, either in hexadecimal (as #rrggbb) or in decimal (as rrr,ggg,bbb). In the latter format, you must enclose the string in quotation marks if you leave spaces after the commas. The defaults are respectively #FFFFCC, #202020, #C8C365, and #77A26D. Available on the Board Colors section of the Board Options dialog. If you are using a K# grayscale monitor, try setting the colors to: -whitePieceColor:#FFFFFF -blackPieceColor:#000000 -lightSquareColor:#CCCCCC -darkSquareColor:#999999
K# K#

/hsc or K# /highlightSquareColor color /phc or K# /premoveHighlightColor color

Color specifications for the Highlight Last Move and Premove options, respectively. Colors can be specified only by red/green/blue intensity, either in hexadecimal (as #rrggbb) or in decimal (as rrr,ggg,bbb). In the latter format, you must enclose the string in quotation marks if you leave spaces after the commas. The defaults are respectively #FFFF00 and #FF0000, respectively.
K#

/mono or /xmono, or K# /monoMode true|false Determines whether WinBoard displays its pieces and squares in black and white (True) or color (False, the default). Available in the Board Colors section of the Board Options dialog.
K#

/flipBlack true|false Determines whether WinBoard displays the black pieces upside down (or the white pieces in Flip View).

Useful with Shogi with the traditional Japanese pieces, which are not distinguished by color but by orientation.
K#

/allWhite true|false Determines whether the white piece bitmaps will be used to display black pieces. The white pieces have a dark outline, which the black pieces lack. This makes the latter look vague if the color you give them is not very dark.
K#

/renderPiecesWithFont fontname Uses the named true-type font to render the pieces, rather than the built-in bitmaps. The font must be installed on your computer. If the name starts with a * it is ignored, allowing you to easily disable a font temporarily in the whinboard.ini file.
K#

/fontPieceToCharTable characterstring If font-based rendering of the pieces is used, this table specifies which character of the font alphabet should be used for which piece. The format of the character strings is the same as that of the argument of /pieceToCharTable.
K#

/fontPieceSize number The number gives the size of the piece, as a percentage of the square size.
K# K#

/fontPieceBackColorWhite color /fontPieceForeColorWhite color K# /fontPieceBackColorBlack color K# /fontPieceForeColorBlack color Color specifications for white pieces, black pieces that are generated with font-based rendering.
K# K#

/liteBackTextureFile filename /darkBackTextureFile filename The filename indicates a bitmap file that should be used to display the light or dark squares, allowing you to make boards that look like wood, marble, etc. A filename starting with * is ignored. /liteBackTextureMode number /darkBackTextureMode number

K# K#

The number indicates the way the files given in the background-texture options should be used to fill in the squares. Valid texture modes are 1 (default) and 2. In mode 1 the squares are taken from portions of the texture bitmap and copied without further processing. In mode 2, squares can also be rotated, mirrored and so on in order to provide a little more variety to the texture. The operations are selected at random so the board will look slightly different every time the program is run.
K#

/overideLineGap number The number specifies the width, in pixels, of the grid lines used to separate the squares. If it is very small (like a single pixel), it becomes vey hard to see which squares are highlighted (to indicate the last move), as this highlighting is a color change of these grid lines. Highlighting the moves with an arrow is then recommended.
K#

/highlightMovesWithArrow true|false If this option is true, a big, fat arrow is drawn to indicate the last move.
K#

/highlightArrowColor color Specifies the color of the arrow that highlights the moves.
K# K#

/evalHistoColorWhite color /evalHistoColorBlack color

Specifies the colors to be used to plot the white and black scores in the evaluation graph.
K# K#

/colorShout effects color /colorSShout effects color K# /colorChannel1 effects color K# /colorChannel effects color K# /colorKibitz effects color K# /colorTell effects color K# /colorChallenge effects color K# /colorRequest effects color K# /colorSeek effects color K# /colorNormal effects color Select colors and effects to colorize messages in the ICS Interaction window. The effects may be any combination of bold, italic, underline, and strikeout. Colors are specified as for squares and pieces. Available on the ICS Interaction Colors section of the ICS Options dialog. Limitation: On 256 color displays, Windows chooses the nearest solid color from the system palette, which will not always be close to the color you selected.
K#

/colorBackground color Sets the background color for the ICS Interaction window. Available on the ICS Interaction Colors section of the ICS Options dialog.
K#

/colorize or /xcolorize, or K# /colorizeMessages true|false If True, WinBoard colorizes messages in the ICS Interaction window with the colors listed above. Default: True. Available in the ICS Interaction Colors section of the ICS Options dialog.
K# K#

/clockFont fontname:size effects /messageFont fontname:size effects K# /coordFont fontname:size effects K# /tagsFont fontname:size effects K# /commentFont fontname:size effects K# /icsFont fontname:size effects The fonts used respectively for the clocks, the message display line, rank and file coordinate labels, the Edit Tags dialog, the Edit Comment dialog, and the ICS Interaction window. These options may be given more than once. Each occurrence affects the fonts for the current board size; that is, the size given in the last preceding /boardSize option, if any, or else the default size. The font size may contain a decimal point, and the effects may be any combination of bold, italic, underline, and strikeout. Example: /clockFont="Arial:20.0 bi". Available on the Fonts menu.
K# K#

/soundShout sound /soundSShout sound K# /soundChannel1 sound K# /soundChannel sound K# /soundKibitz sound K# /soundTell sound K# /soundChallenge sound K# /soundRequest sound K# /soundMove sound K# /soundBell sound K# /soundIcsWin sound K# /soundIcsLoss sound K# /soundIcsDraw sound K# /soundIcsUnfinished sound K# /soundIcsAlarm sound

Associate sounds with WinBoard events. Most of the events are the same ones that cause text colorization. In addition, soundMove is played if a chess engine or another player makes a move. SoundBell is played if the chess server sends an ASCII BEL character (Ctrl+G). Available on the Sounds menu. SoundIcsWin, soundIcsLoss, soundIcsDraw and soundIcsUnfinished are played at the conclusion of an ICS game. The result of the game determines which sound is played. SoundIcsAlarm is played when your game clock counts down to icsAlarmTime. The sound argument may be one of the following:
K#

The name of a .wav file. The filename is interpreted relative to WinBoard's installation directory (the directory containing WinBoard.exe). $, indicating the default system sound. ! followed by the name of a built-in WinBoard wave resource. ! alone, or (empty string), indicating silence.

The default for soundMove and soundBell is $, while the others default to silence. /icsMenu={entries} or /icsMenu=@filename This option lets you customize the right-button context menu that is available in the upper (output) pane of the ICS Interaction window. It consists of a list of menu entries, one per line. If the option value starts with an @ sign, it is the name of a file that contains the entries. Each entry contains either four fields separated by commas or the single character "-". The fields are: 1. The menu text. If this field begins with "|", the item begins a new column in the menu and the "|" is not shown. If this field contains an "&", the character after the ampersand is underlined in the menu and acts as a keyboard shortcut for the item when the menu is displayed. Do not assign the same shortcut key to two different menu items. 2. Text to insert into the input pane. The text cannot include a comma. You can use ICS aliases to get around this limitation. 3. A flag (1 or 0) saying whether to insert a space and name (see above) after the text. If you set this flag, you might also want to put "(name)" into the menu text as a memory aid. 4. A flag (1 or 0) saying whether the result should be sent immediately to ICS or left in the input pane for further editing. You can now use two special insert texts chat and none in the entry definitions. In stead of being sent to the ICS, WinBoard will recognize them as special cases (they are not valid ICS commands anyway). Chat will open a chat box for the handle you clicked on, none will define a disabled entry (usually used with an item name of spaces), which you could put in the position of the menu that pops up under your mouse pointer, so there would be no default action when you up-click without moving the mouse first. The entry "-" produces a separator line in the menu. The top three menu entries are always Copy and Paste, Copy, and Paste, but you have full control over the rest of the menu. The default menu is: &Who,who,0,1 Playe&rs,players,0,1 &Games,games,0,1 &Sought,sought,0,1 | ,none,0,0 Open Chat Box (name),chat,1,0

&Tell (name),tell,1,0 M&essage (name),message,1,0 &Finger (name),finger,1,1 &Vars (name),vars,1,1 &Observe (name),observe,1,1 &Match (name),match,1,1 Pl&ay (name),play,1,1 There is no graphical user interface to set this option. To change it, edit your settings file with a plain text editor such as Notepad.
K#

/icsNames={names} or /icsNames=@filename

This option lets you customize the drop-down list of ICS names that appears in the WinBoard startup dialog. It consists of a list of strings, one per line. If the option value starts with an @ sign, it is the name of a file that contains the strings. When you select a string from the drop-down list, WinBoard prepends the text /ics /icsHost= and adds the result to the command-line options. There is no graphical user interface to set this option. To change it, edit your settings file with a plain text editor such as Notepad.
K#

/firstChessProgramNames={names} or /firstChessProgramNames="@filename" This option lets you customize the first drop-down list of chess engine names that appears in the WinBoard startup dialog. It consists of a list of strings, one per line. If the option value starts with an @ sign, it is the name of a file that contains the strings. When you select a string from the drop-down list, WinBoard prepends the text /cp /firstChessProgram= and adds the result to the command-line options. There is no graphical user interface to set this option. To change it, edit your settings file with a plain text editor such as Notepad. Example:
/firstChessProgramNames={GNUChess WCrafty-15_11 /fd="C:\Program Files\Crafty" ArasanX /fd="C:\Program Files\Arasan\Arasan 4.1" "EXchess xb" /fd=C:\EXchess Comet-WB /fd=C:\Comet }
K#

/secondChessProgramNames={names} or /secondChessProgramNames="@filename" This option lets you customize the second drop-down list of chess engine names that appears in the WinBoard startup dialog. It consists of a list of strings, one per line. If the option value starts with an @ sign, it is the name of a file that contains the strings. When you select a string from the drop-down list, WinBoard prepends the text /cp /secondChessProgram= and adds the result to the command-line options. There is no graphical user interface to set this option. To change it, edit your settings file with a plain text editor such as Notepad. Example:
/secondChessProgramNames={GNUChess WCrafty-15_11 /sd="C:\\Program Files\\Crafty\" ArasanX /sd="C:\Program Files\Arasan\Arasan 4.1" "EXchess xb" /sd=C:\EXchess Comet-WB /sd=C:\Comet }
K#

/x=xcoord /y=ycoord Sets the initial location of the board window, giving the screen coordinates of the upper left-hand corner. Both arguments must be given together.

K#

/analysisX=xcoord /analysisY=ycoord /analysisW=width /analysisH=height These options have been deprecated, as the analysis window is replaced by the more general engineoutput window. They are recognized, but ignored, and no longer saved in the winboard.ini file.
K#

/commentX=xcoord /commentY=ycoord /commentW=width /commentH=height Sets the initial location and size of the Comment window, giving the screen coordinates of the upper lefthand corner (relative to the main window), the width, and the height. All four arguments must be given together.
K#

/gameListX=xcoord /gameListY=ycoord /gameListW=width /gameListH=height Sets the initial location and size of the Game List window, giving the screen coordinates of the upper lefthand corner (relative to the main window), the width, and the height. All four arguments must be given together.
K#

/icsX=xcoord /icsY=ycoord /icsW=width /icsH=height Sets the initial location and size of the ICS Interaction window, giving the screen coordinates of the upper left-hand corner (relative to the main window), the width, and the height. All four arguments must be given together.
K#

/tagsX=xcoord /tagsY=ycoord /tagsW=width /tagsH=height Sets the initial location and size of the Tags window, giving the screen coordinates of the upper left-hand corner (relative to the main window), the width, and the height. All four arguments must be given together.
K#

/moveHistoryX=xcoord moveHistoryY=ycoord /moveHistoryW=width /moveHistoryH=height Sets the initial location and size of the move-history window, giving the screen coordinates of the upper left-hand corner (relative to the main window), the width, and the height. All four arguments must be given together.
K#

/evalGraphX=xcoord /evalGraphY=ycoord /evalGraphW=width /evalGraphH=height Sets the initial location and size of the evaluation-graph window, giving the screen coordinates of the upper left-hand corner (relative to the main window), the width, and the height. All four arguments must be given together.
K#

/engineOutputX=xcoord /engineOutputY=ycoord /engineOutputW=width /engineOutputH=height Sets the initial location and size of the engine-output window, giving the screen coordinates of the upper left-hand corner (relative to the main window), the width, and the height. All four arguments must be given together.

K# K#

/engineOutputUp true|false /evalGraphUp true|false K# /moveHistoryUp true|false If set to True, the corresponding window is displayed, if False, the window is absent.
K#

/stickyWindows true|false Auxiliary windows touching the main window will stay attached to the latter when you move it.
K# K#

/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.
K#

/gameListTags string The string contains single-character codes specifying the PGN tags that have to be listed for each game

in the game-list window, and their order. The meaning of the characters is a=out-of-book info, b=black Elo, e=event, d=date, o=round, p=players, r=result, c=result comment, w=white Elo, s=site, t=time control and v=variant, Default: eprd.

+K$#

Adjudication Options

K#

/adjudicateLossThreshold scorethreshold If the given value is non-zero, WinBoard 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 engine. Make sure the score is interpreted properly by WinBoard, using /firstScoreAbs and /secondScoreAbs if needed.
K#

/adjudicateDrawMoves number If the given value is non-zero, WinBoard adjudicates the game as a draw if after the given number of moves it was not yet decided.
K#

/checkMates true|false

If this option is True, WinBoard detects all checkmates and stalemates, and ends the game as soon as they occur. Legality-testing must be on for this option to work.
K#

/testClaims true|false If this option is True, WinBoard verifies all result claims made by engines, and those who send false claims will forfeit the game because of it. Legality-testing must be on for this option to work.
K#

/materialDraws true|false If this option is True, WinBoard adjudicates games as draws when there is no sufficient material left to create a checkmate. This applies to KBKB with like bishops, and to KBK, KNK and KK. Legality-testing must be on for this option to work.
K#

/trivialDraws true|false If this option is True, WinBoard adjudicates games as draws that cannot be usualy won without opponent assistance. 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 positions. 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.
K#

/ruleMoves number If the given value is non-zero, WinBoard adjudicates the game as a draw after the given number of consecutive reversible moves. Engines can claim draws after 50 moves, irrespective of the value of number.
K#

/repeatsToDraw number If the given value is non-zero, WinBoard adjudicates the game as a draw if a position is repeated the given number of times. Engines can claim draws after 3 repeats, (on the 3rd occurrence, actually), irrespective of the value of number. Beware that positions that have different castling or en-passant rights do not count as repeats, WinBoard is fully e.p. and castling aware!

+K$#

Other Options

K#

/ncp or /xncp, or K# /noChessProgram true|false If this option is True, WinBoard acts as a passive chessboard; it does not start a chess program or connect to ICS. This option also sets clockMode to False. Default: False.
K#

/mode or K# /initialMode modename If this option is given, WinBoard selects the given modename from the Mode menuafter starting and (if applicable) processing the loadGameFileor loadPositionFileoption. Default: "". Other supported values are TwoMachines, AnalyzeFile, Analysis, MachineWhite, MachineBlack, EditGame, EditPosition, and Training.
K#

/variant varname

Activates preliminary, partial support for playing chess variants 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) xiangqi Chinese Chess (on a 9x10 board) shogi Japanese Chess (on a 9x9 board, with 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 board) janus A game with two Archbishops (10x8 board) shatranjAncient Arabic Chess, with Elephants and General replacing B and Q. courier Medieval intermedite between shatranj and modern Chess (on 12x8 board) falcon A patented Chess variant with two Falcon pieces (10x8) board berolinaPawns capture straight ahead, and move diagonal (legality testing off!) cylinder Pieces wrap around the board, as if it were a cylinder (legality testing off!) fairy A variant in which all pieces known to WinBoard can participate knightmate King moves a Knight, and vice versa makruk Thai Chess (shatranj-like, pawns promote on 6th rank) super Superchess, a shuffle variant with B+N, R+N, K+N and Q+N compound great Great Shatranj, variant without sliders, on 10x8 board (legality testing off!) In the shuffle variants, WinBoard does now shuffle the pieces, although 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 this should be OK. In crazyhouse, WinBoard now does keep track of off-board pieces.In shatranj it does implement the baring rule when mate detection is switched on. In xiangqi it does implement the rules for perpetual checking and chasing (in Two-Machines

mode).
K#

/shuffleOpenings This volatile option will cause shuffling of all pieces on the back rank, even in variants that normally have a fixed opening setup, according to the setting of the /defaultFrcPosition. It will remain in effect untill you select a new variant. In variants with normal castling, corner Rooks and King will be exempted from shuffling. Color-bound pieces such as Bishops will be kept on differently colored squares.
K#

/boardHeight height 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.
K#

/boardWidth width 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. Width a non-standard width, the initial position will always be an empty board, as the usual opening array will not fit.
K#

/holdingsSize size 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 size 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.
K#

/defaultFrcPosition number Specifies the number of the opening position in shuffle games like FRC. A value of -1 means the position is randomly generated by WinBoard.
K#

/pieceToCharTable characterstring The characters that are used to represent the piece types WinBoard 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=Commoner, 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 distinguish them in FENs. You can also explicitly assign pieces a period, 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 indicate 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.
K#

/rsh or K# /remoteShell shellname Name of the command used to run programs remotely. If this option is not given, WinBoard uses its own built-in implementation of the Unix rcmd protocol (the protocol used by rsh).
K#

/ruser or K# /remoteUser username User name on the remote system when running programs with the remoteShell. The default is your local user name.
K#

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

K# K#

/delayBeforeQuit number /delayAfterQuit number These options specify how long WinBoard has to wait before sending a termination signal to rogue engine processes, that do not want to react to the quit command. The second one determines the pause after killing the engine, to make sure it dies.
K# K#

/ini or K# /settingsFile filename /saveSettingsFile filename K# @ file-name See Settings.

KK$#+

INITIALIZATION FILES

K #

Settings

When WinBoard starts up, it reads option settings from a file named winboard.ini in its installation directory (the directory containing winboard.exe). Options in this file have the same format as command line options, except that they do not all have to be on a single line. You can put a comment in a settings file by preceding it with a semicolon (;). The winboard.ini file is read before the command line is processed, so any options you give on the command line override options in the file. If WinBoard encounters a /settingsFile filename or @filename option while reading settings (whether from the command line or a file), it reads more settings from the given file before reading the next option. The Save Settings Now menu command writes the current values of most options to a file. In addition, settings are saved automatically when WinBoard exits if Save Settings on Exit is checked. The settings are written to the last file named in a /settingsFile command that could be successfully read, or in a /saveSettingsFile command (where no attempt is made to read it at all, making it work even if the mentioned file did not exist yet), if any; otherwise to winboard.ini. The @ option does not affect which file settings are saved to. Warning: Because Save Settings overwrites the last settings file (usually winboard.ini) and only saves a subset of WinBoard's options, you should not add settings of more options to such a file with a text editor. If you do this, your additional options will be lost on the next Save Settings. You can change the values of existing settings freely, using Notepad or any plain text editor. Be careful not to do this while WinBoard is running, however, unless you know that Save Settings on Exit is off. Otherwise all your changes will be overwritten and lost when WinBoard exits. Notice that tournament managers, like PSWBTM, usually call WinBoard with the option not to save settings on exit, so that the entire tournament uses the same settings. So it does make sense to edit volatile options, such as /variant, into the settings file before such a tournament. Also note that a settings file that contains a /settingsFile or /saveSettingsFile option to redirect later saving to another file effectively protects its own contents against being overwritten by saving settings.
K#

ICS Logon Whenever WinBoard connects to the Internet Chess Server, if it finds a file called ICS.ini in its installation directory, it feeds the file's contents to the ICS as commands. Usually the first two lines of the file should be your ICS user name and password. You can specify a different name instead of ICS.ini by using the icslogon command line option.

K$#+

INSTALLING CHESS ENGINES

Introduction WinBoard is capable of operating with many different chess engines. You can play chess against a compatible engine, set up matches between two engines, or (advanced users only) run an automated computer player on an ICS. Typically, the main difficulty in installing a new chess engine for use by WinBoard comes in getting the engine itself running and setting its options appropriately. The connection to WinBoard is relatively straightforward. WinBoard-compatible chess engines are Win32 command line programs that you can run by hand in an MS-DOS Prompt box and type human-readable commands to. WinBoard connects to an engine simply by starting the engine up in the background and communicating with it through a pair of pipes. Therefore the basic procedure for installing an engine is: 1. Get a copy of the engine and any supporting files it needs. 2. Install and configure the engine as a command-line program by following the instructions that come with it. Try it out by running it from the command line in an MS-DOS Prompt box and make sure it works. 3. Optional, but recommended: Try out the WinBoard plus engine combination by running WinBoard with the proper command line arguments in an MS-DOS Prompt box. 4. Create a shortcut on your desktop or Start menu to run the engine with WinBoard. 5. Optionally edit your WinBoard.ini file to add the engine to the drop-down lists on WinBoard's startup dialog. This document cannot explain steps 1 and 2 in detail for all engines, but we will take you through all five steps in outline, using Crafty as an example. Example: Crafty 1. Choose a directory to put Crafty in. We'll use C:\Program Files\Crafty in this example. Download your copy of Crafty into this directory from its author's FTP site, ftp://ftp.cis.uab.edu/pub/hyatt. At this writing, you will need at least the following files: read.me v15/crafty.doc v15/crafty.faq v15/wcrafty-15.*.exe (where * is replaced by the largest number there) common/start.zip common/medium.zip (or another book). 2. The first three files are documentation that you can read with a text editor. Read the read.me file first and follow the instructions carefully. This will take some time. Do not write to the author of WinBoard if you have trouble with the instructions in the Crafty read.me. Try running Crafty from an MS-DOS Prompt box and make sure it works before you go on. 3. Optional, but recommended: In an MS-DOS Prompt box, cd to the directory where WinBoard is installed, typically "C:\Program Files\WinBoard". Then type the following command line. Use the actual name of the wcrafty file you downloaded, not an *, and if your browser changed the first period to an underscore when you downloaded the file, make that change in the command line too. WinBoard /cp /fcp=WCrafty-15.* /fd="C:\Program Files\Crafty" /scp=WCrafty-15.* /sd="C:\Program Files\Crafty" WinBoard should start up, with Crafty running as its chess engine. Check that you can play chess against Crafty. 4. To make a shortcut or Start menu entry for Crafty: Right-click on the desktop and select New/Shortcut.

Use the Browse button to find your winboard.exe file and get its name into the Command Line box. (It usually will be "C:\Program Files\WinBoard\winboard.exe".) Click in the Command Line box and hit the End key to go to the end. Add the following to the end of the command line, after the closing quotation mark. Use the actual name of the wcrafty file you downloaded, not an *, and if your browser changed the first period to an underscore when you downloaded the file, make that change in the command line too. /cp /fcp=WCrafty-15.* /fd="C:\Program Files\Crafty" /scp=WCrafty-15.* /sd="C:\Program Files\Crafty" Press Next, choose a name for the shortcut, and press Finish. You can now use this shortcut to run WinBoard with Crafty. Double-click it to check that it works. You can drag or copy the shortcut into your Start menu if you like. 5. To add Crafty as an option in the WinBoard Startup dialog, edit your WinBoard.ini file with Notepad or another plain text editor, carefully following the example shown under /firstChessProgramNames above. For more information If you would like to run an automated computer player on the ICS, see the separate file zippy.README. If you would like to write your own engine to interface to WinBoard, see the separate file engineintf.html, and join the mailing list mentioned there. Both files are included in the WinBoard distribution. You might also want to get the source code for WinBoard. It is available from the author's Web page, http://www.tim-mann.org/chess.html.

K#$+

FIREWALLS

By default, "WinBoard /ics" communicates with an Internet Chess Server by opening 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 firewalls using special options to WinBoard. Important: See the paragraph in the LIMITATIONS section below about extra echoes. 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 fire.wall.com. Set command-line options as follows: WinBoard -ics -icshost fire.wall.com -icsport 23 Then when you run WinBoard 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 telnetting to port 5000. If your firewall lets you telnet (or rlogin) to remote hosts, but doesn't let you telnet to port 5000, you will have to find some other host outside the firewall that does let you do this, and hop through it. For instance, suppose you have an 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". Exception: chessclub.com itself lets you connect to the chess server on the default telnet port (23), which is what you get if you dont specify a port to the telnet program. But the other chess servers dont allow this. 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.wall.com. Set command-line options as follows: WinBoard -ics -gateway rsh.wall.com -icshost chessclub.com Then when you run WinBoard in ICS mode, it will connect to the ICS by using rsh to run the command "telnet chessclub.com 5000" on host rsh.wall.com. ICC timestamp and FICS timeseal do not work through many 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 computer 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 requires you to go through some extra level of authentication, but after that will give you a clean 8-bit wide TCP connection to the chess server. In that case, if you are using timestamp or timeseal, you need to somehow socksify it; if not, you need to socksify WinBoard itself. Socksification is beyond the scope of this document, but see the SOCKS Web site at http://www.socks.nec.com/how2socksify.html.

K#$+

LIMITATIONS AND NON-LIMITATIONS

WinBoard is a Win32 application. It runs only on Windows NT and Windows 95. It does not work on Windows 3.11 or earlier, even with the Win32s compatibility package. CMail, the companion program to xboard for playing electronic mail correspondence chess, has not been ported to Win32. There is no way for two people running copies of WinBoard to play each other without going through the 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, timestamp, or timeseal on an Internet provider host, you may find that each line you type is echoed back an extra time after you hit Enter. You can probably turn this echo off. If your Internet provider is a Unix system, type "stty -echo" after you log in to the provider but before you run telnet, timestamp, or timeseal. In addition, you may need to type the sequence Ctrl+Q Ctrl+E Enter after you have finished logging in to ICS. On VMS, type set terminal /noecho /nowrap, and after you telnet to the ICS, type Ctrl+Q Ctrl+] Enter set mode char Enter Enter. It is a good idea to turn off the extra remote echo if you can, because otherwise it can get interleaved with output from the ICS and confuse WinBoard's parsing routines. Dont just turn off Local Line Editing so that you see only the remote echo and not the local one; that will make the interleaving problem worse. The game parser recognizes only algebraic notation (SAN). The ICS logon file does not work properly when you connect to ICS through a Unix gateway host by setting icsPort to 23. The Unix login process apparently discards type-ahead. Some WinBoard functions may not work with versions of GNU Chess earlier than 4.0, patchlevel 77. The current version of WinBoard works best with Crafty version 15.11 or later. Many of the following points used to be limitations in WinBoard 4.2.7 and earlier, but are now fixed: The internal move legality tester in WinBoard 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 dropping 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, WinBoard will accept the error message that comes back, undo the move, and let you try another. FEN positions saved by WinBoard do include correct information about whether castling or en passant are legal, 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 noncontact mating move in the move list. WinBoard 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 (obsolete) piece menus are not active, but you can perform piece drops by dragging pieces from the holdings. Edit Position mode does not allow you to edit the Crazyhouse holdings properly. You cannot drag pieces to the holding, and using the popup menu to put pieces there does not adapt the holding counts and leads to an inconsistent state. Set up Crazyhouse positions by loading / pasting a bFEN, from there you can set 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.

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

K#$+

AUTHORS AND CONTRIBUTORS

WinBoard is partly based on xboard, a chessboard program for Unix and the X Window System. Tim Mann has been responsible for all versions of WinBoard, and for xboard versions 1.3 and beyond. H.G.Muller is responsible for version 4.3. Mark Williams added many features to WinBoard 4.1.0, including copy/paste, premove, icsAlarm, autoFlipView, training mode, auto raise, and blindfold. Hugh Fischer added piece animation to xboard, and Henrik Gram added it to WinBoard. Frank McIngvale contributed many xboard user interface improvements and improved Crafty support. Jochen Wiedmann ported xboard to the Amiga, creating AmyBoard, and converted the documentation to texinfo. Elmar Bartel contributed the new piece bitmaps for version 3.2. Evan Welsh wrote CMail. John Chanak contributed the initial implementation of ICS mode. The default color scheme was adapted from Wayne Christopher's XChess program. Chris Sears and Dan Sears wrote the original xboard. They were responsible for xboard versions 1.0 through 1.2. Allessandro Scotti added many elements to the user interface, including the board textures and fontbased rendering, the evaluation-graph, move-history and engine-output window. He was also responsible for adding the UCI support. H.G. Muller 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 ore robust in dealing with buggy and crashing engines, and extended time control with a time-odds and node-count-based modes. Send bug reports to <[email protected]>. Please run WinBoard with the /debug option and include the output from the resulting WinBoard.debug file in your message. The WinBoard 4.3.xx line is being developed by H.G. Muller independently of the GNU Savannah xboard project. Bug reports on this version, and suggestions for improvements and additions, are best posted in the WinBoard forum, development section (http://www.open-aurec.com/wbforum). Michel van den Bergh provided the code for reading Polyglot opening books. Arun Persaud worked with H.G. Muller to combine all the features of the never-released WinBoard 4.2.8 of the Savannah project (mainly by Daniel Mehrmann), and the never-released 4.3.16 into a unified WinBoard 4.4, which is now available both from the Savannah web site and the WinBoard forum.

K#$+

COPYRIGHT

Copyright 1991 by Digital Equipment Corporation, Maynard, Massachusetts. Enhancements Copyright 1992-2009 Free Software Foundation, Inc. The following terms apply to Digital Equipment Corporation's copyright interest in WinBoard: All Rights Reserved Permission to use, copy, modify, and distribute this software and its documentation for any purpose and without fee is hereby granted, provided that the above copyright notice appear in all copies and that both that copyright notice and this permission notice appear in supporting documentation, and that the name of Digital not be used in advertising or publicity pertaining to distribution of the software without specific, written prior permission. DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES 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. The following terms apply to the enhanced version of WinBoard distributed by the Free Software Foundation: 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, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.

+ main $ Contents # Contents K Contents K Description # Description K Getting Started # GettingStarted K move # move K icon # icon K Menus # Menus $ Menus + main KFile Menu #FileMenu $File Menu + main K New Game # NewGame K New Shuffle Game # NewShuffleGame K New Variant # NewVariant K Load Game # LoadGame K Load Next Game # LoadNextGame K Load Previous Game # LoadPreviousGame K Reload Same Game # ReloadSameGame K Save Game # SaveGame K Copy Game To Clipboard # CopyGameToClipboard K Paste Game From Clipboard # PasteGameFromClipboard K Load Position # LoadPosition

K Load Next Position # LoadNextPosition K Load Previous Position # LoadPreviousPosition K Reload Same Position # ReloadSamePosition K Save Position # SavePosition K Save Diagram # Save Diagram K Copy Position Clipboard # CopyPositionToClipboard K Paste Position Clipboard # PastePositionFromClipboard K Exit # Exit K Mode Menu # ModeMenu $ Mode Menu + main K Machine White # MachineWhite K Machine Black # MachineBlack K Two Machines # TwoMachines K Machine Both # Machine Both K Analysis Mode # AnalysisMode K Analyze File # AnalyzeFile K ICS Client # ICSClient K Edit Game # EditGame K Edit Position # EditPosition K Show Engine Output # Show Engine Output K Show Evaluation Graph # Show Evaluation Graph

K Show Game List # ShowGameList K Show Move History # Show Move History K Open Chat Window # Open Chat Window K Training # Training K Edit Tags # EditTags K Edit Comment # EditComment K Enter Username # EnterUsername K Pause # Pause K Action Menu # ActionMenu $ Action Menu + main K Accept # Accept K Decline # Decline K Rematch # Rematch K Call Flag # CallFlag K Draw # Draw K Adjourn # Adjourn K Abort # Abort K Resign # Resign K Stop Observing # StopObserving K Stop Examining # StopExamining K Upload to Examine # Upload to Examine

K Adjudicate To White # AdjudicateToWhite K Adjudicate To Black # AdjudicateToBlack K Adjudicate Draw # AdjudicateDraw K Step Menu # StepMenu $ Step Menu + main K Type In Move # TypeInMove K Backward # Backward K Forward # Forward K Back to Start # BacktoStart K Forward to End # ForwardtoEnd K Revert # Revert K Annotate # Annotate K Truncate Game # TruncateGame K Move Now # MoveNow K Retract Move # RetractMove K Options Menu # OptionsMenu $ Options Menu + main K Flip View # FlipView K Swap Clocks # SwapClocks K Mute all Sounds # MuteAllSounds K General Options # GeneralOptions

K Always On Top # AlwaysOnTop K Always Queen # AlwaysQueen K Animate Dragging # AnimateDragging K Animate Moving # AnimateMoving K Auto Flag # AutoflagCmd K Auto Flip View # AutoFlipView K Auto Raise Board # AutoRaiseBoard K Blindfold # BlindfoldCmd K Highlight Dragging # HighlightDragging K Extended PGN Info # ExtendedPGNInfo K Extra Info In Move History # ExtraInfoInMoveHistory K Highlight Last Move # HighlightLastMove K Periodic Updates # PeriodicUpdatesCmd K Ponder Next Move # PonderNextMoveCmd K Popup Exit Message # PopupExitMessageCmd K Popup Move Errors # PopupMoveErrorsCmd K Show Button Bar # ShowButtonBarCmd K Show Coords # ShowCoordsCmd K Show Thinking # ShowThinkingCmd K Test Legality # TestLegalityCmd K Hide Thinking From Human # HideThinkingFromHuman

K Highlight Move With Arrow # HighlightMoveWithArrow K Display Logos # DisplayLogos K Board Options # BoardOptions K Board Size # BoardSizeCmd K Board Colors # BoardColors K All White # AllWhite K Flip Black # FlipBlack K Adjudications # Adjudications K Ponder Next Move # PonderNextMove K Show Thinking # ShowThinking K Hide Thinking From Human # HideThinkingFromHuman K Periodic Updates # PeriodicUpdates K Adjudicate Draw Moves # AdjudicateDrawMoves K Adjudicate Loss Threshold # AdjudicateLossThreshold K Verify Claims # VerifyClaims K Detect Mates # DetectMates K Draw If Insufficient Material # DrawIfInsufficientMaterial K Adjudicate Trivial Draws # AdjudicateTrivialDraws K N-Move Rule # N-MoveRule K N-Fold Repetition Rule # N-FoldRepetitionRule K Global Settings # Global Settings

K Polyglot Directory # PolyglotDirectory K Hash Size # HashSize K EGTB Path # EGTBPath K EGTB Cache Size # EGTBCacheSize K Opening Book # OpeningBook K Number of CPUs # Number of CPUs K Engine Settings # Engine Settings K ICS Options # ICSOptions K Auto Comment # AutoCommentCmd K Auto Observe # AutobsCmd K Auto Kibitz # AutoKibitzCmd K Get Move List # GetMoveListCmd K Local Line Editing # LocalLineEditing K Quiet Play # QuietPlayCmd K Seek Graph # SeekGraphCmd K Auto Refresh # AutoRefreshCmd K Background Observe # BackgndobsCmd K Dual Board # DualBoardCmd K Premove # PremoveCmd K One-Click Move # OneClickMoveCmd K ICS Alarm # ICSAlarm

K ICS Interaction Colors # ICSInteractionColors K Startup Chat Boxes # StartupChatBoxes K Fonts # Fonts K Sounds # Sounds K Move Sound # MoveSound K Sounds # Sounds K Communications # Communications K Load Game # LoadGameOptns K Save Game # SaveGameOptns K Time Control # TimeControlCmd K Save Settings Now # SaveSettings K Save Settings on Exit # SaveSettingsOnExit K Help Menu # HelpMenu $ Help Menu + main K Help Contents # HelpContents K Search for Help on # SearchHelp K How to Use Help # HelpHelp K Hint # Hint K Book # Book K About WinBoard # AboutWinBoard K ICS Interaction Context Menu # ICSInteractionContextMenu

$ ICS Interaction Context Menu + main K Copy and Paste # CopyAndPaste K Copy # Copy K Paste # Paste K Who # Who K Players # Players K Games # Games K Sought # Sought K Tell # Tell K Open Chat Box # OpenChatbox K Message # Message K Finger # Finger K Vars # Vars K Observe # Observe K Match # Match K Play # Play K Buttons # Buttons $ Buttons + main K Back to Start K Backward K Pause K Forward K Forward to End K Command Line Options

K Options # Options $ Command Line Options + main K Chess Engine Options $ Chess Engine Options # ChessEngineOptions + main K cp # cp K chessProgram # chessProgram K tc # tc K timeControl # timeControl K mps # mps K movesPerSession # movesPerSession K inc # inc K timeIncrement # timeIncrement K clock # clock K clockMode # clockMode K st # st K searchTime # searchTime K sd # sd K searchDepth # searchDepth K firstNPS # firstNPS K secondNPS # secondNPS K firstTimeOdds # firstTimeOdds

K secondTimeOdds # secondTimeOdds K timeOddsMode # timeOddsMode K ponder # ponder K ponderNextMove # ponderNextMove K thinking # thinking K showThinking # showThinking K periodic # periodic K periodicUpdates # periodicUpdates K mg # mg K matchGames # matchGames K mm # mm K matchMode # matchMode K matchPause # matchPause K fd # fd K firstDirectory # firstDirectory K sd # sd K secondDirectory # secondDirectory K fcp # fcp K firstChessProgram # firstChessProgram K scp # scp K secondChessProgram # secondChessProgram

K fh # fh K firstHost # firstHost K sh # sh K secondHost # secondHost K initString # initString K secondInitString # secondInitString K initString # initString K secondInitString # secondInitString K fb # fb K firstPlaysBlack # firstPlaysBlack K reuse # reuse K reuseFirst # reuseFirst K reuse2 # reuse2 K reuseSecond # reuseSecond K firstProtocolVersion # firstProtocolVersion K secondProtocolVersion # secondProtocolVersion K firstScoreAbs # firstScoreAbs K secondScoreAbs # secondScoreAbs K niceEngines # niceEngines K firstOptions # firstOptions K secondOptions # secondOptions

K firstNeedsNoncompliantFEN # firstNeedsNoncompliantFEN K secondNeedsNoncompliantFEN # secondNeedsNoncompliantFEN + main K UCI Engine Support $ UCI Engine Support # UCIEngineSupport K fUCI # fUCI K firstIsUCI # firstIsUCI K sUCI # sUCI K secondIsUCI # secondIsUCI K PolyglotDir # PolyglotDir K usePolyglotBook # usePolyglotBook K PolyglotBook # PolyglotBook K fNoOwnBookUCI # fNoOwnBookUCI K firstXBook # firstXBook K firstHasOwnBookUCI # firstHasOwnBookUCI K sNoOwnBookUCI # sNoOwnBookUCI K secondXBook # secondXBook K secondHasOwnBookUCI # secondHasOwnBookUCI K defaultHashSize # defaultHashSize K defaultCacheSizeEGTB # defaultCacheSizeEGTB K defaultPathEGTB # defaultPathEGTB + main K Internet Chess Server Options

$ Internet Chess Server Options # InternetChessServerOptions K ics # ics K internetChessServerMode # internetChessServerMode K icshost # icshost K internetChessServerHost # internetChessServerHost K icsport # icsport K internetChessServerPort # internetChessServerPort K via # via K timestamp K timeseal K telnet # telnet K useTelnet # useTelnet K gateway # gateway K telnetProgram # telnetProgram K icscom # icscom K internetChessServerComPort # internetChessServerComPort K comPortSettings # comPortSettings K icslogon # icslogon K internetChessServerLogonScript # internetChessServerLogonScript K autocomm # autocomm K autoComment # autoComment K autoflag # autoflag

K autoCallFlag # autoCallFlag K autobs # autobs K autoObserve # autoObserveCmd K autoKibitz # autoKibitz K moves # moves K getMoveList # getMoveList K edit # edit K localLineEditing # localLineEditingOption K quiet # quiet K quietPlay # quietPlay K seekGraph (option) # opt_seekGraph K sg (option) # opt_sg K autoRefresh (option) # opt_autoRefresh K backgroundObserve (option) # opt_backgroundObserve K dualBoard (option) # opt_dualBoard K blindfold (option) # opt_blindfold K pre # pre K xpre # xpre K premove (option) # premove K preWhite # preWhite K xpreWhite # xpreWhite

K premoveWhite # premoveWhite K premoveWhiteText # premoveWhiteText K preBlack # preBlack K xpreBlack # xpreBlack K premoveBlack # premoveBlack K premoveBlackText # premoveBlackText K neClickMove (option) # opt_oneClickMove K alarm # alarm K xalarm # xalarm K icsAlarm # icsAlarm K icsAlarmTime # icsAlarmTime K keepAlive # keepAlive K chatBoxes (option) # opt_chatBoxes + main K Load and Save Options $ Load and Save Options # LoadandSaveOptions K lgf # lgf K loadGameFile # loadGameFile K lgi # lgi K loadGameIndex # loadGameIndex K td # td K timeDelay # timeDelay

K sgf # sgf K saveGameFile # saveGameFile K autosave # autosave K autoSaveGames # autoSaveGames K lpf # lpf K loadPositionFile # loadPositionFile K lpi # lpi K loadPositionIndex # loadPositionIndex K spf # spf K savePositionFile # savePositionFile K pgnExtendedInfo # pgnExtendedInfo K pgnEventHeader # pgnEventHeader K saveOutOfBookInfo # saveOutOfBookInfo K oldsave # oldsave K oldSaveStyle # oldSaveStyle K debug # debug K debugMode # debugMode K debugFile # debugFile K nameOfDebugFile # nameOfDebugFile K engineDebugOutput # engineDebugOutput + main K User Interface Options

$ User Interface Options # UserInterfaceOptions K firstLogo # firstLogo K secondLogo # secondLogo K autoLogo # autoLogo K hideThinkingFromHuman # hideThinkingFromHuman K noGUI # noGUI K top # top K alwaysOnTop # alwaysOnTopOpt K queen # queen K alwaysPromoteToQueen # alwaysPromoteToQueen K drag # drag K animateDragging # animateDraggingOpt K animate # animate K animateMoving # animateMovingOpt K flip # flip K flipView # flipViewOption K autoflip # autoflip K autoFlipView # autoFlipViewOption K autoraise # autoraise K autoRaiseBoardOption # autoRaiseBoardOption K highdrag # highdrag

K highlightDragging # highlightDraggingOpt K showTargetSquares # showTargetSquaresOpt K dropMenu # dropMenuOpt K highlight # highlight K highlightLastMove # highlightLastMoveOpt K popup # popup K popupMoveErrors # popupMoveErrorsOpt K popup # popup K popupMoveErrors # popupMoveErrorsOpt K coords # coords K showCoords # showCoords K legal # legal K testLegality # testLegality K size # size K boardSize # boardSize K wpc # wpc K whitePieceColor # whitePieceColor K bpc # bpc K blackPieceColor # blackPieceColor K lsc # lsc K lightSquareColor # lightSquareColor

K dsc # dsc K darkSquareColor # darkSquareColor K grayscale # grayscale K hsc # hsc K highlightSquareColor # highlightSquareColor K phc # phc K premoveHighlightColor # premoveHighlightColor K mono # mono K monoMode # monoMode K flipBlack # flipBlack K allWhite # allWhite K renderPiecesWithFont # renderPiecesWithFont K fontPieceToCharTable # fontPieceToCharTable K fontPieceSize # fontPieceSize K fontPieceBackColorWhite # fontPieceBackColorWhite K fontPieceForeColorWhite # fontPieceForeColorWhite K fontPieceBackColorBlack # fontPieceBackColorBlack K fontPieceForeColorBlack # fontPieceForeColorBlack K liteBackTextureFile # liteBackTextureFile K darkBackTextureFile # darkBackTextureFile K liteBackTextureMode # liteBackTextureMode

K darkBackTextureMode # darkBackTextureMode K overideLineGap # overideLineGap K highlightMovesWithArrow # highlightMovesWithArrow K highlightArrowColor # highlightArrowColor K evalHistoColorWhite # evalHistoColorWhite K evalHistoColorBlack # evalHistoColorBlack K colorShout # colorShout K colorSShout # colorSShout K colorChannel1 # colorChannel1 K colorChannel # colorChannel K colorKibitz # colorKibitz K colorTell # colorTell K colorChallenge # colorChallenge K colorRequest # colorRequest K colorSeek # colorSeek K colorNormal # colorNormal K colorBackground # colorBackground K colorize # colorize K colorizeMessages # colorizeMessages K clockFont # clockFont K messageFont # messageFont

K coordFont # coordFont K tagsFont # tagsFont K commentFont # commentFont K icsFont # icsFont K soundShout # soundShout K soundSShout # soundSShout K soundChannel1 # soundChannel1 K soundChannel # soundChannel K soundKibitz # soundKibitz K soundTell # soundTell K soundChallenge # soundChallenge K soundRequest # soundRequest K soundMove # soundMove K soundBell # soundBell K soundIcsWin # soundIcsWin K soundIcsLoss # soundIcsLoss K soundIcsDraw # soundIcsDraw K soundIcsUnfinished # soundIcsUnfinished K soundIcsAlarm # soundIcsAlarm K icsMenu # icsMenu K icsNames # icsNames

K firstChessProgramNames # firstChessProgramNames K secondChessProgramNames # secondChessProgramNames K xy coordinates of board # xy K xywh coordinates of Analysis window # xywh K xywh coordinates of Comment window # xywh K xywh coordinates of Game List window # xywh K xywh coordinates of ICS Interaction window # xywh K xywh coordinates of Tags window # xywh K xywh coordinates of Move History window # xywh K xywh coordinates of Evaluation Graph window # xywh K xywh coordinates of Engine Output window # xywh K engineOutputUp # Window Up K evalGraphUp # Window Up K moveHistoryUp # Window Up K stickyWindows # stickyWindows K autoDisplayComment # autoDisplayComment K autoDisplayTags # autoDisplayTags K gameListTags # gameListTags + main K Adjudication Options $ Adjudication Options # AdjudicationOptions K adjudicateLossThreshold # adjudicateLossThreshold

K adjudicateDrawMoves # adjudicateDrawMoves K checkMates # checkMates K testClaims # testClaims K materialDraws # materialDraws K trivialDraws # trivialDraws K ruleMoves # ruleMoves K repeatsToDraw # repeatsToDraw + main K Other Options $ Other Options # OtherOptions K ncp # ncp K noChessProgram # noChessProgram K mode # mode K initialMode # initialMode K variant # variant K shuffleOpenings # shuffleOpenings K boardHeight # boardHeight K boardWidth # boardWidth K holdingsSize # holdingsSize K defaultFrcPosition # defaultFrcPosition K pieceToCharTable # pieceToCharTable K rsh # rsh

K remoteShell # remoteShell K ruser # ruser K remoteUser # remoteUser K userName # userName K delayBeforeQuit # delayBeforeQuit K delayAfterQuit # delayAfterQuit K ini # ini K settingsFile # settingsFile K saveSettingsFile # saveSettingsFile Kat sign # atsign K Initialization files K Files $ Files # Files + main K Settings # Settings K ICS Logon # ICSLogon K Installing Chess Engines $ Installing Chess Engines # InstallingChessEngines + main K Firewalls # Firewalls $ Firewalls + main K Limitations # Limitations $ Limitations + main K Authors

# Authors $ Authors + main K Copyright # Copyright $ Copyright + main

You might also like