This website requires JavaScript.
79603ff9ec
Check extensions (gain 89.5 +/- 34.0) and initial work on draw by insufficient material detection
master
Mattia Giambirtone
2024-05-03 17:10:18 +0200
2fabc785aa
Remove useTT compile time flag
Mattia Giambirtone
2024-05-02 19:08:30 +0200
0b66f67e8c
Fix TT: Gains 83.0 +/- 32.5 elo
Mattia Giambirtone
2024-05-02 19:07:20 +0200
1e06a5caef
Uncomment tt cutoff code
Mattia Giambirtone
2024-05-02 15:41:30 +0200
a3c8eb7a35
Fix incremental zobrist hashing, fix repetition detection, add ttmove, wait for search thread to complete
Mattia Giambirtone
2024-05-02 14:39:46 +0200
faf64c22e1
Hopefully fix crashing issues
Mattia Giambirtone
2024-05-02 00:24:57 +0200
da5eac94d6
Refactor chessboard code and move most logic to Position
Mattia Giambirtone
2024-05-01 19:46:28 +0200
877b6f4b06
Minor tweaks
Mattia Giambirtone
2024-05-01 18:10:38 +0200
d4fe999567
Move the mailbox into the position object and get rid of update(). Minor UI tweaks
Mattia Giambirtone
2024-05-01 18:02:17 +0200
da82878ebb
Minor refactoring and cleanup. Switch away from boehm GC as that's too slow
Mattia Giambirtone
2024-05-01 16:54:08 +0200
70490f5698
Pregenerate pawn attacks (currently unused). Attempts at fixing random crashing
Mattia Giambirtone
2024-05-01 16:30:21 +0200
c7ad3aa1b5
Hide untested options behind when defined(), increase size of some position counters, tweak MVVLVA multiplier and more fixes
Mattia Giambirtone
2024-04-28 16:17:30 +0200
4efde83934
Remove unnecessary modules and refactor some things. WIP on testing broken Zobrist hashing
Mattia Giambirtone
2024-04-27 15:00:03 +0200
8eeede55c2
Add specialized .gitignore
Mattia Giambirtone
2024-04-27 11:12:13 +0200
4381298957
Bug fixes. Implement quiescent search, extensions and LMR. Needs SPRT
Mattia Giambirtone
2024-04-27 09:49:45 +0200
3f283932d8
Fix some bugs in movegen. Untested TT
Mattia Giambirtone
2024-04-26 11:41:59 +0200
95780b3236
Initial work on transposition table and repetition detection
Mattia Giambirtone
2024-04-25 23:41:25 +0200
ca0f0a4bf5
Initial TT work
Mattia Giambirtone
2024-04-25 20:03:06 +0200
b74bb3b4ba
Initial work on Zobrist hashing. Add Pohl opening book
Mattia Giambirtone
2024-04-25 18:53:51 +0200
720645092e
Massive eval improvement. Perform search in a separate thread. Implement more UCI commands
Mattia Giambirtone
2024-04-25 15:20:55 +0200
629718a54c
Initial work on search and eval
Mattia Giambirtone
2024-04-24 19:38:54 +0200
ce960003a2
More UCI ground work
Mattia Giambirtone
2024-04-24 12:38:03 +0200
7cd16cea88
Add heavy tests. Fix minor bugs. Initial work on UCI interface
Mattia Giambirtone
2024-04-24 10:41:01 +0200
52100835a9
Minor (hopefully last) movegen bugfix
Mattia Giambirtone
2024-04-23 20:42:57 +0200
584a29618a
Minor fixups. Require nim 2.0.4 or higher to build
Mattia Giambirtone
2024-04-23 20:17:07 +0200
23d7a0427f
Merge branch 'master' into performance
Mattia Giambirtone
2024-04-23 18:58:54 +0200
d03b2c2fbf
Final bug fixes. Test suite is passing
Mattia Giambirtone
2024-04-23 18:57:38 +0200
e62c78e4cc
More movegen bug fixes and minor improvements to the test suite
Mattia Giambirtone
2024-04-23 11:48:11 +0200
0dfd647f4c
Make test suite optionally parallel. Many bug fixes
Mattia Giambirtone
2024-04-23 01:50:56 +0200
04bfe74ad5
Add nim.cfg and various bugfixes to movegen
Mattia Giambirtone
2024-04-21 15:58:31 +0200
68c170568e
Add missing license headers
Mattia Giambirtone
2024-04-21 11:11:28 +0200
1d6c74611b
Add missing license headers
Mattia Giambirtone
2024-04-21 11:09:12 +0200
4404ce10b9
Further improve modularity
Mattia Giambirtone
2024-04-21 11:07:15 +0200
c072576b23
Refactor package structure
Mattia Giambirtone
2024-04-21 10:51:11 +0200
fe987576c3
Bug fixes to checks, pins and more. Reworking pawn movegen
Mattia Giambirtone
2024-04-20 23:47:57 +0200
d5bcd15c48
Bug fixes and huge performance improvement. Initial work on pins
Mattia Giambirtone
2024-04-20 17:48:18 +0200
4a9deb517a
Refactoring, cleanup, improve modularity
Mattia Giambirtone
2024-04-20 14:51:50 +0200
f5135ef69e
Refactoring, cleanup, improve modularity
Mattia Giambirtone
2024-04-20 14:51:50 +0200
9528fb9849
Fix crashes
Mattia Giambirtone
2024-04-20 13:33:42 +0200
77ff697df7
Make position bitboard management more idiomatic
Mattia Giambirtone
2024-04-20 13:28:14 +0200
2b16b5ec61
More work on attack handling and some bug fixes
Mattia Giambirtone
2024-04-19 23:28:46 +0200
6fbcd4ff74
Speedups
Mattia Giambirtone
2024-04-19 21:43:56 +0200
64c30b8a90
More bug fixes. Still borked. Improve modularity
Mattia Giambirtone
2024-04-19 21:00:40 +0200
0496047164
Fix bugs in move handling
Mattia Giambirtone
2024-04-19 17:05:18 +0200
fcbe15f275
Fixed package errors and embedded magics into the build
Mattia Giambirtone
2024-04-19 15:50:51 +0200
19ad46bbda
Add move generation for bishops and queens as well as attack tracking
Mattia Giambirtone
2024-04-19 14:38:35 +0200
82cef11cc4
Refactor directory structure. Fix magic bitboard generation and add utilities to dump them to disk
Mattia Giambirtone
2024-04-19 13:40:31 +0200
6a548bf372
Magic bitboards can now be found (untested)
Mattia Giambirtone
2024-04-19 00:03:19 +0200
244ad1725a
Work on magic bitboard generation
Mattia Giambirtone
2024-04-18 21:17:29 +0200
a07e9cc475
Added knight movegen. Updated attack tracking. Fix bugs
Mattia Giambirtone
2024-04-17 20:27:39 +0200
3bb2cc7c66
Add king move generation
Mattia Giambirtone
2024-04-17 16:50:55 +0200
86265c68f0
Fix bugs with pawn movegen and add promotions
Mattia Giambirtone
2024-04-17 11:54:45 +0200
e50cfb9d64
Refactoring of Square handling, removed old code. Initial move generation work on pawns
Mattia Giambirtone
2024-04-16 23:45:32 +0200
3299f09e1f
Add MoveList implementation
Mattia Giambirtone
2024-04-16 16:29:21 +0200
b5181317ef
Improve modularity and add bitboard tests
Mattia Giambirtone
2024-04-16 15:24:31 +0200
48e2adddc6
Switch to static move list and print nps after perft completion
chess-mailbox
Mattia Giambirtone
2024-04-16 09:05:35 +0200
e1ccdc728e
Drop old attack tracking system in preparation for bitboards
Mattia Giambirtone
2024-04-16 08:50:42 +0200
aeaa57aba6
Add more positions to the test
Mattia Giambirtone
2024-04-15 17:05:41 +0200
c9988cd939
Improve bitboard interface
Mattia Giambirtone
2024-04-15 12:45:47 +0200
6115191ed6
Refactoring and more work on bitboard handling
Mattia Giambirtone
2024-04-15 12:04:50 +0200
c9644213fe
Remove unnecessary call to updateBoard()
Mattia Giambirtone
2024-04-15 10:11:50 +0200
75d93a0d59
Minor changes, add more tests
Mattia Giambirtone
2024-04-13 21:23:12 +0200
7a885b65a0
Add draw by 50 move rule. Initial work on draw by insufficient material (currently borked)
Mattia Giambirtone
2024-04-13 19:59:54 +0200
4d4b12a603
Added test suite
Mattia Giambirtone
2024-04-13 16:28:48 +0200
6153112c21
Fix promotion bugs: all test positions from the wiki are now passing
Mattia Giambirtone
2024-04-13 14:56:08 +0200
2ada052460
Fix bugs with en passant and king movement
Mattia Giambirtone
2024-04-12 17:03:45 +0200
f75f7533f5
Fix bugs with en passant
Mattia Giambirtone
2024-04-12 16:05:01 +0200
54a6217bd3
More movegen bug fixes (close!)
Mattia Giambirtone
2024-04-10 13:45:29 +0200
89a96eaf52
More bug fixing
Mattia Giambirtone
2024-04-09 19:55:08 +0200
f65d426ccf
Update .gitignore
Mattia Giambirtone
2024-04-09 17:57:51 +0200
c1ac5ea5c3
Initial work for UCI mode
Mattia Giambirtone
2024-04-09 17:55:12 +0200
57353c0994
Several bug fixes and minor improvements/additions
Mattia Giambirtone
2024-04-09 17:46:30 +0200
77129855df
Refactoring and bug fixes
Mattia Giambirtone
2024-04-08 20:28:31 +0200
a4954a971b
Minor fixes to flags and other things
Mattia Giambirtone
2023-11-13 11:03:54 +0100
9047e3a53d
Switch to bitwise flags for moves and fix perft counting mistakes
Mattia Giambirtone
2023-11-13 09:52:37 +0100
6e10cbe925
Bug fixes(?)
Mattia Giambirtone
2023-11-01 19:07:09 +0100
3dca208123
Various bug fixes, improvements and optimizations
Mattia Giambirtone
2023-10-31 23:06:27 +0100
0b9b24b8e1
Bug fixes and undo bulk-count modifications
Mattia Giambirtone
2023-10-30 17:46:06 +0100
2c58488c61
Update move validation script
Mattia Giambirtone
2023-10-30 15:26:48 +0100
75869357cc
Improve to testing interface and methodology
Mattia Giambirtone
2023-10-30 14:46:27 +0100
a9a9b917c6
Massive improvement to move generation (bugs still exist)
Mattia Giambirtone
2023-10-28 02:32:50 +0200
c79af07638
Switch to better mechanism to keep track of pins
Mattia Giambirtone
2023-10-25 22:41:04 +0200
29a554d5da
Switch to a legal move generator
Mattia Giambirtone
2023-10-23 18:02:31 +0200
b9dcde1563
Fixes to performance & improve legality checks
Mattia Giambirtone
2023-10-21 18:19:41 +0200
c6cc98a296
Fixes to generation and added basic debugger
Mattia Giambirtone
2023-10-20 02:23:07 +0200
60c4f28ec0
Profiling work
Mattia Giambirtone
2023-10-18 10:45:54 +0200
82a203c98b
Remove debug echo statements. Rooks are now considered moved even when captured (castling)
Mattia Giambirtone
2023-10-17 23:56:26 +0200
31f77fa22d
Castling functional
Mattia Giambirtone
2023-10-17 22:16:01 +0200
afff1db88f
Fixes to how moves are counted and minor style improvements
Mattia Giambirtone
2023-10-17 17:27:33 +0200
b4ef8b4a2e
Fixed position handling system
Mattia Giambirtone
2023-10-17 16:38:43 +0200
79477fe077
Initial work on the move list
Mattia Giambirtone
2023-10-17 15:08:46 +0200
ca498ebc42
Implemented knight moves
Mattia Giambirtone
2023-10-17 12:42:15 +0200
e782935fd7
Fix diagonal checks for black
Mattia Giambirtone
2023-10-17 12:08:07 +0200
17f15e682c
Initial work on checkmate detection and pins
Mattia Giambirtone
2023-10-17 10:31:38 +0200
942f195ddc
Added other sliding pieces
Mattia Giambirtone
2023-10-16 23:02:58 +0200
eb77cf4b89
Added two missing diagonals for sliding pieces
Mattia Giambirtone
2023-10-16 22:39:54 +0200
1610e7b4a6
Bishops are now behaving
Mattia Giambirtone
2023-10-16 22:14:58 +0200
de0864c066
More additions to move generation and initial sliding work
Mattia Giambirtone
2023-10-16 15:25:48 +0200
25ebe7f409
Fixes to move handling
Mattia Giambirtone
2023-10-16 14:55:43 +0200
f1c09e302e
There can now be more than one queen on the board (LoL)
Mattia Giambirtone
2023-10-16 09:39:17 +0200