Coffee GB is a Game Boy Color emulator developed in Java 16 (for the heart) and Kotlin (for the GUI). Designed as a personal project and a programming exercise, it is distinguished by an ambitious technical approach: the emulation of the CPU is cycle-exact, each instruction being broken down into micro-operations executed at the actual rate of the console.
Despite its experimental appearance, Coffee GB offers high compatibility, validated by the famous Blargg and Mooneye GB tests, guaranteeing a behavior faithful to the original console. It supports cartridges with MBC1 to MBC5 memory controllers, as well as battery backups, allowing game data to be stored as on a real Game Boy.
The emulator also reads compressed ROMs (.zip), offers key configuration via a .properties file, and incorporates a netplay feature with rollback (still experimental) to play online with state synchronization.
For developers or curious techniques, the project includes automated testing via Maven, and the source code is available under a MIT license, freely editable and reusable.
https://github.com/trekawek/coffee-gb
Despite its experimental appearance, Coffee GB offers high compatibility, validated by the famous Blargg and Mooneye GB tests, guaranteeing a behavior faithful to the original console. It supports cartridges with MBC1 to MBC5 memory controllers, as well as battery backups, allowing game data to be stored as on a real Game Boy.
The emulator also reads compressed ROMs (.zip), offers key configuration via a .properties file, and incorporates a netplay feature with rollback (still experimental) to play online with state synchronization.
For developers or curious techniques, the project includes automated testing via Maven, and the source code is available under a MIT license, freely editable and reusable.
https://github.com/trekawek/coffee-gb