Coffee GB v2.0.1 is a Java and Kotlin-based Gameboy Color emulator, designed as a development exercise. It features full GB and GBC emulation, partial Super Gameboy support, and cycle-exact CPU emulation. The latest update improves audio performance on Windows, enhances emulator reliability, and introduces a single-file portable EXE for Windows. Key improvements include adaptive frame skipping, restored Harry Potter intro performance, and streamlined documentation. All native packages for different architectures have been validated. Various internal optimizations have been made to reduce CPU work and improve efficiency without fixing any issues. The release acknowledges contributions from @trekawek.
(HEY YOU!! We hope you enjoy! We try not to run ads. So basically, this is a very expensive hobby running this site. Please consider joining us for updates, forums, and more. Network w/ us to make some cash or friends while retro gaming, and you can win some free retro games for posting. Okay, carry on đ)
Coffee GB v2.0.1 has been released. Coffee GB serves as a Gameboy Color emulator developed using Java 16 (core) and Kotlin (UI) as part of a development exercise.
Features:
Comprehensive support for GB & GBC emulation.
Partial Super Gameboy emulation (including borders and palette).
Cycle-accurate CPU emulation, where each opcode is divided into several micro-operations (such as loading values from memory and storing them to registers), with each micro-operation executed in a separate CPU cycle.
Good compatibility (all of Blargg’s tests pass, though some games may still face issues).
Rollback-based online multiplayer
Support for MBC1-5
Battery save functionality
Support for compressed ROM files
ROM-based compatibility tests executed from Maven
Coffee GB Changelog:
Version 2.0.1 enhances desktop audio resilience, emulator performance, native distribution, and reliability in releases.
Highlights include:
Eliminating audio gaps in Windows UI and introducing adaptive frame skipping under audio load.
Restoring performance for the Harry Potter intro while optimizing work across PPU/GPU/STAT timing, input, DMA/HDMA, Game Genie lookup, rendering, and audio mixing.
Providing a verified single-file Windows portable EXE that directly launches Coffee GB.
Introducing a reproducible emulation performance harness and refining the user-facing README.
Aligning the reviewed third-party component inventory with the runtime SBOM to ensure that release packaging meets its precise legal inventory requirements.
Native package verification
All four native targets were constructed, examined, unpacked, and subjected to launch tests on their respective architectures. These packages remain unsigned:
linux-x86-64: unsigned
windows-x86-64: unsigned
macos-x86-64: unsigned
macos-aarch64: unsigned
For macOS, game controllers need a compatible system SDL2 installation; however, keyboard input and emulation are still functional without it.
Merged pull requests include
#465 â Streamline emulator tests, internals, and documentation
#481 â Publish Windows portable EXE
#482 â Optimize GPU method-call hot paths
#483 â Reduce subsystem method-call overhead
#485 â Cache GPU timing mode during emulation ticks
#486 â Cache PixelTransfer speed mode during ticks
#487 â Reuse CPU state across Gameboy tick checks
#488 â Cache STAT console hardware mode
#489 â Gate steady-state emulator work
#490 â Consume DIV reset once per tick
#491 â Refresh GPU timing mode only when needed
#492 â Fast-path PixelTransfer WY sampling
#493 â Batch PPU interrupt bookkeeping
#494 â Cache STAT GPU timing snapshot
#495 â Share production STAT CPU phase snapshot
#496 â Pack CPU phase queries for STAT and HDMA
#497 â Reduce settled joypad tick method calls
#498 â Fuse pixel output and machine tick
#499 â Optimize PPU timing and audio hot paths
#500 â Optimize sparse STAT event evaluation
#501 â Lazily resolve CPU STAT read phase
#502 â Implement adaptive frame skipping under audio pressure
#503 â Cache stable stereo mixer output
#504 â Optimize steady-state emulator tick paths
#505 â Restore Harry Potter intro performance
#506 â Remove Windows UI audio gaps
#507 â Update release legal component versions
Direct commits include
9188faa â Add the emulation performance harness
09b9cf2 â Streamline the README for users
Fixed issues
None.
Special thanks to @trekawek for all contributions in this release.
Retro Replay Retro Replay gaming reviews, news, emulation, geek stuff and more!