* Darkmeiro decompilation
Bg_Gnd_Darkmeiro decompiled, matched, and documented.
* Lots of functions matched. Some big ones are close.
* Five left unmatched, one close.
* Merged data and decompiled the giant function into something readable. Its branch structure has yet to be matched.
* Three unmatched, one essentially matched, the rest matched.
* More fixes.
* Documented more of the structure and cleaned up a bit.
* BossFd2, BgVbSima, and EnVbBall matched and documented
* Also removed unneeded .s files
* And need to name EnVbBall's functions
* give this a shot
* fix conflict
* one more try
* removing darkmeiro changes
* and again
* now OK from make clean
* minor cleanup
* One more matching function for BossFd
* which means it doesn't need its .s
* splitting
* splitting
* splitting
* forgot some .s
* fancy new names
* fancy new names
* trying again
* sneaky .s files
* sound effects and some hex to decimal conversions
* Sound effects and static variable cleanup
* format.sh and clean up static variables
* sfx and formatting
* ZAP and cleanup
* small cleanup
* cleanup and ZAP
* ZAP
* looking at the giant function again
* looking at the giant function again
* Only the big function left.
* Those .s files aren't mine, officer
* float literals might be fixed. regalloc still a nightmare
* almost done with the big function
* should make now
* not much of a change
* all functions match. rodata somehow doesn't.
* forgot some things
* lots of cleanup
* and a little more
* small error
* large cleanup. Also BossFd has function names and inlined variable declarations
* still more cleanup
* the quest for 0.1f continues
* forgot to put NON_MATCHING back in
* Data structures fully documented. Still more cleanup.
* DECR now works with BossFd2
* should match now
* cleanup
* small cleanup
* cleanup and names
* tiny thing
* particles and headers and stuff
* now with more enums
* merge
* test
* end test
* update
* cleanup
* object 2
* object 1
* doc object_fd2
* git subrepo pull --force tools/ZAPD
subrepo:
subdir: "tools/ZAPD"
merged: "6f874af4a"
upstream:
origin: "https://github.com/zeldaret/ZAPD.git"
branch: "master"
commit: "6f874af4a"
git-subrepo:
version: "0.4.3"
origin: "https://github.com/ingydotnet/git-subrepo.git"
commit: "2f68596"
* formatting
* .s
* merge actor
* vertex arrays
* a little more
* formatting
* merge opd
* fixed damage check
* cleanup
* fixes
* effect struct
* review
Co-authored-by: petrie911 <pmontag@DESKTOP-LG8A167.localdomain>
Co-authored-by: fig02 <fig02srl@gmail.com>
* two matches
* cleanup and formatting
* Update assets/xml/overlays/ovl_Bg_Jya_Cobra.xml
Co-authored-by: Tharo <17233964+Thar0@users.noreply.github.com>
* no more extract
* format
* owl exterminators
* new match
* new match
* small thing
* whoops
Co-authored-by: petrie911 <pmontag@DESKTOP-LG8A167.localdomain>
Co-authored-by: Tharo <17233964+Thar0@users.noreply.github.com>
* named members of TitleCardContext
* changed screenX/Y to just x/y
* added clarifying comments and renamed timer -> duration because i think its better
* changed names to delayTimer and durationTimer
* made texture a void*
Co-authored-by: gamestabled <chandler2016@yahoo.com>
* ovl_Boss_Goma OK, except func_80917D98
* ovl_Boss_Goma OK and documented
* Minor cleanup: shorten enums, use named constants...
* Floats with .0f, less useless static usage, details on oversight about spawning child gohmas, cleanup...
* More documentation, hopefully less weird about documenting setups and actions
* fix fhg_fire
* remove warnings
* formatting things
* newlines
* review
Co-authored-by: Fig02 <fig02srl@gmail.com>
* fix hidan door
Signed-off-by: angie <angheloalf95@gmail.com>
* doors and lens of truth in gameplaykeep
Signed-off-by: angie <angheloalf95@gmail.com>
* other minor fixes
Signed-off-by: angie <angheloalf95@gmail.com>
* Fix a typo
Signed-off-by: Angie <angheloalf95@gmail.com>
* matches
* more matches
* progress?
* it's time
* so close
* organize declarations
* docs
* more fixes
* more fixes
* fix stage 1
* more fixes
* first try
* demo ids in decimal
* final cleanup
* one more thing
* fixes
* more cleanup
* onepointcs
* OnePointCutscene
Co-authored-by: petrie911 <pmontag@DESKTOP-LG8A167.localdomain>
* init done
* Everything done except for draw
* matching
* Tidied for pr
* merge master into en_ba
* run format.sh
* fixing merge mistakes
* how many different ways can I screw up a merge challenge
* some pr comments
* Less warnings in boot & code segments
* few more warnings gone
* Ran formatter
* z_view warning gone
* -> 1
* f31 -> 31
* Remove function casts
* Few more small improvements
* Separate declaration and assignment in func_80091738 and Item_Give
Co-authored-by: Thar0 <maximilianc64@gmail.com>
* Make func_800C213C match original ROM
The C code for this function was very close to done, and was
functionally equivalent to the ROM. This commit uses a few tricks
to convince the compiler to allocate the same registers as the original
ROM. The two tricks used are:
1. Introduced a new temporary variable "yinc".
2. Added a "do while(0) {}" line in two places.
Both of these ideas came from the decomp-permuter tool. I took the
do/while idea and guess as to what it might have been in the original
code. I imagined that the "do while(0) {}" was probably left over from
a standard multi-line macro, which for some reason had an empty body.
I further suggest that maybe the empty body is because it was a feature
compiled out during RELEASE builds - perhaps a debug logging macro.
* Use simpler code for func_800C213C
Replaced dummy LOG macro with "do {} while(0);". This version makes
less assumptions about what the original code looked like.
* All get item objects OK
* Name z_draw functions
* fix skulltula tokens draw ids
* Review suggestions, merge extract_single_asset into extract_assets as an optional argument
Co-authored-by: Thar0 <maximilianc64@gmail.com>
* First batch of files
* Add missing folders back
* Fix missing folders again
* Finish fixing existing texture files
* Gameplay_Keep XML finished
* Most actor gameplay_keep undefined syms removed
* Only ~200 gkeep symbols remain
* All gkeep symbols that ZAP supports are fixed
* Cleanup, and make gkeep names more accurate
* Starting to figure out what some unknown blobs are, merge zeldaret in
* fix a few more things
* refactor gkeep
* Change how gitkeep is handled
* gkeep xml cleanup
* Gkeep finished, now just waiting up ZAP updates
* 100 link animations finished
* 150 link animations finished
* 200 link animations finished
* 250 link animations finished
* 350 link animations finished
* 400 link animations finished
* 450 link animations finished
* 500 link animations finished
* 550 link animations finished
* All Link animations finished
cannot build yet because ZAP doesn't have LinkAnimationHeader yet
* xml changes for new zap stuff
* finish gameplay_keep
* fixing existing objects
* ready for pr besides zap padding issue
* mostly ready for pr
* format all c files
* all conflicts fixed
* make changes that roman requested
* fix thing i didn't mean to change
* some animation symbols renamed
* fixed roman's stuff
* lifemeter hardcoded pointers removed
* fix issue with incorrect data in gameplay_keep
* removed unused asm
* fixed most of fig's comments
* fix all of fig's comments
* reformat files
* Update assets/xml/textures/icon_item_static.xml
Co-authored-by: Roman971 <32455037+Roman971@users.noreply.github.com>
* Update assets/xml/textures/icon_item_static.xml
Co-authored-by: Roman971 <32455037+Roman971@users.noreply.github.com>
* fixed stuff
* fixed most of roman's comments
* remove leading zeroes
* should build now
* git subrepo pull --force tools/ZAPD
subrepo:
subdir: "tools/ZAPD"
merged: "f84d8337b"
upstream:
origin: "https://github.com/zeldaret/ZAPD.git"
branch: "master"
commit: "f84d8337b"
git-subrepo:
version: "0.4.3"
origin: "https://github.com/ingydotnet/git-subrepo.git"
commit: "2f68596"
* all of gkeep symbols fixed
* compiler error fixed
* format files
* final changes
Co-authored-by: Zelllll <elijah@DESKTOP-NMP1I89.localdomain>
Co-authored-by: Roman971 <32455037+Roman971@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>
* z_lifemeter OK
There were a few versions that matched, so the duplicate `ddfactor`
might be fake. The `if (interfaceCtx)` at the start seems to be required.
I think `sHeartsPrimFactors[0]` vs `sHeartsDDPrimFactors[ddtype]` is
real, because the asm loads `sHeartsDDPrimFactors` for each access,
while it only loads `sHeartsPrimFactors` once. It could have something
to do with `reduceixa` in uopt.
* Make vars function-static
* Fix names