mirror of
https://codeberg.org/KeybadeBlox/JSRF-Decompilation.git
synced 2026-02-20 02:07:02 +03:00
Rewrite readme for official decomp repository
I guess this isn't just notes anymore.
This commit is contained in:
parent
5692ee9531
commit
115052d2a5
1 changed files with 24 additions and 13 deletions
37
readme.md
37
readme.md
|
|
@ -1,16 +1,27 @@
|
|||
# Jet Set Radio Future Decompilation Notes
|
||||
This is just a public holding space for anything I put together as a part of
|
||||
the JSRF decompilation effort.
|
||||
# Jet Set Radio Future NTSC-US Standalone Decompilation
|
||||
A matching decompilation of the Xbox game Jet Set Radio Future.
|
||||
|
||||
## `delink/`
|
||||
`objects.csv` is a table of suspected object file boundaries for delinking.
|
||||
The addresses given in each section are runtime memory addresses (as one would
|
||||
see in e.g. Ghidra).
|
||||
## Progress
|
||||
- Delinking progress: 0.008% (205 out of 2574172 bytes in XBE address space)
|
||||
- Decompilation progress: 100% (6 out of the 6 symbols delinked so far)
|
||||
|
||||
`delink.sh` is a script that produces delinked object files in `target/` from a
|
||||
Ghidra project.
|
||||
## 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
|
||||
|
||||
## `decompile/`
|
||||
The `src/` directory contains decompiled code and data. Each symbol is
|
||||
annotated with its corresponding memory address in the original binary, and
|
||||
functions are marked as perfectly or imperfectly matching.
|
||||
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 or join the
|
||||
[JSRF Reverse Engineering Discord](https://discord.gg/kYEm5jz).
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue