Commit Graph

249 Commits

Author SHA1 Message Date
MegaMech efd984fb62
Match func_8006F008 (#519) 2023-12-30 16:04:04 -07:00
coco875 e5a215cb7c
Add bss render player and spawn player (#518)
* finish render_player

* finish normally spawn_player bss
2023-12-30 15:46:05 -07:00
Tyler McGavran a38d338bf0
Some matches in code_80005FD0 (#517)
Signed-off-by: Taggerung <tyler.taggerung@email.com>
2023-12-29 10:54:39 -07:00
Tyler McGavran c89b4f6fe7
Match the BSS segment for code_80005FD0 (#516)
Signed-off-by: Taggerung <tyler.taggerung@email.com>
2023-12-28 21:39:35 -07:00
coco875 7597ee4ea8
add bss variable to camera.c (#514)
* add bss variable to camera.c

* Rename bss_8001C4D0.s to bss_80164AB0.s
2023-12-25 08:57:38 -07:00
coco875 3638f19145
some rename in code_8006e9c0 (#512)
* some basic function renames

* Renaming player hud related variables.
2023-12-25 06:43:47 -07:00
Tyler McGavran 6b9f36bbb0
Some matches in code_80005FD0 (#501)
Signed-off-by: Taggerung <tyler.taggerung@email.com>
2023-12-17 22:29:01 -07:00
coco875 4e84f00a25
Rename Functions For Calculating Distance (#500)
* Rename functions for calculating an objects distance to player/camera
2023-12-15 01:16:24 -07:00
Tyler McGavran 8b2bca8268
Some matches in code_80071F00 (#496)
Signed-off-by: Taggerung <tyler.taggerung@email.com>
2023-11-25 13:24:25 -07:00
VDavid003 58d3f26f47
Match some D_8018E7AC related functions in code_80091750.c (#492) 2023-11-08 16:00:29 -07:00
Tyler McGavran cbe41239d7
More audio stuff (#488)
* Match create_next_audio_frame_task

Required some variable renaming and other changes

* Match synthesis_execute

I'm not entirly sure about the way we have stuff ifdef'd in
 PR/abi.h. I feel like we're doing something slightly wrong there


* Match synthesis_do_one_audio_update

There's something super fucked with the way our ifdef's work in
 abi.h. It is going to demand a lot more attention sometime in the
 future.

* Rename a couple functions

Also had to hack up the ABI file a bit. I'm convinced that we
 don't need nor want to have the EU/Shindou/US split thing the
 SM64 code does. There's probably just the 1 ABI version being
 used and we need to figure out what it looks like

Signed-off-by: Taggerung <tyler.taggerung@email.com>
2023-11-07 20:38:25 -07:00
MegaMech f75460cb8b
Matches in code_80005D0 (#487)
* Variety of matches
2023-11-07 20:17:28 -07:00
Tyler McGavran b6abd829d2
Give names to a lot of object spawn locations (#486)
Signed-off-by: Taggerung <tyler.taggerung@email.com>
2023-11-07 17:02:21 -07:00
MegaMech a1f432e9dc
match func_8000F628 and add NUM_PLAYERS define (#479)
* Match two funcs and add NUM_PLAYERS define
2023-10-28 12:39:32 -06:00
Tyler McGavran c17d5c76c9
Linkage for the ceremony_data file (#478)
* Linkage for the ceremony_data file

Cleaned up all but 1 undefined symbol from the 0x0B range. The one
 leftover may be something from texture_tkmk00. Or atleast, that's
 what I think. Can't say for certain

* Startup logo linkage

Cleaned up a bunch of unused items from assets.json too

Signed-off-by: Taggerung <tyler.taggerung@email.com>
2023-10-27 22:18:20 -06:00
Tyler McGavran 716b926260
Place variables from data_0DD0A0 to code_800029B0 (#477)
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>
2023-10-27 20:00:52 -06:00
MegaMech 76dc587a34
EU 1.0 OK (#265)
* EU 1.0 ok

* EU 1.1 ok

Co-authored-by: AloXado320 <david.albujar.s.30@gmail.com>
2023-10-19 23:37:21 -06:00
coco875 134e126cd9
some define comment and replace number by const (#469) 2023-10-19 12:06:12 -06:00
Tyler McGavran a870180a2c
Couple matches (#466)
Removed some things from variables.h and functions.h

Added headers for some src/data files
2023-10-18 23:19:07 -06:00
Joshua Peisach 03a5550a94
Rename bomb kart structs (#464)
Signed-off-by: Joshua Peisach <itzswirlz2020@outlook.com>
2023-10-14 21:08:15 -06:00
Tyler McGavran aa720db51a
A few matches across a couple files, although mostly code_80005FD0 (#460)
Signed-off-by: Taggerung <tyler.taggerung@email.com>
2023-10-13 22:09:18 -06:00
coco875 10e0e61731
rename in code_8001F980.c (#456)
* some renames

* Update code_8001F980.c
2023-10-13 20:55:46 -06:00
AloXado320 364f0776c6
Match __osLeoInterrupt.c (#457)
* Match __osLeoInterrupt.c

* fix formatting

---------

Co-authored-by: MegaMech <MegaMech@users.noreply.github.com>
2023-10-11 19:00:21 -06:00
MegaMech 7f14bf80df
Rename wayPoint to waypoint (#448)
* Rename wayPoint to waypoint

* other
2023-10-09 20:46:56 -06:00
coco875 d8cfed9491
Various Naming (#445)
* Mass renames
2023-10-07 16:31:48 -06:00
MegaMech 2b74bbbcef
Doc setup_game_memory, label syms, add osSyncPrintf support, match funcs (#444)
* Doc setup_game_memory and label syms

* match func_800132F4

* match func label defines

* fix some fake ptrs

* match more code

* Matches

* Add osSyncPrintf support and matches

* Add func equiv to draw_square and add comment to is_debug
2023-10-06 00:19:09 -06:00
coco875 2f583fdb42
cleaning camera, kart_dma, menu, math_util (#436)
* cleaning camera.h

* cleaning math_utils.h and remove space

* cleaning kart_dma

* cleaning menu.h
2023-09-22 22:00:30 -06:00
coco875 f4fc23bada
Header & General Cleanup (#431)
* Header cleanup
2023-09-20 11:59:55 -06:00
coco875 378144b35b
some renaming (#419)
* Renames
2023-09-19 12:23:12 -06:00
MegaMech 91fc8ea473
Some train decomp and move seg2 files to ending (#423)
* Some train decomp

* Move seg2 to ending/

* move racing code files into racing folder

* Fix progress

* Rename segments
2023-09-17 16:57:18 -06:00
AloXado320 3f221d6f25
Label mtx variables in GfxPool (#424) 2023-09-17 16:39:25 -06:00
MegaMech 4ee09e005f
Import bss for audio and elsewhere (#416) 2023-09-12 19:43:54 -06:00
Tyler McGavran c85a333a3f
Add new utility to calculate packed dl end and vertex count (#411)
* Add new utility to calculate packed dl end and vertex count

Requires changing a bunch of actual references to packed dl lists
 with raw numbers. Which feels extremely bad but it doesn't match
 otherwise.

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

* Hard code array lenghts in appropriate headers

Use macros to generate the vertex counts and packed dl end points

Heavily dependent on the array lengths being accurate. If they
 aren't stuff will break.

Signed-off-by: Taggerung <tyler.taggerung@email.com>
2023-09-10 14:21:16 -06:00
MegaMech 70207db13b
Various cleanup (#410) 2023-09-09 18:01:01 -06:00
Tyler McGavran 233e9217e7
Remove undefined_syms for common_textures (#409)
* Remove undefined_syms for common_textures

Signed-off-by: Taggerung <tyler.taggerung@email.com>
2023-09-09 11:33:20 -06:00
AloXado320 c350eddc6b
F3DEX old commands changes (#408)
* F3DEX old commands changes
    * Changed commands using gspQuadrangle to gspTri2
    * Replaced mk_quad with gspQuadrangle.
2023-09-09 01:06:35 -06:00
Tyler McGavran 7afffb63f5
Cleanup undefined_syms for all the course data (#407)
* Update building of packed_dl files

* Expose course_data symbols to linker.

* Remove undefined_syms for course data

* Update ctx_includes

Signed-off-by: Taggerung <tyler.taggerung@email.com>
2023-09-08 22:56:49 -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 9c661125be
Small matches, nothing super special (#400)
Signed-off-by: Taggerung <tyler.taggerung@email.com>
2023-09-05 15:49:55 -06:00
MegaMech 7f7ecc5854
assorted matches (#399)
* assorted matches
2023-09-05 15:00:15 -06:00
Joshua Peisach 67fbcac9ec
Match func_8006B7E4, func_8006EEE8, func_80071A20 (#395)
* Match func_8006B7E4, func_8006EEE8, func_80071A20

* Fix missing extern void call
2023-09-05 14:38:40 -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
MegaMech 23cfd1ca02
Match funcs in player_controller.c (#398)
* Match funcs in player_controller.c
2023-09-04 18:57:16 -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
MegaMech 6562421673
some matches (#391) 2023-08-30 22:45:51 -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
MegaMech 0e85b1acb1
Some matches in 80027D00 (#385) 2023-08-25 22:14:08 -06:00
Tyler McGavran 0d9396b631
Make some adjustments to the SaveData struct (#381)
Also get rid of some fake variables from a bss file.

Matched a couple functions too.

Signed-off-by: Taggerung <tyler.taggerung@email.com>
2023-08-25 18:02:37 -06:00
MegaMech 6e3f6aee63
Matched some funcs (#378)
* Matched code
2023-08-22 19:12:51 -06:00
Tyler McGavran df3c435ac8
Versus mode Bomb Kart stuff (#375)
Signed-off-by: Taggerung <tyler.taggerung@email.com>
2023-08-20 22:23:57 -06:00
Tyler McGavran 70c082d303
Update some header files (#373)
Also moved a lot of extern variable declarations into the
 their appropriate header file(s)

Signed-off-by: Taggerung <tyler.taggerung@email.com>
2023-08-20 21:15:07 -06:00
MegaMech 27af470a46
Bumped Total Progress Script by 1.04% (#371)
* Matched camera.c
2023-08-15 13:07:23 -06:00
MegaMech 569bafc48b
Various cleanup and matching (#369)
* More podium_ceremony_actors documentation

* Updated progress script

* Various matches and cleanup
2023-08-12 15:19:57 -06:00
Tyler McGavran da33557296
More matches for code_80071F00 (#364)
Signed-off-by: Taggerung <tyler.taggerung@email.com>
2023-08-11 10:12:00 -06:00
MegaMech baaa2f930d
Match Segment 3 -> Matched code_80280650.c (#363)
* Match & doc code_80280650.c

* Update readme
2023-08-10 20:54:11 -06:00
Tyler McGavran 04e9e00227
Some matches in code_80086E70 (#361)
Signed-off-by: Taggerung <tyler.taggerung@email.com>
2023-08-09 19:16:00 -06:00
MegaMech 870c39ad77
Matched code_80091440.c and named gDemoMode variable (#358)
* matched code_80091440.c

* Named gDemoMode

* Remove asm for matching func

* Matched and namings for random_u16_credits func in code_80280650.c
2023-08-09 14:53:55 -06:00
Matthew 21a5645e12
More matches in code_80057C60 (#351)
* Some matchings for code_80057C60

* Remove matched assembly
2023-08-08 13:05:58 -06:00
tomas cf9841d39f
small changes. One matching func, Two nonmatching funcs (#355)
* Various decomp and non_matchings.
2023-08-08 12:41:17 -06:00
Tyler McGavran 87297bc3b4
Lots of code_80071F00 matches (#347)
* Lots of code_80071F00 matches

Also removed a bunch of fake variables related to the object list.

Also gave names to some of the members of the object list type

Signed-off-by: Taggerung <tyler.taggerung@email.com>
2023-08-04 15:05:13 -06:00
tomas 9d716d921a
very cool debug display list (#348)
* added a very cool debug display list ^^ (prints variables to screen)

* Decompiled various functions
2023-08-04 13:04:49 -06:00
tomas 84edd67231
controller pak stuff (#333)
- Named some variables
2023-07-11 12:14:23 -06:00
Tyler McGavran 2f7719086a
Rename a bunch of D_06XXXXXX variables (#330)
* Rename a bunch of D_06XXXXXX variables

Signed-off-by: Taggerung <tyler.taggerung@email.com>
2023-07-08 17:54:58 -06:00
Tyler McGavran 178dfc5591
Match a couple functions and migrate assets related to HUD Type C (#328)
Signed-off-by: Taggerung <tyler.taggerung@email.com>
2023-07-02 14:16:24 -06: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
Tyler McGavran 1b659170dc
Make adjustments to most course files (#318)
* Make adjustments to the Mario Raceway course file

Added quotes in "*.mk" to the find command for finding the .mk files.

* Make adjustments to the Choco Mountain course file

* Make adjustments to the Frappe Snowland course file

* Make adjustments to the Toad's Turnpike course file

* Make adjustments to the Moo Moo Farm course file

* Make adjustments to the Luigi Raceway course file

* Make adjustments to the Koopa Troopa Beach course file

* Make adjustments to the Kalimari Desert course file

* Make adjustments to the Bowser's Castle course file

* Make adjustements to the Wario Stadium course file

* Make adjustments to the Sherbet Land course file

* Make adjustments to the Royal Raceway course file

* Make adjustments to the Banshee Boardwalk course file

* Make adjustments to the Yoshi Valley course file

* Make adjustments to the Rainbow Road course file

* Make adjustments to the Big Donut course file

* Make adjustments to the Block Fort course file

* Remove some unneeded lines from the Makefile

Signed-off-by: Taggerung <tyler.taggerung@email.com>
2023-06-28 14:20:02 -06:00
MegaMech 680e64fe29
Fix course data & course table warnings (#313) 2023-06-16 16:29:56 -06:00
MegaMech 779ae6f6f1
Item & Various decomp (#311)
* Item & Various decomp
2023-06-16 10:30:39 -06:00
MegaMech e371f88b2d
UI and print debug matches (#310)
* various decomp
2023-05-22 13:05:54 -06:00
MegaMech eda4a3f117
Various documentation (#309)
* Various matches

* Various documentation

* fix
2023-04-18 22:31:05 -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 782ed71f61
Massive data relocation (#295)
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>
2023-03-29 18:52:15 -06:00
MegaMech 8d118db0b2
Labelling of some hard-coded addr to syms (#294)
* Updated final displaylist symbol

* Cleaned up loader script

* Random changes

* Various naming and decomp
2023-03-28 16:40:03 -06:00
MegaMech db4e0a3727
Disassembled courses, added DLpacker, and disassembled packed DLs (#290)
* Disassembled all courses; packed DLs and course data.

* Added displaylist packer

* Minor documentation and naming
2023-03-07 19:48:17 -07: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 d1ebe06b29
Assorted matches (#288)
* Matches in code_80071F00

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
2023-01-25 07:50:32 -07:00
Tyler McGavran e7ceabf94f
Couple matches and giving names to some textures (#285)
* Give names to some textures

* Match a couple functions

* Remove a use of bin2c from the makefile

* Its a little strange, but two of the portrait textures share
 a TLUT. I believe this necessitates that the portraits be
 part of the same PNG file.

* 2nd portrait referenced in undefined_syms.txt

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
2023-01-03 20:43:30 -07:00
Tyler McGavran c705bc4a6a
Lots of matches related to the object list (#284)
Identified a couple more lists of object list indices, added some
 comments indicating what they're used for. Those comments are
 most likely non-exhaustive so there's still some investigation
 to be done there.

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
2022-12-28 20:19:11 -07:00
Tyler McGavran a753895359
Assorted matches, mostly focussing on 80027D00 (#277)
* Assorted Matches

* Matches in code_80027D00

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
2022-11-21 11:57:07 -07:00
MegaMech 0c10beae0e
Matches in 80281fa0, render_courses, and create defines for sound cues. (#276)
* 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
2022-11-21 04:06:12 -07:00
Tyler McGavran 4e5946257d
Some matches for audio/synthesis (#268)
* Updated the Makefile to make the VERSION_US file
 get used when compiling stuff.

* Updated the abi.h file to match SM64, with some modifications to
 support the currently targeted version (US).

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
2022-11-01 15:37:10 -06: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 1483ddaa03
Matches and m2c refreshing for code_80057C60 (#266)
* Matches and m2c refreshing for code_80057C60

* Convert some Vtx's into a Mtx

Based on the usage of D_0D008E98, it seems like it should be a
 Mtx. So this commit changes some Vtx's into a Mtx

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
2022-10-19 22:00:45 -06:00
Tyler McGavran b7e7b34998
A bunch of unrelated, assorted changes (#263)
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>
2022-09-30 22:48:59 -06:00
MegaMech 82b53f5928
Player struct member naming and matched a few funcs (#262)
* Player struct member naming
* Matched a few funcs
2022-09-26 12:59:41 -07:00
Tyler McGavran 754e31da04
Even more matches for code_800431B0.c (#261)
* More matches for code_800431B0

* Also added a header for the common_textures file since some other
 files use the Gfx/Vtx variables defined there

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
2022-09-25 10:26:58 -07:00
Tyler McGavran 5cd2115c2e
Some matches for code_800431B0 (#259)
* Required making an adjustment to the object struct, which was required to fix some other files.

* Decompiled some gfx

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
2022-09-20 18:55:59 -07: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
Tyler McGavran dfd54d9a10
Match a lot of functions, add header for objects (#251)
* Match a lot of functions, add header for objects

* Refreshed a TON of functions and created/added to several
 header files

* Add header for code_800431B0, address comments

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
2022-08-23 09:33:00 -07:00
Tyler McGavran 7d23fcc063
Fix some of the memory allocation in framebuffers (#182)
* Fix some of the memory allocation in framebuffers

Also includes a the questionable change of undoing a previously
 made match for func_80027A20. The changes made here remove an
 AVOID_UB usage and (I would argue) is therefore more "correct",
 but undoing a byte-for-byte match is admittedly bad.

Also adds in some header files and updates some not-quite-right
 decomps to be slighly more accurate.

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
2022-08-14 22:47:11 -07:00
MegaMech e9383d1b7a
code_8001F980 decomp + profiler doc + more (#250) 2022-08-01 16:32:20 -07:00
Tyler McGavran a536985a13
Add structs for "vehicle" types in 80005FD0 (#248)
Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
2022-07-27 19:03:35 -07:00
Tyler McGavran bf4ca94711
Match a variety of functions (#245)
Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
2022-07-15 11:49:40 -07:00
MegaMech 7042a3eab5
Document game state related logic (#244)
* Document game state logic

* More namings
2022-07-15 00:44:33 -07:00
MegaMech fd7941e841
Split out some unused asm and documented main.c (#242)
* Splitting out unused asm

* Documented main.c
2022-07-11 00:02:41 -07:00
MegaMech a8e984d2fd
Decomp 800 byte sized funcs and smaller (#241)
* Decomp 800 byte sized funcs and below
2022-07-09 04:05:11 -07:00