Difference between revisions of "Bitboard-Chess"

From Chessprogramming wiki
Jump to: navigation, search
Line 2: Line 2:
  
 
'''Bitboard-Chess''',<br/>
 
'''Bitboard-Chess''',<br/>
a [[WinBoard]] compliant, didactic [[:Category:Open Source|open source chess program]] by [[Bill Jordan]], written in [[Cpp|C++]] and licensed under the [[Free Software Foundation#GPL|GPL version 3]].
+
a [[WinBoard]] compliant, didactic [[:Category:Open Source|open source chess program]] by [[Bill Jordan]], written in [[Cpp|C++]] and licensed under the [[Free Software Foundation#GPL|GPL version 3]], available on [https://en.wikipedia.org/wiki/GitHub GitHub] <ref>[https://github.com/billjordanchess/Bitboard-Chess GitHub - billjordanchess/Bitboard-Chess: Simple C++ chess playing program which uses bitboards]</ref> - an [https://en.wikipedia.org/wiki/Ebook ebook] explaining the program is available from [https://en.wikipedia.org/wiki/Amazon_(company) Amazon] <ref>[[Bill Jordan]] ('''2020'''). ''[https://amzn.eu/7p0J2S1 How to Write a Bitboard Chess Engine]''. [https://www.amazon.com/How-Write-Bitboard-Chess-Engine-ebook/dp/B0842GRJ6L/ amazon]</ref>. Bitboard-Chess is designed to show how a chess engine might work, quite similar to [[Bills Bare Bones Chess]] aka '''Basic-Chess''', but using [[Bitboards|bitboards]] <ref>[https://github.com/billjordanchess/Bitboard-Chess GitHub - billjordanchess/Bitboard-Chess: Simple C++ chess playing program which uses bitboards]</ref>.
Bitboard-Chess is designed to show how a chess engine might work, quite similar to [[Bills Bare Bones Chess]] aka '''Basic-Chess''', but using [[Bitboards|bitboards]] <ref>[https://github.com/billjordanchess/Bitboard-Chess GitHub - billjordanchess/Bitboard-Chess: Simple C++ chess playing program which uses bitboards]</ref>.
 
 
[[Bitboard Serialization|Bitboard serialization]] is done via [[Matt Taylor|Matt Taylor's]] [[BitScan#MattTaylorsFoldingtrick|folded BitScan]] <ref>[https://github.com/billjordanchess/Bitboard-Chess/blob/master/bitboard.cpp#L362 Bitboard-Chess/bitboard.cpp at master · billjordanchess/Bitboard-Chess · GitHub]</ref>,
 
[[Bitboard Serialization|Bitboard serialization]] is done via [[Matt Taylor|Matt Taylor's]] [[BitScan#MattTaylorsFoldingtrick|folded BitScan]] <ref>[https://github.com/billjordanchess/Bitboard-Chess/blob/master/bitboard.cpp#L362 Bitboard-Chess/bitboard.cpp at master · billjordanchess/Bitboard-Chess · GitHub]</ref>,
 
but [[Move Generation|move generation]] of [[Sliding Pieces|sliding pieces]] is done in [[Mailbox|mailbox]] manner  
 
but [[Move Generation|move generation]] of [[Sliding Pieces|sliding pieces]] is done in [[Mailbox|mailbox]] manner  
Line 37: Line 36:
  
 
=Publication=
 
=Publication=
* [[Bill Jordan]] ('''2020'''). ''How to Write a Bitboard Chess Engine''. [https://www.amazon.com/How-Write-Bitboard-Chess-Engine-ebook/dp/B0842GRJ6L/ amazon]
+
* [[Bill Jordan]] ('''2020'''). ''[https://amzn.eu/7p0J2S1 How to Write a Bitboard Chess Engine]''. [https://www.amazon.com/How-Write-Bitboard-Chess-Engine-ebook/dp/B0842GRJ6L/ amazon]
  
 
=External Links=
 
=External Links=

Revision as of 10:44, 25 July 2021

Home * Engines * Bitboard-Chess

Bitboard-Chess,
a WinBoard compliant, didactic open source chess program by Bill Jordan, written in C++ and licensed under the GPL version 3, available on GitHub [1] - an ebook explaining the program is available from Amazon [2]. Bitboard-Chess is designed to show how a chess engine might work, quite similar to Bills Bare Bones Chess aka Basic-Chess, but using bitboards [3]. Bitboard serialization is done via Matt Taylor's folded BitScan [4], but move generation of sliding pieces is done in mailbox manner iterating over ray directions and pre-calculated target squares, radiating from the piece origin along with end of ray and blocker conditions [5].

Features

[6]

Board Representation

Search

Evaluation

See also

Publication

External Links

References

Up one Level