Skip to content

TombaRecomp v0.6.0-alpha

Choose a tag to compare

@mstan mstan released this 26 Jun 02:02
· 100 commits to master since this release

TombaRecomp v0.6.0-alpha

Big performance + reliability release focused on the overlay (streamed-code) path.

Highlights

  • Fixes the "agonizing lag" in overlay-heavy areas (e.g. dwarf village). Two
    framework bugs were making certain areas run in the slow interpreter instead of
    native code — one area measured ~97% interpreted. Both are fixed; that area now
    runs ~97% native (≈400× more native dispatch per second). Smooth.
  • Toolchain-free self-healing. Ships a bundled, self-contained overlay
    toolchain (embedded Python + TinyCC + the recompiler). If you wander into an area
    the prebuilt cache doesn't cover, the runtime compiles it to native on your
    machine, automatically
    — no gcc, no setup. The deprecated sljit tier is gone;
    the priority is now: prebuilt native shard → tcc-compiled shard → interpreter.

Under the hood

  • Overlay cache read/write unification. The compiler now always writes shards
    exactly where the loader reads them (the runtime injects the canonical cache +
    captures locations), so a freshly compiled area can never land somewhere the
    loader won't look — the root cause of the perpetual-interpreter lag.
  • Overlay DLL link fix. Overlay code with widescreen screen-cull sites
    (emitted into every build, identity at 4:3) was missing a helper symbol and
    failed to compile to a native shard — now provided.
  • Ships 74 prebuilt native overlay shards (incl. the dwarf-village variants).

Install

Unzip and run TombaRecomp.exe. You supply your own BIOS and Tomba! (USA,
SCUS-94236) disc. See START_HERE.txt.

Self-contained: the exe imports only Windows system DLLs.