mirror of
https://github.com/nmlgc/ReC98.git
synced 2025-02-26 20:55:09 +00:00

Yes, decompilation, of something that was so obviously originally written in ASM. We're still left with two un-decompilable instructions here, but I'm amazed at how nicely I was able to abstract away all of the gory register details, leading to pretty clear, readable, and dare I say *portable* code?! Turbo C++ was once again pretty helpful here: • `static_cast<char>(_BX) = _AL` actually compiles into `MOV BL, AL`, as you would have intended, • and no-op assignments like _DI = _DI are optimized away, allowing us to leave them in for clarity, so that we can have all parameter assignments for the SPRITE16 display call in a single place. I love this compiler. Part of P0060, funded by Touhou Patch Center.
3 lines
48 B
C++
3 lines
48 B
C++
; sprite16_put_func_t
|
|
SPF_DOWNWARDS_COLUMN = 24
|