File: ChangeLog

package info (click to toggle)
gnuchess 4.0.pl79-1
  • links: PTS
  • area: main
  • in suites: slink
  • size: 2,976 kB
  • ctags: 1,335
  • sloc: ansic: 14,583; sh: 453; makefile: 379; csh: 29
file content (626 lines) | stat: -rw-r--r-- 28,269 bytes parent folder | download
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
613
614
615
616
617
618
619
620
621
622
623
624
625
626
Sep 27 98 PatchLevel 79 Stuart Cracraft (cracraft@ai.mit.edu) & Tim Mann <mann@src.dec.com>
	* new FAQ.
Sep 27 98 PatchLevel 78 Stuart Cracraft (cracraft@ai.mit.edu) & Chris Torek <torek@bsdi.com>
	* fix various calls to time() which were data-typed with parameters
	  of long instead of time_t.
May 15 96 PatchLevel 77 Chua Kong Sian (kongsian@nsrc.nus.sg) & Tim Mann
	* fix bug in search.c which was causing gnuchess to crash.
        * updated djgpp makefile, Makefile.ddj
	* updated Visual C++ makefile, Makefile.nt
	* updated .txt versions of man pages to match .6 files
	* fixed some bugs in auto-configuration and installation
	* fixed timing bug on systems without gettimeofday (like Win32)
	* disabled BACKGROUND_ANALYSIS in gnuan, to match man page
	* "make clean" and ncurses fixes from Nikhil Nair
PatchLevel 75 Chua Kong Sian (kongsian@nsrc.nus.sg)	
	* fixed bugs in gnuan.c.
	* terminate search when insufficient mating material is found.
	* continue playing if opponent rejects 3 repetitions draw option.
	* clean up genmoves.c; should compile faster now.
	* bug fixes from Tony Acero for book.c & gnuan.c
	* bug fixes from Tim Mann for hash table code.
	* fix illegal moves in gnuchess.bk3.
	* remove Swag3/killr3 for better pruning (Johanes Suhardjo).
	* thinking on opponent time is now working again.
	* installation is through ./configure now.
	* makefile for Windows NT from Tim Mann.
Fri Feb 3 Patchlevel 74 Chua Kong Sian (kongsian@nsrc.nus.sg)
	* add forward pruning (-DPRUNE to activate)
	* unlimited captures in quiescence (-DUNLIMITEDCAPS to activate)
	* fine tune and clean up eval routines (double bishop bonuses,
	  higher bonuses for pawn advances, better endgame eval).
	* update null move logic for better pruning
	* modified time control logic.  
	* new repetition() code from Dan Oetting.
Thr Sep 18 Patchlevel 73 Mike McGann (mwm@ascom.ch)
	* search updates and bugfixes from Tim Mann, Kong Sian, and Mike Mcgann
	  fixes search bugs for Linux, endgame play and speeds up search
	* new interface to gnuan to provide interactive capability
	  for analysis
	* add bk and eco commands.
	* ability to read xboard fen positions (xget command)
	* gnuan now accepts PGN games as input.
	* Makefile updates from rocky@panix.com (R. Bernstein)
Thr Jun 29 Patchlevel 71 Mike McGann (mwm@ascom.ch)
	* Terminate search when mate found in transposition table (Chua Kong Sian)
	* patches for xboard compatibility from Timm Mann(mann@src.dec.com)
	* Fixes for search problems from Chua Kong Sian and Mike McGann
        * Add book lookup command bk
        * Change CaptureList to not do RQ non-capture moves
	* Update man page
Sat May 10 Patchlevel 70 Mike McGann (mwm@ascom.ch)
	* Fixes for search problems from Chua Kong Sian
	 and Dr Michael J. White and Dmitry Dakhnovsky.
	* fixes for HP compile from Richard Lloyd.
Sat Mar 19 Patchlevel 69 Mike McGann (mwm@ascom.ch)
	* New transition table code from Dan Oetting (oetting@gldfs.cr.usgs.gov)
	 separating the tt code into a separate module
	* Fixes for the draw problems from Chua Kong Sian and Mike McGann
	* better use of the transition table + size reduction
	* lots of small bug fixes
	* post command split to post/unpost for easier use in scripts
 	* fix for DEEPNULL bug from Chua Kong Sian (nsrccks@leonis.nus.sg)
