Releases
v0.15
LIJI32
released this
02 Jul 19:48
New/Improved Features
Improved UI for the VRAM Viewer's palette and object views
Customizable palettes for monochrome models in the Cocoa frontend
Bundled with several new palettes as examples
The bundled register names symbol file now correctly names several undocumented registers
Improved performance by better utilizing Link-Time Optimizations
The Memory Viewer, as well as the debugger examine
command, no longer trigger side effects when reading from memory
The Develop menu in the Cocoa frontend now lists options to hide or show the background or object "layers"
Introducing PPU "fast paths", improving performance by up to 34% with not accuracy losses
Removed the use of slow floating point arithmetics in the APU code to improve performance
Introducing lazy APU output generation, improving performance by up to 17%
Link-Time Optimizations are now enabled for Windows build, significantly improving performance on Windows
A new dma
debugger command
Improved the performance and responsiveness of the Cocoa VRAM Viewer and Memory Viewer
New icon, minor visual refresh across both the Cocoa and SDL frontends
Cartridge Instances now allow having multiple saves for the same ROM file in the Cocoa frontend
The debugger apu
commands now display a single channel
Audio recording is now available in both the Cocoa and SDL frontends
The SDL frontend now uses XAudio2 on Windows, when available
The more common rX
hardware symbol naming scheme now replaces the IO_X
scheme; the latter remains supported
General code optimizations for overall performance improvements
Accuracy Improvements/Fixes
The Game Boy Pocket/Light is now available for emulation
Every CGB revision is now available for emulation, adding CGB revisions 0, A, B and D
An option to select the CGB revision is now available in the SDL port
Added MBC7 support
The mouse, as well as a joystick, can be used for motion controls
On the Cocoa frontend, a supported controller's motion controls can be used as well
Accurate timing of clearing bits in the IF register
Improved accuracy of LY change timings
Improved accuracy of the LY=LYC condition in revisions prior to CGB-D
Improved emulation of a glitch that makes channel 3 use the CPU's address bus as an index to the wave sample buffer
Fixed an incorrectly emulated theorized glitch where writing to VRAM in certain timings would corrupt data
Improved emulation of the TILE_SEL glitch
Major improvements to DMA, HDMA, and GDMA, including timings, revision differences, interaction with halt/stop, and all sorts of bus conflicts
This allows pixel-perfect emulation of certain demos, such as It Came from Planet Zilog
Improved IR modelling, fixes Gen 2 Pokémon Mystery Gift
Added MMM01 support, including Mani carts
Improved emulation of channel 1/2 "zombie stepping"
Improved serial accuracy
Correct emulation of how SCX prolongs mode 3
Including emulation of "SCX banging", which can disrupt the PPU state machine and, on a real device, damage the LCD
Improved emulation of object timings where X=0
Fixed a regression where MBC5's initial ROM bank was not 1
Improved emulation of the Game Boy Camera MBC
Improved HuC-1 emulation, fixes a Robopon Japanese Prototype ROM
Bug Fixes
Fixed a bug in the Cocoa frontend where screenshots with filters applied would come out blurry on Retina displays
Fix several instabilities in the Cocoa audio driver
Fixed a bug where certain writes, when emulating CGB-C, would corrupt the emulator state
Fixed a bug where the SDL fronted did not correctly load the palette setting
Fixed a bug where the debugger undo
command was available while not stopped
Fixed GDMA being used incorrectly in SameBoot
Fixed a bug where the obscured object indicator did not function correctly in the VRAM Viewer's object view
Fixed the Preserve Waveforms setting, now it behaves as intended
Fixed a bug where closing an instance connected via serial to another instance would not behave correctly in the Cocoa frontend
Fixed SDL crashes on certain Linux systems
Fixed UI issues on OS X Mavericks
Fixed achievement supports in the Libretro frontend
Fixed the 16x16 cartridge icon in both Cocoa and FreeDesktop
Fixes audio glitches during the SGB jingle
Visual fixes for the GBS player on macOS Big Sur and newer
Misc Internal Changes
Improvements to the input hints API
Added safe memory read API
New memory write callback API
New API to determine DMG-mode CGB
Improved APIs to handle input
New execution callback API
New LCD line callback API
An API for adjusting the RTC speed, for TAS verifications
An API for detecting lag frames
The direct access API now supports accessing the CPU registers
An API for allowing illegal directional inputs
General preparation for future support of different AGB revisions
You can’t perform that action at this time.