Downloads

Changes

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

  • Added support for more controllers in the iOS frontend, including singular Joy-Cons
  • Pressing buttons while in a locked rewind state now exits rewind mode in the iOS frontend
  • The iOS frontend now handles save conflicts with a dialog, making syncing saves across different machines and emulators easier
  • An examine/x command can now use the /s modifier to change its output style to RGBDS-compatible assembly
  • An examine/x command can now use $ in its modifier to use hexadecimal count values
  • It is now possible to adjust the maximum rumble strength
  • It is now possible to modify and save a running ROM file from the Memory Viewer in the Cocoa frontend
  • Controller buttons can now be assigned to one of 4 hotkey commands in the iOS frontend
  • Periodic saves were added to the iOS frontend
  • A new screenshot hotkey was added to the SDL frontend
  • Controller UI hiding in the iOS frontend can now optionally disable the centering of the game screen
  • The Cocoa and SDL frontends now save the battery more frequently

Accuracy Improvements/Fixes

  • Added silence detection to eliminate rounding artifacts when playing nothing but frequencies above Nyquist
  • Prevented abnormal vblank events from updating the SNES-side buffers prematurely
  • Fixed a bug that made reading the PCM registers non-deterministic when emulating a CGB in CPU revision C or older
  • Fixed a bug that caused ROMs to be running in the background under some cases in the Cocoa frontend
  • Fixed a bug that caused channel PCM12 to output incorrect channel 2 values when emulating CGB in CPU revision C or older
  • Improved the accuracy of the PCM registers when emulating CGB in CPU revision C or older
  • Emulated a new quirk where volume envelope ticks are delayed while emulating a CGB in CPU revisions D or E
  • Corrected the channel alignment of channels 1 and 2 while emulating CGB in CPU revision C or older
  • Fixed a bug where a volume envelope quirk that was only applicable to channels 1 and 2 was also applied to channel 4
  • Major improvements to emulation of channel 4 start delays
  • Emulated a quirk where one of channel 4’s internal counters counts while the channel is inactive
  • Emulated LFSR corruptions and “zombie steps” when writing to NR43, including revision differences

Bug Fixes

  • Fixed mouse cursor hiding behavior while debugging in the Cocoa frontend
  • Fixed an issue where rewinding could reset the ROM under some circumstances in the iOS frontend
  • Fixed a visual glitch in the reverse search functionality of the Cocoa debugger console
  • Fixed a memory leak in scenarios where getline fails on some platforms
  • Fixed a resource leak in scenarios where loading a cheat file fails
  • Fixed resource leaks in certain scenarios where loading a battery save or an ISX ROM fails
  • Fixed a bug that caused the SDL frontend to be stuck on the greyscale palette
  • Fixed a bug where starting an audio recording could crash on Windows on some systems
  • Fixed a bug where the Game Boy Camera could not be emulated correctly on some iPhone models
  • Fixed a spelling mistake in an iOS tip message
  • Fixed a bug where certain versions of macOS did not display SameBoy’s icon
  • Fixed an issue that made it impossible to change the RTC mode in link mode in the libretro frontend

Misc Internal Changes

  • Updated the boot ROMs so they can be built with the latest version of RGBDS
  • Removed code for supporting legacy Windows save states from versions no longer compatible with modern versions of SameBoy
  • Fixed compilation of the SDL frontend on unsigned char platforms
  • Made it possible to build the Cocoa frontend using older SDKs
  • Removed accidentally committed debugging code from the Cocoa frontend