updated ChangeLog, NEWS, etc.
[xboard.git] / ChangeLog
1 ChangeLog for XBoard/WinBoard
2 -----------------------------
3
4 (latest entries created by git log --no-merges --pretty="%ai %an <%ae>:%n%s%n%n%b" vlast.. )
5
6 2011-05-07 18:44:24 -0700 Arun Persaud <arun@nubati.net>:
7 added translations generated via lng2po from all winboard languages
8
9 2011-05-07 18:40:23 -0700 Arun Persaud <arun@nubati.net>:
10 lng2po.sh: added command line options, GPL header
11
12 also use a temporary file generated with mktemp instead of a hard coded one
13
14 2011-05-07 17:53:10 -0700 Arun Persaud <arun@nubati.net>:
15 fixed access rights to winboard language files (644 instead of 655)
16
17 2011-05-07 14:55:55 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
18 Import WinBoard language files into git
19
20 2011-05-06 23:14:02 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
21 Let Shift+RightClick on PV actually play the PV moves
22
23 2011-05-06 18:06:48 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
24 Make book-edit function WB
25
26 The tags dialog is used to display the GUI book moves from the current
27 position, and will be updated when you step or move to another one.
28 The edited move list (with weights) can be written back to the book.
29
30 2011-05-07 16:21:25 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
31 Fix resetting engine options
32
33 Not all options were reset, and -needsNonCompliantFEN was 'reset'
34 to a completely wrong value, so that bad FENs would be sent.
35
36 2011-05-06 18:51:20 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
37 Add -first/secondPgnName option
38
39 This option replaces the tidy name of the engine in the PGN player tags
40 of engine-engine games. In WinBoard engines can be installed with this
41 option through a checkbox in the Load Engine dialog.
42
43 2011-05-06 23:31:36 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
44 Let XB generic popup define default file extensions
45
46
47 2011-05-06 18:25:38 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
48 Save time-control settings in tourney file
49
50 Because parsing the options and storing them in appData is not enough,
51 the time-control code setting the internally used parameters from the
52 appData info in InitBackend was made into a subroutine, and also caled
53 after parsing the tourney file.
54
55 2011-05-06 20:40:34 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
56 Put saveGameFile in tournament dialog
57
58
59 2011-05-06 19:17:56 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
60 Plug memory leak, filenames relative to installDir
61
62 String options are consistently freed now, before assigning a new value
63 to them through strdup. The init code now even does use strdup when
64 setting defaults. This is important for optionslike -lgf, which are not
65 saved in the settings file, and thus are usually left with their
66 default. When a dialog to set them then uses free, this causes a crash.
67 When setting the defaults uses strdup, ParseArgs can already free them.
68 This plugs an important memory leak, as ParseArgs in now called to parse
69 the tourney file before every tourney game (twice!), and the lists of
70 participants and results in it can be quite long.  Macros are defined in
71 common.h to make the code look simpler.
72   Filenames entered through the generic popup are now interpreted
73 relative to the WinBoard installation folder, just as the saveGameFile
74 already was. The code handling the atter was made into a subroutine for
75 this.
76
77 2011-05-06 22:02:53 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
78 Add WB new popup prototypes
79
80
81 2011-05-06 18:58:08 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
82 Add partcipants at bottom in tourney dialog (WB)
83
84
85 2011-05-06 18:56:53 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
86 Fix range of tourneyType spin WB
87
88
89 2011-05-06 18:15:23 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
90 Fix exit popup in tourney mode
91
92 Only the instance finishing the last tourney game will cause a popup
93 with final standings. As long as there are still busy games, it exits or
94 switches back to idle mode silently.
95
96 2011-05-06 18:11:47 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
97 Fix stopping of match in tourney mode
98
99
100 2011-05-06 18:59:26 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
101 Add default extension in file browser
102
103
104 2011-05-06 22:37:14 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
105 Improve sizing of comment and tags dialogs
106
107 There seems to be a bug in Xaw for the sizing of buttons; they get
108 unpredicatble and weird sizes when the size is not explicitly set,
109 possibly stretching the initial width of a dialog to rediculous values.
110 Sizing back to a remembered value from the settings file then makes
111 buttons overlapand text edits shrink to almost nothing. To prevent that
112 we now define exlicit sizes for the buttons in tags and comment popups.
113
114 2011-05-06 21:00:25 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
115 Fix generic combobox bug
116
117 The patch placing gettext markers was done wrong, setting the
118 translated menu text outside the loop, so all entries became the same.
119
120 2011-05-07 14:23:12 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
121 Fix PV walking in analysis mode
122
123 ParsePV assumed that the PV would always have been produced by an engin
124 thinking about the final position of the game (or the one before it). In
125 analysismode, however, the engine can be analysing positions internal to
126 the game, and the PV would be considered invalid. This is fixed by
127 cutting of the tail off the game (shelving it in variation fashion)
128 before starting the PV walk, and reverting afterwards.
129   For this the PushTail and PopTail routines had to be split into an
130 'inner' part, doing the pushing and popping, and an outer part, handling
131 menu graying and popdowns (which is undesirable in in this application).
132
133 2011-05-03 00:24:10 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
134 Lift length-limit on text-edits in WB generic popup
135
136
137 2011-05-04 13:53:05 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
138 Lift limitation of text length in generic dialog XB
139
140 All string options should now point to allocated memory, as strdup /
141 free is consistently used on them. This is OK for values received from
142 ParseArgs, but for non-arg intermediate variables that must receive strg
143 values, such as in the comment and tags popups, strdup has to be used to
144 initialize those.
145
146 2011-05-04 14:53:02 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
147 Implement Tournament Options dialog WinBoard
148
149 The file browser now can select on extension WB generic dialogs,
150 with a default based on the option.max value of the option for which it
151 browses. A textBox can be forced to be multiline by putting the number
152 of extra lines in option.min.
153
154 2011-05-04 15:30:00 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
155 Make option to draw second engine from first list
156
157
158 2011-05-03 00:17:47 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
159 Fix error message on engine load
160
161
162 2011-05-04 15:09:33 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
163 Implement Load Engine dialog in WinBoard
164
165 The Load Engine dialog is implemented for WinBoard, and is invoked by
166 the menu item Engine->Load, which formerly was Install 2nd. Install 1st
167 is renamed 'Edit Engine List'. Unlike in XBoard, the dialog has separate
168 fields for the engine executale and its parameters.
169   The dialog is implemented by converting the Engine Settings popup into
170 a generic dialog generator.
171
172 2011-05-04 13:43:06 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
173 Load new logo on engine change WinBoard
174
175 Picking the logo for the first engine is made into a subroutine. The
176 code for picking the logo of the first engine was made into a subrroutne
177 for this. We use the kludge to recognize the engine by its command line
178 when starting a new engine process.
179
180 2011-05-04 13:36:27 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
181 Allow switching off match mode through menu
182
183 The Machine Match menu item is now checkmarked, and no longer grayed
184 during a match, and clicking it while a match is running will terminate
185 the match after the current game. To not be left with hanging
186 checkmarks, the checkmark is already removed duringthe last match game
187 (which is logically equivalent to ordinary Two Machines mode anyway).
188
189 2011-05-03 00:14:22 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
190 Calculate and display tourney result
191
192
193 2011-05-04 18:42:13 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
194 Implement Tournament Manager
195
196 New command-line options are added to specify the tourney: -tourneyType
197 (-tt), -tourneyCycles (-cy), -participants, -syncAfterRound,
198 -syncAfterCycle, -results, to be saved on a -tourneyFile (-tf), but
199 otherwise volatile. When a tourneyFile is specified during a match,
200 a new routine NextTourneyGame is called from NextMatchGame before every
201 game, to decide the pairing, and unload and redefine the engines, when
202 needed. The XBoard Match Options dialog can be used to set the options
203 and create the tournament file.
204   Actual loading of new engines is done by TwoMachinesEvent, which is
205 now modified to also wait for the feature timeout of the first engine.
206 Waiting for the matchPause is now also implemented there, after waiting
207 for the engines (so they can be started during the pause).
208   Pairings and color assignment is now all done in an absolute
209 (non-incremental) way, based on a new global game-number variable
210 nextGame, which takes over the function of matchGame in a tourney. The
211 latter is now used to count games between the same players, so it can be
212 still used to derive the load-file indexes (again in absolute fashion).
213   The next game to play is already picked in GameEnd, so it can be
214 decided if there is a game to be scheduled, or if we can terminate.
215
216 2011-05-04 15:42:26 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
217 Display note in stead of empty engine-settings dialog XB
218
219
220 2011-04-24 18:02:20 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
221 Fix crash on empty Engine Settings dialog
222
223 The generic popup was not foolproof against this.
224
225 2011-04-22 12:47:24 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
226 Refactor code for loading games and positions in match
227
228 The code in NextMatchGame and MatchEvent was nearly the same,
229 (MatchEvent did a little more error checking, but that is never
230 harmful), and could be combined. In stead of determining the load index
231 incrementally, it is now calculated in an absolute way from the game
232 number, so it can be used more easily in tournament mode.
233
234 2011-04-21 22:37:56 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
235 Add callback possibility to combobox selection
236
237
238 2011-04-24 17:15:23 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
239 Lock game an position file during writing
240
241 The use of flock() on the file desctiptor of the opened stream should
242 guarantee multiple XBoard instances, saving on the same file, will not
243 interleave their PGN games or FEN positions.
244
245 2011-04-27 17:05:06 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
246 Remove building rule for parser.c from WB makefiles
247
248
249 2011-04-29 16:58:49 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
250 Fix Engine Settings buttons in WinBoard
251
252 This was broken by a leftover statement from debugging the -file/-path
253 patch.
254
255 2011-05-02 13:38:14 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
256 Implement flock in WinBoard
257
258 This system function seems unknown in a MinGW compile, so it is
259 implemented with the aid of file byte-range locking, using a lock on the
260 first 1024 bytes of the file as a semaphore.
261
262 2011-04-29 23:06:43 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
263 Fix grayout XB Match Options in ICS mode
264
265
266 2011-05-03 00:22:40 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
267 Delay loading of second engine until it is used
268
269
270 2011-05-02 15:00:03 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
271 Fix zippy bughouse partner bug
272
273 The patchs to subject Zippy messages to coloriation was faulty, because
274 there were messages recognized by zippy that were not colorized, and
275 such messages would then not be 'read away' after zippy recognition
276 (except for the first character). As a result the messages were
277 processed over and over again.
278
279 2011-05-04 10:59:43 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
280 Silence more rpm warnings
281
282
283 2011-05-01 20:33:50 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
284 Fix warnings XBoard file browser
285
286 All the prototypes have been moved to selfile.h, to force uniformity.
287 The order of the #include files xstat.h and selfile.h had to be
288 swapped, to make sure 'struct stat' is a nown type atthe time of
289 prototype declaration. The event handler SFmotionList is considered
290 wrong type because of its third argument (XMotionEvent in stead of
291 XEvent), and had to be casted to (XtEventHandler) when passed to
292 XtAddEventHandler.
293
294 2011-05-04 10:56:05 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
295 Fix some warnings and header-file improvement
296
297 Ther were lot of 'extern' declarations in the x-files, so called
298 'imports from xboard.c', (sometimes backend.c) which logically belonged
299 in xboard.h (backend.h) to ensure their uniform definition. These have
300 now been moved there. Some prototypes have been added in xboard.h as
301 well, for functions that needed calling from xoptions.c.
302
303 2011-05-04 10:50:12 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
304 Create conversion tools for language files
305
306 A shell script "lng2po.sh" is provided, to apply the translation given
307 in a WinBoard .lng file to "xboard.pot", in order to generate a
308 "language.po" file containing translations for all strings for which
309 the .lng file had a translation. It makes use of a file "metascript",
310 which is the ed script used to turn the .lng file in an ed script to
311 turn the .pot into .po. For example, the command "./lng2po.sh
312 espa?ol.lng" will create a file "language.po", which can be renamed to
313 "es.po".
314 ****************************** WARNING ********************************
315   Note that the lng2po script does a "recode" that assumes the given
316 .lng file is encoded in latin-1. This means it canot be used without
317 modification for the Vietnamese and Chinese translation; you would have
318 to replace latin-1 by the applicable encoding first (CP1258 / BG2312 /
319 BIG5).
320
321 2011-04-27 22:04:38 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
322 Put gettext markers in generic dialog creator
323
324 This is done by adding extra XtNstring argumentsto the widget gcreaton,
325 so the displayed name can be different fromthe widget name.
326
327 2011-05-01 19:56:38 -0700 Tim Mann <tim@tim-mann.org>:
328 Use getaddrinfo instead of gethostbyname.  Hopefully this makes us compatible with IPv6 and with hosts that have more than one IP address.  However, I don't know of any chess servers that have either of those properties, so I couldn't test that.  I did test that xboard still works with freechess.org and chessclub.com and that it gives an error message for invalid host names.
329
330
331 2011-04-24 11:18:28 -0700 Arun Persaud <arun@nubati.net>:
332 updated German translation
333
334
335 2011-04-24 11:17:43 -0700 Arun Persaud <arun@nubati.net>:
336 replaced hardcoded email address with generic PACKAGE_BUGREPORT
337
338
339 2011-04-23 10:51:57 -0700 Arun Persaud <arun@nubati.net>:
340 updated po-files; updated german translation
341
342
343 2011-04-23 10:51:02 -0700 Arun Persaud <arun@nubati.net>:
344 updated list of files that include translation strings; updated pot-file
345
346
347 2011-04-22 21:50:58 -0700 Arun Persaud <arun@nubati.net>:
348 marked more strings for gettext that were only marked with N_()
349
350 they need to be marked again with _() when they are used to get the translated string
351
352 2011-04-22 21:39:22 -0700 Arun Persaud <arun@nubati.net>:
353 updated translation files
354
355
356 2011-04-22 21:37:22 -0700 Arun Persaud <arun@nubati.net>:
357 added/fixed i18n support via gettext to xboard
358
359 this was already added a long time ago, but now it's added again to
360 autoconf. Also fixed some compile errors that showed up.
361
362 2011-04-20 10:27:20 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
363 Make engine startup error non-fatal
364
365 When engine startup fails, do not generate a fatal error, but swicth
366 back to -ncp mode. Write on broken pipe errors had to be suppressed for
367 this.
368
369 2011-04-20 14:35:50 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
370 Make engine loadable during session
371
372 A "Load Engine ..." menu item is added to the Engine menu, which pops
373 up a dialog where one can replace the first or second engine by a new
374 one, without destroying the game state. Switching from -ncp to engine
375 mode needed activation of some menu items in SetGNUMode, and
376 re-enabling clockMode. It was also important that noChessProgram is
377 cleared before re-initializing the ChessProgramState.
378   The Load-Engine dialog can select from the list of installed
379 engines, and also add a newly specified engine to this list. In this
380 case it saves the directory, hasBook, and isUCI info with the engine,
381 and optionally the current variant. When loading an engine with a
382 specified variant, it resets the game and switches to the new variant.
383
384 2011-04-18 15:56:47 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
385 Generalize WaitForSecond to WaitForEngine
386
387
388 2011-04-18 15:46:12 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
389 Add UnloadEngine routine
390
391
392 2011-04-20 13:45:51 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
393 Put engine initialization code in per-engine function
394
395 Initializing of the ChessProgramStates first and second from the
396 option settings in appData is now done by separate calls to the same
397 routine. Clearing of options is added to the initialization. This is
398 needed when reloading an engine. This is done in a separate routine,
399 which could also be called on -reset options.
400
401 2011-04-18 13:21:44 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
402 Bring structure in appData engine options
403
404 All options in appData that came in pairs for both engines are replaced
405 by arrays of ENGINES (=2, for now) elements. The use of the named
406 appData field that are replaced in the source is replaced by use of the
407 corresponding array element, by #define directives in common.h, awaiting
408 their replacement.
409
410 2011-04-19 15:15:48 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
411 Fix gettext macros in option dialogs
412
413 The strings in the tables were using _() in stead of N_().
414
415 2011-04-18 20:58:01 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
416 Fix crash on using Engine #1 Settings in ICS non-zippy mode
417
418 If XBoard is compiled with zippy the Engine #1 Settings menu was not
419 grayed out even when you don't run in zippy mode, and using it would
420 then crash XBoard.
421
422 2011-04-19 15:07:31 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
423 Fix shogipixmaps
424
425 Some pixmaps forptomoted pieces had wrong background color, others had a
426 wrong name (so the one with the correct name was missing).
427
428 2011-04-17 19:12:00 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
429 Change texture-install directory to pixmaps/textures
430
431
432 2011-04-17 17:36:32 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
433 Limit install of sound files to those in menu
434
435 The sounds directory is set to .../xboard/sounds, and only ten
436 sounds are kept (all non-spoken).
437
438 2011-04-17 17:27:57 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
439 Remove some bitmaps from install
440
441 Some files in the bitmaps source directory need not be installed,
442 because they are there only to be linked to the binary in a build
443 without LIBXPM, are README files or conversion programs. I left only the
444 stuff that is in a Debian binary package in .../xboard/bitmaps.xchess.
445
446 2011-04-17 16:34:03 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
447 Configure some default sounds
448
449 The move sound is set to Wood Thunk; the sounds for tell and challenge
450 events to Phone and Gong, respectively.
451
452 2011-04-17 16:17:30 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
453 Change default sounds in Xboard menu
454
455 All spoken sounds are removed now. Thud, Click and Ching are replaced by
456 Wood Thunk, Slap and Cymbal; Car Horn and Pop are added.
457
458 2011-04-17 12:46:47 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
459 Make user wav file available for try-out in sound dialog
460
461 The GenericReadout was adapted to be able to read a single selected
462 value, so that the callback to the 'play' button in the sounds dialog
463 could get the name of the 'user WAV file' without accepting all settings
464 for the other sounds (which should only happen on 'OK', and might still
465 be cancelled in stead).
466
467 2011-04-16 10:36:31 -0700 Arun Persaud <apersaud@lbl.gov>:
468 configure: enable silent rules by default
469
470
471 2011-04-16 10:28:16 -0700 Arun Persaud <apersaud@lbl.gov>:
472 configure: added install directory for bitmaps files: .../games/xboard/bitmaps/default/
473
474
475 2011-04-16 10:25:33 -0700 Arun Persaud <apersaud@lbl.gov>:
476 configure: added install of sounds in .../games/xboard/sounds/default
477
478
479 2011-04-16 09:54:26 -0700 Arun Persaud <apersaud@lbl.gov>:
480 configure: renamed bitmapdir to pixmapsdir, since it installed only pixmaps. also changed name of default dir
481
482 pixmaps will now be installed under .../games/xboard/pixmaps/default/
483
484 2011-04-16 13:40:16 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
485 Fix gamelist highlight
486
487 Reopening the gamelist should highlight the current game.
488
489 2011-04-16 10:25:53 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
490 Fix size limit on 'save as diagram'
491
492 In stead of a fixed-size buffer the diagram-save code now uses an
493 allocated buffer with size calculated from the bitmap parameters to
494 retreive the bitmap data, so it should work for all sizes.
495
496 2011-04-15 22:04:03 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
497 Fix chaining of bottom-row dialog buttons
498
499 The OK & cancel buttons are chained to the bottom. This patch makes sure
500 that other buttons appearing in the same row (as in the tags and
501 comment dialogs) will be chained that way too, so that they will behave
502 the same on vertical sizing. The bottom of a full-width text-edit above
503 it will be chained to bottom too. To make this work in the tags dialog,
504 the (optional) cmail-message field had to be put above the tags memo.
505
506 2011-04-15 19:18:46 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
507 Fix switching between pixmap and bitmap pieces
508
509 There were still several flags that had to be reset when redoing the
510 graphics initialization. The Debian patch to use a default bitmap
511 directory when none is given but monoMode is selected or forced, is
512 moved to a more sensible place, so that it does not disturb matters when
513 compiled without LIBXPM (when we do have built-in bitmaps).
514
515 2011-04-15 15:47:09 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
516 Remove outline-pieces option from board-options dialog
517
518 This option does not exist in XBoard (yet).
519
520 2011-04-15 15:41:38 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
521 Fix running of clock during hash allocation engine
522
523 In TwoMachinesEvent we now wait for the second engine to acknowledge the
524 'ping' after 'new', to make sure it is done allocating hash in reaction
525 to the preceding 'memory' command, before the clock for the game is
526 started.
527
528 2011-04-14 21:42:50 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
529 Describe move type-in in texi file
530
531
532 2011-04-14 20:34:42 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
533 Describe Copy Game List menu item in texi file
534
535
536 2011-04-14 20:30:16 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
537 Describe -sweepPromotions in texi file
538
539 The new method for selection promotion piece, and the -sweepPromotions
540 option are described in the texi file.
541
542 2011-04-14 20:14:44 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
543 Describe -pieceMenu option in texi file
544
545 The sweep method for selecting a piece in Edit-Position mode is
546 explained, as well as the -pieceMenu option.
547
548 2011-04-14 15:59:57 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
549 Update texi file
550
551 Descriptions of the new XBoard menu dialogs are included in the docs.
552
553 2011-04-14 21:06:49 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
554 Reorganize texi description
555
556
557 2011-04-14 12:31:15 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
558 Fix sweep-promotions patch
559
560 Setting of the from square was moved to before OKtoStartUserMove in the
561 LeftClick handler, to make sure we could test the promotion possiblity
562 when OnlyMove() would have altered (x,y) to be no longer the from
563 square. But this setting of fromX, fromY hung on also if the move was
564 not OK, so you could effectively select opponent pieces and empty
565 squares. The from-square is now set back to undefined when it is not OK
566 to move the piece you clicked.
567
568 2011-04-14 11:56:59 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
569 Alter treatment of moves with empty squares
570
571 In Edit Position mode one can move empty squares, and use them to
572 'capture' pieces as a means to clear their square. But this often leads
573 to unintended disappearence of pieces one wants to grab for dragging, if
574 a previous click had inadvertantly left an empty square selected: the
575 click on the piece is then seen as the to-click of a click-click move.
576   This patch treats to-clicks of moves with an empty-square differently
577 from other to-clicks: Rather than performing the move (in this case
578 clearing of the to-square) on the down-click, it defers that to the
579 up-click, and only does it if that up-click is in the same square. This
580 allows the user to grab the piece on the down-click, and drag it to
581 another square, if that is what he wanted to do, without being disturbed
582 by sudden implosion of the piece he tried to grab.
583   If the to-square is in the holdings, grabbing the piece is the only
584 action, as moves of empty squares into the holdings are forbidden anyway.
585
586 2011-04-13 13:14:00 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
587 Block selection of a directory when file is needed
588
589 When we are not browsing merely to obtain a name to put in a text edit,
590 but really must return an open file pointer, selection of a directory
591 (ending in '/') can no longer be OK'ed in the file browser. (XBoard
592 tends to segfault when offered garbage for game or position file...)
593
594 2011-04-13 12:23:00 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
595 Let double-click select file in file browser
596
597 A second click on the already selected entry now has the same effect as
598 pressing the OK button.
599
600 2011-04-12 17:06:28 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
601 Couple mouse wheel to v-scrolls in file browser
602
603 A newly added mouse-wheel event handler was made to call the v-scroll
604 callback routines with parameters to step one entry. The button-press
605 handler for the lists themselves was also made to intercept the wheel
606 events (buttons 4 and 5), to prevent they would select an entry, and
607 make them scroll in stead as well.
608
609 2011-04-13 11:41:54 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
610 Fix crash copying game list when there is none
611
612
613 2011-04-13 11:15:14 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
614 Fix changing of float setting by generic popup
615
616 Changing a float setting (so far the only one is in the Load Options
617 dalog) did not always work, because the old value was clipped to (int),
618 so that changing it back to an integer value might erroneously conclude
619 there was no change.
620
621 2011-04-13 16:15:22 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
622 Fix crash on closing dialogs in wrong order
623
624 When a menu dialog was closed when it still had an open file-browse
625 daughter, which could be done through the system menu X on the title
626 bar, later closing of the file browser caused a crash. This is solved by
627 keeping track of the fact that there is such a daughter through a global
628 flag, and ignoring the pop-down command if there is one.
629
630 2011-04-13 16:33:16 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
631 Fix startup focus of board window
632
633 When there were open auxiliary windows, these would have focus on
634 starting up XBoard. The XtSetKeyboardFocus call added in XBoard main()
635 was ineffective in curing that. It has now been replaced by a call to
636 XSetInputFocus, which does do the job. By giving input focus to the form
637 widget, rather than the board widget, XBoard will be immediately
638 sensitive to all key bindings.
639
640 2011-04-13 15:48:35 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
641 Fix game-list highight error when filtered (WB)
642
643 When the gamelist was filtered, the game that was highlingted was the
644 n-th game in the list rather than the n-th game in the file, when the
645 latter was loaded (and n did not exceed the number of filtered games).
646 This is fixed now by searching for the line in the listbox that starts
647 with the game number n, rather than taking the n-th line.
648
649 2011-04-12 19:20:46 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
650 Refactor move type-in code
651
652 Common code between XBoard and WinBoard was moved to the back-end
653 creating TypeInEvent() and TypeInDoneEvent() routines.
654
655 2011-04-12 10:13:40 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
656 Fix saving of XBoard fonts with spaces in name
657
658 SaveFontArg now prints quotes around the saved font string, so that the
659 general option-argument parser doesnot stop at the first space it sees.
660
661 2011-04-11 20:48:24 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
662 Implement move type-in for XBoard
663
664 By adding an event handler to the main window for key presses, users can
665 now type moves when the board has focus, like in WinBoard. The typed
666 character appears as first character in the type-in box that willpop up.
667 Enter and Escape close the box; finishing the typing of the move enters
668 it. Like in WinBoard it is also possible to type a move number (to go
669 there) or (in Edit Position mode) a FEN.
670
671 2011-04-11 20:59:44 -0700 Arun Persaud <apersaud@lbl.gov>:
672 new developer release
673
674 tried to keep the v4.5.x branch developed already separated in the NEWS file, as well as DIFFSTAT and SHORTLOG.
675 The Changelog is just the one from master.
676
677 2011-04-10 22:47:59 -0700 Arun Persaud <apersaud@lbl.gov>:
678 updated Changelog, NEWS, etc.
679
680 2011-04-10 20:32:57 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
681 Fix use of game/position file in first match game
682
683 When a match was started from the menu, it was not paying attention to
684 game and position files. (Later games were.) The code that handled this
685 in the initialization when a match is started through the command line
686 was made into a routine MatchEvent, which can be called from the menu
687 proc too.
688
689 2011-04-09 20:55:47 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
690 Fix crash on opening ICS Text Menu
691
692 The patch for the color defaults had broken the ICS Text Menu.
693
694 2011-04-09 19:22:00 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
695 Implement Copy Game List menu item for XBoard
696
697 Some WinBoard code was cloned for this.
698
699 2011-04-09 11:42:21 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
700 Third method of sweep selection
701
702 This method sweeps through the possible promotion choices for the piece
703 that is being dragged, as long as you drag a 7th-rank Pawn backwards. On
704 draggin such a Pawn forwards, it immediately shows it as the piece you
705 are going to promote to.
706
707 2011-04-08 23:39:10 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
708 Alternative sweep promotions
709
710 The sweep takes place on the from-square here.
711
712 2011-04-07 23:21:02 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
713 Make sweep-select promotions work in WinBoard
714
715 The mouse-move handler had to be connected to the PromoScroll back-end
716 routine.
717
718 2011-04-07 23:19:10 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
719 Fix path browsing in WinBoard
720
721 The routine BrowseForFolder was still declared as static in woptions.c,
722 while it was used from wsettings.c.
723
724 2011-04-07 11:14:45 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
725 Fixes to sweep selection
726
727
728 2011-04-06 23:47:58 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
729 Implement sweep selection of promotion piece
730
731 When the option -sweepPromotions is true, a click-click promotion move
732 will first display the default choice (usually Queen) on the promotion
733 square. While you have the mouse button still down, you can change the
734 piece by moving the mouse vertically.
735
736 2011-04-06 21:20:30 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
737 Implement sweep selection as alternative for the piece menu
738
739 When the option -pieceMenu is off, the piece menu will no longer appear
740 on right-clicks in Edit Position mode. In stead a Pawn of the chosen
741 color will appear immediately in the clicked square, and vertical
742 movement of the mouse with the right button down will cycle through
743 all other pieces defined in the pieceToCharTable of the current variant.
744   Setting the side to move is acheived by clicking the correspondig
745 clock. Clear board can be effected by clicking the clock of the side
746 that already has the move.
747
748 2011-03-30 18:17:58 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
749 Remember Tags and Comment dialog coordinates
750
751 The save-settings code now uses the shell and shellUp arrays from the
752 GenericPopUp to read out the window coordinates for Tags and Comment
753 window. Pointers used by GenericPopUp are set topoint to the
754 corresponding WindowPlacement structs.
755
756 2011-03-10 19:21:59 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
757 Redo Tags dialog
758
759 The generic popup is used for generating the Tags / EditTags popups.
760 The tags popup use a 'label' field to display the cmail message
761
762 2011-04-01 13:43:52 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
763 Implement Edit-Comment window through generic popup
764
765 The Edit Comment and Comment popups are combined into one, that can
766 always be edited (similar to WinBoard). It uses shell number 1.
767 (Number 0 is for all transient dialogs.) A save-changes button is added.
768 The positioning is not implemented yet.
769
770 2011-04-06 10:56:57 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
771 Refinements to generic popup and color picker
772
773 *) The text part of a checkbox can now be clicked to toggle the option.
774 *) Typing <Enter> in single-line text edits is ignored
775 *) Using a spin button now sets focus to the affected text edit, with
776 the insert position at the end.
777 *) Using the sample field or an RGB button sets focus to the
778 corresponding text edit, with the insert position at the end.
779 *) The adjust buttons now work in reverse, with a D button for "darker".
780 *) Editing a color field causes the sample field to update to the new
781 color when you type <Enter>.
782 *) The color pickers now define a default color, which can be instated
783 by clicking on the sample field.
784 *) Fix some 64-bit pointer warnings
785
786 2011-04-05 17:05:39 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
787 Let file browser filter on extension
788
789 A new text field is added in the file-browse dialog, to hold (space-
790 separated) extensions, on which the filenames are then filtered. This
791 field is initialized by the caller, depending on what we need the file
792 for, but can be changed by the user. (Directories are always displayed!)
793   Changes in the extension field  become effective after typing a return
794 in it. Escape typed in the extension field gives focus to the filename
795 field, and restores the contents. Escape in the filename field cancels
796 the dialog, return ther OKs it. The extension filter of the browser is
797 initialized to the extension (if any) of the file currently in the text
798 edit you are browsing for.
799   When re-opening the file browser from the XBoard File menu, and there
800 is no suggested filename, it will now start with the last succesfully
801 opened name as suggestion. Calling the browser with a NULL argument
802 for the suggested filename requests that (unlike calling with an empty
803 string, which will start it in the current directory). To make this
804 work smoothly, the filebrowser saves the last used name on entry, so it
805 can be restored on cancel, so that a cancelled browse session really
806 erases all memory of it.
807
808 2011-04-04 19:26:53 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
809 Fix animation masks on changing piece pixmaps
810
811 The animation masks were not remade when new pieces were loaded
812 interactively through the board-options dialog.
813
814 2011-04-04 19:09:21 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
815 Fix linegap option in board dialog
816
817 The lineGC was not recalculated, so the grid lines stayed the same
818 thickness. In addition, setting the line-gap override to -1 now
819 retrieves the original line gap that belongs to the current board size.
820
821 2011-03-05 23:27:48 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
822 Make a kind of ICS text menu in XBoard as a dialog
823
824 The dialog with buttons can be opened from the View menu. It is
825 configured by the option -icsMenu; a default setting for this is
826 included in the master settings file.
827   The commands specified by the -icsMenu can now contain $name and $input
828 keywords, which will be replaced by the current primary selection, or
829 text the user types, respectively. Commands that contain $name will not
830 be sent when the current selection is empty. Commands that do not
831 contain $input will be sent to the ICS immediately; otherwise they will
832 be placed in the ICS Input Box, with the cursor at the point of the
833 $input, and input focus given to the Input Box, so the user can start
834 typing. When a command is prefixed by "$add " it will be appended to the
835 existing ICS Input Box contents, rather than replace it.
836   The items now have to be separated by ";\n", and button text from
837 command by ';' (with optional linefeed). This allows configuring of
838 multi-line commands, as a single linefeed no longer has special
839 sigificance.
840
841 2011-03-31 13:36:05 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
842 Redo ICS input box with generic popup
843
844 This box is just a single text edit, but the complexity is in the added
845 callbacks. These callbacks remain in xboard.c, and were altered to
846 access the edit through the option.handle field.
847
848 2011-04-03 12:54:51 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
849 Activate -path and -file options
850
851 In XBoard the generic popup was prepared for this. In WinBoard, for
852 -path options the BrowseFolder routine is used, and had to be made
853 global (prototype in winboard.h).
854
855 2011-04-02 18:40:33 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
856 Let generic popup generate Engine Settings dialog
857
858
859 2011-04-02 18:36:09 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
860 Merge SettingsPopUp into GenericPopUp
861
862 Based on currentCps the values read from the dialog are sent to the
863 engine, or stored into the option.target in the callback, and fetched
864 from the option.target in the PopUp. The currentCps is cleared in the
865 generic popdown of a transient dialog.
866
867 2011-03-06 10:11:06 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
868 Make generic dialog popup reentrant
869
870 To allow persistent dialogs to be implemented through the generic popup,
871 it must be possible to have several dialogs open at the same time, and
872 thus make sure the popdowns under the cacel or close-window button know
873 which one to pop down. To this end an array shells[] is created that
874 takes over the function of settingsShell, and GenericPopUp gets an extra
875 parameter telling it which element to use for storing the dialog shell.
876 This number is then also passed to the callbacks that trigger popdown.
877 This was a bit nasty for the CatchDeleteWindow stuff, which passes user
878 data to the callback as text strings.
879 Keep a separate up/down indicator, so that shell widgets can be kept
880 for persistent dialogs. Also keep a currentOption per dialog type.
881   The coordinates and size of the window is read out and stored in a
882 WindowPlacement structure, (if one is specified for that dialog), when
883 the dialog is popped down. When initialized the structure is also used
884 to set the window parameters when the dialog is created. (The idea being
885 that the structure was saved in the settings file.)
886   The routine MarkMenu checkmarks a given menu item, and logs it for the
887 given dialog type, so that a later popdown automatically unchecks is.
888
889 2011-02-25 12:14:25 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
890 Implement Machine Match menu item and options dialog
891
892 An item to start a match from the menu is added, similar to what
893 WinBoard has. (The code is duplicated, so I guess it should be moved to
894 the back-end now, as MachineMatchEvent(), but it was tiny.) A dialog in
895 the Options menu was added with the aid of the generic popup, and allows
896 the user to set the load Game / Position File and Index.
897
898 2011-04-01 14:54:26 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
899 Create General-Options dialog
900
901 The generic popup is used to implement a General-Options dialog, which
902 contains all Boolaen options that used to be set directly from the main
903 Options menu, plus a spin option for the flash count and flash rate.
904 The corresponing options are removed from the main Options menu, but the
905 whole thing is made conditional on a compiler switch OPTIONSDIALOG.
906 The dialog needs an OK callback for sending an altered ponder-state to
907 the engine. (Why isn't this option disabled in -ncp mode, btw?)
908 A spin control is added to adjust -animateSpeed between 5 and 100.
909 Add dropMenu and showTargetSquares item as well.
910
911 2011-04-01 18:16:47 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
912 Redo new-variant dialog with generic popup
913
914 Some special code was added in GenericPopUp() to force buttons of the
915 type needed in the New Variant dialog (wide, colored, greyed-out on
916 variant type). The dialog was implemented with these, and callbacks for
917 the buttons directly exit the dialog, without the need for OK. New spin
918 controls are added to the dialog for adjusting the board format.
919
920 2011-04-01 14:48:48 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
921 Redo common-engine dialog with generic popup
922
923 The ponder option was removed, as it is already in the main Options
924 menu, and would require nastiness in the OK callback. Added book options
925 in common-engine dialog.
926
927 2011-02-24 13:32:01 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
928 Redo adjudications dialog through generic popup
929
930 We dropped the periodic-updates option, as it is already in the main
931 Option menu.
932
933 2011-04-01 21:56:07 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
934 Make sounds dialog for XBoard
935
936 This uses the combo boxes. A 'play' button isimplemented for a test
937 sound. A sound directory is introduced, and can be set through the
938 dialog. A default setting for -soundDirectory is added to xboard.conf.
939
940 2011-04-01 23:11:29 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
941 Add ICS options dialog
942
943
944 2011-04-01 21:52:48 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
945 Add board dialog XBoard
946
947 The GenericPopUp() is used to implement a dialog for board options. The
948 board dialog needs to trigger redraw and redefinition of the
949 colors, through an OK callback. Color-pickers are used for the 6 basic
950 color settings.
951   To allow changing board settings during the session (i.e. from a menu
952 dialog), the routines to allocate resources have to free the resources
953 for the previous settings first. This patch take care of XtCreateGCs(),
954 preventing re-creation of resources that are unchangeable (such as the
955 grid color), and calling XtReleastGC() on GCs that can be changed.
956 To prevent resource leaks the old pixmaps are deleted before making new
957 ones on second or later calls of CreateXPMPieces().
958
959 2011-04-03 11:39:26 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
960 Add browse button to generic popup
961
962 Options of type FileName and PathName cause a browse button to be added
963 behind the text field. The SpinCallback is used to handle the
964 button presses, and invokes the file browser dialog to obtain a
965 filename, which is then copied to the text field.
966
967 2011-04-01 21:49:26 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
968 Make generic XBoard popup, and implement 2 dialogs
969
970 The Engine-Settings dialog of XBoard was cloned to work on predefined
971 lists of (XBoard) options, rather than engine options. An extra field
972 was added to the Option struct, to hold a pointer to the XBoard variable
973 that should hold the option setting, so on OK'ing the dialog the altered
974 values can be copied there. Not usable for options which should trigger
975 an action (like redraw, or sending something to the engine).
976 A Load Game, Save Game and ICS Options dialog were then defined by
977 tables fed to GenericPopUp(). Options set from these dialogs were removed
978 from the main Option menu, which removes a lot of code from xboard.c
979 (for checkmarking, disabling the menu items).
980   A button defined in the GenericPopUp can attain the color indicated
981 by a previous text field, and add a callback to change the color in a
982 spin-like manner (but using R G B W in stead of + - butons).
983 The EndMark option can specify a callback, to be used on OK.
984 A non-zero max field in the Option descriptor will be used to set the
985 width of ComboBox, TextBox and Button optons.
986 The elements are chained such that extra space goes fully into the input
987 fields. A label type is added for clarifying texts that would not fit in
988 the option names. A break-type (pseudo-)option is added. Make OK and
989 cancel button suppressable in generic popup (by 2 bit of the option.min
990 field).
991
992 2011-04-03 11:34:21 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
993 Add file-browser option to just return name
994
995 By passing mode "f" the file browser dialog will not open the selected
996 file at all, so it can be used to retreive the name for the benefit of a
997 file-browser button to a -file option. A mode "p" will limit the
998 selection to directories only, to browse for a path.
999
1000 2011-04-03 13:15:17 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1001 Put insertion point at end of text on SetFocus
1002
1003
1004 2011-04-05 23:47:34 -0700 Arun Persaud <apersaud@lbl.gov>:
1005 fixed 64 bit warnings by casting integers to intptr_t before casting to int
1006
1007
1008 2011-04-05 23:24:24 -0700 Arun Persaud <apersaud@lbl.gov>:
1009 removed check and #includes for malloc.h, since it's not needed
1010
1011 hopefully this doesn't break things on non-linux systems. OS X seems to be ok, not sure about others ;)
1012
1013 2011-04-03 20:23:49 -0700 Arun Persaud <apersaud@lbl.gov>:
1014 check if malloc.h is present before including it
1015
1016 OS X 10.6 doesn't have malloc.h, so it complained.
1017
1018 2011-04-03 20:01:36 -0700 Arun Persaud <apersaud@lbl.gov>:
1019 Fix bug introduced in commit 89b4744: removed a "/" and forgot to add it in the config file
1020
1021 removed a "/" to make OS X happy, but forgot to add the "/" again in the xboard.conf.in file
1022
1023 2011-03-12 14:08:50 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1024 Fix display of promotion piece in ICS superchess
1025
1026 In Great Shatranj and Superchess promoted Pawns were displayed as shadow
1027 piece because these variants had holdings, while captured pieces should
1028 go back into the holdings unchanged, rather than reverted to Pawns.
1029
1030 2011-03-13 14:09:14 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1031 Fix o-o castling in new parser
1032
1033 The non-compliant notation of castling with lower-case 'o' should be
1034 preferred over the non-compliant interpretation of moving a Pawn along
1035 the o-file. Not doing so breaks ICS play, as ICS use o-o and o-o-o for
1036 castling! So an exception is now made for the o-file in the 'fxg'
1037 case.
1038
1039 2011-03-10 19:27:41 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1040 Implement yynewstr entry point in new parser
1041
1042 This entry point, used for parsing an ICS move list, was forgotten, and
1043 was still an empty routine. This made XBoard crash when observing an ICS
1044 game.
1045
1046 2011-03-07 23:11:00 -0800 Arun Persaud <apersaud@lbl.gov>:
1047 fixed wrong default for polyglotDir mentioned in docs.
1048
1049 Thanks to Hans Aberg for reporting it.
1050
1051 2011-03-05 12:39:01 -0800 Arun Persaud <apersaud@lbl.gov>:
1052 Fix "make install" on Os X10.6.6 (removed a "/")
1053
1054 seems like an extra "/" made "make install" unhappy
1055
1056 2011-03-03 21:19:05 -0800 Arun Persaud <apersaud@lbl.gov>:
1057 removed parser.l from build process, also removed flex dependency from configure
1058
1059
1060 2011-03-02 22:14:57 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1061 New parser, written in C
1062
1063 A new parser was written to replace the flex-generated one. Immediate
1064 improvements are that it understand double-digit rank numbers, and Shogi
1065 coordinates. No changes were made in the Makefile yet to reflect the
1066 new, flexless building procedure.
1067
1068 2011-03-02 22:23:21 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1069 Fix bugs in FRC castling rights
1070
1071 When parsing a castling move in FRC when no rights existed, the parser
1072 returned 0 (= EndOfFile) rather than ImpossibleMove. The recognition of
1073 the absence of rights was not adapted to the new encoding NoRights in
1074 stead of -1.
1075
1076 2011-03-01 23:42:34 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1077 Fix parsing bug of FRC castling
1078
1079 The code that was supposed to intercept castling when no rights existed
1080 in FRC was not adapted to the new encoding for this by NoRights, rather
1081 than -1, and furthermore returned 0 (= EndOfFile) rather than
1082 ImpossibleMove. Not sure if the former would manifest itself in any
1083 way, but the latter seems bad.
1084
1085 2011-03-01 23:32:25 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1086 Fix two bugs in reading position diagram
1087
1088 When reading a game without FEN tag, a position diagram is used to set
1089 the initial position. This calls CharToPiece() with a '.' as argument,
1090 because that is the position-diagram way to indicate empty squares.
1091 altered CharToPiece() over time this would be recognized as the first
1092 undefined piece or, more recently, the first piece without nickName,
1093 which is a white Pawn. Now it returns EmptySquare again in that case.
1094 A second problem was that for position diagrams in braces the brace was
1095 not in the list of ignored characters, and would cause the reading to
1096 get out of phase, so that the side to move was not recognized.
1097
1098 2011-02-26 21:12:08 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1099 Fix flipBlack option XBoard with board texture
1100
1101 In XBoard -flipBlack is implemented by swapping white and black pieces,
1102 because the Shogi bitmaps from XShogi are made that way. But the mask
1103 used to cut out the whole in the board texture to fit the piece was not
1104 swapped, both when drawing static pieces, as well as during animation.
1105
1106 2011-02-25 14:38:21 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1107 Improve repairing damage of arrow highlight XBoard
1108
1109 With line gap the highlight arrow necessitated redrawing of the entire
1110 board, to repair damage on the grid. This interfered with flashing of
1111 pieces, which was only done on selective redraws. In stead of forcing a
1112 total repaint we now just redraw the grid lines.
1113
1114 2011-02-23 16:41:36 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1115 Fix unintended translation in debug file
1116
1117 The words "first" and "second" (cps->which) were sometimes used in
1118 context that should definitely not be translated. (e.g. the indicator
1119 for which engine printed/got the line in the debug file.) So translation
1120 is now deferred to all uses in popups.
1121
1122 2011-02-23 16:29:12 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1123 Fix nps bug
1124
1125 The nps settingwas tested for being > 0 in stead of >=0, so that the
1126 case of CPU time was not properly handled.
1127
1128 2011-02-24 19:06:27 +0100 Kamil Blank <caceel@gmail.com>:
1129 Added missing fclose()
1130
1131 (tiny change)
1132 Signed-off-by: Arun Persaud <apersaud@lbl.gov>
1133
1134 2011-02-20 16:12:19 -0800 Arun Persaud <apersaud@lbl.gov>:
1135 release of version 4.5.1
1136
1137 2011-02-20 16:10:16 -0800 Arun Persaud <apersaud@lbl.gov>:
1138 updated Changelog, NEWS, etc.
1139
1140 2011-02-20 20:36:28 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1141 Fix two typos in option names in texi file
1142
1143 Polyglot was capitalyzed
1144
1145 2011-02-20 00:03:19 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1146 Fix some resource leaks
1147
1148 Some files were opened not closed in XBoard, when loading XIM images
1149 (which I doubt anyone ever does) but also when copying the clipboard
1150 (which has the potential of being done very often). There was also some
1151 code that would not work if conditional code which is permanently
1152 disabled would be enabled.
1153
1154 2011-02-17 20:17:04 -0800 Arun Persaud <apersaud@lbl.gov>:
1155 new developer release
1156
1157 2011-02-17 20:14:38 -0800 Arun Persaud <apersaud@lbl.gov>:
1158 updated Changelog, NEWS, etc.
1159
1160 2011-02-17 15:40:02 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1161 Fix MSVC snprintf problem
1162
1163 In MSVC snprintf has to be redefined as _snprintf, and this happens
1164 conditionally in config.c. But the latter was not #included in help.c.
1165
1166 2011-02-16 19:41:27 -0800 Arun Persaud <apersaud@lbl.gov>:
1167 updated configure.ac to check for Xaw header files
1168
1169 check for Xaw header files when --without-Xaw3d was given. Before the test was
1170 only done when Xaw3d was specified, but could not be found.
1171
1172 If Xaw3d or Xaw can't be found, print a hopefully useful error message and exit the configure script.
1173
1174 2011-02-16 12:03:22 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1175 Fix ICS channel 0
1176
1177 Channel 0 messages were not displayed in the console, because the test
1178 for channel number considered every non-numeric or non-existent handle
1179 in a chatbox to be zero. So the messages were diverted to a non-exsting
1180 chatbox. Now it test first for the handle to start with a digit.
1181
1182 2011-02-15 19:13:33 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1183 Make language choice from menu persistent
1184
1185 Set appData.language to the chosen language file, or empty if English is
1186 chosen, so that the choice is saved with the settings. Increase the
1187 number of possible language choices from 5 to 20. (After all, we already
1188 have 7 now!)
1189
1190 2011-02-14 11:09:24 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1191 Fix showing of user move after adjudication
1192
1193 The correction of the fishy patch (removing ShowMove() from Adjudicate())
1194 had broken the adjudication of user moves (that actually did work before
1195 the fishy patch, because there the gobal fromX/Y and toX/Y do contain
1196 the correct values for the move to be shown). An entered move that led
1197 to adjudication (like a checkmate) now was not displayed at all. Adding
1198 an extra ShowMove() after (successful) return of Adudicate() solves it.
1199
1200 2011-02-13 23:49:44 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1201 Fix Xiangqi King facing
1202
1203 The Spartan patch had broken the CheckTest for Xiangqi, because cl.check
1204 was cleared after the King-facing test, rather than before it.
1205
1206 2011-02-13 22:30:59 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1207 Fix variant janus size prefix
1208
1209 The default board size of Janus Chess was not consistently taken to be
1210 10x8, which resulted the name to be sent as 10x8+0_janus to the engine.
1211
1212 2011-02-13 12:18:52 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1213 Fix Alfil bug
1214
1215 The test for Alfil (suppressing single steps on the Elephant) contained
1216 a wrong logical operator, so that it could never be active. It also
1217 failed to include Xiangqi as variant with traditional Alfil. This led to
1218 one-step moves of the Elephant in these variants, and false check or
1219 unreliable mate detections.
1220
1221 Fix move of Xiangqi Elephant
1222
1223 2011-02-09 23:19:09 -0800 Arun Persaud <apersaud@lbl.gov>:
1224 fixed configure script to correctly detect Xaw3d library
1225
1226
1227 2011-02-06 22:07:17 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1228 Fix unmarked translation
1229
1230 The file-browser wndowtitle in WB was not marked for translation.
1231
1232 2011-02-04 10:27:49 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1233 Put warning in HTML help
1234
1235 A warning is added that the help file is not yet updated for the new
1236 menu organzation.
1237
1238 2011-02-04 10:22:29 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1239 Fix 64-bit Windows compilability
1240
1241 The API interface for Set/GetWindowLong has been changed for 64-bit
1242 Windows, both in the name of the call as in the arguments.
1243
1244 2011-02-04 10:21:06 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1245 Fix MSVC compilability
1246
1247 Both the makefile and the project file had to be adapted for the new
1248 source file history.c, and the new location of parser.c.
1249
1250 2011-02-05 10:11:58 -0800 Arun Persaud <apersaud@lbl.gov>:
1251 added missing #includes and missing prototypes to filebrowser
1252
1253 thanks to Max Funk for reporting. Now using HAVE_DIRENT_H.
1254
1255 Also cleaned up missing prototypes and some casts.
1256
1257 2011-02-05 09:21:48 -0800 Arun Persaud <apersaud@lbl.gov>:
1258 added missing header file for sprintf
1259
1260
1261 2011-02-03 08:50:50 -0800 Arun Persaud <apersaud@lbl.gov>:
1262 added history.c to the tar-ball. Needed for Winboard
1263
1264
1265 2011-01-31 23:03:05 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1266 Fix deselection of greyed-out variant button (WB)
1267
1268 In Windows a disabled radiobutton refuses to deselect when you select
1269 another (enabled) button from the group. There are then 2 buttons
1270 checked, and the code to readout the buttons took the first one. Now it
1271 is changed to take the first enabled one.
1272
1273 2011-02-03 08:28:15 -0800 Arun Persaud <apersaud@lbl.gov>:
1274 Revert "Implement -reset option feature in WinBoard"
1275
1276 This reverts commit efecf86cd9b54072c6a2f38d62f1d775e69c545b.
1277
1278 picked the wrong commit from HGM's git tree.
1279
1280 2011-02-01 22:01:12 -0800 Arun Persaud <apersaud@lbl.gov>:
1281 add DIFFSTAT and SHORTLOG to tar-ball
1282
1283 was only in the v4.4.x branch and not in master
1284
1285 2011-01-30 09:52:15 -0800 Arun Persaud <arun@nubati.net>:
1286 release of version 4.5.0
1287
1288 2011-02-01 07:41:04 -0800 Arun Persaud <apersaud@lbl.gov>:
1289 changed size of borders around squares from 0 to 1 as a default
1290
1291 this way highlights show up again.
1292
1293 2011-01-29 20:11:30 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1294 Implement -reset option feature in WinBoard
1295
1296 2011-01-30 10:12:08 -0800 Arun Persaud <arun@nubati.net>:
1297 updated Changelog, NEWS, etc.
1298
1299 2011-01-30 09:56:39 -0800 Arun Persaud <arun@nubati.net>:
1300 updated parser.c form parser.l
1301
1302 2011-01-29 19:59:11 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1303 Clean up fishy patch
1304
1305 None of the ShowMove() calls in Adjudicate() was working, because when
1306 this code was taken out of HandleMachineMove() it was taken outside the
1307 scope of the local fromX, fromY etc. there, so that it started using the
1308 global variables from the mouse driver. As these usually contain -1,
1309 this suppressed move animation and highlighting. All these calls have
1310 now been removed, and ShowMove() is called after a positive return (from
1311 HandleMachineMove(), so within the correct scope).
1312 This improves the previous fix, which led to some flicker, because the
1313 erroneous ShowMove() calls did draw the new board (instantly), wich in
1314 the fishy patch was then immediately overwritten by the old position, to
1315 start animation. This drawing of the old position is now no longer
1316 needed either.
1317
1318 2011-01-29 13:36:30 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1319 Update RTF file
1320
1321 The RTF file is adapted to the new menu organization.
1322
1323 2011-01-29 13:31:48 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1324 Update texi file
1325
1326 The highlight-with-arrow and one-click-move menu items are described.
1327 The highlightMoveWithArrow and variations option are described.
1328 Load Next /Previous Position descriptions are moved to File menu.
1329 The description for entering variations is updated (using Shift key).
1330 The remark that editing holdings is impossible is removed.
1331 Spartan Chess is added to the list of supported variants.
1332
1333 2011-01-28 18:35:48 -0800 Arun Persaud <arun@nubati.net>:
1334 Updated copyright notice to 2011
1335
1336
1337 2011-01-24 15:01:25 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1338 Greyout unavailable variants in New Variant dialog
1339
1340 The WB radio-button code is refactored to be driven from a list (which
1341 must be kept in phase with the variant definitions in common.h!). It now
1342 also checks if the first engine supports the variant, and greys out the
1343 item if it isn't. XB now also makes this check. Slight re-ordering of
1344 10x8 variants there, to have the more common on top.
1345 If no radio button is selected, keep old variant even on OK.
1346
1347 2011-01-19 11:10:59 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1348 Move clock-click code to back-end
1349
1350 Some duplicated (or should-be-duplicated) code for handling clicks on
1351 the clocks from the XBoard and WinBoard front-ends was merged and
1352 relocated to the back-end, so it can be shared. Noticeable was that
1353 XBoard allowed turn change in ICS examine mode by clock clicking,
1354 while WinBoard did not. WB, on the other hand, allowed clock adjustment.
1355
1356 2011-01-16 23:15:17 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1357 Fix legality testing of drop moves
1358
1359 Drops of noexistent pieces (i.e. with a piece indicator letter that is
1360 not corresponding to any defined piece) are now parsed as
1361 ImpossibleMove, rather than IllegalMove, so they are also rejected with
1362 legality testing off.
1363
1364 2011-01-17 00:28:32 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1365 Fix WB Sound Options greyout and remove some grossness
1366
1367 The sound and ICS Options menu items in WB were accessed 'by position',
1368 with fixed defined positions (always messing up any reorganization of
1369 the menus when you forgot to redefine the position constants in
1370 winboard.h). And not only that, but for completely mysterious reasons,
1371 the greying of the sound item greyed out the game-list options (above
1372 it) in stead when it was defined as 9, and the ICS options (below it)
1373 when it was 10 !!!. Now they are addressed 'by command' (and the
1374 position definitions are removed), which fixes things.
1375
1376 2011-01-25 21:35:10 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1377 Re-instate load next/prev position menu items
1378
1379 As positions do not use something similar to the game list, these are
1380 still useful. For some reason I could not get Alt+Shift+PgUp/Dn to work,
1381 so I settled for Shift+PgUp/Dn.
1382
1383 2011-01-16 21:56:14 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1384 Remove superfluous copying of machine move
1385
1386 There was explicit code in HandleMachineMove() and FinishMove() to put
1387 the move in the moveList, while MakeMove() already does this later in a
1388 more reliable way by calling CoordsToComputerAlgebraic(). This
1389 superfluous code is removed now.
1390
1391 2011-01-16 21:44:26 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1392 Fix spurious mate test in Edit Game mode
1393
1394 When entering a game, it was terminated by the mate test even when
1395 legality checking was switched off (so that mates might not be reliably
1396 recognized). The mate test is now made dependent on legality testing.
1397
1398 2011-01-16 21:37:16 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1399 Fix type-in of drop moves
1400
1401 Drop moves entered through the move type-in already come in the (piece,
1402 DROP_RANK, x, y) format, rather than having a holdings from square. This
1403 caused UserMoveEvent to consider them illegal when testing if the
1404 piecewas of the side to move, and when this was fixed, to recognize
1405 Knight drops as coming from between board and holdings (and thus
1406 illegal).
1407
1408 2011-01-16 21:31:42 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1409 Fix move type-in truncating game
1410
1411 Starting a new variation by keeping Shift pressed did not work when
1412 OK'ing the move type-in, because there was some code ther that truncated
1413 the game. While this could be safely left to UserMoveEvent, which it
1414 calls, as the situation is not different from entering moves through the
1415 mouse.
1416
1417 2011-01-11 16:12:02 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1418 Fix legality testing for promotions
1419
1420 Turns out WB has never tested for the legality of the chosen promotion
1421 piece, and would allow promotion to King innorml chess even with
1422 legality testing on (when entered through the keyboard)! Now strict
1423 testing is done, outlawing Pawns and Kings (or Unicorns in
1424 Knightmate). Only in suicide / giveaway Kings are stillallowed, and in
1425 spartan a black King if you do not have two yet.(And promotion
1426 toLnce,representing Hoplite Pawn,is forbidden there.)
1427
1428 2011-01-11 11:34:07 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1429 Reset 50-move counter on all pawn-like Lance moves
1430
1431 Now the Lance represents a Pawn-like piece not only in variant fairy,
1432 but anywhere outside Shogi / Superchess, its moves should also reset the
1433 50-move counter in those cases. Especially important for Spartan Chess,
1434 where the Lance actually participates.
1435
1436 2011-01-11 11:18:15 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1437 Fix logo repainting
1438
1439 The logos were not repainted when the main window was moved out of the
1440 display area, and then back into view. The reason for this is
1441 unknown, as the PaintProc calls HDCDrawPosition, which was calling
1442 DrawLogoOnDC. But the logos were not drawn, (or on an expose event
1443 sometimes half drawn!) despite the fact that the rest of the board was.
1444 The drawing of logos now has been decoupled from drawing the board,
1445 and has been moved to a separate routine DisplayLogos() (in analogy to
1446 DisplayBothClocks()). This is cleaner anyway, as the logos usually do
1447 not change when the board does. So apart from in PaintProc, it has only
1448 to be called when the mode changes (ModeHighlight()) or on swap clocks.
1449 This seems to fix the problem.
1450
1451 2011-01-10 20:36:48 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1452 Fix time in PGN info
1453
1454 Saving of the thinking time in the PGN was broken by the patch that
1455 removed the race condition in the clock switching, because that moved
1456 the incrementing of forwardMostMove to behind the code that used fmm to
1457 index pvInfoList. As a result the time was stored in the slot for the
1458 opponent's previous move. The value is corrected now.
1459
1460 2011-01-09 00:24:17 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1461 Fishy fix
1462
1463 The move that delivers checkmate in two-machines mode is not animated
1464 when adjudication is on. There then also is no highlighting of this move
1465 Redrawing the board and calling ShowMove fixes it. Which is rather
1466 strange, because ShowMove was already called in Adjudicate (when it
1467 adjudicates), before GameEnds. For reasons that are not understood this
1468 call to ShowMove() (which calls AnimateMove()) is not effective.
1469
1470 2011-01-09 00:21:41 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1471 Reset machine colors after match
1472
1473 The colors each engine playse are set to the originals after the last
1474 match game, so that a new match or two-machines game will not have
1475 swapped colors.
1476
1477 2011-01-09 00:15:18 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1478 Reset win/loss counters before match
1479
1480 The win/loss counters were not reset, because the code counted on them
1481 being initialized to zero. But with matches startable from the menu,
1482 this is no longer true after the first match.
1483
1484 2011-01-09 00:08:52 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1485 Show move that causes false illegal-move claim
1486
1487 Without claim testing XBoard takes back moves that an engine objects to.
1488 But when the engine is forfeited for a false claim, the move should of
1489 course stay. So the claim test is moved to before the take-back.
1490
1491 2011-01-09 00:05:38 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1492 Fix Spartan promotion to King
1493
1494 Promotions toKing were refused when in check, because XBoard thought
1495 they would not resolve the check. Now the promotion is actually
1496 performed before doing the check test.
1497
1498 2011-01-05 17:31:37 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1499 Fix WB font-based piece rendering on variant switch
1500
1501 The piece bitmaps were only created from the font characters when the
1502 number of ranks or files changed, because it was done in
1503 InitDrawingSizes(). This caused missing pieces when changing to a
1504 variant on the same board that used other pieces. Now InitDrawingSizes()
1505 is called for any variant switch.
1506
1507 2011-01-05 17:25:11 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1508 Fix right-alignment pproblem in WB ICS window
1509
1510 Use of Ctrl-R to summon the context menu still trickled through to the
1511 default text-edit window routine, and caused right-alignment. This was
1512 because the text-edit reacts on keyDown rather than the character event.
1513 KeyDown of R with Ctrl pressed is now also intercepted and ignored.
1514
1515 2011-01-03 13:04:56 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1516 Fix chat window title
1517
1518 The title was using the engine name, rather than the ICS handle, which
1519 did not work outside zippy mode. Now it only uses the engine name when
1520 no ICS handle is known. The titleis now also subjected to translation.
1521
1522 2011-01-03 12:50:54 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1523 Fix spurious reading of old game title by JAWS
1524
1525 Because focus was switched to the board window before loading the
1526 selected game from the game list, the titlebar still contained the
1527 name of the previously loaded game, which would spontaneously be read by
1528 JAWS. Now the focus switch is done after loading the new game (which
1529 updates the window title.)
1530
1531 2011-01-03 12:37:17 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1532 Add variant Spartan Chess
1533
1534 In the WB menu it takes the place of the defunct Twilight Chess item.
1535 The setup routine needed patching for setting up Lances in stead of
1536 Pawns for black, the check test had to be adapted to handle duple check,
1537 Alfil and Dragon moves were fine tuned in this variant to make the exact
1538 moves, and the promotion popup was adapted to show King and interpret
1539 Rook and Bishop as Dragon and Alfil for black. The Alfil now always
1540 moves as Modern Elephant except in Shatranj and Courier.
1541
1542 2011-01-03 12:23:39 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1543 Fix mate test
1544
1545 Due to a bug in logical operators drops were tried for mate evasions
1546 even in non-drop games, which broke it in Superchess and Great Shatranj,
1547 and wasted CPU time in other variants.
1548
1549 2011-01-05 17:19:35 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1550 Fix promotion suffixon disambiguated piece moves
1551
1552 The promotion suffixon piecemoves that needed disambiguation was not
1553 passedon to the back-end in most variants. Now it is passed on in any
1554 variant.
1555
1556 2011-01-03 12:08:19 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1557 Fix promotion of Pawn-like Lance
1558
1559 In variants where the Lance is used to represent an unorthodox Pawn, it
1560 must promote when it reaches last rank. With legality testing on,
1561 however, the promoChar was ignored in ApplyMove in this case. The
1562 promotion suffix also was not appended in SAN moves.
1563
1564 2011-01-03 11:57:23 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1565 Fix WB promotion popup
1566
1567 The promotion popup did not work properly in variants where black did
1568 not use the pieces that white wanted to promote to. Now the character
1569 for the selected piece is taken from the piece encodings of the side to
1570 move. In addition, selection of undefined pieces is ignored.
1571
1572 2011-01-02 14:17:32 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1573 Fix bug in parsing variations
1574
1575 The moves parsed from a variation were stored in the moveList without
1576 appended linefeed. This caused errors if the variation extended to
1577 beyond the end of the main line,into a hitherto unused part of the move
1578 list, as the linefeed was then not there from the overwritten move. As a
1579 result moves sent to the engine were concatenated, triggering
1580 illegal-move messages and bringing the engine out of phase.
1581
1582 2011-01-02 14:11:45 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1583 Define Ctrl-R as right-click in WB Comment dialog
1584
1585 To allow JAWS users to load a variation through the keyboard, Ctrl-R is
1586 equated to a right click at the position of the caret or selection.
1587
1588 2011-01-02 14:10:02 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1589 Allow starting a variation from keyboard entry in WB-JAWS
1590
1591 The status of the shift key is remembered when space is pressed to
1592 select a board square.
1593
1594 2011-01-02 14:06:14 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1595 Disable some accelerators in JAWS version
1596
1597 Single-key accelerators that could result in irreversible data loss are
1598 undesirable, because the risk of accidentally pushing them is too large.
1599 So the non-Alt duplicates of next/previous game/position are disabled,
1600 as are Home and End for Revert and Truncate Game. JAWS users will have
1601 to rely on the menus for those functions.
1602
1603 2011-01-02 13:59:01 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1604 Group engine-output memos with engine names
1605
1606 The engine names are now defined just before the text edits, so that
1607 JAWS 11 will read the engine name when the memo for the output of that
1608 engine is selected. (JAWS 10 will still read the NPS, as it reads in
1609 geometrical order.)
1610
1611 2011-01-02 13:55:19 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1612 Put nr CPU earlier in tab cycle of WB Common Engine dialog
1613
1614 By defining the max CPU control after hash size, the tabbing steps
1615 through the controls in geometrical (and logical) order, rather than
1616 having the max CPU in between the book controls.
1617
1618 2010-12-29 23:47:14 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1619 Update WB language template file
1620
1621
1622 2010-12-29 23:41:27 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1623 Subject JAWS menu and spoken strings to translation
1624
1625
1626 2010-12-29 23:37:39 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1627 Let JAWS SayString buffer full sentence
1628
1629 The meaning of the flag parameter of SayString was changed to indicate
1630 buffering of flushing. On flushing a message of a single space is used
1631 as a kludge to indicate interruptability. Calls to force flushing where
1632 added everywhere.
1633
1634 2010-12-29 23:32:54 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1635 Adapt JAWS menu to new menu organization
1636
1637 The menus did not correspondto the texts after translation of the main
1638 menu bar.
1639
1640 2010-12-29 23:18:30 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1641 Translate menus after creation of JAWS menu
1642
1643
1644 2010-12-29 23:07:05 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1645 Fix ICS context menu for JAWS
1646
1647 The Ctrl+R key did select text at the mouse pointer in stead of at the
1648 curser, now that up and down-click were combined.
1649
1650 2010-12-29 23:04:08 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1651 Reorganize order of WB New Variant dialog controls
1652
1653 The definitions are re-ordered so that at least JAWS 11 will speak the
1654 board-size elements properly.
1655
1656 2010-12-29 22:57:55 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1657 Fix order of elements in WB time-control dialog
1658
1659 Someleading texts were defined after the text edit they referred to,so
1660 that JAWS 11 associated them to the wrong one. A tab stop was added to
1661 the time-odds label, to make JAWS speak it.
1662
1663 2010-12-29 22:51:17 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1664 Change tabbing order in WB sounds dialog
1665
1666 The 'Play' button now gets focus immediately after the controls for
1667 selecting the sound, rather than at the end of the dialog (after OK).
1668
1669 2010-12-29 22:47:26 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1670 Remove tab stops on first radio button of WB dialogs
1671
1672 The New Variant and Board dialogs had a tab stop on the first radio
1673 button,so that tabbing toit would automatically select variant
1674 normal or size tiny. Now it tabs straight to the current size, without
1675 changing anything. (Important for JAWS users.)
1676
1677 2010-12-29 22:45:23 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1678 Put OK/Cancel last in tab cycle of some WB dialogs
1679
1680
1681 2010-12-29 22:29:37 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1682 Fix duplicate menu character for Edit Comment
1683
1684 Edit Comment did have the same shortcut character as Copy Game. Changed
1685 to m now.
1686
1687 2010-12-11 11:18:56 -0800 Arun Persaud <arun@nubati.net>:
1688 fixed automake process: xboard.conf couldn't be generated if $srcdir was not the current directory
1689
1690
1691 2010-12-11 09:50:48 -0800 Arun Persaud <arun@nubati.net>:
1692 new developer release
1693
1694
1695 2010-12-05 18:01:21 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1696 Subject WB context menus to translation
1697
1698 The innerloopof the menu translation has been made into a separate
1699 routine. This now uses GetMenuItemInfo() in stead of ModifyMenu() to
1700 better preserve menu breaks. Menu #10 is used for context menus (from
1701 the routine that pops them up), and for this number the orignal texts
1702 are not saved in menuText. (This is not needed, because the menu is
1703 created everytime anew from the resource data.)
1704
1705 2010-12-05 15:00:28 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1706 Update translation template
1707
1708 Add the new menu items; add some notes.
1709
1710 2010-12-05 14:04:46 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1711 Resize buttons in WB engine-settings dialog
1712
1713 The OK and cancel buttons were to narrow for most translations, and were
1714 a non-standard order as well.
1715
1716 2010-12-05 13:56:52 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1717 Add one-click move control to WB general-options dialog
1718
1719 This is a duplicate of the one in the ICS options dialog, but the latter
1720 is inaccessible in non-ICS modes, and one-click move is now
1721 alsoavailable in engine mode.
1722
1723 2010-12-05 13:51:20 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1724 Create space in dialogs for translation
1725
1726 The translated texts often did not fit, because controls were defined
1727 needlessly small (when there was empty space between them). In these
1728 cases they have been enlarged to consume all available space. Some
1729 dialogs are made wider.
1730
1731 2010-12-05 13:47:26 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1732 Add handle for translator acknowledgement
1733
1734 An empty string is printed in the about box, which can be 'translated'
1735 to a message acknowledging the translator.
1736
1737 2010-12-05 13:43:26 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1738 Use default logo for user
1739
1740 When no logo with the name of the current user is found, use dummy.bmp.
1741
1742 2010-12-05 15:46:34 -0800 Arun Persaud <arun@nubati.net>:
1743 added rlwrap tip to FAQ
1744
1745
1746 2010-12-03 23:24:06 -0800 Arun Persaud <arun@nubati.net>:
1747 replace hard coded paths with path from configure script
1748
1749 use $datadir and subdirectories to store some data files. Also make files in xboard.conf use correct path.
1750
1751 2010-12-03 23:02:09 -0800 Arun Persaud <arun@nubati.net>:
1752 fixed a typo in the configure script output
1753
1754
1755 2010-12-03 21:46:00 -0800 Arun Persaud <arun@nubati.net>:
1756 added a desktop file
1757
1758 taken from the openSUSE project
1759
1760 2010-12-03 22:44:02 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1761 Fix Edit Game/Position checkmarking in WinBoard
1762
1763 Because the entries in Edit and Mode menu were pure duplicats, the
1764 entries in the wrong menu (Edit) were checkmarked while active. By
1765 defining different IDs for those in the Edit menu, those in the Mode
1766 menu are checkmarked again.
1767
1768 2010-12-03 10:07:34 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1769 Add XBoard menu items for arrow highlight and one-click move
1770
1771 These items are put in the options menu; the 'Old Save Style' item is
1772 removed.
1773
1774 2010-12-03 09:27:58 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1775 Provide menus for editing WinBoard engine and server lists
1776
1777 The Edit Tags dialog in the WB front-end is adapted to act as a general
1778 edit for string variables, by giving it an extra parameter to indicate
1779 where to store the edited result. Menu items are added to invoke this
1780 dialog for editing the /first, /secondChessProgramNames and /icsNames
1781 options. This solves the problem that people would have to edit an ini
1782 file that they can no longer locate (because the %APPDATA% folder has
1783 different names and locations in the various Windows versions, and is
1784 often a hidden folder on top of that).
1785 There is a slight memory leak here, as the memory for the previous
1786 value of the altered string option is not freed.
1787
1788 2010-12-02 16:18:53 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1789 Configure arrow highlighting as default in XBoard
1790
1791 Set -highlightMoveWithArrow true in the xboard.conf file, and specify a
1792 lineGap of 0 to make that efficient (and the wood theme even nicer).
1793
1794 2010-12-02 15:56:46 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1795 Port highlighting with arrow to XBoard
1796
1797 Unfortuntely this duplicates a fair amount of code in the front end.
1798 Removing the arrow is done by a total repaint if there is a non-zero
1799 lineGap, because the clever algorithm for selective redrawing (based
1800 on damage) that XBoard uses does not repair damage to the grid lines.
1801 For lineGap=0, however, (for which the arrow is mainly intended) the
1802 damage mechanism is used, and the damaged squares are determined by
1803 tracing out the arrow in 64 steps, and marking all squares in the
1804 neighborhood as damaged.
1805
1806 2010-12-02 15:55:25 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1807 Strip CR from xboard.c
1808
1809
1810 2010-12-02 14:21:24 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1811 Let user decide if he wants highlights in blindfold mode
1812
1813 Remove the automaticsuppression ofhighlighting.
1814
1815 2010-12-02 00:24:43 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1816 Fix fag-fell marker with logos on
1817
1818 The flag-fell marker "(!)" that is displayed in the clock in WinBoard in
1819 two-machines mode was printed twice when the clock was split over two
1820 lines (as with logos on).
1821
1822 2010-12-01 18:57:57 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1823 Also exempt variant seirawan from eval-scale doubling
1824
1825 It is not really a drop game, so a scale from -7 to 7 in the eval graph
1826 is good enough (like variants great and super).
1827
1828 2010-12-01 10:33:13 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1829 Configure EGTB cache size in adapterCommand
1830
1831 The hash size, nr of CPUs and EGTB path are transferred through the WB
1832 protocol interface commands memory, cores and egtpath. But there is no
1833 WB command for detailing the EGTB cache size. So the value of the
1834 command-line option -defaultCacheSizeEGTB has to be sent to Polyglot
1835 through its startup command to make it known to UCI engines.
1836
1837 2010-11-30 22:46:16 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1838 Move Hint and Book items to Engine menu in XBoard
1839
1840
1841 2010-11-30 22:17:24 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1842 Correct the key bindings fo view menu in texi file
1843
1844 The mentioned bindings for Game List and Eval Graph were wrong.
1845
1846 2010-11-30 21:25:07 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1847 Fix sub-variation display with negative score
1848
1849 The test if the displayed score was the pvInfo score failed for negative
1850 scores, because floats are truncated towards zero. So the previous fix
1851 of spurious score/depth info was not working when the score was
1852 negative.
1853
1854 2010-11-30 18:27:52 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1855 Peel PV out of comment
1856
1857 Arena stores engine PVs not in variation format, but within both braces
1858 and parentheses, before the score/depth info. This caused XBoard to
1859 overlook the score/depth info, (frustrating, e.g., the eval graph),
1860 while the PV would not be accessible for walking it as a variation.
1861 The routine that extracts the score/depth from a comment now has
1862 been made more clever, to recognize a leadin PV in the comment, and then
1863 place it in front of the comment as variation (by moving the opening
1864 brace to behind it). For some reason it does not work if the PV and
1865 score/depth were separated by a newline, but this happens quite rarely.
1866
1867 2010-11-30 18:23:12 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1868 Allow line-straddling result comments
1869
1870 Some GUIs (in particular Arena) do not have the decency to keep the
1871 result comment on a single line. In this case the parser rules would not
1872 recognize it, and treat it as a normal comment, plus an undetailed PGN
1873 result. The rules are now fixed to allow linefeeds in the comment, and
1874 between comment and PGN result. To correctly process the comment further
1875 (e.g. in game-list lines) the linefeeds are replaced by spaces in the
1876 back-end routines that do use the result comment.
1877
1878 2010-11-30 12:22:32 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1879 Write key bindings in XBoard menus
1880
1881 Unfortunately tabs are not understood in menu texts, so fine-tuning
1882 through spaces is necessary to get some sort of ragged alignment.
1883
1884 2010-11-29 18:01:38 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1885 Configure XBoard to use wood board texture by default
1886
1887 The texture pixmaps are sought in /usr/share/games/xboard, with names
1888 wood_l.pm and wood_d.xpm. I guess the " make install" should be adapted
1889 to put them there. XBoard is resitent to non-existence of the files,
1890 btw. It simply ignores the arguments in that case.
1891
1892 2010-11-29 17:48:48 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1893 Configure -inc as volatile option in XBoard
1894
1895 XBoard users are not used to options being persistent, and thus have
1896 many scripts assuming the timeIncrement is -1 when they don't specify it
1897 on the command line, and want to specify -mps. But a persistent -inc of
1898 0 fom a preious session would then force their -mps to zero, causing
1899 big-time confusion.
1900
1901 2010-11-29 17:36:33 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1902 Make WinBoard clocks translation-proof
1903
1904 With logos on, the splitting of the clock over two lines assumed the
1905 lengths of the words "white" and "black" would always be 5. Used strlen.
1906
1907 2010-11-29 14:57:00 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1908 Improve drawing of highlight arrow
1909
1910 A diagonal arrow sometimes had a notch in the shaft because of
1911 independent rounding of the starting and ending point coordinates.
1912 Furthermore the width of the shaft was unnecessary variable(as a
1913 function of direction) because half the width was rounded and then used
1914 twice. Now rounding of end-points is always done towards a fixed grid
1915 of square centers, which keeps diagonals purely diagonal, and one side
1916 of the shaft is drawn relative to the other side, after the
1917 position of the latter has been rounded, so any rounding error affects
1918 the shaft width only once.
1919
1920 2010-11-29 10:25:50 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1921 Alter descriptionof Analyze File menu item
1922
1923 This menu item has been given a new function, so a new description was
1924 needed.
1925
1926 2010-11-29 10:15:39 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1927 Add description of Game List Options in texi file
1928
1929
1930 2010-11-29 09:58:00 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1931 Update texi file for new menu organization
1932
1933 The descriptions are shuffled around and organized into sections
1934 corresponding to the new main menus. Where necessary the name of the
1935 items was changed to their new names. The items removed from the File
1936 menu (the next/previous/same stuff) are nowmoved to the section "other
1937 shortcut keys", as the key bindings for some of them are still active.
1938
1939 2010-11-29 09:06:14 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1940 Update info on key bindings in texi file
1941
1942 The texi file was still listing the old XBoard key bindings. Where
1943 necessary this is now changed to the new (WinBoard) bindings, and all
1944 the new bindings were added.
1945
1946 2010-11-29 09:04:53 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1947 Add XBoard key bindings for Revert and Truncate
1948
1949 Use Home key as accelerator for Revert, End for Truncate, as in WinBoard.
1950
1951 2010-11-28 23:12:14 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1952 Divorce the Edit and Show Tags/Comment menu items
1953
1954 In WinBoard the items in the Edit and View menu for Tags and Comment now
1955 have different IDs, so they can be independently controlled. Only the
1956 items in the View menu are check-marked. The items still do the same.
1957
1958 2010-11-28 23:08:26 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1959 Alter WinBoard menu text
1960
1961 The texts are slightly adapted, mostly by choosing more convenient
1962 tabbing characters for the new menu organization. The translation
1963 template is updated accordingly.
1964
1965 2010-11-28 20:24:46 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1966 Let move-history window scroll to bottom after adding move
1967
1968 By activating the scrollbar of the viewport through XtCallActionProc
1969 the move-history window is scrolled to the bottom.
1970
1971 2010-11-27 14:38:14 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1972 Fix Shogi promotion popup
1973
1974 The texts were adapted to shogi by printing new text items over the
1975 Queen and Knight buttons, but these did not alwys cover it. Now the text
1976 on the buttons is changed as it should be. Also the window title is
1977 adapted.
1978
1979 2010-11-26 11:22:06 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1980 Apply gettext macros to menu texts
1981
1982 Now texts and references are separated, the texts in the tables can be
1983 decorated with the N_() macro, so that the _() macro no longer has to be
1984 applied when they are used. (This makes the texts appear in the .po
1985 files.)
1986
1987 2010-11-26 11:12:58 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1988 Adapt some XBoard menu texts
1989
1990 The "Show" prefix is removed from the "View" menu items, as this seems
1991 implied. An ellipsis is added to the Engine #N Settings items, which
1992 could not be there before, because periods in a menu name would break
1993 any reference to it. For some other names the ellipsis was deleted.
1994 (These were not refered to, but who knows what we will do in the future.)
1995
1996 2010-11-26 11:03:35 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1997 Separate menu text from menu name in XBoard
1998
1999 The text string in the menu-definition tables was used both for the menu
2000 text, as well as for referencing the items from the code (for enabing or
2001 checkmarking). Now these can be defined separately, so that altering the
2002 menu texts is possible without breaing any references to the item.
2003 (Moving them to another menu would still break XBoard, though!)
2004 Currently the texts and names are still the same.
2005
2006 2010-11-26 10:48:54 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2007 Bugfix XBoard menu translation
2008
2009 The gettext macro N_() was applied to the menu definition tables, but
2010 this would break any translation, as these items are both used as menu
2011 texts as well as reference for enabling and checkmarking. The routines
2012 that create the menus already apply _() dynamically to these items when
2013 they are used as menu texts.
2014
2015 2010-11-26 10:10:55 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2016 Restrict drops in variant seirawan to back rank
2017
2018 Drops aren't really llowed at all in Seirawan Ches, but there exists an
2019 engine that supports a variant where drops on the back-rank are allowed.
2020
2021 2010-11-25 19:44:37 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2022 Let Analyze File annotate the loaded game
2023
2024 By not suppressing the auto-play loop in AnalyzeFle mode, we step
2025 through the game while the engine is analyzing, and store the PV info
2026 that the engine produces, as well as the full PV (as variation comment)
2027 with each move.
2028
2029 2010-11-25 19:41:05 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2030 Revive Analyze File menu item in WB
2031
2032 We will keep this menu after all, becase it can be given a new meaning.
2033
2034 2010-11-25 19:31:52 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2035 Fix spurious scores in comments
2036
2037 The comment popup is also used to display engine PV info, but when the
2038 contents of the window is written back when we select a variation,
2039 it was treated as a real comment. This is fixed now by checing in
2040 ReplaceComment() if the comment starts with the PV info, and if so,
2041 ignore the latter. This solves the problem, but I guess the real bug is
2042 that selecting a variation tries to write the comment even if it did not
2043 change.
2044
2045 2010-11-25 19:26:34 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2046 Display error for wrong use of Machine Match
2047
2048
2049 2010-11-24 13:30:08 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2050 Reorganize XBoard menus
2051
2052
2053 2010-11-24 11:02:19 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2054 Reorganize WinBoard menus
2055
2056 New main menus Edit, View and Engine are added; the step menu
2057 disappears. The menu items are redistributed over the new menus.
2058 Sometimes duplicates are created. No adaptation of short-cut characters
2059 as made yet (as this affects translation).
2060
2061 2010-11-20 20:20:27 -0800 Arun Persaud <arun@nubati.net>:
2062 removed trailing whitespaces from NEWS
2063
2064
2065 2010-11-20 20:19:30 -0800 Arun Persaud <arun@nubati.net>:
2066 merged readme_HGM.txt into the NEWS file
2067
2068 seems like a better place for the release notes, although those releases where not officially part of GNU, but the NEWS file already covers similar releases, so it might as well cover all of them.
2069
2070 2010-11-20 18:24:19 -0800 Arun Persaud <arun@nubati.net>:
2071 typo in date of developer release
2072
2073 but will leave the tagged version as it is, since it's still a unique version number
2074
2075 2010-11-20 18:11:01 -0800 Arun Persaud <arun@nubati.net>:
2076 new developer release
2077
2078
2079 2010-11-20 18:12:41 -0800 Arun Persaud <arun@nubati.net>:
2080 added latest version of parser.c
2081
2082
2083 2010-11-20 18:05:56 -0800 Arun Persaud <arun@nubati.net>:
2084 updated Changelog, etc for developer release
2085
2086
2087 2010-11-20 16:22:00 -0800 Arun Persaud <arun@nubati.net>:
2088 Revert "adding gnu-readline support"
2089
2090 This reverts commit c95ef32a700132a134f335f857ca6f1b6f3c169f.
2091
2092 Conflicts:
2093         backend.c
2094
2095 better to use the (relatively) new ICS input box then add readline support.
2096
2097 2010-11-20 16:19:32 -0800 Arun Persaud <arun@nubati.net>:
2098 Revert "bugfix: fixed readline support with icslogon option"
2099
2100 This reverts commit b9cdd7422ad1037d7376bce4f8f2db2669396e83.
2101
2102 Conflicts:
2103         backend.c
2104
2105 better to use the (relatively) new ICS input box then add readline support.
2106
2107 2010-11-19 23:10:35 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2108 Make Hoplite moves irreversible in Spartan Chess
2109
2110 Consider Lance moves in variant Fairy (where the Lance represents the
2111 Spartan Hoplite Pawn) as Pawn moves, so they reset the 50-move counter.
2112
2113 2010-11-19 21:09:24 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2114 Give Lance moves of Amazon in variant super
2115
2116 Now that Lance is no longer a wild-card piece the moves of Amazon must
2117 be programmed explicitly, to keep the possibbilty to play Superchess
2118 with legality testing on.
2119
2120 2010-11-19 18:32:16 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2121 Change representation of Bede in variant fairy initial position
2122
2123 This used to be Lance, but the promoted Bishop (Dragon Horse)
2124 is more applicable. Especially now that Lance is supposed to move like a
2125 Berolina Pawn.
2126
2127 2010-11-19 18:28:19 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2128 Make yyskipmoves also suppress examining of drop moves
2129
2130 Not sure if this does any good, but it seemed illogical that this would
2131 happen in all other moves, but not drops.
2132
2133 2010-11-19 18:23:05 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2134 Define moves for Dragon Horse outside Shogi
2135
2136 Let it move like Bishop + Wazir + Dababba.
2137
2138 2010-11-17 13:40:20 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2139 Fix safety crash when appending comments
2140
2141 The length limit imposed on safeStrCpy was one too short when copying
2142 an existing comment to the space allocated for the longer (concatenated)
2143 one. It allowed no space for the terminating '\0'.
2144
2145 2010-11-17 13:38:00 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2146 Fix safeStrCpy
2147
2148 The test for when to terminate a non-fiting string was one off, and the
2149 debug message was written stdoutin stead of debugFP.
2150
2151 2010-11-16 12:40:31 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2152 Fix default holdings size for variant seirawan
2153
2154 The holdings for 7 pieces werealways considered an overrule, so that the
2155 variant name was prefixed with "8x8+7_".
2156
2157 2010-11-15 11:36:21 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2158 Fix home-dir crash
2159
2160 When confronted with a path name starting with ~ and not containing a /
2161 XBoard would segfault.
2162
2163 2010-11-14 21:45:55 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2164 Fix one-click moving on up-click
2165
2166 (First) up-clicks were not always ignored: in Edit-Game mode with
2167 one-click moving enabled this could lead to a capture being made on
2168 the down-click, and the recapture on the correspoding up-click.
2169 This has now been corrected, and only the down-click of a first click
2170 can lead to selecting a piece or a one-click move.
2171
2172 2010-11-15 18:15:40 -0800 Arun Persaud <arun@nubati.net>:
2173 fixed buffer size for snprintf
2174
2175
2176 2010-11-13 23:04:14 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2177 Accept Seirawan-style gating suffixes
2178
2179 The parser rules were extended to accept / as an equivalent of = in
2180 promotion-suffix notation (e.g. Nf3/H in stead of Nf3=H).
2181
2182 2010-11-13 22:55:32 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2183 Use Falcon and Alfil as built-ins for Seirawan chess
2184
2185 Where available (size 49 and 72) we use Falcon for Archbishop and Alfil
2186 for Chancelor, to better conform to the Seirawan names Hawk and Elephant.
2187
2188 2010-11-13 20:02:31 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2189 Implement entering gating moves with mouse
2190
2191 A move with a back-rank piece that starts when a piece in the holdings
2192 is selected will be interpreted as a gating move in variant seirawan.
2193 The front-end uses a 'gatingPiece' selected this way todisplay it on the
2194 from square during animate dragging.
2195
2196 2010-11-13 18:56:15 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2197 Implement variant seirawan
2198
2199 Set upthe position, including Hawk and Elephant in holdings, in
2200 InitPostion(). Suppress putting captured pieces in holding. Let
2201 promoChar indicate gating in ApplyMove(). Remove gated pieces from
2202 the holdings there. Let GenLegal() generate RxK-type castlings to act as
2203 base for gating on Rook square. Gatings are tested for legality
2204 based on the holdings content and whether they occur on the back
2205 rank. Disambiguate() also tests this. Make sure the gated pieces are
2206 printed as move suffixes in CoordsToAlgebraic().
2207
2208 2010-11-13 18:42:27 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2209 Add -variant seirawan to menu
2210
2211
2212 2010-11-13 22:52:09 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2213 Fix acceptance of null-move with legality testing off
2214
2215 A second click on the same piece was interpreted as a to-square rather
2216 than deselection of the piece.
2217
2218 2010-11-13 22:49:43 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2219 Fix one-click bug
2220
2221 Disambiguate was imagining captures, so an only capture by double
2222 clicking your own piece did not always work.
2223
2224 2010-11-13 20:08:32 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2225 Fix mouse-driver buglet
2226
2227 The highlights were not cleared on moves that went vertically off board.
2228
2229 2010-11-12 17:17:41 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2230 List some undocumented commands as compliant
2231
2232 The engine->GUI commands setboard and setup are now always printed in
2233 the debug file as well.
2234
2235 2010-11-12 17:05:22 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2236 List Hint with compliant commands
2237
2238 This command was omitted, so that in some -engineDebugOutput modes it
2239 would not appear in the debug file.
2240
2241 2010-11-12 17:02:53 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2242 Restrict use of escape expansion
2243
2244 Only expand escape sequences like \n and \t in telluser(error) comamnds
2245 that ask for it by preficing the messages by double backslash. Otherwise
2246 backward copatiblity is too severely broken for messages that display
2247 DOS-style filenames.
2248
2249 2010-11-12 13:56:33 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2250 Make safeStrCpy safe
2251
2252 SafeStrCpy was causing a lot of out-of-bound write accesses, as it was
2253 always writing the character at the length limit of the destination.
2254 Now no memory is accessed that is is not needed to hold the copy.
2255
2256 2010-11-07 21:37:10 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2257 Allow clicked name internal to the icsMenu command string
2258
2259 A command in the /icsMenu that was specified to contain the selected
2260 text or clicked word always appended this word at the end. Now the user
2261 can also configure it to appear in the middle, by putting a %s in the
2262 command string where he wants it to appear.
2263
2264 2010-11-07 21:33:19 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2265 Let Engine #2 Settings start second engine
2266
2267 If the second engine is not yet running, it would be impossible to use
2268 the settings dialog for it, as the features have not been received and
2269 the dialog will be empty. So the user could not adjust the engine
2270 parameters before starting a match. Using this menu now automatically
2271 starts the engine, and delays the appearence of the popup untill the
2272 features are received, using a similar mechanism as in
2273 TwoMachinesEventIfReady().
2274
2275 2010-11-01 19:40:26 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2276 Newly lexed parser.c
2277
2278
2279 2010-11-06 19:55:31 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2280 Fix bug in parsing illegal Pawn captures
2281
2282 When a pawn move of type exf5 was illegal, the parser made an attempt to
2283 interpret it as e.p. capture of f5. This, however, messed up the move,
2284 so that it was now permanently mistaken for e5xf6. Even in cases with
2285 legality testing off, where you would want the original move to be
2286 accepted despite the fact that it was illegal.
2287
2288 2010-11-06 19:49:45 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2289 Keep last PV while clearing engine-output display
2290
2291 When ponder is on, the display is cleared immediately when the last line
2292 of thinking output appears by the appearing ponder output. So you would
2293 never get the chance to see it. This line is now re-written after
2294 clearing, so it appears at the bottom of the output for the next search.
2295
2296 2010-11-06 19:45:18 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2297 Give Lance moves of Berolina Pawn
2298
2299 In stead of using it as a wildcard piece, the Lance gets the moves of
2300 the Berolina Pawn (straight capture, diagonal move). The initial double
2301 osh can be a ump, though. (So it is really a Hoplite Pawn from Spartan
2302 Chess.)
2303
2304 2010-11-06 19:42:16 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2305 Use SAN even on illegal moves
2306
2307 If there is only one piece of type T, moves like Ta1 or Txa1 are never
2308 ambiguous, so adding the from square is just cumbersome.
2309
2310 2010-11-06 19:34:53 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2311 Use normal SAN for wildcard pieces
2312
2313 SAN often can also be used with pieces we don't know the moves of, e.g.
2314 if there is only one of that type. We just always get rank or file
2315 disambiguators if there are more (even when they might be unnecessary).
2316
2317 2010-11-06 14:52:12 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2318 Fix some warnings
2319
2320 Unused variables were removed from parser.l
2321
2322 2010-11-06 14:43:54 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2323 Allow arbitrary nesting of sub-variations in PGN input
2324
2325 The parsing of subvariations is moved out of the state-machine parsing,
2326 to allow arbitrary nesting. In stead of the entire sub-variation being
2327 parsed by lex as Comment, it now returns Open and Close for the
2328 corresponding parentheses, which are then handled in a wrapper routine
2329 for yylex(): Myylex(). Problem was that yy_text is supposed to return
2330 the entire parsed text of the returned symbol, which thus has to be
2331 collected. To make this possible, yylex has to return everything that it
2332 parses, (even white space!), and a symbol "Nothing" was added to return
2333 in parsing rules that before just ate away irrelevant text without
2334 returning anything.
2335
2336 2010-11-06 21:48:47 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2337 Implement setup (engine-GUI) command
2338
2339 This allows the frst engine (when legality testing is off) to overrule
2340 the default opening position, in reply to the variant command. Syntax is
2341 "setup (PIECE_TO_CHAR_TABLE) FEN_STRING"
2342 where the FEN string is interpreted in the context of the given
2343 pieceToCharTable (which is optional, and only delimeted by parethesis if
2344 it is present).
2345 Sendng the position to the second engine is delayed until the first
2346 engine has responded to the ping after the new-game sequence, to make
2347 sure it gets the chance to alter the position before it is sent to the
2348 second engine. This feature is useful for playing variants that WinBoard
2349 does not even know the opening positon for, and can be used even if they
2350 are shuffle variants.
2351
2352 2010-11-06 14:19:56 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2353 Restrict use of a2a3 kludge
2354
2355 The kudge to send "a2a3" in stead of "black" to get black to move is
2356 fatally flawed in varants that have no Pawn on a2. So in that case we
2357 revert to use of the deprecated "black" command.
2358
2359 2010-11-02 13:06:58 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2360 Remember values set by -firstOptions, -secondOptions
2361
2362 When an engine announces its option features, and the option name
2363 matches that of a setting given in -first/secondOptions, the engine is
2364 sent hte specified value, but this value was not remembered as current
2365 value (but the latter  was left at the engine-announced default),
2366 leading to inconsistent behavior in the Engine #N Settings dialog.
2367
2368 2010-11-01 19:26:19 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2369 Make test for valid promotion piece color-dependent
2370
2371 This is needed to make it work in variants where white and black have
2372 different armies; quite likely white will promote to pieces that do not
2373 exist in the black army, so we really have to make sure we test if the
2374 white (upper-case) piece exists in this case.
2375
2376 2010-11-01 19:23:43 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2377 Remove validity test on promochar from parser
2378
2379 The backend routines Disambiguate() and LegalityTest() will catch
2380 invalid promotions, so no need to do it here.
2381
2382 2010-10-31 23:37:06 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2383 Add the actual size-33 Shogi bitmaps
2384
2385 These were forgotten in the original commit that fixed the .rc file.
2386
2387 2010-10-31 13:20:08 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2388 Delete some stale promotion code
2389
2390 The correction of the promotion piece to Ferz in Shatran-like variants
2391 in ApplyMove() was no longer needed, as the new promotion code already
2392 does this in the move parser.
2393
2394 2010-10-31 13:08:52 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2395 Augment moves of some fairy pieces
2396
2397 To get better disambiguation in variants that have to be played with
2398 legality testing off, the Elephant is given also one-step moves (making
2399 it a so-called Modern Elephant) in -variant fairy and great. The Dragon
2400 King (Crowned Rook), which had no moves defined for it outside Shogi at
2401 all, has been given Rook moves plus an orthogonal 2-jump, so that it
2402 can get SAN moves when used as Dababba or Short Rook. (Illegal moves
2403 currently aways force long algebraic notation...)
2404
2405 2010-11-08 22:57:56 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2406 Bugfix safeStrCpy patch, WinBoard
2407
2408 The use of sizeof on pointers was detected through the same method as
2409 the previous patches, this time while compiling WinBoard. A typo in
2410 jaws.c was fixed as well.
2411
2412 2010-11-08 23:03:13 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2413 Bugfix for safeStrCpy patch for XBoard
2414
2415 By a trick (temporarily redefining safeStrCpy in common.h as
2416 ((char*) (a=1/(4-3rdArgument))) ) a compile-time warning (division by 0)
2417 could be generated for every occurrence where the size argument was equal
2418 to 4, i.e. where the 1st argument was likely a pointer rather than an
2419 array. These cases are now fixed. The file xoptions.c, which is the
2420 only ne that does not #include common.h had to be fixed by making
2421 the #define in the file itself.
2422
2423 2010-10-31 13:16:01 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2424 Fix spurious promotions with legality testing off
2425
2426 The recent promotion patch had broken playing without legality testing
2427 completely: without legality testing one always gets the piece that was
2428 asked for, but a NULLCHAR should not be taken as a request for a piece!
2429 But it was, and this resulted in any moved piece turning into a white
2430 Pawn! For true promotions the piece was always black, which was also not
2431 very useful.
2432
2433 Also revert to the use of '+' as internal Shogi promoChar, because
2434 pre-processing turns out not to be possible when reading a game file.
2435 In stead parse any trailing '+' on moves as promoChar. Downside: '++'
2436 can no longer be recognized as checkmate symbol.
2437
2438 2010-10-29 22:54:18 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2439 Make deferral default in Shogi promotions
2440
2441 Because '+' is intercepted by the parser as check indicator, Shogi moves
2442 are pre-processed to change a trailing '+' into an internally used
2443 alternative '^'. The testing if a promotion character is OK is now done
2444 in LegalityTest() and Disambiguate(), which return ImpossibleMove when
2445 the character does not correspond to any piece, and IllegalMove when in
2446 Shogi anything other than '^' or '=' is used. (Except for the ICS
2447 notations.) On output, in CoordsToComputerAlgebraic() and
2448 CoordsToAlgebraic(), the '^' is translated back to '+'.
2449
2450 2010-10-28 17:51:34 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2451 Animate piece explosions in drag-drop moves and in XB
2452
2453 This required some code restructuring: the decision if an explosion is
2454 needed is now taken in a new routine Explode() in the backend. This then
2455 calls the front-end driver, and it returns the info if there was an
2456 explosion or not, so the caller (AnimateMove() or the mouse driver) can
2457 take action to repair the damage to the board caused by the blast wave.
2458 A front-end driver for XBoard is provided as well, so that both
2459 click-click (and replay, which is the same) and drag-drop atomic
2460 captures are animated in XB as well as WB.
2461 Explosions on rejected moves are suppressed.
2462
2463 2010-10-28 13:53:51 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2464 Suppress promotion popup if piece will explode
2465
2466 In atomic, a Pawn capture to last rank is not really a promotion.
2467 Fix choice to Queen.
2468
2469 2010-10-28 18:42:25 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2470 Make Knight hop first straight, then diagonal
2471
2472 It used to be the other way around, which looked pretty illogical in
2473 Xiangqi: to see Horses, which are blockable pieces there, move over an
2474 occupied square.
2475
2476 2010-10-27 20:04:01 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2477 Let -oneClickMove also work in EditGame mode
2478
2479 There is really no reason why people that lke one-clcik moves enough to
2480 switch them on would not want to use them too when editing a game.
2481 This solves a nast inconsistency, as before it used to work in -ncp mode
2482 on the _first_ move, as the mode is then BeginningOfGame, and not yet
2483 EditGame, and we do want it to work for BeginningOfGame, as this is
2484 also the game mode when you start playing as white.
2485
2486 2010-10-27 19:40:22 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2487 Make -flipBlack and -allWhite option volatile
2488
2489 As these options are very Shogi specific, and the variant is volatile,
2490 it seems logical to make them also volatile. Not completely sure about
2491 -allWhite, though. It cold be useful if you want, for example, to play
2492 wth dark-brown pieces for black, as any color but black looks much
2493 better with outline pieces than with solid pieces.
2494
2495 2010-10-27 19:33:44 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2496 Provide some sample board-texture pixmaps
2497
2498 Wood and marble themes are provided as textures for light and dark
2499 squares, plus two complete Xiangqi boards (wood and evenly colored).
2500 These should probably not goint the distro tar ball.
2501
2502 2010-10-27 19:25:56 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2503 The -overrideLineGap option is made to work in XBoard
2504
2505 Although XBoard already allowed this in the -boardSize specification,
2506 it is still seful to globally disable grid lines, e.g. for an
2507 oriental Xiangqi board. And it converges XB and WB.
2508
2509 2010-10-27 19:18:41 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2510 Implement board textures in XBoard
2511
2512 The -darkBackTextureFile and -liteBackTextureFile options now wrk in
2513 XBoard too, for loading a pixmap that will be used to cut out the dark
2514 and light square backgrounds. The cutting algorithm is such that the
2515 pixmap image is completely restored if the size was that of the total
2516 board (e.g. a drawing of a Xiangqi board).
2517
2518 2010-10-27 12:11:02 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2519 Complete WB (western) bitmaps for Shogi at size 33
2520
2521 The Lance was not replacing Queen in some sizes where the bitmaps were
2522 already available, and new bitmaps for the promotion Golds were added.
2523
2524 2010-10-22 20:30:06 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2525 Make starting new variation dependent on shift key
2526
2527 The shift key is read during mouse events, and posted in a global
2528 variable, which can then be used by the back-end. The decision to start
2529 a new variation (pushing the game tail rather than clipping it off) when
2530 entring a move in Edit Game or Analyze mode is made dependent on this.
2531 The move-typein also records the shift-key state.
2532
2533 2010-10-22 20:25:06 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2534 Fix merging bug
2535
2536 A %g format was used to print an int in sending the level command,
2537 because decimal points were dropped when merging patches. Also an unused
2538 variable was removed to suppress a warning.
2539
2540 2010-10-18 19:50:09 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2541 Add set of shogi pixmaps for XBoard
2542
2543 The -size 64 pieces from gShogi (and originally XShogi) are made
2544 suitable for loading by XBoard, through redefining the transparent
2545 background color as either light or dark square color. These bitmaps are
2546 not included in the XBoard build, and perhaps should not even be
2547 included in the source distribution, but made available in a separate
2548 distribution?
2549
2550 2010-10-18 19:46:33 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2551 Implement -flipBlack in XBoard
2552
2553 When -flipBlack is true, the white and back piece pixmaps are swapped in
2554 flipView. The idea is that the black pieces are upside-down versions of
2555 the white (Shogi) pieces, so that swapping white and black in effect
2556 turns all pieces upside down, which is what should happen in flipView.
2557
2558 2010-10-11 21:06:41 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2559 Disable some very verbose debug printing
2560
2561 The internationalization seems debugged enough to do without them.
2562
2563 2010-10-11 20:52:10 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2564 Add option -variations to control variation-tree walking
2565
2566 Just so that users can switch it off if the find it annoying.
2567
2568 2010-10-11 21:01:00 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2569 Allow full promotion suffixes on SAN piece moves
2570
2571 This facilitates the parsing of (non-standard) Shogi moves in ICS
2572 protocol. It can also be useful for Seirawan Chess, where a future
2573 implementation of it can use promotion suffixes to indicate gating.
2574
2575 2010-10-11 14:07:02 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2576 Allow lower-case piece indicator in drop-move notation
2577
2578 As it seems that XBoard also sends such moves in zippy play, it seems
2579 more fair to recognize them from the engine as well.
2580
2581 2010-10-10 21:26:11 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2582 Fix bug in ICS variant switch for Shogi
2583
2584 Because a test for 8x8 variants was done by <= VariantShogi,
2585 rather than <, spurious move-list fetching occurred in Shogi.
2586
2587 2010-10-10 21:23:09 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2588 Fix WinBoard Lance bug
2589
2590 The choice between Lance and Queen was made on appData.variant, in stead
2591 of gameInfo.variant. Because of this it was not always up-to-date in ICS
2592 games.
2593
2594 2010-10-10 21:15:06 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2595 Adapt WinBoard to Shogi implementation on Variant ICS
2596
2597 The Variant ICS does not use the '+P' notation for promoted pieces,
2598 neither in the board, nor in SAN, but simply indicates any Gold by 'G',
2599 and uses 'H' and 'D' for +B  and +R. The Shogi promotion code in
2600 LegalityTest() and Disambiguate(), which are used in move Parsing, are
2601 adapted to handle this. Deferred promotions sent to the ICS now use an
2602 == suffix.
2603
2604 2010-10-10 21:07:18 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2605 Inherit promoted-info that ICS does not give from previous board
2606
2607 The ICS does not tell us in Crazyhouse (or Shogi) if a piece is
2608 primordial or a promoted pawn (or a promoted other piece). We now derive
2609 this info from the previous board. The option -disguisePromotedPieces
2610 controls this feature.
2611
2612 2010-10-10 21:03:29 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2613 Limit multi-session clock handling to non-ICS games
2614
2615 In ICS games a time forfeit crashed XBoard, apparently because the
2616 fullTimeControl string is not properly set when we try to use it to see
2617 if a sudden-death session is indeed the last session.
2618
2619 2010-10-08 11:47:34 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2620 Change evalgraph scale in drop games
2621
2622 Score swings tend to be much larger in Crazyhouse and Shogi, so the
2623 vertical rangee in those games is doubled to (-14, 14).
2624
2625 2010-10-13 23:05:05 -0700 Arun Persaud <arun@nubati.net>:
2626 bugfix: fixed readline support with icslogon option
2627
2628 The icslogon option sends the login and password, so we don't need to handle
2629 special cases for the readline buffer.
2630
2631 2010-10-07 20:35:26 -0700 Arun Persaud <arun@nubati.net>:
2632 fixed some typos that were introduced during the sprintf->snprintf changes
2633
2634
2635 2010-10-07 11:59:33 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2636 Fix uninitialized variable in book code
2637
2638 The variable ' power' was used uninitialized in case -bookVariation was
2639 set to 0, which can be an error even if it was only multiplied by zero.
2640
2641 2010-10-06 14:20:03 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2642 Fix menu translation bug
2643
2644 The menuText array was declared too small, so that the last entry of the
2645 File menu got out of bounds and was overwritten by the first of the Mode
2646 menu.
2647
2648 2010-10-05 21:14:08 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2649 Allow -timeIncrement to be a float
2650
2651 The increment can now be fractional seconds. The printing in
2652 ParseTimeControl() and SendTimeControl() is done with %g format, so that
2653 for integer increment there is backward compatibility with the old level
2654 command.
2655
2656 2010-03-30 20:24:49 -0700 Arun Persaud <arun@nubati.net>:
2657 adding gnu-readline support
2658
2659 should make the user interface for xboard a bit nicer. In the end we want to have a separate input window, but this probably will have to wait until the GTK version.
2660
2661 2010-09-24 21:17:50 -0700 Arun Persaud <arun@nubati.net>:
2662 added warning if icsLogon file couldn't be opened
2663
2664
2665 2010-09-24 21:10:28 -0700 Arun Persaud <arun@nubati.net>:
2666 security fix: replaced some strcat with strncat
2667
2668 there is still more to do
2669
2670 2010-09-19 20:55:01 -0700 Arun Persaud <arun@nubati.net>:
2671 add option for silent builds
2672
2673 this can be enabled for automake versions >1.11 by calling ./configure --enable-silent-rules.
2674 It should still work for older automake versions too
2675
2676 2010-09-19 13:16:40 -0700 Arun Persaud <arun@nubati.net>:
2677 bugfix: missing array index
2678
2679
2680 2010-09-19 12:19:44 -0700 Arun Persaud <arun@nubati.net>:
2681 added new case for (Chessmove) 0 in common.h
2682
2683 this cleans up a few more -Wall messages
2684
2685 2010-09-17 21:47:22 -0700 Arun Persaud <arun@nubati.net>:
2686 cleaned up -Wall warnings (apart from settings some parentheses)
2687
2688 removed unsused variables, etc mostly everything from -Wall -Wno-parenthesis
2689
2690 2010-09-17 20:36:54 -0700 Arun Persaud <arun@nubati.net>:
2691 sizedefaults has 9 members, the last line of the array (NULL) only set 7.
2692
2693
2694 2010-09-12 20:04:03 -0700 Arun Persaud <arun@nubati.net>:
2695 security fix: replaced sprintf with snprintf
2696
2697 replaced most sprintf with snprintf. There are still some left where for example a pointer is used and is allocated in the line before, which should be fine... and some others.
2698
2699 2010-09-10 23:36:23 -0700 Arun Persaud <arun@nubati.net>:
2700 security fix: replaced strcpy with safeStrCpy from backend.c
2701
2702 see comment in backend.c on how to use safeStrCpy. This was already added by AS, but only used in 3 places.
2703
2704 2010-10-04 11:50:38 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2705 Enhance multi-session TC clock handling
2706
2707 Some new TC types are introduced: Bronstein and free sessions. The
2708 former is implemented by letting an exclamation point '!' in front of an
2709 increment (in the -tc string) indicate that the increment is limited to
2710 the time actually used on the previous move. The latter is an interval
2711 of given duraton in which you can do any number of moves (even zero),
2712 before the next session starts. This is needed for implementing Shogi
2713 byoyomi-type TC, as a first session, followed by a session of fixed-time
2714 per move. The latter can now be specified with the -tc argument as a
2715 degenerate case of Bronstein, where the time on the clock is <= the
2716 increment (so that it is never possible to think longer than the
2717 increment). A TC of 5 min + 10 sec byoyomi can then be indicated as
2718 300:10+!10.
2719
2720 The sessions are now separated by ':' in stead of '+', and all times in
2721 the TC string are converted to seconds first (in ParseTimeControl), so
2722 the fullTCstring can now be directly used in a PGN tag.
2723
2724 Note that this patch only addresses clock handling; the engine will not
2725 be informed yet if the TC type or parameters change at the start of new
2726 session!
2727
2728 2010-10-04 09:32:18 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2729 Remove promotion-piece encoding from ChessMove type
2730
2731 The shizophrenic way to indcate promotion pieces in the XBoard code
2732 (sometimes using a promoChar, at other times relying on moveType) was
2733 cured by combining all promotion move types (such as WhitePromotionRook)
2734 into a single one (WhitePromotion), and relying on promoChar to specify
2735 the piece. This solves the problem of promoting to new piece types in
2736 variants, which formerly also required addition of new move types.
2737
2738 In Shogi the '+' character is now consistently used to indicate
2739 promotions (and recognized in ApplyMove), rather than 'q' or
2740 PieeToChar(BlackQueen), as the latter did not work in minivariants where
2741 the Queen (representng the Lance) did not partcipate.
2742
2743 2010-10-03 20:50:01 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2744 Pass promoChar to SendMoveToICS
2745
2746 SendMoveToICS was the only place where the promotion piece was derived
2747 from moveType, rather than an explicity passed promoChar.
2748
2749 2010-10-04 09:41:11 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2750 Suppress spurious use of SAN castling in mini variants
2751
2752 King moves from a central file to the king-side-castled position (1
2753 square away from the right corner) were intercepted and printed as O-O
2754 in CoordsToAlgebraic. But on a 5x5 board (mini-Shogi!) this caught the
2755 normal King move Kc1-d1 as well. The castling notation is now reserved
2756 for King moves larger than one step.
2757
2758 2010-10-04 08:21:19 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2759 Make Shogi promotion zone board-size dependent
2760
2761 In stead of using a fixed size of 3 ranks, we use BOARD_HEIGHT/3, which
2762 would translate to 1 rank for mini-Shogi (5x5) and 2 ranks for Judgkin's
2763 Shogi (6x6), which are indeed what these variants need.
2764
2765 2010-10-03 19:58:00 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2766 Make board-size overrule options volatile
2767
2768 The options -boardWidth, -boardHeight and -holdingSize were legacies
2769 from the day choosing a variant would not automatically set a board
2770 size. As a result they are seldomly used anymore. The first real
2771 application is mini-Shogi (on 5x5 board), and it turned out very
2772 annoying if the 5x5 settings persisted to the next session, where you
2773 almost certainly want to play another variant.
2774
2775 2010-10-04 09:16:47 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2776 Strip DOS line endings from parser.l
2777
2778
2779 2010-09-16 18:58:37 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2780 Extend mate test to drop games
2781
2782 MateTest() in case of no legal moves now also looks if there are legal
2783 drops that can resolve the check. This provides reliable mate testing in
2784 Crazyhouse and Shogi, so these are now made subject to adjudications too.
2785
2786 2010-09-16 18:48:29 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2787 Extend legality testing to drop moves
2788
2789 LegalityTest() can nowbe called with (internal-format) drop moves, and
2790 delegates their testing to a new routine LegalDrop(). This routine
2791 performs the 'no-pawn-on-back-rank' test that used to be in
2792 UserMoveTest (which now calls LegalityTest also for drop moves).
2793 The more complex Shogi case is also handled (except for Pawn mate
2794 drops) in LegalDrop().
2795
2796 2010-09-16 18:25:21 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2797 Revert splitting of UserMoveEvent
2798
2799 This splitting into UserMoveTest and FinishMove was no longer needed,
2800 now that the new mouse driver no longer calls UserMoveTest to figure out
2801 if a move is a promotion, and XBoard and WinBoard are unified in this
2802 respect. It was counter-productive, because UserMoveTest was not able to
2803 change the fromX, fromY (call-by-value) parameters for passing them to
2804 FinishMove, so it had to defer the conversion of drop moves to internal
2805 format to the latter, while it did not belong there. (Because
2806 DropMenuEvent already delivers the moves in internal format.) This
2807 whole kludgy construction was therefore abandoned, by going back
2808 to the original 4.2.7 calling scheme, where UserMoveEvent completely
2809 pre-processes the move, and when it is valid, calls FinishMove directly.
2810
2811 2010-09-16 18:02:40 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2812 Fix silent bug in drop moves
2813
2814 In ApplyMove() the piece on the from square was accessed and used before
2815 we tested for drop moves. As drop moves have off-board from-squares this
2816 led to out-of-bound array access, which apparently was usually harmless.
2817
2818 2010-09-16 17:43:59 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2819 Allow parsing of upper-case machine moves
2820
2821 Dubious patch, as it caters to non-compliancy. Some variant engines are
2822 very non-compliant, though.
2823
2824 2010-09-16 17:38:35 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2825 Prevent transmission of spurious promo char to other engine
2826
2827 The parser now strps off spurious promotion characters.
2828 New move types "White/BlackNonPromotion" had to be introduced for this,
2829 to indicate NormalMoves that could have been a promotion, to make sure
2830 the '=' suffix of Shogi deferred promotions survives.
2831
2832 2010-09-16 20:44:37 -0700 Arun Persaud <arun@nubati.net>:
2833 fixed internationalization for winboard
2834
2835 in the original commit some files were forgotten. This should fix it.
2836
2837 2010-08-29 21:07:12 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2838 Fix JAWS bug saying side to move in ICS play
2839
2840 This was done the wrong way around.
2841
2842 2010-08-27 14:08:39 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2843 Make WB run-time language switch possible from menu
2844
2845 This is a rather involved patch that might not be worth it. It is
2846 difficult, because translation of things that live forever is not easy
2847 to invert (menus, the auxiliary windows). We hae to remember all
2848 original, English texts there to be able to put them back,or
2849 re-translate. Still does not fully work, although the menus and
2850 temporary dialogs now are all OK.
2851
2852 2010-08-27 14:35:46 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2853 Update WB translation template
2854
2855 The language.txt file now also contains all translatable strings from
2856 the C source files, rather than jsut the resource.
2857
2858 2010-08-27 14:14:51 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2859 Update docs
2860
2861 Add descriptions for machine-match menu support and enhanced book
2862 control, nick-name options and language.
2863
2864 2010-08-27 13:59:09 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2865 Add some forgotten translation hooks
2866
2867 The general-options, file-browse dialogs and the about box did not call
2868 Translate() yet. Also translate contents of combo boxes. Some small bug
2869 fixes.
2870
2871 2010-08-27 13:28:33 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2872 Do not translate game-end messages in PGN
2873
2874 The messages themselves are not subjected to _(), but in stead their
2875 displaying in DisplayMove is subjected to T_().
2876
2877 2010-08-23 13:23:22 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2878 Internationalization for WinBoard
2879
2880 A function Translate() was added, which uses a list of item dialogs,
2881 reads their value, and replaces it by a translation (if available). It
2882 also reads the window title and sets a translation. Calls to this
2883 routine are added in the initialization code of every dialog callback.
2884 In addition all translatable strings in the WnBoard front end are marked
2885 by the gettext macro _(). Because WB is not gettexted yet, a hard
2886 re-definition of this macro is added in each file using it, to the
2887 string-translation routine T_() supplied in winboard.c.
2888 Code to read the translation file, and translate the menu texts is added
2889 in winboard.c. In backend.c the meaning of the gettet macros is
2890 redefined for the WIN32 case.
2891
2892 2010-08-23 13:07:40 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2893 Make the ID of all WB dialog items unique
2894
2895 Mnany static dialog texts did share the ID -1 (IDC_STATIC). But to
2896 replace tet at run-time for translation purposes, they need to be
2897 addressed individually. So they were given new IDs, with symbols defined
2898 for those.
2899
2900 2010-08-23 12:48:07 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2901 Mark XBoard result messages for internationalization
2902
2903 The GNU gettext macro _() is used with the game-end messages. This might
2904 be controversial, as they will appear in the PGN as well. But only as a
2905 comment. We can always decide not to supply a translation.
2906
2907 2010-08-23 12:43:27 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2908 Do not exit after match when match started from menu
2909
2910 The codelooks weird, but matchMode == 2 in this case. We then use
2911 DisplayNote() to report the match result.
2912
2913 2010-08-23 12:39:07 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2914 Trivial-draws recognition improved in Xiangqi
2915
2916 Now based on a routine "SufficientDefence". If both have it, it is draw.
2917
2918 2010-08-20 17:46:45 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2919 Update .dev files
2920
2921 The relocation of parser.c and the addition of history.c was not yet
2922 incorporated in the devcpp proect files.
2923
2924 2010-08-19 13:45:04 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2925 Fix some MSVC compile errors
2926
2927 Some statements has moved up stream of declaratons, which is an error
2928 that gcc is forgiving about, but where MSVC is strict.
2929
2930 2010-08-14 14:01:44 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2931 Improved patch for expansion of WB settings-file name
2932
2933 The expansion of environment variables now allows multiple environment
2934 variables in the path name. Tested on %HOMEDRIVE%%HOMEPATH%\winboard.ini
2935 and %APPDATA%\winboard.ini.
2936
2937 2010-08-07 16:53:50 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2938 Add -colorNickNames option
2939
2940 This option allows non-standard designation of side to move in FENs.
2941 (Useful for Xiangqi, where white is indicated often as r(ed), and Shogi,
2942 where white is s(ente) or b(lack), and black is g(ote) or w(hite).)
2943 Can also be used for FENs in a local language. A match of theinput
2944 character with the nick name translates it to the standard; this means
2945 the standard will continue to be recognized, unless it was defined as a
2946 nick name.
2947
2948 2010-08-07 16:39:16 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2949 Tricked by the grossnes
2950
2951 Some WB menu items were referenced by a hard number. As items had been
2952 added over the years, the wrong menu items were grayed. In particular
2953 the Options -> Adjudication menu was grayed out, in -ncp mode, where
2954 this was intended for the Sounds dialog. This accidentally proved
2955 useful, until we started to apply adjudictions also to the Human moves.
2956 Then it was suddenly undesirable, and a small mystery why it happened at
2957 all, when I tried to change it. The numbers are now corrected to the new
2958 locatons of the items in the menus.
2959
2960 2010-08-07 16:35:23 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2961 Allow match to be started from WB menu
2962
2963 A menu item Machine Match was added in the Mode menu to switch to
2964 matchMode. A persistent option /defaultMatchGames determines the number
2965 of games. A control was added to the Options -> Common Engine dialog to
2966 set this option.
2967
2968 2010-08-07 16:26:35 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2969 Add some book-control options
2970
2971 Options /bookDepth and /bookVariation have been added to control the use
2972 of the GUI book. In WinBoard the Optons -> Common Engine dialog now
2973 contains fields to set them.
2974
2975 2010-08-07 00:15:57 -0700 Arun Persaud <arun@nubati.net>:
2976 new developer release
2977
2978
2979 2010-08-06 11:18:34 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2980 Repair exit-popup deadlock patch
2981
2982 Relocating the exit popup call had made it lose access to the message it
2983 should print, because it was declared only in an inner code block, by
2984 the same name: buf[]. Deleting the inner declaration fixes it.
2985
2986 2010-08-04 11:00:28 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2987 Fix erors when compiling with --disable-zippy
2988
2989 The file args.h contained a codeblock in #ifdef ZIPPY, in stead of
2990 fields.
2991
2992 2010-08-01 13:27:23 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2993 Fix zippy handling of draw offers from ICS
2994
2995 The patch by DM to fix the problem introduced by the coloration of
2996 zippy-matched commands (namely that the coloration code beat the zippy
2997 draw recognition to it, and ate the draw offer away) was only targeting
2998 ICC. The new fix should work on any ICS (by using the same pattern in
2999 zippy as in the colorization code).
3000
3001 2010-08-01 13:15:27 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
3002 Fix regression in colorization of zippy-matched commands
3003
3004 The patch by Daniel Mehrman from 4.2.pre8 was not properly merged, so
3005 that in XBoard no coloration would take place of ICS commands that were
3006 matched by zippy. (It was using &i as input pointer, rather than &backup.
3007 The XBoard-specific code now has been deleted completely, to remove a
3008 seemingly needless dependence on _WIN32_ of the back-end. Both WB and XB
3009 now use the XBoard method, to only match zippy commands when logged in.
3010
3011 2010-07-31 22:48:45 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
3012 Suggest default file name in browser dialog
3013
3014 The argument 'def' to FileNamePopUp() was not passed through to the new
3015 file-browser routine, which got NULL in stead, and thus started with an
3016 empty input field.
3017
3018 2010-07-30 23:28:57 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
3019 Define /firstUCI and /secondUCI as synonyms for /fUCI, /sUCI
3020
3021 Because the %s expansion of WB options in the /fcp and /scp lines only
3022 works for options that contain 'first' or 'second', and /fUCI thus did
3023 not work, PSWBTM had to rely on the cumbersome /firstIsUCI=true to
3024 install UCI engines. (The latter option should be deprecated really;
3025 the UCI-ness of the engines is a volatile option, so it makes no sense
3026 to supply a way to set them both to false or true. One only needs to be
3027 able to set it to the non-default state.)
3028
3029 2010-07-30 23:21:50 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
3030 Add string option /pieceNickNames
3031
3032 This (volatile) option allows definition of alternate letters for the
3033 pieces, which will be recognized next to the standard symbols as given
3034 in the /pieceToCharTable on input. (Output always uses the standard.)
3035 This can be useful for reading PGN from another language, or
3036 non-compliant FENs (e.g. using B and N for E and H in Xiangqi).
3037   The format of the argument is the same as for /pieceToCharTable.
3038 Because the nickNames are consulted before the standard table, it is
3039 possible to redefine a standard name as a nick for another piece.
3040
3041 2010-07-30 23:10:42 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
3042 Fix deadlock in match-result display
3043
3044 At the end of a match, GameEnds() was recursively calling itself,
3045 through DisplayFatalError() and ExitEvent(), and the latter was then
3046 delaying until the calling GameEnds() terminated. (Which it would of
3047 course never do before ExitEvent returned; fortunately there was a tim
3048 limit to this delay, but in XBoard it was 10 sec in stead of 10 msec.)
3049  Now the calling of DisplayFatalError() (to show the result popup) is
3050 delayed until after GameEnds completes (and resets the anti-recursion
3051 flag 'endingGame'), so that it is simply executed a second time, unaware
3052 of the earlier call. But this second time it does not do anything,
3053 because the gameMode ws set to EndOfGame the first time, and the writing
3054 of the PGN is blocked by the checksum being still the same.
3055
3056 2010-07-12 11:10:17 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
3057 Fix WinBoard game-list title
3058
3059 Number of displayed games and WDL stats were always appended to the
3060 existing title, leading to an ever-growing title in the game-list
3061 window. Now the old actual title is ignored, and the starts is appended
3062 to the original title "Game List". (In the future we could use the
3063 filename here?)
3064
3065 In addition, the title was not updated when re-opening the game-list
3066 window, while the stats could change if filtering was active when the
3067 window was closed. (In that case the filter is cleared on re-opening, so
3068 the number of displayed games changes.) Now a title-update (after
3069 recalculating the stats) is done every time the game-list window is
3070 opened.
3071
3072 2010-07-11 11:06:27 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
3073 Refactoring of material-draws adjudication code
3074
3075 Insufficient mating material is now determined per side individually, by
3076 testing for MatingPotential of each side. If both lack mating potential
3077 the game is adjudicated as draw (if the -materialDraws option is set).
3078
3079 This way MatingPotential() can later also be used to correct losses by
3080 forfeit to draws (which currently is only done when the opponent has a
3081 bare King).
3082
3083 The accuracy of this type of adjudication in Xiangqi has been highly
3084 improved.
3085
3086 2010-07-11 10:54:59 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
3087 Fix bug in sending cores command to engine
3088
3089 The cores command was alwas sent to the engine(s) when the user changed
3090 it through the menu, even when the engine had sent feature smp=0 (which
3091 is default anyway). NewSettingEvent() was patched to send the new
3092 setting conditionally, based on the engine properties as recorded in
3093 ChessProgramStates first, second; In this particular case it now
3094 consults cps->maxCores. (Note the code for testing the second engine
3095 contains some dirty pointer arithmetic.)
3096
3097 2010-07-11 10:42:00 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
3098 Fix oneClickMove bug
3099
3100 When checking for unique captures, no attention was payed to the option
3101 setting, so the capture was also made when the option was off.
3102
3103 2010-07-11 10:39:28 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
3104 Remove duplicate testing for cores feature
3105
3106 The testing for this BooleanFeature occurred twice.
3107
3108 2010-07-11 10:35:13 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
3109 Remove misspelled prototype
3110
3111 NewSettingEvent occurred, next to the correct one, in misspelled form.
3112
3113 2010-07-05 10:00:01 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
3114 Fix parsing of SAN shogi promotions
3115
3116 A missing promotion character defaults to promotion in the move type,
3117 but the promotion character was not set when this happened in variant
3118 shogi. And it is especially important there, as the promotion character
3119 '+' will always be missing, as the parser will take it to be a 'check'
3120 symbol, and strip it from the move.
3121
3122 2010-07-05 09:55:14 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
3123 Fix variant switch on PGN loading
3124
3125 When the PGN specified an essentially different variant, the
3126 piece bitmaps were not properly adapted, because the switch was done by
3127 calling InitPosition(), rather than Reset(). (The latter would destroy
3128 the PGN tags info.) We now added an explicit call to ResetFrontEnd(),
3129 (which is normally done from Reset()).
3130
3131 2010-07-05 09:51:53 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
3132 Adjudicate Xiangqi material draws with Advisor-less Cannons
3133
3134 Used the Queen counter for counting Cannons. Note that material draws
3135 with stale Pawns (i.e. on the back rank) are not yet adjudicated.
3136
3137 2010-07-05 09:34:21 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
3138 Remove font settings from master settings file
3139
3140 xboard.conf should not contain general font settings (not specific to
3141 one board size) with specified point size. In fact it should not even
3142 specify sizable fonts, as the new system would make specification of a
3143 general font overrule the size-specific settings in the .xboardrc file,
3144 so the persistence of fonts would be completely broken.
3145
3146 2010-06-30 10:52:27 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
3147 Cut board squares out of texture bitmap more cleverly
3148
3149 When the bitmap is larger than the entire board, the squares are now cut
3150 out of the center of the virtual squares from subdividing the bitmap, so
3151 that they stay centered on the grid of a Xiangqi board bitmap. If the
3152 board size exceeds that of the bitmap, the old algorithm is still used,
3153 as the centering would make the edge squares exceed the bitmap, and
3154 cause a black rim around the board.
3155
3156 2010-06-30 10:49:12 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
3157 Allow -flipBlack to work with font-based piece rendering
3158
3159 In addition the font-based pieces will also be flipped vertically in
3160 flipView for variant shogi when -flipBlack is off.
3161
3162 2010-06-30 10:46:43 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
3163 Allow font-based piece rendering in board sizes below petite
3164
3165 At least for variants that use unorthodox pieces, so that switching back
3166 to using bitmaps is not really an option anyway.
3167
3168 2010-06-30 10:41:25 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
3169 Ignore checks in 50-move count for Xiangqi
3170
3171 Both checks and evasions are discounted; this is only done after the
3172 naive counting exceeds the maximum, so during most of the game it causes
3173 no CPU load.
3174
3175 2010-06-05 14:38:47 -0700 Arun Persaud <arun@nubati.net>:
3176 removed some garbage from configure.ac that got added a while ago
3177
3178
3179 2010-05-25 21:20:27 -0400 Clint Adams <schizo@debian.org>:
3180 Remove unnecessary double equals from configure.ac.
3181
3182
3183 2010-05-28 11:07:06 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
3184 Fix e.p. bug in xiangqi with -serverMoves option
3185
3186 Sideway Pawn moves were written as e.p. captures in the file with moves,
3187 which led to disappearence of pieces in the viewer.
3188
3189 2010-05-28 11:05:00 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
3190 Repair score printing with -serverMoves option
3191
3192 A previous patch had moved MakeMove to before the update of pvInfoList,
3193 so that the score/depth info would not appear in the file with moves.
3194
3195 2010-05-28 11:02:54 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
3196 Repair animate dragging
3197
3198 The previous patch had left a stray semicolon in the mouse handler.
3199
3200 2010-05-10 10:32:19 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
3201 Fix game end during dragging
3202
3203 The stale-first-click fix interfered with proper handling of a piece
3204 being dragged when a game suddenly ended (because of opponent resign,
3205 or caling the flag), because up-clicks when the from-square was reset
3206 were completely ignored. Now such an 'unmatched' upclick calls
3207 DragPieceEnd() and redraws the board.
3208
3209 2010-05-10 10:09:36 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
3210 Pop down old tags on loadng new game in WinBoard
3211
3212 ResetFrontEnd(), called from Reset(), did not do this in WinBoard
3213 (unlike XBoard), so that the tags from the previous game were left on
3214 display when -autoDisplayTags was off.
3215
3216 2010-05-09 22:15:27 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
3217 Reverse mousewheel action
3218
3219 Apparently WinBoard was stepping in the opposite direction through the
3220 game in reaction to the mousewheel as every other GUI in existence.
3221
3222 2010-05-09 22:07:30 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
3223 Fix bug in sending "usermove" when forcing book moves
3224
3225 The keyword "usermove" was copied to the buffer, but not sent before it
3226 was overwritten by the actual book move.
3227
3228 2010-05-06 17:23:24 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
3229 Fix engine stall on perpetual-check evasion
3230
3231 The adjudication code had already put the engine in force mode after
3232 postponing the actual adjudication to the next move. Now first determine
3233 if we want to adjudicate now, and with which result, before stopping the
3234 engine and ending the game.
3235
3236 2010-05-06 16:37:04 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
3237 Let move parser return ImpossibleMove for off-board moves
3238
3239 It used to return 0, which interfered with buiding a game list. This
3240 broke reading of multi-game PGN files containing games in a variant with
3241 a board size larger than that of the currenty active variant.
3242
3243 2010-04-06 15:05:10 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
3244 Alter XBoard key bindings to mimic WinBoard
3245
3246 A lot of new bindings were added, and four menuProcs had to be registered
3247 to be able to add bindings to them. The use of the control key as
3248 temporary take-back for the last move conflicted with the use of Ctrl
3249 keystrokes, and this function was migrated to '.'. The iconify function
3250 had no shortcut in WinBoard, but to get rid of letter bindings it was
3251 migrated to '-'.
3252
3253 2010-04-05 20:45:45 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
3254 Update README file
3255
3256
3257 2010-04-03 14:00:40 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
3258 Fix typos in html help file
3259
3260
3261 2010-04-01 15:22:41 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
3262 Fix JAWS piece drop cursor, and streamline some sentences
3263
3264 The cursor square was reset to a1 after every use of the piece menu,
3265 which was very inconvenient. Some of the spoken sentences have been
3266 improved; the square is read before the piece now, when using the arrow
3267 keys on the board.
3268
3269 2010-03-31 22:31:44 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
3270 Allow escape sequences in telluser(error) messages
3271
3272 The routine EscapeExpand was moved to backend.c, and applied to the
3273 message received from the engine.
3274
3275 2010-03-31 21:29:39 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
3276 Allow lower-case promochar in moves of type h8=Q
3277
3278 Updated the parser rules. Other move formats already allowed this.
3279
3280 2010-03-31 21:36:14 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
3281 Fix Alt+M JAWS command in Two-Machines mode
3282
3283 The command refused to read the ast move because it contained thinking
3284 output of the other engine. Let it pay attention to evenIfDuplicate.
3285
3286 2010-03-29 09:57:48 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
3287 Fix rep-draw recognition
3288
3289 The refactoring had broken the rep-draw recognition, by adding and extra
3290 condition in a conditional with side effects. The testing of this extra
3291 condition is now moved to after the side effect.
3292
3293 2010-03-28 12:32:07 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
3294 Allow any %ENVIRONMENTVAR% in WB settings file name rather than ~
3295
3296 Only a single variable at the beginning of the file name is recognized,
3297 and the matching is not fool proof (it matches across backslashes).
3298
3299 2010-03-28 11:24:44 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
3300 Fix info lines being used as normal thinking output
3301
3302 The new standard of using thinking output with time = nodes = score = 0
3303 as info messages for printing in the Engine-Output window was not
3304 understood everywhere, and led to such info lines being used for
3305 autoKibitzing and PGN annotation. The programStats are now only updated
3306 from thinking output received from an engine when it is not an info line.
3307
3308 2010-03-27 11:54:41 -0700 Arun Persaud <arun@nubati.net>:
3309 new developer release
3310
3311
3312 2010-03-26 21:16:52 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3313 Suppress background observe for boards with own game number
3314
3315 This is really a work-around for an ICS bug. The Variant-ICS sent the
3316 initial board of a game in a move list with relation = 0, which means
3317 'observed'. So XBoard was thinking it was observing its own game, and
3318 switched to dual board. It seems harmless to suppress such a switch for
3319 all boards of your own game, however, which is now done.
3320
3321 2010-03-26 21:12:19 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3322 Fix crash on switching to ICS xiangqi game
3323
3324 The oldBoard was a local variable, and only squares of the old board
3325 were initialized. This led to a crash if the copied board was enlarged,
3326 and then displayed. The variable is now declared static, so the
3327 uninitialized squares contain harmless zeros.
3328
3329 2010-03-26 18:32:36 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3330 Let Chat Boxes pop up above console, rather than on top of it
3331
3332 Use EnsureOnScreen() to have them overlap if there was no room.
3333
3334 2010-03-26 18:26:04 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3335 Fix disabling of Chat Box navigation buttons
3336
3337 The buttons for non-open boxes were enabed, rather than disabled.
3338
3339 2010-03-26 18:17:44 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3340 Prevent <Esc> closing chat box
3341
3342 Let it in stead switch focus back to the console window.
3343
3344 2010-03-26 15:28:54 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3345 Let WinBoard recognize ~ in settings file name as HOMEPATH
3346
3347 Fetch the appropriate environment variable to build the mathname in
3348 MySearchPath() whenever the file name starts with "~\".
3349
3350 2010-03-26 13:59:28 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3351 Change name of Global Settings menu item to Common Engine Settings
3352
3353 The old name confused ICS users, as this is an engine-only dialog.
3354
3355 2010-03-26 13:58:46 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3356 Update WinBoard RTF docs
3357
3358
3359 2010-03-26 13:57:59 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3360 Update WinBoard html help
3361
3362
3363 2010-03-24 18:00:08 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3364 Allow adjustment of clocks in any mode with shift+click
3365
3366 In practice changing to edit-game mode during a game was very
3367 cumbersome. In WinBoard shift+click is now offered as an alternative.
3368 Make sure a right-click in the clock area is not also counted for other
3369 purposes.
3370
3371 2010-03-24 17:21:47 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3372 Allow loading of PGN variations in XBoard
3373
3374 Right-clicking variation comments in the comment-window was implemented
3375 through a translation. The right button is now bound to routines that
3376 set both the end and start of the selection, as setting a new start does
3377 not seem to work if the previous select-start was not completed by a
3378 select-end or extend-end. Finally the main handler uses the selection
3379 cursors to know what was clicked.
3380
3381 2010-03-24 17:16:59 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3382 Update XBoard docs
3383
3384 Added a descripton of the new ICS options (seek graph, back-ground
3385 observe) and menus (Upload) to the texi file. Also added a description
3386 of the variation (Annotate menu item and PGN variation comments) and PV
3387 walking (clicking engine-output). Describe the -shuffleOpenings option.
3388
3389 2010-03-24 13:30:59 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3390 Paint highlights on dual board (WB)
3391
3392 The highlight info is hidden in the partner board to pass it to the
3393 front-end.
3394
3395 2010-03-24 13:14:54 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3396 Fix handling username change during game
3397
3398 The title bar and gameInfo (going into the PGN) were not adapted when
3399 the username was changed through the menu, so that the change became
3400 only effective on the next game. Requires SetGameInfo to be called from
3401 the front-end, and thus a prototype for it in backend.c.
3402
3403 2010-03-24 11:04:00 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3404 Fix window-position upset on failing engine start in WinBoard
3405
3406 The main window was only positoned according to the settings-file data
3407 after the engine was started up from InitBackend2(), so that if the
3408 latter gave a fatal error, and Save Settings on Exit was on, a wrong
3409 position for the main window would be saved. The call to InitBackend2()
3410 is now moved until after setting the main-window position.
3411
3412 2010-03-23 23:22:46 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3413 Display PV from Engine-Output window (XBoard)
3414
3415 Translations are added to bind button 3 to the PV walk for the memo
3416 widgets, and the corresponding handlers are ported from wengineoutput.c.
3417
3418 2010-03-10 18:54:28 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3419 Set keyboard focus at startup to board window
3420
3421 This makes XBoard sensitive to the keybindings also when the cursor is
3422 outside the board window. This focus seems to persist indefinitely: each
3423 time the board window gets selected, the key bindings become activem
3424 wherever the mouse pointer is. Downside: the mouse pointer is no longer
3425 an arrow outside the board window, but becomes a text-insert tool there.
3426
3427 2010-02-27 20:49:21 -0800 Arun Persaud <arun@nubati.net>:
3428 added logo files for xboard
3429
3430 logos are installed in the hicolor theme [1] using $datadir as the basedir.
3431 Added both png and svg logo.
3432
3433 [1] http://standards.freedesktop.org/icon-theme-spec/icon-theme-spec-latest.html
3434
3435 2010-02-27 17:36:10 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3436 Remake programVersion string after receiving engine features
3437
3438 The engine could have sent a more accurate version of its own name
3439 than the one derived from the exe filename in a myname feature, and we
3440 better use that in the programVersion string, which will be sent as
3441 interface name to the ICS.
3442
3443 2010-02-25 19:22:00 -0800 Arun Persaud <arun@nubati.net>:
3444 Revert "Repair settings-file name"
3445
3446 This reverts commit a02042ef83ce1f3632f0cf3e0a2a4ce9a3ac5d85.
3447
3448 2010-02-25 20:32:23 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3449 Add -autokibitz checkbox to UCI-options menu dialog
3450
3451
3452 2010-02-25 20:29:45 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3453 Also capture (numeric) whispers of players for -autoKibitz
3454
3455
3456 2010-02-25 20:25:32 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3457 Add kibitzes and c-shouts Chat Box
3458
3459 A box dedicated to c-shouts will snatch any c-shout before it is
3460 diverted to a normal shouts box. The kibitzes box can capture the
3461 left-overs of -autoKibitz, if the latter is active.
3462
3463 2010-02-25 15:45:16 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3464 Mark non-compliant lines of engine in debug file
3465
3466 The option -engineDebugOutput is extended to accept value 3 for printing
3467 a cear indication of non-compliancy in the debug file.
3468
3469 2010-02-25 12:02:58 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3470 Redraw second board on expose events
3471
3472 The -dualBoard option now does refresh the second board after another
3473 window uncovers it. To acheive this, some data structures remembering
3474 what is displayed had to be duplicated. (lastBoard and damage for XB,
3475 lastReq, lastDrawn, lastReqValid and lastDrawnValid for WB.)
3476 WinBoard now uses clipping also for second board. This required the
3477 clips for the destination to be translated horizontally!
3478
3479 2010-02-25 15:13:00 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3480 Print seconds with 2 digits in backgroundObserve status line
3481
3482
3483 2010-02-24 17:01:23 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3484 Do not recognize non-ICS variants from PGN event tag
3485
3486 These variants were introduced after supporting the variant tag, so if
3487 the variant tag is missing, their recognition from the event tag will be
3488 a false match. (Mainly to prevent events with 'super' in the name being
3489 recognized as Superchess.)
3490
3491 2010-02-23 13:52:51 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3492 Fix display of uninitialized boards in background observe
3493
3494 A variable partnerBoardValid is cleared on starting our own game, and
3495 set when a board from the background game comes in during it. At the end
3496 of our own game, a valid partner board now is put in the display.
3497
3498 2010-02-23 13:46:25 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3499 Add option Display Logo in WB general-options menu
3500
3501 Changing the option requires InitDrawingSizes to be called for
3502 re-formatting the board window. Switching it off requires clearing of
3503 the cps->programLogo fields to take effect immediately. Switching it on
3504 only takes effect the next session, as we will need some refactoring to
3505 redo the figuring out what logos to display.
3506
3507 2010-02-22 12:02:59 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3508 Group Chat Boxes with console in stead of board window
3509
3510 They now open and close with the console, which seems more natural, and
3511 prevents the console from covering them.
3512
3513 2010-02-22 11:50:59 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3514 Put new options in WB ICS-options dialog
3515
3516 The Seek-Graph, background-observe and Chat-Box options are added to the
3517 ICS options dialog. They only control the appData settings, there are no
3518 special actions yet on switching the settings.
3519
3520 2010-02-22 11:46:33 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3521 Create space in WinBoard ICS-options dialog
3522
3523
3524 2010-02-20 12:42:09 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3525 Use side-by-side boards to display background game
3526
3527 A game observed in the background (i.e. if -backgroundObserve true) will
3528 be displayed right of the normal board in the same window if the new
3529 (persistent) Boolean option -dualBoard is also set.
3530 Very flakey hack, especially in XBoard, where clocks and messsage
3531 field all get the wrong width (and resist adjustment in the strangest
3532 ways). The clocks of the partner game are not yet displayed, and
3533 disaster happens when the background and foreground games do not have
3534 the same board format.
3535
3536 2010-02-23 14:57:01 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3537 Repair background-observe patch
3538
3539 Apparently a commit was lost that I collapsed with 3018a6 while the
3540 latter was already pushed to savannah. Here I recreated this commit from
3541 a diff between the respective commits in the savannah & nubati gits.
3542
3543 2010-01-31 11:07:33 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3544 Repair settings-file name
3545
3546 The default name is put back to /etc/xboard/xboard.conf, so that XBoard
3547 can again find its settings file. "make install" will still install it
3548 in the wrong place.
3549
3550 2010-02-21 18:43:59 -0800 Arun Persaud <arun@nubati.net>:
3551 new developer release
3552
3553
3554 2010-02-21 19:45:58 -0800 Arun Persaud <arun@nubati.net>:
3555 fixed compiler warning for file-browser code
3556
3557 missing "void"s in the function declaration and missing returns showed up when trying to build on the opensuse build server. fixed now.
3558
3559 2010-02-21 23:09:24 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3560 Put newly opened Chat Box on top
3561
3562 Dialogs always pop up in front, so set the onTop variable that prevents
3563 highighting the button to navigate to it from other Chat Boxes
3564 to reflect that a newly opened Chat Box is in view.
3565
3566 2010-02-21 18:55:03 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3567 Fix copying of kibitzed info in Engine-Output window
3568
3569 Make sure all lines end with "\r\n" to not lose line breaks on
3570 copy-paste from the memo. (XBoard would strip those again.)
3571
3572 2010-02-21 18:25:45 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3573 Allow walking a kibitzed PV
3574
3575 If no tabs are found in te 'thinking output' we assume it is a captured
3576 kibitz message, and look for "PV=" to locate the start of a PV in it.
3577 Also try to include any continuation lines below the selected line.
3578
3579 2010-02-21 17:45:37 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3580 Insert autoKibitz continuation lines at end of line
3581
3582 In the engine-output window lines that start with the ICS continuation
3583 sequence "\   " are inserted behind the line they belong to, in stead of
3584 at the top. This required keeping thrack of the length of the currently
3585 active line in OutputKibitz().
3586
3587 2010-02-20 15:39:29 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3588 Don't disturb background observe when receiving new piece
3589
3590 When new holdings are sent when the background game is displayed, we now
3591 ignore this, as presumably we are peeking at our partners game, and thus
3592 should be well aware of what is captured there.
3593
3594 2010-02-19 21:52:06 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3595 Newly lexed parser in XBoard directory
3596
3597
3598 2010-02-19 11:18:21 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3599 Let yy_text determine progress of PV parsing
3600
3601 The parsed unit yy_text was not available after ParseOneMove(), because
3602 the buffer switch in yylexstr() apparently destroys it. To solve that,
3603 yylexstr() now is equiped with an extra buffer argument, where it copies
3604 yy_text before the switch, so the caller, ParsePV(), can see what was
3605 parsed in yy_textstr. This is used to update the PV pointer, but also to
3606 save any parsed comments (when ParsePV is used for parsing a PGN variation).
3607
3608 2010-02-18 17:42:48 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3609 Support playing through PGN variation comments
3610
3611 Right-clicking a variation line in the comment dialog will shelve the
3612 current variation, and parse the comment to replace it. This uses
3613 ParsePV() in an alternative way, for which the latter had to be
3614 enhanced: it was made resistent to move numbers and comments inside
3615 the PV. It now has an argument to indicate if such comments should be
3616 stored with the moves. The Comment Popup is closed on revert, to
3617 make sure no comments to moves that are destroyed, containing
3618 variations on a non-valid line, can keep hanging around.
3619
3620 2010-02-18 16:05:35 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3621 Add Annotate item in Step menu
3622
3623 This does the same as Revert, except that it adds the destroyed
3624 variation as comment to the original movem in PGN variation format.
3625 RevertEvent now has an argument to indicate if it should add the
3626 comment, or not. Comments in the abandoned variation are included in the
3627 varriation command to the main line. (The exact layout of the variation
3628 comment that results leaves still to be desired.)
3629
3630 2010-02-15 19:07:12 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3631 Add option -shuffleOpenings
3632
3633 This volatile option is added just to make the existing variable
3634 available from the command line, not only from the menus.
3635
3636 2010-02-19 11:48:49 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3637 Let the sounds sound on receiving a message in a Chat Box
3638
3639 Use Colorize() to the applicable color to trigger the sound, and then
3640 restore the original color as 'continuation', to do it silently.
3641
3642 2010-02-10 10:55:51 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3643 Allow WB Chat Box to be dedicated to shouts and 'it'
3644
3645 By putting 'shouts' in the handle field, a chat window will capture all
3646 shouts and c-shouts, and send messages typed into it as shouts.
3647 The bracketing of the shouter name now indicates the type of shout.
3648 The handle for WHISPER Chat Boxes has been changed to 'whispers', to
3649 make it easier to pop them up by clicking the console.
3650
3651 2010-02-16 22:34:23 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3652 Add -chatBoxes option to open Chat Boxes at startup
3653
3654 This string option contains a semicolon-separated list of handles for
3655 which Chat Boxes should be opened at startup. The value saved in the ini
3656 file is the value that was read, not the actual chat boxes that were
3657 open at the time of saving.
3658
3659 2010-02-16 19:44:46 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3660 Make Chat Windows pseudo-tabbed