Updating to version 1.3, release made by Mike Vanier (mvanier@bbb.caltech.edu).
[gnushogi.git] / doc / gnushogi.6
similarity index 60%
rename from doc/gnushogi.1
rename to doc/gnushogi.6
index 0aa5821..f7d1502 100644 (file)
@@ -1,26 +1,30 @@
 .TH gnushogi 6
 .SH NAME
-gnushogi \- Shogi
+gnushogi \- GNU Shogi (Japanese Chess), version 1.3
 .SH SYNOPSIS
 .B gnushogi
 [
 .B [[-]a] 
 .B [-b bookfile] 
 .B [-B binbookfile] 
+.B [-C] 
 .B [-h langfile] 
 .B [-L langfile] 
 .B [-r length]
+.B [-R]
 .B [-s pathname] [-l pathname] 
 .B [-S binbooksize]
 .B [-t] [-c size] 
 .B [-T size]
 .B [-v]
 .B [-x]
+.B [-X]
 .B arg1 arg2
 ]
 .SH DESCRIPTION
 .I Gnushogi
-plays a game of japanese chess (shogi) against the user or it plays against itself.
+plays a game of japanese chess (shogi) against the user or it plays against
+itself.
 .PP
 At startup 
 .I Gnushogi
@@ -38,23 +42,22 @@ file is written.
 
 .PP
 .I Gnushogi
-is an updated version of the gnuchess program.
-It has a simple alpha-numeric board display,
-or it can be compiled for use with the 
-.B chesstool 
-program on a SUN workstation or with the 
+is a modified version of the gnuchess program.  It has a simple
+alphanumeric board display, or it can be compiled for use with the
 .B xshogi 
-program under X-windows.
-The program gets its opening moves from the file 
-.B gnushogi.book 
-which is located in a directory specified in the makefile.
-To invoke the program type:
+program under X windows.  The program gets its opening moves from the file
+.B gnushogi.bbk 
+which is located in a directory specified in the Makefile.  To invoke the
+program type:
 .TP
-.B gnushogi
+.B gnushogi -C
 - simple curses based version
 .TP
-.B gnuchessx 
+.B gnushogi -X (or just gnushogi)
 - xshogi compatible version
+.TP
+.B gnushogi -R
+- raw test display version
 .SH TIME CONTROLS
 .PP
 If one argument is given, it is the search time per move in 
@@ -66,8 +69,9 @@ will generate one move every 30 seconds, while
 will generate one move every 5 minutes.
 
 If two or more arguments are given, they will be used to set tournament
-time controls with the first argument of each pair being the number of moves and the second
-being the total clock time in minutes[:seconds].  Thus, entering 
+time controls with the first argument of each pair being the number of
+moves and the second being the total clock time in minutes[:seconds].
+Thus, entering
 .B gnushogi 60 5
 will set
 the clocks for 5 minutes (300 seconds) for the first 60 moves,
@@ -76,24 +80,24 @@ and
 will allow 3 minutes and 30 seconds for 30 moves.
 
 .B gnushogi 30 5 1 :30
-will allow 5 minutes for the first 30 moves and 30 seconds for each move after that.
-Up to 4 pairs of controls may be specified.
+will allow 5 minutes for the first 30 moves and 30 seconds for each move
+after that.  Up to 4 pairs of controls may be specified.
 
 If no argument is given the program will prompt the user for level of play.
 
 For use with 
 .B xshogi
-, see the documentation on this programs.
+see the documentation on that program.
 .SH BOOK
 .PP
 The book
-.I gnushogi.book
-consists of a sequence of openings.
-An opening begins with a line starting with a 
-.B !
-, the rest of the line is comments.
-Following this is a series of moves in algebraic notation alternating black
-and white separated by white space. A move may have a 
+.I gnushogi.tbk
+consists of a sequence of openings.  An opening begins with a line starting
+with a
+.B #
+, the rest of the line is a comment.  Following this is a series of moves
+in algebraic notation alternating black and white separated by white
+space. A move may have a
 .B ?
 after it indicating this move should never be made in this position.
 Moves are stored as position:move so transpositions between openings
