Skip to content

Releases: mstan/Tomba2Recomp

Tomba! 2 v0.2.0 - Adaptive scenery and authentic performance

Choose a tag to compare

@mstan mstan released this 09 Oct 12:01

Tomba! 2 v0.2.0 - Adaptive scenery and authentic performance

Adaptive widescreen and 1080p internal rendering now default on for the US disc
(SCUS-94454), alongside texture correction and Seamless Loading. Resize the
window to reveal more of the scene; gameplay retains its authored timing.

  • Repairs missing and partly rendered actors, signs, trees, effects and terrain
    in the supported viewport paths, including the opening village.
  • Keeps all 343 nonempty opening-area terrain cells resident and submitted,
    rather than selecting a small camera-dependent subset.
  • Repairs the sea/cloud discontinuity at the original 4:3 composition boundary
    and thin terrain faces lost through integer projection rounding.
  • Restores approximately 30 fresh scene frames per second in the measured
    village movement and jump sections with complete scenery. The original
    two-VBlank scene loop remains unchanged; these measurements are not a
    whole-game minimum-FPS guarantee.
  • Uses the enhanced resident-loader and added-terrain execution implementations
    selected at build time. Working reference implementations remain buildable.
  • Retains default-on fast loading. The first launch prepares resources from
    your own disc; prepared game-resource data is not shipped.
  • Disables and hides interpolation and generic CD/host timing controls.

The owner approved the visibility, loading and authentic-rate candidate.
Windows x64 and Linux x86_64 packages include OpenBIOS and audited native
overlay candidates prepared from the original US inputs. Players supply their
own US disc. Complete native coverage and a full playthrough remain unproven;
interpreter and runtime-compilation fallback remain available for gaps.
The Italian release is unchanged.

Tomba! 2 v0.1.0 - Seamless Loading

Choose a tag to compare

@mstan mstan released this 05 Oct 01:10

Seamless Loading is now enabled by default for Tomba! 2 (USA, SCUS-94454).

  • Near-instant area loading using resources prepared from your own disc, with normal gameplay and audio pacing.
  • First launch builds a local resource cache; subsequent launches reuse it. No player-side compiler or extraction script is needed for resource preparation.
  • Replaces the generic CD Speed and turbo-style Fast Loading options. Disable Seamless Loading in Mods to restore the original loader.
  • Removes the experimental debug menu from the bundle because its modified code caused severe slowdown.
  • Includes freshly prepared and audited native code for the original area images and shared overlays, including the opening prologue.

The owner accepted late-game area playtesting. Cutscenes, music and speech keep their normal playback behavior.

Download the Windows x64 ZIP or Linux x86_64 AppImage below. Both include OpenBIOS and require your original US disc image. Disc resources, retail BIOS dumps and player saves are not included. SHA-256 sidecars accompany both downloads.

For a Windows upgrade, extract into a fresh folder and copy your saves over so retired mod packages are not carried forward. The Linux AppImage refreshes the bundled catalog automatically while preserving saves, mod selections and user-installed packages.

This release is for the US game. The Italian version remains available in its existing separate release; arbitrary asset replacements are outside this loader's validated scope.

Tomba! 2 v0.0.10 - AOT overlays for Windows and Linux

Choose a tag to compare

@mstan mstan released this 12 Sep 00:22
c3e0c91

Windows x64 and Linux x86_64 release for Tomba! 2: The Evil Swine Return (USA, SCUS-94454).

Native overlay candidates are prepared from verified original-disc inputs before gameplay, including all 22 area files plus shared code. Windows includes 334 audited native pairs (22,533 manifest rows); the fresh Linux build includes 74 pairs (14,576 rows). These counts describe native candidates, not exhaustive function coverage.

The owner accepted Windows mining interactions/transitions and water temple/Kujara Ranch performance. Both packaged platforms booted through bundled OpenBIOS into rendered game sequences with runtime compilation disabled and native libraries loaded. Linux was smoke-tested on Ubuntu 24.04 under WSL. Every bundled native pair passed ABI/export/pair and original-input guard audits; AOT_CACHE_AUDIT.json records the results. AppImage layout and reseeding checks passed.

