Browse files

Use roff and mdoc to write the manual pages

Remove the gui's manual page since it didn't contain anything useful at
this point.

Update .gitignore, INSTALL and to reflect these
  • Loading branch information...
1 parent 83b861d commit e9e68e329efb72e490043a2ab28222449924abb6 @artoj artoj committed Jan 7, 2012
Showing with 253 additions and 304 deletions.
  1. +0 −5 .gitignore
  2. +1 −8 INSTALL
  3. +0 −10
  4. +252 −0 docs/cutechess-cli.6
  5. +0 −229 docs/cutechess-cli.txt
  6. +0 −52 docs/cutechess.txt
@@ -17,11 +17,6 @@ test_board
# qmake generated Makefile
-# asciidoc generated man page and xml document
# doxygen generated api documents
@@ -32,14 +32,7 @@ And to build the source:
To build on a Macintosh, add "-spec macx-g++" to the qmake command.
-Documentation is available as Unix manual pages and in HTML format. Building
-the documentation in either format requires asciidoc
- $ make doc-man (documentation as Unix manual pages)
- $ make doc-html (documentation in HTML format)
-The documentation is built to the "docs" directory.
+Documentation is available as Unix manual pages in the "docs" directory.
If you want to have an overview of Cute Chess' source you can build the API
@@ -10,13 +10,3 @@ SUBDIRS = projects
# API documentation (Doxygen)
doc-api.commands = doxygen docs/api/api.doxygen
-# Unix manual pages
-doc-man.commands += a2x -f manpage docs/cutechess.txt;
-doc-man.commands += a2x -f manpage docs/cutechess-cli.txt
-# html documentation
-doc-html.commands += asciidoc -b xhtml11 docs/cutechess.txt;
-doc-html.commands += asciidoc -b xhtml11 docs/cutechess-cli.txt
@@ -0,0 +1,252 @@
+.Dd January 7, 2012
+.Nm cutechess-cli
+.Nd A command-line tool for chess engine matches
+.Fl engine Ar engine-options
+.Fl engine Ar engine-options
+.Op Fl engine Ar engine-options ...
+.Op options
+Runs chess matches from the command line.
+Its options are as follows:
+.Bl -tag -width Ds
+.It Fl engine Ar engine-options
+Add an engine defined by
+.Ar engine-options
+to the tournament.
+.Sx Engine Options .
+.It Fl each Ar engine-options
+.Ar engine-options
+to each engine in the tournament.
+.It Fl variant Ar arg
+Set the chess variant to
+.Ar arg .
+.It Fl concurrency Ar n
+Set the maximum number of current games to
+.Ar n .
+.It Fl draw Ar n Ar score
+Adjudicate the game as draw if the score of both engines is within
+.Ar score
+centipawns from zero after
+.Ar n
+full moves have been played.
+.It Fl resign Ar n Ar score
+Adjudicate the game as a loss if an engine's score it at least
+.Ar score
+centipawns below zero for at least
+.Ar n
+consecutive moves.
+.It Fl tournament Ar arg
+Set the tournament type to
+.Ar arg .
+Supported tournament types are:
+.Cm round-robin
+(default) and
+.Cm gauntlet .
+.It Fl event Ar arg
+Set the event name to
+.Ar arg .
+.It Fl games Ar n
+.Ar n
+games per encounter. This value should be set to an even number in
+tournaments with more than two players to make sure that each player
+plays an equal number of games with white and black pieces.
+.It Fl rounds Ar n
+Multiply the number of rounds to play by
+.Ar n .
+For two-player tournaments this option should be used to set the total
+number of games to play.
+.It Fl ratinginterval Ar n
+Set the interval for printing the ratings to
+.Ar n
+.It Fl debug
+Display all engine input and output.
+.It Fl pgnin Ar file
+.Ar file
+as the opening book in PGN format.
+.It Fl pgndepth Ar n
+Set the maximum depth for the PGN input to
+.Ar n
+.It Fl pgnout Ar file Bq Cm min
+Save the games to
+.Ar file
+in PGN format. Use the
+.Cm min
+argument to save in a minimal PGN format.
+.It Fl recover
+Restart crashed engines instead of stopping the match.
+.It Fl repeat
+Play each opening twice so that both players get to play it on both
+.It Fl site Ar arg
+Set the site / location to
+.Ar arg .
+.It Fl srand Ar n
+Set the random seed for the book move selector to
+.Ar n .
+.It Fl wait Ar n
+.Ar n
+milliseconds between games. The default is 0.
+.It Fl -version
+Display the version information.
+.It Fl -help
+Display help information.
+.It Fl -engines
+Display a list of configured engines and exit.
+.It Fl -protocols
+Display a list of supported chess protocols and exit.
+.It Fl -variants
+Display a list of supported chess variants and exit.
+.Bl -tag -width Ds
+.It Ic conf Ns = Ns Ar arg
+Use an engine with the name
+.Ar arg
+from Cute Chess configuration file.
+.It Ic name Ns = Ns Ar arg
+Set the name to
+.Ar arg .
+.It Ic cmd Ns = Ns Ar arg
+Set the command to
+.Ar arg .
+.It Ic dir Ns = Ns Ar arg
+Set the working directory to
+.Ar arg .
+.It Ic arg Ns = Ns Ar arg
+.Ar arg
+to the engine as a command line argument.
+.It Ic initstr Ns = Ns Ar arg
+.Ar arg
+to the engine's standard input at startup.
+.It Ic restart Ns = Ns Cm auto Ns | Ns Cm on Ns | Ns Cm off
+Set the engine restart mode which can be one of the following:
+.Cm auto
+The engine decides wherher to restart (default).
+.Cm on
+The engine is always restarted between games.
+.Cm off
+The engine is never restarted between games.
+.It Ic proto Ns = Ns Ar arg
+Set the chess protocol to
+.Ar arg .
+.It Ic tc Ns = Ns Ar arg Ns | Ns Cm inf
+Set the time control to
+.Ar arg .
+The format is moves/time+increment, where
+.Ar moves
+is the number of moves per tc,
+.Ar time
+is time per tc (either seconds or minutes:seconds, and
+.Ar increment
+is the time increment per move in seconds.
+Infinite time control can be set with
+.Cm inf .
+.It Ic st Ns = Ns Ar n
+Set the time limit fo each move to
+.Ar n
+seconds. This option cannot be used in combination with the
+.Ic tc .
+.It Ic timemargin Ns = Ns Ar n
+Let engines to
+.Ar n
+milliseconds over the time limit.
+.It Ic book Ns = Ns Ar file
+.Ar file
+(Polyglot book file) as the opening book.
+.It Ic bookdepth Ns = Ns Ar n
+Set the maximum book depth (in fullmoves) to
+.Ar n .
+.It Ic whitepov
+Inver the engine's scores when it plays black. This option should be
+used with engines that always report scores from white's perspective.
+.It Ic depth Ns = Ns Ar n
+Set the search depth limit to
+.Ar n
+.It Ic nodes Ns = Ns Ar n
+Set the node count limit to
+.Ar n
+.It Ic option. Ns Ar name Ns = Ns Ar arg
+Set custom engine option
+.Ar name
+to value
+.Ar arg .
+Play ten games between two Sloppy engine with a time control of 40
+moves in 60 seconds:
+.Dl $ cutechess-cli \-engine name=Sloppy -engine name=Sloppy -each cmd=sloppy proto=xboard tc=40/60 -rounds 10
+Play a single game between Atak and Glaurung engines with a time
+control of 40 moves in one minute and 30 seconds with one second
+.Dl $ cutechess-cli \-engine name=Atak cmd=Atak32.exe dir=C:\\atak proto=xboard -engine cmd=glaurung proto=uci option.Threads=1 -both tc=40/1:30+1
+.Bl -bullet
+Use the name=Atak parameter because it's a Xboard protocol 1 engine
+and doesn't tell its name.
+Use the dir=C:\\atak parameter to point the location of the executable.
+Glaurung can tell its name and is in the PATH variable so only the
+command is needed.
+Set Glaurung to use 1 thread.
+Set the time control to 40 moves in one minute and 30 seconds with
+one second increment.
+Play a Round-Robin tournament between Fruit, Crafty, Stockfish and
+.Dl $ cutechess-cli \-engine conf=Fruit -engine conf=Crafty -engine conf=Stockfish -engine conf=Sloppy -each tc=4 book=book.bin -games 2 -rounds 10 -repeat
+.Bl -bullet
+Play two games per encounter, effectively multiplying the number of
+games by 2.
+Play 10 times the minimum amount of rounds (3). So the total number
+of rounds to play will be 30, and the total number of games 120.
+In each two-game encounter colors are switched between games and the
+same opening line is played in both games.
+utility was written by
+.An Ilari Pihlajisto ,
+.Mt ;
+.An Arto Jonsson ,
+.Mt .
+.Bl -bullet
+Source code:
+Mailing list:
Oops, something went wrong.

0 comments on commit e9e68e3

Please sign in to comment.