-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathChangeLog
612 lines (359 loc) · 16.9 KB
/
ChangeLog
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
2010-02-27 Simon Waters <[email protected]>
* Add cmd_memory and other commands from Michel Van den Bergh
* Add memory as command line argument
* Remove debug scaffolding
2010-02-27 Simon Waters <[email protected]>
* further Evaluation fixes suggested or insprired by Lars Mathiesen
* Start merging changes from Michel Van den Bergh
2010-01-24 Simon Waters <[email protected]>
* Remove side to move values from Evaluation function
2010-01-24 Simon Waters <[email protected]>
* Evaluation fixes suggested or insprired by Lars Mathiesen
2010-01-03 Simon Waters <[email protected]>
* Distributed under the GNU GPL v3
* Spelling correction in README - thanks Scott McDermott
* Renamed getline (Problem only reported on Ubuntu)
* Correct URL for FSF Debian #511760
2009-02-11 Simon Waters <[email protected]>
* Ensure check_board prevents invalid positions being analyzed.
2006-05-19 Simon Waters <[email protected]>
* Fix input_thread declaration to allow compilation
under GCC v4
* Change to generated file config.h.in due to
newer tools
* Various protocol corrections and corrections
to output when using Xboard protocol.
--- 5.07 Released
2003-08-07 Mike Curtis <[email protected]>
* Minor ScoreDev code tidy
2003-07-28 Simon Waters <[email protected]>
* ensure gnuchessx included in EXTRA_DIST
2003-06-30 Simon Waters <[email protected]>
* Fix to Posix thread for readline
* Fix to ensure "HARD" is default
2003-06-30 Mike Curtis <[email protected]>
* Improve Posix thread handling
2003-06-28 Mike Curtis <[email protected]>
* Portability fix IsTrustedPlayer
2003-06-28 Simon Waters <[email protected]>
* Portability fix to lexpgn.l
* Changes to lexpgn.l to handle some special
cases.
* Fix trailing "/" in FEN causes
buffer overflow issues. Trailing "/" is
kept for compatibility reasons with 5.04
2003-06-19 Mike Curtis <[email protected]>
* Portability fix to lexpgn.l
2003-06-19 Simon Waters <[email protected]>
* Add "--easy" flag to command line.
* Add "--manual" flah to command line.
* Fix to new PGN parser to handle odd
character in tag data.
2003-06-15 Simon Waters <[email protected]>
* const declaration for progname removed to
resolve problems with other compilers.
* Reapply earlier fix to ensure the players
names for white and black are fixed which got
overwritten with pgn parser merge.
* Remove GNU tool derived files from CVS to save
space and avoid problems with timestamps.
* Tell xboard sigint=0 to avoid workaround on Solaris.
* Various code clean-ups.
* Redefine DRAWSCORE to 0, faster, and avoids excessive
draw penalties.
2003-06-13 Simon Waters <[email protected]>
* Use CalcHashSize in main.c
* Check HashSize return code in cmd.c
* Put maximum check in CalcHashSize
2003-06-12 Simon Waters <[email protected]>
* Convert autoconf to AX_CREATE_STDINT_H from AC_CREATE_STDINT_H
* Changes suggested by latest "autoscan" including tests
for functions we can't do without.
* Changes required to merge DAW contribution below.
2003-06-12 David A. Wheeler <[email protected]>
(Originally 2002-10-03 merged SRW)
* Rewrote PGN reader so that it fully handles the PGN standard
and common nonstandard variants of PGN, including PGN {} comments,
; comments, varying newline conventions (Unix, Windows, MacOS),
FEN starting positions, multiple tags, and so on.
If a game is being read in with pgnload,
data is kept so it can be written back out later by pgnsave
(so that later on, annotations won't lose existing data).
The new reader is implemented using flex/lex, which eliminates
* Added support for not-quite-valid SAN moves, so that games
with such entries are still read correctly. This includes
"capture-only" notation like "KxN" (King takes Knight),
the use of "P" for pawns, and
lower-case versions of many pieces (e.g., "k" for King) - note
that Bishops MUST be upper case (since "b" is a column identifier).
* Added a script named "gnuchessx", which simply invokes gnuchess
with the "xboard" option. This means that GNU Chess 5 now
automatically supports Xboard, just like GNU Chess 4 did.
2003-06-09 Anil Mungal <[email protected]>
* Tidy up hashsize calculation, fix segfault
2003-06-09 Simon Waters <[email protected]>
* Ensure comments all use tradition /* */ syntax
2003-04-06 Simon Waters <[email protected]>
* Correct GenCheckEscapes to return no moves
when not in check. For "show escape" command.
* Disambiguate hints
2003-03-16 Simon Waters <[email protected]>
* Remove stale Threat Extension code
2003-03-12 Simon Waters <[email protected]>
* Fix En Passant handling in white/black commands
* Fix to HashSize handling
--- 5.06 Released
2003-03-10 Simon Waters <[email protected]>
* Remove obselete M4 include file.
2003-03-09 Simon Waters <[email protected]>
* Fix preprocessor directives for Macro names.
2003-03-07 Simon Waters <[email protected]>
* Always used bundled geopt's to simply build
2003-03-06 Simon Waters <[email protected]>
* Correct pthread handling in configure.ac
* Correct LIBOBJS handling on platforms without getopt_long
* Avoid deprecated multiline string literals in cmd.c
* Avoid redefining MAX and MIN macros on HPUX
* Make pawncover constant to avoid difference between
first and subsequent games. Affects many King safety
calculations.
2003-02-16 Simon Waters <[email protected]>
* Add getopt files to distribution for platforms without
GNU C library
* Replace ac_need_stdint_h with ac_create_stdint_h
* Add acx_pthread, config.sub, config.guess
2003-02-11 Simon Waters <[email protected]>
* Drop enpassant knowledge on "switch" command.
* Add in 2 move exception to EvaluateDraw to
avoid drawing won games.
2003-02-05 Simon Waters <[email protected]>
* Various string length issues tidied up.
2003-01-31 Simon Waters <[email protected]>
* Implement "white" and "black" commands.
2003-01-29 Anil Mungal <[email protected]>
* Two minor optimisations to eval.c (1% speed-up test evalspeed)
2003-01-29 Simon Waters <[email protected]>
* Use getopt_long for option handling
* Add standard options --help --version
* Add command line command "usage"
* Add option --hashsize
* Rework hint to use first move in Tree
* GetElapse time even when not against the clock
* Modify aclocal.m4 to stop spurious 32's in configure
which break build AIX 4.2, and Solaris 2.5.1
2003-01-27 Simon Waters <[email protected]>
* Stop output of result in iterate if game has ended already.
* Ensure PGNSaveGame output computer as correct colour player.
2003-01-13 Simon Waters <[email protected]>
* Add time.h to common.h to define timeval on Cygwin
* Add test for absence of nanosleep, may make
waiting inefficient on platforms without nanosleep
or usleep
* Remain in analysis mode on "new".
2003-01-09 Simon Waters <[email protected]>
* Implement analysis mode
* Change time in ShowLine to seconds from centiseconds
(see engine-intf.html at www.tim-mann.org)
2003-01-09 Lukas Geyer <[email protected]>
* rename et ElapsedTime
* Clean up timer code
* Further changes on pondering and input handling
2003-01-09 Simon Waters <[email protected]>
* Change version ID to 5.06
2002-12-30 Lukas Geyer <[email protected]>
* Corrected threading code to consume input correctly
* Corrections to comments
* debug.c added
2002-12-22 Stuart Cracraft <[email protected]>
* Reinstate penalty for having no queens on in
eval.c (spotted by Tim Bedding)
2002-12-22 Lukas Geyer <[email protected]>
* Extra location for book checked
/usr/share/games/gnuchess/book.dat
* Correct handling of name
* Fix problem with slow exit if pondering
* Fix memset error
* Misc tidying of 'const' usage
2002-12-19 Simon Waters <[email protected]>
* 1/20th second sleep in input loop, to avoid
CPU hogging in easy mode.
2002-12-16 Simon Waters <[email protected]>
* The main development version reverts to Lukas's
version as of 2002-10-05
* epd.c merged from 5.05
* book random in help change merged from 5.05
* Fix to not store score in hashtable when time
expired, as score has special value.
2002-10-05 Lukas Geyer <[email protected]>
* Added copyright and license notices to ponder.c, input.c,
updated copyright years to 1999-2002 in all source files.
* Updated NEWS file to really list user-visible changes
between releases, still not complete.
* Updated my email address.
* version.c: Removed as obsolete.
* pgn.c: Fixed potential buffer overflow. (Thanks to David
Wheeler for this one.)
* common.h: Added comments by David A. Wheeler.
* cmd.c: Added support for "easy" and "hard" (disable/enable
pondering)
* main.c: Default to "nopost".
* common.h: Added #include <sys/types.h>, needed for some
pthread implementations, it seems.
2002-08-25 Lukas Geyer <[email protected]>
* Merged Simon's and my version, reverted some stuff like changing
all the types to int before I know better justification.
2002-08-25 Lukas Geyer <[email protected]>
* Various cleanups, some documentation and comment updates,
nothing really changed
2002-08-25 Lukas Geyer <[email protected]>
* configure.ac: Added support for --without-readline, cleaned
up by removing even more unneeded tests.
* INSTALL: Updated (was not quite accurate anymore)
* TODO: Updated (some things have been done now...)
* cmd.c: Changed input parser to use method table, changed token
separation algorithm, the tokens are now only pointers to the
beginning of tokens in inputstr. Changed move.c accordingly that
it does not get confused by whitespace.
* Moved input code to src/input.c (new file), in a separate thread.
Changed other files accordingly (common.h, main.c, cmd.c,
Makefile.am, configure.ac).
* Removed all code related to the Novag Universal Board. (The
code was mostly in cmd.c.)
* common.h, ttable.c: Changed the HashSlot structure to make
persistent transposition tables possible.
* ponder.c (new file): Added prototype of pondering.
2002-08-17 Simon Waters <[email protected]>
* Bug code bug introduced in development version
that breaks if no book is present in XBOARD
version.
2002-08-02 Simon Waters <[email protected]>
* Switch from short to int for all short
variable types.
(Note some aspects of change require futher work)
* Correct SortRoot test for passed pawn moves.
2002-08-02 Simon Waters <[email protected]>
* Clean up of SortRoot (also MC suggested optimisation)
* Tidy code to remove 99 lclint errors (274 to go)
2002-08-02 Based on patch from Lukas Geyer
* Add list of possible book locations, to allow
central location for book on multiuser servers.
"book.dat"
"/usr/lib/games/gnuchess/book.dat"
* Limit book to BOOKDEPTH ply not BOOKDEPTH moves.
* Improve handling of excessive hashsize requests.
2002-08-01 Simon Waters <[email protected]>
* Correct additional input file name limits
and related field sizes throughout code.
(NB UNIVERSIAL code changes untested)
* Changes proposed by MC for compiling with MSVC
Note: ULL() macro should be used for 64 bit integer constants
* Change help text for "universal" if it wasn't compiled in.
* Minor optimisation in the misnamed MateScan routine.
* Shorten declaration of rings, this doesn't need to be in init.c
* Clean up case statement for X-ray attacks.
* Correct array bound error in cmd.c hint code.
* Correct memset in book code.
* Reorder test on trimming trailing spaces.
2002-05-19 Simon Waters <[email protected]>
* Corrected command line size to 128 through out cmd.c to
fix segmentation fault errors on complex fen positions.
2002-05-02 Simon Waters <[email protected]>
* Reorder move generation of promotions
* Improve sorting of captures in SortMove
* Insert pinned and hanging piece checks
* Remove unreachable code in cmd.c
* Update some eval weightings
2002-03-14 Simon Waters <[email protected]>
* Fix memory leak HashTab
2002-03-06 Simon Waters <[email protected]>
* Make "book on" use BOOKPREFER not BOOKBEST
* Fix implementation of BOOKBEST
* Implement "book {worst|best|prefer}"
* Correct README as it said not Official distro
2002-03-05 Simon Waters <[email protected]>
* Remove redundant tests from configure.ac
* Update version to 5.04 in configure.ac
* Move local m4 macros to acinclude.m4
2002-03-03 Lukas Geyer <[email protected]>
* common.h: Refine check for buggy gcc 2.95 on PPC.
* common.h: Changed lzArray and BitCount from short to unsigned
char, corresponding prototypes for leadz() and nbits(), too.
* inlines.h and util.c: Changed leadz() and nbits() to not use
union, rather do explicit bit arithmetic which does not assume
anything on endianness.
* test.c: Changed all timings to floating point and higher
precision.
2002-03-03 Simon Waters <[email protected]>
* Added unknown protocol commands to
avoid "Illegal move: <unknown command>"
* sd synonym for depth
* Added approximate st and additional errors for xboard
suggested by Tim Mann
* Added basic "hint" feature, by extracting next
move from PV in hash. Doesn't work in book.
2002-03-02 Simon Waters <[email protected]>
* Modified code to print "Illegal move: cmd" when
an illegal move or unknown command is entered.
2002-02-26 Simon Waters <[email protected]>
* Hacked version of ac_need_stdint_h AC macro to fix Win32 build
GNU Chess 5.03 Released
2002-02-12 Simon Waters <[email protected]>
* Fix bug with saving move after mate in PGN files
2002-02-09 Lukas Geyer <[email protected]>
* book.c: Checked for calloc() failure to return BOOK_ENOMEM
in BookBuilderOpen().
* iterate.c: Changed search time calculation to a very
non-aggressive strategy (keep always 2 seconds for possible
delays). Added SearchRoot() if we fail low. This should fix
the illegal move problem, which occurred exactly when we
failed low for all depths.
2002-02-08 Lukas Geyer <[email protected]>
* Changes mainly to book.c in order to have
dynamically allocated book hashes. Changed the
binary book format once more.
2002-02-07 Simon Waters <[email protected]>
* Moved Lukas's version into CVS
* Adjusted version string to 5.03
* Reimplemented bk in better fashion
* Added self to authors file
2002-02-06 Lukas Geyer <[email protected]>
* Clean-ups to make it build with the Sun cc compiler.
* moved leadz() and nbits() to inlines.h, so that they will
really be inlined. Left the original versions in util.c,
so that one can define NO_INLINE to get the functions
exported. Speed gain is quite significant on Linux/PPC.
2002-02-05 Lukas Geyer <[email protected]>
* Fixed a nasty bug in buf_to_book() which would add position
evaluations to all the hash-collision positions while traversing
the list. As collisions are not very frequent, this would
generate slightly wrong books which could lead to infrequent
strange opening blunders.
* Abstracted hash handling functions in book.c into macros,
implemented secondary hash traversal.
2002-02-04 Lukas Geyer <[email protected]>
* Removed index from binary book file, continued fixing book
building. (It used to take only the white moves if two players
from the list were playing each other.)
* Added return codes to function in book.c.
2002-02-03 Lukas Geyer <[email protected]>
* Killed some bugs related to endianness and padding in
book.c. Rewrote README to reflect reality more closely. Split
BookBuilderOpen() from BookBuilder().
2002-02-02 Lukas Geyer <[email protected]>
* Cleaned up some types, converted them to explicit ones uint32_t,
uint16_t and uint64_t. Should fix the bug that hashes generated on
64 bit machines were different. Thanks to Goswin Brederlow
<[email protected]> for this one.
* Fixed a documentation bug (replaced "book compile" by "book
add")
* Added readline support
* Added TODO
2002-01-30 Lukas Geyer <[email protected]>
* Redesigned the build system to use automake. Cleaned up code,
fixed SETBIT /CLEANBIT for gcc 2.95 on Linux/PPC. (Actually,
gnuchess hits a gcc optimization bug here, congratulations...)
* Added help functionality. Still ugly, but informative. (And the
plain gnuchess interface _is_ the definition of ugliness anyway.)
------------------------------------------------------------------------
This ChangeLog file only documents recent changes, for older ones please
look in doc/ChangeLog.