--- 5.07 Released
2003-08-07 Mike Curtis <chess@wt.net>

	* Minor ScoreDev code tidy

2003-07-28 Simon Waters <Simon@wretched.demon.co.uk>      

	* ensure gnuchessx included in EXTRA_DIST

2003-06-30 Simon Waters <Simon@wretched.demon.co.uk>      

	* Fix to Posix thread for readline
	
	* Fix to ensure "HARD" is default
	
2003-06-30 Mike Curtis <chess@wt.net>
	
	* Improve Posix thread handling

2003-06-28 Mike Curtis <chess@wt.net>

	* Portability fix IsTrustedPlayer

2003-06-28 Simon Waters <Simon@wretched.demon.co.uk>      

	* Portability fix to lexpgn.l

	* Changes to lexpgn.l to handle some special
	  cases.

	* Fix trailing "/" in FEN causes
	  buffer overflow issues. Trailing "/" is
	  kept for compatibility reasons with 5.04

2003-06-19 Mike Curtis <chess@wt.net>

	* Portability fix to lexpgn.l

2003-06-19 Simon Waters <Simon@wretched.demon.co.uk>      

	* Add "--easy" flag to command line.

	* Add "--manual" flah to command line.

	* Fix to new PGN parser to handle odd
	  character in tag data.

2003-06-15 Simon Waters <Simon@wretched.demon.co.uk>      

	* const declaration for progname removed to 
	  resolve problems with other compilers.

	* Reapply earlier fix to ensure the players
	  names for white and black are fixed which got
	  overwritten with pgn parser merge.

	* Remove GNU tool derived files from CVS to save
	  space and avoid problems with timestamps.

	* Tell xboard sigint=0 to avoid workaround on Solaris.

	* Various code clean-ups.

	* Redefine DRAWSCORE to 0, faster, and avoids excessive
	  draw penalties.

2003-06-13 Simon Waters <Simon@wretched.demon.co.uk>      

	* Use CalcHashSize in main.c

	* Check HashSize return code in cmd.c

	* Put maximum check in CalcHashSize

2003-06-12 Simon Waters <Simon@wretched.demon.co.uk>      

	* Convert autoconf to AX_CREATE_STDINT_H from AC_CREATE_STDINT_H

	* Changes suggested by latest "autoscan" including tests
	  for functions we can't do without.

	* Changes required to merge DAW contribution below.

