Releases: LIJI32/SameBoy
SameBoy v0.14.4
This version is backwards compatible with save states from SameBoy 0.11.x and newer, as well as save states from any BESS compliant emulator
New/Improved Features
- GBS support updated to support common non-standard formats, as well as ugetab's GBS extensions
- ROM and GBS loading errors and handled better in the Cocoa frontend
- SameBoy is now better categorized on Linux desktops
- The Cocoa frontend now includes an optional update checker and installer
- Improved support for running without OpenGL in the SDL frontend, added command-line flag to disable OpenGL
- SameBoy will now attempt to load .snX save states (used by other emulators such as BGB) if a .sX save state is not found
- The Cocoa frontend now has volume control
- The Cocoa and SDL frontends now include an optional speedrun-friendly OSD
- DualSense controllers now have first-tier support in the Cocoa frontend, with rumble, LED, and analog turbo/slow-motion support, in both wireless and USB modes
- The SDL frontend now supports the -s/--stop-debugger command line flag, which starts SameBoy with a stopped debugged on the first instruction
- A new realistic low contrast color correction mode, "Harsh Reality", was added
- Improved the ticks debugger command with more detailed output
- Improved warnings when entering PPU or APU odd-modes
- Major improvements to JoyKit, which should allow previously broken controllers such as Xbox controllers or 8BitDo controllers to work in the Cocoa frontend
- The libretro frontend has been updated to the newer options API, which majorly improves core option screens in RetroArch and other libretro interfaces
Accuracy Improvements/Fixes
- Improved accuracy of RTC latching
- Fixed a bug that prevented STAT interrupt blocking from functioning correctly in the transition to VBlank while the OAM interrupt was disabled
- Disabled an attempt to improve audio accuracy that resulted in audio regressions in several games
- Improved T-cycle accuracy of VBlank
- Major improvements to emulation of the STOP instruction and speed switching
- MBC5's RAM enable register is now correctly emulated as an 8-bit register
- Improvements to several edge cases of the OAM corruption bug
- Fixed an issue where several DMG games would boot with incorrect palettes when using SameBoy's built-in boot ROMs
Bug Fixes
- Fixed a bug where the 'O' key could not be mapped in the SDL frontend
- Corrected the default mapping for DualShock 4 and DualSense controllers in the Cocoa frontend
- Fixed a bug that prevented using the Switch Pro Controller in USB mode in the Cocoa frontend
- Fixed a bug where Cocoa's VRAM viewer could appear blurry
Misc Internal Changes
- The GBS APIs now allow loading from a buffer
- Redundant MBC data removed from BESS save states
SameBoy v0.14.3
This version is backwards compatible with save states from SameBoy 0.11.x and newer, as well as save states from any BESS compliant emulator
New/Improved Features
- GBS APIs available in the core
- Built-in GBS player in the Cocoa frontend
- Like standard ROMs in SameBoy, it supports debugging and selection of specific models/revisions
- Support for emulation of the homebrew TPP1 MBC
- Save states can be dropped into emulator windows to load them in both the Cocoa and SDL frontends
- SameBoy now uses the BESS (Best Effort Save State) format within its save states, allowing interoperability between big and little endian save states, future versions of SameBoy, as well as other BESS compliant emulators (Such as the incoming releases of BGB and Emulicious)
Accuracy Improvements/Fixes
- Fixed time syncing issues when turning the LCD off and on, fixes timing issues in Link's Awakening
- Fixed a bug where an invalid SGB command would be ignored, while the actual SGB firmware would still process it in some manner, fixes Donkey Kong Land
Bug Fixes
- Better handling of more edge cases in the Linux build system
- Fixed a memory leak in the SDL and libretro frontends when loading a second ROM
- Fixed several potential crashes involving cheat codes
- Fixed a bug where the screen would temporarily freeze in the Cocoa frontend if certain controllers are rumbling in specific strengths
SameBoy v0.14.2
This version is backwards compatible with save states from SameBoy 0.11.x and newer.
New/Improved Features
- FreeDesktop installations now register and associate .ISX files
Accuracy Improvements/Fixes
- Fixed an audio regression where some games would play audio one octave lower when emulating a DMG
Bug Fixes
- Fixed a bug where certain Cocoa windows would incorrectly remain open after closing a ROM
SameBoy v0.14.1
This version is backwards compatible with save states from SameBoy 0.11.x and newer.
New/Improved Features
- Improvements to installation and packaging support on Linux, BSD and other FreeDesktop environments
Accuracy Improvements/Fixes
- Fixed a sweep regression when emulating DMG, SGB or CGB-C
Bug Fixes
- Fixed various potential crashes when using symbol files
- Fixed a bug where certain symbols would never be used with an offset
SameBoy v0.14
This version is backwards compatible with save states from SameBoy 0.11.x and newer.
New/Improved Features
- Emulation of the unreleased Workboy accessory in the Cocoa port
- Emulation of Game Link Cable and infrared cross-game communication in the Cocoa port
- Multiplayer support in the Libretro core now includes infrared support
- The debugger now supports the
undo
command, which will revert the most recent state-modifying command - The automatic tester can now optionally output TGA files instead of BMP files
- The debugger will now issue a warning when a ROM triggers PPU odd-mode
- Improved support to non-QWERTY, Latin keyboard layouts in the SDL port
- Simulation of an ambient light's effect on the non-backlit screens of the Game Boy, with user-controlled ambient light color temperature
- Improved menu scrolling in the SDL frontend
- Improved mouse support in the SDL frontend, with mouse wheel scrolling and a visual scrollbar
- The SDL port can now select a boot ROMs folder
- The escape button now returns to the previous menu in the SDL port instead of closing it completely
- Improved noise when emulating the Game Boy Camera on frontends without webcam support
- The SDL port will exit cleanly and report an error if it fails to initialize
- The automatic tester can now optionally create battery save files
- Support of two Real Time Clock emulation modes:
- Sync to system clock (Not affected by turbo, slow motion, pausing, etc.)
- Accurate (Affected by the mentioned above)
- The automation uses the new accurate RTC mode for stable results across runs
- Refinements to the icon
- Linux, BSD and other FreeDesktop users can now install SameBoy as both a command line utility and a GUI app by running
make install
Accuracy Improvements/Fixes
- Emulation of a scenario where an interrupt might trigger OAM corruption
- Emulation of CGB-mode TILE_SEL mixing
- Correct emulation of wave RAM reads when emulating a Game Boy Advance
- Accuracy improvements to infrared
- Accuracy improvements to the window
- Major APU improvements, with correct emulation of countless edge cases and newly discovered quirks:
- Complete rewrite of Channel 1's sweep envelope
- Complete rewrite of Channel 4's noise generation, especially mid-pulse writes to NR43
- Complete rewrite of the volume envelopes, including "Zombie Mode" and related quirks
- The state of the NRx1 registers are now correctly preserved when emulating models prior to Game Boy Color
- Emulation of a quirk where writes to NR44 might be delayed on models prior to Game Boy Color
- Improved and more accurate color correction
- Fixed a regression and improved the accuracy of speed switching, fixed a bug where odd-mode avoidance did not work correctly
- Improved timing of the STOP instruction
- Optional emulation of audio interference from the Game Boy SoC, with a user-controlled slider representing interference level
- Emulation of an APU quirk where triggering Channels 1 and 2 might advance the duty cycle in certain cases in CGB-E (and CGB-D, currently unsupported)
- Correct emulation of the differences between revisions when it comes to writes to NRx2 ("Zombie Mode")
- Accuracy improvements to RTC emulation
- Minor improvements to MBC3 emulation
- Prevent the printer from deadlocking if it was terminated during the transmission of a byte
Bug Fixes
- Fixed a rare potential crash when loading symbol files
- Fixed a bug where the Cocoa port would display wrong, dark, colors when disabling frame blending
- Fixed a bug where the SDL and libretro ports would not update the game's border when switching games and emulating a model other than the SGB
- Fixed cases where the audio thread would deadlock the Cocoa frontend
- Fixed a bug where changing the rewind length in the SDL port didn't take effect until restarting
SameBoy v0.13.6
This version is backwards compatible with save states from SameBoy 0.11.x and newer.
New/Improved Features
- Prevent SameBoy from asking for notification permissions until that feature is needed by an HuC-3 game
- Improved user interface on macOS Big Sur
- The SDL frontend now has the ability change the default window size
Bug Fixes
- Fixed a bug that caused the Quick Look previews to include a border on macOS Big Sur
- Fixed a bug where the RTC might drift when loading older saves or states, or when pausing SameBoy for a long time
SameBoy v0.13.5
This version is backwards compatible with save states from SameBoy 0.11.x and newer.
Bug Fixes
- Fixed major regression introduced in 0.13.4 that prevented saving progress in games and caused several other issues
SameBoy v0.13.4
This version is backwards compatible with save states from SameBoy 0.11.x and newer.
New/Improved Features
- Native support for ARM-based Macs (Experimental)
- Improved the loading time of battery saves with an RTC time set to the far past
Bug Fixes
- Fixed a spelling mistake in the debugger
- Fix several major regressions affecting games that use a real time clock
SameBoy v0.13.3
This version is backwards compatible with save states from SameBoy 0.11.x and newer.
New/Improved Features
- The scaling filters were updated to use gamma-corrected color mixing, improving the quality of all shaders, especially the LCD and CRT shaders.
Bug Fixes
- Fixed a regression in the CGB and AGB boot ROMs where wrong palettes were chosen for Nintendo DMG games.
SameBoy v0.13.2
This version is backwards compatible with save states from SameBoy 0.11.x and newer.
New/Improved Features
- The Cocoa debugger now has tab completion
- Conflicting key mappings are now highlighted in red in the Cocoa button configuration dialog
- Improved Dark Mode appearance in the Cocoa port
- Better, more system native appearance for the Cocoa memory viewer
- Improved Printer Feed window in the Cocoa port, now with an option to print with an actual printer
Bug Fixes
- Fixed a bug in the Libretro frontend that prevented certain achievements from triggering
- Fixed a bug where the save state format effectively used by the Windows build was not following the intended format
- The non-Windows builds can now read pre-0.13.2 Windows save states and vice versa
- Fixed a minor compatibility issue between save states created on 32-bit machines and ones created on 64-bit machines
- Fixed a potential crash when loading certain save states while a printer is connected in the Cocoa port