Downloads

Changes

This version is backwards compatible with save states from SameBoy 0.11.x.

New/Improved Features

An experimental support for emulating CGB-CPU C is now available in the Cocoa port. This is still experimental and does not accurately represent all differences between CGB-CPU E and CGB-CPU C yet

The Libretro port no longer restarts the core after changes to the high-pass filter or color correction

The SDL port can now start in fullscreen mode via a command line argument

High level emulation of Super Game Boy: Supports game colorization Supports borders, including correct emulation of the fade animations and borders that obscure parts of the Game Boy display window Up to 4-player multiplayer (Currently only in the Cocoa and Libretro ports) Can choose between Super Game Boy (NTSC), Super Game Boy (PAL) and Super Game Boy 2, with correct CPU speed emulation All models include open source boot ROMs, just like previously supported models Includes a default border for games without SGB support Includes a boot animation Accurate emulation of cases where the internal frame buffer loses sync with the SNES/SFC side

New CRT display filter

New preference panel in the Cocoa port

Minor visual improvements to the icon

Many performance all around the core

The debugger now includes jump-to breakpoints

New APU debugger commands

The SDL port now has mouse support

The SDL port now has an “Open ROM” dialog window, in addition to the previously available drag and drop support

The Cocoa and SDL ports now have better support for sub-frame input accuracy

The VRAM display window in the Cocoa port can now display SCX and SCY on the tilemap

Redesigned audio API that should improve audio quality in all ports

Accuracy Improvements/Fixes

WRAM, VRAM, and other types of memory are now realistically initialized to random values. The randomization patterns vary across emulated models and revisions. This fixes several games that rely on non-zero values on boot

Slightly more accurate emulation of the undocumented $FF4C register, which controls DMG mode on CGBs

register, which controls DMG mode on CGBs Fixed an APU regression where the noise channel’s volume envelope ran too fast

More accurate emulation of analog APU characteristics

Fixed a CGB boot ROM bug that made some games boot with incorrect palettes

Fixed incorrect emulation of echo RAM

Fixed a very rare edge case when an interrupt occurs while the stack points to $FF11

Correct emulation of the time required to switch the CPU speed

Correct emulation of CGB palette accessibility in different PPU timings, fixes Lego Racers

Other accuracy improvements to OAM and VRAM accessibility

The serial registers now behave realistically by working with bits instead of bytes

More accurate initial RAM and VRAM values when using the built in CGB boot ROM

Accurate emulation of AGB audio mixing, which is different from older models

Fixed the behavior of the wave channel’s first sample playback, fixes buzzing sounds on LSDJ and several games

Most aspects of STOP mode are now accurately emulated

Fixed a bug where initial register values were incorrect when selecting a palette for a DMG game in the built in CGB boot ROM

Fixed incorrect emulation of the Background and Window enable bit in LCDC

Bug Fixes

Fixed a bug where the SDL port would not recognize joypads if started directly to a ROM

Fixed a bug where the Quick Look previewer would show glitched thumbnails for DMG games

Fixed a regression that made the Cocoa port unable to display anything on Macs not supporting Metal

Fixed a bug where modifying RTC data could corrupt MBC RAM data

Fixed a bug where CGB save states were significantly larger than they should have been, older save states are converted

Fixed several bugs in expression parsing in the debugger

Work around a bug where some Windows 10 machines using Intel HD Graphics had unresponsive UI in the SDL port

Fixed a bug where the D-Pad did not work on several gamepads in the Cocoa port

Fixed a bug where the gamepad D-Pad had unexpected behaviors in the menus of the SDL port

Fixed a bug where underclocking slowed down the core to ~40% of its speed instead of an exact 50%

Misc Internal Changes