On Windows, extract the ZIP and launch Tomba2Recomp.exe. On Linux, make the AppImage executable and run it. Select your matching original disc image. OpenBIOS is bundled; a supported retail BIOS is optional. Disc images, retail BIOS dumps, player saves, and capture JSON are not included. Preserve your existing memory cards when moving installations.

Interpreter and runtime-compilation fallback remain available. Complete static coverage, a full playthrough, and optional-enhancement behavior remain unproven; the Linux smoke check is not a full gameplay validation.

Release source is on Tomba2 master, through PR15 and PR16, with psxrecomp master da4434cf and UI e45e1f3. Artifacts were packaged from 9c8d48c; the final Windows executables are byte-identical to the previously smoke-tested builds.

See the README-linked reusable AOT sharding guide and regional release reproduction notes. SHA-256 sidecars accompany both downloads.

Tombi! 2 Italian v0.0.10-ita.1 - AOT overlays for Windows and Linux

Choose a tag to compare

@mstan mstan released this 12 Sep 00:22
c3e0c91

Windows x64 and Linux x86_64 prerelease for Tombi! 2 (Italian PAL, SCES-02686).

Italian overlays are independently prepared from verified Italian original-disc inputs before gameplay, including all 22 area files plus shared code. Each platform includes 74 audited native pairs (14,920 manifest rows), in its own architecture-specific cache namespace. These counts describe native candidates, not exhaustive function coverage.

The owner accepted Windows gameplay checks and reported great performance in water temple and Kujara Ranch. Both packaged platforms booted through bundled OpenBIOS into rendered game sequences with runtime compilation disabled and native libraries loaded. Linux was smoke-tested on Ubuntu 24.04 under WSL. Every bundled native pair passed ABI/export/pair and original-input guard audits; AOT_CACHE_AUDIT.json records the results. AppImage layout and reseeding checks passed.

On Windows, extract the ZIP and launch Tombi2Recomp-ita.exe. On Linux, make the AppImage executable and run it. Select your matching Italian disc image. OpenBIOS is bundled; a supported retail BIOS is optional. Disc images, retail BIOS dumps, player saves, and capture JSON are not included. Keep Italian memory cards separate from US cards and preserve existing saves.

Interpreter and runtime-compilation fallback remain available. Complete static coverage, a full playthrough, and optional-enhancement behavior remain unproven; the Linux smoke check is not a full gameplay validation. One early Italian attract watchdog abort did not reproduce in longer retesting; its cause is unresolved and the watchdog remains enabled.

Release source is on Tomba2 master, through PR15 and PR16, with psxrecomp master da4434cf and UI e45e1f3. Artifacts were packaged from 9c8d48c; the final Windows executables are byte-identical to the previously smoke-tested builds.

See the README-linked reusable AOT sharding guide and regional release reproduction notes. SHA-256 sidecars accompany both downloads.

Tomba2Recomp shared staging validation 2026-09-03

Choose a tag to compare

@mstan mstan released this 03 Sep 17:12
3593744

Windows and Linux validation build from merged master. Staged psxrecomp toolchain present. Cache parity: 240 Windows DLL shards and 240 Linux SO shards. Soaks reported autocompile_degraded 0.

Tomba2Recomp v0.0.9 - latest framework, shared release staging, 7.6x shard coverage

Choose a tag to compare

@mstan mstan released this 02 Sep 14:46

Tracks current psxrecomp and recomp-ui master, adopts the framework's shared release staging, and ships a shard cache that covers 7.6x more functions than v0.0.8.

What changed

v0.0.8 v0.0.9
framework pin 254 commits behind master current master
shards bundled 374 240
functions covered by shards 2,730 20,904
mod packages 5 8

Fewer shards, far more coverage — see below.

Three defects fixed, found by taking the framework bump instead of pinning around it

