BGB is a GameBoy emulator/debugger which runs on Windows and Wine.
Within:
features;
downloads;
documentation;
changelog;
contact;
back links.
BGB is a Gameboy emulator, a program that lets you play Gameboy and Gameboy Color games on a pc. It does this with many features that give a good gameplay experience, such as gamepad support, high quality sound and graphics, smooth Vsync animation, low latency, and a rewind key. In addition, it contains a debugger that lets you analyze/look into the emulation, create cheat codes, and assist in creating and modifying roms. Because of BGB's high emulation accuracy, if your rom works in BGB, it will most likely work on hardware too.
While some other emulators are upping their system requirements, and dropping 32 bits or older windows support, I keep providing 32 and 64 bits versions and I am committed to keeping BGB working on both old and current PCs for the forseeable future, currently still working on Windows 95b and Pentium 1. I also care about supporting Wine.
Features
- emulation of the GameBoy, GameBoy Color, and Super Gameboy
- accurate emulation of the hardware, based on research with lots of test roms, useful for debugging/rom development. some highlights:
- clock exact timing of LCD behavior/state changes
- realistic initial ram values - random but with specific bit patterns, and simulated values left by bootroms (for example "nibbler (pd)" depends on this)
- accurate emulation of LCD register writes during scanline (prehistorik man, demotronic demo)
- emulation of inaccessible VRAM and OAM as on real hardware
- 10 sprites per line limit
- clock exact emulation of sprites causing mode 3 to take longer
- correct memory access timing (access happening at the last/second to last clock of an opcode)
- accurate emulation of the differences between DMG and GBC, including timing differences, differences in hardware behavior, initial state, etc.
- can run a GBC rom as on a DMG, and a DMG rom as on a GBC
- powerful debugger:
- disassembler
- assembler (change code and ability to save modified rom)
- symbols (SYM file) support
- "inline" editing in code, data, and stack viewer
- breakpoints
- watchpoints (break on access)
- conditional breakpoints
- "on jump" watchpoints for breaking before a jump into a range is taken.
- source code breakpoints (ld b,b)
- singlestepping/tracing/animating/step out/step over
- reverse singlestep, stepout, stepover (rewinding back in time)
- vram viewer: BG map, tiles, OAM, palette.
- IO registers viewer
- live display of data during emulation and freezing of ram values
- break on exceptions (accessing inaccessible VRAM, read unitialized RAM, echo ram access, access locked external ram, disable lcd outside vblank)
- ability to modify all registers and state at any time
- joypad window allows simulating button presses at any time while debugging
- SGB multiplayer with up to 4 gamepads
- rewind key
- graphics output: GDI, DirectDraw, Direct3D, OpenGL, null output
- graphics doubler: HQ2X, Scale2x, scanlines filter, blocky, dot matrix, GBC RGB
- sound output: waveout, directsound, Xaudio2, null, and disk writer supported. support for writing the 4 channels to separate wav files
- AVI recording, to installed system codec of choice. No sound included but is in sync and conveniently named with recorded wav file.
- runs almost all roms perfectly, compatibility comparable with the best GB/C emulators
- Accurate/high quality sound emulation, bandlimited synthesis
- accurate video emulation including "high color" graphics, correct sprite/background priorities, 10 sprites/line limit, and mid-scanline register changes.
- This emulator is fast.
- Joystick/Gamepad support, everything mappable to every button
- some user interface keys are configurable and can be mapped to joystick/gamepad buttons
- MBC3 Real Time Clock emulation. RTC is saved/loaded in the .sav file, compatible with VBA
- Auto delay/frameskip, emulation runs at 100% real speed and full 60 fps
- GameGenie and GameShark cheat, load/save cheats (auto and manual), "cheat searcher", easy creation of new cheat codes
- save/load state with quick (zsnes style, and mappable) keys, and preview screenshots for slots in select window.
- Load from ZIP and GZIP files
- good OS/platform compatibility/low requirements (works well on wine, windows 98, and on slow/old PCs)
- support for optional border bitmap or PNG file and pseudo and real fullscreen modes.
- TCP/IP game link support
Downloads
BGB 1.6.2 64 bits (zip, 1.03 MB)
BGB 1.5.11 (zip, 480 kB)
BGB 1.5.11 64 bits (zip, 956 kB)
download and use at your own risk. i'm not responsible for any damage caused by these files.
Looking for things to run in BGB?
Documentation
I mirror a local copy of the Pan Docs because the no$gmb website on which it was originally hosted is no longer up.
version history
New in BGB 1.6.2 (2024-03-01)
- Fixed a number of stability related bugs
- Improved accuracy of joypad timing
New in BGB 1.6.1 (2024-02-01)
- Fixed a bug where the game state could get corrupted in a rare edge case
New in BGB 1.6 (2024-01-29)
- Added rewind key (default: Tab) and reverse tracing
- Added support for loading and saving PNG images (windows XP and later)
- GB Camera emulation (using webcam, image file, or test pattern)
- Added support for x2, x3, x4 scale border images. Ability to apply doubler to x1 and SGB borders
- Improved GBC color options, including "GBC reality" and custom 3d LUT support (GBI compatible PNG format)
- realistic simulation of DMG and GBC LCD with new doublers (up to x4 scale) and frame blending options. new "DMG reality" colorscheme.
- Separate configurable border image and colors for SGB, and ability to show border image until a SGB border is set.
- changed default to the original, lighter, BGB 0.3 colorscheme. The darker "BGB LCD green" can still be chosen.
- new lock aspect ratio option, and ratio can be customized
- rapid A/B speed is now configurable, and default speed now works with more games
- mappable buttons can now be combinations with Ctrl, Alt, Shift. Ctrl+R is now an alternative shortcut for reset in the debugger.
- renamed "access breakpoints" to "watchpoints" to follow standard naming used by other gameboy debuggers
- "copy code" in the debugger in a format that can be edited and pasted back in modify code.
- common register names such as rLCDC, rNR10 can now be input in the debugger.
- Ability for breakpoint or watchpoint to log a debug message instead of breaking
- Xaudio2 sound output can now be automatically chosen by default
- Default audio samplerate is now automatic based on OS mixer samplerate (typically 48000 or 44100)
- Changed save filename handling of gzipped roms. old save files are still loaded. Setting for old behavior.
- Ini settings so debugger, vram viewer, and IO map windows can be visible on startup
- Improved accuracy
- Fixed many bugs
New in BGB 1.5.11 (2024-01-29)
- Bug and problem fixes and accuracy improvements only. New features are in 1.6.
Full version history
email.
note: you must put the word "gameboy" in the subject or the email will be filtered as spam.
email:
Back links
Zophar's Domain - "This is by far and away one of the bestGame Boy emulators around."
Emu-France (french) - translated: "This is the best emulator Game Boy and Game Boy Color. Highly accurate and true"
AEP emulation (german) - rated 5 out of 5, "very good emulator with perfect suppport for modern and old games, and good sound and graphics"
nemoprod - GB emulator of choice.
also check out beware ircd, freeware IRC server for windows.
Website improvements by Lyth