Skip to content

v0.5.2 - Presentation pacing (Windows + Linux)

Latest

Choose a tag to compare

@mstan mstan released this 03 Oct 19:40

Sonic 3 family v0.5.2 presentation pacing

Patch release for Sonic 3, Sonic 3 & Knuckles, and Sonic & Knuckles,
with Windows x64 ZIPs and Linux x86_64 AppImages. Supply your own matching ROM.

Presentation changes

  • The shared runner now waits immediately before presenting a completed frame,
    reducing the timing variation caused by changing simulation and rendering
    workloads. NTSC timing retains fractional clock ticks instead of losing them
    every frame.
  • Windows now prefers Direct3D 11. Explicit SDL renderer overrides remain
    supported, and SDL can fall back when the preferred driver is unavailable.
  • Leaving turbo mode, starting a new session, or resuming after a stall starts
    a fresh presentation schedule. Small scheduling delays retain the cadence.

All v0.5.1 fixes and mods are included. Widescreen and Knuckles remain opt-in
under Mods; Widescreen → Adaptive follows the window size.

Measurements and limits

On the tested Windows desktop, an active 32:9 Sonic 3 run with real audio
reduced the 99th percentile display interval from 30.3 ms to 18.3 ms. Gaps
above 20 ms fell from 251 to 6 across 1399 measured frames, with no dropped
presents in either run. These figures compare v0.5.1 with the pacing change
on an Angel Island scrolling and jumping route; they are not a guarantee for
every stage or computer.

Six 6000-frame gameplay and audio fingerprints matched v0.5.1 across native,
16:9, and 32:9 modes in Sonic 3 and Sonic 3 & Knuckles. The pacing tests cover
fractional timing, changing rendering workloads, stalls, turbo, and sessions.

Desktop composition can still produce display gaps, particularly with mixed
monitor refresh rates or background windows. The 60 Hz monitor test on that
desktop still showed dropped presents. This release does not claim to remove
all stuttering. Existing experimental widescreen and gameplay limitations,
including the separately tracked longer IceCap Act 1 route, still apply.

Upgrading

Extract the complete Windows ZIP. On Linux, make the AppImage executable and
run it from a writable folder; use --appimage-extract-and-run without FUSE.
Linux requires Ubuntu 24.04 (glibc 2.39) or a compatible x86_64 system.

Keep settings.ini, rom-*.cfg, *-mods.ini, and cartridge saves (*.srm).
Save states require the same build and configuration; use cartridge saves to
carry progress between releases.

Each package includes exact source and dependency metadata and licenses.
SHA256SUMS.txt covers all six downloads.