1
Ares V134 (ares-emu.net)

ares is a cross-platform, open source, multi-system emulator, focusing on accuracy and preservation.

ares v134 has now been released.

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.

Since v133, a total of 17 contributors have created 220 commits to the ares codebase.

New System: Arcade

We have added support for Sega SG-1000 based arcade hardware; hopefully the first of many arcade cores within ares (well, technically second because we had the Neo Geo, but that was focused on the console variant, the AES).

Due to the nature of arcade boards, Arcade cores use MAME format roms, and a game list rather than traditional rom files. You can set a path for arcade roms in "Settings -> Paths".

Arcade games will be grouped under one "Arcade" system, regardless of what system the Arcade hardware may be based on.

Please note that ares does not currently resolve parent-child relationships, so arcade rom zip files must contain every file required for that game; in MAME terminology, this is usually referred to as a "Non-Merged" set.

User Interface

A homebrew mode has been added to the settings panel; this is intended to enable features that are useful to homebrew devs but would harm performance for general gameplay. This setting is currently only used in the Nintendo 64 core; more information on this later.

Auto save settings when closing the settings dialog.
Add hot keys for volume control and mute
Refactor the log system to allow more control over log output
Restore the ability to hide cores from the menu
Add a "Scan" button to firmware settings; this autodetects supported firmware from a configured Firmware directory
Update the "Color Bleed" option to work for all non-HD cores, rather than just the SNES
Correct the description of Weave Deinterlacing (horizontal -> vertical)
Improve auto-detection of CD-ROM based games, drag/drop and command line loading are now more reliable

Debugging

Added support for debugging emulated systems via GDB, currently only the Nintendo 64 core supports this, but this will be expanded in future releases.

Atari - Atari 2600

Improve CPU timing in relation to WSYNC
Improve TIA timing, although still far from perfect
Implement latching of the current playfield pixel
Include "current cycle on this scanline" in CPU trace output to aid debugging
Improve RESMP behaviour and implement NUSIZ for missiles
Improve HMOVE object positioning
Fix RIOT timer and timer interrupt bit
Improve detection of PAL roms by looking for the (PAL) string as well as the (Europe) string in the rom filename
Support loading .bin format roms instead of just .a26

Bandai - WonderSwan / WonderSwan Color

Properly implement INT_BASE port
Implement sound DMA hold
Fix sound DMA readout values when disabled
Fix sound DMA source/length shadowing
Fix loading of trimmed roms
Fix ENTER/PREPARE opcode implementation and timing
Fix interrupt return address on division by zero
Improve ROM/SRAM bus timings

Microsoft - MSX / MSX2

Fix conflicts between ROM space and SCC with the KonamiSCC mapper
Allow loading of .rom format roms, rather than only .msx/.msx2

NEC - PC Engine

Add support for "color emulation" (non-linear RGB)

Nintendo - NES / Famicom

Lowered colour saturation to 1.5 to match most other emulators
Implement UNROM-512 mapper
Implement Action53 mapper
Implement mappers 31 and 218 (inl-nsf, magicfloor)
Fix MMC5 program mode 1
Fix support for NES2.0 extended PRG/CHR size variables
Implement self-flashing support to UNROM-512 and GTROM
Remove "GAMMA" adjustment when "Color Emulation" is enabled
Implement PPU open bus behaviour
Serialize controller state in save states: fixes input glitches when using run ahead
Support more variants of the Famicom Disk System Bios
Preliminary support for the EPSM expansion module

Nintendo - Game Boy

Fix MBC3 RTC Overflow/Register handling
Fix MBC3 RAMbank register width

Nintendo - SNES / Super Famicom

Fix support for the PAL Super GameBoy
Separate black level crush from color emulation, it's now exposed as "Deep Black Boost"
Fix PLB wrapping in emulation mode (based on hardware testing, all emulators seem to have gotten this wrong)

Nintendo - Nintendo 64 / 64DD

