;ELC ;;; Compiled ;;; in Emacs version 28.0.50 ;;; with all optimizations. (byte-code "\300\301!\210\302\303\304\305\306\301%\210\307\310\311\312#\210\307\313\314\315#\210\307\316\317\320#\210\321\322\323\324\325DD\326\327\324%\210\321\330\323\324\331DD\332\327\333%\207" [require chess-display custom-declare-group chess-ics1 nil "The ICS1 style ASCII display." :group custom-declare-face chess-ics1-black-face ((((class color) (background light)) (:foreground "Green")) (((class color) (background dark)) (:foreground "Green")) (t (:bold t))) "The face used for black pieces on the ASCII display." chess-ics1-white-face ((((class color) (background light)) (:foreground "Yellow")) (((class color) (background dark)) (:foreground "Yellow")) (t (:bold t))) "The face used for white pieces on the ASCII display." chess-ics1-highlight-face ((((class color) (background light)) (:background "#add8e6")) (((class color) (background dark)) (:background "#add8e6"))) "Face to use for highlighting pieces that have been selected." custom-declare-variable chess-ics1-popup-function funcall function #[0 "\300\207" [chess-ics1-popup] 1] "The function used to popup a chess-ics1 display." :type chess-ics1-separate-frame #[0 "\300\207" [nil] 1] "If non-nil, display the chessboard in its own frame." boolean] 6) #@25 (fn EVENT &rest ARGS) (defalias 'chess-ics1-handler #[385 "\301\267\202\302\207 \207\303\304\"\207\303\305\"\207\303\306\"\207\307\207" [chess-ics1-popup-function #s(hash-table size 5 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (initialize 6 popup 8 draw 11 draw-square 16 highlight 21)) t apply chess-ics1-draw chess-ics1-draw-square chess-ics1-highlight nil] 5 (#$ . 1314)]) (defalias 'chess-ics1-popup #[0 "\203\f\301\302\303\304\211\305%\207\306 \207" [chess-ics1-separate-frame chess-display-popup-in-frame 21 43 nil t chess-display-popup-in-window] 6]) #@14 (fn PIECE) (defalias 'chess-ics1-piece-text #[257 "\300!\301\302\303\304\305V\203\306\202\307D$\210\207" [char-to-string add-text-properties 0 1 face 97 chess-ics1-black-face chess-ics1-white-face] 8 (#$ . 1910)]) (byte-code "\300\301\302\303#\304\301\305\306#\207" [function-put chess-ics1-piece-text speed -1 put byte-optimizer byte-compile-inline-expand] 5) #@80 Draw a piece image at point on an already drawn display. (fn POS PIECE INDEX) (defalias 'chess-ics1-draw-square #[771 "\212\301b\210\302\303!\210\304\305!\306\307\310\311\312V\203\313\202\314D$\210\262\304\261\210\306`\315D#*\207" [inhibit-redisplay t delete-char 3 32 char-to-string add-text-properties 0 1 face 97 chess-ics1-black-face chess-ics1-white-face chess-coord] 12 (#$ . 2286)]) (byte-code "\300\301\302\303#\304\301\305\306#\207" [function-put chess-ics1-draw-square speed -1 put byte-optimizer byte-compile-inline-expand] 5) #@131 Draw the given POSITION from PERSPECTIVE's point of view. PERSPECTIVE is t for white or nil for black. (fn POSITION PERSPECTIVE) (defalias 'chess-ics1-draw #[514 "\301`\302 \210?\211\203\303\202\304\203\303\202\304\305c\210\203(\304Y\202+\306W\203r\2037\303\2028\304U\204?\307c\210\203I\211\304Y\202L\211\306W\203T\250\203d\304Y\203d\303X\204l\310\311\312\313E\"\210\211\250\203}\211\304Y\203}\211\303X\204\205\310\311\314\315E\"\210\306_\\\266\202\316!\205\227\211G\317U\262\204\244\310\311\320\321E\"\210\211\250\203\265\211\304Y\203\265\211\322X\204\275\310\311\323\324E\"\210H\266\202\325\203\314\303\202\315\304U\203\333\326\327\303ZT\"c\210\330c\210`S\262\331!\332\304\333\334\335V\203\364\336\202\365\337D$\210\262\340\261\210\332`\341\250\203\304Y\203\303X\204 \310\311\312\313E\"\210\211\250\2031\211\304Y\2031\211\303X\2049\310\311\314\315E\"\210\306_\\\266\202D#\266\203M\211S\202O\211T\262\202?\342c\210\203_\303\202`\304\262\203kS\202mT\262\202\307c\210\203\200\343c\266\202\204\344c\266\345\325!\210\211b)\207" [inhibit-redisplay t erase-buffer 7 0 "\n +---+---+---+---+---+---+---+---+\n" 8 " +---+---+---+---+---+---+---+---+\n" signal wrong-type-argument (integer 0 7) rank (integer 0 7) file vectorp 75 chess-pos position 63 (integer 0 63) index nil format " %d " "| " char-to-string add-text-properties 1 face 97 chess-ics1-black-face chess-ics1-white-face 32 chess-coord "|\n" " h g f e d c b a\n\n" " a b c d e f g h\n\n" set-buffer-modified-p] 20 (#$ . 2846)]) #@29 (fn INDEX &optional MODE) (defalias 'chess-ics1-highlight #[513 "\300\301\"\302\212b\210\303\301w\210`)\304\305=\203\306\202\307!$\207" [chess-display-index-pos nil put-text-property "^|" face :selected chess-ics1-highlight-face chess-display-get-face] 9 (#$ . 4506)]) #@88 This is a debugging function, and not meant from general use. (fn &optional POSITION) (defalias 'chess-debug-position #[256 "\211\206\301\302!r\303\304!q\210\305\306\"\210 )\207" [chess-ics1-popup-function chess-display-position nil get-buffer-create "*scratch*" chess-ics1-draw t] 5 (#$ . 4793) nil]) (provide 'chess-ics1)