Commit Graph

10 Commits

Author SHA1 Message Date
nmlgc 5655b53f10 [Decompilation] [th05] Louise / Alice / Mai & Yuki / Yumeko: Background rendering
It's basically the same function copy-pasted 4 times, differing only in
the backdrop image coordinates and some other inconsequential details.

Part of P0189, funded by Arandui and Lmocinemod.
2022-04-16 23:53:47 +02:00
nmlgc fe74b31bb6 [Reverse-engineering] [th04/th05] Bosses: Clarify background rendering details
Some aspects I missed in P0147.

Part of P0189, funded by Arandui and Lmocinemod.
2022-04-16 23:53:47 +02:00
nmlgc 2ceee1df02 [Reverse-engineering] [th04/th05] .BB tile animation: Tile invalidation
Using the .BB cels as a transition mask between stage tiles and the
boss backdrop, nice. Seen in the entrance animations of TH04's
Orange, Kurumi, and Elly, and TH05's Sara.

Part of P0189, funded by Arandui and Lmocinemod.
2022-04-16 23:53:47 +02:00
nmlgc 6db32b92fe [Maintenance] [th04/th05] Remove `extern "C"` from boss functions
Part of P0189, funded by Arandui and Lmocinemod.
2022-04-16 23:53:46 +02:00
nmlgc 718590908f [Maintenance] [th04/th05] Remove `extern "C"` from more areas of code
Mostly centered around the HUD, popup, overlay, boss, and player shot
functions we're about to reference in the upcoming decompilations.

Part of P0186, funded by [Anonymous] and Blue Bolt.
2022-03-26 20:44:54 +01:00
nmlgc c940059037 [Decompilation] [th05] Shinki + EX-Alice: Background rendering
Palette hacks not included yet. Yup, that's how all phases can use
hardware color #0 as their background color.

Completes P0147, funded by -Tom- and Ember2528.
2021-06-21 15:48:42 +02:00
nmlgc b265134541 [Reverse-engineering] [th04/th05] Background rendering function pointers
That could have easily been architected without forcing every boss to
manually set the "background to be drawn while bombing" function
pointer.
And without the laziness of just redrawing all tiles during the blocky
opening animation of certain bombs…

Part of P0147, funded by -Tom- and Ember2528.
2021-06-21 15:48:38 +02:00
nmlgc 8691b23716 [Reverse-engineering] [th04/th05] .BB tile animation: Cel rendering
Not exclusively used for the boss entrance animations, even though its
data is declared in that general vicinity. It's also used for all bombs
in TH04, and Reimu's and Yuuka's bomb in TH05.

Part of P0147, funded by -Tom- and Ember2528.
2021-06-21 15:48:28 +02:00
nmlgc f3afd37e8f [Reverse-engineering] [th04/th05] .BB tile animation: Filling a single tile
Sure, it's still a micro-optimization, but at least it's __fastcall for
once! And doesn't assume ES to have been set to a VRAM segment. So not
*that* optimized 😛

Part of P0147, funded by -Tom- and Ember2528.
2021-06-20 19:44:40 +02:00
nmlgc ebbb5b8255 [Maintenance] Move tile-related files to their own subdirectory
The next commit will make clear that tile functionality is not a subset
of the non-boss stage code.

Part of P0147, funded by -Tom- and Ember2528.
2021-06-20 19:37:20 +02:00