1. The release packager had drifted. It was a hand-copied fork; it now calls the framework's shared release_overlay_stage.ps1. Its hard-coded mod-manifest count (5, while the real catalog was 7 and is now 8) is replaced by a derived staged-vs-source check, so adding a mod no longer requires editing the packager.

2. The cache tag was rebuilt by a parallel format string that had gone stale when the _f<flavor> suffix was added — its filter matched nothing, so a correctly regenerated cache staged zero shards. compile_overlays.py now owns the tag via cache_tag(), shared by the writer, the packager and the loader.

3. Overlay ABI was missing a shim for psx_game_text_native_ok (ABI v21 → v22). The emitter emits that guard at block entry and before every direct jal, but it is defined in the generated dispatch shard, so overlay DLLs could not link it — 107 of 109 shard build failures.

That third one was worse than a failure count suggests. The failures were large multi-function batches (170, 134, 88, 79 entries), and a failed batch degraded into many tiny single-function fallback shards. A larger shard count was the signature of the defect, not a sign of health.

Validation

10-minute attract soak from a cold boot, on the code that ships:

native dispatch  78,413,495
interp fallback     133,978
NATIVE SHARE     99.829%
regions loaded   2 -> 32 across the attract cycle
frame period     16683.3 us (59.94) on every sample, zero variance

No crash, no freeze, reaches DEMO gameplay. Cache regenerated from the coverage vault (946 entries, 7,714,551 executed PCs) against the packaged config, 0 build failures.

Note

This release ships newly regenerated game code — the emitter changed, so shipping "validated bits" unchanged would have mixed two emitters in one package. The soak above is an automated gate, not a full playthrough, so treat a complete run-through as still outstanding.

sha256: becdfe68cff2a6fcc29d95955fec000891316d75a38d84c2f639d12840ed081c

Tombi! 2 Italian PAL experimental prerelease

Choose a tag to compare

@mstan mstan released this 30 Aug 19:42

Experimental Italian PAL prerelease for Tombi! 2.

Includes:

  • Italian PAL target (SCES-02686)
  • Italian launcher UI and Italian mod catalog text
  • Separate Italian mod catalog without the Debug Menu mod
  • Windows x64 zip and Linux x86_64 AppImage

Notes:

  • Built without a preseeded overlay cache for this experimental prerelease; the runtime can build/cache overlays locally.
  • Known validation item: PAL widescreen may still show culling issues in some scenes.

Tomba2Recomp v0.0.8 — memory card fix (PR #93 load-delay), latest framework

Choose a tag to compare

@mstan mstan released this 08 Aug 01:40

Tomba! 2 Recompiled — v0.0.8

Fixes memory cards, which could hang on "Checking MEMORY CARD…" in v0.0.7.

Fixed

  • Memory cards work again. In v0.0.7 the memory card screen could stall
    indefinitely — the card never finished being checked, and the game sat there
    burning CPU. The cause was in the recompiler: it was not preserving MIPS-I
    load-delay value semantics when translating certain code, and the BIOS's
    own card fast-path depends on that behaviour, so the card routine was
    miscompiled. Reported by a v0.0.7 player; thanks for flagging it.
    (Framework fix by Alexbeav, psxrecomp PR #93.)
  • Turbo loads is now owned by the Mods page. Loading speed moved to the mod
    catalog ("Fast Loading (host pacing)" and "CD Speed", both off by default),
    but a turbo_loads = true left in an older build's settings.toml was still
    being applied — and the launcher no longer shows a control for it, so there
    was no way to switch it off. That stale value is now ignored.

Changed

  • Framework and launcher updated to current. Brings DualShock rumble
    output, mods re-applying executable patches after a save-state load,
    cross-package overlay predicates, and clearer reporting when the overlay
    compiler falls back to the interpreter.
  • The bundled overlay cache was fully rebuilt with the corrected compiler
    (374 prebuilt overlays, up from 300 in v0.0.7). Caches are specific to the
    build that produced them, so any cache your v0.0.7 install accumulated will
    not carry over — this build ships its own and fills in the rest as you play.

Known issues

  • geometry_correction in settings.toml has no launcher control. If it
    is set to true it can produce visible seams along polygon edges. Leave it
    false; it is not offered in the UI and is not validated.

Tomba2Recomp v0.0.7 — Windows + Linux, prebuilt shards, loading speed mods

Choose a tag to compare

@mstan mstan released this 05 Aug 17:52

Windows + Linux, with prebuilt shards on both

First Tomba 2 release with a Linux build, and the first where both platforms
ship the prebuilt overlay cache — so the first session runs native instead of
starting out interpreted.

  • Windows: .zip, 300 prebuilt overlay shards
  • Linux: experimental .AppImage, 305 prebuilt .so shards, no install
    needed. Writable state (saves, cache, mods, settings) is seeded into
    ~/.local/share/Tomba2Recomp; override with TOMBA2_RECOMP_DATA_DIR. Your own
    cache shards and edited input.ini survive AppImage updates.

Both bundle the MIT-licensed OpenBIOS, so no BIOS dump is required. You supply
your own Tomba! 2 (USA, SCUS-94454) disc image.

New: loading speed mods

Two independent mods, both off by default:

  • Fast Loading (host pacing) — speeds up wall-clock pacing during a load.
    Safe (every guest frame, CD interrupt and callback still happens on schedule),
    but the game does run faster while loading.
  • CD Speed — makes the emulated drive deliver data sooner, so loads shorten
    while the game keeps running at normal speed. Use this one if the host
    speed-up gets in your way.

Both take a typed multiplier rather than a fixed list — 1 is authentic, 2–32 is
the useful range, and any positive value is accepted so you can find the speed
this game tolerates. Each has a tickbox (Uncapped / Instant) that greys out the
multiplier it overrides. FMV and CD audio always keep authentic timing, so
movies and music are never sped up or pitch-shifted.

Also carried forward: multi-track disc support, 21:9 ultrawide, frame
interpolation, Skip FMVs, and memory card support.

Does not include the game disc, a retail PlayStation BIOS, or save data.

Tomba2Recomp v0.0.5 — multi-track disc dumps + selectable 21:9

Choose a tag to compare

@mstan mstan released this 13 Jul 02:32

Multi-track disc dumps now work

Fixes #1 ("Blank screen and no audio, game never starts"). Disc dumps in the common redump layout — a .cue listing one .bin file per track ((Track 1).bin data + (Track 2).bin audio) — previously mounted the audio track as the entire disc, so the game booted to a black window with no audio. The disc reader now maps every track file into one contiguous disc image; both multi-file and single-file .bin/.cue dumps (and bare .bin/.iso) are supported. Verified byte-identical sector reads and TOC between the two layouts, and a full boot to gameplay from a split dump.

Other fixes

  • 21:9 ultrawide is actually selectable. v0.0.3/v0.0.4 advertised 21:9 but shipped a game.toml that clamped it back to 16:9 and hid the launcher option.
  • Broken settings.toml is no longer silently ignored. A TOML syntax error now produces a clear warning, your file is preserved as settings.toml.bad, and the game boots with defaults instead of quietly overwriting your edits.
  • No developer-machine fallbacks. Earlier builds baked a developer BIOS path into the exe, which hid clean-install setup problems from release testing. This build always asks for your BIOS and disc when they aren't configured, and packaging now enforces that no such path can ship again.

Carried forward from v0.0.4

Full-rate OpenGL presentation (default renderer), presentation-only frame interpolation for high-refresh displays, experimental 16:9 / 21:9 native-wide gameplay, memory card support, and the standalone boot fix.

Requirements

A legally obtained Tomba! 2 (USA, SCUS-94454) disc image and PlayStation BIOS (SCPH1001.BIN) are required and are not included — the app asks for each one on first launch. A complete start-to-finish playthrough has not yet been certified; treat this as a very playable preview.