Commit Graph

28 Commits

Author SHA1 Message Date
coco875 32358c30fd
Change a variety of constants to defines (#257)
* Change a variety of constants to defines

* Add notes regarding menu columns

* Change unknown type to known types
2022-09-18 21:54:14 -06:00
Tyler McGavran 2c57c81f3a
Match the rest of actors.h (#254)
* Matched rest of actors and more

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
2022-09-08 16:19:53 -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 1897d232a6
Add lots of headers (#252)
* Add a lot of header files

Did my best to move all relevant function prototypes and external
 variable declarations into the header files too.

Matched a few functions in the process

* Updated progress.py

Some of the listed files/folders have been deleted/renamed,
 so I reflected those changes in progress.py

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
2022-08-25 17:57:58 -07:00
MegaMech 7042a3eab5
Document game state related logic (#244)
* Document game state logic

* More namings
2022-07-15 00:44:33 -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 242aa9ffc5
decomp render funcs and some memory (#222) 2022-06-14 16:25:20 -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 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
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
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 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 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
MegaMech 2f8a1bfcb6
Actor decomp (#183)
* Actor decomp
2022-04-26 15:48:36 -07: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 614ae13215
fix audio pointers allowing rom shifts again (#169)
* fix audio pointers allowing rom shifts again
2022-03-03 21:21:06 -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 e371625acb
Add in a struct for surface map entires (#150)
Sourced from https://github.com/micro500/mariokart64/wiki/Surface-Map,
 only minor adjustments were made.

Updated the bounding box corner struct a little based on information from
 the surface map struct.

Refreshed several mips_to_c outputs

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
2022-01-24 21:22:05 -07:00
Tyler McGavran 78681aa5ba
Variety of changes (#147)
* Update player struct with lap count and rank

Also rename some arrays to better reflect what they are tracking

* Add bounding box corner struct and surface type enum

* Create a .h file and move stuff into it

See https://github.com/DeadHamster35/Tarmac64/wiki/Surface-Types and
 https://github.com/micro500/mariokart64/wiki/Surface-Map for reference

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
2022-01-22 22:46:07 -07:00
ChiefFruitcake 1b40669f0d
Menu selection global variable (#113)
* Rename D_800E86A0 to gMenuSelection. Add menu selection options to defines.h

* Other namings
2021-12-24 20:43:17 -07:00
Tyler McGavran a2dc62ccf8
Jump Table Related Disassembly (#60)
* Part 1, Commit 1 of 24

audio/effects

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

* Part 1, Commit 2 of 24

audio/external

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

* Part 1, Commit 3 of 24

audio/heap

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

* Part 1, Commit 4 of 24

audio/port_eu

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

* Part 1, Commit 5 of 24

audio/seqplayer

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

* Part 1, Commit 6 of 24

code_80005FD0

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

* Part 1, Commit 7 of 24

code_8001C4D0

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

* Part 1, Commit 8 of 24

code_80027D00

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

* Part 1, Commit 9 of 24

code_800393C0

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

* Part 1, Commit 10 of 24

code_8003DC40

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

* Part 1, Commit 11 of 24

code_800431B0

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

* Part 1, Commit 12 of 24

code_80057C60

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

* Part 1, Commit 13 of 24

code_8006E9C0

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

* Part 1, Commit 14 of 24

code_80071F00

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

* Part 1, Commit 15 of 24

code_80086E70

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

* Part 1, Commit 16 of 24

code_8008C1D0

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

* Part 1, Commit 17 of 24

code_80091750

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

* Part 1, Commit 18 of 24

code_800AF9B0

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

* Part 1, Commit 19 of 24

code_8028DF00

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

* Part 1, Commit 20 of 24

code_80290C20

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

* Part 1, Commit 21 of 24

code_802B0210

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

* Part 1, Commit 22 of 24

code_actors

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

* Part 1, Commit 23 of 24

memory

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

* Part 1, Commit 24 of 24

os/__osException

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

* Part 2, Commit 1 of 20

audio/effects.c

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

* Part 2, Commit 2 of 20

audio/external.c

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

* Part 2, Commit 3 of 24

audio/heap.c

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

* Part 2, Commit 4 of 20

audio/port_eu.c

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

* Part 2, Commit 5 of 20

audio/seqplayer.c

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

* Part 2, Commit 6 of 20

code_80005FD0.c

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

* Part 2, Commit 7 of 20

code_8001C4D0.c

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

* Part 2, Commit 8 of 20

code_80027D00.c

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

* Part 2, Commit 9 of 20

code_8003DC40.c

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

* Part 2, Commit 10 of 20

code_800431B0.c

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

* Part 2, Commit 11 of 20

code_80057C60.c

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

* Part 2, Commit 12 of 20

code_8006E9C0.c

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

* Part 2, Commit 13 of 20

code_80071F00.c

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

* Part 2, Commit 14 of 20

code_80086E70.c

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

* Part 2, Commit 15 of 20

code_80091750.c

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

* Part 2, Commit 16 of 20

code_800AF9B0.c

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

* Part 2, Commit 17 of 20

code_80290C20.c

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

* Part 2, Commit 18 of 20

code_802B0210.c

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

* Part 2, Commit 19 of 20

code_80296A50.c

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

* Part 2, Commit 20 of 20

memory.c

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

* Part 3, Commit 1 of 4

code_8008C1D0

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

* Part 3, Commit 2 of 4

code_8028DF00

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

* Part 3, Commit 3 of 4

math_util

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

* Part 3, Commit 4 of 4

crash_screen

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

* Recreated disassemblies with a context file

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
2021-11-23 01:47:54 -08:00
CoderStig f959f03184
Matched some memory.c and other (#55)
* Matched some memory.c

* And more
2021-11-16 02:39:33 -07:00
CoderStig 8ab4557b39
Split asm using autodecompiler (#49)
* Split asm using autodecompiler

* Placed libultra bss and linked more C
2021-11-05 05:17:09 -06:00
CoderStig 6121193a29
Added bss (#18) 2021-03-08 01:58:07 -07:00
CoderStig 5ef48aa2eb Refresh 1 2021-03-02 01:48:17 -07:00