Difference between revisions of "BGB"

From Emulation General Wiki
Jump to navigation Jump to search
(External links: Removed unnecessary template text.)
m
 
(20 intermediate revisions by 16 users not shown)
Line 1: Line 1:
{{lowercase title}}
 
 
{{Infobox emulator
 
{{Infobox emulator
 
|title = BGB
 
|title = BGB
 
|logo =  
 
|logo =  
 
|logowidth = 0
 
|logowidth = 0
|version = 1.5.7
+
|version = {{Version|BGB}}
 
|active = Yes
 
|active = Yes
 
|platform = Windows
 
|platform = Windows
 
|target = [[Game Boy/Game Boy Color emulators|Game Boy/Color]]
 
|target = [[Game Boy/Game Boy Color emulators|Game Boy/Color]]
 
|developer = beware
 
|developer = beware
 +
|accuracy = Highly-Accurate
 
|website = [http://bgb.bircd.org/ BGB]
 
|website = [http://bgb.bircd.org/ BGB]
 
|support = [https://www.blockchain.com/btc/address/1GKtGirdpJbY7BgKttJ4LCGzyUVzBJoL4W Bitcoin]
 
|support = [https://www.blockchain.com/btc/address/1GKtGirdpJbY7BgKttJ4LCGzyUVzBJoL4W Bitcoin]
 
}}
 
}}
<strong>BGB</strong> is a closed-source [[Game Boy/Game Boy Color emulators|Game Boy/Game Boy Color emulator]] developed by beware. It is an emulator with excellent Game Boy and Game Boy Color accuracy, as well as near flawless link support. It has a wealth of options for color palettes and even enabling Super Game Boy colors and borders, though it doesn't emulate all of its functions. It also has an advanced debugger that resembles no$gmb's debugger.
 
  
 +
<strong>BGB</strong> is a freeware, closed-source [[Game Boy/Game Boy Color emulators|Game Boy/Game Boy Color emulator]] developed by beware. It is one of the recommended and first Game Boy/Color emulators, owing to its excellent Game Boy and Game Boy Color accuracy, along with its great link support. It also has a wealth of options for color palettes and even enabling Super Game Boy colors and borders, though it doesn't emulate all of its functions. It comes with a built-in debugger that resembles [[No$|No$GMB]]'s debugger, with slightly more features.
 +
 +
There is currently no official support for macOS, Linux, or BSD. Therefore, it is recommended to use [[Wine]] if there is a need to run BGB on a non-Windows system.
 
==Downloads==
 
==Downloads==
* [http://bgb.bircd.org/#downloads download]
+
{| cellpadding="4"
 +
|-
 +
|align=center|{{Icon|Win-big}}
 +
|'''[http://bgb.bircd.org/#downloads Latest release]'''
 +
|}
  
 
==Features==
 
==Features==
*emulation of the GameBoy, GameBoy Color, and Super Gameboy
+
*Emulates the Game Boy, Game Boy Color, and the Super Game Boy
*accurate emulation of the hardware, based on research with lots of test roms, useful for debugging/rom development. some highlights:
+
*Accurate emulation of the hardware, based on research with a lot of test ROMs, useful for debugging or ROM development. Here are some highlights:
**clock exact timing of LCD behavior/state changes
+
**High-accurate timing for the 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)
+
**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)
+
**Accurate emulation of the LCD register writes during scanline (prehistoric man, demotronic demo)
**emulation of inaccessible VRAM and OAM as on real hardware
+
**Emulation of inaccessible VRAM and OAM, as similar to real hardware
**10 sprites per line limit
+
**High-accurate emulation of sprites, which causes mode 3 to take longer periods to render
**clock exact emulation of sprites causing mode 3 to take longer
+
**Correct memory access timing (memory accesses happening at the last second to the last clock of an opcode)
**correct memory access timing (access happening at the last/second to last clock of an opcode)
+
**Accurate emulation for the differences between a DMG and a GBC, including timing differences, and differences in hardware behavior, initial state, etc
**accurate emulation of the differences between DMG and GBC, including timing differences, differences in hardware behavior, initial state, etc.
+
**Optionally emulates how an actual DMG would run a GBC ROM, and how an actual GBC would run a DMG ROM
**can run a GBC rom as on a DMG, and a DMG rom as on a GBC
+
 
*powerful debugger:
+
*Powerful debugger:
**disassembler with syntax selectable from: no$gmb, rgbds, wla
+
**Disassembler with selectable syntaxes from [[No$|No$GMB]], rgbds, and wla
**assembler (change code and ability to save modified rom)
+
**Assembler - modify code and the ability to save it as a modified ROM
**symbols (SYM file) support
+
**Symbols - .sym file support
**"inline" editing in code, data, and stack viewer
+
**'Inline' editing in code, data, and stack viewer
**breakpoints
+
**Breakpoints
**break on access
+
**Break on access
**conditional breakpoints
+
**Conditional breakpoints
**"on jump" access breakpoints for breaking before a jump into a range is taken.
+
**'on jump' access breakpoints for breaking before a jump into a range is taken
**source code breakpoints (ld b,b)
+
**Source code breakpoints - ld, b, and b
**debug messages (ld d,d)
+
**Debug messages - ld, d, and d
**singlestepping/tracing/animating/step out/step over
+
**Singlestepping/tracing/animating/step out/step over
**vram viewer: BG map, tiles, OAM, palette.
+
**VRAM viewer - background map, tiles, OAM, and palette
 
**IO registers viewer
 
**IO registers viewer
**live display of data during emulation and freezing of ram values
+
**Real-time 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)
+
**Break on exceptions - accessing inaccessible VRAM, read uninitialized RAM, echo RAM access, access locked external RAM, disable LCD outside vblank
**ability to modify all registers and state at any time
+
**Ability to modify all registers and state at any given time
**joypad window allows simulating button presses at any time while debugging
+
**Joypad window - allows simulating button presses at any given time while debugging
*SGB multiplayer with up to 4 gamepads
+
 
*graphics output: GDI, DirectDraw, Direct3D, OpenGL, null output
+
*SGB multiplayer - up to 4 gamepads
*graphics doubler: HQ2X, Scale2x, scanlines filter, blocky
+
*Graphics output - GDI or DirectDraw or Direct3D or OpenGL or null output
*sound output: waveout, directsound, null, and disk writer supported. support for writing the 4 channels to separate wav files
+
*Graphics doubler - HQ2X or Scale2x or scanlines filter or blocky
*AVI recording with installed codec of choice that is synchronized with recorded WAV file, and can be combined into a single video afterwards.
+
*Sound output - waveout or DirectSound or null or disk writer. Supports writing the 4 channels to separate .wav files
*runs almost all roms perfectly, compatibility comparable with the best GB/C emulators
+
*.avi recording with installed codec of choice that is synchronized with a recorded .wav file, and then can be combined into a single video afterward
*Accurate/high quality sound emulation, bandlimited synthesis
+
*Runs almost every ROM in existence perfectly, and the compatibility is comparable with the best GB/C emulators
*accurate video emulation including "high color" graphics, correct sprite/background priorities, 10 sprites/line limit, and mid-scanline register changes.
+
*Accurate and high-quality sound emulation, bandlimited synthesis
*Joystick/Gamepad support, everything mappable to every button
+
*Accurate video emulation including 'high color' graphics, correct sprite, and background priorities, 10 sprites per line limit, and mid-scanline register changes
*some user interface keys are configurable and can be mapped to joystick/gamepad buttons
+
*Joystick and gamepad support - any key can be mapped to any joystick or gamepad button
*MBC3 Real Time Clock emulation. RTC is saved/loaded in the .sav file, compatible with VBA
+
*Some user interface keys are configurable and can be mapped to a joystick/gamepad button(s)
*Auto delay/frameskip, emulation runs at 100% real speed and full 60 fps
+
*MBC3 Real-time clock emulation - the real-time clock data is saved or loaded in the .sav file, also compatible with [[VisualBoy Advance|VisualBoyAdvance]]
*GameGenie and GameShark cheat, load/save cheats (auto and manual), "cheat searcher", easy creation of new cheat codes
+
*Auto delay/frameskip - emulation runs at real Game Boy/Color speeds at 60 FPS
*save/load state with quick (zsnes style, and mappable) keys.
+
*GameGenie and GameShark cheat support - load or save cheats (auto and manual), a 'cheat searcher', and the ability to create cheat codes
*back and forward compatibility of sav files and save states so your saved progress is not lost. bgb can load all save files of *previous versions.
+
*Save/load state with quick ([[ZSNES]] style, and mappable) keys
*Load from ZIP and GZIP files
+
*Forward and backward compatibility of .sav files and save states, this is to ensure that your saved progress is not lost. BGB can also load all save files from previous versions
*good OS/platform compatibility/low requirements
+
*Load ROMs from .7z and .zip archives
*support for optional border bitmap and pseudo and real fullscreen modes.
+
*Support for an optional border bitmap image, with fake or real fullscreen modes
*TCP/IP game link support
+
*Game link cable support through TCP/IP
  
==References==
 
{{reflist}}
 
* [http://bgb.bircd.org/ website]
 
 
==External links==
 
==External links==
* [http://bgb.bircd.org/ website]
+
* [http://bgb.bircd.org BGB Website]
* [http://bgb.bircd.org/history.html changelogs]
+
* [http://bgb.bircd.org/history.html BGB Changelogs]
  
 
[[Category:Emulators]]
 
[[Category:Emulators]]
 +
[[Category:Console emulators]]
 +
[[Category:Handheld console emulators]]
 
[[Category:Windows emulation software‏‎]]
 
[[Category:Windows emulation software‏‎]]
[[Category:Game Boy emulators]]
+
[[Category:Game Boy/Game Boy Color emulators]]
 +
[[Category:Closed-source emulators]]

Latest revision as of 15:32, 5 February 2024

BGB
Developer(s) beware
Latest version 1.6.3 [+]
Active Yes
Platform(s) Windows
Emulates Game Boy/Color
Accuracy Highly-Accurate
Website BGB
Support ($) Bitcoin

BGB is a freeware, closed-source Game Boy/Game Boy Color emulator developed by beware. It is one of the recommended and first Game Boy/Color emulators, owing to its excellent Game Boy and Game Boy Color accuracy, along with its great link support. It also has a wealth of options for color palettes and even enabling Super Game Boy colors and borders, though it doesn't emulate all of its functions. It comes with a built-in debugger that resembles No$GMB's debugger, with slightly more features.

There is currently no official support for macOS, Linux, or BSD. Therefore, it is recommended to use Wine if there is a need to run BGB on a non-Windows system.

Downloads[edit]

Windows Latest release

Features[edit]

  • Emulates the Game Boy, Game Boy Color, and the Super Game Boy
  • Accurate emulation of the hardware, based on research with a lot of test ROMs, useful for debugging or ROM development. Here are some highlights:
    • High-accurate timing for the 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 the LCD register writes during scanline (prehistoric man, demotronic demo)
    • Emulation of inaccessible VRAM and OAM, as similar to real hardware
    • High-accurate emulation of sprites, which causes mode 3 to take longer periods to render
    • Correct memory access timing (memory accesses happening at the last second to the last clock of an opcode)
    • Accurate emulation for the differences between a DMG and a GBC, including timing differences, and differences in hardware behavior, initial state, etc
    • Optionally emulates how an actual DMG would run a GBC ROM, and how an actual GBC would run a DMG ROM
  • Powerful debugger:
    • Disassembler with selectable syntaxes from No$GMB, rgbds, and wla
    • Assembler - modify code and the ability to save it as a modified ROM
    • Symbols - .sym file support
    • 'Inline' editing in code, data, and stack viewer
    • Breakpoints
    • Break on access
    • Conditional breakpoints
    • 'on jump' access breakpoints for breaking before a jump into a range is taken
    • Source code breakpoints - ld, b, and b
    • Debug messages - ld, d, and d
    • Singlestepping/tracing/animating/step out/step over
    • VRAM viewer - background map, tiles, OAM, and palette
    • IO registers viewer
    • Real-time display of data during emulation and freezing of RAM values
    • Break on exceptions - accessing inaccessible VRAM, read uninitialized RAM, echo RAM access, access locked external RAM, disable LCD outside vblank
    • Ability to modify all registers and state at any given time
    • Joypad window - allows simulating button presses at any given time while debugging
  • SGB multiplayer - up to 4 gamepads
  • Graphics output - GDI or DirectDraw or Direct3D or OpenGL or null output
  • Graphics doubler - HQ2X or Scale2x or scanlines filter or blocky
  • Sound output - waveout or DirectSound or null or disk writer. Supports writing the 4 channels to separate .wav files
  • .avi recording with installed codec of choice that is synchronized with a recorded .wav file, and then can be combined into a single video afterward
  • Runs almost every ROM in existence perfectly, and the compatibility is comparable with the best GB/C emulators
  • Accurate and high-quality sound emulation, bandlimited synthesis
  • Accurate video emulation including 'high color' graphics, correct sprite, and background priorities, 10 sprites per line limit, and mid-scanline register changes
  • Joystick and gamepad support - any key can be mapped to any joystick or gamepad button
  • Some user interface keys are configurable and can be mapped to a joystick/gamepad button(s)
  • MBC3 Real-time clock emulation - the real-time clock data is saved or loaded in the .sav file, also compatible with VisualBoyAdvance
  • Auto delay/frameskip - emulation runs at real Game Boy/Color speeds at 60 FPS
  • GameGenie and GameShark cheat support - load or save cheats (auto and manual), a 'cheat searcher', and the ability to create cheat codes
  • Save/load state with quick (ZSNES style, and mappable) keys
  • Forward and backward compatibility of .sav files and save states, this is to ensure that your saved progress is not lost. BGB can also load all save files from previous versions
  • Load ROMs from .7z and .zip archives
  • Support for an optional border bitmap image, with fake or real fullscreen modes
  • Game link cable support through TCP/IP

External links[edit]