1
0
Fork 0
mirror of https://github.com/zeldaret/oot.git synced 2024-12-02 15:55:59 +00:00
Commit graph

93 commits

Author SHA1 Message Date
Dragorn421
4dea0bfb26
Placeholder names for skelanime moveflags (#1489)
* Add defines for all used animflags

* Use named constants (and add two) for players `func_80832F54` flags

* note which flags are player-only

* Attempt at documenting but too FeelsUnkMan again

* forgot something

* ANIM_FLAG_PLAYER_0 -> ANIM_FLAG_0 and amend comment from "player-only" to "no effect outside player"

* 1<<n flags
2023-08-15 22:23:53 +02:00
Dragorn421
6e7a6d4181
Split SaveContext into sub-structs (#1393)
* Split SaveContext struct

* run formatter

* Remove temporary-until-split stuff in z_sram

* .

* run formatter
2023-08-13 15:24:26 -04:00
Roman971
232fdb75d8
Use intptr in most remaining code files (#1438)
* Use intptr in most remaining code files

* Fix missing uintptr_t in actor

* Use u8* casts for texture pointer arithmetic

* Use bg + 1 instead of casting in Room_DrawBackground2D
2023-07-10 15:03:01 -04:00
engineer124
35887e25ee
Minor Misc Cleanup 2 (#1422)
* misc cleanup

* more cleanup

* more cleanup

* PR Suggestions

* cleanup cond
2023-02-26 21:48:42 +01:00
Dragorn421
542012efa6
Fix misc 19 (#1488)
* "bgs sword" -> "biggoron sword"

* Animation_ChangeImpl: last arg is `ANIMTAPER_` enum

* TransitionTileStatus -> state

* Tiny gbi.h formatting fixups

* some cleanup on floormaster

* misc float ops cleanup

* sunsSongState = SUNSSONG_INACTIVE

* continueFlag == CS_CMD_STOP

* fix few camera names inconsistency

* textual 0 padding? not on my lawn

* libultra: construct address from end of dmem rather than oob from imem

* more free1 -> 2 fixup
2023-01-10 13:03:31 -05:00
fig02
92e03cf747
speedXZ -> speed (#1477)
* speedXZ -> speed

* +=

* revert arg in player function

* anon review

* engineer review

* forgot one

* last review

* revert decimal
2022-12-24 12:18:57 -05:00
engineer124
aa48c66e10
Introduce Player csMode enum (#1462)
* player csmode enum

* cleanup

* missed one, player2

* spell out enum name

* use CSMODE_MAX for data
2022-12-12 22:22:56 -05:00
engineer124
2e9e895bf9
Good Camera Mode Names (#1455)
* better camera mode names

* cleanup

* improve aiming modes

* follow boomerang comment

* more mode docs

* cleanup

* hookshotFly, revert to still
2022-12-11 10:46:03 +01:00
engineer124
8ff58118b3
Camera Flags (#1225)
* Generic Camera Flags

* New flag names

* Add flags to functions

* Finish flag docs

* More docs

* More cleanup

* More clarity

* Better shrinkwindow flag docs

* Improve name

* CAM_INTERFACE_FLAGS

* Better approach to edge cases

* Change ordering for consistency

* Oops

* Add masks to macro

* PR/Discord discussions

* cleanup comment

* Oops

* PR Suggestions

* More PR Feedback

* More PR Suggestions

* PR Suggestions

* More flag style change

* Small cleanup

* sync names with other PRs

* more fixes

* fix comments

* update with hud visibility mode docs

* missed one

* fix comments

* Roman PR Suggestions

* interfaceField

* small fix

* letterbox cleanup

* fix macro arg

* fix func declaration
2022-12-04 23:02:24 -05:00
Tharo
7ecafcfe7d
More documentation for z_std_dma.c (#1415)
* More documentation for z_std_dma

* uintptr casts for rom symbols in z64animation.h and z_kanfont.c

* Format

* Suggested changes, more defines for static texture sizes

* PI Interface -> PI

* Further suggested changes

* Format

* Comments about item_name and map_name texture assumptions
2022-11-16 21:57:02 -05:00
engineer124
40639e698d
Document Timers (#1412)
* Document Timers, First Draft

* some progress

* more timer docs

* cleanup

* small cleanup

* more cleanup

* comments

* more cleanup

* extra comment

* more docs

* brackets

* PR Suggestions

* cleanup, missed some

* more suggestions

* more PR Suggestions

* small change

* environmental
2022-11-16 13:41:27 -05:00
Dragorn421
cc2409606e
Update item names (#1376)
* Reevaluate item names (`ItemID` enum)

* format

* Carry `ItemID` changes to `ExchangeItemID`

* format

* Add item enum comments on items to slots array

* Rename slots according to current item enum names

* Add item enum comments on items to PlayerItemAction array

* Rename PlayerItemAction enum names according to current item enum names

* gi, gid names...

* `QUEST_GERUDO_CARD` -> `QUEST_GERUDOS_CARD`

* `DUNGEON_KEY_BOSS` -> `DUNGEON_BOSS_KEY`

* `UPG_` sticks/nuts : +deku

* Fixed remove array enum comments in `sDebugSaveEquips`

* "magic beans" -> "magic bean" (singular)

* cucco -> chicken (the one from weird egg, "alarm clock bird" from literal japanese translation)
2022-11-16 13:23:27 -05:00
engineer124
e4c1a4b512
Document Crawlspaces (#1286)
* Crawlspace docs, first draft

* Add wall docs

* OnePointDemo, fix

* format

* More player docs

* Document bgCamData

* Magic docs WIP

* More docs, first round finished

* Better docs

* More renaming

* Simpler name

* Another small adjustment

* rm if(1)

* Better names again after in-game testing

* Change comments

* change comment

* Big rename based on all the suggestions

* Small touch-up

* More PR Suggestions

* RESTORE_IDLE -> RESET

* More docs

* Capitalization

* PR suggestions

* Make declaration consistent

* Health_ChangeBy (amount)

* cleanup

* Document bgCamData

* More changes and cleanup

* More docs

* Clarify comments

* PR Suggestions

* Missed one

* More PR Suggestions

* Change comment

* Add another clarity comment

* format

* PR Feedback, rename bgcheck functions

* remove fallthrough cleanup (other pr that deals with that)

* PR Suggestions

* bug report

* sync with bgCamData PR

* small cleanup

* Another comment

* bgCamDataIndexBeforeUnderwater

* PR/Discord Discussions

* Missed some

* sync function header args

* Another suggestion

* cleanup

* Comments

* Change bgCamData to s16 for now

* PR suggestions

* the

* use "info"

* Missed a suggestion

* Discord Discussion

* Document playerFlag

* typo

* Revert bgCamFuncData to Vec3s

* format

* format

* First PR suggestion

* Some PR Suggestions, still need to test

* followup docs

* small cleanup

* target offset

* more PR

* forwardYaw

* crawlspace func/flag

* comment

* format

* Update include/z64player.h

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

* More PR Suggestions

* Update src/overlays/actors/ovl_player_actor/z_player.c

Co-authored-by: EllipticEllipsis <elliptic.ellipsis@gmail.com>

Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
Co-authored-by: EllipticEllipsis <elliptic.ellipsis@gmail.com>
2022-10-23 17:32:51 -04:00
engineer124
a715bf63d0
improve matches (#1413) 2022-10-21 18:57:30 -04:00
Dragorn421
b6d9a8183b
PlayerActionParam -> PlayerItemAction (#1394)
* `PLAYER_AP_` -> `PLAYER_IA_`

* Change temps, args, comments, members to "item action"

* Format
2022-10-09 15:59:57 +02:00
Tom Overton
82e04ede5f
Replace player animation names with original names derived from OoT3D (#1369)
* Name every player animation after the original name from OoT3D

* Also update link_animetion with original names
2022-09-12 20:43:06 +02:00
mzxrules
327a813b37
Fix RaycastFloor flags (#1328)
* fix raycast floor flags

* format.sh

* Name flags

* Rename RaycastFloor functions, clean up caller code, document z_bg_spot15_rrbox

* change comment to prevent format wrap

* change to "if BGCHECK_GROUND_CHECK_ON is set"

* roman suggestions
2022-08-30 17:49:51 +02:00
Dragorn421
706d5596bf
Doc, macros, enums for SurfaceType.data (#1293)
* `SURFACETYPE`0/1 getter macros

* Cleanup/assess/revert existing names

* `SURFACETYPE0_30` -> "soft"

* `SURFACETYPE0_`13/26 -> floortype/floorproperty

* Introduce `SURFACETYPE_FLOORTYPE_` enum

* Introduce `SURFACETYPE_FLOORPROPERTY_` enum

* `SURFACETYPE0_21` -> "wall type", and maps to "wall flags"

* Introduce `SURFACETYPE_WALLTYPE_` enum

* Introduce `SURFACETYPE_WALLFLAG_` defines

* `SURFACETYPE1_0` -> "sfx type"

* `SurfaceType_GetSfx` -> `GetSfxId` and cleanup

* Introduce `SURFACETYPE_SFXTYPE_` enum

* Note oddity on `Player.unk_89E` (more docs needed)

* `SURFACETYPE1_4` -> "floor effect" (not 100% set on the name, just something different from type and property)

* Introduce `SURFACETYPE_FLOOREFFECT_` enum

* Introduce `SURFACETYPE_CONVEYORSPEED_` enum

* Add `SURFACETYPE_CONVEYORDIRECTION_TO_BINANG` macro

* `wallDamage` -> `hasFlag27`

* Be more underscore-happy

* Revert "`SURFACETYPE`0/1 getter macros"

This reverts commit e61cccf2e6.

* remove mention to removed define

* Remove surfacetype_ prefix, `SFX_TYPE_` -> `SURFACE_SFX_TYPE_`, `FLOOREFFECT_` -> `FLOOR_EFFECT_`

* Formatting

* 0-pad litteral to 8 nibbles
2022-07-31 20:57:18 +02:00
Dragorn421
984871eb38
Document SaveContext.gameMode (#1295)
* Document `SaveContext.gameMode`

* end credits

* Remove no longer needed comment
2022-06-23 21:32:48 -04:00
Roman971
b0bfa9eb69
Fix asset file includes to always start with assets/ (#1260)
* Fix asset includes to consistently start with assets/

* Fix header paths in asset xmls to start with assets/

* Remove -Iassets from compiler options
2022-06-06 15:37:25 -04:00
Dragorn421
1a41694d58
Add enum for setup dls and name z_rcp.c functions (#1196)
* Introduce `SetupDL` enum

* wip

* wip

* Remove comments on each setupdl index

* Name setup dl functions by setupdl index

* `Gfx_SetupDl` -> `Gfx_SetupDL`

* Run formatter

* globalctx -> play

* fix regressions

* `Gfx_SetupDL` -> `Gfx_SetupDL_` (add separating underscore)

* `CallSetupDL` -> `SetupDL`
2022-06-03 18:25:48 -04:00
Dragorn421
d39ce02458
Documentation pass centered on z_player_lib (#1230) 2022-05-29 07:52:15 -04:00
engineer124
e68f321777
Document Magic (#1199)
* Magic docs WIP

* More docs, first round finished

* Better docs

* More renaming

* Simpler name

* Another small adjustment

* rm if(1)

* Better names again after in-game testing

* Change comments

* change comment

* Big rename based on all the suggestions

* Small touch-up

* More PR Suggestions

* RESTORE_IDLE -> RESET

* More docs

* Capitalization

* PR suggestions

* Make declaration consistent

* Health_ChangeBy (amount)

* PR Suggestions

* Missed one

* More PR Suggestions

* Change comment

* Add another clarity comment

* Discord discussions on `magicFillTarget`

* Comments

* grammar

* More comment clarity

* Another bad comment

* PR suggestions, improved comments

* One more comment

* one more thing

* bar -> meter
2022-05-23 18:52:01 +02:00
fig02
2e6279bc8e
PlayState Rename (#1231)
* global context -> play

* fix PlayState* PlayState
2022-05-21 14:23:43 -04:00
Dragorn421
154f44b6da
Documentation pass on scene/room commands (#1226)
* Rename handler functions

* Rename cmd_id enum names for consistency

* `char` -> `s8` for explicit padding in cmd structs

* `Room.unk03/03` -> `behaviorType2/1`

* `UNK_PTR` -> `void*`

* `showInvisActors` -> `lensActorsMode` + enum

* Add `ROOM_BEHAVIOR_TYPE1/2_` enums

* "mesh" -> "mesh header"

* `Polygon polygon` -> `PolygonBase base` (for now...)

* Misc cleanup

* "lens actors mode" -> "lens actor mode"

* Revert "`char` -> `s8` for explicit padding in cmd structs"

This reverts commit 59b9295828.

* `LENS_ACTOR_MODE_` -> `LENS_MODE_HIDE/SHOW_ACTORS`
2022-05-21 08:54:51 -04:00
fig02
aadb5f9c47
Gameplay_ -> Play_ and this (#1229) 2022-05-18 00:41:50 +02:00
engineer124
bf56c94f0f
Document Sub-Cameras (#989)
* Copying SubCam Changes from PR 908, made it to the end of bosses

* Finish copying over PR

* format

* More cleanup

* clean-up

* PR Suggestions, Clean-Up, Improvement in CS

* Remove substructs from fd/fd2

* format

* Improve fishing

* minor fix

* Make CutsceneCameraDir more general

* `sActiveCamMove` -> `sCamMove`

* Fix conflict with object kankyo

* Add CAM_ID_MAIN to object_kankyo

* Improve cam cutscenes further

* Revert cutscene cmd names (better for a separate PR)

* At -> LookAt in the context of Cutscenes

* Missed naming in diving game

* Format

* Fill in Ganon2 Names (now that it's matching)

* format

* `sActiveCamId` -> `sReturnToCamId`

* activeCamId -> returnToCamId

* Discord Discussions

* FIRST

* Move macro to bottom, comments

* More suggestions

* PR suggestion, cleanup comment

* Oops

* add comments

* Adjust comment

* Change edge-case

* whoops

Co-authored-by: fig02 <fig02srl@gmail.com>
2022-05-12 20:35:31 +02:00
Dragorn421
b9fded7b4e
Doc equips usage (inventory, current and player-specific constants) (#1142)
* Doc equips usage (inventory, current and player-specific constants)

* Improve some comments

* `currentSword`(`Item`) -> `currentSwordItemId`

* Comments on the right in `D_801261F8`

* Improve `sDebugSaveInventory.equipment` formatting with extra parentheses

* Use constants for `sNewSaveInventory.equipment`

* Run formatter

* Make comments in z64save.h header a single line even if very long

* `CHECK_OWNED_EQUIP_ALT`

* One more use of `CHECK_OWNED_EQUIP`

* `OWNED_EQUIP_FLAG`

* `OWNED_EQUIP_FLAG_ALT`

* Improve (?) giving sword by item id

* "half-byte" -> "nibble"

* Improve equips for setting kokiri sword

* Improve (?) checking boots by item id

* Improve (?) checking equips by item id

* Fixup one spot assuming `EQUIP_TYPE_SWORD == 0`

* Comments on the right in `sBootDListGroups`
2022-04-30 18:18:56 +02:00
fig02
16790bc253
Document Transition System (#1131)
* transition type enum

* mode enum, start documenting some types

* some more

* use enums for entrance table

* entrance table filled out

* sceneLoadFlag -> transitionTrigger

* sandstorm state/mode/type

* done i think

* fixes

* clean up circle weirdness

* circle use enum + fix texture names

* fix

* how did that even happen lol

* jesus

* review2

* some more review

* most review, still some more to do

* new transition trigger names

* some of review

* next type default
2022-04-27 16:00:25 -04:00
Dragorn421
fed9ac3e20
Angle cleanup - macros names (#1193)
* Move binang utility macros out of angle conversion macros block

* `BINANG_TO_DEGF` -> `BINANG_TO_DEG_ALT` (it may even be warranted to name it _approx instead of _alt, unsure)

* Add `BINANG_TO_DEG` (unused by oot) (for completeness)

* `DEGF_TO_BINANG` -> `DEG_TO_BINANG_ALT` (again may even be _approx, or maybe _cam)

* Add `DEG_TO_BINANG` (unused by oot) (for completeness)

* `RADF_TO_BINANG` -> `RAD_TO_BINANG`

* `RADF_TO_DEGF` -> `RAD_TO_DEG`

* Cleanup argument names in angle conversion macros

* Format for angle macros changes

* Run formatter

* Move `DEG_TO_BINANG_ALT`, `BINANG_TO_DEG_ALT` to z64camera.h

* Remove `DEG_TO_BINANG`, `BINANG_TO_DEG`

* Remove `_ALT` from `DEG_TO_BINANG`, `BINANG_TO_DEG`

* Add comment about inaccuracy near `DEG_TO_BINANG`, `BINANG_TO_DEG`

* run formatter

* `CAM_` prefix on `DEG_TO_BINANG`, `BINANG_TO_DEG` macros

* Revert "Remove `DEG_TO_BINANG`, `BINANG_TO_DEG`"

This reverts commit 5321647e5b.
2022-04-24 10:23:49 -04:00
Tharo
7068ad3703
Message Queues, Threads, and surroundings cleanup (#1178)
* message queues, threads, and surroundings cleanup

* Format, make the formatter prefer clang-format-11 if found

* Fix __osThreadTail type

* Q -> Queue, thread defines renamed

* Reformat, add missing NULL

* Suggested changes and further casting cleanup

* Reformat

* padmgr name fixes
2022-04-08 20:20:23 -04:00
Dragorn421
b9b40805f7
Fix misc 9 (#1183)
* Fix typo `tranform` -> `transform`

* (may be controversial) `indexes` (noun) -> `indices`, both are correct but `indices` prevails in the repo currently, and seems prefered in technical contexts

* Fixup one `@bug`

* Fix typo `relfect` -> `reflect`

* Rename and `@bug` `DemoTreLgt_OverrideLimbDraw`

* Fixup `PLAYER_AP_` to `ARROW_` type conversion

* `posModel` -> `modelPos`

* `effSpawnPosModel` -> `effSpawnModelPos`

* Gohma decay bug: Verified that timers do not prevent UB access

* Reorder summation in a more meaningful way

Co-authored-by: JoshDuMan <40190173+JoshDuMan@users.noreply.github.com>
2022-04-03 18:33:50 -04:00
Dragorn421
8f9e309452
Doc (partially) player model and anim code data (#1143)
* Doc (partially) player model and anim data

* `Player_OverrideLimbDrawPause` -> `func_80091880`

* Enum comments: use hex

* Change `D_80853914` to 1D array, change accesses to use new macro `PLAYER_ANIM_BY_GROUP_AND_TYPE`

* `PLAYER_ANIM_BY_GROUP_AND_TYPE` -> `GET_PLAYER_ANIM`
2022-03-20 23:42:01 +01:00
Dragorn421
0e5ecdcd73
Angle cleanup - BINANG_TO_RAD, BINANG_TO_RAD_ALT (#1158)
* 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
2022-03-19 20:16:33 -04:00
Dragorn421
61b864a89c
Angle cleanup - RADF_TO_BINANG (#1155)
* Run formatter

* Touch up angle macros (parentheses and hex constants)

* Use `RADF_TO_BINANG` more
2022-03-13 14:46:46 -04:00
Dragorn421
054bac7583
Doc player drawing (#1098)
* Introduce and use more enums and defines for equips and data involved in player drawing

* `EQUIP_TYPE_`, `EQUIP_INV_`, `EQUIP_VALUE_`

* Improve doc on ItemEquips/Inventory's `equipment` field

* Run formatter

* Add `PLAYER_MODELGROUPENTRY_*` for second index of `gPlayerModelTypes`

* Name `PLAYER_MODELGROUPENTRY_*` from existing documentation

* Partial doc on `PLAYER_MODELTYPE_*`

* Some doc on `PLAYER_MODELGROUP_*`

* Run formatter

* Name and some doc/cleanup on the various player draw functions

* Name symbols used for player position in pause menu

* Name player override/post limb draw callbacks

* `BOOTS_NORMAL` -> `BOOTS_KOKIRI`

* `EQUIP_INV_SWORD_GIANTKNIFE` -> `EQUIP_INV_SWORD_BROKENGIANTKNIFE`

* `currentSword` -> `currentSwordItem` to avoid confusion with `PlayerSword` enum

* Make one constant more explicit

* Document severe bug (not an issue by luck)

* Some doc on `PLAYER_MODELTYPE_RH_FF`

* Actually name most of `PlayerModelType`

* Actually name most of `PlayerModelGroup` and improve comments

* Make equipment in debug save data use equip enums

* Name symbol for computing player's `bodyPartsPos` and fix struct access

* Name right/left `HandType` symbols

* Add `PlayerBodyPart` enum

* Run formatter

* Introduce defines for pause player render dimensions and cleanup viewport usage in pause drawing

* Document `playerSegment` related usage

* Run formatter

* Revert player bodypart changes

* Revert equips doc changes

* Revert player model and anim data changes

* Revert drawing-unrelated changes

* Move `sTunicColors` tunic comments to after data
2022-03-12 19:06:43 -05:00
Dragorn421
c55a8530ee
PlayerMeleeWeaponAnimation enum (#1154)
* Move `PlayerSwordAnimation` from `z_en_torch2.c` to `z64player.h`

* `PlayerSwordAnimation` -> `PlayerMeleeWeaponAnimation`

* Add `PWMA_` prefix to `PlayerMeleeWeaponAnimation` values

* Use `PlayerMeleeWeaponAnimation` enum more

* Add `PWMA_MAX`

* Update comments in z_en_kanban.c

* Some cleanup around conditionals with `meleeWeaponAnimation`

* Comment `PWMA_` index value in `D_80854190`

* `PMWA_` -> `PLAYER_MWA_`

* Minor fixup

* Missed one spot

* Run formatter
2022-03-09 12:52:28 -05:00
Dragorn421
5cadc5df8a
Document/fix Player.bodyPartsPos usage (#1141)
* Document/fix `Player#bodyPartsPos` usage

* `distFromLinksHead` -> `distFromPlayerHat`

* Comment on `bodyPartsPos[-1]`

* Run formatter

* Use `PLAYER_BODYPART_MAX` more

* Use hex for `PlayerBodyPart` enum comments
2022-03-08 19:50:27 -05:00
Dragorn421
145b14dbc4
sword -> meleeWeapon (#1147) 2022-02-20 18:45:12 -05:00
Revo
c3533052ca
Add GCC compiler option. (#1056)
* GCC support.

* Add note about gcc-mips-linux-gnu requirement to README.md.

* changes

* changes based on Tharo's suggestion

* Cant reproduce file_choose.h error. Removing unnecessary -I

* changes

* wording based on Fig's suggestion

* add AVOID_UB for eyes/mouth reordering issue.

* remove unneeded flags and deprecate ZAPDFLAGS.

* some changes, waiting on prs for the rest

* fixes

* discard header sections

* change section handling in mkldscript

* avoid_ub in DmaMgr_GetFileNameImpl

* move asm to inline asm (consolidate gcc functions)

* change prefix back

* remove space

* fix warnings

* Revert "remove space"

This reverts commit 94af6977b3.

* Revert "fix warnings"

This reverts commit d729ddf457.

* finish up missing_gcc_functions

* revert unwanted mkldscript change

* temporary workaround. TODO: Stop the asm processor from choking

* fix ido build

* Revert "temporary workaround. TODO: Stop the asm processor from choking"

This reverts commit 9df892b7ac.

* review

* remove unused line in mkldscript

* remove tabs

* clarify zf comment

* review2

* review

* remove duplicate cc_check

* vanilla code always come first

* std_dma avoid ub

* add compiler_gcc to cflags

* only use two blocks when necessary

* clarify zf comment

Co-authored-by: fig02 <fig02srl@gmail.com>
2022-02-19 16:50:56 -05:00
Dragorn421
67f294774b
Defines for Actor#bgCheckFlags (#1126)
* 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`
2022-02-18 21:16:19 -05:00
playerskel
82cedcc3ef
proposal for link age macros (#1119)
* proposal for link age macros

* apply @Dragorn421 suggestions

* also annotate the slinkage variable
2022-01-24 19:08:37 -05:00
Dragorn421
6479913daa
Defines for player state flags (#1081)
* script-assisted player state flags

* Run formatter

* manually convert state flags in `D_80116068`

* `PLAYER_STATE_FLAG_` -> `PLAYER_STATE`

* Run formatter
2022-01-17 19:04:07 -05:00
Dragorn421
b1d3844325
Document undocumented matrix functions (#955)
* 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
2022-01-11 00:28:01 +01:00
louist103
a862411f00
Objects4 (#1057)
* remove fake match

* merge master

* animations

* dog limbs

* textures

* KZ limbs and DL

* a few KZ textures and make a file for link_boy

* the rest of KZ

* Far Limb DLs

* near DLs and limbs

* small fix to child

* boots and some sword and more child clean ups

* a bunch of DLs

* fix boy

* fix link child for real this time

* adult should be good now

* progress

* all undefined symbols done

* progress

* done (for now)

* restore makefile

* child -> adult

* child -> adult

* dog fixes

* KZ fixes

* more player fixes

* remove unneeded enum in dog

* rename hookshot stuff

* Update z_player_lib.c

* revert model group stuff

* move comment

* fix mirror shield upper

* remove useless 2

* OOT -> Oot

* gauntlet plate 2 fix

* fix

Co-authored-by: Louis <louist103@pop-os.localdomain>
2021-12-27 08:08:26 -05:00
Dragorn421
a9284494f2
Use defines for actor flags (#873)
* 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
2021-12-05 19:11:38 -05:00
engineer124
eabc918817
Name the coordinate transformation matrices (#1042) 2021-11-30 18:52:16 -05:00
Tharo
a497f33bda
z_message_PAL, message_data_static and surrounding doc (#996)
* 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>
2021-11-22 20:20:30 -05:00
Dragorn421
03636166b3
Fix matrices documentation (#952)
* Update names and doc of `Matrix_RotateRPY` and `SkinMatrix_SetRotateRPY` to ZYX Tait-Bryan angles

* Update name and doc of `Matrix_JointPosition` to `Matrix_TranslateRotateZYX`

* `Euler ***` -> `Tait-Bryan *** angles`

* Update docs of `SkinMatrix_Vec3fMtxFMultXYZW` and `SkinMatrix_Vec3fMtxFMultXYZ`

* Fix doc of `SkinMatrix_MtxFMtxFMult`

* Update docs of `SkinMatrix_Invert`

* Change name and docs of `SkinMatrix_SetRotateYRP` to `SkinMatrix_SetRotateYXZ`

* Change name and docs of `SkinMatrix_SetScaleRotateRPYTranslate` to `SkinMatrix_SetScaleRotateZYXTranslate`

* Change name and docs of `SkinMatrix_SetScaleRotateYRPTranslate` to `SkinMatrix_SetScaleRotateYXZTranslate`

* Change name and docs of `SkinMatrix_SetRotateRPYTranslate` to `SkinMatrix_SetRotateZYXTranslate`

* Add renamed functions to `namefixer.py`

* Run formatter

* Consistent function names (`ABC()` if equivalent to `A() B() C()`)
2021-11-17 05:52:26 -05:00
Dragorn421
f1d27bf653
Fix/cleanup/rephrase miscellaneous stuff (#983)
* Add parens around params usage in VEC_SET macro

* Remove unnecessary space character in a xml

* Use defines instead of magic values in head/tail magic comments

* Use `OS_USEC_TO_CYCLES` to make a time look better in `Graph_TaskSet00`

* `0x25800` -> `sizeof(u16[SCREEN_HEIGHT][SCREEN_WIDTH])`

* `0x803DA800` -> `0x80400000 - frame buffer size`

* Use `OS_VI_` defines instead of hex

* Add empty line after some variable declarations

* Remove unused `extern CutsceneData` in `z_bg_dy_yoseizo.c`

* `Matrix_MtxFToYXZRotS` does not use `MTXMODE_`

* Use `MTXMODE_` more

* Remove `ASCII_TO_U32`, use `'IS64'`

* Add explicit `!= NULL` in some ternaries

* Use `INV_CONTENT`, `AMMO` macros more

* Use `PLAYER_AP_` enum more to compare to `Player#heldItemActionParam`

* Get rid of lowercase hex (outside libultra)

* `gWindMill*` -> `gWindmill*`

* Format and small fix enums in `z_boss_mo.h`

* Use `CHECK_BTN_ANY` more

* Fix xz/xy mistake in comment in tektite

* Rephrase comments mentioning "the devs" in a more neutral way

* Clean-up some objectively useless parens

* Fix some negative values written as u16 instead of s16 in ichains

* `SKJ_ACTON_` -> `SKJ_ACTION_`

* Run formatter

* Fix unk_ offset of `TransformUpdateIndex#unk_10` -> `unk_0E`

* Remove comments using in-game text

* Remove `U` suffix from integer literals

* Revert "Remove `ASCII_TO_U32`, use `'IS64'`"

This reverts commit c801337dde.

* Use `PLAYER_STR_*` to compare to `CUR_UPG_VALUE(UPG_STRENGTH)`

* Add empty line after decl x2

* Revert "Use `PLAYER_STR_*` to compare to `CUR_UPG_VALUE(UPG_STRENGTH)`"

This reverts commit d80bdb32da.

* Make `CUR_UPG_VALUE(UPG_STRENGTH)` compare to integers (eventually needs its own enum)

* Only use `PLAYER_SHIELD_` enum with `Player#currentShield`

* Only use `PLAYER_TUNIC_` enum with `Player#currentTunic`
2021-10-02 23:17:09 -04:00