Describe New Shuffle dialog item by item in texi file
[xboard.git] / ChangeLog
index e4a6122..500bdd4 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
 ChangeLog for XBoard/WinBoard
-* 02/28/2009 APersaud: fixed missing datarootdir in Makefile.in -> autoconf -> new configure script
-       
-* 02/28/2009 APersaud: fixed an error in the parser. This should fix bug #22812.
-       
-* 06/12/2005: bugfix some more possible buffer overflows.
+-----------------------------
 
-* 06/27/2004: added simple icsEngineAnalyze for xboard
+(latest entries created by git log --no-merges --pretty="%ai %an <%ae>:%n%s%n%n%b" vlast.. )
 
-* 06/26/2004: added icsEngineAnalyze for winboard: Analyze observe games 
-with a chessprogram on a Internet Chess Server (ICS) 
+2014-10-24 00:04:22 -0700 Joshua Pettus <jshpettus@gmail.com>:
+removed gtk theme from OSX app
 
-* 02/12/2004: Bugfix ICS interaction console crashed while chess
-engine starting and user type in some stuff. We are wait now to finish
-the engine boot.
+2014-10-23 23:33:18 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Add persistent Boolean option -fixedSize
 
-* 02/11/2004: Winboard: Added color lines for the ics interaction
-console if zippy used
+When set, this option suppresses sizing of the board and clocks when
+the window is sized by the user. This is achieved by wrapping the entire
+dialog in a non-expanding hbox.
 
-* 02/09/2004: Added mousewheel support for winboard. Play moves
-backward and forward with the mousewheel.
+2014-10-23 21:23:14 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Also do dual-royal test in variant shogi
 
-xboard/WinBoard 4.2.7 -- Fri Nov 28 13:36:00 PST 2003 -- Tim Mann
+For the benefit of Sho Shogi we also have to be prepared to find a
+Crown Prince in variant shogi, so it can be used as a parent variant
+for Sho Shogi with legality testing on.
 
-* 11/26/2003: In WinBoard, setting the -debug flag now logs ICS output
-to WinBoard.debug too.  (This isn't needed in xboard because ICS
-output already goes to stdout, so it's easy to capture along with the
-debug output on stderr.)  This was issue #280 in the ToDo file.
+2014-10-23 16:22:54 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Fix promotion in Betza move generator
 
-* 11/23/2003: Cleaned up some minor problems in cygwin.mak.  Thanks to
-Hans Werner Strube for the problem report.
+The Betza move generator was geenrating allmoves as NormalMove, but in
+that case XBoard would not allow the move to have a promotion suffix.
+Now Pawns and Lances reaching last rank will be assumed to promote.
 
-* 11/23/2003: Updated the default list of chess servers in
-winboard/defaults.h.  Deleted two that appear to be dead and added a
-new one that is active.
+2014-10-22 13:06:25 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Attempt to make GTK sizing work with tiling WM
 
-* 11/19/2003: Swapped icon_white.bm and icon_black.bm in XBoard.
-Hopefully this will get them the right way around by default on more X
-window managers.  I wish I understood this better.
+The Rezise routine now takes the size of the entire dialog table
+(for me always equal to the outer-window size), and checks if the
+actual outer window is smaller. If it is, it shrinks the board to fit,
+under the assumption that a tiling window manager offers only a limited
+'viewport' to our dialog, and we want everything to be visible inside that.
 
-* 11/18/2003: Implemented a simple 32-bit random number generator for
-WinBoard, replacing the Windows rand(), which ranges only up to
-0x7fff.  Formerly on Windows, only zippy.lines sayings that started in
-the first 32767 bytes of the file could ever be used.  This was issue
-#505 from the ToDo file.
+2014-10-22 11:04:47 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Fix -xbuttons window width GTK
 
-* 11/16/2003: The xboard man page and info files are now built from a
-common set of texinfo source files, and the xboard man page now covers
-cmail as well.  Formerly, ever since the texinfo file was first
-contributed to the project, it was separate from the man page and the
-two files had to be updated in parallel, making for a maintenance
-nightmare.  To make combining the files possible, I took the Perl
-script "texi2man" from the GNU Units project and added support for a
-larger subset of the texinfo markup language.  I then carefully
-compared the old man page and old texinfo file to make sure the latest
-and clearest words survived into the new combined texinfo file.  It
-would be great to merge in WinBoard's help file too, but that's a
-larger project.  It would have to be heavily conditionalized to
-deal with differences in features between XBoard and WinBoard.
+Because Label options not followed by a SAME_ROW element were only
+packed into the first two columns of the dialog table, the board window
+reserved space for a third column behind the message window if there
+was no button bar.
 
-* 11/15/2003: Cleaned up and applied a small patch from Daniel
-Mehrmann, to stop overly long PVs in thinking output from causing a
-buffer overflow crash in backend.c.
-       
-* 11/5/2003: When a chess engine sends a "telluser" command (including
-the cases where "tellall" or "tellopponent" acts like telluser), the
-information now goes into a nonmodel popup that is automatically
-dismissed when the user clicks anywhere on the board.  This fix is
-more significant on WinBoard, where formerly you got a fully modal
-dialog that had to be dismissed by clicking on OK before anything else
-could happen.  The bug was issue #406 in the ToDo file.
+2014-10-21 20:37:41 -0700 Arun Persaud <arun@nubati.net>:
+mac: only use gtk compile flag, if osxapp is enabled
 
-* 11/1/2003: Removed email addresses from this file to reduce spam
-load, as it gets linked to from the Web.
 
-* 11/1/2003: Updated READ_ME and winboard/READ_ME.txt.
+2014-10-21 22:40:39 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Prevent unknown variant getting button in -ncp mode
 
-* Modified xboard and winboard makefiles to be able to build the
-project in the new combined directory structure.
+Normally we fake the engines play the requested variant, for the benefit
+of engines that do not send a variants feature (e.g. v1 engines). But this
+should not be done if there is no engine, as it would lead XBoard to
+believe an unknown variant name is an engine-defined variant supported
+by a currently loaded engine, and create a button for it in the New Variant
+dialog.
 
-* Applied a small security fix to pxboard, from Martin Maeok.
+2014-10-21 22:07:09 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Fix variant-name recognition
 
-* Fixed a bug in the game list dialog.  The change in 4.2.6 to opening
-games in text mode (meant to avoid getting extra \r's into comments)
-caused a new bug in determining seek offsets when parsing a game file
-to form the game list.  Also, the change was incomplete; on some code
-paths games were still being opened in binary mode.  Thanks to Lenik
-Terenin for reporting the offset bug.  I've now gone back to always
-using binary mode when reading game files, and I've fixed the comment
-bug by adding code to remove \r's from parsed comments explicitly.  I
-still use text mode for writing game files so that games written by
-WinBoard will have Windows-style line endings.
+StringToVariant did recognize whether the name to recognize had suffuxes
+compared to the tabulated name, but not if it had prefixes. So 'shoshogi'
+would be recognized as 'shogi'.
 
-* Fix for minor bug in WinBoard installer.  If you chose a non-default
-destination directory, the default directory was still used for a
-couple of unimportant things, namely setting the App Paths registry
-keys (unused by WinBoard) and trying to copy the existing WinBoard.ini
-file to WinBoard.old.  I inherited this bug from the InstallShield 5
-sample template.  Thanks to "l.d." for noticing the incorrect keys.
+2014-10-21 21:52:21 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Suppress duplicat autoInstalls
 
-* Patch from Chris Priest: when two engines are being run through rsh,
-avoid reusing the same stderr port for both.  I'm not sure why this
-should be needed, but it's harmless, at least.
+If the engine line constructed for -autoInstall already occurs in
+the engine list, we should not install it again.
 
-* Bugfix: The kludge to deal with old engines that give an error
-message because they don't know the "st" command was too sloppy; it
-could hit on an "st" substring anywhere in an error message.  GNU
-Chess 4 is the only engine I know of where the kludge was needed, so I
-changed the kludge to match a longer, more GNU-specific string.
+2014-10-21 18:41:03 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Base new square size on board widget allocation GTK
 
-* Changed the WinBoard self-extracting installer to choose a unique
-temporary subdirectory name within the Windows temp directory instead
-of always putting wb-setup directly in temp.  Besides being better
-practice, this avoids the need to deltree wb-setup first, which
-occasionally alarms someone who thinks that deltree is only used by
-trojans to delete all your files.  (Yes, I'm serious.)
+No longer pay attention to the size of the top-level window, but base
+everything on the size of the board widget itself.
 
-* Fixed a bug where FICS-style "wild/0" strings were not parsed as the
-proper wild type.  The "/" was not being skipped.
+2014-10-21 13:45:51 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Ignore first configure event
 
-* Fixed a WinBoard bug where temporary files created by game
-copy/paste were being created in the root directory of the current
-drive instead of the TMP directory and were not always deleted on exit.
+The first configure event will be the one that adds the window decorations
+to the board window, and must not be used to calculate a new square size,
+but to expand the outer window instead.
 
-* Fixed a small bug in winboard.c's ErrorDialog() function.  Thanks to
-"Ron" (no last name given).  The bug might have caused a problem when
-pressing OK or Cancel in an error dialog when more than one error
-dialog was being displayed, but I'm not really sure.
+2014-10-21 11:35:21 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Let GTK dialogs open with actual-size Graph widgets
 
-* Removed a hack that worked around a bug in very old versions of
-Crafty, where it would sometimes reply "illegal move" to a "."
-command.  The hack kept us from recognizing real illegal move messages
-in analyze mode from engines that don't respond to the "." command.
-Thanks to Fabien Letouzey for the report.
+The Graph Option size values are now uses as size_request, to give
+proper dialog sizing at popup. But the size_request is then reset
+so that free sizing by the user becomes possible.
 
-* Fixed a bug in the xboard version of GetDelayedEvent.  It would
-return the most recently scheduled event even if it had already fired.
-This caused at least one visible error: in -ics -xreuse mode, starting
-the engine again and seeing another "feature done=1" would re-run the
-initialization code in InitBackEnd3, including the code that opens the
-connection to ICS.  The WinBoard version didn't have this bug.  Thanks
-to Bob Hyatt for the bug report.
+2014-10-19 13:16:43 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Fix display of Spin Options with negative range
 
-* The promotion popup for ICC wild 26 (giveaway) now includes King.
-Thanks to Fredrik Josefsson for the bug report.
 
-* The first game in a file (or being pasted from the clipboard) can
-now start with a bare move -- no PGN tags, no move number "1", etc.
-Suggested by Shane Harrelson.  One could imagine taking this farther
-and accepting something like "e4 e5 1/2-1/2 d4 d5" as two games, but
-I haven't done that.
+2014-10-17 21:35:25 -0700 Arun Persaud <arun@nubati.net>:
+line numbers in PO got updated
 
-* Bug fix: xboard didn't really accept a paste of multiple games,
-contrary to what I wrote when adding the feature to WinBoard in
-4.2.4.  Now it works in both.
 
-* Fixed generic start/end of game messages to work on chess.net, where
-they put ratings in parens after the player names.
+2014-10-17 21:23:47 -0700 Arun Persaud <arun@nubati.net>:
+updated ChangeLog, DIFFSTAT and SHORTLOG
 
-* Updated config.sub and config.guess to newer versions from
-automake-1.4p5-2.  This makes configure work with MacOS X + X11.
 
-* Bugfix: when examining a game fragment on FICS where black plays
-first, don't show two "(0:00.000)" times on the initial "none" move.
+2014-10-17 21:17:56 -0700 Arun Persaud <arun@nubati.net>:
+updated NEWS
 
-* If TestLegality is on and one of the engines makes an illegal move
-in TwoMachines mode, it forfeits immediately.  Formerly the game would
-get stuck at that point and the engine that made the illegal move
-would eventually lose on time.
 
-xboard/WinBoard 4.2.6 -- Fri Feb  1 22:26:31 PST 2002
-Tim Mann
+2014-10-17 21:17:28 -0700 Arun Persaud <arun@nubati.net>:
+forget a few __APPLE__ ifdefs; changed to OSXAPP
 
-Another small bugfix release.
 
-* Put in a small change from Alexander Mai to allow xboard to build in
-an OS/2 EMX environment.
+2014-10-17 00:01:44 -0700 Arun Persaud <arun@nubati.net>:
+fix typo and prefix
 
-* Fix WinBoard-only bug where editing a PGN file with comments would
-insert more \r characters before the \n after every Load/Save cycle.
-For some unknown reason we were reading the files in "rb" mode but
-writing them in "a" mode, so we kept the \r characters on reading and
-added an extra one on writing.  Fix: change the "rb" to "r".  Thanks
-to Joel (last name not given) for the bug report.
+AC_PREFIX_DEFAULT was always set, even if AS_IF didn't get called? Some kind of caching?
+Using just prefix=... seems to work though
 
-* Put the arguments to rsh/remsh in the right order for better
-portability.  Thanks to Michael Kalisz.
+2014-10-16 23:34:22 -0700 Arun Persaud <arun@nubati.net>:
+USE OSXAPP instead of APPLE and fix withval->enableval in AC_ARG_ENABLE
 
-* FreezeUI is now implemented in WinBoard; it was previously only
-implemented in xboard.  This function prevents the user from entering
-moves or other commands while we are waiting for an engine to
-initialize itself.  Implementing it fixes a bug where the user could
-start a game (etc.) during feature negotiation.  One of the symptoms
-of this bug was that we could send "new" one or move moves *after* the
-first game started!
 
-* Fixed some handle leaks (WinBoard only), including a nasty one that
-leaked one handle per command sent to ICS.  Thanks to several folks
-who helped characterize the bug and tried to look for leaks.
+2014-10-16 21:44:33 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Fix loading of engine-defined PGN games
 
-* We now install and look for the info file in ${prefix}/share/info
-instead of ${prefix}/info.  The latter is still the default in
-autoconf, but the former is currently used in Red Hat Linux and
-probably elsewhere.
+Somehow there could be disagreement over what the official opening
+position of an engine-defined variant was during loading of the game.
+It then refused Betza-defined castling, which tests the corner pieces
+based on this initial position. We now assume the FEN tag, which such
+a PGN game will always contain, holds the official opening position,
+so that castling will always be assumed possible (if there is a corner
+piece).
 
-xboard/WinBoard 4.2.5 -- Sat Dec 15 11:42:51 PST 2001
-Tim Mann
+2014-10-16 20:29:27 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Preserve parent variant for PGN of engine-defined game
 
-* Changed the bundled GNU Chess 5.02 in the WinBoard package to
-include a much smaller book and to use much less hash table space by
-default (8 MB transposition table, 0.5 MB pawn evaluation table).  The
-large book included with 4.2.4 made the WinBoard download too big for
-some people, and the default hash tables were larger than the
-available physical memory on some people's computers. I built the
-small book by running Crafty's "small.zip" book line collection
-through a Perl script that makes it look enough like real PGN games
-that the GNU Chess book builder will accept it.  The script and some
-minor patches to GNU Chess 5 are available in the WinBoard source
-distribution and at http://www.tim-mann.org/gnuchess.html.
+Rather than decoding an unknown variant name, (which will result in
+'normal'), we keep the currently set (parent) variant when an
+engine-defined variant is currently set that matches the name in
+the PGN variant tag of the loaded game.
 
-* Fixed a bug in the code that deals with engines that complain that
-"time" and "otim" are illegal moves.  This was a new bug in 4.2.4.
+2014-10-16 17:54:13 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Fix some uninitialized variable bugs
 
-* Revamped the implementation of ToStart in analysis mode.  Formerly
-there was some ill-conceived code that would try to get back to the
-start of the game by doing a "new" command (and all the followup
-commands that requires) while remaining in analysis mode.  This is
-problematic for engine authors to support, though it works with
-Crafty.  This code was trying to solve the problem of ToStart being
-slow because the engine would try to start an analysis after every
-"undo" command all the way back to the start.  But ToEnd already had a
-much better solution to this problem, and now ToStart does the same
-thing: we exit from analysis mode and enter force mode instead,
-make/unmake moves to get to the end/start of the game, and then
-reenter analysis mode.
+The writing of Seirawan castling rights in FEN was still dependent on a
+now unused variable, and encountering a VariantMen tag in a PGN file
+could have created the misconception the memory was full.
 
-* Formerly, Zippy could try to start playing a game before the engine
-was initialized; that is, during the initial timeout for protover 1
-engines, or before "feature done=1" for protover 2 engines.  We now
-wait until the engine is initialized before connecting to ICS, which
-fixes this in the common case.  If you turn off engine reuse for
-multiple games (that is, if you give the -xreuse option), there could
-still be problems; see item 503 in the ToDo file.  Thanks to Dieter
-Buerssner for the bug report.
+2014-10-16 17:41:01 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Update Game List after tag selection changed
 
-* Bugfix: All WinBoard versions since the merge with WinBoard Plus
-(but not xboard) have had a bug in changing the PeriodicUpdates,
-PonderNextMove, and ShowThinking options from the menu.  The bug
-mostly just caused changing these options during a game to not take
-effect until after the next reset.  For TwoMachines games, though,
-changing PonderNextMove just before the game would take effect
-immediately for the second engine but not until the next game for the
-first engine.  Thanks to Koundinya Veluri for the bug report.
+When the Game List Options dialog changes the tags to be displayed in
+the Game List lines, we now automatically redo the entire Game List.
 
-* Bugfix: In 4.2.4, we sometimes got confused when trying to leave and
-reenter analyze mode.  One symptom was that Analyze File did not work.
-Thanks to Igor Syry for the bug report.
+2014-10-16 16:38:00 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Always accept piece commands in variant great
 
-xboard/WinBoard 4.2.4 -- Sun Dec  9 14:56:30 PST 2001
-Tim Mann
-       
-* WinBoard now includes GNU Chess 5.02 in place of GNU Chess 5.00.
+Great Shatranj belongs to the variants XBoard does not know the rules of,
+and should thus always accept engine piece commands.
 
-* WinBoard's PasteGameFromClipboard will now handle a paste with
-multiple games in it, popping up the game list dialog.  xboard
-already did this.  Suggested by Robert Gerstman.
+2014-10-15 21:28:36 -0700 Arun Persaud <arun@nubati.net>:
+make all tests for strings in configure use the same scheme
 
-* We now use the "clearboard" command on ICC where appropriate.
 
-* Bugfix: don't generate a bogus "variant normal" command to an engine
-for the loadable ICC wild types that we internally flag as
-VariantLoadable.  Also clarified the message that Zippy sends when
-declining such wild games -- it can't deal with the possibility of
-loading an arbitrary position into the game.  Thanks to Dieter
-Buerssner for reporting the problem.  It would be nice to be able to
-actually play these wild types some day; presumably there would have
-to be an option to either send "loadgame" with a specified position,
-or to deal with an opponent sending it.
+2014-10-15 21:23:26 -0700 Arun Persaud <arun@nubati.net>:
+updated Changelog, DIFFSTAT, and SHORTLOG
 
-* If we get a holdings message from ICS when we thought we were
-playing normal chess, we now try asking for a move list so that we can
-find out from the header what's really happening.  Formerly we guessed
-bughouse in this case.  Response to a comment from Gian-Carlo
-Pascutto.
+2014-10-15 21:06:36 -0700 Arun Persaud <arun@nubati.net>:
+fix osxapp enable option in configure.ac
 
-* Fixed two longstanding bugs in the clock code.  These affected only
-play between a user and a local engine, or between two local engines,
-not ICS play.  (1) The last fractional second used by a player before
-moving and virtually pushing his clock was being charged to his
-opponent instead of to him.  (2) The time and otim commands were being
-sent to an engine before the (buggy) fractional second update was
-done.  The second bug was pretty harmless in itself, but the first one
-was serious.  Many thanks to Peter Rosendahl for carefully diagnosing
-and reporting these bugs!
 
-* Changed WinBoard timestamp key.  Nothing is changed other than the
-key and a recompilation.  ICC may phase out the old key soon; if they
-do, you'll need to use the timestamp.exe from WinBoard 4.2.4 or later
-to connect to chessclub.com.
+2014-10-15 21:06:00 -0700 Arun Persaud <arun@nubati.net>:
+remove experimental from gtk build option
 
-* Fixed an xboard-only bug where most dialogs would not take keyboard
-input unless the mouse was actually over the dialog, even if the
-dialog window had focus.  Thanks to Jason Varsoke for the bug report.
 
-* Bugfix; Remember to send time and otim commands to engine before
-sending playother.  Thanks to Bob Hyatt for the bug report.  Also
-fixed a bug where time and otim were sometimes sent even with feature
-time=0.
+2014-10-15 21:02:38 -0700 Arun Persaud <arun@nubati.net>:
+only enable osxapp build target on apple systems, clean up configure.ac a tiny bit
 
-* Added small patches from Wilkin Ng that are meant to fix a crash in
-CopyGameToClipboard and a "can't unlock clipboard memory" error in
-PasteTextFromClipboard, under Windows 2000.
 
-* Changed cygwin.mak to not use -mno-cygwin.  In other words, it now
-uses cygwin1.dll instead of the mingw libraries.  This works around
-bugs in fileno() and stat() that I encountered in mingw.  (fileno
-seems to always return 0.  stat fails because the library routine uses
-a different definition of struct stat than the header files provide.)
-Thanks to Robert Gerstman for reporting the symptoms these bugs caused
-when WinBoard was compiled with Cygwin.
+2014-10-15 20:57:28 -0700 Arun Persaud <arun@nubati.net>:
+update NEWS file
 
-* Added -showButtonBar option.  This lets you delete the << < P > >>
-buttons and thus widen the message widget a bit.
 
-* Added code to address a very obscure bug.  If an engine dies and
-needs to be restarted while in one of the analyze modes, it was not
-getting put back into analyze mode.  This bug should not really ever
-have gotten tickled unless reuse was turned off and the engine sends
-game end commands (such as 1-0) when a game ends by rule while in
-analyze mode.  The next version of the protocol spec will say that
-engines should not do that, but version 2 and earlier didn't address
-the issue.
+2014-10-15 23:48:14 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Don't switch to engine-defined variant on game loading
 
-* We now use the FICS "iset ms 1" feature to get times in ms instead
-of seconds.  Thanks to DAV for email telling me about this feature.
+When loading a game from PGN the variant tag will have been decoded as
+'normal' in case of an engine-defined variant, and we certainly would
+not want to switch to that. Better stay in the variant the user had
+selected before, and hope for the best.
 
-* Changed clock display to show tenths of seconds for 9.9 seconds and
-less, instead of 0.9 seconds and less as before.
+2014-10-15 21:50:44 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Implement displaying of variant tag in Game List
 
-* It has been discovered that Zippy can play simuls on ICC (but not on
-FICS).  If you arrange for Zippy to send the ICC command "simulize" in
-the -zippyGameStart string, it will accept additional games while
-playing.  Zippy will use the same engine for every game, so whenever
-it switches opponents, the engine's state will be reset with the "new"
-command.  This will of course weaken its play, so don't enable simuls
-if you want your engine to have the highest possible rating.  Zippy
-was never designed to work with simuls; it just works by accident, and
-it hasn't been tested much.  So please report any bugs you notice, but
-don't expect them to be fixed rapidly.  Thanks to Paul McGuire for
-noticing that this works.
-       
-* Bugfix: Suppress the direct command to engine popup if there is no
-engine.  In WinBoard this case used to cause a crash.  Thanks to
-"Dargon" for the bug report.
+The variant tag was displayed as an empty string in game-header lines.
+Processing it during PGN load was not able to handle engine-defined
+variants anyway; they were recognized as 'normal'. A new field in the
+GameInfo struct now holds variantName in text form, and this is the
+primary place from which it is displayed in the Game List.
 
-* Bugfix: formerly we did part of the engine initialization for the
-very first game too soon, before feature negotiation.  One result of
-this is that engines would never get the "ics" command for the first
-game.
+2014-10-15 21:06:53 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Update Game List when setting new Game List Tags
 
-* Lengthened timeout to detect protocol version 1 chess engines to 10
-seconds.  This should reduce problems with protocol version 2 engines
-that are slow to initialize missing the timeout and not getting a
-chance to send their feature commands before the first game starts.
+Using the Game List Tags dialog to alter the gae header lines now
+automatically causes an update of the Game list according to the new
+tags specification.
 
-* Klaus Friedel says that adding a short sleep to WinBoard after
-starting a new chess engine solves a problem that occurs under Windows
-2000, in which engines sometimes don't see the initial command(s) from
-WinBoard and hang.  I don't understand how that can happen, but the
-sleep is harmless, so I've put it in.  Others have also reported what
-may be the same problem, so hopefully this will fix it for them too.
+2014-10-15 20:26:31 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Reset move entry on Clear Board
 
-* Bugfix: editing the Result field in EditTags will no longer cause a
-later crash.  Thanks to DAV for a clear bug report that let me
-reproduce the problem.
+The board markers would stay on when the board was cleared, and a
+no-longer-present piece would stay selected, leading to deletion of the
+first piece that you tried to select.
 
-* ICC wild 28 is now recognized as shatranj, but it is not supported.
-You might be able to play it by turning off Test Legality.
+2014-10-14 09:38:05 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Split Tournament dialog in side-by-side panes
 
-* Formerly we would always turn off "feature time" if the engine
-printed an error message with the string "time" or "otim" in it; now
-we do that only if the message comes before the engine makes its first
-move.  This change is useful because some engines spew a lot of bogus
-error messages about commands they don't fully parse, so something
-like "result 0-1 {White lost on time}" could generate such a message.
-Engines shouldn't do that, but if they do, mysteriously turning off
-"feature time" is not a good way to react.
+This seems to cure a sickness in some Xaw versions, which refused
+to display text in the text widgets, or make them sensitive for mouse
+clicks if the last three buttons were added. It also helps keeping
+the 'OK' button on-screen in the GTK version.
 
-* Fixed an infrequently occurring Zippy bug: formerly, resuming from
-adjournment by position (that is, with GetMoveList turned off) or
-starting/resuming a wild game (nonstandard starting position) would
-try to set up the position without putting the engine into force mode
-first.  That was probably tolerated by most engines, but if the
-position was black-to-play and the engine hadn't set feature
-setboard=1, then the fake "a2a3" move (which we use as a kludge to get
-black to be on move before sending the edit command) would appear to
-be a real move, and the engine might reply to it!  This bug could also
-be seen when trying to use Zippy to play a simul -- something that
-Zippy was never designed to support, but which seems to mostly work
-anyway.  Thanks to Paul McGuire for sending a WinBoard.debug file that
-showed the bug occurring.  Some other cases of resuming adjournments
-or starting games from nonstandard positions may have been broken too;
-I think I've straightened out the problems.
+2014-10-12 19:43:24 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Remember position obtained from setup
 
-* Agreeing to a draw in the human vs. local engine case formerly did
-not work if the human offered first; now it does.  A human's
-unsolicited offer is considered valid until he makes another move.
-Thanks to Bruce Moreland for the bug report.
+When the engine sends a setup command, it should be remembered as
+initialPosition, in order for the castling 'rook' test of the Betza
+move generator to work.
 
-* Bugfix: We used to look for just "fr" in Event tags or strings from
-ICSes to recognize Fischer Random games.  This caused a lot of false
-matches.  Now we look for "wild/fr" instead, which is what FICS uses.
+2014-09-13 12:35:12 -0700 Joshua Pettus <jshpettus@gmail.com>:
+Add build script to configure for a XBoard.app for OS X
 
-* Bugfix: Clicking on a move in the MoveList window only updated the
-displayed position; if a chess engine was active, its state was not
-updated.  Thanks to Alejandro Dubrovsky for the bug report.
-       
-* Bugfix: The "resign" command from engine to xboard formerly did not
-work in ICS (Zippy) mode.
+This relies on the the gtk build and adds some special code in
+gtk/xboard.c so that XBoard can be installed inside the app directory
+independ on where the app file is located.
 
-* Bugfix: Formerly we would register a garbage premove if the user
-clicked on a piece, then clicked on an edge or outside the board.  Now
-such an errant click is ignored.
+2014-10-12 10:09:51 -0700 Arun Persaud <arun@nubati.net>:
+replaced hardcoded pngdir with built-in ~~
 
-* Bugfix: GameEnds would send "exit" to an engine in analyze mode even
-if we did not actually want to leave analyze mode.
+don't need to create xboard.conf from xboard.conf.in anymore
 
-* Bugfix: "feature pause" was being rejected.  We don't currently use
-it, but that is no reason to reject it.  Thanks to Gian-Carlo Pascutto
-for the bug report.
+2014-10-12 00:18:50 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Some improvement on new Shogi SVG pieces
 
-* Bugfix: when "partner" needed to be sent both to ICS and the engine,
-Zippy was erroneously sending the ICS prefix character to the engine
-too.  Thanks to Gian-Carlo Pascutto for the bug report.
 
-* Zippy now declines challenges when the engine is not yet ready to
-play again, instead of ignoring them.  This is needed so that the
-server will let the opponent repeat the challenge.  It might be better
-to remember such challenges and accept them when the engine is ready,
-but that would be a bit more complicated to implement.
+2014-10-11 10:55:41 -0700 Arun Persaud <arun@nubati.net>:
+updated spanish, ukranian, and dutch translation
 
-* Bugfix: Zippy's emotes didn't work on FICS because there, "i" is a
-built-in alias for "it", not a real command.  So sending "$i foo" gave
-an error message instead of doing "it foo".  We now leave out the
-alias-suppressing prefix for emotes.
 
-xboard/WinBoard 4.2.3 -- Mon Feb 19 19:55:05 PST 2001
-Tim Mann
+2014-10-11 19:42:03 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Fix logos Xaw
 
-* Bugfix: The error message "Variant X not supported by gnuchessx"
-formerly could pop up even in -ncp mode.
+The patch for logo standard left a typo and an excess line in the Xaw
+version. This is fixed, and also implements the user-logo cascade for
+the Xaw version.
 
-* Fixed an xboard bug in premove highlighting.  If you had
-HighlightLastMove turned on, premoves got highlighted in
-highlightSquareColor (yellow) instead of premoveHighlightColor (red).
+2014-10-11 19:26:23 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Try also /home/<user>/.logo.pgn for user logo
 
-* Modified premove again.  Now we are back to displaying the move
-locally immediately after sending it to the server, as in versions
-prior to 4.2.1.  This is good because it lets you register your next
-premove sooner.  As a better fix to the problem that the change in
-4.2.1 had been trying to address, we now suppress animating the
-opponent's move if you have a premove reply pending.  However, it's
-probably still a good idea for you to turn off AnimateMoves entirely
-if you are trying to play extremely fast games.
-       
-* Removed an erroneous patch that left zombie chess engines around
-when both sigterm and reuse were turned off.  (Bug was in xboard only,
-not winboard.)
+The user logo now also has a cascade, first looking in the user's home
+folder for a file .logo.png, and then in the -logoDir for <user>.png.
 
-* Bugfix: loading a game with autostepping did not work for games with
-PGN result "*" (unfinished).  This bug was introduced in 4.1.0, caused
-by some outdated code that was supposed to leave you in EditGame mode
-after loading an unfinished game.  I fixed this, and also changed it
-to leave you in EditGame mode after loading *any* game, but without
-changing the tags to say it's an edited game.  It's not really clear
-whether that is the best thing is to do here -- ideally, perhaps, the
-tags should change to say "edited game" if you actually make any
-changes, but that is harder to make work.
+2014-10-11 16:38:03 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Fix ICS logo display
 
-xboard/WinBoard 4.2.2 -- Tue Feb  6 20:00:00 PST 2001
-Tim Mann
 
-* Fixed a problem introduced in 4.2.1.  In -zippyPlay mode, 4.2.1
-started sending the initString immediately after the old game ended,
-but then when the next game started, it would still send "force" and
-another initString.  Another problem was that the first initString put
-the engine out of sync with the displayed board position, though that
-might not usually have been noticeable.  This is now changed to do a
-full Reset at the end of the previous game, and avoid doing a Reset at
-the start of a new game if we are still in BeginningOfGame mode.
+2014-10-10 18:14:09 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Show current variant on New Variant buttons GTK in bold
 
-* Fixed some limitations in -zippyPlay mode.  The engine was not being
-fed the moves or history of games that were displayed but not being
-played, so it would get confused if you tried to do something like
-examine a game, then enter EditGame mode from somewhere in the middle
-of the game.
+If an engine-defined variant is selected, we compare its name to the
+inscription on the button, otherwise we compare the variant numbers.
+(Test to trigger this is a bit awkward, to not inadvertantly apply it
+to the ICS Text Menu, which also has colored buttoms.)
 
-* Made a small change so that cygwin can compile xboard for Windows
-(an X server is required to run it).  Thanks to Volker Zell.  Most
-people would probably prefer to run WinBoard on Windows, however; note
-that cygwin could already compile WinBoard.
+2014-10-10 17:01:51 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Increase number of engine-defined-variants Buttons XB
 
-* Added some missing documentation to engine-intf.html: It is okay to
-send "feature done=0" even before you receive the xboard and protover
-commands, if this is needed to give your engine enough time to
-initialize.  See engine-intf.html for more discussion.
+An third column is added to the New Variant dialog when necessary.
 
-* Bugfix: "feature done=0" did not work for the second engine; now it does.
+2014-10-09 23:25:26 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Force GTK logo size to quarter board width
 
-xboard/WinBoard 4.2.1 -- Sat Feb  3 19:52:26 PST 2001
-Tim Mann
+This is what GTK will do anyway, because clocks and logos are in a hbox
+that equally divides space, so telling XBoard different just misinforms it.
 
-* Bugfix: in Zippy mode with feature san=1, the elapsed time was being
-sent to the engine after the SAN move; for example, "e4 (0:01)" was
-sent instead of just "e4".
+2014-10-09 17:08:45 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Replace default Shogi pieces
 
-* It seems that scroll wheel mice with incompletely installed software
-(under Windows 95, at least) can send repeated middle button up events
-when the wheel is turned.  Moved QuickPaste from middle button up to
-middle button down to avoid problems with this.
+The SVG Shogi pieces are replaced by a new set, made by Joshua Pettus.
+This set also contains and Elephant and Crown Prince.
 
-* A premove is now sent *before* the opponent's move that it replies
-to is animated.  The premove itself is no longer displayed (or
-animated) when sent; instead, it is displayed when the chess server
-echoes it back as a board update.
+2014-10-09 09:35:33 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Implement new logo standard
 
-* Bug fix: in -xreuse mode, xboard was only sending command line
-arguments to the engine the first time it was started.  (WinBoard
-didn't have this bug.)
+XBoard now looks in the system directories for plugin logos,
+/usr/(local/)share/games/plugins/logos, according to the cascade
+-logoDir, engine dir (-fd,-sd), /usr/local/..., /usr/...
 
-* In -zippyPlay mode, we now initialize the chess engine for a new
-game immediately after the old game ends.  (In -xreuse mode, this
-means starting a new engine process; in the default -reuse mode, it
-just means sending "new".)  If the engine supports ping, we don't
-accept challenges until the "new" has finished.  This should help
-avoid losing time (re)initializing the engine after the game starts.
+2014-10-09 08:47:25 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Relocate OS X' LOCALEDIR
 
-* We now handle the new FICS field in style 12 that says whether the
-clocks are ticking.
 
-* whiteFlag and blackFlag are now reset whenever an ICS board image
-arrives, giving autoflag a fresh chance to work.
+2014-10-08 21:56:28 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Fix check test with multi-leg moves
 
-* Suppressed "geometry error" debug messages unless -debug flag is given.
+The check test after a multi-leg move was still using the same kill
+square in the opponent's reply, making it blind to King captures in
+a second leg. So far we got away with that because the Shogi multi-leg
+pieces also can reach all their potential victims in a single step,
+but with engine-defined multi-leg moves there is no guarantee this
+will always be the case.
 
-* Bugfix: avoid core dump on Solaris with -debug flag, caused by
-passing NULL to a %s format in GameEnds.
+2014-10-08 21:55:17 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Fix infinite loop in cylinder moves
 
-* Added -firstProtocolVersion and -secondProtocolVersion.  This will
-allow use of extremely broken engines that hang or die when given the
-"protover 2" command.  It should be rarely if ever needed.
 
-* Zippy now strips highlights from player names in the Creating
-message; previously the ratings would not be extracted from this
-message properly if you had set the highlight variable.
+2014-10-07 19:13:54 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Let t on final leg in Betza notation forbid checking
 
-* Bug fix: Zippy with -zp but not -zt used to be fooled by false
-partner tells inside channel tells; e.g.: 
-Garf(24): Garf (your partner) tells you: sit
+To allow approximate definition of pieces that are too difficult to
+describe exactly, we can revoke their capture rights on Kings,
+to prevent imagined moves that happen to threaten a King forces the
+opponent to evade this imagined check, making most of his moves illegal.
+Then the piece can be safely replaced by an upward-compatible one,
+leaving rejection of the extra moves to the engine.
 
-* Bug fix: when an engine reported its name with the new "feature
-myname=" command, we had been putting just that name into the window
-title even when in TwoMachines mode.
+2014-10-07 18:56:59 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Implement Betza hr and hr as chiral move sets
 
-* By default, WinBoard no longer uses the new feature introduced in
-4.2.0beta of keeping the ICS menu, ICS server list, and lists of chess
-engine command lines in separate files; instead, the lists are back in
-the winboard.ini file.  This gets rid of some problems where the
-separate files could not be opened because the working directory was
-not set to WinBoard's installation directory.
+To easily separate right- and left-handed moves on oblique atoms
+(which needs opposite use of l and r in their multi-leg continuations),
+the direction sets hr and hl are added.
 
-* WinBoard command lines and ini files now have another optional
-syntax for quoting an option value.  All characters within { } curly
-braces are interpreted literally except for '}' itself.  SaveSettings
-now uses this syntax for string values that contain a backslash or
-newline and do not contain a '}'.  This should address the problem
-that the separate .ini files had been meant to fix; engine command
-line lists can now be written without \-escapes.
-       
-* Fixed three bugs in relaying moves between engines in TwoMachines
-mode: an engine would be sent SAN if the *other* engine had set
-feature san=1, a relayed SAN move did not end with a newline, and
-feature usermove was not implemented for relayed moves.
+2014-10-07 08:20:06 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Preserve other Betza mode bits on setting default modality
 
-* Fixed several bugs in exiting: File/Exit would sometimes hang;
-timestamp/timeseal would not get killed off; an engine crash would
-cause error messages to be printed recursively until stack overflow.
 
-* Fixed a bug in the code to detect which ICS is in use and adapt to
-it; the chess.net case was broken.
+2014-10-06 20:20:00 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Switch to new Betza orth-diag conversion standard
 
-* Removed the leading alias-suppression character when sending a move
-to ICS, because it seemed to break accuclock on chess.net.
+The interconversion from orthogonal to diagonal atoms is now possible
+for any 4-way atom, based on specification of an 'in-between' direction,
+irrespective of modality. Also take backward out of default continuation
+direction-set.
 
-* Fixed a bug where a FICS prompt like "10:01_fics%" would be matched
-as finger note number 10, causing a problem detecting when the user is
-logged in.
+2014-10-03 10:31:47 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Implement Betza t modifier for hop-own
 
-* Added tellicsnoalias command to protocol.
+The 't' modifier will restrict any form of hopping as specified by
+p or g modifiers to friendly pieces. This only works on non-final legs.
 
-* Changed st command in protocol back to old behavior.
+2014-10-02 19:32:45 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Implement directional modifiers on KQ, and let y&g upgrade
 
-* Added done=0 feature to protocol, to lengthen initial timeout.
+The Betza y and g modifiers now not only change range, but also upgrade
+the directional capabilities of the atom to full non-degenerate 8-fold.
+Directional modifiers can now be used in that symmetry too, to maximally
+exploit this, and implement 4-fold pieces that make 45-degree turns.
+Let oblique continuation legs also use the non-degenerate system.
 
-* Added missing -colorSeek command line option to xboard.  (Was
-present in WinBoard.)
+2014-10-02 15:19:09 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Implement Betza y modifier
 
-* Bug fix: setting feature reuse=0 was not working.
+The non-standard modifier 'y' is the spontaneous counterpart of 'g',
+changing the range of the atom, and upgrading its directionality.
 
-xboard/WinBoard 4.2.0beta -- Sat Dec 16 16:34:56 PST 2000
-Tim Mann
+2014-10-02 10:21:43 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Implement Betza g modifier for non-final legs
 
-* Setting -searchTime no longer turns off -clockMode.  Note that when
--searchTime is set, some engines may search for the lesser of
-searchTime and the amount of time their normal clock management would
-dictate, while others will disable their normal clock management and
-always search for exactly searchTime.
+The g modifier is implemented as a p that turns a rider into the
+corresponding leaper when it hops, and vice versa. This is done by
+stripping off any existing range indicator, and making the range
+infinite by suffixing '0' when the old range was 1 (whether implied
+or explicitly written). Except that for sliders/steppers this is done
+by atom-name conversion after stripping off the range. Limited range
+thus in general turns into leaper (D -> D0, Dn -> D), but with FWK
+W3 -> R and R3 -> W, etc.
 
-* Fixed WinBoard bug where on Windows 2000 (and maybe Windows 98) the
-ICS Interaction window would scroll back to the top whenever it filled
-to capacity and WinBoard trimmed some text off the top.
+2014-10-01 15:32:14 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Implement Betza a modifier
 
-* Changed xboard dragging so that the center of the dragged piece is
-forced to be over the mouse cursor.  (WinBoard dragging already worked
-that way.)  This should avoid confusing cases when you start a drag
-with the mouse near the edge of a square -- formerly most or all of
-the piece could be over one square but the mouse cursor over another.
-Suggested by DAV.
+This is pretty complex, and might overload the current primitive two-leg
+legality testing when pieces are defined that can reach squares only in
+two legs.
 
-* Added move list window for xboard.  Code contributed by Manuel
-Hoelss and re-hacked a bit by me.  Performance of this window is poor,
-because the implementation regenerates the entire window contents
-whenever anything changes.  It's hard to avoid this when using the
-Athena List widget, though we could be a little smarter and notice
-when the current move number has changed but the move list has not.
-There are also several drawing problems caused by bugs in the Athena
-Form and List widgets.  The window should not really allow a
-horizontal scroll bar, but the bugs are much worse if I turn it off.
-In both Xaw and Xaw3d, the List widget tries to resize itself when
-XawListChange is called, even if you tell it not to; and what's worse,
-if the widget cannot resize itself to be large enough to avoid
-clipping any of the list item, it does not change the list!  Arrgh.
-On top of that, the Xaw Form widget is very buggy in XFree86 4.0.1
-(X11R6.4.3).
+2014-10-01 09:28:32 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Implement Betza j on W,F as skip first square
 
-* The OK button in the WinBoard startup dialog is now simply disabled
-if none of the radio buttons is selected, instead of bringing up an
-error dialog.  Suggested by Ted Milbaugh.
-       
-* Used ping to address the worst of the race conditions in the
-protocol.  Now if an engine supports ping, we ping it after sending
-the "new" command and after trying to place it in force mode at the
-end of a game.  When a ping has been sent and the corresponding pong
-has not yet come back, we (1) ignore or undo any moves the engine
-sends, (2) ignore game end messages (such as "offer draw", etc.) from
-the engine, (3) ignore thinking output from the engine, (4) delay
-starting the next game if in -matchGames mode, (5) in -zippyPlay mode,
-respond to challenges with a polite message to try again soon instead
-of accepting them.  There are a few more things that should be done
-(and item 5 might not be quite what we want), but it's hard to fit
-them all into the existing code.
-       
-* Patched the version of GNU Chess 5.00 included with WinBoard to
-support protover, feature, setboard, and ping, and to fix some minor
-bugs.  See gnu500+.patch.
 
-* Changed the GNU Chess 4 kludges for missing "st" and "sd" commands
-to be invoked only if the engine gives an error message for "st" or
-"sd", and to always use protocol commands instead of engine
-command-line options.  See "Idioms" in engine-intf.html.
+2014-10-04 21:56:14 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Always accept piece commands for Falcon and Cobra
 
-* Added new protocol command "protover 2" to tell the engine what
-version of the protocol is in use.  Version 2 is still compatible with
-old engines; see engine-intf.html.
+The wild-card pieces Falcon and Cobra do not have any moves assigned to
+them, and XBoard would accept any move for them even when legality
+checking is on. So for these pieces it is always better to trust the
+engine's piece definition.
 
-* Add new protocol command "feature ..."  The engine can send this in
-response to the protover command command, to say what extended
-protocol features it would like to enable, etc.  xboard responds
-"accepted F" or "rejected F" for each feature F that is set.  See
-engine-intf.html.
+2014-10-04 21:52:51 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Fix pieceToCharTable of Falcon Chess
 
-* Added new protocol command "setboard <fen>".  This is an alternative
-to "edit", used only if the engine says "feature setboard=1".
+This variant was using the Falcon piece, but defining ID F for the
+unused Lance instead.
 
-* Added new protocol command "ping <msg>".  The engine is supposed to
-respond "pong <msg>".  This gives us a tool to fix some race
-conditions in the protocol, but it is not used to the fullest yet.
+2014-10-04 19:59:13 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Don't preserve setup position on board-size change
 
-* Added new protocol command "tellopponent".  This will do a "say" if
-you're on a chess server in Zippy mode, or pop up an information
-dialog otherwise.
+Normally the setup command sent by an engine is ignored if the user
+already has set up a position, to not render it impossible to do the
+latter. But if the setup command orders a different board size nothing
+the user has set up can possibly remain valid.
 
-* Added new protocol command "tellall".  This will do a "kibitz" if
-you're on a chess server in Zippy mode, or pop up an information
-dialog otherwise.
+2014-10-04 19:39:06 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Reset move entry on stepping through game
 
-* Added new protocol command "tellothers".  This will do a "whisper" if
-you're on a chess server in Zippy mode, or do nothing otherwise.
+A forward or backward step through the game after selecting a from-square
+did not erase the latter, so that it became impossible to select a
+from-square for an opponent move, as it would be interpreted as the
+to-square for the patially entered move. This was especially annoying
+with legality testing off, as the legality test there, based on the
+square markings, does not reset the entry state either, but waits
+until you do click a legal to-square, so that you had to attempt
+moving with pieces of the side not to move to get out of this state.
+Now stepping through another position will reset the move-entry state
+completely, always considering the first click a from-square selection.
 
-* Changed the WinBoard /icsNames, /icsMenu, /firstChessProgramNames,
-and /secondChessProgramNames options to accept a filename preceded by
-"@", meaning to find the value in the file.  Changed the defaults to
-use this feature, with filenames icsnames.ini, icsmenu.ini, fcp.ini,
-and scp.ini.  This should make it easier for users to edit the values,
-since one less level of quoting is needed, and each value is in its
-own file, not mixed into winboard.ini.  Those who upgrade from an
-older winboard version and already have a winboard.ini file will not
-automatically have these values moved to a file; that has to be done
-by hand if desired.
+2014-10-07 20:55:00 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Fix engine-defined variant as startup
 
-* We now strip .exe from engine names for "name" command, tags, etc.
+Non-standard names were all recognized as 'normal' in InitBackend1().
+Now if the -variant argument was not "normal", it is assumed to be an
+engine-defined variant if we run with engine.
 
-* Allowed WinBoard input widget to hold more than one line.  You can get
-a newline into the widget with copy/paste or with Ctrl+Enter.
+2014-10-07 18:53:50 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Fix clipping of board GTK
 
-* Fixed an xboard bug where the [P] button would appear in the
-opposite highlight state from what it should be after being pressed.
+ResizeBoardWindow now measures the with of the window dressing by
+brute force, interrogating GTK both for the width of the top-level
+window and the board widget, and subtracting the two.
 
-* We now use the "/" or "$" alias suppression feature on the chess
-servers, to avoid problems if the user inadvertently aliases a
-needed command to something else.
+2014-10-08 18:28:09 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Fix writing of Seirawan960 virginity in FEN
 
-* Changed the method used to deiconize xboard in AutoRaise and cmail.
-This may fix bugs under some window managers where after
-deiconization, the board window was mapped but nothing was drawn
-inside.
+When variant seirawan was played with Fischer castling, only the
+castling rights were written, and not the virginity of other pieces.
+Now all virgin files are dumped in Shredder-FEN style.
 
-* Preliminary, partial support for playing several chess variants
-against a local engine or editing variant games.  The -variant option
-must be given on the command line or WinBoard startup dialog; there is
-no menu.  The current variant is not displayed (except in the
-Tags/EditTags window).  Many variants will not work quite right even
-if the engine supports them; see item 326 in the ToDo file for
-details.
+2014-09-29 21:07:17 -0700 Arun Persaud <arun@nubati.net>:
+update po/pot files
 
-* Added a workaround to detect the variant type when examining a
-scratch wild game on an ICS.
 
-* Fixed two cases where "variant" command should be sent to the engine
-when necessary but was not: loading a game from a file and restarting
-a dead engine.  Thanks to Gian-Carlo Pascutto.
+2014-09-29 21:00:42 -0700 Arun Persaud <arun@nubati.net>:
+new version number for release 4.8.0
 
-* Added missing support for FICS games that start from a bsetup position
-with Black moving first.
 
-* Fixed a bug in loading a file from the game list window while in
-Analysis or AnalyzeFile mode.  This now leaves us in AnalyzeFile
-mode, analyzing the new file.
+2014-09-13 14:33:37 -0700 Arun Persaud <arun@nubati.net>:
+fixed whitespace error in configure.ac for os x
 
-* Fixed a bug in loading games with a comment before the first move.
 
-* Fixed a bug in handling LoadGame (or -lgf) with -td 0.
+2014-09-20 10:06:17 -0700 Arun Persaud <arun@nubati.net>:
+update gettext configuration to not include any generated files in git
 
-* Added a command line option to select an initial minor mode from the
-Mode menu.  This should satisfy requests from a couple of users with
-special applications.
+before we had a somewhat mixed setup, which seems to create problems
+when a different gettext version was installed on the users machine compared
+to the version used to generate the files in git. This should solve
+the problem. The user will now have to generate these files using autopoint,
+which we call from autogen.sh.
 
-* Fixed a problem where some things in WinBoard's General Options
-dialog box were grayed out at the wrong time.
+2014-09-28 22:19:00 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Configure XBoard for -size 49 in master settings
 
-* We look for a few messages from the chess engine pipe that are
-intended to catch problems starting an engine via rsh, such as "No
-such file".  Moved code so that these strings won't match until other
-protocol messages have been looked for, and documented the messages in
-engine-intf.html.
+Now the code for auto-sizing works, it turns out this does more harm than
+good in the GTK build, as it takes maximum size that fits the screen as
+initial size, and the board window then cannot be shrunk below that.
+So we configure a hard -size 49 for a cold startup.
 
-* Fixed the WinBoard bug that sometimes made the console input box
-white-on-white even when not in password-entry mode.
+2014-09-28 21:27:22 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Implement ff etc. in Betza parser
 
-* Small changes to WinBoard to be compilable with the latest Cygwin
-net release (as of 10-16-2000).  Thanks to Mark Schoenberg.
+Dupliacated directional modifiers can be needed with oblique moves
+to unambiguously specify a direction set, e.g. ffrrN.
 
-* Recompiled GNU Chess 5.0 for WinBoard with the latest Cygwin net
-release (as of 10-16-2000).  Also rebuilt the book just to be sure,
-since I had one bug report about it.  It came out identical and seems
-to work fine.
+2014-09-28 13:40:13 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Rename PGN Pieces tag to VariantMen
 
-* Added messages for some common InstallShield errors instead of just
-printing InstallShield's stupid error code numbers.
+Following a suggestion from Steven Edwards, this indeed makes a much
+clearer name. Also add code to skip the tag on reading, rather than
+allowing it to end up with the 'extra tags', as the latter could lead
+to duplication of the tag on subsequent saves.
 
-* Added -firstComputerString and -secondComputerString, allowing you
-to suppress or change the command that is sent to a chess engine when
-its opponent is another computer.
+2014-09-28 11:18:10 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Suppress use of promo-Gold bitmaps in Tori Shogi (WB)
 
-* Added "configure --with-Xaw3d" to allow use of Xaw3d widgets instead
-of Xaw widgets in xboard.  Thanks to Johnny C. Lam of the NetBSD
-project.  I've left Xaw as the default because Xaw3d is too ugly.
-       
-* The version of the Xaw Form widget released in XFree86 4.0.1
-(X11R6.4.3) has a bug that causes xboard to display the button bar
-on top of the message widget.  I've reported the bug and have
-installed a kludge workaround into xboard.
+In Tori Shogi the Swallow Pawn does not promote to Tokin, so the use
+of a Gold General pictogram would only be confusing. So we stick to
+the regular fairy bitmaps in Tori, which is recognized by the board
+having 7 ranks in Shogi.
 
-xboard/WinBoard 4.1.0 -- Sun Sep 17 17:30:14 PDT 2000
-Tim Mann
+2014-09-28 10:55:10 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Prevent board-size oscillations
 
-* Merged Winboard Plus 4.0.8 from Mark Williams into xboard
-  source pool.  Status of Winboard Plus features in xboard:
+It could happen that after resize there was room for enlarging the
+squares by one pixel, but that this crossed the boundary where the line
+gaps also become wider, and there is no room for making both squares
+and line gap. This would cause perpetual oscillations of the window size.
+Resizing is now suppressed when a 1-pixel square-size increase would also
+result in a line-gap increase.
 
-  - White pieces now have borders, but the implementation is
-    completely different from WinBoard's; see below.
+2014-09-28 10:09:17 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Allow use of second-row pieces for non-promoted in drop games
 
-  - Options menu not changed, probably won't be.
+Second-row pieces were automatically demoted on capture, but this
+should really happen only when the piece-to-char table says it is a
+shogi-promoted piece (assigned a '+' there). Pieces assigned a letter
+should really stay themselves.
+ PieceToNumber had to be adapted to skip '+' pieces in order to count
+correctly for second-row pieces, as did the code in UserMoveEvent() that
+mapped the from-square onto the piece type. (Why do we do that anyway?
+The piece type was displayed on the from-square!)
 
-  - Copy&paste support working, using Mark's changes to backend.c, Ben
-    Nye's changes to xboard.c for FEN positions, and some code of my
-    own in xboard.c for PGN games.
+2014-09-26 20:24:05 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Fix reset of 50-move counter on FRC castling
 
-  - Premove hooked up and working.  No pre-first-move, though.
+The FxR internal representation was taken a bit too seriously!
 
-  - ICS Alarm hooked up and working.
+2014-09-26 20:15:33 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Fix abort of machine game on variant mismatch
 
-  - Auto-flip working.
+When the second engine did not support the current variant, and we clicked
+Two Machines, there was an error popup, but the Two Machines menu item
+stayed checkmarked. Now we explicitly uncheck it, and switch to EditGame
+mode.
 
-  - PGN Training mode hooked up and working.
+2014-09-26 19:47:08 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Make unsupported variant on loading 1st engine non-fatal
 
-  - Improved menu item enable/disable working.
+Like in the startup code, when the loaded engine does not play the
+currently selected variant, we now figure out what the engine does play,
+and switch to that. The error message still pops up, but not non-fatal.
 
-  - Improved >> button working.
+2014-09-25 23:37:24 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Print PGN Piece tag listing engine-defined pieces
 
-  - Auto activate board working.  I changed this to be optional; you
-    might not always want it, especially in Zippy mode.
+A newly defined PGN tag is printed, which summarizes all non-standard
+pieces. Black copies of identically named white pieces are suppressed.
+In the future also non-standard naming should be reported here.
 
-  - Blindfold working.
+2014-09-25 19:11:21 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Always accept piece commands in partly supported variants
 
-  - Documentation updated.
+Normally piece commands are ignored when legality checking is on, as
+XBoard's idea of legality should obviously overrule the engine's.
+In variants that are not or only partly supported, however, XBoard has
+no own idea of what is legal, so it is better to take the engine's
+advice than enforcing wrong rules.
 
-* Fixed more colorization bugs.  Commands like "message foo tells you:
-xxx" and "tell 33 tells you: xxx" will no longer generate bogus
-colorization.
+2014-09-25 12:29:15 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Size seek graph to also cover board rim WinBoard
 
-* Added low-tech sound support to xboard, by invoking an external
-program on a filename for each sound to be played.
-       
-* ICC wild 27 is now recognized as VariantAtomic, and it sets the
-"ignore check" flag, but is not otherwise supported.
+The seek graph always used the plain board size, but in WB it is
+possible to diplay a rim around the board, and the seekgraph would
+then be positioned in the upper-left corner of the rim, leaving the
+lower and right board edge and rim uncovered. Its size is now increased
+to fill the entire window (as leaving a rim around it seems not useful).
+
+2014-09-25 11:48:00 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Reparse ambiguous move under built-in rules
 
-* Converted the piece bitmaps from .bm to .xpm for use with xboard's
-xpm support.  (An .xim version was not created.)  Wrote a shell script
-using ImageMagick to do the conversion and to bucket fill from
-coordinate 0,0 with the background color.  Used xpaint by hand to
-clean up a few pieces where background color "leaked" into the inside
-or didn't flow all the way around the outside, then a sed script to
-fix up color names and bitmap names in the xpaint output.  If any more
-sizes are added later, they should be straightforward to convert with
-reference to the existing scripts.  With this conversion, not only do
-the white pieces now have dark borders, but (unlike with WinBoard) the
-light details on the black pieces are opaque.
+When a move parses as ambiguous under engine-defined piece locomotion,
+we re-parse it with XBoard's native idea of the pieces, just in case
+it is a move from a game that was saved without the engine having
+redefined the pieces. This keeps games created before the introduction
+of the 'piece' command loadable.
 
-* If the XPM library is found when building xboard, the new xpm pieces
-are compiled in as the default.  External bitmap (or xpm) pieces can
-still be used by giving the -bitmapDirectory (or -xpmDirectory)
-option.  If the XPM library is not found, the old bitmap pieces are
-the default.  In this case external bitmap (or xim) pieces can be used
-by giving the -bitmapDirectory (or -xpmDirectory) option.  There is no
-way to compile in xim pieces.
+2014-09-25 11:14:06 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Prevent multi-path moves from parsing as ambiguous
 
-Winboard Plus 4.0.8 -- Sat Aug 5 15:51 PDT 2000 
-Mark Williams
+In Cylinder Chess the MovesFromString() generator might generate duplicate
+moves, one wrapping, the other direct. When they were both counted as
+matching the SAN input move, Disambiguate() would think it an ambiguous
+move. So a move that came from the same square as the one we already
+have must not be counted.
 
-* Bugfix release.
+2014-09-24 21:47:59 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Fix cross-edge e.p. capture in Cylinder Chess
 
-* Main menu now visible in Win NT.  Thanks to Microsoft for creating a 
-compiler which auto-mutilates the WinBoard.rc file so that the menu is
-displayed under Win 98 but not Win NT.  I fixed the problem by hand editing the
-.rc file.  Sigh.
+ApplyMove() did not remove the e.p. victim when an edge-crossing e.p.
+capture was made, because e.p. rights are only set to neighboring files
+(after checking there is a Pawn there to capture). The e.p. heuristic
+has now been changed to also assume e.p. on file-changing Pawn moves
+that span a large number of files, assuming that these will be wrapping
+moves. Eventually we should change to better e.p. logic that can be
+integrated with engine-configured move generation, as the current system
+would fail for any Pawn that captures more than just neighbor ranks.
 
-* "Reset game" now works properly when invoked from Analysis mode when two
-engines are present. Correction of bug introduced in Winboard Plus. Thanks to
-Mogens Larsen for reporting the bug.
+2014-09-24 19:43:27 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Implement Betza o modifier for cylinder boards
 
-* Pasting a FEN position with Black to move now works in all modes.
-Thanks to Mogens Larsen for reporting the bug.
 
-* Added gnuchess.dat to the distribution and a couple of text files that were
-missing in 4.0.7.
+2014-09-24 17:02:37 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Improve virginity test for engine-defined pieces
 
-*** Merged in the following changes from Tim Mann:
+Two squares in the board are now reserved for flags that indicate
+whether back-rank pieces have been touched. This allows MovesFromString()
+to accurately test virginity of these pieces, rather than having to assume
+it when the piece matches that in the opening position. For other ranks
+the latter test is still used, as these are normally (irreversible) Pawns,
+which cannot return there (and in drop games, when they would, would again
+be considered virgin enough for the purpose of double-pushing!).
 
-* Bugfix: Highlights would sometimes not be taken down, at least in
-xboard.  The problem is that SetHighlight works in chess coordinates,
-not view coordinates, so if flipView has been toggled since the
-highlight was put up, it gets taken down from the wrong square.  Fixed
-by being careful to call ClearHighlights before toggling flipView, not
-after.  Ugh.
+2014-09-24 13:20:31 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Implement Betza p and g modifiers in piece command
 
-* Bugfix: HighlightLastMove would sometimes highlight square a1 after
-a FICS "tomove black" command.
 
-* Bugfix: a move list with initial position that has black to play was
-not being handled correctly.
+2014-09-24 08:28:40 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Repair piece defs with showTargetSquares off
 
-* Removed "decline abort" and "decline adjourn" commands from Zippy.
-The syntax is changing on FICS, and Zippy really doesn't have to
-explicitly decline the requests anyway; it's sufficient to not accept
-them.
+The proxy legality checking based on marking of target square was
+rejecting all moves when target squares were not highlighted.
 
-* ICC wild 26 is now recognized as VariantSuicide (the FICS name; ICC
-calls it "giveaway").
+2014-09-23 21:53:55 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Allow definition of castling in piece command
 
-* Bugfix: PGN games with black to move in the initial position weren't
-being legality checked correctly.  I think this was introduced in
-4.0.6 when I fixed a different PGN bug.  Thanks to Mark Williams for
-spotting the bug and suggesting a fix.
-       
-* Bugfix: the initial "name(" of a kibitz wasn't being colorized.
+Castling is defined by the O atom, with a suffix indicating the number
+of steps the King must step in the direction of the corner. Kings keep
+their normal castling unless overruled by this. Can currently only be
+used on the variant's royal piece, as XBoard's ApplyMove() is not smart
+enough to understand displacing the corner piece is implied when it is
+used on other pieces.
 
-Winboard Plus 4.0.7 -- Thu May 12 17:57 PDT 2000 
-Mark Williams
+2014-09-23 21:49:44 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Update description of piece command in protocol specs
 
-* New white pieces with black borders.
 
-* Major overhaul to Options menu. New dialogs for setting General Options,
-  Board Options, ICS Options, Sounds, Fonts, Colors.
+2014-09-23 14:52:16 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Improve SAN of Pawn moves and allow Betza e.p. definition
 
-* Clipboard support for PGN game scores and FEN positions.
+The move descriptions in 'piece' commands can now use 'i' and 'n'
+modifiers to define a blockable double push. ('n' only work for moves
+of stride 2!) The test for initial moves now is based on comparison with
+the opening position, rather than on a way-to-generous heuristic. (This
+still does not prove in generak the piece did not move, though, but it
+does for Pawns.) A new 'e' modifier stands for e.p. capture; to implement
+this the rank and file of the e.p. square are now stored in the board.
+(EP_STATUS was holding the file of the moved Pawn, which in Berolina Chess
+is not the file of the e.p. square!)
+ The generation of SAN moves for Pawns can now reliably distinguish between
+captures and non-captures even in Berolina, when the move generator informs
+it whether the move was e.p. capture.
 
-* Optional ICS Premove with user-specified first moves for White and Black.
+2014-09-22 22:48:50 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Retune -stickyWindows GTK
 
-* New sound events: ICS Win, ICS Loss, ICS Draw, ICS Unfinished, ICS Alarm.
+This still does not work well, and in particular windows refuse to stick
+to the top of the board window.
 
-* New auto-flip option when playing against a chess program.
+2014-09-22 21:59:00 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Fix detection of screen size GTK
 
-* Added PGN Training mode.
+A gdk call that can get the screen without there first being a window
+mapped to it is used now. This fixes initial sizing of the board window
+on a cold start.
 
-* Certain menu options now disabled while program is thinking.
+2014-09-22 21:57:23 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Configure a size for the Eval Graph
 
-* ">>" button now always goes to the end of the game.
+If no size for the Eval Graph window is configured in the master
+settings file, the window will pop up as 2x4 pixels.
 
-* In ICS mode, the board is automatically activated at the start of a
-new game.
+2014-09-22 20:39:21 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Prevent crash on specifying non-existent texture XB
 
-4.0.7 -- Sun Mar  5 17:17:49 PST 2000  Tim Mann
+By setting the texture width to 0 when the texture could not be loaded,
+XBoard will never attempt to draw it.
 
-* Fixed a nasty bug in parsing ICS game histories that was introduced
-in 4.0.6.
-       
-4.0.6 -- Fri Mar  3 16:20:11 PST 2000  Tim Mann
+2014-09-22 20:30:50 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Configure some themes in XBoard master settings
 
-* Fixed bugs in Zippy's code for responding to messages sent with the
-ICS "message" command.
-       
-* Fixed bugs where xboard could still create dialogs partially off the
-top of the screen.  Fixed unwanted interactions between initial sizes
-and positions of various unrelated xboard dialogs.  Deleted
-borderXoffset and borderYoffset resources.
+The -themeNames option is set to contain some themes that could be
+defined with the default pieces and textures that come with XBoard.
 
-* Fixed restoring the xterm name on exit to work in more cases.
-       
-* Small fix to the WinBoard self-extracting installer: when it starts
-up, it now always deletes any old wb-setup directory left over from a
-previous installation.  Formerly this worked only on Windows 95/98, so
-on NT the self-extractor would sometimes stop and ask the user whether
-it was OK to overwrite the old wb-setup files.
+2014-09-22 18:48:00 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Remove debug printf
 
-* Modified WinBoard to be compilable with the free Cygwin tools
-available from http://sourceware.cygnus.com/cygwin/.  Based on work by
-Mark Schoenberg.  (His mods were enough to get WinBoard through the
-compiler, but a few things were broken along the way, so I reworked them.)
-       
-* Merged changes from Don Fong to make WinBoard compilable with
-Borland C++ 4.5.  I do not have Borland C++ and am unable to test with
-it, but I did make sure the changes don't stop it working with MSVC++
-5.0 and Cygwin.
 
-* Forbade entering TwoMachines mode from MachineWhite or MachineBlack
-mode when machine is on move.  This used to confuse the engine and
-cause problems, because when we try to get the engine to stop, it
-might make a move first, and it might not do that immediately.
-       
-* Variant classification now deals with new ICC wild 25, classifying
-it as "3check".  Also, we are now conservative about new wild numbers
-we don't know about, classifying them as "unknown" instead of
-"normal".
+2014-09-21 16:47:41 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Control Eval Graph with mouse
 
-* Replaced bad GNU Chess 5.00 book in WinBoard distribution with a
-correct one.  1.e4 now no longer takes GNU Chess 5.00 out of book!
-Thanks to Pete Galati.
+Let mousewheel control evalZoom, and right-click toggle between
+normal view and differential view ('blunder graph').
 
-* Made move parser accept and ignore nonstandard ep suffix on PGN moves,
-e.g., "exf6ep" or "exf6e.p."
+2014-09-21 16:10:19 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Add extra font field to Option struct
 
-* Fixed bugs in parsing PGN files starting with no move number, or
-with a move number other than "1." (including "1...").  Thanks to
-Michael Soulier and Stefan Zipproth for example PGN files
-demonstrating the bugs.
-       
-* Changed InitComboStringsFromString to not modify the input string;
-this caused an exception when WinBoard was compiled with MSVC++ 6.
-Thanks to Bert Tuyt for the report.
+Storing the font in the textValue field was too kludgy, as this field
+is already heavily used in the various Option types, for storing handles,
+or defining colors and callbacks. A 'font' field is now added at the end,
+so that it can be optionally initialized in the rare case it is needed.
 
-* In WinBoard, dragging a piece off the edge of the board without
-releasing the mouse button no longer instantly aborts the move.  You
-still must release the mouse button inside a square to complete a
-move, but you can now drag off the edge and come back inside.
-       
-* WinBoard bugfix: If you went into EditGame or EditPosition mode
-while observing or playing an ICS game, and a new move came in
-(snapping you back to ICSClient mode) while you were dragging a piece
-around, the drag state would not be reset, causing the piece you were
-dragging to remain on the board wherever you dropped it.  Thanks to
-David Brinegar for the bug report.
+2014-09-21 13:44:11 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Repair damage done by merging with v4.7.x
 
-* WinBoard bugfix: If you moved or resized the board while your
-opponent was moving, and you had AnimateMoving on, his move would not
-be displayed until after your next move.  Thanks to DAV for reporting
-the bug repeatedly until I finally understood it.
 
-* Added a Zippy "farewell" feature; see zippy.README.
-       
-* Fixed a bug (xboard only) in processing -zippyReplayTimeout on the
-command line.  Thanks to Steve Beer for the report and patch.
+2014-09-21 08:36:22 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Sort fail lows and fail highs below others
 
-* Send "computer" command to both sides in TwoMachines matches.
-       
-* Fixed a Y2K bug in Evan's cmail code!  Thanks to Brian Mays for the
-report and patch.
-       
-* Bugfix: Initialize variant field of GameInfo struct in gameinfo.c.
-This could cause crashes in LoadGame.  Thanks to Andrzej Nagorko.
-       
-* Fixed several pattern matching problems: Finger notes and formula
-vars no longer get replied to by zippyTalk or colorized.  Channel
-tells by players with many titles are now colorized fully, and
-zippyTalk handles channel tells by such players correctly.  The shout
-"--> foo(99): bar" no longer gets colorized as a channel tell.  Code
-is cleaned up a bit, and autocomment capture now uses the same
-criteria as colorization.
+Every more recent line should always float up aove lines that were
+indicated to be fail lows or fail highs through ? or ! PV suffixes.
 
-* xboard fix: Enter key now closes error popups as in WinBoard.
-Especially nice for the "Exiting: Connection closed by ICS" popup.
+2014-09-20 12:58:32 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Describe the new texture conventions in manual
 
-4.0.5 -- Tue Dec  7 10:30:40 PST 1999  Tim Mann
+The exact rules for how textures are scaled in response to their
+filename is described in the manual.
 
-* Added missing documentation of SIGTERM usage into engine-intf.html.
+2014-09-19 10:22:14 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Force exactly overlayed texture scaling through filename
 
-* Bugfix: New -zippyReplayTimeout option was misspelled in WinBoard as
--zippyReplyTimeout.  Thanks to Francesco Di Tolla.
-       
-* xboard -ics now restores the xterm's original title upon exit, at
-least if $WINDOWID is set.
+A filename suffix -NxM.png on a texture image will cause XBoard to scale
+the image as if it were the image of a complete board of N files and M
+ranks, to make the square size equal to that of the current board,
+and adjust the cutting parameters such that contiguous squares are cut
+out of it. (If the current board format is larger than NxM, the remaining
+space will be padded with white!)
+ If N=M=0, N and M are assumed to correspond to the current board size,
+and the bitmap will be scaled to fit the height of the board.
+ If no suffix is present, the old cut-and-tile algorithm is used. It will
+be assumed the texture bitmap is intended for a single square, unless the
+pathname contains a file that starts with "xq", in which case it is assumed
+that the file contains a Xiangqi board.
 
-* Bugfix: -matchGames mode wasn't terminating properly.  Final score
-popup would come up twice and engines would not be killed off.  Thanks
-to Frank Quisinsky for the bug report.  Bug was introduced in 4.0.4.
+2014-09-18 23:30:09 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Allow two Pawns per file in Tori Shogi
 
-* Bugfix: "tell 50 foo shouts: bar" no longer gets colored as a shout;
-similarly for "...s-shouts:" and "...c-shouts:".  Thanks to David Lee
-for the bug report.
+When the board has 7 ranks it is assumed to be Tori Shogi, and the
+requirement for maximally one Pawn per file is relaxed to two.
 
-4.0.4 -- Fri Dec  3 17:51:27 PST 1999  Tim Mann
+2014-09-18 23:08:36 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Test legality even when off if engine defined pieces
 
-* Bug fix: formerly if you invoked SaveGame from EditPosition mode
-with black to play, the position was not saved properly.  As a quick
-fix, SaveGame now takes you out of EditPosition mode before saving.
+After reception of a piece command XBoard will mark target squares
+even when legality testing is off, and now also will require the lifted
+piece to land on a marked square (like when the engine highlighted them
+through a highlight command).
+ A problem is that this does not work for drops, as drops do not mark
+target squares. So drops are always accepted. Which of course is bad
+for Pawn drops. But there really is no way yet for an engine to specify
+how pieces can be dropped, similar to the 'piece' command.
 
-* Changed -matchGames to keep track of the score (won-lost-drawn) and
-display it in the banner.  The final score is displayed in a modal
-popup before the program exits.
+2014-09-17 22:32:43 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Fix texture scaling
 
-* Changed "Connection closed by ICS" to display in a model popup
-before the program exits.
 
-* Added -popupExitMessage option, default on.  Setting this to false
-suppresses the modal popups that you sometimes get just before
-xboard/winboard exits -- both the two new ones listed above and the
-existing Fatal Error popup.  This is useful when running Zippy
-unattended from a shell script (or .bat file) that loops and starts a
-new copy after a time delay when there is an error.
+2014-09-17 13:41:58 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Implement engine-defined pieces
 
-* In xboard, added missing support for WM_DELETE_WINDOW to all
-windows.  This makes xboard a better citizen, and is much needed with
-the newer X window managers that put an [X] button on every window and
-bind it to "kill application" if the applicationd does not support
-"delete window".  We can't allow xboard to be thoughtlessly killed,
-since that leaves the chess engine running in the background.
+When legality testing is off, XBoard now listens to 'piece' commands
+to redefine its move generator. After such a piece command is received,
+target-square marking also can be used when legality testing is off.
+The engine keeps in charge of legality testing, though.
+ Only a very basic version of Betza notation is currently understood for
+the move description: mode modifiers have to appear in the order mcd,
+and gpz modifiers are ignored. Multi-leg moves as in Betza 2.0 is not
+implemented at all. A leading i modifier limits the moves to the first
+two ranks, which is no good at all. (But XBoard does not keep track of
+which pieces have moved, and this at least would work for Pawns in a
+FIDE-like setup, in particular Berolina.)
 
-* We now avoid positioning tops of xboard dialog boxes offscreen.
+2014-09-17 09:44:15 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Scale texture bitmaps that are not large enough
 
-* zippy.lines can now use the caret ('^') character as an inter-saying
-separator. You no longer need to dig up a text editor that can put NUL
-('\000') characters in text files.
+Texture bitmaps are now sized up by an integer factor to be at least
+as large as the board (if they seem intended for a full XQ board, which is
+assumed when they are larger than 256x256) or the square. This necessitated
+the textures to be re-initialized in InitDrawingSizes whenever the window
+size changes.
 
-* Bugfix: In traditional chess clock mode, White now gets time added
-to its clock as soon as it makes time control.  Previously both White
-and Black got their time added only when Black made time control,
-which would cause some engines to make their 41st move as White too
-quickly, thinking they were low on time.
+2014-09-16 19:04:19 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Ignore color arguments not starting with #
 
-* The zippyAcceptOnly feature no longer sends a decline command or
-a tell.  Thus you can use it to put Zippy into a manual accept mode.
+Old settings files from xpm-using version might still contain color
+designations like 'white' or 'red'. Since Cairo would interpret these
+as black, it is better to ignore them, so the default color is used.
 
-* Bugfix: "tell 50 foo tells you: bar" no longer gets colored as a
-personal tell; similarly for "...whispers:" and "...kibitzes:".
+2014-09-15 15:30:40 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Implement -autoInstall option
 
-* WinBoard no longer blanks the message line when you start a new
-move, unless there was an error message there from the previous move.
+When -autoInstall is a non-empty string, XBoard will scan the system's
+plugin specs directories for UCI and WB protocol, to see if new engines
+were added since the last settings save. If so, they are added to the
+list of installed engines.
+ The variants listed in the plugin-spec files are currently ignored,
+but the option is already configured to install engines for all variants.
 
-* WinBoard now never puts the white piece drop menu on the middle
-mouse button.  Both colors are always on the right button.  Windows
-users often don't think to look for a middle button menu, or don't
-really have a working middle button despite what Windows says.
+2014-09-14 22:47:55 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Fix typo
 
-* Guest login handles on ICC are now parsed again; an ICC wording
-change had broken this feature.
-       
-* Autodetect when the engine does not support the "draw" command and
-don't relay the command to it in that case.  Needed because sending an
-unsupported command to GNU Chess makes it move immediately, so people
-could make Zippy move without thinking by continually offering a draw.
-Thanks to Frank Walker for the problem report.
 
-* Small changes based on code from Robert Jurjevic: The WinBoard
-analysis window can be minimized (though not to the taskbar).  The
-WinBoard ICS Interaction window will autoscroll if you drag the mouse
-above or below the window while selecting, and password entry mode
-leaves the entry line as the background color instead of using 75%
-gray.  Seeks are now colorized with a new color of their own.
+2014-09-14 21:41:04 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Make inlined functions static
 
-* Added -zippyMaxGames feature.
-       
-* -zippyNoplayCrafty command line option was missing in xboard; fixed.
-Thanks to John Perry.
+Clang apparently chokes on non-static inline functions,
+and they were not used from other files anyway.
 
-* Fixed bug in detecting when Zippy loses his bughouse partner.
-Thanks to Ben Dean-Kawamura.
+2014-09-09 20:29:15 -0700 Arun Persaud <arun@nubati.net>:
+updated spanish translation, added new polish translation
 
-* allobs fix in 4.0.3 didn't work; corrected it.
 
-* WinBoard will now update the board immediately if a move is made
-while the window is being moved or resized.
-       
-4.0.3 -- Sun Aug 15 18:44:39 PDT 1999  Tim Mann
+2014-09-13 09:12:54 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Look for logo in engine dir first (GTK)
 
-* Bugfix: moved winboard wizard functions that send a command directly
-to the chess engine from Ctrl+Alt+1 and Ctrl+Alt+2 to Alt+1 and Alt+2.
-Ctrl+Alt is equivalent to the European AltGr key, so the old assignments
-conflicted with typing an @-sign on some keyboards.
-       
-* Bugfix: prevent "If this message stays up, your chess program does
-not support analysis" from appearing if AnalysisMode is selected when
-already in Analysis or AnalyzeFile mode.  Also, deleting analysis window
-in WinBoard now switches you to EditGame mode, to avoid the anomaly of
-being in an analysis mode with no analysis window present.
-       
-* Change all Zippy environment variables to work as command line
-options.  For now they still work as environment variables too, but
-the environment variables are deprecated.
+When setting engine logos, we look for a file logo.png in the engine
+directory, before trying <enginename>.png in the -logoDir. This is useful
+on OS X. Fix bug that checks for existence of -fd/sd rather than -logoDir,
+when using the latter (also in Xaw).
 
-* Use unsigned long to hold node counts from engines.
+2014-09-11 23:10:59 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Fix checkmarking of OS X menu items
 
-* Print error instead of crashing on attempts to use xpm or xim pieces
-in monochrome mode.  Thanks to Jim Torrance for the bug report.
+The routine MarkMenuItem() was moved to xboard.c, where it can see
+the OSX-specific #defines, and calls to sync_menu_bar were added
+to it, and to EnableNamendMenuItem().
 
-* Tightened pattern recognition for ICS messages sent to Zippy; should
-no longer match ICC allobs output.  Fixed recognition of when Zippy is
-sent a message; small change to FICS output had broken it.
-       
-* Zippy now exits if the engine dies unexpectedly.
+2014-09-11 22:48:10 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Fix crash of tournament dialog GTK
 
-* Added Zippy "spoofedby" feature; see zippy.README.
-       
-* Narrowed the margins on some older WinBoard dialogs to make their
-style uniform with the newer ones.
+The font/color disambiguation of the Option.textField in Label and
+ulti-line TextBox options cannot stand it if unused elements are
+initialized as "" rather than NULL.
 
-* Bugfix: Changing Ponder Next Move from the Options menu did not take
-effect until the next game.  This bug was in WinBoard only.  Thanks to
-Stefan Zipproth for the bug report.
+2014-09-11 19:17:55 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Let OS X display dock icon
 
-* Got rid of "Internal error: bad move type" message when the engine
-makes a move that we can parse but think is illegal.  Now the move is
-just passed on (which also may be the wrong thing to do).
 
-4.0.2 -- Thu Feb 25 19:55:32 PST 1999  Tim Mann
+2014-09-11 12:41:50 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Fix Xaw button color error
 
-* Added one more built-in sound choice to WinBoard: move.wav from Pete
-Galati.
-       
-* Added new larger piece sizes: big, huge, giant, colossal, titanic.
-       
-* Modified the xboard font searcher to be able to use scalable fonts.
-The new -fontSizeTolerance flag controls how closely a nonscalable
-font must match to be used in preference to a scalable font.
-       
-* Zippy environment variables ZIPPYABORT and ZIPPYADJOURN now control
-whether Zippy will accept abort and adjourn requests.
+The textValue field, now also used to indicate font, was used in two
+places when popping up buttons, and the font patch only addressed one.
 
-* We now determine the variant type being played on ICS, send it as a
-command "variant VARTYPE" to the chess engine (if in Zippy mode), and
-put it in the PGN tags.  See engine-intf.txt for variant names.  See
-ZIPPYVARIANTS in zippy.README to control what variants Zippy will
-accept.  Note that this now applies to bughouse, too.
+2014-09-11 10:23:42 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Make SVGDIR a variable
 
-* Zippy now won't do -zippyTalk in a channel unless his handle is
-mentioned there.
+Replace all occurrences of SVGDIR in the source by svgDir, a char array
+that is initialized to SVGDIR, so that it can be altered at run time.
+This is needed to make portable apps. Where SVGDIR was used in string
+concatenation, the code had to be re-written to use snprintf to do the
+concatenation at run time, through a new function LoadIconFile.
+The extension of image files used there is now made dependent on the
+__APPLE__ switch, so that it can use .png in OS X (which does not seem
+to understand SVG icons).
 
-* Zippy now ignores bughouse holdings if not actually playing, instead
-of stupidly trying to abort the game.  Let me know if other strange
-things happen when Zippy is observing a game.
+2014-09-10 21:20:40 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Fix warning in dead code Show
 
-* Set ICS Interaction title bar to "user@server".  User name is
-determined by parsing message during the login sequence.  Zippy now
-uses this method to get its name too, so ZIPPYNAME is eliminated.
-Problem: with xboard, the title bar gets set to "xterm" upon exit,
-since we didn't know what it was to start with.
 
-* Fixed xboard-only bug in -colorChannel1 command line option.  Thanks
-to Fredrik Sandstrom for the bug report and fix.
+2014-09-10 20:49:38 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Reorder variants, to comply with Polyglot book specs
 
-* Check for overflow of MAX_MOVES.  Still not sure this is checked for
-everywhere it needs to be.
+XBoard's variant number is used as a key to access Polyglot opening
+books, and thus cannot be changed without consequences. (As it was when
+we introduced ASEAN and Chu Shogi.)
+  We also renamed Chu Chess to Elven Chess (under which name it is now
+described on chessvariants.org).
 
-* Added .epd to suffixes recognized by WinBoard as position files.
-This is a bit of a kludge, as the .fen reading code was not written
-with .epd files in mind, but reading them with it is said to work.
+2014-09-10 19:52:12 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Reserve piece command in protocol specs
 
-* Added ZIPPYGAMESTART feature, suggested by Jason Hoblit.  See
-zippy.README.
 
-* Restored the feature of soaking up the moves from a user-typed "moves",
-"oldmoves", or "smoves" ICS command when xboard/WinBoard is idle, but
-changed it so that the move list is also echoed to the screen.  Some folks
-still liked the old feature since it is faster than examine mode, and
-printing the moves to the screen should eliminate the confusion it caused
-for other people.
+2014-09-10 18:54:45 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+suppress Alien Edition standard variants
 
-* Bugfix: in WinBoard, starting a click-click move and then clicking on
-a black line would cause the source square to be forgotten without taking
-the highlight down.  Now the errant click is ignored.
+Variants that are standard in the Alien Edition should not be
+recognized as engine-defined variants: the engines that announce
+them will not respond with the required setup command, so allowing
+the user to select them just leads to trouble.
 
-* Corrected shortcut key labels for LoadNext/PrevPosition in WinBoard's
-File menu.  Thanks to Andreas Stabel for the bug report.
+2014-09-10 13:51:44 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Fix SetWidgetFont GTK
 
-* Bugfix: if you had a completely full ICS context menu in WinBoard
-(90 items), the last one would do nothing if selected.
+This was testing for an empty font spec in the wrong way, with as a side
+effect that some pointers to font strings would be interpreted as colors.
 
-* The "computer" engine command added in 4.0.1 was not working; I had
-left out part of the code patch.  Oops.
+2014-09-10 15:56:59 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Update protocol specs
 
-4.0.1 -- Fri Feb 12 21:24:15 PST 1999  Tim Mann
 
-This is a minor bugfix release.  The first item listed below is the
-only interesting new feature.
+2014-09-09 21:43:39 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Let message field and button bar use GTK -messageFont
 
-* You can now type in moves from the keyboard in WinBoard.  Either
-select TypeInMove from Step menu, or (if you are not in ICS mode),
-just start typing.  In ICS mode you can type moves into the ICS
-interaction window anyway, so I've retained the feature that typing
-switches you there.  Not implemented in xboard.
+The -messageFont spec (using the default coordFont pixel size, like the
+others) is now used to modify the fonts of message field and buttons
+in the button bar. They pass a pointer to the appData font variable in
+their Option's textField. This conflicts with the use of this field in
+buttons for specifying a color, as done in the New Variant buttons.
+This is resolved by checking if the first byte of the pointed-to value
+is a #. The Xaw version must ignore the textField if it does not
+specify a color.
 
-* Removed the "noise 1000" command that used to be sent to the chess
-engine when entering analysis modes.
+2014-09-09 20:51:54 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Fix GTK fonts
 
-* Deleted the feature where we soak up the output of a user-typed ICS
-"moves" or "oldmoves" command.  This ancient feature is not really
-useful anymore, now that "examine" exists, and it caused a lot of
-complaints.
 
-* Increased maximum size of ICS text menu to 90 entries and added
-overflow checking.
+2014-09-09 19:57:52 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Use coordFont default pixel size for other fonts
 
-* The command sent to ICS by Zippy at the end of each game can now be
-customized with the ZIPPYGAMEEND environment variable.
+The message-font is way too large for the dialogs. A better solution
+would be to redo the entire table of SIZE_DEFAULTS in xboard.h, as
+this file is front-end-specific anyway.
 
-* We treat xboard.info as a pseudo-source since most people don't have
-the tools to rebuild it.  But "make install" erroneously had a
-dependency on it, even though "make all" did not.  Fixed.
+2014-09-09 19:39:50 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Use -gameListFont in Game List
 
-* Miscellaneous minor updates and clarifications to engine-intf.txt.
-In particular, documented the st and sd commands (support for command
-line options -searchTime and -searchDepth), warts and all.
+Not implemented in a very generic way, but hacked into the code that
+added the handler. There aren't many other listboxes that would need
+adjustable font.
 
-* Added a small code patch from Bob Hyatt to detect when Zippy's ICS
-opponent is a computer and send the command "computer" to the engine.
-Added this command to engine-intf.txt.  Thanks, Bob.
+2014-09-09 16:49:18 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Fix Chat window for Xaw build
 
-* Bugfix: configure was looking for usleep(), but config.h.in didn't
-have an entry for it, so HAVE_USLEEP was never defined.  Also, in the
-non-HAVE_USLEEP case, there was a possible race condition between the
-signal handler and the pause() call.  Thanks to Ben Dean-Kawamura for
-the bug reports.
+The ICS output field and Hide button are removed from the ICS Interaction
+window, to make it similar to the old Chat window. This required adding
+some tests in the handlers of this window, to prevent segfaults due to
+accessing it.
 
-* Bugfix: a "1..." preceding Black's first move (usually present if
-there is a comment on White's first move) would cause the parser
-to think a new game started there and report "End of game" on the
-current game.  Thanks to Dell Garner for the bug report.
+2014-09-09 15:53:29 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Fix infinite-regression problem on OS X
 
-* Changed the abbreviation for -searchDepth from -sd to -depth to fix
-a clash with -secondDirectory.
+Apparently the OpenFile handler can already be called during
+gtkosx_application_ready (or gtk_signal_connect), so we have to make
+sure 'suppress' is set before we call those.
 
-* Changed -searchDepth to be orthogonal to the various timing options.
-Previously it would search for an unlimited time to the given depth;
-now the engine is allowed to choose its search time in the normal way,
-but is told to cut off the search early if it reaches the given depth.
+2014-09-09 10:47:41 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Correct for .Xresources form->paneA renaming in manual
 
-* Bugfix: SaveSettings in WinBoard was saving both the long form
-option highlightSquareColor and its abbreviation (hsc).
+In the Xaw build the name of the form widget of dialog.layout.form...
+hierarchy was changed to paneA, paneB, ... when allowing multi-pane
+dialogs through the Break Option (such as the Engine Output window).
 
-* Fixed a redisplay bug in DisplayBothClocks that could cause White's
-clock to be highlighted in EditPosition mode when Black's should have been.
+2014-09-09 10:36:42 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Use GTK fonts in Engine Output and Move History
 
-* Fixed Zippy's feature of passing on draw offers from the ICS opponent.
-The colorization code was eating the offer before Zippy saw it, so I disabled
-colorization of offers while in -zp or -zt mode.  (Other types of
-colorization are already disabled in Zippy mode for similar reasons.)
 
-* Added some more commands to the default ICS context menu in WinBoard,
-and put "(name)" on the ones that insert a playername (or game number).
+2014-09-08 20:42:11 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Include some conditional OS X fixes
 
-* Added missing documentation to WinBoard help file: PonderNextMove, the
--ponder/-xponder argument, and the up/down arrow history feature in the
-ICS Interaction window.
+DATADIR must be corrected to ~~ in the OS X app, and the info command
+must be started in a different way.
 
-* Fixed        ZIPPYNOPLAYCRAFTY feature to fire only if the opponent is Crafty,
-not if some other Crafty is observing the game and kibitzes.
+2014-09-08 20:12:08 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Fix WB DoEvents error
 
-* Fixed bugs in generating "partner" commands when Zippy is playing
-bughouse.
 
-4.0.0 -- Sat Jun 20 16:59:47 PDT 1998  Tim Mann
+2014-09-08 19:06:35 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Limit auto-extending to click on first move of PV
 
-* Fixed WinBoard resizing so that the edges you do not drag remain in
-place, even when the final size is different from what you dragged to.
-(This doesn't work on NT 3.51 or earlier, if anyone cares.)
+Even when auto-exted on clicks on the tail of a PV will no longer cause
+any moves to be added to the game. Only clicks on or before the first
+move can do that now.
 
-* Fixed problems with resizing WinBoard on Windows NT: you no longer get
-whitespace around the board, a clipped board, or a lot of flashing during
-the drag.
+2014-09-08 16:20:26 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Animate multi-leg in auto-play and forward event
 
-* Added customization for highlight-square color.
+Replaying multi-leg moves is now also done by animating both legs.
+In addition, the highlights are set on final and intermediate square,
+rather than from-square.
+(There seems to be a great deal of code duplication here. Why doesn't
+AutoPlayOneMove simply call ForwardInner?)
 
-* Bugfix: backend.c wrote to stderr in a few obscure places, which doesn't
-work in WinBoard.
+2014-09-08 14:45:51 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Fix key bindings for non-menu functions
 
-* Added Index Number field back to LoadGame/LoadPosition dialog boxes in
-WinBoard.  This required some extra code to work with both the
-Explorer-style dialog boxes and the old-style NT 3.51 dialog boxes.  Ugh.
+The accelerator keystrokes for next game, previous game and debug mode,
+which don't have menu items, and are grouped in the menu table 'noMenu',
+were not treated in the building of the translation table, as 'noMenu'
+does not occur on the menu bar. An extra iteration is done now to
+treat this menu group.
 
-* WinBoard startup dialog now understands -zp mode.  The first chess
-engine selector is enabled and the value is used.
+2014-09-08 14:24:59 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Fix Xaw key bindings
 
-* Bugfix: ResetGame would send "exit" to engine twice if it was in an
-analysis mode.
+The routine to automatically construct the translation table for
+accelerator keys did not respect the rule that more specific keystrokes
+(like :Meta<Key>Home:) have to be defined before more general ones
+(like :<Key>Home:). As a result Alt+Home would activate the Revert
+item, intended for plain Home.
 
-* Bugfix: The response "Illegal move: bk" to the "bk" command, indicating
-that it is not implemented, would confuse xboard.
+2014-09-08 14:20:08 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Define default font names
 
-* Bugfix: Ignore empty hints ("Hint:\n") instead of printing a message
-saying that some bogus string (often "Hint:") is illegal.
 
-* Bugfix: LoadNextGame/LoadPreviousGame/ReloadSameGame were broken.
+2014-09-08 09:25:18 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Fix MSVC problems
 
-3.6.12 -- Sat Jun 13 14:57:10 PDT 1998  Tim Mann
+Book.c did not include config.h, and thus missed the redefinition of
+snprintf (which is not known in MSVC). The use of 'inline' in parser.c
+also needed an MSVC redefinition, now added to winboard/config.h.
 
-Beta test release of xboard and WinBoard.
+2014-09-08 09:22:55 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Fix GTK font patch
 
-* Spruced up xboard man page a bit.
 
-* Added Highlight Last Move to xboard too.
+2014-09-07 23:35:22 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Replace strcasecmp by StrCaseCmp
 
-* The revamped xboard mouse click code had several more bugs than the
-previous version, so I revamped it again.  All fixed now, I hope.
+The MicroSoft compiler does not know strcasecmp, so we better use
+our own function for this everywhere.
 
-* xboard bugfix: crash in CreatePieceMenu.
+2014-09-07 23:28:29 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Let GTK build pay attention to font arguments
 
-* Oops.  winboard-3_6_11beta.exe installed 3.6.10beta, not the new version.
+Multi-line text edits now use the initial value of the Option.textValue
+field as a pointer to a (char*) holding a font name, to be used for
+the text displayed in it. (After which they overwrite the field with
+the textView handle.) The font options -tagsFont, -commentFont, icsFont,
+-moveHistoryFont and -gameListFont are now activated in the GTK build,
+to control the corresponding memos.
 
-3.6.11 -- Fri Jun 12 20:00:48 PDT 1998  Tim Mann
+2014-09-07 13:58:15 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Fix auto-display comment option in General Options
 
-Beta test release of xboard and WinBoard.
+This options had the same ID as auto-Queen, making it ignored.
 
-* Major reorganization to engine-intf.txt.  Some new features added,
-many existing features clarified and hints for engine programmers added.
-Support for new features added to program.
+2014-09-07 13:43:48 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Call DoEvents during time-consuming operations
 
-* Changed defaults for -scp (etc.) back to being independent of -fcp, as
-in 3.6.2. That is, the default is no longer to copy the value from -fcp if
--scp is not specified.  This will sometimes make command lines longer but
-will remove some confusing situations.
+Processing of a game file for reading it, searching positions, saving
+selected games or creating a book from them can take minutes. To keep
+the application responsive during that time, the main loops of those
+tasks calls DoEvents(). A possible risk is that the user can now do
+too much, and will initiate actions that interfere with the tast in
+progress.
 
-* Split -reuseChessPrograms into two options: -reuseFirst and
--reuseSecond.  Fixed obscure bugs when reuse is off.
+2014-09-07 13:32:49 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Fix GameListHighlight WB
 
-* Detect ICC and change some command usage slightly there: only ICC has
-set-quietly; only FICS has iset and bsetup clear.  With this feature, we
-can now safely use bsetup clear when appropriate instead of deleting each
-piece one by one.
+The routine to highlight a game line in the Game List listbox of WinBoard
+used an extremely inefficient linear search to find the game amongst the
+selected games. This has now been replaced by bisection, after finding
+an upper limit to the number of entries in the listbox by doubling
+a trial size.
 
-* Added indent to lines that are wrapped by WinBoard ICS Interaction
-window.  This seems to tickle a Microsoft bug in the RichEdit control:
-occasionally the start of the next line after the wrapped line is indented
-too.  I think the wrapped indent feature is useful enough that it's worth
-having in spite of the bug.
+2014-09-07 12:10:50 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Provide DoEvents function in front-ends
 
-* WinBoard bugfix: bounding box for the board was computed incorrectly by
-mouse code.  It would think you moved off the bottom of the board before
-you really did, so it was hard to drag pieces along the bottom rank on
-smaller board sizes.
+A routine to process all pending events in a non-blocking way is now
+provided in the Xaw, GTK+ and WinBoard front-ends, so that time-consuming
+tasks (such as PGN loading or opening-book creation) can call it to keep
+the user control over the application alive.
 
-* Fixed obscure parser.l bug: ambiguity between capture using : instead of
-x and email header line.  Also removed or simplified a lot of complex
-patterns for English (as opposed to PGN) end-of-game indications while I
-was in there.
+2014-09-06 23:13:01 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Fix syntax error in bitbase code
 
-* Added PonderNextMove option.
 
-* xboard EditPosition piece menus now let you set the side to play by
-selecting the "White" or "Black" label at the top of the menu, like
-WinBoard.  (Both xboard and WinBoard still let you set the side to play by
-clicking on the clock.)
+2014-09-06 22:35:22 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Describe Save Selected Games menu in manual
 
-* Merged documentation of Crafty and GNU Chess thinking output in
-engine-intf.txt.  Corrected code in backend.c to match documentation; it
-used to require the PV to start in column 27 (!).
 
-* Fixed bug that caused crashes in "-reuseChessProgram false" mode.
+2014-09-06 22:29:43 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Let Save Games as Book only use selected games
 
-* Draw by agreement in Two Machines mode now works as it is supposed to.
-Other minor bugs in handling game end messages from machines are also
-fixed, and engine-intf.txt is revised in this area.
+The book-creation code now only takes games into account that are
+selected for display in the Game List.
 
-* Revamped xboard code for handling mouse clicks on the board.  In
-particular, it had a bug if a click-click promotion move was made.
+2014-09-06 22:20:19 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Rewrite key-binding section of manual
 
-* Fixed and reinstated optimization for << in analysis modes: send
-initString and re-send the board if needed.  Sending repeated undos
-is bad because Crafty prints some analysis after every one.
+This section still wrongly described the key-binding procedure from
+before the rewrite of the XBoard front-end.
 
-* Don't go into a spin loop while pausing between xboard animation frames.
-This caused problems, especially when compiling with -O2 on HP-UX.
+2014-09-06 13:21:13 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Connect scroll event to Graph Option in GTK
 
-* WinBoard Options/Colors/RevertToDefaults now also turns off Monochrome
-if it was on, and similarly for Options/ICSInteractionColors/RevertToDefaults.
-This seemed to confuse people before.
+The mouse wheel is now detected in graphics widgets, and passed to
+the user handler as button 4/5 mouse events.
 
-* Bugfix: ICS Interaction context menu items with neither of the two
-optional flags set did not work.
+2014-09-06 13:15:55 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Make sure node count is positive
 
-* Bugfix: PGN move numbers are optional, but we were insisting on "1"
-right after the tags.
+Engines that print the node count as an int overflow into negative values
+when the count exceeds 2G. This is really an engine bug, but as it
+interferes extremely annoyingly with the alignment of the Thinking Output
+XBoard now repairs it by adding 4G to undo the overflow.
 
-* Bugfix: only the first game of an -mg match was loading -lpf or -lgf.
+2014-09-05 14:03:49 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Connect mousewheel to Forward/BackwardEvent (XB)
 
-* Other minor fixes and code cleanup.
+The mouse buttons 4 and 5 are now processed in the handler for the
+board widget.
 
-3.6.10 -- Mon Jun  1 01:32:31 PDT 1998  Tim Mann
+2014-09-05 13:41:34 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Fix size of time in Engine Output window
 
-* Added ZIPPYNOPLAYCRAFTY feature; see zippy.README.
+When the thinking time exceeds an hour, the format hr:min:sec is now used,
+in stead of min:sec.cents. This prevents the field from extending beyond
+the tab stop when thr hours kick in, and should work upto 100 hrs.
+(Going beyond that at the moment does not seem useful.)
 
-* Added timestamps for chess engine interaction to -debug output.
+2014-09-04 22:57:07 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Verify if font-spec looks like one in Xaw
 
-* Now allow 10 seconds (was 5) between games in match mode for engines to
-respond to "force" command that ended previous game.
+To make XBoard resistant to mixed use of Xaw and GTK builds, which
+would not understand each others font specs stored in the settings
+file (they have in common), we now determine if the value looks like
+an X-font. If it doesn't, the Xaw version ignores it. The GTK build already
+ignored it if it did lool like an X-font spec.
 
-* When a game is picked from the game list and the names of White and
-Black are known, display them in the window banner instead of the filename
-and game number.
+2014-09-04 17:03:55 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Fix alignment in Engine Output window
 
-* Changed default for -scp and -sd to be the values of -fcp and -fd.
+Numbers above 1000M would become too wide for their field. This is
+solved by introducing the abbreviation 'G'. Values below 10M or 10G
+now get an extra digit in their fraction, so that the precision is
+at least 1%.
 
-* Added boxes for both engines to WinBoard startup dialog.  Changed to
-dropdown boxes whose content can be set from winboard.ini, similar to
-the box for ICS name.
+2014-09-01 14:44:54 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Add Save Selected Games menu item
 
-* Accept "offer draw" (or "*offer*draw*") from engine to offer a draw.
+A menu item to save all selected games in the Game List on a single
+file is added.
 
-* Accept "move mmmm" from engine as well as silly "1. ... mmmm" syntax.
+2014-09-01 12:03:58 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Add final piece count to search criteria
 
-* Added support for bughouse engines (Zippy mode only).
+The Load Options dialog now has a text field in which a range can be
+entered (like 8-10). Position search will then only select games that
+had their final number of pieces in this range.
 
-* Move bombproofing for engines sending illegal or out of turn moves.
+2014-08-29 21:15:29 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Fix castling rights on using -lgf
 
-* Always send "xboard\n" to engine as first command.  Eliminates need
-to run crafty as "crafty xboard".
+The dummy InitPosition to force loading pieces was taking place after
+InitBackend2(), while the latter could have already loaded a game
+from an -lgf argument (which would then be spoiled by the InitPosition).
+It has been moved to before InitBackend2() now.
 
-* Rewrote xboard code for input from engines to fix longstanding bugs.
-Previously an engine that sent one line in two separate writes with 
-some time lapse in between (or perhaps that sent several lines in one
-write) could make xboard hang.  WinBoard did not have this bug.
+2014-07-29 15:03:04 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Fix crash on double-click in Game List Tags
 
-* Fixed minor bugs in dealing with illegal moves.
+A double-click in the Game List Tags listbox has no function, but it
+crashed XBoard, because the textValue field of teh ListBox Option definition,
+supposed to contain a pointer to the user-supplied handler, contained a
+pointer to an empty string.
 
-* Added "iset startpos 1" for FICS.
+2014-07-02 14:34:53 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Fix typing of null moves
 
-* Removed special support to put "GNU Chess" or "Crafty" in the window
-banner instead of the engine's base filename.  This gives a more level
-playing field for other engines.  Also fixed bugs in the code that finds the
-engine's base filename.
+Entering a null move through the move type-in could fail because the
+to-square coordinates (not used in its encoding) could have invalid values,
+which would reject the move in an early stage of UserMoveEvent().
+Null moves are now exempted from this vaidity test, while variants where
+null moves are legal now accept them in any gameMode.
 
-* Bugfix: Abort or Resign at the very start of a game in chess engine mode
-would fail to send "force" to the engine.
+2014-07-02 14:04:22 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Fix adjusting clocks in Xaw version
 
-* Fixed some minor bugs in new "result" messages, and changed format to
-include a trailing PGN comment giving the reason the game ended.
+The handler attached to Label options failed to flip the sign of the
+option number when a button other than Button1 was pressed, so that time
+would always be subtracted on Shift + ClockClick and never added.
+Shift now also suppresses interpretation as null move when playing.
+(In Analyze / EditGame mode it is still null move starting a variation.)
 
-* Changed syntax of /font options in WinBoard; old syntax was assuming
-that a font name can't contain a digit, which is wrong.  Old font names in
-WinBoard.ini files are still accepted.
+2014-07-02 12:37:18 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Fix null-move entry during play
 
-* Serious further work on getting WinBoard to read/write files in the
-"right" directories and documenting exactly what it does.
+Null moving by clicking the clock was only accepted in Edit Game and Analyze
+mode, while in Chu Shogi and spin-offs it is also allowed during play.
+An F_NULL_MOVE flag was introduced to make it easy to test for such variants,
+and Machine White/Black mode now also interpret clock clicks as a null move
+if the opponent's flag has not yet fallen.
 
-* Added LoadPreviousPosition, LoadNextPosition, ReloadSamePosition.
+2014-04-09 09:53:56 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Let EditPosition double-click on piece promote it
 
-* Misc. tiny fixes and cleanup.
+For pieces with Shogi-like promotion (i.e. if the promoted piece has
+pieceToChar defined as '+'), let a second click on it in Edit Position
+mode promote or demote it (as the case requires) when the piece menu is off,
+rather than remove it (as was the old behavior.
 
-3.6.9 -- Sun May 24 20:53:08 PDT 1998  Tim Mann
+2014-04-09 09:19:43 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Make EditPosition pallette work in Asian variants
 
-xboard and WinBoard beta release.
+Construction of the pallette position was not working in variants that
+did not have Pawns start on 2nd rank, or that had multiple ranks of pieces.
+Now the algorithm is applied to all ranks.
 
-* Tightened up illegal move handling.  Illegal or meaningless moves from a
-file or chess engine should no longer get translated into a1a1 and blindly
-applied.  Explicit moves to the same square (like a1a1) no longer make the
-piece on that square capture itself and vanish.
+2014-04-05 23:00:17 +0200 H.G.Muller <hgm@hgm-xboard.(none)>:
+Fix crash on opening Tags window Xaw
 
-* Added AlwaysOnTop feature to winboard.
+Suppressing the optional book button made the Xaw generic popup crash,
+because the following button had the SAME_ROW modality, and was thus
+positioned w.r.t. a non-existent widget.
 
-* Fixed bug in winboard "@" command line indirection operator.
+2014-04-05 20:39:55 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix writing of Chu-Shogi FENs
 
-* Removed buggy "optimization" code for ToStart in analysis modes.
+Promoted pieces were getting the wrong ID letter, of the piece demoted
+by 11, rather than 22.
 
-* Fixed typo bug in zippy.c that would often cause winboard to crash
-right after starting a game in -zp mode.
+2014-04-01 18:20:29 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Allow pseudo-engines to adjust the clocks
 
-3.6.8 -- Sat May 23 22:23:19 PDT 1998  Tim Mann
+Implement new options -first/secondPseudo, which declare the corresponding
+engine to be a pseudo-engine, which will then be granted super-powers
+through some new engine->GUI commands. For instance, to adjust the time
+remaining on the GUI clocks through wtime and btime commands (using msec).
 
-xboard and WinBoard beta release.
+2014-04-01 12:00:14 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix piece inscriptions
 
-* Added -firstDirectory and -secondDirectory so that chess engines can
-be started in a different directory from xboard/WinBoard itself.
 
-* Added -matchGames to allow more than one game in -matchMode.  The games
-are played with colors alternating between the two chess engines.  Had to
-add a time delay at the end of each game to catch up with game ending
-messages from both chess engines -- yuck.
+2014-04-01 11:16:48 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix reading Chu Shogi FENs
 
-* Changed TwoMachines mode to have firstChessProgram play White by
-default.  Added -firstPlaysBlack to restore old behavior.
+The X (for Phoenix) was interpreted a 10 empty squares.
 
-* Major rework of code in backend.c for dealing with first and second
-chess engines.  Generalized the code and created a struct type with one
-instance for each engine.  Several small bugs fixed along the way. 
+2014-03-17 23:26:08 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix loading positions in engine-defined variant
 
-* Fixed bugs in Abort in local chess engine mode.
+Paste Position did not work when an engine-defined variant had redefined
+the pieceToCharTable, as the position would be interpreted and sent to the
+engine before receiving the setup command. Copying the pieceToCharTable
+received from an earlier game to appData cures this, because it will then
+be used by InitPosition, which would reset the table to default otherwise.
+ Another problem was that setupSpoiledMachineBlack would not be reset
+after a game with no moves, leading to a spurious 'go' command to the engine.
 
-* Tightened pattern matching to recognize moves from machine.  Should cure
-bogus "Illegal move" errors while Crafty is pondering with Show Thinking
-on, among other things.
+2014-03-17 23:05:33 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Render inscriptions on Chu-promoted pieces in red
 
-* WinBoard keeps focus in board window after popping up a comment due to
-Forward/Backward/ToStart/ToEnd commands.
 
-* Finally got rid of warnings on compiling moves.c under Windows.
+2014-03-17 22:56:07 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Allow writing text on pieces
 
-* Fixed so WinBoard will compile on machines where WM_MOUSELEAVE is not
-defined.
+A new persistent string option -inscriptions allows the user to define
+characters to be written on the various piece types. The string is
+interpreted as UTF-8. This option is useful for on-the-fly synthesis
+of Shogi pieces, where the string can contain the various kanji in
+the canonical pieceToCharTable order. Except that only a single color
+has to be given.
 
-* Removed various bits of unused code.
+2014-03-12 22:08:04 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix initial sizing of board
 
-* Parse (and ignore) NAGs in PGN files.
+Previous patches had destroyed the ability to obey the -size option.
 
-* Updated engine-intf.txt.
+2014-03-10 21:15:30 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix width of menu bar
 
-* Send "result R" to the chess program at the end of each game, where
-R is the PGN result 1-0, 0-1, 1/2-1/2, or *.
+The truncated name might not have been terminated with '\0'.
+TinyLayout now specifies the number of characters kept in the menu names.
+In the OS X version truncating is never needed, as the menu bar is
+at the top of the screen, independent of board size.
 
-* Bugfix: suppress animation when loading a game with timeDelay=0.
+2014-03-09 20:38:51 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix warnings fonts patch
 
-* Bug fix: pondering output from Crafty that contained "..." could be
-mistaken for a move, causing bogus error messages and general chaos.
 
-* xboard "make clean" bug fix: moved things created by configure to be
-removed only by "make distclean".
+2014-03-02 23:10:50 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Implement (clock-)font handling in GTK
 
-* Fixed a remaining case where move was being animated before being
-relayed to opponent.
+The options -clockFont, -coordFont and -messageFont are activated,
+and supposed to have string values like "Sans Bold 12". The default
+values have the point size as 'wild-card' %d, however "Sans Bold %d",
+and are expanded by a printf with the point size taken from the defaults
+table. The expanded versions are saved back into the settings file,
+prefixed with a size tag, as usual.
+ So far -clockFont is the only font that is actually applied while
+writing.
+ The 'clock kludge' was interfering with the initial sizing, as for some
+sizes the initial clock-widget height happened to be equal to the final
+height. It was therefore abandoned, and we seem to be able to live without
+it.
+ Sizes smaller than 49 were dominated (for 8-wide boards) by the menu bar.
+Therefore tinyLayout now uses single-letter menu labels.
 
-* Backend was reversing time/otim commands to the chess program (new bug),
-and was often not sending them on the first move of a game or the first
-move after a mode change (old bug).  Fixing the latter required a kludge
-to work with both GNU Chess and Crafty, because Crafty swaps white and
-black clock times when it swaps sides, while GNU Chess does not.  The
-kludge is that we always make sure the chess engine thinks its opponent is
-on move before we set the clock.  This will sometimes result in sequences
-like "white\ntime xxx\notim yyy\nblack\ngo", or the same with white and
-black interchanged.
+2014-03-02 20:45:57 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Also search indirection files in user's .xboard tree
 
-* Removed last trace of old -whiteString and -blackString arguments.
 
-* Fixed so that you can type "bd" into the Direct Command dialog when
-debugging gnuchess, without having xboard parse the clock display
-(starting with "White") as "White wins" and end the game.
+2014-03-02 18:53:17 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix error Engine Output text highlighting
 
-* Changed moves.c to make a distinction between IllegalMove (where we
-could tell what move was intended, but it violates the chess rules) and
-MeaninglessMove (where we could not tell).  This is a step towards getting
-rid of cases where we translate meaningless moves into "a1a1", but some
-work is probably needed to track them all down.
+In wengineoutput.c higeTextStart and End where decalred both static and
+extern, which somecompilers justifiably don't like.
 
-* Fixed bug in WinBoard monoMode dragging.
+2014-03-01 16:09:09 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix Board-dialog bug WB
 
-* Changed WinBoard to new style file dialogs.  In the process, disabled
-the feature that let you enter the index number of a game or position within
-the file in the dialog.  This is no loss in LoadGame, as you can pick your
-game from the game list dialog that follows, but it does remove some
-functionality from LoadPosition.
+The drawing code for the sample square did ot restore the correct brush.
 
-3.6.7 -- Mon May 18 21:25:00 PDT 1998  Tim Mann
+2014-02-28 21:48:19 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix various warnings
 
-xboard and WinBoard beta test release.  I've been unable to reproduce some
-reported drawing bugs, so they may still not be fixed.
+Mostly written but never read errors. Also removed a debug printf that was
+causing a format warning.
 
-* Changed PopUpErrors option to PopupMoveErrors, which is more useful, and
-changed default to off.  Errors other than move errors should always be in
-popups; they are often too big for the message area and too important to
-put where they can be easily missed.  But it seems good to get rid of the
-popups for move errors by default.
+2014-02-26 16:34:52 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Kludge repair of expose after startup resize
 
-* xboard analysis window no longer forces itself to top whenever there is
-new output.  Also, now uses built-in Xaw word wrapping instead of trying
-to do its own; works better.
+Redraw of the main board after resize is delegated to DragProc, which is
+scheduled after a delay, to make sure the user is done sizing (mainly to
+reposition docked windows). But at startup the program-requested resize when
+an engine does not support variant normal and needs a different board format
+takes so long that the finale size expose occurs after the DragProc timeout.
+As a result, the board was never drawn on the resized canvas.
+  This is quite hard to fix in a satisfactory way. For now the suppression
+of board redrawing during resize is disabled during the first 10 seconds
+after startup, as any resize during that time is likely to be the result
+of a program request.
 
-* Bugfix: Reset did not take Crafty out of analyze mode.
+2014-02-26 13:08:50 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Use first engine as default for second
 
-* A chess engine no longer has to claim to be Crafty to be able to use
-AnalysisMode and AnalyzeFile; it just has to implement the analyze
-command as Crafty does.  Put in heuristics to generate more informative
-error messages if the engine does not support analyze, and checked that
-they work at least with GNU Chess.
+Rather than having the same fixed default for both engines, we noww only
+have a fixed default for the first, and use the actual first as default
+for the second. One advantage is that this guarantees the second engine
+plays the same variants as the first by default.
 
-* Added click-click moving, HighlightLastMove, and HighlightDragging to
-WinBoard.  The highlight features are unlikely to go into xboard unless
-the xboard drawing code is cleaned up to do *all* drawing on the board
-from DrawPosition, as WinBoard does.  This is low priority for me.
+2014-02-23 23:51:20 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Allow adding played move to book
 
-* Eliminated bogus "Error gathering move list: no header" popup.  You
-could get this by observing two fast games at once without turning off
-GetMoveList.
+A button is added in the Edit Book dialog to prime XBoard for adding the
+next move entered through the user interface to the book window, without
+actually playing it.
 
-* Disable WinBoard Sounds menu entirely in -ncp mode, since not even
-MoveSound is used in that mode.
+2014-02-23 22:54:55 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Play move right-clicked in Edit Book dialog
 
-* WinBoard bugfix: Several problems were caused if the user changed 
-WinBoard's current directory in a Load, Save, or Browse dialog.  In
-particular, WinBoard.ini would get saved in the wrong directory, and
-sound .wav file names would not get saved with a full pathname.  I think
-all such problems are now fixed.
+A handler for button-3 down-clicks is added to the Edit Tags dialog,
+which fakes the clicked word was typed in the move type-in box.
 
-* WinBoard bugfix: iconizing the board after an aborted mouse resize would
-(partially) resize it to Tiny.
+2014-02-23 19:23:28 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix pop-down of ChatDlg and TextMenuDlg from menu
 
-* WinBoard bugfix: board was not being drawn in color on 256-color
-displays.  This bug was introduced in 3.6.6.
+Unlike other windows these two would not react to clicking the menu item
+once they were up. Now they pop down in that case.
 
-3.6.6 -- Tue May 12 17:43:43 PDT 1998  Tim Mann
+2014-02-21 11:10:41 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Preserve window width on board-format change
 
-xboard and WinBoard beta release.  Note: not all reported bugs are fixed.
+When a variant switch would cause recalculation of the board window,
+we now first recalculate square size to keep the window width fixed.
+Also adapt initial width on high boards.
 
-* Move animation in WinBoard, programmed by Henrik Gram.  Great stuff!
+2014-02-18 22:37:31 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Equip Board Options dialog with themes listbox
 
-* Animate backward moves too.
+The option -themeNames is made persistent for XBoard, and its value is
+displayed in a listbox added to the View -> Board dialog. The user
+can select themes from this, and manipulate the contents similar to
+the engine list in Load Engine. A textedit allows the user to define a
+theme name for the current settings, and doing so adds the theme to the
+-themeNames list.
 
-* xboard bugfix: -font (and friends) can now specify a font alias (such
-as "fixed"), not just a full X Consortium name pattern.  Previously this
-would give a resource conversion error message.
+2014-02-07 11:22:44 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Implement copy function in ICS Text Menu
 
-* Some coding style cleanup in xboard.c.
+A command consisting of the word $copy will place the clicked word on
+the clipboard. When there was already text selected during the click,
+that selected text will be used for $copy and $name, rather than the
+right-clicked word.
 
-* Earlier error check for moving wrong color piece in EditGame mode.
+2014-02-07 09:48:31 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+When ICS Console open EOF from keyboard is no error
 
-* Completed fix to pattern matching; see 3.6.5.
+In case the user started without a terminal, we just close the input source,
+and suppress future writing to the xterm.
 
-* Fixed some software rot bugs in Zippy.
+2014-02-06 18:46:21 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Leave xterm at start of new line after quitting XBoard
 
-* Split AnimateDragging as separate option from AnimateMoves.
 
-* Added FlashMoves to options menu and -flash/-xflash to command line
-options (xboard only).
+2014-02-06 18:36:41 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Also display channel tell in ICS Console during private chat
 
-* Some preliminary work on visible bughouse holding support.  Most of the
-code is not present in this release because I have not gotten it working
-properly yet; my first approach went down a blind alley and I had to
-remove most of the partially working code in preparation for a rewrite.
+Channel tells of players for which a chat wa opened were displayed in that
+chat, as well as in the channel chatbox, if the latter was open. But when
+there was no channel chatbox it would not appear as colorized channel tell
+in the console. This is now fixed, and in the private chat box such a
+message is indicated as 'broadcast'.
+
+2014-02-05 23:08:50 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Write broadcasts also to private chatbox of talker
+
+The shouts or channel chatboxes capture messages first, but if a private
+chat with the talker is opened, it now goes there too. Prefixed with
+the type of broadcast.
+
+2014-03-02 13:18:34 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix Xaw Chat Console
+
+
+2014-02-05 22:38:09 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Let Ctrl-O key open chat for last talker
+
+
+2014-02-05 22:15:03 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Add End Chat button
+
+This button clears the current chat, so that it becomes free for
+assignement to another partner.
+
+2014-02-05 21:59:10 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Ctrl-N in chat opens empty chat
+
+This key isequivalent to pressing the left-most New Chat button.
+If no unused chat present, it the command will be ignored.
 
-3.6.5 -- Fri May  8 14:22:09 PDT 1998  Tim Mann
+2014-02-05 21:29:42 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Preserve unfinished input lines during chat switch
 
-Not generally released.
+This is problematic, as apparently we cannot write in widgets that are
+active with key hits, so attempting to write it back in response to Tab
+did not work. This is now done with a delay, for lack of a better method.
 
-* Pack bughouse holdings display in banner more tightly when board is one
-of the smaller sizes (when smallLayout or tinyLayout is true, that is).
-An interim measure, but should help.
+2014-02-04 13:57:16 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Recognize Esc and Tab in ICS Console input
 
-* Completed fix to make move list parsing recognize the end condition and
-final comment.
+Esc is used to close the chat, or transfer focus to the board window.
+Tab is used to navigate between chats (or open the first). Priority
+is given to dirty chats.
 
-* Fixed pattern matching for chatter (tells, etc.) to be more reliable.
-This should reduce the incidence of colors starting in the wrong place and
-of incorrectly matching things that look like other patterns inside
-chatter, such as "shout <12>".  (These errors were already rare.)
+2014-02-03 20:35:31 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Let ICS Console pop up GTK in stead of ICS Input Box
 
-* WinBoard now lets you customize the list of ICS's in the startup dialog.
-For now, at least, requires editing WinBoard.ini with a text editor.
 
-* Bug fix: WinBoard window sizing and position setting save/restore did
-not work right when the taskbar was at the top (or left side) of the
-screen and not in autohide mode.
+2014-02-03 19:45:44 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Add context menu to ICS console XB-GTK
 
-* Merged xboard click/click mode and drag mode, and deleted
-ClickClickMoving option on menu.  Now if you click on a piece, it
-highlights and a further click on another square will move it.  (A second
-click on the same square takes down the highlight.)  Or if you press down
-on a piece and start to drag, you can drag it to a new square.
+A right-click handler is added to the output memos of the ICS Interaction
+window. It pops up the ICS text menu. It is remembered whether the menu
+was already up; if not, it will be popped down after a command is selected
+from it. Like the WinBoard context menu, the commands will be able to use
+the clicked word.
+The -icsMenu 'command' $chat is now recognized as a special case, not to
+be sent to the ICS, but executed by XBoard. It will assign one of the
+five chats to the clicked name. If no empty chat is available, the last
+chat will be used (but not cleared).
+ The -icsMenu in the master config file is now configured to contain
+this command, but unfortunately this will not become effective for users
+that already have a settings file.
+The Text Menu now puts $input commands in ICS Console Input field when the
+ICS Input Box is not up.
+ The text placed in the input field for completion (as per $input directive)
+turned out to be selected in GTK, so that when you stated typing, it was
+erased again!
+ By making the Text menu dialog subject to WindowPlacement control,
+and interrogating the poition of the ICS Console window, the Text Menu
+can be popped up such that the mouse pointer is on the bottom-left button.
+
+2014-02-02 21:17:00 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Integrate ICS output into Chat Window
+
+An extra pane has been added to the Chat Window to display the ICS output.
+In GTK this output is colorized just as in the xterm. For Xaw this is not
+possible. This pane is always visible, and the chat output can be hidden,
+to double its size. Entered input will go to the selected chat (when not
+hidden) as a tell or shout, or to the ICS as a command. The Chat-Partner
+field is hidden together with the chat pane and the Hide button. Each of
+the five chats now has a dedicated button; for unused chats (empty Chat-
+Partner field) these now gets the text 'New Chat' inscribed on it.
+Focussing is made more intelligent (to the Partner field when shown and
+empty, otherwise to the input field).
+The Up and Down arrows now work in the input field to recall old input.
+ ScrollToCursor() was broken in GTK, because a mark was made for only
+a single buffer. Now each buffer has its own end mark.
+ Another problem was that using ScrollToCursow immediately after a memo
+was shrunk (because a neighboring one expanded) it would still use the
+old memo size, so that the bottom part remained out of view. Delaying it
+50 ms solved that problem.
+ A new option -icsUp was added to store the visibility in the settings.
+It is updated only in ICS mode. The ICS Console pops up automatically
+when the stored parameters say so. It is also made sticky.
+ Unlike the xterm the textView does not extend background color to unwritten
+positions behind the line. A separate GTK call is now added to set the
+unwritten part to the same color as the background in normal text.
+ A  control was added in the ICS Options dialog for setting the colors
+of normal text (-colorNormal).
 
-* When making click/click style moves, if your second click is on a piece
-of the same color, instead of saying "Illegal move", we now cancel the first
-starting square, replace it with the second, and wait for another click to
-finish the move.
+2014-02-02 17:27:26 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Add logo-size control XBoard
 
-* Separate -secondInitString.  Default: same as -initString.  Suggested by
-Remi Coulom.
+This is mainly for the benefit of OS X useres who cannot find their
+settings file. It requires a restart to become effective, which is
+really sub-standard.
 
-* Patch from Frank McIngvale to make animation work with XIMs.  Yay!
+2014-02-02 17:18:56 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Add Edit Engine List menu item to XBoard
 
-* Changed move animation to happen after move is passed on to ICS or the
-chess engine, where applicable.  Fixed problems with updating moveList
-that this uncovered.
+In OS X the settings file is hard to find...
 
-* Changed game list to show PGN result token for each game.
+2014-02-02 16:41:13 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix warnings
 
-* The usual minor bug fixes.
+Some unread variables are commented out, rather than removed, because they
+can be useful for future development.
 
-3.6.4 -- Thu Apr 30 23:14:43 PDT 1998  Tim Mann
+2014-02-02 16:33:34 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix moves of Spartan Captain
 
-xboard and WinBoard beta test release.
+The rewrite of the move generator did no longer pay attention to rookRange,
+so that the Spartan Captain moved like a Rook.
 
-* xboard documentation updated, both man page and info file.  An attempt
-to generate both from the same source with LinuxDocSGML was abandoned, at
-least for now.  WinBoard doc updated too.
+2014-02-02 16:18:07 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Add Option type 'Skip'
 
-* Merged updates to animation code from Hugh.  Fixed a couple of remaining
-bugs, mostly to do with handling Pause mode correctly.
+The value -1 used to suppress rendering of option controls was drawing
+error messages, because enums are unsigned. So a new member Skip was added
+to the enum.
 
-* Added SaveSettingsOnExit to WinBoard.
+2014-02-02 14:40:16 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Detect Fischer castling in FENs
 
-* WinBoard now saves the last screen position of the Comment, Edit Tags,
-Game List, and Analysis windows (in addition to the board and ICS
-Interaction windows) in WinBoard.ini.
+Castling rights with unorthodox piece placement imply Fischer castling.
+Make sure shuffling is done after detecting this, because it means K & R
+can also be shuffled (as long as K remains between both R).
 
-* WinBoard now provides a way to customize the right-button context menu
-in the output area of the ICS Interaction window.  For now, requires
-editing WinBoard.ini with a text editor.  
+2014-02-02 14:09:19 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Allow shuffling indicators in FEN
 
-* Various minor fixes to ICS message recognition, most affecting only Zippy.
+If the back ranks are enclosed by < > in a FEN, the route to shuffle
+initial positions is invoked on it.
 
-* Colorize the notification when someone sends you a message while you are
-logged in, not the output of the "messages" command.
+2014-02-02 13:51:37 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Allow wild-cards in FEN
 
-* Fixed colorization to turn off at the right place more reliably.
+A question mark in a FEN will now be interpreted as a piece randomly
+chosen from the holdings. (From which it will be removed.) Intended
+for use in symmetric black/white pairs; when used on asymetric locations
+or with non-identical holdings the results will be undefined.
 
-* Added a new color and WinBoard sound for "requests": abort, adjourn,
-draw, pause, and takeback.  The same color and sound are used for all of
-these.
+2014-02-02 10:40:18 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix Seirawan reverse-castling animation
 
-* Added GUI to change sounds in WinBoard.
+In Chess960 animation of castlings is suppressed, because the move is encoded
+as KxR, so that the to-square in general is not the final destination of the
+King. So it is just confusing to the eye to see the King slide to the Rook,
+and then jump to an entirely different square. In S-Chess castlings can
+similarly be encoded as RxK (to indicate gating at the Rook square), and
+animation of those moves should be suppressed for the same reason. But it
+wasn't, and in Fischer castlings denoted as RxK this even caused the Rook
+to disappear when it didn't need to moved.
+ Perhaps one day a smart method of animating Fischer castlings can be
+designed. (E.g. remove Rook, animate King move to true to-square, place Rook?
+But what if the King doesn't move at all? Animate Rook then? Normal castlings
+now animate the King, and then just displace the Rook.)
 
-* Suppressed WinBoard error popup when a sound can't be played.  They were
-popping up when two separate WinBoards tried to play a sound at the same
-time (such as during a bughouse match).
+2014-02-02 10:22:25 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Make Fischer castling generally available
 
-* Fixed WinBoard crash when a sound file didn't exist.
+A new volatile option -fischerCastlings allows every variant to be played
+with Fischer castling, which so far was only allowed in variants FRC/CRC.
+This only makes sense in shuffle variants, where King and Rooks might not
+be in their orthodox locations. But even when they are, it has consequences
+for the user interface, which will require dragging King on Rook as the only
+way to enter castling. Like -shuffleOpenings the setting will be cleared
+as soon as you switch variant (unless you switch to FRC/CRC, where they
+Fischer castling is on by default). It can be set from the New Shuffle dialog.
 
-* WinBoard ports of timestamp and timeseal now produce decent error
-messages if they fail to connect, and WinBoard captures the messages and
-puts them into a popup.  Previously WinBoard would exit with no message on
-such errors.
+2014-01-19 22:41:52 -0800 Arun Persaud <arun@nubati.net>:
+updated po/pot files
 
-* WinBoard resizing with mouse improved; now accurately picks the largest
-size that fits in the new area.
 
-* Added option to turn off error message popups.
+2014-01-19 22:19:10 -0800 Arun Persaud <arun@nubati.net>:
+new version number for developer release
 
-* Added sizes slim, dinky, and teeny.
 
-* Fixed some minor problems with error message wording.
+2014-01-19 22:15:33 -0800 Arun Persaud <arun@nubati.net>:
+updated Dutch translation
 
-3.6.3 -- Mon Feb 23 19:08:57 PST 1998  Tim Mann
 
-xboard beta test release only.  Man page is updated for the changes, but info
-file is not.
+2014-01-19 20:44:33 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Put ponder checkbox in Common Engine dialog WB
 
-* Bug fix: LoadGame could not load a PGN game whose first move was
-castling (which is possible from setup positions).
+This is yet another duplicate of the one in General Options and Adjudiactions.
 
-* Bug fix: we were ignoring illegal move messages from chess engines in
-modes where the engine is refereeing but not participating (EditGame,
-LoadGame, AnalyzeFile).  The problem was in a workaround for a Crafty bug,
-where Crafty generates a bogus illegal move message if a "." (used by
-the PeriodicUpdates feature) is sent in analysis mode when the current
-analysis reveals a forced mate.  Installed a different workaround (that
-works in most but not all cases) and reported the Crafty bug.  Bob Hyatt
-replied with a fix, so the Crafty bug should be gone in Crafty 14.12 or so.
+2014-01-19 20:27:59 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Expand %s in -openCommand to DATADIR and fix OSX settings-file name
 
-* WinBoard only: enabled resizing board with the mouse.  It snaps to the
-nearest (but not too much larger) predefined size.
+This can be used in OS X to biggy-back a cd to a directory in the App
+on the open command.
 
-* The xboard default font is now sized according to piece size, just as
-clockFont and coordFont have always been.
+2014-01-18 23:42:01 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Add some checkboxes in General Options dialog WB
 
-* Added more sizes: bulky, moderate, average, middling, mediocre, petite.
-       
-* xboard only: Added Animate Moves and Click-Click Moving to Options menu.  
+Checkboxes are added for -variations, -memoHeaders and -autoExtend.
 
-* xboard only: Added code to animate piece movement, from Hugh Fisher.
+2014-01-18 23:26:03 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix warning in CheckTest
 
-* New feature: autoflag is implemented in MachineWhite, MachineBlack, and
-TwoMachines modes.  If it is on and either a chess program or the user
-oversteps his time, xboard will automatically call the flag and end the
-game.  This feature was requested by someone who runs matches between
-programs and wants to penalize GNU Chess for its habit of running slightly
-over at the end of a time control.  I personally think it's pointless.
 
-* Fixed a bug in Zippy's pattern matching; he can now reply to ICC
-messages again.
+2014-01-18 22:40:27 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix printing of engine-output headers
 
-* Generate prettier notation for illegal moves.  If a move is illegal only
-because it leaves the player in check, generate notation as if that were
-not illegal.  For instance, if two knights are a knight's move away from
-f3, one on g1 and one on e5 that is pinned, the notation would be Nf3 to
-move the g1 knight, Nef3 to move the e5 knight.  (Suggested by Philippe
-Schnoebelen.)  In addition, if a move is illegal because the type of piece
-moved cannot go that way, would be jumping over another piece, etc., we
-give fully disambiguated coordinate notation; for example, Ng1g3, Ke1xe8,
-d2xd8=Q, etc.  An alternative would be to still write Ng3 if there is only
-one knight on the board, or Ngg3 if the other knight is not on the g file,
-but life is too short to code up all this stuff, and perhaps the way I did
-it is better as it emphasizes that this move was really made despite being
-illegal.  I wonder if the new PGN standard revision will speak to notation
-of illegal moves?
+They were not printed on analyis of the first position after opening
+the Engine Output window.
 
-* Fixed gross bug from 3.6.2: if a chess program said "checkmate" and
-White was left on move, the PGN outcome was "1-0 {Black mates}" instead
-of "0-1 {Black mates}"!  The bug occurred only for that specific string.
+2014-01-16 23:07:28 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix sticky windows on Win8
 
-3.6.2 -- Wed Jul 23 16:47:29 PDT 1997  Tim Mann
 
-* There was a bug in backing up from the end of a game against a chess
-engine, introduced when -reuse mode was added.  Fixed.
+2014-01-16 22:54:32 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Drag touching edges together (WB)
 
-* Recognize "{" as terminating an ICS move list.  Previously we needed to
-see a prompt (containing %), but occasionally ICC can send more stuff
-right after a move list with no prompt in between.
+When an auxiliary window is dragged by an edge, the snap code now checks
+if that edge was touching another window. If so, that other window is sized
+to keep touching the dragged edge. Unless it was also touching the main
+window.
 
-* In WinBoard, -mm now implies -cp, so you don't get the startup dialog.
+2014-01-15 22:35:23 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Implement new mate-score standard
 
-* WinBoard startup dialog no longer sets -scp.  People used to get
-confused because they would give the -fcp and -scp arguments, but omit
--cp.  This would bring up the startup dialog, which would set both -fcp
-and -scp to the value in the engine name box.  Now you can change -scp
-only with the command-line argument.  That will confuse some people too,
-but hopefully fewer.  I think overall it's better than putting spaces for
-both -fcp and -scp in the dialog, which would puzzle newbies.
+Matescores are now indicated in the protocol as +/- 100000+DTM,
+and in the Engine Output window as #DTM or #-DTM.
 
-* Bug fix: Analyze File mode now works in WinBoard.
+2014-01-15 21:28:51 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Put fail-high/fail-low indicators in protocol specs
 
-* Bug fix: WinBoard window no longer cuts off part of the bottom row if
-the menu bar wraps to a second line.
 
-* Accept game end messages of the form "PGN-result {comment}" from the
-chess engine, where PGN-result is 0-1, 1-0, or 1/2-1/2.  Accept "resign"
-or "computer resigns" from the chess engine as a synonym for "0-1 {White
-resigns}" or "1-0 {Black resigns}". Accept any message from the chess
-engine containing "game is a draw" as a synonym for "1/2-1/2 {Draw}".
-Accept "White resigns" or "Black resigns".
+2014-01-15 20:43:55 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+switch to new tbhits protocol
 
-* Enable "Action / Draw" menu item in chess engine mode.  It sends the
-command "draw" to the engine.  Accept any message from the chess engine
-containing "offers a draw" as a draw offer.  WARNING: Draw offers from the
-user and the engine (or from two engines) are not yet matched up by xboard
-in chess engine mode.  Two engines could get into a loop offering each
-other draws.
+The extended info is now expected as 3 bare integers, the last one
+separated from the PV by at least one tab character.
+The protocol extension is described in the CECP specs document.
 
-* Bug fix: Game end messages from the chess engine are always ignored in
-Zippy mode.  Previously they could sometimes be processed, which was
-sometimes making Zippy hang at the start of a new game that followed
-quickly after an old one.
+2014-01-14 22:37:30 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix sorting of Engine Output
 
-* Zippy can now respond to titled players in channels.  Zippy will avoid
-talking to himself in a channel if he knows his own name.
+The moveKey of the top line was never stored, so that more recent
+lower scores could not pass it even if they had the same move.
 
-* Bug fix: in colorization arguments, the bold setting was being ignored
-if the background color was defaulted.  (xboard only.)
+2014-01-14 22:35:22 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Handle fali-low & fail high
 
-* Extended ParseFEN to accept Crafty 12.2's interpretation of FEN.
-If fewer than 8 squares are given in a row, or fewer than 8 rows are
-given, the uncovered squares are empty.  Also, there can be a / after the
-8th row.
+A ? or ! at the end of the PV are now also written behind the score.
 
-3.6.1 -- Sat May 17 01:02:33 PDT 1997  Tim Mann
+2014-01-14 20:31:46 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Implement extended thinking output
 
-* Bug fix: Hitting escape while entering a password on WinBoard no longer
-sets the font color back to black (which made further typing visible).
+The PV field can now start with three quantities, selective depth,
+engine speed and tablebase hits, disguised as PGN comment. XBoard will
+strip that off, and allow them to be displayed in separate columns of
+the engine-output window.
 
-* Bug fix: On Windows NT 4.0, WinBoard /ics /icshelper=timestamp would
-often hang if you tried to exit with the Exit menu item, the [X] button,
-etc.  The same fix may also have corrected the problem where running a
-chess program with /xreuse would sometimes crash Windows 95 (but not NT)
-when the chess program was killed and quickly restarted.
+2014-01-14 14:46:47 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Allow hide/show of columns in Engine Output
 
-* Bug fix: Periodic Updates would not work if turned on after having been
-off.  Also, the default was needlessly "off" in WinBoard.
+A new persistent Boolean option -memoHeaders enables a new feature:
+text headers are shown above the depth, score, nodes, time columns in the
+engine output. Right-clicking them will subsequently hide the corresponding
+data, and move the column header to above the PV in a 'not shown' list,
+where it can be clicked again to re-open the column.
+Configure maseter settings to switch -memoHeaders on by default.
 
-* Zippy bug fix: Continuing an adjourned game was totally broken.  The
-wrong moves, or no moves at all, were being fed to the chess program.
+2014-01-14 09:55:40 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix ManProc for OS X
 
-* WinBoard change: Giving -ics without -icshost now pops up the startup
-dialog with "Use an Internet Chess Server" pre-selected, so that you get a
-menu of chess servers instead of going directly to ICC.
 
-* Bug fix: WinBoard's SaveSettings was saving -icshost, -icsport, and
--icshelper in winboard.ini.  This causes a problem if you use a different
-icshost later that needs the default values for icsport (5000) and
-icshelper ("", meaning none).
+2014-01-14 10:02:22 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix access to ~~/themes/conf for OS X
 
-* Disabled complaints about unexpected "[Ii]llegal move" messages from
-the chess program; we still get them at times.
+In OS X DATADIR is a variable.
 
-* Greatly simplified the code for Move Now and SIGINT (ATTENTION).  Fixes
-the bug where Move Now did not work with GNU Chess in WinBoard, and
-several more obscure bugs as well.  Reintroduces a minor bug: GNU Chess might
-not think on your time after a Move Now command.  Trying to fix this
-causes too many other problems.  Documented change in engine-intf.txt.
+2014-01-13 19:23:30 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Add 'Continue later' button to Tournament dialog XB
 
-* Cleaned up code for obtaining ratings from ICS.  It was kludgey and may
-have had bugs on systems with no "Creating:" message.  It should fail
-gracefully there, just not finding the ratings.
+To do GenericReadout without triggering a call to the OK function,
+we introduced a new value for the option-number parameter, -2.
 
-3.6.0 -- Thu May  8 19:55:58 PDT 1997  Tim Mann
+2014-01-13 17:32:28 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix Tournament Options dialog
 
-* WinBoard now has right-button context menus in the ICS Interaction
-window.  Some of the items do immediate commands on the player name you
-have selected or pointed to.  (Suggested by Paolo Casaschi.)  Also, the
-middle button or shift+right does a immediate Copy and Paste.
+Deleting a Label option had renumbered the remaining Options, breaking
+the dialog and causing a crash when an engine was selected. A considyency
+check is now added to catch this condition, and throw an error popup
+when we mess up again.
 
-* Fixed a bug in Zippy's wild rejection.  The bug was causing Zippy to
-reject all forms of wild.  Now it rejects only 1, 9, 16, 17, and 24, as
-was intended.  These variants have different rules, while the other
-variants defined so far only have different starting positions.
-(Actually, wild 2, 3, and 4 never allow castling, but may sometimes by
-chance have king and rook start on squares where castling appears legal.
-This could cause a problem later.)
+2014-01-13 17:09:01 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Allow popup of TC and Common Engine from Tournament dialog
 
-* Zippy now resumes adjourned games by feeding the chess program 
-the move list instead of the position.  Setting -getMoveList to False 
-restores the old behavior.  Feeding in the move list is better because 
-it enables the chess program to correctly handle en passant legality, 
-castling legality, draw by repetition, and draw by the 50 move rule. 
+A new dialog class MasterDlg was added, similar to TransientDlg,
+but to allow two dialogs to be up simultaneously. The Tournament Options
+dialog was migrated to this class, so it can now get buttons to pop up
+the Time Control and Common Engine dialog, like WinBoard. It even has
+a button for the General options dialog.
+Special care had to be taken to prevent popdown of the MasterDlg when
+a Transient child is still up (similar to browser or error childs).
 
-* Added a WinBoard startup dialog for people who run WinBoard.exe without
-using the Start menu or reading the help file.  Instead of being dumped
-directly into GNU Chess mode, you now get a menu of choices.  You now have
-to give the new WinBoard -cp option to go directly into chess engine mode.
-I did not add this feature to xboard.
+2014-01-13 16:21:59 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Add --show-config special option
 
-* Handling of "illegal move" from Crafty is now back on.  (It was turned
-off in 3.4.6; see below.)  Crafty 12.0 doesn't seem to send bogus ones
-anymore.  I did have to suppress sending time and otim in analyze mode to
-make this work, but there is no harm in that.
+This prints a list of configure parameters, and then exits. If a second
+argument is given, it only prints the value of that config parameter,
+so that tricks like cp *.svg `xboard --show-config Datadir`/themes/chu
+can be used in install scripts of packages with piece images.
 
-* Zippy now sends "gameend" to ICS at the end of each game.  You can alias
-this to "seek" or whatever you like.
+2014-01-13 14:25:30 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Overhaul kill code
 
-* Added Crafty support for Move Now, using the "?" command.  We test
-whether this command exists by trying it once at the start of the first
-game, before it really makes sense.  If we don't get a message like
-"Illegal move ... ?", we assume it's OK.  (We're careful about this
-because sending a "?" to GNU Chess on Move Now keeps it from pondering the
-next move as it should.)
+Engines were not always forcefully killed in XBoard, which could make
+the tournament manager hang when an engine became unresponsive to "quit".
+The various levels of killing are now revised, and the -delayAfterQuit
+is absorbed in DestroyChildProcess(). There is a hard killing mode 9,
+which immediately sends SIGKILL, intended for engines that have already
+proven to malfunction or could not start at all. In other cases SIGTERM
+is sent according to specs, but a SIGKILL is scheduled -delayAfterQuit + 1
+sec later just in case the SIGTERM would be ignored.
 
-* Added support for a tellusererror command from the chess engine.  See
-engine-intf.txt.
+2014-01-13 13:38:47 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix name of master settings file in OS X
 
-* Attempted to make engine-intf.txt complete.
+The name needs to be relative to the bundle path, but ~~ expansion
+did not work for compiled-in defaults, as the expansion takes place
+when parsing an option. The dataDir is now also kept in an array rather
+than as a pointer, to allow it to appear in statically initialized tables.
 
-* Minor fixes/cleanup to GameEnds code, to be sure we always interrupt
-when needed, and always undo an extra move generated by stopping the chess
-program while it is thinking.
+2014-01-08 16:25:25 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix Chu promotion of L, HM and GB
 
-3.5.7 -- Sat May 03 22:37:44 PDT 1997  Tim Mann
+The promotion popup would not be shown for HM and GB with legality testing
+on because the piece types used for them were wild-card pieces. The Lance
+was treated as a Pawn in HasPrmotionChoice().
 
-Beta release of both xboard and WinBoard.
+2014-01-08 16:09:15 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Remove redefine of DATADIR that leaked in from v4.7.x
 
-* Updated xboard documentation.  I really wish the man page was built from
-the info file instead of being separate!  It's a pain to update them both.
+2014-01-05 12:52:46 -0800 Arun Persaud <arun@nubati.net>:
+updated po/pot files
 
-* Updated documentation of the interface between XBoard/WinBoard and chess
-programs, and renamed it to engine-intf.txt.
 
-* Added support for tellics, telluser, and askuser commands from the chess
-engine.  See engine-intf.txt.
+2014-01-05 12:51:50 -0800 Arun Persaud <arun@nubati.net>:
+new version number for release 4.7.3
 
-* Various bug fixes.  On WinBoard, 256 color displays are finally handled
-right; no more color flashing when you switch windows unless the colors
-really need to be updated.  Also, I think the problem of the console font
-failing to change or changing back by itself is finally fixed.
 
-3.5.6 -- Tue Apr 29 03:08:00 PDT 1997
+2014-01-05 10:58:48 -0800 Arun Persaud <arun@nubati.net>:
+updated copyright to 2014 in menu.c
 
-Beta release, WinBoard only.  ChangeLog was out of date in release,
-updated here.
 
-* Added ICC timestamp and FICS timeseal to WinBoard distribution.  These
-are my own ports to Win32, based on and used by permission of the owners
-of the proprietary source code (Daniel Sleator for timestamp, Henrik Gram
-for timeseal).  The owners permit these programs to be distributed only in
-binary form (to help prevent cheating), so to avoid running afoul of the
-GPL, I have kept them as separate programs, not linked into the WinBoard
-address space.  Updated Start menu icons to use them.
+2014-01-05 10:37:56 -0800 Arun Persaud <arun@nubati.net>:
+removed .DS_Store file from git
 
-* Miscellaneous smaller changes.
 
-3.5.5 -- Fri Apr 25 03:06:00 PDT 1997
+2014-01-05 10:34:08 -0800 Arun Persaud <arun@nubati.net>:
+Updated copyright notice to 2014
 
-Beta release, WinBoard only.  ChangeLog was out of date in release;
-updated here.
 
-* Added simple sound support to WinBoard.
+2014-01-05 10:27:53 -0800 Arun Persaud <arun@nubati.net>:
+cleanup some trailing whitespaces
 
-* Updated WinBoard documentation.
 
-* Internal implementation of the telnet protocol is now more complete.
-You can now hop through a VMS host on the way to ICS.  For example, do
-"xboard -ics -icshost vms.host.edu -icsport 23", then log in.  Do not use
-the -telnet flag; that says to use an *external* telnet program.  To avoid
-double echoes, you need to force character mode in VMS telnet after
-connecting from VMS to ICS.  Do "^]^Mset mode char^M^M".
+2013-12-29 13:46:40 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix crash on use of dialog Browse buttons GTK
 
-* Display opponent names in the title bar for MachineWhite, MachineBlack,
-and TwoMachines modes.
+The code to set a filter did not expect multiple extensions, and would
+cause a buffer overrun when there were.
 
-* WinBoard now has an installer, built with InstallShield.  The installer
-works with a binary-only distribution.  Sources are still freely
-available, but now separately.
+2013-12-27 20:12:23 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Make building of Windows .hlp file optional
 
-* Added SaveSettings to WinBoard, which saves current option settings to
-winboard.ini.  Made sure all options can be saved and loaded, including
-fonts and com port settings.
+By using && and || operators in the build recipe, the building of WinBoard
+with Cygwin is now not aborted whe the Help Compiler is not installed.
 
-* If the game ends while you are dragging a piece, we now don't let you
-finish the move.  Formerly the move was accepted and your opponent's clock
-would start running again.
+2014-01-05 11:47:18 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Use __APPLE__ compile switch for OS X
 
-3.5.4 -- Fri Apr 18 01:15:24 PDT 1997  Tim Mann
+It seems that on Apple machines the compiler will always define the
+symbol __APPLE__, so this is now used instead of OSX, which had to
+be defined with a -DOSX compiler flag. The gtkmacintegration header
+is now using <> in stead of "" in its #include. (Strange enough both
+were working.)
 
-Beta test release of WinBoard and xboard.  The documentation remains
-out of date.
+2014-01-04 12:18:30 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Expand ~~/ to bundle path (OSX)
 
-* Many fixes and improvements to new WinBoard user interface code.
+DATADIR is #defined in WinBoard as "~~" to make the expansion a no-op
+there. Same for Linux compiles. For OS X it is #defined as a variable,
+obtained from GTK-OSX at startup.
 
-* In Zippy mode, avoid sending another copy of the same move to the chess
-program if ICS sends us another copy of the board image.  Hard to believe
-it took me until now to diagnose and fix this problem!
+2013-12-29 23:27:12 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Activate ManProc in GTK
 
-3.5.3 -- Sat Apr 12 19:49:33 PDT 1997  Tim Mann
 
-Beta test release of WinBoard and xboard.
+2013-12-29 22:14:06 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Remove use of strndup
 
-* Fixed fatal bug in WinBoard input handling.
+The use of strndup was actually unsafe, as the length was passed using
+an ordinary strlen. strndup was not availableon OS X 10.6, and is now
+replaced by an ordinary strdup, which should be save enough.
 
-* Made code to stop chess program for reuse a bit smarter.  Removed kludge
-of "white" in initString; it didn't work well, and is unneeded
-with Crafty 11.21 and later.
+2013-12-29 22:09:10 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Put some OSX code into gtk version
 
-3.5.2 -- Sat Apr 12 15:40:01 PDT 1997  Tim Mann
+Under control of #ifdef OSX code is added to integrate the GTK front-end
+into OS X. This involves moving the menu bar to outside the window, and
+catching the signal that OS X sends to running applications when opening
+another instance was requested. Som files are renamed to conform to the
+file tree of the OS X App package.
 
-Beta test release of WinBoard.
+2013-12-27 21:47:55 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Cure weirdness when dragging outside of board
 
-* Ignore check and permit promotion to King during suicide games; no need
-to turn off TestLegality.
+Dragging outside the board (when people maximized the window) did not
+properly restore background, (leaving a trail of dragged piece). Filling
+the canvas with white when it is creatd cured this. The problem most likely
+was that unitialized cairo surfaces had transparancy, and writing back
+transparancy doesn't helpmuch to erase things.
 
-* Renamed CheckLegality to TestLegality to avoid confusion with the chess
-term "check".
+2013-12-09 14:52:32 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix sorting of lines in Engine Output
 
-* Added Rematch to Action menu.
+Lines tat were fail-lows or fail-ighs should get the scores on the basis
+of wich they are sorted corrected to that of te line (for the same move)
+superceding them, so that other moves can rise to above them, when they
+score higher than the corrected score.
 
-* WinBoard now has a custom ICS interaction window with scrollback, a
-separate line for input, and colorization.  Accelerators that conflict
-with normal editing keys were changed (by requiring Alt+) so they can work
-in both the console and the main window.
+2013-12-05 20:08:35 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Make filler variant button inactive
 
-* WinBoard error popups are now non-modal and disappear when you make a
-new move, as in xboard.
 
-* Configure now defaults to --disable-ptys on all systems.  If anyone has
-an ancient SysV system where pipes don't work with select, they can still
-do "configure --enable-ptys" explicitly.  I would appreciate getting a bug
-report if this happens to anyone, with complete output from configure and
-"uname -a".
+2013-12-05 17:50:21 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix packing of FRC castlings
 
-* "make install" now makes the installation directories too.
+The routine for packing moves to the internal database format was not
+working for FRC castlings, totally messing up position search for FRC
+and CRC.
 
-* Fixed a bug that would cause an "Illegal move" message for Black from
-GNU Chess to be incorrectly considered bogus.
+2013-12-05 16:23:53 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix Xaw file-browser New Directory
 
-* Handle name changes during an ICS game (FICS bname and wname commands).
+Prevent people from using the error messages that will be printed here
+as directory name by pressing New Directory a second time after first
+pressing it with an empty or existing name.
 
-* You can force both chess programs to be killed at the end of each game
-by turning off the reuseChessPrograms option.  There are still some
-problems with reusing Crafty even in version 11.20.
+2013-12-05 16:14:02 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Widen Xaw text entries for larger square sizes
 
-* Now the second chess program stays around by default too, if it ever
-gets started.
+Presumably people will use larger fonts if they use larger board squares.
+(And in any case te default fonts would be larger.) This means they need
+more space to see what is the current value of text options.
 
-3.5.1 -- Sat Apr  5 16:47:48 PST 1997  Tim Mann
+2013-12-05 15:47:26 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Remove width limiting of shuffle checkbox
 
-Beta test release.
 
-* Don't kill off and restart the chess program for each game; keep the
-same one running, using the "new" command to start a new game.  This
-change works around the problem in Windows 95 that makes WinBoard crash it
-at times, and is generally desirable to make new games start faster.  The
-second chess program (for TwoMachines) is still killed at the end of the
-game, and unfortunately this can still crash Windows 95.  Temporarily
-added "white" to the initString to make this work with Crafty 11.20, which
-has a minor bug in "new".  Older versions of Crafty have worse bugs in
-"new"; they should not be used with this version of xboard.
+2013-11-28 13:30:40 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Allow castling and e.p. to be edited in opening book
 
-* Support for FICS suicide chess: Parse illegal moves (that leave King in
-check) in game history.  If CheckLegality is off, allow promotion to King
-and illegal moves in game files.  We still generate e2e4 style notation
-for illegal moves.
 
-* Handle FICS "has timeseal; checking" message.
+2013-09-16 22:32:32 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Repair FRC A-side castling legality testing
 
-* Changed the coords from white back to black; this was a bug.
+XBoard allowed A-side castling when a rook started on the a-file,
+and the b-file was blocked.
 
-* Fixed problems compiling with K&R compilers.
+2013-09-16 22:27:50 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Repair XBoard from node-count patch
 
-* Fixed an old bug in RegisterMove that was crashing cmail on some systems
-(notably linux).
+u64 was #defined in backend.h, which unfortunately was almost alwats
+(Not sure why WinBoard did not suffer from this!) This, and related
+definitions have now been moved to common.h (which is always #included
+first).
 
-3.5.0 -- Thu Jan  2 16:59:49 PST 1997  Tim Mann
+2013-09-15 20:13:06 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+WinBoard multi-monitor support
 
-Thanks to Frank McIngvale for much of the work on versions 3.4.4 and above!
+A patch provided by Tim Kosse
 
-* Fix Crafty resumed game time bug (frankm)
+2013-09-15 19:28:54 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix node count range
 
-* Word wrap text in Analysis window (frankm)
+The node count was still clipped to 32 bit because one of the structs
+it passes through (FrontEndProgramStats) had the nodes field declared
+as an unsigned long.
 
-* More debug info for XPM loading (frankm)
+2013-09-15 19:12:42 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix adjudication of Giveaway stalemates
 
-* Replaced config.sub, config.guess, etc., with up-to-date versions from
-autoconf 2.12.  Hopefully this will fix problems on Pentium Pro machines.
+The case where the side-to-move would win by stalemate was not treated
+in the Adjudicate switch.
 
-* Removed some Makefile gunk that was causing looping for one person.
+2013-08-30 17:33:59 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix buffer overflow in parser
 
-3.4.7 -- Thu Dec 19 14:22:41 PST 1996  Tim Mann
+When a line ended with a comment, the parser had to read a line ahead
+to check if there was a PGNresult following, without being able to
+throw away the previous line yet. This could lead to buffer overflow
+in a long game where every line ended in a comment. The buffer now is
+cleansed of already parsed data when starting on a new syntactical unit.
 
-All changes from Frank:
+2013-08-27 22:55:52 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix -zippyVariants option
 
-* Retrieve ratings from ICC (and FICS, etc., when they add the Creating:
-message), save them in the PGN tags, and pass them to Crafty in Zippy mode.
+Due to the change of cps->variants from (char []) to (char *), copying
+zippyVariants to it on behalf of v1 engines would no longer work. This
+is fixed by using ASSIGN() in stead of safeStrCpy().
 
-* Add settable time delay between characters in ICS login script.
+2013-08-26 18:25:55 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix initial board sizing WB
 
-* Colorize messages like personal tells.  Fix false recognition of channel
-tells.
+The initial board size was based on the assumption the board would be 8x8.
+This could push auxiliary windows off screen if the board was smaller,
+after which EnsureOnScreen would undock them and park them in the upper-
+right corner before the board assumed its true size. InitPos() is now called
+before the initial sizing to et the board format correctly, InitDrawingSizes()
+had to be made resitant to calling before a board size was picked for this
+(because InitPos() might call that too).
+  ActivateTheme() now uses the new board size, not the previous one (as was
+indicated by size -2), so that -boardSize specifications inside a theme
+will take effect.
+  Board size petite should not be forbidden for Shogi; all pieces exist there.
 
-* Pass "tells" from Crafty through to ICS (in Zippy mode).
+2013-08-26 14:40:57 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix grabbing of selected piece
 
-* Implement ~/ filename convention from C shell for game and position file
-names.
+A second static click on a selected piece should deselect it, but an attempt
+to drag an already selected piece should not 'bounce off'. It was already
+possible to move a selected piece to another square, but the dragging was
+not animated. This is now fixed, by only skipping the code to start dragging
+when the second click is part of the only-move double-click for only capture.
+(Before it was skipped on any second click.)
 
-* ZIPPYACCEPTONLY feature for testing.
+2013-08-26 13:35:47 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Allow entry of negative numbers in spin control (WB)
 
-3.4, patchlevel 6 -- Sat Nov 23 16:58:50 PST 1996  Tim Mann
+Windows numeric controls do not accept negative numbers, so in case the
+range of a spin option can go negative, the style ES_NUMBER should not be
+set on the control.
 
-* Put recognition of "illegal move" messages from Crafty for
-illegal castling, etc., inside an #if that is currently turned off,
-because of a bug in Crafty that generates bogus "illegal move" messages
-after some moves that are actually legal and accepted by Crafty.
+2013-08-26 11:37:27 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Allow drops / promotions/ deferrals to be edited into book
 
-* Added -checkLegality option; previously this could not be turned off.
+For no real reason only NormalMove would be accepted when parsing the list
+of book moves.
 
-* Fixed an old bug in finding default board size parameters.
+2013-08-26 11:28:54 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix GUI book after setup position
 
-* Differentiated among channel tell, kibitz/whisper, and personal tell/say.
+The routine to send move to the engine would automatically append a 'go'
+is a preious setboard had put the engine in force mode, but this should
+not happen on a book hit, where the engine should even be put in force mode
+if it was not yet there.
 
-* Fixed a bug in detecting Xpm in the configure script.
+2013-07-05 18:32:46 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix book creation
 
-3.4, patchlevel 5 -- Mon Nov 18 16:22:53 PST 1996  Tim Mann
+Due to duplicate use of the same file pointer variable the game file would be
+closed before any games were read from it.
 
-* Added zic2xpm to the kit; it had been omitted by mistake.
+2013-05-20 11:14:01 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Make PGN parser immune to unprotected time stamps
 
-* Added some default colors for -colorize
+The parser choked on time stamps of the form dd:dd or dd:dd:dd if one
+of the fields happened to be 00, because it wouldmistake that for a
+non-compliant king-side castling. By excluding this interpretation when
+the 00 is immediately preceded or followed by ':' this is now prevented.
 
-3.4, patchlevel 4 -- Sat Nov 16 18:10:17 PST 1996  Tim Mann
+2013-05-05 08:03:00 -0700 Arun Persaud <arun@nubati.net>:
+updated po files for new release (make distcheck)
 
-This is meant to be a beta release in preparation for version 3.5.
 
-* Added InfoXBoard and ManXBoard to the Help menu.
+2013-05-05 07:57:22 -0700 Arun Persaud <arun@nubati.net>:
+new version number for release 4.7.1
 
-* Made Frank's ICS input box optional, defaulting to off.
 
-* Merged in Frank McIngvale's XbKit.  Many new features, including
--clickClick mode, the Analysis modes, piece flashing, ZIICS import,
-ICS text colorization, and the ICS input box.  Many thanks to Frank for
-supplying and documenting this code.
+2013-05-05 07:53:54 -0700 Arun Persaud <arun@nubati.net>:
+updated Changelog, NEWS, etc.
 
-3.4, patchlevel 3 -- Mon Nov 11 18:23:14 PST 1996  Tim Mann
 
-Small set of changes made while Frank McIngvale was working on XbKit in
-parallel.  Unreleased in this form.
+2013-05-02 22:47:44 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Update zippy.README
 
-* Updated zippy.README.
+It is explained how to generate multi-line commands for -zipyGameEnd.
 
-* Removed useless X event handler and removed strange code for copying
-form translation table to board that worked around the bug it caused.
-This makes changing bindings in .Xdefaults more straightforward.
+2013-04-01 20:43:36 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix Xaw file browser
 
-* Now pressing the Control key steps back one move, and releasing it steps
-forward again.
+The 'next page' entry of the Xaw file browser contained a \177 character
+to keep at sorted at the bottom. This caused trouble for gettext.
+Now the sorting range is adapted so the 'next page' is never part of it.
+  More seriously, the listbox fill code had a wrong cast when testing for
+an empty listbox on the first element, so that it only tested the low byte
+of the pointer, in stead of the entire pointer for NULLness. As a result
+the contents of the listboxes could suddenly disappear when even when it
+was non-empty, because the first filename was allocated at an unlucky address.
 
-* Moved quit from "q" to "Q" for greater safety.
+2013-03-22 19:23:25 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Make Chat Box window obey -topLevel option
 
-* Use "unobserve" instead of "observe" to stop observing; needed on FICS.
+It was always popping up as a dialog of the main board, covering it.
+One could argue it should always be to-level.
 
-* Support for interface variable.
+2013-03-19 13:20:24 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix scrolling of Chat Box
 
-* Strip titles from people who are talking to us, so (for example) Zippy
-won't try things like "tell Darooha(*) hello".  Needed on FICS.
+Seems the problem is that scroll_to_iter does not work until after some time,
+needed to calculate line heights. Use scroll_to_mark instead, after clumsily
+adding a text_mark.
 
-3.4, patchlevel 2 -- Tue Jul  9 19:06:42 PDT 1996  Tim Mann
+2013-03-17 10:33:31 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix GTK SetInsertPos
 
-This patchlevel is not planned to be an announced release.  It's in
-preparation for integrating Frank McIngvale's XbKit.  It mostly contains
-minor fixes I've accumulated since 3.4.pl1.
+SetInsertPos() was not yet ported to GTK, with as a result that the cursor
+was positioned at the start of a line recalled in the ICS Input Box,
+rather than at the end. The code also called SetInsertPos to force scrolling
+to that point in the text (which in Xaw is an automatic side effect). So for
+multi-line text edits this function calls ScrollToCursor(). For some reason
+this does not work when replacing texts in the Chat Box memo, when switching
+chat, although it does work in the same memo when a line is added to the
+existing text.
 
-* WinBoard /telnet option now fires up an external program, as
-with xboard, instead of trying to use a feature of NT 3.1 that does not
-exist in later versions of NT or in Windows 95.  ChangeLog for 3.4.pl1
-said this had been implemented there, but it really wasn't.
+2013-03-07 21:38:43 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Print score of final position in Analyze Game
 
-* Indicating player to move by the icon color now works under Windows 95.
+The score/depth of the final position of the analyed game is added
+(as an explicit comment) behind the PV of the forelast position.
+To make this work, a new 'addBraces' mode (3) had to be added to
+AppendComment, which suppresses stripping of the score/depth from
+the comment.
 
-* WinBoard now kills the chess program when you exit using the system menu
-or the [X] button.  Thanks to Michael Lowe.
+2013-03-12 18:50:08 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix horrible bug in reading scores from PGN
 
-* Minor changes to Zippy, including: Now understands wild challenges on
-FICS; these used to crash it.  Removed limit on how fast a game will be
-accepted.  Use "set formula ..." on the chess server to limit this if you
-are using GNU Chess.  Now sends correct opponent name to Crafty.
+Reading scores like -0.94 flipped the sign, because the integer part
+-0 would read as 0, and thus was no reason for sign flipping.
 
-* Added some missing default values to documentation.  Thanks to Stuart
-Cracraft.
+2013-03-10 12:43:59 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix disappearence of pieces that were moved illegally
 
-* Bugfix: Trying to print "No fonts match pattern" error message would
-crash.  This can happen to Linux users who don't install Helvetica, for
-example. 
+Dragging damages the from-square, but it is not marked as such, because
+selective board redraws to update highlights and such would draw the piece
+that is really still there, making it flash on the from-square before
+the position after the move is drawn. This, however, backfires when the
+move was illegal, as then there is no draw of a new position, and the
+from-square stays empty. For now this is solved by making DisplayMoveError()
+order a total redraw. (As this is rare, only done in case of an error,
+and might even throw up a pop-up, the performance cost of this is acceptable.)
 
-* Bugfix: Defaulting feature in -size n,n,n,n,n,n would put us in an
-infinite loop.
+2013-03-20 17:50:33 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix quoting of book name in tourney file
 
-* Added more directories to search for Athena widgets on HPUX.
+The argument of -polyglotBook was written to the tourney file unquoted,
+which effectively made it disappear if it was an empty or blank string.
 
-* New cmail (3.12) from Evan Welsh; includes small fix from Kayvan Sylvan.
+2013-03-07 18:11:31 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Provide compatibility with Alien Edition setup command
 
-* Recognize "illegal move" messages from Crafty for illegal castling, etc.
+The setup command of the Alien Edition has a board-size specifier
+(possibly as prefix on a parent-variant name) between pieceToCharTable
+and FEN. The regular version would choke on that, precluding engines
+designed for the Alien protocol extension to have their setup processed
+when running under regular XBoard. This patch makes it skip the extra info.
 
-* Bugfix: "name" command added to zippy.c for Crafty was producing error
-message if GNU Chess was in use.
+2013-03-07 17:52:02 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix saving of analyzed game
 
-* In bughouse mode, suppress holding messages from console window; show
-holdings only in banner.
+Anotated games after batch-mode Analyze Game were not auto-saved,
+because the GameEnds() call supposed to do that was called with a NULL
+argument for resultDetails. Now it is called with the resultDetails as
+pre-existing in the gameInfo, or an empty string if none exist. This bug
+was masked by the fact that in standard game ends (mate, etc.) the
+analyzing engine would declare game end and supply a message.
+ Also makes a distinction between Analyze Game and regular Analyze mode
+when resuming analysis after loading a game; only the former now would
+trigger a batch analysis.
 
-* Minor fixes/cleanup to Makefile.in and configure.in.
+2013-03-07 17:48:45 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix spurious popup after batch-mode Analyze Game
 
-3.4, patchlevel 1 -- Mon Dec 11 13:43:12 PST 1995  Tim Mann
+A batch analysis of games was not properly terminated, because the game
+mode was tested after it had already been changed. No oldGameMode is
+tested in stead.
 
-* This patchlevel updates WinBoard to match xboard, and includes a few
-fixes and minor improvements.  "-size tiny" and "-size n,n,n,n,n,n"
-are still not implemented for WinBoard.
+2013-03-02 22:21:29 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Let XBoard -autoBox option also affect move type-in
 
-* Installed support for Crafty based on code from Bob Hyatt.
-Currently the only documentation for this is in the FAQ, and a few
-things don't work with Crafty 8.23.  Please do not report these
-problems as bugs in either xboard or Crafty.  Bob and I know about
-them.  The worst ones (if not all of them) should be fixed in Crafty
-8.24.
 
-* Changed the kludge command we send when gnuchess wants to print
-something that doesn't end with a newline, from "help" to "bogus".
-This works because the error message gnuchess prints ends with a
-newline.  It also improves compatibility with Crafty, which doesn't
-need the kludge, but for which sending "help" causes a problem.
+2013-03-02 22:17:31 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix GTK box popup
 
-* Don't draw grid at all if lineGap is 0; previously we drew the grid
-with X "0-width" lines (usually 1 pixel wide) and then overwrote it.
+Key values > 255 are used for PgUp, PgDown etc., so to pop up only on
+printables needs a two-sided test.
 
-* Makefile: Removed xboard.info from "all" target so we won't try to
-rebuild it, because this fails on hosts that don't have makeinfo
-installed.  Other minor fixes to "clean" targets, etc.
+2013-03-01 12:50:06 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix fatal error on unsupported board size
 
-* Fixes and cleanup to Auto Comment code that handles continuation
-lines and highlighting.
+When a board size unsupported by the engine was requested through the
+New Variant dialog, this was discovered while the dialog was still up,
+causing the error message to pop up as a child of the New Variant dialog,
+so that it would immediately be taken down as the latter closed.
+As a result it could not be confirmed, so that XBoard would not exit, and
+was left in a pathologic state (ignoring window-close). This is fixed
+by performing Reset (which detects the error) after PopDown of New Variant.
 
-* Auto Observe now tries to observe the game from the point of view of
-the player who was on your gnotify list.  Requested by rng.
-Limitations: We can't tell which player it was unless you have ICS
-highlighting turned on.  Also, currently "observe foo" works as
-required (observing from foo's point of view) only on ICC, but FICS
-will probably implement this soon.
+2013-03-01 12:39:40 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Accept setup command for non-standard board size
 
-* "-size tiny" now makes the default font smaller automatically.  This
-was implemented by introducing an extra Form widget in the hierarchy
-for all xboard windows, named either normalLayout, smallLayout, or
-tinyLayout.  So you can have resource specifications that apply only
-to certain layouts; in particular, XBoard*tinyLayout*font.
+The code to test if board-size is standard for the current variant
+has been moved to a subroutine, to allow its calling when receiving
+a "setup" command from the engine.
 
-* Bug fix: EditGame or EditPosition while playing or examining still was
-not really being permitted.
+2013-03-01 11:57:01 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix buffer overflow in feature parsing
 
-* WinBoard bug fix: On the EditPosition menu, King did not work.
+String features (variants, egt, myname and option) relied on a buf[MSG_SIZ]
+for processing their value. The Nebiyu engine had combobox options that
+required more than that. All string features are now stored in allocated
+memory rather than in static arrays, and StringFeature allocates a buffer
+of sufficient size for them. Only limitation now is the low-level input
+buffer in the InputSource threads, whih is a static buffer of 4096
+(=INPUT_SOURCE_BUF_SIZE) characters.
 
-* Added text catalog of WinSock error messages to WinBoard, because
-Microsoft still has not put them in the system message catalog.
+2013-02-27 23:44:55 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix vertical sizing of GTK board
 
-* Removed support for older ICS game-ending messages that do not have
-a PGN result token (*, 0-1, 1-0, or 1/2-1/2) after the closing '}'.
-The code for older messages was sometimes firing on the newer
-messages, due to parsing ambiguity.  If the current code sees an old
-message, it will understand that the game is over, but will always
-display * as a result token instead of trying to guess the result by
-interpreting the text message.
+The clipping of the boad at the bottom was due to resizing of the clock
+height when we first write it with a big font. This patch delays calculation
+of the final size until after the clock height changes.
 
-3.4, patchlevel 0 -- Tue Nov 21 01:02:50 PST 1995  Tim Mann
+2013-02-26 21:13:32 -0800 Arun Persaud <arun@nubati.net>:
+Updated German translation
 
-* This patchlevel was released for xboard only.
 
-* Updated the info file.  It should now be as up-to-date as the man page,
-with good English except in the parts that pertain only to AmyBoard.
+2013-02-26 20:27:24 -0800 Arun Persaud <arun@nubati.net>:
+Updated Ukrainian translations
 
-* Added "-size tiny", requested by Bob Hyatt.  Also cleaned up bitmap
-support and added "-size n,n,n,n,n,n" to allow arbitrary-sized bitmaps,
-if the actual bitmaps are supplied by the user.
 
-* Updated bughouse support.
+2013-02-26 17:59:43 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix of argument error
 
-3.3, patchlevel 4 -- Sat Nov 18 02:27:21 PST 1995  Tim Mann
+Oops. Pevious patch for skipping unknown multi-line arguments
+was still buggy.
 
-* Unreleased beta that works with preliminary FICS bughouse code.  Will
-need changes before release to track FICS message changes.
+2013-02-26 17:44:10 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Let popping up of WinBoard chatbox for channel open it
 
-* Removed use of .EX macro from man page.  It is not supported by some
-nroff -man macro packages, notably the one on Slackware Linux.  Switched
-to boldface for references to xboard and other commands within the man
-page, as this seems to be the modern way.
+WinBoard now issues a +ch command for a channel when you pop up a chatbox
+for that channel. A work-around is added for the fact that the public
+FICS seems to ignore the first such command.
 
-* Bug fix: If ICS rejected a move, it was correctly undone on the board,
-but the message widget still displayed the bad move.  Reported by DAV.
+2013-02-26 17:27:59 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Make skipping of unknown option smarter
 
-* Normally, xboard in ICS mode fetches the move list whenever the board
-display switches to a new game.  Doing this is now an option
-(getMoveList) that can be turned off, which is useful if you are watching
-multiple blitz games.  Requested by rng.
+To make XBoard better resistant to the presence of disbanded or future
+options in its settings file, encountering those is no longer a fatal error.
+But the error recovery only consisted of skipping the rest of the line.
+This fails badly on string options with a multi-line value, which is
+enclosed by {braces}. We now detect that case, to skip to } instead.
 
-* Move list fetching code is now smarter: it ignores a move list if it is
-not for the right game.
+2013-02-26 17:15:39 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Add -backupSettingsFile option
 
-* Added support for bughouse as implemented on FICS.  Holdings are shown
-in the window title in place of the strength numbers.  A menu on mouse
-buttons 2 and 3 (same on both) lets you drop pieces.  There is no checking
-as to whether you actually hold the piece you are trying to drop; we rely
-on ICS to check that.  Notation of the form P@f7 is generated and parsed.
-The mate detector does not understand that non-contact mate is not really
-mate in bughouse, but this does no real harm.  It results in a "#"
-suffix being displayed on the move notation, but xboard does not assume the
-game is over.
+For better configurability of WinBoard, an option is added to optionally
+read a settings file, namely if no other settings file (other than the
+master file) was read so far. This can be used to import settings from
+a previous version, without destroying its settings file.
 
-* Bug fix: Promotion to a knight was not working with ICC!  Thanks to
-Wendigo for the report.
+2013-02-26 16:55:20 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Repair WinBoard compile error
 
-* Bug fix: Special pty code for host types *-*-aix3* and *-*-irix3*
-(supplied from configure.in) had a bug that would cause childio.c to
-fail to compile, due to a "continue" that was not within a loop.
+__GITVERSION was not defined in WinBoard, as it was only defined with a
+compiler flag by ./configure, which WinBoard does not use.
 
-* Bug fix: In pgntags.c, memory was being freed while still in use.  One
-symptom this caused was that on some machines, cmail would fail with a
-message that it could not find the BlackNA tag.  The error was in some
-submitted code that I included in version 3.2.pl3 without reading
-carefully enough.  Anders Forberg noticed the symptoms, and Evan Welsh
-(who had nothing to do with causing the bug) found the bug and submitted a
-fix; thanks to them both.
+2013-02-26 16:47:58 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Work-around for Xt selection bug
 
-* Removed restriction against using EditGame while playing, observing,
-or examining on ICS.  You still get a warning popup.
+In some Xt implementations calling extend-end with 0 params causes a crash,
+although the mmanual specifies this should default to a call with 'PRIMARY'.
+The default selection is now explicitly mentioned in all extend-end calls.
 
-3.3, patchlevel 3 -- Sat Sep 16 11:44:05 PDT 1995  Tim Mann
+2013-02-24 09:31:57 -0800 Christoph Moench-Tegeder <cmt@burggraben.net>:
+fix bug #38401: xboard.texi doesn't build with texinfo-5.0 (tiny change)
 
-* Bug fix: Going directly from MachineWhite to TwoMachines mode would kill
-off the second chess program after Black's first move.
+xboard-4.7.0's documentation is not buildable with texinfo-5.0, it fails with a lot of error messages from makeinfo like
+./xboard.texi:1026: @itemx must follow @item
+makeinfo seems right, @itemx is not used as described in the texinfo manual.
+Attached patch puts each item of the "Options" menu in it's own @subsection and formats the description of each item as a @table as neccessary. This way, xboard builds again and the manual doesn't look too bad.
 
-* Added -timeIncrement feature.  Thanks to Joel Rivat.
+2013-02-24 09:09:54 -0800 Arun Persaud <arun@nubati.net>:
+updated po/pot files
 
-* Deleted code that tries to keep you from observing more than one game,
-or observing while playing or examining.  There is actually no problem in
-doing this, except that every time an update comes in from a different
-game than is currently being displayed, xboard fetches the history of the
-new game, which may be time-consuming if you are on a slow link.
 
-* Fixed configure so as not to crash when neither lex nor flex is found.
-lex or flex is needed only if the user wants to rebuild parser.c.  Thanks
-to Phil Humpherys for reporting the crash.
+2013-02-24 09:04:48 -0800 Arun Persaud <arun@nubati.net>:
+new version number for developer release
 
-* Bug fix: config.h.in used #define instead of #undef for some macros used
-in the pty code in childio.c.  This causes the code to fail to compile on
-some architectures, because the symbols are supposed to be undefined, not
-defined to empty, when they are not set in configure.  Bug originated in
-3.3.pl0 when config.h was introduced.  Thanks to Phil Humpherys for report.
 
-* Bug fix: ShowThinking would not show anything when current position had
-no move to display in the move window.  E.g., if position was created by
-LoadPosition or EditPosition.
+2013-02-20 21:28:36 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Try to make life more bearable in Xaw menus
 
-3.3, patchlevel 2 -- Mon Aug 28 11:11:11 PDT 1995  Tim Mann
+The alignment still sucks, but not as much as before.
 
-* Zippy code was omitted from xboard-3.3.pl1 by mistake; now included.
+2013-02-20 19:26:17 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix -topLevel option
 
-* For WinBoard, added hint to help file that you may need to turn off
-LocalLineEditing while typing dialing commands to your modem.
+This option was copletely ignored, after the refactorig.
 
-3.3, patchlevel 1 -- Sat Aug 19 15:13:30 PDT 1995  Tim Mann
+2013-02-20 18:16:00 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix testing for valid window placement Xaw
 
-* Zippy distribution is no longer separate from regular xboard distribution.
 
-* Deal properly with Show Thinking output from GNU Chess when it is
-thinking on its opponent's time.  In TwoMachines mode this output is
-suppressed to avoid interfering with the output from the machine that is
-on move; in other modes it is displayed (including the move that GNU Chess
-is predicting the user will make next).  GNU Chess produces this output
-only if it is built without -DQUIETBACKGROUND defined; this symbol is
-defined by default in patchlevels before pl75, but undefined by default in
-pl75.
+2013-02-20 12:15:08 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Suppress printing of status line in dual-board mode
 
-* Bug fix: Handling of initial board position in move list for wild games
-was broken, so wild games could not be observed and adjourned wild games
-could not be continued.  Thanks to "Maximum Entropy" for the bug report.
 
-* Added feature: algebraic notation now shows "+" indicator for check
-and "#" for checkmate, as called for in PGN standard.  Thanks to Kevin
-Maher for the suggestion.
+2013-02-20 11:56:12 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix sizing of slave board GTK
 
-3.3, patchlevel 0 -- Thu Jul 27 22:21:07 PDT 1995  Tim Mann
+For lack of a known method to specify a default size for Graph widgets,
+we have to use the same system as for the main board: create with 0x0 size,
+and measure the size of the outer window to determine margins.
+After every popup we then resize to the required board size plus these
+margins. (Awful...)
 
-* Changed configuration to use a config.h file instead of passing zillions
-of -D options on the cc command line.
+2013-02-20 10:08:09 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Better handling of undefined window parameters
 
-* Merged a small fix and some updates to the texinfo file from Jochen
-Wiedmann.  The texinfo file still needs work.
+Repositioning and resizing a newly created dialog was based on the width
+parameter of the stored sizing info being valid. Now it is separately
+tested if the position is valid, so that sizing and moving can be done
+independently. This allows us to store position info, but not size info
+for the slave board, so that it automatically will use the size of the
+main board when first opened.
 
-3.2, patchlevel 5 -- Tue Jul 18 20:29:39 PDT 1995  Tim Mann
+2013-02-19 19:14:49 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Limit debug print to debug mode
 
-* Beta test release of xboard only.
 
-* Updated WinBoard code to include new xboard features.
+2013-02-19 19:14:00 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix repositioning of GTK windows
 
-* Added texinfo file from Jochen Wiedmann to the release, but not as the
-primary documentation.  It needs updating, and the English needs work.
-I did make a few improvements, mostly to change incorrect uses of @var to
-either @samp or @code as appropriate.
+After 'hide' and 'show' GTK would not position the window in the same place,
+but center it on the parent. Now we reposition the window after 'show' based
+on the WindowPlacement data (if available).
 
-* Merged in code changes to 3.2.pl4beta from Jochen Wiedmann.
+2013-02-19 18:52:41 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Remember window params of slave board
 
-* Fixed EditComment; did not pop up window in previous beta.
+The slave board now has been assigned a WindowPlacement, which is also
+saved in the settings file, through new options -slaveX/Y/W/H.
 
-* Added AutoComment feature.
+2013-02-19 17:48:39 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix repairing of arrow damage
 
-* Added GameListDestroy to disable the outdated game list popup in cases
-where we load a new game file without building a new popup.
+The '2' bit in damage[][] to indicate the arrow was erroneously cleared,
+rather than kept.
+
+2013-02-18 19:55:20 -0800 Arun Persaud <arun@nubati.net>:
+fix OK-response in gtk dialogs, see c7f8df124
+
+the fix in c7f8df124 needs to be applied to both of those if cases
+
+2013-02-18 17:11:32 -0800 Arun Persaud <arun@nubati.net>:
+removed two more translations from debug output
+
+
+2013-02-18 17:09:30 -0800 Arun Persaud <arun@nubati.net>:
+fixed segfault of g_markup_printf_escaped which needs utf-8 strings
+
+defined text-domain as utf-8 solved this
+
+2013-02-18 13:38:51 -0800 Arun Persaud <arun@nubati.net>:
+fixed gtk-warning
+
+
+2013-02-18 10:06:36 -0800 Arun Persaud <arun@nubati.net>:
+removed some translation calls for messages in the debug log
+
+
+2013-02-18 09:46:53 -0800 Arun Persaud <arun@nubati.net>:
+add keyboard shortcuts back into Xaw version
+
+
+2013-02-17 14:13:30 -0800 Arun Persaud <arun@nubati.net>:
+in debug mode also print the git-version if available during build
+
+
+2013-02-18 21:19:05 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Print game-list timing messages only in debug mode
+
+
+2013-02-18 21:01:35 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix title of top-level windows
+
+
+2013-02-18 18:51:44 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Cure GTK warning in top-level windows
+
+There is no OK button in top-level windows, so the 'response' signal is
+not defined, and should not be connected.
+
+2013-02-18 18:33:34 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix graying of Revert menu item
+
+The new code was checkmarking it in stead of enabling it!
+
+2013-02-18 11:38:29 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Add -onlyOwnGames option
+
+This suppresses auto-saving of ICS observed games.
+
+2013-02-18 11:17:16 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Allow display of 50-move counter in zippy mode
+
+No chance it could be considered cheating there.
+
+2013-02-18 10:48:53 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Add new vertical pixel fudge
+
+With the new GTK window type the board is 13 pixels too small.
+
+2013-02-18 10:29:17 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Don't add PV moves on board clicking in AnalyzeMode
+
+Playing PV moves by right-clicking the PV was only intended for clicks
+in the engine Output window, selecting from multi-PV analysis output,
+where by default it plays only the first move. PV walkig by right-clicking
+the board, however, would start the walk at the end even in AnalyzeMode,
+and thus add the entire PV. Which is probably not useful. So adding moves
+in that case has now completely been suppressed, so it can be used for
+harmless viewing of the latest PV.
+ The behavior has also been made subject to a persistent Boolean option
+-appendPV, configured to true, with a checkbox in General Options.
+ A checkbox has also been added there for controlling the -variations option,
+which is now also configured to true.
+
+2013-02-18 10:25:40 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Remove checkbox for 'Move Sound'
+
+This function is better controlled from the Sounds dialog.
+
+2013-02-18 09:59:48 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Make switching between board windows absolute
+
+Selecting the window in which to draw the board when the slave board for
+-dualBoard was up was done by a toggle. For unknown reason this could cause
+a situation where the drawing took place in the other window than the
+intended one. The code is made more robust by explicitly specifying which
+window to draw in, based on the partnerUp flag.
+
+2013-02-18 09:50:48 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Warn about experimental nature of dual board
+
+The message field, which for now is unused, now contains a warning message.
+
+2013-02-17 10:49:21 -0800 Arun Persaud <arun@nubati.net>:
+add close buttons to gtk windows
+
+use windows instead of dialogs for toplevel elements
+
+2013-02-16 19:02:52 -0800 Arun Persaud <arun@nubati.net>:
+keyboard accelerators for both front ends.
+
+moved them out of the string definition, so that gtk can add them automatically.
+Also wrote a function that loads them for X11.
+
+TODO: add them again when creating X11 menu names
+
+2013-02-15 11:03:02 -0800 Arun Persaud <arun@nubati.net>:
+added rotated shogi pieces for -flipback option and moved them to the themes directory
+
+
+2013-02-14 17:27:27 -0800 Arun Persaud <arun@nubati.net>:
+add test for pkg-config
+
+exit configure in case we can't find it.
+
+2013-02-14 13:02:08 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Only perform e.p. capture if there are rights
+
+The heuristic for e.p. capture was such that any non-forward move with
+a Pawn to an empty square would delete the piece behind its new location
+(Xiangqi exempted). This is now limited to cases where EP_STATUS indicates
+that the deleted piece was a Pawn that performed a double-push on the
+previous move. (Or if there is unknown EP_STATUS.)
+ This makes XBoard more generally suitable for use with variants that have
+non-conventional Pawn moves (with legality testing off). To guarantee this
+will not have any unexpected effects in normal Chess, this patch will only
+be active if legality testing is off.
+
+2013-02-11 16:25:09 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Unreserve tourney game on exit during engine load
+
+While waiting for the feature timeout we are not yet in TwoMachines mode,
+so quitting XBoard at that stage would not unreserve the upcoming game.
+A global flag 'startingEngine' similar to 'waitingForGame' now signals
+this condition.
+
+2013-02-10 13:40:10 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Better fix of feature timeout
+
+The previous fix of the 2nd engine's done=1 aborting the 1st engine's
+feature timeout by starting the game caused problems with v1 engines,
+or other engines that would never send done=1. It is now fixed by
+explicitly testing for a pending feature timeout after resurrecting
+the 1st engine, rather than having TwoMachinesEventIfReady wait for
+initDone to be set by reception of done=1.
+ Also refrain from freezing the UI between match games, as in TwoMachines
+mode the UI is mostly disabled anyway.
+
+2013-02-08 16:24:23 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Connect Ctrl key in WinBoard
+
+The Control key is now checked during move entry, for excluding moves
+during analysis, or for copying pieces when editing a positions. But the
+WB front-end did not read it out yet!
+
+2013-02-08 16:23:58 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix Makefile for install of Xiangqi pieces
+
+
+2013-02-08 15:35:44 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Add Xiangqi piece images to project
+
+Let the images install in themes/xiangqi.
+
+2013-02-08 15:14:43 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Revive -flipBlack option
+
+The -flipBlack option in the cairo version is now implemented the same
+way as it was in XBoard, swapping white and black pieces in filpView mode.
+This requires a set black piece images that are the upside-down versions
+of the white ones.
+
+2013-02-07 13:55:59 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Remove empty-square SVG images from project
+
+
+2013-02-06 19:00:35 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Add desktop stuff for .xop MIME type.
+
+Icons and desktop file were missing, as was the automake code to package them.
+
+2013-02-06 16:48:33 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Update NEWS file
+
+
+2013-02-06 14:48:27 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Add boolean -autoBox option
+
+This option controls the automatic popup of the ICS Input Box on typing
+a printable character, which was annoing to some. The option can be
+set from the ICS Options dialog.
+
+2013-02-06 10:56:20 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Draw both coords in a1
+
+The lower-left board square needed two inscriptions, but DrawOneSquare()
+only allowed one, so that the file ID would not be written. Now two strings
+can be passed, and when align > 1 to indicate the alignment of the top
+string, it is still checked if a bottom string is present as well, which
+then is drawn with alignment 1 (= bottom right).
+ The rank coord or piece count can now also be double digit.
+
+2013-02-05 23:03:42 -0800 Arun Persaud <arun@nubati.net>:
+updated po files for new release (make distcheck)
+
+2013-02-05 23:02:07 -0800 Arun Persaud <arun@nubati.net>:
+updated Changelog, NEWS, etc.
+
+2013-02-05 22:52:42 -0800 Arun Persaud <arun@nubati.net>:
+new version number for release of 4.7.0
+
+2013-02-05 11:56:10 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Let initial setting of Twice checkbox reflect current state
+
+The Twice checkbox in the Tournament dialog of WinBoard was by default
+starting unticked. It is more convenient to have it preserve the current
+state, however, based on the -lpi or -lgi value. Like the auto-incremet
+checkbox already did.
+
+2013-02-04 22:07:05 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Put GTK warning in about-box
+
+
+2013-02-04 21:59:05 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix warnings of build server
+
+
+2013-02-02 15:58:04 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix GTK error auto-raising board
+
+The variable mainwindow is not set in the gtk2 version. Unfortunately
+it is still used to determine default board size...
+
+2013-02-01 19:42:12 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Update Dutch WB translation
+
+
+2013-02-01 19:37:06 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Add some new strings to WB translation template
+
+
+2013-02-01 19:34:32 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Assign shortcut char to WB menu item
+
+The new Save games as Book item did not have a shortcut yet.
+
+2013-02-01 19:31:18 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Let WinBoard start in its installation folder
+
+The current directory in WinBoard was not automatically the same as the
+installDir returned by SearchPath. Especially not if used without shortcut
+by file association.
+
+2013-02-01 19:29:26 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix warning in WinBoard
+
+
+2013-01-30 14:25:57 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix expose of to-square with grid off
+
+The code relied on drawHighlight to request an expose evet for the entire
+square, but when lineGap = 0, drawHighlight is a no-op.
+
+2013-01-29 08:39:30 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix library order
+
+On OS X dialog windows could not get focus if -lXaw appeared after
+-lX11 -lXt in the linker command. This was cured by moving
+@FRONTEND_FLAGS@ (which expands to -lXaw) first in the LDADD parameter
+of the automake file.
+
+2013-01-28 17:38:26 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Preserve PGN tags when loading engine
+
+Switching to EditGame mode would normally erase the tags, but when analyzing
+a loaded game this would be undesirable. When the engine is playing, keeping
+the tags is dubious, but it is not obvious what to put in a new name tag,
+so we leave that for now.
+
+2013-01-28 17:23:47 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Preserve mode on engine loading (sometimes)
+
+That the mode always switched to EditGame after engine loading was
+particularly annoying at the start of a game (where leaving BeginningOfGame
+mode would disablethe Time Control dialog, and the engine would not
+automatically reply if you start playing) and AnalyzeMode. These two
+modes are now preserved, BeginningOfGame by refraining from calling
+EditGameEvent() and sending 'force' to the new engine, and AnalyzeMode
+be calling AnalyzeModeEvent() after the engine is loaded and repositioned.
+
+2013-01-28 14:14:19 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Catch unknown engine in tourney games
+
+When an XBoard instance is playing on a tourney it can happen that it is
+using a settings file with an engine list not yet containing a certain
+participant, because that participant was just installed in the instance
+that created the tourney file, but it did not save those modifications yet.
+This error is now caught, and leads to an error popup and stopping of the
+tourney play. This error was made non-fatal to allow the user to decide
+if he wants to quit with or without saving the settings (which, after all,
+does not seem up-to-date).
+
+2013-01-26 18:08:37 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Adjudicate pawn-drop mate as loss in Shogi
+
+Mating with a Pawn drop is illegal in Shogi, but rather than burdoning
+the legality-testing by this complex rule, we simply invert the result
+for such a mate. After all, Shogi customs are such that everything illegal
+leads to an immediate loss.
+
+2013-01-25 10:05:44 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Adjudicate perpetual checks as loss also in Shogi
+
+The Xiangqi code for recognizing perpetual checks is now also activated for
+Shogi, but in this case we bail out before checking for perpetual chases.
+The mini-Shogi case is then recognized as a win for gote.
+
+2013-01-25 09:55:56 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Stalemate is a win in Shogi
+
+In regular Shogi this never occurs, but in the mini variants it happens
+often enough.
+
+2013-01-22 20:49:34 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix engine timeout problem in match mode
+
+Reload of a reuse=0 engine would cause a done=1 event which would be
+abort the feature timeout of the other engine in the first game.
+
+2013-01-22 20:32:33 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Enforce -popupMoveErrors
+
+One move error was using DisplayError(), in stead of DisplayMoveError(),
+and thus did not obey the -popupMoveErrors option.
+
+2013-01-21 15:30:29 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Update texi file
+
+
+2013-01-21 10:26:20 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix some warnings
+
+
+2013-01-20 19:09:05 -0800 Arun Persaud <arun@nubati.net>:
+Updated German translation
+
+
+2013-01-19 17:54:59 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Do delayed board draw also with -stickyWindows false
+
+Only CoDrag needs to be suppressed on a configure event with
+-stickyWindows false, not the board redraw.
+
+2013-01-18 11:11:48 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Let tellothers command add comment to PGN in local mode
+
+
+2012-12-30 15:19:57 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Allow use of ~ in pieceToChar for shadow pieces in any variant
+
+The use of shadow-pieces for promoted Pawns was limited to Crazyhouse and
+Bughouse. But this is not necessary, and in fact undesirable, as it made
+it impossible to implement Crazyhouse960, which combines shadow promotions
+with Fischer castling (only available in variant fischerandom)s, and thus
+has to be played as 8x8+5_fischerandom, using the Crazyhouse -pieceToChaTable.
+
+2012-12-30 15:06:33 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Resend engine-defined options after reuse=0 reload
+
+When the engine process is re-spawned for a new game under -xreuse setting,
+any alteration of engine settings brought about through the Engine Settings
+dialogs would be lost, and revert to the engine's default. This is now fixed
+by re-sending all options (known from the previous load of the same engine)
+with the current settings immediately after "protover 2", and ignoring the
+engine's option features. Rather than clearing the option list, and
+redefining it from the option features.
+
+2012-12-30 14:58:16 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Implement aborting of games on engine request.
+
+A new game-end command is added. For bakward compatibility it is disguised
+as an old one, namely "1/2-1/2 {Engine Abort Request}". These resultDetails
+are recognized as special, and rather than ending the game in a draw (which
+GUIs not implementing this), the game will be completely 'expunged' from
+the match or tourney it is part of, leaving no trace in the saveGameFile.
+
+2012-12-30 14:54:43 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Store some more tourney params in tourney file
+
+The hash and threads settings, as well as ponder and book options are now
+also saved in the tourney file, so that tournaments can be played in
+parallel where these parameters differ, and no mess up can occur on
+restarting a touney after doing something else.
+
+2012-12-23 11:26:31 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Do not automatically save aborted games in tourney PGN
+
+When the game result is 'unfinished', we prompt for a filename rather
+then using the specified saveGameFile if a tourney is in progress.
+
+2013-01-19 08:35:52 -0800 Arun Persaud <arun@nubati.net>:
+fix configure bug that showed up on OS X (couldn't find X11/Dialog.h)
+
+X_CFLAGS (set by AC_PATH_XTRA) was not used in Makefile.am. It was used in tests for X11/Dialog.h, etc. so configure worked, but make didn't.
+
+2013-01-18 22:26:13 -0800 Arun Persaud <arun@nubati.net>:
+Updated Ukrainian translations
+
+
+2013-01-09 07:57:43 -0800 Arun Persaud <arun@nubati.net>:
+removed trailing whitespace
+
+
+2013-01-09 07:49:20 -0800 Arun Persaud <arun@nubati.net>:
+Updated copyright notice to 2013
+
+
+2012-12-22 22:46:21 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Do not move to forwadMostMove when unpausing AnalyzeMode
+
+
+2012-12-22 22:44:50 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Use Ctrl key in AnalyzeMode to exclude entered move
+
+
+2012-12-22 20:40:26 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Implement insufficient mating material for Knightmate
+
+KBK is draw with Royal Knight. With exo-pieces also KNK and KFK.
+
+2012-12-22 20:25:51 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix rep-draw detection in drop games
+
+In games like Crazyhouse every move is reversible, as captured pieces
+can eventually change sides again, and be dropped back on the board.
+So we have to search back a full 100 ply for repetitions, passing captures
+and Pawn moves.
+
+2012-12-11 22:33:07 -0800 Arun Persaud <arun@nubati.net>:
+updated po/pot files
+
+
+2012-12-11 22:18:05 -0800 Arun Persaud <arun@nubati.net>:
+new version number for developer release
+
+
+2012-12-10 14:48:05 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Prefer pause mode on pondering engine over 'easy'
+
+If the thinking engine is stopped after its move because it does not
+support pause, is is still better to use pause on the pondering engine
+than to switch of its pondering with 'easy', as the latter might not
+be instantaneous. Also switch off pondering in the thinking engine before
+it gives the move, just in case it does not respond immediately to
+easy / hard.
+
+2012-12-10 13:40:47 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Update WinBoard translation template
+
+
+2012-12-10 13:35:41 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix min-Shogi promotion zone
+
+In integer arithmetic N*2/3 is not the same as N - N/3, with as a result
+that the white promotion zone was 2 ranks deep on 5x5 boards. This only
+happened in LegalityTest, but because this would classify all moves to
+4th rank an non-promotions, they would be printed with a faulty
+deferral (=) sign as promochar in SAN.
+
+2012-12-10 13:32:49 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Do not clear PGN tags on Analyze File
+
+
+2012-12-10 13:28:37 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix -fSAN in AnalyzeFile mode
+
+The exception that a PV relates to currentMove rather than forwardMostMove
+applies not oly in AnalyzeMode, but also in AnalyzeFile. Furthermore,
+PvToSan did not properly restore the pushed game tail in this case.
+
+2012-12-08 16:02:09 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Improve scaling of border bitmap (WB)
+
+The StretchBlt mode is set from dither to delete.
+
+2012-12-05 16:34:58 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Implement use of pause / resume protocol commands
+
+Engines that implement feature pause=1 will be paused during their move
+on a pause event; pondering engines will be controlled either through
+'pause' or (if they don't support that) 'easy', which both should work
+instantaneously. If the thinking engine does not support 'pause', the pausing
+will be deferred to when it produces its move, and is implemented by not
+relaying the move, and switch off pondering for both.
+
+2012-12-03 12:58:36 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix Loop-Chess promotions
+
+Loop Chess is not a supported variant, but hould be playable as Crazyhouse
+with an altered pieceToCharTable, not defining the shadow promotion pieces.
+But with legality testing on promotion to shadow piece would take place
+even if the shadow piece was not defined.
+
+2012-12-02 22:44:55 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix move highlighting with animation off
+
+In WB the moving of SetHighlights to after the animation had broken the
+highlighting of engine moves, because it was also moved after DrawPosition.
+While it is DrawPosition that actually draws the highlights. Now it has been
+moved to just before DrawPosition.
+
+2012-12-02 11:09:14 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Start browsing in currently-selected folder (WB)
+
+The folder-browse dialog always started at My Computer, while file browsing
+started in the globally last-used folder (which might not be related at all
+to the file entry we are now browsing for).
+
+2012-11-29 23:38:18 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Implement book-creation functions
+
+A new menu item triggers conversion of the currently loaded PGN file
+to a Polyglot book, saved with the GUI-book filename. A (volatile) option
+-mcBookMode alters the probing algorithm to build a book from scratch by
+playing games (and using a form of learning).
+
+2012-11-29 22:23:44 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Use colors in Board-Options dialog also for font pieces (WB)
+
+The piece color settings now control the pieceColor or fontPieceColor
+settings, depending on the setting of -usePieceFont.
+
+2012-11-29 22:14:05 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Implement auto-creation of ICS logon file
+
+Under control of the new option -autoCreateLogon (which can be set from
+the ICS Options dialog) the first two lines in response to the ICS "login:"
+pompt will be saved on a newly created logon file (if logon from such
+an existing file failed).
+
+2012-11-29 21:56:02 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Add Themes dialog (WB)
+
+This dialog, done by the generic popup, contains controls for many settings
+that so far could only be controlled by options. It also introduces the
+concept of 'themes', sets of options stored in the multi-line option
+-themeNames.
+  Add some dummy routines to suppress compile errors in functions that
+cannot be called yet in XBoard.
+
+2012-11-29 21:32:03 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Allow external piece bitmaps and board border (WB)
+
+The -pieceImageDirectory is now also used for WinBoard, to indicate
+a directory of .bmp files, used to replace the built-ins. The outline
+and solid bitmaps can be full-color. This allows winBoard to use the
+WinBoard-zeta graphics. A new option -border can indicate a bitmap file
+used to draw a half-square-wide border around the board.
+  A white background has to be drawn underneath the black pieces, to avoid
+color-interference with the board, just like happens for the white pieces.
+These backgrounds now always use bright white, rather than -withePieceColor.
+
+We still have to work on the scaling of the zeta (600x600) bitmaps to
+the actual board size, as for some bitmaps the stratchblt is ugly.
+
+2012-11-29 21:05:15 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Add 'Continue Later' button in Tournament dialog (WB)
+
+This button makes it possible to accept the values specified in the
+dialog without immediately starting the tournament (as OK does),
+so you can re-open the dialog later, and OK it then.
+
+2012-11-29 20:25:35 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Load opponent logo based on handle in ICS play (WB)
+
+The logos for handles on FICS are sought in folder logos\freeches.org\*.bmp,
+etc. If no logo for the handle is found there, the logo of the ICS is
+displayed as usual.
+
+2012-11-19 20:35:05 -0800 Daniel Dugovic <dandydand@gmail.com>:
+Fix configure script for --enable-zippy  (tiny change)
+
+reported and patch by Daniel.
+
+edited by Arun Persaud:
+- also fixed #ifndef ZIPPY -> #if !ZIPPY
+- didn't change #if -> #ifdef
+
+2012-11-10 00:12:34 -0800 Arun Persaud <arun@nubati.net>:
+don't define X_LIBS when using gtk-frontend
+
+
+2012-11-07 22:16:09 -0800 Arun Persaud <arun@nubati.net>:
+updated po/pot files; added new frontend files
+
+
+2012-11-07 22:14:20 -0800 Arun Persaud <arun@nubati.net>:
+fix configure script for --with-Xaw and --with-gtk
+
+made Xaw the default and included xaw or gtk sources as extras
+in case the other frontend is selected for make distcheck
+
+2012-11-07 21:13:38 -0800 Arun Persaud <arun@nubati.net>:
+new version number for developer release
+
+
+2012-10-31 09:55:02 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Draw frames around memos and listboxes
+
+
+2012-10-30 17:39:59 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Adapt lineGap during sizing
+
+
+2012-10-30 15:04:32 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix clock highlighting
+
+
+2012-10-30 10:59:45 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix Chat Box
+
+The genric TypeInProc is re-instated, and replaces ICSKeyEvent as primary
+handler for special keys in one-liner text edits.
+
+2012-10-29 19:46:27 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Pay attention to NO_CANCEL dialog flag
+
+
+2012-10-29 14:18:33 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix clock clicking with GtkEventBox
+
+Like in WinBoard the button-3 case is now handled in the primary
+event handler (and communicated to it in a kludgy way). It would be
+better if this was absorbed in ClockClick().
+
+2012-10-28 22:25:22 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix logo placement
+
+Graphs were not recognized as possible SAME_ROW elements. A Graph requesting
+FIXED_H (which only the logos did) is now packed into a (borderless) aspect
+frame.
+
+2012-10-25 23:04:42 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Add window positioning
+
+Sticky windows now sort of works, but needs unexplained fudge factors.
+Reopening a persistent dialog centers it on the board, and disobeys
+the positioning command. The WindowPlacement of the BoardWindow was
+again added (it was commented out during development).
+
+2012-10-22 22:41:14 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Make board sizing work through subtracting fixed height
+
+There is now no attempt to give a size to the board drawing area, so it
+can later be sized as small as we want. The frame width is determined
+by subtracting the nominal board size from the actual window size,
+(because the clocks will have that width, and the board will startas 1x1),
+while the vertical margin is determined as the difference between the
+bactual window height, the drawing-area height minus a fudge of 25 pixels
+to compesate for the erroneously allocated blank space below the board.
+
+2012-10-22 21:09:51 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix warnings
+
+The highTextStart/End are now declared in engineoutput.h, shared between
+nengineoutput.c and xengineoutput.c. Unused variables were removed.
+Also fix warnings in xboard.c and xoptions.c.
+
+2012-10-22 17:40:08 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Delete emptied front-end files, and move rest to gtk directory
+
+Remove #ifdeffed-out Xt code that has GTK implementation. The xgamelist
+and xhistory have been completely cleared off content, and were removed.
+
+2012-10-27 00:12:42 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Add copy-paste
+
+The code from gtk-xt could be used with almost no modification.
+
+2012-10-21 09:09:01 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Some experimenting with sizing
+
+Does not work as intended yet.
+
+2012-10-21 23:04:49 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Add task-bar icon
+
+Funny enough it was necessary to swap the two svg icons to make this work!
+
+2012-10-20 10:29:37 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Make some tall dialogs multi-column
+
+A dummy button was added to the last row of New Variant to make the
+number even. A legality-test warning as put in the New Variant dialog
+Fix width of tourney-file in Match dialog
+
+2012-10-20 21:14:33 -0700 Arun Persaud <arun@nubati.net>:
+updated some icons to SVG
+
+
+2012-10-20 19:57:58 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Add displaying of icons
+
+A new Option type, 'Icon', was added for this as in GTK Icons and Labels
+need different types of widget. The icons are now svg, so we could
+remove the icon pixmaps.
+
+2012-10-20 14:25:41 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix button bar
+
+
+2012-10-20 14:03:48 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Add BarBegin, BarEnd options
+
+This makes the button bar display correctly. Also fix v-sizing of menu bar.
+
+2012-10-20 10:01:35 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Add listbox double-click callback
+
+This function was formerly performed by WheelProc.
+
+2012-10-19 17:29:40 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Add hiding / showing second Engine Output pane
+
+The handle of the GTK table for the second engine is stored in the
+EndMark handle by GenericPopUp, so it can be used later to hise/show
+that table.
+
+2012-10-19 17:15:58 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Use different tables for different dialog columns
+
+Making the same table wider (in steps of 3) to get multiple columns
+does not work, because it forces options to align vertically. This
+wrecks dialogs like Load Engine, where one column contains a very
+high option (listbox). Now differnt tables are created for each column,
+packed in a new itermediate hbox. In case of the Engine Output window,
+a vbox is used instead to cause vertical stacking.
+  Only multi-line text-edits and listboxes are now allowed to take up
+vertical space changes, while only the middle colum of the table
+can take up horizontal size changes. Within packing boxes space is
+equally distributed.
+  The labels above the particiant-selection widgets had not the same width
+as the textview / listbox, leading to misplacement of the second label.
+  For Engine Settings the spontaneous breaking into columns did not
+involve a SAME_ROW flag, so the 'columns' were stacked vertically.
+In addition the columns were too tall for GTK. They are now 20 options max.
+
+2012-10-19 13:46:37 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Deselect first char in Move Type-in and ICS Input Box
+
+After popup the Move Type-In had the typed character in it, but it was
+selected, so that typing a second character would erase it again.
+Same for the ICS Input Box. A prototype for CursorAtEnd is now also added.
+
+2012-10-19 13:33:50 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Close Move Type-in on Enter
+
+The code is squeezed into the ICSKeyEvent callback.
+
+2012-10-18 21:57:50 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Add access routines to checkboxes and FocusOnWidget
+
+The <Enter> handler of the filter field needs it to return focus to
+the listbox.
+
+2012-10-18 21:42:49 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Add game-list callbacks
+
+The callbacks for listbox and filter text are treated by the same callback,
+which does both key presses and button double-clicks.
+Giving focus back to the listbox after filtering does not yet work!
+
+2012-10-18 16:27:57 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Add optional callback to Label Options
+
+For some reason this does not work. The callback isn't called!
+
+2012-10-18 13:40:55 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Add type-in event to board for popping up box
+
+
+2012-10-18 13:12:48 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Add Shift detection
+
+The state of Shift and Ctrl was only probed on button clicks, so it
+is now read out of the button-event struct in the relevant button handlers.
+For backwad compatibility, they store it in a global, so the routine
+ShiftKeys can take them from there.
+
+2012-10-18 12:35:20 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Remove some unneeded low-level X11 code
+
+Things like tabbing between controls, mouse-wheel scolling etc. are all
+automatic in GTK, and thuse don't need to be ported.
+
+2012-10-18 10:12:27 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Add file browser
+
+The gtk-xt code for browsing in response to menu items rather than dialog
+browse buttons) was grafted. It seems desirable to merge the two browsing
+functions, though. Pass extra params used by Xaw to FileNamePopUpGTK.
+The code was altered to use DelayedLoad.
+
+2012-10-18 09:54:41 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix ListBox, and add some support routines
+
+The srolled-window for the listbox used a uninitialized variable for its
+width, causing a crash. Now it pays attention to the Option.max and .value
+size hints. The access routines were copied from gtk-xt. HighlightWithScroll
+could just a wrapper for HighlightListBoxItem, as GTK auto-scrolls.
+
+2012-10-17 20:01:37 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Connect CommentClick handler
+
+This can make use of generic memo callback, so it could be entirely
+backend. Therefore it was moved to dialogs.h. As it shared a global with
+some other back-end popup routines to remember the current move, these
+could now be moved out of xboard.c too. (Well, not so for the X11 front-end,
+so it has now been put in a header. :-( )
+
+2012-10-17 19:41:11 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix animation
+
+Because FrameDelay does block the event loop, even though it releaes the
+CPU, expose events start to lag behind the actual drawing. By combining
+expose events for overlapping squares, rather than decompose them into
+3 rectangles, this problem seems to go away. But only if there is an
+extra exposure on the squares to be drawn also non-overlapping frames
+will be properly drawn (?!).
+
+2012-10-17 14:40:59 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Implement highlighting in engine output by through generic method
+
+HighlightMove was made generally available for all text. It is now just a
+wrapper for the generic HighlightText, and could be moved to the back-end.
+(This requires the initialization to be widget specific, and the flag
+indicating it has been done is now stored in the Option.min field.)
+
+2012-10-17 14:33:28 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Let engine-output memos use new generic callback
+
+
+2012-10-17 13:53:03 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Add scrolling of Move History
+
+To have access to the textview, its handle is now stored in the
+Option.textValue field.
+
+2012-10-17 13:11:23 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Add highlighting in move list
+
+For now it is assumed the normal background will be white (for clearing
+the highlight).
+
+2012-10-16 19:44:40 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Make generic memo-event handler, and connect history callback
+
+Large text widgets can now define a user handler in their Option.choice
+field. If they do, agneric callback is added tothem, which catches mouse
+events. Button release and pointer motion pass their coordinate and type
+to the specified user routine. Button presses in addition retrieve
+the text from the widget, set the cursor in it to the clicked point,
+and convert it to a character position, also passed to the user.
+  The user is responsible for ignoring events he is not interested in.
+
+2012-10-16 15:58:58 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Add key-handler for ICS Input Box
+
+In contrast to the X11 code, all intercepted keys are now treated by
+the same callback. The ICS Input Box callback triggers on Up, Down and
+Return key, and refers to these symbolically.
+
+2012-10-16 15:05:45 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Highlight Pause button
+
+
+2012-10-16 13:52:41 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Better cleansing of xboard.c from X11 types
+
+The #includes for X11 files were still in there.
+
+2012-10-16 13:28:32 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Add text insertion in engine-output memos
+
+
+2012-10-16 09:34:02 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Append recent engines to engine menu
+
+This is now entirely moved to the back-end, by doing it in the table
+from which the menus are later generated. The special callback for engine
+items is abandoned, and the euProc for such items is left NULL to flag
+that RecentEngineEvent should be invoked with the applicable engine number.
+To calculate the latter a global variable firstEngineItem is dynamically
+set to the length of the regular engine menu.
+
+2012-10-15 22:17:50 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Transfer more gtk-xt code, and add some new
+
+Add input-source handling
+Graft color picker (<Enter> callbeack in the text field is still missing!)
+Handle contents of label widgets (store handles in Option for access)
+Add printing of clocks
+Add printing of window title
+Pay attention to BORDER attribute of Label Options (pack in frame)
+Delete ReadBitmap code (also remove #including of bitmap files for icons)
+Fix layout of textviews (adapt to newer Option format, incl. wrap, scroll)
+Support vertical stacking in Break Option (no table widening when !SAME_ROW)
+Make default horizontal scroll policy automatic (for engine-output window)
+Fix disabling of unused spinners in TC dialog
+
+2012-10-15 20:47:33 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Connect dialog Browse buttons to GTK browser
+
+
+2012-10-15 19:52:17 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Implement menu checkmarking and enabling
+
+odes in the (later over-written) handle field specify which items
+are to be checkmarked, and by what style button.
+
+2012-10-15 16:18:12 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Attach expose handler and connect to mouse events
+
+The GraphExposeProc is conected to the Graph widgets. A gdk draw routine
+is used to copy the buffer bitmap to the display. It is also connected
+to button and motion-notify events.
+  In this version the board can be fully operated with the mouse.
+
+2012-10-14 22:00:14 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Transfer most available gtk-xt code to xoptions.c
+
+GenericPopUp and PopDown are grafted from gtk-xt into gtk2.
+The version compiles, but segfaults before doing anything, with error
+messages about unexpected cases in GenericPopup for Graph and PopUp Options
+of the main board. The spin options need special treatment in GetWidgtText.
+
+2012-10-15 11:41:33 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Give LoadListBox two extra parameters
+
+It often occurs that we just want to swap two elements, and reloading
+the entire listbox would be a very inefficient way to do this in widget
+sets that allow access to a single element.
+
+2012-10-14 20:36:34 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Remove all X11 code by #ifdeffing it out
+
+With #ifdef TODO_GTK we disable all X11 code, in order to get a compiling
+X11-free version. The disabled sections can then be replaced by code
+for another widget set, the X11 version still showing what it was supposed
+to do.
+
+2012-10-14 17:37:18 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Move timer functions to new file xtimer.c
+
+The timers for the clocks, periodic analysis events and ScheduleDelayedEvent
+go into a separate file.
+
+2012-10-14 15:31:56 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Make xevalgraph.c backend
+
+The only front-end stuff left in xevalgraph.c was an unnecessary reading
+of the window size (which could be obtained from the WindowPlaceent struct),
+and drawing (all cairo now). The drawing was moved to draw.c, and the
+remaining part renamed nevalgraph.c.
+
+An attempt to list them in a less chaotic way.
+
+2012-10-14 14:34:09 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Cleanse back-end code of all references to X11 types
+
+When compiling for X11, common.h #included X11/Intrinsics.h so that
+X11-specific data types could still be used throughout the back-end part
+not shared with WinBoard. By temporarily disabling this, error messages
+could be generated on all such occurrences, and were then solved. This
+included the following:
+  The InputSource struct is not uses in usystem.c at all, and its definition
+could be moved to xboard.c. InputSourceRef, which logically should heve been
+defined as (InputSource *), is in reality (void *), so the back-end can
+pass it around.
+  Some non-platform-dependent stuff of general interest had prototypes
+(or external vars) in xboard.h. This is now moved to a new header xboard2.h,
+to allow it to be shared without bringing in X11 dependence.
+  The EngineOutputProc was defined inconsistently, but the header was not
+sufficiently shared to flag this error. This has been repaired now, by moving
+the template to menus.h.
+
+2012-10-14 13:39:47 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Remove xedittags.c, .h from project
+
+The tiny bit of code that was left was absorbed in dialogs.c, the one
+prototype to menus.h.
+
+2012-10-14 12:53:20 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Remove inclusion of frontend.h from backendz.h
+
+This did not seem to serve any purpose at all.
+
+2012-10-14 12:49:28 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Split xhistory.c in front-end and middle-end part
+
+
+2012-10-14 12:21:09 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Move MarkMenuItem to xoptions.c
+
+This to make xoptions.c completely independent from the inclusion of
+frontend.h. The prototype is moved to menus.h.
+  Loose end: DrawPosition in board.c does not see the prototype.
+Very suspect that it wants to see it. Why would it have to correct the
+flipView setting??? Better se to it that it is correct to start with!
+
+2012-10-14 12:14:07 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+move testing for no options to back-end
+
+The test if an engine has options and display a note instead of
+the Engine Settings dialog when this is not the case is moved
+to outside of GenericPopUp, to make the later independent of calling
+other routines.
+
+2012-10-14 11:20:16 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Remove some unnecessary header includes
+
+
+2012-10-14 10:47:21 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Move ICS-engine analyze and AnalyzeGame code to shared back-end
+
+This code was still duplicated between WB and XB in the front-ends.
+Because of its incorporation in AnalyzeModeEvent the 'middle-end'
+function AnalyzeModeProc could be eliminated. AnalyzeModeEvent was made
+to return an int to flag its success, and keep the JAWS code based
+on it out of XBoard.
+ The AnalyzeGame code  is now incorporated in AnalyzeFileEvent().
+
+2012-10-26 10:28:59 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Add configure switches for Xaw vs GTK.
+
+This patch is an adapted version of the one Arun made at the end of the
+gtk2 branch. It uses the exact same version of his configure.ac, but the
+Makefile.am is adapted to the situation in master at the beginning of it,
+after duplication of the X11 front-end files in the xaw directory for
+preserving them, while the versions that will be modified to GTK front-end
+are still in the xboard directory.
+
+2012-10-25 11:12:41 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Prepare xoptions.c for middle-end changes
+
+Some changes that can be pre-empted, such as the splitting of Label
+into Label and Icon Option type, and some dummy wrappers are already
+implemented, so they can be used when needed by GTK.
+
+2012-10-25 09:20:03 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Preserve copies of the X11 front-end in xboard directory
+
+The X11 front-end has been moved to the xaw directory, but copies
+are retained for modifying them to gtk versions.
+
+2012-10-24 08:55:27 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Move X11 front-end to directory xaw
+
+
+2012-10-31 18:18:02 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix initial enables in TC dialog
+
+
+2012-10-30 14:47:24 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix image extension used for browsing to .pgn
+
+
+2012-10-28 21:39:19 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix WinBoard compile error on enum PEN
+
+
+2012-10-30 11:20:54 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix crash in promotion popup
+
+There were not enough entries for Capablanca Chess with legality-testing off,
+where King is also presented as a choice.
+
+2012-10-28 18:19:23 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix message in New Variant dialog
+
+Even in -ncp mode the message was referring to the 'current engine'.
+
+2012-10-28 18:16:20 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix crash on animation after resizing
+
+The animate buffers were still holding pointers to a discarded cairo surface.
+
+2012-10-21 14:49:45 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix variant-dependent pieces
+
+The code to select the actually used piece images from the available ones
+(from InitDrawingSizes) is now made into a subroutine, and also called
+after resizing the pieces.
+
+2012-10-26 10:18:48 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Replace marble texture pixmaps by png
+
+
+2012-10-26 10:13:27 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Replace xiangqi board pixmaps by png images
+
+
+2012-10-26 10:08:44 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Remove the texture pixmaps from project
+
+These were already replaced by png textures.
+
+2012-10-23 15:02:56 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix re-rendering of svg on resize
+
+The previously prepared bitmaps were retained if we resized, rather then
+rendering the svg atthe new size.
+
+2012-10-21 15:48:30 -0700 Arun Persaud <arun@nubati.net>:
+update po/pot files
+
+
+2012-10-21 15:47:12 -0700 Arun Persaud <arun@nubati.net>:
+new version number for developer release
+
+
+2012-10-21 11:10:36 -0700 Arun Persaud <arun@nubati.net>:
+we still need a few bitmaps, so the directory needs to be included in Makefile.am
+
+make distcheck complained about this
+
+2012-10-21 15:56:43 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Rename svg shogi pieces, so they become usable
+
+Only white pieces are present. For black they would have to be flipped.
+
+2012-10-21 15:54:25 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix bug in resizing on variant switch
+
+The fix of the garbage pixels had unfortunately broken this.
+
+2012-10-21 15:15:01 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix bug in fallback mechanism
+
+After failure to load a piece from a specified -pieceImageDirectory
+the default theme was not tried, because the cairo function to load
+from a pgn file returns a valid handle even if the file does not exist.
+
+2012-10-21 14:58:42 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Get svg error message
+
+
+2012-10-21 14:49:45 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix variant-dependent pieces
+
+The code to select the actually used piece images from the available ones
+(from InitDrawingSizes) is now made into a subroutine, and also called
+after resizing the pieces.
+
+2012-10-16 12:08:25 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Remove caveat on available pieces fromNew Variant dialog
+
+In the cairo version all pieces are available at all board sizes.
+
+2012-10-21 11:41:11 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Remove some unused images from png directory
+
+Currently only the three board texture files are used. But the piece
+images are still left, because they might be useful if we ever want
+to mae XBoard configurable for not using librsvg.
+
+2012-10-21 10:40:37 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix bug in resizing
+
+The nominal size of the window was not set in the correct Option struct.
+
+2012-10-21 09:58:23 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Prevent odd-width line shift in length direction
+
+
+2012-10-21 09:48:29 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Print missing-pieces error message to console
+
+The GUI might not yet be up at this point.In addition, suppress
+the rest of the code, because it could give segfaults.
+
+2012-10-21 09:30:26 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix garbage pixels on the right of the board
+
+The extra pixel that is requested in sizing the board window back to
+an available size because we ofte get one less pixel than we ask for
+can lead to a line of garbage pixels next to the board. This is combatted
+by limiting expose events to the true board area, remembering that in the
+Graph Option rather than the actual window size, and suppressing resizing
+when the latter only exceeds the stored width by more than 1 pixel.
+
+2012-10-15 10:27:14 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Trim board-window size
+
+The board window will sometimes be a pixel larger than requested.
+The ReSize routine will now reset the size values in the Graph Option
+to what they were supposed to be, to prevent expose events will
+draw nonsense in the extra space.
+
+2012-10-13 23:26:10 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Adapt docs for svg/png in stead of bitmap/pixmap
+
+
+2012-10-13 09:35:31 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Spontaeous changes in gettext stuff
+
+
+2012-10-13 08:03:48 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Move Shogi svg pieces to own directory
+
+
+2012-10-13 07:57:48 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Remove unnecessary Xt colors and call to MakeColors
+
+
+2012-10-13 07:50:56 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Code cleanup: move expose redraw to draw.c
+
+
+2012-10-13 07:37:45 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Suppress warning for InitDrawingHandle
+
+
+2012-10-13 07:33:15 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Make fallbackPieceImageDirectory hardcoded
+
+
+2012-10-13 07:18:23 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Increase drag delay too 200 msec
+
+On my slow laptop it can take more than 100 msec to reallocate bitmaps
+in the generic expose, with as a consequence that the DelayedDrag event
+is not processed before the timeout expires. The timeout event then triggers
+a redraw, which again takes so long that the timeout expires before the
+event to reset the timer could be processed, and this just perpetuates
+itself, leading to a large series of queued redraws, and a long waiting time
+for an image to appear after the sizing stops.
+
+2012-10-13 07:01:05 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix segfault on faulty command-line option
+
+
+2012-10-12 14:42:26 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Suppress anti-aliasing in -monoMode
+
+In the color-substitution code, always use bi-level alpha and color.
+
+2012-10-12 13:34:04 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Remove piece pixmaps from project
+
+
+2012-10-12 11:47:25 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Implement proper fallback cascade
+
+Try in order cached svg, cached bitmap, user png, user svg, default svg.
+
+2012-10-12 11:06:06 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Cache svg handles
+
+
+2012-10-12 10:45:29 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Install svg pieces in themes/default
+
+The svg pieces are installed with the XBoard data in the directory
+.../xboard/themes/default . A new option -fallbackPieceImageDirectory
+is added, and is configured in the master settings file to point to
+these pieces. This options, which replaces -svgDirectory, is volatile,
+and the menu control to set it is removed. The -pngDirectory option
+is renamed to -pieceImageDirectory (-pid).
+
+2012-10-12 10:02:50 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Remove bitmaps from project
+
+
+2012-10-12 09:55:07 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Install the wood textures as png
+
+The xboard.conf has to be edited to set these as default textures,
+in stead of the .xpm files.
+
+2012-10-12 09:50:31 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Add hatched board texture
+
+A png file with hatching is added, so it can be used for dark squares
+in a monochrome theme. It is installed in a new data directory
+.../xboard/themes/textures.
+
+2012-10-11 22:21:06 -0700 Arun Persaud <arun@nubati.net>:
+added a black and white theme to replace the mono option
+
+
+2012-10-11 20:56:42 -0700 Arun Persaud <arun@nubati.net>:
+added SVGs to dist files in automake
+
+
+2012-10-11 19:44:22 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix exposure of atomic captures
+
+The grid lines had to be repaired too, so damage marker 2 had to be used.
+
+2012-10-11 19:13:24 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix animation with textures off
+
+The blank square was not shifted to (0,0) when drawing the animation buffer.
+
+2012-10-11 19:08:49 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix 1-pixel offset of grid lines on some cairo implementations
+
+
+2012-10-11 09:51:07 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Solve odd lineGap problem
+
+Not all cairo versions seem to round the same when an odd-width line
+is to be drawn at integer coordinates. So now we explicitly ask it
+to be drawn centered on half-odd-integer coordinates.
+
+2012-10-09 18:52:43 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Add -trueColors option
+
+
+2012-10-09 14:56:16 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Always render svg pieces anew on size change
+
+The svg pieces are now unconditionally rendered to supply the pngPieceImage
+master source otherwise read from png file. This is then fed into the
+original png code (so that if for some reason it fails, we fall back on png
+pieces, and finally on built-in pixmaps).
+
+2012-10-09 14:06:47 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix rsvg version in configure.ac
+
+
+2012-10-08 19:54:19 -0700 Arun Persaud <arun@nubati.net>:
+initial svg rendering
+
+
+2012-10-08 18:34:05 -0700 Arun Persaud <arun@nubati.net>:
+added cairo and librsvg to configure process
+
+
+2012-10-08 18:32:55 -0700 Arun Persaud <arun@nubati.net>:
+added SVGs
+
+converted from inkscape SVG to plain SVG before adding
+
+2012-10-10 21:19:25 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Adapt Eval Graph code to new drawing system
+
+The eval graph now triggers an expose after drawing, and gets its size
+from the Option fields.
+
+2012-10-10 20:37:58 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix expose requests seek graph
+
+
+2012-10-10 20:07:53 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Make draw handle for board globally available
+
+
+2012-10-10 19:45:39 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Let expose requests pay proper attenton to widget
+
+So far, expose requests were always assumed to be for the board widget,
+preventing display of the labels.
+
+2012-10-10 18:45:59 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix initial display of logos
+
+The logos were selected and printed during the initialization,
+before the main event loop was started. So the expose events during
+widget creation, which created the drawing surfaces, were only processed
+after the initial drawing of logos, so that there was nothing to draw on!
+
+2012-10-10 17:25:25 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix alignment of highlight expose
+
+
+2012-10-10 17:19:52 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+remove NewSurfaces
+
+
+2012-10-09 13:57:40 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Make expose handler generic
+
+The Graph Option now returns two handles in hitherto unused fields of its
+Option struct: Option.choice is a cairo handle of a memory buffer the user
+must draw to, while Option.textValue is the handle to the widget.
+Expose events copy the memory buffer to the display for the exposed area.
+A routine DrawExpose() is supplied to let the user generate expose events.
+
+2012-10-06 21:30:59 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Reload piece images when pngDirectory is changed
+
+The OK function of the board options dialog now tests for a change
+in pngDirectory and passes a parameter to InitDrawingParams to tell
+it to destroy the old images. This cause a reload on scaling the pieces.
+
+2012-10-06 20:16:54 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Suppress redraw during sizing
+
+
+2012-10-06 20:10:18 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix bug in resize trigger
+
+Even if the square size does not change, the window has to be shrunk
+back to fit the board.
+
+2012-10-06 19:54:50 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Make Piececolor options work on png pieces
+
+The scaled, antialiased bitmaps are now colored according to the option
+settings. This is done by decomposing every pixel in a white, black and
+transparency component, which is possible because the opacity is
+directly give in the alpha channel, and black originally was a hard zero.
+So what you se in the red channel must be white (as the original white
+was #FFFFCC), and the rest of the opacity must be due to black.
+  The color to be replaced (white for the white pieces, black for the black
+pieces) is then replaced by the original weight of this color times the
+color from the option.
+
+2012-10-06 17:53:25 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Plug resource leak on rezising with pixmaps
+
+
+2012-10-06 16:19:41 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fall back on built-in pixmaps if png pieces unreadable
+
+
+2012-10-06 14:21:11 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Do coordinate text alignment with cairo
+
+
+2012-10-06 13:40:12 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Some cleanup
+
+
+2012-10-06 12:14:16 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Clean up drawing code
+
+Now all routines only draw through cairo, the destination surface can
+be passed to them, making it possible to do the duplicate drawing
+to the memory board image in a cleaner way.
+
+2012-10-06 11:37:20 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Check in draw.c, draw.h
+
+
+2012-10-06 11:26:24 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Remove all bitmap & pixmap drawing
+
+All Xt code for drawing the board is now removed, as are the
+-pixmapDirectory and -bitmapdirectory option. This version is now
+completely dependent on cairo for handling of all graphics anywhere.
+(The build-in pixmaps are still left, though, for later use as an
+alterative cairo source when no png files are found.)
+
+2012-10-06 10:29:06 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Separate off drawing routines from xboard.c
+
+A new source file draw.c is created to hold all code associated with
+board drawing. The routines for loading bitmaps and creating colors
+were left in xboard.c, though, as they are also used for handling
+icons and colors of widgets.
+
+2012-10-05 19:53:04 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix erasing dots in seek graph
+
+The cairo dots were just a little bit bigger than the old ones, so they
+were not properly erased, but left a remnant.
+
+2012-10-05 19:25:58 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Cleanup CairoOverlayPiece
+
+
+2012-10-05 19:22:34 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Draw arrow also on backup image
+
+
+2012-10-05 19:16:30 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix highlight clearing
+
+
+2012-10-05 18:59:30 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Remove acceleration trick
+
+
+2012-10-05 18:54:01 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Implement variant-dependent png piece symbols
+
+
+2012-10-05 18:42:51 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix clearing of markers dots with promo popup
+
+
+2012-10-05 18:32:24 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Also render coordinates to backup board
+
+
+2012-10-05 18:30:35 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Remove debug print
+
+
+2012-10-05 18:29:13 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Let cairo also do evenly colored squares.
+
+
+2012-10-05 17:56:43 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Make dragged piece for excluding moves transparent
+
+
+2012-10-05 17:42:18 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix DrawSeekText
+
+
+2012-10-05 17:40:55 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Redo coordinate / piece-count printing ith cairo
+
+
+2012-10-05 15:40:14 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Also use cairo on slave board
+
+With dual-board observing the drawing should be redirected to the
+slave board, so SwitchWindow should also switch the xlib-surface to
+one for the slave window.
+
+2012-10-05 15:12:41 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Cure flashing of piece on from-square
+
+In a drag-drop move the piece was flashed on the from square after the
+user dropped it on the to-square, because highlights were set before the
+move had updated the board. And highlighting with arrow can cause a redraw
+of the last board. Same with setting or clearing marker dots.
+
+2012-10-05 14:20:12 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Specify proper condition for using cairo animation
+
+
+2012-10-05 14:07:53 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Allow resizing of board window
+
+In full png mode the size of the board window is no longer locked.
+After resizing, the square size is calculated as the largest one that
+would fit the window, and the window is then shrunk around it. To prevent
+excessive redrawing during sizing, the redraw is delayed by putting it
+in DragProc.
+
+2012-10-05 10:41:02 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Switch to using 64x64 png images
+
+The bitmap scaling works better when the needed factors are not too large,
+as the svg rendering's anti-aliasing did not blur more than 1 pixel.
+So after shrinking too much the images are not effectively anti-aliased
+anymore.
+
+2012-10-05 10:16:47 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Maintain in-memory copy of the board image
+
+As reading back from the xlib-surface proves incredibly slow (cairo probably
+converts the entire image from Xt format to cairo format when we set it
+as a source, even though we only want to read a few dozen pixels), we now
+keep an exact copy of the board image as a cairo bitmap in memory. This
+restores the speed of the animation, but unfortunately leads to awful code.
+
+2012-10-04 22:15:05 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Do animation with cairo
+
+Unfortunately this is incredibly slow.
+
+2012-10-04 18:36:08 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Allow back-texture files to be PNG, (drawn with cairo)
+
+
+2012-10-04 15:10:37 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Add png pieces
+
+A new directory with 256x256 png piece images is added to the source tree.
+
+2012-10-04 15:01:05 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Add mode to draw PNG piece images through cairo
+
+The PNG images have to be supplied as files in a -pngDirectory (a new
+option) with a 256x256 bitmap. They are then scaled by cairo to the
+desired square size. This does not work very well for the smaller sizes.
+
+2012-10-03 14:45:07 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Redo marker dots with cairo
+
+
+2012-10-03 14:27:14 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Redo highlights with cairo
+
+
+2012-10-03 14:07:37 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Make convenience routine SetPen globally available
+
+The routine to set a pen as specified by  a color string that was used
+in xevalgraph is moved to xboard.c, where there also is lots of demand
+for it. The arrow drawing now uses it for setting the highlightSquareColor.
+
+2012-10-03 12:28:30 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Redo grid with cairo
+
+
+2012-10-03 12:00:07 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Redo arrow highlighting with cairo
+
+
+2012-10-03 11:20:12 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Redo seek graph with cairo
+
+New front-end services DrawSeekOpen() and DrawSeekClose() have been
+added, and are called from the back-end to enclose any drawing activity.
+In WinBoard these had to be defined as dummies.
+
+2012-10-02 15:31:26 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Redo logos with cairo
+
+The logos must now be .png files, and are internally handled as their
+filenames. (So no preparation of a drawable from it at startup.)
+Cairo allows them to be scaled to the requested logoSize.
+
+2012-10-02 14:02:23 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix Eval Graph resolution problems
+
+Anti-aliasing had to be switched off to get a crisp graph. A second problem
+was that the dashed lines were drawn in both directions, with interfering
+dashes.
+
+2012-10-02 10:54:48 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Redo Eval Graph drawing with cairo
+
+
+2012-10-21 10:21:33 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix button-border-width bug in monoMode
+
+The kludge of signalling we are dealing wih a button rather than a label
+was wrongly implemented in case of momoMode.
+
+2012-10-21 10:14:24 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Reserve more space for button bar
+
+In some board sizes the button bar was wider than the code guessed,
+so the window width would be determined by the message + buttons row rather
+than the board.
+
+2012-10-21 11:24:18 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix WinBoard compile errors
+
+
+2012-10-13 09:33:39 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix non-NLS compile error for XFontStruct
+
+
+2012-10-12 12:04:17 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix browsing for path
+
+A pathname was still prefixed with the cuurent directory.
+
+2012-10-07 21:00:10 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Use Pause state in AnalyzeMode to imply move exclusion
+
+The pause state was not used in AnalyzeMode so far. Now it is used to
+imply all entered moves are for exclusion/inclusion.
+
+2012-09-30 18:55:13 -0700 Arun Persaud <arun@nubati.net>:
+new version number for developer release
+
+
+2012-09-30 22:16:14 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix broken -ics and -cp options
+
+The patch to specify engines and ICS by nickame broke the use of the
+regular options to do this, because they could also reset them. Now
+this is fixed by only setting them (through |= in stead of =).
+
+2012-09-30 22:01:52 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Update texi file
+
+The description of exclude-moves, multi-game ananalysis and duo-analysis
+is added.
+
+2012-09-30 10:07:58 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Resolve conflict between -mps and -inc options
+
+The age-old problem that a persistent valid -inc value will cause -mps
+to be ignored is solved by the kludge of storing these two as a single
+option (-mps) in the settings file, and declaring the other (-inc) volatile.
+The range of negative numbers (invalid as -mps value) was available for
+that, and now is used to store the negated value of -inc in msec.
+For backward compatibility, specification of -inc causes interpretation
+of -mps in the old way. The forcing of -inc to -1 in the master settings file
+could be safely removed because of this change, so that the time increment
+now is a persistent option.
+
+2012-09-29 23:13:04 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Allow entry of fractional increment in WB time-control dialog
+
+The numeric edit is changed to a general text edit, and code is added
+to convert the text it contains to and from float, with proper error check.
+
+2012-09-29 23:05:33 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Preconfigure -icsNames in xboard.conf
+
+Although XBoard has no startup dialog with an ICS combobox, the -icsNames
+option is now used to select lines from with the -is option, and in
+interpretation of positional arguments. The most common ICS are configured
+together with a short nickname, so that commands like "xboard fics" will work.
+
+2012-09-29 22:58:12 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Allow ICS nickname as positional argument
+
+If an argument is encountered that is not preceded by an option name,
+it is now first checked if it corresponds to the nickname of an ICS
+in -icsNames. If so, it is assumed to be the value of an -is option,
+selecting -ics mode with that ICS and all the options installed with it.
+
+2012-09-28 20:28:05 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Cure some sick behavior in XBoard Engine Output right-clicks
+
+When a PV-walk is in progress, the PV is highlighted by selecting it,
+and this focuses the attention of the scroll bar on it, so it remains in
+view. But after release, that line was kept in view, rather than scrolling
+back to the top of the window (where the header line bust be available
+for clicking)
+
+2012-09-28 13:28:17 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Allow Analyze Game to auto-step through entire game file
+
+If the game index is set to auto-increment (-lgi -1), the Analyze Game
+function will automatically load the next game of the current game file
+(starting to auto-play/annotate that) when the end of the current game is
+reached. This flushes the annotated game if auto-saving was set,
+so that eventually all games in the file will be annotatd and saved.
+  The game index is automatically set to auto-increment when we load
+a file while in Analyze Game mode, but switching this mode on while a game
+is already loaded will stop at the end of that game, as usual (if -lgi was
+not explicitly set).
+
+2012-09-28 13:24:33 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Let second engine move in lockstep during dual analysis
+
+When the second engine is also analysing (as indicated by its stat variable
+second.analyzing), we send all moves / undos / positions /  in&excludes that
+go to the first engine also to second.
+
+2012-09-27 19:07:58 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Allow second engine to analyze too
+
+Clicking the Analysis menu when analysis is already in progress will
+now toggle the secon engine to analyze the same position. For now,
+this lasts only until the position changes (or you leave analyze mode),
+after which the second engine is always switched off, and the Engine
+Output window returns to single pane. Each pane now has its own header
+line; the exclude header is suppressed in the second pane.
+
+2012-09-27 18:11:23 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Add options -fe, -se, -is to load installed engines/ics from list
+
+The volatile string options -fe, -se ('first/second engine') load the first
+and second engine of the given nickname in the -firstChessProgramNames list,
+including all options that were installed with it (similar to when in
+WinBoard the that engine line had been selected through the Startup Dialog's
+combobox). The option -is is similarly used to retrieve the line for an
+ICS in the -icsNames list.
+
+2012-09-27 18:02:24 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Add check on validity of tourney participants
+
+Before allowing OK of the Tournament Options dialog, it is now checked
+whether all participants (which are given as nicknames) can be found
+in the list of installed engines, so that no problems will occurr with
+non-existing engines during the tourney (if typos crept in after hand-
+editing the list).
+
+2012-09-25 16:21:42 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Implement --help option
+
+The list of options is printed before exiting. Some attempt is made
+to do it in a nice way.
+
+2012-09-23 20:10:58 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Implement variant seirawan in -serverMoves option
+
+Write the gating moves such that the ChessLive! viewer will understand them.
+
+2012-09-23 20:05:07 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Workaround for FICS bug
+
+FICS does not properly understand SAN, and thinks bxc3 can be a Bishop move.
+This broke 'Upload to examine', because that uploaded in SAN. In case the
+SAN starts with Bx or bx, it now uses long algebraic (with = before the
+promo char).
+
+2012-09-20 18:17:55 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Define XOP mime type for XBoard
+
+Supply a white-knight icon for this mime type, called application/x-xboard-opt,
+and a sesktop file to associate it with running XBoard with this settings file.
+
+2012-09-20 17:24:29 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Pay attention to extension of 'positional' arguments
+
+An argument without preceding option name was assumed to be an -lgf argument.
+This patch still does that by default, but if the argument ends in .fen, .epd,
+.trn, .ini or .xop it is considered an -lpf, -tf or -opt argument.
+  In addition, an implied -lpf or -lgf argument also imply the option -viewer,
+which inserts the -viewerOptions string into the command line, and proesses it
+as options. A new option -tourneyOptions is similarly inserted for an implied
+-tf argument. These strings should contain all options needed to start XBoard
+fully configured as game viewer or tourney playing agent on the mentioned file.
+
+2012-09-20 15:29:42 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Let windows stick to right display edge (WB)
+
+Auxiliary windows docked to the board window from below or to the right, which are
+pushed out of view when the board window resizes, will be trimmed to just touch the
+diplay edge (if sufficient width or height remains). When the board window shrinks,
+auxiliary windows touching the edge will be resized so they remain touching it.
+
+2012-09-20 15:20:36 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Round board size to one where piece images available (WB)
+
+When using built-in bitmaps, in sizes where unorthodox pieces are needed, but not
+available, the size is temporarily rounded to one of the sizes where they are.
+
+2012-07-03 17:21:53 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix bug in Edit Position
+
+Due to = in stead of == the variant was always set to S-Chess in
+EditPositionDone().
+
+2012-08-28 21:24:51 -0700 Daniel Macks <dmacks@netspace.org>:
+bug #37210: Mishandling of X11 -I flags (tiny change)
+
+AP: applied patch from bugtracker and added one missing 'save_cppflags="$CPPFLAGS"'
+
+2012-06-02 14:31:18 -0700 Arun Persaud <arun@nubati.net>:
+bug #36229: changed ICS_* from define to enum
+
+
+2012-05-28 13:58:00 -0700 Arun Persaud <arun@nubati.net>:
+bug #36229: changed STATE_* from define to enum
+
+enabling better compiler checks
+
+2012-05-28 13:50:50 -0700 Arun Persaud <arun@nubati.net>:
+bug #36229: changed PEN_* from define to enum
+
+This should allow better checks by the compiler
+
+2012-05-28 13:01:15 -0700 Arun Persaud <arun@nubati.net>:
+fix bug #36228: reserved identifier violation
+
+variables and macro names beginning with _ are renamed to XB_. More consistent naming of include guards.
+See link in bug report.
+
+2012-05-28 12:36:37 -0700 Arun Persaud <arun@nubati.net>:
+Updated German translation
+
+
+2012-04-30 20:06:00 -0700 Arun Persaud <arun@nubati.net>:
+new version number for developer release
+
+
+2012-04-24 11:23:04 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Decapitalize promoChar in move parser
+
+
+2012-04-23 14:12:10 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Keep track of virginity of back-rank pieces in variant seirawan
+
+The forelast rank of the Board array is now used in VariantSChess to
+contain flags that indicate virginity of the back-rank pieces, one bit
+for white, the other for black. Legality checking of gatings now makes
+use of this info. FENs mention all virgin pieces not implied by castling
+rights in the castling field, by printing the corresponding file IDs,
+as long as holdings are non-empty. The FEN reader now also understands
+this format. EditPositionDone fakes virginity for all pieces that are
+on their starting square.
+
+2012-04-17 19:49:24 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Suppress clear-board message after pasting FEN
+
+The message field is now always cleared when you leave EditPosition mode.
+
+2012-04-17 19:45:33 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix faking of castling rights after editing position with holdings
+
+The queen-side rook was always imagined at X=0, which is in the holdings
+when these exist, so that Q-side castling in such games was never allowed
+after EditPosition.
+
+2012-04-20 10:29:36 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix WB Engine Settings window
+
+The listbox patch has broken this window, by making it only list the
+first option of the engine, by switching to the next column based on a >=
+test rather than == test. Fixed by using 1000 as invalid value for the
+break point, rather than -1.
+
+2012-04-20 00:01:08 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix key binding of DebugProc
+
+The name used for binding was DebugProc, while the ite was named Debug.
+
+2012-04-16 20:51:50 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix ICS Text Menu popup
+
+The space for the option names needed to be allocated.
+
+2012-04-16 20:37:06 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix disabling of Load Engine menu
+
+
+2012-04-15 22:53:24 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Port chat boxes to XBoard
+
+A new menu item Open Chat Window is added to the View menu. It opens a
+window that can handle 5 chats. A row of buttons on top selects which is
+the foreground chat partner, to which we type, and whose incoming messages
+will be displayed in the memo. The leftmost 'button' is not really a button,
+but a text edit, and the active partner is displayed there (so it can be
+altered). Selecting another chat partner through a button, moves that partner
+to the text-edit, and reshuffles the buttons. Incoming messages in a chat
+that is not foreground make the corresponding button color orange.
+
+2012-04-16 20:27:08 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Allow chaining of single-line text-edits to top
+
+For the benefit of the chat window, a text-edit plus leading description
+can now also be chained to the top edge of a dialog. The chaining of the
+(degenerate) multi-line ICS Input Box and Move Type-In was entirely to the
+bottom, which has now been corrected.
+
+2012-04-12 09:30:24 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Add logo widgets in main board window
+
+New options -logoSize and -logoDir are added. The former enables logo display,
+when non-zero and not too big. The latter is used by -autoLogo. The options
+ -firstLogo and -secondLogo also work. Problem is that the clock height
+is larger than the logo height, and for now a nasty trick in GenericPopUp
+is used to position the next element (message field) w.r.t. the clocks,
+rather than the last element of the row above (the logo): in case of a
+SAME_ROW Graph element, 'last' is kept at the previous element.
+
+2012-04-19 10:48:41 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix crash on time forfeit with -st option
+
+When fixed time per move was set from the command line, the time-control
+strings were not set. This let to a crash when an engine forfeited.
+The GetTimeQuota function is now made resistant to a NULL pointer here.
+
+2012-04-19 10:39:12 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Solve WinBoard name clashes, fix zippy-analyze menu graying
+
+Some of the function names used in the refactored X11 front-end collided
+with Windows system names from winboard.h, or with names of internal routines
+in WinBoard front-end files (so they could not be declared in frontend.h).
+These were renamed. Some prototypes in engineoutput.h contained X11 types,
+and they were moved to xboard.h.
+  In addition, two menu-item names were corrected to two-part names.
+
+2012-04-18 12:00:43 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Offer primitive paging in file browser
+
+If there are more than 1000 files that would have to be displayed,
+the number will be limited to 999, and a 'next page' entry will appear
+at the bottom. Clicking that will give you the next group.
+ This is an emergency measure only, as it interferes with sorting
+(grouping is based on order inside the directory, i.e. kind of arbitrary,
+and sorting is only done within a group.) There is no such thing for the
+folder list yet. There is no way to go back to a previous page, other
+than closing and re-opening the browser, or selecting another file type.
+
+2012-04-18 11:16:58 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Add pixmap as file type known to browser
+
+Users can browse for a pixmap to set the board texture.
+
+2012-04-17 15:45:27 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix warning about signedness
+
+Note: the promoChar in ExcludeMoves was explicitly defined to make
+sure the kludge promoChar = -1 for indicating best move works. But it
+should be equivalent to casting the promoChar to (signed char) just
+before the comparison.
+
+2012-04-17 15:44:15 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix warnings about character index
+
+
+2012-04-17 15:37:53 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Move ManProc to xboard.c
+
+It calls ManInner, which requires X11 data types, even if the values are NULL.
+
+2012-04-17 15:27:21 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Move FileNamePopUp to dialogs.c
+
+
+2012-04-17 15:15:03 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix readout of numeric combobox
+
+As currently no numeric comboboxes are used, this bug was silent.
+
+2012-04-17 15:10:54 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Shuffle prototypes to correct header, or add them there
+
+
+2012-04-17 14:15:15 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix MenuNameToItem
+
+This function could crash when called with ann argument that did not
+contain a period, while the idea was that it should handle this as if the
+item is in noMenu (for user-specified key binding to non-menu funtions).
+
+2012-04-16 19:43:03 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix click-click under-promotion animation save
+
+
+2012-04-17 11:02:39 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Define TOPLEVEL in winboard.c
+
+
+2012-04-17 10:59:33 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Add two new strings to WinBoard language file
+
+
+2012-04-17 10:51:02 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix second-engine variant test
+
+The test whether the second engine supports the selected variant took place
+before the second engine was loaded, thus always coming to the conclusion
+that the variant was not supported, and aborting the TwoMachines command.
+The test is now moved to after second-engine loading (but before its
+initialization, where non-supporting would become a fatal error).
+
+2012-04-16 12:11:09 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix clearing of ICS input box after send
+
+
+2012-04-16 19:08:10 -0700 Arun Persaud <arun@nubati.net>:
+enable -Wall -Wno-parentheses for all compilers that understand them
+
+
+2012-04-16 13:18:37 +0200 Byrial Jensen <byrial@vip.cybercity.dk>:
+Remove 5 unused variables from zippy code
+
+
+2012-04-16 13:14:06 +0200 Byrial Jensen <byrial@vip.cybercity.dk>:
+Remove unused static function ShowTC
+
+
+2012-04-16 13:10:58 +0200 Byrial Jensen <byrial@vip.cybercity.dk>:
+Remove unused static function MenuBarSelect
+
+
+2012-04-16 13:07:01 +0200 Byrial Jensen <byrial@vip.cybercity.dk>:
+Remove unused variable first_entry from function find_key
+
+
+2012-04-16 13:01:09 +0200 Byrial Jensen <byrial@vip.cybercity.dk>:
+Remove unused variable tm from function SaveGamePGN
+
+
+2012-04-16 12:56:46 +0200 Byrial Jensen <byrial@vip.cybercity.dk>:
+Remove unused variable delayedKing from function QuickScan
+
+
+2012-04-16 12:52:57 +0200 Byrial Jensen <byrial@vip.cybercity.dk>:
+Remove unused variable pdown from function UserMoveEvent
+
+
+2012-04-15 04:25:59 +0200 Byrial Jensen <byrial@vip.cybercity.dk>:
+Change some double literals to floats.
+
+To avoid unnecessary implicit promotions of float variables to double.
+
+2012-04-15 11:12:02 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Remove debug printf
+
+
+2012-04-14 22:43:03 +0200 Byrial Jensen <byrial@vip.cybercity.dk>:
+Translate "NPS" also in engine output window
+
+
+2012-04-14 16:19:34 -0700 Arun Persaud <arun@nubati.net>:
+removed unused variables (-Wunused-variable)
+
+
+2012-04-14 15:37:05 -0700 Arun Persaud <arun@nubati.net>:
+added m4 directory to search path for aclocal. As suggested by Michel Van den Bergh
+
+
+2012-04-14 23:21:56 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix Eval Graph scale in drop games
+
+
+2012-04-14 23:16:29 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix ArrowDamage out-of-bounds access on drop moves
+
+
+2012-04-14 21:33:49 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Implement automatic partner observe
+
+Starting a game, or starting to observe one, now automatically issues a
+'pobserve' command if dual-board is switched on, so that the partner game
+will pop up in the secondary board (assuming it is bughouse).
+ The secondary board now displays the players in the title. (This (lightly)
+breaks WinBoard again.) When the primary game ends, the secondary board
+closes automatically. Initial sizing of the board is repaired, and now uses
+the actual current board size, rather than the initial size of the main board.
+
+2012-04-14 15:43:30 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix crash due to empty PV
+
+Reception of a stat01 command before the first PV could cause a crash,
+as apparently the parser cannot handle this.
+
+2012-04-14 13:27:48 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Suppress testing for availability in bughouse drops
+
+Give up on testing legality of bughouse drop moves; this only causes problems,
+because the move list sent by the ICS is not accompanied by holdings updates.
+So XBoard parses it thinking the holdings are empty, making every drop move
+an ImpossibleMove. Bughouse can only be played on ICS, and we might as well
+trust the ICS that it will only pass us legal moves. A user should not be
+able to enter illegal drops; unavailable pieces cannot be grabbed from the
+holdings, and typing is diverted to the ICS directly (which would reject the
+illegal drop without XBoard even knowing about it).
+  Also improve switching to bh/zh, based on drop move in initial board.
+
+2012-04-14 09:11:22 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix some compile errors / warnings
+
+
+2012-04-13 19:06:17 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix promotionPopDown on new move entry
+
+The promotion popup is non-modal, and old XBoard versions popped it down
+as soon as the user clicked the board, so he could just enter a new move
+to abort the promotion. This was broken in the new version, because the code
+to do the PopDown and abort in HandleUserMove had not been ported.
+
+2012-04-13 18:38:51 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Use in-place sweep-selection for click-click under-promotion
+
+With detour under-promotion a piece cycles through all possible choices
+during backwards dragging. But in a click-click move there is no dragging.
+This used to be solved by letting the second click start a drag event of
+the default promotion choice, which you could accept by immediately
+releasing the mouse button, or drag around to change it first.
+ The dragging in this case seemed a little unnatural, because the to-square
+was already indicated by the down-click. So it has been changed now to the
+promo choice appearing on the down-clicked to-square, followed by
+EditPosition-like sweep-selection on that square when one wants to under-
+promote. The move is always accepted no matter where the up-click takes
+place, except when it takes place on the from-square (which offers a last-
+resort abort possibiliy).
+ Note that click-click promotion is essential in variants where it is not
+obvious from the from-square alone that a promotion is imminent, but where
+it depends on the to-square. (Such as Shogi.) There drag-drop detour under-
+promotion is not possible.
+
+2012-04-13 16:05:16 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Improve arrow drawing
+
+The arrow is now erased together with the border highlights, by marking
+the damage it did, and then doing a selected redraw of the board to let
+the damaged square be re-drawn. Highlights of a previous move are now
+cleared on the down-click that selects a new piece, so there never is an
+arrow to infavorably interact with animation of dragging.
+
+2012-04-13 14:57:15 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Also do selective redraw with showTargetSquares on
+
+The XBoard DrawPosition now also keeps track of the previous marker state,
+and redraws squares for which thi shas changed. As a result, the routine
+MarkTargetSquares does no longer have to force to complete redraw.
+(Breaks WinBoard?)
+
+2012-04-13 00:33:28 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix click-click sweep promotions to empty square
+
+These did not work, because DragPieceBegin would fail on an EmptySquare.
+
+2012-04-12 23:58:41 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Move clearing of target squares to after drag end
+
+A dragged piece that would partly overshoot its destination into a square
+with a marker would effectively protect that marker from erasing, when the
+erasing was done before the piece was released, because redrawal after the
+move only would draw the target square. (Unlike erasing, which forces a full
+redraw.)
+
+2012-04-12 23:49:27 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix double promotion popup
+
+Only the up-click of a click-click move gives a promotion popup now.
+
+2012-04-12 23:32:28 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix promotion popup
+
+The new GenericPopUp did not like it if the first button had 'SAME_ROW' set.
+
+2012-04-12 17:28:32 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Allow clearing of marker dots in any mode
+
+There might already be dots when you change to a mode where there should
+be none, and you don't want them to stay on forever in that case...
+
+2012-04-12 17:00:55 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix redraw of secondary board on flipping view
+
+
+2012-04-12 10:30:21 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Let clocks of secondary board count down
+
+The back-end now remembers what is the active clock, and the time left on it.
+This is then decremented and updated together with the clocks of your own
+game, using the partnerUp flag to divert the clock display to the secondary.
+
+2012-04-12 09:47:43 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix 3 forgotten symbolic widget references
+
+
+2012-04-11 19:24:36 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Add sound files to browser menu
+
+
+2012-04-11 13:04:24 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Add New Directory button to file browser
+
+
+2012-04-11 09:54:51 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Detect engine exit during startup
+
+The case where engine startup failure does not result in a fatal protocol
+message, like "No such file", but where it simply exits, is now also covered.
+
+2012-04-10 22:55:07 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Suppress popup for fatal error after tellusererror
+
+For cooperating better with Polyglot, and allowing more to-the-point
+error messaging, the (awful) default message will be suppressed if the
+dying engine already provided an explanation for its demise to the user.
+
+2012-04-10 20:28:45 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix Engine Output icon heights in international versions
+
+The text in a label option could not be an empty string, or it would be
+'translated' to something of enormous size. So it is set to a space now.
+
+2012-04-10 20:21:56 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix internationalization
+
+The internationalization was broken by moving the XtSetLanguageProc
+to behind 'bindtextdomain'.
+
+2012-04-10 20:03:46 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Make reference to board widgets symbolic
+
+
+2012-04-10 18:39:25 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Don't strip path from engine name if directory given
+
+
+2012-04-10 17:54:33 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix vertical chaining of Buttons and browser ListBoxes
+
+
+2012-04-10 15:53:47 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix auto-play
+
+The 'narrow search' modification had broken auto-play, because all selected
+games were marked as matching position 0, so that they would all start in
+thr opening position.
+
+2012-04-10 13:30:44 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+updated po/pot files
+
+
+2012-04-10 11:54:50 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+new version number for developer release
+
+
+2012-04-10 13:22:40 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Update POTFILES.in
+
+
+2012-04-10 13:21:33 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix Makefile EXTRA_DIST
+
+
+2012-04-02 17:53:40 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Use Ctrl key in EditPosition mode to copy pieces
+
+
+2012-03-28 23:51:28 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix bug in FRC castling for position search
+
+In FRC it is essential that both pieces are taken off the board before
+any of them is put back, lest they obliterate each other.
+
+2012-03-28 12:25:20 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix bug on loading engine
+
+A newly loaded engine was put at the end of the game, rather than at the
+current position, (which is required in EditGame mode).
+
+2012-04-06 17:02:21 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Add 'Narrow' function to position search
+
+
+2012-04-06 10:52:45 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Reorganize main() a bit
+
+The font stuff goes into a separate routine, and the X11 stuff is
+moved backwards as far as possible.
+
+2012-04-04 21:55:50 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Give the dual-board option a separate board window
+
+The second board window pops up whenever an alien board is received
+during your game. Moves in it are highlighted by an arrow, irrespective
+of the 'Highlight with Arrow' setting. The clocks are displayed, but do
+not count down.
+
+2012-04-05 11:23:03 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Port engine grouping to Match Options dialog
+
+
+2012-04-05 15:18:25 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Change default directory in Load Engine to "."
+
+
+2012-04-05 10:49:56 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Port grouping to XBoard Load Engine Add highlight to Load Engine grouping
+
+
+2012-04-06 17:19:33 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix default file types for browse buttons
+
+
+2012-04-03 09:14:44 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+New browser
+
+Redo file browser with GenericPopUp
+
+This had to solve quite some problems, because it wanted to use a ComboBox
+option while a transient dialog could be up, was a non-engine dialog
+while an engine dialog is up, and XRaiseWindow does not work properly.
+  Sorting is done alphabetically, or for digit groups by numeric value.
+
+2012-04-02 14:43:24 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Use ListBox in stead of ComboBox in Match-Options dialog
+
+
+2012-04-02 14:09:15 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Use ListBox in stead of ComboBox in Load Engine dialog
+
+Make Load Engine listbox sensitive to double-clicking
+
+2012-03-26 17:06:33 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Add message about enabling in New Variant dialog
+
+
+2012-03-31 20:27:20 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Move LoadGamePopUp to menus.c
+
+
+2012-03-31 20:25:22 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Move DisplayMessage to dialogs.c
+
+Use the wrapper SetWidgetLabel to make it back-end.
+
+2012-03-31 15:23:30 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix switching debug option during session.
+
+Switching on debug mode during the session did not create the requested
+debug file.
+
+2012-03-31 15:22:57 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Correct texi file for use of .Xresources
+
+
+2012-04-02 19:19:30 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix recent-engines menu
+
+A new primitive to create an item in a given menu was added to do this.
+
+2012-03-31 10:54:22 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Switch back two two-part menu names
+
+The menu code is again completely changed; a handle field is added
+to the MenuItem tables to store the widget for the item, and this info
+is used to alter sensitivity or marking. MenuToNr is replaced by
+MenuNameToItem, which looks up the two-level name directly in the
+menu tables. Put all currently unused MenuProcs in noMenu table,
+so they are available for key binding through the new method.
+
+2012-03-24 18:36:44 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Redo main board window with generic popup
+
+Some of the improvements in GenericPopUp (committed earlier) were added
+especiall for this (menu and box Option types), and the commits that used
+them to make a fully functional board, listed below, were collapsed into
+this one.
+
+This uses the new box and menu features of the Generic popup.
+Make option table shadow board consistent with refactor
+Do main menus in shadow board
+ The board made by GenericPopUp now also has (functional) menus. The Expose
+ callback now also uses the new format (passing coordinates).
+Use BoxEnd callback to decide about smallLayout
+ The shadow board now dynamically decides whether it should use smallLayout
+ positioning of the title-in-window widget, using a callback in the BoxEnd
+ option for the menu bar: If no reasonable amount of space is left behind
+ the menu bar, the title is forced under the clocks (smallLayout).
+Do some mouse handling on shadow board
+ Only button 1 events for now. We have to keep track if the button is down!
+Connect button 3 to shadow board
+ For now only for piece and PV manipulation: no context menus yet
+Symbolic reference in option formatting
+choice <-> textValue xboard.c
+Improve expose callback shadow board
+Implement context menus of shadow board
+ This uses the new generic PopUp option
+TopLevel xboard.c
+Make mock-up board available through menu item
+Make clocks of shadow board sensitive to clicking
+Make button bar of shadow board operational
+ The back-end Event functions are specified as user callbacks directly;
+ this is not very clean, as they are parameterless, but called with an int
+ argument. This should have no bad consequences, though.
+Switch to using shadow board as main board
+ The menu marking and enabling had to b switched off for this, as it
+ only worked on the old menus. Remove HandleUserMove.
+Deleting of unused shell variables, clocks to dialogs.c
+Move BoardPopUp to dialogs.c
+ This required passing on fome front-end vars as parameters, and returning
+ apointer to the option list, to make the handles available in xboard.c.
+Simplify InitDrawingSizes
+ Now that all widgets of the main window are properly chained, there is
+ no need to resize them when the board format changes: setting a new width
+ for the shell suffices.
+Cleanup some unused Xt Args
+
+2012-03-31 10:53:46 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Remove unnecessary menu unmarking for Edit Tags
+
+
+2012-03-29 19:09:34 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Split sync-after options in Match dialog into checkbox + label
+
+Now the checkbox texts are highlighted on hovering, we don't want the
+explanatory text behind it to be highlighted with it.
+
+2012-03-26 17:12:33 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Make variant-unsupported-by-second error non-fatal
+
+
+2012-03-23 20:06:15 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Redo Eval Graph with generic popup
+
+The Graph option of the GenericPopUp is used to implement the Eval Graph.
+Compared to the previous implementation, which was drawing directly in the
+form widget, the new one has one extra widget layer, but that did not
+affect the code anywhere. Adapt eval title to width of eval graph.
+
+2012-03-23 15:17:14 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Redo Engine Output window with generic popup
+
+A new file nengineoutput.c holds the X-independent code. This makes use
+of new capablities of GenerciPopup, for having Label widgets on same row,
+stacking panes after a Break, and chaining Label and Text widgets.
+
+2012-03-21 23:00:05 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Redo Game List with generic popup
+
+Check in ngamelist.c
+Redo Game List with generic popup
+ The X-independent code (i.e. almost all) is moved to a new file
+ ngamelist.c.
+Make button in Game List to pop up Game List Options
+Fix scrolling game list
+Fix popup of existing Game List after loading file
+Wheel-scroll game list
+Symbolic reference game list
+TopLevel game list
+Put format flags with listbox options
+
+2012-03-21 17:58:27 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Redo Game List Options with generic popup
+
+
+2012-04-05 21:56:52 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Add -dialogColor and -buttonColor options
+
+These only override system defaults if they are non-empty strings.
+
+2012-03-28 15:52:01 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Add -topLevel option
+
+This persistent Boolean option determines if the auxiliary windows
+(Game List, Move List, Engine Output, Eval Graph, Tags and Comment)
+use top-level shells (with their own icon on the task bar, and
+independently closable). Other dialogs will always use transient shells.
+(Also he modal Error and Promotion dialogs, for which the modality
+presumably only serves to pop them down without special attention.)
+A control for this was added in the General Options dialog.
+
+2012-03-20 15:30:00 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Redo ErrorPopUp with generic dialog
+
+<Enter> keeps popping down error popup.Multiple Error popups remeain tricky;
+add comment to describe problem with multiple ErrorPopUps.
+
+2012-03-20 10:22:46 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Redo PromotionPopUp with generic dialog
+
+The dialog is no longer modal.
+
+2012-03-19 21:56:48 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Redo AskQuestion dialog with generic popup
+
+
+2012-03-19 21:55:58 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Major refactoring of GenericPopUp
+
+Allow more transient dialogs in GenericPopUp
+Remove grab from promotion popup
+Fix other generic popup over transient popup
+ To use the generic dialog generator for 'asynchronous' popups (Ask Qustion
+ or Error popup caused by engine), the currentOptions setting has to be
+ restored for the combo and checkbox callbacks of the transient to still
+ work after the asynchronous dialog returns. Note that only transient dialogs
+ can have check and combo controls.
+Make generic calcel button suppressible
+ Also #define some more symbols for Option.min flags,
+ and move them to dialogs.h.
+Change TypeInProc to general OK handler
+ The move type-in now has its own option list, to distinguish it from
+ the ICS input box, and give it its own OK handler. Rather than having
+ the translation for <Enter> on the text widget call TypeInEvent directly,
+ we let it call GenericCallback, which calls GenericReadout, which calls
+ the OK proc, which does the job.
+  To be able to call GenericCallback from the TypeInProc, the recognition
+ of OK and cancel buttons had to be changed. This because it was too difficult
+ to arrange the calling widget had label OK or cancell. So these buttons are
+ no longer recognized by name, but by the option number passed as client data.
+ (This solves the problem that a user could not make buttons named 'cancel'
+ or 'OK'.)
+Make Cancel button optional
+Fix closing multiple popups of same kind
+ The GenericCallback figures out its own shell, so all buttons of
+ multiple dialogs keep working. External calls to PopDown only work
+ on the lastcreated instance of that kind, though (including those from
+ the Delete Window button, which can do 'cross-closing'). shellUp is now
+ a counter, and PopDowns are only prevented when it reaches 0 or the
+ current shell does not exist. (To know this, PopDown now resets shells[n]
+ to NULL when is shell is destroyed.
+  Beware of double PopDowns (through OK procs); they wreck the system.
+Fix Delete Window button of multipe ErrorPopUps
+ The action routine for handling the Delete Window now pays attention
+ to the shell widget that the system passes to it, and temporarily
+ replaces shells[n] by it to let PopDown act on the proper instance.
+Add ListBox dialog type to GenericPopUp
+Fix vert sizing of ListBox
+Put listbox widgets in viewport
+Put listbox in viewport
+Improved xoptions.c support for focussing and listboxes
+Fix OK-row button positioning
+Let GenericPopUp take parent and modality as arguments
+ This makes the code a bit more explicit and less kludgy. It also becomes
+ possible to call the same dialog (e.g. Load Options) from the main menu
+ and from another dialog (e.g. the Game List).
+Support scroll function for generic popup listboxes
+Fix scrolling
+Move HighlightWithScroll to xoptions.c
+Change scroll algorithm
+Add mouse-wheel scroll to generic list boxes
+Implement tabbing between text edits
+Implement same-row text labels in generic dialog
+Allow labels to specify their chaining in generic popup
+ The opt.min variable is used to specify the chaining: 0xF0 are the bits
+ for (left, right) chaining of the left side (0xC0) and right side (0x30).
+ The 0xC bits determine top or bottom chaining of the entire label.
+ Without anything spcified (0), the chaining is XtRubber.
+ TextBox options can also specify top-chaining of their top. All this was
+ needed to allow decent implementation of the Engine Output window with
+ the generic popup. (Although tags and comment popup ca benefit from the
+ latter feature.)
+Let GenericPopUp support a Graph option
+ The Graph option results in an area where one can draw something. It is
+ positioned / chained similar to Label options. A handler for expose events
+ can be specified in the textValue field of the option.
+Implement box widgets and menu buttons in GenericPopup
+ To enhance the capabilities of GenericPopUp such that it could create the
+ main window, it needs to be able tha packaging of controls into a box widget
+ (for mennu and button bar). Menu buttons are also required elements
+ (although they do look a lot like comboboxes?) Option types BoxBegin and
+ BoxEnd can now be used to bracket a group of controls that will be put
+ in a box widget. (Cannot be used recursively!) The positioning of the box
+ is similar to that of a Label, and is specified in the BogBegin option.
+  The code to shrink the menu buttons to fit is also incorporated, to act
+ on any box widget: if the BoxBegin option specifies a width, the elements
+ in it are shrunk to meet the requirement. Otherwise the box just gets the
+ size of the sum of its children (plus spacings).
+  Label options can now specify a font, casted into their textValue field.
+ (This is needed to get the proper size for the clock widgets.)
+Implement callback in BoxEnd options
+ BoxEnd is a pseudo-option, to trigger packing the preceeding ones in
+ an earlier-opened box widget. In the process it calculates the size of
+ the box widget (and trims it if a size was specified for it in the
+ corresponding BoxBegin). The Option.target field of BoxEnd is now
+ interpreted as a callback, which can be use to take decisions based
+ on the determined size for the remaining options in the list, before
+ these are processed b GenericPopUp.
+Refactor xoptions.c
+ Make a subroutine to set args shared by almost all widgets. Swap meaning
+ of '1'-bit in option.min flag of Break option, to be consistent with
+ SAME_ROW interpretation in other option types.
+Make option tables consistent with refactored GenericPopUp
+ The flag for stacking in the Break option needed to be inverted, and
+ the BoardPopUp needed to pass the font in another field. Better use was
+ made of the improved chaining options too.
+Improve Graph-option event handling
+ The user-supplied callback now gets 3 arguments passed: the event type
+ (0 = pointer motion, 1...5 button press, -1...-5 release, 10 = expose),
+ and two coordinates. For ouse events these are the pointer (x,y), while
+ for expose events they are the window size (w,h). The callback is now
+ specified in the option.target field of the Graph option.
+Store engine options in malloc'ed memory
+ The Option.name field has been re-declared as (char*),  from (char[MSG_SIZ]).
+ There are still MSG_SIZ chars allocated irrespective of actual size, because
+ the field is also supposed to store the textValue, which can be changed by
+ the user. But at least it means that unused options of the generous list
+ now don't waste much space. (And the prparated Option tables in dialogs.c
+ will shrink by a large factor as well.)
+Improve GenericPopUp ComboBox handling.
+ The dialog type is now passed to the combobox callback as well, and this is
+ used to really figure out what option it is called for.
+Allow numeric comboboxes
+ When no list of strings is given in Option.choice, the target is assumed
+ to be (int), and the number of the slected entry is stored there. Also
+ adapts the Label options that act as fillers to the new method for making
+ dummies (namely NULL in the Option.name field).
+Put comboCallback in Option struct
+ Rather than having a general comboCallback variable for the entire current
+ dialog, each ComboBox option can now specify its own callback in the
+ target field of the option: the COMBO_CALLBACK bit of Option.min indicates
+ whether the target is a variable to be set or a callback. The callback can
+ still fetch the choice from the values array.
+Allow generic CreateComboPopup also to do main menus
+ An extra parameter to CreateComboPopup determines if the menu texts
+ should be taken from a list of strings (the old method with engine-
+ supplied choices), or from a menu table of MenuItems. It can now also
+ recognize "----" as a menu break, and keeps margins (for the marking).
+Make subroutine for determining curren combo selection
+Various fixes to GenericPopUp
+Delete one border-width setting
+Fix max nr of args in GenerocPopUp
+Fix button release events of Graph options
+Fix generic Graph callback pointer motion coordinates
+Make all format referencing in Option tables symbolic
+Let Option.choice define menu texts, rather than Option.textValue
+ This is more logical than ussing textValue for it, because choice already
+ has the correct (char**) type, while textValue was (char*), and needed
+ casting everywhere. Note that for engine options, the fields were the
+ same anyway, so no back-end change was required. The textValue now
+ contains the (casted) list of actual string values, where these are
+ needed. (But for numeric and function menus they aren't.)
+Add PopUp Option type
+ An new pseudo-Option is defined, to add a popup menu to a previous Graph
+ option. The actual popping up is done by the expose handler.
+ The function XUngrabPointer is the key to success here. A PopUp option
+ specifies a callback for handling the selection from the menu, which will
+ be called with the option number, exacty as with ComboBox options.
+Update option explanation in dialogs.h
+Make Spin and CheckBox callbacks pass dialog number
+ No longer rely on 'currentOptions' for getting the option belonging to
+ the callback, but get it out of the dialogOptions array indexed by dialog
+ type. This way things cannot be messed up by an asynchrounous error popup.
+ It also means that it is now save for non-modal dialogs to use these options.
+Use button widget for text behind checkbox
+Let listboxes use general formatting hints
+Let GenericPopUp option always finish last pane after Break
+Allow LisBox to specify select callback in Option.textValue
+Use double-click to trigger ListBox callback
+Make ListBox callback re-entrant
+Fix multi-line Label options
+Separate CreateMenuItem out from CreateComboPopup
+Chain checkbox texts entirely left
+Allow a user-specified callback to Label options
+ This is needed to implement the clocks. Let the CheckBox callback handle
+ it. For now ther is no distinction between different mouse buttons.
+
+2012-03-21 11:15:01 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Prevent double PopDowns
+
+Some DialogOK functions ordered an early PopDown themselves. This,
+however, resulted in PopDown being called twice when they returned TRUE.
+This interfered with the new system for allowing multiple instances of
+the same dialog. So these functions are now fixed to suppress the
+standard PopDown by always returning FALSE.
+
+2012-03-20 19:10:50 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Split usounds.c and usystem.c from xboard.c
+
+X-independent code was moved to separate files. The nef file usound.c
+contains the sound handling, which in XBoard is trivial, because it uses
+an external player, but could be replaced by a complex one on platforms
+that have to handle the sound themselves.
+  The usystem.c file contains all non-X Unix-like stuff, such as fork,
+pipe, system, getenv. I also contains some color parsing for the xterm
+colors. This stuff could be useful on platforms that support Unix-like
+system calls.
+
+2012-03-26 19:03:19 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Make routine to probe shift keys
+
+The code to probe Alt keys was taken out of MoveTypeInProc, and extended
+to probing Ctrl and Shift keys too. These are now returned in the 6 LSB
+of an int by ShiftKeys().
+
+2012-03-19 13:15:11 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Remove one level of indirection on ICSInputBoxPopUp
+
+
+2012-04-10 10:26:24 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Cleanup of xboard.c
+
+Remove AskQuestionProc
+A bit of cleanup on xboard.c prototypes
+Remove dead file-browser code
+Delete vestigial jail code
+ All the stuff about jailColor was deleted. Only one fishy thing remains:
+ xpmJailSquare seems under some conditions used in BlankSquare to draw a
+ 'neutral' square. it is set to a copy of a light square image. But in the
+ current design 'neutral' means blacked out between board and holdings,
+ and even with image use, it should not resemble a light square...
+Remove registering of CommentPopDown and TagsPopDown
+Merge CopyGameSelection into CopyPositionSelection
+
+2012-03-19 11:38:17 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Move some back-endish routines from xboard.c to dialogs.c
+
+Move ICS input-history handling to dialogs.c
+Move ICS Input Box text handling to dialogs.c
+Move DisplayXxxx routines to dialogs.c
+Move DisplayTitle to dialogs.c
+ A wrapper SetWindowTitle remains in xboard.c.
+
+2012-03-18 20:10:35 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Split back-endish part off xoptions.c, and move to dialogs.c
+
+Some MenuProcs for dialogs were also moved to dialogs.c from menus.c.
+MoveTypeInProc which is an event handler for the board widget,
+was moved to xboard.c, where it can be static.
+
+Identify dialogs by enum type
+ A new header dialogs.h is created, which defines an enum type DialogClass
+ that is now used to identify the various dialogs done by GenericPopUp.
+ The prototypes for GenericPopUp/PopDown, and other globals shared by the
+ dialogs code and other modules can go in here as well.
+Remove ClearTextWidget
+ This did the same as SetWidgetText with an empty string.
+Split X-code from PutText
+Split back-end part from MoveTypeInProc
+Take set-title out of comment popup
+Sort MenuProcs in dialogs.c with their support functions
+Declare globals in dialogs.c with functions where they belong
+Add prototypes to dialogs.h
+Move prototypes and globals from xoptions.c to dialogs.h
+Make accessor DialogExists for dialog shells
+Add dialogs.c to makefile: compiles and runs!
+Combine 3 calls into front-end to InitDrawingParams
+Move EditCommentProc and ICSInputBoxProc to dialogs.c
+Pass option list as argument to GenericUpdate and GenericReadOut
+Shorten argument name from currentOption to opts
+ This to prevent confusing it with the global variable of that name.
+
+2012-03-18 15:33:18 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Declare some shared global variables in backend.h
+
+The vlobals twoBoards and partnerUp were only shared through an extern
+declaration in xboard.c
+
+2012-03-18 12:34:42 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Split back-endish part off drawing code and move to board.c
+
+Split DrawSquare in front-end and back-end part
+Back-endize DrawHighlights and DrawPosition
+ The already existing wrapper FlashDelay is used as a kludge to do an XSync.
+ We now pass a code for the line color GC to the highight routine. New
+ wrappers are DrawGrid() and DrawBorder().
+Back-endize atomic explosions
+Back-endize DrawArrow and DrawDragPiece
+ DrawDragPiece now calls DrawOneSquare with argument EmptySquare in stead
+ of the X-type referring BlankSquare. A new wrapper DrawPolygon fixes
+ DrawArrowBetweenPoints.
+Move board-drawing logic to new file board.c
+ All X-independent drawing logic (board, squares, arrows, highlights,
+ some animation stuff) has been extracted from xboard.c, and moved to
+ a new file board.c, which is back-end (but unshared with WinBoard).
+ A new header board.h defines the cross-references (which of course
+ required some functions to be no longer declared as static).
+  A bit of code was moved from DragPieceBegin to BeginAnimation, which
+ now has an extra argument to indicate which piece should appear from
+ under a dragged piece. This makes DragPieceBegin free of XCopyArea calls,
+ so it could be moved too.
+Make board.c truly back-end
+ Get rid of all X data types. For this the AnimState struct had to be
+ redefined: the GC and Pixmap was taken out and put in front-end arrays
+ indexed by anim agent (game and player). For this indexing a new enum
+ was defined. The XPoint type was also replaced by our own type of an
+ int pair (which is nasty, because the int size could be different).
+Move more animation code to board.c
+
+2012-03-18 10:08:55 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Contract some awful code replication
+
+The code for making an X-color was replicated 6 times, and is now made
+into a subroutine. The code for creating GCs was quite repetitive as well.
+
+2012-03-18 08:34:54 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Move more back-endish menu-related stuff from xboard.c to menus.c
+
+Move menu enabling to menus.c
+ Only the wrapper EnableMenuItem stays in xboard.c. A new wrapper
+ EnableButtonBar was necessary, because Training mode wants to enable/disable
+ that too.
+Move all back-endish MenuProcs to menus.c
+ Many if the MenuProcs that could not be eliminated by listing the
+ corresponding back-end MenuEvent function as handler directly, are
+ still completely plactform indpendent. (E.g. when the MenuEvent needs
+ a parameter.) These are all moved to menus.c now.
+Convert all dead MenuProcs to using MarkMenuItem
+ The MenuProcs for the option items that no longer exist were also
+ converted for check-marking their item in the new way, because we
+ might revive them for key binding.
+Move the dead MenuProcs also to menus.c
+Revive dead menu procs
+Move GreyRevert to menus.c
+Move ModeToWidgetName to menus.c
+Move initial menu marking to menus.c
+
+A new function InitMenuMarkers was split off from main() to do this.
+
+2012-03-18 08:17:53 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Switch to use of short menu references
+
+The prefixes menuXxxx. for the item names are abolished. This made it
+necessary to also add a MarkMenuItem function that can handle short names
+for putting the xMarkPixmap on the items, as the names returned by
+ModeToWidgetName are used for both enabling and check-marking.
+Let MarkMenu use MarkMenuItem wrapper
+
+2012-03-17 10:47:04 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Refactor menu code, and move it to menu.c
+
+Supply new method for key binding
+ It is annoying that every menu item needs its X-specific handler routine,
+ because this handler has to be registered to X for becoming eligible as
+ a key binding. Another disadvantage of this method is that the user wanting
+ to make the binding has to know the name under which the menu function
+ is registered (e.g. FlipViewProc).
+  A new method is now made available, which uses only a single (X-specific)
+ routine, registered with X as "MenuItem", as generic key-binding handler.
+ The bindings can then be made by the user specifying "MenuItem(FlipView)".
+ This requires a new list of potential bindings, which should be filled
+ by the menu-creation routines. (Currently only contains only a predeficed
+ example.)
+No longer register all MenuProcs with X
+ The list with available menu procs is moved to the user-maintained
+ menuItemList. Only QuitProc had to stay registered with X, because it is
+ used in CatchDeleteWindow. (So it is in both lists now.) In the future,
+ most of the list can be built automatically from the menu tables.
+Alter type of MenuProcs to void(void)
+ By getting rid of the argument list with X-types, most menu procs can
+ become back-end. In the cases of ManProc and QuitProc the original
+ version had to be kept as well, because in ManProc the argument was
+ actually used (with key binding), while QuitProc is used for delete window.
+Remove now unnecessary menu wrappers
+ Now the MenuProc have an empty argument list, those that also call a
+ single 'MenuEvent' without arguments have become completely redundant,
+ and have been taken out of the loop by calling the corresponding MenuEvent
+ directly.
+Build menuItemList from menu tables
+ Rather than having an initialized table of name-proc associations (which
+ used to be the X registrations) for the menu items, we now build the list
+ during menu cration from the menu tables. The menu "ref" is now used as
+ proc name. This means the old MenuProc names used in the predefined
+ key bindings had to be changed to conform to this. Note that the bindings
+ would slice up names containing spaces in several parameters, so in the
+ translations the spaces were squeezed out of the item names. This requires
+ a hand-written comparison routine Equal() to identify the binding.
+Remove prototypes of deleted MenuProcs
+Move prototypes of platform-independent MenuProcs to menus.h
+ Create a new header file for the menu stuff, so that we can move
+ the corresponding handler routines out of xboard.c to a back-end file.
+Extract back-end code from menu creation
+ The menu tables and code to interpret them is moved to a new file menu.c.
+ Only basic fuctions for creating a pop-down list and for adding an item
+ to it remain in xboard.c.
+
+2012-04-07 15:59:50 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Remove some unused (exclude-moves) variables
+
+
+2012-04-07 15:57:54 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Install engine within current group
+
+
+2012-04-07 15:53:29 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Switch to using listboxes for engine-selection in WinBoard
+
+
+2012-04-07 15:36:02 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Implement Narrow button in WB Game List
+
+
+2012-04-05 15:15:09 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Silence unjust warning
+
+
+2012-04-04 12:18:43 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix memory corruption through InitString and second-engine loading
+
+The InitString and ComputerString options were not swapped when replacing
+the second engine, so that the ChessProgramStates of the first engine
+could point to an invalid (already freed) init string. Also make sure
+that appData.directory contains its value in allocated memory, even
+when hand-loading engines.
+  Some of the rare options were not swapped either, and would thus
+always be loaded for the first engine when -singleEngineList was true.
+They are now also all reset to their default, before engine load,
+to prevent options of one engine to linger on for a next that does
+not specify them. The intentional exception is -firstHost.
+
+2012-04-01 20:51:53 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix PV sorting during fail low
+
+When an engine reports a fail low as thinking output, and then re-searches
+the same move with larger window, it now gets a lower score. This line
+would then be sorted below the earlier fail low, because it was mistaken
+for a multi-PV line for an inferior move. This patch suppresses PVs
+overtaking each other if they start with the same move.
+
+2012-03-30 20:09:58 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Extend smallLayout regime up to size Medium
+
+Because of the increase number of menus, there is not enough space for a
+title next to the menu bar at smaller sizes. In fact it is questionable if
+the title should ever go on the same line as the menu bar.
+
+2012-03-30 10:38:27 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix parsing crazyhouse promotions with legality testing off
+
+With legality testing off, any promotion suffixes in a move are taken
+'on faith'. But in crazyhouse the piece ID for normal pieces is used as
+promotion suffix for promoted pieces, so this would Loop Chess rather than
+Crazyhouse. Now attention is payed to presence of ID-less promotion pieces
+(indicated by ~ in the pieceToCharTable), and if there are, these prevail
+ovr the specified type.
+
+2012-03-30 10:07:04 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix browsing for save file in WB
+
+The generic popup browse buttons used the wrong flavor of browser,
+which would only accept existing files. This was inconvenient when browsing
+for a save file. The other flavor of browser is now used by default (so that
+engine options also use it), and a new flag is added in the option.max field
+(which was already indicating file type) to request readonly browsing for a
+save file.
+
+2012-04-02 10:18:37 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Let clicking on header line exclude moves
+
+The exclude header in the Engine-Output window can now be clicked, to
+toggle the exlusion of the listed move. Clicking on 'none' resets all
+exclusions, clicking on 'best' excludes the first move of the latest PV.
+The pseudo-move 'tail' represents all non-listed moves.
+
+2012-04-01 22:39:55 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Keep list of excluded moves in Engine Output header
+
+As long as there is still space, excluded or included moves are added
+to a new header line in the Engine Output window (prefixed with + or -
+depending on whether they are currently excluded or included). Future
+in/exclusions of that same move then alter the prefix.
+
+2012-03-21 23:12:20 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix focus of Game List
+
+After focus was transferred to the filter text-edit, it was impossible
+to get it back on the game list (to make the arrow keys working again).
+A translation to left down-click is now used to assign focus, just as
+it would for text edits. For unknown reason this only worked if the
+translations were instated by Overriding, rather than Augmenting,
+which again required the normal translation of downclick, Set(), which
+selects the clicked item, to be explicitly mentioned as well.
+
+2012-03-16 22:41:19 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix taking effect of some option changes
+
+This fixes a bug reported at Ubuntu: when switching off move highlighting
+in Two Machines mode, the last move before the switch stayed highlighted.
+The GeneralOptionsOK() now clears any remaining highlights when highlighing
+is off. Similar problems with blind-fold mode and coordinates, which require
+a total board redraw to take effect, are now solved by also forcing such a
+redraw in GeneralOptionsOK() when they change.
+
+2012-03-16 21:58:55 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Add exclude and setscore to protocol specs
+
+
+2012-03-16 14:47:25 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix clock stop after dragging
+
+DelayedDrag always cancelled the previous drag timeout event, even when
+this was no longer pending because it had already taken place, and the
+event ID was resused by some other timeout (usually a clock tick).
+
+2012-03-14 21:06:28 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Implement exclude moves
+
+Dragging a piece by double-clicking it on the from-square in analysis mode
+will not perform the entered move, but send an exclude or include command
+to the engine for that move (provided the engine enabled this with
+feature exclude=1), depending on if the move was already excluded or not.
+To this end a map of excluded moves is kept, and cleared when we move to
+another position through moving, undo, setboard or new. The user can see
+whether he included or excluded the move, as exclude uses premove highlights.
+  Commands "exclude|include all" are sent when we throw a double-clicked
+piece off board (vertically or horizontally, respectively), but after
+exclude all the most recent PV move is included again.
+  Remaining problem is that promotions can only be excluded.
+
+2012-03-14 15:13:18 +0100 Byrial Jensen <byrial@vip.cybercity.dk>:
+Mark new text "Click clock to clear board" for translation
+
+
+2012-03-13 21:46:55 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+More thorough switch to -ncp on engine failure
+
+The ProcRef and InputSource are now also cleared, and just to be sure there
+are no surviving adapters, the child is killed when engine startup fails.
+
+2012-03-13 21:25:22 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Install engines as ./exefile in XBoard
+
+When a path name is split into directory and filename, the latter in Linux
+must be preceded by ./ in order to make it executable in the directory
+XBoard starts it in.
+
+2012-03-13 14:11:18 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Inform user in EditPosition mode how to clear board
+
+With -pieceMenu false the board is cleared by clicking the clock, but
+since this is impossible to guess, it is now printed in the message field.
+
+2012-03-13 14:06:32 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix fall-back on -ncp mode
+
+When the requested engine could not be started, the user still had to
+wait for the feature timeout to expire before the UI was re-enabled,
+and the now-useless loading action would continue. In stead we now
+cancel any scheduled continuation, thaw the UI immediately, and switch
+the menus and gameMode to ncp straight away.
+
+2012-03-10 18:55:24 -0800 Arun Persaud <arun@nubati.net>:
+updated po/pot files
+
+
+2012-03-10 18:54:32 -0800 Arun Persaud <arun@nubati.net>:
+new version number for developer release
+
+
+2012-03-06 16:37:02 +0100 Byrial Jensen <byrial@vip.cybercity.dk>:
+Fix typo (seach) in string. It is already fixed in branch v4.6.x
+
+
+2012-03-04 14:52:34 -0800 Arun Persaud <arun@nubati.net>:
+added some documentation about what's need to be done for a release and a bash-release script
+
+
+2012-02-28 21:09:18 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix suspected bug in Makefile
+
+
+
+
+2012-02-26 18:55:10 -0800 Arun Persaud <arun@nubati.net>:
+add information about our webpage and were to report bugs into the help menu
+
+
+2012-02-26 18:40:27 -0800 Arun Persaud <arun@nubati.net>:
+fixed "make install-pdf": missing target for recursive make in po directory
+
+
+2012-02-26 23:06:33 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Suppress recent-engines menu items in ICS mode
+
+
+2012-02-26 22:45:12 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix 50-move counter in ICS mode
+
+Marking irreversible moves in the EP_STATUS did not work in ICS mode,
+as ApplyMove,which did that is never executed there. Only the boards
+sent by ICS are displayed,especially in observing mode. Now the status is
+derived from the ICS mov strings (x in the SAN move, or P in the long move.
+
+2012-02-26 17:18:39 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix two 64-bit warnings
+
+Passing the engine number in a pointer variable to the callback needed
+a two-step cast.
+
+2012-02-26 16:53:24 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix piece symbols on switch back to variant normal
+
+Variant switches were not properly detected, meaning the variable pieces
+could keep a form belonging to a previous variant. (E.g. Queen remained
+a Lance image after switching from shogi to normal.)
+
+2012-02-26 14:07:50 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Keep XBoard windows attached on resize
+
+Windows attached to bottom or right are displaced with the size increase.
+Their perpendicular dimension is also scaled, to keep their edges at the same
+fraction of the main window, unless they stick out. In the latter case the
+fraction is clipped to 1, so that edge moves with the full size increase.
+
+2012-02-25 22:40:56 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Implement -stickyWindows in XBoard
+
+This makes the auxiliary windows  move with the main window when they were
+touching, as in WinBoard. A control is added in the General Options dialog.
+
+2012-02-25 21:14:03 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Use more reliable X-call for getting window position
+
+XtGetValues on XtNx, XtNy is unreliable. XGetWindowAttributes seems
+to give more reliable results, and automatically accounts for the width
+of window dressing. The -frameX/Y options are no longer needed bcause
+of this, and were removed.
+
+2012-02-25 11:55:19 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Make frame width configurable in XB
+
+New persistent options -frameX, -frameY now can be used to specify
+the amount by which Xt lies about the window coordinates.
+
+2012-02-23 20:01:55 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Use combobox line for recent engines when available
+
+The entry made in the -recentEngineList for the startup engine was
+derived from the -fcp value, but this would ignore a possible nickname.
+In WinBoard we now use the full combobox line to derive the entry.
+
+2012-02-23 09:29:17 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix translation of EngineOutputTitle WB
+
+
+2012-02-23 01:34:12 +0100 Byrial Jensen <byrial@vip.cybercity.dk>:
+Updated Danish translation
+
+
+2012-02-23 00:59:36 +0100 Byrial Jensen <byrial@vip.cybercity.dk>:
+One missed translation of cps->which
+
+
+2012-02-22 19:58:41 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Undo translation of cps->which = first/second
+
+The string in cps->which should not be translated, because it goes into
+the debug file to label engine I/O, and many tools for processing
+debug files (broadcasters, PGN extractors) rely on this being "first" or
+"second". In all contexts where "first" and "second" need to be translated,
+cps->which itself is already enclosed in _().
+
+2012-02-22 18:27:40 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Implement -serverFile option
+
+This writs an extra debug file with only engine communiation on it,
+for the benifit of programs like TLCS.
+
+2012-02-22 17:46:16 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Implement -autoCopyPV
+
+This option causes automatic copying of the last position of a PV walk
+to the clipboard.
+
+2012-02-16 14:58:45 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Delete some load-game debug printing
+
+The debug printing in Disambiguate was no longer needed. The printing
+of the started process in XBoard that went to stderr is now diverted
+to debugFP, so it ends up in the debug file.
+
+2012-02-16 14:41:43 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Move change of debug file to before game load
+
+Loading a game from -lgf is done before TwoMachinesEvent is called,
+but logically belongs to the game. So the code to switch to the new
+debug file for the game is moved to NextMatchGame now.
+
+2012-02-16 14:09:54 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix button grab for sweep selection
+
+The piece-menu initialization limited the grab of button events to those
+occurring inside the board window (presumably intended to limit them to
+the piece menu, but that does not pop up in sweep-selection mode).
+This is now suppressed when -pieceMenu is off, so that selection continues
+outside the the board. (Which is very convenient for pieces pu close to the
+edge.)
+
+2012-02-16 13:16:13 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Don't leave piece selected after piece menu
+
+PieceMenuEvent left the just introduced piece selected, which is almost
+never what one wants, as it makes it jump to the next square when selects.
+Which is especially annoying if it captures the piece you wanted to grab...
+
+2012-02-16 12:57:47 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix use of middle button for position setup
+
+With sweep selection the actual drop is made on releasing the button,
+and this event was not caught for button 2. Button-2 motion events were
+also not caught by the sweep-selection handler.
+
+2012-02-16 23:53:08 +0100 Byrial Jensen <byrial@vip.cybercity.dk>:
+Fix one more typo in the translator comments explaning "first" and "second"
+
+
+2012-02-16 23:39:32 +0100 Byrial Jensen <byrial@vip.cybercity.dk>:
+Fix typo in translator comments explaning "first" and "second"
+
+
+2012-02-16 23:23:20 +0100 Byrial Jensen <byrial@vip.cybercity.dk>:
+Add args.h to POTFILES.in and change the interface to ExitArgError() so msg is c format string
+
+Having msg as a format string will ease translations because then
+badArg doesn't have to come last.
+
+2012-02-16 22:51:44 +0100 Byrial Jensen <byrial@vip.cybercity.dk>:
+Mark the strings "first" and "sencond" for translation.
+
+... and assign the translated strings to cps->which in function InitEngine()
+
+2012-02-16 18:42:10 +0100 Byrial Jensen <byrial@vip.cybercity.dk>:
+Use ngettext() instead of gettext() for a string to allow better translation.
+
+
+2012-02-16 00:19:59 -0800 Arun Persaud <arun@nubati.net>:
+translation: updated uk.po
+
+
+2012-02-15 20:59:09 -0800 Arun Persaud <arun@nubati.net>:
+modified configure and makefile for handling mimedb update
+
+the default configure will install them using the xdg commands (if they exist on the system)
+
+2012-02-13 22:29:48 -0800 Arun Persaud <arun@nubati.net>:
+add configure test for xdg-programs to install mime types; can be disabled for building of e.g. rpms
+
+in case the target system doesn't have the xdg-programs available, we test for them.
+Distributions often have their own macros to install these, so we add an enable option to configure
+
+2012-02-13 22:05:26 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Remove a debug printf
+
+The parsePV debug printf becomes extremely verbose with -fSAN, -sSAN,
+so it was deleted.
+
+2012-02-12 22:18:24 -0800 Arun Persaud <arun@nubati.net>:
+new developer release
+
+
+2012-02-12 22:19:37 -0800 Arun Persaud <arun@nubati.net>:
+updated po/pot files
+
+
+2012-02-12 22:17:03 -0800 Arun Persaud <arun@nubati.net>:
+updated Changelog, NEWS, etc.
+
+
+2012-02-12 07:52:54 -0800 Arun Persaud <arun@nubati.net>:
+translation: updated uk.po
+
+
+2012-02-12 11:38:30 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Leave height of row that only contains buttons free
+
+All elements of the GenericPopUp are still scaled to the text height,
+including buttons appended behind them (browse or color buttons).
+But we now make an exception for a row that only contains buttons,
+as there is no harm in it being a little higher (and the buttons look
+prettier that way).
+
+2012-02-12 00:01:24 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix OK button of error popup
+
+The error dialog popped up as a child of the board window, even when
+DisplayError was called from a dialog. Now it checks if a transient
+dialog is up, and if so, it pops up as a child of that, grabs focus,
+and suppresses the system popdown of the transient dialog through a flag
+dialogError until it is popped down itself.
+
+2012-02-11 20:07:39 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Update texi file
+
+
+2012-02-11 10:18:02 -0800 Arun Persaud <arun@nubati.net>:
+added some comments for translators
+
+
+2012-02-11 10:08:46 -0800 Arun Persaud <arun@nubati.net>:
+fixed comments for translators: comments starting with TRANSLATORS: are now copied to the po file
+
+
+2012-02-11 19:01:49 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Also configure sweep selection
+
+To make sure this feature is tested, we set -pieceMenu false in the
+master settings file.
+
+2012-02-11 18:26:34 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix date in copyright notice about-box
+
+
+2012-02-11 17:15:11 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix switching animation masks on variant switch
+
+The masks for variant-dependent piees (E,H in Seirawan, promoted Golds
+in Shogi, the Gothic Chancellor) were no longer updated in InitDrawingSizes
+because of the patch to reduce X-server calls.
+
+2012-02-11 16:46:58 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Configure wider game list
+
+The game list was by default too small, so that there was no room for the
+filter field. Now a width of 500 is specified, whcih works at -size 49
+as well as 72.
+
+2012-02-11 16:29:06 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix button chaining and combo/textbox label height
+
+Previous patches forgot to specify the height for the text labels on
+-combo and -text options, so they were still too high. Buttons that go
+on the same line as the previous element should be chained right, not rubber.
+
+2012-02-11 15:52:52 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Make -pgnNumberTag option setable from menu
+
+The Save Options dialog now containes a checkbox for this.
+
+2012-02-11 15:48:52 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Configure some new features switched on
+
+The master settings file switches -showTargetSquares, -sweepPromotions
+and -seekGraph on, so that they will get more testing.
+
+2012-02-11 14:43:53 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix heigth of multi-line labels
+
+The previous height patch overlooked that some labels are multi-line,
+and need more height.
+
+2012-02-11 14:10:21 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix popdown seekgraph on forward-event XB
+
+Only the grid was drawn when the > or >> button were operated, because
+a full redraw was not forced by ForwardInner. The recent patch to take
+the seek graph down on such events did not account for that. (BackwardInner
+always seems to do full redraw, however?)
+
+2012-02-11 12:59:04 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Put front-end support for -recentEngines in XBoard
+
+The engines are added to the menu. Problem is still that in XBoard
+startup engines are given by command, rather than selected by combobox,
+so the command rather than the nickname ends up in the menu. If this is
+then selected, it cannot be found in the list. To limit the damage,
+Fairy-Max is now pre-installed without nickname. -recentEngines is now
+configured to 4.
+
+2012-02-11 11:53:39 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Better solution to button-height problem
+
+In stead of adapting the height of text widgets to that of buttons,
+(as represented by the message widget), we now do the opposite, and
+adapt the button & label heights. This is made safe by obtaining textHeight
+from the fontSet's max_logical_extent, though an XExtendsFontSet() call.
+Turns out the default height of text widgets is not exactly that, but
+4 pixels larger for borders and margin.
+  The parameter XtNvertDistance is now used to align the checkboxes with
+the following text widget, and their size is derived from textHeight as
+well.
+  The XtNvertDistance is set to -1 for the lower spin button, so that it
+its border coincides with that of the upper spin button. Their height is
+set to textHeight/2. This makes their combined height just 1 pixel more
+than that of the preceeding text widget. (Uh? 2 x tw/2 -1 > tw?), so for
+other buttons we use that too (i.e. textHeight = font_extent + 5).
+
+2012-02-10 22:39:08 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix warning
+
+Deleting debug printing had made a variable unused.
+
+2012-02-10 22:26:39 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix sleeping bug
+
+The text-edit-height patch introduced a bug that did not have any consquences
+(yet), as the extra arg erroneously included leftover from a previous
+SetValues call happened to be the same as one of the intended args.
+
+2012-02-10 20:51:41 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix unloading of first engine on tourney start
+
+Because NextTourneyGame was loading a new engine before ReserveGame was
+called to unload it with dummy game nr = -1), the first engine proc kept
+hanging.
+
+2012-02-10 18:39:09 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Remove some of the most verbose debug output
+
+
+2012-02-10 17:46:35 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Delete some unused WinBoard bitmaps
+
+There waere up-side-down knight icons that apparently hid by mistake
+in the bitmaps directory: they were not part of WinBoard
+
+2012-02-10 17:39:48 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Cosmetic: change 4.5 to 4.6 in xboard.conf comment
+
+
+2012-02-10 17:35:22 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix crash on empty combobox menu XB
+
+XBoard crashed when a combobox without items was opened, as could easily
+happen in the Load Engine dialogs when -firstChessProgramNames contained
+no items, as it would without configuring. Now the creation of the popup
+menu is suppressed in that case.
+
+2012-02-10 17:13:36 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix position of checkbox XB
+
+With the large height the widget get in internationalization, the
+checkboxes are position way too high above the text. To shift them down
+a dummy borderless label widget is drawn above them (when needed).
+
+2012-02-10 15:07:35 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix heights in Engine Output window XB
+
+The icons did not fit in the space above the memos anymore, so the height
+of this area is now left free.
+
+2012-02-10 14:55:48 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Derive height of text-edits in dialogs from message widget
+
+With internationalization the default height of buttons has inexpliquably
+inreased compared to that of text-edits, messing up the layout of the
+GenericPopUp. The message widget is now used as a emasure of how high
+the widgets should be.
+
+2012-02-10 14:21:37 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Configure XBoard engines and textures
+
+The new -useBoardTexture option is needed in xboard.conf, as we want to
+distribute with the texture on, while the compiled-in default is off.
+A list of 4 engines has been configured (fairymax, fruit, crafty, gnuchess),
+as the Load Engine and Match Options checkboxes crash XBoard when the list
+is empty. The -recentEngines option is set to 0 to make sure the code
+associated with it is never executed: the code is still experimental,
+and the required front-end support is only present in WinBoard anyway.
+
+2012-02-10 13:30:58 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Update Dutch WinBoard translation
+
+
+2012-02-10 13:18:48 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Create room in some WB dialogs for translations
+
+
+2012-02-10 13:17:30 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Add 5 missing strings to WinBoard translation template
+
+
+2012-02-09 23:03:58 -0800 Arun Persaud <arun@nubati.net>:
+new developer release
+
+
+2012-02-09 23:04:46 -0800 Arun Persaud <arun@nubati.net>:
+updated po-filies
+
+
+2012-02-09 22:59:05 -0800 Arun Persaud <arun@nubati.net>:
+updated Changelog, NEWS, etc.
+
+2012-02-09 22:44:39 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix non-bug in WinBoard
+
+The IDM_RecentEngines was not used in symbolic form everywhere.
+
+2012-02-09 18:46:08 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix MAXENGINES in WinBoard
+
+The front-end arrays for expanding the engine list measured 1000 entries,
+in stead of MAXENGINES, leading them to overflow.
+
+2012-02-09 13:05:42 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Implement kludge to set options through Move Type-in
+
+A leading "!!! " will cause the rest of the line to be parsed as
+command line. Very dangerous, as an unknown option (e.g. because of a typo)
+will cause a fatal error, which makes XBoard exit.
+
+2012-02-09 13:04:44 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Put move number in Eval Graph title
+
+
+2012-02-09 13:00:09 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Implement -pgnNumberTag option
+
+A new (persistent) boolean option controls if the sequence number is to
+be written in saved tourney games as a Number tag, to make it easier
+to correlate games with debug files.
+
+2012-02-09 12:55:52 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Create separate debug fil for each tourney game
+
+Users can now apecify a -debugfile with %d in its name, and this will
+be replaced by the sequence number of the game. TwoMachinesEvent then
+starts by opening a new file when the name has changed, so that each
+game will go to a different file, with recognizable name.
+
+2012-02-09 12:51:25 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix bug in WB combobox readout
+
+The previous patch exposed a latent bug in the readout of the generic popup.
+
+2012-02-08 23:25:31 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Allow grouping of engines in engine list
+
+Lines "# GROUPNAME" and "# end" enclose a group in -firstChessProgramNames.
+
+2012-02-08 17:47:46 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix TidyProgramName
+
+A trailing .exe was not removed if the engine name was quoted.
+
+2012-02-08 17:45:42 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Put recently used engines in WB menu
+
+A new option -recentEngines specifies how many engines should be listed.
+The list of nicknames is stored in the ettings file as -recentEngineList.
+The engines are appended to the Engine menu.
+
+2012-02-04 19:37:51 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix registering of EditTagsProg
+
+This was registered with X as EditCommentProc!
+
+2012-02-07 23:04:49 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Increase max nr of engines to 2000
+
+Move the #define for MAXENGINES also to common.h, so that both the
+Load and Tourney dialog use the same maximum.
+
+2012-01-19 23:01:20 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix fix of switch to mono-mode
+
+The previous fix had == in stead of != for testing if mono-mode had changed.
+
+2012-01-19 22:21:38 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Make New Variant dialog visible in mono-mode
+
+All colored buttons did get a black background, and also black text...
+Use timer background color in stead, which is white.
+
+2012-01-19 20:48:37 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Incease size of WB array of translated items
+
+For the BoardOptions dialog 42 items are now needed
+
+2012-01-19 17:18:25 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Implement Clone Tourney button XBoard
+
+This makes use of the new GenericUpdate().
+
+2012-01-19 16:34:13 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Implement GenericUpdate function
+
+This does the opposite from GenericReadout: it copies the current
+parameter values into the dialog.
+
+2012-01-19 12:19:27 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix arrow damage with highlightDragging XB
+
+With highlight dragging the highlights of the previous moves are cleared
+when lifting the piece. Logically, this should also clear the arrow, but
+to do that requires a board redraw, which is not done at this stage. (And
+even then this would only be effective after marking the arrow damage,
+which is not done yet either). As a temporary fix, we repair the arrow
+by redrawing it.
+  This patch has moved marking of the arrow damage from DrawArrowHighlight
+to a separate routine, so a future better fix can also call that when the
+arrow should be erased.
+
+2012-01-18 16:01:50 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Prevent unnecessary loading of engines
+
+For engines that can be reused, the unloading at the end of a pairing
+is in some cases wasteful, as the same engine will be used in the next
+pairing as well. In simple gauntlets the gauntlet engine will always
+stay first engine, while in multi-gauntlets the oppent engine will stay
+the same for an entire round. In these cases unloading is now suppressed.
+
+2012-01-17 22:22:32 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Reset protocol version before loading new engine
+
+The protocol version was not reset, so if the previous engine was v1,
+the newly loaded engine would not be sent a protover command, so
+that its features would remain unknown!
+
+2012-01-17 19:33:32 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Give focus to board window after ICS login
+
+toprevent that the focus remains on any popped up chat boxes, it is
+explicitlly set otherwise. The board window is preferred over the
+ICS interaction window, because you can type from there to the ICS anyway,
+and it makes all accelerator keys available.
+
+2012-01-16 14:37:05 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix seek-graph popup and  popdown
+
+Clicking outside the board area in WB (e.g.on the clocks) would also
+trigger seek-graph 'popup'. This is now suppressed by testing for
+y-coord > 0. In addition, the seek graph is automaticaly taken down
+when we step to another position in the current game (using buttons,
+arrow keys or whatever).
+
+2012-01-15 21:29:11 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Suppress empty lines when observing on VICS
+
+Capture of the engine kibitzes when observing an engine game with
+-autoKibitz on was still leaking a linefeed on the Variant ICS
+(but not FICS or ICC!?).
+
+2012-01-15 21:24:12 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix printing non-numeric kibitz with -autoKibitz
+
+Messages that were not considered kibitzed engine PV info for lack of
+numeric content, were kibitzed as coming from "your opponent", which
+is nonsense if you were iobserving, and masked the source. Fortunately
+star_match[0] is still holding the original name, at that point.
+
+2012-01-11 17:33:29 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix 4 warnings
+
+
+2012-01-11 17:00:38 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Use same translation of "vs." everywhere
+
+
+2012-01-11 17:08:18 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Add new translations to WB language file
+
+
+2012-01-11 16:20:17 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix re-allocation of PGN-cache memory
+
+It  allocated 8 times too much!
+
+2012-01-11 12:47:38 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix height board dialog
+
+
+2012-01-11 12:34:39 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Enable WB time-control dialog even when no clock mode
+
+The dialog could be called from the tournament dialog to set a TCfor
+the tourney even when currently in game-viewer mode, so it'd better work.
+
+2012-01-11 12:28:43 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Exempt variant seirawan from -disguisePromoted inheritance
+
+This is not a variant where promoted Pawns have to be distingushed
+from primordial pieces, as captured pieces do not go into the holdings.
+
+2012-01-09 21:23:52 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Add control for overrideLineGap in WB Board dialog
+
+Make it a checkbox to choose between 0 and -1.
+
+2012-01-09 20:56:40 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Add Ctrl-D as alternative to Ctrl+Alt+F12 in WinBoard
+
+The acellerator key Ctrl+Alt+F12 seems reserved on Windows 7.
+
+2012-01-09 20:52:05 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix seek graph for VICS
+
+The sought command on the open-source ICS code is ICC-like (no terminating
+line), although the server is FICS like. So also accept prompt as seek-graph
+trigger on FICS.
+
+2012-01-09 20:27:01 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Open WB startup chat boxes only after logged on
+
+The init code for opening the chat boxes ismoved to DisplayIcsTitle().
+
+2012-01-07 20:31:34 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Install mime types directly
+
+
+2012-01-07 20:29:10 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Install desktop files directly
+
+
+2012-01-07 20:19:09 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Install icons directly
+
+Rather than letting make-install copy the pixmaps to the XBoard data
+directory they are installed directly from the source files. The name
+of the TRN icon was also corrected and changed.
+
+2012-01-05 18:41:13 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Update texi file and remove duplicate control
+
+Some missing option descriptions were added. The highlight-dragging
+control was removed from the General Options dialog, as it did the same
+as Show Target Squares. -highlightDragging wa changed to a volatile option
+with default value true, making it effectively disappear as an XBoard
+option. (In WinBoard it is still persistent.)
+
+2012-01-05 15:55:54 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Remove the direct commands to the engines
+
+
+2012-01-05 21:15:11 -0800 Arun Persaud <arun@nubati.net>:
+forgot to list new desktop files in EXTRA_DIST section in Makefile.am
+
+
+2012-01-05 20:08:23 -0800 Arun Persaud <arun@nubati.net>:
+added some autogenerated po files to .gitignore
+
+
+2012-01-05 20:05:44 -0800 Arun Persaud <arun@nubati.net>:
+added desktop and mime-type association to autoconf install process
+
+This should install and uninstall the mime assocciation and also the icons.
+Also renamed the desktop files to avoid possible name collisions.
+
+2012-01-03 21:30:59 -0800 Arun Persaud <arun@nubati.net>:
+code cleanup: make function definition confirm to GNU coding style
+
+change everything in the main directory to
+
+void
+funcname (int a, int b)
+
+format
+
+2012-01-03 18:43:18 -0800 Arun Persaud <arun@nubati.net>:
+Updated copyright notice to 2012
+
+
+2012-01-03 21:32:04 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Implement -viewerOptions
+
+A mechanism is added to allow the user to configure persistently if the
+game viewer that starts on clicking PGN files will use -ncp mode, or
+load an egine for analysis (or, in fact, do anything). This by introducing
+a persistent string option -viewerOptions, which will be parsed as a
+command line after the real command line when the option -viewer was present.
+
+2012-01-03 11:29:00 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix crash in auto-comment
+
+Trailing linefeeds in AppendComment were not properly stripped off,
+leading to a mismatch between the allocted and used memory, and thus
+possible buffer overruns.
+
+2012-01-02 23:46:18 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix crash at match end
+
+The -afterTourney option had broken old-style matches, because the ranking
+string that was tested for "busy" is not set there at all, and remains a
+NULL pointer, which strcmp doesn't like.
+
+2012-01-01 19:56:58 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Add desktop files for PGN viewer and tournament player
+
+The desktop files define startup commands for handling PGN, FEN and
+tourney files, calling xboard with the proper command-line options.
+
+2012-01-01 19:53:02 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Add xml file for defining mime types
+
+The file xboard.xml defines application/x-chess-pgn, aplication/x-chess-fen
+and application/x-xboard-trn as mime types for *.pgn, *.fen and *.trn files,
+so these files can be associated with XBoard in various modes.
+
+2012-01-01 19:41:39 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Add icons for PGN and tourney files
+
+Icons are provided in two sizes: 32x32 and 48x48.
+
+2011-12-29 19:55:33 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Clear square markers on new game
+
+Now that the markers can stay on after a first click, they need to be
+explicitly cleared when moving to another board, including a new game.
+
+2011-12-29 15:51:18 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Abandon single-letter menus in tinyLayout
+
+Now that the items on the main menu bar are clipped, it iso longer
+necessary to abbreviate them.
+
+2011-12-29 15:38:46 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Implement peeking previous position in WinBoard
+
+The backspace key is used to temporarily display the previous position.
+
+2011-12-29 15:32:20 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix parsing of faulty PGN tags
+
+A closing bracket could be missed in a malformed tag
+
+2011-12-29 15:29:00 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix parser for variant seirawan
+
+The new parser didnot understand gating suffixes with /, and did not
+allow any suffix at all on SAN castling moves.
+
+2011-12-28 22:32:38 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Try to not confuse ICS rating adustments as shouts
+
+An explicit pattern match for the rating adjustment is added before
+matching the shouts.
+
+2011-12-28 22:21:54 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Describe -overrideLineGap option in texi file
+
+
+2011-12-28 22:03:30 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Use <Enter> in stead of Ctrl+. for peeking last move
+
+I commented out the explicit detection of the Ctrl key, as this
+is not needed when there are no 'unnatural' Ctrl keystrokes used
+for binding.
+
+2011-12-28 19:37:49 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Next try for menu-bar sizing
+
+This time request the width needed to just fit everything, and then start
+shaving off pixels from the currently largest until the entire thing fits.
+
+2011-12-28 15:17:49 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Clip texts on menu bar
+
+The width of the items on the main menu bar is restricted so the bar
+will never exceed board width.
+
+2011-12-28 14:01:53 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix format in temporary timing printf
+
+
+2011-12-28 13:38:59 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Don't test drops as mate evasions in variant seirawan
+
+
+2011-12-28 13:36:23 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix ICS castling rights
+
+Copying the castling rights together with CopyBoard seems to have
+broken handling of ICS rights, where ParseBoard12 prepares a board
+in a local variable, an copies it before parsing the rights.
+
+2011-12-28 13:35:10 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix initial holdings ICS seirawan games
+
+
+2011-12-27 18:31:05 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix sending of S-Chess gating moves to ICS
+
+Normal moves did not get the gating suffix sent.
+
+2011-12-27 17:56:07 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix menu grayout after illegal move
+
+TheThinkingEnables were not reset to user state after the engine rejected
+the entered move as illegal.
+
+2011-12-27 13:26:36 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Allow setting of holdings with edit command
+
+For the benefit of Fairy-Max' Seirawan Chess implementation, the edit command
+no also sends holdings contents (if the engine sent feature xedit=1), encoded
+as pieceType + '@' + holdingsCount (if the count is non-zero).
+
+2011-12-24 17:54:16 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix out-of-bounds access in check test
+
+Thepath to make the check test work with drops had broken the test
+after null move (both have rf<0), which led to corruption of the high
+word of the black clock.
+
+2011-12-24 17:51:22 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix legality of Spartan promotion to king
+
+In the check test promotion to King is only allowed if there are not
+yet 2 kings.
+
+2011-12-21 22:17:01 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix switching back from mono-mode XB
+
+Suppressing unnecesary X-server calls in InitDrawingSizes had broken
+switching back from monoMode, because the animVars have to be recreated
+for that, and this was only done when the variant changed.
+
+2011-12-21 22:09:02 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix showTargetSquares in mono-mode XB
+
+Make the marker dots black (captures) and white, and draw a circle
+in the opposite color around them in monoMode.
+
+2011-12-21 22:00:26 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix arrow highlighting in mono-mode XB
+
+Draw a line around it in darkSquare color in monoMode.
+
+2011-12-21 17:48:33 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix alignment of generic browse button XBoard
+
+The width ofthe browse button is now read back after creating it,
+and subtracted from the preceding text edit.
+
+2011-12-21 14:41:31 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Add -afterTourney option
+
+Only the instance pinting the tourney result will execute this.
+
+2011-12-22 21:01:43 +0100 Byrial Jensen <byrial@vip.cybercity.dk>:
+Fix buffer possible overflow when writings tags
+
+PGNTagsStatic() could overflow its buffer and is removed. PGNTags() do the work instead of calling it.
+It starts by calculation the required buffer size and then allocate the buffer.
+PrintPGNTags() now prints directly to the file without having a buffer.
+
+2011-12-22 15:01:31 +0100 Byrial Jensen <byrial@vip.cybercity.dk>:
+One more string marked for translation
+
+And it is moved inside the if statement that uses it.
+
+2011-12-22 14:30:08 +0100 Byrial Jensen <byrial@vip.cybercity.dk>:
+Fix checking of return value from snprintf()
+
+snprintf() returns the needed space excluding the trailing 0 byte, so
+it has truncated if the returned valued is greater than or EQUAL TO the buffersize
+
+2011-12-19 16:49:31 +0100 Byrial Jensen <byrial@vip.cybercity.dk>:
+Fix unportable memory initialisation
+
+Memory sat to zero by calloc() cannot safely be assumed to have the pointer value NULL
+
+2011-12-19 13:16:58 +0100 Byrial Jensen <byrial@vip.cybercity.dk>:
+Add 2 strings for translation
+
+
+2011-12-19 11:25:11 +0100 Byrial Jensen <byrial@vip.cybercity.dk>:
+Remove the last 2 compile warnings in gamelist.h
+
+
+2011-12-19 11:17:48 +0100 Byrial Jensen <byrial@vip.cybercity.dk>:
+Add #include "moves.h" to gamelist.c for def. of CopyBoard()
+
+
+2011-12-19 11:11:34 +0100 Byrial Jensen <byrial@vip.cybercity.dk>:
+Definition of TimeMark moved from 3 c files to backend.h
+
+
+2011-12-19 01:21:46 +0100 Byrial Jensen <byrial@vip.cybercity.dk>:
+Transfer a pointer to the promoChar from PromotionPopUp() to PromotionCallback(). Fixes #34980
+
+
+2011-12-18 17:24:07 +0100 Byrial Jensen <byrial@vip.cybercity.dk>:
+Duh! Initialise the argument to sscanf() inside the loop, so it always gets a known value when sscanf() fails.
+
+
+2011-12-18 17:18:12 +0100 Byrial Jensen <byrial@vip.cybercity.dk>:
+Give numeric options the value 0 if a non-numeric text is entered (one more place). Before the value ended up undefined.
+
+
+2011-12-18 17:08:46 +0100 Byrial Jensen <byrial@vip.cybercity.dk>:
+Give numeric options the value 0 if a non-numeric text is entered. Before the value ended up undefined.
+
+
+2011-12-18 15:41:46 +0100 Byrial Jensen <byrial@vip.cybercity.dk>:
+Fix possible crash on 64-bit systems when copying game or position
+
+The two convertproc's for X selections caused reads out of bounds on 64-bit systems.
+I hope that this is the right solution. I am not experienced with X stuff, but it
+follows that I have seen in other programs, testing shows that copying still works,
+and the reading out of bounds have disappearinged with this patch.
+
+2011-12-18 13:26:20 +0100 Byrial Jensen <byrial@vip.cybercity.dk>:
+Fix a possible crash in the file browser
+
+If the OK button was selected in the file browser when no file was selected
+there was a read out of bounds which could crash xboard
+
+2011-12-17 22:54:34 +0100 Byrial Jensen <byrial@vip.cybercity.dk>:
+Fix a memory leak in Sound Options
+
+
+2011-12-16 02:57:20 +0100 Byrial Jensen <byrial@vip.cybercity.dk>:
+Fix crash when selecting user soundfile due to free() of not malloc()'ed memory
+
+
+2011-12-16 02:32:37 +0100 Byrial Jensen <byrial@vip.cybercity.dk>:
+Make GenericPopUp() more readable by using more named flags instead of numerals
+
+Defines the flags SAME_ROW (value 1) and NO_OK (value 2) for use with buttons and endmarks.
+There should no functional change.
+Also add a code comment where a condition depends on an uninitialised value. There is no direct harm, as both
+branches do the same (that is nothing) when the value is uninitialised.
+
+2011-12-15 02:51:36 +0100 Byrial Jensen <byrial@vip.cybercity.dk>:
+Add NO_GETTEXT flag for combobox. Fix bug #34991
+
+Define NO_GETTEXT flag to avoid calling gettext() for comboboxes, and define COMBO_CALLBACK
+flag to call comboCallback() when an item is selected in a combobox (no new code for this,
+just a symbolic value instead of a number). The flags are used for the min field of struct Option.
+NO_GETTEXT is used for the Select engine combobixes in the Match Options and Load engine windows.
+
+2011-12-13 19:48:37 -0800 Arun Persaud <arun@nubati.net>:
+only translate entries in CreateComboPopup if strlen>0; fixes #34991
+
+
+2011-12-12 19:06:26 -0800 Byrial Jensen <byrial@vip.cybercity.dk>:
+fix for repeating key issue, with this allissues this bug should be closed; fixes #35000
+
+
+2011-12-12 18:45:05 -0800 Arun Persaud <arun@nubati.net>:
+also don't translate selection in ComboSelect; fixes #34991
+
+
+2011-12-12 18:40:23 -0800 Arun Persaud <arun@nubati.net>:
+make entries in CreateComboPopup not translateable; fixes #34991
+
+
+2011-12-10 16:06:47 -0800 Arun Persaud <arun@nubati.net>:
+fix translation for engine list; fixes #34991
+
+* click on browse button should be recognized in translated versions
+* width of button should auto-scale
+
+2011-12-10 11:04:17 -0800 Arun Persaud <arun@nubati.net>:
+change keybindings that don't use ctrl, make MoveTypeInProc ctrl aware; fixes #35000
+
+two keybindings were using keys without modifiers, adjusted these to use the ctrl key.
+Furthermore when typing in moves we need to check if ctrl was pressed and ignore those inputs.
+
+Also added documentation for these keybindings.
+
+2011-12-10 10:51:18 -0800 Arun Persaud <arun@nubati.net>:
+replaced unicode character for "'" in xboard.texi
+
+
+2011-12-10 10:08:48 -0800 Arun Persaud <arun@nubati.net>:
+removed Iconify function. Should be handled by the window manager.
+
+
+2011-12-08 20:53:13 -0800 Arun Persaud <arun@nubati.net>:
+marked an error messages for translation
+
+
+2011-12-08 20:33:29 -0800 Arun Persaud <arun@nubati.net>:
+translation: updated uk.po
+
+
+2011-12-03 17:52:23 -0800 Arun Persaud <arun@nubati.net>:
+fixed size of XBoard icon to 48x48
+
+the icon gets installed in the 48x48 directory, but was >200 pixel wide. This gave a warning during rpm creation.
+
+2011-12-03 08:07:32 -0800 Arun Persaud <arun@nubati.net>:
+updated pot file
+
+marked a lot of new strings for translation
+
+2011-12-03 08:06:42 -0800 Arun Persaud <arun@nubati.net>:
+added new files to po/POTFILES.in
+
+
+2011-12-02 22:13:36 -0800 Arun Persaud <arun@nubati.net>:
+marked more strings for translation
+
+
+2011-12-02 20:08:01 -0800 Arun Persaud <arun@nubati.net>:
+translation: added danish translation
+
+
+2011-12-01 18:45:55 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Change encoding of seirawan ICS gating-castlings
+
+In stead of using upper/lower-case promoChar, the ICS now uses
+RxK notation, like WinBoard writes in SAN, for better consistency.
+
+2011-11-30 15:38:21 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Put promo-suffix on ICS move in variant seirawan castlings
+
+The distinction upper-case / lowercase determines gating at R / K
+
+2011-11-28 11:56:18 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Refrain from making unnecessary resize X request
+
+The window resizing code in InitDrawingSizes is suppressed when no
+change is needed. Similarly, changing piece bitmaps is suppressed when
+we stay in the same variant (and InitDrawingSizes is called e.g. because
+of chaging lineGap through the Board dialog).
+
+2011-11-27 22:27:00 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix parsing of O-O castling in variant janus
+
+The new parser did not realize it meant e1i1 rather than wild e1h1.
+
+2011-11-26 22:28:23 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Show 50-move counter also when observing ICS games
+
+To not cheat 50-move display was suppressed in ICS mode,
+but for observing a game this made no sense.
+
+2011-11-26 22:22:07 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Ignore ICS game starts when already in game
+
+The advance switching of the variant on game-start messages was
+disruptive for users with gin=1, which also sends such messages
+for other games than your own. For now fixed by only reacting on
+them when idle (detected by invalid game number).
+
+2011-11-11 18:16:19 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix WinBoard  clock-click bug
+
+Clicking on the clock in WinBoard also called the LeftClick routine
+for handling clicks on the board. This led to the from-square being set
+to some inalid value, so that the next genuine board click was interpreted
+as a to-click, with undesired effects, especially with legality testing off
+or in EditPosition mode, where weird things are accepted.
+
+2011-11-06 17:20:01 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Add feature-override options
+
+A few (dangerous) options are added to allow a user to override
+engine features, or change their defaults, by supplying a string
+with feature commands (e.g. "sigint=0") which tricks XBoard into
+thinking the engine sent that. There is a -featureDefaults which is
+processed before the engine features, and -first/secondFeatures
+which is parsed just before engine initialization.
+  This goes horribly wrong when the user wouldtry silly things like
+including 'option' or 'done' features!
+
+2011-11-05 12:32:39 -0700 Arun Persaud <arun@nubati.net>:
+translation: updated uk.po
+
+
+2011-11-04 21:58:39 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix handling of -secondOptions option
+
+The -firstOptions and -secondOptions settigs were not swapped when
+-singleEngieList was true, so the second engine's options would never
+be set in that case, but used for the first engine.
+
+2011-11-04 21:55:21 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Accept setup command in variant fairy even with legality testing on
+
+Variant fairy does not really have a defined opening position, but lots
+of pieces defined, so we might want to play with legality checking on,
+but still rely on the engine for the opening position
+
+2011-11-04 21:52:20 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Set pieceToCharTable by setup command even when ignoring FEN
+
+When the user starts from a set-up position, the egines default
+openingposition has to be ignored, but the pieceToCharTable would
+still be relevant.
+
+2011-11-04 21:48:24 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Change default sweep-promotion choicein queenless variants
+
+The initial scanning of the sweep piece until a defined piece is found
+is now in the increasing direction (still starting at Queen), so that
+the fairy pieces are suggested before R, B and N.
+
+2011-11-03 16:38:57 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Clear board markers when moving to other position
+
+Now the markers from -showTargetSquares would stay on after a first click
+for the benefit of a click-click move, they would also stay on when not
+finishing the move, but operating the < > buttons in stead to call up
+other positions. ForwardInner and BackwardInner now clear the markers,
+like they also cleared highlights.
+
+2011-11-01 18:30:22 -0700 Arun Persaud <arun@nubati.net>:
+updated Changelog, NEWS, etc.
+
+2011-10-25 15:32:27 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix two warnings
+
+2011-10-24 20:00:28 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Don't adjust clock on right-click in EditGame mode WB
+
+This was a change that was already done for the left-clicks, but somehow
+never made it togit for the right-clicks
+
+2011-10-24 19:50:25 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Change chase message in .lng files
+
+2011-10-24 19:31:08 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Let perpetual-chase message mention square
+
+In stead of a boolean, PerpetualChase now returns the square the chased
+piece ends on (encoded as an int), and on adjudication it will be printed.
+
+2011-10-24 19:26:02 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Add mechanism to translate variable messages in WinBoard
+
+A message prefixed with % in the lng file will be considered a match
+if it matches the start of the text to be printed, and the remaining
+part of the latter will remain untranslated. This was needed to allow
+translation of the perpetual change message, now it indicates the square
+of the chased piece.
+
+2011-10-24 19:20:13 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Use other interpretation of Asia rules for chase detection
+
+The detection of perpetual chases now ignores pre-existing checks.
+
+2011-10-12 17:28:48 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix crash on loading garbage game file
+
+The code to cache games was not resistant to moves before a valid
+game start, or a game filewithout any games at all.
+
+2011-10-08 20:43:52 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Incorporate variant type in book hash key
+
+This prevents booksforone variant being used for another, and allows
+multi-variant books.
+
+2011-10-07 15:41:44 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Update language.txt file
+
+
+2011-10-07 15:34:01 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Update Dutch lng file
+
+
+2011-10-07 15:21:53 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix Load Options dialog WB
+
+Defined fastkeys; reordered elements so that fastkeys focus edit they
+are intended for. Changed some of the more obscure texts. Corrected
+list of transatble dialog items, adding a few missing ones.
+
+2011-09-13 20:01:42 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix some warnings
+
+Prototypes were added, ormoved from backend.c to backend.h.
+
+2011-08-26 12:44:08 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Put 'Load Next' button back in WB Game List
+
+The '>' button for loading the next (filtered) game is re-instated in the
+WinBoard GameList. The main window has now accelerator keys Ctrl+Up and
+Ctrl+Down for loading the previous and next filtered game.
+
+2011-08-26 12:31:59 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Speed up position search and consider side to move
+
+The position search is made to pay attention to the side to move,
+which produces a speedup, because we only have to compare half the
+game positions when looking for an exact position match. An addition
+we now keep track of the total number of pieces, and abandon a game when
+it drops below the number of pieces in the position we seek.
+
+2011-08-21 23:16:15 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Dynamically allocate move cache
+
+A small statically declared cache good for 250k moves (~3200 games)
+will be expanded in steps of a factor 8 when it overflows.
+
+2011-08-18 18:40:38 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Translate search strings
+
+
+2011-08-17 22:55:21 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Implement flipped search
+
+
+2011-08-16 15:29:03 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Debug position search cache
+
+
+2011-08-15 18:44:37 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+profile
+
+
+2011-08-18 18:01:54 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Translate search-mode strings
+
+
+2011-08-15 16:59:39 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Quickscan
+
+
+2011-10-23 16:04:00 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix duplicate loading of second engine in tourneys
+
+To decide if new engines should be loaded, it was tested if first.pr
+equalled NoProc, assuming that ReserveGame would have left the engine
+loaded if the next game would need the same engines. But a reuse=0 engine
+could have caused termination of the first engine process anyway, while
+the second would still be alive. So unconditionally starting of the second
+engine would cause redundant engine processes to abound.
+  Now we only start new engine processes if both engine processes are dead.
+
+2011-10-23 15:53:32 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix PV walking with -fSAN
+
+The SAN options had broken the PV walking, because the shelving of the
+walked PV to create space for the conversion to SAN of an incoming PV
+would not be properly undone, but would add the walked PV to the game.
+
+2011-10-20 12:39:10 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Refine clock adjusting
+
+Adjusting the clocks by shift-clicking them is now only allowed with
+autoCallFlag off, and an error-popup results when you do it otherwise.
+Also, swtching to Edit Game mode won't reset the clocks to the stored
+value anymore when you have just adjusted it.
+
+2011-10-12 17:43:33 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix crash on adding items near book end
+
+When Edit Book would add so many entries near the end of an opening
+book that the end of the added info would surpass the old end of the
+file, the copying of the tail got stuck in an infinite loop, extending
+the file without limit with repeating info.
+
+2011-10-12 17:41:18 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Print message on wrong use of Clone Tourney
+
+The user is urged to first provide the name of an existing tourney file
+when he presses the button without one. The button is also renamed.
+
+2011-10-12 17:38:33 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix invalid combobox entry WB
+
+A combobox label that was not in the list (because the user typed
+it, rather than selecting one) would cause a crash.
+
+2011-10-12 17:23:57 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix crash on loading garbage game file
+
+XBoard crashed when a game file contained a PGN game result before
+any valid game start, because data would be written in a game-list
+node that did not exist yet. This would occur frequently when garage
+was read; basically any asterisk in the data would do it.
+
+2011-10-11 23:31:01 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Add control to set -discourageOwnBooks WB
+
+
+2011-10-11 20:53:52 -0700 Arun Persaud <arun@nubati.net>:
+only require 0.17 of gettext
+
+This seems to solve many build issues with older distrubtions and doesn't seem to be a problem with newer ones.
+
+2011-10-11 23:31:01 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Add option -discourageOwnBooks
+
+This boolean option determines the default setting of the hasOwnBook
+option before a tourney game starts. By setting it, the hasOwnBook
+option is cleared, which would enable use of the GUI book, like the
+engine was installedwith the /firstXBook option. An explicit option
+on the engine install line can still overrule this, though.
+ A control to set this option has been added in the XBoard Match dialog,
+and it is saved in the tourney file to force consistency.
+
+2011-10-11 22:58:01 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Reset initString and computerString on engine load
+
+These options are typically engine specific, and must thus be
+reset to their default value before loading a new engine.
+
+2011-10-11 22:43:00 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Add Romanian lng file
+
+
+2011-10-07 16:55:45 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Reactivate Falcon Chess
+
+Now the patent for this has expired, Fairy-Max plays it again.
+So the XBoard support for it is now switched on, and an item for it is
+added to the XBoard New Variant menu dialog. (WinBoard still had that.)
+In the array the Lance was changed for the Falcon as a wild-card piece.
+
+2011-10-03 09:59:40 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Update texi file for new features
+
+
+2011-10-03 10:30:30 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Update texi file for position search
+
+The new items in the Load Game Options dialog are described, as well
+as the command-line options used to store them in the settings file.
+
+2011-10-03 09:28:50 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Remove paragraph about .Xresources from texi file
+
+Command-line options can no longer be set through .Xresources already
+since version 4.5.0.
+
+2011-10-03 09:13:05 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Add Dutch WinBoard translation
+
+
+2011-09-28 20:46:21 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Prevent Edit Book window from stealing focus (WB)
+
+In WinBoard updating the book window would give it focus. Now the
+focus is given back to the main window, except when the Edit Book
+window is first created.
+
+2011-09-28 20:42:00 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Make book-window update part of HistorySet
+
+
+2011-09-26 16:01:28 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix position loading in tourneys
+
+In a tourney a position must be loaded when the engine is not yet
+started, and the old version of LoadPosition could not handle that:
+It would start up the engine, and send it commands unconditionally.
+
+2011-09-26 15:58:07 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix resetting -fSAN on engine change
+
+There were two places for loading another engine, Load (from menu) and
+SetPlayer (in tourneys), and the previous patch for this missed the
+second one.
+
+2011-09-26 15:51:49 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Make too-long game non-fatal
+
+GameEnds is now called when the maximum number of moves is exceeded,
+rather than DisplayFatalError. Not sure if this properly terminates the
+game in all situations, but DisplayFatalError (after calling GameEnds)
+would also wait for the user to confirm the error popup before really
+exiting, so that in an unattended automatically running tourney there
+was not much fatal, and the entire tourney would in fact be finished.
+
+2011-09-26 15:46:58 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Keep book file open
+
+Rather than opening and closing the book file on every probe, it is
+now only closed and opened when the name of it changed.
+
+2011-09-26 15:44:23 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Suppress playing of book moves with weight 0
+
+Bookmoves with weight 0 could be played when the sum of the weights
+of all moves from the position was 0. So it was not possible to suppress
+the only move by giving it weight 0. This is now corrected.
+
+2011-10-01 15:00:47 -0700 Arun Persaud <arun@nubati.net>:
+added NEWS for release of 4.5.3
+
+
+2011-09-29 20:31:23 -0700 Arun Persaud <arun@nubati.net>:
+better contrast for XBoard icon on a dark background
+
+
+2011-10-01 13:09:59 -0700 Arun Persaud <arun@nubati.net>:
+translationproject.org: updated Ukrainian translation
+
+
+2011-09-29 20:49:42 -0700 Arun Persaud <arun@nubati.net>:
+updated pot file and send to translation project
+
+
+2011-09-22 12:09:39 +0100 Thomas Adam <thomas@fvwm.org>:
+(tiny change) Clarify "-name" option is Xt-only
+
+There's a set of standard options with will get used by Xt, before Xboard
+itself will use them.  "-name" is an Xt-only option which will set the name
+and resource of the window to the value requested.  It has nothing to do
+with setting opponent/player names.
+
+Signed-off-by: Thomas Adam <thomas@fvwm.org>
+
+modified slightly by Arun Persaud (renamed itemx to item and fixed option name for CMAIL)
+
+2011-09-22 17:17:16 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix LoadGameOrPosition starting up engine
+
+When LoadGameOrPosition() is called from NextMatchGame(), the Reset() that
+is called in LoadPosition() when you are running from a position file
+would prematurely start up the engine (without waiting for features).
+The kludge to suppress this behavior for the explicit call to Reset()
+is now extended to encompass LoadGameOrPosition.
+
+2011-09-22 17:14:34 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Clear fSAN option before new engine load
+
+This to prevent the new engine will inherit it from the previous one.
+As the command-line options an only set it, this has to be done by
+explicit assignment.
+
+2011-09-13 23:02:35 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix some warnings (prototypes)
+
+
+2011-09-13 19:55:44 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix write failures in concurrency
+
+In WinBoard a flood of writes by differentprocesses to the same PGN can
+cause a "permission denied" error in fopen. This patch causes retries after
+a random (5-15 msec) wait, in such cases.
+
+2011-09-13 19:52:19 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Move HistorySet to back-end
+
+This existed in exact duplicates in both front-ends.
+
+2011-09-13 19:46:36 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Make DoSleep front-end wrapper for msec sleep
+
+DoSleep was #defined as a macro for Sleep/ sleep, with an argument
+indicating msec in WinBoard, but seconds in XBoard. Nuw it universally
+uses msec, by defining it as a wrapperin the respective front-ends.
+(For XBoard itwraps FrameDelay.)
+
+2011-09-10 22:35:14 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix playing sounds when -soundProgram is empty
+
+It made no sense to just send the names of the sound files to the shell.
+So the soundProgram isnow tested for being an empty string, and if so,
+PlaySound() is aborted.
+
+2011-09-10 14:01:58 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Add -afterGame option
+
+This option specifies a command line to be executed after each game of
+a tournament. To execute the line, the function RunCommand() was added
+in the front-end. For XBoard this was a simple call to system(); for
+WinBoard part of the StartChildProcess code was cloned (without the pipe
+stuff).
+
+2011-09-10 13:52:12 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Upgrade -serverMoves option
+
+The (undocumented) -serverMoves option was upgraded to conform to the
+ChessLive! protocol extension for sending SAN tags. A bug that allowed
+upper-case promoChar to leak through was also fixed, and code was added
+to write engine PVs to file. Flushing of the game result to the -serverMoves
+file was also fixed.
+
+2011-09-10 13:50:25 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix AppendComment
+
+The joining of two comments was not performed correctly if the second
+one had the braces yet to be added: the closing brace was not added in
+that case.
+
+2011-08-30 19:39:59 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Auto-popup ICS Input Box
+
+Typing to the board made the move type-in pop up, but in ICS mode
+this is of course undesirable. Like in WinBoard, the ICS Input Box
+should pop up in stead, and accept the typed character. This is now
+realized. If the box already exists and has text in it, the typed
+character is appended to that text, and the box is given focus.
+Spaces now also are considered as printable.
+
+2011-08-30 18:27:58 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Slightly decrease sensitivity of sweep actions
+
+The sweep-selection of promotion and drop pieces, or step through the PV
+was so sensitive that it was difficult to reliably make the intended choice.
+It has now been reduced by a factor 1.5-2, and the sweep selection and
+PV walk now also use a different value.
+
+2011-08-27 21:16:58 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Extra buttons in WB Tournament dialog
+
+A button to copy contents of the tournament fileto the dialog is added.
+Buttons to invoke the Common Engine and Time Control dialogs are also added.
+
+2011-08-27 21:15:00 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix crash on typing non-existent enginein Load Engine dialog
+
+
+2011-08-24 10:30:46 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix display state after failed analysis attempt
+
+When an engine responded to the "analyze" command with an "unknown command"
+message, a Reset was done without altering the display, causing a
+discrepancy between display and internal state, which caused confusion
+when it finally corrected itself. I replaced the Reset call by an
+EditGameEvent call, to preserve the loaded game. The Reset was presumably
+used to allow for the case where the engine would be so upset by the
+analyze command that it needed to be reset by a "new" command, but this
+seems overly paranoic for an engine that just recognized the command
+as an unknown one.
+
+2011-08-24 09:58:35 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix treatment of PGN score/depth info with linefeeds in them
+
+This is needed to make the PGN more Arena-proof.
+
+2011-08-24 09:51:10 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix quoting in Load Engine dialog
+
+A (space-contaning)  engine name only needs quoting when there are parameters,
+because the over-all engine command will be quoted anyway. For UCI engines
+duplicate quoting is fatal, because when passed as the -ec argument of
+Polyglot, it will be quoted yet another time, also with double quotes.
+
+2011-08-23 21:24:23 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Replace Analyze File by Analyz Game function
+
+
+2011-08-22 22:16:58 -0700 Arun Persaud <arun@nubati.net>:
+new developer release
+
+
+2011-08-22 22:26:56 -0700 Arun Persaud <arun@nubati.net>:
+update po files
+
+
+2011-08-22 22:24:23 -0700 Arun Persaud <arun@nubati.net>:
+updated Changelog, NEWS, etc.
+
+
+2011-08-22 22:09:19 -0700 Arun Persaud <arun@nubati.net>:
+malloc.h is not needed
+
+
+2011-08-20 22:21:40 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix ICS move-list header mistaken for null moves
+
+
+2011-08-18 18:53:09 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Allow two-games-per-opening to work with book
+
+A new option -seedBase is added, and written to the tourney file.
+It allows all XBoard instances working on a tourney to generate the same
+'random' openings in a deterministic way, based on this one-time seed
+and the game number. When -loadGameIndex equals -2, it uses the same seed
+for an odd and the following even game.
+
+2011-08-18 18:51:56 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix use of random
+
+In some places rand() was called explicitly, rather than through the
+(configured) place-holder random().
+
+2011-08-18 17:34:33 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Translate search texts
+
+
+2011-08-18 10:29:35 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Add -useBoardTexture and -usePieceFont options
+
+These options suppress the use of the given texture files or piece fonts
+without relying on the kludge to disable them by prefixing an asterisk
+to the file or font name. Checkboxes have been added to the Board dialog
+to control them. The user can now set piece font in WB font dialog.
+The sample text can be used to specify the -fontPieceToCharTable,
+the font name itself the -renderPiecesWithFont value.
+
+2011-08-16 23:10:59 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix crash on start without settings file
+
+A primordial -1 in currCurrent caused a crash when WinBoard was started
+without ini filein game-viewer mode.
+
+2011-08-12 12:08:18 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix generic-popup failure after empty engine-settings dialog
+
+The error exit ofthe Engine #N Settings dialog in case of an engine without
+options forgot to clear currentCps, with as a result that the generic popup
+thought every subsequent popup was an empty one, and kept repeating the
+'engine has no options' error message for every dialog.
+
+2011-08-10 11:27:22 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Allow substitution of engines during tournament
+
+Two buttons are added in the tournament options dialog, for upgrading
+and for replacing a tourney participant. Lots of tests on the validity
+of the request are done, and if all are passed, the tourney file is
+written with the new participants (and in case of replace) with the
+results of the replaced engines erased from the -results string.
+
+2011-08-08 11:00:12 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix up/down arrows in game list
+
+
+2011-08-08 10:31:24 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Add key bindings for loading next/previous game of list
+
+These bindings are set both for the game list and the board window.
+To make them useful, focus has to be transferred to the board widget
+after loading (it tends to transfer to the tags window), which now
+seems to work, but not always. From the game list the shellWidget
+seems to get focus rather than the board, which is bad as it is not
+sensitive to the key bindings.
+
+2011-08-08 09:58:31 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Allow deletion of last book move
+
+The book-edit function refused to delete the entiremove list,
+for no good reason. This limitation now has been lifted.
+Also the error message that the key for the current book entries
+is different from that of the currentposition has been suppressed
+if there were no entries found for the current position (so that the
+book is positioned at the next key), so that it is possible to add
+moves from scratch.
+
+2011-08-08 00:19:53 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Speed up parser
+
+Line numbers > 1, which are common, can exit already during move parsing,
+to save lots of matching on resultsand castlings.
+
+2011-08-07 15:13:00 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix missing files in file browser
+
+The file browser was throwing away the first two files, assuming
+they were "." and "..". Alas, this is no longer true on every Linux.
+Now we actuallyc compare for these names, before skipping them.
+
+2011-08-06 11:57:59 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Delay file loading to allow expose event first
+
+
+2011-08-06 09:29:22 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix paging
+
+
+2011-08-05 22:39:41 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Better fix of crash on empty game list
+
+An empty list is now replaced by a list containig a simple message.
+
+2011-08-05 20:31:44 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Add plain arrows as key binding for stepping forward/backward
+
+
+2011-08-05 20:30:03 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Debug position selection
+
+
+2011-08-04 13:22:55 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Print progress during load / selection of game
+
+The title bar of themain window is used to display a running count
+of the number of games loaded / searched.
+
+2011-08-04 12:44:45 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Parse PGN tags without allocating memory
+
+In WinBoard malloc/free did not seem to work when preparing the game list,
+leading to a huge memory list when ParsePGNTag was used. The added code
+parses the required tags in an alternative way as a work-around.
+
+2011-08-02 22:58:34 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Implement searching games in Game List for a position
+
+For this it was needed to reconstruct all positions of the games
+without loading them, so they could be compared to the currently
+displayed position. A new routine GameContainsPosition is made for that.
+ In Disambiguate, when the global quickFlag is set, we now do the
+disambiguation ignoring check,and only if this leads to an ambiguous
+move, we repeat it taking check into account to see if that resolves
+the ambiguity. This causes us to miss if unambiguous moves are illegal
+because they put their King in check, but who cares?
+ We now do not make game-list line when not needed. If we do not filter
+by text, but by position, there is no need for preparing the game-list
+line for games that are not selected. All for efficiency.
+
+2011-07-28 20:47:35 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Allow entry of variations in PlayFromGameFile mode
+
+Adding variations is more like editing a comment,and not really editing
+the game. Therefore we allow it on loaded games. As soon as we are in a
+variation, we temporarily switch to a (hidden) EditGame mode, restoring
+the original mode when we revert to the main line.
+  We now also stay in PlayFromGameFile mode after loading a game,
+And opening variation (fromtheComment window) in PlayFromGameFile mode
+is also allowed.
+
+2011-07-27 18:47:45 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Force Move History refresh after loading/reverting variation
+
+The Move History window was not refreshed after switching to or from
+a variation if that variation happened to have the same length as
+the main line. Now a change in storedGames since the previous refresh will
+force a full refresh to avoid this. For this to work, storedGames
+did have to be decremented after ToNrEvent in PopInner, because ToNrEvent
+calls HistorySet before the history is restored, so we don't want
+it to snatch away the full refresh. A call to HistorySet had to be
+added after PopInner is done restoring the move history.
+
+2011-07-27 17:45:12 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Popdown Comment window on new game
+
+What is in this window cannot possibly remain valid, and can even be harmful.
+
+2011-01-19 11:46:41 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Allow null move in analysis and edit-game mode
+
+In some games it is allowed to pass your turn. The internal
+representation picked for such a null move is the drop of an empty
+square, (EmptySquare,DROP_RANK,0,0). Computer-algebraic form is "@@@@",
+SAN form is "--", (for compatibility with ChessBase / SCID), and the
+non-compliant forms "null", "pass"and "Z0" are recognized in
+the parser as well. ApplyMove() has to test for this special case
+(to not actually clear a1), and a way to enter the pass for the user had
+to be found (clicking the opponent clock, like in EditPosition mode).
+ The null move is made move irreversible to prevent repetition draws
+spanning null moves being adjudicated.
+  Such entry of null move is now allowed in AnalyzeMode and EditGame mode.
+Because Chess engines will not accept null moves, SendMoveToProgram had
+to be adapted to send not the move, but the position after it in
+case of a null move. This erases the move history in the engine,
+so it will not react to 'undo' for that null move, so BackwardInner
+had to be adapted to test for intervening null moves, and if one is
+found, approach the target from the other side after loading the
+earliest position before it not crossing another null move, and
+then loading the moves upto the target.
+  XBoard clock clicks had to be fixed, to pay attention to the shift key.
+
+2011-07-25 21:58:58 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Give WinBoard Game List its own font
+
+The font fort he Game List used to be shared with the Engine Output and
+Move History windows, but this made it impossible to use a figurine font
+in the latter two (which displays piece symbols for capitals) without
+messing up the Game List. An option -gameListFont has been added to specify
+the font for the Game List(and save it in the settings file), while a
+control for it is added in the fonts dialog.
+
+2011-07-21 19:02:01 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix crash on OK after Save Changes in Tags and Comment popup.
+
+The global variables tagsText and commentText were used to pass
+a string obtained from a widget (and thus not malloc'ed), which
+caused a crash when the GenericReadout tried to use those variables
+for the new value. Fixed by using GenericReadout (which does malloc)
+to read out the text,in stead of GetWidgetText.
+
+2011-07-16 09:31:12 -0700 Arun Persaud <arun@nubati.net>:
+Revert "fixed segfault in xengineoutput", fixed in the backend now (from HGM)
+
+This reverts commit 33a0e73843115ff6d4eacaf963a38f2e8b20b295.
+
+2011-07-16 14:53:14 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Suppress some XBoard warnings
+
+
+2011-07-15 11:21:29 -0700 Arun Persaud <arun@nubati.net>:
+fixed segfault in xengineoutput
+
+
+2011-07-11 20:04:57 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Disable -showTargetSquares in ICS mode
+
+Help like this is considered cheating on FICS, so it is disabled for
+all 'classical' ICS variants. (For variants eyont Shogi we don't care.)
+
+2011-07-10 21:20:49 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Put grab on sweep-selecting in Edit Position
+
+A right down-click starting a sweep-selection event did not grab the
+mouse events, so that an up-click outside the window would go
+unnoticed, and the pointer motion stayed coupled to selecting the
+piece until the next click. By returning 2 from the RightClick back-end
+routine we request the grab.
+
+2011-07-09 13:50:58 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Write more labels on score axis of eval graph
+
+The labels for +/-1 and +/-3 are now also written, provided there is
+enough space.
+
+2011-07-09 13:28:08 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Improve Eval Graph  with -evalZoom and -evalThreshold
+
+The score range between -1 and +1 can now be blown up by a factor
+specified through -evalZoom. The threshold below which histogram bars
+are no longer printed (wich used to e hard-coded 25 centi-Pawn) can now
+be set through the -evalThreshold option.
+
+2011-07-09 13:18:07 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Print reversible plies done in stead of plies to go
+
+Printing the number of plies left to the draw-adjudication point was
+confusing when the N-move rule was set to a non-standard value.
+In stead we now print the number of plies since the last irreversible
+move, so the user can compare it to both the engine claim point (100)
+and the adjudication point he set (which might be beyond 100).
+
+2011-07-09 13:13:49 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Let WB eval graph react ot single left-click
+
+Unlike in XBoard, the WinBoard eval graph awatys had required double-
+clicking to go the the corresponding move, while there really is no
+reason for this, as it is no text edit, and single-clicks have no function
+(like select).
+
+2011-07-07 19:37:12 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Add -scoreWhite option
+
+This is similar to -absoluteAnalysisScores, except that it works in
+all modes, and flips the score given by the engines in the engine-output
+window when black is to move.
+
+2011-07-07 19:28:04 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Print 50-move counter in Engine-Output title
+
+
+2011-07-07 18:50:56 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Display score/depth in Eval Graph title
+
+No longer print it in the comment window.
+
+2011-07-04 11:06:12 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Let -sweepPromotions also work for click-click moves
+
+A click-click promotion no longer causes auto-queening, but the down-click
+on the to-square causes a Queen to stick to the mouse pointer, and then
+allows the user to change it through dragging backwards before releasing it
+with an up-click.
+  In WinBoard this required a slight change in DragPieceBegin, because
+the dragged piece there only was made visible when the mouse pointer
+actually started moving (and dragInfo.pos was set), presumably under the
+assumption that before mouse move the piece was already on the clicked
+square. Which in the case of a to-square was of course not true. (Because
+a piece jumps to the mouse pointer when the click is not centered on a
+square, this gives less jittery static clicks.) So DragPieceBegin has
+been given an extra argument now, to indicate whether it should attach
+the piece to the mouse pointer immediately.
+  To make the click-click sweepPromotions work in Shogi (for which the
+drag-drop sweepPromotions could never work, because it is not clear the
+piece has a posibility to promote when you pick it up), translation of
+the sweep-selected piece to a Shogi promoChar had to e added.
+
+2011-07-04 10:45:04 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Improve -showTargetSquares on click-click moves
+
+The markers on move targets are now kept when a first click merely
+selects a piece, rather than dragging it elsewhere. The second click
+(by definition on the to-square) then clears the markers.
+
+2011-07-04 11:23:05 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Let PGN parser accept lower-case piece in drop moves
+
+The @ sign prevents amiguity with other notations anyway.
+
+2011-07-04 12:42:12 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix parser.c line endings
+
+
+2011-06-29 20:29:12 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix writing searchTime in tourneyFile
+
+This had to be derived from the variable searchTime, which gives it
+in seconds, as appData.searchTime (a string in minutes) is not reliable,
+as it contains the command-line value, which might have been altered
+through the time-control dialog.
+
+2011-06-29 20:25:00 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix resetting searchTime if other TC mode is chosen (XB)
+
+This fixes a bug in the new time-control dialog.
+
+2011-06-29 14:32:43 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix coords display on large boards
+
+The file indicators can now run upto 'w'. Only the lowest digit
+of the rank number is printed, from a table that is valid to 22.
+
+2011-06-29 13:53:00 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix crash on making too-long FEN
+
+The buffer for in PositionToFEN was only 128 bytes, which was not enough
+for large boards such as 19x19 Go. It is enlarged to MSG_SIZ(512) now.
+There also is some approximate overflow checking added (but it is not
+fool proof in case there are holdings...)
+
+2011-06-29 13:36:26 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix drop moves on boards with more than 10 ranks
+
+The internal encoding for rank 16 is '@', and thus ambiguous with drop
+moves. They were always printed as 16, breaking drop games on large
+boards. The ambiguity is now solved (for boards with more than 16 ranks)
+by checking if the preceeding letter is upper case, in which case it
+cannot be a fileindicator, but must be a piece, and thus a drop.
+
+2011-06-29 13:29:38 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Don't one-click move when legality testing is off
+
+
+2011-06-23 21:18:11 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Reorder controls in Engine Setings dialog WB
+
+To get tabbing through the controls in left-to-right order, they are
+now added to the template structure in that order. Also add a tabstop
+to Label options, so that JAWS will read those.
+
+2011-06-23 14:02:50 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Add tab stops in WB generic popup
+
+The WinBoard generic popup did not put tab stops on push buttons,
+including the OK and cancel button, with as a consequence that these were
+skipped when tabbing through the dialog controls. In addition the tabbing
+could not begin before the user selected one of the controls with the mouse.
+  Now all buttons have tab stops, and the cancel button is given focus
+when the dialog pops up.
+
+2011-03-10 20:06:39 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Implement Grand Chess
+
+Grand Chess requires a lot of exceptional handling similar to Superchess
+and Great Shatran, because it also allows only promotion to a captured
+piece. In addition it shares the enlarged promotion zone with Makruk and
+Shogi, as well as the fact that promotion can be deferred. The 10-rank
+board furthermore required a better generalization of double-pushes and
+e.p. captures. On such a board double puhes are now allowed from 2nd and
+3rd rank, e.p. capture from 5th and 4th.
+
+2011-01-28 19:20:38 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Allow promotion to Pawn with legality testing off
+
+In stead of ImpossibleMove promotionto Pawn now merely is an
+IllegalMove, so it can be played with legality testing off.
+
+2011-01-24 15:06:17 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Create some space in WB New Variant dialog
+
+
+2011-06-20 23:53:49 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Allow double-digit rank numbers
+
+The parser already understood double-digit numbers on input, and
+CoordsToAlgebraic produced them on otput. This patch also fixes sending
+of the moves to the computer, for which the moveList was used. The latter
+stored 10 as ':', etc,to always get a 4-char move, the characters of which
+were frequently being converted to fromY or toY by adding/subtracting ONE.
+To not break that the one-character encoding of rank number is kept in
+moveList, but in SendMoveToProgram, characters > '9' are converted to
+double digits.
+
+2011-06-23 11:26:48 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Add Absolute Analysis Scores in Genral Options dialog XB
+
+
+2011-06-23 11:16:34 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix texi file, and update it further
+
+
+2011-06-20 12:15:14 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Modified po
+
+
+2011-06-22 17:51:51 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Update texi file
+
+
+2011-06-22 11:02:45 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Restore echo after ^C in ICS password
+
+
+2011-06-22 10:45:27 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix some warnings
+
+
+2011-06-19 20:30:09 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Increase efficiency of SAN generation / disambiguation
+
+**************** Risky patch! **********************
+The algorithm used for disambiguating and generating SAN was extremely
+inefficient, because it generated all pseudo-legal moves from the relevant
+position, and then for each of those did a check test (involving generation
+of all moves of the opponent), before determining if the move matched the
+(proposed or given) SAN move. While it is pointless to generate moves
+with a piece that does not match (let alone checking them for legality).
+And for a piece that matches, it is pointless to test legality of moves
+that do not match the to-square.
+  To speed up the process GenLegal and GenPseudoLegal have been equiped
+with an argument that can indicate the piece type of the required move,
+so they can skip generating moves with other pieces. TestLegality,
+Disambiguate and CoordsToAlgebraic make use of this facility, and set also
+(through global variables rFilter and fFilter) a to-square filter to be
+applied in the GenLegalCallback before it tests the move for legality.
+  This patch is especially tricky for Crazyhouse, where the piece indicated
+in the move might not be the piece actually on the board, because the latter
+is a promoted Pawn, and has to be demoted toits base type before the
+comparison.
+
+2011-06-19 16:18:15 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix compile errors WinBoard
+
+The patch to make non-existing options non-fatal broke WinBoard. All calls
+to ExitArgError from it now supply a third argument TRUE to fix it.
+
+2011-06-19 14:28:09 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Add -fSAN / -sSAN options
+
+These options force the PV of the applicable engine to be converted to SAN.
+They make use of the existing ParsePV routine, after shelfing a possible
+PV (from user PV walking) to free the space after the last move.
+Could be costly in terms of CPU usage.
+
+2011-06-19 10:56:25 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Cure flicker in Move History window, fix highlighting
+
+The highlighting of the current move in the Move List window by selecting
+it did not always work, because some other windows were clearing their text
+widgets by selecting the contents and killing it, thus snatching the
+selection away. This has been changed to setting XtNstring to an empty
+string as a method for clearing without side effects on the selection.
+As a bonus the Engine Output window now also no longer has the black flicker
+on clearing it.
+  In addition, triggering a scroll by setting the insertion point to the
+end of the text caused excessive flicker in the Move List window, apparently
+clearing it and redrawing from scratch, (even if there was no scroll motion),
+to the point where on my slow laptop the move history stayed entirely blank
+during a rapid succession of moves. This has been combatted by using the
+end-of-line action procedure (which does not seem to suffer from this) to put
+the insertion point at the end, when we need to scroll to close to the end.
+
+2011-06-18 23:48:13 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix crash on clearing new Move List window
+
+When a new game started and a previous game had filled the Move List
+window, a crash occurred because an attempt was made to undo the
+highlighting of a no-longer-existing move, and then scrolling to it.
+
+2011-06-18 20:46:57 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Use sound for ICS tells also with engine telluser popups
+
+The telluser and tellusererror commands now can be assigned a sound.
+
+2011-06-18 20:45:12 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Add Score in Move List option to general options dialog XB
+
+Now that we have a WinBoard-style Move History window, this option is
+no longer a no-op in XBoard.
+
+2011-06-18 12:42:41 -0700 Arun Persaud <arun@nubati.net>:
+new developer release
+
+
+2011-06-18 12:38:32 -0700 Arun Persaud <arun@nubati.net>:
+updated Changelog, NEWS, etc.
+
+
+2011-06-18 12:51:10 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Update window itle after last game of match
+
+The result printed behind player names during a match would still be the one
+without the game, differing from what the popup would show, which looked
+sloppy enough for people to complain about it.
+.
+
+2011-06-18 10:26:31 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Make WB generic popup translatable
+
+When used for internal settings (as in the Load Engine and Tournament
+Options dialogs), the option names are now subectto translation.
+
+2011-06-17 21:05:00 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Redo Move History with generic popup in WinBoard style
+
+The use of color and boldness to make the move list more readable
+unfortunately cannot work in Xaw; reverse video by selection is used as an alternative to highlight the current move.
+
+2011-06-17 21:19:41 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Remove stray else
+
+Due to an erroneous else, the window parameters of Move History were
+not retreived (and thus incorrectly saved) when the Engine Output was up.
+
+2011-06-14 18:47:30 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Make non-existing opton in settings file non-fatal
+
+It is rather difficult to recover from a situaton where the settings
+file contains an unknown option (e.g. because you downgraded to a
+previous version that had fewer options), especially in WinBoard, where
+the user settings file is in a hidden folder, and people might not be
+able to find it, let alone edit it. By just skipping the line with the
+offending option, rather than generating a fatal error, when reading
+from a settings file, such options will be automatically purged from the
+file as soon as you save settings.
+  Small problem is that the user cannot be warned, as the initialization
+has not progressed far enough at this point to generate error popups. In
+XBoard we can at least print to the console, but in WinBoard there is no
+warning at all. But the worst thing that can happen is that new options
+in a settings file of a more advanced version will revert to their
+defaults.
+
+2011-06-14 18:20:37 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Change long form of -tf option to -tourneyFile
+
+This is a more logical name, and in the WinBoard docs it was already
+described as such. Also remove the -processes option, which in the
+current design of the tourney manager is no longer used.
+
+2011-06-14 18:17:08 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix default of -remoteUser
+
+This has to be an empty string, rather than NULL, to prevent XBoard from
+segfaulting when the -gateway option is used.
+
+2011-06-14 13:32:38 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Add -at and -opt options as alternative for @
+
+Windows XP and Vista shortcuts do not display command lines with @ in
+them correctly, and these optionsprovide a work-around for that.
+
+2011-06-14 12:46:36 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix empty-string option values in XBoard
+
+
+2011-06-14 12:40:11 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix crash on switching sound in Vista
+
+When choosing a new sound the wave form of the old one was free'ed, but
+because built-in sounds are not really malloc'ed, this led to a crash.
+
+2011-06-14 12:36:16 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Update WB docs for tourney manager
+
+
+2011-06-14 12:35:01 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Add icon to WB for tournament files
+
+
+2011-06-10 16:52:01 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Redo Time Control dialog with generic popup
+
+As poor-man's disabling of the unneeded input fields, we print the word
+"Unused" in them.
+
+2011-06-10 14:14:45 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Some refactoring in xoptions.c to separate out front-end
+
+
+2011-06-10 12:38:08 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Redo New Shuffle Game dialog with generic popup
+
+The buttons are slightly renamed, and in stead of having an 'off'
+button to clear it, shuffleOpenings now has its own checkbox, which is
+ticked when a fixed or dynamic random is chosen with the buttons.
+
+2011-06-10 11:58:17 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix type of shuffleOpenings
+
+This was a Boolean option, and thus accessed by the args.h code as such,
+while it was declared as an int (and used in backend.c as such). This
+could have led to problems with different endianness.
+
+2011-06-09 23:57:43 -0700 Tim Mann <tim@tim-mann.org>:
+Internationalize the file browser.
+
+The file browser was missed in the previous round of
+internationalization and had gotten broken by setting international =
+True in its widgets.  I got nothing but segfaults trying to set
+international to False in the file browser widget subtree when it was
+True in the main window, so I gave up and did the
+internationalization.  It turned out to be pretty easy.
+
+As a tiny bonus fix, I removed some ../'s from includes, and you can
+now configure and build xboard in a subdirectory again.  This was
+useful for building both --enable-nls and --disable-nls from the same
+sources to compare functionality and make sure both still work.
+
+2011-06-08 20:26:28 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix crash at end of Swiss tourney
+
+
+2011-06-08 17:33:34 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix display of logos
+
+The logo files are now sought relative to the WinBoard install
+directory. Non-existing logos cause clearing of the logo, rather than
+letting the logo of the prevous engine hang. Logo change is requested
+explicitly from the back-end (when an engine is initialized for a new
+game), rather than using the kludge in StartChileProcess. This required
+a dummy UpdateLogos routine in the XBoard front-end.
+
+2011-06-08 18:02:31 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix parameter handling in adapter command
+
+A backslash was not considered the end of an option name, which was
+fatal for UCCI2WB, which needs %fd\\%fcp in its command line.
+
+2011-06-08 17:16:54 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Clear Engine-Output pane when initializing engine
+
+This to prevent output from the previous game hanging there during the
+next game, when the engine that is really playing is in book and
+doesn't produce thinking output there.
+
+2011-06-08 17:20:01 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix display of last move of last match game
+
+When a game was adjudicated (e.g. because XBoard detected mate) GameEnds
+would trigger an exit if it was the last game of the match, and thus
+never returned, while the ShowMove was called only after return from
+Adjudicate. An extra ToNrEvent is now used in GameEnd in this case to
+cause ShowMove to be called before exiting. (Ugly kludge...)
+
+2011-06-08 17:38:43 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix concurrency in Swiss tourneys
+
+The pairing engine was consulted for the next round before all games of
+the previous round were finished, if other XBoard instances were still
+playing games. This caused the instances finishing early to stall
+indefinitely. This is fixed by moving the Swiss pairing code to after
+the syncInterval code. The normal pairing code (the call to Pairing)
+must stay before it, because it determines the syncInterval. So ther is
+a bit of tourneyType dependence cluttering up the code here. :-(
+
+2011-06-08 17:27:01 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Give error popup when pairing engine fails
+
+An invalid pairing now produces an error popup to inform the user, so he
+knows why the tourney stagnates.
+
+2011-06-08 17:24:41 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix clock mode in tourney starting from -ncp mode
+
+When a tourney started from -ncp mode, which was allowed in MatchEvent,
+because the tourney loads its own engines anyway, the menu enablings and
+clockmode where not restored to their 'GNUMode' state.
+
+2011-06-08 17:11:31 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix round-robin schedule
+
+The first round was played twice, and the formulas used to derive the
+pairing were not even-odd resistant anyway. Both even and odd number of
+participants should work now.
+
+2011-06-08 17:08:55 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix interrupting tournament
+
+Stopping a tourney by using the Machine Match menu item did not wor
+properly.
+
+2011-06-08 16:57:09 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Improve quoting of engine name on install
+
+Rather than always using double quotes for the engine command, the
+engine filename is now double-quoted if it contains spaces (and no
+double-quotes), and the comand is single-quoted if it contains
+double-quotes (and double-quoted otherwise).
+
+2011-06-08 16:49:18 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Print sensible window title during tourneys
+
+Rather than the "(W-L-D)" in the title we now print game number and
+total games, plus indication of the tourney type (rr, gt or sw).
+
+2011-06-08 16:44:16 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Let XBoard propose name of tourney file
+
+Add an option -defaultTourneyName to configure the name that will be
+proposed in the Tournament Options dialog's tournament-file field. The
+option can contain %y, %M, %d, %h, %m, %s for year, month, day, hour,
+mintes, seconds of the curret time in %02d format, or %Y for the year in
+%04d format. Any tournament -file name is ignored when no participants
+are given. Participants without a tourney file remains an error.
+
+2011-06-08 16:30:34 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Improve Tournament dialog layout WB
+
+
+2011-06-08 17:05:02 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix -matchGames option
+
+The new MatchEvent code had broken the -mg option, and used always
+-defaultMatchGames in stead.
+
+2011-05-30 19:55:13 -0700 Tim Mann <tim@tim-mann.org>:
+Fixed small bugs in several .po files, enabling these translations to be used.  They all probably need more work from the translation team. I don't speak any of these languages, but I did some spot checks either from my own knowledge or using Google Translate, and they generally look sane.
+
+- Several files were in utf8 but needed to be marked as such (that is,
+  "CHARSET" changed to "UTF-8").  Affected es.po, it.po, ru.po, vi.po,
+  zh_CN.po, zh_TW.po.
+
+- it.po was missing a \n at the end of one translation.
+
+- ru.po had unescaped double-quote marks in one translation.
+
+- vi.po needed to be normalized to Unicode normalization form C.  With
+  this fix, more characters display correctly, though at least one is
+  still missing in the X core fonts that xboard is able to use.
+  See http://vietunicode.sourceforge.net/ for more about Vietnamese.
+
+- zh_HK.po was written in big5 and then utf8-encoded on top of that,
+  making it unusable.  I stripped off the spurious utf8 encoding and
+  then used recode to convert the file to Unicode properly encoded as
+  utf8.
+
+Unfortunately, I wasn't able to test any of the Chinese translations,
+as I haven't been able to get XCreateFontSet to work in Chinese
+locales with any of the fonts I have installed, even after adding the
+Ubuntu language support packages for both simplified and traditional
+Chinese.  I did spot check a bunch of the translations using Google
+Translate.
+
+I've checked in a couple of tiny Perl scripts that I used to do part
+of the fixups on vi.po and zh_HK.po in case we need them again.
+
+2011-05-30 14:12:53 -0700 Tim Mann <tim@tim-mann.org>:
+The empty string can't be translated and it causes the gettext utilities to complain, so change _("") to "".
+
+
+2011-05-30 13:21:06 -0700 Tim Mann <tim@tim-mann.org>:
+Add a final wildcard default for fonts.  This gives XCreateFontSet more freedom and lets it find fonts for some obscure charsets where fixed-bold or fixed-medium etc. may not have one.
+
+
+2011-05-29 20:14:37 -0700 Tim Mann <tim@tim-mann.org>:
+Added "misc-fixed" as a fallback font to handle locales where adobe-helvetica does not have all the required characters.  The fixed font is ugly but does have a rather complete set of characters, while the helvetica font is missing Cyrillic characters (at least on my distro).  I haven't found a way to get a nicer font that includes Cyrillic to work with XCreateFontSet, but I don't fully understand why.  I'll try to improve things further in the future if I figure out what's all going wrong.
+
+In the process I had to rewrite the code to insert the pixel size into
+a font name (replacing a "*" in that field).  The new code is much
+more general.
+
+2011-05-28 23:55:42 -0700 Arun Persaud <arun@nubati.net>:
+translation: activated Ukrainian translation
+
+
+2011-05-28 23:41:24 -0700 Arun Persaud <arun@nubati.net>:
+translation: added new Ukrainian PO file from the TP
+
+
+2011-05-28 21:07:08 -0700 Tim Mann <tim@tim-mann.org>:
+Fix display of international characters outside the ASCII range.
+
+1) Set Xaw resources required for internationalization --
+   *international and *fontSet.
+
+2) Untangle the new XFontSet-aware code from the old FindFont code.
+   It doesn't make any sense to apply the old (and obsolete) size
+   searching code from FindFont to a font set, which contains fonts
+   that are all the requested size.
+
+3) With these changes, the -font option doesn't work at all when given
+   on the command line.  The -font option actually is parsed by the Xt
+   library, used to set the *font resource, and removed from argv
+   before xboard can see it, so the option didn't really work properly
+   with the new WinBoard-style option framework anyway.  Now that
+   -font is even more broken, I changed the documented name of the
+   option to -messageFont and changed args.h so the option is saved in
+   ~/.xboard as -messageFont.
+
+2011-05-28 21:05:00 -0700 Tim Mann <tim@tim-mann.org>:
+Move "hide thinking" option into alphabetical order.
+
+
+2011-05-28 21:01:25 -0700 Tim Mann <tim@tim-mann.org>:
+Fix a size mismatch in scanf.  Untested, but the code could not have worked properly without this fix -- scanf would have written 32-bit values to 16-bit fields, thus smashing adjacent memory.
+
+
+2011-05-23 19:05:36 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix layout tournament Load Engine dialog WB
+
+
+2011-05-23 19:03:56 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix ArgTwo warnings
+
+
+2011-05-23 19:00:00 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Add Swiss tourneys through pairing engine
+
+An external program can be designated pairing engine through the new
+persistent option -pairingEngine. Defining the option will allow
+tourneytype -1 to be chosen for Swiss. In this case the pairing engine
+will be queried for a pairing before every new match game, by sending it
+the -results string, plus the command 'pairing' + game number.
+
+2011-05-23 17:37:43 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Allow generic dialog to ignore OK
+
+The EndMark callback can now suppress popdown of the dialog on OK, when
+it somehow does not like the values entered by the user. In XBoard this
+required all the callbacks to return a value.
+Caveat: A refused OK would still have set all new values given in the
+dialog!
+
+2011-05-23 17:22:58 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix CR in multi-line WinBoard text-edits
+
+The generic popup did not add CR when strings containing '\n' were
+printed in a multi-line text-edit, thus joining the lines. It was also
+not possible to type a CR in a multi-line text-edit.
+
+2011-05-23 14:16:17 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Let mentioning completed tourney file add one cycle
+
+Secifying a tourney file of a fully completed tourney will now resume
+that tourney with another cycle added. When there are still uncomleted
+games in the tourney, the usual error message will appear. There are
+also error popups added for when the user fails to specify a tourney
+file, or gives too few participants.
+
+2011-05-16 11:02:08 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Make engine startup failure non-fatal in WinBoard
+
+Unlike XBoard, which forks first, the parent process WinBoard has direct
+knowledge of a failure to execute the engine command, and used it to
+trigger a fatal error. The code doing this has now been disabled. Only
+in case of a first engine we switch back to -ncp mode in stead, but no
+action is taken to 'bury' the deceased engine process. Like in XBoard,
+errors in writing or reading the pipes will trigger this.
+
+2011-05-14 17:03:44 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Add secondry adapter command for UCCI or USI
+
+The option -uxiAdapter can define a second adapterCommand, which will be
+invoked on encountering the options -fUCCI, -sUCCI and -fUSI, sUCI.
+
+2011-05-14 10:05:11 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Obey san feature when sending book moves
+
+Book moves were always sent in long algebraic, even when the engine had
+said it wanted to receive SAN.
+
+2011-05-14 10:03:20 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix initialization of engine state
+
+Some of the initialization relied on variables being zero at startup,
+which meant value from the previouly loaded engine hng on after loading
+a new one.
+
+2011-05-11 23:06:20 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Take account of holdings in book key
+
+The board is numbered by rank, for comptibility with Polyglot format,
+starting at a1. We then continue counting in the holdings 'files', in
+up-rank direction, each holding spanning the full board height (even if
+it is not fully used). Firstthe left (black) holdings, then the right,
+Even in Shogi this limits the square number to < 99, which is below the
+absolute limit of 128 (where we would run out of hash keys).
+
+2011-05-11 22:48:34 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Alow promotions and drops in book-editing
+
+
+2011-05-11 20:15:58 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Include learn info in book edit
+
+
+2011-05-09 21:55:10 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Adapt default directory of lng2po
+
+The path is prefixed with "../" to make it runable from the po directory.
+
+2011-05-09 21:20:35 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Recode some po files
+
+po files were generated with the aid of lng2po for Russian,
+Vietnamese, Chinese(simp) and Chinese(trad), using encodings CP1251,
+CP1258, GB2312 and BIG5, respectively.
+
+2011-05-09 20:11:32 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Implement Edit Book in XBoard
+
+
+2011-05-09 09:52:54 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Improve WB Load Engine dialog texts
+
+
+2011-05-09 09:48:27 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Make 'add to list' default in Load Engine dialog
+
+
+2011-05-09 09:33:39 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Add -userFileDirectory option
+
+This volatile option is initialized from 'installDir'. It is
+primarily intended for configuration of WinBoard through its master
+settings file, and specifies an alternative place to create saveGameFile
+or look for other user files, in stead of looking in the installDir.
+
+2011-05-09 09:10:47 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Add option -absoluteAnalysisScores
+
+This persistent option flips scores in the when black is thinking in
+analysis mode, just before they are printed in the engine-output window.
+
+2011-05-08 17:47:40 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Automatically play moves of clicked PV in analyze mode
+
+The Shift key now no longer needs to be pressed to play moves from the
+PV in analyze mode (so it could be given back its original meaning of
+starting a variation with the entered moves). In analyze mode the PV
+walk begins after the first move, so a static right-click plays the
+first PV move. To just peek the PV you have to walk to the start of it
+before releasing the mouse button. In other modes the PV walk
+stillstarts at the very end.
+
+2011-05-08 17:07:18 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Let ParsePV always generate SAN move
+
+
+2011-05-08 13:53:09 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix vscrolling in XBoard Engine-Output window
+
+After clicking the memos they scrolled to the bottom, because SetFocus
+put the insertion point at the very end of the text. This behavior is
+now reserved for text-edits containing less than 100 characters.
+
+2011-05-08 13:22:33 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix button sizing in generic popup
+
+
+2011-05-08 13:02:52 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Allow changing MultiPV setting from Engine-Output window
+
+In analyze mode a header line is printed in the first engine-output
+pane, which can be right-clicked to increase or decrease the number of
+PVs. (Only with engines that support the MultiPV option.)
+
+2011-05-08 11:28:44 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+No clearing of Engine-Output memos on stat01
+
+
+2011-05-07 23:27:50 -0700 Arun Persaud <arun@nubati.net>:
+updated xboard.pot with released version
+
+
+2011-05-07 22:56:53 -0700 Arun Persaud <arun@nubati.net>:
+new developer release
+
+
+2011-05-07 22:54:29 -0700 Arun Persaud <arun@nubati.net>:
+updated ChangeLog, NEWS, etc.
+
+
+2011-05-07 23:07:46 -0700 Arun Persaud <arun@nubati.net>:
+deactivated new languages for the moment...
+
+po files need some cleanup, probably better to wait until the translation-project looked at them
+
+2011-05-07 18:44:24 -0700 Arun Persaud <arun@nubati.net>:
+added translations generated via lng2po from all winboard languages
+
+
+2011-05-07 18:40:23 -0700 Arun Persaud <arun@nubati.net>:
+lng2po.sh: added command line options, GPL header
+