Commit Graph

313 Commits

Author SHA1 Message Date
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
Anghelo Carvajal 666cb6ad4a
More header cleanup (#1604)
* low hanging fruits on variables.h

* z_actor functions

* Move RomFile to z64object.h

* Revert "z_actor functions"

This reverts commit aa99967d16.

* yeet

* z64actor_dlftbls.h

* Move object segment declarations to object_table.c

* Move Camera functions

* z64nmi_buff.h

* fix merge

* su_mtx.h, sys_cmpdma.h and sys_initial_check.h

* sys_ucode.h

* sys_flashrom.h

* Remove unnecessary includes

* z64kanfont.h

* flg_set.h

* z64DLF.h

* z64lifemeter.h

* z64path.h

* format

* ObjectOverlay

* bss

* Yeet ObjectOverlay

* review

* review

* format

* bss

* z64font.h
2024-04-25 18:16:47 -07:00
Anghelo Carvajal 76fadbd0e9
`ovl_En_Door` docs pass (#1603)
* DoorScheduleResult

* actionVar

* DOOR_DL_

* enums

* ENDOOR_TYPE_SCHEDULE and related stuff

* Name some functions and start figuring out stuff

* defines

* start documenting schedules

* Name Inn doors

* More door schedule naming

* ajar

* Name remaining schedule types

* parameters diagram and some cleanups

* Name renaiming types

* format

* rename some schedules

* Use more static_assert

* name anims

* yeet unrelated stuff

* requestOpen

* Yeet DoorScheduleResult

* whoops

* stuff i missed

* Update src/overlays/actors/ovl_En_Door/scheduleScripts.schl

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

* Update src/overlays/actors/ovl_En_Door/z_en_door.h

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

* Update src/overlays/actors/ovl_En_Door/z_en_door.h

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

* review

* Update src/overlays/actors/ovl_En_Pm/z_en_pm.c

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

* Update src/code/z_sub_s.c

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

* review

* FindScheduleDoor

---------

Co-authored-by: Derek Hensley <hensley.derek58@gmail.com>
2024-04-22 18:34:02 -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
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
Archez 9c56b0e57a
increase audio seq cmd list size (#1610) 2024-04-06 09:24:22 -07:00
Derek Hensley 250be53cde
Add Shift-JIS support for some voice and message files (#1500)
* z_message iconv

* voicecheckword iconv

* format

* TODO

* voice_external iconv

* Missed a few in message

* Use shiftjis_conv instead

* space comment in message_nes

* Use chars for cases

* Add ending single quote check as well

* table comments

* No look up table

* align makefile tools
2024-03-31 20:24:06 -07:00
engineer124 5bef89a6ff
Misc Cleanup 2 (#1521)
* begin cleanup

* more cleanup

* more cleanup

* more cleanup

* more cleanup

* more cleanup

* fake matches

* more cleanup

* more cleanup

* small thing

* PR Review

* PR Review
2024-03-23 08:04:07 -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
Anghelo Carvajal 5db52cfd39
A higher level language for schedule scripts (#1462)
* schedule script

* start something

* tokenize

* make a tree

* start to emit macros

* start to handle args

* handle branch targets

* cleanup a bit

* script to convert the current schedule scripts to the new language

* Add schedule compilation to Makefile

* Fix bug on compiler if the script doesn't have an extra empty line

* Allow to have `else`s without braces

* convert a lot of schedules

* door

* en_tk

* fix some checks being the wrong way around

* borkens

* door borken schedules

* kafei schedule

* postman schedule

* Implement `if_since_time_*` command

* Allow `if`s to not have an `else`

* Implement some debugging options

* fix another one from door

* D_808675D0

* door D_8086775C

* don't print else if there isn't one

* start supporting labels

* rewrite comment handling

* add branch support

* emit debugging information

* postman and one door

* the remaining scripts

* add tokens for the non _s/_l versions

* meh

* Add built schedules

* Remove _s/_l suffixes from almost every command

* TokenProperties

* Move macros and length into TokenProperties

* move short and long to TokenType

* rename member

* some cleanups

* fatalError

* Write various notes on the compiler

* more errors and comments

* debug flags

* Move the built schedules to the build folder

* manually cleanup control flow of many schedule scripts

* cleanup postman schedule

* start write up

* write more stuff

* write a little more

* Start writing about the commands

* 2 more commands

* more

* almost everything, except returns

* hopefully finish documenting the commands

* cleanup

* formal grammar

* Table of contents

* typo

* Rename schc.py

* remove todo

* Warn if a if_before_time/if_since_time is negated

* Add colors to warnings and errors

* delete rebuild schedules script

* version

* Apply suggestions from code review

Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>

* suggestions on md file

* compiler review

* invented is invented

* ScheduleScript typedef

* fix

* Convert Anju's schedule to the new format

* simplify anju's schedule

* forgot to remove `_s`/`_l`

* bss

* Rework schc to allow multiple scripts per file

* Migrate all the schedules to the new format

* update language specification

* Update docs/schedule_scripting_language.md

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

* Update docs/schedule_scripting_language.md

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

---------

Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com>
2024-02-01 09:50:32 -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 9c10ee1d28
Framebuffer filter docs (#1528)
* Framebuffer filter docs

* PR

* Format

* Leading 0s
2024-01-20 21:04:28 -03:00
Derek Hensley 665353f344
Irqmgr + scheduler Docs (#1527)
* irqmgr docs

* Sched_FlushTaskQueue

* scheduler docs
2024-01-20 20:47:00 -03:00
engineer124 732455fdef
Animation Cleanup: En_S* (#1517)
* cleanup

* more cleanup

* anim S cleanup

* fix another function

* missed one

* missed another small thing

* oops
2024-01-20 20:15:46 -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
engineer124 a44f19225b
Animation Cleanup: En_R* (#1516)
* begin R

* finish anim R

* cleanup

* small adj

* cleanup

* CS_STATE_IDLE

* CS_ID_NONE

* more cleanup

* sBssPad

* angles

* sneak in small fix

* small fix
2023-11-28 08:43:36 -03:00
Anghelo Carvajal 2fdcdd91b3
Split effect headers and a bit of cleanup (#1482)
* split

* bss

* z64eff_ss_dead.h

* clean eff_blure

* eff_shield_particle cleanup

* tire?mark

* and more cleanup

* format

* forgot to remove this

* review

* EffectBlureDrawMode enum

* review

* review

* bss
2023-11-27 12:24:46 -03:00
engineer124 55badb7162
Misc Cleanup (#1509)
* begin anim R

* sTexturesDesegmented

* more misc docs

* more misc cleanup

* small adjustments

* oh sneaky

* PR Review

* adj comment, reads better

* missed an enum

* this one actor reverses true/false

* bool

* CARNIVOROUS_LILY
2023-11-27 11:54:11 -03:00
engineer124 5284302c8f
`z_en_test7.c` Documentation Pass (#1497)
* copy over docs

* more docs

* some docs

* more docs

* small cleanup

* more small cleanup

* more small cleanup

* lerp time

* small reordering

* feather type

* general owl warp docs

* more cleanup

* rm redundant info

* PR Review

* PR Review
2023-11-27 21:21:52 +11:00
Anghelo Carvajal 6dd1600936
Organize `libc64` files (#1492)
* Move qrand to libc64

* use an union to avoid type punning

* __osMalloc

* math64.c

* fixed_point.h

* sleep

* aprintf.h

* sprintf

* malloc

* use original names on aprintf.c and malloc.c

* qrand cleanup pass

* use original names of sleep.c

* og names for sprintf

* more cleanup

* format

* fixes

* whoops

* use ARRAY_COUNT again

* comment

* Use `fu`

* forgot this one

* review

* fix

* sneak a tiny cleanup
2023-11-27 12:01:42 +11:00
Anghelo Carvajal 34492a4386
Move the system heap and the framebuffers to their own segments (#1488)
* make segments for the systemheap and the framebuffers

* define in the makefile

* undefined syms

* Make segments for the pre boot buffers too

* Update spec

Co-authored-by: Parker <20159000+jpburnett@users.noreply.github.com>

* review

* Update spec

Co-authored-by: Parker <20159000+jpburnett@users.noreply.github.com>

* Update Makefile

Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>

* comments

* comment

* move comment about the hardcoded address to buffers.h

* rewrite SYSTEM_HEAP_END_ADDR in terms of other symbols

* Use `ALIGNED` on all the buffers

* Rename SYSTEM_HEAP_END_ADDR to FRAMEBUFFERS_START_ADDR

* Put ALIGNED at the right like the rest of the codebase

* merge

* gLoBuffer

* gHiBuffer

* Add a static assert to ensure the address of gHiBuffer haven't shifted without the user noticing

* smol include cleanup

---------

Co-authored-by: Parker <20159000+jpburnett@users.noreply.github.com>
Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
2023-11-26 09:47:21 -03:00
engineer124 b25e64d1bd
`z_en_test4.c` Documented (#1498)
* begin docs

* more docs

* skybox

* more cleanup

* more cleanup

* more cleanup

* Improve comment

* in-function static
2023-11-25 17:34:33 +11:00
Tom Overton 3a952a655d
Boss05 (Bio Deku Baba) OK and documented (#1510)
* Init, Destroy, Update, easy actions

* Just the hard 3 + 1 left

* One left

* OK

Co-authored-by: petrie911 <69443847+petrie911@users.noreply.github.com>

* Data/bss in, extract colheader

* Clean up externs

* Better match for func_809EECBC

* Sfx

* Lot of naming

* fix build

* Name skel stuff

* name limbdraws

* name colliders

* Document `object_boss05`

* Port some names from Odolwa

* Name bio baba types (and relatedly clean up EnPp)

* Better names for the LimbDraw functions + some related vars

* Name all functions

* Name a lot of struct vars

* Colliders and body parts

* Name all struct vars (might come back for a few of these though)

* Name most stack vars

* Fragment states, ice data

* Limb rot index

* Damage effects

* Enum for hit reactions

* Enums for movement state/attack state

* Finish up

* Missed this in EnPp

* Respond to reviews

* Fix comment

* Reverse order for postlimbdraw, etc. functions

* Remove blank line at the top

* Respond to review

* Make a "getter" macro for the force detach timer

* Respond to review

---------

Co-authored-by: Elliptic Ellipsis <elliptic.ellipsis@gmail.com>
Co-authored-by: petrie911 <69443847+petrie911@users.noreply.github.com>
Co-authored-by: angie <angheloalf95@gmail.com>
2023-11-23 09:37:16 -03:00
engineer124 c75d3b97d3
Animation Cleanup: En_O* (#1506)
* anim O cleanup

* fix bss

* PR Review
2023-11-23 15:41:25 +11:00
engineer124 5ef277df2d
Animation Cleanup: En_P* (#1507)
* anim P cleanup

* PR Review

* PR Review

* Postbox Idle
2023-11-22 16:10:55 +11:00
engineer124 faba61d9b8
Player doc: anim wrappers (#1434)
* player cs docs setup

* more docs

* more docs

* missed enums

* more docs, but broken. Need to fix sPlayerCsModeAnimFuncs

* fix

* rm enum

* more minor docs

* PR suggestion

* typo

* csActionFunc

* PR Suggestion

* player animation

* cleanup

* cleanup

* comments

* macro

* fix bss

* another comment

* better macro

* move macro

* fix bss

* adjust names

* simplify enum

* missed flags

* PR Review

* adjust comment

* missed defines
2023-11-18 23:55:04 +11:00
engineer124 dbb6410ba3
Animation Cleanup: En_M* (#1496)
* brackets

* more M cleanup

* small cleanup

* PR Review
2023-11-17 10:49:23 -03:00
engineer124 8ab62788b2
Audio Voice Decompiled (#1490)
* Add Tharo's documentation comments

* Voice progress

* Match osVoiceControlGain

* Match osVoiceStartReadData

* Cleanup

* Add docs from n64devkit

* WIP on osVoiceGetReadData

* Add comment

* Match voiceinit.c

* Remove CONT_ERR, already present in controller.h

* Really close to matching osVoiceStopReadData

* Progress on voicecheckword

* Match osVoiceSetWord

* Add error codes

* Matched __osVoiceContRead2... Somehow...

* Add small amount of docs

* __osVoiceContRead36 was basically identical from __osVoiceContRead2

* docs, but maybe a little carried away

* Match __osVoiceContWrite4, Write is very similar to Read

* Match __osVoiceContWrite20 from __osVoiceContWrite4, ez

* Some docs

* Improve osVoiceGetReadData

* Match osVoiceCheckWord

* currentSyllable -> currSyllable

* Match osVoiceMaskDictionary

* Match __osVoiceSetADConverter

* Meme matched osVoiceStopReadData

* small cleanup

* Missed macros

* osVoiceGetReadData Meme Match

* Small clean-up

* format

* Properly split voice files from code

* Use proper flags for voice files

* Add basic docs for func_801A5AF0

* Import Voice Data

* Update matching functions in code_801A51F0 from audio WIP

* Update matching functions in code_801A4EB0 from audio WIP

* Match func_801A5A1C

* Match func_801A5228

* Match func_801A54D0

* Doc padmgr functions used

* Match func_801A5680, it's near identical to func_801A54D0

* code_801A51F0 OK

* Match func_801A4EB8

* Match func_801A4FD8 (mips2c got it matching directly)

* code_801A4EB0 & all of voice, OK

* Import bss

* Better match for func_801A5A1C

* format

* Cleanup

* Clean up dictionary

* Introduce OSVoiceDictionary

* More voice docs

* Fix bss

* Import code_801A4EB0 data

* Introduce Word Id enum

* Dictionary: u8 -> u16

* Introduce bgms

* Fill in bgm enums

* Rename bgm to clearer names

* Fix spacing

* Fix "No_Music" define

* remove comment

* import rodata

* Improve bgm names, found another seqId function

* Another seqId function

* Another name change

* Woods of Mystery -> Sarias Song

* Fix match in osVoiceControlGain

* Fix bss reordering

* Fix bss file split

* add saria's song bgm to pierre

* Another bgm function found!

* Add bgm's to `gSaveContext.seqIndex`

* Fix BSS

* fix bss

* Fix bss

* cleanup

* more cleanup

* cow voice weekeventflag

* small cleanup

* some docs

* cleanup var

* global

* more docs

* PR Review

---------

Co-authored-by: Elliptic Ellipsis <elliptic.ellipsis@gmail.com>
Co-authored-by: Derek Hensley <hensley.derek58@gmail.com>
2023-11-17 12:29:42 +11:00
engineer124 61e2f12cf5
Document Overriding Player Input (#1489)
* Override Input

* cleanup

* cleanup

* PR Review

* PR Review, fix merge
2023-11-16 16:28:19 +11:00
Anghelo Carvajal 3d150f3e1d
Misc fixes 1 (#1491)
* Some low-hanging UB

* document bug on z_file_nameset_NES.c

* ALIGNED on audio data

* document bug on decode

* document bugs on Message_Decode

* Format

* More ALIGNED

* Put the ALIGNED macro at the right like the other uses in the repo

* review

* fix Message Decode

(cherry picked from commit abfbc7068816756f7ea3fa4a36ee0fe664c54c72)

Co-authored-by: engineer124 <engineer124engineer124@gmail.com>

* remove comments

* Update src/overlays/gamestates/ovl_file_choose/z_file_choose_NES.c

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

* format

---------

Co-authored-by: engineer124 <engineer124engineer124@gmail.com>
Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com>
2023-11-14 22:46:22 +11:00
Tom Overton 60ddc5891e
EnJso2 (Garo Master) OK and documented (#1485)
* EnJso2 (Garo Master) OK and documented

* Name all the override input things

* Respond to reviews
2023-11-13 09:41:51 -03:00
engineer124 8d33d36a9b
fix Misc Data (#1484) 2023-11-11 10:27:01 -03:00
Anghelo Carvajal 70637abca9
`ovl_En_An` OK and somewhat documented (#1457)
* Init and Destroy

* EnAn_Update

* EnAn_Draw

* the overrides

* func_80B54124

* two more

* more funcs

* SCHEDULE_CALC_TIME_ALT

* moar

* mor

* mas

* scriiiipts

* mor funcs

* almost everythihng

* migrate data

* func_80B57B48 NON_EQUIVALENT

* object symbols

* face

* fix merge

* slots

* schedule result enum

* func_80B57B48

* format

* name some easy to name struct members

* stateFlags

* object stuff

* accessories

* text ids

* more function naming

* more naming

* name some anims

* trying to make sense out of the schedule

* convert schedule to ifs

* clean it up

* schedule algorithm

* many placeholder names

* name most of the important schedule values

* Add notes to every reamining schedule enum value

* dec

* HandleSchedule

* more naming

* name flags

* name some of the ProcessSchedule functions

* and more naming

* a bit of asset naming

* some typos

* asset naming

* more asset naming

* printing code

* WEEKEVENTREG_COUPLES_MASK_CUTSCENE_*

* name the mouths

* idk

* whoops

* format

* Name the remaining weekeventregs from anju

* name more flags

* whoops

* a

* Incorporate SCHEDULE_TIME

* format

* fix merge

* cleanup

* remove debug stuff

* clean

* WEEKEVENTREG_TALKED_ANJU_IN_LAUNDRY_POOL

* whoops

* remove some gotos

* whoops

* Update src/overlays/actors/ovl_En_An/z_en_an.c

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

* Update src/overlays/actors/ovl_En_An/z_en_an.c

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

* Update src/overlays/actors/ovl_En_An/z_en_an.c

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

* Update src/overlays/actors/ovl_En_An/z_en_an.c

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

* Update src/overlays/actors/ovl_En_An/z_en_an.c

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

* Update src/overlays/actors/ovl_En_An/z_en_an.c

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

* review

* whoops

* review

* ENAN_GET_8000

* Update src/overlays/actors/ovl_En_An/z_en_an.c

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

* Update src/overlays/actors/ovl_En_An/z_en_an.c

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

* Update src/overlays/actors/ovl_En_An/z_en_an.c

Co-authored-by: Isghj <42048411+isghj5@users.noreply.github.com>

* review

* Update src/overlays/actors/ovl_En_An/z_en_an.c

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

* Update src/overlays/actors/ovl_En_An/z_en_an.c

Co-authored-by: Isghj <42048411+isghj5@users.noreply.github.com>

* fix merge

* Update src/overlays/actors/ovl_En_An/z_en_an.c

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

* Update src/overlays/actors/ovl_En_An/z_en_an.c

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

* Update src/overlays/actors/ovl_En_An/z_en_an.c

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

* review

* review

---------

Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com>
Co-authored-by: Derek Hensley <hensley.derek58@gmail.com>
Co-authored-by: Isghj <42048411+isghj5@users.noreply.github.com>
2023-11-10 09:52:32 +11:00
engineer124 83ceaf3717
z_kankyo Decompiled (3 non-matching) (#1451)
* z_Kankyo progress

* build OK

* progress

* more progress

* Kankyo WIP

* Add docs

* func_800FEAF4

* more docs

* func_800FEAF4

* improve Init

* Small cleanup

* kankyo data

* data cleanup

* Environment_DrawLensFlare

* Match Environment_UpdateSkybox

* Match Environment_DrawRainImpl

* Start on Environment_UpdateLights

* Match Environment_DrawSandstorm

* gRainDropDL

* Some light renamings

* Fix merge

* cleanup

* improve non-equivalents

* cleanup

* PR Review

* match Environment_UpdatePostmanEvents

* PR Review

* small improvement to Environment_UpdatePostmanEvents from anon

* more cleanup

* void

* bits

* fix comment

* improve Environment_UpdateLights

* Skybox Stars Docs

* PR Review

* fix merge

* macros

* Add comments

* PR Review

* gRandFloat

* bug

---------

Co-authored-by: Rozelette <Uberpanzermensch@gmail.com>
Co-authored-by: Derek Hensley <hensley.derek58@gmail.com>
2023-10-31 14:50:11 +11:00
engineer124 4d74fed7f0
Cutscene Camera OK (Some Docs) (#1411)
* import WIP

* Match func_80161E4C

* Match func_801620CC

* Match func_80162FF8

* Match func_801631DC

* Match func_80162FF8

* Import bss

* fix bss

* type docs

* more docs?

* waypoint?

* names

* cleanup

* PR Review

* comments

* PR Review

* waypoints as 1 word

* adjust names

* Path order

* remove pathing

* fix bss

---------

Co-authored-by: Derek Hensley <hensley.derek58@gmail.com>
2023-10-31 12:44:36 +11:00
Derek Hensley 23beee0717
ObjTakarayaWall OK (#1448)
* Takaraya Wall OK

* Docs

* Object docs

* Small cleanup

* undefined syms removal

* EnTakaraya_SpawnWalls docs

* PR

* Small cleanup

* Adjust comment

* PR

* More PR

* PR

* > 1

* ObjTakarayaWall_CanCarvePath
2023-10-29 09:33:07 -03:00
Tom Overton 2859cbbf5e
Boss01 (Odolwa) OK and documented (#1452)
* Boss01 (Odolwa) OK and documented

* Unify existing InitRand implementations

* Remove newlines after `// fallthrough`

* Respond to the rest of engineer's review

* Respond to most of anon's review

* Try to comment the shadow thing correctly

* Fix boss_01 after merge

* SEGMENTED_TO_VIRTUAL -> SEGMENTED_TO_K0

* Review

* Use DMG_SWORD_BEAM and update the comment in z64collision_check.h

* Respond to engineer's review
2023-10-29 08:29:43 +11:00
engineer124 6aaeb80f99
Decompile Remaining code_8019AF00.c Functions (1 non-matching) (#1442)
* remaining code_8019AF00 functions

* oops

* decimal duration

* PR Review
2023-10-26 10:09:08 -03:00
EllipticEllipsis 6bdb7c31ea
`code_80140E80` OK and preliminary documentation, Fbdemo_Wipe4 OK and documented (#1106)
* OK, start documentation

* More documentation

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

* Decompile func_80167F0C

* FbdemoWipe4 OK and documented

* Mark bug in Wipe4

* More docs

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

* Mark bug

* Few more notes

* Fix function in Play

* Format

* Review

* Name Play_PostWorldDraw

* functions.h...

* Revert func_80167F0C

* Review

* functions.h

* Review

* Update Wipe4

* Rename system

* Format

* Put skeleton back in the cupboard

* bss

* Fix build

* rename to z_visfbuf

* review

* format

* bss

* some bss cleanup

* review

* bss

* review

---------

Co-authored-by: Tharo <17233964+Thar0@users.noreply.github.com>
Co-authored-by: angie <angheloalf95@gmail.com>
2023-10-26 17:42:24 +11:00
engineer124 7176ed4299
Player Docs: csMode -> csAction (#1433)
* csAction

* more cleanup

* namefixer

* simpleReplace

* fix brackets

* sneak in 2 player typos

* fix merge
2023-10-26 17:12:04 +11:00
Anghelo Carvajal 1e19cfe869
Anju objects (#1444)
* bring over the objects from the other branch

* kafeis mask

* use symbols

* dman naming after assets

* stateFlags

* remaining stuff

* anim array bug

* Name everything in DmGm after DmAn

* WEEKEVENTREG_COUPLES_MASK_CUTSCENE_FINISHED

* undef

* format

* idk

* ing

* format

* name animations from an4, thanks emil!

* emptydl

* disbelief

* review

* format

* Update assets/xml/objects/object_mask_kerfay.xml

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

* review

---------

Co-authored-by: Derek Hensley <hensley.derek58@gmail.com>
2023-10-23 16:03:16 +11:00
Tom Overton a1bdc6c382
EnJso (Garo) OK and documented (#1440)
* EnJso (Garo) OK and documented

* Respond to review

* Replace some weird ifs with early returns

* Respond to Anghelo's review
2023-10-15 17:39:47 +11:00
engineer124 93713a1da0
Audio Sequences Decompiled & Documented (z_obj_sound OK, more code_8019AF00.c) (#1407)
* import audio docs

* cleanup

* SEQ_SCREEN_WEIGHTED_DIST

* PR

* PR
2023-10-13 17:39:10 -03:00
CodeOverFLow 2e344b8d15
Boyo (#1341)
* updated variables.txt

* continue investigation

* format to style

* matching more asm

* still more asm matching

* finally matching

* matching even more

* add rodata

* match more asm for Update

* matching 99.58% of ObjBoyo_Update

* matched ObjBoyo_Update

* some cleanup

* formatted

* review: remove ACTOR_COLLISION_HANDLING_CASES define

* review: fix main functions parameters

* review: fix collision function signatures

* review: fix ObjBoyo_FindCollidedActor parameters

* review: better formatting for InitVars

* review: fix ObjBoyoCollisionHandler typedef

* review: fix segmented AnimatedMaterial

* review: fix static ColliderCylinderInit

* review: disassembled initchain

* review: fix collision functions

* review: fix functions.txt

* review: fix variables.txt

* review: clean z_obj_boyo.h

* review: fix ObjBoyo_Destroy

* remove fake variable from ObjBoyo_Init

* review: rematch FindCollidedActor

* review: make asm match again

* review: update spec file

* review: fix spec file

* review: remove static D_***

* review: fix bad logic to find collided actor

* review: fix ObjBoyo size (local make is now OK)

* review: rename collision handlers array

* review: use constant

* review: clean PushPlayer function

* review: fix LSP bad renaming

* review: use GET_PLAYER macro

* review: remove ugly pointer deref

* review: replace += 1 with ++

* review: return NULL to emphasize it is a pointer

* review: check against NULL instead of 0

* review: remove unnecessary casts

* review: use constants

* review: remove unnecessary include

* review: rename variables + fix assembly matching

* review: change ++i to i++

* review: fix inline comments

* review: replace != with < in for loop
2023-10-13 18:59:49 +11:00
engineer124 e810559391
Object Cleanup (#1410)
* object cleanup

* namefixer

* objectPtr

* PR Review

* PR Review

* more uses of macro

* missed another one
2023-10-05 17:37:52 -03:00
Derek Hensley 03d1a794e1
z_kankyo pt 1 (#1377)
* z64environment.h

* remove todo

* Cleanup

* data + bss + 2 functions

* Bring over simple functions

* Remove lerp comment

* code functions csv

* Remove docs changes

* ZBufValToFixedPoint

* Remove leading 0's

* SEGMENT macros

* eventDayCount

* format

* z64bombers_notebook.h

* fix merge

* Comments

---------

Co-authored-by: angie <angheloalf95@gmail.com>
2023-10-05 16:08:08 +11:00
Derek Hensley 9e72c240d9
Z_message (2 NON_MATCHINGS) (#1398)
* matched func_8014D62C

* matched func_8014D304

* matched func_80149048

* matched func_80159438 & func_8014CDF0

* matched Message_GetState

* matched func_80152CAC

* matched func_80149454

* matched func_801491DC

* matched func_80150A84

* matched func_801496C8

* matched func_80149C18

* func_8014995C progress

* matched 8014995C

* matched func_80153EF0

* fix MessageContext lottery guess array size to match func_801496C8

* matched 80148D64

* matched func_8014AAD0

* progress func_8014CFDC

* matched func_8014CFDC

* progress func_801514B0

* progress#2 func_801514B0

* matched func_801514B0

* progress func_8014C70C

* Progress on few functions

* fix some variables & func name

* change unk11F00 type and usages

* func_8014C70C matched

* match func_8015268c

* fix building

* format

* engi message WIP

* enums, cleanup

* missed one

* oops

* even more enums

* another oops

* func_8015E7EC NON_MATCHING

* cleanup Message_DrawTextCredits

* MSGMODE cleanup

* import sFontWidths

* Import z_message_nes data

* Message_DrawTextNES draft

* fix types in message_nes

* Message_DrawTextNES NON_EQUIVALENT

* Message_DrawTextNES improvement

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

* Import bss

* fixes

* Data clean up

* Delete Message_Decode m2c output

* Readd Message_Update data

* import data

* func declaration

* cleanup

* Language enum

* fix naming, some flags

* Update functions and variables related to the bombers notebook event queue.

* Update renamed variables.txt

* format

* attempt Message_DecodeCredits

* begin Message_DecodeNES

* decode cleanup

* incremental improvements on Message_DecodeNES

* oops

* more progress

* first attempt at Message_Decode

* cleanup Message_Decode

* Message_Decode progress

* good progress on decode loops

* more progress

* good Message_Decode progress, thank anon

* decode creep

* big improvements, thanks anon/hatal

* small nes improvement

* cleanup

* match Message_DrawTextDefault, big progress on Message_DrawTextNES

* namefixer for save structs

* Some cleanup/fix non-equivalencies in decodes

* cleanup

* Small cleanup

* func_80150A84

* TextBoxType enum usage

* Format

* match Message_DecodeCredit by Maide, small improvement in Message_DrawTextNES

* comments

* some docs

* cleanup, improve matches

* Some improvement

Co-Authored-By: Santiago <github-santaclose-noreplay@NA.com>

* Fixes

* Missed

* Match Message_DrawTextNES

* Move functions to z64message.h

* string macros

* Small cleanups

* 1 more small thing

* decompme scratches

* Cleanup

* Item enum

* PR

* SEGMENT_ROM_START

* PR

* format

* ocarina cleanup

---------

Co-authored-by: andzura <andzura@andzura.fr>
Co-authored-by: Angie <angheloalf95@gmail.com>
Co-authored-by: engineer124 <engineer124engineer124@gmail.com>
Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com>
Co-authored-by: Zoey Zolotova <zoey.zolotova@gmail.com>
Co-authored-by: Santiago <github-santaclose-noreplay@NA.com>
2023-10-04 08:51:45 +11:00
Anghelo Carvajal f08a69a2cb
`ovl_Bg_Dy_Yoseizo` and related docs (#1390)
* Add ido setting to permuter

* OK

* Data imported & named, change spec

* Some easy naming

* Cleanup

* More object stuff and enums

* Document EnDyExtra

* Document DemoGetitem

* Document DemoEffect

* Some work on Elforg

* Elforg params macro, some more on Elfgrp

* Defines for number of fairies

* Tweak some flags wording

* Label beam

* Elfgrp: Name most of the stray fairy handling stuff

* cleanup

* fix typo

* GreatFairyAnimation

* name animations

* BgDyYoseizo_TrainPlayer

* Choose behaviour?

* fix merge

* format

* self review

* WEEKEVENTREG_OBTAINED_GREAT_SPIN_ATTACK

* jenkins

* review

* Update src/overlays/actors/ovl_Bg_Dy_Yoseizo/z_bg_dy_yoseizo.c

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

* review

* Update src/overlays/actors/ovl_En_Elfgrp/z_en_elfgrp.c

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

* Update src/overlays/actors/ovl_En_Elfgrp/z_en_elfgrp.c

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

* Update src/overlays/actors/ovl_Bg_Dy_Yoseizo/z_bg_dy_yoseizo.c

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

* Update src/overlays/actors/ovl_En_Elfgrp/z_en_elfgrp.c

* review

---------

Co-authored-by: Elliptic Ellipsis <elliptic.ellipsis@gmail.com>
Co-authored-by: Derek Hensley <hensley.derek58@gmail.com>
Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com>
2023-10-04 08:13:22 +11:00