Commit Graph

223 Commits

Author SHA1 Message Date
MegaMech cc03ab5e7e
Revert "Update README.md (#232)" (#233)
This reverts commit 95a6923c54.
2022-06-26 15:32:29 -07:00
MegaMech 95a6923c54
Update README.md (#232) 2022-06-26 15:31:43 -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
MegaMech 22ca23f32c
Rename some files and Match spawn_players.c (#226)
* name some code files

* Match spawn_players func

* random decomp

* name more files
2022-06-17 03:05:27 -07:00
MegaMech fd3e8e0e15
fix submodules (#225) 2022-06-15 20:38:49 -07:00
tehzz 0f0ff04779
Add building on macOS (#224)
* build OK macOS

* add macOS building instructions

* change return type of func_8000546C

* prevent gitattributes from removing CRLF from ido binaries
2022-06-15 17:26:03 -07:00
Tyler McGavran 491f37be4d
Match code_8003DC40 (#223)
Matched its rodata too

Required making a minor adjustment to the Player struct, which
 required updating a couple of other files

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
2022-06-14 22:28:10 -07:00
MegaMech 7d11a134cc
wip decomp of 80040E50, documentation of dma code, and other (#215)
* Math decomp and more.
2022-06-14 20:36:00 -07:00
MegaMech 242aa9ffc5
decomp render funcs and some memory (#222) 2022-06-14 16:25:20 -07:00
MegaMech d9bd7bfbc0
crash_screen decomp and misc (#221)
* crash_screen decomp and misc
2022-06-14 01:37:54 -07:00
Tyler McGavran ed3dad7e1a
Match code_80040E50 (#220)
This required making some minor adjustments to a struct in
 common_structs.h, which further required a couple tiny updates to
 some functions in a couple other files. Nothing too crazy.

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
2022-06-13 17:07:06 -07:00
Tyler McGavran ad46b8544e
Match some functions in code_80281FA0 (#219)
Renamed a couple functions as well

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
2022-06-12 12:34:13 -07:00
Tyler McGavran 744a4a1133
Match some code_actors functions (#218)
Require splitting out some unused functions

Also took some time to update some m2c output

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
2022-06-11 22:30:31 -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 56120481f9
Match several functions in code_802B0210 (#216)
Several other functions are as matched as the can be, needing only
 the addition of some RODATA to fully match.

Others are in a mostly-matched state, but have some incorrect
 register allocation. More investigation/work is needed to
 figure that out.

Most of those leftover have had their m2c output regenerated.

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
2022-06-01 23:48:44 -07:00
Tyler McGavran c82a7438fb
Match some audio functions (#213)
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>
2022-05-26 16:56:52 -07:00
MegaMech 43fd723266
Match dma funcs in 80027040.c (#209)
* Match dma funcs

* Decrement file count decomped by one in readme
2022-05-24 03:04:28 -07:00
Tyler McGavran 45f6233b95
Match 2 functions and refresh a couple m2c outputs (#208)
Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
2022-05-24 02:55:00 -07:00
Tyler McGavran 84cb46c0e5
Update and add some header files (#205)
* Update header files for main, memory and math_util

* Required updating func_802A82E4 to keep the match

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
2022-05-20 18:51:56 -07:00
MegaMech 489e897147
Update gitignore & match more actor funcs (#206)
* import random_u16 to sm64

* rand math decomp

* Match func_80298AC0

* Match some actor funcs

* Renames

* update gitignore for .bin textures

* update player struct member 34 to Vec3f

* Named and documented actor destroy funcs
2022-05-19 13:20:39 -07:00
MegaMech bcf65f3883
import random_u16 to sm64, match random_s32, and match actor func (#203)
* import random_u16 and atans from sm64

* rand math decomp

* Match func_80298AC0
2022-05-19 01:39:18 -07:00
Tyler McGavran 63c4f48340
Match func_802B0570 and fix BananaActor (#204)
I misunderstood how unions worked. In order to accomplish the
 original goal, the 3 named s16's need to be in a struct instead
 of just floating around.

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
2022-05-18 01:45:46 -06:00
Tyler McGavran b1c0c05bd3
Identify some Actor count variables (#202)
* Identify some Actor count variables

* Match place_all_item_boxes

Also more accurately define the UknownRock struct. Some of the
 track specific data is spawning points for the "permanent"
 actors (stuff like falling rocks, shrubbery, item boxes, etc.)

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
2022-05-16 19:46:07 -06:00
Tyler McGavran 55a30f5c8c
Give a name to the list of actors (#200)
Add a define for the size of the actor list, and add a comment
 cautioning people about how to appropriately interact with
 the specialized types.

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
2022-05-14 20:03:42 -06:00
MegaMech 418d7d95c6
Memory and Actor decomp (#201)
* Decomp more actors

* Added editor config to prevent clrf

* Memory and actor decomp

* Update code_80296A50.c

* Update code_80296A50.c
2022-05-14 15:12:32 -07:00
Tyler McGavran bbfdb9338c
Give names to a couple vec3*_set functions (#197)
* Give names to a couple vec3*_set functions

Change vec3f_set to sm64_vec3f_set

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
2022-05-13 22:31:54 -07:00
MegaMech 98dc90cdd5
Decomp more actors (#198) 2022-05-13 03:42:30 -07:00
MegaMech e5bd09039f
Add files via upload (#196) 2022-05-12 16:01:07 -07:00
MegaMech e4a176d8f5
Match common_textures.inc.c, memory & actor decomp (#188)
* More actor decomp

* memory.c decomp plus bss import into actor code

* Match actors and segment D match

* Match common_textures.inc.c

* Add tool bin2c.py
2022-05-12 15:57:56 -07:00
Tyler McGavran 49845b1fe9
Added more actor types and some defines (#194)
* Added more actor types and some defines

Also adjusted the generic Actor struct to have some of its members
 have names that are generally reasonable for all types of actors

Added a union to the BananActor struct, makes accessing the `rot`
 member and the overlapping id/index members more sensible

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
2022-05-11 20:07:18 -07:00
Tyler McGavran 92ad254c24
Match 3 functions in code_8001F980 (#193)
Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
2022-05-07 23:43:06 -07:00
Tyler McGavran 67331d5dda
Match a few functions in code_800431B0 (#192)
Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
2022-05-06 21:59:17 -07:00
Tyler McGavran ecb085b291
Add some more actor types, match a function (#191)
* Add some more actor types, match a function

* Identify the boundBox member of the Player struct

Note that while the `flag` members are signed, they should be understood as just a group of bits.
Based on some googling around (see https://stackoverflow.com/a/11644749) the operation `thing.flag |= 0x8000`
is NOT undefined behaviour, even though that is setting the sign bit.
The numerical interpretation of the result as a signed number is implementation defined, while the
actual operation acts on the bit representation of the number.

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
2022-05-06 21:56:43 -07:00
Tyler McGavran d4a0f7ab8f
Add types for shell and triple shell parent (#190)
Match a function and refresh m2c output for functions that handle
 (triple) shells

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
2022-05-04 21:49:11 -07:00
Tyler McGavran 6ed26d9786
Match a couple functions in code_80281FA0 (#189)
* Match a couple functions in code_80281FA0  and add a header file

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
2022-05-01 03:53:47 -07:00
MegaMech 2b6dc2cb0b
Create .gitattributes to auto parse out clrf line endings. (#187)
* Create .gitattributes
2022-04-27 22:44:24 -07:00
someone2639 5ca8e07a4d
fix matching on Arch/maybe Fedora (#186)
authored-by: Faris Awan <farisawan.2000@gmail.com>
2022-04-27 12:08:35 -06:00
MegaMech c29ae8d069
More actor decomp (#184)
* More actor decomp
2022-04-26 22:16:52 -07:00
MegaMech 2f8a1bfcb6
Actor decomp (#183)
* Actor decomp
2022-04-26 15:48:36 -07:00
MegaMech 626513f90a
Update framebuffers.h (#181) 2022-04-21 02:30:43 -07:00
Tyler McGavran 581977a010
Match func_8002AB70 (#180)
* Match func_8002AB70

* Added a header for another file, which required adjusting
 a couple other files

* Matched a couple more functions

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
2022-04-20 21:38:44 -07:00
Tyler McGavran 044e056fbe
Match assorted functions in code_80027D00 (#179)
Also refresh a couple mips_to_c outputs

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
2022-04-19 13:31:08 -06:00
Tyler McGavran 45354a149b
Mostly match a few functions in memory.c (#178)
* Match a few functions in memory.c

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
2022-04-18 08:04:46 -06:00
MegaMech 73662905b4
Delete func_80027A20.s (#177) 2022-04-16 23:23:03 -07:00
MegaMech e4e5f91be5
audio load.c decomp (#176) 2022-04-16 23:11:40 -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 fe810f8d1f
Match 3 functions in code_80027D00 (#172)
Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
2022-04-16 16:13:09 -07:00
Tyler McGavran 2dd77a35a0
Update header for code_8008C1D0 (#173)
Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
2022-04-16 15:51:59 -07:00
Tyler McGavran ac39d14729
Match func_80032D94 (#171)
* Match func_80032D94

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