
---------------------------------------------------------------------
      他のアプリケーションからの bonanza.exe (v2.1) 使用方法
---------------------------------------------------------------------


子プロセスとして bonanza.exe を起動して下さい．引数，csa_shogi，を指定
する必要があります．情報のやり取りは anonymous pipe で行います．

このフォルダ内にある他のファイルは sikou.dll のソースファイルです．
Visual C++ 2005 Express Edition と Platform SDK によってビルド可能なこ
とを確認しています．サンプルとして参考にして下さい．


bonanza.exe への入出力一覧表を以下に列挙します．

【入力】　（一行単位で行います．最後に必ず改行コードをつけて下さい）

(EOF)
  bonanza.exe を終了．親プロセスで pipe のハンドルを閉じた際に送られる
  ようです．

book off
  序盤データベースの参照を禁止

book on
  序盤データベースを参照（初期設定）

book narrow
  序盤データベースの指手のうち，頻度の低い手を採用しない．

book wide
  序盤データベースから幅広く指し手を選ぶ (初期設定)．

hash [num]
  ハッシュテーブルとして確保するメモリ領域の大きさを指定．大きさは大体，
  2 の num 乗かける 48 バイト程度です．初期値は 18 です．

limit time [num1] [num2]
  持ち時間を num1 分，切れてから一手 num2 秒に設定．
  初期設定は 0分 - 10秒．

limit time strict
  制限時間内に指手を求める (初期設定)．

limit time extendable
  より良い指手が見つかりそうな場合に，制限時間を超えて思考することを許
  す．

move
  次の一手を思考

move [move]
  現在の将棋盤から一手進める．手を表す文字列 [move] の形式は CSA 形式
  の指手から +, - を除いたもになります．(例：move 7776FU, move 0087FU)

move restraint
  次の一手を思考．但し，restraint.dat 内に羅列されている合法手を指さな
  いようにする．ファイル内の文字列は以下のようにして下さい．
  -------- restraint.dat --------
2726FU(改行)
7776FU(改行)
(EOF)
  -------------------------------

new
  将棋盤を平手の状態に復帰 (初期設定)

ping
  pong の出力を促す．

ponder on
  予測読み機能オン（初期設定）

ponder off
  予測読み機能オフ

read [filename] t [num]
  CSA 形式の棋譜ファイルを読む．
  [filename]  ファイル名を指定．ピリオド "." を指定した場合は現在の局
              を読み込む．
  [num]       手数を指定．省略した場合は終端まで読み込む．

resign [num]
  投了するスコアの下限 num を指定．32600 に設定すると投了しない．初期
  設定は 533．

s
  次の一手をできるだけ早く指させる．思考中でない場合は無効．

time remain [num1] [num2]
  持ち時間の残りを秒単位で変更．
  num1  先手残り時間
  num2  後手残り時間

【出力】　（一行単位で行います．最後に必ず改行コードが存在します）

move[move]
  思考結果の指手．手を表す文字列 [move] の形式は CSA 形式の指手から +,
  - を除いたもになります．(例：move7776FU, move0087FU)

info ponder start
  予測読みを開始するときに出力

info ponder end
  予測読みが終了した時きに出力

info[statistics]
  思考した局面が序盤データベース内に見つかった場合に出力される統計情報．
  (例：info 7776FU(86%) 2726FU(14%))

info[score] [move sequence]
  思考中に多数回出力される思考の途中経過
  [score]
    出力された時点での bonanza の推定評価値
     325.99            - 先手にとって優勢な繰り返し
     325.98 ~  300.01  - 先手玉詰み
     300.00 ~ -300.00  - 評価値．1点が歩一枚分に相当
    -300.01 ~ -325.98  - 後手玉詰み
    -325.99            - 後手にとって優勢な繰り返し
  [move sequence]
    出力された時点での bonanza の推定最善応手．CSA 形式の指手をスペー
    スで区切って出力
  (例：info+0.43 -5142OU +2726FU -4232OU +2625FU -7162GI)

info tt [num]
  思考に費やした時間 num を秒単位で出力

pong
  ping 入力を与えた際に出力

statsatu=[num1] cpu=[num2] nps=[num3]
  思考終了時に出力される bonanza のコンピュータ資源使用状況推定値．局
  面が序盤データベース内で見つかった場合は出力されません．
  [num1]  ハッシュ領域使用パーセンテージ
  [num2]  CPU 時間占有パーセンテージ
  [num3]  一秒当たりの検索ノード数 / 1000
  (例：statsatu=22 cpu=98 nps=886.28)
