Fifth Release V1.20

V1.20 (ZIP), released 17-Feb-2018, is the current stable version.

Changes from V1.12

  • The time management is a bit less aggressive.
  • Higher priority for found null moves.
  • Reduced the passed pawn extension.
  • Removed the draw recognition in quiescence search with king and blocked pawns.
  • Fixed a bug in the rook vs. bishop endgame where the correct defender edge was not highlighted enough over its adjacent rim squares.
  • Added rule of the square for passed pawns.
  • Improved the defence in rook vs. rook and pawn.
  • Fixed a corner case with the 50 moves rule: the 50th move draws only if it does not deliver checkmate.
  • Increased the amount of pseudo-legal moves that entered positions can have from 140 to 190.
  • Undoing or redoing moves within the opening book range handles the little ‘b’ that denotes book moves.
  • Added more opening knowledge.

UCI versions

  • When returning a move, the engine does not execute that move internally. This increases the GUI compatibility when looking for alternative moves via the UCI feature “searchmoves”.
  • The half move counter in the FEN string is parsed correctly.
  • Added options for controlling the contempt factor.
  • Added an option to limit the speed via the node rate. At 30 kNPS and 1 MB hash, the performance should be close to the dedicated unit.
  • Overhauled the I/O layer to achieve more robustness across the supported platforms. In particular, the engine idle state does not keep the OS from entering deeper energy saving modes.
  • Fixed double final PV output in fixed depth search.
  • Removed the “Show Short PVs” option - it is now always enabled. This reduces the perceived engine lag under some GUIs.


  • The Windows binaries have ASLR and NX enabled (security enhancement).
  • The build chain has been updated from GCC 6.3 to 6.4.


  • Still no binaries included, but added a quick compilation guide under binaries/Linux in the download.


  • In addition to the ARM binary in 32 bit, there are also ones for ARM64, x86 and x86-64.
  • The binaries are dynamically linked to the C standard library for better support of position independent code (security enhancement).
  • The Android build chain has been updated from Android NDK r15b to r15c.

Known issues

For Android, a Clang issue with the compiler requires a small workaround for 64 bit. As to keep the versions in line, the impacted feature has been disabled for all Android builds.