278バイトの完全なチェスプログラム「AttoChess」がDOSで4手先を読む
AttoChess, a complete, playable chess program for 16-bit x86 DOS in 278 bytes
AttoChessは、16ビットx86 DOS用の完全なチェスプログラムで、わずか278バイトで動作します。盤面描画、キーボード入力、4手先までの探索、応手生成をすべてこのサイズで実現しています。これは、2019年にDmitry Shechtman氏が開発したLeanChess(288バイト)をさらに10バイト縮めたもので、最小のチェスエンジン記録を更新しました。著者のNicholas Tanner氏は、LeanChessの設計を継承しつつ、描画バッファの削除や入力処理の最適化などでサイズを削減しています。ソースコードはGitHubで公開されており、TASMでアセンブルしてDOSBoxなどの環境で実行できます。
AttoChessはバイト数を競うだけのスタントではなく、実際に起動し、盤面を描画し、キーボードから手を読み取り、4手先までの再帰探索を行い、合法手で応答し、ループします。