github TheAnsarya/Nexen v1.4.31
Nexen v1.4.31

latest releases: v1.4.41, v1.4.40, v1.4.39...
one month ago

Nexen v1.4.31 — WonderSwan Timing, Avalonia Fixes & Benchmark Infrastructure

15 commits | 5,134 tests passing (3,690 C++ + 1,444 .NET) | Zero warnings

Nexen v1.4.31 focuses on WonderSwan PPU timing accuracy, Avalonia UI stability fixes, benchmark infrastructure for evidence-based performance work, and codebase hygiene improvements.


Highlights

Feature Details
WonderSwan timing fixes Corrected WS VTOTAL frame timing, low-VTOTAL frame finalization, and WSC PPU short-frame handling aligned with ares behavior (#1076)
Avalonia binding fix Fixed enum-to-int tab SelectedIndex binding and NavigateTo robustness (#1278)
InitializeComponent cleanup Removed manual InitializeComponent shadowing that conflicted with generated code (#1223, #1279)
Benchmark infrastructure Added SNES PPU, Genesis VDP, Debugger, GBA DMA, and save state compression benchmarks
EditorConfig charset Set charset to utf-8-bom for consistency across the project (#1283)

Fixed

  • WonderSwan VTOTAL frame timing aligned with ares — corrected WS VTOTAL frame finalization behavior to match ares reference implementation (#1076)
  • WonderSwan low-VTOTAL frame finalize — fixed low-VTOTAL frame finalization and added parity tests (#1076)
  • WSC PPU VTOTAL modulo revert — reverted WSC PPU VTOTAL modulo change and fixed short-frame handling (#1076)
  • Avalonia enum-to-int tab SelectedIndex binding — used ReflectionBinding for enum-to-int tab SelectedIndex and hardened NavigateTo (#1278)
  • InitializeComponent shadowing — removed manual InitializeComponent that was shadowing XAML-generated code (#1223, #1279)
  • Stale NuGet Package Restore TODO — removed stale TODO from .gitignore (#1280)
  • CHANGELOG date errors — fixed 3 incorrect dates in CHANGELOG and untracked build_output.txt (#1280)

Changed

  • EditorConfig charset — changed charset to utf-8-bom for consistency (#1283)
  • Warning stabilization — stabilized remaining warnings for clean v1.4.31 release (#1284)

Performance

  • New benchmark suite — added SNES PPU, Genesis VDP, Debugger, GBA DMA, and save state compression benchmarks for evidence-based performance triage

Issues Referenced

Issue Title Type
#1076 WonderSwan/WSC timing and PPU accuracy fix
#1223 InitializeComponent shadowing fix
#1278 Enum-to-int tab binding fix
#1279 InitializeComponent generated code conflict fix
#1280 Stale .gitignore TODO and CHANGELOG dates fix
#1283 EditorConfig charset consistency fix
#1284 Warning stabilization for release chore

Validation Summary

Check Result
Release x64 build Success (zero warnings)
C++ tests (Google Test) 3,690 passed, 0 failed
.NET tests (xUnit v3) 1,444 passed, 0 failed
Total 5,134 tests passed

Downloads

Windows

Build Download Notes
Standard Nexen-Windows-x64-v1.4.31.exe Single-file, recommended
Native AOT Nexen-Windows-x64-AoT-v1.4.31.exe Faster startup, larger binary

Linux

Build Download Notes
AppImage x64 Nexen-Linux-x64-v1.4.31.AppImage Recommended for most users
AppImage ARM64 Nexen-Linux-ARM64-v1.4.31.AppImage Raspberry Pi 4/5, etc.
Binary x64 (clang) Nexen-Linux-x64-v1.4.31.tar.gz Requires SDL2
Binary x64 (gcc) Nexen-Linux-x64-gcc-v1.4.31.tar.gz Requires SDL2
Binary ARM64 (clang) Nexen-Linux-ARM64-v1.4.31.tar.gz Requires SDL2
Binary ARM64 (gcc) Nexen-Linux-ARM64-gcc-v1.4.31.tar.gz Requires SDL2
Native AOT x64 Nexen-Linux-x64-AoT-v1.4.31.tar.gz Faster startup

macOS (Apple Silicon)

Build Download Notes
Standard Nexen-macOS-ARM64-v1.4.31.zip App bundle
Native AOT Temporarily unavailable .NET 10 ILC compiler bug

Full Changelog: v1.4.30...v1.4.31

Don't miss a new Nexen release

NewReleases is sending notifications on new releases.