Add support for USI protocol
authorianfab <ianfab@users.noreply.github.com>
Sat, 11 Aug 2018 13:36:00 +0000 (15:36 +0200)
committerianfab <ianfab@users.noreply.github.com>
Sat, 11 Aug 2018 18:46:11 +0000 (20:46 +0200)
commit05c5367700496da01ad3a1944fe2cd36117e3b46
tree42cb7c4bd157d52a6fc34681989f24884f38eff8
parent7b9e704df5ae5322a92368f8716125e660248f9a
Add support for USI protocol

Specification: http://hgm.nubati.net/usi.html

- Switch protocol when receiving uci/usi command,
  or when option "Protocol" is changed.
- Support parsing of SFEN, but internally use FEN.
- Use shogi coordinates (e.g., 3e3d) for all moves,
  and notation with "*" for piece drops.
- Specify mate distance in ply instead of fullmoves.
- Todo: Adapt option names to be compliant with USI
  - No whitespaces.
  - Standard options should be prefixed by "USI_".
src/position.cpp
src/position.h
src/uci.cpp
src/uci.h
src/ucioption.cpp