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