Provided by: xgammon_0.99.1128-3_i386 bug

NAME

       xgammon - an X11 backgammon for linux

SYNOPSIS

       xgammon [-otherdisplay <displayname>]
               [-boardgeometry <geometry_string>]
               [-boardcolor    <color>] [-bc <color>]
               [-darkcolor     <color>] [-dc <color>]
               [-lightcolor    <color>] [-lc <color>]
               [-barcolor      <color>] [-b  <color>]
               [-whitecolor    <color>] [-blackcolor <color>]
               [-doublerfont   <font>]  [-smallFont <font>]
               [-doubling      +doubling]
               [-watchmove     +wachmove]
               [-stonesteps    <pixel>]
               [-delaytime     <tsec>]
               [-buttonmove    +buttonmove]
               [-bm            +bm]
               [-autoplay      +autoplay]
               [-rollout       +rollout]
               [-nr   <number_of_rollouts>]
               [-f    <filename>]
               [-h    (black|white)]
               [-gamekind -g   (hvc|cvc|hvh)]
               [-winat         <points>]
               [-? -help]

DESCRIPTION

       `xgammon', a backgammon program for linux

OPTIONS

       xgammon recognizes the following options:

       -otherdisplay <displayname>
              Play  a  game with a player on some remote X-Terminal.  A second
              `xgammon'   will   be   displayed   there.   (example:   xgammon
              -otherdisplay somehost:0.0)

       -boardgeometry <geometry_string>
              Defines  the size of the board widget. `Geometry_string' must be
              an XtGeometry-string (example: 450x350). By default the relation
              of  width/height  of  the  board  is 12/15. <Geometry_string> is
              rounded to this relation.

       -boardcolor, -bc <color>
              Sets the background color of the board.

       -darkcolor, -dc <color>
              Sets the color of dark points.

       -lightcolor, -lc <color>
              Sets the color of light points.

       -barcolor, -b <color>
              Sets the color of the bar and the left and  right  edge  of  the
              board.

       -whitecolor, -blackcolor <color>
              Sets the color of the stones.

       -humancolor, -h (black|white)
              Sets  the  color  of  the human player's stones.  Implies a game
              between `xgammon' and a human being. (The default).

       -doublerfont <font>, -smallFont <font>
              These are the fonts used for the doubler dice.  Only  one  large
              and one small font can be selected now, not a font family yet.

       -gamekind, -g (cvc|hvc|hvh)
              Sets the game.
              cvc means computer versus computer,
              hvc means human    versus computer,
              hvh means human    versus human,

       -winat <points>
              Play a tournament up to <points> points.

       -watchmove, +watchmove
              `xgammon' will "move" it's stones.

       -stonesteps <pixel>
              You  can  speed  up the stones by giving this resource a greater
              value.  Implies watchmove is set `true'.

       -delaytime (tseconds)
              Sets a delaytime in tenth of a second, which gives you a  closer
              look on the computer moves.  Implies watchmove is set `false'.

       -buttonmove -mb, +buttonmove +bm
              If buttonmove is true, you can set the stones simply by pressing
              the button.  The left button sets  the  lower  dice  value,  the
              right  one  the  other.  In case of equation both buttons can be
              used.

       -autoplay, +autoplay
              `Xgammon' will set your stones, if there is  only  one  possible
              move.

       -doubling, +doubling
              Sets  the  use  of  the  doubler  dice.   Since  the doubling of
              `xgammon' is still poor, you might wish to turn it off.

       -rollout, +rollout
              `Xgammon' will rollout a position. This rank   is  read  from  a
              file.   (See  -f  option  below.)  This  file  is  automatically
              generated from the current game, if not specified otherwise.

       -nr <number_of_rollouts>
              Sets the number of rollouts.

       -f <filename>
              Specifies the positionfile you  want  to  use.  The  default  is
              `xgammon.save'.

       -database <filename>
              Specifies the endgame database file to use.

HOW TO PLAY

       When  you  start  the game, `xgammon' will immediately roll and start a
       game. When it's your turn:
       Move pointer to a stone.
       Press left button.
       Carry stone to the chosen point.
       Release button.
       That's it.
       To speed this a little up, try the +buttonmove  option  or  .buttonmove
       resource. (See RESOURCES or OPTIONS.)

DOUBLING

       When  you're  allowed  to  double, `xgammon' draws empty dice.  You can
       double by a single click on the doubler dice or press the `d' key.
       Some simple popups manage the rest.
       This is only possible, when the `doubling'  resource  is  `true'.  (See
       RESOURCES or OPTIONS.)

GAME OPTIONS

       There  are  three different kind of games. Human versus human, computer
       versus human, and computer versus computer. The  last  one  isn't  very
       meaningful yet, and more or less for reasons of development.

MENU OPTIONS

       [edit position]
              If  you click on this menu entry, `xgammon' will first break the
              current game or tournament and draw an empty board. Then you can
              enter  a  position to your liking.  The right button gives you a
              black stone, the left button a white stone.  The  middle  button
              removes  a  stone.   If there are 15 stones of each color on the
              board `xgammon' will automatically ask  you  for  the  dice  and
              doubler  etc. in a popup.  In case of stones already beared off,
              you can break the setting of stones by hitting any key.   Choose
              `ok'  button and the game continues.  You can as well rollout or
              maildump  this  position.   (For  this  purpose  set  the  right
              gamekind first.)

       [computer finish]
              If  the  game  is  almost done and you are bored with rolling it
              down, you can click this option and the computer will finish the
              game.  At  the  end  of  the  game the human player gets control
              again.
              In this mode the computer will not double.

       [rollout]
              To rollout a position use this  option.   The  number  of  games
              rolled  out  are  set with the `numrollouts' resource or the -nr
              command line option.  (see RESOURCES or OPTIONS.)  Invoked  from
              the  game  `xgammon'  will fork itself and start a second, third
              ... process, so you can continue playing.  There will be a popup
              to  inform  you  about  the  current state and the result.  This
              popup will vanish with any button  or  key  event  inside.   The
              result   of   the   rollout   is   additionally   saved   in   a
              `xgammon.rollout.<num>.save' file.  It is  more  appropriate  to
              use this feature via commandline options.  (See ROLLOUT below.)

       [mail dump]
              Saves  the  current  or an edited position in the format used by
              FIBS or in `rec.games.backgammon'  newsgroup  in  a  file  named
              `xgammon.maildump'.

