ares

Version
141
Mise à jour
Formule Homebrew
brew install --cask ares

Parti de Bsnes et Higan développé par feu Near (se dénommant précédement Byuu), Ares est un émulateur multi-machines repris par Luke Usher et d'autres permettant d'émuler un certains nombres de machines comme la NES, Super Nintendo, N64, Game Boy, Game Boy Advance, GameGear, Master Sytem, Mega Drive (32X et CD), PC-Engine, Playstation, NeoGeo (Pocket, AES et MVS), MSX 1 et 2, Colecovision et Wonderswan. Des builds automatiques sont disponibles sur le GitHub.

Menu dans Ares

Changelog

Changelog

141

Since v140, 13 contributors have created 52 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.

Systems

Nintendo - SNES / Super Famicom

  • Fix detection of the Sufami Turbo base cartridge (Avoiding serial conflict with Sailor Moon SuperS - Fuwafuwa Panic).
  • Fix PowerFest '94 and Campus Challenge '92.
  • Add support for games with 256KB of SRAM (Notably used in rom hacks, but these hacks also work on real hardware).
  • Add support for the NTT Data Keypad
  • Fix SA-1 DMA to BWRAM banks 0x41 and above.

Nintendo - Game Boy Advance

  • Improve stop mode emulation, ensuring it only exits once the requested input is registered.
  • Improve interrupt timings (latch IE and IF for 1 cycle).
  • Add latches to DISPCNT background enable, object enable and force blank; these now correctly take effect after 3 scanlines.
  • Improve SIO register handling.
  • Fix an off-by-one error with BG mosaic handling.
  • Fix an oversight in OBJ mosaic at x=0. Improve OBJ timing: OBJs are now correctly rendered one scanline in advance, and OBJ PRAM access timings are closer to hardware.
  • Add a 2-cycle synchronizer and improve halted CPU timings
  • Selectively synchronize CPU and APU, allowing for the removal of the compile time 'PERFORMANCE' profile. (Greater accuracy in Release builds with no performance downsides).
  • Small improvements to PPU timing.
  • Added support for the Pixel Accuracy toggle; significant performance increase when pixel accuracy is disabled.

Nintendo - Nintendo 64

  • Remove the 'devertualizeFast' performance optimisation from code block lookups: this was proven to compromise correctness/accuracy.
  • Refactor devirtualize to return additional context for memory access, reducing code duplication in-memory operations.
  • Use JIT only when running code from i-cache.
  • Add support for 40 Winks (Aftermarket).
  • Add support for Xeno Crisis (World) (Aftermarket)
  • Allow for Pak swapping on Controller Port 1 (You can now change between Controller Pak/Transfer Pak/Rumble Pack at runtime).
  • Fix instruction trace debugging when using the recompiler.
  • Add support for multi-byte writes to the GDB debugger.
  • Use different GDB signals for the various exception types.
  • Allow arbitrary and possibly unaligned writes to RDRAM through GDB.
  • Add unusual warning when software uses CACHE on uncached addresses
  • Refactor JIT to remove an extra function call (instructionEpilogue) per instruction.

Sega - Mega Drive / Genesis / 32X / CD

  • Synchronize components more regularly when emulating 32X; this fixes a regression that caused 'Knuckles Chaotix' to be broken in ares v140.
  • Add an option to enable the TMSS "Produced by or under license from..." screen.

Other

  • Stage resources into the output directory on Linux; allowing running self-compiled builds without running 'make install' first.
  • Address some possible uses of uninitialized variables.
  • Enable the use of loading higan-style rom folders when using the command line
  • Update librashader integration for librashader ABI 2

MacOS fixes

  • Display errors from the shader loader in metal, easing debugging of librashader.
  • Add bounds checking for table view context menus; fixes a crash when right-clicking beyond the bounds of defined rows in a table.
  • Fix an issue where librashader did not function on macOS versions lower than 12 (Monterey) when compiled by CI
ares v140 released
2024-08-27 17:45:00

ares v140 has now been released.

Since v139, a total of 15 contributors have created 53 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.

Systems

Bandai - WonderSwan / WonderSwan Color

  • Implement cartridge SRAM open bus

