Skip to content

ctr-xbox 1.0.0 — the UWP port for Xbox Developer Mode

Choose a tag to compare

@jajdp jajdp released this 16 Oct 22:13
· 1 commit to main since this release

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 CTRPad 76ad5fe: the port, plus widescreen,
    60 FPS and the language, each behind a CMake option
  • patches/sdl3-uwp-audio-wasapi.patch — the SDL3 audio deadlock on WinRT. Useful to any UWP
    port that uses SDL3
  • src/uwp/ctr_uwp_main.cpp — the WinRT entry point
  • tools/ — the orchestrator, the build/package/sign script and the disc splitter
  • docs/ — 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.