* Automate fixing BSS ordering
* Typo
* Some cleanups
* Move pragma check after printing BSS info
* Some proofreading
* multiprocessing, require version, some colors
* Tweak output
* Black + mypy
* Move logging and sys.exit out of helper functions
* Use stdout instead of stderr in fix_bss.py
* Add suggestion to conflicting offsets error
Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
* Remove var = list[T]()
* Improve error handling
Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
* Add error if no pointers to BSS
* Add comment about process_file_worker
* Only print updates if stdout is a tty
* Use new binary-search-esque candidate generation algorithm
Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
* Add Wikipedia link
* More comment tweaks
---------
Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
* start using task terminology
* more docs
* format
* cleanups
* MoveActor -> ActorMove
* missed a couple
* hopefully the last changes
* comment explaining the group change
* some review
* dragorn review
* remove accidental file
* fix matching issue, now use while loop
* Match retail BSS ordering
* Revert moving some global variables to headers
* Adjust block numbers after header changes
* Fix debug build
* Overlay bss ordering
* Fix BSS ordering after header changes
* gc-eu-mq OK
* Implement preprocessor for #pragma increment_block_number
* Transfer usage comment from reencode.sh
* Use temporary directory instead of temporary file
* Move ColChkMassType back
* Create debug macros for common functions
* Revert NDEBUG change
* MALLOCR -> MALLOC_R
* DEBUG -> OOT_DEBUG
* Use the same name for debug and non-debug matrix functions
* Fix file/line argument order
* Revert g[s]DPNoOp[Tag]
* Use SystemArena_MallocDebug directly in GameAlloc_MallocDebug
* MTXF_TO_MTX -> MATRIX_TO_MTX
* Remove `(ActorFunc)` casts in initvars, use `/**/` trick for format
Achieved by using the following regex:
(ActorInit.*)(\n\s+)(.*)(\n\s+)(.*)(\n\s+)(.*)(\n\s+)(.*)(\n\s+)(.*)(\n\s+)(?:\(ActorFunc\))?(.*)(\n\s+)(?:\(ActorFunc\))?(.*)(\n\s+)(?:\(ActorFunc\))?(.*)(\n\s+)(?:\(ActorFunc\))?(.*\n\};)
replaced with
$1$2/**/ $3$4/**/ $5$6/**/ $7$8/**/ $9$10/**/ $11$12/**/ $13$14/**/ $15$16/**/ $17$18/**/ $19
plus a change from /**/ to #if 0 #endif in docs/
* Manual fixes
* 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
* rename functions
* dragorns name suggestions
* Revert "dragorns name suggestions"
This reverts commit dd4626ce5e.
* lets try that again
* reword comment
* comments
* projectile speed
* arg name
* more comments
* minVelY comment
* merge master and format
* commit old stuff
* progress
* progress
* progress
* progress
* more progress, renaming cues next
* small changes
* enum values added for all actions
* hardcoded values removed when possible
* commands renamed
* first pass of action -> cue
* fix some matches
* some more cleanup
* scriptPtr
* forgot one
* remove cue rot union
* more changes
* some more stuff
* more stuff
* fix matching issues
* some more things
* progress, starting to rename destinations
* small changes
* name some destinations
* more names
* need to switch branch
* progress
* first pass of destination names
* usages fixed
* use destination enum
* fix csdis
* format
* command descriptions
* revert accidental zap changes
* forgot some things
* use a single macro for CutsceneCameraPoint (idk why i didnt think of this sooner)
* typo
* review1
* clarify ruby/sapphire comment
* remove endframe for commands that dont use it
* some more review
* most review, but not all
* scriptPtr -> script, and another small change
* ocarina action
* remove +1 from light settings command, change comment
* actionIndex -> cueIdTemp (i guess)
* _SetCueX -> _SetXFromCue
* format
* tweak fade out seq arg names
* use spline terminology
* more dragorn and engineer review
* misc start/end frame note
* cleanup StartPosRotFromCue vs PosRotFromCue
* cleanup spline terminology
* sPrevCamId -> sReturnToCamId
* comment on debug cs data address
* Cutscene_Init -> Cutscene_InitContext
* single point types are not a list
* remove todo comment
* some more review
* rumble struct names
* some review
* more review
* missed one
* reword pointer comment
* even more review
* match transition terminology with z_play
* change condition and format
* frame count
* command specific structs with alignment
* anon review
* remove unneeded arg from time macro
* yeet `CsCmdGeneric`
* remove unused from single point types
* typo
* compromise attempt -- name endFrame everywhere
* fixes
* fix again
* copied the wrong note
* cutscene data note
* review, format
* compat defines
* idk whats going on man
Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
* Comment names on titled scenes
* Comment some more scene names
* Comment some map assets symbol prefixes
* Name collapse sequence scenes (from the non-collapse equivalent scene's name + `_COLLAPSE`)
* Name ganon/ganondorf boss scenes (symbol prefix suffixed with `Scene` to prevent confusion with boss actors)
* Fix symbol prefix for back alley night scene
* Name the two grave scenes (normal and fairy's fountain variant)
* Name most houses, name/update misc scenes
Co-authored-by: fig02 <fig02srl@gmail.com>
* (hakaana) `GRAVE` -> `REDEAD_GRAVE` to be more specific
Co-authored-by: fig02 <fig02srl@gmail.com>
* `miharigoya_scene`: `market_guard_house`
* `kakariko_scene` -> `kakariko_center_house`
* `richards_house` -> `dog_lady_house` (for localization differences)
* Revert "Comment some map assets symbol prefixes"
This reverts commit 210a38a628.
* remove other xml prefixes
* ganon_boss, ganondorf_boss
* comments to namefixer
* `KAKARIKO_CENTER_HOUSE` -> `KAKARIKO_CENTER_GUEST_HOUSE`
* two collapse sequence scenes -> `GANONS_TOWER_COLLAPSE_`interior/exterior
* Run namefixer
`find src include -type f -exec ./tools/namefixer.py {} \;`
* run formatter
Co-authored-by: fig02 <fig02srl@gmail.com>
* Rename npc dialog state variable
* Rename and doc NPC actor talking funtion
* Introduce NpcTalkState enum
* Rename NPC_TALK_STATE enum values
* Document NpcPlayerInteractionState and related functions
* Rename player tracking opt enum variants
* Rename npc functions, interact info
* Minor npc actor function tweaks
* Minor comment fixes for npc
* Generalize NPC player tracking to point tracking
* Change unused NpcInteractInfo field type and name
Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com>
* Rename headRot and torsoRot
* Rename GetTalkState to UpdateTalkState
* Minor comment fixes
* Rename rotateActorShape and clarify related comments
* Remove unneeded parentheses in z_en_heishi4.c
* Reformat
* Remove unclear comment
* Rename yPosOffset to yOffset
Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com>
* `vt.h` -> `terminal.h`
* `VT_` -> `T_` (as in Terminal)
* `vt.h` -> `terminal.h` in includes too Pepega
* Sort out tiny terminal.h include inconsistencies
* Format
* -> `TE_`
* format
* `TE_` -> back to `VT_` (parkour!)
* explicit VT
* Swap REGION_US and REGION_JP
* Fix a few missing EXCH_ITEM enum values
* Remove unnecessary casts on alloc functions
* Fix a double slash in the spec file
* Swap top and bottom args in StackCheck_Init
* Remove some unnecessary & in array references
* Run formatter
* Fix the comments for US and JP codes
* Update asm-processor and fix includes with EARLY
* Enable more IDO warnings and disable unwanted warning 516
* Fix most new and remaining warnings
* Improve skelanime comment
* Improve asmproc pragma comment
Co-authored-by: Tharo <17233964+Thar0@users.noreply.github.com>
* Add suggested comment for a wrong prototype
* Update asm-processor with the latest fix
Co-authored-by: Tharo <17233964+Thar0@users.noreply.github.com>
* 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`
* script-assisted `itemGetInf` flags
* comment near non-trivial `itemGetInf` usage
* Run formatter
* Try something with the itemgetinf flags that can't use the packed value
* Add defines for `eventChkInf` (direct access)
* Add defines for `eventChkInf` (access through `Flags_GetEventChkInf`)
* Add defines for `eventChkInf` (access through `Flags_SetEventChkInf`)
* Add defines for `infTable` (direct access)
* Add defines for `infTable` (used by `Flags_GetInfTable`)
* Add defines for `infTable` (used by `Flags_SetInfTable`)
* Add defines for `eventInf`
* parenthesis cleanup near `GET_EVENTCHKINF` usage
* parenthesis cleanup near `GET_ITEMGETINF` usage
* parenthesis cleanup near `GET_INFTABLE` usage
* fixup one `eventInf` usage
* parenthesis cleanup near `GET_EVENTINF` usage
* parenthesis cleanup near `Flags_GetEventChkInf` usage
* slight `z64save.h` formatting improvement
* Improve itemGetInf flags in z_bg_dy_yoseizo
* Questionable improvement in z_en_ge2
* Questionable improvement in z_en_daiku
* Questionable improvement in z_en_mu
* Run formatter
* Parentheses around `gSaveContext` macros arguments
* Move individual flags define to the end of z64save.h, and improve comments separating the groups
* 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
* 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