This is xigc Release v3.93 of 9/96

========================================================================

Please note:  Do not ask IGS administrators for help in compiling
or using xigc.  It just wastes their time, and they probably cannot
help anyway.  Send email to me for help....  Thanks!
					=S.Coffin
					scoffin@netcom.com

========================================================================

See "xigc.man" for full documentation and installation instructions.
Use "nroff -man xigc.man" to look at the file at your terminal, or
something like "troff -man xigc.man | lpr" to print it at your printer.
This release also includes a text-only version of the man page in
xigc.man.pr.


Short Installation instructions:

After unpacking the source distribution, use "xmkmf" followed by
"make depend" to generate a Makefile for your environment.  
If you do not have "xmkmf" or "imake," you may be able to adapt the file
"Makefile.hand," and use it as a Makefile for your system.  Then type
"make" and then "make install" to install xigc and igscomm in your
standard locations.

Note:  For this release, you can re-use your Makefile from v3.61 or
v3.7, but not from older xigc versions.

Make sure the file "XIgc.ad" is placed in your standard place for X11
application defaults (and named "XIgc") or added to your ".Xdefaults."
You can also do "xrdb -merge XIgc.ad" after you start X but before
running xigc.  You must do one of these things or xigc will not run!
"make install" should install this file correctly.

Note:  XIgc.ad has changed in v3.8, and older versions will not work.

	
Known Bugs and Major Problems:
	1.  This release includes several patches to help solve the "spinning
		telnet" or "hanging server" problem.  BUT:  There are still
		pathological cases where xigc can die leaving the telnet
		process running.  I STRONGLY recommend that you use igscomm
		instead of telnet as your communications program with xigc,
		as igscomm is not subject to this serious problem.
	2.  Sometimes a move is lost during transmission while loading a game
		or during Refresh(Host).  This only happens with telnet, and
		is another reason to use igscomm instead of telnet.  In this
		release, xigc will display an error message when this occurs,
		then stop displaying moves on the board.  Note that when you
		see the error message, the board will NOT be correct.  Try
		"Refresh (Host)" again until the error message stops appearing.
	3.  xigc should compile and run correctly with any installation of
		MIT X11R3, X11R4, X11R5, or X11R6 on any machine (including
		VMS!).  However, it seems that some IBM and DEC versions of X
		do not include the libXaw (Arrogant IBM thinks that their
		stupid Motif widgets replace the Athena widgets).  Also,
		xigc may not compile or run on X11R2 or earlier releases
		of X, or on some versions of SVR3 for 386 machines.  I have
		also heard some problems compiling on AIX 3.1, though 3.15
		and 3.2 should work if you have the Athena widgets.
		In any case, you should try building xigc anyway; it might
		work....
	4.  The second-by-second timer is a LOCAL timer in the xigc
		application.  It is only an approximation of the official
		time, which is kept by the server.  The time display may
		differ by a few seconds from the official time under some
		conditions.
	5.  Some systems are set up with a gateway, so that your machine
		is not directly connected to the internet.  Many universities
		and large businesses do this.  In this case, the local
		version of telnet connects first to the gateway, then out
		over the internet to IGS.  If you have this type of setup,
		you will not be able to use igscomm.  Normally when this
		happens xigc will just end immediately, possibly with a
		message like "host 128... not found."  If this happens to
		you, you will have to use telnet for your communications
		program with xigc.  You can continue to use the xigc "-c"
		command-line option, or place your communications command
		line in your .xigcrc file.  See xigc.man for more information.
		You might also be able to use "rlogin" or "cu" to connect to
		your gateway machine, and then run igscomm from there.
	6.  Some systems have some problems with the feature that allows
		you to type to the IGS command processor while the mouse
		cursor is over the board or menu window.  If you get an
		error message like this when you start xigc:

		X Error of failed request: BadAccess (attempt to access
			private resource denied)
		Major opcode of failed request:  33 (X_GrabKey)
		Serial number of failed request:  xxx
		Current serial number in output stream:  xxx

		If you see this message, you will have to recompile xigc.
		Edit the file xigc.c, and uncomment the line

		#define NOKEYGRAB

		near the top of xigc.c.  Then recompile.  This will disable
		the feature, but will allow xigc to run on your machine.
	7.  If you have the board size too small (smaller than about 400
		pixels), the end-of-game scoring will not appear.  This is
		an automatic feature of the Goban widget.  To see the scoring
		marks, you can use a larger board or select a smaller font
		in your application defaults.
	8.  You cannot use the IGS "alias" command with xigc.  If you have
		set some aliases while using telnet directly, then you must
		delete these aliases before using xigc.
	9.  The sgf reader (and support for the "review" command) is included
		in this release, but IT MAY HAVE PROBLEMS WITH SOME sgf
		formats.  I need to know what does not work before I can
		fix problems, so please tell me if you have some sgf that
		cannot be read by xigc.
	10. xigc only works with ENGLISH language.  Be sure to set your
		language on IGS to "english" or "default" only.  Behavior
		of xigc is not defined for other languages.
	11. This release has occasional problems loading games when you
		begin observing.  If you "observe" a game and you do not
		see the message "Adding game n to observation list,"
		then just repeat the observe command.  If you do see this
		message, but no moves appear on the board, just click
		"Refresh (Host)" to reload the moves.  I have been trying
		to fix this problem, but no luck so far.  Sorry!
	12. Because of some minor (but unresolved) differences between
		IGS and NNGS, I recommend that you do not use TERSEMODE
		when connecting to NNGS.  TERSEMODE works fine for IGS.
		If you have TERSEMODE set in your .xigcrc file, you can
		use the "toff" command to turn off TERSEMODE when you
		enter NNGS.

