forked from jwiegley/emacs-chess
-
Notifications
You must be signed in to change notification settings - Fork 0
/
ChangeLog
886 lines (602 loc) · 30.2 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
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
2005-06-27 John Wiegley <johnw@newartisans.com>
* chess-ics.el (chess-ics-sought-add): Added this routine to
factor out a lot of duplicated code.
* chess-plain.el (chess-plain-popup): Pass nil for the `font'
argument to `chess-display-popup-in-frame', since we don't care
what the size of the font is with textual chessboards.
* chess-input.el (chess-input-shortcut): If a character is typed
that is not a legal start of a move (which only happens if it's
not bound to anything else), just ignore it.
* chess-images.el (chess-images-determine-size): On Macs and
Windows, reduce the screen height by 80 instead of just 20, to
account for the Start/Status bar.
(chess-images-popup): Pass in a `font' to
`chess-display-popup-in-frame', so that the pixel height for each
graphical piece is computed correctly.
(chess-images-change-size): Foricbly popup the chess buffer when
changing the size of graphical pieces.
* chess-ics1.el (chess-ics1-popup): Added `font' argument in call
to `chess-display-popup-in-frame'.
* chess-display.el (chess-display-popup-in-frame): Added a `font'
parameter, so that the font can be set in new chessboard
frames (which is necessary to get the pixel height/width right).
2004-12-07 Mario Lang <mlang@delysid.org>
* chess-algebraic.el, chess-announce.el, chess-autosave.el,
chess-common.el, chess-display.el:
require chess-message whereever necessary (ks)
* chess-pgn.el 1.46:
Make comment-start and comment-end explicitly buffer-local (ks)
2004-12-06 Mario Lang <mlang@delysid.org>
* chess-pgn.el:
bug in pgn font-locking (Klaus Straubinger <KSNetz@Arcor.DE>)
2004-04-12 jwiegley <jwiegley@lexx>
* PLAN: chess-pos - typing a number in a chessboard display gets
an assertion
2004-03-08 Mario Lang <mlang@delysid.org>
* chess-pgn.el: bah, recursive loading...chess-pgn.el
2004-03-06 Mario Lang <mlang@delysid.org>
* README: Rephrase the intro, and add a HISTORY section
to document the maintainership change.
* PLAN: Remove chess-input entry, which was bogus.
* chess-pgn.el (chess-pgn-read-game): Fix database-index calculation.
Now `chess-pgn-show-position' should work as expected in multiple
game PGN files.
2004-03-01 Mario Lang <mlang@delysid.org>
* chess-ply.el 1.46
(chess-legal-plies): Add :candidates keyword to avoid calls to
chess-search-position if the caller already knows the piece indices
* chess-ai.el 1.8:
(chess-eval-static): Try to reward passed pawns and piece mobility
using the new :candidates keyword to chess-legal-plies.
* chess-maint.el 1.11: put byte-compiling-files-p back in for now.
* chess-ics.el 1.96: better icc datagram support
2004-02-29 Mario Lang <mlang@delysid.org>
* chess-ics.el 1.95: Fix kibitzes on icc.
* chess-ics.el 1.94: Enhance ICC support:
Make "backs up" message work.
Rudimentary level2 datagram support through
chess-ics-icc-preoutput-filter.
New variable chess-ics-icc-datagrams to define which datagrams should
be requested upon login.
New variable chess-ics-server-type which defaults to FICS, and gets set
to ICC when we encounter an ICC server.
Handle DG_KIBITZ by translating them to the FICS representation.
Handle movelist request through DG_POSITION_BEGIN2 and DG_PASTMOVE.
2004-02-25 Mario Lang <mlang@delysid.org>
* chess-phalanx.el 1.15: Add elisp header and homepage link.
* chess-phalanx.el 1.14:
Phalanx has no "resign" commands, so only set game-data active to nil
for now.
2004-02-24 Mario Lang <mlang@delysid.org>
* chess-ics.el 1.93: more stability improvements.
2004-02-22 Mario Lang <mlang@delysid.org>
* chess-ai.el 1.7
(chess-eval-static): Primitive mobility handling, makes play a lot
more aggressive :)
* chess-ai.el 1.6: reward passed pawns, and make the code a bit faster
* chess-ics.el 1.92 (chess-ics-ads-removed):
We need to be a lot more careful when deleteing stuff on a
preoutput-filter-function. Fixed this, which also
fixes all the remaining cases of missed boards. LectureBot
ran through three Lectures without any bug, which seems good!
* chess-ics.el: Require 'rx when compiling.
(chess-ics-style12-regexp): New constant regexp which matches
a style12 string (subgroup 1 to 32).
(chess-ics-matcher-alist): Use it.
(chess-ics-matcher-alist): Destroy game object if we see a
"no longer examining..." message.
(chess-ics-handle-style12): Rewrite using `match-string' instead of
`pop' based on the new regexp above.
(chess-ics-handle-style12): No longer `message' parse errors, rather
keep the failed board in the buffer, and add the failure info
to the front of the line. Makes finding remaining bugs a lot
easier since the buffer can be reviewed in chronological order.
(chess-ics-ads-removed): We need to be a lot more careful when
deleteing stuff on a preoutput-filter-function. Fixed this, which also
fixes all the remaining cases of missed boards. LectureBot
ran through three Lectures without any bug, which seems good!
2004-02-21 Mario Lang <mlang@delysid.org>
* chess-engine.el (chess-engine-filter): We were calling `forward-line'
unconditionally. However, there is a race condition, namely,
if the last line does not end with a newline, forward-line
will skip to eob, therefore, engine regexps will simply
be missed. Fixed.
(chess-engine-entire-lines): This was a fix for the wrong problem,
removed.
2004-02-18 Mario Lang <mlang@delysid.org>
* chess-display.el (chess-display-highlight-passed-pawns): New
interactive function.
* chess-pos.el (chess-pos-passed-pawns): New function.
2004-02-12 Mario Lang <mlang@delysid.org>
* chess-phalanx.el (chess-phalanx-handler): Set
chess-engine-entire-lines t.
* chess-engine.el (chess-engine-entire-lines): New variable.
(chess-engine-filter): handle it.
* chess-ics.el (chess-ics-sought-mode-map): New variable.
2004-02-08 Mario Lang <mlang@delysid.org>
* chess-crafty.el (chess-crafty-handler): Add search-depth and
search-time engine options.
2004-02-06 Mario Lang <mlang@delysid.org>
* chess-display.el (chess-display-paint-move): Handle :en-passant
captures (remove the captured pawn from the board).
* chess-puzzle.el (chess-puzzle): Disable autosave.
(chess-puzzle-show-solution): New function (bound to ? in puzzle
displays) for showing a solution (if one is known). This typically
only works for EPD databases with either bm or pv information.
Displaying of annotations is not yet done.
2004-02-05 Mario Lang <mlang@delysid.org>
* chess-file.el:
Handle .epd and .pgn files in the chess-file module. Achieved by
setting a buffer-local variable chess-file-type to either 'pgn or 'epd
on 'open, and use this info to dispatch correctly.
This change makes it possible to load .epd files with the
chess-puzzle function for instance.
* chess-fen.el (chess-fen-regexp): New constant.
* chess-epd.el (chess-game-to-epd): New defsubst to convert a game
object to an EPD string (or insert it).
(chess-epd-to-game): Analogous to the above.
(chess-epd-parse): Use `chess-fen-regexp'.
2004-02-03 Mario Lang <mlang@delysid.org>
* chess-tutorial.el (chess-tutorial): Simplify and add autoload.
* chess-announce.el (chess-announce-handler): On event 'kibitz, talk.
* chess-ics.el (chess-ics-initial-commands): New defcustom to make
the init-strings sent after login configurable.
(chess-ics-movelist-start-position): New buffer-local variable
which defaults to `chess-starting-position'. Its value (if non-nil)
is used to initialize the board when seeing a movelist header.
This is to allow for servers which have the equivalent of
"iset startpos 1" on FICS, which tells the server to automatically
send the initial position before sending a movelist. This is
to allow non-standard starting positions, and still maintain
complete game information in the game object locally.
(chess-ics-matcher-alist): If we see something like "startpos set",
we set chess-ics-movelist-start-position to nil.
(chess-ics-handle-style12): Renamed from chess-ics-handle-ics12.
Set game-data 'black-moved-first to t if we see a initial board
(move is "none"), and side-to-move is Black. Use this information
to calculate the correct game index from the supplied game sequence.
This fixes observing of arbitrary start position games where
Black moved first. (Most of LectureBot should work now).
(chess-ics-seeking): Handle "set ptime 1" prompts.
(chess-ics-ads-removed): Ditto.
2004-01-28 Mario Lang <mlang@delysid.org>
* chess-ply.el 1.45
(chess-ply-castling-changes): When doing a long castle, only check if
the king can move to the d or c file without being in check. According
to the crafty-list, it is legal to do a long castle if some opponent
piece is attacking the b file.
* chess-ics.el 1.82
(chess-ics-matcher-alist): Send "set interface emacs-chess VERSION"
on init.
* chess.el 1.67:
Temporarily disable the condition-case in the main startup function,
some strange engine errors are caught and hard to debug with this,
also add chess-opening and chess-ai to the default modules.
* chess-pos.el 1.46
(chess-search-position): Document arguments CHECK-ONLY and NO-CASTLING.
* chess-engine.el 1.99:
(chess-engine-create),
(chess-engine-command): Docstrings.
(chess-engine-filter): bind case-fold-search to nil.
* chess-display.el 1.119
(chess-display-create): More docs.
* chess-var.el 1.10: docfixes
* chess.texi 1.22: Proofread fixes.
2004-01-27 Mario Lang <mlang@delysid.org>
* chess-fen.el 1.13: Commentary synced with reality of FEN standard.
* README 1.4: chess-ai is a submodule of chess-common.
* chess-ply.el 1.44: docfix.
* chess-gnuchess.el 1.35
(chess-gnuchess-path): Add *, since this is a user-option.
* chess-opening.el 1.3: uncomment the remaining failure cases,
chess-algebraic handles those now.
* chess-opening.el 1.2: We now have the individual moves in the source
file, and get the final position at compile time.
* chess-tutorial.el 1.4: We can use `chess-display-set-from-fen' here.
* chess-maint.el 1.8, chess.texi 1.21: Add in minimal docs for FEN
notation, algebraic notation, and ICS.
2004-01-26 Mario Lang <mlang@delysid.org>
* chess-pos.el 1.45
(chess-pos-move): Fix a bug in castling removal when the Rook
is moved, now compare chess-pos-can-castle and the source square of
the moving piece to figure out if we need to remove castling
priviledges.
* chess-pos.el 1.44
(chess-pos-legal-candidates): remove the opponent pawn if we are
capturing en passant.
this fixes a bug where chess-legal-plies does not find an en passant
move if the pawn to be captured is giving check.
* chess-database.el 1.12, chess-file.el 1.7, chess-scid.el 1.7:
new function chess-database-filename, also support it in scid and
file DBs.
2004-01-25 John Wiegley <jwiegley@lexx>
* chess-algebraic.el 1.35, chess-pos.el 1.43
(chess-search-position): Added an argument so that if we are
searching for the source of an algebraic move, and it is not a castle,
then do not check castle moves.
2004-01-23 Mario Lang <mlang@delysid.org>
* chess-database.el 1.11
(chess-database-query): use `apply'.
* chess-scid.el 1.6
(chess-scid-handler): Support query tree-search.
* chess-engine.el 1.98: Don't barf on unbound
chess-module-regexp-alist, and add some docstrings.
* chess-game.el 1.59: Docstring fixes + a redo of chess-game-seq.
* chess-pgn.el 1.40: Fixes to make chess-scid read parsing work.
2004-01-21 Mario Lang <mlang@delysid.org>
* chess-opening.el 1.1: Opening classification module based on the
scid.eco file from scid 3.5.
2004-01-20 Mario Lang <mlang@delysid.org>
* chess-fen.el 1.12: FEN notation actually specifies that field
four (en passant) should denote the target square of the immenent
capture, not the square of the piece about to be taken.
* chess-ics.el 1.81: Catch manually typed "resign" and fix a bug
where only one game could be played for each session.
* chess-fen.el 1.11
(chess-pos-to-fen): Don't emit a trailing / on rank 8.
2004-01-19 Mario Lang <mlang@delysid.org>
* chess-ics.el 1.80: tidying
* chess-epd.el 1.6: minor change.
* chess-ics.el 1.79: Rewrite this module such that it does not act
as an engine, rather it invokes chess-sessions as needed. You need
to use M-x chess-ics RET instead of C-u M-x chess RET ics RET now.
(chess-ics-handle-ics12): Rewrite such that it can handle the "refresh"
command, and moves entered manually in the ICS buffer.
2004-01-16 Mario Lang <mlang@delysid.org>
* chess-ai.el 1.5:
We no longer need to dedvar chess-ai-regexp-alist with
a nil value.
* chess-engine.el 1.97 (chess-engine-create): Use `insern-soft'
instead of `intern' to copy the engine-regexp-alist.
2004-01-15 John Wiegley <jwiegley@lexx>
* chess.texi 1.20: Adding description of the module system.
2004-01-14 Mario Lang <mlang@delysid.org>
* chess-sjeng.el 1.2: Elisp header + homepage link.
* chess-sjeng.el 1.1: Module for the sjeng engine (promotion still
doesn't work.)
* chess-algebraic.el 1.34
(chess-algebraic-to-ply): `let'-bind case-fold-search nil. This fixes
a bug where b8c6 is parsed to c7-c6.
2004-01-13 Mario Lang <mlang@delysid.org>
* chess-ics.el 1.78: Initial skeleton for Game Creating messages.
Support relation-type -2 (Examining game).
Handle the 'forward event.
(Now you can use the "examine" command on FICS, and simply
type '.' in the ChessBoard display to forward through the game.)
* chess-display.el 1.118
(chess-display-set-index): If INDEX is greater than chess-game-index,
and the last ply is not final, we emit a 'forward chess-module-game
event to give ics a chance to issue "forward\n". This makes
'.' work as expected in examined games.
2004-01-12 Mario Lang <mlang@delysid.org>
* wac.epd 1.1:
Win At Chess, 300 positions with best move information.
pv (predicted variation) information computed using crafty 19.8 on
a dual xeon 2.6GHZ system using 40 minutes time for each position.
This can be used to stress test the core library.
* chess-ics.el 1.77
(chess-ics-server-list): Added some more servers.
(chess-ics-regexp-alist): Make guest login on chessclub.com work.
(chess-ics-handle-ics12): Retrieve TimeControl info from
the ics12 board and set TimeControl game tag when initial board is
seen.
* wcsac.epd 1.1:
Winning Chess Sacrifices And Cobinations
pv information calculated using crafty 19.8 with about 30 minutes
time per position.
2004-01-11 Mario Lang <mlang@delysid.org>
* chess-ics.el 1.76: Set EPD opcode ce from material-value and
checkmate info.
* chess-ics.el 1.75: Merge chess-ics-parse-ics12 and
chess-ics-handle-move into a new function chess-ics-handle-ics12,
which is a lot easier to read now.
Also make the <12> regexp a bit more strict to avoid false positives.
* chess-clock.el 1.10
(chess-clock-tick-tock): Do not decrease time if
(chess-game-status chess-module-game) is non-nil.
* chess-ics.el 1.74: Fixed messed up parens.
* chess-ics.el 1.73
(chess-ics-handler): Read the password before opening the connection.
This corrects a race where the password can be unknown when the
prompt appears because the user hasn't finished typing yet...
(chess-ics12-parse): Use `pop' to make stuff simpler and use `mapc'
to get castling info.
Indent chess-ics-regexp-alist differently.
* chess-engine.el 1.96
(chess-engine-default-handler): When 'match is accepted, we were
calling (chess-engine-command nil 'accept chess-full-name)
which doesn't make much sense, and breaks chess-ics game accepting.
Change it to `name', to pass the opponent name for whom we are
accepting a match request.
* chess-display.el 1.117: On GNU Emacs 21.3, :eval in mode-line-data
seems only to work if it directly appears in mode-line-format.
chess-display indirectly referenced chess-display-mode-line-format
by setting mode-line-format to that symbol. If we set
mode-line-format to the value of chess-display-mode-line-format,
the mode-line comes to life again!
2004-01-10 Mario Lang <mlang@delysid.org>
* chess-game.el 1.58: Fix a bug in `chess-game-seq' (at least I
think it is supposed to work like it does now).
* chess-crafty.el 1.31: Support for xboards analyze mode.
(chess-engine-command crafty 'analyze t) enables analyze mode and
eventually sets chess-crafty-analyzing-p to t.
When new predicted variations arrive, corresponding epd opcodes
are set for (chess-engine-position nil): acd, ce, pv (acn is not set because
it is likely that it overflows the emacs integer bounds, and I am not
yet sure what to do about this.)
(chess-engine-command crafty 'analyze nil) turns analyze mode off again.
* chess-plain.el 1.19: A change to the faces and a fix for
chess-plain-spacing > 0 and file naming, all from kanaldrache, thanks.
* chess-crafty.el 1.30: Use Crafty's xboard protocol layer for
communication: Since recent >19.x crafty, there is something strange
going on with display nogeneral. Another bug which appears sometimes
is that crafty (in its own mode of displaying stuff) echos the oponent
move (our move) which raises an error (obviously).
xboard mode is really a lot easier to parse, and I even managed
to keep the 'evaluate event without any problems.
2004-01-09 Mario Lang <mlang@delysid.org>
* chess-epd.el 1.5: speed up chess-epd-read-file by using `nconc'.
* chess-epd.el 1.4: Support (convert) opcodes sm and sv.
* chess-gnuchess.el 1.34: Use `zerop'.
* chess-epd.el 1.3: (require 'chess-var)
* chess-epd.el 1.2: Use `chess-var-to-algebraic'.
* chess-var.el 1.9, chess.texi 1.19: New function
`chess-var-to-algebraic'.
2004-01-07 Mario Lang <mlang@delysid.org>
* chess-epd.el 1.1: new file, implements opcodes am, bm, ce, pm and pv.
* chess-pos.el 1.42: Remove chess-pos-read-epd-file.
* chess-display.el 1.116: Make chess-display-create interactive, and
document chess-display-quit.
* chess-maint.el 1.7, chess-random.el 1.5, chess.texi 1.18: Add
`chess-fischer-random-position' into the Creating Positions Manual
Section.
2004-01-06 Mario Lang <mlang@delysid.org>
* chess.texi 1.17: skels for chess-database.
* chess-ai.el 1.4: Require cl and add `message' calls.
* chess-ply.el 1.43: Some docstrings.
* chess.texi 1.16: Add @c lispfun for chess-ply-source and
chess-ply-target.
* chess-var.el 1.8: Add &optional index to `chess-var-side-to-move'
(sync with chess-game-side-to-move) and document it, mirroring
chess-game-side-to-move docstring.
* chess-game.el 1.57: Document 'chess-game-side-to-move'.
* chess-ai.el 1.3: It mostly works now, only remaining problem is
that the players move is only displayed after the engine found a reply.
2004-01-05 Mario Lang <mlang@delysid.org>
* chess-display.el 1.115: Checkdoc attempt, some very simple
(I hope correct) docstrings added.
* PLAN 1.51: next-pos has correct status now.
* chess.texi 1.15: add three paragraphs from chess-pos.el commentary
2004-01-04 Mario Lang <mlang@delysid.org>
* chess-ai.el 1.1: First version of a alpha-beta puring search AI.
* chess-ply.el 1.42: Set status of next-pos according to changes of
ply.
* PLAN 1.50: Crafty is fixed again.
2004-01-03 Mario Lang <mlang@delysid.org>
* chess-pos.el 1.41:
New function chess-pos-read-epd-file, which parses an epd file into a
list of positions.
2004-01-02 Mario Lang <mlang@delysid.org>
* chess-crafty.el 1.29: Display nogeneral seems to no longer display
computer moves on newer crafties. At least removing display nogeneral
makes crafty work again.
2004-01-01 Mario Lang <mlang@delysid.org>
* PLAN 1.49: Crafty is broken.
* chess-gnuchess.el 1.33: Explicitly look for gnuchess in /usr/games.
2003-01-24 John Wiegley <jwiegley@lexx>
* lispdoc.el 1.4: Use a more specific signal rather than `error'.
* chess-network.el 1.37: Add missing string-to-int form.
* chess-engine.el 1.93: Add status code to check for open server
sockets.
2003-01-08 Mario Lang <mlang@delysid.org>
* chess-plain.el 1.17
(chess-plain-piece-text): Simplyfied a bit
(chess-plain-draw-square): Doc fix.
* chess.el 1.66
(chess-create-modules): Add docstring.
* chess.el 1.65: Catch the module-not-found error.
2003-01-07 Mario Lang <mlang@delysid.org>
* chess-german.el 1.8: Translate some strings.
2002-09-05 John Wiegley <jwiegley@lexx>
* chess-sound.el 1.14: Check chess-sound-program before using it.
* chess-display.el 1.114: Avoided binding issue.
2002-06-20 John Wiegley <jwiegley@lexx>
* chess-ics.el 1.70: Fix for when opponent calls flag.
2002-06-14 John Wiegley <jwiegley@lexx>
* chess.el 1.64: Bumped minor rev.
* PLAN 1.35, chess-crafty.el 1.28, chess-display.el 1.112,
chess-engine.el 1.92, chess-gnuchess.el 1.32, chess-ics.el 1.68,
chess-irc.el 1.22, chess-network.el 1.36, chess-phalanx.el 1.11,
chess-transport.el 1.14, chess-ucb.el 1.4: Various small bug fixes.
2002-06-08 John Wiegley <jwiegley@lexx>
* chess-display.el 1.111: Make illegal chess moves (on a chess
display) a message instead of an error.
2002-05-16 John Wiegley <jwiegley@lexx>
* chess-pgn.el 1.39: Removed dependency on cl's `position' function.
* PLAN 1.31, chess-common.el 1.20, chess-display.el 1.109,
chess-engine.el 1.91, chess-game.el 1.55, chess-german.el 1.7,
chess-ics.el 1.67, chess-ics1.el 1.16, chess-images.el 1.34,
chess-network.el 1.35, chess-pgn.el 1.38, chess-plain.el 1.16,
chess-ply.el 1.40, chess.el 1.63: Miscellaneous fixes.
2002-05-01 John Wiegley <jwiegley@lexx>
* chess.el 1.62: bumped minor rev.
* PLAN 1.25, chess-common.el 1.19, chess-engine.el 1.90,
chess-ics.el 1.66, chess-network.el 1.33: Added code for forfeiting
on time.
* chess.el 1.61: Bumped minor rev.
* chess-scid.el 1.5, chess-database.el 1.10, chess-gnuchess.el 1.31:
Fixes.
* chess-sound.el 1.13, chess-announce.el 1.20: Announce pawn promotions
* chess-autosave.el 1.11: Allow autosaving of completed games to
databases.
* PLAN 1.20, chess-autosave.el 1.9, chess-common.el 1.18:
Autosaving is now much more efficient, and correct; still have to get
it correct for chess-network, though.
* chess-display.el 1.107: Fixed bug in popup logic.
* chess-ics.el 1.58: Use `chess-engine-convert-algebraic'.
* chess-ics.el 1.57: Disable autosaving during login, and determine
check/checkmate from the ics12 move text.
* chess-pos.el 1.39: Added a small comment.
* chess-game.el 1.53: Tiny code rearrangement.
* chess-algebraic.el 1.32: Tiny code rearrangement. If
`chess-ply-castling-changes' fails, no ply create will be attempted.
* chess-autosave.el 1.7: Sped up autosaving by a huge amount; also,
allow auto-saving to be disabled (it's not necessary when playing on
ICS, for example).
2002-04-30 John Wiegley <jwiegley@lexx>
* chess.el 1.59: bumped minor rev.
* chess-maint.el 1.6, chess-message.el 1.3: removed dependencies on cl.
* chess-common.el 1.17, chess-display.el 1.106, chess-engine.el 1.87,
chess-game.el 1.52, chess-gnuchess.el 1.30, chess-images.el 1.33,
chess-pgn.el 1.37, chess-puzzle.el 1.4, PLAN 1.16, TODO 1.102:
Bug fixes.
2002-04-29 Mario Lang <mlang@delysid.org>
* chess-german.el 1.5: Some translations.
2002-04-26 John Wiegley <jwiegley@lexx>
* PLAN 1.11, chess-algebraic.el 1.30, chess-display.el 1.104,
chess-game.el 1.50, chess-ics.el 1.55, chess-ply.el 1.38,
chess-pos.el 1.36: Bug fixes.
* chess-clock.el 1.7, chess-display.el 1.103, chess-engine.el 1.84,
chess-game.el 1.49, chess-ics.el 1.54: Fixes.
2002-04-25 John Wiegley <jwiegley@lexx>
* chess.el 1.58: bumped minor rev.
* chess-clock.el 1.6, chess-engine.el 1.82, chess-ics.el 1.50: fixes
to the ICS client
* chess-pos.el 1.35: fix.
* EPD.txt 1.2, PGN.txt 1.2: Whitespace fixes.
2002-04-24 John Wiegley <jwiegley@lexx>
* chess-ics.el 1.42: fixes, and use the new filtering code in
chess-engine
* chess-engine.el 1.79: filter improvements.
* chess-common.el 1.13: deactive a game when it is drawn.
* chess-crafty.el 1.26: added support for a 'resign' option
* chess-pos.el 1.32: added support for setting EPD codes
* chess-puzzle.el 1.2: set the engine option so that crafty doesn't
resign
* chess.texi 1.14: minor doc changes.
2002-04-22 John Wiegley <jwiegley@lexx>
* chess.el 1.57: bumped minor rev.
* chess-database.el 1.8, chess-display.el 1.96, chess-link.el 1.14,
chess-pgn.el 1.36, chess-tutorial.el 1.2, chess.el 1.56: bug fixes.
* PLAN 1.2, TODO 1.98, chess-algebraic.el 1.29, chess-autosave.el 1.6,
chess-common.el 1.12, chess-database.el 1.7, chess-display.el 1.95,
chess-engine.el 1.78, chess-fen.el 1.7, chess-game.el 1.48,
chess-ics1.el 1.15, chess-images.el 1.32, chess-link.el 1.13,
chess-network.el 1.30, chess-pgn.el 1.35, chess-plain.el 1.15,
chess-ply.el 1.37, chess-pos.el 1.31, chess-puzzle.el 1.1,
chess-random.el 1.4, chess-tutorial.el 1.1, chess.el 1.55: Bug fixes
and reducing the TODO list.
2002-04-19 John Wiegley <jwiegley@lexx>
* chess.el 1.54: bumped minor rev
* TODO 1.95, chess-chat.el 1.1, chess-clock.el 1.5,
chess-common.el 1.10, chess-crafty.el 1.25, chess-display.el 1.94,
chess-engine.el 1.77, chess-fen.el 1.6, chess-game.el 1.47,
chess-gnuchess.el 1.29, chess-ics.el 1.41, chess-images.el 1.31,
chess-input.el 1.3, chess-kibitz.el 1.1, chess-network.el 1.29,
chess-pgn.el 1.34, chess-phalanx.el 1.10, chess-ply.el 1.36,
chess-pos.el 1.30, chess.el 1.53: Fixes and other work.
2002-04-18 John Wiegley <jwiegley@lexx>
* chess-pgn.el 1.32, chess-pos.el 1.29, chess.el 1.52,
chess-autosave.el 1.5: whitespace fix.
* chess-algebraic.el 1.28, chess-common.el 1.9, chess-crafty.el 1.24,
chess-display.el 1.93, chess-engine.el 1.76, chess-game.el 1.45,
chess-gnuchess.el 1.28, chess-ics.el 1.40, chess-input.el 1.2,
chess-module.el 1.7, chess-network.el 1.28, chess-pgn.el 1.31,
chess-phalanx.el 1.9, chess-plain.el 1.14, chess-ply.el 1.35,
chess-pos.el 1.28, chess-var.el 1.6, chess.el 1.51: Many efficiency
improvements and bug fixes.
* COPYING 1.1, Makefile 1.12, README 1.1, TODO 1.87:
simple docs changes
2002-04-17 Mario Lang <mlang@delysid.org>
* chess-ics.el 1.39: correct en-passent parsing.
2002-04-17 John Wiegley <johnw@lexx>
* TODO 1.86, chess-algebraic.el 1.27, chess-display.el 1.92,
chess-game.el 1.44, chess-german.el 1.2, chess-ics1.el 1.14,
chess-images.el 1.30, chess-input.el 1.1, chess-pgn.el 1.30,
chess-plain.el 1.13, chess-ply.el 1.34, chess-pos.el 1.27: More
general bug fixing, efficiency improvements, etc.
* chess.el 1.50: bumped minor rev
* chess.el 1.49: bumped minor rev
* chess-display.el 1.90: Paint moves before they are applied.
Otherwise, there could be a slowdown in transmitting the move to the
other listening modules.
* chess-display.el 1.89: Further speed tweaks.
2002-04-16 John Wiegley <johnw@lexx>
* chess-plain.el 1.12, TODO 1.84, chess-display.el 1.88,
chess-ics1.el 1.13, chess-images.el 1.29: Lots of painting
improvements for displays, to improve efficiency.
* chess-game.el 1.43, chess-pos.el 1.23: More efficiency improvements.
* chess-display.el 1.87:
Don't popup the display if it's not necessary to do so.
* chess-display.el 1.86, chess-images.el 1.28: whitespace changes
* TODO 1.81, chess-pos.el 1.22: Fixed pos status not being updated.
* TODO 1.80, chess-display.el 1.85, chess-game.el 1.42,
chess-pos.el 1.21: Report checkmate in the modeline correctly.
* chess.el 1.48: bug fix
* chess-display.el 1.83 (chess-display-handler): Set the side-to-move
text to a reasonable default.
* chess-ics.el 1.36 (chess-ics-regexp-alist): Added a handler to
capture the guest id when logging in anonymously.
* chess-ics.el 1.34 (chess-ics12-parse): Was relying on a variable
that wasn't set!
* chess-ics.el 1.33: Only send startup commands after login has
succeeded.
* chess-ics.el 1.32: Send the "set style 12" command immediately,
rather than after the first move.
2002-04-16 John Wiegley <johnw@gnu.org>
* chess-pgn.el (chess-pgn-mode): Only make bold the result text,
not every move.
* chess-clock.el (chess-clock-handler): Use `chess-ply-set-keyword',
to avoid double-adding keywords.
* chess-ply.el (chess-ply-set-keyword): Added a new function for
setting a ply's keyword, with an optional value (must be non-nil
for setting with a value to occur).
* chess-ics.el (chess-ics-handle-move): Record the white and black
remaining time as returned from the server.
* chess-link.el (chess-link): Fixed an error in display creation,
and which game was used.
* chess-display.el (chess-display-handler): Set the side-to-move
text to a reasonable default.
* chess-ics.el: Only send startup commands after login has succeeded.
(chess-ics12-parse): Was relying on a variable that wasn't set!
(chess-ics-regexp-alist): Added a handler to capture the guest id
when logging in anonymously.
* chess-ics.el: Send the "set style 12" command immediately,
rather than after the first move.
* all: Removed the $ Revision strings; they are no longer
necessary since I tag every revision that I upload.
2002-04-16 Mario Lang <mlang@aris>
* chess-ics.el: set en-passent status
* chess-announce.el: german messages (no idea on how to synth yet
:) )
* chess-ics.el: CR stripping removed/commented.
* chess-engine.el: Only set process-filter if it isn't already set
to comint-output-filter
2002-04-16 John Wiegley <johnw@gnu.org>
* chess-var.el, TODO, chess-algebraic.el, chess-display.el,
chess-game.el, chess-pgn.el, chess-ply.el, chess-pos.el: Major
speed improvement and efficiency work. chess-legal-plies is much
more memory conservative now. Reduced recursion in
chess-search-position by a slight bit.
* chess.el: bumped minor rev
* chess-display.el: Compute the mode-line text only once, whenever
the current game index is changed. This saves hundreds of calls
to chess-ply-to-algebraic, which were occurring simply because of
mode-line updates!
* chess-algebraic.el: Keep the :which determiner, if ever we
calculate it in chess-ply-to-algebraic.
* ChangeLog, PLAN: new file
* chess-plain.el: whitespace fix
* chess-display.el, chess-engine.el: Removed
`chess-with-current-buffer', since it is now in chess-module.el.
2002-04-15 Mario Lang <mlang@aris>
* chess-plain.el: Added var chess-plain-spacing (default 0) to be
able to widen the board. (I am sure that broke highlighting)
* chess-ics.el: Added comments to chess-parse-ics12 to describe
the format
2002-04-15 John Wiegley <johnw@gnu.org>
* Did some major performance work on chess-legal-plies,
chess-ply-create and chess-search-position (these three, together
with chess-pos-move, represent the majority of algorithmic work
done by chess.el).
* Created this file.