* Name in-actor effect functions / improve naming consistency
"particle" -> "effect"
Fixup: consistent effect functions names, missed a bunch
* Use `materialFlag` as int for the "is material already set" "boolean"
Fixup `materialFlag` (actually a boolean one), and `objectFlag`
More actually boolean `materialFlag`s
* Consistently use `_EFFECTS_COUNT` defines (except partial buffer usage, for now)
`BOSSFD_EFFECT_COUNT` -> `BOSSFD_EFFECTS_COUNT`
`EFFECT_COUNT` -> `FISHING_EFFECTS_COUNT`
Place `_EFFECTS_COUNT` defines before effect struct definition
* Name `countLimit` the "max new effect index" argument
* Rename all effect buffers to `effects`/`sEffects`
* Fixup some array/pointer usage
* `EnNiw` also has this pseudo-effects system
* `EnSyatekiNiw` also has this pseudo-effects system
* `EnFz` also has this pseudo-effects system
* `_EFFECTS_COUNT` -> `_EFFECT_COUNT`
* `effects` -> `effect` where used as iterator (hopefully covers everything)
* Run formatter
* Add `BINANG_TO_RAD_ALT2`
* Few hex constants in place of decimal cardinal angles
* Use `BINANG_TO_DEGF` more
* Use `DEG_TO_RAD(int)` for angle literals
* `BINANG_TO_RAD_ALT(literal)` -> use `BINANG_TO_RAD`
* Somewhat arbitrary literal angles cleanup
* Run formatter
* Touch up angle macros (parentheses and hex constants)
* Add `BINANG_TO_RAD_ALT`
* Swap `BINANG_TO_RAD` and `BINANG_TO_RAD_ALT`
* Run formatter
* Document/fix `Player#bodyPartsPos` usage
* `distFromLinksHead` -> `distFromPlayerHat`
* Comment on `bodyPartsPos[-1]`
* Run formatter
* Use `PLAYER_BODYPART_MAX` more
* Use hex for `PlayerBodyPart` enum comments
* Tool-assisted flags for `Actor_UpdateBgCheckInfo`
* Manual flags separation
* Run formatter
* Light doc on the flags
* `UPDBGCHECKINFOFLAG_` -> `UPDBGCHECKINFO_FLAG_` (what an improvement!)
* Run formatter
* Run formatter
* First pass, tool assisted bgCheckFlags
* Few manual bgCheckFlags
* Run formatter
* Remove fake bgCheckFlags 10-15
* Move existing documentation to the defines
* Comment on `bgCheckFlags` and rephrase some doc
* Name obvious flags, and some cleanup
* Comment on flag 9 being wall-interaction-related (thanks engineer and fig)
* Run formatter
* `BGCHECKFLAG_7` -> `BGCHECKFLAG_GROUND_STRICT`
* Touch up water-related bgcheckflags doc
* `BGCHECKFLAG_9` -> `BGCHECKFLAG_PLAYER_WALL_INTERACT`
* script-assisted player state flags
* Run formatter
* manually convert state flags in `D_80116068`
* `PLAYER_STATE_FLAG_` -> `PLAYER_STATE`
* Run formatter
* Document `func_800D1694` as `Matrix_TranslateRotateYXZ`
* Document `func_800D1FD4` as `Matrix_ReplaceRotation`
* Cleanup `Matrix_RotateAxis`
* Document `func_800A7EC0` as `SkinMatrix_SetRotateAxis`
* Document `func_800D2A34` and `func_800D2A98` as `Matrix_SetTranslateScaleMtx`(`F`)
* Document mostly unused functions at the end of `sys_matrix.c`
* Add in-use renamed functions to `namefixer.py`
* Add `Matrix_SetTranslateScaleMtx2` to `namefixer.py`
* Run formatter
* Fix namefixer.py mistake from #952
* Format clang-11.1
* Fix `Matrix_TranslateRotateYXZ` wrongly documented, it actually is `Matrix_SetTranslateRotateYXZ`
* VS Code is stellar at refactoring (no)
* Run formatter
* Come on VS Code
* Improve `Matrix_ReplaceRotation` docs
* Fix typo
* Fix namefixer.py
* Add ACTOR_FLAG_ defines
* Add ACTOR_FLAGS_ALL macro and use ACTOR_FLAG_* constants everywhere
* Remove unused ACTOR_FLAG_* constants
* actor flags in bigokuta & ko
* actor flags in obj_mure
* actor flags in stalfos, twinrova & ganon2
* actor flags in morpha & barinade
* name some previously missed actor flags
* found some comments using hex for actor flags
* Actor flags in ovl_En_Ganon_Mant
* Actor flags in EnWf
* Flags in en_zf
* Actor flags in BossGanon (FeelsOKMan)
* Remove `ACTOR_FLAG_NONE`
* Wrap expansion of `FLAGS` in parentheses
* `ACTOR_FLAGS_ALL` -> `CHECK_FLAG_ALL`
* Move `CHECK_FLAG_ALL` to `macros.h`
* Run formatter
* Initial progress on z_message_PAL, very messy
* Fix merge
* Some more progress
* Fix merge
* More z_message_PAL
* Small progress
* More small progress
* message_data_static files OK
* Prepare z_message_tables
* Matched another function, small updates
* Attempt to use asm-processor static-symbols branch
* Refactor text id declarations
* Begin large text codes parser function
* Fix merge
* Refactor done
* Build OK, add color and highscore names
* Remove encoded text headers and automatically encode during build
* Fix kanfont
* Various cleanups
* DISP macros
* Another match aside data
* Further progress
* Small improvements
* Deduplicate magic values for text control codes, small improvements
* Tiny progress
* Minor cleanups
* Clean up z_message_PAL comment
* Progress on large functions
* Further progress on large functions
* Changes to mkldscript to link .data in the .rodata section
* data OK
* Few improvements
* Use gDPLoadTextureBlock macros where appropriate
* rm z_message_tables, progress on large functions
* 2 more matches
* Improvements
* Small progress
* More progress on big function
* progress
* match func_80107980
* match Message_Update
* match func_8010BED8
* done
* Progress on remaining large functions
* Small progress on largest function
* Another match, extract text and move to assets, improve text build system
* Small nonmatchings improvements
* docs wip
* Largest function maybe equivalent
* Fix merge
* Document do_action values, largest function is almost instruction-matching
* Rename NAVI do_action to NONE, as that appears to be how that value is used in practice
* Fix merge
* one match
* Last function is instruction-matching
* Fix
* Improvements thanks to engineer124
* Stack matched thanks to petrie911, now just a/v/low t regalloc issues, some cleanup
* More variables labeled, use text state enum everywhere
* More labels and names
* Fix
* Actor_IsTalking -> Actor_TalkRequested
* Match func_8010C39C and remove unused asm
* More docs
* Mostly ocarina related docs
* All msgModes named
* Fix assetclean
* Cleanup
* Extraction fixes and headers
* Suggestions
* Review suggestions
* Change text extraction again, only extract if the headers do not already exist
* Fix
* Use ast for charmap, fix assetclean for real this time
* Review suggestions
* BGM ids and ran formatter
* Review comments
* rename include_readonly to include_data_with_rodata
* Remove leading 0s in number directives
* Review suggestions for message_data_static
* textbox pos enum comments, rename several enum names from Message to TextBox
Co-authored-by: Thar0 <maximilianc64@gmail.com>
Co-authored-by: Zelllll <56516451+Zelllll@users.noreply.github.com>
Co-authored-by: petrie911 <pmontag@DESKTOP-LG8A167.localdomain>
Co-authored-by: Roman971 <romanlasnier@hotmail.com>
* floats are fun
* more cleanup
* one more bit
* format
* merge kankyo
* Update src/overlays/actors/ovl_En_Horse/z_en_horse.c
Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com>
* Update src/overlays/actors/ovl_En_Mm/z_en_mm.c
Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com>
Co-authored-by: petrie911 <pmontag@DESKTOP-LG8A167.localdomain>
Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com>
* Import bgm Ids
* Small correction
* Fix kaleido
* Add defines for 0, 1, 0xFFFF. Fill in missing macros
* Improve names, move to bgm.h, add in macros to kankyo.c
* format
* Swap order of bgm macros and flags
* Fix all headers to comply with C standard
* fix a file in libultra
* Update include/stdbool.h
Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
* Update stdbool.h
* Update z64animation.h
Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
* Document EnGoroiwa and BgJyaGoroiwa
* Run format.sh
* Add renamed functions to actorfixer script
* no more calling out "the devs" for bad code
* `EnGoroiwa#flags` -> `stateFlags`
* `Matrix_MtxFToRotS` -> `Matrix_MtxFToYXZRotS` (and not ZXY oops), `func_800D2264` -> `Matrix_MtxFToZYXRotS`
* being code_800EC960
* wip
* wip
* more audio progress
* migrate data in code_800E11F0
* wip
* make ok
* remove asm
* wip
* move some variables outside of gAudioContext to the AudioContext structure due to the size used in func_800E3094
* more progress
* wip
* wip
* split code_800E11F0
* migrate rodata in code_800E11F0
* match functions that couldn't because of data issues
* move code_800E4FE0 asm files
* wip
* more wip
* fix global functions, and forward declarations
* wip
* wip
* wip
* ocarina wip
* match a couple functions
* some progress
* separate some bss
* match func_800EDA3C
* some matching
* more matches
* migrate audio rodata
* some matches
* more matchess
* start on synthesis
* work on synthesis
* fix function declaration
* Merge branch 'master' into audio
* match a few more functions
* wip
* wip
* more matching, rename Audio_SetBGM to Audio_QueueSeqCmd
* name several audio functions, and audiocontext members
* more naming, rename code_800E11F0 to audio_load, code_800DAAC0 to audio_synthesis
* audio wip
* match a few more functions.
* wip
* add missing NON_MATCHING directive
* wip
* some matching, data reogranization
* match cursed function
* wip
* wip
* formatting
* remove prefix from struct memebers
* missed function rename
* review
Co-authored-by: fig02 <fig02srl@gmail.com>
* Start decompiling Fishing
* Decompile more functions in Fishing
* Decompile a few more functions in Fishing
* Decompile func_80B6E9E0 and func_80B7825C (non matching)
* Minor Fishing cleanups
* Migrate fishing bss to C and match 3 functions
* Decompile and match Fishing_Update
* Migrate fishing data to C and minor cleanups
* Fix the object_fish xml and use its symbols in Fishing
* Partially document Fishing and object_fish
* Add more documentation/cleanups to Fishing and object_fish
* Use object_fish symbols in Demo_Ec and fix naming
* Minor fixes to Fishing docs
* Apply review suggestions for Fishing
* Apply 2 more review suggestions for Fishing
* Apply some review suggestions for Fishing
* Darkmeiro decompilation
Bg_Gnd_Darkmeiro decompiled, matched, and documented.
* give this a shot
* fix conflict
* one more try
* could be useful
* whoops
* some decomp
* still playing around with this
* rename functions
* ZAP again
* ZAP again
* the renaming begins
* more renaming. hopefully didn't break anything
* change all the things
* this and then merge
* and done
* one little thing
* small docs, small rename
* changed mind on cylinder and quad elements
* something
* more stuff
* more docs
* more adjustments
* Fixed some types
* more fixes
* all sorts of cleanup
* now with flags
* match!
* names and such
* update tools
* damage tables
* ColChkInfo
* one more thing
* formatting
* more formatting
* anime merge
* some stuff
* damage table
* again
* changes
* .s
* changes
* oc2 type
* a couple things
* format
* un-name magic arrows, not enough proof yet
* fix damage table script and remove old one
* EnAObj
* changes
Co-authored-by: petrie911 <pmontag@DESKTOP-LG8A167.localdomain>
Co-authored-by: Fig02 <fig02srl@gmail.com>
* Darkmeiro decompilation
Bg_Gnd_Darkmeiro decompiled, matched, and documented.
* give this a shot
* fix conflict
* one more try
* could be useful
* whoops
* ZAP2 stuff
* ZAP why
* ZAP again
* now with more symbols
* cleanup libultra
* fixes
- use quotes instead of <> for includes
- add macros for zelda specific thread priorities
- fix Makefile
- properly format the remaining pfs structs
* fix button macros + add CHECK_BTN_ANY/CHECK_BTN_ALL
* remove ULTRA_ABS
* fix includes
* update z_player.c/z_lib.c + run format.sh
* merge upstream/master
* fix include in En_Goroiwa
* fix includes
* Started doing cleanup
* did more work
* did more migration
* migrated more rodata and worked on some structs
* did more work
* Removal of ROOM field from initvars, some rodata migration, some string decompilation
* General update
* Decompiled vt strings
* Tool work
* Tool improvements
* 270 overlay rodata files remaining
* better float handling
* floats
* Many more floats
* migrated boss_mo
* assorted fixes
* Migrated 10
* tool improvements
* migrated 10
* 10 more
* 1 more
* did a few more
* fixes
* 10 more
* more floats
* Did some more, updated migrate-rodata.py to 'modify' the C file after processing in order to make to compiler process it as if it was changed.
* removed changes made to script by accident
* migrated largest rodata - ovl_fishing
* Did some more
* 114 remaining
* 99 left !
* almost done migrating rodata
* did some more, done for tonight
* almost done, tried add support to the script for z_player
* All possible rodata migrated in actor overlays
* update
* removed static from all overlays, ran format.sh
* Removed unknown actor structs
* converted a few floats
* Added new lines to header files that were missing them. Removed unused asm files
* Removed unused asm files
* Formatting newlines
Further formatting
spacing
.float spacing
More space formatting
More spacing formatting
Removing .balign 4 after floats
Co-authored-by: Ethan Roseman <ethteck@gmail.com>