Dog is a simple chess program for the ESP32 (= 240MHz dualcore cpu with 320kB RAM - but it also runs on linux/windows/android).
Dog-v0.8-ESP32.zip bin-files that you can flash onto a wemos32 mini using 'esptool.py' (example flash-script for Linux included)
source code: https://github.com/folkertvanheusden/Dog/
windows binary: Dog-v2.0-windows.zip: replace Dog.exe by the one from Dog-v2.1-fix.zip
Android: the program can be retrieved from Google Play (this requires Chess for Android to be installed (or an other OEX compatible board program)).
Dog plays at lichess.org as MaxtheDog.
This is a picture of the dog that triggered the development of this program. His name is Max.
Max is very strong, likes to chase cats and other dogs and is worlds' fastest eater.
Version 0.1 only has alpha/beta with aspiration windows
Version 0.2 has null move, lmr, PSQ in evaluation, quiescence-search, tt, lazy smp and mvv-lva
Version 0.3 has improved evaluation (copy/paste from Micah with some parts removed because of RAM-space issues), IID, sibling moves, futility pruning, an improved version of the killer heuristic
Version 0.4 pondering, removed lazy-smp due to issues
Version 0.5 lazy-smp is back and other fixes
Version 0.6 performance tweak for ESP32
Version 0.7 performance tweaks, LED effects, adjustable thread count (1 or 2)
Version 0.8 timing tweaks, pondering can be switched off, bug fixes
Version 0.9 butterfly tables
Version 2.0 Syzygy endgame tablebase support and lazy-smp fixes
Version 2.1 changing the number of threads could cause a segfault
House for sale: Kerstroosgaarde 27, Gouda, The Netherlands.
For contact info, see this page.
Via GitHub: and via patreon you can sponsor me and my work.