2003-06-12 David A. Wheeler <dwheeler@dwheeler.com> 
           (Originally 2002-10-03 merged SRW)
	   
	* Rewrote PGN reader so that it fully handles the PGN standard
	  and common nonstandard variants of PGN, including PGN {} comments,
	  ; comments, varying newline conventions (Unix, Windows, MacOS),
	  FEN starting positions, multiple tags, and so on.
	  If a game is being read in with pgnload,
	  data is kept so it can be written back out later by pgnsave
	  (so that later on, annotations won't lose existing data).
	  The new reader is implemented using flex/lex, which eliminates
	  
	* Added support for not-quite-valid SAN moves, so that games
	  with such entries are still read correctly.  This includes
	  "capture-only" notation like "KxN" (King takes Knight),
	  the use of "P" for pawns, and
	  lower-case versions of many pieces (e.g., "k" for King) - note
	  that Bishops MUST be upper case (since "b" is a column identifier).

	* Added a script named "gnuchessx", which simply invokes gnuchess
	  with the "xboard" option.  This means that GNU Chess 5 now
	  automatically supports Xboard, just like GNU Chess 4 did.

2003-06-09 Anil Mungal <vagrancy@rogers.com>

	* Tidy up hashsize calculation, fix segfault

2003-06-09 Simon Waters <Simon@wretched.demon.co.uk>      

	* Ensure comments all use tradition /* */ syntax

2003-04-06 Simon Waters <Simon@wretched.demon.co.uk>      

        * Correct GenCheckEscapes to return no moves
          when not in check. For "show escape" command.

        * Disambiguate hints

2003-03-16 Simon Waters <Simon@wretched.demon.co.uk>      

	* Remove stale Threat Extension code

2003-03-12 Simon Waters <Simon@wretched.demon.co.uk>      

	* Fix En Passant handling in white/black commands

	* Fix to HashSize handling

--- 5.06 Released

2003-03-10 Simon Waters <Simon@wretched.demon.co.uk>      

	* Remove obselete M4 include file.

2003-03-09 Simon Waters <Simon@wretched.demon.co.uk>      

	* Fix preprocessor directives for Macro names.

2003-03-07 Simon Waters <Simon@wretched.demon.co.uk>      

	* Always used bundled geopt's to simply build

2003-03-06 Simon Waters <Simon@wretched.demon.co.uk>      

	* Correct pthread handling in configure.ac

	* Correct LIBOBJS handling on platforms without getopt_long

	* Avoid deprecated multiline string literals in cmd.c

	* Avoid redefining MAX and MIN macros on HPUX

	* Make pawncover constant to avoid difference between 
	  first and subsequent games. Affects many King safety 
	  calculations.

2003-02-16 Simon Waters <Simon@wretched.demon.co.uk>

	* Add getopt files to distribution for platforms without 
	  GNU C library

	* Replace ac_need_stdint_h with ac_create_stdint_h

	* Add acx_pthread, config.sub, config.guess

2003-02-11 Simon Waters <Simon@wretched.demon.co.uk>

	* Drop enpassant knowledge on "switch" command.

	* Add in 2 move exception to EvaluateDraw to
	  avoid drawing won games.

2003-02-05 Simon Waters <Simon@wretched.demon.co.uk>

	* Various string length issues tidied up.

2003-01-31 Simon Waters <Simon@wretched.demon.co.uk>

	* Implement "white" and "black" commands.

2003-01-29 Anil Mungal <vagrancy@rogers.com>

	* Two minor optimisations to eval.c (1% speed-up test evalspeed)

2003-01-29 Simon Waters <Simon@wretched.demon.co.uk>

	* Use getopt_long for option handling

	* Add standard options --help --version

	* Add command line command "usage"

	* Add option --hashsize

	* Rework hint to use first move in Tree

	* GetElapse time even when not against the clock

	* Modify aclocal.m4 to stop spurious 32's in configure
	  which break build AIX 4.2, and Solaris 2.5.1 

2003-01-27 Simon Waters <Simon@wretched.demon.co.uk>

	* Stop output of result in iterate if game has ended already.

	* Ensure PGNSaveGame output computer as correct colour player.

2003-01-13 Simon Waters <Simon@wretched.demon.co.uk>

	* Add time.h to common.h to define timeval on Cygwin

	* Add test for absence of nanosleep, may make
	  waiting inefficient on platforms without nanosleep
	  or usleep

	* Remain in analysis mode on "new".

2003-01-09 Simon Waters <Simon@wretched.demon.co.uk>

	* Implement analysis mode

	* Change time in ShowLine to seconds from centiseconds
	  (see engine-intf.html at www.tim-mann.org)

2003-01-09  Lukas Geyer  <lukas@debian.org>

	* rename et ElapsedTime
	
	* Clean up timer code

	* Further changes on pondering and input handling

2003-01-09 Simon Waters <Simon@wretched.demon.co.uk>

	* Change version ID to 5.06

2002-12-30  Lukas Geyer  <lukas@debian.org>

	* Corrected threading code to consume input correctly

	* Corrections to comments

	* debug.c added

2002-12-22  Stuart Cracraft <cracraft@earthlink.net>

	* Reinstate penalty for having no queens on in
	  eval.c (spotted by Tim Bedding)

2002-12-22  Lukas Geyer  <lukas@debian.org>

	* Extra location for book checked 
	  /usr/share/games/gnuchess/book.dat

	* Correct handling of name

	* Fix problem with slow exit if pondering

	* Fix memset error

	* Misc tidying of 'const' usage

2002-12-19  Simon Waters <simon@wretched.demon.co.uk>

	* 1/20th second sleep in input loop, to avoid
	  CPU hogging in easy mode.

2002-12-16  Simon Waters <simon@wretched.demon.co.uk>

	* The main development version reverts to Lukas's
	  version as of 2002-10-05

	* epd.c merged from 5.05

	* book random in help change merged from 5.05

	* Fix to not store score in hashtable when time
	  expired, as score has special value.

2002-10-05  Lukas Geyer  <lukas@debian.org>

	* Added copyright and license notices to ponder.c, input.c,
	  updated copyright years to 1999-2002 in all source files.

	* Updated NEWS file to really list user-visible changes
	  between releases, still not complete.

	* Updated my email address.

	* version.c: Removed as obsolete.

	* pgn.c: Fixed potential buffer overflow. (Thanks to David
	  Wheeler for this one.)

	* common.h: Added comments by David A. Wheeler.

	* cmd.c: Added support for "easy" and "hard" (disable/enable
	  pondering)

	* main.c: Default to "nopost".

	* common.h: Added #include <sys/types.h>, needed for some
	  pthread implementations, it seems.

2002-08-25  Lukas Geyer  <lukas@debian.org>

	* Merged Simon's and my version, reverted some stuff like changing
	  all the types to int before I know better justification.

2002-08-25 Lukas Geyer  <geyer@math.uni-dortmund.de>

	* Various cleanups, some documentation and comment updates,
	  nothing really changed

2002-08-25 Lukas Geyer  <geyer@math.uni-dortmund.de>

	* configure.ac: Added support for --without-readline, cleaned
	  up by removing even more unneeded tests.

	* INSTALL: Updated (was not quite accurate anymore)

	* TODO: Updated (some things have been done now...)

	* cmd.c: Changed input parser to use method table, changed token
	  separation algorithm, the tokens are now only pointers to the
	  beginning of tokens in inputstr. Changed move.c accordingly that
	  it does not get confused by whitespace.
	  
	* Moved input code to src/input.c (new file), in a separate thread.
	  Changed other files accordingly (common.h, main.c, cmd.c, 
	  Makefile.am, configure.ac).

	* Removed all code related to the Novag Universal Board. (The
	  code was mostly in cmd.c.)
	  
	* common.h, ttable.c: Changed the HashSlot structure to make
	  persistent transposition tables possible.

	* ponder.c (new file): Added prototype of pondering.

2002-08-17 Simon Waters <simon@wretched.demon.co.uk>
	* Bug code bug introduced in development version
	  that breaks if no book is present in XBOARD
	  version.

2002-08-02 Simon Waters <simon@wretched.demon.co.uk>

	* Switch from short to int for all short
	  variable types.
	  (Note some aspects of change require futher work)

	* Correct SortRoot test for passed pawn moves.

2002-08-02 Simon Waters <simon@wretched.demon.co.uk>

	* Clean up of SortRoot (also MC suggested optimisation)

	* Tidy code to remove 99 lclint errors (274 to go)

2002-08-02 Based on patch from Lukas Geyer

	* Add list of possible book locations, to allow
	  central location for book on multiuser servers.
	   "book.dat"
	   "/usr/lib/games/gnuchess/book.dat"

	* Limit book to BOOKDEPTH ply not BOOKDEPTH moves.

	* Improve handling of excessive hashsize requests.

2002-08-01  Simon Waters <simon@wretched.demon.co.uk>

	* Correct additional input file name limits
	  and related field sizes throughout code.
	  (NB UNIVERSIAL code changes untested)

	* Changes proposed by MC for compiling with MSVC
	  Note: ULL() macro should be used for 64 bit integer constants

	* Change help text for "universal" if it wasn't compiled in.

	* Minor optimisation in the misnamed MateScan routine.

	* Shorten declaration of rings, this doesn't need to be in init.c

	* Clean up case statement for X-ray attacks.

	* Correct array bound error in cmd.c hint code.

	* Correct memset in book code.

	* Reorder test on trimming trailing spaces.

2002-05-19  Simon Waters <simon@wretched.demon.co.uk>

	* Corrected command line size to 128 through out cmd.c to
	  fix segmentation fault errors on complex fen positions.

2002-05-02  Simon Waters <simon@wretched.demon.co.uk>

	* Reorder move generation of promotions

	* Improve sorting of captures in SortMove

	* Insert pinned and hanging piece checks

	* Remove unreachable code in cmd.c

	* Update some eval weightings

2002-03-14  Simon Waters <simon@wretched.demon.co.uk>

	* Fix memory leak HashTab

2002-03-06  Simon Waters <simon@wretched.demon.co.uk>

	* Make "book on" use BOOKPREFER not BOOKBEST

	* Fix implementation of BOOKBEST

	* Implement "book {worst|best|prefer}"

	* Correct README as it said not Official distro

2002-03-05  Simon Waters <simon@wretched.demon.co.uk>

	* Remove redundant tests from configure.ac

	* Update version to 5.04 in configure.ac

	* Move local m4 macros to acinclude.m4

2002-03-03  Lukas Geyer  <geyer@math.uni-dortmund.de>

	* common.h: Refine check for buggy gcc 2.95 on PPC.

	* common.h: Changed lzArray and BitCount from short to unsigned
	  char, corresponding prototypes for leadz() and nbits(), too.

	* inlines.h and util.c: Changed leadz() and nbits() to not use
	  union, rather do explicit bit arithmetic which does not assume
	  anything on endianness.

	* test.c: Changed all timings to floating point and higher
	  precision.

2002-03-03  Simon Waters <simon@wretched.demon.co.uk>

	* Added unknown protocol commands to
	  avoid "Illegal move: <unknown command>"

	* sd synonym for depth

	* Added approximate st and additional errors for xboard
	  suggested by Tim Mann

	* Added basic "hint" feature, by extracting next
	  move from PV in hash. Doesn't work in book.

2002-03-02  Simon Waters <simon@wretched.demon.co.uk>

	* Modified code to print "Illegal move: cmd" when
	  an illegal move or unknown command is entered.

2002-02-26  Simon Waters <simon@wretched.demon.co.uk>

	* Hacked version of ac_need_stdint_h AC macro to fix Win32 build

GNU Chess 5.03 Released

2002-02-12  Simon Waters <simon@wretched.demon.co.uk>

	* Fix bug with saving move after mate in PGN files

2002-02-09  Lukas Geyer  <geyer@math.uni-dortmund.de>

	* book.c: Checked for calloc() failure to return BOOK_ENOMEM
	in BookBuilderOpen().

	* iterate.c: Changed search time calculation to a very
	non-aggressive strategy (keep always 2 seconds for possible
	delays). Added SearchRoot() if we fail low. This should fix
	the illegal move problem, which occurred exactly when we
	failed low for all depths.

2002-02-08  Lukas Geyer  <geyer@math.uni-dortmund.de>

	* Changes mainly to book.c in order to have
	dynamically allocated book hashes. Changed the
	binary book format once more.

2002-02-07  Simon Waters <simon@wretched.demon.co.uk>

	* Moved Lukas's version into CVS

	* Adjusted version string to 5.03

	* Reimplemented bk in better fashion

	* Added self to authors file


2002-02-06  Lukas Geyer  <geyer@math.uni-dortmund.de>

	* Clean-ups to make it build with the Sun cc compiler.

	* moved leadz() and nbits() to inlines.h, so that they will
	really be inlined. Left the original versions in util.c,
	so that one can define NO_INLINE to get the functions
	exported. Speed gain is quite significant on Linux/PPC.

2002-02-05  Lukas Geyer  <geyer@math.uni-dortmund.de>

	* Fixed a nasty bug in buf_to_book() which would add position
	evaluations to all the hash-collision positions while traversing
	the list. As collisions are not very frequent, this would
	generate slightly wrong books which could lead to infrequent
	strange opening blunders.

	* Abstracted hash handling functions in book.c into macros,
	implemented secondary hash traversal.

2002-02-04  Lukas Geyer  <geyer@math.uni-dortmund.de>

	* Removed index from binary book file, continued fixing book
	building. (It used to take only the white moves if two players
	from the list were playing each other.)

	* Added return codes to function in book.c.

2002-02-03  Lukas Geyer  <geyer@math.uni-dortmund.de>

	* Killed some bugs related to endianness and padding in
	book.c. Rewrote README to reflect reality more closely. Split
	BookBuilderOpen() from BookBuilder().

2002-02-02  Lukas Geyer  <geyer@math.uni-dortmund.de>

	* Cleaned up some types, converted them to explicit ones uint32_t,
	uint16_t and uint64_t. Should fix the bug that hashes generated on
	64 bit machines were different. Thanks to Goswin Brederlow
	<goswin.brederlow@student.uni-tuebingen.de> for this one.

	* Fixed a documentation bug (replaced "book compile" by "book
	add")

	* Added readline support

	* Added TODO
	
2002-01-30  Lukas Geyer  <geyer@math.uni-dortmund.de>

	* Redesigned the build system to use automake. Cleaned up code,
	fixed SETBIT /CLEANBIT for gcc 2.95 on Linux/PPC. (Actually,
	gnuchess hits a gcc optimization bug here, congratulations...)
	
	* Added help functionality. Still ugly, but informative. (And the
	plain gnuchess interface _is_ the definition of ugliness anyway.)

------------------------------------------------------------------------
This ChangeLog file only documents recent changes, for older ones please
look in doc/ChangeLog.