Implement RSP VU pipeline timings
Fix some incorrect game database entries (Beetle Adventure Racing (J), Chameleon Twist 2, J.League Live 64 Quake 64, Star Fox 64)
Implement RSP duel-issue restrictions for CFC2/CTC2
Fix RSP zero register locking
Clamp the analog stick range to an octagon shape
Implement RDP clock counter
Fix VI line interrupt to trigger post-increment
Fix an issue where instructions in icache would consume two cycles rather than one
Fix an off-by-one error in mul/div instruction timing
Preliminary implementation of FPU delays
Improve idle loop detection in the recompiler
Fix an issue where the recompiler would only advance the physical address and not the virtual address
Added support for the Nintendo 64 Transfer Pak
Fix a regression in the n64-systemtest relating to the TLB
Add support for "Homebrew Mode": this enables ISViewer debug output, and a cache coherency check to aid homebrew developers.
Add support for .D64 disk images
Add support for 64DD disk swapping
Implement the "Controller Config" portion of the Advanced Homebrew Rom Header
Clamp X/Y values from the N64 Mouse (prevents jittery input)
Fix broken RTC emulation for the 64DD
Fix broken RTC emulation for Doubutsu No Mori (Animal Forest)
Improve CIC detection algorithm to not rely on a database, allowing support for custom/homebrew IPL3

Sega - Master System / Game Gear

Added support for the Pak4 mapper
Added support for the Hicom mapper
Added support for the Hap2000 mapper
Added support for the K118in1 mapper
Rename MSX mapper to Zemina mapper to properly represent its origin/purpose
Add support for "color emulation": non-linear blue bias
Improve detection for Japanese roms (Games not containing "TMR SEGA" are only compatible with Japanese systems)
Force ".sms" extension roms to run in Master System Mode when loaded on the Game Gear core

Sega - Mega Drive / CD / 32X

Add support for runtime disc swapping, allowing multi-disc games to be played
Add support for the Mega Mouse when running Mega CD titles
Synchronize on every cycle when the 32X is not in use
Maintain 32X code cache allocation across resets
Fix audio overflow when titles restart the YM2612 (Fixes audio issues in Shining Force)
More performance tuning to the 32X core
Improve CDC emulation (ares now passes the CDC REGS test in mcd-verificator)
Fix a hang in "The Terminator (USA)"
Immediately update YM2612 key on/key-off on write, fixes Puyo Puyo Tsuu music
Update YM2612 key state on phase tick
Add 32X framebuffer mirror emulation, fixes SoulStar X
Tighten synchronisation between audio components
Improve bus-arbiter delays for z80->m68k communication (fixes audio in Overdrive 2)
Improve refresh and bus timings

SNK - Neo Geo

Use YMFM for YM2610 emulation, fixes audio issues in many titles

Sony - Playstation

Implement GTE interrupt bug (if an interrupt is triggered when a GTE instruction is next, the GTE instruction is erroneously executed), fixes spiky polygons in many titles.
Fix an issue where the CD-ROM SetLoc command was erroneously resetting the 'reading' flag
Fix an issue where the Digital Pad would not de-assert /ACK on an invalid command
Improve /ACK timing and behaviour, fixes broken input in many (but not all) games
Implement Dual Shock controllers, required for Ape Escape
Add support for runtime disc swapping, allowing multi-disc games to be played
Add support for half-speed XA-ACPDM, fixes high-pitched audio in many titles
Update ADSR envelopes immediately on write, fixes alert sounds in Metal Gear Solid
Implement muting of data tracks when played as CD-DA
Perform color modulation in RGB555 space, fixes Silent Hill's loading screen
Fix an issue where fast-load hooks would trigger at runtime, causing some games to crash at boot
Simulate an infinitely long cpu write fifo: fixes an issue where many games ran too slow.
Various timing tweaks to improve overall accuracy
Fix an issue where timers would update too slowly when using the recompiler

MOS 6502

Implement support for more undocumented opcodes

Other

Fix system-wide installations on Linux, this fixes database and shaders not loading.
Add support for SDL2 as an input driver on all platforms.
Allocate code cache at early startup for the recompiler: boosts performance on macOS, roughly doubling performance on M1 in some cases
Added support for SDL2 as an audio driver
Use DwmFlush on Windows for vsync, bypassing OpenGL driver bugs
Fix relative time in CD-ROM pregap Q subchannel
Move CD-ROM loading to a separate thread to speed up loading CD-ROM content
Avoid allocation of code buffers in the recompiler
More robust code cache allocation in the recompiler
Added "Games" category to macOS app bundle to allow Sonoma's Game Mode to function with ares
Added support for the risc-v architecture
Added preliminary emulation of the Intel 8080 cpu: not currently used but for future expansion
Fix an issue where the WASAPI driver would cause sync issues when fast-forwarding

no comments (yet)
sorted by: hot top controversial new old
there doesn't seem to be anything here
this post was submitted on 22 Nov 2023
1 points (100.0% liked)

Emulation

1 readers
1 users here now

Emulation across the ages

founded 1 year ago