* Some doc on actor overlays alloc types
* Line breaks between defines at the top of actor.h
* plain english
* `ACTOR_ALLOC_` -> `ACTOROVL_ALLOC_`
* More line breaks
* `ACTOR_OVERLAY_ABSOLUTE_SPACE_SIZE` -> `ACTOROVL_ABSOLUTE_SPACE_SIZE`
* Document bug about Scarecrow's Song not setting the flag to restore Nayru's Love
* Try to document the check for needing to actor_kill to leave the absolute space being too broad
* "which overlay uses" (bad english) -> simplify to "which uses"
* Run formatter
* Allow dmadata to have names different from the original table
Added an argument to the dma define which is used to match debug strings in z_std_dma.c
* Update kaleido manager to support different overlay names
* Update the actor table to support different actor names
Added an argument to the define which is used to match debug strings in z_actor_dlftbls.c
* PR suggestions for argument descriptions
* Cleanup around `Item_DropCollectible`
* Cleanup around `Math3D_Vec3fDistSq`, `Math3D_Dist2DSq`
* Material/Model naming for one dlist pair
* Minor comments fixup
* Explicit `!= NULL` check
* Signed decimal for an array of coordinates
* Fixup comments some more
* Use `s32` as type instead of `StackStatus` enum type
* `bossLimbDl` -> `bossLimbDL`
* Fixup comment refering to `Actor.velocity` by struct offset
* Fixup `feetFloorFlags` doc and -> `feetFloorFlag`
* Fixup `xyzDistToPlayerSq` comment
* Make `SkelAnime.mode` comment refer to `AnimationMode` (<- `AnimationModes`)
* Use enum names to refer to anim modes and break long lines in z64animation.h
* `EnDha_OverridePostDraw` -> `EnDha_PostLimbDraw`
* ichains cleanup
* Scene command ids usage cleanup
* Properly name unkXXX members as unk_XXX
* change `gSceneCmdHandlers` length in variables.h too
* Revert Unknown flags to unk0 & unk1
* Remove "current scene" mention from `Flags_*Unknown` as they aren't saved or loaded so not scene-specific
* `Struct_8011FAF0`: unk_00, unk_04
* Run formatter
* Do not break long lines in headers
* Revert "Fixup `feetFloorFlags` doc and -> `feetFloorFlag`"
This reverts commit c45b3611e7.
* typo
* rename 800636C0 to gameinfo_init
* fix incorrect casing in cup button
* some constants
* add item00_none enum value
* rename 80009460 to gdmaverbose
* fix typos
* Revert "some constants"
This reverts commit 27a07204d7.
* rename gdmaverbose to gdmamgrverbose
* Revert "rename 800636C0 to gameinfo_init"
This reverts commit c74e255929.
* Revert "fix incorrect casing in cup button"
This reverts commit ac313b3965.
* a couple of typos
* minor changes based on clang-format
* 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`
* Cleanup parameters passed to `Actor_SpawnFloorDustRing`
* `10` -> `ARROW_NUT` for spawning EnArrow
* Missing empty line after declaration
* Introduce `ACTORCAT_MAX`
* Minor cleanup
* Run formatter
* `sgiDrawIds` -> `giDrawIds`
* `sDmaMgrDataExistError` -> `sDmaMgrIsRomCompressed` bool
* Add Makefile dependencies to rebuild some files when editing actor, object and effect tables in `include/tables/`
* Run formatter
* Revert "Add Makefile dependencies to rebuild some files when editing actor, object and effect tables in `include/tables/`"
This reverts commit c6b9a92139.
* 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
* 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>
* Implement a single Object Table for the enum and the segments
* Implement a single Actor Table for the enum and the overlays
* Implement a single Effect SS Table for the enum and the overlays
* Remove initvars.h and move its content to relevant files
* Update object 0 to use OBJECT_NONE and document it in the table
* Rename OBJECT_NONE to OBJECT_INVALID to avoid confusion
* bss OK
* Small fix
* Pr fixes (Dragorn) and some named symbols
* added the comment Fig requested
* rip jenkins box
* Update src/code/z_en_item00.c
Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
* Change combined if to 2 ifs
* GI enum
Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
* 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>
* beginning of migrating changes
* got matching
* changed order a bit
* clean up bgcheck
* fix conflict
* fix conflict again
* first stab at identifying types, some oks
* Clean up most bad structs/pointer math, move relevant structs to z64bgcheck.h, get some OKs
* more OKs, z_bgcheck.bss migration, update some sys_math3d.c args
* couple more OKs
* pushing some OKs
* fix compilation issues
* code_800430A0.c OK, more files decomp'd
* 8003A3E0 big OK :)
* Decomp most of func_8003C614, decomp helper funcs
* Decomp SurfaceType, CamData, and WaterBox property related functions
* more OKs, big OK in 8003C078
* more OKs, more progress, move a function definition in z_collision_check to functions.h
* more clean-ups, more OKs, dyn_vtx is now defined as u8*
* 8003A5B8, 8003A7D8, 8003C614, 8003DD6C OK, document function args better
* data migrated, more OKs
* 80041240 OK, func_8003B3C8 and func_8003BB18 disassembled
* func_80040284, 800409A8 non_matching, add IS_ZERO macro
* All asm files have C representations, some big OKs, lots of minor tweaks
* More OKs, non-matching code cleanup
* 8003FBF4 and 80040BE4 OK, improve codegen for most functions
* format z_bgcheck.c
* fix warnings, compile errors on NON_MATCHING
* func_8003EE80 is now NON_MATCHING
* begin documenting some functions
* formatting
* more documentation, func_8003A95C OK
* fix PHYSICAL_TO_VIRTUAL changes
* fix var rename
* More documentation, functions 80040E40, 80041648 OK, change types to not be compatible with ZAP
* func_8004239C ok, more NON_MATCHING improvements, more documentation
* Implement most suggested changes
* Convert comments to slower comments
* /**
* Implement ZAP2 changes
* my anti-virus ate my format.sh results
* Rename a couple hundred functions, fix minor stuff
* rename var so that clang formats correctly
* run format.sh
* implement Petrie's matches/suggestions
* format
* matches
* and the asm
* slight error
* Add SSList
* two more matches
* stuff
* implement code changes
* clean up Petrie's matchings
Co-authored-by: Arthur <arthurtilly413@gmail.com>
Co-authored-by: fig02 <fig02srl@gmail.com>
Co-authored-by: petrie911 <pmontag@DESKTOP-LG8A167.localdomain>
* EnTite_Update matching
* Fixes to update
* made good progress, func_80B1A2A0 is in a good place to be matching soon
* Merge stuff
* func_80B19E94 done, func_80B18CC4 done
* EnTite_Destroy and EnTite_Init done
* Commenting out sDamageTable and EnTite_Init until all the data matches
* Some more small functions done
* more progress
* func_80B19918 done
* func_80B18E7C done
* func_80B19524 done
* more progress
* EnTite_Draw equiv but nonmatching, file otherwise done
* Found some unstaged changed on old laptop
* Draw matching: File fully matching!
* Documentation
* finished documentation
* deleted data files
* update spec
* fixed waterY -> yDistToWater rename after merge
* ran format.sh
* fixing accidental renames in camera
* Fixed some obvious number/comment formatting issues
* Removed unecessary prototypes
* merge
* running format.sh
* suggestions
* more pr comment changes
* format to push
* one more change
* more renames (see pr comments)
* merge
* renames
* format.sh
* fix renames
* function comment formatting
* merge + format
* endless merge fixes
* merge fixes until die
* yet again a merge fix
* pr suggestions
* 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
* Setup player decomp
* Decompile z_player.c and z_player_lib.c
* Decompile remaining z_player.c functions
* Various player improvements
* Player progress (some non matchings and .data migrated)
* Player progress (reposition data and fix some non matchings)
* Cleanup, improve and document parts of z_player_lib.c/z_player.c
* Fix player renames in z_en_st.c
* Fix missing open/close disps in z_player.c
* Minor player fixes
* Address player comments
* rename some structs
* changes
* rename stuff and start a func
* progress
* progress
* progress
* remove unwanted file
* progress
* match last few funcs
* done, i think
* small changes
* match Lights_Draw (thanks krim)
* comments
* cleanup
* most pr suggestions
* name changes
* rename
* match MagicDark_Init
* update struct fields and add THIS comment thanks to Ethan
* match MagicDark_Destroy
* start on func_80B874E4
* move func_80B874E4 to a comment for now
* match MagicDark_Update (again thanks to Ethan)
* comment out func_80B8772C and use macro for ACTIVE_CAM
* various changes
* implement permuter suggestion
* reorder nayru temps to fix stack
* use LINK_IS_CHILD
* match func_80B874E4 a bit more
* initially store msgMode in temp_t2
* add msgMode temp
* comment out func_80B874E4 because regalloc >:(
* comment out func_80B874E4 again
* add unk_90C to Player
* change unk_14F to an array for more explicit padding
* remove partially completed functions
* remove matched functions from asm
* clang format
* subtract SFX_FLAG
* combine unk_14F and unk_150
* match ShotSun_Init
* match ShotSun_Destroy
* match func_80BADDCC
* break up unk_19C to add spawnTimer
* ShotSun_Update
* func_80BADE74
* work on func_80BAE05C
* make func_80BAE05C closer
* use proper macros for osSyncPrintf
* format if statement better and add temp player pointer func_80BAE05C
* Reorder spawnPos to match stack args later
* match func_80BAE05C
* almost match func_80BADF0C
* Remove temporary and add parenthesis
* change part of comment and move last unk_1A4 assignment to be similar to decompiler
* Change do while(false) to if (1)
* func_80BADF0C
* change comment
* update spec
* fix vt macro
* cleanup and name
* remove asm
* remove data
* remove extern
Co-authored-by: Random <28494085+Random06457@users.noreply.github.com>
* remove & for function pointers
* rename and retype D_02007020
* format
* remove tiny whitespace
* reorder if statement
* finish renaming
* replace cast with bitwise operation
* move globally used functions to functions.h
* reorder description
* move headers for EnItem00 and EnAObj to z64actor.h
* retype Item_DropCollectible and Item_DropCollectible2 to return EnItem00*
* rename ShotSun_StartFairyCountdown to ShotSun_TriggerFairy
* rename ShotSun_FairyCountdown to ShotSun_SpawnFairy
* add unk_E3EC field to MessageContext
* rename to ShotSun_UpdateHyliaSun for now
* remove != 0 on flag check
* remove unsigned suffix and use enum constant for Item_DropCollectible call
* add unk_95C field to Player
* add ub comment
* retype unk_1A4 and remove explicit struct padding
* Update src/overlays/actors/ovl_Shot_Sun/z_shot_sun.c
Co-authored-by: Roman971 <32455037+Roman971@users.noreply.github.com>
Co-authored-by: Random <28494085+Random06457@users.noreply.github.com>
Co-authored-by: Roman971 <32455037+Roman971@users.noreply.github.com>
* progress
* init ok and merge master
* enheishi1 and srchball OK
* cleanup
* cleanup
* cleanup
* more cleanup
* done
* more comments
* add file headers
* some review comments
* move vectors
* more review comments
* angle in decimal
* add prototype
* semicolon would be good
* fix
* make unset actor ids 0
* reword comment
* no &
* One non matching left in ovl_End_Title
* ovl_End_Title OK
* formatting
* removed unused asm files
* changed 0xFF to 255
* updated dlist
* made suggested changes
* Progress on z_player_lib, Named fields in Player struct
* More functions decompiled
* Matched another function
* A few more functions
* Ran formatter
* Rename some variables and add comments where appropriate, change types of unknowns
* Create PlayerActionFunc type
* Fix uncaught syntax error and issues from effects merge
* Rename invincible to invincibilityTimer, refactor long comments in Player struct
* Properly rename all occurences of invincibilityTimer
- `z_effect`: Matched and essentially all documented.
- `z_eff_spark.c`: Decompiled (1 non matching left) and mostly documented.
- `z_eff_shield_particle.c`: Matched and mostly documented.
- `z_eff_blure.c`: Decompiled (5 non matchings left) and partially documented.
- `z_effect_soft_sprite.c`: Matched and mostly documented.
- `z_eff_ss_dead.c`: Matched but not documented.
- `z_effect_soft_sprite_dlftbls.c`: "Matched" (only data, contains the effect ss overlay table).
- `z_effect_soft_sprite_old_init.c`: Not decompiled, but functions are categorized by effect ss overlay. And they should be decompiled at the same time as their corresponding effect ss in the future.
Other changes:
- Added a lot of types/enums to `z64effect.h`and moved+renamed some structs from `z64.h` to this header
- Added effect ss overlay segments to `segment_symbols.h` and effect ss init vars to `initvars.h`
- Added a macro called `VTX_T` to generate a `Vtx_t` in the same style as `VTX`
- Fixed `flg_set.c` .bss to be in the right file
- Removed `tools/overlayhelpers/batchdisasm` since it's no longer relevant
- Removed unused leftover asm from recent PRs