Commit Graph

286 Commits

Author SHA1 Message Date
MegaMech 772091700c
Update progress.py (#300) 2023-04-04 19:54:10 -06:00
MegaMech 0b7ad56ad9
Disclude credits.c from progress.py (#299) 2023-04-04 19:19:22 -06:00
Tyler McGavran 6b4d71e66c
Match credits (#297)
* Match credits data and ro data

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
2023-03-31 05:40:53 -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
Tyler McGavran 889520b045
Relocated rodata for code_800431B0 (#293)
Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
2023-03-26 16:53:41 -06:00
Tyler McGavran bd82bf5f0c
Relocate rodata for some OS related function (#292)
Required moving a struct def to another file, and I renamed a
 struct to something nicer

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
2023-03-24 00:49:30 -06:00
Tyler McGavran 3b8e76054d
Move all ro/data for code_8001F980 out of data/* (#291)
Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
2023-03-21 22:27:54 -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 3a99685c2f
Clean up some more bin2c calls from the Makefile (#286)
* Remove some bin2c calls from the Makefile

* Found a way to make n64graphics use shared tluts

* Added an option that makes n64graphics operate in a mode where it
 takes an image and tlut (as pngs) and spits out the appropriate
 CI8 indices inc.c form

* Turns out all the TLUTs for Lakitu are kept in one place, far away
 from the textures that use them

* Names some textures and tluts

* Pretty helpful actually, helped identify where a few different
 objects types are initialized. Should be a little useful to
 whoever dives into the object stuff more deeply

* Minor cleanup in n64graphics

* Added some comments, gave more appropriate names to some
 variables.

* Leaving the new mode argument as `-Z` for now

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

* Textures compile using makefile rules

* Patched n64 graphics memory leak and ci output

* Added memset16safe to initialize ci palettes to magic numbers (transparent pixels).

---------

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
Co-authored-by: MegaMech <MegaMech@users.noreply.github.com>
2023-02-06 22:52:34 -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 ee64dad403
Make the course models in a more Makefiley way (#287)
* Make the course models in a more Makefiley way

Required renaming one of the course directories to match the name
 used elsewhere in the project

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
2023-01-24 21:53:43 -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
i-do-cpp 94b3a6f07b
Match func_8006ED94 (#283)
* Match func_8006ED94
2022-12-28 10:26:22 -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 e1976267f3
Add a utility that aids in generating m2c output (#279)
* Add a utility to help generate m2c output

* Make a small change to an OS file which fixes a small issue when using m2ctx

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
2022-12-09 19:03:30 -07:00
MegaMech 3172daa2ea
Matches in external and some namings in ceremony (#281)
* Matches in external and some namings in ceremony
2022-12-06 19:25:16 -07:00
Tyler McGavran 10ae9a7970
Complete matches in ceremony_and_credits (#280)
* Complete matches in ceremony_and_credits

* struct_D_802876D0 is the real CinematicCamera

* Replaced a bunch of Camera pointer args with
 CinematicCamera pointers instead. Only a couple functions use plain Camera pointers

* Moved some type definitions into the header file

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
2022-12-05 02:34:17 -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 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
coco875 d7c9a14908
Matches for audio/port_eu,external and fix lang problem (#275)
* some matches in audio in port_eu, heap, and external.

* update port eu

* Add export lang=c to makefile 

* near match for func_800CBB48

* Update src/audio/heap.c
2022-11-20 18:23:49 -07:00
Tyler McGavran a4faefbc20
Matches for audio/external (#273)
A lot of these matches come from observing the external audio
 stuff in SM64 and realizing that a bunch a couple of the structs
 in MK64 are just expanded version of their SM64 counterpart.

Presumably all the expansions are for handling the doppler effect,
 although I can't say that with certainty

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
2022-11-15 23:32:09 -07:00
MegaMech 5f88765dd4
Matches for code_80281FA0.c (#272)
* Matches for code_80281FA0.c
2022-11-07 02:04:33 -07:00
VDavid003 6d03e5bf05
Fix matching under Arch again (#271)
Commit 5ca8e07a4d fixed the issue, then e9415164bb reverted the fix, so let's fix it again
2022-11-06 14:43:20 -07:00
VDavid003 12415a9e8e
Match load_course in memory.c (#269)
* Matched load_course in memory.c
2022-11-06 08:52:10 -07:00
Tyler McGavran e9415164bb
Lots and lots of audio code copied from SM64 (#270)
* Lots of audio decomp

* effects and playback are 100% matched

* Took some notes from the SM64 Makefile to get the right compiler
 options for a couple files

* Added the audio files to rename_symbol utility

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
2022-11-06 08:24:24 -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 cc4b5bfcd2
Some matches and m2c refreshing for code_80027D00 (#264)
Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
2022-10-09 18:08:15 -07: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 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
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
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
Maciek Baron 2fe6c6a2f9
Match a few small functions (#249)
* Match func_8000B820

* Match func_80011AB8

* Match a few small functions
2022-08-02 18:44:33 -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
MegaMech db95b4b9e8
8000FD0 decomp and various (#247)
* 80005FD0 decomp and various changes
2022-07-27 00:25:50 -07:00
Tyler McGavran fb010e4186
More miscellaneous matches (#246)
And more mips_to_c refreshes

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
2022-07-18 20:40:17 -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