Skip to content

Releases

v0.15.7 — Native co-op diagnostics

Choose a tag to compare

@mstan mstan released this 08 Nov 03:54

Adds optional playtest recordings for local Super Mario World sessions, including native simultaneous co-op.

  • Enable SMW Playtest Diagnostics → Diagnostic recording on the launcher's Mods page. Recording is off by default.
  • Captures include controller inputs, machine checkpoints, effective mods/settings, build and ROM identity, and frame checksums. The included developer replay helper uses an isolated profile and rejects incompatible or damaged captures.
  • Updates the snesrecomp engine pin to ccfc12996df05ee0ffab7cdd82b1e1d78c64481c.
  • Fresh installations enable adaptive widescreen with Fit to screen and Screen-based spawning. Existing saved mod choices remain authoritative.
  • Scripted and headless runs fail with a logged ROM-selection error instead of opening native file dialogs.

Sending a diagnostic recording

  1. Enable SMW Playtest Diagnostics → Diagnostic recording in Mods. Disable run-ahead while recording.
  2. Start a fresh play session and reproduce the problem with the relevant gameplay mods and settings.
  3. Quit normally if possible. Zip all files beginning smw-replay- in logs/ beside the executable or AppImage, including the .replay, .sav, .config.ini, .mods.toml and .mods.txt files. Include the crash report if one was generated.
  4. Attach the ZIP and your reproduction steps to the issue. A short clip helps identify visual or timing problems. Do not include ROM files.

Recording retains a bounded recent history and uses a background writer. An abrupt crash can lose the buffered tail. Offline playback requires the exact matching release, platform and ROM; online rollback sessions are outside this diagnostic replay contract. This release adds evidence collection and does not establish that an intermittent reported crash is fixed.

Downloads and upgrading

  • Windows: extract the complete ZIP and run SuperMarioWorldSNESRecomp.exe.
  • Linux: make the AppImage executable and run it. A Super Mario World (USA) ROM placed beside the AppImage is detected automatically; normal interactive launch also supports choosing it.
  • Supply your own Super Mario World (USA) ROM. No ROM is included.
  • To preserve an existing installation, keep saves/, config.ini, keybinds.ini, and mods/preloaded/state.toml. Extract into a new folder before copying your existing files across.

Validation

Both extracted platform packages completed audio-enabled native co-op runs and replayed all five independently loadable recording segments with matching frame checksums. Current-build save/load, fresh widescreen defaults, preservation of an explicit disabled widescreen choice, 100:9 recording/playback, and rejection of truncated, wrong-build and damaged recordings were checked. Windows packaging verifies its x64 DLL dependency closure; Linux packaging verifies portable state paths and preservation of user files. Interactive Steam Deck hardware testing is not part of these headless checks.

Super Mario World 0.15.6 - Online sign-in

Choose a tag to compare

@mstan mstan released this 02 Nov 06:53

Super Mario World 0.15.6

  • Adds Netplay to the standard Super Mario World launcher and connects it to the shared account and lobby backend.
  • Online play requires Discord sign-in. There is no guest fallback for online rooms. LAN / Direct IP remains available without signing in.
  • Updates recomp-ui and recomp-net, including current lobby, account and ICE transport support.
  • Keeps the native simultaneous co-op mod, adaptive widescreen, Falcon helper and opt-in Lua scripting in the standard package.

Open Netplay → Online Netplay, sign in with Discord, then choose Host Lobby and Create. Both players need this build. For simultaneous co-op, enable the native co-op mod and select 2 Player in the original game menu.

Validation covers release builds, unsigned online connection rejection, and shared LAN hosting/rematch tests. Live Discord completion and an Internet-hosted lobby have not yet been verified in this pass.

Supply your own Super Mario World (USA) ROM. Preserve your existing saves/, keybinds.ini, configuration and netplay_secret when upgrading. Credentials and ROMs are not included in the downloads.

Super Mario World 0.15.5 - diagnostic capture fix

Choose a tag to compare

@mstan mstan released this 01 Nov 03:34

