4. xshogi
This section describes how to run the "xshogi" program.
SYNOPSIS
xshogi [ options ]
DESCRIPTION
xshogi provides an X11/Xt/Athena Widgets user interface for gnushogi.
With xshogi you can play gnushogi, set up arbitrary positions, force
variations, or watch xshogi manage a game between two shogi programs.
Furthermore, it can be used as an interface between two players on
different displays.
xshogi can also be used as a shogi board to play out games. It will
read through a game file or allow a player to play through a variation
manually (force mode). This is useful for keeping track of email postal
games or browsing games off the net.
After starting xshogi, you can make moves by pressing mouse button 1
while the cursor is over a square with your piece on it and dragging the
mouse to another square. If the move is illegal, gnushogi will not
allow it. xshogi will then retract the move.
COMMAND-LINE OPTIONS
The following command line options also correspond to X resources that
you can set in your .Xdefaults file.
- `[standard Xt options]'
- xshogi accepts standard Xt options like -display, -geometry, and
-iconic.
- `-tc or -timeControl minutes[:seconds]'
- Amount of time for a set of moves determined by movesPerSession. If
this number of moves is played within the time control period, xshogi
resets the time clocks. Default: 5 minutes.
- `-mps or -movesPerSession moves'
- Number of moves in a time control period. Default: 40 moves.
- `-st or -searchTime minutes[:seconds]'
- Tell gnushogi to spend at most the given amount of time searching for
each of its moves. Without this option, gnushogi 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.
- `-sd or -searchDepth number'
- Tell gnushogi to look ahead at most the given number of moves when
searching for a move to make. Without this option, gnushogi chooses
its search depth based on the number of moves and amount of time
remaining until the next time control. Setting this option also sets
-clockMode to False.
- `-clock or -clockMode (True | False)'
- Determines whether or not to use the clock. If clockMode is False, the
clock does not run, but the side that is to play next is still
highlighted.
- `-td or -timeDelay seconds'
- Time delay between moves during "Load Game". This doesn't have to be
a round number. Try -td 0.4. Default: 1 second.
- `-nsp or -noShogiProgram (True | False)'
- If this option is True, xshogi acts as a passive shogi board; it does
not try to start a shogi program, not even to check whether moves made
in Force mode are legal. It also sets -clockMode to False. Default:
False.
- `-fsp or -firstShogiProgram program'
- Name of first shogi program. In matches between two machines, this
program plays white. Default: "gnushogi".
- `-ssp or -secondShogiProgram program'
- Name of second shogi program, if needed. In matches between two
machines, this program plays black; otherwise it is not started.
Default: "gnushogi".
- `-fh or -firstHost host'
- Name of host the first shogi program plays on. Default: "localhost".
- `-sh or -secondHost host'
- Name of host the second shogi program plays on. Default: "localhost".
- `-rsh or -remoteShell shell_name'
- Some systems do not use rsh as the remote shell. This option allows a
user to name the remote shell command. This should be done in the
resource file.
- `-mm or -matchMode (False | Init | Position | Opening)'
- Automatically run a game between firstShogiProgram and
secondShogiProgram. If matchMode is set to Init, xshogi will start the
game with the initial shogi position. If matchMode is set to Position,
xshogi will start the game with the position specified by the
loadPositionFile resource. If matchMode is set to Opening, xshogi will
play out the opening moves specified by the -loadGameFile resource. If
the -saveGameFile resource is set, a move record for the match will be
saved in the specified file. Default: "False".
- `-lgf or -loadGameFile file'
- Name of file to read a game record from. Game files are found in the
directory named by the SHOGIDIR environment variable. If this variable
is not set, the current directory is used unless the file name starts
with a /.
- `-lpf or -loadPositionFile file'
- Name of file to read a game position from. Position files are found in
the directory named by the SHOGIDIR environment variable. If this
variable is not set, the current directory is used unless the file name
starts with a /.
- `-sgf or -saveGameFile file'
- Name of file to save a game record to. Game files are saved in the
directory named by the SHOGIDIR environment variable. If this variable
is not set, the current directory is used unless the file name starts
with a /.
- `-spf or -savePositionFile file'
- Name of file to save a game position to. Position files are saved in
the directory named by the SHOGIDIR environment variable. If this
variable is not set, the current directory is used unless the file name
starts with a /.
- `-coords or -showCoords (True | False)'
- If this option is True, xshogi displays algebraic coordinates along the
board's left and bottom edges. The default is False. The coordFont
resource specifies what font to use.
- `-mono or -monoMode (True | False)'
- Determines whether xshogi displays its pieces and squares with two
colors or four. You shouldn't have to specify monochrome. xshogi will
determine if this is necessary.
- `-pc or -pieceColor color'
- Color specification for pieces suitable for XParseColor().
Default: #FFFFD7.
- `-sc or -squareColor color'
- Same for squares. Default: #EBDFB0.
- `-wps or -westernPieceSet (True | False)'
- Choose the Western style piece set.
- `-npb or -normalPawnBitmap file'
- `-nnb or -normalKnightBitmap file'
- `-nbb or -normalBishopBitmap file'
- `-nrb or -normalRookBitmap file'
- `-nkb or -normalKingBitmap file'
- Names of the bitmap files for the bitmap piece icons.
- `-rpb or -reversePawnBitmap file'
- `-rnb or -reverseKnightBitmap file'
- `-rbb or -reverseBishopBitmap file'
- `-rrb or -reverseRookBitmap file'
- `-rkb or -reverseKingBitmap file'
- Names of the bitmap files for the outline piece icons.
- `-debug or -debugMode (True | False)'
- Turns on debugging printout.
OTHER X RESOURCES
- `initString'
- The actual string that is sent to initialize the shogi program can be
set from .Xdefaults. It can't be set from the command line because of
syntax problems. The default value is "new\nbeep\nrandom\neasy\n".
The "new" and "beep" commands are required. You can remove the
"random" command if you like; including it causes gnushogi to
randomize its move selection slightly so that it doesn't play the same
moves in every game. Even without "random", gnushogi randomizes its
choice of moves from its opening book. You can also remove "easy" if
you like; including it toggles easy mode off, causing gnushogi to think
on your time. That is, if "easy" is included in the initString, GNU
Shogi thinks on your time; if not, it does not. (Yes, this does seem
backwards, doesn't it.) You can also try adding other commands to the
initString; see the gnushogi documentation (see section 3. gnushogi) for
details.
- `blackString and whiteString'
- These resources control what is sent when the Machine Black and Machine
White buttons are selected. This is mostly for compatibility with
obsolete versions of gnushogi.
Alternate bitmaps for piece icons can be specified either by choosing
one of the built-in sets or with the file name resources described
above. There are three built-in sets of piece bitmaps available, large
(the default), medium, or small. It is easiest to select the set you
prefer in the .Xdefaults file:
XShogi*boardSize: Medium
The font used for button labels and comments can be changed in the
.Xdefaults file. You may want to choose a smaller font if you are using
the small pieces:
XShogi*font: helvetica_oblique12
The font used for coordinates (when the showCoords option is True) can
be set similarly:
XShogi*coordFont: helvetica_10
If you are using a grayscale monitor, try setting the colors to:
XShogi*pieceColor: gray100
XShogi*squareColor: gray60
COMMAND BUTTONS AND KEYS
- `Quit'
- Quits xshogi. Q or q is a keyboard equivalent.
- `Reset'
- Resets xshogi to the beginning of a shogi game. It also deselects any
game or position files.
- `Flip View'
- inverts the view of the shogi board.
- `Hint'
- displays a move hint from gnushogi.
- `Load Game'
- plays a game from a record file. If no file is specified a popup dialog
asks for a filename. Game files are found in the directory named by the
SHOGIDIR environment variable. If this variable is not declared then
the current directory is used unless the file name starts with a /. G
or g is a keyboard equivalent. The game file parser will accept almost
any file that contains moves in algebraic notation. If the first line
begins with `#', it is assumed to be a title and is displayed. Text
enclosed in parentheses or square brackets is assumed to be commentary
and is displayed in a pop-up window. Any other text in the file is
ignored.
- `Load Position'
- sets up a position from a position file. If no file is specified a
popup dialog asks for a filename. Position files are found in the
directory named by the SHOGIDIR environment variable. If this variable
is not declared then the current directory is used unless the file name
starts with a /. Position files must be in the format that the Save
Position command writes.
- `Save Game'
- saves a game to a record file. If no file is specified a popup dialog
asks for a filename. If the filename exists, the user is asked whether
the current game record is be appended to this file or if the file
should be replaced. Game files are saved in the directory named by the
SHOGIDIR environment variable. If this variable is not declared then
the current directory is used unless the file name starts with a /.
Game files are human-readable, and can also be read back by the Load
Game command. Furthermore, they are accepted as gnushogi text bookfiles.
- `Save Position'
- saves a position to a position file. If no file is specified a popup
dialog asks for a filename. Position files are saved in the directory
named by the SHOGIDIR environment variable. If this variable is not
declared then the current directory is used unless the file name starts
with a /. Position files are human-readable, and can also be read back
by the Load Position command.
- `Machine White'
- forces gnushogi to play white.
- `Machine Black'
- forces gnushogi to play black.
- `Force Moves'
- forces a series of moves. That is, gnushogi stops playing and xshogi
allows you to make moves for both white and black.
- `Two Machines'
- plays a game between two computer programs.
- `Forward'
- moves forward through a series of remembered moves. F or f is a
keyboard equivalent.
- `Backward'
- moves backward through a series of remembered moves. As a side effect,
puts xshogi into Force Moves mode. B or b is a keyboard equivalent.
- `Pause'
- pauses the clocks or (in Load Game mode) pauses the game being loaded.
Press Pause again to continue. P or p is a keyboard equivalent.
- `Edit Position'
- lets you set up an arbitrary board position. Use mouse button 1 to drag
pieces to new squares, or to delete a piece by dragging it off the board
or dragging an empty square on top of it. To drop a new piece on a
square, press mouse button 2 or 3 over the square. This brings up a
menu of black pieces (button 2) or white pieces (button 3). Additional
menu choices let you empty the square or clear the board. You can set
the side to play next by clicking on the Black or White indicator at the
top of the screen.
- `Challenge'
- allows you to make a two display game between two human players. Enter
the display you want to connect to. If you are allowed to connect, a
new board is displayed at the remote display. Challenge mode can only
be stopped by pressing "quit".
- `Select Level'
- allows you to reset the clocks for both players. Enter the number of
moves and the number of minutes in which the moves should be done.
- `Move NOW'
- force computer to stop thinking and to make the current best move.
- `Iconify I, i, C or c'
- iconifies xshogi.
LIMITATIONS
If you press the Pause button during GNU Shogi's turn,
xshogi will stop the clocks, but gnushogi will still make a
move.
After a mate or draw when playing against gnushogi, if you
back up with the Backward button, the clocks are reset
(because gnushogi has exited and must be restarted).
The game parser recognizes only algebraic notation.
AUTHORS
Original authors of XBoard: Chris Sears and Dan Sears.
Enhancements for XBoard (Version 2.0): Tim Mann.
Conversion to XShogi (Version 1.1): Matthias Mutz.
Current maintainer: Mike Vanier.
COPYRIGHT INFORMATION
XShogi borrows its piece bitmaps from CRANES Shogi.
Copyright 1991 by Digital Equipment Corporation, Maynard, Massachusetts.
Enhancements Copyright 1992 Free Software Foundation, Inc. Enhancements
Copyright 1993 Matthias Mutz. Further enhancements copyright 1999 by
Michael Vanier and the Free Software Foundation, Inc.
The following terms apply to Digital Equipment Corporation's copyright
interest in XBoard:
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 XShogi distributed
by the Free Software Foundation:
This file is part of XSHOGI.
XSHOGI is distributed in the hope that it will be useful, but WITHOUT
ANY WARRANTY. No author or distributor accepts responsibility to anyone
for the consequences of using it or for whether it serves any particular
purpose or works at all, unless he says so in writing. Refer to the
XSHOGI General Public License for full details.
Everyone is granted permission to copy, modify and redistribute XSHOGI,
but only under the conditions described in the XSHOGI General Public
License. A copy of this license is supposed to have been given to you
along with XSHOGI so you can know your rights and responsibilities. It
should be in a file named COPYING. Among other things, the copyright
notice and this notice must be preserved on all copies.
This document was generated
by Michael C. Vanier on July, 7 2004
using texi2html