MIT License · Python Toolkit

N64Recomp
Companion

ROM → Splat → ELF → Recomp → Runtime

A Windows-first workflow toolkit for taking a legally obtained N64 ROM through Splat metadata, a big-endian MIPS ELF, N64Recomp code generation, and a host-runtime scaffold. Includes readiness audits, ROM matching gates, Podman tooling, CDB evidence helpers, and an optional read-only Mupen64MCP workflow.

What's in the box

Everything you need to go from a dumped ROM to a debuggable PC port — no game code shipped, no assumptions made.

ROM & Workspace

Inspect, convert, and manage ROMs. Validate workspace structure with rom-info, convert-rom, and workspace-status.

Splat & Matching

Initialize, split, and refine Splat configurations. Build matching ROMs with the assembly-only match gate when applicable.

ELF & Toolchain

Build MIPS ELF files from Splat output. Run symbol audits, toolchain checks, and MIPS smoke tests.

N64Recomp Pipeline

Generate C code from your ELF via N64Recomp. Validate TOML configs, summarize output, and iteratively refine ignored functions.

Readiness & Repair

Scan for unsupported instructions, filter ELF exports, repair TOML/YAML configs with atomic replacement and dry-run reports.

Windows Host Scaffold

Generate a complete SDL2 + RT64 + RmlUi runtime project from a template. Includes CMake, vcpkg, and build scripts.

Local LLM & MCP

Read-only-by-default Mupen64MCP integration with local LLM agents. Controller and memory-write tools require explicit opt-in.

Real ROM Test Suite

Non-destructive validation against a dumped ROM. Validates all core generators, repair helpers, and project discovery.

Canonical pipeline

The evidence-driven loop that takes you from ROM to a debugged PC port.

1

ROM Inspection

Validate and convert your dumped ROM to the correct byte-order format for Splat consumption.

2

Splat Split & Refine

Configure and run Splat to disassemble the ROM into manageable source files with proper metadata.

3

Assembly Match Gate

Verify the disassembly builds to a byte-identical image of the original ROM (optional but recommended).

4

MIPS ELF Build

Produce a big-endian MIPS ELF that N64Recomp can consume. Run symbol audits and readiness checks.

5

N64Recomp Code Gen

Validate your TOML configuration and generate C++ from the ELF via N64Recomp.

6

Host / Runtime Build

Compile the generated C++ with the RT64 + RmlUi runtime scaffold into a Windows executable.

7

Evidence & Fix

Use CDB or Mupen64MCP to investigate runtime behavior. Fix the owning source of truth and rebuild the narrowest affected stage.

Core commands

All commands are accessible via python -m n64recomp_kit or the thin wrappers in tools/.

ROM & Workspace

rom-info <rom>
convert-rom <input> <output>
workspace-status --root .
init-state --root .
init-ledger --root .

Splat & Matching

splat-init --config decomp/splat.yaml
splat-run decomp/splat.yaml --report build/report.json
matching-build --root decomp --clean --diff
emit-matching-configure --root decomp

ELF & Toolchain

build-elf --config decomp/splat.yaml
elf-info decomp/build/starfall_us.elf
elf-symbol-audit --elf build/starfall_us.elf
toolchain-info
mips-smoke --output-dir build/mips-smoke

N64Recomp

init --config decomp/starfall.recomp.toml
check-config decomp/starfall.recomp.toml
run decomp/starfall.recomp.toml --report build/report.json
summarize-output RecompiledFuncs
recomp-smoke --config decomp/starfall.recomp.toml

Host & LLM

new-runtime-project --output runtime/Starfall64
emit-local-llm-workflow --root .
local-llm-doctor --mupen-root $env:MUPEN64MCP_ROOT
local-llm-ask --provider lmstudio --model $ModelId
real-rom-test --rom C:/roms/starfall_us.z64

Everything explained

Comprehensive guides for every stage of the pipeline, from setup through debugging.