案例
TH04:从源码重建东方幻想乡的四个 PC-98 程序
为日版 PC-98 Touhou 4:东方幻想乡重建源码,并在 Wine 下用固定版本的 Borland 工具链重新构建全部四个 DOS 程序:MAIN.EXE、OP.EXE、MAINE.EXE 和 ZUN.COM。针对原二进制的函数认定,与在模拟器中对照原游戏比较输入、随机数、对象池和画面的回放分开记录。完整流程、原始时序与字节一致性目标仍未完成。
使用条件与局限
- 自动生成的 PROGRESS.md 报告四个程序共 663 个已审原作函数中 661 个一致,MAIN 已确认原作字节的 99.97% 一致,另有两个 MAIN 情形延后处理。README 说明重建产物不必复现原可执行文件字节,完整游戏与原始时序验收尚未完成。port/modern-64 分支上的 64 位原生移植报告了有限范围的 Linux 通关,本条目未审阅该分支。
- 需自备含日版 zun.hdi 的合法副本;导入程序要求 OP.EXE、MAIN.EXE、MAINE.EXE 和 ZUN.COM 与 README 列出的大小和 SHA-256 一致,其来源标注为 candidate-local-attested,尚待独立的原始转储确认。准备镜像时会修改该镜像的一次性副本,原可执行文件和素材从不提交到仓库。
- 构建在 Wine 下使用 Turbo C++ 4.0J、TASM 5.0 和 TLINK;初始化脚本从 TOOLCHAIN.md 不视为权威来源的第三方镜像获取这些工具,并从固定版本的 ReC98 检出中取得 MS-DOS Player。测试宿主为 Debian 12 x86-64 与 Python 3.11。运行检查另需 DOSBox-X 2024.03.01、Xvfb、xdotool 和 ImageMagick,Windows 构建入口通过 WSL 工具链桥接。
- README 报告:在四段内置演示及更长的第 1–3 关路线中,原版与重建版 DOS 回放在实际输入、分数、随机数、九个对象池、22 个状态块及配置的画面区域上一致,但原始 GDC 时序和部分重置后的输入采样仍有差异。2026-10-16 的审计发现本地存储中缺失冻结的原生程序和候选 MAIN 文件,因此重放历史结果须先恢复这些文件。公开 CI 只运行不依赖目标文件的检查;本合集未运行任何检查。
- MIT 许可覆盖仓库原创代码与文档,不涵盖游戏、素材或第三方作品;作为迁移输入并获署名的 ReC98 在固定版本中没有许可证文件,Borland 工具仍为专有软件。仓库围绕编程智能体交接文档组织,但本身未记录 REA 使用;REA 的 TH04 辅助函数展示与东方重建文章覆盖其中部分内容。不主张运行复现。
关于此条目
- 类型
- 案例
- 类别
- 独立重建案例
- 关联
- 独立重建项目
- 目标
- 游戏
来源复核于
说明已依据一手来源复核;这不代表已运行验证、经过安全审计或确认兼容。
一手来源
- README.md GitHub · N0zoM1z0/th04 · 修订 11577b3
- docs/PROGRESS.md GitHub · N0zoM1z0/th04 · 修订 11577b3
- docs/DOS_BUILD.md GitHub · N0zoM1z0/th04 · 修订 11577b3
- docs/TOOLCHAIN.md GitHub · N0zoM1z0/th04 · 修订 11577b3
- docs/ORACLES.md GitHub · N0zoM1z0/th04 · 修订 11577b3
- docs/RUNTIME.md GitHub · N0zoM1z0/th04 · 修订 11577b3
- docs/REFERENCE_ANALYSIS.md GitHub · N0zoM1z0/th04 · 修订 11577b3
- config/toolchain.toml GitHub · N0zoM1z0/th04 · 修订 11577b3
- .github/workflows/ci.yml GitHub · N0zoM1z0/th04 · 修订 11577b3
- LICENSE GitHub · N0zoM1z0/th04 · 修订 11577b3