;ELC ;;; Compiled ;;; in Emacs version 28.0.50 ;;; with all optimizations. (byte-code "\300\301!\210\300\302!\210\300\303!\210\300\304!\210\300\305!\210\300\306!\210\307\310\311\312\313\314\315\316&\210\317\320\321\322\323DD\324\325\326%\210\327\320!\210\317\330\321\322\331DD\332\325\326%\210\317\333\321\322\334DD\335\325\326%\210\336\337\340\"\210\317\341\321\322\342DD\343\325\344%\210\345\346\347\350#\210\345\351\352\353#\207" [require chess-fen chess-input chess-message chess-module chess-random chess-var custom-declare-group chess-display nil "Options common to all chessboard displays." :group chess :link (custom-manual "(chess)Chessboard displays") custom-declare-variable chess-display-popup funcall function #[0 "\300\207" [t] 1] "If non-nil (the default), popup displays whenever a significant event\noccurs." :type boolean make-variable-buffer-local chess-display-highlight-legal #[0 "\300\207" [t] 1] "If non-nil, highlight legal target squares when a piece is selected." chess-display-highlight-last-move #[0 "\300\207" [nil] 1] "If non-nil, highlight the last move made on the game." chess-message-catalog english ((mode-white . "White") (mode-black . "Black") (mode-start . "START") (mode-checkmate . "CHECKMATE") (mode-aborted . "ABORTED") (mode-resigned . "RESIGNED") (mode-stalemate . "STALEMATE") (mode-flag-fell . "FLAG FELL") (mode-drawn . "DRAWN") (mode-edit . "EDIT")) chess-display-mode-line-format #[0 "\300\207" [(" " chess-display-side-to-move " " chess-display-move-text " " (:eval (chess-display-clock-string)) "(" (:eval (chess-game-tag chess-module-game "White")) "-" (:eval (chess-game-tag chess-module-game "Black")) ", " (:eval (chess-game-tag chess-module-game "Site")) (:eval (let ((date (chess-game-tag chess-module-game "Date"))) (and (string-match "\\`\\([0-9]\\{4\\}\\)" date) (concat " " (match-string 1 date))))) ")")] 1] "The format of a chess display's modeline.\nSee `mode-line-format' for syntax details." sexp custom-declare-face chess-display-black-face ((t (:background "Black" :foreground "White"))) "The face used for the word Black in the mode-line." chess-display-white-face ((t (:background "White" :foreground "Black"))) "The face used for the word White in the mode-line."] 8) (defvar chess-display-event-handler nil) (defvar chess-display-edit-mode nil) (defvar chess-display-index-positions nil) (byte-code "\300\301!\210\300\302!\210\300\303!\210\304\303\305\306#\210\300\307!\210\300\310!\210\300\311!\210\300\312!\207" [make-variable-buffer-local chess-display-index chess-display-move-text chess-display-side-to-move put risky-local-variable t chess-display-perspective chess-display-event-handler chess-display-edit-mode chess-display-index-positions] 4) #@102 If non-nil, chess-display is already handling the event. This variable is used to avoid reentrancy. (defvar chess-display-handling-event nil (#$ . 2742)) (chess-message-catalog 'english '((no-such-style . "There is no such chessboard display style '%s'") (cannot-yet-add . "Cannot insert moves into a game (yet)"))) #@292 Create a chess display, for displaying chess objects. Where GAME is the chess game object to use, STYLE should be the display type to use (a symbol) and PERSPECTIVE determines the viewpoint of the board, if non-nil, the board is viewed from White's perspective. (fn GAME STYLE PERSPECTIVE) (defalias 'chess-display-create #[771 "\301\302\303#\205$\304\305\306$\307\310!\203 \311!\210\312!\202!\211)\262\207" [chess-display-style require nil t chess-module-create chess-display "*Chessboard*" called-interactively-p any chess-display-update chess-display-popup] 8 (#$ . 3066) (byte-code "\203\301\302\303\304!!!\202\301 \305\306\307\310\311\"P!\312\313!E\207" [current-prefix-arg chess-game-create chess-fen-to-pos read-string "FEN: " intern-soft "chess-" completing-read "Display style: " (("ics1") ("images") ("plain")) y-or-n-p "View from White's perspective? "] 6)]) (defalias 'chess-display-destroy 'chess-module-destroy) #@34 (fn DISPLAY STYLE PERSPECTIVE) (defalias 'chess-display-clone #[771 "\300\301!#\302!\210\207" [chess-display-create chess-display-game chess-display-popup] 7 (#$ . 4015)]) #@58 Return the current perspective of DISPLAY. (fn DISPLAY) (defalias 'chess-display-perspective #[257 "\211\211\203\fr\211q\210)\207\207" [chess-display-perspective] 3 (#$ . 4199)]) (byte-code "\300\301\302\303#\304\301\305\306#\207" [function-put chess-display-perspective speed -1 put byte-optimizer byte-compile-inline-expand] 5) #@28 (fn DISPLAY PERSPECTIVE) (defalias 'chess-display-set-perspective* #[514 "\211\203r\211q\210\302\303 )\207\302\303 \207" [chess-display-perspective chess-display-index-positions nil erase-buffer] 4 (#$ . 4539)]) #@55 Set PERSPECTIVE of DISPLAY. (fn DISPLAY PERSPECTIVE) (defalias 'chess-display-set-perspective #[514 "\211\203r\211q\210\300\301\"\210\302\301!)\207\300\301\"\210\302\301!\207" [chess-display-set-perspective* nil chess-display-update] 6 (#$ . 4768)]) #@110 Set the game associated with DISPLAY to use POSITION and MY-COLOR. (fn DISPLAY &optional POSITION MY-COLOR) (defalias 'chess-display-set-position #[769 "\211\203,r\211q\210\203\233\204\303\304!\210\305!\204!\303\306!\210\211\305!\205.\211G\307U\262\204;\310\311\312\313E\"\210\211C\262C\204H\303\304!\210AA\205QC\241\210\314D\204_\303\304!\210 ?\205\220\315\211\204n\303\304!\210\211@\262\211\203\213\211@\316@A$\262A\266\202\202r\262\262\266\317\320#\210\202&\n\204\245\303\304!\210\305!\204\257\303\306!\210\211\305!\205\274\211G\307U\262\204\311\310\311\312\313E\"\210\211C\262C\204\326\303\304!\210AA\205\337C\241\210\314D\204\355\303\304!\210 ?\205\315\211\204\374\303\304!\210\211@\262\211\203\211@\316@A$\262A\266\202\202\262\262\266\317\320\321#\210\322\315\323\")\207\203\276\204:\303\304!\210\305!\204D\303\306!\210\211\305!\205Q\211G\307U\262\204^\310\311\312\313E\"\210\211C\262C\204k\303\304!\210AA\205tC\241\210\314D\204\202\303\304!\210 ?\205\263\315\211\204\221\303\304!\210\211@\262\211\203\256\211@\316@A$\262A\266\202\202\225\262\262\266\317\320#\210\202I\n\204\310\303\304!\210\305!\204\322\303\306!\210\211\305!\205\337\211G\307U\262\204\354\310\311\312\313E\"\210\211C\262C\204\371\303\304!\210AA\205C\241\210\314D\204\303\304!\210 ?\205A\315\211\204\303\304!\210\211@\262\211\203<\211@\316@A$\262A\266\202\202#\262\262\266\317\320\321#\210\322\315\323\"\207" [chess-module-game chess-game-inhibit-events chess-starting-position cl--assertion-failed game vectorp (vectorp position) 75 signal wrong-type-argument chess-pos position setup-game nil apply chess-game-set-data my-color t chess-display-set-index 0] 18 (#$ . 5031)]) (defvar chess-display-edit-position nil) (make-variable-buffer-local 'chess-display-edit-position) #@64 Return the position currently viewed on DISPLAY. (fn DISPLAY) (defalias 'chess-display-position #[257 "\211\211\203Fr\211q\210\203 \202D\n \204\304\305!\210\306\"\211\211:\2053\211@\307!\2051\211G\310U\262\262\204@\311\312\313\314E\"\210\211@\266\203)\207\203L \207\n \204V\304\305!\210\306\"\211\211:\205n\211@\307!\205l\211G\310U\262\262\204{\311\312\313\314E\"\210\211@\207" [chess-display-edit-mode chess-display-edit-position chess-module-game chess-display-index cl--assertion-failed game chess-game-ply vectorp 75 signal wrong-type-argument chess-ply ply] 10 (#$ . 6973)]) #@20 (fn DISPLAY PLY) (defalias 'chess-display-set-ply #[514 "\211\203sr\211q\210\302\303\304\305\"\210) \211\211\211:\205(\211@\306!\205&\211G\307U\262\262\2045\310\311\312\313E\"\210\314\315\"\206\316\317\211\211:\205S\211@\306!\205Q\211G\307U\262\262\204`\310\311\312\313E\"\210\211@\262\211\306!\205o\211G\307U\262\204|\310\311\320\321E\"\210\322!\211\323\211\306!\205\215\211G\307U\262\204\232\310\311\320\321E\"\210\211\324H\262!\306!\205\253\211G\307U\262\204\270\310\311\320\321E\"\210\211<\204\305\310\311\325\326E\"\210\324I\266\262\211\211:\205\342\211@\306!\205\340\211G\307U\262\262\204\357\310\311\312\313E\"\210\211A\262#\327\"\210\330\315#\262\262\211\306!\205 \211G\307U\262\204\310\311\320\321E\"\210\211C\262D\204'\331\332!\210AA\2050C\241\210\333D\204>\331\332!\210?\205o\304\211\204M\331\332!\210\211@\262\211\203j\211@\316@A$\262A\266\202\202Q\262\262\266\204)\207\302\303\304\305\"\210) \211\211\211:\205\222\211@\306!\205\220\211G\307U\262\262\204\237\310\311\312\313E\"\210\314\315\"\206j\316\317\211\211:\205\275\211@\306!\205\273\211G\307U\262\262\204\312\310\311\312\313E\"\210\211@\262\211\306!\205\331\211G\307U\262\204\346\310\311\320\321E\"\210\322!\211\323\211\306!\205\367\211G\307U\262\204\310\311\320\321E\"\210\211\324H\262!\306!\205\211G\307U\262\204\"\310\311\320\321E\"\210\211<\204/\310\311\325\326E\"\210\324I\266\262\211\211:\205L\211@\306!\205J\211G\307U\262\262\204Y\310\311\312\313E\"\210\211A\262#\327\"\210\330\315#\262\262\211\306!\205w\211G\307U\262\204\204\310\311\320\321E\"\210\211C\262D\204\221\331\332!\210AA\205\232C\241\210\333D\204\250\331\332!\210?\205\331\304\211\204\267\331\332!\210\211@\262\211\203\324\211@\316@A$\262A\266\202\202\273\262\262\207" [chess-game-inhibit-events chess-module-game t chess-display-set-index nil 1 vectorp 75 signal wrong-type-argument chess-ply ply chess-ply-keyword :next-pos apply chess-pos-move chess-pos position vconcat copy-alist 71 list annotations chess-pos-set-preceding-ply chess-ply-set-keyword cl--assertion-failed game setup-game] 18 (#$ . 7590)]) #@16 (fn DISPLAY) (defalias 'chess-display-ply #[257 "\211\211\203r\211q\210\302 \")\207\302 \"\207" [chess-module-game chess-display-index chess-game-ply] 5 (#$ . 9840)]) #@317 Set DISPLAY VARIATION. If INDEX is not specified, this will cause the first ply in the variation to be displayed, with the user able to scroll back and forth through the moves in the variation. Any moves made on the board will extend/change the variation that was passed in. (fn DISPLAY VARIATION &optional INDEX) (defalias 'chess-display-set-variation #[770 "\211\203\200r\211q\210\302\303\304\206'\211\204\305\306!\210\211\211\204#\305\306!\210GS\262\"\210) \2044\305\307!\210AA\205=C\241\210\310D\204K\305\307!\210?\205|\304\211\204Z\305\307!\210\211@\262\211\203w\211@\311@A$\262A\266\202\202^\262\262\266\204)\207\302\303\304\206\236\211\204\221\305\306!\210\211\211\204\232\305\306!\210GS\262\"\210) \204\253\305\307!\210AA\205\264C\241\210\310D\204\302\305\307!\210?\205\363\304\211\204\321\305\307!\210\211@\262\211\203\356\211@\311@A$\262A\266\202\202\325\262\262\207" [chess-game-inhibit-events chess-module-game t chess-display-set-index nil cl--assertion-failed var game setup-game apply] 16 (#$ . 10020)]) #@16 (fn DISPLAY) (defalias 'chess-display-variation #[257 "\211\211\203r\211q\210\211\204\301\302!\210\3038\262)\207\211\204\"\301\302!\210\3038\207" [chess-module-game cl--assertion-failed game 3] 5 (#$ . 11122)]) #@84 Set the game associated with the given DISPLAY. (fn DISPLAY GAME &optional INDEX) (defalias 'chess-display-set-game* #[770 "\211\2032r\211q\210\300\"\210\301\302\206/\211\204\303\304!\210\211\211\204&\303\304!\210\3058\262GS\262\")\207\300\"\210\301\302\206X\211\204F\303\304!\210\211\211\204O\303\304!\210\3058\262GS\262\"\207" [chess-module-set-game* chess-display-set-index nil cl--assertion-failed game 3] 10 (#$ . 11351)]) #@268 Set the given DISPLAY to display the GAME object, optionally at INDEX. This is the function to call to cause a display to view a game. It will also update all of the listening engines and other displays to also view the same game. (fn DISPLAY GAME &optional INDEX) (defalias 'chess-display-set-game #[770 "\211\203r\211q\210\204\302\303!\210\211\204\302\304!\210\211\204%\302\303!\210\211A@\262\2042\302\303!\210\211\204@\211\305=\204@\302\306!\210A\240\210\307C\204P\302\303!\210 ?\205\201\305\211\204_\302\303!\210\211@\262\211\203|\211@\310@A$\262A\266\202\202c\262\262\266\211\204\215\302\303!\210\3118\262\204\232\302\303!\210AA\205\243C\241\210\312D\204\261\302\303!\210 ?\205\342\305\211\204\300\302\303!\210\211@\262\211\203\335\211@\310@A$\262A\266\202\202\304\262\262\266\313\305\206\211\204\363\302\303!\210\211\211\204\374\302\303!\210\3118\262GS\262\")\207\204\302\303!\210\211\204\302\304!\210\211\204$\302\303!\210\211A@\262\2041\302\303!\210\211\204?\211\305=\204?\302\306!\210A\240\210\307C\204O\302\303!\210 ?\205\200\305\211\204^\302\303!\210\211@\262\211\203{\211@\310@A$\262A\266\202\202b\262\262\266\211\204\214\302\303!\210\3118\262\204\231\302\303!\210AA\205\242C\241\210\312D\204\260\302\303!\210 ?\205\341\305\211\204\277\302\303!\210\211@\262\211\203\334\211@\310@A$\262A\266\202\202\303\262\262\266\313\305\206\211\204\362\302\303!\210\211\211\204\373\302\303!\210\3118\262GS\262\"\207" [chess-module-game chess-game-inhibit-events cl--assertion-failed game new-game nil (or tags (eq tags nil)) set-tags apply 3 setup-game chess-display-set-index] 18 (#$ . 11810)]) (defalias 'chess-display-game 'chess-module-game) (defalias 'chess-display-clock-string #[0 "\302\303\"\302\304\"\203\211\204!\305 S\"\306\307\"\262\306\310\"\266\202\205o\211\205o\311\312\313W\203=\314!\313U\203=\315\202>\316\314!\317\245\320\314!!\317\246\313W\203^\314!\313U\203^\315\202_\316\314!\317\245\320\314 !!\317\246&\207" [chess-module-game chess-display-index chess-game-data white-remaining black-remaining chess-game-ply chess-ply-keyword :white :black format "W %s%02d:%02d B %s%02d:%02d " 0 floor "-" "" 60 abs] 12]) #@22 (fn DISPLAY INDEX) (defalias 'chess-display-set-index #[514 "\211\203:r\211q\210\250\203v\302W\204v\211\204\303\304!\210\211\211\204'\303\304!\210\3058\262GS\262V\204v\306D\204@\303\304!\210 ?\205q\307\211\204O\303\304!\210\211@\262\211\203l\211@\310@A$\262A\266\202\202S\262\262\266\202\2028\211\204\200\303\304!\210\211\211\204\211\303\304!\210\3058\262GS\262V\2058\311!\312\313\314\315\316\317\320&\206\364\211\211\211:\205\273\211@\321!\205\271\211G\322U\262\262\204\310\323\324\325\326E\"\210\211@\262\211\321!\205\327\211G\322U\262\204\344\323\324\327\330E\"\210\211\331H\262\211\205\362\312\332\333#\262\262?\2058\334C\204\303\304!\210 ?\2056\307\211\204\303\304!\210\211@\262\211\2031\211@\310@A$\262A\266\202\202\262\262\266\202)\207\250\203\243\302W\204\243\211\204O\303\304!\210\211\211\204X\303\304!\210\3058\262GS\262V\204\243\306D\204q\303\304!\210 ?\205\242\307\211\204\200\303\304!\210\211@\262\211\203\235\211@\310@A$\262A\266\202\202\204\262\262\207\211\204\255\303\304!\210\211\211\204\266\303\304!\210\3058\262GS\262V\205e\311!\312\313\314\315\316\317\320&\206!\211\211\211:\205\350\211@\321!\205\346\211G\322U\262\262\204\365\323\324\325\326E\"\210\211@\262\211\321!\205\211G\322U\262\204\323\324\327\330E\"\210\211\331H\262\211\205\312\332\333#\262\262?\205e\334C\2042\303\304!\210 ?\205c\307\211\204A\303\304!\210\211@\262\211\203^\211@\310@A$\262A\266\202\202E\262\262\266\202\207" [chess-module-game chess-game-inhibit-events 0 cl--assertion-failed game 3 set-index nil apply chess-game-ply chess-ply-any-keyword :drawn :perpetual :repetition :flag-fell :resign :aborted vectorp 75 signal wrong-type-argument chess-ply ply chess-pos position 74 :stalemate :checkmate forward] 13 (#$ . 14142)]) #@22 (fn DISPLAY INDEX) (defalias 'chess-display-set-index* #[514 "\211\203r\211q\210\305U\203\306\307!\202J\310\311V\2034\312\313\"\305U\203-\313\245\2025\313\245T\2025\311!\314\312\313\"\305U\205A\315\316\317 S\"!R\320 \"\211\321\267\202y\306\322!\202\373\306\323!\202\373\306\324!\202\373\306\325!\202\373\306\326!\202\373\306\327!\202\373 \206\327 \204\207\330\331!\210\204\221\330\331!\210\317\"\211\211:\205\251\211@\332!\205\247\211G\333U\262\262\204\266\334\335\336\337E\"\210\211@\266\203\211\332!\205\305\211G\333U\262\204\322\334\335\340\341E\"\210\211\342H\266\203\343\344\203\343\306\345!\202\346\306\346!\"\347\305G\350\203\364\351\202\365\352D$\210\262\262\353 )\207\305U\203\306\307!\202C\310\311V\203-\312\313\"\305U\203&\313\245\202.\313\245T\202.\311!\314\312\313\"\305U\205:\315\316\317 S\"!R\320 \"\211\354\267\202r\306\322!\202\364\306\323!\202\364\306\324!\202\364\306\325!\202\364\306\326!\202\364\306\327!\202\364 \206\320 \204\200\330\331!\210\204\212\330\331!\210\317\"\211\211:\205\242\211@\332!\205\240\211G\333U\262\262\204\257\334\335\336\337E\"\210\211@\266\203\211\332!\205\276\211G\333U\262\204\313\334\335\340\341E\"\210\211\342H\266\203\343\344\203\334\306\345!\202\337\306\346!\"\347\305G\350\203\355\351\202\356\352D$\210\262\262\353 \207" [chess-display-index chess-module-game chess-display-move-text chess-pos-always-white chess-display-side-to-move 0 chess-string mode-start int-to-string 1 mod 2 "." ".." chess-ply-to-algebraic chess-game-ply chess-game-status #s(hash-table size 6 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (:aborted 85 :resign 91 :drawn 97 :checkmate 103 :stalemate 109 :flag-fell 115)) mode-aborted mode-resigned mode-drawn mode-checkmate mode-stalemate mode-flag-fell cl--assertion-failed game vectorp 75 signal wrong-type-argument chess-ply ply chess-pos position 70 format " %s " mode-white mode-black add-text-properties face chess-display-white-face chess-display-black-face force-mode-line-update #s(hash-table size 6 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (:aborted 334 :resign 340 :drawn 346 :checkmate 352 :stalemate 358 :flag-fell 364))] 14 (#$ . 16047)]) #@16 (fn DISPLAY) (defalias 'chess-display-index #[257 "\211\211\203\fr\211q\210)\207\207" [chess-display-index] 3 (#$ . 18348)]) (byte-code "\300\301\302\303#\304\301\305\306#\207" [function-put chess-display-index speed -1 put byte-optimizer byte-compile-inline-expand] 5) #@98 Update the chessboard DISPLAY. POPUP too, if that arg is non-nil. (fn DISPLAY &optional POPUP) (defalias 'chess-display-update #[513 "\211\2035r\211q\210\304\305\306! #\210\2053\n\2053\306\211\211\203*r\211q\210 )\266\202\202- \266\202\2053\302\306!)\207\304\305\306! #\210\205_\n\205_\306\211\211\203Vr\211q\210 )\266\202\202Y \266\202\205_\302\306!\207" [chess-display-event-handler chess-display-perspective chess-display-popup chess-module-leader draw chess-display-position nil] 7 (#$ . 18629)]) #@58 Just redraw the current display. (fn &optional DISPLAY) (defalias 'chess-display-redraw #[256 "\211\211\203r\211q\210`\300 \210\301\302!\210\211b\262)\207`\300 \210\301\302!\210\211b\207" [erase-buffer chess-display-update nil] 5 (#$ . 19154) nil]) #@22 (fn DISPLAY INDEX) (defalias 'chess-display-index-pos #[514 "\211\203br\211q\210\204]\302\303\304\"\305e\306\"\304\2033\307\306\"\211\262\203*I\210\305\306\"\262\202\310H\204G\310 \203Ce\202EdSI\210\311H\204[\311 \203XdS\202YeI\210\266H)\207\204\266\302\303\304\"\305e\306\"\304\203\214\307\306\"\211\262\203\203I\210\305\306\"\262\202p\310H\204\240\310 \203\234e\202\236dSI\210\311H\204\264\311 \203\261dS\202\262eI\210\266H\207" [chess-display-index-positions chess-display-perspective make-vector 64 nil next-single-property-change chess-coord get-text-property 0 63] 8 (#$ . 19413)]) #@428 (Re)draw the square of DISPLAY indicated by INDEX. Optional argument PIECE indicates the piece (or blank) to draw. If it is not provided, `chess-display-position' is consulted. Optional argument POS indicates the buffer position to draw the square at. If that is not provided, `chess-display-index-pos' is called. This function is especially useful to clear a previously set highlight. (fn DISPLAY INDEX &optional PIECE POS) (defalias 'chess-display-draw-square #[1026 "\211\203Xr\211q\210\301\206\302\303\"\206S\304\303!\305!\205(\211G\306U\262\2045\307\310\311\312E\"\210\211\250\203F\211\313Y\203F\211\314X\204N\307\310\315\316E\"\210H\266\202$)\207\301\206c\302\303\"\206\242\304\303!\305!\205w\211G\306U\262\204\204\307\310\311\312E\"\210\211\250\203\225\211\313Y\203\225\211\314X\204\235\307\310\315\316E\"\210H\266\202$\207" [chess-display-event-handler draw-square chess-display-index-pos nil chess-display-position vectorp 75 signal wrong-type-argument chess-pos position 0 63 (integer 0 63) index] 15 (#$ . 20067)]) #@20 (fn DISPLAY PLY) (defalias 'chess-display-paint-move #[514 "\211\203,r\211q\210\203\301 \210\211\211:\205%\211@\302!\205#\211G\303U\262\262\2042\304\305\306\307E\"\210\211@\262\211\211:\205K\211@\302!\205I\211G\303U\262\262\204X\304\305\306\307E\"\210\211A\262\211\203 \211@9\203l\310\262\202\\\211@A@\311\310\312#\210\311\310\313 \314\"\211\205\253\211\302!\205\220\211G\303U\262\204\235\304\305\315\316E\"\210\211\317H\262\203\251\211\202\253\211\227\262\206\351\302!\205\276\211G\303U\262\204\313\304\305\315\316E\"\210\211\250\203\334\211\320Y\203\334\211\321X\204\344\304\305\322\323E\"\210H\266\202#\210\313\324\"\203\311\310\211\302!\205\211G\303U\262\204\304\305\315\316E\"\210\211\325H\262\312#\210\266\211AA\262\202\\\266\205*\326\")\207\2033\301 \210\211\211:\205H\211@\302!\205F\211G\303U\262\262\204U\304\305\306\307E\"\210\211@\262\211\211:\205n\211@\302!\205l\211G\303U\262\262\204{\304\305\306\307E\"\210\211A\262\211\203C\211@9\203\217\310\262\202\211@A@\311\310\312#\210\311\310\313 \314\"\211\205\316\211\302!\205\263\211G\303U\262\204\300\304\305\315\316E\"\210\211\317H\262\203\314\211\202\316\211\227\262\206\f\302!\205\341\211G\303U\262\204\356\304\305\315\316E\"\210\211\250\203\377\211\320Y\203\377\211\321X\204\304\305\322\323E\"\210H\266\202#\210\313\324\"\2039\311\310\211\302!\205$\211G\303U\262\2041\304\305\315\316E\"\210\211\325H\262\312#\210\266\211AA\262\202\266\205M\326\"\207" [chess-display-highlight-last-move chess-display-redraw vectorp 75 signal wrong-type-argument chess-ply ply nil chess-display-draw-square 32 chess-ply-keyword :promote chess-pos position 70 0 63 (integer 0 63) index :en-passant 64 chess-display-highlight-move] 17 (#$ . 21150)]) (chess-message-catalog 'english '((not-your-move . "It is not your turn to move") (game-is-over . "This game is over"))) #@131 Return non-nil if the displayed chessboard reflects an active game. Basically, it means we are playing, not editing or reviewing. (defalias 'chess-display-active-p #[0 "\303\304\"\205\241 \211\204\305\306!\210\211\211\204\305\306!\210\3078\262GS\262U\205\241\211\2040\305\306!\210\310\3078\311\"@\211\205\231\211\312\313\314\315\316\317\320&\206\227\211\211\211:\205^\211@\321!\205\\\211G\322U\262\262\204k\323\324\325\326E\"\210\211@\262\211\321!\205z\211G\322U\262\204\207\323\324\327\330E\"\210\211\331H\262\211\205\225\312\332\333#\262\262\266\202?\205\241\n?\207" [chess-module-game chess-display-index chess-display-edit-mode chess-game-data active cl--assertion-failed game 3 last 2 chess-ply-any-keyword :drawn :perpetual :repetition :flag-fell :resign :aborted vectorp 75 signal wrong-type-argument chess-ply ply chess-pos position 74 :stalemate :checkmate] 11 (#$ . 23129)]) (byte-code "\300\301\302\303#\304\301\305\306#\207" [function-put chess-display-active-p speed -1 put byte-optimizer byte-compile-inline-expand] 5) #@188 Move a piece on DISPLAY, by applying the given PLY. The position of PLY must match the currently displayed position. This adds PLY to the game associated with DISPLAY. (fn DISPLAY PLY) (defalias 'chess-display-move #[514 "\211\203dr\211q\210\305\306\"\203\" \211\204\307\310!\210\211\211\204#\307\310!\210\3118\262GS\262U\203\"\211\2049\307\310!\210\312\3118\313\"@\211\205\242\211\314\315\316\317\320\321\322&\206\240\211\211\211:\205g\211@\323!\205e\211G\324U\262\262\204t\325\326\327\330E\"\210\211@\262\211\323!\205\203\211G\324U\262\204\220\325\326\331\332E\"\210\211\333H\262\211\205\236\314\334\335#\262\262\266\202\204\"\n\204\"\305\306\"\203\"\305\336\"\337\204\300\307\310!\210\204\312\307\310!\210\340\"\211\211:\205\342\211@\323!\205\340\211G\324U\262\262\204\357\325\326\327\330E\"\210\211@\266\203\211\323!\205\376\211G\324U\262\204 \325\326\331\332E\"\210\211\341H\266\203=\204\"\342\337\343\344\345#!\266\202\202b \211\204,\307\310!\210\211\211\2045\307\310!\210\3118\262GS\262U\203\307\211\204K\307\310!\210\312\3118\313\"@\211\205\264\211\314\315\316\317\320\321\322&\206\262\211\211\211:\205y\211@\323!\205w\211G\324U\262\262\204\206\325\326\327\330E\"\210\211@\262\211\323!\205\225\211G\324U\262\204\242\325\326\331\332E\"\210\211\333H\262\211\205\260\314\334\335#\262\262\266\202\203\307\346\337\343\344\345#!\266\202\202b \211\204\321\307\310!\210\211\211\204\332\307\310!\210\3118\262GS\262U\203W\347\350\"\210\351\337\"\210\352\337\211\204\376\307\310!\210\211\211\204\307\310!\210\3118\262GS\262\"\210\353 \210\354C\204 \307\310!\210\f?\205Q\337\211\204/\307\310!\210\211@\262\211\203L\211@\344@A$\262A\266\202\2023\262\262\266\202)\202b\355\337\343\344\345#!\266\202)\207\305\306\"\203y \211\204u\307\310!\210\211\211\204~\307\310!\210\3118\262GS\262U\203y\211\204\224\307\310!\210\312\3118\313\"@\211\205\375\211\314\315\316\317\320\321\322&\206\373\211\211\211:\205\302\211@\323!\205\300\211G\324U\262\262\204\317\325\326\327\330E\"\210\211@\262\211\323!\205\336\211G\324U\262\204\353\325\326\331\332E\"\210\211\333H\262\211\205\371\314\334\335#\262\262\266\202\204y\n\204y\305\306\"\203y\305\336\"\337\204\307\310!\210\204%\307\310!\210\340\"\211\211:\205=\211@\323!\205;\211G\324U\262\262\204J\325\326\327\330E\"\210\211@\266\203\211\323!\205Y\211G\324U\262\204f\325\326\331\332E\"\210\211\341H\266\203=\204y\342\337\343\344\345#!\207 \211\204\203\307\310!\210\211\211\204\214\307\310!\210\3118\262GS\262U\203\211\204\242\307\310!\210\312\3118\313\"@\211\205 \211\314\315\316\317\320\321\322&\206 \211\211\211:\205\320\211@\323!\205\316\211G\324U\262\262\204\335\325\326\327\330E\"\210\211@\262\211\323!\205\354\211G\324U\262\204\371\325\326\331\332E\"\210\211\333H\262\211\205\314\334\335#\262\262\266\202\203\346\337\343\344\345#!\207 \211\204$\307\310!\210\211\211\204-\307\310!\210\3118\262GS\262U\203\250\347\350\"\210\351\337\"\210\352\337\211\204Q\307\310!\210\211\211\204Z\307\310!\210\3118\262GS\262\"\210\353 \210\354C\204s\307\310!\210\f?\205\244\337\211\204\202\307\310!\210\211@\262\211\203\237\211@\344@A$\262A\266\202\202\206\262\262\266\202)\207\355\337\343\344\345#!\207" [chess-module-game chess-display-index chess-display-edit-mode chess-display-handling-event chess-game-inhibit-events chess-game-data active cl--assertion-failed game 3 last 2 chess-ply-any-keyword :drawn :perpetual :repetition :flag-fell :resign :aborted vectorp 75 signal wrong-type-argument chess-ply ply chess-pos position 74 :stalemate :checkmate my-color nil chess-game-ply 70 not-your-move error apply chess-string game-is-over t chess-game-move chess-display-paint-move chess-display-set-index* redisplay post-move cannot-yet-add] 14 (#$ . 24206)]) #@280 Highlight the square at INDEX on the current position. The given highlighting MODE is used, or the default if the style you are displaying with doesn't support that mode. `selected' is a mode that is supported by most displays, and is the default mode. (fn DISPLAY &rest ARGS) (defalias 'chess-display-highlight #[385 "\211\2034r\211q\210\301\211\205.\211@\2119\204\211;\203!\211\262\202'\302#\210A\266\202\202 \262\262)\207\301\211\205Y\211@\2119\204F\211;\203L\211\262\202R\302#\210A\266\202\2026\207" [chess-display-event-handler :selected highlight] 10 (#$ . 28176)]) #@66 Highlight all legal move targets from INDEX. (fn DISPLAY INDEX) (defalias 'chess-display-highlight-legal #[514 "\211\203r\211q\210\300\301\302!\303#\211\205{\211@\304\302\305\211\211:\205.\211@\306!\205,\211G\307U\262\262\204;\310\311\312\313E\"\210\211\211\211:\205P\211@\306!\205N\211G\307U\262\262\204]\310\311\312\313E\"\210\211A\262\211<\205p\211@9?\205p\211A@\266\202#\210A\266\202\202\262)\207\300\301\302!\303#\211\205\361\211@\304\302\305\211\211:\205\244\211@\306!\205\242\211G\307U\262\262\204\261\310\311\312\313E\"\210\211\211\211:\205\306\211@\306!\205\304\211G\307U\262\262\204\323\310\311\312\313E\"\210\211A\262\211<\205\346\211@9?\205\346\211A@\266\202#\210A\266\202\202\206\207" [chess-legal-plies chess-display-position nil :index chess-display-highlight "pale green" vectorp 75 signal wrong-type-argument chess-ply ply] 15 (#$ . 28783)]) #@69 Highlight the last move made in the current game. (fn DISPLAY PLY) (defalias 'chess-display-highlight-move #[514 "\300\301\211\211:\205\211@\302!\205\211G\303U\262\262\204%\304\305\306\307E\"\210\211\211\211:\205:\211@\302!\2058\211G\303U\262\262\204G\304\305\306\307E\"\210\211A\262\211<\205Y\211@9?\205Y\211@\266\202\211\211:\205p\211@\302!\205n\211G\303U\262\262\204}\304\305\306\307E\"\210\211\211\211:\205\222\211@\302!\205\220\211G\303U\262\262\204\237\304\305\306\307E\"\210\211A\262\211<\205\262\211@9?\205\262\211A@\266\202$\207" [chess-display-highlight "medium sea green" vectorp 75 signal wrong-type-argument chess-ply ply] 13 (#$ . 29698)]) #@26 (fn &optional DISPLAY) (defalias 'chess-display-highlight-passed-pawns #[256 "\300\301\302\"\303\304\305!\306\"\304\305!\307\"\"\"\207" [mapc make-closure #[257 "\301\300\302#\207" [V0 chess-display-highlight :selected] 5 "\n\n(fn INDEX)"] append chess-pos-passed-pawns chess-display-position t nil] 8 (#$ . 30398) nil]) #@74 Popup the given DISPLAY, so that it's visible to the user. (fn DISPLAY) (defalias 'chess-display-popup #[257 "\211\211\203r\211q\210\301p!\302 =?\205\303!)\207\301p!\302 =?\205%\303!\207" [chess-display-event-handler get-buffer-window selected-window popup] 4 (#$ . 30732)]) #@74 Popup the given DISPLAY, so that it's visible to the user. (fn DISPLAY) (defalias 'chess-display-enable-popup #[257 "\211\211\203r\211q\210\301\211)\207\301\211\207" [chess-display-popup nil] 4 (#$ . 31021)]) #@74 Popup the given DISPLAY, so that it's visible to the user. (fn DISPLAY) (defalias 'chess-display-disable-popup #[257 "\211\211\203r\211q\210\301\211)\207\301\211\207" [chess-display-popup t] 4 (#$ . 31241)]) #@60 Popup the given DISPLAY, so that it's visible to the user. (defalias 'chess-display-popup-in-window #[0 "\300p!?\205\301 G\302V\203\303\304p!!\207\304p!\207" [get-buffer-window window-list 1 fit-window-to-buffer display-buffer] 3 (#$ . 31460)]) #@116 Popup the given DISPLAY, so that it's visible to the user. (fn HEIGHT WIDTH FONT &optional DISPLAY NO-MINIBUFFER) (defalias 'chess-display-popup-in-frame #[1283 "\300p\301\"\211\203\302!\211\303 =?\205\304!\207\305\306B\307B\310BE\203.\311BB\262\2039\312BB\262\203C\313CB\262\314\315!!\210\316\317 \301\"\207" [get-buffer-window t window-frame selected-frame raise-frame name "*Chessboard*" height width display font minibuffer select-frame make-frame set-window-dedicated-p selected-window] 10 (#$ . 31716)]) (byte-code "\300\301\302\303\304DD\305\306\307%\210\300\310\302\303\311DD\312\306\313%\207" [custom-declare-variable chess-display-interesting-events funcall function #[0 "\300\207" [(set-index)] 1] "Events which will cause a display refresh." :type (repeat symbol) chess-display-momentous-events #[0 "\300\207" [(orient post-undo setup-game pass move resign abort)] 1] "Events that will refresh, and cause 'main' displays to popup.\nThese are displays for which `chess-display-set-main' has been\ncalled." (repeat symbol)] 6) #@143 This display module presents a standard chessboard. See `chess-display-type' for the different kinds of displays. (fn GAME EVENT &rest ARGS) (defalias 'chess-display-handler #[642 "?\205\306=\203\240\307 \210\211\204\310\311!\210\211\211\204 \310\311!\210\3128\262GS\262\313\2044\310\311!\210\314\"\211\211:\205L\211@\315!\205J\211G\316U\262\262\204Y\317\320\321\322E\"\210\211@\266\203\211\315!\205h\211G\316U\262\204u\317\320\323\324E\"\210\211\325H\262\203\203\326\327!\202\206\326\330!\326\331!\211@\332\333 !\334P!\211'\205'\306!\207\335\267\202\316\336\337\"\340\337?#\210\341\313?\"\266\202\316\342\313@\"\210\202\316\336\337\"\341\313\"\266(>\203\342\313\211\204\340\310\311!\210\211\211\204\351\310\311!\210\3128\262GS\262\"\210\343=\203 \344\313@\"\210%\205\345\313!\207\346\313%\"\207)>\205\346\313!\207" [chess-display-handling-event chess-display-index chess-display-side-to-move chess-display-move-text chess-display-perspective chess-display-style initialize chess-display-mode cl--assertion-failed game 3 nil chess-game-ply vectorp 75 signal wrong-type-argument chess-ply ply chess-pos position 70 chess-string mode-white mode-black mode-start intern-soft symbol-name "-handler" #s(hash-table size 3 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (pass 166 set-index 187 orient 196)) chess-game-data my-color chess-game-set-data chess-display-set-perspective* chess-display-set-index* move chess-display-paint-move chess-display-popup chess-display-update chess-display-event-handler chess-display-momentous-events chess-display-interesting-events] 12 (#$ . 32786)]) #@49 The mode map used in read-only display buffers. (defvar chess-display-safe-map (byte-code "\300 \301!\210\302\303\"\210\304\305\306#\210\304\307\306#\210\304\310\311#\210\304\312\313#\210\304\314\306#\210\304\315\316#\210\304\317\320#\210\304\321\316#\210\304\322\323#\210\304\324\325#\210\304\326\323#\210\304\327\330#\210\304\331\332#\210\207" [make-keymap suppress-keymap set-keymap-parent nil define-key [(control 105)] chess-display-invert [tab] [63] describe-mode [76] chess-display-list-buffers [73] [60] chess-display-move-first [44] chess-display-move-backward [(meta 60)] [62] chess-display-move-last [46] chess-display-move-forward [(meta 62)] [(meta 119)] chess-display-kill-board [(control 108)] chess-display-redraw] 5) (#$ . 34467)) #@51 The mode map used in a chessboard display buffer. (defvar chess-display-mode-map (byte-code "\301!\302\303\304#\210\302\305\304#\210\302\306\307#\210\302\310\311#\210\302\312\313#\210\302\314\315#\210\302\316\317#\210\302\320\321#\210\302\322\323#\210\302\324\325#\210\302\326\327#\210\302\330\331#\210\302\332\333#\210\302\334\335#\210\302\336\337#\210\302\340\341#\210\302\342\343#\210\302\344\345#\210\302\346\347#\210\302\350\351#\210\302\352\353#\210\302\354\355#\210\302\356\355#\210\302\357\360#\210\302\361\362#\210\302\363\364#\210\302\365\366#\210\367\211\203\273\211@\302\370!\371#\210A\266\202\202\246\210\302\372\373#\210\302\374\373#\210\302\375\376#\210\302\377\376#\210\302\201@\201A#\210\302\201B\201A#\210\302\201C\201A#\210\302\201D\201A#\210\302\201E\201F#\210\302\201G\201H#\210\302\201I\201H#\210\302\201J\201H#\210\302\201K\201H#\210\302\201L\201H#\210\302\201M\201H#\210\207" [chess-display-safe-map copy-keymap define-key [space] chess-display-pass [32] [63] describe-mode [64] chess-display-remote [65] chess-display-manual-move [(control 99) (control 97)] chess-display-abort [67] chess-display-duplicate [68] chess-display-decline [(control 99) (control 99)] chess-display-force [(control 99) (control 100)] chess-display-draw [69] chess-display-edit-board [70] chess-display-set-from-fen [(control 99) (control 102)] chess-display-call-flag [77] chess-display-match [(control 99) (control 114)] chess-display-resign [82] chess-display-retract [83] chess-display-shuffle [(control 99) (control 116)] chess-display-undo [88] chess-display-quit [89] chess-display-accept [123] chess-display-annotate [34] chess-display-chat [39] [126] chess-display-check-autosave [(control 114)] chess-display-search-backward [(control 115)] chess-display-search-forward [(control 121)] chess-display-yank-board (97 98 99 100 101 102 103 104 49 50 51 52 53 54 55 56 114 110 98 113 107 82 78 66 81 75 111 79 120 61) vector chess-input-shortcut [backspace] chess-input-shortcut-delete "" [(control 109)] chess-display-select-piece [return] [down-mouse-1] chess-display-mouse-select-piece [drag-mouse-1] [down-mouse-2] [drag-mouse-2] [mouse-3] ignore [menu-bar files] undefined [menu-bar edit] [menu-bar options] [menu-bar buffer] [menu-bar tools] [menu-bar help-menu]] 7) (#$ . 35236)) (defvar chess-display-move-menu nil) (byte-code "\204\302\303!\210\304\300 \305\306$\210\303\207" [chess-display-move-menu chess-display-mode-map (lambda (#1=#:def-tmp-var) (defvar chess-display-move-menu #1# #2="")) nil easy-menu-do-define #2# ("History" ["First" chess-display-move-first t] ["Previous" chess-display-move-backward t] ["Next" chess-display-move-forward t] ["Last" chess-display-move-last t])] 5) #@129 A mode for displaying and interacting with a chessboard. The key bindings available in this mode are: \{chess-display-mode-map} (defalias 'chess-display-mode #[0 "\306\307\310\n!\210\311 \210\312\f\313 \314\211\207" [major-mode mode-name chess-display-mode-map buffer-auto-save-file-name chess-display-mode-line-format mode-line-format chess-display-mode "Chessboard" use-local-map buffer-disable-undo nil #[0 "\300\301!\207" [chess-display-position nil] 2] chess-display-move chess-input-position-function chess-input-move-function] 2 (#$ . 38025) nil]) #@52 Invert the perspective of the current chess board. (defalias 'chess-display-invert #[0 "\301\302?\"\207" [chess-display-perspective chess-display-set-perspective nil] 3 (#$ . 38593) nil]) #@61 Send the current board configuration to the user. (fn FEN) (defalias 'chess-display-set-from-fen #[257 "\300\301\302!\"\207" [chess-display-set-position nil chess-fen-to-pos] 5 (#$ . 38788) "sSet from FEN string: "]) #@71 Send the current board configuration to the user. (fn &optional ARG) (defalias 'chess-display-kill-board #[256 "\301\203\302\303\304\"r\211q\210\305\306\"\216\307!\210\310 *\262\202%\311\312\313!\304\"!\207" [chess-module-game kill-new generate-new-buffer " *temp*" t make-closure #[0 "\301\300!\205 \302\300!\207" [V0 buffer-name kill-buffer] 2] chess-game-to-pgn buffer-string chess-pos-to-fen chess-display-position nil] 7 (#$ . 39013) "P"]) #@51 Send the current board configuration to the user. (defalias 'chess-display-yank-board #[0 "p\302\303!\304\305\306\"r\211q\210\307\310\"\216c\210db\210n\203&o\204&\311\312!\210\202eb\210\313\314\315\306#\203\303\224b\210\316 \204@\317\320!\210\211\204H\317\321!\210\211\204R\317\320!\210\211A@\262\204_\317\320!\210\211\204m\211\315=\204m\317\322!\210A\240\210\323C\204}\317\320!\210?\205\256\315\211\204\214\317\320!\210\211@\262\211\203\251\211@\324@A$\262A\266\202\202\220\262\262\266\211\204\272\317\320!\210\3258\262\204\307\317\320!\210AA\205\320C\241\210\326D\204\336\317\320!\210?\205\315\211\204\355\317\320!\210\211@\262\211\203\n\211@\324@A$\262A\266\202\202\361\262\262\266\206\202-\327 \330P!\203 \331\202!\332\333 rq\210!)\266\202*\207" [chess-game-inhibit-events chess-algebraic-regexp current-kill 0 generate-new-buffer " *temp*" t make-closure #[0 "\301\300!\205 \302\300!\207" [V0 buffer-name kill-buffer] 2] delete-char -1 search-forward "[Event " nil chess-pgn-to-game cl--assertion-failed game new-game (or tags (eq tags nil)) set-tags apply 3 setup-game looking-at "$" chess-display-manual-move chess-display-set-from-fen buffer-string] 17 (#$ . 39474) nil]) (defvar chess-display-search-map (byte-code "\301!\302\211\203\211@\303\304!\305#\210A\266\202\202\210\303\306\307#\210\303\310\307#\210\303\311\307#\210\303\312\313#\210\303\314\313#\210\207" [minibuffer-local-map copy-keymap (97 98 99 100 101 102 103 104 49 50 51 52 53 54 55 56 114 110 98 113 107 82 78 66 81 75 111 79 120) define-key vector chess-display-search-key [backspace] chess-display-search-delete [delete] [(control 104)] [(control 114)] chess-display-search-again [(control 115)]] 7)) (defvar chess-display-search-direction nil) (defvar chess-current-display nil) (defvar chess-display-previous-index nil) (byte-code "\300\301!\210\302\303\304\"\207" [make-variable-buffer-local chess-display-previous-index chess-message-catalog english ((san-not-found . "Could not find a matching move"))] 3) #@30 (fn &optional RESET AGAIN) (defalias 'chess-display-search #[512 "\306\307 P\310\211rq\210\203 \202\n\262\203' \203\"\211T\202%\211\311Z\262\3122\233 \203V\211\206R\f\211\204=\313\314!\210\211\211\204F\313\314!\210\3158\262GS\262\211\262W\202Y\211\316Y\203\217\317\f\"\320\321\"\322\211\203|\323\"\203|\324\310T\"\210\325\312\322\"\210)\266 \203\207\326\202\210\327!\262\202+\330\310\331\332\333#!\266\2020)\207" [chess-current-display chess-display-previous-index chess-display-index chess-display-search-direction chess-module-game case-fold-search "\\`" minibuffer-contents nil 2 found cl--assertion-failed game 3 0 chess-game-ply chess-ply-keyword :san t string-match chess-display-set-index throw 1+ 1- san-not-found error apply chess-string] 12 (#$ . 41567) nil]) (defalias 'chess-display-search-again #[0 "\300\301\302\"\207" [chess-display-search nil t] 3 nil nil]) (defalias 'chess-display-search-key #[0 "\300\301!\210\302 \207" [call-interactively self-insert-command chess-display-search] 2 nil nil]) (defalias 'chess-display-search-delete #[0 "\300\301!\210\302\303!\207" [call-interactively delete-backward-char chess-display-search t] 2 nil nil]) #@28 (fn &optional DIRECTION) (defalias 'chess-display-search-backward #[256 "\3051\211p\306\307\310\f#*0\207\210\311\310 \"\207" [chess-display-index chess-display-previous-index chess-current-display chess-display-search-direction chess-display-search-map (quit) read-from-minibuffer "Find algebraic move: " nil chess-display-set-index] 5 (#$ . 42777) nil]) (defalias 'chess-display-search-forward #[0 "\300\301!\207" [chess-display-search-backward t] 2 nil nil]) (chess-message-catalog 'english '((illegal-notation . "Illegal move notation: %s") (want-to-quit . "Do you really want to quit? "))) #@52 Quit the game associated with the current display. (defalias 'chess-display-quit #[0 "\301\211\211\203r\211q\210)\266\202\202\266\202\203\302\303\304!!\205\"\305\301!\207" [chess-module-leader nil yes-or-no-p chess-string want-to-quit chess-module-destroy] 3 (#$ . 43385) nil]) (defalias 'chess-display-annotate #[0 "\302C\204 \303\304!\210 ?\205<\305\211\204\303\304!\210\211@\262\211\2037\211@\306@A$\262A\266\202\202\262\262\207" [chess-module-game chess-game-inhibit-events switch-to-annotations cl--assertion-failed game nil apply] 10 nil nil]) (defalias 'chess-display-chat #[0 "\302C\204 \303\304!\210 ?\205<\305\211\204\303\304!\210\211@\262\211\2037\211@\306@A$\262A\266\202\202\262\262\207" [chess-module-game chess-game-inhibit-events switch-to-chat cl--assertion-failed game nil apply] 10 nil nil]) #@57 Move a piece manually, using chess notation. (fn MOVE) (defalias 'chess-display-manual-move #[257 "\300\301\302!\"\211\204\303C\304\305\306#!\266\307\302\"\207" [chess-algebraic-to-ply chess-display-position nil illegal-notation error apply chess-string chess-display-move] 9 (#$ . 44255) (byte-code "\301\302\303\304\305!\211\306!\205\211G\307U\262\204\310\311\312\313E\"\210\211\314H\262\203*\315\202+\316\2060\317\320\245T#!C\207" [chess-display-index read-string format "%s(%d): " chess-display-position nil vectorp 75 signal wrong-type-argument chess-pos position 70 "White" "Black" 0 2] 9)]) #@16 (fn DISPLAY) (defalias 'chess-display-remote #[257 "\302\303!\210\211\304p\303 #)\207" [chess-images-separate-frame chess-display-perspective require chess-images chess-display-clone] 5 (#$ . 44880) "sDisplay this game on X server: "]) #@14 (fn STYLE) (defalias 'chess-display-duplicate #[257 "\301p\302!#\207" [chess-display-perspective chess-display-clone intern-soft] 5 (#$ . 45125) (byte-code "\300\301\302!PC\207" ["chess-" read-from-minibuffer "Create new display using style: "] 3)]) #@64 Pass the move to your opponent. Only valid on the first move. (defalias 'chess-display-pass #[0 "\304\305\"\203\337 \211\204\306\307!\210\211\211\204\306\307!\210\3108\262GS\262U\203\337\211\2040\306\307!\210\311\3108\312\"@\211\205\231\211\313\314\315\316\317\320\321&\206\227\211\211\211:\205^\211@\322!\205\\\211G\323U\262\262\204k\324\325\326\327E\"\210\211@\262\211\322!\205z\211G\323U\262\204\207\324\325\330\331E\"\210\211\332H\262\211\205\225\313\333\334#\262\262\266\202\204\337\n\204\337\335C\204\255\306\307!\210 ?\205\336\336\211\204\274\306\307!\210\211@\262\211\203\331\211@\337@A$\262A\266\202\202\300\262\262\207\340 \207" [chess-module-game chess-display-index chess-display-edit-mode chess-game-inhibit-events chess-game-data active cl--assertion-failed game 3 last 2 chess-ply-any-keyword :drawn :perpetual :repetition :flag-fell :resign :aborted vectorp 75 signal wrong-type-argument chess-ply ply chess-pos position 74 :stalemate :checkmate pass nil apply ding] 11 (#$ . 45385) nil]) #@39 Generate a shuffled opening position. (defalias 'chess-display-shuffle #[0 "\304\305!\210\306\307\"\2031 \211\204\310\311!\210\211\211\204\310\311!\210\3128\262GS\262U\2031\211\2044\310\311!\210\313\3128\314\"@\211\205\235\211\315\316\317\320\321\322\323&\206\233\211\211\211:\205b\211@\324!\205`\211G\325U\262\262\204o\326\327\330\331E\"\210\211@\262\211\324!\205~\211G\325U\262\204\213\326\327\332\333E\"\210\211\334H\262\211\205\231\315\335\336#\262\262\266\202\2041\n\2041 \337U\2031\340 \204\267\310\311!\210\324!\204\301\310\341!\210\211\324!\205\316\211G\325U\262\204\333\326\327\332\333E\"\210\211C\262C\204\350\310\311!\210AA\205\361C\241\210\342D\204\377\310\311!\210 ?\2050\343\211\204\310\311!\210\211@\262\211\203+\211@\344@A$\262A\266\202\202\262\262\207\345 \207" [chess-module-game chess-display-index chess-display-edit-mode chess-game-inhibit-events require chess-random chess-game-data active cl--assertion-failed game 3 last 2 chess-ply-any-keyword :drawn :perpetual :repetition :flag-fell :resign :aborted vectorp 75 signal wrong-type-argument chess-ply ply chess-pos position 74 :stalemate :checkmate 0 chess-fischer-random-position (vectorp position) setup-game nil apply ding] 14 (#$ . 46455) nil]) #@44 Request a match with any listening engine. (defalias 'chess-display-match #[0 "\302C\204 \303\304!\210 ?\205<\305\211\204\303\304!\210\211@\262\211\2037\211@\306@A$\262A\266\202\202\262\262\207" [chess-module-game chess-game-inhibit-events match cl--assertion-failed game nil apply] 10 (#$ . 47765) nil]) (defalias 'chess-display-accept #[0 "\304\305\"\203\337 \211\204\306\307!\210\211\211\204\306\307!\210\3108\262GS\262U\203\337\211\2040\306\307!\210\311\3108\312\"@\211\205\231\211\313\314\315\316\317\320\321&\206\227\211\211\211:\205^\211@\322!\205\\\211G\323U\262\262\204k\324\325\326\327E\"\210\211@\262\211\322!\205z\211G\323U\262\204\207\324\325\330\331E\"\210\211\332H\262\211\205\225\313\333\334#\262\262\266\202\204\337\n\204\337\335C\204\255\306\307!\210 ?\205\336\336\211\204\274\306\307!\210\211@\262\211\203\331\211@\337@A$\262A\266\202\202\300\262\262\207\340 \207" [chess-module-game chess-display-index chess-display-edit-mode chess-game-inhibit-events chess-game-data active cl--assertion-failed game 3 last 2 chess-ply-any-keyword :drawn :perpetual :repetition :flag-fell :resign :aborted vectorp 75 signal wrong-type-argument chess-ply ply chess-pos position 74 :stalemate :checkmate accept nil apply ding] 11 nil nil]) (defalias 'chess-display-decline #[0 "\304\305\"\203\337 \211\204\306\307!\210\211\211\204\306\307!\210\3108\262GS\262U\203\337\211\2040\306\307!\210\311\3108\312\"@\211\205\231\211\313\314\315\316\317\320\321&\206\227\211\211\211:\205^\211@\322!\205\\\211G\323U\262\262\204k\324\325\326\327E\"\210\211@\262\211\322!\205z\211G\323U\262\204\207\324\325\330\331E\"\210\211\332H\262\211\205\225\313\333\334#\262\262\266\202\204\337\n\204\337\335C\204\255\306\307!\210 ?\205\336\336\211\204\274\306\307!\210\211@\262\211\203\331\211@\337@A$\262A\266\202\202\300\262\262\207\340 \207" [chess-module-game chess-display-index chess-display-edit-mode chess-game-inhibit-events chess-game-data active cl--assertion-failed game 3 last 2 chess-ply-any-keyword :drawn :perpetual :repetition :flag-fell :resign :aborted vectorp 75 signal wrong-type-argument chess-ply ply chess-pos position 74 :stalemate :checkmate decline nil apply ding] 11 nil nil]) (defalias 'chess-display-retract #[0 "\304\305\"\203\337 \211\204\306\307!\210\211\211\204\306\307!\210\3108\262GS\262U\203\337\211\2040\306\307!\210\311\3108\312\"@\211\205\231\211\313\314\315\316\317\320\321&\206\227\211\211\211:\205^\211@\322!\205\\\211G\323U\262\262\204k\324\325\326\327E\"\210\211@\262\211\322!\205z\211G\323U\262\204\207\324\325\330\331E\"\210\211\332H\262\211\205\225\313\333\334#\262\262\266\202\204\337\n\204\337\335C\204\255\306\307!\210 ?\205\336\336\211\204\274\306\307!\210\211@\262\211\203\331\211@\337@A$\262A\266\202\202\300\262\262\207\340 \207" [chess-module-game chess-display-index chess-display-edit-mode chess-game-inhibit-events chess-game-data active cl--assertion-failed game 3 last 2 chess-ply-any-keyword :drawn :perpetual :repetition :flag-fell :resign :aborted vectorp 75 signal wrong-type-argument chess-ply ply chess-pos position 74 :stalemate :checkmate retract nil apply ding] 11 nil nil]) (defalias 'chess-display-call-flag #[0 "\304\305\"\203\337 \211\204\306\307!\210\211\211\204\306\307!\210\3108\262GS\262U\203\337\211\2040\306\307!\210\311\3108\312\"@\211\205\231\211\313\314\315\316\317\320\321&\206\227\211\211\211:\205^\211@\322!\205\\\211G\323U\262\262\204k\324\325\326\327E\"\210\211@\262\211\322!\205z\211G\323U\262\204\207\324\325\330\331E\"\210\211\332H\262\211\205\225\313\333\334#\262\262\266\202\204\337\n\204\337\335C\204\255\306\307!\210 ?\205\336\336\211\204\274\306\307!\210\211@\262\211\203\331\211@\337@A$\262A\266\202\202\300\262\262\207\340 \207" [chess-module-game chess-display-index chess-display-edit-mode chess-game-inhibit-events chess-game-data active cl--assertion-failed game 3 last 2 chess-ply-any-keyword :drawn :perpetual :repetition :flag-fell :resign :aborted vectorp 75 signal wrong-type-argument chess-ply ply chess-pos position 74 :stalemate :checkmate call-flag nil apply ding] 11 nil nil]) (defalias 'chess-display-force #[0 "\304\305\"\203\337 \211\204\306\307!\210\211\211\204\306\307!\210\3108\262GS\262U\203\337\211\2040\306\307!\210\311\3108\312\"@\211\205\231\211\313\314\315\316\317\320\321&\206\227\211\211\211:\205^\211@\322!\205\\\211G\323U\262\262\204k\324\325\326\327E\"\210\211@\262\211\322!\205z\211G\323U\262\204\207\324\325\330\331E\"\210\211\332H\262\211\205\225\313\333\334#\262\262\266\202\204\337\n\204\337\335C\204\255\306\307!\210 ?\205\336\336\211\204\274\306\307!\210\211@\262\211\203\331\211@\337@A$\262A\266\202\202\300\262\262\207\340 \207" [chess-module-game chess-display-index chess-display-edit-mode chess-game-inhibit-events chess-game-data active cl--assertion-failed game 3 last 2 chess-ply-any-keyword :drawn :perpetual :repetition :flag-fell :resign :aborted vectorp 75 signal wrong-type-argument chess-ply ply chess-pos position 74 :stalemate :checkmate force nil apply ding] 11 nil nil]) (defalias 'chess-display-check-autosave #[0 "\304\305\"\203\337 \211\204\306\307!\210\211\211\204\306\307!\210\3108\262GS\262U\203\337\211\2040\306\307!\210\311\3108\312\"@\211\205\231\211\313\314\315\316\317\320\321&\206\227\211\211\211:\205^\211@\322!\205\\\211G\323U\262\262\204k\324\325\326\327E\"\210\211@\262\211\322!\205z\211G\323U\262\204\207\324\325\330\331E\"\210\211\332H\262\211\205\225\313\333\334#\262\262\266\202\204\337\n\204\337\335C\204\255\306\307!\210 ?\205\336\336\211\204\274\306\307!\210\211@\262\211\203\331\211@\337@A$\262A\266\202\202\300\262\262\207\340 \207" [chess-module-game chess-display-index chess-display-edit-mode chess-game-inhibit-events chess-game-data active cl--assertion-failed game 3 last 2 chess-ply-any-keyword :drawn :perpetual :repetition :flag-fell :resign :aborted vectorp 75 signal wrong-type-argument chess-ply ply chess-pos position 74 :stalemate :checkmate check-autosave nil apply ding] 11 nil nil]) #@26 Resign the current game. (defalias 'chess-display-resign #[0 "\303\304\"\203\335 \211\204\305\306!\210\211\211\204\305\306!\210\3078\262GS\262U\203\335\211\2040\305\306!\210\310\3078\311\"@\211\205\231\211\312\313\314\315\316\317\320&\206\227\211\211\211:\205^\211@\321!\205\\\211G\322U\262\262\204k\323\324\325\326E\"\210\211@\262\211\321!\205z\211G\322U\262\204\207\323\324\327\330E\"\210\211\331H\262\211\205\225\312\332\333#\262\262\266\202\204\335\n\204\335\317\334\211\335\204\260\305\306!\210\336\"\211\211:\205\310\211@\321!\205\306\211G\322U\262\262\204\325\323\324\325\326E\"\210\211@\266\203D\"\207\337 \207" [chess-module-game chess-display-index chess-display-edit-mode chess-game-data active cl--assertion-failed game 3 last 2 chess-ply-any-keyword :drawn :perpetual :repetition :flag-fell :resign :aborted vectorp 75 signal wrong-type-argument chess-ply ply chess-pos position 74 :stalemate :checkmate chess-game-move nil chess-game-ply ding] 12 (#$ . 54098) nil]) #@25 Abort the current game. (defalias 'chess-display-abort #[0 "\304\305\"\203\337 \211\204\306\307!\210\211\211\204\306\307!\210\3108\262GS\262U\203\337\211\2040\306\307!\210\311\3108\312\"@\211\205\231\211\313\314\315\316\317\320\321&\206\227\211\211\211:\205^\211@\322!\205\\\211G\323U\262\262\204k\324\325\326\327E\"\210\211@\262\211\322!\205z\211G\323U\262\204\207\324\325\330\331E\"\210\211\332H\262\211\205\225\313\333\334#\262\262\266\202\204\337\n\204\337\335C\204\255\306\307!\210 ?\205\336\336\211\204\274\306\307!\210\211@\262\211\203\331\211@\337@A$\262A\266\202\202\300\262\262\207\340 \207" [chess-module-game chess-display-index chess-display-edit-mode chess-game-inhibit-events chess-game-data active cl--assertion-failed game 3 last 2 chess-ply-any-keyword :drawn :perpetual :repetition :flag-fell :resign :aborted vectorp 75 signal wrong-type-argument chess-ply ply chess-pos position 74 :stalemate :checkmate abort nil apply ding] 11 (#$ . 55136) nil]) (chess-message-catalog 'english '((draw-offer . "You offer a draw"))) #@33 Offer to draw the current game. (defalias 'chess-display-draw #[0 "\304\305\"\203\352 \211\204\306\307!\210\211\211\204\306\307!\210\3108\262GS\262U\203\352\211\2040\306\307!\210\311\3108\312\"@\211\205\231\211\313\314\315\316\317\320\321&\206\227\211\211\211:\205^\211@\322!\205\\\211G\323U\262\262\204k\324\325\326\327E\"\210\211@\262\211\322!\205z\211G\323U\262\204\207\324\325\330\331E\"\210\211\332H\262\211\205\225\313\333\334#\262\262\266\202\204\352\n\204\352\335\336\337\340\341#!\266\342C\204\270\306\307!\210 ?\205\351\336\211\204\307\306\307!\210\211@\262\211\203\344\211@\340@A$\262A\266\202\202\313\262\262\207\343 \207" [chess-module-game chess-display-index chess-display-edit-mode chess-game-inhibit-events chess-game-data active cl--assertion-failed game 3 last 2 chess-ply-any-keyword :drawn :perpetual :repetition :flag-fell :resign :aborted vectorp 75 signal wrong-type-argument chess-ply ply chess-pos position 74 :stalemate :checkmate draw-offer nil message apply chess-string draw ding] 11 (#$ . 56239) nil]) #@37 Abort the current game. (fn COUNT) (defalias 'chess-display-undo #[257 "\304\305\"\203 \211\204\306\307!\210\211\211\204\306\307!\210\3108\262GS\262U\203\211\2040\306\307!\210\311\3108\312\"@\211\205\231\211\313\314\315\316\317\320\321&\206\227\211\211\211:\205^\211@\322!\205\\\211G\323U\262\262\204k\324\325\326\327E\"\210\211@\262\211\322!\205z\211G\323U\262\204\207\324\325\330\331E\"\210\211\332H\262\211\205\225\313\333\334#\262\262\266\202\204\n\204\211\203\254\335!\202\331\336\337!\211\322!\205\272\211G\323U\262\204\307\324\325\330\331E\"\210\211\340H\262\304\341\"=\203\330\312\202\331\342\262\343D\204\347\306\307!\210 ?\205\337\211\204\366\306\307!\210\211@\262\211\203\211@\344@A$\262A\266\202\202\372\262\262\207\345 \207" [chess-module-game chess-display-index chess-display-edit-mode chess-game-inhibit-events chess-game-data active cl--assertion-failed game 3 last 2 chess-ply-any-keyword :drawn :perpetual :repetition :flag-fell :resign :aborted vectorp 75 signal wrong-type-argument chess-ply ply chess-pos position 74 :stalemate :checkmate prefix-numeric-value chess-display-position nil 70 my-color 1 undo apply ding] 12 (#$ . 57339) "P"]) #@58 List all buffers related to this display's current game. (defalias 'chess-display-list-buffers #[0 "\302 \303\"\304\305\"\306K\304\307\"\216\306M\210\310!)\207" [chess-module-game ctl-x-map lookup-key [(control 98)] make-closure #[256 "\301\302\303\304\300\211\204 \305\306!\210\211@\262\"\"\207" [V0 delq nil mapcar #[257 "\300A!\205\301A!\205\211A\207" [bufferp buffer-live-p] 3 "\n\n(fn CELL)"] cl--assertion-failed game] 8 "\n\n(fn &optional FRAME)"] buffer-list #[0 "\301\300M\207" [V0 buffer-list] 2] call-interactively] 7 (#$ . 58586) nil]) (chess-message-catalog 'english '((return-to-current . "Use '>' to return to the current position"))) #@144 Change the currently displayed board. Direction may be - or +, to move forward or back, or t or nil to jump to the end or beginning. (fn DIR) (defalias 'chess-display-set-current #[257 "\211\303\267\202S\202T\202\304\202\305\202\304\306\304\206: \211\204(\307\310!\210\211\211\2041\307\310!\210\3118\262GS\262\"\210\312 \313\"\205\335 \211\204M\307\310!\210\211\211\204V\307\310!\210\3118\262GS\262U\205\335 \211\204l\307\310!\210\314\3118\315\"@\211\205\325\211\316\317\320\321\322\323\324&\206\323\211\211\211:\205\232\211@\325!\205\230\211G\326U\262\262\204\247\327\330\331\332E\"\210\211@\262\211\325!\205\266\211G\326U\262\204\303\327\330\333\334E\"\210\211\335H\262\211\205\321\316\336\337#\262\262\266\202?\205\335\n??\205\354\340\304\341\342\343#!\266\202\207" [chess-display-index chess-module-game chess-display-edit-mode #s(hash-table size 4 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (45 6 43 11 t 16 nil 20)) nil 0 chess-display-set-index cl--assertion-failed game 3 chess-game-data active last 2 chess-ply-any-keyword :drawn :perpetual :repetition :flag-fell :resign :aborted vectorp 75 signal wrong-type-argument chess-ply ply chess-pos position 74 :stalemate :checkmate return-to-current message apply chess-string] 13 (#$ . 59256)]) (defalias 'chess-display-move-backward #[0 "\300\301!\207" [chess-display-set-current 45] 2 nil nil]) (defalias 'chess-display-move-forward #[0 "\300\301!\207" [chess-display-set-current 43] 2 nil nil]) (defalias 'chess-display-move-first #[0 "\300\301!\207" [chess-display-set-current nil] 2 nil nil]) (defalias 'chess-display-move-last #[0 "\300\301!\207" [chess-display-set-current t] 2 nil nil]) #@54 The mode map used for editing a chessboard position. (defvar chess-display-edit-mode-map (byte-code "\300 \301!\210\302\303\304#\210\302\305\306#\210\302\307\306#\210\302\310\311#\210\302\312\313#\210\302\314\306#\210\302\315\316#\210\302\317\320#\210\302\321\322#\210\302\323\324#\210\325\211\203W\302\326@!\327#\210\211A\262\202C\210\302\330\331#\210\302\332\331#\210\302\333\334#\210\302\335\334#\210\302\336\334#\210\302\337\334#\210\207" [make-keymap suppress-keymap define-key [(control 108)] chess-display-redraw [(control 105)] chess-display-invert " " [63] describe-mode [76] chess-display-list-buffers [73] [67] chess-display-clear-board [71] chess-display-restore-board [83] chess-display-send-board [88] chess-display-quit (32 112 114 110 98 113 107 80 82 78 66 81 75) vector chess-display-set-piece [down-mouse-1] chess-display-mouse-select-piece [drag-mouse-1] [mouse-2] chess-display-mouse-set-piece [down-mouse-2] [mouse-3] [down-mouse-3]] 6) (#$ . 60989)) (chess-message-catalog 'english '((editing-directly . "Now editing position directly, use S when complete...") (clear-chessboard-q . "Really clear the chessboard? "))) #@38 Setup the current board for editing. (defalias 'chess-display-edit-board #[0 "\305\306!\211\307!\205\211G\310U\262\204\311\312\313\314E\"\210\315!\211\316\211\307!\205,\211G\310U\262\2049\311\312\313\314E\"\210\211\317H\262!\307!\205J\211G\310U\262\204W\311\312\313\314E\"\210\211<\204d\311\312\320\321E\"\210\317I\266\262\322\323\324!\325 \210\326 !\210\f\327!\210\330\306\331\332\323#!\207" [chess-display-edit-position chess-display-edit-mode chess-display-side-to-move chess-display-edit-mode-map chess-display-event-handler chess-display-position nil vectorp 75 signal wrong-type-argument chess-pos position vconcat copy-alist 71 list annotations t chess-string mode-edit force-mode-line-update use-local-map start-edit editing-directly message apply] 10 (#$ . 62158) nil]) (defalias 'chess-display-end-edit-mode #[0 "\303 \304!\210\305\n!\207" [chess-display-edit-mode chess-display-event-handler chess-display-mode-map nil end-edit use-local-map] 2]) #@51 Send the current board configuration to the user. (defalias 'chess-display-send-board #[0 "\303 \210 \204 \304\305!\210\306!\204\304\307!\210\211\306!\205$\211G\310U\262\2041\311\312\313\314E\"\210\211C\262C\204>\304\305!\210AA\205GC\241\210\315D\204U\304\305!\210\n?\205\206\316\211\204d\304\305!\210\211@\262\211\203\201\211@\317@A$\262A\266\202\202h\262\262\207" [chess-module-game chess-display-edit-position chess-game-inhibit-events chess-display-end-edit-mode cl--assertion-failed game vectorp (vectorp position) 75 signal wrong-type-argument chess-pos position setup-game nil apply] 14 (#$ . 63155) nil]) #@17 Cancel editing. (defalias 'chess-display-restore-board #[0 "\301 \210\302\303\"\210\304\303!\207" [chess-display-index chess-display-end-edit-mode chess-display-set-index* nil chess-display-update] 3 (#$ . 63815) nil]) #@38 Setup the current board for editing. (defalias 'chess-display-clear-board #[0 "\300\301\302!!\205\326\303\304!\305\306\211W\203\321\211\305\306\211W\203\310\211B\307\310!\205.\211G\311U\262\204;\312\313\314\315E\"\210\250\203L\306Y\203L\316X\204T\312\313\317\320E\"\210\211\321>\204b\312\313\322\323E\"\210I\210\211\324>\205\277\325W\310!\205}\211G\311U\262\204\212\312\313\314\315E\"\210\326>\204\230\312\313\327\330E\"\210\211\250\203\251\211\306Y\203\251\211\316X\204\261\312\313\331\320E\"\210\203\272\332\202\273\333I\266\203\266\211T\262\202\266\211T\262\202 \266\334\304!\207" [y-or-n-p chess-string clear-chessboard-q chess-display-position nil 8 0 32 vectorp 75 signal wrong-type-argument chess-pos position 63 (integer 0 63) index #1=(32 75 81 78 66 82 80 107 113 110 98 114 112) (member . #1#) piece (75 107) 97 #2=(nil t) (member . #2#) color (integer 0 63) 72 73 chess-display-update] 18 (#$ . 64041) nil]) #@91 Set the piece under point to command character, or space for clear. (fn &optional PIECE) (defalias 'chess-display-set-piece #[256 "\211\203\n\302!\205\277\303`\304\"\206 \305!\205 \211G\306U\262\204-\307\310\311\312E\"\210\250\203>\313Y\203>\314X\204F\307\310\315\316E\"\210\211\317>\204T\307\310\320\321E\"\210I\210\211\322>\205\261\323W\305!\205o\211G\306U\262\204|\307\310\311\312E\"\210\324>\204\212\307\310\325\326E\"\210\211\250\203\233\211\313Y\203\233\211\314X\204\243\307\310\327\316E\"\210\203\254\330\202\255\331I\266\203\266\332\333\206\273 `$\262\207" [chess-display-edit-position last-command-event characterp get-text-property chess-coord vectorp 75 signal wrong-type-argument chess-pos position 0 63 (integer 0 63) index #1=(32 75 81 78 66 82 80 107 113 110 98 114 112) (member . #1#) piece (75 107) 97 #2=(nil t) (member . #2#) color (integer 0 63) 72 73 chess-display-draw-square nil] 13 (#$ . 65024) nil]) #@51 Select the piece the user clicked on. (fn EVENT) (defalias 'chess-display-mouse-set-piece #[257 "\300\301!\211@\262!q\210\302\301!!b\210\211@\303>\203\304\202\305\306\307\310\"!\207" [window-buffer event-start posn-point (down-mouse-3 mouse-3) ("Set black piece" ("Pieces" ("Pawn" . 112) ("Knight" . 110) ("Bishop" . 98) ("Queen" . 113) ("King" . 107))) ("Set white piece" ("Pieces" ("Pawn" . 80) ("Knight" . 78) ("Bishop" . 66) ("Queen" . 81) ("King" . 75))) chess-display-set-piece x-popup-menu t] 6 (#$ . 66009) "e"]) (defvar chess-display-last-selected nil) (byte-code "\300\301!\210\302\303\304\"\207" [make-variable-buffer-local chess-display-last-selected chess-message-catalog english ((cannot-mount . "You cannot move pieces on top of each other") (move-not-legal . "That is not a legal move") (not-your-move . "It is not your turn to move") (wrong-color . "You cannot move your opponent's pieces") (selected-empty . "You cannot select an empty square") (piece-immobile . "That piece cannot move now"))] 3) #@108 Select the piece under the cursor. Clicking once on a piece selects it; then click on the target location. (defalias 'chess-display-select-piece #[0 "\306`\307\"\310\311!\311\205\230\3122H\203\243`@U\203` \313@A\314!\205.\211G\315U\262\204;\316\317\320\321E\"\210\211\250\203L\211\322Y\203L\211\323X\204T\316\317\324\325E\"\210H\266\202A$\210\202tA\314!\205n\211G\315U\262\204{\316\317\320\321E\"\210\211\250\203\214\211\322Y\203\214\211\323X\204\224\316\317\324\325E\"\210H\266\202\314!\205\246\211G\315U\262\204\263\316\317\320\321E\"\210\211\250\203\304\211\322Y\203\304\211\323X\204\314\316\317\324\325E\"\210H\266\202\311\n\203\"A\326\314!\205\345\211G\315U\262\204\362\316\317\320\321E\"\210\250\203\322Y\203\323X\204 \316\317\327\325E\"\210\211\330>\204\316\317\331\332E\"\210I\210\211\333>\205v\334W\314!\2054\211G\315U\262\204A\316\317\320\321E\"\210\335>\204O\316\317\336\337E\"\210\211\250\203`\211\322Y\203`\211\323X\204h\316\317\340\325E\"\210\203q\341\202r\342I\266\203\266\314!\205\207\211G\315U\262\204\224\316\317\320\321E\"\210\250\203\245\322Y\203\245\323X\204\255\316\317\327\325E\"\210\211\330>\204\273\316\317\331\332E\"\210I\210\211\333>\205\334W\314!\205\326\211G\315U\262\204\343\316\317\320\321E\"\210\335>\204\361\316\317\336\337E\"\210\211\250\203\211\322Y\203\211\323X\204\n\316\317\340\325E\"\210\203\341\202\342I\266\203\266\343\311!\266\202t\326U\204G\334W\2034\334W\204@\334V\203G\334V\203G\344\312\345\346!\"\210\347\311A\n$\211\262\204^\344\312\345\350!\"\210\3511l\352\311\"0\266\202t\344\312\353!\"\266 \203\233\354\355\356\357A#\"\211\203\232\211@\211U\204\223\360\311\"\210A\266\202\202\201\210\311\211\262\202G\314!\205\260\211G\315U\262\204\275\316\317\320\321E\"\210\211\250\203\316\211\322Y\203\316\211\323X\204\326\316\317\324\325E\"\210H\266\202\211\326U\203\353\344\312\345\361!\"\210\202-\n\204\321\362\f\363\"\203\321 \f\211\204\364\365!\210\211\211\204 \364\365!\210\3668\262GS\262U\203\321\f\211\204\364\365!\210\367\3668\370\"@\211\205\222\211\371\372\373\374\375\376\377&\206\220\211\211\211:\205M\211@\314!\205K\211G\315U\262\262\204^\316\317\201@\201AE\"\210\211@\262\211\314!\205m\211G\315U\262\204z\316\317\320\321E\"\210\211\201BH\262\211\205\216\371\201C\201D#\262\262\266\202\204\321\n\204\321\211\314!\205\247\211G\315U\262\204\264\316\317\320\321E\"\210\211\201EH\262\362\f\201F\"=\204\321\344\312\345\201G!\"\210\202-\n\204\211\314!\205\341\211G\315U\262\204\356\316\317\320\321E\"\210\211\201EH\262\203\376\211\334V\202\211\334W\203\344\312\345\201H!\"\210\202-\n\204- \203-\356\201I\357$\204-\344\312\345\201J!\"\210`B\201K\311\"\210\n?\205E \205E\303\311\"\2620\262\211\205\230\203\225 \313@A\314!\205d\211G\315U\262\204q\316\317\320\321E\"\210\211\250\203\202\211\322Y\203\202\211\323X\204\212\316\317\324\325E\"\210H\266\202A$\210\311\312!\207" [chess-display-last-selected chess-display-event-handler chess-display-edit-mode chess-display-highlight-legal chess-module-game chess-display-index get-text-property chess-coord chess-display-position nil message draw-square vectorp 75 signal wrong-type-argument chess-pos position 0 63 (integer 0 63) index 32 (integer 0 63) #1=(32 75 81 78 66 82 80 107 113 110 98 114 112) (member . #1#) piece (75 107) 97 #2=(nil t) (member . #2#) color (integer 0 63) 72 73 chess-display-update throw chess-string cannot-mount chess-ply-create move-not-legal (error) chess-display-move error-message-string mapcar chess-ply-target chess-legal-plies :index chess-display-draw-square selected-empty chess-game-data active cl--assertion-failed game 3 last 2 chess-ply-any-keyword :drawn :perpetual :repetition :flag-fell :resign :aborted chess-ply ply 74 :stalemate :checkmate 70 my-color not-your-move wrong-color :any piece-immobile chess-display-highlight] 18 (#$ . 67041) nil]) #@51 Select the piece the user clicked on. (fn EVENT) (defalias 'chess-display-mouse-select-piece #[257 "\300\301!\211@\262!q\210\302\301!!b\210\303 \207" [window-buffer event-end posn-point chess-display-select-piece] 4 (#$ . 71138) "e"]) (defvar chess-display-face-cache '((t . t))) #@14 (fn COLOR) (defalias 'chess-display-get-face #[257 "\301\"A\206\302\303!\304\305\306$\210\307\300B\"\210\211\262\207" [chess-display-face-cache assoc make-face chess-display-highlight set-face-attribute nil :background add-to-list] 7 (#$ . 71428)]) (provide 'chess-display)