@@ -102,44 +106,38 @@ can take place.
 .PP
 The hashfile if created should be on the order of 4 megabytes or
 .B gnushogi -c 22.
-This file contains positions and moves learned from previous games. 
-If a hashfile is used the computer makes use of the experience it
-gained in past games. Tests run so far show that it plays no worse
-with the hashfile than without, but it is not clear yet whether
-it provides a real advantage. 
+This file contains positions and moves learned from previous games.  If a
+hashfile is used the computer makes use of the experience it gained in past
+games. Tests run so far show that it plays no worse with the hashfile than
+without, but it is not clear yet whether it provides a real advantage.
 .SH LEGAL MOVES
 .PP
 .B Note:
 Piece letters are determined by the language file.
-What is specified here is the default English.
+What is specified here is the default (English).
 .PP
 Once
 .I gnushogi
 is invoked, the program will display the board and prompt the user
 for a move. To enter a move, use the notation 
 .B 7g7f
-where the first letter-number pair indicates the origination square
+where the first letter-number pair indicates the origin square
 and the second letter-number pair indicates the destination square.
 An alternative is to use the notation 
-.B p7f
-where the first letter indicates the piece type (p,l,n,s,g,b,r,k).
+.B P7f
+where the first letter indicates the piece type (P,L,N,S,G,B,R,K).
 To promote append a + the type of the new piece to the move, as in 
 .B 2d2c+ 
 or 
 .B P2c+.
-.SH "FUNCTION LETTERS"
-.TP
-.B -L lang
-Use language 
-.I lang from the file 
-.B gnushogi.lang.
-If -L is not specified it uses the first language in the file.
+Note that you must use capital letters for the pieces by default.
+.SH "COMMAND-LINE OPTIONS"
 .TP
 .B -a
-Do not search on opponents time.
+Do not search on opponent's time.
 .TP
 .B a
-Do search on opponents time.
+Do search on opponent's time.
 .TP
 .B -b bookfile
 Use bookfile for opening book.
@@ -147,15 +145,12 @@ Use bookfile for opening book.
 .B -B binbookfile
 Use binbookfile for binary opening book.
 .TP
-.B -S size
-Size of binbookfile for memory based books. For creating a binbookfile.
-.TP
-.B -P plylevels
-Number of plys to include in the binbookfile. For generating a binbookfile.
-.TP
 .B -c size
 Create a new HASHFILE. File size is 2^size entries of approximately 65+? bytes.
 .TP
+.B -C
+Use curses-based display mode.
+.TP
 .B -h 
 Do not use hashfile.
 .TP
@@ -163,19 +158,35 @@ Do not use hashfile.
 Do use hashfile.
 .TP
 .B -l pathname
-Pathname of the loadfile use with the
+Pathname of the loadfile use with
 .BR get
 or
 .BR xget.
 .TP
+.B -L lang
+Use language 
+.I lang from the file 
+.B gnushogi.lang.
+If -L is not specified it uses the first language in the file.
+.TP
+.B -P plylevels
+Number of plys to include in the binbookfile. For generating a binbookfile.
+.TP
 .B -r length
 Rehash length times in searching  entries for position in transposition table.
 .TP
+.B -R
+Use raw text display mode.  This can be used for dumb terminals or for
+systems that don't have curses.
+.TP
 .B -s pathname
 Pathname of the save file to use with the
 .BR save
 command.
 .TP
+.B -S size
+Size of binbookfile for memory based books. For creating a binbookfile.
+.TP
 .B -t
 Show statistics for HASHFILE
 .TP
@@ -190,16 +201,19 @@ Use
 .BR value
 as the evaluation window
 .BR xwndw.
