🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: gnu.chess
Article #4603

Re: Help: xboard *very* slow

#4603
From: Tim Mann
Date: Wed, 22 Feb 1995 21:01
839 lines
36930 bytes
In article <D4CI1D.63F@nl.oracle.com> rgasch@nlps67 (Robert) writes:
>
>I've compiled gnuchess and xboard on a Intel 486/66 running SCO Unix 
>and built a 540K book file. When I start up the progam the frist 2 
>computer moves are made right away, but then the program just sits 
>there thinking (I stopped it after 15 minutes). ...

This topic is discussed in the FAQ, topic [22].  If none of the suggestions in
the FAQ solve the problem for you, follow the instructions for reporting bugs,
in FAQ topic [12].

	--Tim

From: mann@pa.dec.com
Newsgroups: gnu.chess,rec.games.chess,rec.answers,news.answers
Subject: FAQ -- GNU Chess and XBoard Frequently Asked Questions
Followup-To: gnu.chess
Summary: This posting contains a list of frequently asked questions
  (with answers) about the chess-playing program GNU Chess, the X 
  chess interface XBoard, and related topics often discussed on the
  gnu.chess newsgroup.
Reply-To: bug-gnu-chess@prep.ai.mit.edu
Approved: news-answers-request@MIT.EDU

Archive-name: games/chess/gnu-faq
Version: $Id: FAQ,v 1.14 1995/02/21 03:27:29 mann Exp $
Posting-frequency: monthly

[1] What are the gnu.chess newsgroup and info-gnu-chess mailing list for?  How
  do I subscribe or unsubscribe?
[2] What is GNU Chess?
[3] What is GNU Chess's rating?
[4] What is XBoard?
[5] Can I use XBoard to play a game of chess with another human?
[6] What is XChess?
[7] What is WinBoard?  Will WinBoard run on Windows 3.1?
[8] What is cmail?
[9] What is Winsock Chess?
[10] Where can I get chess software?
[11] What are the current version numbers for GNU Chess and XBoard?
[12] Who is working on this project?  How do I report bugs, offer help, etc.?
[13] Does GNU Chess run on a PC under DOS (or Windows)?
[14] Does GNU Chess run on an Amiga?
[15] Does GNU Chess run on a Macintosh?
[16] How do I build GNU Chess?  Do I have to have gcc?
[17] How do I build XBoard?  Do I have to have gcc?
[18] When I try to use GNU Chess with XBoard, it says "Error: first chess
  program (gnuchessx) exited unexpectedly".
[19] Sometimes GNU Chess plays an extra, bogus move after the game is over.
[20] XBoard sometimes hangs when I'm using it to play against GNU Chess on a
  position that I've modified with Edit Position.
[21] GNU Chess often uses a little too much time and lets its flag fall
  near the end of a time control period.
[22] When I use GNU Chess with XBoard, it seems to freeze on me after
  it gets out of its opening book.
[23] When I use GNU Chess with XBoard, it sometimes tells me that moves
  are illegal when they aren't.
[24] GNU Chess crashes when I try to compile and run it on the DEC Alpha.
[25] I get an error message about FIONREAD when trying to run (or build parts
  of) gnuchess.
[26] I can't build XBoard because xmkmf and imake are not present on my
  system. 
[27] I can't build XBoard because the "#include <X11/Xaw/...>" files are not
  found.  (Often a problem for HP-UX users.)
[28] When trying to build XBoard, I get error messages about undefined symbols.
[29] How do I use XBoard as an external viewer for PGN files with NCSA Mosaic
  or Netscape?
[30] Does GNU Chess run on VMS?
[31] Does XBoard run on VMS?

-----
[1] What are the gnu.chess newsgroup and info-gnu-chess mailing list for?  How
  do I subscribe or unsubscribe?

The gnu.chess newsgroup is for the discussion of GNU Chess, XBoard, and other
related software.  It is 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 if you use rec.games.chess.  There is a rec.games.chess FAQ file
with a great deal of general chess information; see topic [10] below.

The gnu.chess newsgroup is gatewayed bidirectionally with the mailing list
info-gnu-chess@prep.ai.mit.edu.  If you want to be added to or deleted from
this mailing list, send mail to info-gnu-chess-request@prep.ai.mit.edu, not to
the list (or newsgroup) itself.

