Article View: gnu.chess
Article #4202FAQ -- GNU Chess and XBoard Frequently Asked Questions
From: Tim Mann
Date: Wed, 06 Dec 1995 00:00
Date: Wed, 06 Dec 1995 00:00
1143 lines
52646 bytes
52646 bytes
Archive-name: games/chess/gnu-faq
Version: $Id: FAQ.html,v 1.41 1995/12/06 08:22:33 mann Exp $
Posting-frequency: monthly
GNU Chess and XBoard:
Frequently Asked Questions
-----------------------------------------------------------------------
Outline
* [A] Introduction and hot topics
* [B] GNU Chess
* [C] GNU Chess bugs and problems
* [D] XBoard, WinBoard, and AmyBoard
* [E] XBoard, WinBoard, and AmyBoard bugs and problems
* [F] Miscellaneous
-----------------------------------------------------------------------
Detailed contents
* [A] Introduction and hot topics
* [A.1] What are the gnu.chess newsgroup and info-gnu-chess
mailing list for?
* [A.2] How do I subscribe or unsubscribe?
* [A.3] Where can I get chess information and chess software?
* [A.4] What are the current version numbers for GNU Chess,
XBoard, etc.?
* [A.5] Who is working on this project?
* [A.6] How do I report bugs, offer help, etc.?
* [B] GNU Chess
* [B.1] What is GNU Chess?
* [B.2] What is GNU Chess's rating?
* [B.3] Does GNU Chess run on a PC under DOS (or Windows, or
OS/2)?
* [B.4] Does GNU Chess run on an Amiga?
* [B.5] Does GNU Chess run on a Macintosh?
* [B.6] Does GNU Chess run on VMS?
* [B.7] How do I build GNU Chess? Do I have to have gcc?
* [C] GNU Chess bugs and problems
* [C.1] When I try to use GNU Chess with XBoard, it says "Error:
first chess program (gnuchessx) exited unexpectedly".
* [C.2] Sometimes GNU Chess plays an extra, bogus move after the
game is over.
* [C.3] XBoard sometimes hangs when I'm using it to play against
GNU Chess on a position that I've modified with Edit Position.
* [C.4] GNU Chess often uses a little too much time and lets its
flag fall near the end of a time control period.
* [C.5] When I use GNU Chess with XBoard, it seems to freeze on
me after it gets out of its opening book.
* [C.6] When I use GNU Chess with XBoard, it sometimes tells me
that moves are illegal when they aren't.
* [C.7] GNU Chess crashes when I try to compile and run it on
the DEC Alpha.
* [C.8] I get an error message about FIONREAD when trying to run
(or build parts of) GNU Chess.
* [C.9] When I try to build GNU Chess, I get a message that
"setlinebuf" is undefined.
* [C.10] When I try to build GNU Chess, I get a message that
_tgetent, _tgetflag, etc., are undefined.
* [C.11] My disk goes wild when I'm running GNU Chess, and the
program seems way too slow.
* [D] XBoard, WinBoard, and AmyBoard
* [D.1] What is XBoard?
* [D.2] Is there an XBoard for Microsoft Windows? What is
WinBoard?
* [D.3] Is there an XBoard for the Amiga? What is AmyBoard?
* [D.4] Is there an XBoard for the Macintosh?
* [D.5] Does XBoard run on VMS?
* [D.6] What is cmail?
* [D.7] How do I build XBoard? Do I have to have gcc?
* [D.8] Can I use XBoard to play a game of chess with another
human?
* [D.9] Will WinBoard run on Windows 3.1?
* [D.10] How do I use XBoard or WinBoard as an external viewer
for PGN files with my Web browser?
* [D.11] How do I use WinBoard as an external viewer for PGN
files with the MS Windows File Manager or Explorer?
* [E] XBoard, WinBoard, and AmyBoard bugs and problems
* [E.1] I can't build XBoard because xmkmf and imake are not
present on my system.
* [E.2] I can't build XBoard because the X11/Xaw/... include
files are not found. (Often a problem for HP-UX users.)
* [E.3] When trying to build XBoard, I get error messages about
undefined symbols.
* [E.4] I have problems using WinBoard on ICS with a modem. I'm
not running SLIP or PPP, but just dialing in to an ordinary
login account ("shell account").
* [E.5] I have problems using WinBoard on ICS with Windows 95
and SLIP or PPP. It gets error 10047 (or some other error)
trying to connect.
* [E.6] When I try to run WinBoard, I get the message "Failed to
start chess program gnuchesx on localhost: NO LANGFILE (file
gnuchess.lang not found)".
* [F] Miscellaneous
* [F.1] What is XChess?
* [F.2] What is Winsock Chess?
* [F.3] What is Crafty?
-----------------------------------------------------------------------
[A] Introduction and hot topics
-----------------------------------------------------------------------
[A.1] What are the gnu.chess newsgroup and info-gnu-chess mailing list
for?
The newsgroup gnu.chess and the mailing list
info-gnu-chess@prep.ai.mit.edu are for the discussion of GNU Chess,
XBoard, and related free chess software.
gnu.chess and info-gnu-chess are not for general chess or computer chess
discussion. You won't be flamed if you post such messages here, but you
will find more information in other places. See topic [A.3] below.
PLEASE DO NOT try to start or play chess games by posting messages to
gnu.chess. Instead, read the rec.games.chess FAQ to learn about the
IECG, the IECC, and other groups that you can join to find opponents,
and send one or more of them email to join.
The newsgroup and mailing list used to be gatewayed bidirectionally;
that is, any article posted on the newsgroup would be automatically
forwarded to the mailing list, and any mail sent to the list would be
automatically forwarded to the newsgroup. Recently the person who
maintained this gateway (and similar ones for other gnu.* groups) has
had to quit, and no replacement has been found at this writing. In the
interim I think it is best to use the newsgroup and not the mailing
list.
-----------------------------------------------------------------------
[A.2] How do I subscribe or unsubscribe?
The simplest way is to either choose to read gnu.chess in your
newsreader, or choose not to.
If you want to be added to or deleted from the mailing list, mail to
info-gnu-chess-request@prep.ai.mit.edu (not to the list or newsgroup
itself).
-----------------------------------------------------------------------
[A.3] Where can I get chess information and chess software?
As a shortcut to most things mentioned in this FAQ, try my Chess Web
page, http://www.research.digital.com/SRC/personal/Tim_Mann/chess.html .
For general news and information about chess, try the newsgroup
hierarchy rec.games.chess.*, especially the groups rec.games.chess.misc
and rec.games.chess.computer. Both of the latter groups have very
informative FAQs maintained by Steve Pribut; look for them on the
newsgroups or at http://www.clark.net/pub/pribut/chess.html .
Like other GNU software, you can get GNU Chess and XBoard by anonymous
FTP from ftp://prep.ai.mit.edu/pub/gnu/ and its many mirror sites. Look
for files matching the patterns gnuchess-*.gz and xboard-*.gz. The .gz
suffix indicates the files were compressed with gzip. You can get gzip
from prep.ai.mit.edu also. The GNU FTP sites carry Unix-compatible
versions of GNU software only, so you won't find WinBoard or AmyBoard
there.
For other chess software, try the Internet Chess Library. Use anonymous
FTP to connect to caissa.onenet.net, or go to the Web page
http://caissa.onenet.net/chess/ . You can get chess software, game
collections, the FAQ file for rec.games.chess, and other chess-related
material there, in the directory pub/chess. Sometimes new XBoard
versions arrive on this site before they make it to prep. The FTP server
can automatically decompress files for you as you download them, useful
if you don't have gzip. Note that caissa.onenet.net is no longer the
same machine as ics.onenet.net!
You can get WinBoard from the Internet Chess Library, in directory
pub/chess/Win3.
Here is a sample anonymous ftp session. Some of the ftp server's
responses are abbreviated, but all the commands you must type are
included.
% ftp prep.ai.mit.edu
Connected to prep.ai.mit.edu
Name: anonymous
Password: your-email-address@your-site
ftp> binary
200 Type set to I.
ftp> cd /pub/gnu
250 CWD command successful.
ftp> dir gnuchess-*.gz
-rw-r--r-- 1 14910 wheel 1448657 Feb 21 22:17 gnuchess-4.0.pl74.tar.gz
ftp> get gnuchess-4.0.pl74.tar.gz
150 BINARY connection for gnuchess-4.0.pl74.tar.gz (1448657 bytes).
226 Transfer complete.
ftp> dir xboard-*.gz
-rw-r--r-- 1 14910 wheel 312553 Aug 07 20:53 xboard-3.3.pl2.tar.gz
ftp> get xboard-3.3.pl2.tar.gz
150 BINARY connection for xboard-3.3.pl2.tar.gz (312553 bytes).
226 Transfer complete.
ftp> quit
-----------------------------------------------------------------------
[A.4] What are the current version numbers for GNU Chess, XBoard, etc.?
At this writing, the current version numbers are:
* GNU Chess 4.0 patchlevel 75. Patchlevel 76 might be released soon;
patchlevel 74 is also available, along with patches to fix some
bugs in it.
* XBoard 3.4 patchlevel 0
* WinBoard 3.3 patchlevel 3
* AmyBoard 3.3 patchlevel 0
-----------------------------------------------------------------------
[A.5] Who is working on this project?
The GNU Chess project is not very active at present. Stuart Cracraft is
still project coordinator. Currently no one seems to working on GNU
Chess itself. Tim Mann maintains this FAQ and is the main developer on
XBoard and WinBoard, but he has little time to spend on the project.
Carsten Meyer has officially taken over maintenance of AmyBoard, but has
not released a new version yet. Evan Welsh, the author of cmail, is not
actively working on it but does fix bugs when they are reported.
-----------------------------------------------------------------------
[A.6] How do I report bugs, offer help, etc.?
Any time you want to report a possible bug in GNU Chess, XBoard, etc.,
we need to know exactly what you did, and exactly what error (or other)
messages you got. If you're using XBoard, WinBoard, or AmyBoard, run it
with the -debug flag to see all the messages it exchanges with GNU Chess
or the Internet Chess Server.
If you are using Unix, run the "script" program, do whatever is
necessary to reproduce the problem, type "exit" to the shell, and mail
us the resulting typescript file. We also need to know what
hardware/operating system combination you are using. The command "uname
-a" will usually tell you this; include its output in your typescript.
If you are using MS Windows or the Amiga, you may have to write down all
the messages with pencil and paper and type them into your mail message.
Or you may be able to use cut-and-paste in your console window. Either
way, please transcribe the messsages carefully. They may seem
meaningless to you, but they are meaningful to us and essential for
diagnosing problems.
You should be able to contact all the members of the project by sending
mail to bug-gnu-chess@prep.ai.mit.edu. If you don't trust this list, you
can send mail about XBoard, WinBoard, or the FAQ to mann@pa.dec.com (Tim
Mann); mail about AmyBoard to DarkSide@darkness.gun.de (Carsten Meyer);
mail about cmail to R.E.Welsh@quadstone.co.uk (Evan Welsh). Comments
that are of interest to all users of the software should be posted to
the gnu.chess newsgroup.
-----------------------------------------------------------------------
[B] GNU Chess
-----------------------------------------------------------------------
[B.1] What is GNU Chess?
GNU Chess is a free chess-playing program developed as part of the GNU
project of the Free Software Foundation (FSF).
GNU Chess is a communal chess program. Contributors donate their time
and effort in order to make it a stronger, better, sleeker program.
Contributions take many forms: interfaces to high-resolution displays,
opening book treatises, speedups of the underlying algorithms, additions
of extra heuristics. These contributions are then distributed to the
large user-base so that all may enjoy the fruits of our labor.
GNU Chess is intended to run under Unix or Unix-compatible systems. It
is written in C and should be portable to other systems.
For a test drive, try WebChess, a World Wide Web interface to GNU Chess
provided by DJ Delorie. The URL is
http://www.delorie.com/game-room/chess/ .
-----------------------------------------------------------------------
[B.2] What is GNU Chess's rating?
It would be irresponsible to answer this question with a number, without
first explaining a few things about ratings.
The ratings that are commonly given for computer chess players are less
meaningful than they may seem. Most computer chess players (including
GNU Chess) do not play in tournaments against humans, or do so only
rarely, so they do not have official ratings from FIDE, USCF, or other
chess organizations.
Some people have methods for rating chess programs approximately by
giving them a set of problems to work on and seeing how they do, or by
having them play tournaments against each other. Any rating number
produced by a formula like this should be taken with a grain of salt; it
may be only a rough approximation to the rating the program would
achieve in over-the-board tournament competition against humans. The
chess skills required for solving problems or playing against other
computers are not necessarily the same as those required for play
against humans. Also, of course, tournaments among computers can rate
the computers only relative to one another, not relative to humans. Some
of the computers need to be rated by other means to give the ratings a
basis to start from.
Compared with human players, computer players are strong tactically but
weak strategically, and are much better at blitz chess than at slow
chess. These differences make it more difficult to assign a meaningful
rating too.
Several computers do play regularly on the Internet chess servers and
have achieved ratings there. These ratings have the advantage of being
based on many games. On the other hand, ICS ratings are only roughly
comparable to USCF or FIDE ratings. Many players have ICS ratings that
are hundreds of points higher or lower than their USCF or FIDE ratings.
Finally, unlike dedicated chess machines, or PC chess programs that run
on only a few different models of Intel processors, GNU Chess runs on
many different kinds of CPU at many different speeds. Thus its strength
depends on how fast a machine you run it on and how much optimization
your C compiler does. Some people have formulas for estimating how a
computer player's rating varies on faster or slower machines---see the
rec.games.chess FAQ for more information---but these need to be taken
with a grain of salt too.
All that said, here are some numbers.
- On the Internet Chess Club, a copy of GNU Chess running on an SGI Onyx
R4400 under the handle MaxII has achieved a blitz rating of over 2500
and a standard rating of over 2300.
- Wolfgang Gabriel ran the Bednorz-Toennissen Test BT2630 with GNU Chess
4.0 pl74 on a 60 MHz Pentium with 16 MB of RAM. The test gave an
estimated rating of 2213. He also ran Fritz-2 on the same hardware and
got an estimated rating of 2311.
-----------------------------------------------------------------------
[B.3] Does GNU Chess run on a PC under DOS (or Windows, or OS/2)?
If you have Windows NT or Windows 95, your best bet is probably the GNU
Chess port that accompanies WinBoard; see topic [D.2] .
Several other ports of GNU Chess to the PC are available in the Internet
Chess Library (topic [A.3] ), scattered among the directories
/pub/chess/DOS, /pub/chess/DOS/OLD-STUFF, and /pub/chess/Win3. Here is
some information on them, but check the library itself for more
up-to-date information.
Porting GNU software to PCs is not a major focus of the GNU project, and
these ports are not supported by the FSF. Contact the people who did the
ports if you have questions or problems.
MSDOS:
gnu40-62.exe 1323260 Probably GNU Chess 4.0.pl62 for MSDOS
gnu40dos.exe T 317072 GNU Chess 4.0pl60 by Free Software Fndtn.
- compiled for DOS, executables only
gnu40src.exe 307786 GNU Chess 4.0pl60 by Free Software Fndtn.
- sources only
gnuchs31.exe T 270559 GNU Chess 3.1 by Free Software Foundation
- compiled for DOS, sources and executables
gnuchs40.exe T 355494 GNU Chess 4.0pl60 by Free Software Fndtn.
- compiled for 80386er, executables only
Windows:
chess321.exe W M 238185 GNU Chess 3.21 ported by Daryl K. Baker
OS/2:
gpl65os2.zip 677824 gnuchess-4.0.pl65 compiled for os2.
gc-os2-m.zip 578032 gnuchess 4.0 for os2 with mouse support.
gnu40os2.zip 1303602 Executables for running gnuchess 4.0 pl62
- under OS/2.
pmchs.exe W M 92004 OS/2 PM Chess 1.01 (GNU Chess 3.1 Windows by
- Daryl K. Baker) port to OS/2 by Kent Cedola
pmchssrc.exe 110279 OS/2 PM Chess 1.01 (GNU Chess 3.1 Windows by
- Daryl K. Baker) sources only
-----------------------------------------------------------------------
[B.4] Does GNU Chess run on an Amiga?
There are at least three ports of GNU Chess to the Amiga. As with the PC
ports, these ports are not supported by the FSF; contact the people who
did the ports if you have problems or questions.
The AmyBoard port (probably the best) is discussed in topic [D.3] .
UChess and AmigaGnuChess are available in the Internet Chess Library
(topic [A.3] ), in the directory /pub/chess/Amiga. UChess is the newer
of the two.
-r--r--r-- 1 chess chess 204025 Mar 31 1993 AmigaGnuChess.lha
-r--r--r-- 1 chess chess 10122 Mar 31 1993 AmigaGnuChess.readme
-r--r--r-- 1 chess chess 705327 May 7 10:28 UChess283.lha
-r--r--r-- 1 chess chess 21478 May 7 10:26 UChess283.readme
-r--r--r-- 1 chess chess 199387 May 7 10:27 UChess283Patch.lha
-r--r--r-- 1 chess chess 21589 May 7 10:26 UChess283Patch.readme
-----------------------------------------------------------------------
[B.5] Does GNU Chess run on a Macintosh?
There is a port of GNU Chess 4.0 to the Macintosh. It's available from
the Internet Chess Library (topic [A.3] ) under /pub/chess/Macintosh or
/pub/chess/uploads/Macintosh, in the following files:
GnuChessMac40b5.hqx - executable binary
GCMsource40b5.hqx - source
As with the PC ports, the Macintosh port is not supported by the Free
Software Foundation. If you have questions or problems, contact Dan
Oetting, oetting@gldfs.cr.usgs.gov.
If you have the old Mac port of GNU Chess 3.0, be sure to get 4.0
instead. GNU Chess has come a long way since version 3.0!
-----------------------------------------------------------------------
[B.6] Does GNU Chess run on VMS?
An old VAX VMS version is available at ada.cenaath.cena.dgac.fr in the
[.VMS] directory:
Directory CENA10:[ANONYMOUS.VMS]
GNUCHESS.ZIP;1 307 21-MAR-1994 18:42:05.13
It's only a character cell version for VT100, VT200, etc. terminals.
Thanks to Patrick Moreau for this information.
-----------------------------------------------------------------------
[B.7] How do I build GNU Chess? Do I need gcc?
The first step to building GNU Chess is to get the distribution file and
unpack it. See topic [A.3] for places you can ftp the distribution from.
To unpack the gnuchess distribution, gnuchess-*.tar.gz, put it into a
new, empty directory, cd there, and give this Unix command:
gzip -cd gnuchess-*.tar.gz | tar -xvf -
If this command fails because you don't have gzip, see topic [A.3] , and
ask a local Unix expert if you need more help.
The above command will unpack all the files into a new directory. Next,
cd into this new directory.
*** Patchlevel 74 and earlier ***
You will find some instructions in a file named INSTALL. You will also
need to read and edit the Makefile in the src subdirectory before you
build; it may contain information missing from the INSTALL file.
You must run all three of the following commands to fully build GNU
Chess:
make
make gnuchess.data
make install
The first make command compiles the GNU Chess programs. (You can edit
the "all:" line in the Makefile if you don't want to build all the
programs. gnuchessr must always be built. gnuchessx is required if you
will be using XBoard. The others are optional.) The "make gnuchess.data"
command builds the book. The "make install" command copies the results
to the BINDIR and LIBDIR you specified so that the different pieces can
find each other.
*** End patchlevel 74 and earlier ***
*** Patchlevel 75 and later ***
Decide what directory tree you are going to install GNU Chess in. The
default is /usr/local. If you have write access to this directory tree,
make sure that it contains subdirectories bin, lib, and man. (If you
must "su" to get write access to /usr/local, you don't need to do so
until just before the "make install" below.) Type the following:
configure
make
make install
If you are going to install GNU Chess under your home directory for
personal use, do this instead:
mkdir $HOME/bin $HOME/lib $HOME/man
configure --prefix=$HOME
make
make install
If you have problems or special requirements, see the files README,
INSTALL, Makefile.in, and configure.in for more information.
*** End patchlevel 75 and later ***
You don't need to have gcc to build GNU Chess. However, GNU Chess is
written in ANSI C. If you have only an old K&R C compiler, be sure you
have the current patchlevel of GNU Chess, and get "unproto" by:
Wietse Venema
wietse@wzv.win.tue.nl
Mathematics and Computing Science
Eindhoven University of Technology
The Netherlands
It was released in comp.sources.misc Vol 27 with patches in vol 28 and
vol 38. Among other places, it can be found on unix.hensa.ac.uk in
pub/uunet/usenet/comp.sources.misc/volume27/unproto.
Compile it and copy the cpp it produces into the gnuchess src directory
before you type "make" there.
-----------------------------------------------------------------------
[C] GNU Chess bugs and problems
-----------------------------------------------------------------------
[C.1] When I try to use GNU Chess with XBoard, it says "Error: first
chess program (gnuchessx) exited unexpectedly".
Try running XBoard again with the "-debug" flag on the command line.
This will print out all the messages received from GNU Chess.
If you see this problem as soon as GNU Chess starts up, most likely GNU
Chess is exiting with an error message. If you see the message "NO
LANGFILE", it means that you did not install GNU Chess correctly, and it
is unable to find the file gnuchess.lang. Make sure that you defined
LIBDIR in the gnuchess Makefile, and that gnuchess.lang is in that
directory. If gnuchess.lang is not there, you probably didn't type "make
install" in the gnuchess src directory; you must do this to install
gnuchess.lang (and the gnuchess book). If you defined LIBDIR to
something that is not an absolute pathname (that is, to something that
does not start with a "/"), GNU Chess will work only if you run it from
the GNU Chess "src" directory where you built it.
If the problem happens while GNU Chess is running, you may have hit a
GNU Chess bug. There was a bug in 4.0 pl72 that would corrupt the stack
and cause the program to exit, sometimes with a nonsensical message
first, sometimes with no message. It was especially evident on Linux.
There is some evidence that this bug is not yet fixed but just happens
less often. If you can help gather evidence to track this problem down,
please let us know. A test case that can be reproduced would be
especially welcome.
-----------------------------------------------------------------------
[C.2] Sometimes GNU Chess plays an extra, bogus move after the game is
over.
There have been bugs in some versions of GNU Chess that caused this
symptom. We believe they are all fixed in 4.0 pl74 and later.
-----------------------------------------------------------------------
[C.3] XBoard sometimes hangs when I'm using it to play against GNU Chess
on a position that I've modified with Edit Position.
You need to get the latest version of GNU Chess. A few recent versions
of GNU Chess contained a subtle change to the behavior of the "new"
command that made them incompatible with previous versions and with
XBoard. There is no way to restore compatibility by changing XBoard, so
instead, GNU Chess has been changed back. See topic [A.4] .
-----------------------------------------------------------------------
[C.4] GNU Chess often uses a little too much time and lets its flag fall
near the end of a time control period.
GNU Chess is known to be a bit too aggressive in using its clock time
and sometimes lets its flag fall. Some bugs that caused this symptom
have been fixed, but more work on the problem may be needed.
-----------------------------------------------------------------------
[C.5] When I use GNU Chess with XBoard, it seems to freeze on me after
it gets out of its opening book.
First, be sure you have the latest versions of GNU Chess and XBoard; see
topic [A.4] above. If you do, and you still have this problem, check the
following.
a) Perhaps the feature in GNU Chess that lets you stop it thinking on
your time by just entering your move is not working. This feature relies
on the FIONREAD ioctl, which seems to be broken on some versions of
Unix. XBoard uses this feature if the flag -DATTENTION is not present on
the DEFINES line of the XBoard Makefile. XBoard 3.1 and later are
distributed with this flag already set, so you should not have a problem
unless you have removed it.
b) You might have built your GNU Chess with the wrong -D options. With
some versions of GNU Chess, this can cause GNU Chess and XBoard to
disagree about what units time is measured in, causing GNU Chess to
think for 100 times as long as it should. Look at your GNU Chess
Makefile and check that the line of options marked "normal", not the
line marked "gnufour ICS client", is uncommented, something like this:
# gnufour ICS client
#
#OPT= -DUSEINT -DCACHE -DCLIENT -DGDX -DHASGETTIMEOFDAY -DNULLMOVE \
-DQUIETBACKGROUND -DBAREBONES -DWAY4PL64 -DHISTORY -DAGING
# normal
OPT= -DUSEINT -DCACHE -DGDX -DHASGETTIMEOFDAY -DNULLMOVE \
-DQUIETBACKGROUND -DSEMIQUIETBOOKGEN -DWAY4PL64 -DHISTORY \
-DHASHSTATS -DAGING
c) You might have a persistent transposition table (hashfile) that has
been corrupted. Look in the LIBDIR directory you defined in the GNU
Chess Makefile, and if you find a file named gnuchess.hash there, remove
it. Do not use the hashfile if you are running multiple copies of GNU
Chess at the same time (for instance, with Two Machines mode in XBoard).
In fact, it is probably best not to use the hashfile under any
circumstances.
-----------------------------------------------------------------------
[C.6] When I use GNU Chess with XBoard, it sometimes tells me that moves
are illegal when they aren't.
a) First, be sure you have the latest versions of GNU Chess and XBoard;
see topic [A.4] above. Several different bugs that could cause this
symptom existed in old versions but have been fixed in the latest ones.
b) Another possibility is that you have a persistent transposition table
(hashfile) that has been corrupted. Look in the LIBDIR directory you
defined in the GNU Chess Makefile, and if you find a file named
gnuchess.hash there, remove it. Do not use the hashfile if you are
running multiple copies of GNU Chess at the same time (for instance,
with Two Machines mode in XBoard). In fact, it is probably best not to
use the hashfile under any circumstances.
-----------------------------------------------------------------------
[C.7] GNU Chess crashes when I try to compile and run it on the DEC
Alpha.
Get the latest version of GNU Chess. Some bugs that showed up only on
the Alpha are fixed in version 4.0 patchlevel 73 and later. If you still
have problems, try compiling with the -migrate flag or the -O1 flag.
Some versions of the Alpha C compiler have optimizer bugs that affect
GNU Chess.
-----------------------------------------------------------------------
[C.8] I get an error message about FIONREAD when trying to run (or build
parts of) gnuchess.
The message looks something like this:
FIONREAD: Operation not supported on socket
You probably have a non-ANSI ioctl.h; see README. -1 45 4004787f
If you are using gcc to compile, the solution to this error message is
usually to go to the GNU Chess Makefile, find the line that starts
"CFLAGS=" (with no # character in front of it), and append the flag
"-traditional-cpp" to the end of the line. Then do
rm dspcom*.o gnuan.o
make
make install
to rebuild gnuchess.
If you aren't using gcc, we don't really understand why this should
happen, but we do have a brute-force workaround: You can simply disable
the gnuchess feature that uses FIONREAD. Find all the places in dspcom.c
(and gnuan.c) where the line "#ifdef FIONREAD" occurs. Change each of
them to "#ifdef NOTDEF". Then recompile gnuchess.
With this code disabled, if you tell gnuchess to think on your time
("hard" mode), you will have to type ^C to make it stop thinking when
you want to make your move. The current version of XBoard does this
automatically, so disabling the code has no effect on XBoard.
-----------------------------------------------------------------------
[C.9] When I try to build GNU Chess, I get a message that "setlinebuf"
is undefined.
GNU Chess is trying to use a library function that is not present in
your C library (namely, setlinebuf). There are two things to try as
possible solutions:
1) Add -DSYSV to the CFLAGS= line in the Makefile. (To the CFLAGS line
that doesn't start with a # sign, that is.) Then do "rm nondsp.o; make".
2) If (1) doesn't work, leaving you with a similar error, but citing
setvbuf instead of setlinebuf, try the following. Remove the -DSYSV
again, go into nondsp.c, and edit the line of code where setlinebuf is
called to read "setbuf(stdout, NULL);" instead.
This problem will be fixed in GNU Chess 4.0.pl76.
-----------------------------------------------------------------------
[C.10] When I try to build GNU Chess, I get a message that _tgetent,
_tgetflag, etc., are undefined.
If GNU Chess is statically linked, the library -lcurses must come
*before* -ltermcap in the link command line (the last gcc command line
you see before the error messages). Edit your Makefile to correct the
order, or edit Makefile.in and rerun configure. This bug exists only in
4.0.pl75 and will be fixed in 4.0.pl76.
-----------------------------------------------------------------------
[C.11] My disk goes wild when I'm running GNU Chess, and the program
seems way too slow.
This happens if you don't have enough real memory (RAM) to run GNU
Chess. You may need 16MB or more. You can reduce GNU Chess's memory
requirements by reconfiguring it, using the suggestions in the file
doc/PORTING from the GNU Chess source tree, and recompling. Or just buy
more memory.
Why does GNU Chess use so much memory? The extra memory lets it keep
large hash tables that speed up its search and make it play better, and
a large on-line book that improves opening play. If you have lots of
memory you may want to reconfigure GNU Chess to use *more* than the
default amount.
-----------------------------------------------------------------------
[D] XBoard, WinBoard, and AmyBoard
-----------------------------------------------------------------------
[D.1] What is XBoard?
XBoard is a graphical chessboard that can serve as a user interface for
GNU Chess, for the Internet Chess Servers, or for email correspondence
chess, or can be used by itself. XBoard is free software.
As an interface to GNU Chess, XBoard lets you play a game against the
machine, set up arbitrary positions, force variations, or watch a game
between two machines.
As an interface to the Internet Chess Servers, XBoard lets you play
against other ICS users, observe games they are playing, or review games
that have recently finished. You don't need GNU Chess for this.
To play email correspondence chess with XBoard, you use it with the
cmail program. See topic [D.6] below.
You can also use XBoard as a chessboard to play through games. It will
read and write game files and allow you to play through variations
manually. You can use it to browse games off the net, or to review GNU
Chess, ICS, and email correspondence games you have saved. It saves
games in PGN (portable game notation), and can read almost any game in
algebraic notation. These features are available at all times, even if
you do not have access to GNU Chess or an ICS.
XBoard runs under Unix or Unix-compatible systems. It requires the X
Window System, version X11R4 or later. There are also ports of XBoard to
Microsoft Win32 (that is, Windows NT or Windows 95) and to the Amiga.
See topics [D.2] and [D.3] respectively.
-----------------------------------------------------------------------
[D.2] Is there an XBoard for Microsoft Windows? What is WinBoard?
WinBoard is a port of XBoard to true Microsoft Win32 systems, such as
Windows NT and Windows 95. It uses the same back end chess code as
XBoard, but the front end graphics code is a complete rewrite. WinBoard
is free software.
The WinBoard distribution now includes a port of GNU Chess itself to
Win32. The GNU Chess port is distributed in executable form, with
instructions for rebuilding it from the standard GNU Chess sources
(available separately). You should have at least 16 to 24 MB of memory
to run GNU Chess with WinBoard.
cmail (topic [D.6] ) has not been ported to Win32. All the other XBoard
functions are included in WinBoard.
-----------------------------------------------------------------------
[D.3] Is there an XBoard for the Amiga? What is AmyBoard?
AmyBoard is a port of XBoard to the Amiga, originally by Jochen
Wiedmann, now maintained by Carsten Meyer. The distribution includes a
port of GNU Chess. AmyBoard is free software.
System requirements:
* An Amiga (obviously :-), running OS 2.04 or later, 2Mb RAM or more.
* MUI 2.0 or later.
* Workbench or another screen with no less than 640x400 pixels
(adjustable with the MUI-Prefs); this restriction is just because
we don't have bitmaps with less than 40x40 pixels per square. If
someone contributes bitmaps with 20x20 or 20x25, they will work
with any Hires mode.
If you would like to use an ICS, you need an Internet connection via
either
* a telnet-like program, or
* a terminal program reading from stdin and writing to stdout.
AmyBoard is available in the Internet Chess Library (topic [A.3] ).
-----------------------------------------------------------------------
[D.4] Is there an XBoard for the Macintosh?
No. But porting XBoard to the Mac should not be much harder than porting
it to Win32 or the Amiga was. I can't do it because I don't have a Mac,
I don't know how to program Macs, and I don't have time. If you do, feel
free to give it a try! Send mail to me, mann@pa.dec.com (Tim Mann), if
you're working on this.
-----------------------------------------------------------------------
[D.5] Does XBoard run on VMS?
No. This port would probably be a lot easier than the Win32 and Amiga
ports were, because VMS has the X Window system (under the name
DECwindows) and is now Posix compliant. However, in spite of the fact
that I work for Digital, I don't know enough about VMS to do the port
myself. And I don't have time. If you do, give it a try! Send mail to
me, mann@pa.dec.com (Tim Mann), if you're working on this.
-----------------------------------------------------------------------
[D.6] What is cmail?
cmail is a program that helps you play and keep track of electronic mail
correspondence chess games using XBoard. It is distributed with XBoard
and has its own manual page. cmail is free software.
-----------------------------------------------------------------------
[D.7] How do I build XBoard? Do I need gcc?
The first step to building XBoard is to get the distribution file. See
topic [A.3] for places you can ftp the software from.
To unpack and build the xboard distribution, xboard-*.tar.gz, give these
Unix commands:
gzip -cd xboard-*.tar.gz | tar -xvf -
cd xboard-*/
configure
make
If the first step above fails because you don't have gzip, see topic
[A.3] , and ask a local Unix expert if you need more help. If you have
any problems with the last two steps, read the READ_ME and INSTALL files
in the xboard-*/ directory. You will also find this FAQ there.
You don't need to have gcc to build XBoard, and your C compiler doesn't
have to be ANSI-compliant.
-----------------------------------------------------------------------
[D.8] Can I use XBoard to play a game of chess with another human?
The only way for two humans on different machines to play chess in real
time using XBoard is to use an Internet Chess Server as an intermediary.
That is, each player runs his own copy of XBoard, both of them log into
an ICS, and they play a game there. Two copies of XBoard cannot
communicate with each other directly.
Instructions on how to get started with Internet chess are included with
the XBoard distribution. The network addresses included in the XBoard
distribution may not always be current. The oldest ICS is the Internet
Chess Club at chess.lm.com, which now has a fee for registered use, but
still allows free unregistered use. There are also many newer sites with
no fees, using the Free Internet Chess Server implementation (FICS).
Current FICS sites include ics.onenet.net (the most active),
krypton.daimi.aau.dk, dds.hacktic.nl, holly.csv.warwick.ac.uk, and
chess.pitt.edu. On all these machines, the port number to use is 5000.
Try "finger chess@ics.onenet.net" for more address information.
Note: If you don't have network connectivity to any ICS site, you can
run your own server using the FICS code. You can get a copy by anonymous
ftp from the Internet Chess Library (topic [A.3] ). The code is changing
rapidly, so send mail to chess@ics.onenet.net and/or log into the FICS
server at ics.onenet.net and ask the administrators there for current
information.
The cmail program included with XBoard lets you play email postal games
with another human; see topic [D.6] .
Two humans can play chess on the same machine using one copy of XBoard
in Edit Game mode, but the clocks don't run in this mode, so it's of
limited usefulness.
See also topic [F.2] , Winsock Chess.
-----------------------------------------------------------------------
[D.9] Will WinBoard run on Windows 3.1?
WinBoard basically does not run on Windows 3.1 or Windows for Workgroups
3.11. Although you can use the program as a PGN viewer/editor under the
Win32s compatibility package, the major features (interfacing to GNU
Chess and to ICS) do not work. The main problem is that Win32s does not
have threads or real concurrent processes. A port of WinBoard to Windows
3.1 is possible in theory, but it would be difficult and messy, and no
one is going to do it.
WinBoard runs well on both Windows 95 and Windows NT.
-----------------------------------------------------------------------
[D.10] How do I use XBoard or WinBoard as an external viewer for PGN
files with my Web browser?
1) On Unix systems:
- Add the following line to the file .mime.types in your home directory.
(Create the file if it doesn't exist already.)
application/x-chess-pgn pgn
- Add the following line to the file .mailcap in your home directory.
(Create the file if it doesn't exist already.)
application/x-chess-pgn; xboard -ncp -lgf %s
- Exit from your Web browser and restart it.
2) On MS Windows systems:
The exact procedure depends on which Web browser you are using.
Generally, you need to select something like Helper Applications or File
Types from an Options menu or dialog, and associate the extension "pgn"
with the Mime type "application/x-chess-pgn" and the application
"WinBoard". You will probably have to use a Browse button to find
WinBoard on your disk and tell the Web browser where it is.
3) To confirm that your external viewer configuration is working, open
one of the following URLs and click on any of the game names shown.
* http://www.research.digital.com/SRC/personal/Tim_Mann/chess.html#PGN
* http://www.ub.uit.no/chess/pgn/gamelist.html
* http://www.traveller.com/scripts/chess_players?Kasparov
Games at www.traveller.com don't cause XBoard to be started when you are
using Netscape, but they do work with NCSA Mosaic. This seems to be due
to a missing feature in Netscape, but unfortunately it will probably
have to be fixed on the server end, given Netscape's status as the de
facto standard.
-----------------------------------------------------------------------
[D.11] How do I use WinBoard as an external viewer for PGN files with
the MS Windows File Manager or Explorer?
For the File Manager on Windows 3.11, Windows NT 3.51, etc., select
Associate from the File menu, enter "pgn" as the extension, and use the
Browse button to find your copy of WinBoard and set up the association.
For the Explorer on Windows 95, follow the same procedure as in topic
[D.10] . You only have to follow the procedure once to configure both
Microsoft's Internet Explorer and the file system Explorer.
-----------------------------------------------------------------------
[E] XBoard, WinBoard, and AmyBoard bugs and problems
-----------------------------------------------------------------------
[E.1] I can't build XBoard because xmkmf and imake are not present on my
system.
This one is easy now. Beginning with XBoard 3.2, xmkmf and imake are no
longer required.
-----------------------------------------------------------------------
[E.2] I can't build XBoard because the X11/Xaw/... include files are not
found. (Often a problem for HP-UX users.)
These are the header files for the Athena Widgets library, which XBoard
uses heavily. Some versions of Unix don't supply these files, but they
are part of the standard X distribution, freely available from MIT.
For general information on getting missing X sources, see the FAQ on
comp.windows.x. Note that you may be missing only the header files, or
you may be missing the libraries themselves too.
HP-UX users are missing only the header files. You can get them by
anonymous FTP as follows. (But first check with your system
administrator to see if someone else at your site has already done
this.) Get the archive files /hpux9/X11R5/Core/imake-5.04.tar.gz (imake
and xmkmf, optional but useful) and /hpux9/X11R5/Core/Xaw-5.00.tar.gz
(Xaw header files) via anonymous FTP from the site hpux.csc.liv.ac.uk
(138.253.42.172), or one of the other official sites---Germany:
hpux.ask.uni-karlsruhe.de (129.13.200.57), US: hpux.cae.wisc.edu
(144.92.4.15), France: hpux.cict.fr (192.70.79.53) or Netherlands:
hpux.ced.tudelft.nl (130.161.140.100). Unpack the archives using gzip
and follow the instructions in their README and HPUX.Install files.
Thanks to Richard Lloyd for this information.
If you have the Xaw header files installed in a different place than the
other X11 headers, you may need to configure XBoard with an extra flag
to help it find them. For example, if yours are in /foo/bar/X11/Xaw, try
this:
rm config.cache
(setenv CFLAGS -I/foo/bar ; configure)
Also see topic [E.3] .
-----------------------------------------------------------------------
[E.3] When trying to build XBoard, I get error messages about undefined
symbols.
The configure script for XBoard looks for X libraries and header files
in some common places. Sometimes it fails: If yours are installed in an
odd place, it may not find them at all. If you have more than one
version of X installed on your system, it may find the "wrong" one, or
occasionally it may find libraries from one version and incompatible
header files from another. You can work around these problems by telling
the configure script where the files are. For example:
configure --x-includes=/odd/place/include \
--x-libraries=/odd/place/lib
The directory named in the argument to --x-includes must have a
subdirectory "X11" that contains the actual .h files.
Some linkers have bugs that cause bogus error messages when you try to
link X programs. The configure script includes a workaround for a bug of
this kind that exists in some SunOS 4.x.x installations. See the FAQ on
comp.windows.x for more information about problems of this kind.
If you have X11R6, the configure script for XBoard 3.2.pl2 and earlier
may not find all the link libraries you need. This bug is fixed in
XBoard 3.3.
If all else fails, check whether anyone else at your site has been able
to compile any X programs on your system. Your X installation might be
buggy. If so, the system administrator at your site might know how to
fix or work around the problem.
Also see topic [E.2] .
-----------------------------------------------------------------------
[E.4] I have problems using WinBoard on ICS with a modem. I'm not
running SLIP or PPP, but just dialing in to an ordinary login account
("shell account").
Here are solutions to some common problems in this area.
Some people want to connect to ICS through HyperTerminal or some other
terminal program first, then run WinBoard. This is not how it works.
WinBoard wants to talk directly with your modem, acting as a terminal
program itself. Start out with the modem "on hook" (not making a call).
Run WinBoard with a command line like this (adding more options if
desired):
start WinBoard /ics /icscomm com1
Use com2, com3, or com4 in place of com1 if your modem is connected to
one of those ports. Leave out the "start" if this is the command line in
an icon you are making for WinBoard.
After you start WinBoard, you may need to change some of the options in
the Communications dialog (on the Options menu). The dialog has the
usual options for talking to modems: bits per second, bits per byte,
parity, number of stop bits. If you have to change anything in this
dialog, you'll have to change it every time you run WinBoard; there is
currently no way to save these options or specify them on the command
line. Sorry.
Next, type dialing commands to your modem in the text window that
WinBoard creates. You may need to turn off Local Line Editing on the
Options menu while you are typing commands to your modem. Turn it back
on when you're done. See the WinBoard Help file for instructions if you
see your typing echoed an extra time after you hit Enter.
-----------------------------------------------------------------------
[E.5] I have problems using WinBoard on ICS with Windows 95 and SLIP or
PPP. It gets error 10047 (or some other error) trying to connect.
Some Winsock (TCP/IP) implementations support only 16-bit applications,
but WinBoard is a 32-bit application. Trumpet Winsock is one of those
that has this problem. Uninstall whatever Winsock you are using and
install Microsoft TCP/IP instead. Microsoft TCP/IP works with both
16-bit and 32-bit applications and supports SLIP, PPP, Ethernet, etc. It
is included with Windows 95. See
http://walden.mo.net/~rymabry/95winfaq.html (the Win95-L FAQ) for more
information.
-----------------------------------------------------------------------
[E.6] When I try to run WinBoard, I get the message "Failed to start
chess program gnuchesx on localhost: NO LANGFILE (file gnuchess.lang not
found)".
If you unzip WinBoard with an unzip program that does not understand
long file names, you will need to rename gnuchess.lan to gnuchess.lang
and gnuchess.dat to gnuchess.data to make GNU Chess run properly. These
names might be changed in a future WinBoard release to avoid this
problem, so don't rename the files unless you have the problem.
If you wanted to use WinBoard as an ICS interface, not with GNU Chess at
all, remember to put the -ics flag on its command line when you start
it.
-----------------------------------------------------------------------
[F] Miscellaneous
-----------------------------------------------------------------------
[F.1] What is XChess?
XChess is an older chessboard program that is no longer supported.
XChess was written for X version 10, and you may or may not be able to
build and run it on an X11 system.
XChess has only one significant feature that is not present in XBoard:
Two humans can play chess using XChess on different machines, without
using the Internet Chess Server as an intermediary. This feature is of
interest only if you don't have network connectivity to the Internet
Chess Server.
Note: There actually have been several different programs called
"XChess" in circulation at various times. The above describes one that
was associated with GNU Chess.
-----------------------------------------------------------------------
[F.2] What is Winsock Chess?
Winsock Chess is a program that lets two people play chess across a
network. It runs only under Microsoft Windows. Some of the code in
Winsock Chess is derived from GNU Chess, but it is not maintained by the
GNU Chess team. You can get a copy from the Internet Chess Library; see
topic [A.3] . For more information, contact its author, Donald Munro,
ccahdm@beluga.upe.ac.za.
-----------------------------------------------------------------------
[F.3] What is Crafty?
Crafty is a freely-available chess program written by Bob Hyatt. It
works with XBoard, but it currently requires a modified version of
XBoard that Bob distributes, and some secondary XBoard features don't
work. In the future full Crafty support may be added to the standard
versions of XBoard and WinBoard. For now, you'll find both Crafty and
the modified XBoard on Bob's FTP server,
ftp://willis.cis.uab.edu/pub/hyatt/ . If you have trouble connecting to
this server with your Web browser, run the ftp program and connect to it
by hand.
Bob Hyatt is the main author of the well-known chess program Cray Blitz,
and he's now putting his expertise into Crafty. Crafty is already a much
better chess program than GNU Chess on many dimensions: it plays better,
the code is commented and readable, and the author is actively working
on improvements.
-----------------------------------------------------------------------
** End of GNU Chess FAQ **
Technical Details
Message-ID:
<4a3ng6$dhc@src-news.pa.dec.com>Path:
arc1-ca.pugleaf.net!unknown!not-for-mailShow Full Headers
Complete Article Headers
X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 1143c9,6781ca9b37a9bc3f,start X-Google-Attributes: gid1143c9,public X-Google-Thread: f7ded,6781ca9b37a9bc3f,start X-Google-Attributes: gidf7ded,public X-Google-Thread: 110df2,6781ca9b37a9bc3f,start X-Google-Attributes: gid110df2,public X-Google-Thread: 10d71d,6781ca9b37a9bc3f,start X-Google-Attributes: gid10d71d,public From: mann@pa.dec.com (Tim Mann) Subject: FAQ -- GNU Chess and XBoard Frequently Asked Questions Date: 1995/12/06 Message-ID: <4a3ng6$dhc@src-news.pa.dec.com> X-Deja-AN: 121063230 followup-to: gnu.chess summary: Here is the list of frequently asked questions and answers organization: Digital Systems Research Center reply-to: bug-gnu-chess@prep.ai.mit.edu newsgroups: gnu.chess,rec.games.chess.computer,rec.answers,news.answers