Sat Feb 12 Patchlevel 68 Stuart Cracraft (cracraft@rice-chex.ai.mit.edu)
	* Patches by Chua Kong Sian and Mike McGann.
Fri Feb 4 Patchlevel 67 Stuart Cracraft (cracraft@rice-chex.ai.mit.edu)
	* New version by Mike McGann.
Sun Jan 23 Patchlevel 66 Stuart Cracraft (cracraft@rice-chex.ai.mit.edu)
	* ensure computer thinking on opponent's time when easy mode
	* loading game not searching book bug fixed.
	* both by Chua Kong Sian (nsrccks@leonis.nus.sg)
Wed Jan 19 Patchlevel 65 Stuart Cracraft (cracraft@rice-chex.ai.mit.edu)
	* chesstool compatibility (asun@mmvideo.mt.att.com)
	* speed/time bugfixes in search.c+eval.c (nsrccks@leonis.nus.sg)
Mon Jan 10 Patchlevel 64 Stuart Cracraft (cracraft@rice-chex.ai.mit.edu)
	* makefile ("make realclean")
	* basic data type-checking updates in util.c/eval.c
	* announced patch in gnuchess.h
Fri Jul 25 Patchlevel 63 Mike McGann (mwm@hssler.ascom.ch)
	* Change all char to signed char for SGI
	* Change trans logic to not store if quiescent search has been used
	* Update Book
Fri Jun 25 Patchlevel 62 Mike McGann (mwm@hssler.ascom.ch)
	* German language support from Richard Mathar <mathar@fz-rossendorf.de>
	* better research logic from  kongsian@nsrc.nus.sg (Kong Sian)
	* Redo NULLMOVE logic to eliminate hung pieces
	* Redo search/eval/hashtable logic for speed and to optimize gnutest 
	  results.
	* Redo and simplify book install stuff
	* Use more estimates down to leafs to speed up search.
	* fix illegal castle move bug and ^C breakout of search slowness
Fri Jan 8 Patchlevel 61 Mike McGann (mwm@hasler.ascom.ch)
	* fix bug in en-passant restoring on unmake of move
	* fix to search timing function bug that  caused it to increase time on takebacks
	  or occasionally take a long time for a move
	* new next ply estimate function
	* allow increased time to complete a partial ply MAXTCCOUNTX
	* allow more time per move in necessary MAXTCCOUNT
	* gnuan now skips processing process book moves from Chua Kong Sian (ccecks@nuscc.nus.sg)
	* new KP1K endgame routine from R. Stephan (ralf@ark.abg.sub.org)
	* fix to ElapsedTime nchar declared wrong from T. Mann(mann@src.dec.com)
	* updates for Dec Alpha from T. Mann (mann@src.dec.com)
Fri Oct 30 Patchlevel 60 Mike McGann (mwm@hasler.ascom.ch)
	* null move heuristic from Benno Tietz (tietz@eos.informatik.uni-bonn.de) intalled
	* fixes for ProbeTTTable from Benno Tietz
 	* fixes for xget from Tim Mann(mann@src.dec.com)
	* change hash table collision avoidance algorithms
	* two new book formats GDBM (Gnu dbm based) and
	  GDX (hash file based).
	* add MSDOS fixes from ccecks@nuscc.nus.sg (Chua Kong Sian (Mr))
	  and msdso makefile
Tue Oct 20 Patchlevel 59 Mike McGann (mwm@hasler.ascom.ch)
	* binbookfile is now the main form of book.
	* add rudimentary fischer clock
	* add caching for static evaluations
	* add aging for in core transposition table
	* changes to history killer from tietz@eos.informatik.uni-bonn.de (Benno Tietz)
	* bugfix from ccecks@nuscc.nus.sg (Chua Kong Sian (Mr))
	  for history declaration error.
	* Allow full notation for book moves
	* prevent caching of partially evalusted positions.
	* add game time control
	* add capability to feed back the clock for ICS  play
	* gnuan fix en-passant problem
	* gnuchess make book nameable in command line
	* change move output to generate o-o form of castling moves
	  to satisfy ICS
	* Speedup evaluation functions
	* fixes to killt from tietz@eos.informatik.uni-bonn.de (Benno Tietz)
	* add moves generated to post output
        * fixes to genmoves from Dan Oetting <oetting@gldfs.cr.usgs.gov>
	* change over to gettimeofday for more accuracy
	* clean up search logic and time control
	* fix transposition search bug
