mirror of
https://codeberg.org/KeybadeBlox/JSRF-Decompilation.git
synced 2026-02-20 02:07:02 +03:00
objdiff assumes that all symbols in executable memory sections are code, which led to misbehaviour due to .rdata and .data being marked as executable in JSRF. We now set these sections to non-executable in Ghidra to work around this.
28 lines
1.4 KiB
Markdown
28 lines
1.4 KiB
Markdown
# Jet Set Radio Future North American Standalone Decompilation
|
|
A matching decompilation of the Xbox game Jet Set Radio Future.
|
|
|
|
## Progress
|
|
- Delinking progress: 0.008% (205 out of 2574172 bytes in XBE address space)
|
|
- Decompilation progress: 100% (3 out of the 3 functions delinked so far)
|
|
|
|
## 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](contributing.md). Step 3 will use the linker from the
|
|
same Visual C++ 7.0 already used to compile object files. Step 4 is expected
|
|
to use the `cxbe` tool found in e.g. [nxdk](https://github.com/XboxDev/nxdk).
|
|
|
|
## Contributing
|
|
Anybody interested in joining the effort is welcome to read the
|
|
[contribution guide](contributing.md). Those looking to get in contact with
|
|
other contributors can post to
|
|
[the repository's issue tracker](https://codeberg.org/KeybadeBlox/JSRF-Decompilation/issues)
|
|
or join the [JSRF Reverse Engineering Discord](https://discord.gg/kYEm5jz).
|