⮜ Blog

List of tags

PC-98 Touhou source code reconstruction.
Code behind this website.
東方靈異伝 ~ The Highly Responsive to Prayers
東方封魔録 ~ the Story of Eastern Wonderland
東方夢時空 ~ Phantasmagoria of Dim.Dream
東方幻想郷 ~ Lotus Land Story
東方怪綺談 ~ Mystic Square
Colorful, crisp images that are played in a sequence.
Polished and bugfixed forks of 100% decompiled games.
The music behind Touhou. Arguably the core of what motivated ZUN to create this series to begin with.
Getting pixel data to and from VRAM.
Limited-use item that damages enemies and grants temporary invulnerability, while playing a flashy animation specific to the player character.
Bugs in the original code that cause catastrophic effects when given malformed input. Modders beware!
Dealing with the difficulties of building a mixed C++/assembly project with ancient compilers.
Projectiles fired by enemies.
TH01's regular, non-boss stages.
Potential improvements that volunteers could meaningfully contribute to this project. Mostly minor issues, or slightly out of scope of the main project.
Endings or staff roll animations. Also applies to the cutscenes before stages 8 and 9 in TH03.
A complete danmaku animation over a specified period of time.
Cleaning up ZUN's original code into something you can actually read and maintain.
Debug features that ZUN left in the shipped game.
The in-game dialog system.
A DOSBox fork with support for PC-98 emulation.
Common stage enemies with simple scripts, in contrast to midbosses or bosses.
Structure of an on-disk file format.
Custom 16×16 glyphs that can be used on the PC-98's 8-color text layer.
Code that defines the main in-game experience.
Bugs in the original code that affect visuals or gameplay in minor ways.
Things that ZUN implemented surprisingly well.
Hidden features in the original games.
The area of the screen that displays the current score, lives, and bombs.
Processing data entered from the keyboard or a joypad.
Collectables, dropped from enemies and (mid)bosses.
Code of questionable quality.
The PMD and MMD sound drivers by Masahiro Kajihara (梶原 正裕).
Beams that can collide with the player. Sometimes difficult.
A library providing an abstraction layer for all components of a PC-98 DOS system, collected and extended by Akihiko Koizuka (恋塚 昭彦). Written entirely in 16-bit x86 assembly.
Any window offering multiple options to be selected or configured.
Thoughts and news about this entire project.
Needlessly complicated code, achieving minimal performance gains at the cost of maintainability.
A single bigger enemy with a slightly more complicated, hardcoded script, occasionally fought halfway through a stage.
Pre-compiled mod downloads, changing all sorts of things in the binaries.
Manipulation of the PC-98's 16-color palette for graphics.
Details on PC-98 hardware and software.
Evidence-based observations about programming a PC-98 with performance in mind. Does not include ramblings that aren't substantiated with measurements.
Additional, helpful code generation steps, beyond regular compiler/assembler invocations.
Player-controlled characters.
Notes about future ports of the games away from x86 and the PC-98 platform.
Reducing the number of unlabeled memory references, to make life easier for modders. Also a requirement for using any other compiler on the reconstructed source code.
Data passed between the individual executables of each game.
Pseudo-randomness, in a gameplay sense. Emphasis on "pseudo".
Points collected during gameplay, and stored in high score files.
Projectiles fired by the player.
The main scrolling portions of gameplay in TH02, TH04, and TH05. Mostly rendered using tile maps.
Discoveries about Turbo Assembler.
Discoveries about Turbo C++ 4.0J, the C++ compiler ZUN originally used for PC-98 Touhou.
Things that ZUN stole from others, without crediting them.
Unused remnants of code. Might tell something about a game's development history.
Open-source Windows rewrite of TH05, based on reverse-engineered code from the original. Slightly inaccurate in places, but overall still a great help for this project.
Consuming memory or disk space for no reason, or wrong reasons. Decent optimization opportunities for mods.
A bigger enemy with an extensive hardcoded script, fought at the end of a stage. Sometimes has personality.
TH01's Stage 5 boss.
TH01's Stage 10 boss, on the 魔界/Makai route.
TH01's Stage 10 boss, on the 地獄/Jigoku route.
TH01's Stage 15 boss, on the 魔界/Makai route.
TH01's Stage 15 boss, on the 地獄/Jigoku route.
TH01's Stage 20 boss, on the 魔界/Makai route.
TH01's Stage 20 boss, on the 地獄/Jigoku route.
TH02's Stage 3 boss. Arguably the best Touhou character.
TH02's Stage 5 boss.
TH02's Extra Stage boss.
TH04's Stage 2 boss.
TH04's Stage 4 boss, when playing as Reimu.
TH04's Stage 4 boss, when playing as Marisa.
TH04's Stage 5 boss.
TH04's Stage 6 boss.
TH04's second Extra Stage boss.
TH05's Stage 1 boss.
TH05's Stage 2 boss.
TH05's Stage 3 boss.
TH05's Stage 4 boss (one of them).
TH05's Stage 4 boss (one of them).
TH05's Stage 5 boss.
TH05's Stage 6 boss.
TH05's Extra Stage boss.
A dormant shooting game series by ZUN's former fellow students, who released the source code to the first two games in 2019.
秋霜玉 / Shuusou Gyoku
MIDI-related side projects involving visualization, manipulation, and other useful algorithms.