updated Changelog, NEWS, etc.
[xboard.git] / ChangeLog
index b2ff9aa..c622fd1 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
 ChangeLog for XBoard/WinBoard
 -----------------------------
 
-(latest entries created by git log --no-merges --pretty="%ai %an <%ae>:%n%s%n%n%b" vnew vold)
+(latest entries created by git log --no-merges --pretty="%ai %an <%ae>:%n%s%n%n%b" vlast.. )
+
+
+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
+
+also use a temporary file generated with mktemp instead of a hard coded one
+
+2011-05-07 17:53:10 -0700 Arun Persaud <arun@nubati.net>:
+fixed access rights to winboard language files (644 instead of 655)
+
+2011-05-07 14:55:55 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Import WinBoard language files into git
+
+2011-05-06 23:14:02 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Let Shift+RightClick on PV actually play the PV moves
+
+2011-05-06 18:06:48 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Make book-edit function WB
+
+The tags dialog is used to display the GUI book moves from the current
+position, and will be updated when you step or move to another one.
+The edited move list (with weights) can be written back to the book.
+
+2011-05-07 16:21:25 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix resetting engine options
+
+Not all options were reset, and -needsNonCompliantFEN was 'reset'
+to a completely wrong value, so that bad FENs would be sent.
+
+2011-05-06 18:51:20 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Add -first/secondPgnName option
+
+This option replaces the tidy name of the engine in the PGN player tags
+of engine-engine games. In WinBoard engines can be installed with this
+option through a checkbox in the Load Engine dialog.
+
+2011-05-06 23:31:36 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Let XB generic popup define default file extensions
+
+
+2011-05-06 18:25:38 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Save time-control settings in tourney file
+
+Because parsing the options and storing them in appData is not enough,
+the time-control code setting the internally used parameters from the
+appData info in InitBackend was made into a subroutine, and also caled
+after parsing the tourney file.
+
+2011-05-06 20:40:34 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Put saveGameFile in tournament dialog
+
+
+2011-05-06 19:17:56 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Plug memory leak, filenames relative to installDir
+
+String options are consistently freed now, before assigning a new value
+to them through strdup. The init code now even does use strdup when
+setting defaults. This is important for optionslike -lgf, which are not
+saved in the settings file, and thus are usually left with their
+default. When a dialog to set them then uses free, this causes a crash.
+When setting the defaults uses strdup, ParseArgs can already free them.
+This plugs an important memory leak, as ParseArgs in now called to parse
+the tourney file before every tourney game (twice!), and the lists of
+participants and results in it can be quite long.  Macros are defined in
+common.h to make the code look simpler.
+  Filenames entered through the generic popup are now interpreted
+relative to the WinBoard installation folder, just as the saveGameFile
+already was. The code handling the atter was made into a subroutine for
+this.
+
+2011-05-06 22:02:53 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Add WB new popup prototypes
+
+
+2011-05-06 18:58:08 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Add partcipants at bottom in tourney dialog (WB)
+
+
+2011-05-06 18:56:53 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix range of tourneyType spin WB
+
+
+2011-05-06 18:15:23 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix exit popup in tourney mode
+
+Only the instance finishing the last tourney game will cause a popup
+with final standings. As long as there are still busy games, it exits or
+switches back to idle mode silently.
+
+2011-05-06 18:11:47 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix stopping of match in tourney mode
+
+
+2011-05-06 18:59:26 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Add default extension in file browser
+
+
+2011-05-06 22:37:14 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Improve sizing of comment and tags dialogs
+
+There seems to be a bug in Xaw for the sizing of buttons; they get
+unpredicatble and weird sizes when the size is not explicitly set,
+possibly stretching the initial width of a dialog to rediculous values.
+Sizing back to a remembered value from the settings file then makes
+buttons overlapand text edits shrink to almost nothing. To prevent that
+we now define exlicit sizes for the buttons in tags and comment popups.
+
+2011-05-06 21:00:25 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix generic combobox bug
+
+The patch placing gettext markers was done wrong, setting the
+translated menu text outside the loop, so all entries became the same.
+
+2011-05-07 14:23:12 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix PV walking in analysis mode
+
+ParsePV assumed that the PV would always have been produced by an engin
+thinking about the final position of the game (or the one before it). In
+analysismode, however, the engine can be analysing positions internal to
+the game, and the PV would be considered invalid. This is fixed by
+cutting of the tail off the game (shelving it in variation fashion)
+before starting the PV walk, and reverting afterwards.
+  For this the PushTail and PopTail routines had to be split into an
+'inner' part, doing the pushing and popping, and an outer part, handling
+menu graying and popdowns (which is undesirable in in this application).
+
+2011-05-03 00:24:10 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Lift length-limit on text-edits in WB generic popup
+
+
+2011-05-04 13:53:05 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Lift limitation of text length in generic dialog XB
+
+All string options should now point to allocated memory, as strdup /
+free is consistently used on them. This is OK for values received from
+ParseArgs, but for non-arg intermediate variables that must receive strg
+values, such as in the comment and tags popups, strdup has to be used to
+initialize those.
+
+2011-05-04 14:53:02 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Implement Tournament Options dialog WinBoard
+
+The file browser now can select on extension WB generic dialogs,
+with a default based on the option.max value of the option for which it
+browses. A textBox can be forced to be multiline by putting the number
+of extra lines in option.min.
+
+2011-05-04 15:30:00 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Make option to draw second engine from first list
+
+
+2011-05-03 00:17:47 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix error message on engine load
+
+
+2011-05-04 15:09:33 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Implement Load Engine dialog in WinBoard
+
+The Load Engine dialog is implemented for WinBoard, and is invoked by
+the menu item Engine->Load, which formerly was Install 2nd. Install 1st
+is renamed 'Edit Engine List'. Unlike in XBoard, the dialog has separate
+fields for the engine executale and its parameters.
+  The dialog is implemented by converting the Engine Settings popup into
+a generic dialog generator.
+
+2011-05-04 13:43:06 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Load new logo on engine change WinBoard
+
+Picking the logo for the first engine is made into a subroutine. The
+code for picking the logo of the first engine was made into a subrroutne
+for this. We use the kludge to recognize the engine by its command line
+when starting a new engine process.
+
+2011-05-04 13:36:27 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Allow switching off match mode through menu
+
+The Machine Match menu item is now checkmarked, and no longer grayed
+during a match, and clicking it while a match is running will terminate
+the match after the current game. To not be left with hanging
+checkmarks, the checkmark is already removed duringthe last match game
+(which is logically equivalent to ordinary Two Machines mode anyway).
+
+2011-05-03 00:14:22 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Calculate and display tourney result
+
+
+2011-05-04 18:42:13 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Implement Tournament Manager
+
+New command-line options are added to specify the tourney: -tourneyType
+(-tt), -tourneyCycles (-cy), -participants, -syncAfterRound,
+-syncAfterCycle, -results, to be saved on a -tourneyFile (-tf), but
+otherwise volatile. When a tourneyFile is specified during a match,
+a new routine NextTourneyGame is called from NextMatchGame before every
+game, to decide the pairing, and unload and redefine the engines, when
+needed. The XBoard Match Options dialog can be used to set the options
+and create the tournament file.
+  Actual loading of new engines is done by TwoMachinesEvent, which is
+now modified to also wait for the feature timeout of the first engine.
+Waiting for the matchPause is now also implemented there, after waiting
+for the engines (so they can be started during the pause).
+  Pairings and color assignment is now all done in an absolute
+(non-incremental) way, based on a new global game-number variable
+nextGame, which takes over the function of matchGame in a tourney. The
+latter is now used to count games between the same players, so it can be
+still used to derive the load-file indexes (again in absolute fashion).
+  The next game to play is already picked in GameEnd, so it can be
+decided if there is a game to be scheduled, or if we can terminate.
+
+2011-05-04 15:42:26 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Display note in stead of empty engine-settings dialog XB
+
+
+2011-04-24 18:02:20 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix crash on empty Engine Settings dialog
+
+The generic popup was not foolproof against this.
+
+2011-04-22 12:47:24 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Refactor code for loading games and positions in match
+
+The code in NextMatchGame and MatchEvent was nearly the same,
+(MatchEvent did a little more error checking, but that is never
+harmful), and could be combined. In stead of determining the load index
+incrementally, it is now calculated in an absolute way from the game
+number, so it can be used more easily in tournament mode.
+
+2011-04-21 22:37:56 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Add callback possibility to combobox selection
+
+
+2011-04-24 17:15:23 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Lock game an position file during writing
+
+The use of flock() on the file desctiptor of the opened stream should
+guarantee multiple XBoard instances, saving on the same file, will not
+interleave their PGN games or FEN positions.
+
+2011-04-27 17:05:06 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Remove building rule for parser.c from WB makefiles
+
+
+2011-04-29 16:58:49 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix Engine Settings buttons in WinBoard
+
+This was broken by a leftover statement from debugging the -file/-path
+patch.
+
+2011-05-02 13:38:14 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Implement flock in WinBoard
+
+This system function seems unknown in a MinGW compile, so it is
+implemented with the aid of file byte-range locking, using a lock on the
+first 1024 bytes of the file as a semaphore.
+
+2011-04-29 23:06:43 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix grayout XB Match Options in ICS mode
+
+
+2011-05-03 00:22:40 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Delay loading of second engine until it is used
+
+
+2011-05-02 15:00:03 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix zippy bughouse partner bug
+
+The patchs to subject Zippy messages to coloriation was faulty, because
+there were messages recognized by zippy that were not colorized, and
+such messages would then not be 'read away' after zippy recognition
+(except for the first character). As a result the messages were
+processed over and over again.
+
+2011-05-04 10:59:43 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Silence more rpm warnings
+
+
+2011-05-01 20:33:50 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix warnings XBoard file browser
+
+All the prototypes have been moved to selfile.h, to force uniformity.
+The order of the #include files xstat.h and selfile.h had to be
+swapped, to make sure 'struct stat' is a nown type atthe time of
+prototype declaration. The event handler SFmotionList is considered
+wrong type because of its third argument (XMotionEvent in stead of
+XEvent), and had to be casted to (XtEventHandler) when passed to
+XtAddEventHandler.
+
+2011-05-04 10:56:05 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix some warnings and header-file improvement
+
+Ther were lot of 'extern' declarations in the x-files, so called
+'imports from xboard.c', (sometimes backend.c) which logically belonged
+in xboard.h (backend.h) to ensure their uniform definition. These have
+now been moved there. Some prototypes have been added in xboard.h as
+well, for functions that needed calling from xoptions.c.
+
+2011-05-04 10:50:12 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Create conversion tools for language files
+
+A shell script "lng2po.sh" is provided, to apply the translation given
+in a WinBoard .lng file to "xboard.pot", in order to generate a
+"language.po" file containing translations for all strings for which
+the .lng file had a translation. It makes use of a file "metascript",
+which is the ed script used to turn the .lng file in an ed script to
+turn the .pot into .po. For example, the command "./lng2po.sh
+espa?ol.lng" will create a file "language.po", which can be renamed to
+"es.po".
+****************************** WARNING ********************************
+  Note that the lng2po script does a "recode" that assumes the given
+.lng file is encoded in latin-1. This means it canot be used without
+modification for the Vietnamese and Chinese translation; you would have
+to replace latin-1 by the applicable encoding first (CP1258 / BG2312 /
+BIG5).
+
+2011-04-27 22:04:38 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Put gettext markers in generic dialog creator
+
+This is done by adding extra XtNstring argumentsto the widget gcreaton,
+so the displayed name can be different fromthe widget name.
+
+2011-05-01 19:56:38 -0700 Tim Mann <tim@tim-mann.org>:
+Use getaddrinfo instead of gethostbyname.  Hopefully this makes us compatible with IPv6 and with hosts that have more than one IP address.  However, I don't know of any chess servers that have either of those properties, so I couldn't test that.  I did test that xboard still works with freechess.org and chessclub.com and that it gives an error message for invalid host names.
+
+
+2011-04-24 11:18:28 -0700 Arun Persaud <arun@nubati.net>:
+updated German translation
+
+
+2011-04-24 11:17:43 -0700 Arun Persaud <arun@nubati.net>:
+replaced hardcoded email address with generic PACKAGE_BUGREPORT
+
+
+2011-04-23 10:51:57 -0700 Arun Persaud <arun@nubati.net>:
+updated po-files; updated german translation
+
+
+2011-04-23 10:51:02 -0700 Arun Persaud <arun@nubati.net>:
+updated list of files that include translation strings; updated pot-file
+
+
+2011-04-22 21:50:58 -0700 Arun Persaud <arun@nubati.net>:
+marked more strings for gettext that were only marked with N_()
+
+they need to be marked again with _() when they are used to get the translated string
+
+2011-04-22 21:39:22 -0700 Arun Persaud <arun@nubati.net>:
+updated translation files
+
+
+2011-04-22 21:37:22 -0700 Arun Persaud <arun@nubati.net>:
+added/fixed i18n support via gettext to xboard
+
+this was already added a long time ago, but now it's added again to
+autoconf. Also fixed some compile errors that showed up.
+
+2011-04-20 10:27:20 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Make engine startup error non-fatal
+
+When engine startup fails, do not generate a fatal error, but swicth
+back to -ncp mode. Write on broken pipe errors had to be suppressed for
+this.
+
+2011-04-20 14:35:50 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Make engine loadable during session
+
+A "Load Engine ..." menu item is added to the Engine menu, which pops
+up a dialog where one can replace the first or second engine by a new
+one, without destroying the game state. Switching from -ncp to engine
+mode needed activation of some menu items in SetGNUMode, and
+re-enabling clockMode. It was also important that noChessProgram is
+cleared before re-initializing the ChessProgramState.
+  The Load-Engine dialog can select from the list of installed
+engines, and also add a newly specified engine to this list. In this
+case it saves the directory, hasBook, and isUCI info with the engine,
+and optionally the current variant. When loading an engine with a
+specified variant, it resets the game and switches to the new variant.
+
+2011-04-18 15:56:47 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Generalize WaitForSecond to WaitForEngine
+
+
+2011-04-18 15:46:12 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Add UnloadEngine routine
+
+
+2011-04-20 13:45:51 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Put engine initialization code in per-engine function
+
+Initializing of the ChessProgramStates first and second from the
+option settings in appData is now done by separate calls to the same
+routine. Clearing of options is added to the initialization. This is
+needed when reloading an engine. This is done in a separate routine,
+which could also be called on -reset options.
+
+2011-04-18 13:21:44 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Bring structure in appData engine options
+
+All options in appData that came in pairs for both engines are replaced
+by arrays of ENGINES (=2, for now) elements. The use of the named
+appData field that are replaced in the source is replaced by use of the
+corresponding array element, by #define directives in common.h, awaiting
+their replacement.
+
+2011-04-19 15:15:48 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix gettext macros in option dialogs
+
+The strings in the tables were using _() in stead of N_().
+
+2011-04-18 20:58:01 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix crash on using Engine #1 Settings in ICS non-zippy mode
+
+If XBoard is compiled with zippy the Engine #1 Settings menu was not
+grayed out even when you don't run in zippy mode, and using it would
+then crash XBoard.
+
+2011-04-19 15:07:31 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix shogipixmaps
+
+Some pixmaps forptomoted pieces had wrong background color, others had a
+wrong name (so the one with the correct name was missing).
+
+2011-04-17 19:12:00 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Change texture-install directory to pixmaps/textures
+
+
+2011-04-17 17:36:32 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Limit install of sound files to those in menu
+
+The sounds directory is set to .../xboard/sounds, and only ten
+sounds are kept (all non-spoken).
+
+2011-04-17 17:27:57 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Remove some bitmaps from install
+
+Some files in the bitmaps source directory need not be installed,
+because they are there only to be linked to the binary in a build
+without LIBXPM, are README files or conversion programs. I left only the
+stuff that is in a Debian binary package in .../xboard/bitmaps.xchess.
+
+2011-04-17 16:34:03 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Configure some default sounds
+
+The move sound is set to Wood Thunk; the sounds for tell and challenge
+events to Phone and Gong, respectively.
+
+2011-04-17 16:17:30 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Change default sounds in Xboard menu
+
+All spoken sounds are removed now. Thud, Click and Ching are replaced by
+Wood Thunk, Slap and Cymbal; Car Horn and Pop are added.
+
+2011-04-17 12:46:47 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Make user wav file available for try-out in sound dialog
+
+The GenericReadout was adapted to be able to read a single selected
+value, so that the callback to the 'play' button in the sounds dialog
+could get the name of the 'user WAV file' without accepting all settings
+for the other sounds (which should only happen on 'OK', and might still
+be cancelled in stead).
+
+2011-04-16 10:36:31 -0700 Arun Persaud <apersaud@lbl.gov>:
+configure: enable silent rules by default
+
+
+2011-04-16 10:28:16 -0700 Arun Persaud <apersaud@lbl.gov>:
+configure: added install directory for bitmaps files: .../games/xboard/bitmaps/default/
+
+
+2011-04-16 10:25:33 -0700 Arun Persaud <apersaud@lbl.gov>:
+configure: added install of sounds in .../games/xboard/sounds/default
+
+
+2011-04-16 09:54:26 -0700 Arun Persaud <apersaud@lbl.gov>:
+configure: renamed bitmapdir to pixmapsdir, since it installed only pixmaps. also changed name of default dir
+
+pixmaps will now be installed under .../games/xboard/pixmaps/default/
+
+2011-04-16 13:40:16 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix gamelist highlight
+
+Reopening the gamelist should highlight the current game.
+
+2011-04-16 10:25:53 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix size limit on 'save as diagram'
+
+In stead of a fixed-size buffer the diagram-save code now uses an
+allocated buffer with size calculated from the bitmap parameters to
+retreive the bitmap data, so it should work for all sizes.
+
+2011-04-15 22:04:03 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix chaining of bottom-row dialog buttons
+
+The OK & cancel buttons are chained to the bottom. This patch makes sure
+that other buttons appearing in the same row (as in the tags and
+comment dialogs) will be chained that way too, so that they will behave
+the same on vertical sizing. The bottom of a full-width text-edit above
+it will be chained to bottom too. To make this work in the tags dialog,
+the (optional) cmail-message field had to be put above the tags memo.
+
+2011-04-15 19:18:46 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix switching between pixmap and bitmap pieces
+
+There were still several flags that had to be reset when redoing the
+graphics initialization. The Debian patch to use a default bitmap
+directory when none is given but monoMode is selected or forced, is
+moved to a more sensible place, so that it does not disturb matters when
+compiled without LIBXPM (when we do have built-in bitmaps).
+
+2011-04-15 15:47:09 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Remove outline-pieces option from board-options dialog
+
+This option does not exist in XBoard (yet).
+
+2011-04-15 15:41:38 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix running of clock during hash allocation engine
+
+In TwoMachinesEvent we now wait for the second engine to acknowledge the
+'ping' after 'new', to make sure it is done allocating hash in reaction
+to the preceding 'memory' command, before the clock for the game is
+started.
+
+2011-04-14 21:42:50 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Describe move type-in in texi file
+
+
+2011-04-14 20:34:42 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Describe Copy Game List menu item in texi file
+
+
+2011-04-14 20:30:16 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Describe -sweepPromotions in texi file
+
+The new method for selection promotion piece, and the -sweepPromotions
+option are described in the texi file.
+
+2011-04-14 20:14:44 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Describe -pieceMenu option in texi file
+
+The sweep method for selecting a piece in Edit-Position mode is
+explained, as well as the -pieceMenu option.
+
+2011-04-14 15:59:57 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Update texi file
+
+Descriptions of the new XBoard menu dialogs are included in the docs.
+
+2011-04-14 21:06:49 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Reorganize texi description
+
+
+2011-04-14 12:31:15 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix sweep-promotions patch
+
+Setting of the from square was moved to before OKtoStartUserMove in the
+LeftClick handler, to make sure we could test the promotion possiblity
+when OnlyMove() would have altered (x,y) to be no longer the from
+square. But this setting of fromX, fromY hung on also if the move was
+not OK, so you could effectively select opponent pieces and empty
+squares. The from-square is now set back to undefined when it is not OK
+to move the piece you clicked.
+
+2011-04-14 11:56:59 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Alter treatment of moves with empty squares
+
+In Edit Position mode one can move empty squares, and use them to
+'capture' pieces as a means to clear their square. But this often leads
+to unintended disappearence of pieces one wants to grab for dragging, if
+a previous click had inadvertantly left an empty square selected: the
+click on the piece is then seen as the to-click of a click-click move.
+  This patch treats to-clicks of moves with an empty-square differently
+from other to-clicks: Rather than performing the move (in this case
+clearing of the to-square) on the down-click, it defers that to the
+up-click, and only does it if that up-click is in the same square. This
+allows the user to grab the piece on the down-click, and drag it to
+another square, if that is what he wanted to do, without being disturbed
+by sudden implosion of the piece he tried to grab.
+  If the to-square is in the holdings, grabbing the piece is the only
+action, as moves of empty squares into the holdings are forbidden anyway.
+
+2011-04-13 13:14:00 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Block selection of a directory when file is needed
+
+When we are not browsing merely to obtain a name to put in a text edit,
+but really must return an open file pointer, selection of a directory
+(ending in '/') can no longer be OK'ed in the file browser. (XBoard
+tends to segfault when offered garbage for game or position file...)
+
+2011-04-13 12:23:00 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Let double-click select file in file browser
+
+A second click on the already selected entry now has the same effect as
+pressing the OK button.
+
+2011-04-12 17:06:28 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Couple mouse wheel to v-scrolls in file browser
+
+A newly added mouse-wheel event handler was made to call the v-scroll
+callback routines with parameters to step one entry. The button-press
+handler for the lists themselves was also made to intercept the wheel
+events (buttons 4 and 5), to prevent they would select an entry, and
+make them scroll in stead as well.
+
+2011-04-13 11:41:54 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix crash copying game list when there is none
+
+
+2011-04-13 11:15:14 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix changing of float setting by generic popup
+
+Changing a float setting (so far the only one is in the Load Options
+dalog) did not always work, because the old value was clipped to (int),
+so that changing it back to an integer value might erroneously conclude
+there was no change.
+
+2011-04-13 16:15:22 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix crash on closing dialogs in wrong order
+
+When a menu dialog was closed when it still had an open file-browse
+daughter, which could be done through the system menu X on the title
+bar, later closing of the file browser caused a crash. This is solved by
+keeping track of the fact that there is such a daughter through a global
+flag, and ignoring the pop-down command if there is one.
+
+2011-04-13 16:33:16 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix startup focus of board window
+
+When there were open auxiliary windows, these would have focus on
+starting up XBoard. The XtSetKeyboardFocus call added in XBoard main()
+was ineffective in curing that. It has now been replaced by a call to
+XSetInputFocus, which does do the job. By giving input focus to the form
+widget, rather than the board widget, XBoard will be immediately
+sensitive to all key bindings.
+
+2011-04-13 15:48:35 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix game-list highight error when filtered (WB)
+
+When the gamelist was filtered, the game that was highlingted was the
+n-th game in the list rather than the n-th game in the file, when the
+latter was loaded (and n did not exceed the number of filtered games).
+This is fixed now by searching for the line in the listbox that starts
+with the game number n, rather than taking the n-th line.
+
+2011-04-12 19:20:46 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Refactor move type-in code
+
+Common code between XBoard and WinBoard was moved to the back-end
+creating TypeInEvent() and TypeInDoneEvent() routines.
+
+2011-04-12 10:13:40 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix saving of XBoard fonts with spaces in name
+
+SaveFontArg now prints quotes around the saved font string, so that the
+general option-argument parser doesnot stop at the first space it sees.
+
+2011-04-11 20:48:24 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Implement move type-in for XBoard
+
+By adding an event handler to the main window for key presses, users can
+now type moves when the board has focus, like in WinBoard. The typed
+character appears as first character in the type-in box that willpop up.
+Enter and Escape close the box; finishing the typing of the move enters
+it. Like in WinBoard it is also possible to type a move number (to go
+there) or (in Edit Position mode) a FEN.
+
+2011-04-11 20:59:44 -0700 Arun Persaud <apersaud@lbl.gov>:
+new developer release
+
+tried to keep the v4.5.x branch developed already separated in the NEWS file, as well as DIFFSTAT and SHORTLOG.
+The Changelog is just the one from master.
+
+2011-04-10 22:47:59 -0700 Arun Persaud <apersaud@lbl.gov>:
+updated Changelog, NEWS, etc.
+
+2011-04-10 20:32:57 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix use of game/position file in first match game
+
+When a match was started from the menu, it was not paying attention to
+game and position files. (Later games were.) The code that handled this
+in the initialization when a match is started through the command line
+was made into a routine MatchEvent, which can be called from the menu
+proc too.
+
+2011-04-09 20:55:47 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix crash on opening ICS Text Menu
+
+The patch for the color defaults had broken the ICS Text Menu.
+
+2011-04-09 19:22:00 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Implement Copy Game List menu item for XBoard
+
+Some WinBoard code was cloned for this.
+
+2011-04-09 11:42:21 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Third method of sweep selection
+
+This method sweeps through the possible promotion choices for the piece
+that is being dragged, as long as you drag a 7th-rank Pawn backwards. On
+draggin such a Pawn forwards, it immediately shows it as the piece you
+are going to promote to.
+
+2011-04-08 23:39:10 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Alternative sweep promotions
+
+The sweep takes place on the from-square here.
+
+2011-04-07 23:21:02 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Make sweep-select promotions work in WinBoard
+
+The mouse-move handler had to be connected to the PromoScroll back-end
+routine.
+
+2011-04-07 23:19:10 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix path browsing in WinBoard
+
+The routine BrowseForFolder was still declared as static in woptions.c,
+while it was used from wsettings.c.
+
+2011-04-07 11:14:45 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fixes to sweep selection
+
+
+2011-04-06 23:47:58 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Implement sweep selection of promotion piece
+
+When the option -sweepPromotions is true, a click-click promotion move
+will first display the default choice (usually Queen) on the promotion
+square. While you have the mouse button still down, you can change the
+piece by moving the mouse vertically.
+
+2011-04-06 21:20:30 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Implement sweep selection as alternative for the piece menu
+
+When the option -pieceMenu is off, the piece menu will no longer appear
+on right-clicks in Edit Position mode. In stead a Pawn of the chosen
+color will appear immediately in the clicked square, and vertical
+movement of the mouse with the right button down will cycle through
+all other pieces defined in the pieceToCharTable of the current variant.
+  Setting the side to move is acheived by clicking the correspondig
+clock. Clear board can be effected by clicking the clock of the side
+that already has the move.
+
+2011-03-30 18:17:58 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Remember Tags and Comment dialog coordinates
+
+The save-settings code now uses the shell and shellUp arrays from the
+GenericPopUp to read out the window coordinates for Tags and Comment
+window. Pointers used by GenericPopUp are set topoint to the
+corresponding WindowPlacement structs.
+
+2011-03-10 19:21:59 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Redo Tags dialog
+
+The generic popup is used for generating the Tags / EditTags popups.
+The tags popup use a 'label' field to display the cmail message
+
+2011-04-01 13:43:52 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Implement Edit-Comment window through generic popup
+
+The Edit Comment and Comment popups are combined into one, that can
+always be edited (similar to WinBoard). It uses shell number 1.
+(Number 0 is for all transient dialogs.) A save-changes button is added.
+The positioning is not implemented yet.
+
+2011-04-06 10:56:57 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Refinements to generic popup and color picker
+
+*) The text part of a checkbox can now be clicked to toggle the option.
+*) Typing <Enter> in single-line text edits is ignored
+*) Using a spin button now sets focus to the affected text edit, with
+the insert position at the end.
+*) Using the sample field or an RGB button sets focus to the
+corresponding text edit, with the insert position at the end.
+*) The adjust buttons now work in reverse, with a D button for "darker".
+*) Editing a color field causes the sample field to update to the new
+color when you type <Enter>.
+*) The color pickers now define a default color, which can be instated
+by clicking on the sample field.
+*) Fix some 64-bit pointer warnings
+
+2011-04-05 17:05:39 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Let file browser filter on extension
+
+A new text field is added in the file-browse dialog, to hold (space-
+separated) extensions, on which the filenames are then filtered. This
+field is initialized by the caller, depending on what we need the file
+for, but can be changed by the user. (Directories are always displayed!)
+  Changes in the extension field  become effective after typing a return
+in it. Escape typed in the extension field gives focus to the filename
+field, and restores the contents. Escape in the filename field cancels
+the dialog, return ther OKs it. The extension filter of the browser is
+initialized to the extension (if any) of the file currently in the text
+edit you are browsing for.
+  When re-opening the file browser from the XBoard File menu, and there
+is no suggested filename, it will now start with the last succesfully
+opened name as suggestion. Calling the browser with a NULL argument
+for the suggested filename requests that (unlike calling with an empty
+string, which will start it in the current directory). To make this
+work smoothly, the filebrowser saves the last used name on entry, so it
+can be restored on cancel, so that a cancelled browse session really
+erases all memory of it.
+
+2011-04-04 19:26:53 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix animation masks on changing piece pixmaps
+
+The animation masks were not remade when new pieces were loaded
+interactively through the board-options dialog.
+
+2011-04-04 19:09:21 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix linegap option in board dialog
+
+The lineGC was not recalculated, so the grid lines stayed the same
+thickness. In addition, setting the line-gap override to -1 now
+retrieves the original line gap that belongs to the current board size.
+
+2011-03-05 23:27:48 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Make a kind of ICS text menu in XBoard as a dialog
+
+The dialog with buttons can be opened from the View menu. It is
+configured by the option -icsMenu; a default setting for this is
+included in the master settings file.
+  The commands specified by the -icsMenu can now contain $name and $input
+keywords, which will be replaced by the current primary selection, or
+text the user types, respectively. Commands that contain $name will not
+be sent when the current selection is empty. Commands that do not
+contain $input will be sent to the ICS immediately; otherwise they will
+be placed in the ICS Input Box, with the cursor at the point of the
+$input, and input focus given to the Input Box, so the user can start
+typing. When a command is prefixed by "$add " it will be appended to the
+existing ICS Input Box contents, rather than replace it.
+  The items now have to be separated by ";\n", and button text from
+command by ';' (with optional linefeed). This allows configuring of
+multi-line commands, as a single linefeed no longer has special
+sigificance.
+
+2011-03-31 13:36:05 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Redo ICS input box with generic popup
+
+This box is just a single text edit, but the complexity is in the added
+callbacks. These callbacks remain in xboard.c, and were altered to
+access the edit through the option.handle field.
+
+2011-04-03 12:54:51 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Activate -path and -file options
+
+In XBoard the generic popup was prepared for this. In WinBoard, for
+-path options the BrowseFolder routine is used, and had to be made
+global (prototype in winboard.h).
+
+2011-04-02 18:40:33 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Let generic popup generate Engine Settings dialog
+
+
+2011-04-02 18:36:09 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Merge SettingsPopUp into GenericPopUp
+
+Based on currentCps the values read from the dialog are sent to the
+engine, or stored into the option.target in the callback, and fetched
+from the option.target in the PopUp. The currentCps is cleared in the
+generic popdown of a transient dialog.
+
+2011-03-06 10:11:06 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Make generic dialog popup reentrant
+
+To allow persistent dialogs to be implemented through the generic popup,
+it must be possible to have several dialogs open at the same time, and
+thus make sure the popdowns under the cacel or close-window button know
+which one to pop down. To this end an array shells[] is created that
+takes over the function of settingsShell, and GenericPopUp gets an extra
+parameter telling it which element to use for storing the dialog shell.
+This number is then also passed to the callbacks that trigger popdown.
+This was a bit nasty for the CatchDeleteWindow stuff, which passes user
+data to the callback as text strings.
+Keep a separate up/down indicator, so that shell widgets can be kept
+for persistent dialogs. Also keep a currentOption per dialog type.
+  The coordinates and size of the window is read out and stored in a
+WindowPlacement structure, (if one is specified for that dialog), when
+the dialog is popped down. When initialized the structure is also used
+to set the window parameters when the dialog is created. (The idea being
+that the structure was saved in the settings file.)
+  The routine MarkMenu checkmarks a given menu item, and logs it for the
+given dialog type, so that a later popdown automatically unchecks is.
+
+2011-02-25 12:14:25 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Implement Machine Match menu item and options dialog
+
+An item to start a match from the menu is added, similar to what
+WinBoard has. (The code is duplicated, so I guess it should be moved to
+the back-end now, as MachineMatchEvent(), but it was tiny.) A dialog in
+the Options menu was added with the aid of the generic popup, and allows
+the user to set the load Game / Position File and Index.
+
+2011-04-01 14:54:26 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Create General-Options dialog
+
+The generic popup is used to implement a General-Options dialog, which
+contains all Boolaen options that used to be set directly from the main
+Options menu, plus a spin option for the flash count and flash rate.
+The corresponing options are removed from the main Options menu, but the
+whole thing is made conditional on a compiler switch OPTIONSDIALOG.
+The dialog needs an OK callback for sending an altered ponder-state to
+the engine. (Why isn't this option disabled in -ncp mode, btw?)
+A spin control is added to adjust -animateSpeed between 5 and 100.
+Add dropMenu and showTargetSquares item as well.
+
+2011-04-01 18:16:47 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Redo new-variant dialog with generic popup
+
+Some special code was added in GenericPopUp() to force buttons of the
+type needed in the New Variant dialog (wide, colored, greyed-out on
+variant type). The dialog was implemented with these, and callbacks for
+the buttons directly exit the dialog, without the need for OK. New spin
+controls are added to the dialog for adjusting the board format.
+
+2011-04-01 14:48:48 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Redo common-engine dialog with generic popup
+
+The ponder option was removed, as it is already in the main Options
+menu, and would require nastiness in the OK callback. Added book options
+in common-engine dialog.
+
+2011-02-24 13:32:01 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Redo adjudications dialog through generic popup
+
+We dropped the periodic-updates option, as it is already in the main
+Option menu.
+
+2011-04-01 21:56:07 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Make sounds dialog for XBoard
+
+This uses the combo boxes. A 'play' button isimplemented for a test
+sound. A sound directory is introduced, and can be set through the
+dialog. A default setting for -soundDirectory is added to xboard.conf.
+
+2011-04-01 23:11:29 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Add ICS options dialog
+
+
+2011-04-01 21:52:48 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Add board dialog XBoard
+
+The GenericPopUp() is used to implement a dialog for board options. The
+board dialog needs to trigger redraw and redefinition of the
+colors, through an OK callback. Color-pickers are used for the 6 basic
+color settings.
+  To allow changing board settings during the session (i.e. from a menu
+dialog), the routines to allocate resources have to free the resources
+for the previous settings first. This patch take care of XtCreateGCs(),
+preventing re-creation of resources that are unchangeable (such as the
+grid color), and calling XtReleastGC() on GCs that can be changed.
+To prevent resource leaks the old pixmaps are deleted before making new
+ones on second or later calls of CreateXPMPieces().
+
+2011-04-03 11:39:26 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Add browse button to generic popup
+
+Options of type FileName and PathName cause a browse button to be added
+behind the text field. The SpinCallback is used to handle the
+button presses, and invokes the file browser dialog to obtain a
+filename, which is then copied to the text field.
+
+2011-04-01 21:49:26 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Make generic XBoard popup, and implement 2 dialogs
+
+The Engine-Settings dialog of XBoard was cloned to work on predefined
+lists of (XBoard) options, rather than engine options. An extra field
+was added to the Option struct, to hold a pointer to the XBoard variable
+that should hold the option setting, so on OK'ing the dialog the altered
+values can be copied there. Not usable for options which should trigger
+an action (like redraw, or sending something to the engine).
+A Load Game, Save Game and ICS Options dialog were then defined by
+tables fed to GenericPopUp(). Options set from these dialogs were removed
+from the main Option menu, which removes a lot of code from xboard.c
+(for checkmarking, disabling the menu items).
+  A button defined in the GenericPopUp can attain the color indicated
+by a previous text field, and add a callback to change the color in a
+spin-like manner (but using R G B W in stead of + - butons).
+The EndMark option can specify a callback, to be used on OK.
+A non-zero max field in the Option descriptor will be used to set the
+width of ComboBox, TextBox and Button optons.
+The elements are chained such that extra space goes fully into the input
+fields. A label type is added for clarifying texts that would not fit in
+the option names. A break-type (pseudo-)option is added. Make OK and
+cancel button suppressable in generic popup (by 2 bit of the option.min
+field).
+
+2011-04-03 11:34:21 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Add file-browser option to just return name
+
+By passing mode "f" the file browser dialog will not open the selected
+file at all, so it can be used to retreive the name for the benefit of a
+file-browser button to a -file option. A mode "p" will limit the
+selection to directories only, to browse for a path.
+
+2011-04-03 13:15:17 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Put insertion point at end of text on SetFocus
+
+
+2011-04-05 23:47:34 -0700 Arun Persaud <apersaud@lbl.gov>:
+fixed 64 bit warnings by casting integers to intptr_t before casting to int
+
+
+2011-04-05 23:24:24 -0700 Arun Persaud <apersaud@lbl.gov>:
+removed check and #includes for malloc.h, since it's not needed
+
+hopefully this doesn't break things on non-linux systems. OS X seems to be ok, not sure about others ;)
+
+2011-04-03 20:23:49 -0700 Arun Persaud <apersaud@lbl.gov>:
+check if malloc.h is present before including it
+
+OS X 10.6 doesn't have malloc.h, so it complained.
+
+2011-04-03 20:01:36 -0700 Arun Persaud <apersaud@lbl.gov>:
+Fix bug introduced in commit 89b4744: removed a "/" and forgot to add it in the config file
+
+removed a "/" to make OS X happy, but forgot to add the "/" again in the xboard.conf.in file
+
+2011-03-12 14:08:50 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix display of promotion piece in ICS superchess
+
+In Great Shatranj and Superchess promoted Pawns were displayed as shadow
+piece because these variants had holdings, while captured pieces should
+go back into the holdings unchanged, rather than reverted to Pawns.
+
+2011-03-13 14:09:14 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix o-o castling in new parser
+
+The non-compliant notation of castling with lower-case 'o' should be
+preferred over the non-compliant interpretation of moving a Pawn along
+the o-file. Not doing so breaks ICS play, as ICS use o-o and o-o-o for
+castling! So an exception is now made for the o-file in the 'fxg'
+case.
+
+2011-03-10 19:27:41 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Implement yynewstr entry point in new parser
+
+This entry point, used for parsing an ICS move list, was forgotten, and
+was still an empty routine. This made XBoard crash when observing an ICS
+game.
+
+2011-03-07 23:11:00 -0800 Arun Persaud <apersaud@lbl.gov>:
+fixed wrong default for polyglotDir mentioned in docs.
+
+Thanks to Hans Aberg for reporting it.
+
+2011-03-05 12:39:01 -0800 Arun Persaud <apersaud@lbl.gov>:
+Fix "make install" on Os X10.6.6 (removed a "/")
+
+seems like an extra "/" made "make install" unhappy
+
+2011-03-03 21:19:05 -0800 Arun Persaud <apersaud@lbl.gov>:
+removed parser.l from build process, also removed flex dependency from configure
+
+
+2011-03-02 22:14:57 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+New parser, written in C
+
+A new parser was written to replace the flex-generated one. Immediate
+improvements are that it understand double-digit rank numbers, and Shogi
+coordinates. No changes were made in the Makefile yet to reflect the
+new, flexless building procedure.
+
+2011-03-02 22:23:21 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix bugs in FRC castling rights
+
+When parsing a castling move in FRC when no rights existed, the parser
+returned 0 (= EndOfFile) rather than ImpossibleMove. The recognition of
+the absence of rights was not adapted to the new encoding NoRights in
+stead of -1.
+
+2011-03-01 23:42:34 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix parsing bug of FRC castling
+
+The code that was supposed to intercept castling when no rights existed
+in FRC was not adapted to the new encoding for this by NoRights, rather
+than -1, and furthermore returned 0 (= EndOfFile) rather than
+ImpossibleMove. Not sure if the former would manifest itself in any
+way, but the latter seems bad.
+
+2011-03-01 23:32:25 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix two bugs in reading position diagram
+
+When reading a game without FEN tag, a position diagram is used to set
+the initial position. This calls CharToPiece() with a '.' as argument,
+because that is the position-diagram way to indicate empty squares.
+altered CharToPiece() over time this would be recognized as the first
+undefined piece or, more recently, the first piece without nickName,
+which is a white Pawn. Now it returns EmptySquare again in that case.
+A second problem was that for position diagrams in braces the brace was
+not in the list of ignored characters, and would cause the reading to
+get out of phase, so that the side to move was not recognized.
+
+2011-02-26 21:12:08 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix flipBlack option XBoard with board texture
+
+In XBoard -flipBlack is implemented by swapping white and black pieces,
+because the Shogi bitmaps from XShogi are made that way. But the mask
+used to cut out the whole in the board texture to fit the piece was not
+swapped, both when drawing static pieces, as well as during animation.
+
+2011-02-25 14:38:21 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Improve repairing damage of arrow highlight XBoard
+
+With line gap the highlight arrow necessitated redrawing of the entire
+board, to repair damage on the grid. This interfered with flashing of
+pieces, which was only done on selective redraws. In stead of forcing a
+total repaint we now just redraw the grid lines.
+
+2011-02-23 16:41:36 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix unintended translation in debug file
+
+The words "first" and "second" (cps->which) were sometimes used in
+context that should definitely not be translated. (e.g. the indicator
+for which engine printed/got the line in the debug file.) So translation
+is now deferred to all uses in popups.
+
+2011-02-23 16:29:12 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix nps bug
+
+The nps settingwas tested for being > 0 in stead of >=0, so that the
+case of CPU time was not properly handled.
+
+2011-02-24 19:06:27 +0100 Kamil Blank <caceel@gmail.com>:
+Added missing fclose()
+
+(tiny change)
+Signed-off-by: Arun Persaud <apersaud@lbl.gov>
+
+2011-02-20 16:12:19 -0800 Arun Persaud <apersaud@lbl.gov>:
+release of version 4.5.1
+
+2011-02-20 16:10:16 -0800 Arun Persaud <apersaud@lbl.gov>:
+updated Changelog, NEWS, etc.
+
+2011-02-20 20:36:28 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix two typos in option names in texi file
+
+Polyglot was capitalyzed
+
+2011-02-20 00:03:19 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix some resource leaks
+
+Some files were opened not closed in XBoard, when loading XIM images
+(which I doubt anyone ever does) but also when copying the clipboard
+(which has the potential of being done very often). There was also some
+code that would not work if conditional code which is permanently
+disabled would be enabled.
+
+2011-02-17 20:17:04 -0800 Arun Persaud <apersaud@lbl.gov>:
+new developer release
+
+2011-02-17 20:14:38 -0800 Arun Persaud <apersaud@lbl.gov>:
+updated Changelog, NEWS, etc.
+
+2011-02-17 15:40:02 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix MSVC snprintf problem
+
+In MSVC snprintf has to be redefined as _snprintf, and this happens
+conditionally in config.c. But the latter was not #included in help.c.
+
+2011-02-16 19:41:27 -0800 Arun Persaud <apersaud@lbl.gov>:
+updated configure.ac to check for Xaw header files
+
+check for Xaw header files when --without-Xaw3d was given. Before the test was
+only done when Xaw3d was specified, but could not be found.
+
+If Xaw3d or Xaw can't be found, print a hopefully useful error message and exit the configure script.
+
+2011-02-16 12:03:22 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix ICS channel 0
+
+Channel 0 messages were not displayed in the console, because the test
+for channel number considered every non-numeric or non-existent handle
+in a chatbox to be zero. So the messages were diverted to a non-exsting
+chatbox. Now it test first for the handle to start with a digit.
+
+2011-02-15 19:13:33 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Make language choice from menu persistent
+
+Set appData.language to the chosen language file, or empty if English is
+chosen, so that the choice is saved with the settings. Increase the
+number of possible language choices from 5 to 20. (After all, we already
+have 7 now!)
+
+2011-02-14 11:09:24 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix showing of user move after adjudication
+
+The correction of the fishy patch (removing ShowMove() from Adjudicate())
+had broken the adjudication of user moves (that actually did work before
+the fishy patch, because there the gobal fromX/Y and toX/Y do contain
+the correct values for the move to be shown). An entered move that led
+to adjudication (like a checkmate) now was not displayed at all. Adding
+an extra ShowMove() after (successful) return of Adudicate() solves it.
+
+2011-02-13 23:49:44 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix Xiangqi King facing
+
+The Spartan patch had broken the CheckTest for Xiangqi, because cl.check
+was cleared after the King-facing test, rather than before it.
+
+2011-02-13 22:30:59 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix variant janus size prefix
+
+The default board size of Janus Chess was not consistently taken to be
+10x8, which resulted the name to be sent as 10x8+0_janus to the engine.
+
+2011-02-13 12:18:52 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix Alfil bug
+
+The test for Alfil (suppressing single steps on the Elephant) contained
+a wrong logical operator, so that it could never be active. It also
+failed to include Xiangqi as variant with traditional Alfil. This led to
+one-step moves of the Elephant in these variants, and false check or
+unreliable mate detections.
+
+Fix move of Xiangqi Elephant
+
+2011-02-09 23:19:09 -0800 Arun Persaud <apersaud@lbl.gov>:
+fixed configure script to correctly detect Xaw3d library
+
+
+2011-02-06 22:07:17 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix unmarked translation
+
+The file-browser wndowtitle in WB was not marked for translation.
+
+2011-02-04 10:27:49 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Put warning in HTML help
+
+A warning is added that the help file is not yet updated for the new
+menu organzation.
+
+2011-02-04 10:22:29 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix 64-bit Windows compilability
+
+The API interface for Set/GetWindowLong has been changed for 64-bit
+Windows, both in the name of the call as in the arguments.
+
+2011-02-04 10:21:06 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix MSVC compilability
+
+Both the makefile and the project file had to be adapted for the new
+source file history.c, and the new location of parser.c.
+
+2011-02-05 10:11:58 -0800 Arun Persaud <apersaud@lbl.gov>:
+added missing #includes and missing prototypes to filebrowser
+
+thanks to Max Funk for reporting. Now using HAVE_DIRENT_H.
+
+Also cleaned up missing prototypes and some casts.
+
+2011-02-05 09:21:48 -0800 Arun Persaud <apersaud@lbl.gov>:
+added missing header file for sprintf
+
+
+2011-02-03 08:50:50 -0800 Arun Persaud <apersaud@lbl.gov>:
+added history.c to the tar-ball. Needed for Winboard
+
+
+2011-01-31 23:03:05 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix deselection of greyed-out variant button (WB)
+
+In Windows a disabled radiobutton refuses to deselect when you select
+another (enabled) button from the group. There are then 2 buttons
+checked, and the code to readout the buttons took the first one. Now it
+is changed to take the first enabled one.
+
+2011-02-03 08:28:15 -0800 Arun Persaud <apersaud@lbl.gov>:
+Revert "Implement -reset option feature in WinBoard"
+
+This reverts commit efecf86cd9b54072c6a2f38d62f1d775e69c545b.
+
+picked the wrong commit from HGM's git tree.
+
+2011-02-01 22:01:12 -0800 Arun Persaud <apersaud@lbl.gov>:
+add DIFFSTAT and SHORTLOG to tar-ball
+
+was only in the v4.4.x branch and not in master
+
+2011-01-30 09:52:15 -0800 Arun Persaud <arun@nubati.net>:
+release of version 4.5.0
+
+2011-02-01 07:41:04 -0800 Arun Persaud <apersaud@lbl.gov>:
+changed size of borders around squares from 0 to 1 as a default
+
+this way highlights show up again.
+
+2011-01-29 20:11:30 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Implement -reset option feature in WinBoard
+
+2011-01-30 10:12:08 -0800 Arun Persaud <arun@nubati.net>:
+updated Changelog, NEWS, etc.
+
+2011-01-30 09:56:39 -0800 Arun Persaud <arun@nubati.net>:
+updated parser.c form parser.l
+
+2011-01-29 19:59:11 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Clean up fishy patch
+
+None of the ShowMove() calls in Adjudicate() was working, because when
+this code was taken out of HandleMachineMove() it was taken outside the
+scope of the local fromX, fromY etc. there, so that it started using the
+global variables from the mouse driver. As these usually contain -1,
+this suppressed move animation and highlighting. All these calls have
+now been removed, and ShowMove() is called after a positive return (from
+HandleMachineMove(), so within the correct scope).
+This improves the previous fix, which led to some flicker, because the
+erroneous ShowMove() calls did draw the new board (instantly), wich in
+the fishy patch was then immediately overwritten by the old position, to
+start animation. This drawing of the old position is now no longer
+needed either.
+
+2011-01-29 13:36:30 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Update RTF file
+
+The RTF file is adapted to the new menu organization.
+
+2011-01-29 13:31:48 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Update texi file
+
+The highlight-with-arrow and one-click-move menu items are described.
+The highlightMoveWithArrow and variations option are described.
+Load Next /Previous Position descriptions are moved to File menu.
+The description for entering variations is updated (using Shift key).
+The remark that editing holdings is impossible is removed.
+Spartan Chess is added to the list of supported variants.
+
+2011-01-28 18:35:48 -0800 Arun Persaud <arun@nubati.net>:
+Updated copyright notice to 2011
+
+
+2011-01-24 15:01:25 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Greyout unavailable variants in New Variant dialog
+
+The WB radio-button code is refactored to be driven from a list (which
+must be kept in phase with the variant definitions in common.h!). It now
+also checks if the first engine supports the variant, and greys out the
+item if it isn't. XB now also makes this check. Slight re-ordering of
+10x8 variants there, to have the more common on top.
+If no radio button is selected, keep old variant even on OK.
+
+2011-01-19 11:10:59 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Move clock-click code to back-end
+
+Some duplicated (or should-be-duplicated) code for handling clicks on
+the clocks from the XBoard and WinBoard front-ends was merged and
+relocated to the back-end, so it can be shared. Noticeable was that
+XBoard allowed turn change in ICS examine mode by clock clicking,
+while WinBoard did not. WB, on the other hand, allowed clock adjustment.
+
+2011-01-16 23:15:17 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix legality testing of drop moves
+
+Drops of noexistent pieces (i.e. with a piece indicator letter that is
+not corresponding to any defined piece) are now parsed as
+ImpossibleMove, rather than IllegalMove, so they are also rejected with
+legality testing off.
+
+2011-01-17 00:28:32 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix WB Sound Options greyout and remove some grossness
+
+The sound and ICS Options menu items in WB were accessed 'by position',
+with fixed defined positions (always messing up any reorganization of
+the menus when you forgot to redefine the position constants in
+winboard.h). And not only that, but for completely mysterious reasons,
+the greying of the sound item greyed out the game-list options (above
+it) in stead when it was defined as 9, and the ICS options (below it)
+when it was 10 !!!. Now they are addressed 'by command' (and the
+position definitions are removed), which fixes things.
+
+2011-01-25 21:35:10 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Re-instate load next/prev position menu items
+
+As positions do not use something similar to the game list, these are
+still useful. For some reason I could not get Alt+Shift+PgUp/Dn to work,
+so I settled for Shift+PgUp/Dn.
+
+2011-01-16 21:56:14 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Remove superfluous copying of machine move
+
+There was explicit code in HandleMachineMove() and FinishMove() to put
+the move in the moveList, while MakeMove() already does this later in a
+more reliable way by calling CoordsToComputerAlgebraic(). This
+superfluous code is removed now.
+
+2011-01-16 21:44:26 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix spurious mate test in Edit Game mode
+
+When entering a game, it was terminated by the mate test even when
+legality checking was switched off (so that mates might not be reliably
+recognized). The mate test is now made dependent on legality testing.
+
+2011-01-16 21:37:16 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix type-in of drop moves
+
+Drop moves entered through the move type-in already come in the (piece,
+DROP_RANK, x, y) format, rather than having a holdings from square. This
+caused UserMoveEvent to consider them illegal when testing if the
+piecewas of the side to move, and when this was fixed, to recognize
+Knight drops as coming from between board and holdings (and thus
+illegal).
+
+2011-01-16 21:31:42 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix move type-in truncating game
+
+Starting a new variation by keeping Shift pressed did not work when
+OK'ing the move type-in, because there was some code ther that truncated
+the game. While this could be safely left to UserMoveEvent, which it
+calls, as the situation is not different from entering moves through the
+mouse.
+
+2011-01-11 16:12:02 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix legality testing for promotions
+
+Turns out WB has never tested for the legality of the chosen promotion
+piece, and would allow promotion to King innorml chess even with
+legality testing on (when entered through the keyboard)! Now strict
+testing is done, outlawing Pawns and Kings (or Unicorns in
+Knightmate). Only in suicide / giveaway Kings are stillallowed, and in
+spartan a black King if you do not have two yet.(And promotion
+toLnce,representing Hoplite Pawn,is forbidden there.)
+
+2011-01-11 11:34:07 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Reset 50-move counter on all pawn-like Lance moves
+
+Now the Lance represents a Pawn-like piece not only in variant fairy,
+but anywhere outside Shogi / Superchess, its moves should also reset the
+50-move counter in those cases. Especially important for Spartan Chess,
+where the Lance actually participates.
+
+2011-01-11 11:18:15 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix logo repainting
+
+The logos were not repainted when the main window was moved out of the
+display area, and then back into view. The reason for this is
+unknown, as the PaintProc calls HDCDrawPosition, which was calling
+DrawLogoOnDC. But the logos were not drawn, (or on an expose event
+sometimes half drawn!) despite the fact that the rest of the board was.
+The drawing of logos now has been decoupled from drawing the board,
+and has been moved to a separate routine DisplayLogos() (in analogy to
+DisplayBothClocks()). This is cleaner anyway, as the logos usually do
+not change when the board does. So apart from in PaintProc, it has only
+to be called when the mode changes (ModeHighlight()) or on swap clocks.
+This seems to fix the problem.
+
+2011-01-10 20:36:48 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix time in PGN info
+
+Saving of the thinking time in the PGN was broken by the patch that
+removed the race condition in the clock switching, because that moved
+the incrementing of forwardMostMove to behind the code that used fmm to
+index pvInfoList. As a result the time was stored in the slot for the
+opponent's previous move. The value is corrected now.
+
+2011-01-09 00:24:17 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fishy fix
+
+The move that delivers checkmate in two-machines mode is not animated
+when adjudication is on. There then also is no highlighting of this move
+Redrawing the board and calling ShowMove fixes it. Which is rather
+strange, because ShowMove was already called in Adjudicate (when it
+adjudicates), before GameEnds. For reasons that are not understood this
+call to ShowMove() (which calls AnimateMove()) is not effective.
+
+2011-01-09 00:21:41 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Reset machine colors after match
+
+The colors each engine playse are set to the originals after the last
+match game, so that a new match or two-machines game will not have
+swapped colors.
+
+2011-01-09 00:15:18 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Reset win/loss counters before match
+
+The win/loss counters were not reset, because the code counted on them
+being initialized to zero. But with matches startable from the menu,
+this is no longer true after the first match.
+
+2011-01-09 00:08:52 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Show move that causes false illegal-move claim
+
+Without claim testing XBoard takes back moves that an engine objects to.
+But when the engine is forfeited for a false claim, the move should of
+course stay. So the claim test is moved to before the take-back.
+
+2011-01-09 00:05:38 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix Spartan promotion to King
+
+Promotions toKing were refused when in check, because XBoard thought
+they would not resolve the check. Now the promotion is actually
+performed before doing the check test.
+
+2011-01-05 17:31:37 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix WB font-based piece rendering on variant switch
+
+The piece bitmaps were only created from the font characters when the
+number of ranks or files changed, because it was done in
+InitDrawingSizes(). This caused missing pieces when changing to a
+variant on the same board that used other pieces. Now InitDrawingSizes()
+is called for any variant switch.
+
+2011-01-05 17:25:11 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix right-alignment pproblem in WB ICS window
+
+Use of Ctrl-R to summon the context menu still trickled through to the
+default text-edit window routine, and caused right-alignment. This was
+because the text-edit reacts on keyDown rather than the character event.
+KeyDown of R with Ctrl pressed is now also intercepted and ignored.
+
+2011-01-03 13:04:56 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix chat window title
+
+The title was using the engine name, rather than the ICS handle, which
+did not work outside zippy mode. Now it only uses the engine name when
+no ICS handle is known. The titleis now also subjected to translation.
+
+2011-01-03 12:50:54 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix spurious reading of old game title by JAWS
+
+Because focus was switched to the board window before loading the
+selected game from the game list, the titlebar still contained the
+name of the previously loaded game, which would spontaneously be read by
+JAWS. Now the focus switch is done after loading the new game (which
+updates the window title.)
+
+2011-01-03 12:37:17 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Add variant Spartan Chess
+
+In the WB menu it takes the place of the defunct Twilight Chess item.
+The setup routine needed patching for setting up Lances in stead of
+Pawns for black, the check test had to be adapted to handle duple check,
+Alfil and Dragon moves were fine tuned in this variant to make the exact
+moves, and the promotion popup was adapted to show King and interpret
+Rook and Bishop as Dragon and Alfil for black. The Alfil now always
+moves as Modern Elephant except in Shatranj and Courier.
+
+2011-01-03 12:23:39 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix mate test
+
+Due to a bug in logical operators drops were tried for mate evasions
+even in non-drop games, which broke it in Superchess and Great Shatranj,
+and wasted CPU time in other variants.
+
+2011-01-05 17:19:35 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix promotion suffixon disambiguated piece moves
+
+The promotion suffixon piecemoves that needed disambiguation was not
+passedon to the back-end in most variants. Now it is passed on in any
+variant.
+
+2011-01-03 12:08:19 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix promotion of Pawn-like Lance
+
+In variants where the Lance is used to represent an unorthodox Pawn, it
+must promote when it reaches last rank. With legality testing on,
+however, the promoChar was ignored in ApplyMove in this case. The
+promotion suffix also was not appended in SAN moves.
+
+2011-01-03 11:57:23 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix WB promotion popup
+
+The promotion popup did not work properly in variants where black did
+not use the pieces that white wanted to promote to. Now the character
+for the selected piece is taken from the piece encodings of the side to
+move. In addition, selection of undefined pieces is ignored.
+
+2011-01-02 14:17:32 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix bug in parsing variations
+
+The moves parsed from a variation were stored in the moveList without
+appended linefeed. This caused errors if the variation extended to
+beyond the end of the main line,into a hitherto unused part of the move
+list, as the linefeed was then not there from the overwritten move. As a
+result moves sent to the engine were concatenated, triggering
+illegal-move messages and bringing the engine out of phase.
+
+2011-01-02 14:11:45 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Define Ctrl-R as right-click in WB Comment dialog
+
+To allow JAWS users to load a variation through the keyboard, Ctrl-R is
+equated to a right click at the position of the caret or selection.
+
+2011-01-02 14:10:02 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Allow starting a variation from keyboard entry in WB-JAWS
+
+The status of the shift key is remembered when space is pressed to
+select a board square.
+
+2011-01-02 14:06:14 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Disable some accelerators in JAWS version
+
+Single-key accelerators that could result in irreversible data loss are
+undesirable, because the risk of accidentally pushing them is too large.
+So the non-Alt duplicates of next/previous game/position are disabled,
+as are Home and End for Revert and Truncate Game. JAWS users will have
+to rely on the menus for those functions.
+
+2011-01-02 13:59:01 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Group engine-output memos with engine names
+
+The engine names are now defined just before the text edits, so that
+JAWS 11 will read the engine name when the memo for the output of that
+engine is selected. (JAWS 10 will still read the NPS, as it reads in
+geometrical order.)
+
+2011-01-02 13:55:19 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Put nr CPU earlier in tab cycle of WB Common Engine dialog
+
+By defining the max CPU control after hash size, the tabbing steps
+through the controls in geometrical (and logical) order, rather than
+having the max CPU in between the book controls.
+
+2010-12-29 23:47:14 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Update WB language template file
+
+
+2010-12-29 23:41:27 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Subject JAWS menu and spoken strings to translation
+
+
+2010-12-29 23:37:39 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Let JAWS SayString buffer full sentence
+
+The meaning of the flag parameter of SayString was changed to indicate
+buffering of flushing. On flushing a message of a single space is used
+as a kludge to indicate interruptability. Calls to force flushing where
+added everywhere.
+
+2010-12-29 23:32:54 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Adapt JAWS menu to new menu organization
+
+The menus did not correspondto the texts after translation of the main
+menu bar.
+
+2010-12-29 23:18:30 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Translate menus after creation of JAWS menu
+
+
+2010-12-29 23:07:05 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix ICS context menu for JAWS
+
+The Ctrl+R key did select text at the mouse pointer in stead of at the
+curser, now that up and down-click were combined.
+
+2010-12-29 23:04:08 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Reorganize order of WB New Variant dialog controls
+
+The definitions are re-ordered so that at least JAWS 11 will speak the
+board-size elements properly.
+
+2010-12-29 22:57:55 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix order of elements in WB time-control dialog
+
+Someleading texts were defined after the text edit they referred to,so
+that JAWS 11 associated them to the wrong one. A tab stop was added to
+the time-odds label, to make JAWS speak it.
+
+2010-12-29 22:51:17 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Change tabbing order in WB sounds dialog
+
+The 'Play' button now gets focus immediately after the controls for
+selecting the sound, rather than at the end of the dialog (after OK).
+
+2010-12-29 22:47:26 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Remove tab stops on first radio button of WB dialogs
+
+The New Variant and Board dialogs had a tab stop on the first radio
+button,so that tabbing toit would automatically select variant
+normal or size tiny. Now it tabs straight to the current size, without
+changing anything. (Important for JAWS users.)
+
+2010-12-29 22:45:23 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Put OK/Cancel last in tab cycle of some WB dialogs
+
+
+2010-12-29 22:29:37 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix duplicate menu character for Edit Comment
+
+Edit Comment did have the same shortcut character as Copy Game. Changed
+to m now.
+
+2010-12-11 11:18:56 -0800 Arun Persaud <arun@nubati.net>:
+fixed automake process: xboard.conf couldn't be generated if $srcdir was not the current directory
+
+
+2010-12-11 09:50:48 -0800 Arun Persaud <arun@nubati.net>:
+new developer release
+
+
+2010-12-05 18:01:21 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Subject WB context menus to translation
+
+The innerloopof the menu translation has been made into a separate
+routine. This now uses GetMenuItemInfo() in stead of ModifyMenu() to
+better preserve menu breaks. Menu #10 is used for context menus (from
+the routine that pops them up), and for this number the orignal texts
+are not saved in menuText. (This is not needed, because the menu is
+created everytime anew from the resource data.)
+
+2010-12-05 15:00:28 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Update translation template
+
+Add the new menu items; add some notes.
+
+2010-12-05 14:04:46 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Resize buttons in WB engine-settings dialog
+
+The OK and cancel buttons were to narrow for most translations, and were
+a non-standard order as well.
+
+2010-12-05 13:56:52 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Add one-click move control to WB general-options dialog
+
+This is a duplicate of the one in the ICS options dialog, but the latter
+is inaccessible in non-ICS modes, and one-click move is now
+alsoavailable in engine mode.
+
+2010-12-05 13:51:20 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Create space in dialogs for translation
+
+The translated texts often did not fit, because controls were defined
+needlessly small (when there was empty space between them). In these
+cases they have been enlarged to consume all available space. Some
+dialogs are made wider.
+
+2010-12-05 13:47:26 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Add handle for translator acknowledgement
+
+An empty string is printed in the about box, which can be 'translated'
+to a message acknowledging the translator.
+
+2010-12-05 13:43:26 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Use default logo for user
+
+When no logo with the name of the current user is found, use dummy.bmp.
+
+2010-12-05 15:46:34 -0800 Arun Persaud <arun@nubati.net>:
+added rlwrap tip to FAQ
+
+
+2010-12-03 23:24:06 -0800 Arun Persaud <arun@nubati.net>:
+replace hard coded paths with path from configure script
+
+use $datadir and subdirectories to store some data files. Also make files in xboard.conf use correct path.
+
+2010-12-03 23:02:09 -0800 Arun Persaud <arun@nubati.net>:
+fixed a typo in the configure script output
+
+
+2010-12-03 21:46:00 -0800 Arun Persaud <arun@nubati.net>:
+added a desktop file
+
+taken from the openSUSE project
+
+2010-12-03 22:44:02 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix Edit Game/Position checkmarking in WinBoard
+
+Because the entries in Edit and Mode menu were pure duplicats, the
+entries in the wrong menu (Edit) were checkmarked while active. By
+defining different IDs for those in the Edit menu, those in the Mode
+menu are checkmarked again.
+
+2010-12-03 10:07:34 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Add XBoard menu items for arrow highlight and one-click move
+
+These items are put in the options menu; the 'Old Save Style' item is
+removed.
+
+2010-12-03 09:27:58 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Provide menus for editing WinBoard engine and server lists
+
+The Edit Tags dialog in the WB front-end is adapted to act as a general
+edit for string variables, by giving it an extra parameter to indicate
+where to store the edited result. Menu items are added to invoke this
+dialog for editing the /first, /secondChessProgramNames and /icsNames
+options. This solves the problem that people would have to edit an ini
+file that they can no longer locate (because the %APPDATA% folder has
+different names and locations in the various Windows versions, and is
+often a hidden folder on top of that).
+There is a slight memory leak here, as the memory for the previous
+value of the altered string option is not freed.
+
+2010-12-02 16:18:53 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Configure arrow highlighting as default in XBoard
+
+Set -highlightMoveWithArrow true in the xboard.conf file, and specify a
+lineGap of 0 to make that efficient (and the wood theme even nicer).
+
+2010-12-02 15:56:46 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Port highlighting with arrow to XBoard
+
+Unfortuntely this duplicates a fair amount of code in the front end.
+Removing the arrow is done by a total repaint if there is a non-zero
+lineGap, because the clever algorithm for selective redrawing (based
+on damage) that XBoard uses does not repair damage to the grid lines.
+For lineGap=0, however, (for which the arrow is mainly intended) the
+damage mechanism is used, and the damaged squares are determined by
+tracing out the arrow in 64 steps, and marking all squares in the
+neighborhood as damaged.
+
+2010-12-02 15:55:25 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Strip CR from xboard.c
+
+
+2010-12-02 14:21:24 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Let user decide if he wants highlights in blindfold mode
+
+Remove the automaticsuppression ofhighlighting.
+
+2010-12-02 00:24:43 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix fag-fell marker with logos on
+
+The flag-fell marker "(!)" that is displayed in the clock in WinBoard in
+two-machines mode was printed twice when the clock was split over two
+lines (as with logos on).
+
+2010-12-01 18:57:57 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Also exempt variant seirawan from eval-scale doubling
+
+It is not really a drop game, so a scale from -7 to 7 in the eval graph
+is good enough (like variants great and super).
+
+2010-12-01 10:33:13 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Configure EGTB cache size in adapterCommand
+
+The hash size, nr of CPUs and EGTB path are transferred through the WB
+protocol interface commands memory, cores and egtpath. But there is no
+WB command for detailing the EGTB cache size. So the value of the
+command-line option -defaultCacheSizeEGTB has to be sent to Polyglot
+through its startup command to make it known to UCI engines.
+
+2010-11-30 22:46:16 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Move Hint and Book items to Engine menu in XBoard
+
+
+2010-11-30 22:17:24 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Correct the key bindings fo view menu in texi file
+
+The mentioned bindings for Game List and Eval Graph were wrong.
+
+2010-11-30 21:25:07 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix sub-variation display with negative score
+
+The test if the displayed score was the pvInfo score failed for negative
+scores, because floats are truncated towards zero. So the previous fix
+of spurious score/depth info was not working when the score was
+negative.
+
+2010-11-30 18:27:52 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Peel PV out of comment
+
+Arena stores engine PVs not in variation format, but within both braces
+and parentheses, before the score/depth info. This caused XBoard to
+overlook the score/depth info, (frustrating, e.g., the eval graph),
+while the PV would not be accessible for walking it as a variation.
+The routine that extracts the score/depth from a comment now has
+been made more clever, to recognize a leadin PV in the comment, and then
+place it in front of the comment as variation (by moving the opening
+brace to behind it). For some reason it does not work if the PV and
+score/depth were separated by a newline, but this happens quite rarely.
+
+2010-11-30 18:23:12 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Allow line-straddling result comments
+
+Some GUIs (in particular Arena) do not have the decency to keep the
+result comment on a single line. In this case the parser rules would not
+recognize it, and treat it as a normal comment, plus an undetailed PGN
+result. The rules are now fixed to allow linefeeds in the comment, and
+between comment and PGN result. To correctly process the comment further
+(e.g. in game-list lines) the linefeeds are replaced by spaces in the
+back-end routines that do use the result comment.
+
+2010-11-30 12:22:32 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Write key bindings in XBoard menus
+
+Unfortunately tabs are not understood in menu texts, so fine-tuning
+through spaces is necessary to get some sort of ragged alignment.
+
+2010-11-29 18:01:38 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Configure XBoard to use wood board texture by default
+
+The texture pixmaps are sought in /usr/share/games/xboard, with names
+wood_l.pm and wood_d.xpm. I guess the " make install" should be adapted
+to put them there. XBoard is resitent to non-existence of the files,
+btw. It simply ignores the arguments in that case.
+
+2010-11-29 17:48:48 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Configure -inc as volatile option in XBoard
+
+XBoard users are not used to options being persistent, and thus have
+many scripts assuming the timeIncrement is -1 when they don't specify it
+on the command line, and want to specify -mps. But a persistent -inc of
+0 fom a preious session would then force their -mps to zero, causing
+big-time confusion.
+
+2010-11-29 17:36:33 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Make WinBoard clocks translation-proof
+
+With logos on, the splitting of the clock over two lines assumed the
+lengths of the words "white" and "black" would always be 5. Used strlen.
+
+2010-11-29 14:57:00 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Improve drawing of highlight arrow
+
+A diagonal arrow sometimes had a notch in the shaft because of
+independent rounding of the starting and ending point coordinates.
+Furthermore the width of the shaft was unnecessary variable(as a
+function of direction) because half the width was rounded and then used
+twice. Now rounding of end-points is always done towards a fixed grid
+of square centers, which keeps diagonals purely diagonal, and one side
+of the shaft is drawn relative to the other side, after the
+position of the latter has been rounded, so any rounding error affects
+the shaft width only once.
+
+2010-11-29 10:25:50 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Alter descriptionof Analyze File menu item
+
+This menu item has been given a new function, so a new description was
+needed.
+
+2010-11-29 10:15:39 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Add description of Game List Options in texi file
+
+
+2010-11-29 09:58:00 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Update texi file for new menu organization
+
+The descriptions are shuffled around and organized into sections
+corresponding to the new main menus. Where necessary the name of the
+items was changed to their new names. The items removed from the File
+menu (the next/previous/same stuff) are nowmoved to the section "other
+shortcut keys", as the key bindings for some of them are still active.
+
+2010-11-29 09:06:14 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Update info on key bindings in texi file
+
+The texi file was still listing the old XBoard key bindings. Where
+necessary this is now changed to the new (WinBoard) bindings, and all
+the new bindings were added.
+
+2010-11-29 09:04:53 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Add XBoard key bindings for Revert and Truncate
+
+Use Home key as accelerator for Revert, End for Truncate, as in WinBoard.
+
+2010-11-28 23:12:14 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Divorce the Edit and Show Tags/Comment menu items
+
+In WinBoard the items in the Edit and View menu for Tags and Comment now
+have different IDs, so they can be independently controlled. Only the
+items in the View menu are check-marked. The items still do the same.
+
+2010-11-28 23:08:26 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Alter WinBoard menu text
+
+The texts are slightly adapted, mostly by choosing more convenient
+tabbing characters for the new menu organization. The translation
+template is updated accordingly.
+
+2010-11-28 20:24:46 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Let move-history window scroll to bottom after adding move
+
+By activating the scrollbar of the viewport through XtCallActionProc
+the move-history window is scrolled to the bottom.
+
+2010-11-27 14:38:14 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix Shogi promotion popup
+
+The texts were adapted to shogi by printing new text items over the
+Queen and Knight buttons, but these did not alwys cover it. Now the text
+on the buttons is changed as it should be. Also the window title is
+adapted.
+
+2010-11-26 11:22:06 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Apply gettext macros to menu texts
+
+Now texts and references are separated, the texts in the tables can be
+decorated with the N_() macro, so that the _() macro no longer has to be
+applied when they are used. (This makes the texts appear in the .po
+files.)
+
+2010-11-26 11:12:58 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Adapt some XBoard menu texts
+
+The "Show" prefix is removed from the "View" menu items, as this seems
+implied. An ellipsis is added to the Engine #N Settings items, which
+could not be there before, because periods in a menu name would break
+any reference to it. For some other names the ellipsis was deleted.
+(These were not refered to, but who knows what we will do in the future.)
+
+2010-11-26 11:03:35 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Separate menu text from menu name in XBoard
+
+The text string in the menu-definition tables was used both for the menu
+text, as well as for referencing the items from the code (for enabing or
+checkmarking). Now these can be defined separately, so that altering the
+menu texts is possible without breaing any references to the item.
+(Moving them to another menu would still break XBoard, though!)
+Currently the texts and names are still the same.
+
+2010-11-26 10:48:54 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Bugfix XBoard menu translation
+
+The gettext macro N_() was applied to the menu definition tables, but
+this would break any translation, as these items are both used as menu
+texts as well as reference for enabling and checkmarking. The routines
+that create the menus already apply _() dynamically to these items when
+they are used as menu texts.
+
+2010-11-26 10:10:55 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Restrict drops in variant seirawan to back rank
+
+Drops aren't really llowed at all in Seirawan Ches, but there exists an
+engine that supports a variant where drops on the back-rank are allowed.
+
+2010-11-25 19:44:37 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Let Analyze File annotate the loaded game
+
+By not suppressing the auto-play loop in AnalyzeFle mode, we step
+through the game while the engine is analyzing, and store the PV info
+that the engine produces, as well as the full PV (as variation comment)
+with each move.
+
+2010-11-25 19:41:05 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Revive Analyze File menu item in WB
+
+We will keep this menu after all, becase it can be given a new meaning.
+
+2010-11-25 19:31:52 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix spurious scores in comments
+
+The comment popup is also used to display engine PV info, but when the
+contents of the window is written back when we select a variation,
+it was treated as a real comment. This is fixed now by checing in
+ReplaceComment() if the comment starts with the PV info, and if so,
+ignore the latter. This solves the problem, but I guess the real bug is
+that selecting a variation tries to write the comment even if it did not
+change.
+
+2010-11-25 19:26:34 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Display error for wrong use of Machine Match
+
+
+2010-11-24 13:30:08 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Reorganize XBoard menus
+
+
+2010-11-24 11:02:19 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Reorganize WinBoard menus
+
+New main menus Edit, View and Engine are added; the step menu
+disappears. The menu items are redistributed over the new menus.
+Sometimes duplicates are created. No adaptation of short-cut characters
+as made yet (as this affects translation).
+
+2010-11-20 20:20:27 -0800 Arun Persaud <arun@nubati.net>:
+removed trailing whitespaces from NEWS
+
+
+2010-11-20 20:19:30 -0800 Arun Persaud <arun@nubati.net>:
+merged readme_HGM.txt into the NEWS file
+
+seems like a better place for the release notes, although those releases where not officially part of GNU, but the NEWS file already covers similar releases, so it might as well cover all of them.
+
+2010-11-20 18:24:19 -0800 Arun Persaud <arun@nubati.net>:
+typo in date of developer release
+
+but will leave the tagged version as it is, since it's still a unique version number
+
+2010-11-20 18:11:01 -0800 Arun Persaud <arun@nubati.net>:
+new developer release
+
+
+2010-11-20 18:12:41 -0800 Arun Persaud <arun@nubati.net>:
+added latest version of parser.c
+
+
+2010-11-20 18:05:56 -0800 Arun Persaud <arun@nubati.net>:
+updated Changelog, etc for developer release
 
 
 2010-11-20 16:22:00 -0800 Arun Persaud <arun@nubati.net>: