* 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>
* init, destroy, update, couple of others decomped
* 2 functions remain
* data migrated
* 1 function left
* OK
thanks mostly to Petrie and the permuter,
and no thanks to my find/replace skills
* documented and deleted asm
* updated spec
* delete data
* address review comments
* Apply review suggestions
* Darkmeiro decompilation
Bg_Gnd_Darkmeiro decompiled, matched, and documented.
* give this a shot
* fix conflict
* one more try
* could be useful
* whoops
* ZAP2 stuff
* ZAP why
* ZAP again
* small improvement
* also minor
* merge
* matches
* the room?
* woo matches
* spelling fix
* Darkmeiro decompilation
Bg_Gnd_Darkmeiro decompiled, matched, and documented.
* give this a shot
* fix conflict
* one more try
* could be useful
* whoops
* ZAP2 stuff
* ZAP why
* ZAP again
* rupees and, for some reason, pots
* and now an even larger man
* now for the gallery
* more progress
* naming continues
* even more docs
* another match
* match, fix, a new enum
* Update src/overlays/actors/ovl_En_Syateki_Man/z_en_syateki_man.c
* fixes except globalctx
* well one more
* and now globalCtx
* Darkmeiro decompilation
Bg_Gnd_Darkmeiro decompiled, matched, and documented.
* give this a shot
* fix conflict
* one more try
* could be useful
* whoops
* ZAP2 stuff
* ZAP why
* ZAP again
* woo watch out
* data and such
* stuff
* more decomp
* another match
* match and docs
* more docs
* little more cleanup
* SFX macros
* little more
* more attempts to match
* naming things
* I give up on the match
* also spec
* changes
* hex
* Update src/overlays/actors/ovl_En_GeldB/z_en_geldb.c
Co-authored-by: Roman971 <32455037+Roman971@users.noreply.github.com>
* Update src/overlays/actors/ovl_En_GeldB/z_en_geldb.h
Co-authored-by: Roman971 <32455037+Roman971@users.noreply.github.com>
* Update src/overlays/actors/ovl_En_GeldB/z_en_geldb.c
Co-authored-by: Roman971 <32455037+Roman971@users.noreply.github.com>
Co-authored-by: Roman971 <32455037+Roman971@users.noreply.github.com>
* Fully decompiles demo_effect actor.
* Formats z_demo_effect.c
* GET_ACTOR_TYPE is renamed to GET_EFFECT_TYPE
* Implements OPEN_DISPS macros for all draw functions.
* Fixes ugly float values
* Removes unnecessary union structs in the DemoEffect actor struct
* Renames DemoEffect SkelAnimeCurve member to skelCurve
* Names initObjectBankIndex DemoEffect struct member
* Renames jewel display list holders
* Renames initialization function pointers to initUpdateFunc and initDrawFunc
* Renames primitive and environment color DemoEffect struct members.
* Fixes a couple missed floats.
* Renames most draw and update functions.
* Finishes naming all update functions.
* Adds additional SFX defines.
* Renames the rest of the functions
* Renames all external object display lists and vertex references
* Renames DemoEffect global data variables
* Renames DemoEffect Medal function to GetItem because it's used by LightArrows too
* Fixes DemoEffect Timewarp_Timeblock documentation.
* DemoEffect_TimewarpTimeblock updates shrink functions to use decimal
* Converts DemoEffect hex to decimal where appopriate
* Names the rest of DemoEffect struct members.
* Names DemoEffect triforceSpot crystalLightOpacity
* Adds DemoEffect enums for light effect color and god lgt types.
* Renames DemoEffect_UpdateBlueOrb to DemoEffect_UpdateBlueOrbGrow
* Fixes compiler warning in DemoEffect_JewelSparkle
* Renames DemoEffect_MedalSparkle argument
* Reformatting DemoEffect struct offset comments.
* Formats z_demo_effect
* Updates DemoEffect oGfxCtx to use the new macros.
* Adds comments detailing what each function in the DemoEffect system does.
* Removes z_demo_effect.data.s
* Renames DemoEffect global variables and sets them to static
* Removes pointer from DemoEffect function references
* Removes unncecessary default: break; statements in DemoEffect
* Converts rotation values to hex in DemoEffect
* DemoEffect effectFlags now uses ~1 rather than 65534
* DemoEffect_DrawGodLgt now uses a cleaner conditional statement
* eventChkInf in DemoEffect now uses 1 << 9 and 1 << 11
* DemoEffect now uses VT macros.
* Converts DemoEffect colors to hex.
* Changes M_PI / 32768.0f to M_PI / 0x8000
* Updates demo_effect enums to be all caps
* ovl_demo_effect reloc info is now included via build process rather than included from original asm
* Adds param packing macro
* DemoEffect struct unions are now typedef'd outside of the main struct
* Reformats DemoEffect sJewelSparkleColors
* Removes an if(globalCtx){} in DemoEffect_Init
* Removes ActorFunc cast in DemoEffect_Wait
* Removes unncessary comment in DemoEffect_MedalSparkle
* Timer check in DemoEffect_UpdateLightRingShrinking now uses <= 255 rather than < 256
* Removes unnecessary comment in DemoEffect_SetJewelColor
* Removes unncessary comment in DemoEffect_MoveJewelActivateDoorOfTime
* Converts an angle to hex in DemoEffect_MoveJewelActivateDoorOfTime
* Converts a while to for loop in DemoEffect_JewelSparkle
* Moves stack variables in DemoEffect_UpdateDust to a new line for each one
* Removes globalCtx2 assignment to the beginning of the function in DemoEffect_DrawJewel
* Removes unnecessary comment in DemoEffect_DrawCrystalLight
* No longer wrapping rotation reset in if(1){} in DemoEffect_DrawGodLgt
* Converts DemoEffect if statements to use != 0 and == 0 when non-boolean ints are checked.
* DemoEffect initDrawFunc now uses type ActorFunc rather than DemoEffectFunc
* review 2
Co-authored-by: fig <fig02srl@gmail.com>
* cleanup
* name camera action functions
* decompile a few small functions, name a few Camera struct members
* decompile camera data, decompile a few camera functions
* Split ASM for code_800BB0A0
* removing code_800BB0A0.s
* PR Requests, Camera WIP
* remove #define NON_MATCHING from db_camera
* rename code_8007BF90.c to z_olib.c, rename functions in z_olib.c
* camera wip
* rename some struct memebers, some decomp wip
* pr updates
* camera wip
* name some fields in Camera Struct, being making sense of Camera_Update
* Camera WIP
* wip
* wip
* add z64camera.h header, begin creating CameraSetting macros
* wip
* wip
* wip
* wip
* migrate camera bss to c
* match a couple functions in db_camera
* match some small db_camera functions
* wip
* migrate db_camera rodata, match a few functions
* remote db_camera.rodata.s
* match some of db_camera
* identify types of some unknown data pieces
* some small wip
* Match Camera_Init, some function changes, some struct name changes. Change unk_C0 and unk_CC to floats from Vec3fs
* add naming for a few more Camera struct members
* wip
* match func_80043F94
* Match Camera_Jump1
* document some of Camera_Jump1
* wip
* match Camera_Jump3
* Match Camera_Update, FeelsAmazing
* wip
* wip
* match Camera_SetParam
* minor cleanup
* wip
* wip
* match Camera_KeepOn0
* some documentation, modify some matching functions to match style of others.
* match Camera_Demo1
* match camera_demo9
* document Camera_Demo1 and Camera_Demo9
* wip
* Match camera_battle4
* match camera_unique2
* Match Camera_Unique3
* match camera_special6
* match Camera_Special5
* wip
* document camera_special6
* naming updates
* match camera_Unique1
* match Camera_Unique0
* wip
* Match Camera_CalcUpFromPitchYawRoll
* match func_80045508
* document Camera_Battle4
* document several camera functions, move camera data to separate file
* rename phi/theta to pitch/yaw
* wip
* uniq9 wip
* Camera_Unqiue9 OK
* document Camera_Unique9
* name unk_160 in camera struct
* wip
* wip
* minor updates
* fix conflicts
* wip
* wip
* Olib updates
* wip
* wip
* rename most Math3D functions, few matches, documentation
* wip
* document most of math3d
* wip
* wip
* wip
* pr updates
* Match Camera_Fixed4
* match func_80058E8C
* pr updates
* add missing comment block finalizer
* Merge math3dupdates
* match Camera_ChangeSetting
* Match Camera_ChangeMode
* match func_80058148
* Match Camera_Special9
* decompile the rest of camera data
* match Camera_Demo5
* name a few camera functions in z_play
* match func_80046CB4, some work on other fucntions
* wip
* impove some non matchings
* fix function rename
* match func_800588B4
* match Camera_Subj4
* wip
* Camera_Demo3 matching, Camera_Battle1 big progress
* Camera_Normal2 OK
* wip
* match Camera_Parallel1
* normalize some things across functions
* match Camera_Normal1
* Match Camera_Normal3
* some cleanup
* more cleanup
* more cleanup , match Camera_CalcDefaultPitch
* data formatting
* Match Camera_Jump2
* document Camera_Jump2
* Match Camera_KeepOn3
* document some of Camera_KeepOn3
* improve some non_matchings
* match func_80045C74 and func_800460A8
* code cleanup, documentation
* match Camera_KeepOn1
* Match Camera_Subj3
* Match Camera_Battle1
* remove non_matching from func_80044adc and func_80046e20
* name several members of Battle1
* more documentation on Battle1
* cleanup
* renaming Camera_Vec3fScaleXYZFactor to Camera_Vec3fTranslateByUnitVector
* reorganize update structs, remove final references to params, remove CameraParams union
* implement camera enums into player
* Renaming Camera_GetDir to Camera_GetInputDir, Camera_GetRealDir to Camera_GetCamDir, etc, implement camera enum's into player
* remove non-global camera variables from variables.h
* clean up some variable declarations
* finish pr comment updates
* fix some warnings
* data formatting
* finish commenting on data
* delete unused asm
* remove asm
Co-authored-by: fig <fig02srl@gmail.com>
* Darkmeiro decompilation
Bg_Gnd_Darkmeiro decompiled, matched, and documented.
* give this a shot
* fix conflict
* one more try
* could be useful
* whoops
* ZAP2 stuff
* ZAP why
* ZAP again
* more matchings, some cleanup
* small cleanup
* Fixed upstream
* Migrate data and Decomp Init
* Decomp a few more functions
* Small change before starting
* Back to this file
* Match action func chains, func_8096DE94, func_8096DF9C, func_8096E0A4
* Match all except 1 function in first back of actionFuncs
* matched a bunch in bank D_8097053C
* Match the first few draw functions
* match a few more draws and start one
* All matched but one. All equivalent
* Name setup funcs
* finish naming functions
* Fix Gfx stuff
* Remove 'expectedc'
* General clean up
* fix
* progress
* cleanup
* remove reloc
* review 2
* fix awful function pointer thing
Co-authored-by: fig <fig02srl@gmail.com>
* Poe actors progress
* Some more progress, En_Poh almost matching
* Further progress
* Fix merge
* Decompile data
* Actor struct cleanups
* More functions OK
* Progress
* Last function decompiled, some nonmatchings left
* Few more OK, skelanime_init definition changes
* Progress
* Style improvements, OPEN/CLOSE_DISPS, few more OK
* Few more style improvements, function prototype additions/changes, another function OK
* Remove unused asm, begin documentation
* Use generated reloc
* Cleanup, format
* Remove a few no longer needed comments
* PR suggestions
* DISP macros
* Missed some FrameUpdateMatrix != 0 replacements
* EnPoField_InteractWithSoul -> EnPoField_SoulInteract, eyeImageIdx -> eyeTextureIdx
* Fix merge, reformat
* Review Suggestions
Co-authored-by: Roman971 <32455037+Roman971@users.noreply.github.com>
* Further review suggestions
* Ran formatter
* Less DECR usage
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
* Many likes alike
* matched
* merge ZAP
* now with names
* merge and small cleanup
* removed commends
* got formatter to behave
* move static array
* fixed variable names
* fixes
* pedantic comments
* Darkmeiro decompilation
Bg_Gnd_Darkmeiro decompiled, matched, and documented.
* give this a shot
* fix conflict
* one more try
* could be useful
* whoops
* ZAP2 stuff
* ZAP why
* ZAP again
* Is this where I make a Mr Hands joke?
* Manos: the Hands of Fate
* cleanup
* and format
* Darkmeiro decompilation
Bg_Gnd_Darkmeiro decompiled, matched, and documented.
* give this a shot
* fix conflict
* one more try
* could be useful
* whoops
* ZAP2 stuff
* ZAP why
* ZAP again
* spooky scary skeletons
* there's a skeleton inside of you
* formatting
* types
* a matched function even
* undo change
* lol anime
* ok how did I forget the .s
* array fix
* would you like to ride the bone train?
* stuff
* more renames
* renames and cleanup
* names suck
* idea
* using void** for now
* stuff
* look more type fixes
Co-authored-by: fig <fig02srl@gmail.com>
* merge upstream
* Merge upstream
* Small formatting
* Data section
* MagicDark_Draw
* Gross match of func_80B874E4
* Add func_8005A9CC to functions.h
* Work on func_80B87A18
* func_80B8772C
* Remove comment
* Work on func_80B87A18
* Correct fp constant
* Add regalloc comment ;(
* Move negatives to numbers
* Stupid casts >:(
* Use this->actor when possible
* It's so close
* Use cast + 0xFF
* func_80B87A18
* Delete asm and replace globalCtx2
* Update spec
* static everything
* Name scale
* Use decimal for alpha
* Name some stuff
* Delete reloc
* Name orbOffset
* Name some functions
* Make unused data colors (because it probably is)
* Change >= to >
* Use clamps
* Name MagicDark_DimLighting
* Name gfx
* Rename prototype params
* Cleanup
* Funny cast
Co-authored-by: Ethan Roseman <ethteck@gmail.com>
* Progress
* deleting more function files
* more
* more
* More
* more
* more
* more
* more
* 2 more
* more
* more
* more
* more
* more
* more
* more
* more
* more
* master update
* 4 more
* Merged
* 3 more
* One more done!
* ug
* Ido Recomp test
* try 2
* Recomp by default
* Fix Jenkinsfile
* Fix 2
* Fixing struct
* CFE errors
* CFE fix -O2
* Cleanup
* More progress, almost done...
* Almost..
* Update and some progress
* formatting
* Cleanup
* Major cleanup
* done for now
* PR comments
* PR comments
* merge master and format
* a few things
Co-authored-by: fig <fig02srl@gmail.com>
* Darkmeiro decompilation
Bg_Gnd_Darkmeiro decompiled, matched, and documented.
* give this a shot
* fix conflict
* one more try
* could be useful
* whoops
* ZAP2 stuff
* ZAP why
* ZAP again
* marginal improvement
* matched functions. Also fixed a serious lack of static
* format
* more static
* fixing a function prototype
* skelanime OK
* forgot .s
* skin matrix matched
* format
* merge upstream
* Merge upstream
* Migrate data
* Progress
* Progress
* Progress
* Cleanup data
* Match EnOkuta_Update
* EnOkuta_Draw
* func_80AC25D8
* Work on func_80AC2350
* Name EnOkuta_OverrideLimbDraw
* More progress
* More progress
* Progress
* Progress
* func_80AC2350
* func_80AC1938
* Use LINK_IS_ADULT
* func_80AC1B80
* Name some stuff
* Update spec and remove asm
* Name EnOkuta_SpawnSplash
* Name more stuff
* Name EnOkuta_Appear
* Name ColliderInits
* Reorder comparison to make more sense
* Name some Octorock related functions
* Name some projectile stuff
* Reorder comparison
* Convert remaining uses of unk_194 to decimal
* Name some more stuff
* Rename some wait functions to have 'to'
* Consolidate timers
* Name some more stuff
* Change EnOkuta_SetupWaitToAppear to take this
* Name jumpHeight
* Name this->scale
* Name shots
* Name _SetupWaitToShoot and _SetupShoot
* Name more stuff (might change)
* Name EnOkuta_ColliderCheck for now
* Replace some floating point constants
* Change name to make a bit more sense
* Rename mouth to snout
* Just rename parameter to scale
* Fun magic number I guess
* Remove several returns
* Cleanup
* Update src/overlays/actors/ovl_En_Okuta/z_en_okuta.c
Co-authored-by: Roman971 <32455037+Roman971@users.noreply.github.com>
* Update src/overlays/actors/ovl_En_Okuta/z_en_okuta.c
Co-authored-by: Roman971 <32455037+Roman971@users.noreply.github.com>
* Clang format
Co-authored-by: Roman971 <32455037+Roman971@users.noreply.github.com>
* merge upstream
* Merge upstream
* Progress
* Progress
* Fixes
* Migrate bss for now ig
* func_80A772EC
* Use rom reloc
* Cleanup
* Correct prototype
* Rename to _PlayBGM
* Eh revert to _StartMusic
* Match func_80A74398 more
* Fixes
* Work on func_80A74398
* Work on func_80A74398
* Match func_80A74398
* Use thisx
* Name, static, and move some stuff
* Match some graphics functions
* Rename asm for named functions
* Forgot one
* More graphics stuff
* Progress
* More progress
* Fix jump table
* Figure out types for a lot of data
* Fix data
* Type remaining data
* Work on func_80A7492C
* Ugly match for func_80A7492C
* Fix func_80A7492C
* Match some interesting stuff
* Move and remove forward declarations
* Sort declarations
* Progress
* Use quotes for vt import
* Slightly better diff
* Better diff again
* Fix stack on func_80A74BA4
* match func_80A74BA4
* func_80A74674
* Progress
* Progress
* Progress
* Progress
* Eh early return probably makes more sense here
* Progress
* Progress
* Progress
* Autocomplete sucks
* Name stuff in func_80A76E2C
* Work a bit on func_80A75C38
* Ugly match func_80A75FA0
* Name it prevInvincibilityTimer
* EnIk_PostLimbDraw3
* Use hex for line numbers in EnIk_PostLimbDraw3
* EnIk_PostLimbDraw2
* EnIk_PostLimbDraw1
* Use hex for line numbers in EnIk_PostLimbDraw1
* Use ACTORTYPE_ENEMY
* Progress
* Possible fake match of func_80A75C38
* Update spec and remove asm
* Cleanup forward declarations
* Move data to fun places
* Move data into func_80A76E2C
* Move data into func_80A75A38
* Make D_80A7847C an array
* Remove struct padding
* Revert "Remove struct padding"
This reverts commit 87b0bd73da.
* Name colliders
* Use else
* Name shieldColliderItems
* Use new graphics macros
* Cleanup
* Darkmeiro decompilation
Bg_Gnd_Darkmeiro decompiled, matched, and documented.
* give this a shot
* fix conflict
* one more try
* could be useful
* whoops
* ZAP2 stuff
* ZAP why
* ZAP again
* match
* new matches
* format
* need to kill the asm, too
* whoops dlists
* one more match
* no more temp
* let's fix Gameplay_ChangeCameraStatus while we're at it
* formatted
* Darkmeiro decompilation
Bg_Gnd_Darkmeiro decompiled, matched, and documented.
* give this a shot
* fix conflict
* one more try
* could be useful
* whoops
* matching
* format
* document and format
* .s files
* cleanup and macros in block-related actors
* fixed a few more things, also an error I cso an error I caught in another file.
* Split code_800F7260
* More function splits, migrate rodata
* Initial progress
* Small progress
* More substantial progress, finally figured out structs
* 2 functions left
* Move prototypes to functions.h
* Remove unused asm, move most externs to variables.h
* Fix merge
* Ran formatter
* Brackets to avoid && &
Co-authored-by: krimtonz <33664508+krimtonz@users.noreply.github.com>
* More variables to variables.h
* Braces around early return
Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
* ARRAY_COUNT in sBankSizes and remove unnecessary temp vars
Co-authored-by: krimtonz <33664508+krimtonz@users.noreply.github.com>
Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
* merge upstream
* Merge upstream
* Match EnHorseNormal_Init
* Work on EnHorseNormal_Draw (probably finish depending functions first)
* func_80A6CC88
* Work on EnHorseNormal_Draw
* Clang format
* Properly use OPEN_DISPS
* Stop using thisx lol
* Use the funny angle number
* Use &D_04049AD0 because it's not a display list?
* Stop using fun macros to fix stack
* EnHorseNormal_Draw
* EnHorseNormal_Destroy
* EnHorseNormal_Update
* Use disp macros EnHorseNormal_Draw
* Correctly type D_04049AD0
* func_80A6C570
* Name some draw stuff
* Fix names
* Make if condition more readable
* func_80A6B30C and fix incorrect pointer types
* Function prototypes
* func_80A6B250
* Add header comment
* Move skin function to functions.h
* Change to stable
* Cleanup a little
* Match some more
* Work on func_80A6BE6C (won't compile yet)
* Work on func_80A6BE6C again
* Progress
* func_80A6CAFC
* Match all but one :)
* Work on func_80A6BE6C
* Work more on func_80A6BE6C
* Multiply floating point by integer lol
* Reorder assignment to almost match
* func_80A6BE6C
* Fix warning and remove unnecessary forward declarations
* Data section
* Cleanup data a bit
* More cleanup and clang format
* Clang format is a little confused
* More cleanup
* Formatting
* Revert formatting on z_bg_spot01_objects2.c
* Name unk_14C
* Add clone comment
* Name clonePos
* Name and cleanup
* Name some animation related stuff
* Remove unnecessary assignment
* Name cloneRotY
* Use ARRAY_COUNT for sAnimations
* Add more to unknown struct layout
* Use u8 for last struct member
* Use s32 for length
* Add padding disclaimer
* Update src/overlays/actors/ovl_En_Horse_Normal/z_en_horse_normal.c
Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
* Update src/overlays/actors/ovl_En_Horse_Normal/z_en_horse_normal.c
Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
* Update src/overlays/actors/ovl_En_Horse_Normal/z_en_horse_normal.c
Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
* Update src/overlays/actors/ovl_En_Horse_Normal/z_en_horse_normal.c
Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
* Update src/overlays/actors/ovl_En_Horse_Normal/z_en_horse_normal.c
Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
* Various suggestions
* Replace 10430.378f
* Remove padding because alignment
* Move function array out of function
* Remove struct name being present twice unecessarily
* Oops forgot the s
* Don't separate static vars from others
* Some cleanup
* Use ARRAY_COUNT(sJntSphItemsInit)
* Minor cleanup
* Rename enum members
* Oops forgot to rename enum
Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
* Migrate data, fix header, add undefined symbol, decompile Init function
* Decompiled Destroy function
* Decompiled func_808ADEF0 and adjusted struct some
* Decompiled Update function
* Fixed sInitChain stuff
* Preliminary Draw function decompilation
* Replaced code with OPEN_DISPS and CLOSE_DISPS and some hex with decimal
* Working on Draw function still
* More permuter test stuff
* Got Draw matching except for one little TwoTex issue
* Added NON_MATCHING
* Removed false alarm
* Got most of the functions decompiled; 1 non-matching, 1 not started
* Ran format.sh on file
* These two symbols should be arrays
* Got func_808ADAE0 mostly decompiled
* Got func_808ADAE0 fully decompiled!
* Removed necessary files (except _Draw)
* Successfully decompiled Draw function
* Decompiled Draw function
+ Added proper includes to spec
* Removed Draw function assembly
* Moved func_800F46E0 prototype to functions.h
* Renamed unk_174 to bufferIndex
* Replaced state constants with enum
* Renamed func_808ADAE0 to BgSpot03Taki_ApplyOpeningAlpha
* Renamed func_808ADAE0 to BgSpot03Taki_ApplyOpeningAlpha
* Made changes as per pull request comments
Co-authored-by: fig02 <fig02srl@gmail.com>
* cleanup libultra
* fixes
- use quotes instead of <> for includes
- add macros for zelda specific thread priorities
- fix Makefile
- properly format the remaining pfs structs
* fix button macros + add CHECK_BTN_ANY/CHECK_BTN_ALL
* remove ULTRA_ABS
* fix includes
* update z_player.c/z_lib.c + run format.sh
* merge upstream/master
* fix include in En_Goroiwa
* fix includes
* merge upstream
* Merge upstream
* Add block comment to c
* EnGoroiwa_Init
* Remove casts in EnGoroiwa_Init
* Matched named functions
* Add one prototype
* func_80A4BD04
* func_80A4BCA0
* func_80A4BD70 and fix incompatible pointer
* func_80A4BD8C and func_80A4BE54
* Remove forward declaration
* Order variable by address
* Cleanup warnings
* func_80A4C188
* Remove func_80A4C188 forward declaration
* Progress
* Rename unk_1CE to waypoint
* func_80A4C264
* func_80A4D5E0
* func_80A4C27C
* Separate necessary forward declarations from temporary
* func_80A4BE10
* func_80A4C080
* func_80A4C134 and func_80A4C164
* func_80A4D074
* Work on some (nonmatching)
* func_80A4D944
* func_80A4D9DC
* Progress
* func_80A4DB90 and func_80A4DC00
* func_80A4D8CC
* func_80A4CA50
* func_80A4C6C8
* work on func_80A4CED8
* Work on func_80A4CED8
* func_80A4CED8
* Use temp to avoid unused error
* Clarify comment
* Work on func_80A4C3A4
* func_80A4C3A4
* Clarify comment better
* func_80A4C594
* Angles
* Improve regalloc
* func_80A4BF28
* Cleanup point access
* Work on func_80A4C814
* func_80A4C814
* Use *=
* Work on func_80A4CB78
* Work on func_80A4D0FC
* Work on func_80A4CB78
* More on func_80A4CB78
* Implement dubious permuter suggestion
* Make janky hack less janky
* Update issue comment
* Move ptr func_80A4CB78
* func_80A4CB78
* Cleanup func_80A4CB78
* Various cleanup
* Add undefined sym
* Work on func_80A4D0FC
* Work more on func_80A4D0FC
* Work on func_80A4D624
* func_80A4D0FC
* Work on func_80A4D624
* Fix stack
* Wrap in NON_MATCHING ifdef to remember which function is not done
* Collapse goto
* Use -- for unk_1C4
* Collapse else if
* Add translation for 'Player ぶっ飛ばし'
* func_80A4D624
* Migrate data section
* Clang format
* Actually add unused note
* Name timers accordingly
* Remove & from sInitChain
* Give timer descriptive names
* Rename idleTimer to waitTimer
* Rename to sWaitDurations
* Name effect data
* Add s prefix (oops)
* Move some data into functions
* Rename params for func_80029E8C
* Unify whitespace for bool returns
* Name colliderHeightOffset
* Name duplicate of colliderHeightOffset and clang format everything
* Reorder vector assignments
* Rename params to pathIdx
* Rename temp to yawDiff
* Add 'f's because floating point
* Name a lot of stuff
* Name posDiff
* Nuke the bool
* Remove unnecessary return
Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
* Remove useless forward declarations and use list[0]
* Clang format again
* Use switch statement
* Use hex for normalizing angle
* Use hex because angle
* Small fixes
* Small fixes
* Move function arrays out of function
* Correct colliderItems
* Don't separate static vars from others
* Clang format
Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
* Darkmeiro decompilation
Bg_Gnd_Darkmeiro decompiled, matched, and documented.
* give this a shot
* fix conflict
* one more try
* mori_bigst matched and documented
* forgot the .s files again
* Update src/overlays/actors/ovl_Bg_Mori_Bigst/z_bg_mori_bigst.c
Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
* one .s got away
* more cleanup
* one more thing
* wait for mori tex
* cleanup
* Update z_bg_mori_bigst.c
Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
* Initial progress
* Broken but almost
* Final attempt at the last function
* Fixing struct def
* PR updates
* PR stuff
* baby commit
* PR comments
* Error handling
* Initial work on spot15_rrbox
* Few functions done with OK
* Added destroy function
* Fixed up struct, made actionFunc and completed more functions
* Another function
* Another function
* Another function
* Another function
* Another function
* Another function
* Another function
* Another function
* Another function
* Another function
* Another function
* Another function
* File entirely working
* Replaced padding with better variables
* Replaced more padding
* Ran format script and some other minor layout changes
* Removed assembly files
* Made update function consistent with other base functions
* Renamed variable
* Removed data file
* Updated reloc location in spec
* Removed old reloc file
* Made init chain static
* Minor fixes
* Fixed various minor issues
* More minor cleanup
* Even more minor cleanup
* Minor cleanup
* More minor cleanup
* Minor fix
* Fixed up more variable names
* Apply suggestions from code review
Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
* More cleanup
Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
* Setup player decomp
* Decompile z_player.c and z_player_lib.c
* Decompile remaining z_player.c functions
* Various player improvements
* Player progress (some non matchings and .data migrated)
* Player progress (reposition data and fix some non matchings)
* Cleanup, improve and document parts of z_player_lib.c/z_player.c
* Fix player renames in z_en_st.c
* Fix missing open/close disps in z_player.c
* Minor player fixes
* Address player comments
* Decompile PreRender.c
* use NON_EQUIVALENT and run format.sh
* Get rid of some magic values
* rename dList/dListp to dListHead/dList
* make func_800C213C NON_MATCHING
* replace more values with SCREEN_WIDTH/SCREEN_HEIGHT
* dList/dListHead with gfxp/gfx
* decompile and match En_St
* document ovl_En_St
* Implement OPEN_DISPS, and remove useless comments
* styling updates, inline some declarations
* PR suggestions as well as changing the BlureInit colors to u8 arrays over RGBA types
* remove pointer from EnSt_SetupAction
* rename some structs
* changes
* rename stuff and start a func
* progress
* progress
* progress
* remove unwanted file
* progress
* match last few funcs
* done, i think
* small changes
* match Lights_Draw (thanks krim)
* comments
* cleanup
* most pr suggestions
* name changes
* rename
* Match some and improve nonmatchings
* Remove pads in TransitionFade_Update, no effect towards matching
* Remove pragma comments, ran formatter
* Remove unused asm
* Initial commit of weather_tag actor decomp
* Formatted source files and updated spec.
* Fixed references to the environment context variable that I changed.
* Deleted the last of the asm (forgot the stuff in the data folder)
* Made all requested changes to z_en_weather_tag
* Forgot to change basereg
* Removed unnecessary field in weather tag struct
* Update src/overlays/actors/ovl_En_Weather_Tag/z_en_weather_tag.c
Co-authored-by: Roman971 <32455037+Roman971@users.noreply.github.com>
* That field in the header was totally necessary, not sure what I was thinking, sorry for all the commits
* Renamed what I thought was struct padding to more accurately represent the fact that that field is an unused variable.
* Update src/overlays/actors/ovl_En_Weather_Tag/z_en_weather_tag.h
Co-authored-by: Roman971 <32455037+Roman971@users.noreply.github.com>
Co-authored-by: Roman971 <32455037+Roman971@users.noreply.github.com>
* matched func_809AD700, ElfMsg2_Init
* func_809AD968 done
* func_809AD978 and func_809AD9F4 done
* func_809ADA28 done
* ElfMsg2_Update Done, ElfMsg2_Draw Started
* whole file decomped
* Matching and all symbols defined
* Formatting changes, not currently building
* run format.sh
* fixed typos in comments
* Changes to reflect comments
* C file matching, polish needed
* making parenthesis usage consistent
* Documenting draw function, Vtx and Gfx arrays
* Added japanese translation comments
* line spacing fix
* renaming stuff
* Early return in Draw
* naming updates
* Cleaning up names, comments and formatting after the merge
* comment cleanup
* more cleanup
* More cleanup
* Adding commas at end of arrays so they look nicer :)
* more cleanup
* removing unnecessary parentheses
* comment and code changes
* Name changes
* Renamings
* Removing documentation at top
* match MagicDark_Init
* update struct fields and add THIS comment thanks to Ethan
* match MagicDark_Destroy
* start on func_80B874E4
* move func_80B874E4 to a comment for now
* match MagicDark_Update (again thanks to Ethan)
* comment out func_80B8772C and use macro for ACTIVE_CAM
* various changes
* implement permuter suggestion
* reorder nayru temps to fix stack
* use LINK_IS_CHILD
* match func_80B874E4 a bit more
* initially store msgMode in temp_t2
* add msgMode temp
* comment out func_80B874E4 because regalloc >:(
* comment out func_80B874E4 again
* add unk_90C to Player
* change unk_14F to an array for more explicit padding
* remove partially completed functions
* remove matched functions from asm
* clang format
* subtract SFX_FLAG
* combine unk_14F and unk_150
* func_800A7BE4 and func_800A7C20 done
- func_800A7BE4 copy of "Math_Vec3f_ToVec3s" in z_lib.c
- func_800A7C20 copy of "Math_Vec3s_ToVec3f" in z_lib.c
* done func_800A7A24
* func_800A76A4 done
* func_800A6E10 done
* func_800A6EF4 done
* func_800A6FA0 done
* func_800A72FC done
* Deleted z_skin_matrix.data.s and updated spec
* func_800A730C done
* func_800A735C done
* func_800A7E70 done, func_800A7C60 matching but I'm not happy with it (weird types in function params)
* Corrections. func_800A7C60 in skin_matrix done, Matrix_MtxFToMtx in sys_matrix done.
* func_800A7EC0 nonmatching
* func_800A8030 nonmatching but VERY close (two registers swapped)
* func_800A8030 done
* updating comments
* func_800A7704 done
* func_800A7894 done
* halfway through deciphering mips_to_c for func_800A73E0
* func_800A73E0 functional but non-matching (saved register differences and probably regalloc)
* Renaming some arguments and rewriting comments
* Renamed files across whole project and deleted asm nonmatchings
* ran format.sh
* fixed function name
* fixing multiplcation order in SkinMatrix_MtxFMtxFMult
* Corrections in SkinMatrix_MtxFMtxFMult
* Formatting changes after review
* Changes as per code review
* fixing rename error
* fixing rename error
* rename fixes
* fixing function rename error
* ran ./format.sh
* last couple of changes as per code review
* renamed SetScaling -> SetScale
* Skin_Matrix_Invert -> SkinMatrix_Invert
* Renaming and fixing debug message print
* Renamed argument "mf" to more specific "clear" in SkinMatrix_GetClear
* renamed again to "mfp"
* snake case to camel case changes
* bg_mori_hineri OK
* added description and removed reloc
* made suggested changes from fig
* made suggested changes
* Named a few functions in ovl_Bg_Mori_Hineri
* Bg_Haka_Tubo OK
* Ran formatter
* Review suggestions
* Fix commented field offsets in header
Co-authored-by: Roman971 <32455037+Roman971@users.noreply.github.com>
* Fix other field offset
Co-authored-by: Roman971 <32455037+Roman971@users.noreply.github.com>
* Named data and made static
Co-authored-by: Roman971 <32455037+Roman971@users.noreply.github.com>
* Start decompiling bugs
* Decomp func_80A7BFA0
* Match 4 functions
* Match a few functions, really close on another
* Consolidate if statements
* Progress on func_80A7C86C
* Decompile a few small functions
* func_80A7CEC0 still needs stack and regalloc work
* Finish up func_80A7CEC0, do a couple functions
* Start on func_80A7D460
* func_80A7D460 is mostly down to regalloc
* Match update and draw, more work on func_80A7D460
* func_80A7D460 is really close to matching
* func_80A7D460 matches
* Cleanup
* Run formatter
* Missed reversing a couple flout comparisons
* Apply suggestions from code review
Co-authored-by: Roman971 <32455037+Roman971@users.noreply.github.com>
* PR Comments
* PR Comments #2
* Missed one
Co-authored-by: Roman971 <32455037+Roman971@users.noreply.github.com>
* match ShotSun_Init
* match ShotSun_Destroy
* match func_80BADDCC
* break up unk_19C to add spawnTimer
* ShotSun_Update
* func_80BADE74
* work on func_80BAE05C
* make func_80BAE05C closer
* use proper macros for osSyncPrintf
* format if statement better and add temp player pointer func_80BAE05C
* Reorder spawnPos to match stack args later
* match func_80BAE05C
* almost match func_80BADF0C
* Remove temporary and add parenthesis
* change part of comment and move last unk_1A4 assignment to be similar to decompiler
* Change do while(false) to if (1)
* func_80BADF0C
* change comment
* update spec
* fix vt macro
* cleanup and name
* remove asm
* remove data
* remove extern
Co-authored-by: Random <28494085+Random06457@users.noreply.github.com>
* remove & for function pointers
* rename and retype D_02007020
* format
* remove tiny whitespace
* reorder if statement
* finish renaming
* replace cast with bitwise operation
* move globally used functions to functions.h
* reorder description
* move headers for EnItem00 and EnAObj to z64actor.h
* retype Item_DropCollectible and Item_DropCollectible2 to return EnItem00*
* rename ShotSun_StartFairyCountdown to ShotSun_TriggerFairy
* rename ShotSun_FairyCountdown to ShotSun_SpawnFairy
* add unk_E3EC field to MessageContext
* rename to ShotSun_UpdateHyliaSun for now
* remove != 0 on flag check
* remove unsigned suffix and use enum constant for Item_DropCollectible call
* add unk_95C field to Player
* add ub comment
* retype unk_1A4 and remove explicit struct padding
* Update src/overlays/actors/ovl_Shot_Sun/z_shot_sun.c
Co-authored-by: Roman971 <32455037+Roman971@users.noreply.github.com>
Co-authored-by: Random <28494085+Random06457@users.noreply.github.com>
Co-authored-by: Roman971 <32455037+Roman971@users.noreply.github.com>
* Add cutscene disassembler script
* Add more debug info
* Use addresses instead of already disassembled data, emit array declaration
* Disassemble more cutscene data, fix csdis bug where BGM commands would output too many args
* Fix similar bug for LIGHTING command, fix line ending from previous commit
* Remove CS_PAD
* Update ZAP2
* Disassemble ovl_Demo_Sa cutscene data
* progress
* init ok and merge master
* enheishi1 and srchball OK
* cleanup
* cleanup
* cleanup
* more cleanup
* done
* more comments
* add file headers
* some review comments
* move vectors
* more review comments
* angle in decimal
* add prototype
* semicolon would be good
* fix
* make unset actor ids 0
* reword comment
* no &
* osPfsIsPlug.c and osContSetCh.c OK
* update
* __osPfsGetStatus.c OK
* removed unused asm
* Updated all libultra controller files to use new structs instead of the temporary structs. Added os_pfs.h
* controller updates
* fixed header guard
* Made suggested changes
* guLookAt.c OK
* commit
* __osPfsSelectBank.c OK
* osPfsDeleteFile.c OK
* pfsreadwritefile.c OK
* osPfsFreeBlocks.c OK
* cleaned up ospfsfreeblocks
* started pfsinitpak.c
* pfsallocatefile.c OK
* contpfs.c decompiled with 1 non matching
* osPfsFindFile.c OK
* pfsinitpak.c decompiled. one non-matching
* Actually fixed merge conflict
* sins.c OK
* cosf.c sinf.c and sins.c OK
* moved osAfterPreNMI to its own file. Renamed code_801031F0 to contquery.c
* pfschecker.c OK
* final update and rename
* Removed makefile testing thing that i accidentally added
* Made suggested changes
* Decompile jpegdecoder.c, padsetup.c and code_800C3C20.c
* change func_800C3C20's prototype and rename some fields in jpeg related structs
* Fix comment in Jpeg_GetU16 and change func_800C3C20
* use a switch in padsetup.c
* osPfsIsPlug.c and osContSetCh.c OK
* update
* __osPfsGetStatus.c OK
* removed unused asm
* Updated all libultra controller files to use new structs instead of the temporary structs. Added os_pfs.h
* controller updates
* fixed header guard
* Made suggested changes
* Decompile z_bg_haka_trap.c
* Update spec
delete old .reloc.s file
Co-authored-by: Random <28494085+Random06457@users.noreply.github.com>
* Deleted reloc.s and made style changes to function pointers and local vars
* Renamed timer field, added more useful temp names
* Implemented Roman's suggestions, including moving enum to header file, moving some static variables inside functions, removing unnecessary casts, removing unnecessary temps, and fixing a few style issues
* Commented dual purpose of unk_16A and formatted file again
Co-authored-by: Random <28494085+Random06457@users.noreply.github.com>
* cleanup
* name camera action functions
* decompile a few small functions, name a few Camera struct members
* decompile camera data, decompile a few camera functions
* Split ASM for code_800BB0A0
* removing code_800BB0A0.s
* PR Requests, Camera WIP
* remove #define NON_MATCHING from db_camera
* rename init chains, colchkinfo, colider inits, damage tables
* actor cleanups
* fix collider init script names
* small fixes
* ichain arg name
* change dynapoly types and names
* revert enru1 data name
* and the type
* pr suggestions
* Some progress
* progs
* More
* 1 more
* Init
* Slightly better score on one function
* 1 down!
* some progress
* Prep for PR
* PR suggestions
* OK!
* Formatting
* formatting again
* PR comments
* updating ZAP2
* One non matching left in ovl_End_Title
* ovl_End_Title OK
* formatting
* removed unused asm files
* changed 0xFF to 255
* updated dlist
* made suggested changes
Known files left with pointers in .data after this (possibly the only ones since I checked roughly everything):
- flg_set.c
- z_camera.c
- db_camera.c
- code_800D7CD0.c (ucode_disas.c)
- audio (not sure which ones, see the structure sheet)
* Auto stash before rebase of "upstream/master"
* A large number of scenes have been decompiled.
* Fixed makefile
* Decompiled around 40 scenes.
* Removed old file
Co-authored-by: Jack Walker <7463599+Jack-Walker@users.noreply.github.com>
* Start work on ovl_En_Guest
* Match func_80A5046C and func_80A50518
* Everything but func_80A509D4 matches
* Match last function, cleanup, rename stuff
* Run formatter
* Temp didn't need to be used
* I should have ran the formatter again
* Use tcrf translation for debug string
* Apply suggestions from code review
Co-authored-by: krimtonz <33664508+krimtonz@users.noreply.github.com>
* Rename references to function and fix semicolon
* Apply suggestions from code review
Co-authored-by: Roman971 <32455037+Roman971@users.noreply.github.com>
Co-authored-by: fig02 <fig02srl@gmail.com>
* PR Suggestions
* More comments
Co-authored-by: krimtonz <33664508+krimtonz@users.noreply.github.com>
Co-authored-by: Roman971 <32455037+Roman971@users.noreply.github.com>
Co-authored-by: fig02 <fig02srl@gmail.com>
* Added additional (potentially unused) fields to macros, now builds OK
* Ran formatter, attempted better macro formatting
* Formatted unknown fields as hex, further cleanups
* Rename and prefix macros, use command base macros, format cutscenes with indents
* Move command macros into a new file and include it globally
* Generate cutscene command macros for Bg_Toki_Swd, Cleanups
* Rename CS_TEXTBOX commands to CS_TEXT, fix typo ic command_macros_base.h
* Introduce CS_CMD_CONTINUE and CS_CMD_STOP
* Remove apparently redundant arguments in certain commands, include the values in the macros directly
* Re-add cutscene terminator destination enum values to example cutscene data
* Format what should be floats as hex, Change actorAnim to actorAction
* Allow floating-point representation of values in cutscene data (asm-processor hack)
* Include cutscene commands only where necessary, documentation fixes
* Rename actor actions to npc actions, separate player action from npc actions
* Remove PlayerActionIDs for now as relevant information on it is not yet decompiled
* Generate cutscene data for en_ru1, remove apparent redundancies in CS_LIGHTING and CS_PLAY/STOP/FADE_BGM commands, relax static requirement in asm-processor CutsceneData float conversion
* Progress on z_player_lib, Named fields in Player struct
* More functions decompiled
* Matched another function
* A few more functions
* Ran formatter
* Rename some variables and add comments where appropriate, change types of unknowns
* Create PlayerActionFunc type
* Fix uncaught syntax error and issues from effects merge
* Rename invincible to invincibilityTimer, refactor long comments in Player struct
* Properly rename all occurences of invincibilityTimer
* decompile z_fcurve_skelanime and code_8006C510
* format
* Decomp Magic_Wind
* PR Updates
* add space between ActorFunc and MagicWindFunc
* missing pr updates