-.SH COMMANDS
+.TP
+.B -X
+Use xshogi display mode (the default).
+.SH "COMMANDS"
 .PP
 In addition to legal moves, the following commands are available as responses.
 .B Note:
 command names are determined by the 
 .I language
-file and may vary with the implementation. This is default English.
+file and may vary with the implementation. The default language is English.
 .PP
 .B alg
--- allow algrbraic input (not implemented)
+-- allow algebraic input (not implemented)
 .PP
 .B Awindow
 -- change Alpha window (default score + 90)
@@ -208,7 +222,7 @@ file and may vary with the implementation. This is default English.
 -- change Beta window (default score - 90)
 .PP
 .B beep
--- causes the program to beep after each move.
+-- toggles beeping after each move (default: on).
 .PP
 .B bd
 -- updates the current board position on the display.
@@ -220,7 +234,8 @@ file and may vary with the implementation. This is default English.
 -- causes the computer to play both sides of a shogi game.
 .PP
 .B black
--- causes the computer to take the white pieces, if the computer is to move first the 
+-- causes the computer to take the white pieces, if the computer is to move
+first.
 .PP
 .B bsave
 -- saves a game to disk as a book textfile.  
@@ -228,8 +243,8 @@ The program will prompt the user for a file name.
 .PP
 .B gamein
 -- toggles game mode time control. Assumes the time specified for time control
-is the time for a complete game. Input with the level command should be the game time
-and the expected number of moves in a game.
+is the time for a complete game.  Input with the level command should be the
+game time and the expected number of moves in a game.
 .B go
 command must be given.
 .PP
@@ -249,44 +264,41 @@ each square.
 --  sets level of debugging output if compiled with debug options.
 .PP
 .B depth
--- allows the user to change the
-search depth of the program.  The maximum depth is 29 ply.
-Normally the depth is set to 29 and the computer terminates
-its search based on elapsed time rather than depth.
-If depth is set to (say) 4 ply,
-the program will search until all moves
-have been examined to a depth of 4 ply (with extensions up
-to 11 additional ply for sequences of checks and captures). 
-If you set a maximum time per move and also use the depth command,
-the search will stop at the specified time or the specified depth, whichever
-comes first.
+-- allows the user to change the search depth of the program.  The maximum
+depth is 29 ply.  Normally the depth is set to 29 and the computer
+terminates its search based on elapsed time rather than depth.  If depth is
+set to (say) 4 ply, the program will search until all moves have been
+examined to a depth of 4 ply (with extensions up to 11 additional ply for
+sequences of checks and captures).  If you set a maximum time per move and
+also use the depth command, the search will stop at the specified time or
+the specified depth, whichever comes first.
 .PP
 .B easy
--- toggles easy mode (thinking on opponents time)
-on and off. The default is easy mode ON.  If easy mode is disabled,
-the keyboard is polled for input every so often and when input is
-seen the search is terminated. It may also be terminated with a 
+-- toggles easy mode (thinking on opponents time) on and off. The default
+is easy mode ON.  If easy mode is disabled, the keyboard is polled for
+input every so often and when input is seen the search is terminated. It
+may also be terminated with a
 .I sigint.
 .PP
 .B edit
 -- allows the user to set up a board position.
 
-.B     #
+.B  #
 - command will clear the board.
 
-.B     c 
+.B  c 
 - toggle piece color. 
 
-.B     .
+.B  .
 - command will exit setup mode.
 
-.B     p3b
+.B  p3b
 - place a pawn on 3b
 
-.B     p3b+
+.B  p3b+
 - place a promoted pawn on 3b
 
-.B     p*
+.B  p*
 - place a pawn to the captured pieces
 
 Pieces are entered by typing a letter (p,l,n,s,g,b,r,k) for
@@ -316,8 +328,8 @@ prompt the user for a file name.
 -- use/don't use hashfile.
 .PP
 .B hashdepth
--- allows the user to change the minimum depth for using the hashfile and the number of moves from the
-begining of the game to use it.
+-- allows the user to change the minimum depth for using the hashfile and
+the number of moves from the beginning of the game to use it.
 .PP
 .B help
 -- displays a short description of the commands and the current status of options.
