ref: e82dcee1a3d54f14c93a19f8fe21965ea72c56ce
dir: /README.md/
# Synopsis This is a 9P filesystem aimed at playing chess. It's written in Go, leveraging the `styx` library, so you should be able to compile it on Linux, Plan9, etc, and play it in the terminal. Usage: ``` chessfs -a tcp!*!5650 & srv tcp!cobra!5650 chess /n/chess ``` # Files ## Status The `status` file presents the following things: - elapsed time for white - elapsed time for black - maximum player time (measured in seconds; -1 means no limit) - current turn ## Board The `board` file shows a view of the current board using UTF-8. The view is from white player's perspective. ## Control file The following control commands are available: - new - move <move> - load <PGN line> The moves are coded in a notation similar to the Standard Algebraic Notation. ## History A PGN-format line representing the game history. You can `cat` it to a file and replay the game later by using the `load` command. ## Notify Reading from this file finishes when the player turn changes. # Mirrors https://git.disroot.org/kitzman/chessfs http://shithub.us/kitzman/chessfs/HEAD/info.html # TODOs Features: - mounting on Inferno does not work - more descriptive error messages - script or create file for black player's perspective - implement the following moves: castling, promotion, en passant - win/lose mechanism & score file - game history file (PGN format) - write a script to import a PGN puzzle - Limbo frontend! Emacs frontend!