* Add addresses for makerom and boot segments
* Mark entrypoint as the entry of the elf
* Add extra labels to macro.inc
* Use dlabel, jlabel and endlabel in disassembly
* Make jlabel global
* git subrepo pull tools/asm-processor
subrepo:
subdir: "tools/asm-processor"
merged: "92b9ec72f"
upstream:
origin: "git@github.com:simonlindholm/asm-processor.git"
branch: "main"
commit: "92b9ec72f"
git-subrepo:
version: "0.4.3"
origin: "https://github.com/ingydotnet/git-subrepo.git"
commit: "2f68596"
* Use `dlabel`s for non-functions in .text
* Add linker asserts
* Move framebuffer_lo to before the makerom segment to avoid `dot moved backwards` warnings
* fix
* Improve assert message
* fix
* Third fix
* Fix four
* Move undefined_syms to linker_script folder
* Make second linker script file to avoid abusing undefined_syms
* Update Makefile
Co-authored-by: Derek Hensley <hensley.derek58@gmail.com>
* Rename to extra.ld
* Use entrypoint symbol on ROM header
---------
Co-authored-by: Derek Hensley <hensley.derek58@gmail.com>
* 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>
* More weekeventregs naming for things related to receiving items
* `WEEKEVENTREG_OBTAINED_GREAT_SPIN_ATTACK` -> `WEEKEVENTREG_RECEIVED_GREAT_SPIN_ATTACK`
* 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>
* 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>
* 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
* begin cleanup
* more cleanup
* more cleanup
* more cleanup
* more cleanup
* more cleanup
* fake matches
* more cleanup
* more cleanup
* small thing
* PR Review
* PR Review
* 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>
* 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>