Skip to content

v1.3.0

Latest

Choose a tag to compare

@deltabeard deltabeard released this 11 Jun 09:42
· 23 commits to master since this release

Highlights

  • Add automated testing for LCD emulation. This is checked when a pull request is made.
  • Fixed LSDJ not working due to MBC5 RAM bank switching not emulated correctly.
  • Fixed a bug in the LCD emulation whereby the LCD was in HBlank state rather than OAM Scan after VBlank. This fixed an issue with Final Fantasy Legend III crashing on entering a battle, and the flickering in Prince of Persia (#73)
  • Fixed Final Fantasy Legend III not starting because Peanut-GB was not starting the APU when a bootrom was not being used.
  • Fixed Dragon Quest III, whereby halting the CPU with no interrupts enabled would cause Peanut-GB to infinite loop (#83)
  • Added list of projects that use Peanut-GB to README
  • Minor optimisation in the setting of f register in some CPU instructions. Clearing all 8 bits of the register can be faster than only clearing multiple specific bits in the register.
  • Use of macros to remove repetitive code in similar CPU instructions.
  • Improve emulation speed by counting the duration of time that the LCD is switched off
  • Improve RTC emulation accuracy (still not perfect)
  • Add repeating A and B keys to peanut-sdl by @lesleyrs in #97
  • Use SDL_HINT_WINDOWS_DPI_AWARENESS only if it's available by @RobLoach in #94
  • Demonstrated support for Windows 3.11 with Win32s and Windows NT 3.1
  • Fixed MBC3 RTC on cartridges with no RAM.
  • Minor optimisations.
  • Added a basic graphical UI debugger.
  • Further improvements to overall emulator stability and other minor adjustments have been made to enhance the user experience.

API

  • PGB_DEPRECATED macro is added to mark deprecated functions.
  • gb_tick_rtc() is deprecated. The RTC is now ticked internally by Peanut-GB automatically. This will be removed in v2.0.0.
  • Deprecate non-portable joypad_bits bitfield by @ccawley2011 in #106

Other changes

  • Added PGB_LIKELY() and PGB_UNLIKELY() macros.
  • Fixes to minifb by @lesleyrs in #99
  • Fix warning due to RTC_CYCLES cast by @ccawley2011 in #104
  • frontends: Fix parameter types in lcd_draw_line by @ccawley2011 in #105
  • Use bool for bitfield values by @ccawley2011 in #103
  • Add GB_INIT_INVALID_MAX by @ccawley2011 in #115
  • Update SDL2 in peanut-sdl to v2.32.4.
  • Fix incorrect free in debugger

New Contributors

Binaries

The attached binaries are Release builds with debug symbols attached.

Full Changelog: v1.2.0...v1.3.0