* Object_hakach_objects OK and fix a warning in z_play.c
* Object Warp1 OK
* Object_spot16_obj OK
* object_cs Skeleton and limbs OK
* Limbs are broken
* Limbs OK
* Object_CS OK
* Object_jya_door OK
* fix errors and add new lines
* PR fixes (AngheloAlf)
* PR fixes (EllipticEllipsis)
* PR fixes (Fig)
* Rename Spot16 and Jya
* GraveYard -> Graveyard
* PR fixes
* -s
* PR fixes
* Mostly done but shifted
* still messed up
* Almost OK
* OBJECT_JYA_OBJ OK, OBJECT_GR OK
* Done
* Merge master and format
* Cleanup
* Cleanup 2
* Start object MB dont merge yet
* Object_MB OK
* Object_ydan_objects OK
* General 'ydan' actor cleanup
* Forgot some small things
* Object_EC OK
* add .gitkeep and run format
* Object_sd OK but no textures cause of a zap issue
* PR fixes
* Fix object_sd
* fix ydan
* delete .gitkeep files
* OBJECT_BOX as far as it can go with current ZAP
* Fix undefined_syms
* Start child link object
* Push progress, dont merge yet
* Object_mori_objects OK
* Fixed?
* Fix conflicts again
* Seems like i missed some textures
* Extract data for BgBombwall
* More field
* ZAP YEP 2.0
* Object_Box OK
* Object_SD ok. Ready to merge
* remove ASM and merge master
* remove ASM
* remove files wrongfully added to docs/
* Almost done
* Change comment in z_player_lib.c
* forgot some DLists in player_lib.c
* Fix conflict, run format
* Same as before but this time with Tex and TLUT
* Last few things
* fix object_GR and add limbs to object_sd
* Nane -> Name
* gChildDekuShieldMtx is now a matrix and not a blob
* PR fixes (Fig)
* add a space for comment in z_player_lib.c
* re push and new lines
* PR fixes (AngheloAlf)
* PR fixes (Roman)
* Fix Heishi2
* PR fixes (Fig)
* Replace spacing in a file
* PR fixes (Roman)
* Improve z_jpeg documentation
* JpegWork::data is probably better than address
* Rename Jpeg_SendTask to Jpeg_ScheduleDecoderTask
* Rename njpegUCode to gJpegUCode
* Rename GetU16 to GetUnalignedU16 and improve docs
* ViMode OK
* Fix variable name in regconvert tool
* ViMode: fix formatting
* Add nonmatching impl for ViMode_Configure, respond to PR
- Fixed struct field naming (unkXX -> unk_XX)
- ViMode_Configure args are not flags for top/left etc; seem to be for
video mode
- Used @Random06457's implementation of `ViMode_LogPrint`
* Use plain LOG_ADDRESS in ViMode_LogPrint
* Incorporate PR feedback from Roman971
* Decompile ovl_kaleido_scope + minor cleanups
* Add a common header for ovl_kaleido_scope
* Start cleaning up and documenting kaleido_scope (+ some interface docs)
* Improve and fix some kaleido_scope non matchings
* Match KaleidoSetup_Init
* Extract icon_item_fra/ger_static files
* Add more documentation and matches to kaleido_scope
* Improve the z_kaleido_collect.c non matching
* Rename z_kaleido_8081EFF0.c to z_kaleido_prompt.c
* Update most kaleido variables to be static
* Improve GS flag macros
* Improve z_lmap_mark.c and extract z_lmap_mark_data.c with a script
* Various minor fixes and improvements
* Minor fixes and review changes
* Review changes part 2
* Rename gSetTileCustom to gDPSetTileCustom
* Review changes part 3
* 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
* Gameplay_Init ok
* add (void)0 to prevent warnings in gameplay_init
* update nigthflag
* .
* remove tools/ZAP2 from origin master
* made suggested change
* made sgugested changes
* z_lifemeter cleanup finished, one non-matching
* made Health_UpdateData a bit better, nowhere near matching still
* lifemeter done for now
* fixed define issue
* improve z_lifemeter, still doesn't match
* z_lifemeter done
* Rename functions
* Add files via upload
* Update Health_Update.s
* fix missing symbols in asm file
* Update Health_Update.s
* Update Health_Update.s
* fixed stuff
* Add files via upload
* Delete Health_Update.s
* Rename things according to Roman's suggestions
* lifemeter done hopefully
* fix unused asm that for some reason didn't merge
* fix feedback
* compiles right now
Co-authored-by: Zelllll <elijah@DESKTOP-NMP1I89.localdomain>
* beginning of migrating changes
* got matching
* changed order a bit
* clean up bgcheck
* fix conflict
* fix conflict again
* first stab at identifying types, some oks
* Clean up most bad structs/pointer math, move relevant structs to z64bgcheck.h, get some OKs
* more OKs, z_bgcheck.bss migration, update some sys_math3d.c args
* couple more OKs
* pushing some OKs
* fix compilation issues
* code_800430A0.c OK, more files decomp'd
* 8003A3E0 big OK :)
* Decomp most of func_8003C614, decomp helper funcs
* Decomp SurfaceType, CamData, and WaterBox property related functions
* more OKs, big OK in 8003C078
* more OKs, more progress, move a function definition in z_collision_check to functions.h
* more clean-ups, more OKs, dyn_vtx is now defined as u8*
* 8003A5B8, 8003A7D8, 8003C614, 8003DD6C OK, document function args better
* data migrated, more OKs
* 80041240 OK, func_8003B3C8 and func_8003BB18 disassembled
* func_80040284, 800409A8 non_matching, add IS_ZERO macro
* All asm files have C representations, some big OKs, lots of minor tweaks
* More OKs, non-matching code cleanup
* 8003FBF4 and 80040BE4 OK, improve codegen for most functions
* format z_bgcheck.c
* fix warnings, compile errors on NON_MATCHING
* func_8003EE80 is now NON_MATCHING
* begin documenting some functions
* formatting
* more documentation, func_8003A95C OK
* fix PHYSICAL_TO_VIRTUAL changes
* fix var rename
* More documentation, functions 80040E40, 80041648 OK, change types to not be compatible with ZAP
* func_8004239C ok, more NON_MATCHING improvements, more documentation
* Implement most suggested changes
* Convert comments to slower comments
* /**
* Implement ZAP2 changes
* my anti-virus ate my format.sh results
* Rename a couple hundred functions, fix minor stuff
* rename var so that clang formats correctly
* run format.sh
* implement Petrie's matches/suggestions
* format
* matches
* and the asm
* slight error
* Add SSList
* two more matches
* stuff
* implement code changes
* clean up Petrie's matchings
Co-authored-by: Arthur <arthurtilly413@gmail.com>
Co-authored-by: fig02 <fig02srl@gmail.com>
Co-authored-by: petrie911 <pmontag@DESKTOP-LG8A167.localdomain>
* EnTite_Update matching
* Fixes to update
* made good progress, func_80B1A2A0 is in a good place to be matching soon
* Merge stuff
* func_80B19E94 done, func_80B18CC4 done
* EnTite_Destroy and EnTite_Init done
* Commenting out sDamageTable and EnTite_Init until all the data matches
* Some more small functions done
* more progress
* func_80B19918 done
* func_80B18E7C done
* func_80B19524 done
* more progress
* EnTite_Draw equiv but nonmatching, file otherwise done
* Found some unstaged changed on old laptop
* Draw matching: File fully matching!
* Documentation
* finished documentation
* deleted data files
* update spec
* fixed waterY -> yDistToWater rename after merge
* ran format.sh
* fixing accidental renames in camera
* Fixed some obvious number/comment formatting issues
* Removed unecessary prototypes
* merge
* running format.sh
* suggestions
* more pr comment changes
* format to push
* one more change
* more renames (see pr comments)
* merge
* renames
* format.sh
* fix renames
* function comment formatting
* merge + format
* endless merge fixes
* merge fixes until die
* yet again a merge fix
* pr 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
* more names
* so many names
* we got subsystems now
* slight cleanup
* merge part 2
* new naming scheme
* slight adjustment
* no limit
* syms maybe
* step one
* OK, it's fixed
* table
* some names and such
* comments**
* update zap
* gitkeep to please jenkins
* ZAP
* fixer
* fixer2
* fixer3
* zap
Co-authored-by: petrie911 <pmontag@DESKTOP-LG8A167.localdomain>
Co-authored-by: fig <fig02srl@gmail.com>
* 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>
* 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
* Fix some non matchings in actors and parameter
- `EnTuboTrap_HandleImpact` from `z_en_tubo_trap.c` (fully matching)
- `func_80ADA35C` from `z_en_po_sisters.c` (fully matching)
- `func_80B0B81C` from `z_en_stream.c` (fully matching)
- `Item_Give` from `z_parameter.c` (1 non matching left)
* Rectify bss ordering comment
* 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
* now with more symbols
* 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>
* All functions decompiled, most named
* asm deleted, spec and undefined_syms included
* missed a static
* Some cleanup on comments and osSyncPrintfs
* asm
Co-authored-by: fig02 <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
* ZAP2 stuff
* ZAP why
* ZAP again
* new matches
* format
* again
* Update src/overlays/actors/ovl_En_Door/z_en_door.c
* Update src/overlays/actors/ovl_En_Mb/z_en_mb.c
Co-authored-by: Roman971 <32455037+Roman971@users.noreply.github.com>
Co-authored-by: Roman971 <32455037+Roman971@users.noreply.github.com>
* started nabooru
* more work on nabooru
* did more
* file name
* almost done with z_en_nb
* did some more
* most of en_nb decomp
* data migrated en_nb
* did more
* almost finished
* started some documentation on ovl_en_nb
* did more documentation on en_nb
* did some more
* one non matching in en_nb
* ran format.sh
* update
* updated undefined_syms
* updated descriptions
* use DISP macros, delete japanese files. NABOORU IS 100% MATCHING POGGERS
* made suggested changes and removed reloc file
* Made some suggetsed changes
* Made some updates
* review 3
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
* 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>
* 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
* first match
* more matching
* 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
* anohter match
* .s
* 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
* 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
* 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
* 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>
* 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
* 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>
* 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
* Split files
* Format rodata
* Some more code rodata migrated
* Some more actor rodata migrated
* Migrate rodata for ovl_Boss_Ganon
* Migrate rodata for code_800EC960
* Remove unused rodata
* x1b occurences all lowercase b
* 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>
* 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
* 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
* Scene Header Command 0x0B is now OK
* Delete func_8009899C.s
* Updates assert check on func_8009899C
Per Roman's suggestion of placing the __assert outside of the if (1)
* Updates func_8009899C to have array access rather than pointer math
* Removes deprecated comment in func_8009899C
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>
* 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
- `z_effect`: Matched and essentially all documented.
- `z_eff_spark.c`: Decompiled (1 non matching left) and mostly documented.
- `z_eff_shield_particle.c`: Matched and mostly documented.
- `z_eff_blure.c`: Decompiled (5 non matchings left) and partially documented.
- `z_effect_soft_sprite.c`: Matched and mostly documented.
- `z_eff_ss_dead.c`: Matched but not documented.
- `z_effect_soft_sprite_dlftbls.c`: "Matched" (only data, contains the effect ss overlay table).
- `z_effect_soft_sprite_old_init.c`: Not decompiled, but functions are categorized by effect ss overlay. And they should be decompiled at the same time as their corresponding effect ss in the future.
Other changes:
- Added a lot of types/enums to `z64effect.h`and moved+renamed some structs from `z64.h` to this header
- Added effect ss overlay segments to `segment_symbols.h` and effect ss init vars to `initvars.h`
- Added a macro called `VTX_T` to generate a `Vtx_t` in the same style as `VTX`
- Fixed `flg_set.c` .bss to be in the right file
- Removed `tools/overlayhelpers/batchdisasm` since it's no longer relevant
- Removed unused leftover asm from recent PRs
* Decompile code_800FD970
* Comment cleanups, ensure formatter won't cause a matching issue later
* Make code_800FD970 variables static and rename
* Delete data and bss asm files
* Decompile speed_meter.c and add VIEWPORT_INIT macro
- speed_meter.c: OK
- Add VIEWPORT_INIT(viewport, by, rx, ty, lx) macro
* get rid of some magic numbers
* use early return instead of a big if block in SpeedMeter_DrawTimeEntries
* Decompile most of AudioMgr
* Decompile most of audioMgr
* Decompile audioMgr
* Remove commented out rodata from spec
* Small cleanup
* Last function OK, renamed functions and removed asm
* Remove sched.h and audiomgr.h and include contents in z64.h
* Un-comment prototypes in functions.h
Co-authored-by: Roman971 <32455037+Roman971@users.noreply.github.com>
* Remove prototypes from audioMgr.c
Co-authored-by: Roman971 <32455037+Roman971@users.noreply.github.com>
Co-authored-by: Roman971 <32455037+Roman971@users.noreply.github.com>
* started
* did more work
* did some more
* Update
* Merged master
* EnHeishi2_Update OK
* func_80A549E8 OK
* func_80A54954 OK
* EnHeishi2_Draw OK
* Removed unused asm
* func_80A543A0 OK
* func_80A53638 OK. Fixed type of func_8008F08C
* done for rn, will work on it later
* func_80A53850 OK
* func_80A53F30 OK
* func_80A53D0C OK
* Made cylinderInit in En_Ma3 static
* Made suggested changes. Removed return from functions by adding else
* Made suggested changes. Removed a.out file that accidentally got added
* Made suggested changes
* moved #include <vt.h> from header to c file
* fixed formatting
* added line break
* Made suggested changes
* ran format
* Fixed unk_2F2
* Decompile z_oceff_wipe
- z_oceff_wipe: OK
- z_oceff_wipe2: OK
- z_oceff_wipe3: OK
- z_oceff_wipe4: OK
- Add patched libmalloc to ido 7 to prevent segfaults
- Add CUR_CAM macro
* Rename CUR_CAM to ACTIVE_CAM
* Fixes in PR #122
* Fix naming and structs in z_en_item00.c and z_en_a_keep.c
* Decompile init vars in z_en_item00.c and z_en_a_keep.c
* Create missing .h files for the last few actors
* Fix some collider member names in actor structs
* Fix old actors not properly using "actionFunc" / "SetupAction"
* Remove some local temporary actor structs
* Fix some actor header includes to be absolute instead of relative
* Decompile fbdemo (transition) files
* run format.sh
* reformat vtx array, fill in a couple unk
* match TransitionTriforce_IsDone
* add VTX macro, add DW_ wrapping around triangle macros
* use new VTX macro, name graphic assets
* Naming updates
* pr updates
* naming updates
* remove symbols for COLOR_BUFFER, D_08000000, and D_09000000
* rename Matrix_TranslateThenRotateZYX to Matrix_RotateRPYf
* rename Matrix_RotateRPYf to Matrix_JointPosition
* rename Matrix_RotateZYX to Matrix_RotateRPY
* func_8005B280 ok
* func_8005B65C OK
* split out func_8005BD50
* func_8005B7C0 OK
* func_8005B7F4 OK
* func_8005B824 OK
* func_8005B860 ok
* improve sanity
* func_8005B6B0 ok, ColliderInit_Actor structs added
* func_8005B884 ok
* func_8005BBF8 ok, split out func_8005BF50
* split more stuff out of func_8005C050.s
* func_8005C050 OK
* func_8005BA30 fakish OK, func_8005BAD8 real OK
* func_8005BB48 OK, func_8005BA84 almost decomp'd, but type issues
* func_8005BB10 Ok
* func_8005BF50 OK
* func_8005BE50 OK
* func_8005BD50 OK
* func_8005BCC8 Ok
* func_8005BC28
* func_8005BB8C func_8005BBB0 func_8005BBD4 Ok
* save my work commit
* func_8005C2BC fake OK
* func_8005C5B0 ok
* func_8005C608 ok
* func_8005C6C0 ok
* func_8005C6F8 ok
* func_8005C730 ok
* func_8005C774 func_8005C798 func_8005C7BC OK
* func_8005C7E0 ok, func_8005C810 split
* func_8005C810 OK
* func_8005C8C8 ok
* func_8005C964 OK
* func_8005CA88 ok
* func_8005CBAC ok
* func_8005C124 func_8005C1AC func_8005C234 func_8005CC98 OK
* func_8005CD34 func_8005CDD0 Ok
* func_8005CE6C ok
* func_8005CEC4 ok
* func_8005CEDC ok
* func_8005CF90 Ok
* standardize type names/vars more
* func_8005D3BC ok
* func_8005D40C OK, z64.h CollisionCheckContext
* func_8005D4B4 func_8005D4C8 ok
* partial data section migration
* improve function documentation, OT->OC
* Actor_CollisionCheck_SetOC ok
* Actor_CollisionCheck_SetAT Actor_CollisionCheck_SetAC Ok
* func_8005BA84 ok
* func_800611A0 ok
* func_80061274 ok
* clean up func_80061274
* func_8006139C ok
* func_8005E9C0 and dependencies OK
* minor cleanup to func_8005E9C0
* func_8005EC6C OK!
* func_8005E81C ok
* func_8005E604 ok
* func_8005E2EC func_8005E4F8 OK
* func_8005DE9C OK func_8005D8AC disassembled
* func_8006146C func_8006268C ok
* func_8005EEE0 ok
* func_8005F17C
* func_8005F39C ok
* func_8005F5B0 decompiled, not matching
* func_8005F7D0 decomp, func_8005D218 and func_8005D324 OK
* func_8005FA30 ok, split more functions
* func_8005FC04 ok
* func_8005FDCC k
* func_8005FF90 OK OK OK
* func_80060204 dead
* func_800604B0 ok
* func_80060704 func_80060994 ok, func_80060C2C somewhat disassembled. AT to AC matrix doneish
* func_800635D0 ok, func_80062ECC not so much
* OcLine oks
* D_8011DF28 functions disassembled
* D_8011DF5C functions OK
* setAT_SAC. setAC_SAC, setOC_SAC OK
* func_80061C98 decompiled, func_80061BF4, func_80061C18 OK
* func_800617D4 ok, func_800614A4 disassembled
* CollisionCheck_OC D_8011DFAC functions OK
* func_80062530 ok
* CollisionCheck_generalLineOcCheck subfunctions OK
* func_800622E4 ok
* after a long fought battle, func_80061F64 has fallen.
* func_800628A4 disassembled
* func_800627A0 func_8006285C OK
* ActorCollider_Cylinder_Update, func_80062718, func_80062734 ok
* func_80062CD4 decompiled, import EffShield/EffSpark types from MM
* various SubActor98 struct functions OK
* func_8005D4DC func_8005D62C ok
* .data section migrated, more OKs, fix NON_MATCHINGs to use effect structs
* func_80060C2C ok
* minor code tweaks
* func_80061C98 ok somehow
* Attempt to fix some unknowns, move types out of z64actor, add set3 ColliderInit types
* Apply changes
* formatting
* tweak a couple function names
* krim changes, func naming
* missed some things
* function renames
* Implement GenColliderInit.py utility
* Implement pr changes, GenColliderInit.py, DamageTable.py, z_collision_btltbls.c fully matching
* func_800614A4 ok
* Implement Roman's fixes, name Collider unknowns, rename COLTYPE -> COLSHAPE and define new COLTYPE
* collisionCheckCtx -> colChkCtx, fix small things
* Match func_800AA000
* Match z_camera/func_800437F0
* Decompile code_800D2E30, use struct in 800A9F30
* Format
* Remove 'U' from literals
* Remove bss, cleanup z_camera
* Review changes, rename temp
* Move externs to variables.h
* osgetactivequeue ok
* osspdevicebusy ok
* osGetCurrFaultedThread ok
* osSpRawStartDma OK
* __osSpSetPc and osViGetCurrentFramebuffer OK
* sinf, sins, and sptask OK
* coss OK
* cosf OK
* ran format.sh
* Updated PR to use ultratypes
* osContStartQuery OK
* ran format.sh
* Updated PR to fix issues
* Made suggested changes
* Decompile z_play.c and Match/Document some of z_view.c
Also fix the last non matching in z_sample.c and update some game state functions.
* Suggestions from PR #74
* Fix undefined reference to Gameplay_DrawOverlay
* Suggestion from PR #74 (2)
* Fix a fake argument in func_800BC450
* Decompile jpegutils.c
jpegutils.c : OK
* Fix a typo
* Fixes in PR #75
- Fix a type in JpegWork
- Remove clang-format off/on in z_quake.c
- Move the jpegutils rule at the end of makefile
* Started doing cleanup
* did more work
* did more migration
* migrated more rodata and worked on some structs
* did more work
* Removal of ROOM field from initvars, some rodata migration, some string decompilation
* General update
* Decompiled vt strings
* Tool work
* Tool improvements
* 270 overlay rodata files remaining
* better float handling
* floats
* Many more floats
* migrated boss_mo
* assorted fixes
* Migrated 10
* tool improvements
* migrated 10
* 10 more
* 1 more
* did a few more
* fixes
* 10 more
* more floats
* Did some more, updated migrate-rodata.py to 'modify' the C file after processing in order to make to compiler process it as if it was changed.
* removed changes made to script by accident
* migrated largest rodata - ovl_fishing
* Did some more
* 114 remaining
* 99 left !
* almost done migrating rodata
* did some more, done for tonight
* almost done, tried add support to the script for z_player
* All possible rodata migrated in actor overlays
* update
* removed static from all overlays, ran format.sh
* Removed unknown actor structs
* converted a few floats
* Added new lines to header files that were missing them. Removed unused asm files
* Removed unused asm files
* Formatting newlines
Further formatting
spacing
.float spacing
More space formatting
More spacing formatting
Removing .balign 4 after floats
Co-authored-by: Ethan Roseman <ethteck@gmail.com>
* In process of moving changes over from old repo
* Merged in changes
* Finished import of padmgr changes from old repo
* Adjusted some volatile
* Improving padmgr volatile situation
* Almost matched osReadMempak
* Working on osMempakDataCRC
* Explanations and equivalents but no matches for osMempakAddrCRC and osMempakDataCRC
* OK after merge
* Matched osMempakAddrCRC and osMempakDataCRC
* Matched osReadMempak
* Updated PadMgr function names to be less like original code
* Changed variable names to make them further from original code
* Changed names and it stopped matching
* Undid clang-format steamrollering whitespace memes
* Cleaned up Input names
* More formatting changes
* Moved padmgr to z64.h, deleted padmgr.h
* Decompile z_jpeg.c
- Decompile z_jpeg.c
- Move .bss variables from fault.c and fault_drawer.c into .s files to avoid bss reordering
* Rename JPEGWork to JpegWork and minor fix in Jpeg_GetU16
- Rename "sGraph_UpdateTime" to "sGraphUpdateTime"
- Rename "Graph_Ct"/"Graph_Dt" to "Graph_Init"/"Graph_Destroy"
- Change the LOG_STRING macro
- Rename "LOG_VALUE" to "LOG_NUM"
- Fix brace style
- Rename "UcodeInfo"/"UcodeDisas" to "UCodeInfo"/"UCodeDisas"
- Fix field names in "UCodeDisas"
- Fix typo in "GraphicsContext"
- Change the size of unknown fields in "GraphicsContext" to hex
- Rename "game_init_func" to "gameStateInitFunc"
- Matched all remaining functions in `__osMalloc.c`, 2 functions in `code_8007BF90.c`, 1 in `code_800A9F30.c`, 2 in `fault.c`, 1 in `fault_drawer.c`, 1 in `gfxprint.c`, 2 in `z_camera.c`
- Improved most other remaining non matchings to ensure they are actually equivalent and to get them closer to matching
- Added a `alloc.h` header file in the process of working on `fault.c` non matchings
- Decompiled `padmgr.c` data/bss in order to improve padmgr non matchings
- Removed unused `z_en_wallmas.c` data files
- Moved functions confirmed to be in `z_cheap_proc.c` to their own file with that name