Skip to content

Latest commit

 

History

History
46 lines (31 loc) · 1.92 KB

File metadata and controls

46 lines (31 loc) · 1.92 KB

♟️ Chess Engine (Bitboard-Based)

Language Build Platform Status License

A high-performance chess engine written in pure C, built to explore bitboard techniques, move generation, and low-level performance optimization.
Focused on clarity, speed, and systems-level design.

⚡ Core Highlights

  • 🧩 Bitboard architecture — 64-bit board representation for all pieces
  • ⚔️ Precomputed attack masks for pawns, knights, and kings
  • Pawn structure evaluation — doubled, isolated, and blocked pawns
  • Material and mobility scoring
  • ⚙️ Optimized bitwise operations — popcount, bit scans, and masks
  • 🧠 Planned: sliding attacks, move generation, minimax + alpha-beta, UCI protocol

🎯 Goal

This project aims to understand chess engine internals — from efficient bitboard representation to search algorithms — and to build a clean, extensible base for future experiments in engine evaluation and AI search.

🛠️ Build System

The project uses a custom build script with multiple modes:

Command Description
build or build debug No optimization, full debug info (-O0 -g)
build optdebug Optimized build with debug symbols (-O2 -g)
build release Fully optimized, stripped binary (-O3 -DNDEBUG)

🧩 Example

build release

# or simple

./build.bat

Output binaries are placed in the build/ directory.