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