Turtles in Time Re-Shelled Recompiled
Turtles in Time Re-Shelled Recompiled is a native Windows and Linux port of Teenage Mutant Ninja Turtles: Turtles in Time Re-Shelled with online multiplayer and modern PC options.
- Type: PC port
- Game: Teenage Mutant Ninja Turtles: Turtles in Time Re-Shelled
- Runs on Windows and Linux
- By saulob
- Latest release v0.1.0, 2026-11-06
- Source: https://github.com/saulob/tmnt-turtles-in-time-reshelled-recompiled
README
Teenage Mutant Ninja Turtles: Turtles in Time Re-Shelled Recompiled
The Xbox 360 XBLA release of Turtles in Time Re-Shelled, running as a native Windows port, and experimentally on Linux and Steam Deck, through static recompilation, with the TRG launcher, modern PC options and online multiplayer
The original Xbox 360 game code, statically recompiled to native PC code with the ReXGlue SDK. No game files included: bring your own Turtles in Time Re-Shelled Xbox Live Arcade package.
This is a native PC port, not an emulator: the game's own PowerPC code is translated into C++ and compiled for your PC.
Features
- Native static recompilation: the game's own code, not an emulator. Native Windows x64 build, plus an experimental Linux / Steam Deck AppImage.
- TRG launcher with a game package installer, display, graphics, gameplay and online settings, and a self-updater that installs nothing until you choose it.
- Online multiplayer for up to four players, through this port's own online service (not Xbox Live): friends by friend code, invites from your lobby, and peers that connect over Direct UDP with a Relay fallback for any pair that cannot.
- Offline achievements, saved on your PC with the game's own names, icons and gamerscore.
- Languages: the game's original English, French, German, Italian and Spanish, plus an unofficial Português Brasil translation of the game text and the launcher.
- Skip intro goes straight to the title screen.
- Render Resolution from 1x to 4x (1280×720 to 5120×2880), scaled to your window. The game keeps its original 16:9 picture.
- Anti-aliasing and filtering: MSAA, FXAA and FXAA Extreme, and texture filtering from the game's own up to 16x anisotropic.
- Graphics card selection (Windows): choose which compatible GPU renders the game, useful on PCs with integrated and dedicated graphics.
- In-game overlays: F2 shows the FPS counter, and F3 shows Ping while Online play is on.
- Window handling: F11 switches between Windowed and Borderless Fullscreen, and Exit Game closes the program cleanly.
- Portable user data: saves, settings, achievements and caches are in a
user_datafolder beside the program. - Detailed logging and crash report: a log per session, and after a crash it ends with a
CRASH REPORTsection that stays on your PC.
What you need
- Windows 10 or 11, 64-bit, and a DirectX 12 graphics card, or 64-bit Linux / a Steam Deck with Vulkan (experimental)
- On Windows, the latest Microsoft Visual C++ 2015-2022 Redistributable (x64). Most PCs have it already.
- Your own Turtles in Time Re-Shelled Xbox Live Arcade package (about 270 MB, plus about 300 MB of free disk space next to the program for the game files), this exact game version:
| Game | Teenage Mutant Ninja Turtles: Turtles in Time Re-Shelled, Xbox Live Arcade |
| Title ID | 584109D2 |
| Content type | 000D0000 (Xbox Live Arcade), STFS LIVE package |
| Media ID | 23B57DFA |
| Game version | 0.0.1.3 |
default.xex | 4,808,704 bytes, CRC32 FC04059D, SHA-256 5FF5B37E120B1F2C3057D78BFC8C8AD6885C3FA576AECB3026E23E6044C5C3DE |
TMNT_r.xex | 2,002,944 bytes, CRC32 2D0061F9, SHA-256 C6C19BD1D3DE0C0AF3651DE201E8CAC47D9C380C03060734F6F649E83EE89DD9 |
The launcher checks the Title ID and content type when you pick the package, and checks both executables after extracting it. Any other version is refused, because the port is built for this exact game code. Details are in docs/package-analysis.md.
Installing
- Download TurtlesInTimeReshelled-v…-windows-x64.zip from the
latest release and extract it
anywhere you can write to, not
Program Files. - Run tmnt_turtles_in_time_reshelled.exe. The launcher opens.
- On the Play page, click Install from package... and pick your package. It is one file with a long
hexadecimal name and no extension. On an Xbox 360 drive it is in
Content\0000000000000000\584109D2\000D0000\. - Wait until Ready to play appears. The game files (about 270 MB) are copied into the
gamefolder next to the program. The package file itself is not copied there. - Press PLAY.
No game files are included in the release.
Reinstall from package... repairs the game files and keeps your settings and saves.
Linux and Steam Deck
Experimental. This is a native Linux build (ReXGlue's patched Linux runtime with its Vulkan GPU plugin), not Proton or Wine, and rendering goes through Vulkan. It has not yet been validated on real Linux hardware or on a Steam Deck, so rendering, audio, controllers and online play on Linux are unconfirmed. It needs 64-bit x86 Linux with glibc 2.31 or newer, a Vulkan driver and an X11 or Wayland desktop.
- Download TurtlesInTimeReshelledRecompiled-v…-x86_64.AppImage from the latest release and put it in a folder you can write to.
- Mark it executable: right-click > Properties > Permissions > Is executable, or
chmod +x. - Run it, then install your package from the Play page as above. The game files go in a
gamefolder next to the AppImage.
On a Steam Deck, this is the intended flow, and it has not been tried on a Steam Deck yet:
- Switch to Desktop Mode.
- Download the AppImage, and copy your Xbox 360 package to the Deck (USB stick, SD card or network).
- Mark the AppImage executable.
- Run it and install your own Xbox 360 package from the Play page.
- In Steam, choose Games > Add a Non-Steam Game to My Library and pick the AppImage.
- Return to Game Mode and launch it from your library.
game, logs and user_data are created next to the AppImage file, so they survive moving or updating it. Where FUSE
cannot mount the AppImage, it unpacks itself and runs from there. The launcher updates the AppImage only while it keeps
its release file name. Requirements, the Steam setup, the FUSE fallback and known limits are in
docs/linux.md.
Windows SmartScreen
Windows may warn the first time you run the program, because the release is not digitally signed. If you downloaded it from this repository's releases page, choose More info, then Run anyway.
The launcher
The TRG launcher opens before the game. Settings are saved to user_data\settings.toml next to the program.
| Page | What it holds |
|---|---|
| Play | Game files, Install from package, PLAY |
| Display | Display mode, window size, monitor, VSync |
| Graphics | Graphics card, Render resolution 1x to 4x, anti-aliasing, multisampling (MSAA), texture filtering |
| Gameplay | Language, Skip intro, frame rate and render resolution in the title, frame counter, player names |
| Online | Online play, Connection test, friends, invites |
| Achievements | Your achievements on this PC |
| Controls | Keyboard on/off and bindings |
| About | Versions, folders, Open logs folder, Detailed logging, Sponsor |
Hold Shift while starting to show a launcher that was turned off. See docs/launcher.md.
Controls and hotkeys
Xbox controllers work without setup, and the keyboard works too (the Controls page lists and rebinds the keys).
| Key | Action |
|---|---|
| F2 | Show or hide the FPS counter |
| F3 | Show or hide Ping while Online play is on |
| F7 | Open the achievements |
| F11 | Switch between Windowed and Borderless Fullscreen |
Online multiplayer
Play with up to four players in total (you and up to three friends) through the game's own Multiplayer menus. Online play is this port's own online service and is not Xbox Live. Turn on Online play on the launcher's Online page, run the Connection test, and add friends by friend code. In the game, Multiplayer > Online offers Quick Match, Create Match and Custom Match, and X Invite Friends in your lobby invites a friend.
Peers connect directly over UDP when they can (Direct) and through the online service's relay for any pair that cannot (Relay). The online service only sees what it needs to bring players together; see docs/online.md, which also covers what it stores and the Xbox LIVE menus this port removes.
Languages
The game's own English, French, German, Italian and Spanish, plus the port's unofficial Português Brasil translation of the game text and the launcher. Choose on the Gameplay page.
Screenshots
Your data
Everything the port writes stays next to the program (next to the AppImage on Linux), so moving that folder moves everything. Release downloads never include any of it.
| Folder | What it holds |
|---|---|
game | The game files from your package |
user_data | Settings, saves, achievements, shader cache (docs/user-data.md) |
logs | One log per session |
Open logs folder is on the About page. Detailed logging is on by default; turned off, the log keeps only what identifies the session and what went wrong.
Updates
The launcher checks the project's GitHub releases once per start. When a newer release exists an update banner appears;
nothing is installed until you choose UPDATE NOW and then RESTART TO UPDATE. Game files, user_data, logs and
caches are kept. On Linux this replaces the AppImage file, which must keep its release file name.
Known limitations
- The picture is 16:9.
- Leaderboards, Xbox Live Party and Gamer Cards are removed from the menus: this port has no Xbox Live service.
- Linux and Steam Deck are experimental and have not yet been validated on real hardware.
- Linux: two Direct3D 12 rendering fixes (a cyan flicker on the turtles, stale geometry) have no Vulkan version yet.
- If a player closes the window during an online match, the others can wait up to 30 s before the match goes on.
Reporting problems
Attach the newest tmnt_turtles_in_time_reshelled_*.log from the logs folder next to the program to an
issue. After a crash the log ends with a
CRASH REPORT section.
Building it yourself
The recompiled C++ is generated from your own game files, so the repository does not contain it. Clone with submodules, so the TRG launcher is included:
git clone --recurse-submodules https://github.com/saulob/tmnt-turtles-in-time-reshelled-recompiled.git
In an existing clone, run git submodule update --init --recursive.
- Install Visual Studio with the C++ and LLVM/Clang components.
tools\build.ps1expects Visual Studio 18 Community at its default location. Release packages also need MSYS2 withmingw-w64-clang-x86_64-toolchainfor the update helper. - Extract your package's files into
game\extractedwith an Xbox 360 STFS extractor, so thatgame\extracted\default.xexandgame\extracted\TMNT_r.xexexist. .\tools\codegen.ps1downloads the pinned ReXGlue SDK 0.10.0 (unlesstools\rexgluealready holds it), checks both executables and generates the C++ intogenerated\defaultandgenerated\tmnt_r..\tools\build.ps1buildsbuild\tmnt_turtles_in_time_reshelled.exeand the module librarybuild\tmnt_turtles_in_time_reshelled_TMNT_r.dll. It first makes sure ReXGlue's runtime and Xenos GPU plugin intools\rexgluewere built from this project's patches (patches\rexglue-sdk) and rebuilds them from the pinned source when they were not (network access the first time). See docs/rexglue-runtime-patch.md..\tools\package-release.ps1makes the release ZIP indist\, andtools/package-linux.shthe AppImage (see docs/linux.md). Neither publishes anything.
How the launcher, settings and installer work is described in docs/launcher.md, and the user data layout in docs/user-data.md.
Sponsoring
Turtles in Time Re-Shelled Recompiled is maintained and developed in my free time. If you enjoy the project or find it useful, consider supporting its continued development.
Credits
- Teenage Mutant Ninja Turtles: Turtles in Time Re-Shelled for Xbox Live Arcade (2009). This is an unofficial fan-made PC port. It is not affiliated with or endorsed by the game's developer, publisher or rights holders, and it contains none of their files.
- ReXGlue SDK for the recompiler and runtime (BSD 3-Clause)
- TRG Launcher, the launcher interface, pinned at v1.1.0, licensed under the MIT License
- The project infrastructure comes from Hard Corps: Uprising Recompiled
- The licenses of the libraries the release includes are in the
licensesfolder of the ZIP, and inusr/share/doc/tmnt_turtles_in_time_reshelledinside the AppImage
AI disclosure
AI tools were used to assist with code analysis, development, debugging and documentation. Changes were directed, tested and reviewed by the maintainer.
License
Original code in this project is licensed under the GNU General Public License v2.0 only (GPL-2.0-only). See LICENSE.
Third-party components retain their respective licenses and notices. See licenses/ReXGlue-LICENSE.txt and licenses/THIRD-PARTY-LICENSES.txt.
No game files are included. Turtles in Time Re-Shelled and its assets are not covered by this project's license. You must own the game to use this port.