SameBoy

Highly accurate open source Game Boy and GBC emulator

  • Open SourceGitHub
  • Lior Halphon (LIJI32)Developer
  • 2 Nov 2026Page Updated

Details

Developer
Lior Halphon (LIJI32)
Source Code
GitHub
Page Updated

Supported Systems

Platform Support

Screenshots

Overview

SameBoy is an open source Game Boy, Game Boy Color and Super Game Boy emulator written in portable C by Lior Halphon. It is known for its very high accuracy: it passes all of blargg’s test ROMs and all of the mooneye-gb tests, and it handles demanding demos that rely on exact LCD timing.

It includes its own open source boot ROMs, so no BIOS dumps are needed, along with save states, real-time clock emulation, high-quality audio and several scaling filters. For developers it has a text-based debugger with an expression evaluator, disassembler and conditional breakpoints and watchpoints.

Official builds are published for Windows and macOS, where it has a native Cocoa interface with Game Boy Camera support, and it is also on the App Store for iOS. Linux and other systems can build it from source, and a libretro core is available. SameBoy is released under the MIT (Expat) licence and is actively developed.

Key Features

Very High Accuracy

Passes all blargg and mooneye-gb tests and exact LCD timing demos.

Built-In Debugger

Text debugger with disassembler, breakpoints and watchpoints.

Own Boot ROMs

Includes open source boot ROMs, so no BIOS dumps are needed.

Save States

Offers save states, real-time clock emulation and scaling filters.

Go to Downloads

Advertisement

Download SameBoy

What's new in v1.0.5SameBoy v1.0.5

This version is backwards compatible with save states from SameBoy 0.14.3 and newer, as well as save states from any BESS compliant emulator

New/Improved Features

  • Better ZIP file compatibility in iOS
  • Added keyboard shortcuts for the VRAM and Memory Viewers in the Cocoa frontends
    • VRAM Viewer tabs can be switched using ^1 - ^4
  • 0x can now be used an an alternative hexadecimal prefix in the debugger and Memory Viewer

Accuracy Improvements/Fixes

  • More accurate emulation of invalid MLT_REQ SGB commands
  • Fixed a bug where certain Game Boy Printer margin configurations were not emulated correctly
  • When emulating an RTC cartridge in Sync-to-Host mode, the RTC will now correctly halt if instructed by the ROM
  • Improved Game Boy Printer accuracy and timings
  • More realistic IR emulation, fixes IR features in certain games
  • Improved DAC emulation, especially on pre-GBC models
  • Improved LFSR stepping on pre-GBC models
  • Emulate a quirk where square channels keep running “in the background” after their timer expired on pre-GBC models
  • On pre-GBC models, the duty cycle of square channels is now latched between frequency clocks
  • Improved emulation of Wave RAM corruption on affected models
  • Correctly emulate noise channel background behavior on pre-GBC models

Thanks to Jeff Lynn for contributing many of this release’s APU improvements!

Bug Fixes

  • Fix Printer emulation and UI on iOS 27
  • Invalid SGB multiplayer modes are now correctly saved and loaded from states
  • Fixed a bug where WX writes would corrupt the Game Boy Camera state
  • Various fixes involving BESS serialization of RTC, HuC1, and TPP cartridges
  • Fixed a bug that caused Cheat Search to not scan HRAM when running ROMs without cartridge RAM
  • Fixed a regression that caused the libretro frontend to crash when running ROMs that has a cartridge battery but no RTC
  • Fixed a memory leak when taking screenshots in the SDL frontend on systems that use libpng
  • Fixed an issue that could cause ROMs filenames with no extensions to read and write from incorrect paths on Windows
  • Fixed an issue where SameBoy would behave incorrect when running from certain long Unicode paths on Windows
  • Fixed screenshots on Wine in the SDL port
  • Improved serialization of the Game Boy Printer state
  • Fixed a bug where certain Game Genie codes where not interpreted correctly
  • Fixed an issue where searching for cheats might return less results if two matching 16-bit results are overlapping
  • The camera and rumble states are now BESS-serialized
  • Fixed a bug where cheats modifying cartridge RAM addresses would ignore their configured bank
  • Fixed a bug where DST would interfere with the intended behavior of the Workboy’s internal clock
  • Fixed a bug where loading states could connect an accessory that might have not been supported by the frontend
  • Fixed a bug where resetting the Game Boy would disconnect a connected accessory
  • Fixed errors that caused audio recordings saved to AIFF and WAV files to use slightly invalid headers
  • Fixed a memory leak when using Cheat Search
  • SDL’s --model flag incorrectly handled MGB as DMG
  • Fixed a memory leak in the SDL frontend’s Cheats menu
  • Improved validation of ISX ROMs
  • Fixed a bug that could trigger phantom button presses, which in rare occasions could trigger game resets in the Cocoa and iOS frontends
  • Fixed a crash that could happen when handling with large selections in the Cocoa Memory Viewer
  • Fixed a potential crash when trying to change Cartridge RAM banks in the Memory Viewer while there is no Cartridge RAM
  • Fixed a potential freeze when trying to rename a palette in the Cocoa frontend and there are already palettes sharing the same name or prefix
  • Fixed a bug where deleting the last cheat code in the Cocoa or SDL frontends would not persist after reopening the ROM
  • Improved audio quality in the Cocoa and iOS frontends when dealing with underflows

…

Windows v1.0.5 · Download
SHA-256 5aa92fb376b53b57361b15c29a6ff5a4494f7ae6f4ba7cbdfa6ef8375765b655
macOS v1.0.5 · Download
SHA-256 a80890e3b9ef59c31cb4da458f30b13430ec2b887d9f884cea4cb55376e2a3ef

Follow new builds by RSS

SameBoy Download Archive