|
1 | | -# Cinnamon |
2 | | - |
3 | | -Cinnamon is a chess program for Windows, Linux, Mac OS and Android, is a console-based chess engine for use with <a href="http://www.gnu.org/software/xboard/" rel="nofollow">xboard</a>, <a href="http://www.playwitharena.com/" rel="nofollow">Arena</a>, <a href="http://triplehappy.com/" rel="nofollow">Tarrasch</a>, <a href="https://play.google.com/store/apps/details?id=com.google.android.chess" rel="nofollow">Chess for Android</a> or any UCI-compatible GUI. Cinnamon is also a javascript library to play with <a href="http://chessboardjs.com" rel="nofollow">chessboardjs</a> or any js GUI. |
4 | | - <br><br> |
5 | | - <div style="width: 436px;" class="phead"><b>Features:</b></div> |
6 | | - <ul> |
7 | | - <li>Available for both Unix, Windows, Mac, Android and Javascript </li> |
8 | | - <li>UCI protocol </li> |
9 | | - <li>GPL 3 License </li> |
10 | | - <li>C++11 source </li> |
11 | | - <li>Rotated bitboards </li> |
12 | | - <li>Null moves </li> |
13 | | - <li>Futility pruning </li> |
14 | | - <li>Delta pruning </li> |
15 | | - <li>Razoring </li> |
16 | | - <li>Interruptible multithread Perft test </li> |
17 | | - <li>32/64 bit architectures </li> |
18 | | - <li>Iterative deeping </li> |
19 | | - <li>Killer heuristics </li> |
20 | | - <li>Lazy evaluation </li> |
21 | | - <li>Mvv/Lva </li> |
22 | | - <li>Transposition Table</li> |
23 | | - <li>Aspiration Windows </li> |
24 | | - <li>Late Move Reduction </li> |
25 | | - <li>Ponder </li> |
26 | | - <li>Available with Tarrasch GUI for Windows</li> |
27 | | - <li>Open Book (Polyglot)</li> |
28 | | - <li>Gaviota Tablebases</li> |
29 | | - <li><a href="http://cinnamonchess.altervista.org/api/1.2a/class_iterative_deeping.html" rel="nofollow">Source doc</a> </li> |
30 | | - <li><a href="http://www.computerchess.org.uk/ccrl/404/cgi/compare_engines.cgi?family=Cinnamon" rel="nofollow">Elo ratings</a> </li> |
31 | | - </ul> |
| 1 | +Cinnamon |
| 2 | +========== |
| 3 | +###UCI Chess Engine |
32 | 4 |
|
| 5 | +Cinnamon is a chess program for Windows, Linux, Mac OS, Android and ARM, is a console-based chess engine for use with |
| 6 | +[xboard][4], |
| 7 | +[Arena][5], |
| 8 | +[Tarrasch][6], |
| 9 | +[Chess for Android][7] |
| 10 | +or any UCI-compatible GUI. Cinnamon is also a javascript library to play with |
| 11 | +[chessboardjs][8] or any js GUI. |
| 12 | + |
| 13 | +Version |
| 14 | +---------- |
| 15 | +2.0 |
| 16 | + |
| 17 | +Features |
| 18 | +---------- |
| 19 | + |
| 20 | + |
| 21 | +- Available for both Unix, Windows, Mac, Android, ARM and Javascript |
| 22 | +- GPL 3 License |
| 23 | +- UCI protocol |
| 24 | +- Parallel Search - Lazy SMP |
| 25 | +- C++11 source |
| 26 | +- Rotated bitboards |
| 27 | +- Null moves |
| 28 | +- Futility pruning |
| 29 | +- Delta pruning |
| 30 | +- Razoring |
| 31 | +- Interruptible multithread [Perft][9] test |
| 32 | +- 32/64 bit architectures |
| 33 | +- Iterative deeping |
| 34 | +- Killer heuristics |
| 35 | +- Lazy evaluation |
| 36 | +- Mvv/Lva |
| 37 | +- Transposition Table |
| 38 | +- Aspiration Windows |
| 39 | +- Late Move Reduction |
| 40 | +- Ponder |
| 41 | +- Available with Tarrasch GUI for Windows |
| 42 | +- Open Book (Polyglot) |
| 43 | +- Gaviota Tablebases |
| 44 | +- [Source doc][2] |
| 45 | +- [Elo ratings][3] |
| 46 | + |
| 47 | + |
| 48 | +Binaries |
| 49 | +---------- |
| 50 | + |
| 51 | +Binaries are available [here][1]. |
| 52 | +All files are compiled statically, no further libraries are necessary. |
| 53 | + |
| 54 | + |
| 55 | +Compiling |
| 56 | +--------- |
| 57 | + |
| 58 | +Cinnamon requires C++11, use unique Makefile to compile for many architectures: |
| 59 | + |
| 60 | + $ make |
| 61 | + |
| 62 | + Makefile for cross-compile Linux/Windows/OSX/ARM/Javascript |
| 63 | + |
| 64 | + make cinnamon64-modern-INTEL > 64-bit optimized for modern Intel cpu |
| 65 | + make cinnamon64-modern-AMD > 64-bit optimized for modern Amd cpu |
| 66 | + make cinnamon64-modern > 64-bit with popcnt bsf sse3 support |
| 67 | + make cinnamon64-generic > Unspecified 64-bit |
| 68 | + make cinnamon64-ARM > Optimized for arm cpu |
| 69 | + |
| 70 | + make cinnamon32-modern > 32-bit with sse support |
| 71 | + make cinnamon32-generic > Unspecified 32-bit |
| 72 | + make cinnamon32-ARM > Optimized for arm cpu |
| 73 | + |
| 74 | + make cinnamon-js > Javascript build |
| 75 | + |
| 76 | + make cinnamon-drmemory > Memory monitor |
| 77 | + make cinnamon-profiler > Google profiler tool |
| 78 | + make cinnamon-gprof > Gnu profiler tool |
| 79 | + |
| 80 | + add: |
| 81 | + COMP=compiler > Use another compiler |
| 82 | + PROFILE_GCC=yes > PGO build |
| 83 | + FULL_TEST=yes > Unit test |
| 84 | + LIBSTDC=-static > Link statically libstdc++ |
| 85 | + |
| 86 | + |
| 87 | + |
| 88 | +License |
| 89 | +------- |
| 90 | + |
| 91 | +Cinnamon is released under the GPLv3+ license. |
| 92 | + |
| 93 | +Credits |
| 94 | +------- |
| 95 | + |
| 96 | +Cinnamon was written by Giuseppe Cannella at gmail dot com. |
| 97 | + |
| 98 | + [1]: http://cinnamonchess.altervista.org |
| 99 | + [2]: http://cinnamonchess.altervista.org/api/2.0/_uci_8h.html |
| 100 | + [3]: http://www.computerchess.org.uk/ccrl/404/cgi/compare_engines.cgi?family=Cinnamon |
| 101 | + [4]: http://www.gnu.org/software/xboard |
| 102 | + [5]: http://www.playwitharena.com |
| 103 | + [6]: http://triplehappy.com |
| 104 | + [7]: https://play.google.com/store/apps/details?id=com.google.android.chess |
| 105 | + [8]: http://chessboardjs.com |
| 106 | + [9]: http://cinnamonchess.altervista.org/perft.html |
0 commit comments