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