If you have other questions about XBoard/WinBoard that aren't answered in this FAQ, you can try Aaron Tay's WinBoard and Chess Engines FAQ, at http://www.aarontay.per.sg/Winboard/.
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 XBoard, and WinBoard by anonymous FTP from ftp://ftp.gnu.org/pub/gnu/ and its many mirror sites. Look in the subdirectories xboard, and winboard. The .tar.gz suffix on the files there indicates they were packed with tar and compressed with gzip. The .exe or .zip suffixes indicate files that were packed and compressed with zip.
For other chess software, try the Internet Chess Library. Use anonymous FTP to connect to ftp.freechess.org, or go to the Web page http://www.freechess.org/. 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. The FTP server can automatically decompress files for you as you download them, useful if you don't have gzip.
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 ftp.gnu.org
Connected to ftp.gnu.org
Name: anonymous
Password: your-email-address@your-site
ftp> binary
200 Type set to I.
ftp> cd /pub/gnu/xboard
ftp> dir
-rw-r--r-- 1 14910 wheel 1057625 May 20 00:25 xboard-4.2.7.tar.gz
ftp> get xboard-4.2.7.tar.gz
150 BINARY connection for xboard-4.2.7.tar.gz (1057625 bytes).
226 Transfer complete.
ftp> quit
Bug reports, suggestions, and offers to help on XBoard or WinBoard should be sent to bug-xboard@gnu.org. (Note: as of 4 Nov 2003, this mailing list is temporarily broken. You can send mail to bug-xboard@tim-mann.org instead until it is fixed.)
Beginner questions and discussion about the program may get faster answers on the WinBoard Forum at http://f11.parsimony.net/forum16635/.
If you are developing a chess engine that works with XBoard or WinBoard (or an alternative GUI that works with such engines), see the Chess Engines mailing list, hosted at http://groups.yahoo.com/group/chess-engines.
Any time you want to report a possible bug in XBoard or WinBoard, we need to know exactly what you did, and exactly what error (or other) messages you got.
If you are using Unix, run the "script" program, run XBoard with the -debug flag (if you get as far as running it), 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, run WinBoard with the -debug flag, and send us a copy of the WinBoard.debug file. If you aren't sure how to add command-line flags to WinBoard, you can hit Ctrl+Alt+F12 to create a WinBoard.debug file after WinBoard starts, but that is not as good, because a few messages that would have been printed at the start are lost.
Either way, please send us the exact text of the commands you typed and the output you got, not just your recollection of approximately what they were. The messages may seem meaningless to you, but they are very meaningful to us and essential for diagnosing problems.
Our plans are always in flux. As with most free software projects, the next release will happen when it happens -- or it may never happen. This has always been the policy for XBoard/WinBoard. Releases have never been promised in specific time frames.
Starting in November 2003, several new developers have joined the project, and work is now hosted at https://savannah.gnu.org/projects/xboard/. Lots of work is just getting underway, but nothing is far along yet.
Here is a partial list of items that have a nonzero probability of happening in finite time.
Chess engines that will run on your machine and play a game against you or help you analyze, such as GNU Chess and Crafty (topic [D.3] below).
Chess servers on the Internet, where you can connect to play chess with people from all over the world, watch other users play, or just hang out and chat.
Correspondence chess played by electronic mail. The cmail program (topic [B.6] below) automates the tasks of parsing email from your opponent, playing his moves out on your board, and mailing your reply move after you've chosen it.
The Web and your own saved games. You can use XBoard as a helper application to view PGN games in your Web browser, or to load and save your own PGN files.
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 32-bit Microsoft Windows and to the Amiga. See topics [B.2] and [B.3] respectively.
The WinBoard distribution includes a port of GNU Chess 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.
The WinBoard distribution also includes the ICC timestamp and FICS timeseal programs (topic [B.12]).
cmail (topic [B.6]) has not been ported to Windows. All the other XBoard functions are included in WinBoard. The International Email Chess Group web site at http://www.iecg.org/ recommends ECTool (http://www.ectool.nu/) for playing correspondence chess under Windows.
You install WinBoard as follows. Download the WinBoard package to your PC (see topic [A.2]). It will be a file with a name like winboard-4_0_0.exe. Double-click on this file in the Explorer or File Manager to run it. Follow the on-screen prompts.
The current version of AmyBoard is 330.5 (based on XBoard 3.3.0). No one is currently maintaining it.
System requirements:
If you would like to use an ICS, you need an Internet connection via either
AmyBoard is available in the Internet Chess Library (topic [A.2]).
Next, decide what directory tree you are going to install XBoard in. The default is /usr/local, but you probably don't have write access to that directory unless you are a system administrator. If you do, type the following to install it there:
gzip -cd xboard-*.tar.gz | tar -xvf -
cd xboard-*/
./configure
make
su
make install
If you want to install xboard in your personal home directory ($HOME/bin),
type this:
gzip -cd xboard-*.tar.gz | tar -xvf -
cd xboard-*/
./configure --prefix=$HOME
make
make install
If the first step above fails because you don't have gzip, see topic [A.2], 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. Almost any Unix C compiler should do.
Instructions on how to get started with Internet chess are included with the XBoard and WinBoard distributions. The network addresses included in the distribution may not always be current. The oldest and largest ICS is the Internet Chess Club at chessclub.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). The most active FICS site is freechess.org. On these and most other chess servers, the port number to use is 5000.
If you don't have network connectivity to any ICS site, you can run your own server using a version of the FICS code, but this is not easy. See http://www.tim-mann.org/ics.html#ownics for advice and pointers.
The cmail program included with XBoard lets you play email postal games with another human; see topic [B.6].
Two humans can play chess on the same machine using one copy of XBoard/WinBoard in Edit Game mode, but the clocks don't run in this mode, so it's of limited usefulness.
See also topic [D.2], Winsock Chess.
WinBoard does not run on Windows CE (also known as Pocket PC). I don't know what would be required to port it.
WinBoard does run well on full 32-bit versions of Windows, such as Windows 95, 98, NT, 2000, ME, and XP, and should continue to work on future 32-bit Windows 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. The current version of WinBoard automatically configures itself as your PGN viewer for local files, Netscape 4.x and later, and Internet Explorer. This automatic setup probably works for all other current Web browsers, too.
If you are in a completely ordinary situation, where your machine is directly on the Internet and you can connect to ICC or FICS without timestamp/timeseal using just the command "xboard -ics" or "xboard -ics -icshost freechess.org", change that command to one of the following:
xboard -ics -icshost 204.178.125.65 -icshelper timestamp
xboard -ics -icshost 164.58.253.13 -icshelper timeseal
If you have a firewall between your machine and the ICS, see topic [B.19].
If you normally have to use the "/icscomm" command line option on xboard to log into a second machine, and then telnet to ICC or FICS from there, you are going to have to run the Unix version of timestamp or timeseal on the second machine. (If the second machine is not running Unix, you are out of luck.) Get the appropriate version of timestamp or timeseal onto the shell machine via FTP; see the help files on ICC and FICS for instructions. Then simply run it when you would normally run telnet. In this configuration you are not protected against lag between your PC and the shell machine, or for lag caused by heavy load on the shell machine itself from other users.
For further information on timestamp and timeseal, see the help files on ICC and FICS.
If you select an ICS from either the WinBoard Startup dialog or the Windows Start submenu that WinBoard installs, WinBoard automatically runs timestamp or timeseal if the ICS you chose is known to support it.
If you are constructing a WinBoard command line by hand, add the option "/icshelper timestamp" or "/icshelper timeseal" to the WinBoard command line to use timestamp or timeseal. Both timestamp.exe and timeseal.exe are included in the WinBoard distribution. They both function identically to the Unix versions, as documented in "help timestamp" on ICC and "help timeseal" on FICS.
If you have a firewall between your machine and the ICS, see topic [B.19].
If you normally have to use the "/icscomm" command line option on WinBoard to log into a shell account, and then telnet to ICC or FICS from there, you are going to have to run the Unix version of timestamp or timeseal on the shell machine. (If the shell account is not on a Unix machine, you are out of luck.) Get the appropriate version of timestamp or timeseal onto the shell machine via FTP; see the help files on ICC and FICS for instructions. Then simply run it when you would normally run telnet. In this configuration you are not protected against lag between your PC and the shell machine, or for lag caused by heavy load on the shell machine itself from other users.
For further information on timestamp and timeseal, see the help files on ICC and FICS.
XBoard and WinBoard can display only one board at a time, but you can observe your partner's game by running a second copy of the program and logging in as a guest. (Unfortunately, this is not possible if you are using the /icscomm option.) To observe your partner's games automatically, use the "follow" or "pfollow" ICS command; see the ICS online help for details.
Using a computer to choose your moves on a chess server is considered cheating unless your account is on the computer (C) list. Read "help computer" on your favorite server for details on their policy. Most of the servers have plenty of computers running now, so they will not be excited about having you run a new one unless you have written your own chess engine. They don't really need yet another Crafty or GNU Chess clone.
For documentation, see the file engine-intf.html, included in both distributions or available from my chess Web page, http://www.tim-mann.org/chess.html. The version of engine-intf.html on my Web page is often more up-to-date than those in the XBoard/WinBoard distributions.
WinBoard is currently developed using Microsoft Visual C++ 5.0. You can build the program from the MSVC++ GUI by opening the project file (winboard.dsp) and telling MSVC++ to build the project. You can also build it from the the command line by using the nmake program supplied with MSVC++.
To build WinBoard with the free Cygwin tools, available from http://www.cygwin.com/), use the command "make -f cygwin.mak". WinBoard 4.2.5 was successfully compiled with the net release of Cygwin as downloaded on 20-March-2001 (cygwin1.dll 1.1.8, gcc 2.95.2-6, binutils 20001221-1, flex 2.5.4-1), but exhibits a command-line parsing bug; see item 511 in the ToDo file that comes with WinBoard. WinBoard 4.1.0 does not compile with Cygwin. WinBoard 4.0.7 is known to compile with Cygwin BL20.1.
To build WinBoard with Borland C++ 4.5, use "borland.mak", supplied with the WinBoard sources, as the Makefile. Support for Borland C++ was contributed by Don Fong and has not been tested by the author of WinBoard.
WinBoard is a Win32 application, so you definitely need a compiler and tool set that supports Win32. In particular, older versions of DJGPP can build only 32-bit MSDOS programs; that is, programs that use a DOS extender to get a 32-bit address space and do not make any Windows calls. The latest versions of DJGPP are said to be able to build Win32 programs when used with the proper extension package(s), but this is not known to work with WinBoard. Use Cygwin instead.
See also topic [C.16].
There is no single answer to this question, because there are many different kinds of firewalls in use. They work in various different ways and have various different security policies. This answer can only provide hints.
Note that you can't access Internet Chess Servers through a Web proxy, because they are not a Web service. You talk to them through a raw TCP connection, not an HTTP connection. If you can only access the Web through a proxy, there may be a firewall that stops you from making direct TCP connections, but there may also be a way through it. Read on for hints, and contact your local system administrator if you need more information about your local configuration.
A helpful user mailed me the following explanation of how to use WinBoard with WinGate:
"I have managed to setup WinBoard though my WinGate proxy. I have the Office version. What I needed to do was to setup the TCP/IP connection to add the User/Host name and my provider service name for the DNS, but I had to leave the HOST IP address blank. I have not played with all the variations, so it may be just that I have the DNS lookup enabled."I hope this helps, though I don't find it very clear. I don't have a copy of WinGate myself and can't help if you have questions about it.
If you are using some other non-SOCKS firewall, read the FIREWALLS section in your XBoard or WinBoard documentation (man page, info document, or Help file). If you can telnet to a chess server in some way, then you can almost certainly connect to it with xboard/WinBoard, though in some cases you may not be able to run timestamp or timeseal. The timestamp and timeseal protocols require a clean, 8-bit wide TCP connection from your machine to the ICS, which some firewalls do not provide.
If you have a SOCKS firewall and are using XBoard, you should be able to SOCKSify xboard and use it. See http://www.socks.nec.com/ for information about SOCKS and socksification. However, if you do this, you can't use timestamp or timeseal; what you really need is a socksified version of timestamp or timeseal. This is hard because the source code for timestamp and timeseal is proprietary; the folks running the chess servers don't give it out because that would make it too easy to cheat. On some versions of Unix, you may be able to socksify a program that you don't have the source code to by running it with an appropriate dynamic library; see http://www.socks.nec.com/. For others, you might be able to get a pre-built socksified version from the chess server administrators. For timeseal versions, see ftp://ftp.freechess.org/pub/chess/timeseal/. For timestamp versions, the directory would be ftp://ftp.chessclub.com/pub/icc/timestamp/, but at this writing there don't seem to be any socksified timestamps there. Once you have a socksified timestamp or timeseal, simply run it with a normal, non-socksified xboard in place of the standard timestamp or timeseal.
If you have a SOCKS firewall and you are using WinBoard, we now know how to make this configuration work, complete with timestamp or timeseal!
Start by getting SocksCap32. This software is freely available from http://www.socks.nec.com/. Install it on your machine, read the documentation, and learn to use it. You may find it useful with many other programs besides WinBoard.
Next, don't socksify WinBoard. Socksifying WinBoard itself doesn't let you use it with timestamp or timeseal. For some reason I don't understand -- something strange that SocksCap32 does -- the socksified WinBoard runs but does nothing, and timestamp/timeseal runs all by itself in its own window.
Instead, use the following workaround. Follow the instructions exactly; don't try to skip steps or simplify things.
First, make SocksCap32 application profiles for timestamp and timeseal. Use the following command lines in the SocksCap32 profiles. Name the first profile "timestamp" and the second "timeseal".
"c:\program files\winboard\timestamp.exe" chessclub.com 5000 -p 5000
"c:\program files\winboard\timeseal.exe" freechess.org 5000 -p 5000
Second, run timestamp or timeseal by itself, socksified, using its profile. This will open an unneeded, black window that will not respond to typing. Minimize it to the task bar and ignore it. It will go away when you exit from WinBoard.
Next, run WinBoard using the following command line. Make a shortcut or type this command into an MS-DOS Prompt box. Don't run WinBoard itself socksified, just run it directly.
"c:\program files\winboard.exe" /ics /icshost=localhost /icsport=5000
After you get this working, you can try getting the timestamp window to auto-minimize by starting it from a shortcut instead of from the SocksCap32 control window. As it says in the SocksCap32 help file, put the following in the Target field of a shortcut's Properties page:
"c:\program files\sockscap32\sc32.exe" timestamp
Then select "Run: Minimized" on the same page. Do the same for timeseal.
Another method that can work is to use a .bat file to start both timestamp and WinBoard. It would look something like this:
REM --
REM -- icc.bat
REM -- Start timestamp under SocksCap32 and use WinBoard to connect to it.
REM -- The string "timestamp" refers to a SocksCap32 profile for timestamp.
REM -- Do not change it to the filename of the timestamp program!
REM --
start /minimized "c:\program files\sockscap32\sc32.exe" timestamp
cd "c:\program files\winboard"
winboard /ics /icshost=localhost /icsport=5000
This workaround has a problem if you want to run two copies of WinBoard at once, talking to the same chess server twice (for bughouse) or to two different chess servers. If you need to do that, you will need to run a separate copy of timestamp with a different port number for each connection. You'll need to make a second set of profile entries with a different value after the -p flag (say, 5001) and you'll need to change the WinBoard command line /icsport=5000 for the second WinBoard to match.
I believe chess.net provides a Win32 command-line version of accuclock that will work with WinBoard. Please see the documentation on the chess.net server itself; don't ask the author of WinBoard.
I don't know whether chess.net provides versions of accuclock for Unix at this time. Ask them.
By default, Zippy automatically sends the command "gameend" to ICS at the end of each game. You can alias this command (using the ICS "alias" feature) to anything you want. On ICC, you can use the "multi" feature to alias gameend to several commands, but other servers don't have that feature. Zippy doesn't send anything at the start of the game by default.
You can get Zippy to send one or more commands of your choosing, at the start and/or end of each game, by using the -zippyGameStart and -zippyGameEnd command line options, newly added in version 4.0.3. Both xboard and WinBoard have (somewhat obscure) ways of getting newlines into this option to send several commands. Here is an example of one way to do it for each.
xboard -ics -zp -xrm '*zippyGameStart: say hi\nsay prepare to die\n'
WinBoard /ics /zp /zippyGameEnd='say thanks\nseek 5 0\nseek 2 12\n'
See also topic [C.16].
There is no single answer to this question, because there are many different kinds of firewalls in use. They work in various different ways and have various different security policies. This answer can only provide hints.
Note that you can't access Internet Chess Servers through a Web proxy, because they are not a Web service. You talk to them through a raw TCP connection, not an HTTP connection. If you can only access the Web through a proxy, there may be a firewall that stops you from making direct TCP connections, but there may also be a way through it. Read on for hints, and contact your local system administrator if you need more information about your local configuration.
A helpful user mailed me the following explanation of how to use WinBoard with WinGate:
"I have managed to setup WinBoard though my WinGate proxy. I have the Office version. What I needed to do was to setup the TCP/IP connection to add the User/Host name and my provider service name for the DNS, but I had to leave the HOST IP address blank. I have not played with all the variations, so it may be just that I have the DNS lookup enabled."I hope this helps, though I don't find it very clear. I don't have a copy of WinGate myself and can't help if you have questions about it.
If you are using some other non-SOCKS firewall, read the FIREWALLS section in your XBoard or WinBoard documentation (man page, info document, or Help file). If you can telnet to a chess server in some way, then you can almost certainly connect to it with xboard/WinBoard, though in some cases you may not be able to run timestamp or timeseal. The timestamp and timeseal protocols require a clean, 8-bit wide TCP connection from your machine to the ICS, which some firewalls do not provide.
If you have a SOCKS firewall and are using XBoard, you should be able to SOCKSify xboard and use it. See http://www.socks.nec.com/ for information about SOCKS and socksification. However, if you do this, you can't use timestamp or timeseal; what you really need is a socksified version of timestamp or timeseal. This is hard because the source code for timestamp and timeseal is proprietary; the folks running the chess servers don't give it out because that would make it too easy to cheat. On some versions of Unix, you may be able to socksify a program that you don't have the source code to by running it with an appropriate dynamic library; see http://www.socks.nec.com/. For others, you might be able to get a pre-built socksified version from the chess server administrators. For timeseal versions, see ftp://ftp.freechess.org/pub/chess/timeseal/. For timestamp versions, the directory would be ftp://ftp.chessclub.com/pub/icc/timestamp/, but at this writing there don't seem to be any socksified timestamps there. Once you have a socksified timestamp or timeseal, simply run it with a normal, non-socksified xboard in place of the standard timestamp or timeseal.
If you have a SOCKS firewall and you are using WinBoard, we now know how to make this configuration work, complete with timestamp or timeseal!
Start by getting SocksCap32. This software is freely available from http://www.socks.nec.com/. Install it on your machine, read the documentation, and learn to use it. You may find it useful with many other programs besides WinBoard.
Next, don't socksify WinBoard. Socksifying WinBoard itself doesn't let you use it with timestamp or timeseal. For some reason I don't understand -- something strange that SocksCap32 does -- the socksified WinBoard runs but does nothing, and timestamp/timeseal runs all by itself in its own window.
Instead, use the following workaround. Follow the instructions exactly; don't try to skip steps or simplify things.
First, make SocksCap32 application profiles for timestamp and timeseal. Use the following command lines in the SocksCap32 profiles. Name the first profile "timestamp" and the second "timeseal".
"c:\program files\winboard\timestamp.exe" chessclub.com 5000 -p 5000
"c:\program files\winboard\timeseal.exe" freechess.org 5000 -p 5000
Second, run timestamp or timeseal by itself, socksified, using its profile. This will open an unneeded, black window that will not respond to typing. Minimize it to the task bar and ignore it. It will go away when you exit from WinBoard.
Next, run WinBoard using the following command line. Make a shortcut or type this command into an MS-DOS Prompt box. Don't run WinBoard itself socksified, just run it directly.
"c:\program files\winboard.exe" /ics /icshost=localhost /icsport=5000
After you get this working, you can try getting the timestamp window to auto-minimize by starting it from a shortcut instead of from the SocksCap32 control window. As it says in the SocksCap32 help file, put the following in the Target field of a shortcut's Properties page:
"c:\program files\sockscap32\sc32.exe" timestamp
Then select "Run: Minimized" on the same page. Do the same for timeseal.
Another method that can work is to use a .bat file to start both timestamp and WinBoard. It would look something like this:
REM --
REM -- icc.bat
REM -- Start timestamp under SocksCap32 and use WinBoard to connect to it.
REM -- The string "timestamp" refers to a SocksCap32 profile for timestamp.
REM -- Do not change it to the filename of the timestamp program!
REM --
start /minimized "c:\program files\sockscap32\sc32.exe" timestamp
cd "c:\program files\winboard"
winboard /ics /icshost=localhost /icsport=5000
This workaround has a problem if you want to run two copies of WinBoard at once, talking to the same chess server twice (for bughouse) or to two different chess servers. If you need to do that, you will need to run a separate copy of timestamp with a different port number for each connection. You'll need to make a second set of profile entries with a different value after the -p flag (say, 5001) and you'll need to change the WinBoard command line /icsport=5000 for the second WinBoard to match.
I believe chess.net provides a Win32 command-line version of accuclock that will work with WinBoard. Please see the documentation on the chess.net server itself; don't ask the author of WinBoard.
I don't know whether chess.net provides versions of accuclock for Unix at this time. Ask them.
By default, Zippy automatically sends the command "gameend" to ICS at the end of each game. You can alias this command (using the ICS "alias" feature) to anything you want. On ICC, you can use the "multi" feature to alias gameend to several commands, but other servers don't have that feature. Zippy doesn't send anything at the start of the game by default.
You can get Zippy to send one or more commands of your choosing, at the start and/or end of each game, by using the -zippyGameStart and -zippyGameEnd command line options, newly added in version 4.0.3. Both xboard and WinBoard have (somewhat obscure) ways of getting newlines into this option to send several commands. Here is an example of one way to do it for each.
xboard -ics -zp -xrm '*zippyGameStart: say hi\nsay prepare to die\n'
WinBoard /ics /zp /zippyGameEnd='say thanks\nseek 5 0\nseek 2 12\n'
See also topic [C.16].
There is no single answer to this question, because there are many different kinds of firewalls in use. They work in various different ways and have various different security policies. This answer can only provide hints.
Note that you can't access Internet Chess Servers through a Web proxy, because they are not a Web service. You talk to them through a raw TCP connection, not an HTTP connection. If you can only access the Web through a proxy, there may be a firewall that stops you from making direct TCP connections, but there may also be a way through it. Read on for hints, and contact your local system administrator if you need more information about your local configuration.
A helpful user mailed me the following explanation of how to use WinBoard with WinGate:
"I have managed to setup WinBoard though my WinGate proxy. I have the Office version. What I needed to do was to setup the TCP/IP connection to add the User/Host name and my provider service name for the DNS, but I had to leave the HOST IP address blank. I have not played with all the variations, so it may be just that I have the DNS lookup enabled."I hope this helps, though I don't find it very clear. I don't have a copy of WinGate myself and can't help if you have questions about it.
If you are using some other non-SOCKS firewall, read the FIREWALLS section in your XBoard or WinBoard documentation (man page, info document, or Help file). If you can telnet to a chess server in some way, then you can almost certainly connect to it with xboard/WinBoard, though in some cases you may not be able to run timestamp or timeseal. The timestamp and timeseal protocols require a clean, 8-bit wide TCP connection from your machine to the ICS, which some firewalls do not provide.
If you have a SOCKS firewall and are using XBoard, you should be able to SOCKSify xboard and use it. See http://www.socks.nec.com/ for information about SOCKS and socksification. However, if you do this, you can't use timestamp or timeseal; what you really need is a socksified version of timestamp or timeseal. This is hard because the source code for timestamp and timeseal is proprietary; the folks running the chess servers don't give it out because that would make it too easy to cheat. On some versions of Unix, you may be able to socksify a program that you don't have the source code to by running it with an appropriate dynamic library; see http://www.socks.nec.com/. For others, you might be able to get a pre-built socksified version from the chess server administrators. For timeseal versions, see ftp://ftp.freechess.org/pub/chess/timeseal/. For timestamp versions, the directory would be ftp://ftp.chessclub.com/pub/icc/timestamp/, but at this writing there don't seem to be any socksified timestamps there. Once you have a socksified timestamp or timeseal, simply run it with a normal, non-socksified xboard in place of the standard timestamp or timeseal.
If you have a SOCKS firewall and you are using WinBoard, we now know how to make this configuration work, complete with timestamp or timeseal!
Start by getting SocksCap32. This software is freely available from http://www.socks.nec.com/. Install it on your machine, read the documentation, and learn to use it. You may find it useful with many other programs besides WinBoard.
Next, don't socksify WinBoard. Socksifying WinBoard itself doesn't let you use it with timestamp or timeseal. For some reason I don't understand -- something strange that SocksCap32 does -- the socksified WinBoard runs but does nothing, and timestamp/timeseal runs all by itself in its own window.
Instead, use the following workaround. Follow the instructions exactly; don't try to skip steps or simplify things.
First, make SocksCap32 application profiles for timestamp and timeseal. Use the following command lines in the SocksCap32 profiles. Name the first profile "timestamp" and the second "timeseal".
"c:\program files\winboard\timestamp.exe" chessclub.com 5000 -p 5000
"c:\program files\winboard\timeseal.exe" freechess.org 5000 -p 5000
Second, run timestamp or timeseal by itself, socksified, using its profile. This will open an unneeded, black window that will not respond to typing. Minimize it to the task bar and ignore it. It will go away when you exit from WinBoard.
Next, run WinBoard using the following command line. Make a shortcut or type this command into an MS-DOS Prompt box. Don't run WinBoard itself socksified, just run it directly.
"c:\program files\winboard.exe" /ics /icshost=localhost /icsport=5000
After you get this working, you can try getting the timestamp window to auto-minimize by starting it from a shortcut instead of from the SocksCap32 control window. As it says in the SocksCap32 help file, put the following in the Target field of a shortcut's Properties page:
"c:\program files\sockscap32\sc32.exe" timestamp
Then select "Run: Minimized" on the same page. Do the same for timeseal.
Another method that can work is to use a .bat file to start both timestamp and WinBoard. It would look something like this:
REM --
REM -- icc.bat
REM -- Start timestamp under SocksCap32 and use WinBoard to connect to it.
REM -- The string "timestamp" refers to a SocksCap32 profile for timestamp.
REM -- Do not change it to the filename of the timestamp program!
REM --
start /minimized "c:\program files\sockscap32\sc32.exe" timestamp
cd "c:\program files\winboard"
winboard /ics /icshost=localhost /icsport=5000
This workaround has a problem if you want to run two copies of WinBoard at once, talking to the same chess server twice (for bughouse) or to two different chess servers. If you need to do that, you will need to run a separate copy of timestamp with a different port number for each connection. You'll need to make a second set of profile entries with a different value after the -p flag (say, 5001) and you'll need to change the WinBoard command line /icsport=5000 for the second WinBoard to match.
I believe chess.net provides a Win32 command-line version of accuclock that will work with WinBoard. Please see the documentation on the chess.net server itself; don't ask the author of WinBoard.
I don't know whether chess.net provides versions of accuclock for Unix at this time. Ask them.
By default, Zippy automatically sends the command "gameend" to ICS at the end of each game. You can alias this command (using the ICS "alias" feature) to anything you want. On ICC, you can use the "multi" feature to alias gameend to several commands, but other servers don't have that feature. Zippy doesn't send anything at the start of the game by default.
You can get Zippy to send one or more commands of your choosing, at the start and/or end of each game, by using the -zippyGameStart and -zippyGameEnd command line options, newly added in version 4.0.3. Both xboard and WinBoard have (somewhat obscure) ways of getting newlines into this option to send several commands. Here is an example of one way to do it for each.
xboard -ics -zp -xrm '*zippyGameStart: say hi\nsay prepare to die\n'
WinBoard /ics /zp /zippyGameEnd='say thanks\nseek 5 0\nseek 2 12\n'
See also topic [C.16].
There is no single answer to this question, because there are many different kinds of firewalls in use. They work in various different ways and have various different security policies. This answer can only provide hints.
Note that you can't access Internet Chess Servers through a Web proxy, because they are not a Web service. You talk to them through a raw TCP connection, not an HTTP connection. If you can only access the Web through a proxy, there may be a firewall that stops you from making direct TCP connections, but there may also be a way through it. Read on for hints, and contact your local system administrator if you need more information about your local configuration.
A helpful user mailed me the following explanation of how to use WinBoard with WinGate:
"I have managed to setup WinBoard though my WinGate proxy. I have the Office version. What I needed to do was to setup the TCP/IP connection to add the User/Host name and my provider service name for the DNS, but I had to leave the HOST IP address blank. I have not played with all the variations, so it may be just that I have the DNS lookup enabled."I hope this helps, though I don't find it very clear. I don't have a copy of WinGate myself and can't help if you have questions about it.
If you are using some other non-SOCKS firewall, read the FIREWALLS section in your XBoard or WinBoard documentation (man page, info document, or Help file). If you can telnet to a chess server in some way, then you can almost certainly connect to it with xboard/WinBoard, though in some cases you may not be able to run timestamp or timeseal. The timestamp and timeseal protocols require a clean, 8-bit wide TCP connection from your machine to the ICS, which some firewalls do not provide.
If you have a SOCKS firewall and are using XBoard, you should be able to SOCKSify xboard and use it. See http://www.socks.nec.com/ for information about SOCKS and socksification. However, if you do this, you can't use timestamp or timeseal; what you really need is a socksified version of timestamp or timeseal. This is hard because the source code for timestamp and timeseal is proprietary; the folks running the chess servers don't give it out because that would make it too easy to cheat. On some versions of Unix, you may be able to socksify a program that you don't have the source code to by running it with an appropriate dynamic library; see http://www.socks.nec.com/. For others, you might be able to get a pre-built socksified version from the chess server administrators. For timeseal versions, see ftp://ftp.freechess.org/pub/chess/timeseal/. For timestamp versions, the directory would be ftp://ftp.chessclub.com/pub/icc/timestamp/, but at this writing there don't seem to be any socksified timestamps there. Once you have a socksified timestamp or timeseal, simply run it with a normal, non-socksified xboard in place of the standard timestamp or timeseal.
If you have a SOCKS firewall and you are using WinBoard, we now know how to make this configuration work, complete with timestamp or timeseal!
Start by getting SocksCap32. This software is freely available from http://www.socks.nec.com/. Install it on your machine, read the documentation, and learn to use it. You may find it useful with many other programs besides WinBoard.
Next, don't socksify WinBoard. Socksifying WinBoard itself doesn't let you use it with timestamp or timeseal. For some reason I don't understand -- something strange that SocksCap32 does -- the socksified WinBoard runs but does nothing, and timestamp/timeseal runs all by itself in its own window.
Instead, use the following workaround. Follow the instructions exactly; don't try to skip steps or simplify things.
First, make SocksCap32 application profiles for timestamp and timeseal. Use the following command lines in the SocksCap32 profiles. Name the first profile "timestamp" and the second "timeseal".
"c:\program files\winboard\timestamp.exe" chessclub.com 5000 -p 5000
"c:\program files\winboard\timeseal.exe" freechess.org 5000 -p 5000
Second, run timestamp or timeseal by itself, socksified, using its profile. This will open an unneeded, black window that will not respond to typing. Minimize it to the task bar and ignore it. It will go away when you exit from WinBoard.
Next, run WinBoard using the following command line. Make a shortcut or type this command into an MS-DOS Prompt box. Don't run WinBoard itself socksified, just run it directly.
"c:\program files\winboard.exe" /ics /icshost=localhost /icsport=5000
After you get this working, you can try getting the timestamp window to auto-minimize by starting it from a shortcut instead of from the SocksCap32 control window. As it says in the SocksCap32 help file, put the following in the Target field of a shortcut's Properties page:
"c:\program files\sockscap32\sc32.exe" timestamp
Then select "Run: Minimized" on the same page. Do the same for timeseal.
Another method that can work is to use a .bat file to start both timestamp and WinBoard. It would look something like this:
REM --
REM -- icc.bat
REM -- Start timestamp under SocksCap32 and use WinBoard to connect to it.
REM -- The string "timestamp" refers to a SocksCap32 profile for timestamp.
REM -- Do not change it to the filename of the timestamp program!
REM --
start /minimized "c:\program files\sockscap32\sc32.exe" timestamp
cd "c:\program files\winboard"
winboard /ics /icshost=localhost /icsport=5000
This workaround has a problem if you want to run two copies of WinBoard at once, talking to the same chess server twice (for bughouse) or to two different chess servers. If you need to do that, you will need to run a separate copy of timestamp with a different port number for each connection. You'll need to make a second set of profile entries with a different value after the -p flag (say, 5001) and you'll need to change the WinBoard command line /icsport=5000 for the second WinBoard to match.
I believe chess.net provides a Win32 command-line version of accuclock that will work with WinBoard. Please see the documentation on the chess.net server itself; don't ask the author of WinBoard.
I don't know whether chess.net provides versions of accuclock for Unix at this time. Ask them.
By default, Zippy automatically sends the command "gameend" to ICS at the end of each game. You can alias this command (using the ICS "alias" feature) to anything you want. On ICC, you can use the "multi" feature to alias gameend to several commands, but other servers don't have that feature. Zippy doesn't send anything at the start of the game by default.
You can get Zippy to send one or more commands of your choosing, at the start and/or end of each game, by using the -zippyGameStart and -zippyGameEnd command line options, newly added in version 4.0.3. Both xboard and WinBoard have (somewhat obscure) ways of getting newlines into this option to send several commands. Here is an example of one way to do it for each.
xboard -ics -zp -xrm '*zippyGameStart: say hi\nsay prepare to die\n'
WinBoard /ics /zp /zippyGameEnd='say thanks\nseek 5 0\nseek 2 12\n'
See also topic [C.16].
There is no single answer to this question, because there are many different kinds of firewalls in use. They work in various different ways and have various different security policies. This answer can only provide hints.
Note that you can't access Internet Chess Servers through a Web proxy, because they are not a Web service. You talk to them through a raw TCP connection, not an HTTP connection. If you can only access the Web through a proxy, there may be a firewall that stops you from making direct TCP connections, but there may also be a way through it. Read on for hints, and contact your local system administrator if you need more information about your local configuration.
A helpful user mailed me the following explanation of how to use WinBoard with WinGate:
"I have managed to setup WinBoard though my WinGate proxy. I have the Office version. What I needed to do was to setup the TCP/IP connection to add the User/Host name and my provider service name for the DNS, but I had to leave the HOST IP address blank. I have not played with all the variations, so it may be just that I have the DNS lookup enabled."I hope this helps, though I don't find it very clear. I don't have a copy of WinGate myself and can't help if you have questions about it.
If you are using some other non-SOCKS firewall, read the FIREWALLS section in your XBoard or WinBoard documentation (man page, info document, or Help file). If you can telnet to a chess server in some way, then you can almost certainly connect to it with xboard/WinBoard, though in some cases you may not be able to run timestamp or timeseal. The timestamp and timeseal protocols require a clean, 8-bit wide TCP connection from your machine to the ICS, which some firewalls do not provide.
If you have a SOCKS firewall and are using XBoard, you should be able to SOCKSify xboard and use it. See http://www.socks.nec.com/ for information about SOCKS and socksification. However, if you do this, you can't use timestamp or timeseal; what you really need is a socksified version of timestamp or timeseal. This is hard because the source code for timestamp and timeseal is proprietary; the folks running the chess servers don't give it out because that would make it too easy to cheat. On some versions of Unix, you may be able to socksify a program that you don't have the source code to by running it with an appropriate dynamic library; see http://www.socks.nec.com/. For others, you might be able to get a pre-built socksified version from the chess server administrators. For timeseal versions, see ftp://ftp.freechess.org/pub/chess/timeseal/. For timestamp versions, the directory would be ftp://ftp.chessclub.com/pub/icc/timestamp/, but at this writing there don't seem to be any socksified timestamps there. Once you have a socksified timestamp or timeseal, simply run it with a normal, non-socksified xboard in place of the standard timestamp or timeseal.
If you have a SOCKS firewall and you are using WinBoard, we now know how to make this configuration work, complete with timestamp or timeseal!
Start by getting SocksCap32. This software is freely available from http://www.socks.nec.com/. Install it on your machine, read the documentation, and learn to use it. You may find it useful with many other programs besides WinBoard.
Next, don't socksify WinBoard. Socksifying WinBoard itself doesn't let you use it with timestamp or timeseal. For some reason I don't understand -- something strange that SocksCap32 does -- the socksified WinBoard runs but does nothing, and timestamp/timeseal runs all by itself in its own window.
Instead, use the following workaround. Follow the instructions exactly; don't try to skip steps or simplify things.
First, make SocksCap32 application profiles for timestamp and timeseal. Use the following command lines in the SocksCap32 profiles. Name the first profile "timestamp" and the second "timeseal".
"c:\program files\winboard\timestamp.exe" chessclub.com 5000 -p 5000
"c:\program files\winboard\timeseal.exe" freechess.org 5000 -p 5000
Second, run timestamp or timeseal by itself, socksified, using its profile. This will open an unneeded, black window that will not respond to typing. Minimize it to the task bar and ignore it. It will go away when you exit from WinBoard.
Next, run WinBoard using the following command line. Make a shortcut or type this command into an MS-DOS Prompt box. Don't run WinBoard itself socksified, just run it directly.
"c:\program files\winboard.exe" /ics /icshost=localhost /icsport=5000
After you get this working, you can try getting the timestamp window to auto-minimize by starting it from a shortcut instead of from the SocksCap32 control window. As it says in the SocksCap32 help file, put the following in the Target field of a shortcut's Properties page:
"c:\program files\sockscap32\sc32.exe" timestamp
Then select "Run: Minimized" on the same page. Do the same for timeseal.
Another method that can work is to use a .bat file to start both timestamp and WinBoard. It would look something like this:
REM --
REM -- icc.bat
REM -- Start timestamp under SocksCap32 and use WinBoard to connect to it.
REM -- The string "timestamp" refers to a SocksCap32 profile for timestamp.
REM -- Do not change it to the filename of the timestamp program!
REM --
start /minimized "c:\program files\sockscap32\sc32.exe" timestamp
cd "c:\program files\winboard"
winboard /ics /icshost=localhost /icsport=5000
This workaround has a problem if you want to run two copies of WinBoard at once, talking to the same chess server twice (for bughouse) or to two different chess servers. If you need to do that, you will need to run a separate copy of timestamp with a different port number for each connection. You'll need to make a second set of profile entries with a different value after the -p flag (say, 5001) and you'll need to change the WinBoard command line /icsport=5000 for the second WinBoard to match.
I believe chess.net provides a Win32 command-line versio