Mon Aug 24 Patchlevel 58 Mike McGann (mwm@hasler.ascom.ch)
	* add Mwpawn, Mbpawn, Mw..., Mb... , p and debug commands to
	gnuchessr. 
	* Fix bug in evaluation logic for hung pieces.
	* Fix time control calculation to add time at time control
Fri Aug 14 Patchlevel 57 Ben Hurwitz (bug fixes) Thierry Leconte (book)
	* Both/force interaction improved.
	* Bug fix to possibles declaration and OR of move with BADMOVE
	* Work better with GM John Nunn book (take care of order of
	  lines, don't null the book for at least 3 moves after taken out
	  of book, no random opening)
	* Removed exit of program when drawn game detected.
	* Fixed bug that caused program to make 1-move blunders.
	  (transposition table caused return 0 when position seen before
	   to detect draw which then gets a depth bonus since search
	   is inexact so it ends up looking better to make a repetition
	   than making a winning 1-mover!)
Sun Jul 2 Patchlevel 56 Henrik Schmiediche
	* Fix test command (patch to dspcom.c). The results
	  were off by a factor of 100.
	* Delete lint from Makefile.
	* Better CFLAGS for HP machine.
Mon Jun 29 Patchlevel 55 Stuart Cracraft
	* Apply Mann's FIONREAD-clarification patches
	* Change BOOKFAIL in gnuchess.h so that the program
	  always consults the opening book first.
	* Up BOOKBITS to 10 to account for larger book:
  "As currently set up with BOOKBITS equal 8 there is a table of 256
  pointers into the BOOK hashtable. With 20,000 entries and 256 buckets
  it would do a linear search of approx 78 entries per lookup. Increasing
  BOOKBITS to 9 would mean a search of 34 entries etc. and would add 
  256 pointers to the data area. So we probably should make it 10 then."
						McGann
Fri Jun 26 Patchlevel 54 Mike McGann
	* This version compiles into a version identical with
	  3.1+ (and so is much stronger than the previous 4.0).
	  But, it has beaten 3.1+ in a short match. Also, it
	  has bug fixes, timing control improvements and other
	  fixes contained in this list.
Tue Jun 23 Patchlevel 53  Stuart Cracraft / Tim Mann
	* Use a[u]+1 in ataks.c instead of ++a[u].
	* Don't use space bonus tables.
Tue Jun 23 Patchlevel 52  Tom Truscott
	* GNUchess will now compile on the IBM RS/6000 (AIX).
	* Makefile changes needed for older AIX compilers lacking support
	  for "cc -c foo.c -o bar.o" (strange but true).
	* The other changes are to appease the picky type checking
	  that is enabled by some of the compiler options.
Sat Jun 21 Patchlevel 51  Tim Mann <mann@src.dec.com>
	* Fixed problem with "help" command by removing "fflush(stdin)".
	* "Undo" command now does not add moves to a 1-move time control.
	* Added back feature from 3.1 that lets the user set a maximum
	  search time per move instead of using time controls, and changed
	  the command line syntax for this feature to be compatible with 3.1,
	  removing the ability to set max search depth from the command line.
        * Fixed the "maximum minutes per move" feature in gnuan.
	* Updated and corrected the man page.
Thu Jun 18 Patchlevel 50 Tim Mann
	* Special #ifdefs to not do post for xboard are unnecessary
	  and were removed.
Wed Jun 17 Patchlevel 49 Mike McGann, Urban Koisten
	* Fix book code to calloc (Urban)
	* Fixed other code (Mike)
Sun Jun 7 Patchlevel 48 Stuart Cracraft (cracraft@rice-chex.ai.mit.edu)
	* Fix gnuan.c output to be more uniform. And tested that it
	  works.
Sat Jun 6 Patchlevel 47 Stuart Cracraft (cracraft@rice-chex.ai.mit.edu)
	* Fix Makefile to correctly define BINBOOK so that parsed
	  opening book gets used (if available.)
Sat Jun 6 Patchlevel 46 Stuart Cracraft (cracraft@rice-chex.ai.mit.edu)
	* Various patches from various people to mostly robustify the
	  code (exit values to exit, etc.)
	* New book.c handling code and gnuchess.h from Urban to handle
	  mega book now under discussion.
	* New Xboard.
Wed Jun  3 Patchlevel 45 Stuart Cracraft (cracraft@rice-chex.ai.mit.edu)
	* Encapsulate Xboard with GNU Chess distribution
Sun May 31 Patchlevel 44 Bart Massey (bart@cs.uoregon.edu)
	* Rename structure element move to bmove in book.c since
	  curses.h defines a move macro.
	* Get rid of superfluous returns in dspcom.c and checkbook.c
	* Be sure beep message has an arg in uxdsp.c
	* Add exit status to exit() call in checkbook.c
Sat May 30 Patchlevel 43 Stuart Cracraft (cracraft@rice-chex.ai.mit.edu)
	* Fix checkmate/draw handling.
	* Add current module copyrights and COPYING.
	* Ifdef forced-mate announcements as too buggy.
Fri May 29 Patchlevel 42 Stuart Cracraft (cracraft@rice-chex.ai.mit.edu)
	* HUNGP/HUNGX in eval.c updated to values used by Slate/Atkin
	  of Chess 4.x. This fixes a problem with Reinfeld's #281
	  and poor play in Alapin's opening. General play against
	  me has been much better.
Mon May 11 Patchlevel 41 Mike McGann (mwm@hslrswi.hasler.ascom.ch)
	* genmove update to look at less possible promotion moves
	* fix bugs in move ordering logic
      	* remove operator time as a default
Thur Apr 30 Patchlevel 40 Mike McGann (mwm@hslrswi.hasler.ascom.ch)
	* Book updates from Tim Mann (mann@src.dec.com)
	* Search updates to look more at possible promotion moves
	* Transposition table update from U. Koistinen (md85-epi@nada.kth.se)
          to allow for estimated scores.
Mon Apr 27  Patchlevel 38  Mike McGann (mwm@hslrswi.hasler.ascom.ch)
	* book updates for Cochrane from Tim Mann (mann@src.dec.com)
	* added limit for infinite checks in endgame to tree search
          to limit time spent in any branch
Wed Apr 25  Patchlevel 38  Mike McGann (mwm@hslrswi.hasler.ascom.ch)
	* fix slowdown caused by previous changes. 
Wed Apr 22  Patchlevel 37  Mike McGann (mwm@hslrswi.hasler.ascom.ch)
	* fix sizes of ttable (malloc) and hashfile (-c option)
	  to allow for rehashing
	* eliminate pick replace with qsort
	* adjust lookahead limits
Thur Apr 15  Patchlevel 35  Mike McGann (mwm@hslrswi.hasler.ascom.ch)
	* fix bugs in search logic
Mon Apr 13  Patchlevel 34  Mike McGann (mwm@hslrswi.hasler.ascom.ch)
	* Fix bugs in game win/draw logic.
Fri Apr 8  Patchlevel 34  Mike McGann (mwm@hslrswi.hasler.ascom.ch)
	* rewrite time control moving it up a level
	* replace sorts with qsort
	* fix material command to all multiple N's and B's
	* and make it an ifdef on NOMATERIAL
Fri Mar 30  Patchlevel 32  Mike McGann (mwm@hslrswi.hasler.ascom.ch)
	* make MINDEPTH a define
	* eliminate #ifdef's for hashbd/hashkey it is always required
	* up MINDEPTH to 2 to always get a hint
	* add some dynamics to eval/estimate decision
	* more dynamic time allocation