=======================================================================

Other Bugs, New Features and Improvements Needed:
	1.  Get passwd (cntrl-P) handling for xterm window;
		integrate chars coming in via stdin with chars coming in
		via X
	2.  Better sgf save of button 3 variations; variation editing?
	3.  Support board sizes other than 9, 13, and 19 lines?
	4.  Include komi in final end-of-game point count?
	5.  Separate window for conversations vs. game. shouts and login msgs ?
	6.  Some display wierdness in TERSE mode.
	7.  Multiple language support ?

=======================================================================

Changes in xigc from v3.92 to v3.93:

	1.  Support new "teach" syntax on IGS.  You can use the "step forward"
		and "step back" buttons with games you are teaching.
	2.  Enable 8-bit characters by default.  Set -DCHARS_7_BIT in
		your Makefile to restore old 7-bit characters.
	3.  Fix several minor bugs and problems.
	4.  Delete support for "review" command.

=======================================================================

Changes in xigc from v3.9 to v3.92:

	1.  Add a DEFINE to allow support of 8-bit chars.  This is useful
		if you use a language other than English, along with an 8-bit
		"xterm" clone such as "kterm" or "hanterm."  Set -DCHARS_8_BIT
		in your Makefile to enable this feature.
	2.  Support command codes for "stored" and "sgf."

=======================================================================

Changes in xigc from v3.8 to v3.9:

	1.  Fix pop-up dialog box so that a newline causes the
		"confirm" action.
	2.  Pick up server name from server for prompt.
	3.  Fix bug related to move and byo-yomi counting.
	4.  Add capability to specify 2 COMMAND lines in .xigcrc.
	5.  Fix bug related to display of games list, where first game
			may not be displayed.
	6.  Fix bug related to mis-parsing names on friends list.
	7.  Fix several minor bugs.
	8.  Support the "team" command.

=======================================================================

Changes in xigc from v3.7 to v3.8:

	1.  Fix several minor bugs, including some in the sgf reader.
		The sgf reader is beginning to work pretty well, so....
	2.  Add the capability to load and review sgf game files
		locally.  You can do this while connected to IGS,
		or you can start xigc in local mode without a connection.
		This release ignores sgf variations and marks.
		Note:  this release probably cannot handle ALL sgf
		formats successfully.  I will improve it as I find
		problems.  Send me any sgf that will not work with xigc.
	3.  Reverse sort order for who and games to make more interesting
		lines print near the bottom of the list.
	4.  Change default save file format to sgf instead of text format.
	5.  Add "fast" StepForward and StepBack functions.
	6.  Improve the integration between "review," local sgf, and
		the rest of IGS.

=======================================================================

Changes in xigc from v3.6 to v3.7:
	
	1.  Change sound code so it is easy to replace "beep" with
		another sound, on machines that support sound.
		On Sun machines, you can just do -DSOUND in the
		CFLAGS line of your Makefile.
	2.  Suuport "user" command.
	3.  Fix bug related to missing move seen after some "undo"
		commands.  This still may not be perfect.
	4.  Add a #define to allow igscomm to compile under AIX.
	5.  Change default internet address to 203.255.112.3 for
		igs.nuri.net.
	6.  Add a default icon.  Both bitmap and xpm formats are
		supported.
	7.  Add a "string" action so you can use Translations to
		remap keys to send strings to the IGS.  See XIgc.ad
		for a few examples.
	8.  Fix some problems that make xigc appear to incorrectly
		initialize when loading or beginning to observe a game.
	9.  Support the "pmatch" command.
	10. Support the "Chatter" output format.
	11. Minor improvements to "review" support.  Thanks to
		helge@uts.amdahl.com for his patches.
	12. Add sorting code for "games" output.  By default,
		sorting is according to player ranks (strongest first).
		Other sorting options are:
			games -o : number of observers
			games -m : number of moves played
			games -g : game number
		Thanks to helge@uts.amdahl.com for developing this code.

