JSRF-Decompilation/readme.md
KeybadeBlox 84c165a0af Complete basic build process
We now have generation of an import library for linking against the Xbox
kernel, linking together an .exe, and converting it to an .xbe via cxbe.
Some further development of tooling aside (including filling in some
features in cxbe to better match the original JSRF executable), all that
remains now is to write decompiled code.
2026-02-14 23:05:32 -05:00

1.5 KiB

Jet Set Radio Future North American Standalone Decompilation

A matching decompilation of the Xbox game Jet Set Radio Future.

Progress

  • Delinking progress: 1.02% (26359 out of 2574172 bytes in XBE address space)
  • Decompilation progress: 18.7% (31 out of the 166 functions delinked so far)
  • Estimated total progress: 0.19% (previous two multiplied together)

Roadmap

The approach of this decompilation is to:

  1. Delink the JSRF executable (default.xbe) into object files, each representing a single C++ source file
  2. Decompile the object files into C++ code that produces matching object files
  3. Link the object files into a Windows executable (n.b. this would not be runnable on Windows)
  4. Repackage the Windows executable into a working Xbox executable

We are currently engaging in the first two steps simultaneously, decompiling code as it's delinked. Further details on these steps can be found in the contribution guide. Step 3 uses the linker from the same Visual C++ 7.0 already used to compile object files. Step 4 uses the cxbe tool found in e.g. nxdk.

Contributing

Anybody interested in joining the effort is welcome to read the contribution guide. Those looking to get in contact with other contributors can post to the repository's issue tracker or join the JSRF Reverse Engineering Discord.