KEYS

       The board reacts on the following keys:
       `q', `<Ctrl>c' or `<Ctrl>d' quit the game.
       `u' undoes the current move move.
       `r' restarts the game (tournament).
       `s', `S', `l' and `L' save or load a position or game.
       You may set these keys in your .Xdefaults file.

TEXT WINDOWS

       There  are  two text windows in the `XGammon-Buttons' window, where the
       current tournament, moves, doubler actions etc. are  printed.  You  can
       also add comments there.  The text in the lower window will be saved if
       you invoke any save command.

EDIT A POSITION

       You may edit a position, and play out from there, by pressing the `edit
       position'  menu  entry  in  the `game' menu.  Black stones are set with
       left mouse button, white stones with the right one.  If you misplace  a
       stone  you can remove it with the middle button.  There will be a popup
       asking for additional information, if you have entered 15 black and  15
       white stones, or pressed any key to stop placing stones.

MAIL DUMP A POSITION

       Clicking  the  menu  entry  `mail dump' `xgammon' will save the current
       position in a file named `xgammon.maildump'.  The  occuring  format  is
       that  used  most  often  in  `rec.games.backgammon'  news group.  So it
       should be very easy to edit a position, add some comments and then mail
       or post it.

ROLLOUTS

       Even  if  there  is  the  menu option `rollout', this is more or less a
       command line option.  An example would be
       `xgammon -rollout -nr 1000 -doubling -f rollout.save',
       which would rollout a 1000 times the position saved in  `rollout.save'.
       It  should  be  rather  easy to modify the save file slightly, and make
       several rollouts of these positions. All results will  be  appended  to
       these  files. If you use the menu entry `rollout', it is most important
       to set an appropriate `numrollouts' resource in your `.Xdefault'  file,
       because  `xgammon'  will  not  ask  you  for  this value, when starting
       rollouts.

X RESOURCES

       .otherdisplay: <displayname>
              Play a game with a player on some remote X-Terminal.   A  second
              `xgammon'   will   be   displayed   there.   (example:   xgammon
              -otherdisplay somehost:0.0)

       .boardColor: <color>
              Specifies the background color of the board.

       .lightColor: <color>
              Specifies the background color of the lighter points.

       .darkColor: <color>
              Specifies the background color of the darker points.

       .barColor: <color>
              Specifies the color of the bar and the board borders.

       .whiteColor: <color>
              Specifies the color of the "white" stones.

       .blackColor: <color>
              Specifies the color of the "black" stones.

       .doublerFont: <font>, .smallFont: <font>
              Defines the fonts used for doubler dice. The doubler  dice  size
              depends  on  the board size. If the board size is too small, the
              smallFont will be used.

       *board.cursor: <cursor>
              Sets the cursor to be used for the board widget(s).

       .humanStones: <black|white>
              If you want to play  the  white  stones  set  this  resource  to
              "white". ("Black" is Default.)

       .watchmove: <true|false>
              If  watchmove  is  true,  you can see the stones "fly", when the
              computer moves.

       .delaytime: <seconds>
              Sets a delaytime in tenth of a second, which gives you a  closer
              look on the computer moves.  Implies watchmove is set `false'.

       .stonesteps: <pixel>
              You  can  speed  up the stones by giving this resource a greater
              value.  Implies watchmove is `true'.

       .doubling: <true|false>
              Sets the use  of  doubler  dice.   Since  the  doubling  of  the
              computer is still poor, you might wish to turn it off.

       .buttonMove: <true|false>
              If buttonmove is true, you can play by simply pressing a button.
              The left button sets the lower dice value,  the  right  one  the
              other.  On equation both buttons can be used.

       .numrollouts: <number>
              Specifies  the  number of rollouts from a given position, before
              adding the result to a position file. Any unsigned integer value
              should be all right.

       .positionfile: <name>
              The  file,  where `xgammon' shall save and load all informations
              to-and-fro.

DIAGNOSTICS

       `Xgammon' uses the function usleep()  for  delaytime.   Usleep  is  not
       defined on some systems.
       #define usleep(a) sleep(a)
       is set then.  As a result, you can only delay seconds, not tseconds.

BUGS

       The  program  is  still in state of development, so there are certainly
       bugs.  `Xgammon' will save the current position in a `xgammon.sig_save'
       file  on  some  signals. Please email this file to the authors.  It may
       help find the bugs.  If you can generate a core  dump,  gzip,  uuencode
       and mail it, which would also be very helpful.

       Otherdisplay:
       Some popup resources and actions on ".otherdisplay" sometimes get lost.
       Black can set white stones and vv. (funny feature ?)

AUTHORS

       Lambert Klasen and Detlef Steuer
       email:
       klasen@asterix.uni-muenster.de steuer@amadeus.statistik.uni-dortmund.de