* update clang and add action
* try clang on course folder only
* forget two file
* Update course_displaylists.inc.c
* forget few other file
* Update course_vertices.inc.c
* format all code while get it match
* second pass
* format other dir
* disable clang format on bad ido code
* fix some tabulation
* revert format on tool dir
* Update clang-format.yml
* ignore gbi.h
* add some read me instruction
* fix error
* format and fixing error
* Update README.md
---------
Co-authored-by: MegaMech <MegaMech@users.noreply.github.com>
Added some decompme links, also updated the attempt for a function
that SpazzyLemon made progress on
Signed-off-by: Taggerung <tyler.taggerung@email.com>
Co-authored-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>
* 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>
* 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
* All work done in audio
* Migrate audio/port_eu data
* Refereshed m2c
* Got the bss segment matching too
Signed-off-by: Taggerung <tyler.taggerung@email.com>
Mostly relocating rodata from data/* files to the appropriate
asm/nonmatching/* files, although there is some plain data
relocating to be found in here too.
Big change to note is the addition of the code_802AAA70.c file,
split from memory.c. Based on some padding in the ro/data for
memory it seems clear that a split is needed, although it is
not clear that exact spot chosen for the split is correct.
Still, it gets the file padding for the ro/data and text segments
correct so it can't be too wrong.
Also included is an update to the asm_processor tool to support
the .hword directive. I made a PR to the main repo of that
project with an identical change and it was accepted.
Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
* Matches, add permute, and add notice to quick runners
* 80281fa0 matches, render_courses, and create defines for audio
* Renamed 80281fa0.h, func naming, and deleted data_121DA0
* Added clang format
* Matched load_surface_map
* Match func in memory.c
* some matches in audio in port_eu, heap, and external.
* update port eu
* Add export lang=c to makefile
* near match for func_800CBB48
* Update src/audio/heap.c
A lot of these matches come from observing the external audio
stuff in SM64 and realizing that a bunch a couple of the structs
in MK64 are just expanded version of their SM64 counterpart.
Presumably all the expansions are for handling the doppler effect,
although I can't say that with certainty
Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
* Lots of audio decomp
* effects and playback are 100% matched
* Took some notes from the SM64 Makefile to get the right compiler
options for a couple files
* Added the audio files to rename_symbol utility
Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
Couple matches functions, an update to a struct, a bunch of header
files adjustments, and some mips_to_c regenerations
Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
Thank you Mech for figuring out what the stack management stuff was
about.
And yes, apparently the best way to match those functions is to have
an `if` statement that uses an unset local variable as its condition
Signed-off-by: Taggerung <tyler.taggerung@gmail.com>