Fix diagnostic DSP audio recording after reset or a save-state load (snesrecomp #233). When SNESRECOMP_DSPOUT is enabled, the recorder now tracks timeline changes, bounds ring reads, excludes speculative frames, and fails the capture run on output errors. Normal gameplay and playback do not use this recorder.

This Windows x64 hotfix retains the prior release engine and feature selections, plus the capture fix. Keep native saves and settings when updating. Host save states are build-specific. Supply your own supported ROM.

Super Mario World v0.15.4 - shared native/HLE package

Choose a tag to compare

@mstan mstan released this 30 Oct 05:35

SMW v0.15.4 delivers the owner-qualified shared SNES native/HLE optimization bundle.

  • Pin merged snesrecomp cc095ad4, whose runtime matches the approved combined build. The Windows release enables the qualified shared execution, audio, rendering and coprocessor implementations while retaining their portable reference choices in source.
  • Preserve the existing adaptive widescreen mod, its 16:9 enabled-mode default, Fit to screen choice and Screen-based spawning. Widescreen remains opt-in; no gameplay, controller or mod default changes.
  • Include the normal Lua-enabled executable, examples, client and Lua license. The listener remains opt-in through SNESRECOMP_LUA_PORT.
  • Include the Falcon owner-ROM helper and licenses. Owner ROMs and generated Falcon caches are not distributed.
  • Preserve the separate legacy IPS co-op executable in the same Windows ZIP. That edition remains opt-in, uses its existing 4:3 presentation and has Lua disabled. It accepts an untouched SMW (USA) ROM and creates its patched execution image locally.
  • Keep legacy-only adapter roots out of stock regeneration, preserving the approved stock dispatch table. Co-op regeneration continues to include its adapter.
  • Native saves and user settings remain separate from the release archive. Host save states belong to their exact build; old-state compatibility is not promised.

The owner cleared MMX, Super Metroid and SMW built from this shared runtime bundle. Release packaging checks use muted isolated profiles and do not repeat the cleared human gameplay check. Performance remains workload- and machine-dependent; this release makes no original Xbox or universal frame-rate claim.

Legacy hack credits: Noobish Noobsicle, Bloony and NesDraug. See docs/legacy-ips-coop.md for instructions and attribution.

Super Mario World v0.15.3 - shared renderer memory package

Choose a tag to compare

@mstan mstan released this 29 Oct 13:38
5210523

SMW v0.15.3 delivers the already owner-qualified shared renderer memory package through the normal engine dependency.

  • Pin merged snesrecomp 31d72e1a, containing compact captured PPU registers and on-demand scene-export scratch.
  • The measured SMW package reserves 1,572,864 fewer bytes of BSS (1.5 MiB). Matched stock/widescreen CPU samples were neutral/inconclusive; no release frame-rate gain is claimed.
  • Keep the adaptive-widescreen mod with Fit to screen and Screen-based spawning choices, Lua examples/listener opt-in and Falcon owner-ROM helper. The widescreen feature stays disabled by default; its existing enabled-mode default remains 16:9. No new gameplay or renderer default is introduced.
  • Native saves and user settings are preserved. Host save states belong to their exact build; old-state compatibility is not promised.

The owner already cleared the representative SMW gameplay check for this shared package. That evidence remains attached to its original source/binary identities. This release adds normal Windows/Linux packaging and muted runtime/current-build save-load checks without repeating the owner playtest. No ROM, owner Falcon cache, generated game sources or QA profile is distributed.

The Windows archive also preserves the separate legacy IPS co-op executable, rebuilt from the same qualified source and engine as version0.15.3. It accepts your untouched SMW (USA) ROM, creates its patched ROM locally and stays at4:3. Lua belongs to the normal executable. Both editions are in one Windows ZIP. The Linux AppImage is the normal edition.

The legacy local P1/P2 route matches the previous delivery; fresh-process save/load matches21 consecutive control WRAM frames. Same-build LAN startup and sustained exchange were exercised. The optional fixed-tick test closes one peer at600 while its peer is still finishing; a complete paired600-tick pass is not claimed.

Legacy hack credits: Noobish Noobsicle, Bloony and NesDraug. See the legacy co-op instructions and attribution.

v0.15.1 - Rendering performance

Choose a tag to compare

@mstan mstan released this 23 Oct 04:19

Reduce repeated VRAM copying during raster capture to improve CPU headroom, especially with adaptive widescreen. Exact immutable images preserve scanline changes; guest execution, PPU work, enemy spawning and gameplay rules remain intact.

The owner approved the final current-main gameplay build. Automated full-copy/optimized checks match 21 captured images plus simulation/render telemetry at 4:3, 16:9 and 32:9. Actual Mods Fit to screen with Screen-based spawning also matches the qualified route. Tracked, byte-compare and full-copy renderer checks pass.

The optional experimental simultaneous co-op mod from 0.15.0 is preserved and remains disabled by default, with its existing known limitations. Lua support/examples and the owner-ROM Falcon helper remain included. ROM-hack/content-pack development is not included.

Extract the complete Windows ZIP, or make the Linux AppImage executable. Supply your own Super Mario World USA ROM. No ROMs, generated owner assets or personal saves are distributed. Preserve native in-game progress and settings when updating; host save states are build-specific.

v0.15.0 - Experimental two-player co-op

Choose a tag to compare

@mstan mstan released this 21 Oct 21:18
6c773d6

Mario and Luigi can now play together through the original Super Mario World in an optional experimental native co-op mod.

  • Enable Simultaneous co-op (Experimental) on the launcher's Mods page.
  • Assign Player 1 and Player 2, press Play, and choose 2 Player in the original game menus.
  • Each player has independent controls, equipment and reserve items. Adaptive widescreen works with both players.
  • Co-op uses separate saves. The mod is disabled by default; ordinary solo play remains available.

This is a playable experimental prototype. Common interactions have been tested, but full campaign coverage and unusual combinations remain in progress. One known issue can leave a Yoshi berry uncollected if a recovery bubble interrupts the bite. See the known limitations.

This release uses production main. The ROM-hack/content-pack work remains on its development branch and is not included. No ROMs or generated owner assets are distributed.

Extract the complete Windows ZIP, or make the Linux AppImage executable. Supply your legally obtained Super Mario World (USA) ROM. Keep your existing saves and settings when updating.
Validation: Windows ZIP and Linux AppImage launcher/Mods, ordinary solo stage entry and two-player movement/jumps; clean Windows PATH and runtime DLL closure; AppImage state placement; portable co-op state/input/storage/hook checks. Fresh Windows co-op entry through the original menus produced no dispatch misses, dropped audio samples or output underflows. Automated runs were muted.

SHA-256:

  • Windows ZIP: b971c628d6c90f0648c5590601b5de7140091e07efeab913b296d92b3b22ce07
  • Linux AppImage: 8a5f0e9c8a1ac8387da6527c9f9d97db1acb1985f7f8f7bd18e03606b343cdac

v0.14.2 - Falcon loading and turbo audio

Choose a tag to compare

@mstan mstan released this 22 Sep 13:53

Captain Falcon now loads when the Smash Bros. 64 mod is enabled, and audio playback can recover correctly after fast-forward.

  • Read the owner ROM from the current mod loader's verified resources.
  • Bundle the Falcon asset helper for Windows and Linux. First use builds the cache locally from your Super Smash Bros. (USA) v1.0 ROM; Python and environment-variable setup are no longer required.
  • Activate Falcon's gameplay hooks and preserve the selected character when loading saves, including loading a Falcon save with the mod disabled.
  • Fix post-turbo recovery trimming the audio queue below the amount required to restart playback. This could leave music silent after a stage transition or buffer starvation.

Enable Smash Bros. 64 (Experimental) in Mods, select your supported Smash Bros. ROM, and press Play. Keep the complete release package together. No ROMs or generated owner assets are included.

Validated on the Windows ZIP and Linux AppImage: first-run cache generation, stage gameplay and controls, and save loading with Falcon on/off. Windows was tested without development tools on PATH. Audio recovery regressions pass at 32,040, 44,100 and 48,000 Hz; both packaged builds produced sustained audio after turbo. Launcher rendering and AppImage state layout were also checked.

SHA-256:

  • Windows ZIP: 7fe5f28f6c82a178ef2dc50a077e61fcd38f33ae983471dc15b1a5b640b86f5d
  • Linux AppImage: 7fa57304b85e38b4b0c06c27611d77fe1c8c49422bb196e642f18ff03a9a3ac3

Changes since v0.14.1

v0.14.1 — Mods page fix

Choose a tag to compare

@mstan mstan released this 22 Sep 03:04

Fixes an empty Mods page.

The mod provider was initialized with the catalog root mods, but it looks
for <root>/packages and the build stages mods/preloaded/packages. It
therefore found no packages, returned success — an empty catalog is legal —
and the Mods page rendered empty with no error logged anywhere. The packages
were present in the v0.14.0 zip the whole time; nothing loaded them.

Adaptive Widescreen, MSU-1 audio and Smash 64 Captain Falcon are all back.

The root now comes from the engine (SNES_MOD_CATALOG_ROOT) rather than
being spelled out per title, so the two cannot drift apart again.

Verified on both platforms: the Windows zip extracted and launched with
PATH scrubbed to C:\Windows\system32;C:\Windows with all three packages
listed, and the AppImage carries the same catalog under
mods/preloaded/packages.

Super Mario World Recomp v0.14.0

Choose a tag to compare

@mstan mstan released this 22 Sep 01:48
f5c4474

Launcher settings now save when you press Play or close the launcher, including fullscreen. No manual INI editing is needed.

  • Adds CRT Soft, LCD Grid, Sharp and Warm Composite shader presets.
  • Adds 4:3 CRT, 8:7 square pixels and 1:1 square frame display choices. These also control pixel proportions in adaptive widescreen; visible area and enemy spawning remain in Mods.
  • Uses shared SNES settings, shader assets and geometry, also consumed by Mega Man X.
  • Keeps bundled shader selections working after Linux AppImage relaunches or moving the installation.
  • Includes the built-in widescreen mod catalog in both packages. Lua support and examples remain included.

Downloads: Windows x64 ZIP and Linux x86_64 AppImage, with SHA256SUMS.txt. Supply your own supported Super Mario World ROM.

Validated full Windows/Linux builds, settings persistence, all four OpenGL presets, adaptive aspect geometry, Windows runtime DLL closure, and AppImage state preservation and remounts. Built from f5c4474 with shared engine 770bf651e63ae32ece5bc142bd4912838a3a69f1.