Nec - PC Engine / TurboGrafx / SuperGrafx / CD

  • Automatic bios detection now prefers the Arcade Card bios for NTSC-J Region, rather than System Card 3.0

Nintendo - NES / Famicom / Disk System

  • Fix an issue where cartridge ram was not included in save states for some HVC-NROM and Sunsoft 1-3 mappers.
  • Add support for Camerica/Codemasters mappers
  • Add support for Tengen Rambo-1 mapper
  • Add support for Sachen-0037/Tengen-800008 mapper
  • Add support for the NES Zapper

Nintendo - Game Boy Advance

  • Prevent the debugger from advancing the CPU clock
  • Reset prefetch buffer on ROM accesses from DMA
  • Improve DMA timings
  • Implement that the prefetcher should halt only once DMA is accessing ROM
  • Prevent DMA from interrupting ROM accesses
  • Fix controls when using a rotated screen
  • Reload timer value after tick
  • Use separate latches per DMA channel
  • Implement graphics viewer in the debugger

Nintendo - Nintendo 64

  • Clear R0 register only when written to (Performance optimisation)
  • Fix an issue where loading save states would not set the correct audio frequency
  • Add missing fields to save states
  • Refactor to remove the branch state machine from the instruction epilogue (paving the way for future recompiler improvements)

Sega - SG-1000

  • Fix an issue where cartridge ram was not included for Taiwan-A and Taiwan-B mappers.

SNK - Neo Geo

  • Fix an issue where cartridge ram was not included in save states for the Jockey GP mapper.

Sony - PlayStation

  • Fix a crash when the display surface wraps around the framebuffer.
  • Fix an issue where CD-ROM seeking would not interrupt a read operation

Shared Components

ARM7TDMI

  • Fix reading SPSR register in user and system modes
  • Improve LDM/STM edge case handling

NEC V30MZ

  • Fix DAS overflow flag emulation
  • Fix instruction prefix handling
  • Fix IP on interrupt fired when prefixes are being used with non-prefixed instructions

Other

  • Fix an issue where settings may not save correctly on non-english locale
  • Improve the OpenGL integration with librashader; matching the implementation for the Metal driver
  • Improve the OpenGL driver on macOS: Fix flickering on resize, add fullscreen behavior toggle and fullscreen monitor selection
  • Fix building using Make 3.81 (macOS users no longer need to install a newer Make manually to build ares)
  • Properly detect the target arch when compiling with CL
  • Improve compatibility with FreeBSD
  • Fix an issue where the settings window would be too small to show all options on some configurations
  • Add the ability to switch between the interpreter and recompiler at runtime; previously this was a compile time switch unavailable to end users. You can use the "Force Interpreter" setting to force the 32X, N64 and PS1 cores to use the interpreter.
ares v139 released
2024-06-19 17:00:00

ares v139 has now been released.

Since v138, a total of 13 contributors have created 67 commits to the ares codebase.

If you wish to see the full changelog in a per-commit format along with their authors, similarly to how previous release notes were written, you can do so on GitHub here.

Bandai - WonderSwan / WonderSwan Color

  • Improve EEPROM emulation accuracy

Nintendo - NES / Famicom

  • Fix DMA interrupt
  • Various PPU improvements: most (all?) current PPU accuracy test roms now pass!
  • Improve emulation of MMC3: fixes test roms and crashes in Mickey's Safari & Incredible Crash Dummies
  • Fix missing scanlines in Burai Fighter (USA) (last known rendering bug!)
  • Fix MC-ACC IRQ timing
  • Add support for mapper 150 (UNL-SACHEN-74LS374N)
  • Add support for mapper 229 (UNL-BMC-31-IN-1)
  • Add support for mapper 225/255 (UNL-BMC-128)
  • Add support for mapper 172 (TXC-22211B)
  • Add support for mapper 132/173 (TXC-22211A/C)
  • Add support un-headered roms with the .unh extension (note: uses internal database; unknown roms will not work, headered roms are still preferred)

Nintendo 64 / Nintendo 64 DD

  • Disable run-ahead for 64DD; fixes an issue that caused 64DD games to fail to boot.

