Star on GitHubStar1.1k stars

Case study

Touhou 7: reconstructing Perfect Cherry Blossom 1.00b source

Reconstructs C++ source for the Windows executable of Touhou 7: Perfect Cherry Blossom 1.00b and its custom.exe configuration tool, built with the original Visual Studio .NET 2002 and DirectX 8 toolchain and compared function by function with the user’s originals through reccmp. The committed progress badges report th07.exe fully implemented at 99.78% accuracy and custom.exe fully matched. The README says the game should be fully playable, but a matching build trips the game’s integrity check, and the cross-platform ports live on separate branches.

Targets
Game
Category
Independent reconstruction cases
Relationship
Independent reconstruction project
Sources reviewed

Requirements & limits

  • README calls this a work-in-progress matching decompilation of th07.exe 1.00b and custom.exe; the committed, mutable badges report 694 of 694 th07.exe functions implemented at 99.78% accuracy, and custom.exe at 100% for both. Behaviour is meant to match the original but may differ. The portable and reallyportable branches (desktop, mobile and web ports) are separate. README credits the GensokyoClub th06 and th08 decompilations for shared types, names and code.
  • Supply your own th07.exe 1.00b (README gives its MD5, reccmp-project.yml its SHA-256), copied to resources/, for icon extraction and as reccmp’s comparison base; custom.exe is needed only for the configuration tool, and --no-icon builds without either. No game executable or game data files are committed; resources/csv holds the function, global, string and float tables reccmp uses.
  • This branch builds only for 32-bit Windows with the MSVC 2002 toolchain, run under Wine on Linux, and needs uv and ninja. scripts/download_deps.py fetches Visual Studio .NET 2002 and the DirectX 8 SDK from archive.org and EstexNT’s var_order compiler patch from a gist; scripts/build.py generates and runs the ninja build.
  • Contributors diff with reccmp, which reports per-function accuracy against the original as an HTML page or for one address. Because th07.exe is not yet byte-identical, README says a matching build fails the game’s integrity check and crashes after 3,999 Supervisor cycles; --no-matching disables that check. The repository has no CI; badge figures are project-generated.
  • CC0 1.0 for the repository; the game and the downloaded Microsoft toolchain and SDK keep their own terms. resources/svgicon.png, embedded in the progress badge, is the game’s cover artwork marked © 2003 Team Shanghai Alice, which the CC0 dedication does not cover.

About this entry

The description was reviewed against primary sources.

Report an outdated entry Suggest a translation fix

Primary sources

  1. README.md GitHub · some100/th07 · Revision 4878bf0
  2. CONTRIBUTING.md GitHub · some100/th07 · Revision 4878bf0
  3. reccmp-project.yml GitHub · some100/th07 · Revision 4878bf0
  4. resources/progress.svg GitHub · some100/th07 · Revision 4878bf0
  5. resources/custom/progress.svg GitHub · some100/th07 · Revision 4878bf0
  6. scripts/download_deps.py GitHub · some100/th07 · Revision 4878bf0
  7. scripts/build.py GitHub · some100/th07 · Revision 4878bf0
  8. resources/csv GitHub · some100/th07 · Revision 4878bf0
  9. LICENSE GitHub · some100/th07 · Revision 4878bf0

More in Games

All 318 entries in GamesGames case studies (239)

↑↓ move↵ open⌘↵ new tab