Only let second engine default to first when of same type
[xboard.git] / NEWS
1 ** Version 4.8.0 **
2
3    (see http://www.gnu.org/software/xboard/whats_new/4.8.0/ )
4
5    * New features in this release
6     * Resuming saved unfinished games
7     * Setting up positions more easily
8     * Bitbase adjudication
9     * Showing tablebase hits
10     * A new ICS window
11     * Recalling board themes (XBoard)
12     * Playing moves by clicking them
13     * Fonts in the XBoard GTK build
14     * Using the mousewheel (XBoard)
15     * Displaying a blunder graph
16     * Slicing up a PGN database
17     * Auto-install of engines
18
19    * New variant support
20     * ASEAN Chess
21     * Chu Shogi
22     * Mighty Lion
23     * Highlighting squares on engine command
24     * Let the engine finish a user move
25     * Non-standard variant names
26     * Fischer castling in any variant
27     * Knowing the moves of unknown pieces
28
29    * Fixed bugs
30     * Fix crash on using some Browse buttons in dialogs of the GTK
31       build.
32     * Fix buffer overflow in PGN parser, when all lines end in
33       comments.
34     * Fix crash on specifying non-existent board texture.
35     * Prevent crash on double-click in XB Game List Tags dialog.
36     * Fix the auto-display comment control in the General Options
37       dialog of WinBoard, which was ignored.
38     * Fix adjusting clocks by clicking them in Xaw build.
39     * Fix zooming of Evaluation Graph XB with mousewheel, which was
40       not working at all.
41     * Fix sticky-windows feature WB for Windows 8, where it did not
42       work at all.
43     * WinBoard's seek graph is now sized to also cover any board rim.
44     * Key bindings XB for non menu items are no longer ignored.
45     * Set castling rights correctly after loading of game file from
46       command line.
47     * Allow castling and e.p. moves to be edited into opening book
48       (and prevent their disappearance from it).
49     * The sorting of engine output was made more robust against
50       engines that send thinking output on fail lows.
51     * Fix node-count display, which was clipped to 32 bits.
52     * Suppress board-size oscillations in GTK build.
53     * Fixed detection of screen size in GTK.  (This is a mixed
54       blessing, as now it picks the largest possible window size, and
55       in GTK interactive down-sizing is not possible.)
56     * Fix mode highlighting after refusal of Two Machines mode because
57       2nd engine did not support variant.
58     * Blow up textures that are too small.
59     * Ignore invalid color specs in stead of treating them as black
60       (important because Cairo does not understand old xpm color
61       names).
62     * Prevent XB and WB from becoming unresponsive during lengthy
63       tasks such as book building.
64     * Fix slowdown of WB during loading of huge PGN files due to
65       Game-List window update.
66     * Limit width of menu bar for small board sizes in GTK build.
67     * Improve the code to kill rogue engines in XB.
68     * Drawing of pieces outside the board (in maximaized windows),
69       which left lots of debris, is now suppressed.
70     * Make WB window sizing handle multiple screens.
71     * 50-move counter is no longer reset on Chess960 castlings.
72     * Fix legality testing of A-side castling in FRC (which was
73       allowed with Rook on a- and blocker on b-file).
74     * Fixed piece ID of Falcon in Falcon Chess, which was written as
75       '.' and could not be selected on promotion.
76     * Fix cross-edge e.p. captures in Cylinder Chess (which was not
77       recognized as e.p.).
78     * Fix animation of Seirawan Chess castling + gating at Rook
79       square, which made Rook disappear.
80     * Fix adjudication of stalemates in variant Giveaway.
81     * Display of the variant tag in the Game List now works.
82     * Reset move entry (clearing target-square markers) on 'clear
83       board' in Edit Position mode.
84     * The Game List is automatically updated when you alter the tag
85       selection for the game lines.
86     * Indicate current variant in New Variant dialog of the GTK build
87       (by printing it in boldface on the button).
88
89    * Known Problems
90     * GTK: in a tiling window manager the size of the board seems to be
91       calculated incorrectly. A temporary fix for this is to use a fixed
92       size by using the "-size <N>" and "-fixedSize true" options
93       on the command line.
94
95
96 ** Version 4.7.3 **
97
98    (see http://www.gnu.org/software/xboard/whats_new/4.7.3/ )
99
100    bugfix release for 4.7.2
101
102    * Fix buffer overflow in parser on long PGN with scores
103    * Allow castling and e.p. capture moves to survive when editing opening book
104    * Fix node-count overflow in engine output
105    * Better sorting of fail-low lines in engine output
106    * Fix Chess960 a-side castling legality check
107    * Fix position search in Chess960
108    * Fix adjudication of Giveaway stalemates
109    * Adapt WinBoard window positioning to work with multiple screens
110    * Cure some weirdness in XBoard when dragging pieces outside the board
111    * Some dialog layout improvements to facilitate internationalization
112    * Fix crash on using some dialog Browse buttons in GTK version
113    * Connect manual menu item work in GTK version
114    * Put code for OS X integration in the GTK version
115
116 ** Version 4.7.2 **
117
118    (see http://www.gnu.org/software/xboard/whats_new/4.7.2/ )
119
120    bugfix release for 4.7.1
121
122    * Make PGN parser immune to unprotected time stamps
123    * Fix book creation
124    * Fix GUI book after setup position
125    * Allow drops / promotions/ deferrals to be edited into book
126    * Allow entry of negative numbers in spin control (WB)
127    * Fix grabbing of selected piece
128    * Fix initial board sizing WB
129    * Fix -zippyVariants option
130
131
132 ** Version 4.7.1 **
133
134    (see http://www.gnu.org/software/xboard/whats_new/4.7.1/ )
135
136    bugfix release for 4.7.0
137
138    * updated translations
139    * fixed texinfo 5.0 problems
140    * Work-around for Xt selection bug
141    * Add -backupSettingsFile option
142    * Make skipping of unknown option smarter
143    * Let popping up of WinBoard chatbox for channel open it
144    * Fix vertical sizing of GTK board
145    * Fix buffer overflow in feature parsing
146    * Accept setup command for non-standard board size
147    * Fix fatal error on unsupported board size
148    * Fix GTK box popup
149    * Let XBoard -autoBox option also affect move type-in
150    * Fix spurious popup after batch-mode Analyze Game
151    * Fix saving of analyzed game
152    * Provide compatibility with Alien Edition setup command
153    * Fix quoting of book name in tourney file
154    * Fix disappearence of pieces that were moved illegally
155    * Fix horrible bug in reading scores from PGN
156    * Print score of final position in Analyze Game
157    * Fix GTK SetInsertPos
158    * Fix scrolling of Chat Box
159    * Make Chat Box window obey -topLevel option
160    * Fix Xaw file browser
161    * Update zippy.README
162
163
164 ** Version 4.7.0 **
165
166    (see http://www.gnu.org/software/xboard/whats_new/4.7.0/ )
167
168    * Code refactoring of XBoard
169     * The old X11 front-end has been largely rewritten,
170       so that all windows are now created by a single
171       generic routine
172     * XBoard now uses the Cairo library for all drawing
173     * Pixmaps and bitmaps no longer supported;
174       XBoard now uses PNG and SVG images instead.
175     * An alternative (as yet experimental) front-end
176       using GTK has been added
177
178    * Interactive Analysis
179     * Excluding moves from analysis by playing them
180     * Excluded-moves header in Engine Output window
181     * Analyzing with two engines simultaneously
182     * Annotating an entire muti-game file
183     * Analysing positions by Monte-Carlo play
184
185    * Other New Functionality
186     * Displaying player logos (XB)
187     * Player logo on ICS can be based on player handle
188     * Chat boxes for XBoard
189     * Narrowing down of position searches
190     * Copying pieces when editing a position
191     * Starting WinBoard through drag & drop
192     * Recalling fully configured engines and ICS
193     * Creating an opening book from a game file
194     * Pausing a game
195     * Automatically observing partner games with dual-board
196
197    * Interface Improvements
198     * Recognizes file type of lone argument by extension
199     * Default startup settings configurable per mode
200     * Separate menu items for loading 1st and 2nd engine
201     * Engines can be selected from listboxes
202     * Grouping of engines in the installed-engines list
203     * Stay in Analyze or Game Start mode after engine loading
204     * 'Continue Later' button in WB tournament dialog
205     * A new --help option (XB)
206     * A second board window for observing ICS games (XB)
207     * Smoother graphics and a resizable board (XB)
208     * A rejuvenated file browser (XB Xaw)
209     * Scrolling listboxes with mouse wheel (XB Xaw)
210     * Tabbing through dialog etry fields (XB Xaw)
211     * Adapt width of auxilliary windows on board resize (WB)
212     * External piece bitmaps (WB)
213     * Border around the board (WB)
214     * Saving settings as themes (WB)
215
216    * Bug fixes
217     * Grayout of Analysis menu item in zippy mode
218     * Crash on flagging in -st mode
219     * Keep track of virginity in variant seirawan FENs
220     * Immunity to capitalized promo pieces
221     * Avoid board sizes with unavailabile variant pieces
222     * Work-around for FICS violation of SAN
223     * Check validity of tourney participants
224     * Loop-Chess promotions with legality testing on
225     * Fix -fSAN option in Analyze File mode
226     * Scrolling of Engine Output after PV walk (XB)
227     * Start browsing in currently-selected folder (WB)
228     * Allow entry of fractional timeIncrement (WB)
229     * Resolve conflict between -mps and -inc options
230     * Size of mini-Shogi promotion zone
231     * Adjudication of stalemate and perpetuals in Shogi
232     * Rep-draw detection in drop games
233     * Insufficient-material draws in Knightmate
234     * Replacing of engine in non-last game position
235     * Sweep selection of promo-piece in click-click move
236     * Don't save aborted games in tourney PGN
237     * Remember ponder, book and other settings in tourney file
238     * Do not erase PGN tags on engine loading
239     * Solved feature problems with engine loading in match mode
240     * Re-send option settings to -xreuse engine
241     * Allow use of 'shadow' promotion pieces in any variant
242     * WinBoard did not always start in its installation folder
243     * Initialization of 'Twice' checkbox in Tournament dialog (WB)
244     * Clearing of marker dots after mode or settings change
245     * some smaller bugfixes
246
247 ** Version 4.6.2 **
248    (for a more detailed list with screenshots see http://www.gnu.org/software/xboard/whats_new/4.6.2/ )
249    bugfix relase for 4.6.1
250    * Suppress clear-board message after pasting FEN
251    * Fix faking of castling rights after editing position with holdings
252    * Fix second-engine variant test
253
254 ** Version 4.6.1 **
255    (for a more detailed list with screenshots see http://www.gnu.org/software/xboard/whats_new/4.6.1/ )
256
257    bugfix release for 4.6.0
258
259    * Fix memory corruption bug on second-engine loading (through menu or in tournament),
260      which could destroy -firstInitString
261    * Fix bug loading a new engine through the menu (not loading it with the full game,
262      but just upto the current move)
263    * Prefix engine command with "./" when a pathname is split up during install, so the engine actually runs (XB)
264    * Fix fall-back to -ncp mode when engine does not start (cutting short the feature timeout)
265    * Fix bug in position search for FRC castlings (where a King could 'fall off' the board)
266    * Add a message to inform the user how to clear the board, in sweep-select edit-position mode
267    * Fix a bug that could stop the clock when the board window was dragged (XB)
268    * Fix switching off highlighting during game (so last highlights do not remain for the rest of the game)
269    * Allow user to enter the name of a non-existing file when browsing for a save file (WB)
270    * Make sure rarely used engine-related options (such as -firstNPS) are also correctly loaded during session
271    * Correctly handle parsing of Crazyhouse promotions with legality-testing off
272    * Fix click-click detour under-promotions, which were not working for non-captures
273    * Don't strip path from engine command if directory is explicitly given in Load Engine dialog
274    * Consistently make auxiliary windows top level-shells or not, with new -topLevel option (XB)
275    * No longer fatal if second engine does not support current variant (just refuse Two Machines mode)
276    * Scroll XBoard game list to keep selected item in view (XB)
277    * Suppress spurious error popup when starting observing of bughouse games
278    * Fix vertical axis ticks in eval graph with drop games
279    * Put title on same line as menu bar only for -size 72 and larger (with -titleInWindow, XB)
280    * Properly open and close debug file when switching debug mode through key binding Ctrl-D (XB)
281
282 ** Version 4.6.0 **
283
284    (see http://www.gnu.org/software/xboard/whats_new/4.6.0/ )
285
286    * Engine vs. Engine
287     * Loading and installing engines through the menu
288     * Running tournaments with more than two partipants
289     * Stopping a match between two engines
290     * Replacing a tourney participant
291     * Playing openings in color-reversed pairs
292     * Perpetual chasing in Xiangqi
293
294    * Interface Improvements
295     * Auto-Queen, and still under-promote?
296     * Piece fonts and figurine fonts
297     * Displaying PVs as SAN
298     * Small scores in the Eval Graph
299     * How close is the 50-move draw?
300     * Sign of the engine scores
301
302    * Interactive Analysis
303     * Playing moves from the PV
304     * Rapidly changing the number of PVs
305     * Setting the other side to move in analysis
306     * Annotating a game with an engine
307
308    * Other New Functionality
309     * Searching a position in a PGN file
310     * Editing the opening book
311
312    * XBoard -> WinBoard Convergence
313     * Exporting the game list (XB)
314     * A move type-in box (XB)
315     * New-style Move History window (XB)
316
317 ** Version 4.5.3a **
318
319    (see http://www.gnu.org/software/xboard/whats_new/4.5.3a/ )
320
321   * only changes to Winboard : build non JAW by default, fix compile errors
322
323 ** Version 4.5.3 **
324
325    (see http://www.gnu.org/software/xboard/whats_new/4.5.3/ )
326
327   * fixes of major bugs:
328    * In the file-browse dialog . and .. no longer mask other files if they are non-first in the directory
329    * Fix XBoard crash on showing an empty Engine Settings dialog, printing a message in stead
330    * The XBoard Game List can now handle files with more than 1900 games, by paging through them
331    * The state of the Move-History window is now remembered by XBoard even when the Engine-Output window is up
332    * Fix crash on switching sounds in WinBoard under Windows Vista
333    * Fix empty-string option values on XBoard command line (which were ignored)
334    * Fix spurious vertical scrolling in XBoard Engine-Output window on clicking in it
335    * Obey an engine's san feature when sending book moves to it
336    * Fix XBoard crash when 'filtering' made Game List empty
337    * Suppress clearing of Engine-Output window on automatic updates in analyze mode
338    * Force Move-History refresh after loading/reverting variation
339    * Fix closing brace, when joining two comments to same move
340
341   * fixes of minor bugs:
342    * Suppress playing sounds when no -soundProgram is set
343    * Fix display of last move of last match game
344    * Update window title after last game of match
345    * Never one-click move when legality testing is off
346    * Suppress playing book move when total weigth of all moves is zero
347    * Restore echo after ^C killed XBoard during ICS password
348    * Fix default of -remoteUser, which could cause crash when playing remote engines
349    * Fix recognition of separators between options in -adapterCommand command line
350    * Fix button sizing in generic popup
351    * Fix translatability of 'Spartan Chess' menu item WB
352    * Remove some duplicats from WB language template file
353    * Fix spurious 'Unfinished' sounds during ICS examining
354    * Fix bug in handling of partner command in zippy-mode bughouse games
355    * Create more space in some WB dialogs to accomodate translations
356
357   * Improvements benefitting the speaking version for the visually impaired (WB):
358    * Implement NVDA support in JAWS version
359    * Fix translation of spoken composite messages
360    * Fix JAWS reading of Engine-Settings dialog by removing group-boxes
361    * Add tab stops in WB generic popup
362    * Reorder controls in Engine-Setings dialog WB, so they are tabbed through in logical order
363
364   * fixed compiler warnings/errors and portability:
365    * Fix use of random function in XBoard shuffle dialog callback
366    * Fix inconsistent type of the variable 'shuffleOpenings'
367    * Silence warnings during rpm build
368    * Fix warnings XBoard file browser
369    * Fix some warnings and header-file improvement
370
371   * misc:
372    * Add -at and -opt options as alternative for @, as work-around for Windows shortcut bug
373    * Make occurrence of unknown option in settings file non-fatal
374    * Stale output no longer lingers in the engine-output window when a new game starts
375    * Popdown (stale) Comment window on new game
376
377 ** Version 4.5.2a (Winboard only)**
378
379    (see http://www.gnu.org/software/xboard/whats_new/4.5.2/ )
380
381   * Fix Engine Settings button options in WinBoard
382
383 ** Version 4.5.2  **
384
385    (see http://www.gnu.org/software/xboard/whats_new/4.5.2/ )
386
387   * Main new feature:
388    * Added many option dialogs and reworked some of the old ones
389
390   * bugfixes, packaging and install:
391    * Fix nps bug
392    * Fix flipBlack option XBoard with board texture
393    * Fix two bugs in reading position diagram
394    * Fix parsing bug of FRC castling
395    * Fix bugs in FRC castling rights
396    * Fix display of promotion piece in ICS superchess
397    * Fix path browsing in WinBoard
398    * Fix use of game/position file in first match game
399    * Fix build on Mac OS X
400    * install bitmaps and sounds during "make install"
401    * some minor bug fixes
402    * code cleanup (e.g. 64 bit warnings, removed malloc.h)
403
404 ** Version 4.5.1 **
405
406    (see http://www.gnu.org/software/xboard/whats_new/4.5.1/ )
407
408  * bugfixes:
409    * Revert "Implement -reset option feature in WinBoard"
410    * Fix deselection of greyed-out variant button (WB)
411    * Put warning in HTML help
412    * Fix unmarked translation
413    * Fix Alfil bug
414    * Fix variant janus size prefix
415    * Fix Xiangqi King facing
416    * Fix showing of user move after adjudication
417    * Make language choice from menu persistent
418    * Fix ICS channel 0
419    * Fix some resource leaks
420
421  * fixed packaging issues:
422    * add DIFFSTAT and SHORTLOG to tar-ball
423    * added history.c to the tar-ball. Needed for Winboard
424
425  * fixed compiler warnings/errors:
426    * added missing header file for sprintf
427    * added missing #includes and missing prototypes to filebrowser
428    * Fix MSVC compilability
429    * Fix 64-bit Windows compilability
430    * Fix MSVC snprintf problem
431
432  * fixed configure problems:
433    * fixed configure script to correctly detect Xaw3d library
434    * updated configure.ac to check for Xaw header files
435
436  * misc:
437    * Fix two typos in option names in texi file
438
439
440 ** Version 4.5.0 **
441
442    (see http://www.gnu.org/software/xboard/whats_new/4.5.0/ for more details)
443
444     General
445     -------
446     * User specific settings files
447     * More logical (and standard) menu structure
448     * Translation into other languages (WB)
449     * Walking the PV of an engine
450     * Exploring variations
451     * Playing through PGN variations
452     * Annotating a game with analysis results
453     * Editing Comments
454     * Controlling move choice of the GUI book
455     * Keeping the clock in sync in tournaments
456     * Starting an engine match from the menu
457     * Fixed thinking time per move
458     * Improved multi-PV support
459     * Where your pieces can move to
460     * Editing crazyhouse holdings
461     * Thai Chess (Makruk) and Seirawan Chess
462     * Non-compliant FEN and SAN input
463     * Improved Xiangqi adjudications
464     * Allowing engines to setup a position
465
466     Merging XBoard & WinBoard
467     ------------------------------
468     * Evaluation graph (XB)
469     * Settings file (XB)
470     * Filtering the game list (XB)
471     * Game-List options dialog (XB)
472     * Recalling the ICS input history (XB)
473     * Aribtrary board textures (XB)
474     * Highlight arrow (XB)
475
476     ICS-client Enhancements
477     -----------------------
478     * Maintaining a healty ICS connection
479     * Claiming a draw after your move
480     * ICS seek graph
481     * One-click moving
482     * Observing your bughouse partner
483     * Improved Chat-Box interface (WB)
484     * Uploading games to an ICS
485     * Side-by-side boards
486
487
488 ** Version 4.4.4 **
489
490  * Repair exit-popup deadlock patch
491  * Fix bug in sending "usermove" when forcing book moves
492  * Let move parser return ImpossibleMove for off-board moves
493  * Prevent engine stall on perpetual-chase evasion
494  * Pop down old tags on loadng new game in WinBoard
495  * Fix game end during dragging
496  * Repair animate dragging
497  * Fix bug in sending cores command to engine
498  * Fix parsing of SAN shogi promotions
499  * Fix variant switch on PGN loading
500  * Allow -flipBlack to work with font-based piece rendering
501  * Allow font-based piece rendering in board sizes below petite
502  * Fix WinBoard game-list title
503  * Fix deadlock in match-result display
504  * Fix regression in colorization of zippy-matched commands
505  * Fix zippy handling of draw offers from ICS
506  * Make some more zippy code obey the --disable-zippy flag
507  * Remove unnecessary double equals from configure.ac.
508  * Cut board squares out of texture bitmap more cleverly
509
510 ** Version 4.4.3 **
511
512  * Add variant Makruk
513  * Implement castling for variant CRC
514  * Extensive bugfix of -autoKibitz
515  * Accept <Enter> for changing chat partner
516  * Change opening array -variant fairy
517  * Send continuation lines to chat box they belong to
518  * Use -keepAlive option to determine connection health
519  * Fix of ancient WinBoard bug: check value of int options
520  * Fix bug for incommensurate time odds
521  * Fix piece-to-char table -variant fairy
522  * Fix TwoKings ICS castling-rights bug
523  * Fix reading castling rights FEN in knightmate and twokings
524  * Fix OO-castling in FRC after pasting FEN
525  * Fix bug in display of logos
526  * Fix highlighting bug in XBoard
527  * Match handles with multiple titles for channel Chat Boxes
528  * Make WinBoard makefiles use parser.c in XBoard directory
529  * Added missing sounds files to be able to compile on windows
530  * Added logo files for xboard
531  * Bugfix stale first-click
532  * Fix copying of WB Chat Window contents
533  * Fix XB crash on giving keyboard focus to non-text widget
534  * Bugfix copying from Chat Box, own lines
535  * Fix 'mamer bug' in Chat Boxes
536  * Fix copying of kibitzed lines from WB Engine-Output window
537  * Do not recognize non-ICS variants from PGN event tag
538  * Remake programVersion string after receiving engine features
539  * Set keyboard focus at startup to board window
540  * Fix window-position upset on failing engine start in WinBoard
541  * Allow lower-case promochar in moves of type h8=Q
542  * Small bugfixed for JAWS version
543  * Small bugfixes
544
545 ** Version 4.4.2 **
546
547  * add Winboard source files into tar-ball
548  * remove trailing \r in xboard output
549  * double buffer size to prevent overflow
550  * fix problem with empty string in -firstNeedsNoncompliantFEN
551  * updates makefiles to include dependency on config.h
552  * correctly apply some check boxes from the option menu
553  * score sign in analysis mode
554  * fix for bug #28077: xboard needs to link against x11
555  * fix castling rights when copying FEN to clipboard (again)
556  * fixed some outstanding pixmaps
557  * fix the irritating wandering off of the MoveHistory window in XBoard on opening/closing.
558  * use xtell for talking to handles, but tell for talking into a channel.
559  * fix bug in bughouse drop menu
560  * removing some rather verbose debug messages that seem no longer needed.
561  * fix engine-sync on move-number type-in bug
562  * fix declaration of engineOutputDialogUp
563  * fix double start of zippy engine after switch to gothic
564  * the last move before the time control now gets its time listed in the PGN
565  * fix casting rights after FEN pasting
566  * fix crash on engine crash
567  * fixed build on openbsd
568  * cleaned up some debug messages and typos
569  * removed files that should only be in the windboard directory
570  * added missing library for build on OS X
571
572 ** Version 4.4.1 **
573
574  * added chat windows to keep track of multiple conversations (WinBoard only)
575  * allow the result comment as a display item in the game list
576  * added a "Mute All Sounds" item in the WinBoard Options menu
577  * new -forceIllegalMoves option
578  * new -keepAlive option (for ICS play)
579  * ported -autoDisplayComment and -autoDisplayTags to xboard, controling popups
580  * replaces analysispopup with engineoutputpopup in xboard
581  * allow copy/paste position and game to use clipboard (xboard)
582  * updated several bitmaps (xboard)
583  * Made the beep sounds for JAWS board navigation configurable
584    through command-line options
585  * added the result comment to the game-list tags when the game
586    list is exported to the clipboard
587  * updated RTF docs
588  * fixed premove problem
589  * fixed engine did not start playing when out of GUI book on second
590    move with white
591  * fix bug using opening books (file were not closed)
592  * fixed crash when opening Engine #1 Settings when there were no
593    text-edit options in the dialog
594  * fixed loading of games from command lines, fixes cmail bug
595  * fix joining lines split by ICS and resizing terminal window when using ICS
596    (new option -keepLineBreaksICS, -wrapContinuationSequence, -useInternalWrap)
597  * fixed -autoDisplayComment
598  * fixed wrong default value for engineDebugOutput in xboard
599  * swapped 'tell' and 'message' parsing order for correct colorization.
600  * fixed parse bug for pgn files
601  * fix for edit-position "moves" being sent by XBoard to the engine
602  * bugfix for protocol extensions: egtbpath -> egtpath
603  * fix bug in parser
604  * further bugfixes:  #8847, #10990, #27427, #27642,
605    #27666, #27667, #27668, #27715, #27751, #27760,
606    #27772, #27799, #27826 and several small ones
607  * use "make distcheck" to generate tar-balls
608  * prepared a system to internationalize winboard menus
609  * improved mouse handler
610  * rewrote wevalgraph for better frontend/backend separation
611  * code cleanup
612
613 ** Version 4.4.0 **
614
615 A new release of both XBoard and WinBoard is now available.  Version
616 4.4.0 includes many changes. It is the first major release of
617 xboard/winboard after a fork of the project after version 4.2.7. It
618 includes small changes made in the main line and changes made by a
619 fork of Alessandro Scotti and lots of changes made afterwards by
620 H.G. Muller (released as versions 4.3.x). This release represents a
621 unified version of all changes made after the fork. It includes many
622 new features and bugfixes.
623
624 You can get both XBoard and WinBoard from the Savannah
625 project pages:
626
627 https://savannah.gnu.org/projects/xboard/
628
629 If you find a bug, please report it in the bug tracker at
630 https://savannah.gnu.org/projects/xboard/ or by email to bug-xboard
631 (AT) gnu.org.
632
633
634 ** Version 4.3.16 **
635
636 New command-line options
637 /niceEngines=N       for adjusting the priority of engine processes so they don't soak up all your system resources
638 /firstOptions="..."   Allows the setting of options that engines define through the feature option="..." commands
639 /secondOptions="..."
640 /firstLogo=filename.bmp  Displays the mentioned bitmap next to the clock (with H:W =1:2 aspect ratio) (WB only)
641 /secondLogo=filename.bmp
642 /autoLogo=false          get logo files automatically from engineDirectory\logo.bmp
643
644 General enhancements:
645 * New WB-protocol command: 'feature option="NAME -TYPE VALUE OTHER"', which engines can use to define options
646 * New WB-protocol command: 'option NAME VALUE' used to set value of engine-defned options.
647 * implements /delayAfterQuit and /delayBeforeQuit in XBoard, and uses SIGKILL to terminate rogue engine processes
648
649
650 ** Version 4.3.15 **
651
652 New command-line options
653 /rewindIndex=N (for the new auto-increment mode of the loadGameIndex or loadPositionIndex in match mode)
654 /sameColorGames=N (for playing a match where the same player has white all the time)
655 /egtFormats="..." (for specifying where various end-game tables are installed on the computer)
656
657 New menu items
658 + Time-odds factors can be set in the time-control dialog
659 + Nr of CPUs for SMP engines can be set in the Options -> UCI dialog
660 + Own-Book options can be switched from the Options -> UCI dialog
661 + The ScoreIsAbs options can be set from the Options -> Engine dialog
662 + New-Variant menu adds Superchess
663
664 General Enhancements:
665 * WinBoard engines can now also use the Polyglot opening book (implemented as general GUI book)
666 * New WB-protocol commands memory, cores and egtpath make interactive setting of these parameters
667   possible on WB engines
668 * New Polyglot is available that relays the interactive setting of these parameters to UCI engines
669 * Match mode suports an auto-increment mode, so that all games or positions from a file can be played
670 * Draw claims with Kings and an arbitrary number of like Bishops (e.g. KBBKB) are accepted
671
672 The source tree in original xboard 4.2.7 format can now be compiled under Cygwin with the aid
673 of the cygwin.mak file in the ~/winboard/ subdirectory of the source releasy, after you put
674 the hep-file from an executabl distribution there. Maefiles for other compilers are not updated
675 since 4.2.7, as I do not have those compilers.
676
677
678 ** Version 4.3.14 **
679
680 This relaese was not made by the GNU xboard team, but by H.G.Muller.
681 It mainly contains developments on WinBoard. Nevertheless, an attempt
682 has been started to back-port the enormous number of improvements that
683 have been made to WinBoard since the Linux and Windows developments branched
684 to xboard. This is reflected by the source tree now having the same format
685 as that of xboard 4.2.7, including all the xboard sources.
686
687 An enormous amount of work still has to be done to make the xboard version
688 fully equivalent to WinBoard, especially on user-interface side. As a modest
689 beginning, the xboard source files have been patched to allow their compilation
690 with the newer back-end files from WinBoard. To this end, the number of piece
691 types in xboard has been increased from 6 to 22, and the WinBoard bitmaps
692 have been converted to xboard source format (.bm) and are included in the
693 xboard bitmaps directory. Other quick patches include the coloring of the
694 board squares (for xiangqi and holdings), and some code in the user-move
695 handling to suppress all moves into or out of the area between board and
696 holdings in crazyhouse, and the treatment of king-captures-own-piece
697 as a possibly valid move (for FRC castling). This should make it possible
698 to run xboard with the new back-end files without too much inconvenience.
699
700 New xboard command-line options have been added to make the added back-end
701 features available. The include the new variants (as argument of the old
702 -variant option), -boardWidth, -boardHeight and -holdingsSize. Be sure
703 to call xboard with "-boardSize middling" or "-boardSize bulky" if you
704 want to play with fairy pieces, or xboard might crash due to unavailability
705 of bitmaps. Other added xboard options are:
706
707 ADJUDICATION OPTIONS:
708 -checkMates
709 -testClaims
710 -materialDraws
711 -trivialDraws
712 -ruleMoves
713 -repeatsToDraw
714 -adjudicateLossThreshold
715 -firstScoreAbsolute
716 -secondScoreAbsolute
717
718 TIME-CONTROL OPTIONS
719 -firstTimeOdds
720 -secondTimeOdds
721 -timeOddsMode
722 -firstNPS
723 -secondNPS
724
725 GENERAL OPTIONS
726 -matchPause
727 -engineDebugOutput
728 -userName
729 -pgnExtendedInfo
730 -pgnEventHeader
731 -hideThinkingFromHuman
732
733 This is all completely untested, but as the options merely switch on well-tested
734 code in the back-end, there should not be too many problems with them.
735 Bugs can be reported in the WinBoard forum.
736
737
738 ** Version 4.3.14k **
739
740 Compared to version 4.3.13 described below, this version features
741
742 New command-line options:
743 /autoKibitz (for relaying the PV info of the engine to the ICS)
744 /userName="..." (for setting the name of the Human player, also as menu)
745 /engineDebugOutput=N (controlling the writing of engine output to debug file)
746 /firstNPS=N (for time management by node count or CPU time)
747 /secondNPS=N (likewise for the other engine)
748
749 New Menu items
750 + Enter Username (same as /userName command-line option)
751 + Save Diagram (for saving the Chessboard display as bitmap file)
752 + Machine Both (not implemented yet, but menu item already provided)
753 + New-Variant menu adds CRC, Janus and Berolina (the latter only with legality testing off!)
754 + Any variant can be played from a shuffled opening setup
755
756 Bugfixes:
757 * Problems with switching the variant in ICS zippy mode solved
758 * In ICS observing mode game history is now fully accessible
759 * Moves are not fed to engine in zippy mode, when observing a game from a variant unknown to the engine
760 * a problem with loading PGN of FRC games with move disambiguation and initial castling rights was fixed.
761 * A bug in the clock display that made previous versions of WinBoard crash for tiny displays is fixed
762
763 General enhancements:
764 * variant name displayed in title bar in ICS mode, when not 'normal'
765 * when receiving a challenge in ICS zippy mode, it is checked if the engine supports the variant (/zippyVariants="..." can still be used to limit the allowed variants, and for protocol-1 engines is still the only thing to go on)
766 * when loading a game from a PGN file, WB automatically switches to the variant specified in the PGN tags
767 * when starting from a loaded position (using /loadPositionFile), this position will be used on subsequent 'New Game' commands as well (until we switch variant)
768
769 New is also that the source tree is now brought back in the original WinBoard 4.2.7 format, including
770 xboard source files. Note, however, that the xboard sources are from an older date, and I did not test
771 if they still compile together with the much newer backend sources. I did add code in xboard.c to recognize
772 the new command-line options I added since then, and in so far they are back-end options that should be enough
773 to make them work. This is completely untested, though; I did not even try to compile it. Last time anyone
774 built a working xboard.exe from this was at a stage where WinBoard did have adjustable board size, allowing
775 it to play Xiangqi. But no crazyhouse holdings yet.
776
777
778 ** Version 4.3.13a **
779
780 This version of WinBoard_F fixes several bugs in 4.3.12, and also addse a few new features.
781 The new features include:
782 - some more fairy pieces, so that each side now has 22 piece types in stead of 17,
783 making most fairy pieces available in board size "petite" (next to "bulky" and "middling"),
784 making the ArchBishop and Chancellor, as well as one wildcard piece (the Lance) available in all
785 sizes from "petite" to "bulky".
786 - The FRC support is fully fixed, both in local and ICS mode.
787 - A mechanism is provided for safe draw claiming in cases where a 3-fold repetition woud occur only
788   after your own move. In this case a draw will be awarded by WinBoard if the engine sends "offer draw"
789   before making its move.
790 - Genuine draw offers are not passed on immediately to the opponent but held up to when the offerer announces
791   its move.
792 - Variants FRC, Cylinder and Falcon are added to the "New Variant..." menu.
793 - Support for playing time-odds games is added. (Options /firstTimeOdds, /secondTimeOdds, /timeOddsMode)
794 - A mechanism is provided for attaching WinBoard options to the engine command, to create options that
795 follow the engine (e.g. time odds) in a tournament run under a tournament manager.
796 Bugfixes include:
797 - Shatranj in ICS mode (did not work at all before)
798 - Some draw adjudications (QRKR was mistaken for KRKR, and KBKB with like Bishops is now recognized)
799 - time info in the PGN is now correct
800
801 ** Winboard_F.4.3.12 release notes
802
803 This WinBoard (beta-)version is derived from Allessandro Scotti's
804 Winboard_x, and supports the following new options, mainly in the area
805 of adjudication of engine-engine games, improved Crazyhouse support,
806 and allowing variants with non-conventional pieces and or board
807 sizes. (All option are shown here with their default values):
808
809 /variant=normal
810 This (already existing) option has been expanded with
811 several new variants, involving non-conventional pieces and deviating
812 board sizes. The board size is automatically adapted to the selected
813 variant, unless explicitly overruled (see below). The new variants are
814 (with default board size, files x ranks, in parentheses):
815
816 variant name    Game           board     description
817 knightmate    Knightmate        (8x8)  Variant where the King moves as a Knight, and vice versa
818 capablanca    Capablanca Chess (10x8)  Variant featuring Archbishop and Chancellor as new pieces
819 gothic        Gothic Chess     (10x8)  Same as Capablanca, with a more interesting opening position
820 courier       Courier Chess    (12x8)  a Medieval form that combines elements of Shatranj and modern Chess
821 shogi         Shogi             (9x9)  Japanese Chess
822 xiangqi       Xiangqi          (9x10)  Chinese Chess
823 fairy         Fairy Chess       (8x8)  Variant were you can use all pieces of other variants together
824
825 The variant can be set from the newly added "File -> New Variant..."
826 sub-menu.  Extra board files are indicated by the letters i, j, k, l,
827 ... For boards with more than 9 ranks, the counting starts at zero!
828 More than 10 ranks is not tested and unlikely to work in the area of
829 PGN saving / reading. Non-FIDE pieces will be referred to in FENs and
830 PGN by letters that depend on the variant, and might collide with
831 piece designators in other variants. E.g. in Xiangqi 'C' is a Cannon,
832 in Capablanca Chess it is a Chancellor. Pieces that do not belong in a
833 variant cannot be addressed in FEN and PGN either, for as long as that
834 variant is selected, unless the letter assignment is overruled with
835 the aid of the /pieceToCharTable option. The variant is not saved in
836 the winboard.ini file; on start-up we always get variant "normal"
837 unless we use the command-line option, or have added the option to the
838 winboard.ini file manually (in which case it will disappear when this
839 file is overwritten by WinBoard saving its options).  WinBoard_F knows
840 the movement of all pieces occurring in Capablanca Chess (of which
841 FIDE Chess is a subset), Shatranj, Courier, Xiangqi and 9x9 Shogi, so
842 that these games can be played with legality testing enabled.
843
844 /pieceToCharTable="PNBRQFWEMOUHACGSKpnbrqfwemouhacgsk"
845 Each piece that WinBoard knows (in its legality test) has a letter
846 associated with it, by which it will be referred to in FEN or PGN. The
847 default assignment can be overruled with this option. The value has to
848 be a string of even length, with at least 12 characters. The first
849 half of the string designates the white pieces, the second half the
850 black.  The last letter for each color will be assigned to the
851 King. (This is the piece that moves as an orthodox King; note that
852 Nightmate and Xiangqi have a different royal piece.) All letters
853 before it will be assigned to the other pieces in the order:
854
855 P Pawn                 (move often depends on variant)
856 N Knight               (move subtly different in Xiangqi (where it is written as H) or Shogi)
857 B Bishop
858 R Rook
859 Q Queen                (Lance L in Shogi)
860 F Ferz/General         (The Shatranj 'Queen' and Xiangqi 'Adviser', used for Silver General S in Shogi.)
861 W Wazir/GrandVizer     (Gold General G in Shogi, in Xiangqi it is royal and denoted by K)
862 E Alfil/Elephant       (Moves subtly different in Xiangqi vs Shatranj/Courier)
863 M Commoner/Man
864 O Cannon/Pao
865 U Unicorn              (representation of Royal Knight in Knightmate, used as promoted Pawn in Shogi)
866 H Nightrider           (Promoted Knight in Shogi and CrazyHouse)
867 A Archbishop/Cardinal  (Promoted Bishop in Shogi and CrazyHouse)
868 C Chancellor/Marshall  (Promoted Rook   in Shogi and CrazyHouse)
869 G Grasshopper          (Promoted Queen in Crazyhouse, promoted Lance in Shogi)
870 S                      (Promoted Silver in Shogi)
871 K King
872
873 Pieces that are not mentioned (because the argument has less than 34
874 characters) will remain disabled. Mentioned pieces can be disabled by
875 assigning them a '.' (period). They are then not recognized in FEN or
876 PGN input. Non-FIDE pieces that are not assigned a letter will also
877 not appear on the promotion menu. It is not advisable to disable a
878 piece that is present in the opening position of the selected variant,
879 though.
880 Promoted pieces that need to be distinguished from original pieces of
881 the same type (because of demotion on capture and transfer to the
882 holdings) will be indicated by the letter for the unpromoted piece
883 with a '+' in front of it (Shogi), or by the letter of the promoted
884 piece with a '~' after it (Crazyhouse, Bughouse, in general everything
885 with holdings that is not Shogi). To achieve this, they should be
886 assigned the characters '+' or '~', respectively.
887 All the new pieces have a native bitmap representation in the board
888 sizes 'bulky' and 'middling'. For all window sizes that do not support
889 such fairy bitmaps, promoted NBRQ are represented as a 2-sizes-smaller
890 normal piece symbol, so that Crazyhouse can be played at any
891 size. People disliking the fairy representations might even prefer
892 this.
893 There is an enhanced 'Edit Position' menu popup (right-clicking on the
894 squares after selecting this mode in the main menu), featuring some
895 common non-FIDE pieces, and 'promote' and 'demote' options to make
896 those not directly in the menu. The promotion popup shows ArchBishop
897 and Chancellor in Capablanca and Gothic, (or in fact in any game where
898 this piece is not disabled or a promoted version of a normal piece),
899 and leaves only the options YES / NO in Shogi. In Xiangqi there are no
900 promotions.
901
902 /fontPieceToCharTable="PNBRQFWEMOUHACGSKpnbrqfwemouhacgsk"
903 This option is similar to /pieceToCharTable, but sets the font
904 character that is used to display the piece on the screen (when
905 font-based rendering is in use), rather than in the FEN or PGN. The
906 default setting should work with George Tsavdaris' WinboardF font,
907 which uses the 'intuitive' mapping of font characters to symbols. With
908 font-based rendering the fairy pieces can be used at any board size.
909 Note that UHACGS are also used to represent the promoted versions of
910 PNBRQF, in games like Crazyhouse and Shogi, where the promotion has to
911 be undone on capture. In such games you are likely to prefer a
912 different representation of those pieces then when they represent true
913 fairy pieces.
914
915 /flipBlack=FALSE
916 Traditional Shogi bitmaps are only included for size "moderate". For
917 other sizes you must depend on font-based rendering.
918
919 /detectMate=TRUE
920 /testClaim=TRUE
921 /materialDraws=TRUE
922 /trivialDraws=FALSE
923 /ruleMoves=51
924 /repeatsToDraw=6
925 The option /materialDraws=TRUE causes games with insufficient mating
926 material to be adjudicated immediately as draws, in case the engines
927 would not claim these draws. This applies to KK, KNK and KBK.  The
928 option /trivialDraws adjudicates KNNK, KBKB, KNKN, KBKN, KRKR and KQKQ
929 to draws after 3 moves (to allow for a quick tactical win). Note that
930 in KQKQ this might not be sound, but that problem would disappear once
931 bitbase probing is implemented.
932
933 Clocks
934 The flag-fell condition is now indicated as '(!)' behind the displayed
935 time, to eliminate the necessity for overwriting the message in the
936 title bar (which might contain indispensible information in match
937 mode).
938
939 Other improvements / changes
940 Castling rights and e.p. rights are now fully maintained, and
941 considered in legality testing. They are imported from and written to
942 FEN, as is the 50-move counter. (When reading an incomplete FEN they
943 are still guessed, though.)  The time (in sec, or min:sec) is now
944 always stored together with the PV information to the PGN, if storing
945 the latter was requested (through ticking "extended PGN info" in
946 "Options -> General..."). The saved time is the WinBoard clock time
947 (as opposed to the time reported by the engine).
948
949 ** Winboard_F.4.3.8 release notes
950
951 This Winboard supports the following new options (shown here with their default values):
952
953 /variant=normal
954 This (already existing) option has been expanded with several new
955 variants, involving non-conventional pieces and deviating board
956 sizes. The board size is automatically adapted to the selected
957 variant, unless explicitly overruled (see below). The new variants are
958 (with default board size, files x ranks, in parentheses):
959
960 variant name    Game           board     description
961 knightmate    Knightmate        (8x8)  Variant where the King moves as a Knight, and vice versa
962 capablanca    Capablanca Chess (10x8)  Variant featuring Archbishop and Chancellor as new pieces
963 gothic        Gothic Chess     (10x8)  Same as Capablanca, with a more interesting opening position
964 courier       Courier Chess    (12x8)  a Medieval form that combines elements of Shatranj and modern Chess
965 shogi         Shogi             (9x9)  Japanese Chess
966 xiangqi       Xiangqi          (9x10)  Chinese Chess
967 fairy         Fairy Chess       (8x8)  Variant were you can use all pieces of other variants together
968
969 The variant can be set from the newly added "File -> New Variant..." sub-menu.
970 Extra board files are indicated by the letters i, j, k, l, ... For
971 boards with more than 9 ranks, the counting starts at zero! Non-FIDE
972 pieces will be referred to in FENs and PGN by letters that depend on
973 the variant, and might collide with piece designators in other
974 variants. E.g. in Xiangqi 'C' is a Cannon, in Capablanca Chess it is a
975 Chancellor. Pieces that do not belong in a variant cannot be addressed
976 in FEN and PGN either as long as that variant is selected, unless the
977 letter assignment is overruled by the /pieceToCharTable option. The
978 variant is not saved in the winboard.ini file; on start-up we always
979 get variant "normal" unless we use the command-line opton, or have
980 added the option to the winboard.ini file manually (in which case it
981 will disappear when this file is overwritten).  WinBoard_F knows the
982 movement of all pieces occurring in Capablanca Chess (of which FIDE
983 Chess is a subset), Shatranj, Courier, Xiangqi and 9x9 Shogi, so that
984 these games can be played with legality testing enabled.
985
986 /pieceToCharTable="PNBRQFWEMOUHACGSKpnbrqfwemouhacgsk"
987 Each piece that WinBoard knows (in its legality test) has a letter
988 associated with it, by which it will be referred to in FEN or PGN. The
989 default assignment can be overruled with this option. The value has to
990 be a string of even length, with at least 12 characters. The first
991 half of the string designates the white pieces, the second half the
992 black.  The last letter for each color will be assigned to the
993 King. (This is the piece that moves as an orthodox King; note that
994 Nightmate and Xiangqi have a different royal piece.) All letters
995 before it will be assigned to the other pieces in the order:
996
997 P Pawn                 (move often depends on variant)
998 N Knight               (move subtly different in Xiangqi (where it is written as H) or Shogi)
999 B Bishop
1000 R Rook
1001 Q Queen                (Lance L in Shogi)
1002 F Ferz/General         (Silver General S in Shogi)
1003 W Wazir/GrandVizer     (Gold General G in Shogi, in Xiangqi it is royal and denoted by K)
1004 E Alfil/Elephant       (Moves subtly different in Xiangqi vs Shatranj/Courier)
1005 M Commoner/Man
1006 O Cannon/Pao
1007 U Unicorn              (representation of Royal Knight in Knightmate, used as promoted Pawn in Shogi)
1008 H Nightrider           (Promoted Knight in Shogi and CrazyHouse)
1009 A Archbishop/Cardinal  (Promoted Bishop in Shogi and CrazyHouse)
1010 C Chancellor/Marshall  (Promoted Rook   in Shogi and CrazyHouse)
1011 G Grasshopper          (Promoted Queen in Crazyhouse, promoted Lance in Shogi)
1012 S                      (Promoted Silver in Shogi)
1013 K King
1014
1015 Pieces that are not mentioned (because the argument has less than 34
1016 characters) will remain disabled. Mentioned pieces can be disabled by
1017 assigning them a '.' (period). They are then not recognized in FEN or
1018 PGN input. It is not advisable to disable a piece that is present in
1019 the opening position of the selected variant, though.
1020 Promoted pieces that need to be distinguished from original pieces of
1021 the same type (because of demotion on capture and transfer to the
1022 holdings) will be indicated by the letter for the unpromoted piece
1023 with a '+' in front of it (Shogi), or by the letter of the promoted
1024 piece with a '~' after it (Crazyhouse, Bughouse, in general everything
1025 with holdings that is not Shogi).
1026 All the new pieces have a native biytmap representation in the board
1027 sizes 'bulky' and 'middling'. For all window sizes that do not support
1028 such fairy bitmaps, promoted NBRQ are represented as a 2-sizes-smaller
1029 normal piece symbol, so that Crazyhouse can be played at any
1030 size. People disliking the fairy representations might even prefer
1031 that.
1032 There is an enhanced 'Edit Position' menu popup (right-clicking on the
1033 squares after selecting this mode in the main menu), featuring some
1034 common non-FIDE pieces, and 'promote' and 'demote' options to make
1035 those not directly in the menu. The promotion popup shows ArchBishop
1036 and Chancellor in Capablanca and Gothic, (or in fact in any game where
1037 this piece is not disabled), and leaves only the options YES / NO in
1038 Shogi. In Xiangqi there are no promotions.
1039
1040 /alphaRank=FALSE
1041 This option does not seem to work for reading PGN files. Saving works
1042 fine. For now, using it is not recommended. In the future it might be
1043 redefined as only affecting engine-engine communication, .
1044
1045 /flipBlack=FALSE
1046 Setting this option will cause upside-down display of the native piece
1047 bitmaps used to represent the pieces of the side that plays black, as
1048 would be needed for a traditional representation of Shogi pieces. It
1049 can be set from the "Options -> Board..." sub-menu, and it is saved in
1050 the winboard.ini file. For now, traditional Shogi bitmaps are not
1051 included, though.
1052
1053 Other improvements / changes
1054 Castling rights and e.p. rights are now fully maintained, and
1055 considered in legality testing. They are imported from and written to
1056 FEN, as is the 50-move counter. The time (in sec, or min:sec) is now
1057 always stored together with the PV information to the PGN, if storing
1058 the latter was requested (through ticking 'extended PGN info' in
1059 "Options -> General..."). The saved time is the Winboard clock time
1060 (as opposed to the time reported by the engine).
1061
1062 ** Winboard_F.4.3.7 release notes
1063
1064 This Winboard supports the following new options (shown here with
1065 their default values):
1066
1067 /variant=normal
1068 This (already existing) option has been expanded with several new
1069 variants, involving non-conventional pieces and deviating board
1070 sizes. The board size is automatically adapted to the selected
1071 variant, unless explicitly overruled (see below). The new variants are
1072 (with default board size, files x ranks, in parentheses):
1073
1074 variant name    Game           board     description
1075 knightmate    Knightmate        (8x8)  Variant where the King moves as a Knight, and vice versa
1076 capablanca    Capablanca Chess (10x8)  Variant featuring Archbishop and Chancellor as new pieces
1077 gothic        Gothic Chess     (10x8)  Same as Capablanca, with a more interesting opening position
1078 courier       Courier Chess    (12x8)  a Medieval form that combines elements of Shatranj and modern Chess
1079 shogi         Shogi             (9x9)  Japanese Chess
1080 xiangqi       Xiangqi          (9x10)  Chinese Chess
1081 fairy         Fairy Chess       (8x8)  Variant were you can use all pieces of other variants together
1082
1083 The variant can be set from the newly added "File -> New Variant..." sub-menu.
1084 Extra board files are indicated by the letters i, j, k, l, ... For
1085 boards with more than 9 ranks, the counting starts at zero! Non-FIDE
1086 pieces will be referred to in FENs and PGN by letters that depend on
1087 the variant, and might collide with piece designators in other
1088 variants. E.g. in Xiangqi 'C' is a Cannon, in Capablanca Chess it is a
1089 Chancellor. Pieces that do not belong in a variant cannot be addressed
1090 in FEN and PGN either as long as that variant is selected, unless the
1091 letter assignment is overruled by the /pieceToCharTable option. The
1092 variant is not saved in the winboard.ini file; on start-up we always
1093 get variant "normal" unless we use the command-line opton, or have
1094 added the option to the winboard.ini file manually (in which case it
1095 will disappear when this file is overwritten).  WinBoard_F knows the
1096 movement of all pieces occurring in Capablanca Chess (of which FIDE
1097 Chess is a subset), Shatranj, Courier, Xiangqi and 9x9 Shogi, so that
1098 these games can be played with legality testing enabled.
1099
1100 /pieceToCharTable="PNBRQFWEMOUHACGSKpnbrqfwemouhacgsk"
1101 Each piece that WinBoard knows (in its legality test) has a letter
1102 associated with it, by which it will be referred to in FEN or PGN. The
1103 default assignment can be overruled with this option. The value has to
1104 be a string of even length, with at least 12 characters. The first
1105 half of the string designates the white pieces, the second half the
1106 black.  The last letter for each color will be assigned to the
1107 King. (This is the piece that moves as an orthodox King; note that
1108 Nightmate and Xiangqi have a different royal piece.) All letters
1109 before it will be assigned to the other pieces in the order:
1110
1111 P Pawn                 (move often depends on variant)
1112 N Knight               (move subtly different in Xiangqi (where it is written as H) or Shogi)
1113 B Bishop
1114 R Rook
1115 Q Queen                (Lance L in Shogi)
1116 F Ferz/General         (Silver General S in Shogi)
1117 W Wazir/GrandVizer     (Gold General G in Shogi, in Xiangqi it is royal and denoted by K)
1118 E Alfil/Elephant       (Moves subtly different in Xiangqi vs Shatranj/Courier)
1119 M Commoner/Man
1120 O Cannon/Pao
1121 U Unicorn              (representation of Royal Knight in Knightmate, used as promoted Pawn in Shogi)
1122 H Nightrider           (Promoted Knight in Shogi and CrazyHouse)
1123 A Archbishop/Cardinal  (Promoted Bishop in Shogi and CrazyHouse)
1124 C Chancellor/Marshall  (Promoted Rook   in Shogi and CrazyHouse)
1125 G Grasshopper          (Promoted Queen in Crazyhouse, promoted Lance in Shogi)
1126 S                      (Promoted Silver in Shogi)
1127 K King
1128
1129 Pieces that are not mentioned (because the argument has less than 34
1130 characters) will remain disabled. Mentioned pieces can be disabled by
1131 assigning them a '.' (period). They are then not recognized in FEN or
1132 PGN input. It is not advisable to disable a piece that is present in
1133 the opening position of the selected variant, though.
1134 Promoted pieces that need to be distinguished from original pieces of
1135 the same type (because of demotion on capture and transfer to the
1136 holdings) will be indicated by the letter for the unpromoted piece
1137 with a '+' in front of it (Shogi), or by the letter of the promoted
1138 piece with a '~' after it (Crazyhouse, Bughouse, in general everything
1139 with holdings that is not Shogi).
1140 All the new pieces have a native biytmap representation in the board
1141 sizes 'bulky' and 'middling'. For all window sizes that do not support
1142 such fairy bitmaps, promoted NBRQ are represented as a 2-sizes-smaller
1143 normal piece symbol, so that Crazyhouse can be played at any
1144 size. People disliking the fairy representations might even prefer
1145 that.
1146 There is an enhanced 'Edit Position' menu popup (right-clicking on the
1147 squares after selecting this mode in the main menu), featuring some
1148 common non-FIDE pieces, and 'promote' and 'demote' options to make
1149 those not directly in the menu. The promotion popup shows ArchBishop
1150 and Chancellor in Capablanca and Gothic, (or in fact in any game where
1151 this piece is not disabled), and leaves only the options YES / NO in
1152 Shogi. In Xiangqi there are no promotions.
1153
1154 /fontPieceToCharTable="PNBRQFWEMOUHACGSKpnbrqfwemouhacgsk"
1155 This option is similar to /pieceToCharTable, but sets the font
1156 character that is used to display the piece on the screen (when
1157 font-based rendering is in use), rather than in the FEN or PGN. The
1158 default setting should work with the WinboardF font, which uses the
1159 'intuitive' mapping of font characters to symbols.  Note that UHACGS
1160 are also used to represent the promoted versions of PNBRQF, in games
1161 like Crazyhouse and Shogi, where the promotion has to be undone on
1162 capture.
1163
1164 /boardWidth=-1 /boardHeight=-1
1165 Set a number of files and ranks of the playing board to a value that
1166 will override the defaults for the variant that is selected. A value
1167 of -1 means the variant default board size will be used for the
1168 corresponding parameter (and is itself the default value of these
1169 options). These parameters can be set in the "Files -> New Variant..."
1170 sub-menu, where they are reset to the default -1 is you OK the chosen
1171 variant without typing something to overrule it. These parameters are
1172 saved in the winboard.ini file. (But unless you saved while a variant
1173 with board-size override was selected, they will always be saved as
1174 -1.)
1175 A variant with a non-standard board size will be communicated to the
1176 engine(s) with the board size prefixed to the variant name,
1177 e.g. "variant 12x8_capablanca". In protocol 2 the engine must first
1178 enable this feature by sending "boardsizeFxR" amongst the accepted
1179 variants, where F is the maximum number of files, and R the maximum
1180 number of ranks, as decimal numbers.
1181
1182 /holdingsSize=-1
1183 Set the size of the holdings for dropable pieces to a value that will
1184 override the default for the variant that is selected. A value of -1
1185 means the variant default holdings size will be used for that
1186 parameter (and is itself the default value of this options). This
1187 parameter can be set in the Files -> New Variant... sub-menu, where it
1188 is reset to the default -1 is you OK the chosen variant without typing
1189 something to overrule it. This parameters is saved in the winboard.ini
1190 file.  To disable holdings, set their size to 0. They will then not be
1191 displayed. For non-zero holding size N, the holdings are displayed
1192 left and right of the board, and piece drops can be effected by
1193 dragging pieces from the holdings to the drop square. In bughouse, the
1194 holdings will be filled by the ICS. In all other variants, captured
1195 pieces will go into the holdings (after reversing their color). Only
1196 the first N pieces of the /pieceToCharTable argument will go into the
1197 holdings. All other pieces will be converted to Pawns. (In Shogi,
1198 however they will be demoted in the regular way before determining if
1199 they fit.) Pieces that are disabled (per default and per
1200 /pieceToCharTable option) might not be counted when determining what
1201 are the first N pieces.  Non-standard holdingsize will be communicated
1202 to the engine by prefixing it (together with the board size, even if
1203 this is standard) to the variant name, e.g. "variant 7x7+5_shogi". In
1204 protocol 2 the engine should enable this feature by sending
1205 "holdingsH" amongst the variant names, where H is the maximum
1206 acceptable holdings size as a decimal number.
1207
1208 /alphaRank=FALSE
1209 When this parameter is true, a-h are converted to 1-9, and vice versa,
1210 in all move output and input (to PGN files or SAN move display as well
1211 as in communication with the engine). This might be useful for Shogi,
1212 where conventionally one uses letters to designate ranks, and digits
1213 to designate files. Engines that want to use this option must make
1214 sure pieces are never represented by lower case! This option can be
1215 set from the Files -> New Variant... menu, where it defaults to FALSE
1216 unless you explicitly set it. It is not saved in the winboard.ini
1217 file.  Note that the PGN format in Shogi also leaves out the trailing
1218 '+' as check indicator: In Shogi such a trailing '+' means promotion,
1219 while a trailing '=' means defer promotion. Prefix '+' signs are used
1220 on moves with promoted pieces, disambiguation is done western SAN
1221 style.
1222
1223 /allWhite=FALSE
1224 Causes the outline of the 'white' pieces to be superimposed onto the
1225 'black' piece symbols as well (as a black outline) when native bitmaps
1226 are used (as opposed to font-based rendering). This is useful if we
1227 choose a very light color to represent the 'black' pieces. It might be
1228 particularly useful in Shogi, where the conventional representation of
1229 the 'black' pieces is as upside-down white pieces, so that both colors
1230 would be white. This option is saved in the winboard.ini file, and can
1231 be set in the "Options -> Board..." sub-menu.
1232
1233 /flipBlack=FALSE
1234 This option is reserved for future use. It will cause upside-down
1235 display of the 'black' native piece bitmaps, as would be needed for
1236 Shogi. For now it can be set from the "Options -> Board..." sub-menu,
1237 and it is saved in the winboard.ini file, but it is ignored.
1238
1239 /detectMate=TRUE
1240 /testClaim=TRUE
1241 /materialDraws=TRUE
1242 /trivialDraws=FALSE
1243 /ruleMoves=51
1244 /repeatsToDraw=6
1245 These are all options that only affect engine-engine play, and can be
1246 set from the "Options -> Engine..." sub-menu. They are all related to
1247 adjudication of games by the GUI. Legality checking must be switched
1248 on for them to work.  If /detectMate is TRUE, the GUI recognizes
1249 checkmate and stalemate (but not in games with holdings!), and ends
1250 the game accordingly before the engines can claim. This is convenient
1251 for play with engines that fail to claim, and just exit.  With
1252 /testClaim set, all result and illegal-move claims by engines that
1253 claim more than their own loss are scrutinized for validity, and false
1254 claims result in forfeit of the game. Useful with buggy engines.  The
1255 option /materialDraws=TRUE causes games with insufficient mating
1256 material to be adjudicated immediately as draws, in case the engines
1257 would not claim them.  The option /trivialDraws adjudicates KNNK,
1258 KBKB, KNKN, KBKN, KRKR and KQKQ to draws after 3 moves (to allow for a
1259 quick tactical win. Note that in KQKQ this might not be sound, but
1260 that problem would disappear once bitbase probing is added).  The
1261 /ruleMoves determine after how many reversible moves the game is
1262 adjudicated as a draw. Setting this to 0 turns this option off. Draw
1263 claims by the engine are still accepted (by /testClaim) after 50
1264 reversible moves, even if /ruleMoves species a larger number. Note
1265 that it is perfectly legal according to FIDE rules to play on after 50
1266 reversible moves, but in tournaments having two engines that want to
1267 play on forever is a nuisance in endings like KBNKR, where one of the
1268 engines thinks it is ahead and can avoids repeats virtually forever.
1269 The option /repeatsToDraw makes the GUI adjudicate a game as draw
1270 after the same position has occurred the specified number of times. If
1271 it is set to a value > 3, engines can still claim the draw after
1272 3-fold repeat.  All these options are saved in the winboard.ini file.
1273
1274 Clocks
1275 There is an "Options -> flip Clocks" command, that swaps the position
1276 of white and black clocks (convenient in over-the-board matches, where
1277 the screen is next to the board, and you want your own time to be
1278 displayed on your side of the screen). The clocks can be adjusted in
1279 "edit game" mode: right-clicking them adds one minute, left-clicking
1280 subtracts one minute. (Also for OTB matches, to keep them synchronized
1281 with the official match clock.) The flag-fell condition is now
1282 indicated as (!) behind the time.
1283
1284 Other improvements
1285 Castling rights and e.p. rights are now fully maintained, and
1286 considered in legality testing. They are imported from and written to
1287 FEN, as is the 50-move counter.
1288
1289 ** Winboard_F 4.3.2
1290
1291 These are the release notes of Winboard_F 4.3.2, which is released
1292 under the GPL.  This version was derived from Allessandro Scotti's
1293 Winboard_x 4.2.7 source files.  It only includes the files that were
1294 changed:
1295
1296 config.h
1297 common.h
1298 parser.h
1299 moves.h
1300 resource.h
1301
1302 winboard.c
1303 backend.c
1304 moves.c
1305
1306 parser.l
1307 winboard.rc
1308
1309 and some bitmaps for piece symbols
1310
1311 I made modifications in the following areas:
1312
1313 1) Adjudication and claim verification
1314 2) Fairy pieces and board sizes other than 8x8
1315 3) Miscellaneous
1316
1317 Miscellaneous
1318
1319 /matchPause=10000
1320 is an option to set the length of the pause between two games of a
1321 match. The value is in msec, default value is 10000 (I will present
1322 all newly implemented options with their default value as example). Be
1323 aware that some engines might not be stopped yet if you make the pause
1324 too small, but might still be puking output, which then will interfere
1325 with the next game. But the fixed value of 10 sec of the old Winboard
1326 seemed like overdoing it.
1327
1328 Time info in PGN
1329 When you ask for the PV-info to be stored in the PGN (a Winboard_x
1330 option), it now also stores the time spent on the move with it.
1331
1332 Flag fell
1333 In engine-engine games the messge "white/black/both" flag(s) fell" no
1334 longer appears in the window caption, but as an exclamation point
1335 behind the clock time. (To prevent the annoying overwriting of the
1336 normal header line).
1337
1338 Adjudications and Claim verification.
1339
1340 These functions are only present in engine-engine games, and only if
1341 legality-testing is switched on. (The latter will be typically
1342 switched off in games with bizarre rules, which the GUI doesn't know,
1343 and in that case the GUI can never have an opinion on the outcome of a
1344 game.)
1345
1346 Illegal-move forfeit
1347 As soon as one of the engines plays an illegal move, it forfeits the
1348 game. This feature was already present, but it should be 100% reliable
1349 now, as it also takes e.p. and castling rights into account, rather
1350 than erring on the safe side.
1351
1352 Illegal-move claim
1353 From the above, it follows that any illegal-move claims by an engine
1354 must be false, and will result in forfeiting the game. (In Winboard_x
1355 this message is ignored, causing the game or match to hang.)
1356
1357 Checkmate adjudication
1358 As soon as one of the engines does a move that results in checkmate,
1359 the GUI declares the game won, without waiting for the engine to claim
1360 it.
1361
1362 Insufficient mating material
1363 As soon as the material on the board has shrunk to KK, KNK or KBK, the
1364 game is declared draw.
1365
1366 /adjudicateLossThreshold=0
1367 This option was already present in Winboard_x, (to declare a game lost
1368 for which both engines agree for 3 moves that the score is below the
1369 given threshold), but a non-zero value is now also used to enable the
1370 following adjudications. If you only want the latter, just make the
1371 threshold impossibly low (-40000 will usually do the trick).
1372
1373 Trivial draws
1374 If we are 3 moves into a KQKQ, KRKR, KBKB KBKN or KNKN end-game, the
1375 game is adjudicated as draw.
1376
1377 /repeatsToDraw=6
1378 When the specified number of repeats occurs, the game is adjudicated
1379 draw. Should keep track of e.p. and castling rights. This does not
1380 require legality-testing to be switched on. The engines retain the
1381 legal right to claim after a 3-fold repetition, though. If you set
1382 this parameter to 3 or less, they will never get the chance. Better
1383 not set it to 1 or less.
1384
1385 /ruleMoves=51
1386 After the given number of full moves without capture or Pawn move, the
1387 game is adjudicated draw. Even without legality testing. The engines
1388 retain the legal right to claim after 50 moves.
1389
1390 /testClaims=FALSE
1391 When enabled, this option verifies all result claims made by the
1392 engines, and overrules the claim if it is false (forfeiting the game
1393 for the claimer). An engine can still safely claim a win for its
1394 opponent on a nonsense reason, though; this is taken to be the
1395 equivalent of 'resign'. Draw claims (made before a draw adjudication)
1396 are checked against the 50-move, 3-fold-repetition or
1397 insufficient-material rules. Win claims are always considered false,
1398 as the GUI adjudicates checkmates (and stalemates) before any engine
1399 can claim them.
1400
1401 Fairy-Chess support
1402
1403 /boardWidth=8
1404 Sets the number of files on the board. The additional files are named
1405 i, j, k, l... in PGN, and should be indicated this way in
1406 communicating moves to and from the engine. Currently works upto
1407 12. No guarantees on how the rest of the display (clocks, etc.) looks
1408 if you make this number < 8.
1409
1410 /boardHeight=8
1411 Sets the number of ranks. Extra ranks are numbered 9, 10, 11... in
1412 PGN. This is so far largely untested, and unlikely to work for
1413 double-digit ranks. Displaying boards with upto 12 ranks seems to
1414 work, though, but double-digit ranks might cause all kind of unforseen
1415 problems in PGN file and move parser, or in communication with the
1416 engine. To avoid such problems as much as possible, in boards with
1417 more than 9 ranks the counting of ranks will start at zero rather than
1418 one!
1419
1420 /fontPieceToCharTable="......."
1421 This paramater, controlling the mapping of font symbols to piece
1422 types, was already present in Winboard_x. The default is dependent on
1423 the font selected with the /renderPiecesWithFont option. It can now
1424 accept upto 32 pieces, but the length should always be even. The first
1425 half designates the white pieces, the second half the black, both in
1426 the order PNBRACHFEWDOGMQK. (The letters mentioned here are the
1427 letters by which the pieces will be indicated in PGN and FEN notation,
1428 what you have to give as argument depends on the font you use. A black
1429 king might be 'l', for instance).  If you give fewer then 32 pieces,
1430 this will go at the expense of what is just before Queen. So the last
1431 two symbols you give for each color are always Queen and King, the
1432 others are assigned in the order Pawn, Knight, ... Pieces that do not
1433 get a symbol assigned will remain invisible.
1434
1435 fairy-FEN support
1436 The letters ACDEFGHMOW are accepted in FENs in addition to the regular
1437 PNBRQK,(and of course the lower case versions for black), and are
1438 passed to the engine in a setboard or edit menu.  Double-digit skips
1439 are acceptable in FENs. 'x' is interpreted as a skip of 10.  Castling
1440 rights should no longer be ignored. (Doesn't work for FRC yet,
1441 though.)  The 50-move-plies field should also be meaningful now.
1442
1443 Legality testing for Fairy pieces
1444 There is a build in notion of what some of the new pieces can do, according to
1445 A = Archbishop (aka Cardinal) = N+B
1446 C = Chancellor (aka Marshall) = N+R
1447 F = Ferz (aka General), moves 1 step diagonal
1448 W = Wazir (aka Grand Vizer), moves 1 step orthogonal
1449 E = Elephant (aka Alfil), jumps 2 steps diagonal
1450 D = Dabbabah (aka War Machine), jumps 2 steps orthogonal
1451 M = Man (aka Commoner), moves as King, but is not a royal piece
1452 O = Cannon, moves along Rook lines, but cannot capture unless it jumps over
1453             exactly one piece (friend or foe), and captures the first piece
1454             it encounters thereafter. It can only jump if it captures something.
1455             The piece jumped over (the 'platform') is not affected.
1456 The other pieces have not yet any moves implemented:
1457 H = Nightrider
1458 G = Grasshopper
1459 In games that use the mentioned pieces as described (Shatranj,
1460 Courier, Capablanca Chess) you can leave legality testing on. If you
1461 use them to represent pieces that move differently, you should switch
1462 legality testing off.
1463
1464 Pawn moves
1465 Pawn motion is made dependent on the variant played: in Shatranj and
1466 Courier the double move is forbidden. In those games promotions are
1467 always to Ferz. In Capablanca Chess the ArchBishop and Chancellor also
1468 appear as choices in the promotion popup box.
1469
1470
1471 /variant="normal"
1472 Several new variants names are added (replacing "variant31" upto
1473 "variant36"). They affect the initial position. (Board size has to be
1474 set separately.) They are: courier (a Medieval predecessor of modern
1475 Chess, played on a 12x8 board) capablanca (on a 10x8 board, featuring
1476 Archbishop and Chancellor) gothic (as Capablanca, but with a more
1477 exciting initial setup) xiangqi (Chinese Chess) shogi (Japanese Chess,
1478 no support yet) fairy (This variant plays on 8x8 with HEW in stead of
1479 NBR on the Queen side, so that all back-rank pieces are (potentially)
1480 different) Make sure the selected board size matches the variant; this
1481 is not automatic
1482
1483 Xiangqi and Shogi support (or lack thereof)
1484 Xiangqi is only partially supported. The board display is
1485 western-style (the pieces play on squares, rather than grid
1486 intersections). The legality testing uses the Shatranj Knight and
1487 Elephant, that cannot be blocked, and thus allows some moves that
1488 should be illegal in Xiangqi. The Palace region is indicated on the
1489 board, but there is no testing if the King or Mandarins (implemented
1490 as ordinary Ferzes) leave the Palace. SAN might be non-standard, as it
1491 uses O to indicate Cannon. Most of this will be fixed in a future
1492 version.  Shogi is not yet supported at all, first the shaky
1493 implementation of Crazyhouse will have to be beefed up.