Commit Graph

137 Commits

Author SHA1 Message Date
Derek Hensley 631225a626
Ovl_Obj_HsStump Ok but one function does not match (#156)
* Everything matches but func_80BDABCC

* Better names, still stuck on func_80BDABCC

* Some cleanup

* Add param macros and document not matching

* format

* PR suggestions

* Bring over data to c file

* Retry Jenkins

* Retry Jenkins take 2

* PR suggestions for comments

* PR comments
2021-06-02 18:57:19 -04:00
Derek Hensley fb84cabd4a
Ovl_En_Toto OK (#163)
* Lots of progress

* OK

* Removed casts

* Run format.sh

* cleanup

* More cleanup

* Minor Doc

* More cleanup

* Format

* Add header description

* PR comments

* Convert raw pointers

* Update to new gSaveContext

* PR suggestions
2021-06-02 18:33:16 -04:00
Derek Hensley 7d476f7c71
Ovl_Dm_Nb OK (#162)
* match but func_80C1DF18

* Everything matches

* Add comment about unknown pointer

* Rename vars

* Update comment

* format

* Added header description

* Remove raw pointer

* Remove unnecessary foward declarations

* Update include/functions.h

Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com>

Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com>
2021-06-02 17:04:04 -04:00
Zelllll 6c86016603
partially finish `code_0x8012EC80`, document all of gSaveContext (#138)
* not ok, why?

* OK!

* fix data

* finish data etc

* work on save context

* save finished

* first func done

* roomInf

* done for now

* add missing file

* add most og names for struct members

* fix accidental change

* Update z_en_ginko_man.c

* Update z_scene.c

* maybe fix stuff hopefully

* proto

* sasa

* Update include/z64save.h

Co-authored-by: Anghelo Carvajal <anghelo.carvajal.14@sansano.usm.cl>

* Update z64save.h

Co-authored-by: Anghelo Carvajal <anghelo.carvajal.14@sansano.usm.cl>
2021-05-25 18:49:11 -04:00
engineer124 cf3eb3b2e1
Ovl_En_Fg OK (#133)
* En_Fg Frogs 9/18 decompiled

* En_Fg Frogs One Non-Matching

* documentation and cleanup

* final matched function

* code_script

* whitespace

* Fixed some mistakes, EnFg_UpdateDust no longer matches?

* fixed nonmatching

* Minor fixes and documentation

* PR suggestions

* Fixed genericHeader rename to common

* Fix Warnings

* PR Good Documentation Suggestions

* update names

* more pr suggestions

Co-authored-by: Jared Collette <jcollette@4000v-udp25-l.eng.unimelb.edu.au>
Co-authored-by: engineer124 <engineer124enginer124@gmail.com>
2021-05-22 11:36:21 -04:00
Zach Banks 458dd13141
ovl_Bg_Ladder: OK (Wooden Ladder) (#135)
* ovl_Bg_Ladder: OK (Wooden Ladder)

* Change sLadderDLists type; add comment about thisx

* Add macros for BgLadder params; rename object symbols
2021-05-20 18:06:00 -04:00
Zach Banks 43ccf66c48
ovl_En_Torch2 OK (Elegy of Emptiness Shell) (#130)
* ovl_En_Torch2 OK (Elegy of Emptiness Statue)

* Identify dlists; address PR comments

* Rename object segment symbols
2021-05-19 20:58:32 -04:00
Derek Hensley 5e7e5a1d9f
Ovl_Obj_Tokei_Step OK (#122)
* Everything matches but func_80AD6508

* Changed func_80AD6508 to non_matching

* Some cleanup

* Everything matches

* Finished cleanup and documentation

* Updated BgMeshHeader to Collision Header

* Add newline

* Update functions.txt

* Better function names

* format

* Better naming
2021-05-19 20:24:33 -04:00
Zach Banks ad9c5565ee
z_view matching (#134) 2021-05-19 17:01:22 -04:00
Anghelo Carvajal 4d6d9c27a4
code_0x8017FEB0 OK (#137)
* almost every function

* atans ok

* import data and rodata

* format `atan_first_8th_array`

* fix signature and rodata

* rename to angle

* Rename the functions to match their OoT counterparts

* rename code_0x8017FEB0 to sys_math_atan
2021-05-18 22:58:30 -04:00
Derek Hensley 4279f12414
Ovl Bg_Ctower_Gear OK (#123)
* BgCtowerGear OK

* Added description header

* Updated functions.txt

* Added MACRO to get type

* Renamed init chains to match tyype

* Added one more use of Macro, and addressed PR comment

* Fixed data copy error and better naming
2021-05-13 22:15:06 -04:00
Zach Banks 23d63852de
Use decompiled overlays when building ROM (#121)
* Restore padding in ObjVisiblock struct

* Copy overlays out of compiled `code.elf` to put into the ROM

This is just a "tempory fix"

It seems like the built code/assets in `code.elf` should not be copied
into `build/baserom/...` (over the original ROM's files) but instead
into a `build/decomp/...` tree or similar.

`dmadata_table.txt` would also need to be updated to read from the
correct location.

* Use dmadata_table.txt to generate build rules

`makerom_files.txt` & `makerom_uncompressed_files.txt` contained a lot
of the same data in `dmadata_table.txt`, so I added a small python
script to generate this information into `build/`

Segments are no longer dumped out of `code.elf` into `build/baserom/``,
instead they are put in `build/binary/`.

`linker_scripts/dmadata_script.txt` was checked in, but generated by
`dmadata.py`. I deleted it / moved it to `build/dmadata_script.txt.pre`.

I also introduced some sentinel files (`dep`). I ended up needing these
to make incremental builds work smoothly? (Without them, there were a
lot of steps that were getting re-triggered on every build.) If this
style isn't welcome, I can try to fiddle with the Makefile more to try
to avoid having them?

* Restore padding in BgLbfshot struct

* Touch sentinel file before command; rm on failure

* Restore padding in ObjKepnKoya struct

* Ensure asm/ directories exist before disasm steps

* Clean up Makefile rules

* Set default goal; silent objcopy; fix code_script path

* Fix ovl_En_Ginko_Man, ovl_Obj_Lightswitch merge

ovl_En_Encount2 still needs work to bring back to matching

* Fix ovl_En_Encount2 merge
2021-05-10 18:24:59 -04:00
Isghj 024ba29706
EnEncount2 (Majora Baloon in Bomber's Hideout) (#108)
* EnEncount2: start

* EnEncount2: got some easy functions down, but now I have a really weird unk struct

* EnEncount2: draw function nowhere close

* EnEncount2: cleaning/docs

* EnEncount2: removed bad function attempt

* EnEncount2: function name change to match mster changes

* EnEncount2: corrected old BgMeshheader to CollisionHeader

* EnEncount2: requested changes

* EnEncount2: forgot to add these requested changes

* EnEncount2: requested changes

Co-authored-by: isghj8 <isghj8@gmail.com>
2021-05-09 22:20:53 -04:00
Isghj fec0c38768
En_Ginko_Man (Bank Teller) (#118)
* EnGinkoMan: init

* EnGinkoMan: more matches

* EnGinkoMan: that's closer at least

* EnGinkoMan: better control flow at least...

* EnGinkoMan: docs

* EnGinkoMan: more docs

* EnGinkoMan: more docs 2

* EnGinkoMan: cleaning

* EnGinkoMan: missed something in savecontext

* EnGinko: requested changes and further docs

Co-authored-by: isghj8 <isghj8@gmail.com>
2021-05-09 22:20:47 -04:00
Isghj d98e9dfb01
Obj_Lightswitch (Sunswitch and Stonetower Temple flip switch) (#107)
* ObjLightswitch: fast

* ObjLightswitch: data migrated, except collider init is broke

* ObjLightswitch: nvm, collider documented

* ObjLightswitch: OK with 3 non-equiv, docs starting

* ObjLightswitch: more docs

* ObjLightswitch: some requested changes

* ObjLightswitch: requested changes

Co-authored-by: isghj8 <isghj8@gmail.com>
2021-05-09 22:18:57 -04:00
Zelllll 874a75f456
Scene Changes (#114)
* match function

* major cleanups

* rename switch functions

* use graph_alloc to fix fake matches

* more documentation

* more matches, lots of changes

* lots more work

* format

* Update z_scene_proc.c

* very hard lagrange interpolation function OK!

* remove any remaining

* documentation done, only two functions left

* a few more things

* one function left!

* document another oot leftover

* last function decompiled, not matched yet

* scene_proc complete

* start work on z_scene

* done with z_scene

* remove unessecary typedefs

* fix some things to remove warnings

* Add z_scene_table and decomp data

* Delete ctx.c

* add draw cfg enum

* cleanup

* most scene table functions done

* done for now

* all scene files done

* Update include/z64scene.h

Co-authored-by: Anghelo Carvajal <anghelo.carvajal.14@sansano.usm.cl>

* add missing macros

* fix some renames

* scene texture file rename

* added temporary structs so it still builds

* more structs

* even more old structs

* fix boyo

* should fix compile error

* lets hope nothing broke

* ub comment back

Co-authored-by: Anghelo Carvajal <anghelo.carvajal.14@sansano.usm.cl>
2021-05-09 22:12:42 -04:00
Derek Hensley e39141fb3d
Ovl en nutsball OK (#115)
* EnNutsball Match but one function with sp issues

* Updated ActorPlayer

* Renamed unk144 to timer and added data as comment

* Got update matched but stack issues with two vars

* add back new line

* Fixed stack issue based on PR comments. Added data

* more descriptive variable names

* Use OPEN_DISPS/CLOSE_DISPS macros in draw

* Address PR comments
2021-05-04 23:10:59 -04:00
Zach Banks fcc87b3ae2
ovl_Dm_Ravine (Link Riding Through Lost Woods Cutscene - Tree Trunk) (#120)
* ovl_Dm_Ravine OK (Link Riding Through Lost Woods Cutscene - Tree Trunk)

* ovl_Dm_Ravine: respond to PR comments

* Rename/retype DmRavine_Action -> DmRavine_DoNothing

* ovl_Dm_Ravine: incorporate PR feedback from kyleburnette

* ovl_Dm_Ravine: rename fields; use enum for state
2021-05-04 22:58:47 -04:00
Parker Burnett d61d236a04
En_jc_mato matching (#119)
* starting actor

* close to being done

* updating txt files

* z_en_jc_mato OK

* Merge branch 'master' into en_jc_mato

* fixing some suggestions

* adding names

* changing name to movement
2021-05-04 22:03:41 -04:00
Parker Burnett d44d842192
z_en_warp_uzu OK (#113)
* matched all functions

* Jk I figured it out....forgot to add static...

* Fixing name suggestion
2021-05-04 21:16:05 -04:00
Derek Hensley 7605041f0a
Ovl_En_Cha OK (#116)
* EnCha OK

* pr comments, else if branches, file header comment

* Better function names
2021-05-04 20:10:30 -04:00
kyleburnette 0d4e4ffc38
bg_kin2_fence OK and documented (#103)
* initial fence work

* more fence work

* bg_kin2_fence OK and documented

* removed ctx file

* got rid of unk283 which didn't exist

* Renamed the array of eye sparkle particle spawns locations as suggested

* reok-ed kin2_fence
2021-05-03 17:18:59 -04:00
Zelllll 1ca8a9c24d
(Mostly) Decompile PreRender.c (#105)
* start prerender

* match func_8016FDB8

* fix fake af match

* actually add prerender

* Delete ctx.c

* test

* lots of oot transfers

* lots of new functions done

* match even more functions

* slowly thread functions

* two prerender functions left

* some docs

* make names more consistent with oot

* ready for pr?

* Update PreRender.c
2021-05-01 02:44:29 -04:00
kyleburnette c377ffe4ac
en_bu OK (#96)
* en_bu OK

* renamed action func

* made the char array in the header of type UNK_TYPE1

* renamed display list pointer as suggested
2021-05-01 00:42:16 -04:00
kyleburnette 441f33968c
item_inbox OK (#95)
* item_inbox OK

* renamed func_80945534 to suggested name
2021-04-30 23:36:55 -04:00
Zelllll 536a484f73
ovl_Obj_Boyo OK (#112)
* start

* more functions

* fix bg thingy

* finish boyo

* conflict fix1
2021-04-30 23:04:05 -04:00
Kenix3 c40bb119e1
Adds in scene support (#117)
* 1 scene done, Z2_SOUGEN OK

* All scenes OK

* Makefile improvements

* Use WIP ZAPD branch as submodule

* Add spawn rotation flag macro

* Fix bad merge

* Move scenes to be in their own subfolders

* Rename and restructure extracted baserom files

* Progress tracking for assets

* Add asset progress to csv

* Use master ZAPD

* Use distclean like in OOT

* Fix up a few things with the makefile

* Fix scenes not being dumped from ELF

Co-authored-by: Rozelette <Uberpanzermensch@gmail.com>
2021-04-29 18:56:18 -04:00
Rozelette e97f10a6fa
sys_slowly OK (#101)
* sys_slowly OK

* Feedback

* rename type member
2021-04-19 17:44:12 -04:00
Rozelette 84040f6ba6
z_skin_matrix OK (#81)
* Set up file

* Rename

* z_skin_matrix OK

* Cleanup

* /n nits
2021-04-12 00:41:35 -05:00
kyleburnette 50d0bbe087
dm_sa OK (#88)
* initial dm_sa work

* more dmsa work

* dm_sa OK

* Changed char arrays in header to be UNK_TYPE1

* Made all of roz's suggested changes

* merge
2021-04-07 18:08:19 -04:00
Rozelette d2c181a0a9
z_lib fully matched (#85)
* z_lib OK

* Documentation

* Added stdbool and stdint

* Fixup for new names

* Fixup bad merge

* Feedback

* Use u/s32 for intptr_t
2021-04-07 17:16:16 -04:00
Rozelette b22e26dbd8
z_en_item00 (#78)
* z_en_item00 WIP 17/21 match, rest close to matching

* Split .rodata for z_en_item00

* Item00 documentation, some misc cleanup

* Minor cleanup

* Fixup for z_collision_check

* Address feedback

* Delete old file

* Fix bad merge
2021-03-27 19:55:42 -05:00
Lucas Shaw 623b6d5318
Some OOT transfers, some renaming, etc (#75)
* Progress on various files

* gfxprint stuff

* split some rodata, add iconv for rodata string parsing

* z_std_dma rodata

* 2 nonmatchings in gfxprint

* mtxuty-cvt ok

* more

* match a function in idle.c

* progress

* Cleanup

* Rename BgPolygon to CollisionPoly

* progress

* some effect stuff

* more effect progress

* updates

* made suggested changes

* z_effect_soft_sprite_old_init mostly ok

Co-authored-by: Lucas Shaw <lucas.shaw1123@gmail.com>
Co-authored-by: Rozelette <Rozelette@users.noreply.github.com>
2021-03-27 16:17:41 -05:00
Rozelette fee7a49abc
z_lights fully matched (#80)
* z_lights OK

* Documentation

* Fixup for z_collision_check

* Improve function types of bind functions

* Fixup for types
2021-03-27 14:29:30 -05:00
Tharo 012e3c21ae
Floats and Strings in asm (#82) 2021-03-27 14:10:09 -05:00
Rozelette 6536afc6d3
Restructure how buffers are set up (#77) 2021-03-27 12:44:39 -05:00
kyleburnette a0b8a7c718
TwoHeadArena and TwoHeadGfxArena OK (#83)
* TwoHeadArena and TwoHeadGfxArena OK

* Changed negatives to ~ in TwoHeadArena.c

* Renamed functions to match OoT

* Formatted code files

* Removed dispbuf
2021-03-27 12:13:56 -05:00
Isghj e64d4d8bf2
EnPoFusen: OK (#69)
* EnPoFusen: OK

EnPoFusen: WIP

EnPoFusen: init is matched

* EnPoFusen: requested changes

* Update src/overlays/actors/ovl_En_Ma4/z_en_ma4.h

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

* EnPoFusen: forgot I renamed a function to check diff, changed back

* EnPoFusen: Bad search and replace

* EnPoFusen: really bad search replace

* EnPoFusen: ColliderInit and requested changes

* Functions: renamed func_800B8EC8 to Audio_PlayActorSound2

Co-authored-by: isghj8 <isghj8@gmail.com>
Co-authored-by: Rozelette <Rozelette@users.noreply.github.com>
2021-03-24 03:58:25 -05:00
Tharo 1a2e6d7ffe
z_collision_check.c (#58)
* setup

* Progress on z_collision_check.c

* Further progress on z_collision_check.c

* renamed code_0x800E03A0 to z_collision_btltbls, z_collision_check.c decompiled besides bss

* Structs changes

* Document functions

* overlayhelpers folder, colliderinit.py and ichaindis.py

* Flags, format existing ColliderInits

* Fix merge

* Few more small improvements

* Review suggestions
2021-03-22 17:48:15 -04:00
Rozelette 32d0e622fd
padutils OK (#72)
* padutils OK

* Update to latest OOT
2021-03-22 11:03:33 -05:00
kyleburnette 0e2738b81a
bg_ikana_shutter OK (#56)
* Initial shutter work

* Fixed types.h

* bg_ikana_shutter OK

* Reverted errant change to ultratypes

* Adjusted to use new actor field names

* fixed submodules

* Cleaned up a comment I left by accident

Co-authored-by: fullgrowngaming <fullgrowngaming@gmail.com>
2021-03-20 22:45:22 -04:00
Rozelette 8342329538
yaz0.c OK (#71) 2021-03-16 21:49:27 -04:00
Rozelette 3a91922e89
Generate dependencies for C files with GLOBAL_ASM (#70) 2021-03-14 22:12:14 -04:00
Rozelette 72f2b6aa4d
Fix incorrect .data start for En_Door (#68) 2021-03-11 20:04:59 -05:00
Kenix3 037ba9a22e Initial support of tracking progress per code/boot/overlay, and outputs the stats to csv. 2021-03-10 22:28:06 -05:00
Zelllll fb1ed529ad
Add OoT actor structs and enums (#55)
* add oot structs

* revert formatting

* fix comment thing

* fix accidental renames

* slight fix

* naviEnemyId -> hintId

* fix headers
2021-02-28 22:52:12 -05:00
Kenix3 7955a59194
PoC automatic rodata split Total split: 585 Failed / Troublesome: 61 (10,42735042735043%) Successfull rodata split: 524 (89,57264957264957%) Failed due to Script issues: 51 Failed due to object boundary issues or unreferenced .rodata: 10 Build OK?: :feelsokman: (#51)
rom_uncompressed.z64: OK
2a0a8acb61538235bc1094d297fb6556  rom.z64
rom.z64: OK

List Of Troublesome (mostly simliar edge cases, some are strings that we dont catch right / data without references):
 -    ovl_Arrow_Ice
 -    ovl_Arrow_Light
 -    ovl_Bg_Dkjail_Ivy
 -    ovl_Bg_Ikana_Mirror
 -    ovl_Boss_02
 -    ovl_Boss_07
 -    ovl_Boss_Hakugin
 -    ovl_Elf_Msg
 -    ovl_Elf_Msg2
 -    ovl_Elf_Msg3
 -    ovl_Elf_Msg4
 -    ovl_Elf_Msg5
 -    ovl_En_Az
 -    ovl_En_Bigokuta
 -    ovl_En_Bigpamet
 -    ovl_En_Bigpo
 -    ovl_En_Bigslime
 -    ovl_En_Box
 -    ovl_En_Butte
 -    ovl_En_Col_Man
 -    ovl_En_Crow
 -    ovl_En_Death
 -    ovl_En_Elf
 -    ovl_En_Elforg
 -    ovl_En_Encount3
 -    ovl_En_Encount4
 -    ovl_En_Fish
 -    ovl_En_Fish2
 -    ovl_En_Fsn
 -    ovl_En_Honotrap
 -    ovl_En_Horse
 -    ovl_En_Horse_Game
 -    ovl_En_Invadepoh
 -    ovl_En_Ishi
 -    ovl_En_Kame
 -    ovl_En_Kanban
 -    ovl_En_Kusa2
 -    ovl_En_M_Thunder
 -    ovl_En_Maruta
 -    ovl_En_Mushi2
 -    ovl_En_Okuta
 -    ovl_En_Ossan
 -    ovl_En_Pametfrog
 -    ovl_En_Peehat
 -    ovl_En_Rg
 -    ovl_En_Ruppecrow
 -    ovl_En_Slime
 -    ovl_En_Sob1
 -    ovl_En_Syateki_Man
 -    ovl_En_Test7
 -    ovl_En_Trt
 -    ovl_En_Wiz_Fire
 -    ovl_Mir_Ray
 -    ovl_Obj_Bombiwa
 -    ovl_Obj_Driftice
 -    ovl_Obj_Hariko
 -    ovl_Obj_Iceblock
 -    ovl_Obj_Mure
 -    ovl_Obj_Snowball2
 -    ovl_Obj_Toudai
 -    ovl_select

Co-authored-by: MMDecomp <MMDecomp@anon.tld>
2021-02-25 19:05:33 -05:00
kyleburnette 0481c23e75
en_okarina_effect OK (#47)
* en_okarina_effect OK

* Changed setupaction name
2021-02-23 22:46:35 -05:00
kyleburnette 55c558852f
en_rsn OK (#41)
* en_rsn OK

* Fixed build error caused by collisioncheck

Co-authored-by: fullgrowngaming <fullgrowngaming@gmail.com>
2021-02-12 18:26:05 -05:00
kyleburnette ee0ab1cbc9
en_hs2 OK (#46)
* en_hs2 OK

* Formatted files

* Renamed the DoNothing func.

Co-authored-by: fullgrowngaming <fullgrowngaming@gmail.com>
2021-02-11 22:12:54 -05:00