-----
[2] What is GNU Chess?

GNU Chess is a 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.

-----
[3] What is GNU Chess's rating?

GNU Chess does not play in tournaments, so strictly speaking, it does not have
a rating.  In any case, its strength depends on how fast a machine you run it
on and how much optimization your C compiler does.  Like all computer players,
GNU Chess is strong tactically but relatively weak strategically.

Zippy, a copy of GNU Chess 4.0 running on a fast DEC Alpha AXP 3000/600
workstation, has achieved a blitz rating of over 2200 on the Internet Chess
Server.  ICS ratings are roughly comparable to USCF and FIDE ratings, but many
players have ICS ratings that are hundreds of points higher or lower than
their USCF or FIDE ratings.

Several other versions of GNU Chess with various modifications also play on
ICS.  The gnufour player runs experimental, unreleased versions of gnuchess to
help evaluate prospective changes, so its rating often suffers due to bugs or
ideas that don't pan out.

-----
[4] What is XBoard?

XBoard is a graphical chessboard that can serve as a user interface for GNU
Chess, for the Internet Chess Server, or for email correspondence chess, or
can be used by itself.

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 Server, 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 [8] 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 the
ICS.

XBoard runs under Unix or Unix-compatible systems.  It requires the X Window
System, version X11R4 or later.

-----
[5] 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 the Internet Chess Server as an intermediary.  That is,
each player runs his own copy of XBoard, both of them log into the ICS, and
they play a game there.  Two copies of XBoard cannot communicate with each
other directly.

Instructions on how to get started with the ICS are included with the XBoard
distribution.  The ICS moves from time to time, so the addresses included in
the XBoard distribution may not always be current.  At this writing, the main
North American ICS is at chess.lm.com.  The European and Australian ICS sites
are anemone.daimi.aau.dk, dds.hacktic.nl, and lux.latrobe.edu.au.  There are
also several backup sites.  There is a FICS site at chess.pitt.edu.  On all
these machines, the port number to use is 5000.  Try "finger
chess@ics.onenet.net" or "finger tange@daimi.aau.dk" for more address
information.

Note: If you don't have network connectivity to any ICS site, you can contact
Daniel Sleator <sleator@cs.cmu.edu> for information on running your own copy
of his ICS implementation, or contact Richard Nash <nash@visus.com> for
information on his alternative implementation, FICS.

The cmail program included with XBoard lets you play email postal games with
another human; see topic [8].

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 [9].

-----
[6] 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.

-----
[7] What is WinBoard?  Will WinBoard run on Windows 3.1?

WinBoard is a port of XBoard to Microsoft Windows NT and Microsoft Windows 95
(Chicago) using the Win32 API.  It uses the same back end chess code as
XBoard, but the front end graphics code is a complete rewrite.

WinBoard does *not* run on Windows 3.1 or other MS-DOS based versions of
Windows.  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 the ICS) do not work.  The main problem is that MS-DOS 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 likely
to do it.

WinBoard 3.2 generally runs well on Windows 95 Beta 2, and it should work even
better after Microsoft has fixed some of the bugs in the beta.  All versions
of WinBoard run on Windows NT.

Note: At this writing, GNU Chess itself has not been ported to Win32.  The DOS
and Windows versions of GNU Chess listed in topic [13] will probably run under
Windows 95 and Windows NT, but they will not interface to WinBoard.  WinBoard
does work with GNU Chess if you run GNU Chess remotely on a Unix machine
(using the -fh and -sh options on WinBoard).

-----
[8] 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.

Here is a patch that fixes a cmail bug in the current version of XBoard (3.2
patchlevel 0):

*** BAK/backend.c	Thu Jan 26 18:01:23 1995
--- backend.c	Thu Jan 26 18:47:53 1995
***************
*** 3079,3085 ****
  	  case WhiteWins:
  	  case BlackWins:
  	  case GameIsDrawn:
! 	    if (cmailMsgLoaded) {
  		if (   cmailResult[CMAIL_MAX_GAMES - gameNumber - 1]
  		    != CMAIL_OLD_RESULT) {
  		    nCmailResults ++ ;
--- 3079,3085 ----
  	  case WhiteWins:
  	  case BlackWins:
  	  case GameIsDrawn:
! 	    if (cmailMsgLoaded && (CMAIL_MAX_GAMES == lastLoadGameNumber)) {
  		if (   cmailResult[CMAIL_MAX_GAMES - gameNumber - 1]
  		    != CMAIL_OLD_RESULT) {
  		    nCmailResults ++ ;

-----
[9] 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 [10].  For more
information, contact its author, Donald Munro <ccahdm@beluga.upe.ac.za>.

-----
[10] Where can I get chess software? 

Like other GNU software, you can get GNU Chess and XBoard by anonymous FTP
from prep.ai.mit.edu and its many mirror sites.  Look in the directory pub/gnu
for files matching the patterns gnuchess-*.gz and xboard-*.gz.  The .gz suffix
indicates the files were compressed with GNU gzip.  You can get gzip from
prep.ai.mit.edu also.

For other chess software, try the Internet Chess Library.  Use anonymous FTP
to connect to ics.onenet.net, or if you have a World Wide Web browser, open
URL ftp://ics.onenet.net/pub/chess/HTML/homepage.html.  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.

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     1455418 Feb 19 23:59 gnuchess-4.0.pl74.tar.gz
ftp> get gnuchess-4.0.pl74.tar.gz
150 Opening BINARY mode data connection for gnuchess-4.0.pl74.tar.gz (1455418 bytes).
226 Transfer complete.
ftp> dir xboard-*.gz
-rw-r--r--  1 14910    wheel      254696 Dec 10 20:53 xboard-3.2.pl0.tar.gz
ftp> get xboard-3.2.pl0.tar.gz
150 Opening BINARY mode data connection for xboard-3.2.pl0.tar.gz (254696 bytes).
226 Transfer complete.
ftp> quit

-----
[11] What are the current version numbers for GNU Chess and XBoard?

At this writing, the current version numbers are:

- GNU Chess 4.0 patchlevel 74
- XBoard 3.2 patchlevel 0
- WinBoard 3.2 patchlevel 1

-----
[12] Who is working on this project?  How do I report bugs, offer help, etc.?

Stuart Cracraft is the project coordinator.  Mike McGann is the main developer
on GNU Chess 4.0.  Tim Mann has been the main developer on XBoard, but he is
winding down his involvement and would like to find a replacement.

You can contact all the members of the project by sending mail to
bug-gnu-chess@prep.ai.mit.edu.  Comments that are of interest to all users of
the software can be sent to info-gnu-chess@prep.ai.mit.edu, or posted to the
gnu.chess newsgroup.  (The mailing list and newsgroup forward to each other.)

Any time you want to report a possible bug in GNU Chess or XBoard, we need to
know exactly what you did, and exactly what error (or other) messages you got.
Run the Unix "script" program, do whatever is necessary to reproduce the
problem, type "exit" to the shell, and mail us the resulting typescript file.
If you're using XBoard, run it with the -debug flag.  We also need to know
what hardware/operating system combination you are using.  The command "uname
-a" will often tell you this.

-----
[13] Does GNU Chess run on a PC under DOS (or Windows, or OS/2)?

Several different ports of GNU Chess to the PC are available in the Internet
Chess Library (topic [10]), 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 Foundation
                           -  compiled for DOS, executables only
    gnu40src.exe      307786  GNU Chess 4.0pl60 by Free Software Foundation
                           -  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 Foundation
                           -  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) ported 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

-----
[14] Does GNU Chess run on an Amiga?

There are at least two ports of GNU Chess to the Amiga.  UChess is newer than
AmigaGnuChess.  Both are available in the Internet Chess Library (topic [10]),
in the directory /pub/chess/Amiga.  As with the PC ports, they are not
supported by the FSF; contact the people who did the ports if you have
problems or questions.

-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

-----
[15] Does GNU Chess run on a Macintosh?

As with the PC ports, Macintosh ports are not supported by the Free Software
Foundation.  Contact the people who did the ports if you have problems or
questions.

Also, the FSF has had a long-standing boycott against Apple Computer because
of its "look and feel" copyright suits, so ports of GNU software to Apple
products have been discouraged.  I (the FAQ maintainer) have not seen any
official announcement that the boycott is over, though some people seem to
think it is.

At any rate, the following files are available in the Internet Chess Library
(topic [10]), in the directory /pub/chess/Macintosh.  The 3.0 version is said
to be very buggy---GNU Chess has come a long way since version 3.0.  So try
the 4.0 version, listed first below.

-r--r--r--   1 1000     informix   222032 Jan  4 18:59 GnuChessMac40b4.hqx
-r--r--r--   1 1000     informix   205315 Nov 12  1992 gnu-chess.hqx
-r--r--r--   1 1000     informix   187207 Feb 20  1993 gnuchess3.0.cpt.hqx

-----
[16] 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 [10] 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:

	gunzip < gnuchess-*.tar.gz | tar -xvf -

If this command fails because you don't have gunzip, see topic [10], 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.  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.

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, either get
gcc, or use the following instructions from Mike McGann.

To compile with a K&R C compiler, 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.  I got it from unix.hensa.ac.uk in
pub/uunet/usenet/comp.sources.misc/volume27/unproto.

Compile it and copy the cpp it produces into the gnuchess source directory.

Make the following changes to the pl73 source code.  [FAQ maintainer's note:
This patch was not included in pl74.  It may work on pl74, but is untested.]

*** T/Makefile	Mon Sep 19 20:16:02 1994
--- Makefile	Sat Oct 22 10:11:12 1994
***************
*** 194,201 ****
  
  # Miscellaneous CFLAGS. Uncomment the one you need and comment 
  # the other.
! CFLAGS=  -O -Dinline=""	 -traditional-cpp
! #CFLAGS= -O4 -Qpath .  # SunOS cc using unprotoize
  #CFLAGS= -O4 # Sun acc
  #CFLAGS= -O2 # DEC ANSI C (c89) on Ultrix.
  #CFLAGS= +O3 -Aa -D_HPUX_SOURCE -DSYSV # HPUX cc 
--- 194,201 ----
  
  # Miscellaneous CFLAGS. Uncomment the one you need and comment 
  # the other.
! #CFLAGS=  -O -Dinline="" -traditional-cpp
! CFLAGS= -O4 -Dconst="" -Qpath .  # SunOS cc using unprotoize
  #CFLAGS= -O4 # Sun acc
  #CFLAGS= -O2 # DEC ANSI C (c89) on Ultrix.
  #CFLAGS= +O3 -Aa -D_HPUX_SOURCE -DSYSV # HPUX cc 
*** T/book.c	Mon Sep 19 03:23:04 1994
--- book.c	Sat Oct 22 10:02:25 1994
***************
*** 451,463 ****
  	  /* number cannot start with a 0 because of 0-0 */
  	  else if (!isalpha (c) && c != '0')
  	    {
! 		int nl = false;
  		int nonspace = false;
  
  		while (true)
  		  {
  		      c = gnc (fd);
! 		      if (nl)
  			  if (c == '#' || c == '[' || c == '%')
  			    {
  				ungetc (c, fd);
--- 451,463 ----
  	  /* number cannot start with a 0 because of 0-0 */
  	  else if (!isalpha (c) && c != '0')
  	    {
! 		int nlxx = false;
  		int nonspace = false;
  
  		while (true)
  		  {
  		      c = gnc (fd);
! 		      if (nlxx)
  			  if (c == '#' || c == '[' || c == '%')
  			    {
  				ungetc (c, fd);
***************
*** 467,477 ****
  			  continue;
  		      if (c == '\n')
  			{
! 			    nl = true;
  			    continue;
  			}
  		      else
! 			  nl = false;
  		      if (c == EOF)
  			{
  			    return -1;
--- 467,477 ----
  			  continue;
  		      if (c == '\n')
  			{
! 			    nlxx = true;
  			    continue;
  			}
  		      else
! 			  nlxx = false;
  		      if (c == EOF)
  			{
  			    return -1;
*** T/search.c	Wed Sep 28 16:47:27 1994
--- search.c	Sat Oct 22 10:02:37 1994
***************
*** 411,417 ****
  	flag.timeout = true;
  #else
        else if (!(Sdepth < MINDEPTH) && TCflag && !flag.onemove &&
! 	       ((int) ((double)1.93913099l * (pow ((double) et, (double)1.12446928l))) > (ResponseTime + ExtraTime)))
  	       { flag.timeout = true;}
  #endif
        /************************ time control ***********************************/
--- 411,417 ----
  	flag.timeout = true;
  #else
        else if (!(Sdepth < MINDEPTH) && TCflag && !flag.onemove &&
! 	       ((int) ((double) 1.93913099 * (pow ((double) et, (double)1.12446928))) > (ResponseTime + ExtraTime)))
  	       { flag.timeout = true;}
  #endif
        /************************ time control ***********************************/


-----
[17] How do I build XBoard?  Do I need gcc?

The first step to building XBoard is to get the distribution file.  See topic
[10] for places you can ftp the software from.

To unpack and build the xboard distribution, xboard-*.tar.gz, give these Unix
commands:

	gunzip < xboard-*.tar.gz | tar -xvf -
	cd xboard-*/
	configure
	make

If the first step above fails because you don't have gunzip, see topic [10],
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.

-----
[18] 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.

-----
[19] Sometimes GNU Chess plays an extra, bogus move after the game is over.

There are bugs in some versions of GNU Chess that cause this symptom.  Most
of them are fixed in 4.0 pl73, but recently a user found a position where GNU
Chess is stalemated but tries to play a (completely nonsensical) move.  This
bug is easy to reproduce, so hopefully it will be fixed soon.  [FAQ
maintainer's note: I don't know whether this is fixed in pl74.]

-----
[20] 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 [11].

-----
[21] 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.

-----
[22] 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
[11] 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).

-----
[23] 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 [11] 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).

-----
[24] 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.

-----
[25] 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.

-----
[26] 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.

-----
[27] I can't build XBoard because the "#include <X11/Xaw/...>" 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
gunzip 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 3.2 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 [28].

-----
[28] When trying to build XBoard, I get error messages about undefined symbols.

The configure script for XBoard 3.2 looks for X libraries and header files in
some common places.  Sometimes it fails: If yours are installed in a strange
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=/strange/place/include -x-libraries=/strange/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 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 [27].

-----
[29] How do I use XBoard as an external viewer for PGN files with NCSA Mosaic
  or Netscape?

1) 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

2) 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

3) Exit from Mosiac and restart it.  To confirm that XBoard is working as an
external viewer, open the following URL, click on "Kasparov, Gary Kimovich",
and then click on any of the game names shown.

http://www.traveller.com/scripts/chess_players?Kasparov

For some reason that we don't quite understand, games under the above URL
don't cause XBoard to be started when you are using Netscape; they work only
with NCSA Mosaic.  Games under the following URL work with both.

http://www.ub.uit.no/chess/pgn/gamelist.html

-----
[30] 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.]

-----
[31] Does XBoard run on VMS?

No.  But please send mail to info-gnu-chess@prep.ai.mit.edu if you port
XBoard to VMS!

-----
** End of GNU Chess FAQ **
Technical Details
Message-ID: <3ig8nj$ha6@src-news.pa.dec.com>
Path: arc1-ca.pugleaf.net!nntp.gmd.de!stern.fokus.gmd.de!gmdtub!cs.tu-berlin.de!fu-berlin.de!news.dfn.de!swiss.ans.net!gatech!psuvax1!news.pop.psu.edu!hudson.lm.com!godot.cc.duq.edu!ddsw1!rahul.net!a2i!olivea!decwrl!pa.dec.com!src.dec.com!mann
References: <D4CI1D.63F@nl.oracle.com>

Show Full Headers
Complete Article Headers
X-Google-Language: ENGLISH,ASCII-7-bit
X-Google-Thread: 10d71d,f797491b157b96ea
X-Google-Attributes: gid10d71d,public
X-Google-ArrivalTime: 1995-02-22 13:01:39 PST
Path: arc1-ca.pugleaf.net!nntp.gmd.de!stern.fokus.gmd.de!gmdtub!cs.tu-berlin.de!fu-berlin.de!news.dfn.de!swiss.ans.net!gatech!psuvax1!news.pop.psu.edu!hudson.lm.com!godot.cc.duq.edu!ddsw1!rahul.net!a2i!olivea!decwrl!pa.dec.com!src.dec.com!mann
From: mann@src.dec.com (Tim Mann)
Newsgroups: gnu.chess
Subject: Re: Help: xboard *very* slow
Message-ID: <3ig8nj$ha6@src-news.pa.dec.com>
Date: 22 Feb 95 21:01:39 GMT
References: <D4CI1D.63F@nl.oracle.com>
Organization: DEC Systems Research Center
Lines: 839
NNTP-Posting-Host: src-mail.pa.dec.com