Commit Graph

693 Commits

Author SHA1 Message Date
Tharo a4056abd3c
Split RSP files (#1806) 2025-04-11 21:17:26 -07:00
Derek Hensley 9ca02c79b5
Misc fixes (#1800)
* disasm_fix

* dtor

* Fault_LogThreadContext

* rearrange microcode

* sGfxPrintFont size of 0x800

* Move (null) to stackcheck

* vimgr bss

* sfx

* Remove code_801D1E80

* z_en_hy_code

* Fix assembler messages with endlabels and dlabels

* xlitob data

* Move skin unused bss pad to rumble
2025-03-24 10:52:10 -03:00
Ozero4 9213dc7a5e
func_80183070 to Sys_Freeze (#1686) 2025-03-04 19:06:23 -08:00
Derek Hensley 1241a8ca5c
Move spec to spec folder (#1790) 2025-02-02 13:37:38 -08:00
Tharo 84a89c8f46
GCC Compiler Support (#1791)
* GCC Compiler Support

* Update mkldscript
2025-02-02 13:15:55 -08:00
Derek Hensley c767f49455
Extract Incbins (#1776)
* extract incbins infastructure

* rspboot incbin

* rsptext incbin

* rspdata incbin

* aspMainStack incbin

* ipl3 incbin
2025-01-27 13:15:16 -03:00
Derek Hensley cb6a10208c
Add D_801D1E80 to data in audio lib (#1775)
* Add D_801D1E80 to data in audio lib

* comment

* Update src/audio/lib/data.c

Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com>

---------

Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com>
2024-12-24 14:15:16 +11:00
Tharo 06b06ab507
Check in makerom files (#1758)
* Check in makerom files

* Fix disasm for asm files in src
2024-12-22 15:48:13 -08:00
Tharo 5a9c2871ed
Move gAudioTatumInit and gAudioHeapInitSizes to their own file, using data-with-rodata instead of const qualifiers (#1771)
* Do not qualify gAudioHeapInitSizes with const under AVOID_UB

* Move gAudioTatumInit and gAudioHeapInitSizes to their own file, move data to rodata

* Space
2024-12-21 12:41:28 +11:00
Tharo 047c505b96
Remove gSystemHeap and the system_heap spec segment, use _buffersSegmentEnd to represent the start of the system heap (#1767) 2024-12-19 16:38:44 +11:00
Tom Overton fa240048cf
Boss07 (Majora) OK and documented [mm-n64-us.z64 OK] (#1753)
* more matches

* more functions

* merge, I hope

* wrath done-ish

* 5 nonmatchings

* more matchings

* more improvements

* more stuff

* stuff

* docs part 1 / infinity

* more docs

* .

* more adjustments

* linked assets

* Document object_boss07 and match Boss07_Incarnation_Intro (thanks Synray!)

* more stuff

* play part 2

* lol merge

* update

* unk types

* SWEET GOOGLY MOOGLY IT MATCHES

* cam fixes

* adjust damage stuff

* if?

* stuff

* signs

* macro stuff. clean up later

* names

* Some small cleanup

* cleanup and docs

* more cleanup

* Wrath shadow docs

* Use `EVENTINF_INTRO_CS_WATCHED_MAJORA` after merging

* Update functions.txt

* Types cleanup

* Some low hanging fruit

* Undefined_syms.txt

* More static -> battle handler

* Lots of naming cleanup

* Remove z_boss_07_dmgtbl.inc
The reasoning behind removing this file is simple; it wasn't all that long, so extracting it out to an included file didn't really add much, and it made refactoring and/or things much harder, since you needed to check in multiple places to change things.

* Get most of the limb stuff named (and actually update the spec)

* Some minor cleanup

* Updating the repo with what we talked about in discord

* Some syncing with Odolwa and other misc name stuff

* Some Odolwa/Bio Baba sync

* Another bit of Odolwa/Bio Baba sync

* Name a lot of incarnation limb variables

* Finalize the incarnation intro variable stuff

* Fix a goof

* `incarnationWrathTransition` variables

* `generalCollider` and always use "tentacle"

* Completely remove "shot," always use "projectile"

* Clean up `Boss07_Mask_Draw`

* Name `maskShakeTimer`

* Give better names to a few more things

* Some beam-related struct vars

* undefined_syms

* More beam names

* More beam stuff

* Beam, pt 100000

* Some intro struct members

* Some timers

* More non-beam stuff, back to beam

* Done with beam finally

* All but one of the subcam variables, some other stuff

* Some variable names and cleanup

* More cleanup

* jumpSfxTimer -> landSfxTimer

* actionState -> subAction and a little bit of syncing with Odolwa

* A couple more variables sync

* Buncha variables

* Lots of non-whip variables

* Commit what I have before starting on some of the grab stuff

* All but one struct var done

* Lots of header cleanup

* Finish the header file

* Fix build after merging main

* Damage effect enums

* Update damage effect enums for Incarnation and Wrath

* Update damage effect enums for Mask and Remains

* First pass at top damage effects

* Do a few sub action enums so I have something to show

* Fix the damage effect enums, clean up a lot of subaction enums

* All remaining sub action enums, cleanup damage effect enums, other misc cleanup

* Finish enums

* Finish data

* Push up what I have

* Consistency

* scroll -> texScroll

* low hanging fruit

* PR + small fix

* Happy with >20% of functions

* Happy with >40% of functions

* Happy with >60% of functions

* Happy with >75% of functions

* Happy with >90% of functions

* Happy with >95% of functions

* Happy with `Boss07_Wrath_DeathCutscene`

* Happy with `Boss07_Mask_FireBeam`

* Happy with `Boss07_Wrath_CheckWhipCollisions`

* Happy with everything but `Boss07_Mask_Draw`

* Happy with all functions I think?

* Clean up forward declarations

* Write a half-decent file header

* Fix after merging

* Fix some minor stuff here and there

* Minor fix in the file header because I forgot I renamed this

* Respond to engineer's review

* Respond to Anghelo's review

* Replace as many actor lookups with for-loops as I can in Odolwa/Majora

* Change the comment about the hookshot from a `@note` to a `@bug`

* `drag` -> `deceleration`

* Extra scopes for the matrix stuff in `Boss07_Mask_DrawBeam`

* Use decimal numbers in the various `FillShadowTex` functions

---------

Co-authored-by: petrie911 <pmontag@DESKTOP-LG8A167.localdomain>
Co-authored-by: petrie911 <pmontag@Monday.localdomain>
Co-authored-by: petrie911 <69443847+petrie911@users.noreply.github.com>
Co-authored-by: petrie911 <pmontag@PHYS-S129.iowa.uiowa.edu>
Co-authored-by: petrie911 <petrie911@users.noreply.github.com>
Co-authored-by: Derek Hensley <hensley.derek58@gmail.com>
Co-authored-by: engineer124 <engineer124engineer124@gmail.com>
2024-12-10 18:06:55 -08:00
Derek Hensley a8dbb5ac27
Small Misc Clean (#1751)
* Fix z64item comment

* titleCtxt -> titleCtx

* combine gfx buffers bss into 1 file
2024-12-01 07:01:42 -03:00
Dragorn421 fcc5cf828d
libu64 (#1705)
* libu64

* libu64 -O2

* Add libu64.md
2024-11-07 17:27:19 -08:00
Derek Hensley f946162a89
Extract assets to extracted (#1708) 2024-10-15 22:41:48 +11:00
Derek Hensley 5c6310306f
Remove include_data_with_rodata spec hack by incremental link of z_game_over (#1691) 2024-09-19 18:22:39 -07:00
Tharo d14e1ac1df
[Audio 8/?] Check-in handwritten sequences, build sequences, automate various sfx arrays (#1679)
* [Audio 8/?] Check-in handwritten sequences, build sequences, automate various sfx arrays

* Fix whitespace in aseq.h

* Suggested changes, adjust some MML syntax and add more instruction descriptions

* Special case progress script (#9)

* Hack progress script

* Small adjustment to text fileSectionFixer

* Add the dir of the input .seq file to the list of includes to sequence assembling so that assembler-level includes like .include or .incbin work intuitively

* Remove old comment that was missed before

* aseq.h tweaks

* Review suggestions, aseq.h adjustments

---------

Co-authored-by: Derek Hensley <hensley.derek58@gmail.com>
2024-09-15 15:26:32 -07:00
Derek Hensley e982c44721
Import data + bss (#1676)
* extract gfxprint font data as blobs

* Remove font from fault_drawer out name

* audio heap bss

* audio sequence bss

* audio session config bss

* Move code_801D1E80 down in the spec

* Gfxprint don't just include generated c file
2024-09-07 15:03:00 -07:00
Tharo 7210cfac2f
[Audio 6/?] Build Soundfonts and the Soundfont Table (#1675)
* [Audio 6/?] Build Soundfonts and the Soundfont Table

* Fix bss

* Maybe fix warnings

* Improve lots of error messages

* Suggested changes from OoT PR

* Suggested changes

* Make soundfont_table.h generation depend on the samplebank xmls since they are read, report from which soundfont the invalid pointer indirect warning originates from
2024-08-27 18:09:48 -07:00
Tharo 98d9571f51
[Audio 5/?] Build the Samplebank Table (#1674)
* [Audio 5/?] Build the Samplebank Table

* OoT suggested changes

* Fix format specifier

* Moved linker_scripts files used in final linker to linker_scripts/final

* Populate OTHER_DIRS with linker_scripts subdirs

* Unhide the partial link command
2024-08-17 17:02:57 -04:00
Tharo 7209abbec2
[Audio 4/?] Build Samplebanks, match Audiotable (#1672)
* [Audio 4/?] Build Samplebanks, match Audiotable

* Add missing scope in MARK chunk handling

* Add comment to generate asm file when buffer bug data is emitted, remove duplicate CC4 definition

* Adjust comment

* SBCFLAGS

* Remove unnecessary comments on notes_lut

* Split build directories creation command into several to avoid it becoming too long

* objcopy -j -> --only-section

* Try fix mkdir from clean

* Try fix 2
2024-08-14 17:55:45 -07:00
Derek Hensley 1e4a56fbdf
EnBsb (Captain Keeta) OK (#1667)
* Match EnBsb

* A couple nicer matches

* clean up

* PR review

* hitmark enum

* PR Review 2

---------

Co-authored-by: Synray <31429825+Synray@users.noreply.github.com>
2024-07-31 18:35:54 -07:00
engineer124 d0cf4fbcea
z_en_zl4 OK (#1663)
* match zl4

* cleanup
2024-07-28 12:48:10 -04:00
Tharo 1685597d9a
ovl_En_Knight OK (#1659)
* En_Knight matching

* Cleanup

* Fix

* Documentation Pass

* Suggested changes. Use IGOS_LIMB_* whenever it's guaranteed that the skeleton is gIgosSkel, still using KNIGHT_LIMB_* whenever it's ambiguous

* Remove related undefined syms

* More suggested changes

* BODYPART_NONE and bodypart enum

* Suggested changes

* Braces

Co-authored-by: Tom Overton <tom-overton@users.noreply.github.com>

* csCamId

Co-authored-by: Tom Overton <tom-overton@users.noreply.github.com>

* Various suggestions

* EnKnight_UpdateLimbCollider -> EnKnight_SetColliderSphere

* Yase/Debu -> Thin/Wide

* csCam -> subCam

* Format

* Fix

* animTranslation -> animMovement, dmgEffect -> drawDmgEff

* More brackets

Co-authored-by: Tom Overton <tom-overton@users.noreply.github.com>

---------

Co-authored-by: Tom Overton <tom-overton@users.noreply.github.com>
2024-07-24 17:05:51 -07:00
TrulyNaN 45a891b751
ovl_bg_dblue_elevator OK and documented (#1654)
* Creating branch for ovl_bg_dblue_elevator's PR.

* OK

* Screwing with my Debian install. Safety commit.

* Applied first pass of review comments to PR and added authors.

Co-authored-by: Derek-Hensley <hensley.derek58@gmail.com>
Co-authored-by: fig02 <fig02srl@gmail.com>
Co-authored-by: Kelebek1 <eeeedddccc@hotmail.co.uk>
Co-authored-by: Isghj5 <isghj5@gmail.com>
Co-authored-by: petrie911 <pmontag@PHYS-S129.iowa.uiowa.edu>
Co-authored-by: AngheloAlf <angheloalf95@gmail.com>

* Found some review comments I missed and applied the suggestions.

* Added enum for water flow and renamed waterSurfaceYPos to waterSurfacePosY

* Forgot to add last contribution.

Co-authored-by: Tom-Overton <tom.overton@outlook.com>

---------

Co-authored-by: Derek-Hensley <hensley.derek58@gmail.com>
Co-authored-by: fig02 <fig02srl@gmail.com>
Co-authored-by: Kelebek1 <eeeedddccc@hotmail.co.uk>
Co-authored-by: Isghj5 <isghj5@gmail.com>
Co-authored-by: petrie911 <pmontag@PHYS-S129.iowa.uiowa.edu>
Co-authored-by: AngheloAlf <angheloalf95@gmail.com>
Co-authored-by: Tom-Overton <tom.overton@outlook.com>
2024-07-04 14:23:28 -04:00
Tom Overton bb221b4a0f
EnOkuta (Octorok and its projectiles) OK and documented (#1641)
* Match EnOkuta

* Match data

* Use the generated reloc

* Delete extern stuff and format

* Extract the DL

* Fix lots of stuff

* Copy a lot of names over from EnSyatekiOkuta

* SFX enums

* Lots more stuff

* Constants and other stuff

* Some more stuff I missed

* Name more functions using OoT/SyatekiOkuta as reference

* An easy function I missed

* Some floats

* Getter macros

* Types enum

* Name the cylinder inits a little clearer

* Create bodyparts enum and name all data

* Name all functions

* Name `timer` struct var and all temps

* Name the `jumpHeight` struct var

* Create damage effect enum

* Name the extracted DL

* Name `numConsecutiveProjectiles`

* Finish docs

* Document XML

* Clarify that this blue Octorok isn't the shooting gallery one

* Respond to reviews

* Stuff

---------

Co-authored-by: Synray <31429825+Synray@users.noreply.github.com>
Co-authored-by: Derek Hensley <hensley.derek58@gmail.com>
2024-06-23 18:09:22 -07:00
Tharo 384115d2a0
ovl_En_Death and ovl_En_Minideath (#1645)
* En_Death new build system edition

* Fix merge

* Matched

* Fix merge

* Some names

* Suggested changes

* Further suggested changes

* Add value comments to MinideathAction
2024-06-20 18:36:11 -07:00
mzxrules 2c680efa91
z_map decompiled (#1032)
* First batch of functions

* more ok

* z_map_data OK

* More OKs, MinimapList ZAPD breaking change

* func_80103A58 improvements, more OK

* func_80106D5C and func_801091F0 decomped

* func_801031D0 decomped and some fixes

* house cleaning, more OKs more decomp

* Even more OKs

* func_80105C40 almost OK, more OKs

* func_80108AF8 OK and more

* All functions attempted

* func_8010534C OK

* Start documentation, rename DoorCtx

* More OKs, split map_data.data, more doc

* incremental clean-up, more function names

* more function names

* func_801068FC OK

* old uncommitted changes

* minor tweaks

* implement easy fixes

* more fixes

* z_map_disp OK, implement more suggestions

* delete utility program

* migrate data

* TransiActor ->TransitionActor

* Major documentation pass

* first pass of changes

* warning fix attempt, revert ZFile.cpp

* Fix FAKE match

* Easy fixes

* implement gDPLoadTextureBlock_Runtime

* z_demo bss patch

* Extract white square texture

* Implement more suggestions

* rework MapIndex/DungeonIndex

* revert dungeonSceneIndex -> mapIndex in some spots, implement suggestions

* more suggestions

* minor nits

* fix #include
2024-06-20 18:21:37 -07:00
engineer124 b55f8ffe6e
`sys_math3d.c` Decompiled and Mostly Documented (#1450)
* Use matched sys_math3d functions by Tharo

Co-authored-by: Tharo <17233964+Thar0@users.noreply.github.com>

* kinda match some unattempted functions

* move sys_math3d function declarations to z64math.h

* Rename some simple functions

* Take matched Math3D_LineVsLineClosestTwoPoints from OoT

* minor fixes to make stuff actually equivalent

* func_8017FB1C

* format

* minor cleanup

* Math3D_PointOnDirectedLine

* func_8017FB1C documentation

Co-authored-by: EllipticEllipsis <73679967+EllipticEllipsis@users.noreply.github.com>

* Remove actorfixer

* fix merge

* Apply renames

* more cleanup

* bss cleanup

* match Math3D_CylVsLineSeg

* WIP

* OK

* small cleanup

* Remove macros.h from sys_math3d

* Small cleanup

* Some more small clean up

* cleanup and docs

* cleanup

* PR Review

* cleanup

* fix merge

* fix merge

* merge main

* fix bss

* bss

* fix

* PR Review

* bss fix

* Merge main

* Fix bss

* Fix merge

* Add zero vecs to sys_math3d

* Format

* namefixer run

---------

Co-authored-by: angie <angheloalf95@gmail.com>
Co-authored-by: Tharo <17233964+Thar0@users.noreply.github.com>
Co-authored-by: EllipticEllipsis <73679967+EllipticEllipsis@users.noreply.github.com>
Co-authored-by: Derek Hensley <hensley.derek58@gmail.com>
2024-06-14 22:39:31 -07:00
Derek Hensley 0b375cadb0
Msgevent OK (#1637)
* Decompiled, some commands still unnamed

* Use full weekevent reg names

* Fix func_8094E69C

* Fix Player_GetMask

* Eventinf, mask worn, and item action argument formatting

* decimal rupees

* Times (day, hours, minutes) as decimal

* msgEventScriptPos

* Callbacks

* Name final commands

* Enum

* Arrays

* functions

* Small cleanups

* Clean up actors

* Remove event from some variable names to make them shorter

* Some more function renames

* newline

* Missed a few unks in commands

* Update functions.txt

* PlayerMask

* MSGMODE_PAUSED

* Script time macros

* EnSob1_GetWelcome default

* Whole bunch of renames

* Format

* Add CMD to commands

* Update code_functions

* structs for size

* z64scripts.h

* MsgEventCallback -> MsgScriptCallback

* format

* MsgEvent_RunScript stop

* Remove cmd handler comment

* cmd -> script in MsgEvent_RunScript

---------

Co-authored-by: Thar0 <17233964+Thar0@users.noreply.github.com>
2024-06-14 21:35:22 -07:00
Tharo 44057c087a
ovl_En_Wdhand (#1629)
* 2 non-matching

* Matching

Co-authored-by: Derek Hensley <hensley.derek58@gmail.com>

* Cleanup + docs

* Suggested changes

* Format

* Update EnWdhand_GetInitVelocity

---------

Co-authored-by: Derek Hensley <hensley.derek58@gmail.com>
2024-05-19 10:18:34 -07:00
Anghelo Carvajal a04f1b8e05
Change tooling for better elf correctness (#1632)
* Add addresses for makerom and boot segments

* Mark entrypoint as the entry of the elf

* Add extra labels to macro.inc

* Use dlabel, jlabel and endlabel in disassembly

* Make jlabel global

* git subrepo pull tools/asm-processor

subrepo:
  subdir:   "tools/asm-processor"
  merged:   "92b9ec72f"
upstream:
  origin:   "git@github.com:simonlindholm/asm-processor.git"
  branch:   "main"
  commit:   "92b9ec72f"
git-subrepo:
  version:  "0.4.3"
  origin:   "https://github.com/ingydotnet/git-subrepo.git"
  commit:   "2f68596"

* Use `dlabel`s for non-functions in .text

* Add linker asserts

* Move framebuffer_lo to before the makerom segment to avoid `dot moved backwards` warnings

* fix

* Improve assert message

* fix

* Third fix

* Fix four

* Move undefined_syms to linker_script folder

* Make second linker script file to avoid abusing undefined_syms

* Update Makefile

Co-authored-by: Derek Hensley <hensley.derek58@gmail.com>

* Rename to extra.ld

* Use entrypoint symbol on ROM header

---------

Co-authored-by: Derek Hensley <hensley.derek58@gmail.com>
2024-05-17 06:41:23 -07:00
Synray e6a69dfb2b
Danpei movebg (#1429)
* Bg_Danpei_Movebg OK

* Cleanup

* PR comments

* Couple small things

* Address the nit

* Flags

---------

Co-authored-by: Derek Hensley <hensley.derek58@gmail.com>
2024-05-16 08:29:14 -04:00
Tom Overton 7c93d5e125
EnInvadepoh (Aliens, UFO, Invasion Handler, etc.) OK and documented (#1614)
* deimplementation complete

* newlines

* match

* data import

* back port cleanup changes

* stuff

* naming and such

* all funcs provisionally named

* more stuff

* merge

* Fix merge issues

* begin cleanup

* Use constants for all face animation data

* Use THIS like almost every actor does

* Change "Light Ball" to "UFO"

* Rename the alien types

* EnInvadePoh -> EnInvadepoh

* Rename the types

* Rename some Twinmold stuff

* ConfusedRomani -> SilentRomani

* Fix stack size issues with EnInvadepoh_Cremia_Init

* Move a struct out of the header to where it belongs

* Some header cleanup and struct names

* Name remaining struct vars

* Some more struct var renames

* Finish reviewing the struct var names

* Rename most of the interactInfo stuff

* Consistency

* Remove unused union

* Define EN_INVADEPOH_LIMB_MAX like EndingHero6 does

* Fix header

* Update functions.txt and variables.txt

* Create macros for accessing spawn time and kill count

* Some defines

* Some minor comments and cleanup

* Rename some functions

* Comments for those three functions

* Draw function cleanups

* Some damaged and dead cleanup

* Death scale stuff

* Good chunk of alien functions

* Invasion state naming

* Weekeventreg naming

* Happy with >20% of functions now

* A couple more functions

* More consistent names for BSS variables

* Some Init cleanup

* Happy with 30% of the functions now

* Finish the abductors

* Some random functions to get the functions I'm happy with >1/3rd

* Use `InitPath` for everything

* UFO functions done, >40% functions I'm happy with

* Do a lot of work on InvasionHandler action funcs

* Finish invasion handler code

* InitVars

* Rename the "closest alien" stuff to "closest alien threat"

* Finish most of the dog functions

* Lots of small stuff here and there

* Finish documenting the dog bug

* Document `EnInvadepoh_Dog_IsCloseToPath`

* `EnInvadepoh_Dog_MoveAlongPath` and other fixes

* Simple comment for `EnInvadepoh_Dog_Move`

* Various path functions, finish dog

* Consistently use "SetMatrixTranslation"

* Change all the angleToPlayer stuff to pitch/yaw

* Some RewardRomani functions

* Finish RewardRomani

* Finish Night1Romani and BarnRomani, >75% of functions done

* Some minor stuff

* Document bug

* Finish all of SilentRomani minus the Idle functions

* Finish EnInvadepoh_SilentRomani_Idle

* Finish Night3Cremia

* Finish Night3Romani

* Finish `EnInvadepoh_Ufo_SpawnSparkles`

* Finish some library functions

* Finish the alien pathing stuff

* Finish Romani path stuff

* Finish all non-InteractInfo stuff

* InteractInfo -> ModelInfo

* Create a `EnInvadepohFaceAnimBase` struct

* Name some of the animation data

* Switch to `Chained`/`ChainedDelay` and do some other cleanup

* Name all of the animation data

* Finish documenting and cleaning up the face animation functions

* Some comments at the top of the file

* Clean up forward declarations

* Clean some stuff up to the ModelInfo functions

* Fix build

* Move the animation data around so all the ModelInfo functions are adjacent

* Review

* Use `CLOCK_TIME_MINUTE` in `EnInvadepoh_Alien_PathComputeProgress`

* Respond to some of Anghelo's review

* Update comment on spawn time macros explaining what indices are usable

* Create a `DEATH_SCALE` define

* `WEEKEVENTREG_RECEIVED_MILK_BOTTLE` -> `WEEKEVENTREG_RECEIVED_ALIENS_BOTTLE`

* Forgot to do the bomber's notebook stuff too

* parallelogram -> rectangle

* Respond to engineer's review

* Slight spacing fix

---------

Co-authored-by: petrie911 <petrie911@users.noreply.github.com>
Co-authored-by: petrie911 <pmontag@Monday.localdomain>
Co-authored-by: angie <angheloalf95@gmail.com>
Co-authored-by: engineer124 <engineer124engineer124@gmail.com>
Co-authored-by: Derek Hensley <hensley.derek58@gmail.com>
2024-04-29 08:19:55 -07:00
Derek Hensley 471d86f530
Build Sync (#1600)
* Rename outputs

* Makefile target renames

* Add run target

* yeet z64compress

* venv

* baserom_uncompressed -> baserom-decompressed

* input rom name to baserom.z64

* Add BUILD_DIR makefile variable

* Move built roms to build dir

* Move baserom to baseroms folder

* Add version to map file name

* Makefile cleanup

* Rename ldscript to include version

* Multiversion build

* n64-us version name

* Remove venv as dependency of setup

* Readme wording

* extract_baserom.py suggestion

* Readd checksums

* Make .venv work with windows

* missed an endif

* Cleaner windows venv implementation

* Remove duplciate process

* Build process steps

* Move make_options back

* Fix schedule build directory

* Fix schedule includes

* Makefile NON_MATCHING check -> != 0

* OOT 1704 changes

* Small cleanups

* Missed 1 thing

* UNSET -> SYMS

* Update extract_baserom.py

* dmadata.py

* Small cleanup

* dmadata_start

* Format

* dmadata files

* Fix makefile comment

* Jenkins report fix

* extracted dir

* Python dependencies order in readme
2024-04-06 11:07:58 -07:00
petrie911 45ae63ccc5
Obj_Mine matched (#1225)
* Obj_Mine

* Obj_Mine

* Fixups

* Nonmatchings + cleanup

* Small cleanup

* externs

* structs complete

* wew

* some docs. still baffling

* documented physics stuff

* docs. physics be wack

* forgot some things

* format

* more cleanup

* merge and such

* format

* more format and cleanup

* asm stuff

* Update src/overlays/actors/ovl_Obj_Mine/z_obj_mine.c

Co-authored-by: Anghelo Carvajal <angheloalf95@gmail.com>

* now with decomp.me

* removed some extraneous macros I didn't end up using

* fixes and formats

* merge

* my god, it matches

* format

* removed macros

* more fixes

* format

* format

---------

Co-authored-by: Maide <eeeedddccc@hotmail.co.uk>
Co-authored-by: Derek Hensley <hensley.derek58@gmail.com>
Co-authored-by: petrie911 <petrie911@users.noreply.github.com>
Co-authored-by: petrie911 <pmontag@Monday.localdomain>
Co-authored-by: Anghelo Carvajal <angheloalf95@gmail.com>
2024-04-06 10:40:41 -07:00
Derek Hensley e3ce14c932
Misc Clean (#1602)
* thiefbird

* eff_ss_dead

* PreRender_AntiAliasFilterPixel tmp -> invCvg

* Skin_InitAnimatedLimb

* gfxalloc

* loadfragment

* loadfragment strings
2024-04-06 10:23:06 -07:00
Jeff Padgham 47d43f2fa1
Mayor Dotour (ovl_en_dt) OK and documented (#1607)
* EnDt deecomp first pass, two nonmatching

* Some cleanup, got the big boy matching

* Some light cleanup, documenting blinking behaviour

* Fixed last non-matching with some permuter silliness

* Decompilation complete

* Mayor documentation, first pass

* Updating some unknown vars in baisen

* Added an enum for mayor's cutscene state

* Formatting pass for mayor

* Cleaning up unk var in mayor meeting method

* Some cleanup and changes based on PR feedback

* Another cleanup and fix pass based on PR feedback

* Updated mayor event flags according to their usage

* All the parentheses

* Another round of PR feedback cleanup

* Having another crack at naming/cleanup based on PR feedback

* Renaming animation symbols

* Fixing broken references in other actors from anim rename

---------

Co-authored-by: GinNoOokami <noreply>
2024-04-06 10:05:04 -07:00
Derek Hensley a7fa8cc241
Clean2 (#1605)
* AnimationContext_Update

* TransitionTile_InitGraphics

* disasm files

* gPlayerFormItemRestrictions -> code_8012EC80

* fix

* Extract gCircleTex

* Const fixes

* gPlayerFormItemRestrictions suggestions

* Setup_InitRegs

* z_inventory
2024-02-20 14:04:23 +11:00
Tharo 7e716e120f
ovl_En_Kitan (#1535)
* Decompiled

* Documented

* Suggested changes, mention that on debug there is an assert(false) in EnKitan_GetQuestionMessageId

* Format

* Update
2024-02-07 10:21:54 -03:00
Tom Overton 5684c79312
BossHakugin (Goht) OK and documented, EnHakurock documented, other assorted documentation (#1599)
* Fix struct

* 20/79 OK

* BossHakugin_Draw OK

* func_80B0D69C OK

* func_80B0D2B8 OK

* func_80B0D750 OK

* Shadow function docs

* Fix some non-matchings

* Apparently this matches now? It didn't before

* OverrideLimbDraw OK

* BossHakugin_PostLimbDraw

* Animation Cleanup: En_G* (#1395)

* wip

* more cleanup

* more cleanup

* one more thing

* one more default case

* missed brackets

* PR Review

* add more matches and fill stuct

* 3 more Draw functions

* func_80B0E5A4

* Finshed the Draw functions

* Small cleanup

* Most of the death-handling code done

* more matching

* functions

* Goht collab (#9)

* Animation Cleanup: En_G* (#1395)

* wip

* more cleanup

* more cleanup

* one more thing

* one more default case

* missed brackets

* PR Review

* z_message_nes (1 NON_MATCHING) (#1394)

* Bring over progress

* Some docs

* scratch urls + format

* Fixes

* Match Message_DrawTextNES

* String macros

* color structs

* Document object_mk (#1389)

* Updated object_mk animation, limb, and skeleton names

* Updated object_mk texture and DList names

* Added comment to object_mk.xml

* Remove "ing" from Anim names

Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com>

* Update z_en_mk.c to not use "ing" in names

* Running formatter

---------

Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com>

* Player Docs: Initial framework for "Action Change Lists" (#1397)

* copy fig docs

* adjust wording

* another fix

* fix bool

* PR Suggestion

* Animation Cleanup: En_H* (#1399)

* begin H

* more cleanup

* Animation Cleanup: En_I* (#1400)

* cleanup I

* oops

* Start Player Item Docs (#1396)

* Copy Fig Docs

* small cleanup

* ItemChangeType comment

* bool

* item change comments

* PR Review

* rm comments

* Animation Cleanup: En_K* (#1402)

* cleanup k

* one more name

* Animation Cleanup: En_J* (#1401)

* cleanup J

* small fix

* functions

---------

Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com>
Co-authored-by: Derek Hensley <hensley.derek58@gmail.com>
Co-authored-by: Zach North <zrnorth@gmail.com>
Co-authored-by: petrie911 <pmontag@Monday.localdomain>

* hotfix

* all functions decomped

* all functions decomped

* Now with more data

* small fix

* another small fix

* ok last small fix I swear

* cleanup

* func_80B0A8C4 OK

* func_80B0D9CC OK

* Use generated reloc for Goht + remove Goht's undefined_syms

* Bodyparts + other clean up

* cleanup

* oops

* fix merge

* begin docs

* fix merge

* cutscene docs

* effects docs

* small docs

* Document colliders

* Odds and ends in the struct

* Name some functions

* Name two functions

* Some action functions and other odds and ends

* Name the lightning segments and electric ball functions correctly

* Names and other cleanup

* Start on hakurock + more cleanup

* Name all hakurock functions

* Name hakurock effects + create a GET_TYPE macro for it

* Finish documenting Hakurock

* Name one more function in BossHakugin

* Name a few more things

* Name a lot of struct vars

* Wall-related stuff

* Fix some fake matches

* Name a couple more struct vars

* Document some more of the struct

* Name the limb flag stuff

* Name the last unnamed struct vars

* Name the horn colliders correctly

* Some initial work on documenting data

* Some function documentation

* A couple of cleanups

* Finish documenting BossHakugin_UpdateBaseRot

* Name BossHakugin_SetLightningSegmentColliderVertices

* Document BossHakugin_AddLightningSegments

* Document BossHakugin_RunUpdateCommon and related functions

* Document BossHakugin_AddMalfunctionEffects

* Document BossHakugin_StepVectorToTarget

* Rename to BossHakugin_StepVector

* Finish documenting BossHakugin_AddMalfunctionEffects for now, might come back later though

* Document BossHakugin_UpdateSubCam

* Document BossHakugin_Thaw

* Document BossHakugin_ChargeUpAttack

* Some scattered docs

* Finish documenting the top "library" functions

* Document intro cutscene functions

* Document running and charging

* Document downed

* Document throwing

* Document remaining non-death action functions

* Document most of the death cutscene

* Get started on documenting crushing rocks

* Separate out the crushing rocks into their own struct

* Document the ExplosionLimbHideInfo

* Finish documenting BossHakugin_DeathCutsceneCrushedByRocks

* Almost done with rocks I think

* Port over Odolwa shadow documentation

* Finish documenting draw functions

* Finish documenting BossHakugin_Update

* Name variables in BossHakugin_UpdateElectricBalls

* Document BossHakugin_CheckForBodyColliderHit

* Finish documenting BossHakugin_UpdateDamage

* I've convinced myself these names are fine

* Almost finish documenting every update function

* Remove TODOs from the header

* Finish documenting the C file

* Delete duplicate define

* Finish variables.txt for Goht

* Undo change that desync'd z_eff_ss_fhg_flash.h from other effect headers

* Missed a THIS

* Some low-hanging review responses

* Add comment explaining something in BossHakugin_ShouldWait

* Match BossHakugin_SpawnLargeStalactiteWalls using a for-loop

* Create GOHT_ELECTRIC_BALL_COUNT_MAX constant

* vector -> norm and targetVector -> targetNorm

* Add TODO comments for dynamic shadow functions

---------

Co-authored-by: Derek Hensley <hensley.derek58@gmail.com>
Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com>
Co-authored-by: Parker B <20159000+jpburnett@users.noreply.github.com>
Co-authored-by: petrie911 <pmontag@Monday.localdomain>
Co-authored-by: petrie911 <69443847+petrie911@users.noreply.github.com>
Co-authored-by: Zach North <zrnorth@gmail.com>
Co-authored-by: engineer124 <engineer124engineer124@gmail.com>
2024-02-02 15:10:48 +11:00
Derek Hensley 6fb4a07325
General Cleanup 3 (#1543)
* voicestopread -> voicestopreaddata

* PadMgr_ThreadEntry

* PointLight_t

* OS_VI_UNK28

* print stuff

* Remove OS_PRIORITY_THREADTAIL

* sBoeDlists -> sBoeModelInfo

* Prerender_DrawBackground2D

* segments

* Revert "print stuff"

This reverts commit 1d833e2f0d.

* format

* Update src/overlays/actors/ovl_En_Mkk/z_en_mkk.c

Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com>

---------

Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com>
2024-01-29 10:51:59 -03:00
Derek Hensley 6a15ce9521
Extract Kanji + some adjacent docs (#1536)
* XML + docs

* PR

* newline

* newline pt2

* named textures in kanji.xml

* Kick Jenkins

---------

Co-authored-by: emilybrooks <emilybrooksemilybrooks@gmail.com>
2024-01-21 12:47:27 +11:00
Derek Hensley 665353f344
Irqmgr + scheduler Docs (#1527)
* irqmgr docs

* Sched_FlushTaskQueue

* scheduler docs
2024-01-20 20:47:00 -03:00
Derek Hensley fe6494187e
Text Extraction + some Message Docs (#1530)
* Some Decoder WIPs

* Improvements

* POC

* Fix bss

* another newline

* Staff OK

* Cleanup + fix progress script

* script cleanup

* Some docs

* makefile

* Extract text from extract_assets.py

* More docs

* Even more docs

* Other message assets

* Small cleanups

* Clean up decoders/encoders

* Message_SetupLoadItemIcon -> Message_DecodeHeader

* Some more docs

* Remove mkdmadata

* Fade Skippable

* More cmd docs

* 1 left

* Last notes

* HS_TIMER -> HS_TIME

* More general docs

* Format

* Note the charmap conversion for buttons in message_data_fmt_nes.h

* Remove trailing whitespace

* Small fixes

* PR
2024-01-19 21:16:57 -03:00
Derek Hensley 6412ddad50
General Cleanup (#1529)
* Cleanup

* vi define cleanup

* kdebugserver

* osmotor

* Remove sqrtf.c

* Move osFlash out of libultra

* PadUtils_Destroy

* BOOT_ADDRESS_ULTRA

* Fault

* Format

* viconfig.h

* More small cleanups

* gfx cleanup

* Format

* Forgot to save

* variables.h

* dListTable -> dListSides

* Fix header includes
2024-01-15 10:03:13 +11:00
Derek Hensley 663834cbc0
Skybox Docs (#1534)
* xml

* Docs

* 0s
2024-01-14 15:56:19 -03:00
louist103 b2c3cc6a11
ObjMure2 OK and documented (#1525)
* data

* OK

* small docs

* docs

* Reloc

* Format

* this could have been a constexpr

* fix bss

* the rest of the fixes

* format

* revert makefile and clangformat

* comments
2024-01-14 15:36:22 -03:00
Derek Hensley 1611c22212
Dmadata Migration (#1526)
* Matching dmatable

* Generate NON_MATCHING dmadata

* Clean up dmamgr

* Format

* Ignore tools/buildtools/mkdmadata

* Warnings

* Use SYMS flag instead of segment name

* PR + more notes

* PR cleanups
2024-01-14 13:04:53 -03:00
Tom Overton 54f7aa23b5
Add original asset names to all `object_p*` and `object_r*` files (#1519)
* Add original asset names to all `object_p*` and `object_r*` files

* Respond to review
2023-11-28 08:19:22 -03:00
Anghelo Carvajal 7649cd309a
Organize `libc` and `libm` files (#1499)
* memmove

* strcpy

* strcmp

* memset

* fmodf

* fix some missing includes

* Remove libc header dependencies on libultra

* fix

* review
2023-11-28 13:01:14 +11:00