| Crates.io | terminal_gameboy |
| lib.rs | terminal_gameboy |
| version | 0.1.0 |
| created_at | 2026-01-04 22:59:20.108521+00 |
| updated_at | 2026-01-04 22:59:20.108521+00 |
| description | A terminal-based Game Boy emulator with ASCII and block rendering modes |
| homepage | |
| repository | https://github.com/dquigles/terminal_gameboy |
| max_upload_size | |
| id | 2022713 |
| size | 517,947 |
A rust, terminal-based Game Boy and Game Boy Color emulator with ASCII art and block rendering modes. Play your favorite retro games right in your terminal!
Utilizes gameboy_core for the emulator, providing input & output directly to the emulator.

cargo install terminal_gameboy
git clone https://github.com/dquigles/terminal_gameboy.git
cd terminal_gameboy
cargo build --release
The binary will be at target/release/terminal_gameboy.
Simply run without arguments to get an interactive ROM browser:
terminal_gameboy

terminal_gameboy <rom_file.gb> [OPTIONS]
| Flag | Description |
|---|---|
--ascii |
ASCII art mode with brightness characters (default) |
--block |
Unicode block mode with solid half-blocks |
--mute |
Disable audio output |
--help |
Show help message |
# Run with ASCII rendering (default)
terminal_gameboy pokemon.gb
# Run with block rendering
terminal_gameboy pokemon.gb --block
# Run without sound
terminal_gameboy pokemon.gb --mute
ASCII Mode — uses brightness characters for a classic terminal look:


Block Mode — uses Unicode half-blocks for higher fidelity:

| Key | Action |
|---|---|
| Arrow keys | D-Pad |
| Z | A button |
| X | B button |
| Enter | Start |
| Space | Select |
| Q / Esc | Quit |
For the best experience:
| Terminal | Status |
|---|---|
| Ghostty | ✅ Excellent |
| Kitty | ✅ Excellent |
| WezTerm | ✅ Excellent |
| iTerm2 | ✅ Good |
| Terminal.app | ⚠️ Unplayable, block mode has weird tearing |
| Windows Terminal | ✅ Good |
This emulator requires Game Boy (.gb) or Game Boy Color (.gbc) ROM files. You must provide your own legally obtained ROM files.
Save files are automatically stored in a .saves/ directory next to the ROM file. The emulator automatically loads saves on startup and saves on exit.
MIT License — see LICENSE for details.
Built with: