Commit Graph

40 Commits

Author SHA1 Message Date
MegaMech 4ee09e005f Import bss for audio and elsewhere (#416) 2023-09-12 19:43:54 -06:00
MegaMech 208fecdd28 Match bss for code_800029B0 and clean headers (#406)
* Match bss for code_800029B0 and clean headers

* Fix dvdl and a warning
2023-09-08 13:39:13 -06:00
MegaMech bba223ffa4 Match bss in podium ceremony (#403) 2023-09-07 11:44:13 -06:00
Tyler McGavran 8a2fdc21f5 Got a couple matches and a few non matchings (#397)
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>
2023-09-04 19:19:24 -06:00
Tyler McGavran 9663a66dd2 Matched a bunch of functions in code_80091750 (#396)
Signed-off-by: Taggerung <tyler.taggerung@email.com>
2023-09-02 19:43:04 -06:00
Tyler McGavran 1646344907 Move ro/data for code_80091750 into the appropriate c/asm files (#393)
* 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>
2023-08-31 21:18:13 -06:00
Tyler McGavran 31d3ac14ec Put void in several function prototypes (#387)
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.
2023-08-26 12:48:45 -06:00
Tyler McGavran ccd33e9e10 Finished matching code_8008C1D0 (#357)
* Matched code_8008C1D0.c

Signed-off-by: Taggerung <tyler.taggerung@email.com>
2023-08-08 20:58:36 -06:00
Tyler McGavran ce15ceac10 Assorted matches (#346)
Signed-off-by: Taggerung <tyler.taggerung@email.com>
2023-07-17 20:06:10 -04:00
MegaMech d6eb25aae3 Cleaning Up Warnings (#317)
* Update mk64 makefile to reflect sm64 makefile

* print func matches and fix some warnings
2023-06-28 14:30:11 -06:00
MegaMech fb7c3bce61 Various matches (#304) 2023-04-10 01:40:47 -06:00
MegaMech afb29a5a65 Match memory.c, remove warnings, fix fake matches (#301)
* Match memory, remove warnings, fix fake matches

* label switch
2023-04-07 22:13:28 -06:00
Tyler McGavran 533d035875 Some assorted matches (#289)
Also renamed a couple variables

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
2023-01-31 07:02:40 -07:00
Tyler McGavran 3e3561bbf1 Couple small matches and m2c refreshing (#282)
* Moved stuff into header files to
 make m2c_helper a more useful

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
2022-12-25 18:56:35 -07:00
Tyler McGavran eeab33814d Yet more assorted matches (#278)
* Yet more assorted matches

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
2022-11-29 18:03:40 -07:00
Tyler McGavran 4647cdcd7e Assorted, unrelated matches (#267)
* Assorted matches

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
2022-11-01 15:07:35 -06:00
Tyler McGavran 3c048af3e6 Some matches for code_80091750 (#258)
Managed to get some arcane fake matches for some long standing
 non-matching functions

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
2022-09-20 18:45:14 -07:00
MegaMech df9ad2d23b Matched a few funcs and renamed seg to virt funcs (#253)
* Matched a few funcs and renamed seg to virt funcs
2022-09-07 22:41:04 -07:00
Tyler McGavran 7508cd2761 Matched a couple functions in code_80091750 (#243)
Refreshed a couple mips_to_c outputs as well

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>

Co-authored-by: MegaMech <MegaMech@users.noreply.github.com>
2022-07-11 02:21:10 -07:00
tehzz 40bb0154a8 Decomp menus.c (#229)
* update m2ctx to make N64 sgi context

* finish decomping menus.c
2022-07-05 19:01:42 -07:00
tehzz 132db50245 Split and Decompile Code_800AF9B0 (#228)
* 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
2022-06-22 19:21:29 -07:00
MegaMech 9ac748b0d0 Match func in staff_ghosts.c and name menus file (#227)
* name some code files

* staff ghost func match

* Update README.md
2022-06-18 02:49:53 -07:00
Tyler McGavran 0923e94420 Match all but one function in code_802B0210.c (#217)
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>
2022-06-11 14:55:45 -07:00
Tyler McGavran 13a11f0ffa Match dma_copy functions (#175)
* Match dma funcs in code_80091750.c

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
2022-04-16 16:31:44 -07:00
Tyler McGavran a47e49249a Match a few functions (#167)
They appear to be related to the textures used on the controller
 pak menu

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
2022-02-22 16:33:01 -07:00
Tyler McGavran 4e4339126e Match func_80091AC0 (#166)
* Match func_80091AC0

* Match func_8009A6D4

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
2022-02-22 11:45:29 -07:00
Tyler McGavran a4e6192030 Match one function, update mips_to_c of 2 others (#164)
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>
2022-02-14 23:40:33 -07:00
Tyler McGavran 3403482de3 Match the other D_80189DE0 search functions (#163)
* Match the other D_80189DE0 search functions

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
2022-02-13 22:04:03 -07:00
Tyler McGavran af8ca42a0c Match several functions (#162)
Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
2022-02-13 01:12:06 -07:00
Tyler McGavran 5205b09751 Name functions that search for 8018D9E0 entries (#161)
* 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>
2022-02-13 00:17:34 -07:00
Tyler McGavran 5badb9e49c Replace mk_Vtx_Flag type with GBI provided Vtx (#160)
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>
2022-02-13 00:04:43 -07:00
Tyler McGavran aa47c86fe5 Mips2c refresh (#159)
* Match 3 functions

* Refresh a ton mips_2_c outputs

* Add a header file for data_segment2

Update a couple mips_2_c outputs based on the contents of the new header file

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
2022-02-07 22:39:14 -07:00
Tyler McGavran 64e8934b30 Break out some credit text stuff into a C file (#157)
* Break out some credit text stuff into a C file

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>

* Add some comments for better clarity

Also delete the asm file for a function that was matched in the
 previous commit

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
2022-02-03 21:06:30 -07:00
Tyler McGavran 2f6c87f14f Identify a credits related struct (#156)
Move some structs around, place them in more meaningful headers

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
2022-02-02 13:19:51 -07:00
Tyler McGavran dac4698b5c Move texture data from asm to C (#142)
* Move texture data from asm to C

Required dropping a couple typedefs since they no longer had a purpose

Regenerated a couple mips_to_c outputs based on the updated types

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
2022-01-18 00:44:11 -07:00
Tyler McGavran b56b43e721 Match a variety of functions, remove an extraneous data file (#140)
* Match func_800AB290 and func_800AC978

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>

* Match func_800A15EC

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>

* Match func_800A1A20

* Get func_800A1F30 to NON_MATCHING

* Match func_800A3C84

mips_to_c does not currently support labels being in delay slots, although
 practice that is fine. To get around this I put a nop in the delay slot
 instead. No permanent change is being made to the target assembly.

* Update the mips_to_c output for a couple functions

Split asm file containing unused funcs and added mips_to_c output for them.

* Remove extraneous data file

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
2022-01-15 23:00:31 -07:00
Tyler McGavran 65e7fc87df Match a variety functions (#136)
* Match func_800A4B38

* Match func_800A6034

* Change type of "blue" argument

This allows the function's type signature to look the same as the other
 box drawing function.

* Match func_800AC300

* Matched func_800AAEF4

* Matched func_800AAF30 and func_800AAF70

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
2022-01-12 22:13:01 -07:00
Tyler McGavran dd05d49f5f Update the GfxPool struct and match some functions (#134)
* Update the GfxPool struct and match some functions

Also reordered variables.h a bit

* Match 2 more functions

* Replace reaming ->buffer references with ->mtxPool

Update the mips_to_c output of a couple functions based on new GfxPool
 definition

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
2022-01-09 20:02:34 -07:00
ChiefFruitcake 7acd1cbc20 More matching in code_800AF9B0 (#131)
* Name variables related to selecting a game from the main menu

* Match a couple functions requiring jumptable

* Match func_800B4728

* Match func_800B536C, func_800B5888, func_800B5AAC, and func_800B5AD8

* Name functions related to loading and validating SaveData

* Match func_800B4CB4

* Update selected player defines

* Match func_800B5404

* Match func_800B6088
2022-01-06 20:32:57 -07:00
Tyler McGavran d6cbf56537 Add a couple header files, add some mips_to_c of some previously un-decomped functions (#132)
* Add a couple header files

These files contain function prototypes for matches functions, NON_MATCHING functions,
 and functions used by matched functions.

At this point in time those headers may contain prototypes for functions defined in
 unrelated files, but fixing that will have take time

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
2022-01-04 19:57:16 -07:00