* More matches in code_80091750
Fixed some missing balign directives in some assembly files.
A lot of these matches are dependent on flattening a bunch of
arrays, which feels icky but makes matching possible.
Signed-off-by: Taggerung <tyler.taggerung@email.com>
* Matched another function
Updated the attempts for a couple others
Signed-off-by: Taggerung <tyler.taggerung@email.com>
---------
Signed-off-by: Taggerung <tyler.taggerung@email.com>
Co-authored-by: Taggerung <tyler.taggerung@email.com>
* Linkage for the ceremony_data file
Cleaned up all but 1 undefined symbol from the 0x0B range. The one
leftover may be something from texture_tkmk00. Or atleast, that's
what I think. Can't say for certain
* Startup logo linkage
Cleaned up a bunch of unused items from assets.json too
Signed-off-by: Taggerung <tyler.taggerung@email.com>
They match when placed there, although its not immediately clear
that they truly belong there. But a match is a match.
Also cleaned up a bunch of .h files that had references to the
newly matched variables.
Signed-off-by: Taggerung <tyler.taggerung@email.com>
Required fixing a problem relating to rodata. There was a missing
balign directive causing some issues when trying to match
func_800A9A98
Signed-off-by: Taggerung <tyler.taggerung@email.com>
Also got rid of a couple asm files for functions that were matched
a long, long time ago (thank you ItzSwirlz for finding them)
Signed-off-by: Taggerung <tyler.taggerung@email.com>
* Migrated data and rodata for code_80091750
And it even matches when built!
Minor annoyances:
There are some EUC-JP strings in `func_800A6E94` and `func_800A69C8`
that are currently in byte form. The asm files don't get put
through `icnov` so we can't have them as strings until they're
parent functions are matched.
`func_8009F5E0` has the symbol `D_800E7594` replaced with the
actual number `0x800e7594`. The symbol in question is almost
certainly fake, but I can't figure out what its meant to be.
So I've hardcoded it for the time being to make the migration
possible.
* Fully match all the NEEDS_RODATA functions
Signed-off-by: Taggerung <tyler.taggerung@email.com>
I have historically made prototypes for argument-less functions
with just plain `()` for the argument list. This has caused some
minor pains when using `m2c` and is, pendatically, incorrect.
So I have changed all argument-less function protoypes to instead
have `(void)` as the argument list. This required a couple small
fixes here and there.
* change return type of func_8000546C
* try to fix submodules
* update asm_processor for new ASM directives
* split code_800AF8B0 into 3 files; move rodata into files/asm
* move rodata into code_800AF9B0 asm funcs
* decomp func_800AF9E4
* match 800AFF58
* merge in master (renamed code_800AF9B0.c to menus.c)
* revert menus.c back to code_800AF9B0.c
* add bss to code_800AF9B0
* rename code_800B0350.c to menus.c
* remove unused ALIGN macros
Required getting the .rodata for that file correct too.
Matched a couple other funtions here and there as well.
Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
There's a function that appears to use continued fractions
to approximate the value of tanh(x/2), which is super weird.
Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
* Name functions that search for 8018D9E0 entries
The one with "_dupe" in its name is the one that has the potential hard lock
laying around
* Add comment for bug in find_8018D9E0_entry_dupe
Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
There's no reason to have our own special type when it exactly matches a GBI type.
This required updating some inc.c data as the old mk_Vtx_Flag type had the 'flag'
member in the incorrect location.
Signed-off-by: Taggerung <tyler.taggerung@gmail.com>