=======================================================================

Changes in xigc from v3.5 to v3.6:

	1.  Fully support the "review" command (Many thanks to
		loganj@cs.byu.edu [again!] for his efforts).
		This sgf reader does not work quite right, but
		I have included it anyway.  Also, this release
		of xigc does not allow loading a saved or mailed
		sgf game record, but that will come soon I hope!
		Maybe after the sgf reader works correctly. :-)
	2.  Add support for "teach" and "gteach" commands.
	3.  Add UPDATETIME parameter in .xigcrc, to change the timer tick
		from one second to whatever (Thanks to todd@vmark.com).
	4.  Add TIMERBEEP parameter to .xigcrc, to signal when time is
		short while playing.
	5.  Fix bug related to Overtime counting in GOE rules.
	6.  Add client code 40 for "tell" feedback.  Add client code
		41 for command echoes.
	7.  While playing, disable left-button moves when a
		right-button sequence is displayed on the board.
	8.  Display error message when moves are lost during game load.

=======================================================================

Changes in xigc from v3.4 to v3.5:
	
	1.  Add "friends list" and "kill list" processing.  (Thanks
		to olli.lounela@helsinki.fi for contributing code for
		this feature.)
	2.  Fix a bug related to display of prisoners during "look"
		and "status" commands.
	3.  Add support for "tmatch" and "tgmatch" commands.

=======================================================================

Changes in xigc from v3.3 to v3.4:
	
	1.  Fix several bugs related to the new go-playing routines
		(Thanks again to loganj@cs.byu.edu for his efforts).
	2.  Support the VERSION client code.

=======================================================================