Nintendo - Game Boy Advance

  • Improve VRAM mirroring in bitmap background modes
  • Implement 1-cycle timer latch behavior
  • Improve BIOS open bus edge case emulation
  • Increase synchronisaton between comonents: slight performance loss for measurable accuracy gain in irq dma tests
  • Improve video capture DMA such that it only runs if enabled on scanline 162 of previous frame

Sega - Mega Drive / Genesis / CD / 32X

  • Implement correct SH2 clocks for PAL/NTSC 32X
  • Improve 32X PWM volume/mixing by taking configured cycle rate into account

User Interface

  • Improve driver settings and full-screen behavior on macOS
  • Fix an issue where IPS patches that extend the rom would fail to apply
  • Fix an issue where changing the video driver may not correctly apply settings
  • Support "Default" as a device with the WASAPI driver on Windows (Win10 only)
  • FIx an issue where some settings would not persist on non-english locales
ares v138 released
2024-05-02 15:00:00

ares v138 has now been released.

Since v137, a total of 10 contributors have created 58 commits to the ares codebase.

If you wish to see the full changelog in a per-commit format along with their authors, similarly to how previous release notes were written, you can do so on GitHub here.

Atari 2600

  • Improved 6502 CPU emulation; all unofficial opcodes are now implemented
  • Improve handling of the HMOVE register
  • Refactor of TIA; fixes many emulation issues but still imperfect
  • Implement correct 6502 reset timing

Bandai - WonderSwan / WonderSwan Color

  • Minor fixes to v30mz CPU emulation
  • Emulate 32KB SRAM for '8KB' type cartridges
  • Implement Sound Test register bits 1,2 and 3

Nintendo - NES / Famicom

  • Improved 6502 CPU emulation; all unofficial opcodes are now supported
  • Fix APU frame counter emulation
  • Various improvements to APU emulation
  • Implement correct 6502 reset timing

Nintendo - Nintendo 64

  • Fix an issue where saved data from the current game could be duplicated into the next
  • Fix an issue where the Real Time Clock may not function correctly depending on the user's local time zone

Nintendo - Game Boy Advance

  • Implement that the last cycle of the prefetcher cannot be interrupted
  • Implement correct ROM mirroring for Famicom Mini / Classic NES series
  • Improve handling of SRAM/Flash bus
  • Fix the timing of initial DMA wait cycles

Sega Mega Drive / CD / 32X

  • Lower sync interval between MD and 32X: improves emulation accuracy but does reduce performance

Sony - PlayStation

  • Update the blitter to operate on a copy of the framebuffer; fixes potential threading issues

ruby (Audio/Video/Input abstraction layer)

  • Added a native Metal backend for macOS with VRR support
  • Implemented latency selection in SDL audio driver
  • Removed the built-in Blur shader, using the bilinear slang shader is preferred
  • Removed non-hardware accelerated video drivers (any platform capable of running ares should at least have OpenGL, D3D or Metal available)
  • Reduce CPU usage on the video thread by using a condition variable rather than a spinlock
  • Add support for connecting a Mouse on macOS (for emulating SNES mouse, etc)
  • Remove tight loops in SDL and OpenAL drivers, reducing CPU usage when using these drivers.

User Interface

  • Fix an issue where nested slang shaders were not available in the UI

Auteur(s)

Auteur
feu "Near" (ex-Byuu)
Luke Usher

Autres émulateurs de la catégorie

  • MAME

    Dernière mise à jour:
    Version 0.271
  • RetroArch

    Dernière mise à jour:
    Version 1.19.1
  • Hypseus

    Dernière mise à jour:
    Version 2.11.3
  • FinalBurn Neo

    Dernière mise à jour:
    Version 1.0.0.2
  • MacMAME

    Dernière mise à jour:
    Version 0.224
  • OpenEmu

    Dernière mise à jour:
    Version 2.4.1
  • AdvanceMAME

    Dernière mise à jour:
    Version 4.0
  • Raine

    Dernière mise à jour:
    Version 0.64.13
  • XQEmu

    Dernière mise à jour:
    Version 1.7.2