○プログラム手順 :: whileで先手(黒)と後手(白)が交互にループし、ユーザーによって「待った」、「終了」などの動作が指定されたときには別の操作へと移行する。 ○ボード全体のメモリ :: ボードは8x8(基本的には)=64(byte)のメモリで表し、1byteの内容によって各マス目の状態を保存する。 :: 基本は黒は01、白は10、空ならば00で表す。 ○コマを置く :: 入力値がオセロ盤から外れていたらその場でエラーを返す :: GTK(p.318マウスボタンのクリックの検出)によってマウスが座標を表示されたマス目上にあるか、判定しその座標をput関数()へ渡す :: また同時にコマの反転処理も行う ○コマの反転処理 :: 8方向に判定していく ○表示 :: 毎ターンのメモリを読み更新をする :: ひっくり返すときにアニメーションを行いたいので、ひっくり返すときに、処理用のモジュールからGTKに渡せるようにしたい ○Undo機能 :: プレイヤーがユーザーであるときのみ使用可能。 :: ターンごとに全てのボード状態を保存するのでメモリを圧迫する可能性がある。またセーブファイルが大きくなる可能性もある。 ○セーブファイル :: セーブファイルはヘッダに経過ターン数とボード幅、それ以降をボード状態を保存し、読み込みの際にボード幅を利用してマスの数を判定する。(セーブファイルが正常であるか判定するため)