A matching decompilation of Turok: Rage Wars for the Nintendo 64.
This repository contains no game content. You must supply a legally acquired cartridge dump. Builds are verified against its SHA256.
all [███████████████████░] 99.79% (~99.99%) 41,857,342 of 41,943,040 bytes, linker fill 436 bytesde [███████████████████░] 99.08% (~99.99%) 8,312,122 of 8,388,608 bytes, linker fill 184 byteseu [███████████████████░] 99.99% 8,388,476 of 8,388,608 bytes, linker fill 76 byteseu-x [███████████████████░] 99.89% (~99.99%) 8,379,660 of 8,388,608 bytes, linker fill 44 bytesus [███████████████████░] 99.99% 8,388,544 of 8,388,608 bytes, linker fill 64 bytesus-rev1 [███████████████████░] 99.99% 8,388,540 of 8,388,608 bytes, linker fill 68 bytes
de (NUS-NRWD-0, Germany). Censored German release. SHA256 9dc401252bacb2ad7412ef003f97f28cb225d76b3cc76f430fbc27fa05067ca8 |
|---|
|
eu (NUS-NRWP-0, Europe). PAL release. SHA256 d763cbbe485a5f9e1b7be97d5ac16735087e23d0bb62c05dc844e01b7e1156d1 |
|---|
|
eu-x (NUS-NRWX-0, Europe). PAL multi-language release. SHA256 511f6c876586bf401faf01a270c67f26fcb7db55ed3f35759c71ab15a29de750 |
|---|
|
us (NUS-NRWE-0, North America). First NTSC release (black cartridge). SHA256 0433043aaba2649bdd1fe717c4020550ac663c0362527aa082490f5977a3e46b |
|---|
|
us-rev1 (NUS-NRWE-1, North America). Revised NTSC release (grey cartridge). SHA256 5dfbae59e4a3860b740ccbb28f33aad624315e30bfca6d60abd62d12a89e0089 |
|---|
|
unbake report --exact <version> (once per version, after sh ci/gate matched all five ROMs) writes the block above
and progress.json; every figure is measured against the five ROMs.
- ROM line: matched code, matched data, decoded blobs and the cartridge header, as a share of the 8 MiB ROM. Linker
fill (the linker's alignment padding) and unknown bytes (ROM spans no class holds) are shown beside it and are not
part of it.
(~x%)also counts fuzzy code and data and blobs only identified, not decoded. - code / data: bytes of the text and data sections that a source compiles to exactly. Hand-written SDK assembly
(
.s, 44 to 45 functions per version) is counted as matched. - functions: functions whose bytes match, of all functions in the version.
- blobs: non-code ROM content listed in
config/blobs.toml; decoded rows over all blob bytes. Every row is typed: content (audio, graphics, model, world, text), fill, sn-debug, or the stale code and data an older link left behind (stale-code, stale-data), each by the reader that proved it.progress.jsoncounts rows and bytes per state: exact, fuzzy (identified, not yet rebuilt), and untyped, which is 0 rows in all five versions; unknown bytes (ROM spans no row or class holds) are 0 too.
The game sources live in the original object-file layout under SOURCE/ (the paths the debug symbols name); there is
no src/. find SOURCE -type f | wc -l gives 2,955 files, each its own translation unit: several units under one
object directory (for example SOURCE/AI/ENEMIES/TURRETAI/) are later merged into that object as plain source work.
Contributions and corrections are welcome. Run sh ci/gate before opening a pull request.
For detailed instructions please see CONTRIBUTING.md.