Fri Mar 27  Patchlevel 30  Mike McGann (mwm@hslrswi.hasler.ascom.ch)
	* fix hashfile code again
	* fix startup for no book present
	* fix race condition in search
	* allow parameters on commands
Wed Mar 25  Patchlevel 28  Mike McGann (mwm@hslrswi.hasler.ascom.ch)
	* fix bug in hashfile debug code
	* add material check for draw and material command
	* fix QUIETBACKGROUND code
Tue Mar 24  Patchlevel 27  Mike McGann (mwm@hslrswi.hasler.ascom.ch)
	* fix book move reject to not select a ? move
	* add check to HASHFILE option to check for ilegal move
	* document debug options
Mon Mar 23  Patchlevel 26  Mike McGann (mwm@hslrswi.hasler.ascom.ch)
	* Add multiple time controls
	* apply fixes from  R.K.Lloyd@compsci.liverpool.ac.uk
 	 for screen update problems in visual mode
Sun Mar 22  Patchlevel 25  Mike McGann (mwm@hslrswi.hasler.ascom.ch)
	* Update man pages
	* fix false mate problem with transposition table
	* add history killers option but don't use it.
	* fix handling of input parameters so the doc and the
	program agree
	* allow time to be specified in seconds (machines are faster now)
	* add QUIETBACKGROUND option from md85-epi@nada.kth.se.
	* put in book patch from md85-epi@nada.kth.se.

Sun Mar 15  Patchlevel 22  Mike McGann (mwm@hslrswi.hasler.ascom.ch)
	* Add options for SpaceBonus table levels
	* Switch to new book
	* Add polling code for keyboard

Tue Mar 10  Patchlevel 21  Mike McGann (mwm@hslrswi.hasler.ascom.ch)
	* correct depth test in PutInTTtable
	* patch from Urban Koistinen (md85-epi@nada.kth.se)
	  correcting bug in repetition

Mon Mar 9  Patchlevel 20
	* correct defaults for MEMSET

Sat Mar 7  Patchlevel 19  Mike McGann (mwm@hslrswi.hasler.ascom.ch)
	* add speedups by using memset for ZeroRPT
	* rewrite ScoreSpace
	* rewrite pick

Thur Mar 5  Patchlevel 18  Mike McGann (mwm@hslrswi.hasler.ascom.ch)
	* fix bug in timing that led to negative times
	* change time allocation to be more flexible
	*  based on score and depth
    	* eliminate a bad opening from the book

Sat Feb 15  Patchlevel 17  Urban Koistinen (md85-epi@nada.kth.se)
        * Added option -T n to set transposition table size 2^n.
        * -r n set rehash to n.
        * Changed repetition to make it work harder.
        * ScoreSpace changed to value central squares higher.
        * Made go change colors so white&black work as they should.

Fri Dec 30 08:34:00 1991  Patchlevel 16
	* Fix to eval.c for mis-transcribed sign in ScoreKBNK.
	* Fix to malloc call in init.c.
	* ScorePosition updated with addition of ScoreSpace
          to add in points for threats in a position.
	  from  Urban Koistinen (md85-epi@nada.kth.se)
        * Various tuning of parameters

Fri Nov 30 08:34:00 1991  Patchlevel 15
	* from nv-90-mho@nada.kth.se
	 patch to make listfile name meaningful instead of a random number
	* from  Urban Koistinen (md85-epi@nada.kth.se) move generation
	 speedup for non-pawn moves and move selection improvements.
	* from  Mike McGann (mwm@hslrswi.hasler.ascom.ch) added language
	 file to allow multiple languages to be supported. Fix broken 
         search on opponents time, fix bad moves in book.

Mon Oct 19 08:34:00 1991  Urban Koistinen (md85-epi@nada.kth.se)
        * patchlevel 14

	* fix checks in castling logic to only allow kings to do it.

	* fix repetition logic  "all pieces are the same" bug.

Thur Oct 10 13:34:00 1991  Mike McGann (mwm@hslrswi.hasler.ascom.ch)
	* patchlevel 14

	* expand the timing logic to allow more time in unstable
	 positions

	* Update man pages

	* Fix printout bug in Checkbook

Tue Oct 8 13:34:00 1991  Mike McGann (mwm@hslrswi.hasler.ascom.ch)
	* patchlevel 13

	* General cleanup, Fix screens, prompts, rate calculation
	
Sun Oct 5 13:34:00 1991  Mike McGann (mwm@hslrswi.hasler.ascom.ch)
	* patchlevel 12
	* Change eval.c/KingValue to ignore Mking if the otherside
	has only pawns on the board. Tuning parameter is
	KINGPOSLIMIT.
	
	* Fix time print in gnuchess and gnuchessx. 

	* Use ShowMessage for all error messages.

	* Fix post option to print time in seconds.

Sun Oct 5 08:34:00 1991  Mike McGann (mwm@hslrswi.hasler.ascom.ch)
	* patchlevel 11
	* speedups in search. Eliminate unused computation.

	* change eval.c/KingValue to ignore Mking if there are
	only pawns on the board. Tuning Parameter is KINGPOSLIMIT.

	* make DITHER a tuning parameter.

Tue Oct 1 08:34:00 1991  Mike McGann (mwm@hslrswi.hasler.ascom.ch)
	* patchlevel 10
	* fix eval bug in ScorePosition. Evaluated pawn structute
	incorrectly. Introduced when gnuchess was split up.

	* Change default for SCORETIME to -9000 it plays better

	* correct promotion logic for CHESSTOOL and XBOARD only queens
	are generated now.

	* correct handling of TOflag for bothsides mode.

Mon Sept 27 08:34:00 1991  Mike McGann (mwm@hslrswi.hasler.ascom.ch)
	* fix more enpassant bugs in checkgame/checkbook

	* misc speedups by inlining code.
	move SqAtakd to ataks.h and inline it.
	
	* Modify checkbook to also read xboard game files and
	check them for illegal moves. 
	
	* fix bug in game.c introduced by patch 8

Mon Sept 26 08:34:00 1991  Urban Koistinen (md85-epi@nada.kth.se) 

	* Correct the making and unmaking of enpassant moves and
	numerous incorrect usages of ? throughout the program.

Mon Sept 24 08:34:00 1991  Mike McGann (mwm@hslrswi.hasler.ascom.ch)

	* force search re-init if PV chavges due to a timeout

	* add patchlevel to the -v option to keep version straight.
	
	* Change search and timing logic. Search now backs up to
	previous level on a timeout. Search adds time to the search
	if the last top level PV is different from the current and
	this level is not finished. Seems to play much stronger.

Mon Sept 16 08:34:00 1991  Mike McGann (mwm@hslrswi.hasler.ascom.ch)
	
	* Opening book now handles transitions. It continues looking
	at the book until 2 (tunable) successive turns fail to find a move
	there.

	* GetOpenings now checks for errors on input. The current book was full 
	of illegal moves. They were filtered out since at game time the book
	move is matched against the legal move list. But it makes for bad
	opening play. EnPassant moves are not allowed in openings(a limitation?)
	Checks made are the there is a piece on the from square belonging
	to the right side and there is no piece or a piece belonging to the
	other side on the to square. There is no check that the piece is 
	moving legally.
	
	* ListGame now makes up the name chess.lst.random#. So if you are
	using xboard to play a match (two machine mode) they won't overwrite.
	
	* Added patch from Randy Ray (rray@SPECLAB.CR.USGS.GOV) to correctly
	format chess.lst

Wed Sept 4 08:34:00 1991  Mike McGann (mwm@hslrswi.hasler.ascom.ch)
	
	* Renamed gnuchess3.1+ to gnuchess to reflect the split in 
	gnuchess development. There now seems to be 3 threads.
	Gnuchess, gnuchess for windows (3.21), and the gnuchess4
	project if it still exists.
	* Fix chesstool version to handle white as well as black.
	* Split program into modules for easier maintinance and
	development.
	* Fixed Illegal move bug in VerifyMove for promotion moves.
	* Replaced ResponseTime calculations with simpler version that
	stays within the time limits and seems to do as well or better
	in play.
	* General cleanup of the search algorithm
	* Fixed gnuan input processing and termination code.
	* Fixes to work with xboard match mode
	* Added TEST directory with 16 problems from Levy's
	  Computer Chess book.

