;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\305\306\307\310\311\312\313\314\313\315& \210\316\317\320\321\322DD\323\324\325%\207" [require chess chess-common chess-fen chess-pgn custom-declare-group chess-sjeng nil "The publically available chess engine 'sjeng'." :group chess-engine :link (custom-manual "(chess)Sjeng") (url-link "http://sjeng.sourceforge.net") custom-declare-variable chess-sjeng-path funcall function #[0 "\300\301!\207" [executable-find "sjeng"] 2] "The path to the sjeng executable." :type file] 10) (defvar chess-sjeng-evaluation nil) (make-variable-buffer-local 'chess-sjeng-evaluation) (defvar chess-sjeng-regexp-alist (byte-code "\301\302Q\303B\304\305B\306\307B\310\311B\312\313B\257\207" [chess-algebraic-regexp "move\\s-+\\(" "\\)\\s-*$" #[0 "\301\302\303!\304\305\306\307!#\206\310\307\311\"\266\202\"\207" [chess-engine-response-handler move match-string 1 t chess-algebraic-to-ply chess-engine-position nil chess-engine-command illegal] 8] "tellics set 1\\s-+\\(.+\\)$" #[0 "\301\302!\211\207" [chess-engine-opponent-name match-string 1] 2] "{\\(Black\\|White\\) resigns}" #[0 "\301!\207" [chess-engine-response-handler resign] 2] "\\(Illegal move\\|unrecognized/illegal command\\):\\s-*\\(.*\\)" #[0 "\300\301\302!!\207" [error match-string 1] 3] "command not legal now" #[0 "\300\301\302!!\207" [error match-string 0] 3]] 6)) #@30 (fn GAME EVENT &rest ARGS) (defalias 'chess-sjeng-handler #[642 "?\205\223\305\267\202q\306\307\310#\211\205*\311!\205*\312!\313=\205*\314\315\"\210\211\316\207\317\320\321\322\323@!\"\"\207\211\204?\324\325!\210\211\211\204H\324\325!\210\3268\262GS\262\327U\203b\330\331\n#\210\330\332 #\210\317\320@\211\211:\205z\211@\333!\205x\211G\334U\262\262\204\207\335\336\337\340E\"\210\211\211\211:\205\234\211@\333!\205\232\211G\334U\262\262\204\251\335\336\337\340E\"\210\211A\262\211<\205\273\211@9?\205\273\211@\266\202\211\250\203\316\211\341Y\203\316\211\342X\204\326\335\336\343\344E\"\210\345\211\250\203\351\211\341Y\203\351\211\342X\204\361\335\336\346\344E\"\210\347\350\"\262\211\250\203\211\341Y\203\211\351X\204\335\336\352\353E\"\210\211\354\\\262\211\250\203'\211\341Y\203'\211\342X\204/\335\336\355\344E\"\210\211\350\245\262\211\250\203E\211\341Y\203E\211\351X\204M\335\336\356\357E\"\210\351Z\360\\\262\"\262@\211\211:\205m\211@\333!\205k\211G\334U\262\262\204z\335\336\337\340E\"\210\211\211\211:\205\217\211@\333!\205\215\211G\334U\262\262\204\234\335\336\337\340E\"\210\211A\262\211<\205\257\211@9?\205\257\211A@\266\202\211\250\203\302\211\341Y\203\302\211\342X\204\312\335\336\343\344E\"\210\345\211\250\203\335\211\341Y\203\335\211\342X\204\345\335\336\346\344E\"\210\347\350\"\262\211\250\203\374\211\341Y\203\374\211\351X\204\335\336\352\353E\"\210\211\354\\\262\211\250\203\211\341Y\203\211\342X\204#\335\336\355\344E\"\210\211\350\245\262\211\250\2039\211\341Y\2039\211\351X\204A\335\336\356\357E\"\210\351Z\360\\\262\"\262\361@\362\"\203_\345\361@\362\"\227!\202`\363\364R\"\210\211\204m\324\325!\210\365\3268\366\"@\211\205\334\211\367\370\371\372\373\374\375&\206\332\211\211\211:\205\233\211@\333!\205\231\211G\334U\262\262\204\250\335\336\337\340E\"\210\211@\262\211\333!\205\267\211G\334U\262\204\304\335\336\376\377E\"\210\211\201@H\262\211\205\330\367\201A\201B#\262\262\266\202\205\223\201C\201D\320#\207\201E\201F!\211\201G\201H\316\"\201I\201J\"\216r\211q\210\201K@!\210\201Lc\210)r\211q\210\201M\320\211\320\341%\210*\266\211\fB\211\262\317\320\321\201N\"\"\207\211@\201O=\203T\211A@\203M\317\320\201P\"\207\317\320\201Q\"\207\211@\201R=\205\223\211A@\203j\317\320\201S\"\207\317\320\201T\"\207\201U=\203\213\347@\366\"\327U\203\213\201V\201W!\210\201X\306$\207" [chess-engine-handling-event chess-engine-process chess-full-name chess-engine-opponent-name chess-common-temp-files #s(hash-table size 5 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (initialize 11 setup-pos 43 move 54 setup-game 747 set-option 823)) chess-common-handler initialize "sjeng" processp process-status run process-send-string "xboard\nnew\n" t chess-engine-send nil format "setboard %s\n" chess-pos-to-fen cl--assertion-failed game 3 1 chess-game-set-tag "White" "Black" vectorp 75 signal wrong-type-argument chess-ply ply 0 63 (integer 0 63) index string (integer 0 63) mod 8 7 (integer 0 7) file 97 (integer 0 63) (integer 0 7) rank 49 chess-ply-keyword :promote "" "\n" last 2 chess-ply-any-keyword :drawn :perpetual :repetition :flag-fell :resign :aborted chess-pos position 74 :stalemate :checkmate chess-game-set-data active make-temp-file "chess" generate-new-buffer " *temp file*" make-closure #[0 "\301\300!\205 \302\300!\207" [V0 buffer-name kill-buffer] 2] chess-insert-pgn 10 write-region "read %s\n" resign "resign 9\n" "resign -1\n" ponder "hard\n" "easy\n" undo error "Cannot undo until after sjeng moves" apply] 15 (#$ . 1477)]) (provide 'chess-sjeng)