lhsazevedo/tbg-decomp

GitHub: lhsazevedo/tbg-decomp

首个公开的 Dreamcast 游戏反编译项目,通过定制的 SH4 模拟器和功能等价测试框架对 Tokyo Bus Guide 进行逆向工程与二进制重建。

Stars: 32 | Forks: 2

# Tokyo Bus Guide 反编译 [![测试](https://static.pigsec.cn/wp-content/uploads/repos/2026/05/4ce0921d2a080609.svg)](https://github.com/lhsazevedo/tokyo-bus-guide-decomp/actions/workflows/test.yml) [![构建](https://static.pigsec.cn/wp-content/uploads/repos/2026/05/662ba4ba9b080611.svg)](https://github.com/lhsazevedo/tokyo-bus-guide-decomp/actions/workflows/build.yml) [![匹配构建](https://static.pigsec.cn/wp-content/uploads/repos/2026/05/397d475ea9080613.svg)](https://github.com/lhsazevedo/tokyo-bus-guide-decomp/actions/workflows/build_matching.yml) ![进度条](https://static.pigsec.cn/wp-content/uploads/repos/2026/05/bcb460e167080614.svg) ![主函数主图](https://static.pigsec.cn/wp-content/uploads/repos/2026/05/a5fef42528080615.png) _没错,[这是一个真实的文件](https://github.com/lhsazevedo/tokyo-bus-guide-decomp/blob/88fb8f87500f9474780cd9a0f7dafa00b14b0be7/src/010080_main.c)!_ ## 简介 欢迎来到首个公开的 Dreamcast 游戏反编译项目,该项目针对经典游戏 Tokyo Bus Guide!我们的目标是完全反编译代码,侧重于功能等效而非字节级匹配。该项目是一项协作努力,旨在推动 Dreamcast 逆向工程的发展。 ## 方法 与传统的字节级匹配不同,我们使用定制的 [SH4 对象模拟器和测试框架](https://github.com/lhsazevedo/sh4objtest) 来测试反编译的函数与其原始对应函数,确保它们的行为完全一致。 ## 项目状态 ![进度图](https://static.pigsec.cn/wp-content/uploads/repos/2026/05/a53333e29a080616.png) 本项目正在进行中,并会定期更新。它目前处于可重定位状态,这意味着原始代码可以在内存中移动,从而允许进行诸如数据修改等编辑,而无需担心长度变化。也可以使用已有的反编译函数重新编译二进制文件。 ### 当前成就: - 使用反编译函数与原始代码一起重新构建二进制文件。 - 来自反编译 C 文件的自定义日志,写入 Dreamcast 串行接口和屏幕调试文本: - [观看捕获](https://twitter.com/lhs_azevedo/status/1777558619480867048) - [查看代码](https://github.com/lhsazevedo/tokyo-bus-guide-decomp/blob/7cbc8608b7a7568db8e26e9c9302b8a6f983460e/src/011120_asset_queues.c#L1186-L1197) - 包含匹配构建、非匹配构建和单元测试检查的 CI 工作流。 ## 如何贡献 欢迎您的贡献!要开始参与,请参阅[项目设置](docs/setup.md)中的项目设置说明。详细的贡献指南将很快推出,为您提供有效参与本项目所需的所有信息。目前,您可以查看 [CI 工作流](https://github.com/lhsazevedo/tokyo-bus-guide-decomp/tree/main/.github/workflows) 以了解测试是如何执行的。 ## 实用资源 - Marcus Comstedt 的 [Dreamcast 编程](https://mc.pp.se/dc/) - [Flycast 源代码](https://github.com/flyinghead/flycast) - [我那简陋的 Flycast 调试器](https://github.com/lhsazevedo/flycast/tree/dbgnet) - Dreamcast SDK
标签:CI/CD测试, Dreamcast, ffuf, Object Simulator, ROM Hacking, SH4架构, URL提取, 世嘉Dreamcast, 东京巴士指南, 主机游戏, 云资产清单, 代码还原, 反编译, 复古游戏, 怀旧游戏, 模拟器测试, 汇编, 游戏修改, 游戏逆向, 源码重构, 软件安全研究, 逆向工程