Case study
Lost Odyssey Recomp: statically recompiling an Xbox 360 RPG into native ports
Translates Lost Odyssey’s Xbox 360 PowerPC executable with patched XenonRecomp tooling and runs the generated code on a native runtime that renders through Direct3D 12, Vulkan or Metal. Windows, Linux, macOS and Android packages import the user’s own disc data. The maintainer documents development with Claude Code and Codex CLI and records each release separately from validation and acceptance.
Requirements and limitations
- The reviewed main snapshot follows v1.0.4 (2026-10-18), packaged for Windows x64 with AVX, Linux x64 AppImage/Flatpak, macOS 15+ on Apple Silicon and 64-bit Android 8.0+ with Vulkan. STATUS.md and ROADMAP.md record each release as published but not accepted by the maintainer. This is static recompilation of the shipped executable, not recovered authored source or a general Xbox 360 emulator.
- Players import data from one supported four-disc set, Asian multilingual or USA/Europe (Title ID 4D5307FA); Disc 1 is required, DLC is optional, and other regions, title updates and modified XEX files are unsupported. Source builds use the Asian multilingual Disc 1 default.xex, LO.fpi and resource archives, and BUILDING.md still calls four-disc integration incomplete. Game data and generated code are kept out of the repository.
- Builds need submodules including XenonRecomp, XenosRecomp, plume and SDL 3, with project patches applied, plus Python 3.11+, CMake 3.28+, Ninja and Clang: clang-cl with Visual Studio 2022 Build Tools on Windows 10 1803+, or Clang/LLD with a Vulkan driver on Linux. tools/ppc_codegen.py regenerates the guest sources locally before the runtime build.
- STATUS.md separates implementation, validation, acceptance and release; for example, v1.0.4’s save fix passed a logic review, a CPU fixture and a Release link but was not run in-game. Upscaler and rendering checks name bounded fixtures and GPUs. The workflow guide states that a release does not mean the game was completed start to finish; this collection ran nothing.
- GPL-3.0 covers project code; Lost Odyssey and its assets belong to their owners, and dependencies such as the Xenia FFmpeg fork, DXC, optional DLSS/FSR/XeSS SDKs and Android GPU drivers keep their own terms. docs/AI_WORKFLOW.md says one maintainer used Claude Code as the main session with Codex CLI and subagents; Ghidra scripts and a third-party reverse-engineering skill are referenced, but no REA use is established.
About this entry
- Type
- Case study
- Category
- Independent reconstruction cases
- Relationship
- Independent reconstruction project
- Targets
- Game
Sources reviewed
The description was reviewed against primary sources. This does not establish runtime testing, security auditing or verified compatibility.
Primary sources
- README.md GitHub · freefrank/LostOdysseyRecomp · Revision 32fb6f7
- docs/BUILDING.md GitHub · freefrank/LostOdysseyRecomp · Revision 32fb6f7
- docs/INSTALLING.md GitHub · freefrank/LostOdysseyRecomp · Revision 32fb6f7
- docs/STATUS.md GitHub · freefrank/LostOdysseyRecomp · Revision 32fb6f7
- docs/AI_WORKFLOW.md GitHub · freefrank/LostOdysseyRecomp · Revision 32fb6f7
- docs/notes/recomp.md GitHub · freefrank/LostOdysseyRecomp · Revision 32fb6f7
- docs/ROADMAP.md GitHub · freefrank/LostOdysseyRecomp · Revision 32fb6f7
- .gitmodules GitHub · freefrank/LostOdysseyRecomp · Revision 32fb6f7
- CMakeLists.txt GitHub · freefrank/LostOdysseyRecomp · Revision 32fb6f7
- LICENSE GitHub · freefrank/LostOdysseyRecomp · Revision 32fb6f7
- https://github.com/freefrank/LostOdysseyRecomp/releases/tag/v1.0.4