Coffee GB vs PyBoy
Coffee GB
github.comPyBoy
github.comSide by side
| Figure | Coffee GB | PyBoy |
|---|---|---|
| Price from | Free | Free |
| Free plan | Yes | Yes |
| Free trial | — | — |
| Open source | — | — |
| Windows | Yes | Yes |
| macOS | Yes | Yes |
| Linux | Yes | Yes |
| Android | Yes | — |
| API | — | Yes |
| Self-hosted | — | Yes |
| Plans published | 1 | 1 |
| Spec score · Game Boy Emulators | 8.1 (#5) | 7.5 (#13) |
| License | Coffee GB is distributed under the MIT License. | The repository includes the GNU Lesser General Public License version 3. |
| Purpose | Coffee GB is a desktop emulator for the original Game Boy and Game Boy Color. | PyBoy is a Game Boy emulator written in Python and Cython. |
Plans
In their own words
Coffee GB
Coffee GB is a desktop emulator for the original Game Boy and Game Boy Color, with support for Super Game Boy features. It runs on Windows, macOS, Linux, and Android, and accepts .gb, .gbc, and .rom files, including games inside ZIP and 7z archives. ROM files are not included. For saving and reviewing play, it offers ten slots, named save states with previews, autosave and resume, screenshots, input recordings, and rewind. Rollback netplay supports link-cable games and synchronized infrared communication. Keyboard and controller input are supported, with separate controls for up to four players in compatible Super Game Boy games. Cartridge support includes real-time clocks, rumble, tilt, Game Boy Camera, and Game Boy Printer. Cheats include Game Genie and GameShark, with a searchable libretro database. The project reports 5,858 automated verdicts passing across 17 test suite families. Coffee GB is free and distributed under the MIT License. Netplay uses a direct, unencrypted TCP connection; the project advises using trusted people and networks. On macOS, controllers require compatible system SDL2, though keyboard input and emulation work without it.
PyBoy
PyBoy is a Game Boy and Game Boy Color emulator implemented in Python and Cython. It runs from a command line or inside Python programs, supporting automation, testing, and AI experiments. Install it with `pip install pyboy`; documentation links to setup instructions for macOS, Linux, and Windows. The Python interface sends button input, reads memory, and captures screenshots. Its documented hardware-facing API includes the CPU and address space, graphics, audio, cartridge hardware, and input, while leaving internal emulation components and platform-specific window implementations outside the reference. Rendering may be skipped or disabled, and the documentation says parallel instances can improve throughput. PyBoy links to Gym integration instructions and examples for Kirby, Tetris, and Super Mario Land. It supports save states, link cable emulation, and a real-time clock. Supported platforms include Windows 64-bit, macOS, Linux, and Raspberry Pi OS. The project is free under the GNU Lesser General Public License version 3.