
This is my first attempt on creating a chess engine.
As a first goal I'd like it to be able to reliably beat me in chess ...

I jumped into C and after some research I chose to represent my board with bitboards. I have bitboards for all the pieces and colors (i.e pawns[WHITE, BLACK, BOTH]).
Now let's say I, the player, move a certain piece (i.e d2d4 at the beginning of the game), and I update the bitboard that represents all of the pieces, and my question is,
how do I know to update the bitboard of the pawns and the white pawns, whithout doing a lot of tedius checks ?
An advice or suggestions will be greatly appreciated
