* TRK full match
* remove trk asm
* ar done
* cleanup some dolphin headers
* more dolphin cleanup
* cleanup / GD fully matched
* almost all of GX fully matched
* GX / Mtx full matched
* most of OS done
* pad done
* most of VI
* remove asm
* forgot couple vec funcs
* couple JUtility matches
* cleanup SSystem files
* MSL_C fully matched
* fix build
* remove asm
* reorganize MSL_C/Runtime libs into more accurate setup
* little more cleanup
* cleanup some MSL headers
* obj_rgate OK
* remove asm
* some rgate documentation
* Work on J2DMaterialFactory
* J3DUClipper OK
* Work on JAISoundStarter
* JAISoundHandles OK
* JAISoundInfo OK
* Fix JAISound::isStopping
* Work on J2DTextBoxEx
* dspproc OK
* osdsp OK
* osdsp_task OK
* Work on dsptask
* Import some JASCalc code
* JASCallback OK
* JASOscillator OK
* JASLfo OK
* d_a_alink pass1 wip
* more d_a_alink work
* remove asm
* more daalink work
* 20% dol code decompiled
* fixed some nonmatchings for building
* a few daalink functions and labeling some HIO data
* J3DUClipper sinit
* sincosTable_ etc
* decompile JMATrigonometric sinit
* f_op_actor_mng
* move f_op_actor_mng and parts of mDo_ext
* J3DSys sinit
* f_op_scene_req
* failed matching attempt for decodeSZS__9JKRDecompFPUcPUcUlUl
* mX -> x
* fix mCull and fopAcM_prm_class members
* fix a few function parameters
* move missing NON_MATCHING
* remove some unneeded data
* turns out that data was not unused
* remove unused asm
* readd asm deleted by accident
Removes the strong dependency on a single header file and moves
declarations to their respective header file.
This allows for making dependencies explicit in cpp files and other
headers, and also makes it much easier to track where everything related
to a particular component is.
This change also creates a few header files that previously didn't
exist, making it much nicer for people implementing things, as they
won't need to create the header file, it'll just be there ready to go.
Ideally functions.h wouldn't even be a thing, as this header adds a lot
of preprocessing overhead due to its size, and will continue to grow
significantly larger over the lifespan of the project, which can also
impact the performance of editors that do dependency lookups and
context-aware syntax highlighting.
i previously had a bad habit of using double underscores in include
guard macro names, which are implementation-reserved per
the C++98 standard (see 17.4.3.1.2 Global names).
Co-authored-by: Pheenoh <pheenoh@gmail.com>
* Z2Calc OK
* inline definitions in random.h and format
* set -enum int compiler flag and fix enum hacks
* note for get_ufloat_1 inline
* PR suggestions and UB note
Co-authored-by: Pheenoh <pheenoh@gmail.com>