1
0
Fork 0
mirror of https://github.com/zeldaret/oot.git synced 2024-12-01 23:36:00 +00:00
Commit graph

13 commits

Author SHA1 Message Date
EllipticEllipsis
8e19b91e80
Fix ovl_Boss_Ganon2 xml (#911) 2021-08-18 20:27:13 -04:00
Sirius902
bc9ca97086
ovl_Boss_Ganon2 (2 nonmatching) (#874)
* Match a few

* Remove cast

* BossGanon2_Destroy

* Some struct layout

* Missed one

* Work on BossGanon2_Update

* Oops missed another

* Work on update more

* Get it to compile

* Work a bit on update

* func_808FD27C

* Cleanup a bit

* Fix incompatible pointer type

* Work more on update

* Multiply

* Fix janky cast regalloc

* Remove some casts

* Move switch case to right spot

* Tiny regalloc

* Fix stack

* Try to fix jump table

* Migrate bss

* Make data match

* Fix minor formatting

* Another minor formatting

* Replace hex with symbols

* Do display lists

* Vertices

* jnt items init

* Split gfx into separate file

* func_808FCF40

* func_808FCF5C

* func_808FD080

* func_808FD4D4

* func_808FF898

* func_808FFA24

* func_808FFAC8

* func_808FFBBC

* func_808FFC84

* use unk_313 as a bool

* func_808FFCFC

* func_808FFDB0

* Add commented static

* func_808FFEBC

* func_808FFFE0

* func_809000A0

* Remove useless cast in func_809000A0

* Remove useless temp

* Fix wrong branch

* BossGanon2_Update

* Fix implicit function declarations

* Type D_8090EB2C to zelda pointer

* Reorder include because why not

* Deduplicate undefined syms

* Add more to struct

* Work on func_808FD5F4

* Major work on func_808FD5F4

* Get func_808FD5F4 to compile

* Make unk_398 unsigned

* Work on func_808FD5F4

* Progress

* func_808FD210

* BossGanon2_Draw

* Make it compile

* Fix compiler warnings

* Fix branches func_808FD5F4

* re-nonmatching func_808FD5F4

* stuff

* fix math functions

* clang format

* more progress

* Replace bit stuff with type

* Merge master

* Add possibly janky things and fix while loop

* Why does this help

* Chained assignment

* Remove dubious thing

* Reorder thing

* Add possibly fake notices

* Use true and false

* Make func_808FD5F4 equivalent

* Massage stack a little

* func_80906AB0

* Correct texture params

* Whitespace is good

* Use decimal line numbers

* func_809069F8

* Work on func_809060E8

* Make funny loop less funny

* Float stuff

* Remove useless cast

* Merge upstream

* Fix compiler error in nonmatchings

* func_809060E8

* Change tex alloc to be full integer

* Add unk_234

* Correct size of unk_2F4

* Make textures u64[]

* Type textures to u64[]

* func_80905DA8

* func_80905674

* Replace some pi

* BossGanon2_PostLimbDraw2

* func_8090523C

* func_80904FC8

* func_80904D88

* BossGanon2_PostLimbDraw

* BossGanon2_OverrideLimbDraw

* func_8090464C

* func_80903F38

* Match func_80900890

* Move func_80906538 prototype

* Work on func_80902348

* Match func_80902348

* Add fake warning to array thing

* Work on func_8090120C

* Remove useless var from func_8090120C

* Work more on func_8090120C

* Move case probably into place func_8090120C

* Work on func_8090120C until 4914

* Add break to switch

* Pass player to startPlayerCutscene

* Work more on func_8090120C

* Work on func_80902524

* Move function prototype

* Match func_80902524

* Clean up sfx ids in func_808FD5F4

* Correct SFX_FLAG in func_8090120C

* Match func_8090120C

* Match func_80904340

* Change tex to u8[]

* Cleanup func_808FD5F4 a bit

* Clean up another inequality func_808FD5F4

* Match func_80904108

* Cleanup for PR

* Cleanup for PR part 2

* Cleanup data a bit and start on func_80906538

* Basically match func_80906538

* Match func_80906538

* Rename tex to shadowTexture

* Work on func_809034E4 a bit

* replace 255 with 0xFF for texture

* Correct NON_MATCHING guard

* Make func_809034E4 equivalent and not ugly!

* Reuse i in func_809034E4

* Minor cleanup in func_809034E4

* Remove unused asm

* Static all the data

* Switch to using assets xml for overlay graphics :)

* Remove now unused undefined syms

* Rename pad to D_809071FC

* Some cleanup

* Cleanup and name more stuff

* Name BossGanon2_DrawShadowTexture

* Rename to sZelda

* Correct array in func_809034E4.s

* Start using proper symbols for assets

* Add morre undefined syms comments

* Cleanup a bit

* Cleanup a bit more

* Use THIS in limb functions

* Update comments

* Use define for actor id

* Remove unnecessary padding in struct

* Rename rand_float to randFloat

* Update src/overlays/actors/ovl_Boss_Ganon2/z_boss_ganon2.c

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

* Various minor suggestions

* Replace shadowTexture with void* wherever possible

* Update src/overlays/actors/ovl_Boss_Ganon2/z_boss_ganon2.c

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

* Do multiply

* Name some variables from debug prints

* Update src/overlays/actors/ovl_Boss_Ganon2/z_boss_ganon2.c

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

* Use ARRAY_COUNT(sParticles) everywhere

* Put data and bss in _data.c

* Remove unecessary @bug s

* Minor suggestions

* Why are there so many timers

Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
2021-08-06 20:30:31 +02:00
Anghelo Carvajal
5c147e5e03
ZAPD update: Gotta go fast! (#877)
* copy over the xml

* Rename anims

* A bunch of renames

* minor extract_assets fixes

* git subrepo pull --force tools/ZAPD

subrepo:
  subdir:   "tools/ZAPD"
  merged:   "820678b4e"
upstream:
  origin:   "https://github.com/zeldaret/ZAPD.git"
  branch:   "master"
  commit:   "820678b4e"
git-subrepo:
  version:  "0.4.3"
  origin:   "???"
  commit:   "???"

* Change rgb5a1 to rgba16

* eye and eyebrows

* some dlists

* git subrepo pull --force tools/ZAPD

subrepo:
  subdir:   "tools/ZAPD"
  merged:   "6be9af65d"
upstream:
  origin:   "https://github.com/zeldaret/ZAPD.git"
  branch:   "master"
  commit:   "6be9af65d"
git-subrepo:
  version:  "0.4.3"
  origin:   "???"
  commit:   "???"
2021-07-27 22:16:03 -04:00
louist103
676ecf06c5
warnings fixed (#835) 2021-05-30 10:21:21 -04:00
Anghelo Carvajal
4d5d1fd079
Add every unreserved object in an automated way (#805)
* it's crashing

* fix stuff

* fix xmls

* problematic objects

* fix tabs

* Fix suffixes

* add missing new lines

* Add comments to the problematic objects

* Find and replace fixes

* Add Fig's objects

* I forgot to add a Name in a cutscene, so I'm adding it here

* Update object decomp tutorial a little bit

* Update problematic objects

* Update docs/tutorial/object_decomp.md

Co-authored-by: EllipticEllipsis <73679967+EllipticEllipsis@users.noreply.github.com>

* Change comments

* comment out a few blobs

* dammit tluts

* Change a bunch of objects

* update the last bunch

* update comments on  oA11 and oB2

* Ninja-edit to fix compatibility with ZAPD's PR 142

Co-authored-by: EllipticEllipsis <73679967+EllipticEllipsis@users.noreply.github.com>
2021-05-16 12:36:40 -04:00
louist103
d22b746128
Decompile King Dodongo and his fire effect (#744)
* Fixed upstream

* move .data

* match init

* mathc func_808C1D00

* match func_808C32F4, func_808C2B38, func_808C3224, func_808C2AB0

* match func_808C30F4, func_808C2A40, func_808C3704, func_808C3704

* func_808C18B0

* match another chain of functions

* Match func_808C29B0, Draw, and most of OverrideLimbDraw

* start update

* Really close

* Almost match update, match Override Limb Draw

* start the big switch

* Make a little progress on the big switch function

* Test

* chip away at the big one some more

* test

* progress

* More progress

* Add

* Finished another chain of functions

* Decomp effect functions

* Get the whole file in C

* Move data to its own C file

* Start the effect file en_bdfire.c

* Messed up expected

* Finish EnBdfire.c

* A little clean up

* done as far as I can get it

* Delete scenes directory

* Delete graphs directory

* Delete graphovl.py

* match and such

* Delete BossDodongo_Update.s

* PR fixes

* restore old IDO

* Color Filter

* PR fixes (Roman)

* Fixed added assets

* remove asm

* PR fixes (Roman)

* quick format change

* remove unwanted files

Co-authored-by: Louis <5883445+louist103@users.noreply.github.com>
Co-authored-by: petrie911 <pmontag@DESKTOP-LG8A167.localdomain>
Co-authored-by: Fig02 <fig02srl@gmail.com>
2021-04-11 18:38:22 +02:00
petrie911
d47528ee59
Bongo Bongo (ovl_Boss_Sst) (#458)
* First pass

* Darkmeiro decompilation

Bg_Gnd_Darkmeiro decompiled, matched, and documented.

* give this a shot

* fix conflict

* one more try

* more matching fun

* fun with bongo

* clean this up later

* found the matching versions

* diff.py has escaped?

* now with more docs

* Now with floor and more docs

* one more thing

* incremental progress

* It's Bongo time

* one little thing

* merge ZAP

* update

* camera

* gfx now in their own file

* now with more object decomp

* name animations

* now shiftable

* missed some. also DECR

* opd merge

* start xml

* now with xml asset extraction

* format

* cleanup

* removed union

Co-authored-by: Kelebek1 <eeeedddccc@hotmail.co.uk>
Co-authored-by: petrie911 <pmontag@DESKTOP-LG8A167.localdomain>
2021-04-06 01:08:45 +02:00
Anghelo Carvajal
c94e595dc1
Misc objects problems (#748)
* 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>
2021-04-02 19:30:26 -04:00
Kenix3
f4499a8de2
En_Clear_Tag OK and documented (#689)
* Decompile and document En_Clear_Tag

* Adds a define for setting the total count of ClearTag particles.

* Fixes swap in particle effect struct member names.

Additionally, implements the DECR macro where available.
Additionally, implements the CLAMP_MIN macro.
Additionally, adds more comments inside of functions explaining how the Arwing works.

* Reformats z_en_clear_tag.c after recent fixes.

* Removes not OK DECR and CLAMP_MIN macros.

I don't know why they built locally OK for me. May have had a stale build.

* Added static to data declarations.

Additionally added white spacing between data definitions.

* Various syling fixes in EnClearTag

Fixes inconsistent usage of particle/effect. They're Effect is the better name, so I went with that.

Fixed a naming issue in CalculateFloorTangent.

Adds s prefix to all the static variables.

Renames clearTagParticlesBuffer to sClearTagEffects

Consistent capitalization in comments.

Adds more descriptive comments to function level comments that didn't say a lot already.

Renamed gameplay.particleEffects to gameplay.specialEffects.

Renames cameraNumber to cameraId.

Fixed capitalization in display list variable names.

* Always capitalize the A in arwing.

* Fixes issue with overzealous replacement of arwing -> Arwing

* Renames arwing display lists to include the g prefix.

* Renames effect seed -> random

* Removes unnecessary decrement timer comments.

* Updates Arwing comments to detail why it's important that the roll is updated to zero.

* Updates stack variable names in EnClearTag_Update to be more consistent with each other.

* Updates Arwing crashing documentation.

* Further update documentation on arwing crashing.

* Even further updates to Arwing crashing docs.

* Fixes issue of missing newline in En_Clear_Tag.xml

* targetDirection reset now has a chained assignment

* Rotation angle to hex

* Fixes rotation hex and identifies float.

* Updates arwing fire check.

* Arwing cutscene timer is multiplied by 128 rather than shifting 7

* Updates scaledCrashingTimer assignment to be more consistent.

* Updates max scale to multiply by 2

* Gives name to the work buffer indices.

Additionally, makes enum names more consistent.

* Removes unnecessary globalCtx2 in EnClearTag_CreateFlashEffect

* Runs format.sh after recent changes.

* Updated path of ClearTag assets.

* Clear tag now uses Arwing in the display list name for all effects.

* Updates work buffer to expand and contract as new enums are added.

* Uses c99 defines in my c89

* Updates the unknown 8 bytes in en_clear_tag

* review

Co-authored-by: fig02 <fig02srl@gmail.com>
2021-03-29 19:14:08 +02:00
Anghelo Carvajal
833dc2928d
ovl_En_Jsjutan with 1 non_matching (#713)
* Init

Signed-off-by: angie <angheloalf95@gmail.com>

* destroy and non_matching update

Signed-off-by: angie <angheloalf95@gmail.com>

* declare externs to data

Signed-off-by: angie <angheloalf95@gmail.com>

* nonmatching draw

Signed-off-by: angie <angheloalf95@gmail.com>

* everything is a disaster

Signed-off-by: angie <angheloalf95@gmail.com>

* import bss

Signed-off-by: angie <angheloalf95@gmail.com>

* first step to extract data

Signed-off-by: angie <angheloalf95@gmail.com>

* import data

Signed-off-by: angie <angheloalf95@gmail.com>

* func_80A89860

Signed-off-by: angie <angheloalf95@gmail.com>

* draw

Signed-off-by: angie <angheloalf95@gmail.com>

* func_80A89A6C is crap

Signed-off-by: angie <angheloalf95@gmail.com>

* EnJsjutan_Update

Signed-off-by: angie <angheloalf95@gmail.com>

* change some hexs into decs

Signed-off-by: angie <angheloalf95@gmail.com>

* convert hexs of D_80A8AA98 into decimals and run format.sh

Signed-off-by: angie <angheloalf95@gmail.com>

* move data to its own file

Signed-off-by: angie <angheloalf95@gmail.com>

* this function is nightmare

Signed-off-by: angie <angheloalf95@gmail.com>

* i'm really trying

Signed-off-by: angie <angheloalf95@gmail.com>

* i think i am finally doing it

Signed-off-by: angie <angheloalf95@gmail.com>

* move the temps to where they are used

Signed-off-by: angie <angheloalf95@gmail.com>

* rename distance

Signed-off-by: Angie <angheloalf95@gmail.com>

* rename a few variables

Signed-off-by: Angie <angheloalf95@gmail.com>

* unclamp stuff :s

Signed-off-by: Angie <angheloalf95@gmail.com>

* i tried to see if i'm going better that older way

Signed-off-by: Angie <angheloalf95@gmail.com>

* moving stuff around

Signed-off-by: Angie <angheloalf95@gmail.com>

* this is the third try

Signed-off-by: angie <angheloalf95@gmail.com>

* changing bit by bit

Signed-off-by: angie <angheloalf95@gmail.com>

* step by step

Signed-off-by: angie <angheloalf95@gmail.com>

* more stuff

Signed-off-by: angie <angheloalf95@gmail.com>

* slow

Signed-off-by: angie <angheloalf95@gmail.com>

* a few small changes

Signed-off-by: angie <angheloalf95@gmail.com>

* go back to second try

Signed-off-by: Angie <angheloalf95@gmail.com>

* changing a s8 to u8 made a bigger difference than expected

Signed-off-by: Angie <angheloalf95@gmail.com>

* i am slowly doing it

Signed-off-by: Angie <angheloalf95@gmail.com>

* some problems are so dumb

Signed-off-by: Angie <angheloalf95@gmail.com>

* it is improving slowly again

Signed-off-by: Angie <angheloalf95@gmail.com>

* erase the old tries

Signed-off-by: Angie <angheloalf95@gmail.com>

* remove four variables

Signed-off-by: Angie <angheloalf95@gmail.com>

* fix the missing instructions at the end

Signed-off-by: angie <angheloalf95@gmail.com>

* theres only regalloc problems left

Signed-off-by: angie <angheloalf95@gmail.com>

* fix stack

Signed-off-by: angie <angheloalf95@gmail.com>

* add ifdef non_matching

Signed-off-by: Angie <angheloalf95@gmail.com>

* i'm getting desesperate

Signed-off-by: Angie <angheloalf95@gmail.com>

* Remove unnecessary casts

Signed-off-by: Angie <angheloalf95@gmail.com>

* random stuff that improves codegen

Signed-off-by: angie <angheloalf95@gmail.com>

* dumb is dumb

Signed-off-by: angie <angheloalf95@gmail.com>

* erase stuff

Signed-off-by: angie <angheloalf95@gmail.com>

* add some comments

Signed-off-by: Angie <angheloalf95@gmail.com>

* use bomb_explosion param and add some comments

Signed-off-by: angie <angheloalf95@gmail.com>

* add a few comments in about stuff

Signed-off-by: Angie <angheloalf95@gmail.com>

* extract carpet's texture instead of hardcode it

Signed-off-by: Angie <angheloalf95@gmail.com>

* set segment 128 in the xml

Signed-off-by: Angie <angheloalf95@gmail.com>

* Add baseaddress, which fixes dlist in xml

Signed-off-by: Angie <angheloalf95@gmail.com>

* fix the second dlist

Signed-off-by: Angie <angheloalf95@gmail.com>

* compiler complain that the symbol doesn't exists

Signed-off-by: angie <angheloalf95@gmail.com>

* last cleanup

Signed-off-by: angie <angheloalf95@gmail.com>

* format and delete unused asm

Signed-off-by: angie <angheloalf95@gmail.com>

* Cleanup and add a few comments

Signed-off-by: Angie <angheloalf95@gmail.com>

* add non matching to spec

Signed-off-by: angie <angheloalf95@gmail.com>

* update xml and add a note to future people

Signed-off-by: angie <angheloalf95@gmail.com>

* Finally remove z_en_jsjutan_data.c

Signed-off-by: angie <angheloalf95@gmail.com>

* Rename extracted variables

Signed-off-by: angie <angheloalf95@gmail.com>

* Update src/overlays/actors/ovl_En_Jsjutan/z_en_jsjutan.h

Co-authored-by: Roman971 <32455037+Roman971@users.noreply.github.com>

* Update src/overlays/actors/ovl_En_Jsjutan/z_en_jsjutan.c

Co-authored-by: Roman971 <32455037+Roman971@users.noreply.github.com>

Co-authored-by: Roman971 <32455037+Roman971@users.noreply.github.com>
2021-03-27 22:47:25 -04:00
Anghelo Carvajal
5562b2ef6f
Fix some fixable warnings (#728)
* Fix setup warnings

Signed-off-by: angie <angheloalf95@gmail.com>

* Casting the problems away

Signed-off-by: angie <angheloalf95@gmail.com>

* I don't really like changing the type to void

Signed-off-by: angie <angheloalf95@gmail.com>

* We're out of EARLY hell

Signed-off-by: angie <angheloalf95@gmail.com>

* ./format.sh

Signed-off-by: angie <angheloalf95@gmail.com>

* Change skel type to "Normal"

Signed-off-by: angie <angheloalf95@gmail.com>

* Changes requested

Signed-off-by: angie <angheloalf95@gmail.com>

* suggestion of roman

Signed-off-by: angie <angheloalf95@gmail.com>

* early is back :c

Signed-off-by: angie <angheloalf95@gmail.com>

* This will be a fix in ZAPD

Signed-off-by: angie <angheloalf95@gmail.com>
2021-03-23 19:45:42 -04:00
Zelllll
20c1f4e648
Decompile Gameplay_Keep and fix all existing decompiled objects (#595)
* 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>
2021-01-24 19:36:40 -05:00
Nicholas Estelami
b95643b397
Updated Texture Asset Handling (#478)
* Auto stash before rebase of "upstream/master"

* A large number of scenes have been decompiled.

* Fixed makefile

* Decompiled around 40 scenes.

* Removed old file

* Finished matching remaining scenes.

* Removed old commented out spec lines

* Decompiled a few object files.

* Reorganized xmls a bit. Updated pu_box overlay to use proper symbol.

* Updated texture and object file decomp

* Fixed newline issue with ZAPD

* Moved scenes/ into the assets/ folder

* Fixed a few compile errors

* Auto stash before rebase of "upstream/master"

* A large number of scenes have been decompiled.

* Fixed makefile

* Decompiled around 40 scenes.

* Removed old file

* Finished matching remaining scenes.

* Removed old commented out spec lines

* Decompiled a few object files.

* Reorganized xmls a bit. Updated pu_box overlay to use proper symbol.

* Updated texture and object file decomp

* Moved scenes/ into the assets/ folder

* Fixed a few compile errors

* Fixed merge issues.

* Fixed makefile merge error

* Fixed additional merge error

* Fixed several more merge issues

* Commented out gameplay_keep and sk2 extraction, since currently unused.

* Reenabled gameplay_keep extraction since it's used in the spec

* Fixed build error

* Removed test struct

* Fixed makefile error that would happen on fresh builds

* Fixed merge issue

* Removed relative paths

* Multithreading on extraction, spec uses numbers, few changes to XMLs

* Removed redundant code from the extract_assets script

* object_sk2 and object_spot09_obj OK

* object_spot11_obj OK

* object_spot17_obj OK

* Test: One of the gameplay_keep dlists given a proper symbol

* Updated asset symbol names based on new naming scheme

* XMLs use "Offset" instead of "Address" now

* Fixed merge issues, updated ovl_Magic_Dark xml and gfx file

* Updated to use latest build of ZAPD

* Updated ZAPD again

* Updated ZAP to remove assimp dependency

* Jenkins Test: Added .gitkeep file

* Updated ZAP once more

* Updated png file name to comply with new naming scheme.

* Fixed bad include

Co-authored-by: Jack Walker <7463599+Jack-Walker@users.noreply.github.com>
2020-12-26 06:39:52 -05:00