Tue Aug  6 18:10:47 1991  Philippe Schnoebelen  (phs@lifia.imag.fr)

	* Modify handling of Book in Undo (previously, when you
	backtracked after quitting the book, the program was not able to
	use it again)

	* Modify handling of Book in EditBoard and other routines so that
	the Book is not used if you don't start from the regular initial board.

Mon Aug  5 17:26:59 1991  Philippe Schnoebelen  (phs@lifia.imag.fr)

	* Modify parse in gnuchess.c so that a move can be followed by '?'
	indicating that the program should not play it itself. Such a move
	is stored with the highest bit raised.
          Modify OpeningBook in gnuchess.c so that moves with highest bit
	set are recognized but not played by the program.

	* Modify the declaration of array PieceList in gnuchess.[ch] to
	allow for up to 64 men of the same side. Such artificial
	situations can be built with edit and the program must be able to
	deal with them.

Mon Aug 1 10:20 1991 Mike McGann (mwm@hslrswi.hasler.ascom.ch)
	Split chesstool and xboard versions. Xboard is now
	gnuchessx and chesstool is gnuchessc.

Mon Apr 15 10:20 1991 Mike McGann {mwm@hslrswi.hasler.ascom.ch)
	Changed transposition table to cache positions found in transposition file
	Fix Undo's incorrect handling of promotions.
	Fix win and draw determination bugs.
 	Fix bug in algbr that prevented correct display of promotion moves.
	Fix Undo to correctly display side to move.
	Add path to command line for save file and load file.
	Make save file human readable
	
Thu May 24 13:42:24 1990  Hans Eric Sandstr|m  (hes at baloo)
	* Fixed a bug reported by Brian Wong (wong@cs.UAlberta.CA) in
	ScoreKPK

Sat May  5 15:58:31 1990  Hans Eric Sandstr|m  (hes at baloo)
	* extensive tests on MSDOS for 2 weeks and lots of changes:
	Moved all flags to a special flag structure.
	Added my own TODO file to the DOCUMENTATION.
	Moved GetOpenings and parse from the *dsp.c files.
	Made the transposition table enabled by default.
	Some cleanup in the *dsp.c code.
	Changed UpdateHashbd to a macro.

Wed Apr 18 16:38:30 1990  Hans-Erik Sandstr|m  (hes at tiamat)
	* Removed unnessesary global variables:
	(wking, bking, Enemyking, INCscore, slk, InChk, HasPawn,
	Zwmtl, Zbmtl, lpost, KBNKsq) this should make the program more
	readable.
	* Added a mini transposition table to detect repetitions, this
	means that repetition is called more seldom and should save some
	time. The idea for this came from Benno Tietz
	(tietz@eos.informatik.uni-bonn.de)

Thu Mar 29 02:49:00 1990  Thorsten Ohl at (td12@ddagsi3.bitnet)
     * nuxdsp.c has been given an ANSI interface (tailored
	after uxdsp.c as of Version 3.00 and a homegrown
	ANSI interface created in January for Version 1.55).
     *	uxdsp.c now understands ^C interrupts.
     *	both nuxdsp.c and uxdsp.c support the graphic characters
	of the IBM PC (can be disabled with -DSEVENBIT).
	It's of course a matter of taste, but I think it looks
	much better.
     * I have added prototypes and a makefile for a **IX compatible
	MS-DOS make (neither Turbo C or Microsoft C will understand
	this!).
     *	some formal parameters are not referenced. This is due to the
	different display interfaces and no problem at all. Just for
	aesthetic reasons I have shut up the compiler by incrementing
	the unreferenced variables.
     *	some longs are assigned to shorts and some shorts to unsigned chars.
	I have introduced a cast in each case, all are o.k. (as far
	as I can tell).

Thu Mar  8 09:11:28 1990  Hans-Erik Sandstr|m  (hes at orsa1)
	* The persistent hash table seems to work now. There are still some
	problems using it on a heterogenous network.

