diff options
| author | Aargh Rai <aargh.rai+git@gmail.com> | 2026-02-24 22:49:43 +0530 |
|---|---|---|
| committer | Aargh Rai <aargh.rai+git@gmail.com> | 2026-02-24 22:49:43 +0530 |
| commit | 63fa6656749d1cdb6a54a001950048a9660f0d73 (patch) | |
| tree | 39c7e0586c2ad761d65f56bdfd6c96f6bbfdccb9 /src/bitboard.h | |
| parent | 9cd36deffadc4f5ab83f08c2999407b31354027e (diff) | |
pawn forward movement works?
Diffstat (limited to 'src/bitboard.h')
| -rw-r--r-- | src/bitboard.h | 32 |
1 files changed, 30 insertions, 2 deletions
diff --git a/src/bitboard.h b/src/bitboard.h index b92d67f..a816ea6 100644 --- a/src/bitboard.h +++ b/src/bitboard.h @@ -28,11 +28,39 @@ enum { BLACK_LONG_CASTLE, }; +enum { + WHITE_TURN, + BLACK_TURN, +}; + +#define BITMASK_RANK_A 255ULL +#define BITMASK_RANK_B 65280ULL +#define BITMASK_RANK_C 16711680ULL +#define BITMASK_RANK_D 4278190080ULL +#define BITMASK_RANK_E 1095216660480ULL +#define BITMASK_RANK_F 280375465082880ULL +#define BITMASK_RANK_G 71776119061217280ULL +#define BITMASK_RANK_H 18374686479671623680ULL +#define BITMASK_COLM_1 72340172838076673ULL +#define BITMASK_COLM_2 144680345676153346ULL +#define BITMASK_COLM_3 289360691352306692ULL +#define BITMASK_COLM_4 578721382704613384ULL +#define BITMASK_COLM_5 1157442765409226768ULL +#define BITMASK_COLM_6 2314885530818453536ULL +#define BITMASK_COLM_7 4629771061636907072ULL +#define BITMASK_COLM_8 9259542123273814144ULL + typedef struct { bitboard_t bitboards[PIECE_TYPE_COUNT]; u8 castling; -} position; + u8 turn; +} position_t; + +position_t position_starting(); +void assert_valid_position(position_t position); +bitboard_t whites(position_t position); +bitboard_t blacks(position_t position); -position starting_position(); +void print_bitboard(bitboard_t bitboard); #endif // !BITBOARD_H |
