Repository navigation
ctr-xbox 1.0.0 — the UWP port for Xbox Developer Mode
This is a recipe, not a game. There is no executable in here, no .msix and no disc — this zip
is the repository itself, which you apply to your own checkout of
CTRPad. If you came looking for something to install on
a console, there isn't one, and there can't be: see NOTICE.md.
The UWP port of Crash Team Racing for Xbox Series in Developer Mode. CTRPad takes CTR Native to
real 64-bit, which is what makes a console possible at all; this is the fourth link in that
chain. It plays: the Sony presentation with its voice line, the Nitros Oxide intro, the attract
cycle and the menus, with a controller, at 32.9 FPS — the original game's rate — in
full-screen 16:9, in Spanish, and at 60 FPS if you ask for it. Installed and tested on
two consoles.
What's in the zip
Everything the v1.0.0 tag contains — 24 files, about 347 KB uncompressed:
patches/ctr-uwp-port.patch— 90 files against CTRPad76ad5fe: the port, plus widescreen,
60 FPS and the language, each behind a CMake optionpatches/sdl3-uwp-audio-wasapi.patch— the SDL3 audio deadlock on WinRT. Useful to any UWP
port that uses SDL3src/uwp/ctr_uwp_main.cpp— the WinRT entry pointtools/— the orchestrator, the build/package/sign script and the disc splitterdocs/— how to build it and get it onto a console, and why every piece is there, each in English
and Spanish
It is the same content as GitHub's own "Source code" asset. It is attached separately so that the
SHA-256 below pins exactly what this release was tested with.
ctr-xbox-1.0.0.zip
SHA-256 033bcf7782ce477e70d804a1d351dda206b4a019471b4638be16c8ef5c66175d
What you still need
Your own legally dumped NTSC-U disc of SCUS-94426, a git clone of CTRPad building on your PC,
Visual Studio 2022 with the C++ and UWP components, the UWP dependency bundle
(worleydl/uwp-dep: Mesa and libuwp), an
SDL3-uwp you build yourself — the DLL from its
release will not do — and a certificate to sign with. docs/INSTALL.md walks
through all of it, including which terminal every command goes in. PowerShell 7 is not needed.
What it had to solve
| Symptom | Cause | |
|---|---|---|
| 1 | Stuck on the presentation screen, process alive, CPU at 0% | Not the disc: that screen waits for a voice line to finish, and SDL3's WASAPI backend deadlocked — WASAPI_ActivateDevice calls WASAPI_PrepDevice from WASAPI's own management thread, and the guard did not recognise it |
| 2 | Activation failed with 0x8027025B |
The VCLibs dependency missing from the manifest. The DLLs inside the package do not replace it |
| 3 | No button did anything | Controllers on WinRT only come through Windows.Gaming.Input, and SDL3's driver switches itself off unless the app sets SDL_HINT_JOYSTICK_WGI |
| 4 | The process died on the first draw, no dump, no message | Mesa's version. The one that already worked on that console draws; a newer one vanishes inside BeginScene |
| 5 | HTTP 500 uploading the disc | Portal uploads go through D:\DevelopmentFiles. Split into 150 MiB parts, joined by the game at startup |
| 6 | Nine build errors nobody warns you about | The static CRT, NOUSER, far/near, C++ vs C entry point, /ZW, /sdl, and MinVersion |
| 7 | 4:3 with bars, 30 FPS, English | Three CMake options: widescreen ported by hand from CTR: High Octane (no frame cost), 60 FPS (401 changes across 60 files, 59.8 measured), and Spanish, which was already on the disc |
How the recipe was verified
Applied to a clean clone of CTRPad, it leaves 91 of 91 files with the same content as the tree
the installed, tested package was built from: 90 byte for byte — including the 196 KB patch's worth
of changes — and main.c differing only in line endings, which the reference tree happens to keep
as CRLF.
License
GPL-3.0-or-later, as CTRPad, CTR Native and the ModSDK decompilation are. Widescreen and
60 FPS are ported from CTR: High Octane
(GPL-3.0); the SDL3 patch is against zlib-licensed code. All of it is accounted for by origin in
NOTICE.md.
Not affiliated with Sony Interactive Entertainment, Naughty Dog, Activision, Microsoft, or the
authors of the decompilation, CTR Native, CTRPad or High Octane. Rights holders:
jajdpmail@gmail.com.