Commit Graph

100 Commits

Author SHA1 Message Date
Mattia Giambirtone ce960003a2 More UCI ground work 2024-04-24 12:38:03 +02:00
Mattia Giambirtone 7cd16cea88 Add heavy tests. Fix minor bugs. Initial work on UCI interface 2024-04-24 10:41:01 +02:00
Mattia Giambirtone 52100835a9 Minor (hopefully last) movegen bugfix 2024-04-23 20:42:57 +02:00
Mattia Giambirtone 584a29618a Minor fixups. Require nim 2.0.4 or higher to build 2024-04-23 20:17:07 +02:00
Mattia Giambirtone 23d7a0427f Merge branch 'master' into performance 2024-04-23 18:58:54 +02:00
Mattia Giambirtone d03b2c2fbf Final bug fixes. Test suite is passing 2024-04-23 18:57:38 +02:00
Mattia Giambirtone e62c78e4cc More movegen bug fixes and minor improvements to the test suite 2024-04-23 11:48:11 +02:00
Mattia Giambirtone 0dfd647f4c Make test suite optionally parallel. Many bug fixes 2024-04-23 01:50:56 +02:00
Mattia Giambirtone 04bfe74ad5 Add nim.cfg and various bugfixes to movegen 2024-04-21 15:58:31 +02:00
Mattia Giambirtone 68c170568e Add missing license headers 2024-04-21 11:11:28 +02:00
Mattia Giambirtone 1d6c74611b Add missing license headers 2024-04-21 11:09:12 +02:00
Mattia Giambirtone 4404ce10b9 Further improve modularity 2024-04-21 11:07:15 +02:00
Mattia Giambirtone c072576b23 Refactor package structure 2024-04-21 10:51:11 +02:00
Mattia Giambirtone fe987576c3 Bug fixes to checks, pins and more. Reworking pawn movegen 2024-04-20 23:47:57 +02:00
Mattia Giambirtone d5bcd15c48 Bug fixes and huge performance improvement. Initial work on pins 2024-04-20 17:48:18 +02:00
Mattia Giambirtone 4a9deb517a Refactoring, cleanup, improve modularity 2024-04-20 14:52:45 +02:00
Mattia Giambirtone f5135ef69e Refactoring, cleanup, improve modularity 2024-04-20 14:51:50 +02:00
Mattia Giambirtone 9528fb9849 Fix crashes 2024-04-20 13:33:42 +02:00
Mattia Giambirtone 77ff697df7 Make position bitboard management more idiomatic 2024-04-20 13:28:14 +02:00
Mattia Giambirtone 2b16b5ec61 More work on attack handling and some bug fixes 2024-04-19 23:28:46 +02:00
Mattia Giambirtone 6fbcd4ff74 Speedups 2024-04-19 21:43:56 +02:00
Mattia Giambirtone 64c30b8a90 More bug fixes. Still borked. Improve modularity 2024-04-19 21:00:52 +02:00
Mattia Giambirtone 0496047164 Fix bugs in move handling 2024-04-19 17:05:22 +02:00
Mattia Giambirtone fcbe15f275 Fixed package errors and embedded magics into the build 2024-04-19 15:50:51 +02:00
Mattia Giambirtone 19ad46bbda Add move generation for bishops and queens as well as attack tracking 2024-04-19 14:38:35 +02:00
Mattia Giambirtone 82cef11cc4 Refactor directory structure. Fix magic bitboard generation and add utilities to dump them to disk 2024-04-19 13:40:58 +02:00
Mattia Giambirtone 6a548bf372 Magic bitboards can now be found (untested) 2024-04-19 00:03:19 +02:00
Mattia Giambirtone 244ad1725a Work on magic bitboard generation 2024-04-18 21:17:29 +02:00
Mattia Giambirtone a07e9cc475 Added knight movegen. Updated attack tracking. Fix bugs 2024-04-17 20:27:39 +02:00
Mattia Giambirtone 3bb2cc7c66 Add king move generation 2024-04-17 16:50:55 +02:00
Mattia Giambirtone 86265c68f0 Fix bugs with pawn movegen and add promotions 2024-04-17 11:54:45 +02:00
Mattia Giambirtone e50cfb9d64 Refactoring of Square handling, removed old code. Initial move generation work on pawns 2024-04-16 23:45:32 +02:00
Mattia Giambirtone 3299f09e1f Add MoveList implementation 2024-04-16 16:29:21 +02:00
Mattia Giambirtone b5181317ef Improve modularity and add bitboard tests 2024-04-16 15:24:48 +02:00
Mattia Giambirtone 48e2adddc6 Switch to static move list and print nps after perft completion 2024-04-16 09:05:35 +02:00
Mattia Giambirtone e1ccdc728e Drop old attack tracking system in preparation for bitboards 2024-04-16 08:50:42 +02:00
Mattia Giambirtone aeaa57aba6 Add more positions to the test 2024-04-15 17:05:41 +02:00
Mattia Giambirtone c9988cd939 Improve bitboard interface 2024-04-15 12:45:47 +02:00
Mattia Giambirtone 6115191ed6 Refactoring and more work on bitboard handling 2024-04-15 12:04:50 +02:00
Mattia Giambirtone c9644213fe Remove unnecessary call to updateBoard() 2024-04-15 10:11:50 +02:00
Mattia Giambirtone 75d93a0d59 Minor changes, add more tests 2024-04-13 21:23:12 +02:00
Mattia Giambirtone 7a885b65a0 Add draw by 50 move rule. Initial work on draw by insufficient material (currently borked) 2024-04-13 19:59:54 +02:00
Mattia Giambirtone 4d4b12a603 Added test suite 2024-04-13 16:29:40 +02:00
Mattia Giambirtone 6153112c21 Fix promotion bugs: all test positions from the wiki are now passing 2024-04-13 14:56:08 +02:00
Mattia Giambirtone 2ada052460 Fix bugs with en passant and king movement 2024-04-12 17:03:45 +02:00
Mattia Giambirtone f75f7533f5 Fix bugs with en passant 2024-04-12 16:05:01 +02:00
Mattia Giambirtone 54a6217bd3 More movegen bug fixes (close!) 2024-04-10 13:45:29 +02:00
Mattia Giambirtone 89a96eaf52 More bug fixing 2024-04-09 19:55:08 +02:00
Mattia Giambirtone f65d426ccf Update .gitignore 2024-04-09 17:57:51 +02:00
Mattia Giambirtone c1ac5ea5c3 Initial work for UCI mode 2024-04-09 17:55:12 +02:00