MrNasTechGuy/wiishop-channel
GitHub: MrNasTechGuy/wiishop-channel
Wii Shop Channel 美版的反编译项目,利用 decomp-toolkit 工具链将原始二进制还原为可编译的 C/C++ 源代码。
Stars: 0 | Forks: 0
# wiishop-channel-decomp
这是 Wii Shop Channel v0 (USA) 的反编译项目,请不要期待它能很快完成
- [依赖项](docs/dependencies.md)
- [快速开始](docs/getting_started.md)
- [`symbols.txt`](docs/symbols.md)
- [`splits.txt`](docs/splits.md)
- [GitHub Actions](docs/github_actions.md)
常规:
- [通用 BSS](docs/common_bss.md)
- [`.comment` section](docs/comment_section.md)
## 参考
- [Discord: GC/Wii Decompilation](https://discord.gg/hKx3FJJgrV)(加入 `#dtk` 寻求帮助!)
- [objdiff](https://github.com/encounter/objdiff)(本地差异对比工具)
- [decomp.me](https://decomp.me)(协作匹配)
- [decomp.dev](https://decomp.dev)(反编译进度中心和 API)
- [wibo](https://github.com/decompals/wibo)(Linux 下的最小化 Win32 包装器)
- [sjiswrap](https://github.com/encounter/sjiswrap)(UTF-8 到 Shift JIS 包装器)
几乎所有活跃的 GC/Wii 反编译项目都使用这种结构,并且具有参考价值。
可以在 [decomp.dev](https://decomp.dev) 上找到活跃 GC/Wii 项目的列表。
## 功能
- 外部依赖极少:只需用于生成器的 `python` 和用于构建系统的 `ninja`。请参阅 [依赖项](docs/dependencies.md)。
- 配置简单:一切都在 `config.yml`、`symbols.txt` 和 `splits.txt` 中。
- 支持多版本:每个游戏版本都有独立的配置,并提供了 `configure.py --version` 标志以在它们之间切换。
- 功能丰富的分析器:许多耗时的任务都是自动化的,使您能够专注于反编译本身。请参阅 [分析器功能](https://github.com/encounter/decomp-toolkit#analyzer-features)。
- REL 支持:每个 REL 都有自己的 `symbols.txt` 和 `splits.txt`,并将自动构建并链接到主二进制文件。
- 无需手动汇编:decomp-toolkit 根据配置处理将 DOL 拆分为可重定位对象的过程。仓库中不包含任何游戏资产。
- 进度计算并与 [decomp.dev](https://decomp.dev) 集成。
- 与 [objdiff](https://github.com/encounter/objdiff) 集成,提供差异对比工作流。
- GitHub Actions 的 CI 工作流模板。
## 项目结构
- `configure.py` - 项目配置和生成器脚本。
- `config/[GAMEID]` - 每个游戏版本的配置文件。
- `config/[GAMEID]/build.sha1` - 每个构建产物的 SHA-1 哈希值,用于最终验证。
- `build/` - 构建过程生成的构建产物。会被 `.gitignore` 忽略。
- `orig/[GAMEID]` - 从光盘提取的原始游戏文件。会被 `.gitignore` 忽略。
- `orig/[GAMEID]/.gitkeep` - 空的已签入文件,用于确保在 clone 时创建该目录。
- `src/` - C/C++ 源文件。
- `include/` - C/C++ 头文件。
- `tools/` - 项目间共享的脚本。
临时的,完成后请删除:
- `config/GAMEID/config.example.yml` - 示例配置文件和文档。
- `docs/` - decomp-toolkit 配置的文档。
- `README.md` - 本文件,请替换为您自己的文件。有关模板,请参阅 [`README.example.md`](README.example.md)。
- `LICENSE` - 本仓库采用 CC0 许可。如果需要,请替换为您自己的许可。
标签:C/C++, URL提取, 事务性I/O, 云资产清单, 任天堂Wii, 反编译, 游戏开发, 逆向工具, 逆向工程