* Match audio/external.c BSS segment
Also fix a misnamed function found in audio/heap, used in
audio/load
* Match audio/seqplayer .data section
* Match func_800C76C0
That was the last function referencing some fake variables, so it
should be possible to match audio/external's .data section as
well
* Match audio/external's .data section
The only thing in src/audio left to be matched is audio/external's
.text section.
There's probably some beautifying that could be done to data/sound_data,
but that is a future problem
Signed-off-by: Taggerung <tyler.taggerung@email.com>
* Doc setup_game_memory and label syms
* match func_800132F4
* match func label defines
* fix some fake ptrs
* match more code
* Matches
* Add osSyncPrintf support and matches
* Add func equiv to draw_square and add comment to is_debug
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>
* Lots of audio matches
Fully matched heap.c, lots of load.c and some stuff in seqplayer.c
Matched heap.c's BSS segement and moved some BSS stuff out of
load.c into data.c, since that where it appears to belong
according to SM64.
Signed-off-by: Taggerung <tyler.taggerung@email.com>
* Match func_800C8920, func_800C8AE4, and..
Introduce struct Unk_800E9F7C and cleanup existing code
* Match func_800C40F0, add the likely other pos vars in the unk struct
* func_800C8CCC
* Update building of packed_dl files
* Expose course_data symbols to linker.
* Remove undefined_syms for course data
* Update ctx_includes
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 really, really don't like a couple of the matches because of
the handling of the `unk_80` member of the object struct. But
if it matches it matches.
Signed-off-by: Taggerung <tyler.taggerung@email.com>