@@ -330,17 +342,15 @@ begining of the game to use it.
 -- causes the program to supply the user with its predicted move.
 .PP
 .B level
--- allows the user to set time controls such as
-60 moves in 5 minutes etc.  In tournament mode, the program will
-vary the time it takes for each
-move depending on the situation.  If easy mode is disabled (using
-the 'easy' command), the program
-will often respond with its move immediately, saving time on
-its clock for use later on.
+-- allows the user to set time controls such as 60 moves in 5 minutes etc.
+In tournament mode, the program will vary the time it takes for each move
+depending on the situation.  If easy mode is disabled (using the 'easy'
+command), the program will often respond with its move immediately, saving
+time on its clock for use later on.
 .PP
 .B list
--- writes the game moves and some statistics
-on search depth, nodes, and time to the file 'chess.lst'.
+-- writes the game moves and some statistics on search depth, nodes, and
+time to the file 'shogi.lst'.
 .PP
 .B material
 -- toggle material flag - draws on no pawns and both sides < rook
@@ -353,16 +363,15 @@ on search depth, nodes, and time to the file 'chess.lst'.
 a position is the sum of these individual piece scores.
 .PP
 .B post
--- causes the program to display the principle
-variation and the score during the search.  A score of
-100 is equivalent to a 1 pawn advantage for the computer.
+-- causes the program to display the principal variation and the score
+during the search.  A score of 100 is equivalent to a 1 pawn advantage for
+the computer.
 .PP
 .B quit
 -- exits the game.
 .PP
 .B random
--- causes the program to randomize its move
-selection slightly.
+-- causes the program to randomize its move selection slightly.
 .PP
 .B rcptr
 -- set recapture mode.
@@ -379,49 +388,50 @@ is, the black pieces will now appear at the top of the board.
 -- reverse board display.
 .PP
 .B save
--- saves a game to disk.  The program will prompt
-the user for a file name.
+-- saves a game to disk.  The program will prompt the user for a file name.
 .PP
 .B switch
--- causes the program to switch places with
-the opponent and begin searching.
+-- causes the program to switch places with the opponent and begin
+searching.
 .PP
 .B test
--- performs some speed tests for MoveList and CaptureList generation, and ScorePosition position scoring
-for the current board. 
+-- performs some speed tests for MoveList and CaptureList generation, and
+ScorePosition position scoring for the current board.
 .PP
 .B time
--- set computers time remaining, intended for synchronizing clocks among multiple players.
+-- set computer's time remaining, intended for synchronizing clocks among
+multiple players.
 .PP
 .B tsume
 -- toggle tsume mode. In tsume mode, not all possible moves will be
-generated. If a king is in check, only moves that makes the king not being
-in check are generated. If the king is not in check, only moves that give
-check to the opponents king are generated. 
+generated. If a king is in check, only moves that get the king out of check
+are generated.  If the king is not in check, only moves that give check to
+the opponent's king are generated.
 .PP
 .B undo
 -- undoes the last move whether it was the computer's
 or the human's. You may also type "remove". This is equivalent
-to two "undo's" (e.g. retract one move for each side).
+to two "undo"'s (e.g. retract one move for each side).
 .PP
 .B white
--- causes the computer to take the black pieces, if the computer is to move first the 
-iB go
+-- causes the computer to take the black pieces, if the computer is to move
+first the
+.B go 
 command must be given.
 .PP
 .B xget
 -- read an 
-.Ixshogi
+.I xshogi
 position file.
 .PP
 .B xsave
 -- save as an 
-.Ixshogi
+.I xshogi
 position file.
 .PP
 .B xwndw
--- change X window. The window around alpha/beta used to determine whether the position
-should be scored or just estimated.
+-- change X window. The window around alpha/beta used to determine whether
+the position should be scored or just estimated.
 .SH BUGS
 .PP
 .fi