ares v145 released
2025-07-09 11:00:00

ares v145 has now been released.

This release contains hefty improvements to a number of ares components. Highlights include Real Time Clock support for the Game Boy Advance, improvements to the experimental PlayStation core, Sega SC-3000 support, important fixes to the Game Boy Color, as well as core improvements to the ares application itself that should improve performance and responsiveness.

Since v144, 8 contributors have created 90 commits to the ares codebase.

As always, if you wish to see the full changelog in a per-commit format along with their authors, you can do so on GitHub here.

ARM7TDMI (Game Boy Advance CPU, ST018 Super Famicom coprocessor)

  • Implemented many undocumented instruction encodings
  • Implemented invalid CPSR modes
  • Added support for MRC, MCR, and CDP coprocessor instructions
  • Allowed misalignment of the program counter in ARM mode

Nintendo - Game Boy Color

  • Improved HDMA and GDMA timings (fixes some major graphical bugs)

Nintendo - Game Boy Advance

  • Added support for the Real Time Clock
  • Re-introduced optional Game Boy Player support
  • Fixed a bug where EEPROM saves were initialized to all zeroes, rather than all ones
  • Improved handling of FIFO audio channels
  • Writes to APU registers and wave RAM while audio is disabled are now handled correctly
  • Prevented IRQs from advancing during DMA
  • Improvements to prefetcher timings
  • CPU is now stepped in single-cycle increments when halted

Nintendo - Famicom / NES

  • Fixed database to allow running PAL/NTSC games in both supported modes

Nintendo 64

  • Game Boy Color titles are now selectable for use with Transfer Pak
  • Renamed upscaling options from “SD/HD/UHD Quality” to “1x/2x/4x Native” to better describe the resolution increase

Sega - SG-1000 / SG-3000

  • Added support for the SC-3000
  • Improve IO port emulation (Port B bits 3-6 are active low, bit 7 is active high)
  • Fix an issue where games could incorrectly detect the SG-1000 as an SC-3000

Sega - Master System / Game Gear

  • Improved header validation; fixes many NTSC-J titles being detected as international

Sega - Mega Drive / Genesis / CD / 32X

  • Added CPU wait cycle for APU bus access

Sony - PlayStation

  • Fix incorrect handling of the CE bits in COP0.CAUSE
  • Fix boot of discs with non-standard license strings (Various unlicensed games)
  • Fix VRAM-to-CPU transfers
  • Fix issues with DMA interrupt flag calculation
  • Fix issues with virtual->physical address translation
  • Fix reads of DICR bit 15.
  • Fix an issue where the mute bit would not apply to reverb voices
  • Fix an issue where save states may not be re-usable between emulator launches
  • Fix an issue where SPU noise was not being correctly represented as a signed 16-bit quantity
  • (Temporarily) Remove the recompiler: one will be re-added once accuracy is more up to scratch

Application / Misc.

  • Core threading improvements have been made to ares, which should lead to increased UI responsiveness and potentially improved performance on some platforms.
  • Added a selector for region fallback preference when loading a title, to better account for cases where the ROM does not support the user’s primary region preference.
  • The status bar will now show the loaded system configuration and region.
  • Fixed an issue where nall::set::insert could fail silently
  • Resolved an invalid version issue when building ares from a source archive
  • Releases now contain platform-appropriate application version metadata
  • [Windows] Modified terminal output to be treated as UTF-8, and to allow the use of VT100 escape sequences when supported
  • [macOS] Enabled the system Edit menu, allowing copy/paste functionality inside the Tools window
  • [macOS] Fixed a possible startup crash on x86_64 systems
  • [macOS] Fixed issues when building ares on macOS 10.15

Dependencies

  • Updated SDL to version 3.2.14, containing miscellaneous bugfixes
  • Updated librashader to version 0.8.1, addressing a rare crash when loading shaders on Windows
  • Updated slang-shaders to ref 8c630d0d3
  • Updated Molten-VK to version 1.3.0