* 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>
* 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
* 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>
* 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
* Re upload
* Decomp BgJyaLift
* Fixed issues
Fixed issues from review
* Edits after review
* Review Fixes
Made some fixes and also changed an unknown variable name
* Fixes to file
Fixed some styling things and renamed the last function
* Added fixes
Added roman's fixes
* Delete filemap.pyc
* Fixes
Removed ctx.c and replaced tabs with spaces spec.
* 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>
* fix hard-coded pointers in code_800DACC0.data.s
* fix hard coded pointer in code_800E11F0.data.s
* fix hard coded pointers in code_800EC960.data.s
* remove fixed pointers in code_800F7260.data.s
* fix hard coded pointers in code_800F9280.data.s
* remove accidental comment
* fix hard coded jump table in Camera_Unique9.s
* 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)
* 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>
- `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
* 1 function left
* 1 function left
* en_fu OK, still need to document
* en_fu OK
* spec comment
* remove asm files
* clang and final fixes
* fix floormas formatting things
* pr suggestions
* pr suggestions 2
* 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
* almost done with heishi3
* heishi3 ok
* Added function names to heishi3
* EnHeishi3 OK
* Made some suggested changes. Still have questions about others
* Made suggsted changes
* fixed formatting
* fixed formatting
* 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