Files
hcsalmon1-Chess-Engine-Test/Go/bbutils.go
2025-01-12 21:46:12 +00:00

16 lines
440 B
Go

package main
func EmptyBit(bitboard uint64, square int) uint64 {
var shifted_bitboard = ONE_U64 << uint64(square)
return bitboard & ^shifted_bitboard
}
func SetBit(bitboard uint64, square int) uint64 {
return bitboard | (ONE_U64 << uint64(square))
}
func MoveBit(bitboard uint64, starting_square int, target_square int) uint64 {
bitboard = EmptyBit(bitboard, starting_square)
return SetBit(bitboard, target_square)
}