From jansteen@cwi.nl Wed Aug  5 02:02:02 1992
Received: from bashful.u.washington.edu by milton.u.washington.edu
	(5.65/UW-NDC Revision: 2.22 ) id AA28777; Wed, 5 Aug 92 02:01:57 -0700
Received: from charon.cwi.nl by bashful.u.washington.edu
	(5.65/UW-NDC Revision: 2.22 ) id AA07173; Wed, 5 Aug 92 02:01:47 -0700
Received: from konijn.cwi.nl by charon.cwi.nl with SMTP
	id AA01451 (5.65b/2.10/CWI-Amsterdam); Wed, 5 Aug 1992 11:01:42 +0200
Received: by konijn.cwi.nl 
	id AA11447 (5.65b/2.10/CWI-Amsterdam); Wed, 5 Aug 1992 11:01:39 +0200
Date: Wed, 5 Aug 1992 11:01:39 +0200
From: Jan.van.der.Steen@cwi.nl
Message-Id: <9208050901.AA11447.jansteen@konijn.cwi.nl>
To: adrian@u.washington.edu
Subject: IGS LaTeX manual --- version 1.3
Status: R

% File                : igs.tex
% Version             : 1.3
% Modified            : 8/5/92 10:58:01
% Additions/changes to: jansteen@cwi.nl

\documentstyle{article}

%
% Dimensions
%
\setlength{\parskip}	{5pt}
\setlength{\parindent}	{0pt}

%
% Files and ftp sites
%
\newcommand{\ftp}{{\tt ftp.u.washington.edu}}
\newcommand{\mgt}{{\tt public/go/mgt.22.sh.Z}}
\newcommand{\xgoban}{{\tt public/go/xgoban-1.0.sh.Z}}
\newcommand{\smartps}{{\tt public/go/smart2ps32.sh.Z}}
\newcommand{\xigs}{{\tt public/go/xigs\_v1.0.sh.Z}}
\newcommand{\igs}{{\tt public/go/igs040.sh.Z}}
\newcommand{\pcigs}{{\tt public/go/pcig303z.exe}}
\newcommand{\macigs}{{\tt public/go/gs039.sit.hqx}}

