+++ /dev/null
- GNU GENERAL PUBLIC LICENSE
- Version 2, June 1991
-
- Copyright (C) 1989, 1991 Free Software Foundation, Inc.
- 59 Temple Place - Suite 330, Boston, MA
- 02111-1307, USA.
- Everyone is permitted to copy and distribute verbatim copies
- of this license document, but changing it is not allowed.
-
- Preamble
-
- The licenses for most software are designed to take away your
-freedom to share and change it. By contrast, the GNU General Public
-License is intended to guarantee your freedom to share and change free
-software--to make sure the software is free for all its users. This
-General Public License applies to most of the Free Software
-Foundation's software and to any other program whose authors commit to
-using it. (Some other Free Software Foundation software is covered by
-the GNU Library General Public License instead.) You can apply it to
-your programs, too.
-
- When we speak of free software, we are referring to freedom, not
-price. Our General Public Licenses are designed to make sure that you
-have the freedom to distribute copies of free software (and charge for
-this service if you wish), that you receive source code or can get it
-if you want it, that you can change the software or use pieces of it
-in new free programs; and that you know you can do these things.
-
- To protect your rights, we need to make restrictions that forbid
-anyone to deny you these rights or to ask you to surrender the rights.
-These restrictions translate to certain responsibilities for you if you
-distribute copies of the software, or if you modify it.
-
- For example, if you distribute copies of such a program, whether
-gratis or for a fee, you must give the recipients all the rights that
-you have. You must make sure that they, too, receive or can get the
-source code. And you must show them these terms so they know their
-rights.
-
- We protect your rights with two steps: (1) copyright the software, and
-(2) offer you this license which gives you legal permission to copy,
-distribute and/or modify the software.
-
- Also, for each author's protection and ours, we want to make certain
-that everyone understands that there is no warranty for this free
-software. If the software is modified by someone else and passed on, we
-want its recipients to know that what they have is not the original, so
-that any problems introduced by others will not reflect on the original
-authors' reputations.
-
- Finally, any free program is threatened constantly by software
-patents. We wish to avoid the danger that redistributors of a free
-program will individually obtain patent licenses, in effect making the
-program proprietary. To prevent this, we have made it clear that any
-patent must be licensed for everyone's free use or not licensed at all.
-
- The precise terms and conditions for copying, distribution and
-modification follow.
-\f
- GNU GENERAL PUBLIC LICENSE
- TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
-
- 0. This License applies to any program or other work which contains
-a notice placed by the copyright holder saying it may be distributed
-under the terms of this General Public License. The "Program", below,
-refers to any such program or work, and a "work based on the Program"
-means either the Program or any derivative work under copyright law:
-that is to say, a work containing the Program or a portion of it,
-either verbatim or with modifications and/or translated into another
-language. (Hereinafter, translation is included without limitation in
-the term "modification".) Each licensee is addressed as "you".
-
-Activities other than copying, distribution and modification are not
-covered by this License; they are outside its scope. The act of
-running the Program is not restricted, and the output from the Program
-is covered only if its contents constitute a work based on the
-Program (independent of having been made by running the Program).
-Whether that is true depends on what the Program does.
-
- 1. You may copy and distribute verbatim copies of the Program's
-source code as you receive it, in any medium, provided that you
-conspicuously and appropriately publish on each copy an appropriate
-copyright notice and disclaimer of warranty; keep intact all the
-notices that refer to this License and to the absence of any warranty;
-and give any other recipients of the Program a copy of this License
-along with the Program.
-
-You may charge a fee for the physical act of transferring a copy, and
-you may at your option offer warranty protection in exchange for a fee.
-
- 2. You may modify your copy or copies of the Program or any portion
-of it, thus forming a work based on the Program, and copy and
-distribute such modifications or work under the terms of Section 1
-above, provided that you also meet all of these conditions:
-
- a) You must cause the modified files to carry prominent notices
- stating that you changed the files and the date of any change.
-
- b) You must cause any work that you distribute or publish, that in
- whole or in part contains or is derived from the Program or any
- part thereof, to be licensed as a whole at no charge to all third
- parties under the terms of this License.
-
- c) If the modified program normally reads commands interactively
- when run, you must cause it, when started running for such
- interactive use in the most ordinary way, to print or display an
- announcement including an appropriate copyright notice and a
- notice that there is no warranty (or else, saying that you provide
- a warranty) and that users may redistribute the program under
- these conditions, and telling the user how to view a copy of this
- License. (Exception: if the Program itself is interactive but
- does not normally print such an announcement, your work based on
- the Program is not required to print an announcement.)
-\f
-These requirements apply to the modified work as a whole. If
-identifiable sections of that work are not derived from the Program,
-and can be reasonably considered independent and separate works in
-themselves, then this License, and its terms, do not apply to those
-sections when you distribute them as separate works. But when you
-distribute the same sections as part of a whole which is a work based
-on the Program, the distribution of the whole must be on the terms of
-this License, whose permissions for other licensees extend to the
-entire whole, and thus to each and every part regardless of who wrote it.
-
-Thus, it is not the intent of this section to claim rights or contest
-your rights to work written entirely by you; rather, the intent is to
-exercise the right to control the distribution of derivative or
-collective works based on the Program.
-
-In addition, mere aggregation of another work not based on the Program
-with the Program (or with a work based on the Program) on a volume of
-a storage or distribution medium does not bring the other work under
-the scope of this License.
-
- 3. You may copy and distribute the Program (or a work based on it,
-under Section 2) in object code or executable form under the terms of
-Sections 1 and 2 above provided that you also do one of the following:
-
- a) Accompany it with the complete corresponding machine-readable
- source code, which must be distributed under the terms of Sections
- 1 and 2 above on a medium customarily used for software interchange; or,
-
- b) Accompany it with a written offer, valid for at least three
- years, to give any third party, for a charge no more than your
- cost of physically performing source distribution, a complete
- machine-readable copy of the corresponding source code, to be
- distributed under the terms of Sections 1 and 2 above on a medium
- customarily used for software interchange; or,
-
- c) Accompany it with the information you received as to the offer
- to distribute corresponding source code. (This alternative is
- allowed only for noncommercial distribution and only if you
- received the program in object code or executable form with such
- an offer, in accord with Subsection b above.)
-
-The source code for a work means the preferred form of the work for
-making modifications to it. For an executable work, complete source
-code means all the source code for all modules it contains, plus any
-associated interface definition files, plus the scripts used to
-control compilation and installation of the executable. However, as a
-special exception, the source code distributed need not include
-anything that is normally distributed (in either source or binary
-form) with the major components (compiler, kernel, and so on) of the
-operating system on which the executable runs, unless that component
-itself accompanies the executable.
-
-If distribution of executable or object code is made by offering
-access to copy from a designated place, then offering equivalent
-access to copy the source code from the same place counts as
-distribution of the source code, even though third parties are not
-compelled to copy the source along with the object code.
-\f
- 4. You may not copy, modify, sublicense, or distribute the Program
-except as expressly provided under this License. Any attempt
-otherwise to copy, modify, sublicense or distribute the Program is
-void, and will automatically terminate your rights under this License.
-However, parties who have received copies, or rights, from you under
-this License will not have their licenses terminated so long as such
-parties remain in full compliance.
-
- 5. You are not required to accept this License, since you have not
-signed it. However, nothing else grants you permission to modify or
-distribute the Program or its derivative works. These actions are
-prohibited by law if you do not accept this License. Therefore, by
-modifying or distributing the Program (or any work based on the
-Program), you indicate your acceptance of this License to do so, and
-all its terms and conditions for copying, distributing or modifying
-the Program or works based on it.
-
- 6. Each time you redistribute the Program (or any work based on the
-Program), the recipient automatically receives a license from the
-original licensor to copy, distribute or modify the Program subject to
-these terms and conditions. You may not impose any further
-restrictions on the recipients' exercise of the rights granted herein.
-You are not responsible for enforcing compliance by third parties to
-this License.
-
- 7. If, as a consequence of a court judgment or allegation of patent
-infringement or for any other reason (not limited to patent issues),
-conditions are imposed on you (whether by court order, agreement or
-otherwise) that contradict the conditions of this License, they do not
-excuse you from the conditions of this License. If you cannot
-distribute so as to satisfy simultaneously your obligations under this
-License and any other pertinent obligations, then as a consequence you
-may not distribute the Program at all. For example, if a patent
-license would not permit royalty-free redistribution of the Program by
-all those who receive copies directly or indirectly through you, then
-the only way you could satisfy both it and this License would be to
-refrain entirely from distribution of the Program.
-
-If any portion of this section is held invalid or unenforceable under
-any particular circumstance, the balance of the section is intended to
-apply and the section as a whole is intended to apply in other
-circumstances.
-
-It is not the purpose of this section to induce you to infringe any
-patents or other property right claims or to contest validity of any
-such claims; this section has the sole purpose of protecting the
-integrity of the free software distribution system, which is
-implemented by public license practices. Many people have made
-generous contributions to the wide range of software distributed
-through that system in reliance on consistent application of that
-system; it is up to the author/donor to decide if he or she is willing
-to distribute software through any other system and a licensee cannot
-impose that choice.
-
-This section is intended to make thoroughly clear what is believed to
-be a consequence of the rest of this License.
-\f
- 8. If the distribution and/or use of the Program is restricted in
-certain countries either by patents or by copyrighted interfaces, the
-original copyright holder who places the Program under this License
-may add an explicit geographical distribution limitation excluding
-those countries, so that distribution is permitted only in or among
-countries not thus excluded. In such case, this License incorporates
-the limitation as if written in the body of this License.
-
- 9. The Free Software Foundation may publish revised and/or new versions
-of the General Public License from time to time. Such new versions will
-be similar in spirit to the present version, but may differ in detail to
-address new problems or concerns.
-
-Each version is given a distinguishing version number. If the Program
-specifies a version number of this License which applies to it and "any
-later version", you have the option of following the terms and conditions
-either of that version or of any later version published by the Free
-Software Foundation. If the Program does not specify a version number of
-this License, you may choose any version ever published by the Free Software
-Foundation.
-
- 10. If you wish to incorporate parts of the Program into other free
-programs whose distribution conditions are different, write to the author
-to ask for permission. For software which is copyrighted by the Free
-Software Foundation, write to the Free Software Foundation; we sometimes
-make exceptions for this. Our decision will be guided by the two goals
-of preserving the free status of all derivatives of our free software and
-of promoting the sharing and reuse of software generally.
-
- NO WARRANTY
-
- 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
-FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
-OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
-PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
-OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
-TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
-PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
-REPAIR OR CORRECTION.
-
- 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
-WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
-REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
-INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
-OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
-TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
-YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
-PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
-POSSIBILITY OF SUCH DAMAGES.
-
- END OF TERMS AND CONDITIONS
-\f
- Appendix: How to Apply These Terms to Your New Programs
-
- If you develop a new program, and you want it to be of the greatest
-possible use to the public, the best way to achieve this is to make it
-free software which everyone can redistribute and change under these terms.
-
- To do so, attach the following notices to the program. It is safest
-to attach them to the start of each source file to most effectively
-convey the exclusion of warranty; and each file should have at least
-the "copyright" line and a pointer to where the full notice is found.
-
- <one line to give the program's name and a brief idea of what it does.>
- Copyright (C) 19yy <name of author>
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-
-Also add information on how to contact you by electronic and paper mail.
-
-If the program is interactive, make it output a short notice like this
-when it starts in an interactive mode:
-
- Gnomovision version 69, Copyright (C) 19yy name of author
- Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
- This is free software, and you are welcome to redistribute it
- under certain conditions; type `show c' for details.
-
-The hypothetical commands `show w' and `show c' should show the appropriate
-parts of the General Public License. Of course, the commands you use may
-be called something other than `show w' and `show c'; they could even be
-mouse-clicks or menu items--whatever suits your program.
-
-You should also get your employer (if you work as a programmer) or your
-school, if any, to sign a "copyright disclaimer" for the program, if
-necessary. Here is a sample; alter the names:
-
- Yoyodyne, Inc., hereby disclaims all copyright interest in the program
- `Gnomovision' (which makes passes at compilers) written by James Hacker.
-
- <signature of Ty Coon>, 1 April 1989
- Ty Coon, President of Vice
-
-This General Public License does not permit incorporating your program into
-proprietary programs. If your program is a subroutine library, you may
-consider it more useful to permit linking proprietary applications with the
-library. If this is what you want to do, use the GNU Library General
-Public License instead of this License.
+++ /dev/null
-ChangeLog for XBoard/WinBoard
-
-* 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.
-
-* 11/23/2003: Cleaned up some minor problems in cygwin.mak. Thanks to
-Hans Werner Strube for the problem report.
-
-* 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.
-
-* 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.
-
-* 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.
-
-* 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.
-
-* 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.
-
-* 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.
-
-* Modified xboard and winboard makefiles to be able to build the
-project in the new combined directory structure.
-
-* Applied a small security fix to pxboard, from Martin Maeok.
-
-* 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.
-
-* 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.
-
-* 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.
-
-* 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.
-
-* 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.)
-
-* Fixed a bug where FICS-style "wild/0" strings were not parsed as the
-proper wild type. The "/" was not being skipped.
-
-* 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.
-
-* 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.
-
-* 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.
-
-* 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.
-
-* 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.
-
-* 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.
-
-* 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.
-
-* 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
-
-Another small bugfix release.
-
-* Put in a small change from Alexander Mai to allow xboard to build in
-an OS/2 EMX environment.
-
-* 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.
-
-* Put the arguments to rsh/remsh in the right order for better
-portability. Thanks to Michael Kalisz.
-
-* 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.
-
-* 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.
-
-xboard/WinBoard 4.2.5 -- Sat Dec 15 11:42:51 PST 2001
-Tim Mann
-
-* 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.
-
-* 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.
-
-* 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.
-
-* 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.
-
-* 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.
-
-* 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.
-
-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.
-
-* 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.
-
-* 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.
-
-* 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.
-
-* 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.
-
-* 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.
-
-* 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.
-
-* 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.
-
-* 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.
-
-* Changed clock display to show tenths of seconds for 9.9 seconds and
-less, instead of 0.9 seconds and less as before.
-
-* 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.
-
-* 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.
-
-* 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.
-
-* 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.
-
-* 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.
-
-* 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.
-
-* 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.
-
-* 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.
-
-* 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.
-
-* 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.
-
-* 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.
-
-* 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.
-
-* Bugfix: GameEnds would send "exit" to an engine in analyze mode even
-if we did not actually want to leave analyze mode.
-
-* 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.
-
-* 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.
-
-* 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
-
-* Bugfix: The error message "Variant X not supported by gnuchessx"
-formerly could pop up even in -ncp mode.
-
-* Fixed an xboard bug in premove highlighting. If you had
-HighlightLastMove turned on, premoves got highlighted in
-highlightSquareColor (yellow) instead of premoveHighlightColor (red).
-
-* 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.)
-
-* 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.
-
-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.
-
-* 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.
-
-* 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.
-
-* 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.
-
-* Bugfix: "feature done=0" did not work for the second engine; now it does.
-
-xboard/WinBoard 4.2.1 -- Sat Feb 3 19:52:26 PST 2001
-Tim Mann
-
-* 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".
-
-* 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.
-
-* 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.
-
-* 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.)
-
-* 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.
-
-* 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.
-
-* Suppressed "geometry error" debug messages unless -debug flag is given.
-
-* Bugfix: avoid core dump on Solaris with -debug flag, caused by
-passing NULL to a %s format in GameEnds.
-
-* 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.
-
-* 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
-
-* 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.
-
-* 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.
-
-* 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.
-
-* 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.
-
-* Removed the leading alias-suppression character when sending a move
-to ICS, because it seemed to break accuclock on chess.net.
-
-* 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.
-
-* Added tellicsnoalias command to protocol.
-
-* Changed st command in protocol back to old behavior.
-
-* Added done=0 feature to protocol, to lengthen initial timeout.
-
-* Added missing -colorSeek command line option to xboard. (Was
-present in WinBoard.)
-
-* Bug fix: setting feature reuse=0 was not working.
-
-xboard/WinBoard 4.2.0beta -- Sat Dec 16 16:34:56 PST 2000
-Tim Mann
-
-* 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.
-
-* 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.
-
-* 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.
-
-* 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).
-
-* 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.
-
-* 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.
-
-* 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.
-
-* Added new protocol command "setboard <fen>". This is an alternative
-to "edit", used only if the engine says "feature setboard=1".
-
-* 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.
-
-* 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.
-
-* 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.
-
-* Added new protocol command "tellothers". This will do a "whisper" if
-you're on a chess server in Zippy mode, or do nothing otherwise.
-
-* 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.
-
-* We now strip .exe from engine names for "name" command, tags, etc.
-
-* 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.
-
-* Fixed an xboard bug where the [P] button would appear in the
-opposite highlight state from what it should be after being pressed.
-
-* 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.
-
-* 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.
-
-* 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.
-
-* 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.
-
-* 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.
-
-* Fixed a bug in loading games with a comment before the first move.
-
-* Fixed a bug in handling LoadGame (or -lgf) with -td 0.
-
-* 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.
-
-* Fixed a problem where some things in WinBoard's General Options
-dialog box were grayed out at the wrong time.
-
-* 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.
-
-* Fixed the WinBoard bug that sometimes made the console input box
-white-on-white even when not in password-entry mode.
-
-* Small changes to WinBoard to be compilable with the latest Cygwin
-net release (as of 10-16-2000). Thanks to Mark Schoenberg.
-
-* 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.
-
-* Added messages for some common InstallShield errors instead of just
-printing InstallShield's stupid error code numbers.
-
-* 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.
-
-* 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.
-
-xboard/WinBoard 4.1.0 -- Sun Sep 17 17:30:14 PDT 2000
-Tim Mann
-
-* Merged Winboard Plus 4.0.8 from Mark Williams into xboard
- source pool. Status of Winboard Plus features in xboard:
-
- - White pieces now have borders, but the implementation is
- completely different from WinBoard's; see below.
-
- - Options menu not changed, probably won't be.
-
- - 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.
-
- - Premove hooked up and working. No pre-first-move, though.
-
- - ICS Alarm hooked up and working.
-
- - Auto-flip working.
-
- - PGN Training mode hooked up and working.
-
- - Improved menu item enable/disable working.
-
- - Improved >> button working.
-
- - Auto activate board working. I changed this to be optional; you
- might not always want it, especially in Zippy mode.
-
- - Blindfold working.
-
- - Documentation updated.
-
-* Fixed more colorization bugs. Commands like "message foo tells you:
-xxx" and "tell 33 tells you: xxx" will no longer generate bogus
-colorization.
-
-* 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.
-
-* 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.
-
-* 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.
-
-Winboard Plus 4.0.8 -- Sat Aug 5 15:51 PDT 2000
-Mark Williams
-
-* Bugfix release.
-
-* 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.
-
-* "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.
-
-* 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.
-
-*** Merged in the following changes from Tim Mann:
-
-* 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.
-
-* 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.
-
-* 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.
-
-* ICC wild 26 is now recognized as VariantSuicide (the FICS name; ICC
-calls it "giveaway").
-
-* 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.
-
-Winboard Plus 4.0.7 -- Thu May 12 17:57 PDT 2000
-Mark Williams
-
-* New white pieces with black borders.
-
-* Major overhaul to Options menu. New dialogs for setting General Options,
- Board Options, ICS Options, Sounds, Fonts, Colors.
-
-* Clipboard support for PGN game scores and FEN positions.
-
-* Optional ICS Premove with user-specified first moves for White and Black.
-
-* New sound events: ICS Win, ICS Loss, ICS Draw, ICS Unfinished, ICS Alarm.
-
-* New auto-flip option when playing against a chess program.
-
-* Added PGN Training mode.
-
-* Certain menu options now disabled while program is thinking.
-
-* ">>" button now always goes to the end of the game.
-
-* In ICS mode, the board is automatically activated at the start of a
-new game.
-
-4.0.7 -- Sun Mar 5 17:17:49 PST 2000 Tim Mann
-
-* 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
-
-* 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.
-
-* 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.
-
-* 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".
-
-* 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.
-
-* Made move parser accept and ignore nonstandard ep suffix on PGN moves,
-e.g., "exf6ep" or "exf6e.p."
-
-* 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.
-
-* 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.
-
-* 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.
-
-* 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.
-
-* xboard fix: Enter key now closes error popups as in WinBoard.
-Especially nice for the "Exiting: Connection closed by ICS" popup.
-
-4.0.5 -- Tue Dec 7 10:30:40 PST 1999 Tim Mann
-
-* Added missing documentation of SIGTERM usage into engine-intf.html.
-
-* 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.
-
-* 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.
-
-* 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.
-
-4.0.4 -- Fri Dec 3 17:51:27 PST 1999 Tim Mann
-
-* 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.
-
-* 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.
-
-* 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.
-
-* 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.
-
-* We now avoid positioning tops of xboard dialog boxes offscreen.
-
-* 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.
-
-* 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.
-
-* 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.
-
-* Bugfix: "tell 50 foo tells you: bar" no longer gets colored as a
-personal tell; similarly for "...whispers:" and "...kibitzes:".
-
-* WinBoard no longer blanks the message line when you start a new
-move, unless there was an error message there from the previous move.
-
-* 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.
-
-* 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