104 Commits

Author SHA1 Message Date
coco875 7c44252daa Finish bss (#527)
* Finish importing bss
2024-01-02 14:53:51 -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 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 670a930f31 Rename code_8001F980 to render_player and code_800B45E0 to save (#507)
* Update and rename code_8001F980.c to render_player.c

* Rename code_8001F980.h to render_player.h

* rename import file to render_player

* Update and rename code_80004740.c to save.c

* Rename code_80004740.h to save.h
2023-12-24 15:52:09 -07:00
VDavid003 1294274142 Fix alignment issue when compiling under Arch (#490)
While at it, why not make alignments consistent, we have hex almost everywhere
2023-11-07 20:39:10 -07: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
Tyler McGavran 318bf3a6c2 Match audio/external.c BSS segment (#470)
* Match audio/external.c BSS segment

Also fix a misnamed function found in audio/heap, used in
 audio/load

* Match audio/seqplayer .data section

* Match func_800C76C0

That was the last function referencing some fake variables, so it
 should be possible to match audio/external's .data section as
 well

* Match audio/external's .data section

The only thing in src/audio left to be matched is audio/external's
 .text section.

There's probably some beautifying that could be done to data/sound_data,
 but that is a future problem

Signed-off-by: Taggerung <tyler.taggerung@email.com>
2023-10-19 12:31:33 -06:00
AloXado320 77241ead94 Revamp progress script, change file structure and remove unused asm (#459)
* Revamp progress script, change file structure and remove unused asm

* Add text when there's no GLOBAL_ASM remaining (100%)
2023-10-14 12:07:09 -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 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
MegaMech 81a9c346d4 Delete courses/cup folders and rename course related files (#432)
* Move course folders

* Rename model to vertices

* Rename packed to displaylists

* Rename displaylists to course_displaylists.inc.c

* rename vertices to course_vertices

* makefile cleanup

* Rename trophy_model to ceremony_data

* move ceremony_data.inc.c to ending folder
2023-09-20 17:17:24 -06:00
AloXado320 9f2330e259 Migrate some rodata files to C, for files in NEEDS_RODATA state (#427)
* Migrate some rodata files to C, for file on NEEDS_RODATA state

* clarify odd texture variable, split unused vertices

* Remove unused file
2023-09-20 11:24:43 -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
Tyler McGavran 8233fa2aab More audio matches (#420)
Signed-off-by: Taggerung <tyler.taggerung@email.com>
2023-09-15 21:50:27 -06:00
Tyler McGavran 86c86c8bcd Lots of matches in the audio code (#417)
* Lots of audio matches

Fully matched heap.c, lots of load.c and some stuff in seqplayer.c

Matched heap.c's BSS segement and moved some BSS stuff out of
 load.c into data.c, since that where it appears to belong
 according to SM64.

Signed-off-by: Taggerung <tyler.taggerung@email.com>
2023-09-13 22:36:27 -06:00
MegaMech 4ee09e005f Import bss for audio and elsewhere (#416) 2023-09-12 19:43:54 -06:00
MegaMech 70207db13b Various cleanup (#410) 2023-09-09 18:01:01 -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
MegaMech 19a056591a Match func in player_controller.c (#394)
* Match func

* Rename to player_controller.c
2023-08-31 21:55:01 -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 6e3f6aee63 Matched some funcs (#378)
* Matched code
2023-08-22 19:12:51 -06:00
Tyler McGavran 2b0d20a84f Migrate audio/port_eu data (#370)
* All work done in audio

* Migrate audio/port_eu data

* Refereshed m2c

* Got the bss segment matching too

Signed-off-by: Taggerung <tyler.taggerung@email.com>
2023-08-15 13:40:01 -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
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
MegaMech de5c688e42 Add crash screen enhancement (#360)
* Add crash screen enhancement
2023-08-09 18:51:37 -06:00
Tyler McGavran a240af0693 Run iconv as part of build (#354)
* Run iconv as part of build

That way files that need to be in EUC-JP encoding can still be
 worked on in UTF-8

Signed-off-by: Taggerung <tyler.taggerung@email.com>
2023-08-08 11:54:57 -06:00
Tyler McGavran e7632b3227 Some mathes and some non-matchings in code_80057C60 (#352)
* Some matches and some non-matchings in code_80057C60

* Mirgrate code_80057C60 rw data


Signed-off-by: Taggerung <tyler.taggerung@email.com>
2023-08-06 11:07:09 -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
Tyler McGavran 2e5b2737f3 Rename some data files to indicate teh code file they belong to (#343)
Signed-off-by: Taggerung <tyler.taggerung@email.com>
2023-07-17 22:41:50 -04:00
Tyler McGavran 890aaee162 Move plan data for code_8008C1D0 into asm files (#340)
Had to create a new file in order to get stuff matching right,
 even though making a separate file for just 3 functions is
 incredibly silly.

Signed-off-by: Taggerung <tyler.taggerung@email.com>
2023-07-11 12:54:39 -06:00
Tyler McGavran 04b9d5b4b8 Move some data into kart_dma.c (#338)
* Move texture data into kart_dma.c
Signed-off-by: Taggerung <tyler.taggerung@email.com>
2023-07-11 12:42:33 -06:00
Tyler McGavran cf33e2ea5f Migrate rodata for code_80005FD0 into asm files (#332)
Signed-off-by: Taggerung <tyler.taggerung@email.com>
2023-07-11 11:58:02 -06:00
Tyler McGavran 1b67ee01df New asset extraction utility (#306)
* Add new asset extraction tool. Changes motivated by the quirks of how kart animation frames are stored
 in the ROM.

    each frame has a palette that is actually
    composed of 2 other, incomplete palettes. As such, the existent
    extract.py isn't really able to handle them.

* Move a variety of assets to new extract tool
---------

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
2023-06-17 15:13:06 -06:00
MegaMech e371f88b2d UI and print debug matches (#310)
* various decomp
2023-05-22 13:05:54 -06:00
MegaMech fb7c3bce61 Various matches (#304) 2023-04-10 01:40:47 -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 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
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
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
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