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