]> code.delx.au - gnu-emacs-elpa/blob - ChangeLog
reward passed pawns, and make the code a bit faster
[gnu-emacs-elpa] / ChangeLog
1 2004-02-22 Mario Lang <mlang@delysid.org>
2
3 * chess-ics.el: Require 'rx when compiling.
4 (chess-ics-style12-regexp): New constant regexp which matches
5 a style12 string (subgroup 1 to 32).
6 (chess-ics-matcher-alist): Use it.
7 (chess-ics-matcher-alist): Destroy game object if we see a
8 "no longer examining..." message.
9 (chess-ics-handle-style12): Rewrite using `match-string' instead of
10 `pop' based on the new regexp above.
11 (chess-ics-handle-style12): No longer `message' parse errors, rather
12 keep the failed board in the buffer, and add the failure info
13 to the front of the line. Makes finding remaining bugs a lot
14 easier since the buffer can be reviewed in chronological order.
15 (chess-ics-ads-removed): We need to be a lot more careful when
16 deleteing stuff on a preoutput-filter-function. Fixed this, which also
17 fixes all the remaining cases of missed boards. LectureBot
18 ran through three Lectures without any bug, which seems good!
19
20 2004-02-21 Mario Lang <mlang@delysid.org>
21
22 * chess-engine.el (chess-engine-filter): We were calling `forward-line'
23 unconditionally. However, there is a race condition, namely,
24 if the last line does not end with a newline, forward-line
25 will skip to eob, therefore, engine regexps will simply
26 be missed. Fixed.
27 (chess-engine-entire-lines): This was a fix for the wrong problem,
28 removed.
29
30 2004-02-18 Mario Lang <mlang@delysid.org>
31
32 * chess-display.el (chess-display-highlight-passed-pawns): New
33 interactive function.
34
35 * chess-pos.el (chess-pos-passed-pawns): New function.
36
37 2004-02-12 Mario Lang <mlang@delysid.org>
38
39 * chess-phalanx.el (chess-phalanx-handler): Set
40 chess-engine-entire-lines t.
41
42 * chess-engine.el (chess-engine-entire-lines): New variable.
43 (chess-engine-filter): handle it.
44
45 * chess-ics.el (chess-ics-sought-mode-map): New variable.
46
47 2004-02-08 Mario Lang <mlang@delysid.org>
48
49 * chess-crafty.el (chess-crafty-handler): Add search-depth and
50 search-time engine options.
51
52 2004-02-06 Mario Lang <mlang@delysid.org>
53
54 * chess-display.el (chess-display-paint-move): Handle :en-passant
55 captures (remove the captured pawn from the board).
56
57 * chess-puzzle.el (chess-puzzle): Disable autosave.
58 (chess-puzzle-show-solution): New function (bound to ? in puzzle
59 displays) for showing a solution (if one is known). This typically
60 only works for EPD databases with either bm or pv information.
61 Displaying of annotations is not yet done.
62
63 2004-02-05 Mario Lang <mlang@delysid.org>
64
65 * chess-file.el:
66 Handle .epd and .pgn files in the chess-file module. Achieved by
67 setting a buffer-local variable chess-file-type to either 'pgn or 'epd
68 on 'open, and use this info to dispatch correctly.
69 This change makes it possible to load .epd files with the
70 chess-puzzle function for instance.
71
72 * chess-fen.el (chess-fen-regexp): New constant.
73
74 * chess-epd.el (chess-game-to-epd): New defsubst to convert a game
75 object to an EPD string (or insert it).
76 (chess-epd-to-game): Analogous to the above.
77 (chess-epd-parse): Use `chess-fen-regexp'.
78
79 2004-02-03 Mario Lang <mlang@delysid.org>
80
81 * chess-tutorial.el (chess-tutorial): Simplify and add autoload.
82
83 * chess-announce.el (chess-announce-handler): On event 'kibitz, talk.
84
85 * chess-ics.el (chess-ics-initial-commands): New defcustom to make
86 the init-strings sent after login configurable.
87 (chess-ics-movelist-start-position): New buffer-local variable
88 which defaults to `chess-starting-position'. Its value (if non-nil)
89 is used to initialize the board when seeing a movelist header.
90 This is to allow for servers which have the equivalent of
91 "iset startpos 1" on FICS, which tells the server to automatically
92 send the initial position before sending a movelist. This is
93 to allow non-standard starting positions, and still maintain
94 complete game information in the game object locally.
95 (chess-ics-matcher-alist): If we see something like "startpos set",
96 we set chess-ics-movelist-start-position to nil.
97 (chess-ics-handle-style12): Renamed from chess-ics-handle-ics12.
98 Set game-data 'black-moved-first to t if we see a initial board
99 (move is "none"), and side-to-move is Black. Use this information
100 to calculate the correct game index from the supplied game sequence.
101 This fixes observing of arbitrary start position games where
102 Black moved first. (Most of LectureBot should work now).
103 (chess-ics-seeking): Handle "set ptime 1" prompts.
104 (chess-ics-ads-removed): Ditto.
105
106 2004-01-28 Mario Lang <mlang@delysid.org>
107
108 * chess-ply.el 1.45
109 (chess-ply-castling-changes): When doing a long castle, only check if
110 the king can move to the d or c file without being in check. According
111 to the crafty-list, it is legal to do a long castle if some opponent
112 piece is attacking the b file.
113
114 * chess-ics.el 1.82
115 (chess-ics-matcher-alist): Send "set interface emacs-chess VERSION"
116 on init.
117
118 * chess.el 1.67:
119 Temporarily disable the condition-case in the main startup function,
120 some strange engine errors are caught and hard to debug with this,
121 also add chess-opening and chess-ai to the default modules.
122
123 * chess-pos.el 1.46
124 (chess-search-position): Document arguments CHECK-ONLY and NO-CASTLING.
125
126 * chess-engine.el 1.99:
127 (chess-engine-create),
128 (chess-engine-command): Docstrings.
129 (chess-engine-filter): bind case-fold-search to nil.
130
131 * chess-display.el 1.119
132 (chess-display-create): More docs.
133
134 * chess-var.el 1.10: docfixes
135
136 * chess.texi 1.22: Proofread fixes.
137
138 2004-01-27 Mario Lang <mlang@delysid.org>
139
140 * chess-fen.el 1.13: Commentary synced with reality of FEN standard.
141
142 * README 1.4: chess-ai is a submodule of chess-common.
143
144 * chess-ply.el 1.44: docfix.
145
146 * chess-gnuchess.el 1.35
147 (chess-gnuchess-path): Add *, since this is a user-option.
148
149 * chess-opening.el 1.3: uncomment the remaining failure cases,
150 chess-algebraic handles those now.
151
152 * chess-opening.el 1.2: We now have the individual moves in the source
153 file, and get the final position at compile time.
154
155 * chess-tutorial.el 1.4: We can use `chess-display-set-from-fen' here.
156
157 * chess-maint.el 1.8, chess.texi 1.21: Add in minimal docs for FEN
158 notation, algebraic notation, and ICS.
159
160 2004-01-26 Mario Lang <mlang@delysid.org>
161
162 * chess-pos.el 1.45
163 (chess-pos-move): Fix a bug in castling removal when the Rook
164 is moved, now compare chess-pos-can-castle and the source square of
165 the moving piece to figure out if we need to remove castling
166 priviledges.
167
168 * chess-pos.el 1.44
169 (chess-pos-legal-candidates): remove the opponent pawn if we are
170 capturing en passant.
171 this fixes a bug where chess-legal-plies does not find an en passant
172 move if the pawn to be captured is giving check.
173
174 * chess-database.el 1.12, chess-file.el 1.7, chess-scid.el 1.7:
175 new function chess-database-filename, also support it in scid and
176 file DBs.
177
178 2004-01-25 John Wiegley <jwiegley@lexx>
179
180 * chess-algebraic.el 1.35, chess-pos.el 1.43
181 (chess-search-position): Added an argument so that if we are
182 searching for the source of an algebraic move, and it is not a castle,
183 then do not check castle moves.
184
185 2004-01-23 Mario Lang <mlang@delysid.org>
186
187 * chess-database.el 1.11
188 (chess-database-query): use `apply'.
189
190 * chess-scid.el 1.6
191 (chess-scid-handler): Support query tree-search.
192
193 * chess-engine.el 1.98: Don't barf on unbound
194 chess-module-regexp-alist, and add some docstrings.
195
196 * chess-game.el 1.59: Docstring fixes + a redo of chess-game-seq.
197
198 * chess-pgn.el 1.40: Fixes to make chess-scid read parsing work.
199
200 2004-01-21 Mario Lang <mlang@delysid.org>
201
202 * chess-opening.el 1.1: Opening classification module based on the
203 scid.eco file from scid 3.5.
204
205 2004-01-20 Mario Lang <mlang@delysid.org>
206
207 * chess-fen.el 1.12: FEN notation actually specifies that field
208 four (en passant) should denote the target square of the immenent
209 capture, not the square of the piece about to be taken.
210
211 * chess-ics.el 1.81: Catch manually typed "resign" and fix a bug
212 where only one game could be played for each session.
213
214 * chess-fen.el 1.11
215 (chess-pos-to-fen): Don't emit a trailing / on rank 8.
216
217 2004-01-19 Mario Lang <mlang@delysid.org>
218
219 * chess-ics.el 1.80: tidying
220
221 * chess-epd.el 1.6: minor change.
222
223 * chess-ics.el 1.79: Rewrite this module such that it does not act
224 as an engine, rather it invokes chess-sessions as needed. You need
225 to use M-x chess-ics RET instead of C-u M-x chess RET ics RET now.
226 (chess-ics-handle-ics12): Rewrite such that it can handle the "refresh"
227 command, and moves entered manually in the ICS buffer.
228
229 2004-01-16 Mario Lang <mlang@delysid.org>
230
231 * chess-ai.el 1.5:
232 We no longer need to dedvar chess-ai-regexp-alist with
233 a nil value.
234
235 * chess-engine.el 1.97 (chess-engine-create): Use `insern-soft'
236 instead of `intern' to copy the engine-regexp-alist.
237
238 2004-01-15 John Wiegley <jwiegley@lexx>
239
240 * chess.texi 1.20: Adding description of the module system.
241
242 2004-01-14 Mario Lang <mlang@delysid.org>
243
244 * chess-sjeng.el 1.2: Elisp header + homepage link.
245
246 * chess-sjeng.el 1.1: Module for the sjeng engine (promotion still
247 doesn't work.)
248
249 * chess-algebraic.el 1.34
250 (chess-algebraic-to-ply): `let'-bind case-fold-search nil. This fixes
251 a bug where b8c6 is parsed to c7-c6.
252
253 2004-01-13 Mario Lang <mlang@delysid.org>
254
255 * chess-ics.el 1.78: Initial skeleton for Game Creating messages.
256 Support relation-type -2 (Examining game).
257 Handle the 'forward event.
258 (Now you can use the "examine" command on FICS, and simply
259 type '.' in the ChessBoard display to forward through the game.)
260
261 * chess-display.el 1.118
262 (chess-display-set-index): If INDEX is greater than chess-game-index,
263 and the last ply is not final, we emit a 'forward chess-module-game
264 event to give ics a chance to issue "forward\n". This makes
265 '.' work as expected in examined games.
266
267 2004-01-12 Mario Lang <mlang@delysid.org>
268
269 * wac.epd 1.1:
270 Win At Chess, 300 positions with best move information.
271 pv (predicted variation) information computed using crafty 19.8 on
272 a dual xeon 2.6GHZ system using 40 minutes time for each position.
273 This can be used to stress test the core library.
274
275 * chess-ics.el 1.77
276 (chess-ics-server-list): Added some more servers.
277 (chess-ics-regexp-alist): Make guest login on chessclub.com work.
278 (chess-ics-handle-ics12): Retrieve TimeControl info from
279 the ics12 board and set TimeControl game tag when initial board is
280 seen.
281
282 * wcsac.epd 1.1:
283 Winning Chess Sacrifices And Cobinations
284 pv information calculated using crafty 19.8 with about 30 minutes
285 time per position.
286
287 2004-01-11 Mario Lang <mlang@delysid.org>
288
289 * chess-ics.el 1.76: Set EPD opcode ce from material-value and
290 checkmate info.
291
292 * chess-ics.el 1.75: Merge chess-ics-parse-ics12 and
293 chess-ics-handle-move into a new function chess-ics-handle-ics12,
294 which is a lot easier to read now.
295 Also make the <12> regexp a bit more strict to avoid false positives.
296
297 * chess-clock.el 1.10
298 (chess-clock-tick-tock): Do not decrease time if
299 (chess-game-status chess-module-game) is non-nil.
300
301 * chess-ics.el 1.74: Fixed messed up parens.
302
303 * chess-ics.el 1.73
304 (chess-ics-handler): Read the password before opening the connection.
305 This corrects a race where the password can be unknown when the
306 prompt appears because the user hasn't finished typing yet...
307 (chess-ics12-parse): Use `pop' to make stuff simpler and use `mapc'
308 to get castling info.
309 Indent chess-ics-regexp-alist differently.
310
311 * chess-engine.el 1.96
312 (chess-engine-default-handler): When 'match is accepted, we were
313 calling (chess-engine-command nil 'accept chess-full-name)
314 which doesn't make much sense, and breaks chess-ics game accepting.
315 Change it to `name', to pass the opponent name for whom we are
316 accepting a match request.
317
318 * chess-display.el 1.117: On GNU Emacs 21.3, :eval in mode-line-data
319 seems only to work if it directly appears in mode-line-format.
320 chess-display indirectly referenced chess-display-mode-line-format
321 by setting mode-line-format to that symbol. If we set
322 mode-line-format to the value of chess-display-mode-line-format,
323 the mode-line comes to life again!
324
325 2004-01-10 Mario Lang <mlang@delysid.org>
326
327 * chess-game.el 1.58: Fix a bug in `chess-game-seq' (at least I
328 think it is supposed to work like it does now).
329
330 * chess-crafty.el 1.31: Support for xboards analyze mode.
331 (chess-engine-command crafty 'analyze t) enables analyze mode and
332 eventually sets chess-crafty-analyzing-p to t.
333 When new predicted variations arrive, corresponding epd opcodes
334 are set for (chess-engine-position nil): acd, ce, pv (acn is not set because
335 it is likely that it overflows the emacs integer bounds, and I am not
336 yet sure what to do about this.)
337 (chess-engine-command crafty 'analyze nil) turns analyze mode off again.
338
339 * chess-plain.el 1.19: A change to the faces and a fix for
340 chess-plain-spacing > 0 and file naming, all from kanaldrache, thanks.
341
342 * chess-crafty.el 1.30: Use Crafty's xboard protocol layer for
343 communication: Since recent >19.x crafty, there is something strange
344 going on with display nogeneral. Another bug which appears sometimes
345 is that crafty (in its own mode of displaying stuff) echos the oponent
346 move (our move) which raises an error (obviously).
347 xboard mode is really a lot easier to parse, and I even managed
348 to keep the 'evaluate event without any problems.
349
350 2004-01-09 Mario Lang <mlang@delysid.org>
351
352 * chess-epd.el 1.5: speed up chess-epd-read-file by using `nconc'.
353
354 * chess-epd.el 1.4: Support (convert) opcodes sm and sv.
355
356 * chess-gnuchess.el 1.34: Use `zerop'.
357
358 * chess-epd.el 1.3: (require 'chess-var)
359
360 * chess-epd.el 1.2: Use `chess-var-to-algebraic'.
361
362 * chess-var.el 1.9, chess.texi 1.19: New function
363 `chess-var-to-algebraic'.
364
365 2004-01-07 Mario Lang <mlang@delysid.org>
366
367 * chess-epd.el 1.1: new file, implements opcodes am, bm, ce, pm and pv.
368
369 * chess-pos.el 1.42: Remove chess-pos-read-epd-file.
370
371 * chess-display.el 1.116: Make chess-display-create interactive, and
372 document chess-display-quit.
373
374 * chess-maint.el 1.7, chess-random.el 1.5, chess.texi 1.18: Add
375 `chess-fischer-random-position' into the Creating Positions Manual
376 Section.
377
378 2004-01-06 Mario Lang <mlang@delysid.org>
379
380 * chess.texi 1.17: skels for chess-database.
381
382 * chess-ai.el 1.4: Require cl and add `message' calls.
383
384 * chess-ply.el 1.43: Some docstrings.
385
386 * chess.texi 1.16: Add @c lispfun for chess-ply-source and
387 chess-ply-target.
388
389 * chess-var.el 1.8: Add &optional index to `chess-var-side-to-move'
390 (sync with chess-game-side-to-move) and document it, mirroring
391 chess-game-side-to-move docstring.
392
393 * chess-game.el 1.57: Document 'chess-game-side-to-move'.
394
395 * chess-ai.el 1.3: It mostly works now, only remaining problem is
396 that the players move is only displayed after the engine found a reply.
397
398 2004-01-05 Mario Lang <mlang@delysid.org>
399
400 * chess-display.el 1.115: Checkdoc attempt, some very simple
401 (I hope correct) docstrings added.
402
403 * PLAN 1.51: next-pos has correct status now.
404
405 * chess.texi 1.15: add three paragraphs from chess-pos.el commentary
406
407 2004-01-04 Mario Lang <mlang@delysid.org>
408
409 * chess-ai.el 1.1: First version of a alpha-beta puring search AI.
410
411 * chess-ply.el 1.42: Set status of next-pos according to changes of
412 ply.
413
414 * PLAN 1.50: Crafty is fixed again.
415
416 2004-01-03 Mario Lang <mlang@delysid.org>
417
418 * chess-pos.el 1.41:
419 New function chess-pos-read-epd-file, which parses an epd file into a
420 list of positions.
421
422 2004-01-02 Mario Lang <mlang@delysid.org>
423
424 * chess-crafty.el 1.29: Display nogeneral seems to no longer display
425 computer moves on newer crafties. At least removing display nogeneral
426 makes crafty work again.
427
428 2004-01-01 Mario Lang <mlang@delysid.org>
429
430 * PLAN 1.49: Crafty is broken.
431
432 * chess-gnuchess.el 1.33: Explicitly look for gnuchess in /usr/games.
433
434 2003-01-24 John Wiegley <jwiegley@lexx>
435
436 * lispdoc.el 1.4: Use a more specific signal rather than `error'.
437
438 * chess-network.el 1.37: Add missing string-to-int form.
439
440 * chess-engine.el 1.93: Add status code to check for open server
441 sockets.
442
443 2003-01-08 Mario Lang <mlang@delysid.org>
444
445 * chess-plain.el 1.17
446 (chess-plain-piece-text): Simplyfied a bit
447 (chess-plain-draw-square): Doc fix.
448
449 * chess.el 1.66
450 (chess-create-modules): Add docstring.
451
452 * chess.el 1.65: Catch the module-not-found error.
453
454 2003-01-07 Mario Lang <mlang@delysid.org>
455
456 * chess-german.el 1.8: Translate some strings.
457
458 2002-09-05 John Wiegley <jwiegley@lexx>
459
460 * chess-sound.el 1.14: Check chess-sound-program before using it.
461
462 * chess-display.el 1.114: Avoided binding issue.
463
464 2002-06-20 John Wiegley <jwiegley@lexx>
465
466 * chess-ics.el 1.70: Fix for when opponent calls flag.
467
468 2002-06-14 John Wiegley <jwiegley@lexx>
469
470 * chess.el 1.64: Bumped minor rev.
471
472 * PLAN 1.35, chess-crafty.el 1.28, chess-display.el 1.112,
473 chess-engine.el 1.92, chess-gnuchess.el 1.32, chess-ics.el 1.68,
474 chess-irc.el 1.22, chess-network.el 1.36, chess-phalanx.el 1.11,
475 chess-transport.el 1.14, chess-ucb.el 1.4: Various small bug fixes.
476
477 2002-06-08 John Wiegley <jwiegley@lexx>
478
479 * chess-display.el 1.111: Make illegal chess moves (on a chess
480 display) a message instead of an error.
481
482 2002-05-16 John Wiegley <jwiegley@lexx>
483
484 * chess-pgn.el 1.39: Removed dependency on cl's `position' function.
485
486 * PLAN 1.31, chess-common.el 1.20, chess-display.el 1.109,
487 chess-engine.el 1.91, chess-game.el 1.55, chess-german.el 1.7,
488 chess-ics.el 1.67, chess-ics1.el 1.16, chess-images.el 1.34,
489 chess-network.el 1.35, chess-pgn.el 1.38, chess-plain.el 1.16,
490 chess-ply.el 1.40, chess.el 1.63: Miscellaneous fixes.
491
492 2002-05-01 John Wiegley <jwiegley@lexx>
493
494 * chess.el 1.62: bumped minor rev.
495
496 * PLAN 1.25, chess-common.el 1.19, chess-engine.el 1.90,
497 chess-ics.el 1.66, chess-network.el 1.33: Added code for forfeiting
498 on time.
499
500 * chess.el 1.61: Bumped minor rev.
501
502 * chess-scid.el 1.5, chess-database.el 1.10, chess-gnuchess.el 1.31:
503 Fixes.
504
505 * chess-sound.el 1.13, chess-announce.el 1.20: Announce pawn promotions
506
507 * chess-autosave.el 1.11: Allow autosaving of completed games to
508 databases.
509
510 * PLAN 1.20, chess-autosave.el 1.9, chess-common.el 1.18:
511 Autosaving is now much more efficient, and correct; still have to get
512 it correct for chess-network, though.
513
514 * chess-display.el 1.107: Fixed bug in popup logic.
515
516 * chess-ics.el 1.58: Use `chess-engine-convert-algebraic'.
517
518 * chess-ics.el 1.57: Disable autosaving during login, and determine
519 check/checkmate from the ics12 move text.
520
521 * chess-pos.el 1.39: Added a small comment.
522
523 * chess-game.el 1.53: Tiny code rearrangement.
524
525 * chess-algebraic.el 1.32: Tiny code rearrangement. If
526 `chess-ply-castling-changes' fails, no ply create will be attempted.
527
528 * chess-autosave.el 1.7: Sped up autosaving by a huge amount; also,
529 allow auto-saving to be disabled (it's not necessary when playing on
530 ICS, for example).
531
532 2002-04-30 John Wiegley <jwiegley@lexx>
533
534 * chess.el 1.59: bumped minor rev.
535
536 * chess-maint.el 1.6, chess-message.el 1.3: removed dependencies on cl.
537
538 * chess-common.el 1.17, chess-display.el 1.106, chess-engine.el 1.87,
539 chess-game.el 1.52, chess-gnuchess.el 1.30, chess-images.el 1.33,
540 chess-pgn.el 1.37, chess-puzzle.el 1.4, PLAN 1.16, TODO 1.102:
541 Bug fixes.
542
543 2002-04-29 Mario Lang <mlang@delysid.org>
544
545 * chess-german.el 1.5: Some translations.
546
547 2002-04-26 John Wiegley <jwiegley@lexx>
548
549 * PLAN 1.11, chess-algebraic.el 1.30, chess-display.el 1.104,
550 chess-game.el 1.50, chess-ics.el 1.55, chess-ply.el 1.38,
551 chess-pos.el 1.36: Bug fixes.
552
553 * chess-clock.el 1.7, chess-display.el 1.103, chess-engine.el 1.84,
554 chess-game.el 1.49, chess-ics.el 1.54: Fixes.
555
556 2002-04-25 John Wiegley <jwiegley@lexx>
557
558 * chess.el 1.58: bumped minor rev.
559
560 * chess-clock.el 1.6, chess-engine.el 1.82, chess-ics.el 1.50: fixes
561 to the ICS client
562
563 * chess-pos.el 1.35: fix.
564
565 * EPD.txt 1.2, PGN.txt 1.2: Whitespace fixes.
566
567 2002-04-24 John Wiegley <jwiegley@lexx>
568
569 * chess-ics.el 1.42: fixes, and use the new filtering code in
570 chess-engine
571
572 * chess-engine.el 1.79: filter improvements.
573
574 * chess-common.el 1.13: deactive a game when it is drawn.
575
576 * chess-crafty.el 1.26: added support for a 'resign' option
577
578 * chess-pos.el 1.32: added support for setting EPD codes
579
580 * chess-puzzle.el 1.2: set the engine option so that crafty doesn't
581 resign
582
583 * chess.texi 1.14: minor doc changes.
584
585 2002-04-22 John Wiegley <jwiegley@lexx>
586
587 * chess.el 1.57: bumped minor rev.
588
589 * chess-database.el 1.8, chess-display.el 1.96, chess-link.el 1.14,
590 chess-pgn.el 1.36, chess-tutorial.el 1.2, chess.el 1.56: bug fixes.
591
592 * PLAN 1.2, TODO 1.98, chess-algebraic.el 1.29, chess-autosave.el 1.6,
593 chess-common.el 1.12, chess-database.el 1.7, chess-display.el 1.95,
594 chess-engine.el 1.78, chess-fen.el 1.7, chess-game.el 1.48,
595 chess-ics1.el 1.15, chess-images.el 1.32, chess-link.el 1.13,
596 chess-network.el 1.30, chess-pgn.el 1.35, chess-plain.el 1.15,
597 chess-ply.el 1.37, chess-pos.el 1.31, chess-puzzle.el 1.1,
598 chess-random.el 1.4, chess-tutorial.el 1.1, chess.el 1.55: Bug fixes
599 and reducing the TODO list.
600
601 2002-04-19 John Wiegley <jwiegley@lexx>
602
603 * chess.el 1.54: bumped minor rev
604
605 * TODO 1.95, chess-chat.el 1.1, chess-clock.el 1.5,
606 chess-common.el 1.10, chess-crafty.el 1.25, chess-display.el 1.94,
607 chess-engine.el 1.77, chess-fen.el 1.6, chess-game.el 1.47,
608 chess-gnuchess.el 1.29, chess-ics.el 1.41, chess-images.el 1.31,
609 chess-input.el 1.3, chess-kibitz.el 1.1, chess-network.el 1.29,
610 chess-pgn.el 1.34, chess-phalanx.el 1.10, chess-ply.el 1.36,
611 chess-pos.el 1.30, chess.el 1.53: Fixes and other work.
612
613 2002-04-18 John Wiegley <jwiegley@lexx>
614
615 * chess-pgn.el 1.32, chess-pos.el 1.29, chess.el 1.52,
616 chess-autosave.el 1.5: whitespace fix.
617
618 * chess-algebraic.el 1.28, chess-common.el 1.9, chess-crafty.el 1.24,
619 chess-display.el 1.93, chess-engine.el 1.76, chess-game.el 1.45,
620 chess-gnuchess.el 1.28, chess-ics.el 1.40, chess-input.el 1.2,
621 chess-module.el 1.7, chess-network.el 1.28, chess-pgn.el 1.31,
622 chess-phalanx.el 1.9, chess-plain.el 1.14, chess-ply.el 1.35,
623 chess-pos.el 1.28, chess-var.el 1.6, chess.el 1.51: Many efficiency
624 improvements and bug fixes.
625
626 * COPYING 1.1, Makefile 1.12, README 1.1, TODO 1.87:
627 simple docs changes
628
629 2002-04-17 Mario Lang <mlang@delysid.org>
630
631 * chess-ics.el 1.39: correct en-passent parsing.
632
633 2002-04-17 John Wiegley <johnw@lexx>
634
635 * TODO 1.86, chess-algebraic.el 1.27, chess-display.el 1.92,
636 chess-game.el 1.44, chess-german.el 1.2, chess-ics1.el 1.14,
637 chess-images.el 1.30, chess-input.el 1.1, chess-pgn.el 1.30,
638 chess-plain.el 1.13, chess-ply.el 1.34, chess-pos.el 1.27: More
639 general bug fixing, efficiency improvements, etc.
640
641 * chess.el 1.50: bumped minor rev
642
643 * chess.el 1.49: bumped minor rev
644
645 * chess-display.el 1.90: Paint moves before they are applied.
646 Otherwise, there could be a slowdown in transmitting the move to the
647 other listening modules.
648
649 * chess-display.el 1.89: Further speed tweaks.
650
651 2002-04-16 John Wiegley <johnw@lexx>
652
653 * chess-plain.el 1.12, TODO 1.84, chess-display.el 1.88,
654 chess-ics1.el 1.13, chess-images.el 1.29: Lots of painting
655 improvements for displays, to improve efficiency.
656
657 * chess-game.el 1.43, chess-pos.el 1.23: More efficiency improvements.
658
659 * chess-display.el 1.87:
660 Don't popup the display if it's not necessary to do so.
661
662 * chess-display.el 1.86, chess-images.el 1.28: whitespace changes
663
664 * TODO 1.81, chess-pos.el 1.22: Fixed pos status not being updated.
665
666 * TODO 1.80, chess-display.el 1.85, chess-game.el 1.42,
667 chess-pos.el 1.21: Report checkmate in the modeline correctly.
668
669 * chess.el 1.48: bug fix
670
671 * chess-display.el 1.83 (chess-display-handler): Set the side-to-move
672 text to a reasonable default.
673
674 * chess-ics.el 1.36 (chess-ics-regexp-alist): Added a handler to
675 capture the guest id when logging in anonymously.
676
677 * chess-ics.el 1.34 (chess-ics12-parse): Was relying on a variable
678 that wasn't set!
679
680 * chess-ics.el 1.33: Only send startup commands after login has
681 succeeded.
682
683 * chess-ics.el 1.32: Send the "set style 12" command immediately,
684 rather than after the first move.
685
686 2002-04-16 John Wiegley <johnw@gnu.org>
687
688 * chess-pgn.el (chess-pgn-mode): Only make bold the result text,
689 not every move.
690
691 * chess-clock.el (chess-clock-handler): Use `chess-ply-set-keyword',
692 to avoid double-adding keywords.
693
694 * chess-ply.el (chess-ply-set-keyword): Added a new function for
695 setting a ply's keyword, with an optional value (must be non-nil
696 for setting with a value to occur).
697
698 * chess-ics.el (chess-ics-handle-move): Record the white and black
699 remaining time as returned from the server.
700
701 * chess-link.el (chess-link): Fixed an error in display creation,
702 and which game was used.
703
704 * chess-display.el (chess-display-handler): Set the side-to-move
705 text to a reasonable default.
706
707 * chess-ics.el: Only send startup commands after login has succeeded.
708 (chess-ics12-parse): Was relying on a variable that wasn't set!
709 (chess-ics-regexp-alist): Added a handler to capture the guest id
710 when logging in anonymously.
711
712 * chess-ics.el: Send the "set style 12" command immediately,
713 rather than after the first move.
714
715 * all: Removed the $ Revision strings; they are no longer
716 necessary since I tag every revision that I upload.
717
718 2002-04-16 Mario Lang <mlang@aris>
719
720 * chess-ics.el: set en-passent status
721
722 * chess-announce.el: german messages (no idea on how to synth yet
723 :) )
724
725 * chess-ics.el: CR stripping removed/commented.
726
727 * chess-engine.el: Only set process-filter if it isn't already set
728 to comint-output-filter
729
730 2002-04-16 John Wiegley <johnw@gnu.org>
731
732 * chess-var.el, TODO, chess-algebraic.el, chess-display.el,
733 chess-game.el, chess-pgn.el, chess-ply.el, chess-pos.el: Major
734 speed improvement and efficiency work. chess-legal-plies is much
735 more memory conservative now. Reduced recursion in
736 chess-search-position by a slight bit.
737
738 * chess.el: bumped minor rev
739
740 * chess-display.el: Compute the mode-line text only once, whenever
741 the current game index is changed. This saves hundreds of calls
742 to chess-ply-to-algebraic, which were occurring simply because of
743 mode-line updates!
744
745 * chess-algebraic.el: Keep the :which determiner, if ever we
746 calculate it in chess-ply-to-algebraic.
747
748 * ChangeLog, PLAN: new file
749
750 * chess-plain.el: whitespace fix
751
752 * chess-display.el, chess-engine.el: Removed
753 `chess-with-current-buffer', since it is now in chess-module.el.
754
755 2002-04-15 Mario Lang <mlang@aris>
756
757 * chess-plain.el: Added var chess-plain-spacing (default 0) to be
758 able to widen the board. (I am sure that broke highlighting)
759
760 * chess-ics.el: Added comments to chess-parse-ics12 to describe
761 the format
762
763 2002-04-15 John Wiegley <johnw@gnu.org>
764
765 * Did some major performance work on chess-legal-plies,
766 chess-ply-create and chess-search-position (these three, together
767 with chess-pos-move, represent the majority of algorithmic work
768 done by chess.el).
769
770 * Created this file.