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