Changes in xigc from v3.0 to v3.3:

	1.  Add minimal support for new automatch, choice, and other
		client codes.
	2.  Improve error handling of other game types than go.
		Note: you must turn off client mode to play any
		game except go.
	3.  Chase recent format changes in "yell" output.
	4.  Revise go-playing knowledge to improve redisplay on stepping,
		undo, etc.  (Special thanks to loganj@cs.byu.edu for his
		extensive work on this feature!).
	5.  Improve overtime display and handling of scoring for GOE games.
	6.  Support suicide moves in GOE games.
	7.  Disable use of "alias" command.  Sorry :-(
	8.  Add an ASCII-only version of the man page, in xigc.man.pr.

=======================================================================

Changes in xigc from v2.9 to v3.0:
	1.  Add the delete key as a synonym for backspace.
	2.  Add a few simple stubs to support the "review" command.
		Note:  Full sgf support is not included.
	3.  Chase the latest IGS changes to handle different rule sets.
		Note: full support for Ing rules is not included.

=======================================================================

Changes in xigc from v2.8 to v2.9:
	1.  Change message printed when changing observed games.
	2.  Fix declaration problems for SGI machines.
	3.  Improve treatment of stones removed with button 2.
	4.  Fix bug related to "automatch" command
	5.  Fix some bugs in komi display management.
	6.  Add ifdef's and Makefile for X11R3 systems.
	7.  Change the default server to bsdserver
	8.  Fix a bug related to display of games played by special
		title holders like McM93
	9.  Add local commands "ton" and "toff" to turn terse mode
		on and off, respectively.

=======================================================================

Changes in xigc from v2.1 to v2.8:
	1.  Change stipple code so resizing board no longer causes stipple
		to disappear under some conditions.
	2.  Rewrite address lookup functions in igscomm to improve lookup
		success for various net configurations.  Thanks to
		jpab+@andrew.cmu.edu for providing some sample code.
	3.  Add a "terse" mode (settable in the .xigcrc file) that reduces
		clutter on the terminal output stream.
	4.  All commands can now be abbreviated to a minimal substring, except:
		Add abbreviations "ob" for "observe" and "obo" for "observeoff."
	5.  "observeoff" (or "obo") is no longer required.  If you ask to
		observe or load a game, the previous game will no longer
		be observed.
	6.  Fix a bug related to sgf saves of 9-line and 13-line games.
	7.  Add SAVEDIR keyword in .xigcrc to give a directory name
		for saving games.
	8.  Support translate, proverb and yell commands.
	9.  Fix a bug related to mis-parsing long text or results output.
	10. Change default server addresses to UCSF server.
	11. Shorten the output from kibitz and moves to reduce scrolling.
		Thanks to jansteen@cwi.nl for suggesting this feature.
	12. Fix a bug associated with undoing handicap stones.
	13. Fix a bug in which undo interacts with button 3 move sequences.
        14.  Make igscomm and xigc 8-bit clean, so it will correctly handle
		GB characters from cxterm .
	15. Set board size automatically when start observing or playing.
	16. Display player's rank and game komi in menu window.
		Note: the komi display is set only when you begin observing
		a game.  If the komi changes during the game, you must do
		"games" to get it updated.  komi should change correctly
		when you are playing.
	17. Add a configuration option SORTWHO to allow sorting "who" output
		by rank of player.  Thanks to elton@cat.syr.edu for providing
		some code for this feature.
	18. Fix a bug in the SAVEFORMAT configuration option.

Changes in xigc from v2.0 to v2.1:
	1.  Fix so xigc does not try to change game numbers automatically.
	2.  Fix several minor bugs.
	3.  Remove last move dot for "status" display.
	4.  Fix several bugs in sgf save format.
	5.  Upgrade support for "status" "look" and "translate" to chase
		the latest IGS changes.
	6.  Fix a bug that occasionally caused xigc to exit unexpectedly
		during "Refresh (Host)" of games with more than about
		180 moves.
	7.  Force 7-bit characters so xigc works correctly with 8-bit
		communications programs and modems.

Changes in xigc from v1.9 to v2.0:
	1.  Fix several minor bugs.
	2.  Fix bug that caused multiple undos that include replacing
		captured stones to not redraw screen correctly.
	3.  Fix problem with move numbering when saving games with
		"Save to Current"
	4.  Improve file handling during Save Game.
	5.  Add more app-defaults to control window size, font, etc,
		for the Menu window.

Changes in xigc from v1.8 to v1.9:
	1.  Fix bug that caused real incoming moves to participate in
		captures during button 3 sequences.
	2.  Fix Imakefile problem that caused NullParameter error during
		make on X11R4 systems.
	3.  Fix bug that prevented setting sgf format in .xigcrc file.
	4.  Upgrade end-of-game processing to show final board with
		scored points marked.
	5.  Fix several minor bugs.

Changes in xigc from v1.0 to v1.8:
	1.  Add explicit kill for comm program when xigc exits, and several
		other fixes related to the "spinning telnet" or "hanging
		server" problem.  But, I strongly recommend that "igscomm"
		is used instead of telnet for communications with xigc.
		igscomm is not subject to the hanging server problem, since
		it exits when xigc exits.
	2.  Fix many minor bugs.
	3.  Remove gameSize default from XIgc.ad.  It is hardcoded to
		default to 19.
	4.  Add second-by-second timer.
	5.  Add ability to type to IGS command processor while mouse is in
		board or menu windows.  You can also type CNTRL-P to shut off
		echoing for a line (this allows passwords to not print).
		The CNTRL-P feature currently only works when the cursor is
		over the board or menu, NOT when the cursor is in the text
		window.  Thanks to loganj@cs.byu.edu for providing some sample
		code implementing this feature.
	6.  Upgrade to latest version of the Goban widget.  This fixes some
		cases where the cursor was an empty circle inside a square,
		rather than an image of white or black stone.
	7.  Add a config file to put comm command line, so it is not required
		on xigc command line or compiled in.
	8.  Add ability to save game in text format or sgf format.
	9.  Much improved game analysis functions, including the ability to
		step through games move-by-move, to add stones to the board
		from any move position, and to refresh to the current "step"
		or to the current "real" game position.
	10. Much improved end-of-game and scoring support.
	11. Support for the IGS "status" command.  You can now look at the
		current board position of another game while playing or
		observing.


Changes in xigc from v0.9 to v1.0:
	
	1.  Fix a bug where dead stones were not always picked up correctly
		on the first "refresh" after xigc started.
	2.  Add an app default to select whether button 3 moves are
		saved locally or not.
	3.  Fix handling of "Pass" during games.
	4.  Get rid of junk line that was printed when Bell is enabled at IGS.
	5.  Fix some char passing problems in igscomm.
	6.  Add the ability for igscomm to suppress local echo.
	7.  Add code to make "refresh" command do something useful.
	8.  Make "Pass" and "undo" moves appear in "Last:" window item.


Changes in xigc from v0.8 to v0.9:

	1.  Add a simple Makefile so that users without imake or xmkmf have
		a chance.
	2.  Fix a bug associated with getopt() on the IBM RS6000.
	3.  Change the default command from "telnet lacerta.unm.edu 6969"
		to "telnet 129.24.14.70 6969".
	4.  Clear and refresh the board when starting to play a game.
	5.  Button 3 sequences are no longer saved as part of the game, and
		are cleared with "Refresh (Local)".  This also means that
		they are not saved to a file with "Save Moves".
	6.  Change the "highlite" on the last-played stone so it stays
		centered better for all board dimensions.
	7.  Disable the "Quit" menu item when the "-c" command-line option is
		used, since xigc will not know how to exit cleanly from any
		random user-specified communications command.
	8.  Add a stipple-gray board background selected by command-line
		option or app default.  You have a compile-time choice of
		either of two stipple patterns.
	9.  Fix the declaration of "time_t" so it compiles on SGI machines.

=======================================================================