%
% Macros
%
\newcommand{\cmd}[1]{{\bf #1}}
\newcommand{\val}[1]{{\it #1}}
\newcommand{\Help}[1]{\subsection{\bf #1}}
\newcommand{\Usage}[1]{{\tt #1}}
\newcommand{\Nohelp}[1]{No description available for {\bf #1}}
\newcommand{\Seealso}[1]{\par See also: {\bf #1}}
\newcommand{\centerheader}[1]{\bigskip\centerline{\bf #1}}
\newcommand{\Section}[1]{\newpage\section{#1}}

%
% Re-definitions
%
\renewcommand{\.}[1]{{\small\sf #1}}

%
% Titlepage
%
\author{IGS system administration}
\title{{\bf IGS}\\
    \bigskip
    --- {\em The International Go Server} ---
}

\begin{document}

\maketitle
\thispagestyle{empty}
\clearpage

\tableofcontents

\Section{Introduction}

Many people have discovered the wonderful world of the
International Go Server (IGS). Some go there to play a game,
some to watch a game, some just to talk to a remote friend
(who they actually might never have seen!).
But basically, the IGS is a lively international Go club,
open 24 hours daily and probably one of the strongest amateur
Go club ever.

This manual will show you the possibilities of the IGS and can
be used as both an introduction and reference manual.

(By the way, this manual is compiled from the online help files
available on the IGS itself!)

%% #[Command overview:
\Section{Command overview}

The commands are divided into four groups: commands which are
valid at any time, commands during playing and scoring, commands
while waiting for an opponent and the system maintenance
(privileged) commands.

\centerheader{Any time}

\begin{center}
\begin{verbatim}
    address 	info    	quit    	stored
    all     	last    	rank    	tell
    best    	look    	ranks   	thist
    chars   	mail    	refresh 	time
    decrease	message 	reset   	toggle
    delete  	moves   	sgf     	uptime
    games   	password	shout   	watching
    help    	players 	stats   	who
    increase
\end{verbatim}
\end{center}

\centerheader{While playing/scoring}

\begin{center}
\begin{verbatim}
    addtime 	done    	komi    	save
    adjourn 	handicap	pass    	say
    coords  	kibitz  	resign
\end{verbatim}
\end{center}

\centerheader{While waiting}

\begin{center}
\begin{verbatim}
    decline 	load    	match   	observe
    kibitz
\end{verbatim}
\end{center}

\centerheader{Privileged command}

\begin{center}
\begin{verbatim}
    connect 	kill    	remove  	super
    dump    	rehash  	shutdown	xshout
\end{verbatim}
\end{center}

%%\Seealso{playing scoring observing waiting anytime supervisor}
%%Extra help:  accountremoval ftp interface manyfaces

%% #]Command overview: 
%% #[address:

\Help{address}
\Usage{address Email-address}

Sets your current Email address to \val{Email-address}. The address
must contain a '@' and a '.', or be 'None'.

Example:

\begin{verbatim}
    tcasey@adobe.com
\end{verbatim}

It then saves the player to disk.  It is important to make your address
correct. I have already had trouble with people sending to
\underline{aliases} on campus (of about 100+ people). If this
continues, I will remove the mail feature.

\Seealso{connect password toggles}

%% #]address: 
%% #[addtime:

\Help{addtime}
\Usage{addtime \#}

Addtime adds \val{\#} to the your \underline{opponent}'s clock.

%%\Seealso{}
%% #]addtime: 
%% #[adjourn:

\Help{adjourn}
\Usage{adjourn}

Request the adjournment of the game.  The game will be
saved --- you may want to save first it so it may be started
later. Adjourn is also used to agree to adjourn.

\Seealso{decline, stored, save}

%% #]adjourn: 
%% #[all:

\Help{all}
\Usage{all \#}

List who is observing game \val{\#}.

\Seealso{observe, match}

%% #]all: 
%% #[best:

\Help{best}
\Usage{best [count]}

List the best players registered with the server.
If \val{count} is supplied, then \val{count} lines are listed.

\Seealso{stat ranking}

%% #]best: 
%% #[chars:

\Help{chars}
\Usage{chars BWEDTtSc}

Chars set the characters used to draw the board. The characters are
as follows:

\begin{center}
    \begin{tabular}{l l c}
	   & {\bf Meaning}	& {\bf Default}	\\
	B  & Black		& \#		\\
	W  & White		& @		\\
	E  & Empty		& .		\\
	D  & Dame		& .		\\
	T  & White territory	& .		\\
	t  & Black territory	& .		\\
	S  & Startpoint		& +		\\
	c  & Counted		& .		\\
    \end{tabular}
\end{center}

%% #]chars: 
%% #[connect:

\Help{connect}
\Usage{connect username}

Displays the address of the connection from \val{username} and what the
\val{username's} file descriptor number is.  Allows tracing of a player to
a site.

\Seealso{address stats who}

%% #]connect: 
%% #[coords:

\Help{coords}

The coordinate system used by this server is [A\dots Z][1\dots 25],
depending on the board size.  'I' is not a valid letter.
The maximum board size is 25.

On a 19x19 board A1 is upper left, T19 is lower right,
D4 is a Star Point.

Blacks first move can be the handicap: \cmd{Handicap \#}, where
\cmd{\#}\ is the number of stones. \cmd{\#} has to be between 2 and 9
inclusive.

During the game \cmd{pass} is also a valid move.  It takes 3
passes to score a game. (See match)

Undo is also valid during a game and during scoring.

\Seealso{match undo}

%% #]coords: 
%% #[decline:

\Help{decline}
\Usage{decline}

Refuse a match, after someone has offered one.

\Seealso{open match}

%% #]decline: 
%% #[decrease:

\Help{decrease}
\Usage{decrease}

Decrease raises your rank, as shown by \cmd{stats}, and \cmd{who}.

\Seealso{increase stats ranks rank who}

%% #]decrease: 
%% #[delete:

\Help{delete}
\Usage{delete filename}

Deletes a stored game. The \val{filename} has the form:
{\tt whiteplayer-blackplayer}.

\Seealso{stored}

%% #]delete: 
%% #[done:

\Help{done}
\Nohelp{done}

%% #]done: 
%% #[dump:

\Help{dump}
\Nohelp{dump}

%% #]dump: 
%% #[games:

\Help{games}
\Usage{games [\#]}

List the games currently in progress.  White is always listed
first. If \val{\#} is supplied, it is the only game listed.

Example:

\begin{small}
\begin{verbatim}
    [##]  white name [ rk]      black name [ rk] (Move size H-cap Komi)
    [ 0]       peter [ 3d] vs.     catcher [ 2d] ( 79   19    0    5.5)
    [ 1]    Tortoise [10k] vs.     bertram [10k] (118   19    0    0.5)
    [ 2]         rem [ 3k] vs.         bmw [ NR] ( 25    5    0    5.5)
\end{verbatim}
\end{small}

In the header, {\small\tt \#\#} is the game number and
{\small\tt [rk]} are the players ranks.

\Seealso{watching all}

%% #]games: 
%% #[handicap:

\Help{handicap}
\Usage{handicap \#}

This should be black's first command after starting a game
to place \val{\#} of handicap stones.

\Seealso{coords match}

%% #]handicap: 
%% #[help:

\Help{help}
\Usage{help [command]}

Give general help or about a specific \val{command}.
%%Extra help can be obtained for: ftp, interface, manyfaces and accountremoveal.

%%\Seealso{commands playing scoring observing waiting anytime}

%% #]help: 
%% #[increase:

\Help{increase}
\Usage{increase}

Increase raises your rank, as shown by \cmd{stats}, and \cmd{who}.

\Seealso{decrease stats ranks rank who}

%% #]increase: 
%% #[info:

\Help{info}
\Usage{info [message]}

Sets the your info to be \val{message}.  It will handle up to 255
characters.  Be warned that some terminals only display 80 
columns.

\Seealso{games stats toggle}

%% #]info: 
%% #[kibitz:

\Help{kibitz}
\Usage{kibitz [\#] message}

Sends \val{message} to the observation list of game \val{\#}. \val{\#} may be
omitted if you are observing only one game or are playing.  The 
message is limited to 184 characters.  (Usually, telnet will allow 
you to type in 255.)  Players do not see kibitzes.

There is a short hand \cmd{kibitz}: a single quote, ``'''.
The game number is only necessary if you are observing more than
one game.  When one uses the short hand one needs the space after
the single quote.

Example:

\begin{verbatim}
    #> ' W dead.
        ^----------------NOTE:  a space after "'".
\end{verbatim}

produces: 

\begin{verbatim}
    Kibitz observer [rk]: Game white vs black [#]
      W dead.
\end{verbatim}

\Seealso{observe say shout tell}

%% #]kibitz: 
%% #[kill:

\Help{kill}
\Usage{kill username}

Removes the logged in \val{username} from the server.  Have to be the
\.{SUPERVISOR} to use this command.  You can remove yourself, 'Logon',
and any other name listed by \cmd{who}.

\.{SUPERVISOR} is defined in config.h

\Seealso{who}

%% #]kill: 
%% #[komi:

\Help{komi}
\Usage{komi \#}

One player types in \cmd{komi \#}.  A message is sent to both players
informing them of the value that player wanted.  The second player
types in \cmd{komi \#}, where \val{\#} is the same value.
The server then changes the value of the komi, for the game.

\val{\#} is an integral value for the komi.
\val{\#} is allowed to be negative. 0.5 is automatically added to the
komi, after both players agree on a value.

After a handicap move, the komi is set to 0.5. Otherwise the
default is 5.5.

%%\Seealso{}

%% #]komi: 
%% #[last:

\Help{last}
\Usage{last [username [count]]}

Lists the users who used the server recently. If given a \val{username},
lists that usernames' past 20 logins.  If given a \val{count}, lists the
last val{count} logins.

\Seealso{who games}

%% #]last: 
%% #[load:

\Help{load}
\Usage{load filename}

Load a saved game.  You must remember the file name.
The \val{filename} will be of the form {\tt whiteplayer-blackplayer}.

\Seealso{adjourn hold look save stored}

%% #]load: 
%% #[look:

\Help{look}
\Usage{look filename}

Look at saved game.  You must know the filename \val{filename}.
It will be of the form {\tt whiteplayer-blackplayer}.
You can not load other people's game.

\Seealso{adjourn hold load save stored}

%% #]look: 
%% #[mail:

\Help{mail}
\Usage{mail address filename}

This mails the game \val{filename} to the \val{address} specified.
Like \cmd{load} the filename is {\tt whiteplayer-blackplayer}.
The game record is in \.{SGF} format with both the \cmd{say}
and \cmd{kibitz} comments in it too.
The game had to have already completed, not adjourned.

Please use your correct address.  I get the mail that is
not correctly addressed.  A correct address has to at least
have '@', and '.' in the address.

\Seealso{automail}

%% #]mail: 
%% #[match:

\Help{match}
\Usage{match username [color [size [time]]]}

Offer a game to an opponent or accept one offered
to you.  You must supply your prospective opponent's
name.  Optional arguments are your \val{color}, the \val{size} of the board,
and allotted \val{time} for the match.  If you do not supply the
color the offering player is black (the second player to
type \cmd{match opponent} is white.)  The default board
size is 19 and the default match time is one and one half
hour per person.  The \val{color} argument is 'W' or 'B'. Both
\val{size} and \val{time} are integers.
Time is measured in minutes.

The first move by black can be \cmd{handicap \#} where \val{\#} is the
number of handicap stones.  See the \cmd{coord} help file.

\cmd{pass} is how you go from playing to scoring.  At the end of
the game, after all dame have been filled, it takes three
passes to score a game.  The prompt will change from
``\#$>$'' to ``Enter Dead Groups:''  Enter the coords of groups
which are dead and the server will erase the dead groups.
Type \cmd{done} to score.  If you make a mistake while scoring,
\cmd{undo} will restore the board.

\Seealso{coords decline games open quiet refresh say verbose}

%% #]match: 
%% #[message:

\Help{message}
\Usage{message [username message]}

With the \val{username} and \val{message}, \cmd{message} appends that string
onto the message file of \val{username}.  
Example:

\begin{verbatim}
    message tim fix the server.
\end{verbatim}

Will add:

\begin{verbatim}
   from player: fix the server.
\end{verbatim}

to tim's message file.

Without the username and message, you read your messages. After you
read them, they are gone.

An announcement is make: {\em You have messages.}, just after the motd
(message of the day).

\Seealso{stats}

%% #]message: 
%% #[moves:

\Help{moves}
\Usage{moves [\#]}

List all of the moves of game \val{\#}. The default game is your own.

\Seealso{observing all watching}

%% #]moves: 
%% #[observe:

\Help{observe}
\Usage{observe \#}

Puts you on the observation list of game \val{\#}.
You can be on multiple observation lists.  To quit observing
a game type \cmd{observe \#} again. The white player is listed
first in reports.

\Seealso{watching all match}

%% #]observe: 
%% #[pass:

\Help{pass}
\Nohelp{pass}

%% #]pass: 
%% #[password:

\Help{password}
\Usage{password <new password>}

Sets your current password to the \val{$<$new password$>$} given.
A password must be at least five characters long.

\Seealso{toggle address}

%% #]password: 
%% #[players:

\Help{players}
\Usage{players}

List who is currently logged in to the server.
The information in who is:

\begin{small}
\begin{verbatim}
Info      Name       Idle  Rank      : Info   Name       Idle  Rank
 QX -- -- tim          1   4k
                           ^^^----The player's ranking.
                      ^^^---------The player's idle time, in minutes.
          ^^^^^^^^^^^-------------The player's name.
       ^^-------------------------The game number the player is playing.
    ^^----------------------------The first game being observed.
^^^-------------------------------The player's current state.
\end{verbatim}
\end{small}

If there is a {\small\tt Q} under the info it means the player has quiet 
set (ie. not listening to shouts).  If there is an 
{\small\tt X} under the info, it means the person is not accepting matches.
If there is a {\small\tt !} under info, it means the person is looking for
a match.

\Seealso{games stats toggle who}

%% #]players: 
%% #[quit:

\Help{quit}
\Usage{quit}

Quit the go server. If you are playing, it attempts to save your game.

\Seealso{load save}

%% #]quit: 
%% #[rank:

\Help{rank}
\Usage{rank <number><class>}

Set your rank.

\begin{center}
    \begin{tabular}{l l}
	k: & Kyu; 30 kyu is the lowest, goes to 1 kyu		\\
	d: & Amateur dan; 1 dan is the lowest, goes to 9 dan	\\
	p: & Professional dan; same as above			\\
    \end{tabular}
\end{center}

Example:

\begin{verbatim}
	rank 4k
	rank 6d
\end{verbatim}

At this time it does not deal with ``non-standard'' ranks.

\Seealso{decrease increase ranks}

%% #]rank: 
%% #[ranks:

\Help{ranks}
\Usage{ranks}

Shows the currently supported ranks.

\begin{center}
    \begin{tabular}{l l}
	k: & Kyu; 30 kyu is the lowest, goes to 1 kyu		\\
	d: & Amateur dan; 1 dan is the lowest, goes to 9 dan	\\
	p: & Professional dan; same as above			\\
    \end{tabular}
\end{center}

There are also various other ranks (currently two).
They should be self explanatory.

\Seealso{decrease increase rank}

%% #]ranks: 
%% #[refresh:

\Help{refresh}
\Usage{refresh [\#]}

Redraws the board of game \val{\#}.
If verbose is off, refresh lists the past move.
If \val{\#} is given, redraw that game.

\Seealso{verbose}

%% #]refresh: 
%% #[rehash:

\Help{rehash}
\Nohelp{rehash}

%% #]rehash: 
%% #[remove:

\Help{remove}
\Nohelp{remove}

%% #]remove: 
%% #[reset:

\Help{reset}
\Usage{reset}

After typing reset twice, during any one session on the server,
your won/lost record will be reset.

\Seealso{stats}

%% #]reset: 
%% #[resign:

\Help{resign}
\Usage{resign}

Resign the game that you are currently playing.

\Seealso{adjourn}

%% #]resign: 
%% #[save:

\Help{save}
\Usage{save}

Saves the current game you are playing.

\Seealso{load match mail}

%% #]save: 
%% #[say:

\Help{say}
\Usage{say message}

Say will deliver \val{message} to your opponent. It is only good
during games (when you have an opponent).  The message comes out
in the same format as tell.

\Seealso{tell shout}

%% #]say: 
%% #[sgf:

\Help{sgf}
\Usage{sgf username}

Shows you the listing of games that are saved in Smart Go
Format.  Each line of the listing corresponds to a completed
game.  The \val{username} '-' will match everyones' games.
If I wanted to look for {\em joebob}'s games, \cmd{sgf joebob} would do
the trick.

Each game is listed on a line of it's own.

In order to view Smart Go Format games, you need to ftp from\\
\ftp\ and get \mgt.  Compile it and it will view \.{SGF} games.

\Seealso{ftp mail}

%% #]sgf: 
%% #[shout:

\Help{shout}
\Usage{shout message}

Send the one line \val{message} to everybody.

\Seealso{tell shout}

%% #]shout: 
%% #[shutdown:

\Help{shutdown}
\Usage{shutdown [minutes]}

Starts the shutdown process.  If \val{minutes} is given,
the server will send out a down message every minute.
The server automatically adjourns games and kills connections.

Without an argument, the server uses \.{DEFAULT\_SHUTDOWN\_TIME}
minutes.

One must be \.{SUPERVISOR} to run shutdown.

Both \.{DEFAULT\_SHUTDOWN\_TIME} and \.{SUPERVISOR} are in config.h

\Seealso{}

%% #]shutdown: 
%% #[stats:

\Help{stats}
\Usage{stats [username]}

Lists the rank, wins, losses, and the last time \val{username}
typed info into the server (not the last log in time). Also 
lists the account's email address, if specified, as well as
his toggle settings.  There is a line, 255 characters long,
of {\em finger} info.

\Seealso{who}

%% #]stats: 
%% #[stored:

\Help{stored}
\Usage{stored}

Shows you the listing of games you have saved.
Each line of the listing corresponds to a saved game.

Example:

\begin{verbatim}
    6620  6620 Jun  4 15:21 (igs)xzhao-jansteen
\end{verbatim}

(6620 is the size of the file.)

\Seealso{delete load save}

%% #]stored: 
%% #[super:

\Help{super}
\Usage{super}

Gives the person, if they are in the supervisor database, power
to use the privileged commands.  Once empowered, there is no going
back, until that person logs out.

\Seealso{}

%% #]super: 
%% #[tell:

\Help{tell}
\Usage{tell username message}

Send \val{message} to \val{username}.  Current one line
messages are the limit.  The \val{username} argument may be '.'.
In that case, it sends the message to the last person
you used \cmd{tell} with.  The \val{username} argument may also be '\$'.
The recipient will be the last user to log in, or the last user
listed by \cmd{who}.

As a short cut to ``\cmd{tell . message}'', the server understands 
``\cmd{. message}''.

\Seealso{say shout who}

%% #]tell: 
%% #[time:

\Help{time}
\Usage{time \#}

Tells how much time is left in game \val{\#}.

\Seealso{games refresh}

%% #]time: 
%% #[toggle:

\Help{toggle}
\Usage{toggle option [value]}

Toggle changes the \val{option} given.
If given no \val{value}, \cmd{toggle} sets the specified option
to the opposite of what it was.  Valid options:

\begin{itemize}
    \setlength{\labelwidth}{2cm}
    \setlength{\leftmargin}{2cm}
    \item[automail]
	Have the server mail you moves after you 
	complete a match (check you e-mail address).
    \item[bell]
	If your bell will ring on redraw of boards.
    \item[open]
	If 'On' then you are available to accept
	\cmd{match} requests from other players.  Other 
	wise you never know about them.  If you are 
	playing you do not get match requests.
    \item[looking]
	Really want to play, shows a '!' under info.
    \item[quiet]
	If set then you do not hear about people
	logging in/out, game results, and shouts.
	This flag does not stop shutdown messages.
    \item[verbose]
	If set then full boards will be sent to you,
	otherwise only the last 4 moves will be sent.
    \item[client]
	Sets the server to transmit to a client.  Implies
	\cmd{toggle verbose true}.
\end{itemize}

Valid values (case insensitive):

\begin{verbatim}
     true, false, on, off, 0, 1.
\end{verbatim}

\Seealso{match stats who}

%% #]toggle: 
%% #[uptime:

\Help{uptime}
\Usage{uptime}

Gives the current time, in local time and \.{GMT}.
Gives the amount of time the server has been up.

%% #]uptime: 
%% #[thist:

\Help{thist}
\Usage{thist [username [count]]}

Looks at the results of the games that have been played recently.
If given a \val{username} to look for, lists that usernames last 20 results.
If given a \val{count}, lists the last \val{count} results for the given
person.

\Seealso{}

%% #]thist: 
%% #[watching:

\Help{watching}
\Usage{watching}

Shows the games currently being observed by you.

\Seealso{observe}

%% #]watching: 
%% #[who:

\Help{who}
\Usage{who}

List who is currently logged in to the server.
The information in who is:

\begin{small}
\begin{verbatim}
Info      Name       Idle  Rank      : Info   Name       Idle  Rank
 QX -- -- tim          1   4k
                           ^^^----The player's ranking.
                      ^^^---------The player's idle time,
                                  ##d, ##h, ##m ##s,
                                  for days, hours, minutes, seconds.
          ^^^^^^^^^^^-------------The player's name.
       ^^-------------------------The game number the player is playing.
    ^^----------------------------The first game being observed.
^^^-------------------------------The player's current state.
\end{verbatim}
\end{small}

If there is a {\small\tt Q} under the info it means the player has quiet 
set (ie. not listening to shouts).  If there is an 
{\small\tt X} under the info, it means the person is not accepting matches.
If there is a {\small\tt !} under info, it means the person is looking for
a match.

\Seealso{games stats toggle}

%% #]who: 
%% #[xshout:

\Help{xshout}
\Nohelp{xshout}

%% #]xshout: 

\Section{IGS sites}

Currently, there are three IGS servers supported throughout the world.
Two servers are in the USA, and one is situated in France, Europe.
You can make connection to one of the International Go Servers
with the program {\em telnet}. The telnet takes as arguments
the address of the machine you want to connect to and the
number of the port of that machine.
The internet addresses and port numbers of the servers are:

\begin{center}
    \begin{tabular}{l l l}
	{\bf host}		  & {\bf host}	  & {\bf port}	\\
	\hline
	icsib18.icsi.berkeley.edu & 128.32.201.46 & 6969	\\
	lacerta.unm.edu		  & 129.24.14.70  & 6969	\\
	cnam.cnam.fr		  & 192.33.159.6  & 6969	\\
    \end{tabular}
\end{center}

Of these three servers currently the Berkeley server is the most
popular one. The reason is that most players on the IGS are
living in the USA and the large disk capacity of the computer in
Berkeley. The other two sites are mainly serving as a backup
facility in case the Berkeley server is down.

\Section{IGS related software}

You can communicate with the IGS by using {\em telnet} as described
in the previous section. But usually the users prefer to use one
of the IGS clients available. A client program will interpret the
messages received from the IGS and display them in a more pleasant
way. For example, if you are running X windows then you should
definitely use the X client. It will display the Go board using
graphics rather then ascii and it will enable you to play Go
using the mouse instead of entering coordinates.

The client programs are available by anonymous ftp from\\
\ftp\ in the directory {\tt public/go}.
The currently supported client programs are:

\begin{center}
    \begin{tabular}{l l l}
	{\bf Program}	  & {\bf Machine} & {\bf window system}	\\
	\hline
	\xigs		  & {\em Any}	  & X windows		\\
	\igs		  & {\em Any}	  & curses		\\
	\macigs		  & Macintosh	  & Macintosh		\\
	\pcigs		  & PC compatible & VGA			\\
    \end{tabular}
\end{center}

Three more programs of interest are: \mgt,\\
\xgoban\ and \smartps.
The first two programs can display game records (and comments) in
Smart Go Format.
The latter can convert these records to PostScript enabling you
to make a nice printout of your (or somebody else's!) game.

All three programs are available from \ftp.

\Section{Bug reports}

If you notice any bugs while using IGS please report these to:

\begin{verbatim}
    tcasey@adobe.com
\end{verbatim}

\Section{Suggestions}

If you have any suggestions for possible improvement of the IGS
or activities on the IGS please send them to either:

\begin{verbatim}
    tcasey@adobe.com
    hale@scam.berkeley.edu
\end{verbatim}

\end{document}

