mirror of https://github.com/nmlgc/ReC98.git
e6294c2c1a
The TH02 version is a piece of cake… … but TH04 starts turning it into this un-decompilable piece of unnecessarily micro-optimized ZUN code. Couldn't have chosen anything better for the first separate ASM translation unit. Aside from now having to convert names of exported *variables* to uppercase for visibility in ASM translation units, the most notable lesson in this was the one about avoiding fixup overflows. From the Borland C++ Version 4.0 User's Guide: "In an assembly language program, a fixup overflow frequently occurs if you have declared an external variable within a segment definition, but this variable actually exists in a different segment." Can't be restated often enough. Completes P0032, funded by zorg. |
||
---|---|---|
.. | ||
boss | ||
formats | ||
hardware | ||
hud | ||
music | ||
snd | ||
stage | ||
enemy_drops[data].asm | ||
hitshot_from.asm | ||
hitshot_from[bss].asm | ||
hitshots[bss].asm | ||
laser_render_hittest.asm | ||
lasers[bss].asm | ||
lasers_control.asm | ||
lasers_render[bss].asm | ||
lasers_update_render.asm | ||
main012.cpp | ||
playchar_speed[bss].asm | ||
playperf_adjust_speed.asm | ||
select_for_playchar.asm | ||
shot_types.inc | ||
shots_add.asm | ||
th05.hpp | ||
th05.inc |