Sun Mar  4 14:44:44 1990  Hans Eric Sandstr|m  (hes at orsa)
	* I am working on a persistent hash table. Currenly a 10Mb file
	with 262144 entrys. Stuart just asked me to spilt the posdata
	array to make gnuchess work better on a PC, so I did that.
	I have also tried to properly fix the bug that caused gnuchess
	to report mate prematurely. This, I hope, will also improve the
	search.

Tue Feb 27 18:27:23 1990  Hans Eric Sandstr|m  (hes at davidson.log-sv.se)
	* used protoize to make a function prototyped version of gnuchess.
	this means that I have to use unprotoize before 'make distribution'
	to make a more portable K&R version.
	removed a ZeroTTable so now the hashtable is kept between moves.

Sat Feb 24 13:14:14 1990  Hans Eric Sandstr|m  (hes at orsa)
	* Added a test to detect hash table collisions, define HASHTEST.
	I also removed 	the times calls since there is no sense in
	measuring cpu time when	wallclock time is all that counts when
	playing chess.

Fri Feb 23 17:25:37 1990  Hans Eric Sandstr|m  (hes at orsa)
	* Compiled gnuchess with gcc1.37 -Wall and got lots of
	implicit decaration warnings. Solved most of these by adding
	external declarations in gnuchess.h.

Wed Feb 21 17:41:28 1990 Jouko Holopainen (jhol@tolsun.oulu.fi) 
	* Contributed his code for ECO move entry (again!)
	and a file ansidsp.c (A msdos port of uxdsp.c).
	I(hes) started a merge of ansidsp.c and uxdsp.c.

February 8, 1990 -- Hans Eric Sandstrom (hes@log-sv.se)
	Changed the transpositon table to allow 65536 positions per player.
	This means a 1.3 Mbyte hash table. Introduced simple rehashing. And
	also made setting ttable 0 exclude all transposition code from
	gnuchess (for machines with very little memory).


February 3, 1990 -- Tom Vijlbrief (tnosoes!tom@nluug.n)
	Contributed code to fix undo of promotions.
	And a bugfix RMBLTY was to small.


Januari 27, 1990 -- Hans Eric Sandstrom (hes@log-sv.se)
	Fixed nuxdsp.c to work with my changes (Saved games format)


Januari 26, 1990 -- Hans Eric Sandstrom (hes@log-sv.se)
	Verified that the underpromotion routines works.
	Found and fixed the bug that caused gnuchess to report mate
	and draw prematurely.


Januari 25, 1990 -- Hans Eric Sandstrom (hes@log-sv.se)
	Received the underpromotion additions from jhol@tolsun.oulu.fi
	Made some optimizations in trapped and KingScan.
	Added more comments on how to improve the search.
	Added info on usage of the array Tree in post mode.
	Changed the index in the transposition table to unsigned short to
	allow a hash table of size 65536.


Januari 11, 1990 -- Hans Eric Sandstrom (hes@log-sv.se)
	Formatted gnuchess according to GNU standards with indent.


Januari 9, 1990 -- Hans Eric Sandstrom (hes@log-sv.se)
	Inserted a missing comma in KTHRT.
	Removed mvstr1[5],mvstr2[5] from gnuchess.c, they are only used in the
	user-interface routines uxdsp.c nondsp.c anyway.
	Rewrote algbr to generate move strings for underpromotion.
	(ph8k or h7h8k)
	Some optimizations in CaptureList.
	Changed row, column and locn to macros.
	Made memset default and introduced a switch NOMEMSET for
	computers without memset or where memset is a speed penality.
	I tested this on:
		Sparc		- no change
		DECstation	- no change
		Sun3/60		- 4% speed improvment.
	Changed + to | in some bit-field manipulations.
	Fixed the castle-with-moved-rook-bug, removed kingmoved and introduced
	an array Mvboard to keep track on how many times we have moved from a
	particular square.
	Fixed the check for zero division in Time controls.
	Added BINDIR and LIBDIR in the Makefile to set where gnuchess and
	gnuchess.book gets installed.
	All I have to do now is to test if all this works (-: