Commit Graph

39 Commits

Author SHA1 Message Date
kyleburnette
4841a4a0bf
padsetup OK (#383)
* padsetup OK

* Made tharo's suggestions

* Made arg name consistent
2021-11-02 17:35:57 -04:00
Maide
829d1d4c2a
En_Po_Sisters (#345)
* En_Po_Sisters

* Tharo magic

* Rebase

* PR

* Fix make and actorfixer

* Format
2021-10-31 16:07:08 -03:00
Tom Overton
d4effceefd
En_Elforg (Stray Fairy) OK and mostly documented (#359)
* Migrate data to C

* EnElforg_Init OK

* func_80ACC470 OK

* EnElforg_Destroy OK

* EnElforg_Update OK

* func_80ACCBD0 OK

* func_80ACCBB8 OK

* func_80ACD6EC OK

* func_80ACD59C OK

* func_80ACD6A8 OK

* func_80ACD610 OK

* func_80ACD878 OK

* Declare animated materials for Elforg

* EnElforg_Draw OK

* func_80ACCC98 OK

* func_80ACC7E4 OK

* func_80ACC8D4 OK

* func_80ACCEB0 OK

* func_80ACC994 OK

* PLAYER -> GET_PLAYER

* func_80ACCE4C OK

* func_80ACC934 OK

* func_80ACCAC0 OK

* func_80ACD2E4 OK

* func_80ACD1F0 OK

* func_80ACD164 OK

* func_80ACD1B0 OK (maybe fakematch but oh well)

* func_80ACD088 OK

* Better match for func_80ACD1B0

* Use compiled reloc

* Move static data to appropriate function

* Name sCylinderInit appropriately

* Add explanatory comment

* Clean up forward declarations

* Add macro for the flag

* Macro and enum for type

* Add STRAY_FAIRY_GET_PARAM_1C0 macro (no clue what this does)

* Document the area stuff

* Name some functions

* Document timer and direction

* Eliminate some early returns

* Tons more documentation

* Name remaining functions

* Document flags

* Name targetDistanceFromHome

* fairyFountainTimer -> secondaryTimer, since it's used outside of Fairy Fountains

* Name the unknown flag

* Name the collider fairy type

* Last bit of renaming/documenting

* Remove zero check

* Use hex constant for newAngle

* Merge animation updates

* Use 0x10000 instead of 65536.0f

* Use decimal for alpha

* Move yDifference initialization up to the same line as declaration

* Use +=/-=

* <= 30 instead of < 31

* += -1 -> --

* >= 81 -> > 80

* 0xDFFFFFFF -> ~0x20000000

* EnElforg_InitializeSpeedAndRotation -> EnElforg_InitializeParams
2021-10-31 13:25:10 -03:00
Tharo
b1b114e142
Decompile graph.c (#274)
* Decompiled, 1 non-matching, add some bss reordering helpers

* Document stuff

* Review suggestions

* graphutil.c -> graphalloc.c

* Try to fix fault callback warnings

* Remove extra comments in GfxMasterList

* char pad -> u32 pad

Co-authored-by: Derek Hensley <hensley.derek58@gmail.com>

* Fix gameState

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

* Other suggestions

Co-authored-by: Derek Hensley <hensley.derek58@gmail.com>
Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com>
2021-10-29 15:30:48 -03:00
Maide
de3fc29d51
En_Ot ~~(1 non-matching)~~ (#302)
* En_Ot

* Fix
2021-10-27 11:59:21 -03:00
Maide
c97a8e5225
En_Tite (#318)
* En_Tite

* Fix
2021-10-27 11:02:26 -03:00
Maide
a60c47a970
En_Fish2 (#292)
* En_Fish2

* Fix
2021-10-27 10:28:52 -03:00
Tom Overton
bfd1ab28a6
En_Giant OK and mostly documented (#346)
* Migrate data to C

* EnGiant_Destroy OK

* EnGiant_Init OK

* func_80B01A74 OK

* Comment what each of the quest items are

* Put a little comment for myself on func_80B01A74 because it was confusing me lol

* Very early names (they're all bad)

* func_80B01990 OK

* EnGiant_Update OK

* func_80B024AC OK

* func_80B023D0 OK

* func_80B024D8 OK

* func_80B02354 OK (this function is bad!)

* func_80B020A0 OK

* func_80B01EE8 OK

* func_80B01E84 OK

* func_80B0211C OK

* func_80B02234 OK

* unk_250 -> sfxId and label SFX

* func_80B02688 OK

* func_80B026C4 OK

* EnGiant_Draw OK

* Update spec

* Fix up the static data

* unk_24E -> alpha

* Document some of the animation stuff

* Name EnGiant_IsNotFreed

* Document the giant types better

* Minor cleanup

* Add explanatory comment

* Rename the functions in functions.txt too, whoops

* Document sFaceTextures and blink routine

* Document all the various animations

* Name EnGiant_PlaySound

* Document some functions and change an unknown to action

* Add an SFX id I missed

* Name all the action funcs

* Name last two functions

* Mark one case as unused

* Change func_800F5A8C to use arg0, arg1, arg2, etc.

* Move sFaceTextures to EnGiant_Draw and comment what they are

* EnGiant_IsNotFreed -> EnGiant_IsImprisoned

* Use booleans in EnGiant_IsImprisoned

* **/ -> */

* action -> csAction

* Make macros for all type conditional checks

* Add warning about inconsistency

* Document the cs actions

* Add some documentation to animation-changing functions

* Update the function name in functions.txt too

* Improve GIANT_TYPE macros

* Remove an unncessary early return

* Incorporate animation changes
2021-10-25 09:22:17 -03:00
Tharo
ef53ba8261
z_game_over.c (#263)
* game over

* Fixes

* Revert save field rename

* Fix comment indent

Co-authored-by: Anghelo Carvajal <angheloalf95@gmail.com>

* Add bss reordering stuff, fix bss reordering in z_scene_proc

* Enum uggestions, fix item id

* link -> player in enum comments

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

Co-authored-by: Anghelo Carvajal <angheloalf95@gmail.com>
Co-authored-by: EllipticEllipsis <73679967+EllipticEllipsis@users.noreply.github.com>
2021-10-24 13:41:50 -03:00
Lucas Shaw
dcf44596d2
Animation system updated, some more boot files decompiled (+6%), z_fcurve_data_skelanime decompiled (1 non-matching), some asm files split, etc (#89)
* 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

* remove old effects enum

* gamealloc.c OK

* added more files

* motor.c almost done

* motor.c OK

* updates

* migration of two files

* listalloc.c oK

* z_fcurve_data_skelanime split

* z_fcurve_data_skelanime.c decompiled

* more files split

* z_malloc.c OK

* contpfs.c OK

* fault.c rodata migrated

* migrated fault_drawer rodata

* update

* update preprocess.py

* renamed functions in z_skelanime

* started z_skelanime cleanup

* like halfway through fixing z_skelanime

* animation system updated to meet oot standards

* remove unused animation structs

* rename matrix structs to fit oot

* Add -woff 712

* fix diff_settings.py because i accidentally broke it before

* fixed merge conflict, doesn't match though

* It matches now

* Updates

* Fixed warnings...added gcc code syntax checking

* Remove gcc check, added in Tharo's PR

* warnings fixed (i think)

* fixed all warnings i think

* ok

* not sure what to do

* Fix all warnings i think (z_en_a_keep needs some file cleanup thouguh)

* it matches if i do this

* remove comment

* accidentally put osPfsFreeBlocks in epilinkhandle.c

* memcmp -> bcmp

* change u32 size to size_t size, delete string.h because it caused unnecessary confusion with defining size_t twice

* format.sh

* MTXMODE_NEW and MTXMODE_APPLY to matrix functions

* Made suggested changes

* pragma sFaultDrawerFont instead of including in repo

* add some functions to functions.h

* Bss reordering fixed in z_collision_check...added hack to disasm.py

* Updated z_en_a_keep.c

* Missed suggestion in EnAObj_Destroy

* .

* update z_fcurve_Data_skelanime and z_skelanime with suggestions

* devmgr.c ok

* minor changes

* Addressed comments

* remove redundant file

* gfxp -> dlist in game.c

* updated actorfixer.py

* fixed warnings in z_malloc

* Change void* back to Actor*

* format

* Add the soft_sprit comments back

* Rename SV->Flex

* remove .common

* run format

* Update src/code/z_skelanime.c

* u32 channel

Co-authored-by: Lucas Shaw <lucas.shaw1123@gmail.com>
Co-authored-by: angie <angheloalf95@gmail.com>
Co-authored-by: Kenix3 <kenixwhisperwind@gmail.com>
2021-10-24 10:59:14 -04:00
EllipticEllipsis
151e098e48
z_debug OK (#330)
* z_debug OK

* Rename function

* Remove duplicate struct

* Update z64.h
2021-10-14 12:25:14 -03:00
Maide
94e6ebaec9
En_Fu (#343)
* En_Fu

* Fix non-matching, thanks Anon58
2021-10-11 16:48:03 -03:00
EllipticEllipsis
565b1f7579
flg_set.c OK and documented (#335)
* Draw OK, Update very much not

* Flag table imported

* Update OK

* Actually OK this time

* Begin documenting

* Rename some stuff

* Rename functions

* spec

* Review

* Format

* Anghelo's review

* Fix lifemeter bss

* Format

* Missed one

* idle.c bss
2021-10-11 15:28:16 -03:00
Maide
a2666a6ee0
En_Sw (6 non-matching) (#295)
* En_Sw

* spec

* Sw

* Fix
2021-10-11 13:41:02 -04:00
Maide
1774416598
En_Poh (#291)
* En_Poh

* PR

* PR

* Fix wrong float
2021-10-11 10:21:17 -03:00
Maide
f059baa87f
En_Owl (#271)
* En_Owl

* a

* PR

* a

* Rebase
2021-10-10 21:36:24 -04:00
Tom Overton
fbd1a79942
Arrow_Ice OK (#314)
* Migrate data and ArrowIce_Init OK

* ArrowIce_Destroy OK (also define func_80115D5C in functions.h, maybe a bad thing???)

* ArrowIce_SetupAction OK

* func_809224DC OK

* ArrowIce_Update OK

* func_809227F4 OK (but with hacky float constant)

* func_809225D0 OK and use float constant in func_809227F4

* func_80922628 OK

* ArrowIce_Draw OK

* Migrate D_80924200.s to C

* Apply better names in ice_gfx, and document Draw slightly

* Name struct vars to match OoT

* Update function names to match OoT

* Explain that arrow's timer and hitFlags came from OoT

* Update spec + "migrate" bss to C

* Do a hex -> decimal conversion I missed

* Remove blank line in-between headers

* Remove extraneous forward declare

* Move initialization of arrow up one line

* Remove parentheses

* Use else if

* Use decrement operation

* Use decimal for an alpha calculation

* Switch func_80115D5C to take GameState*

* Put pad on the top of Draw

* Move initialization of arrow up (again)

* Early return from Update if we're killed

* Extract assets instead of putting them in the repo

* Add explanatory comment to top of file

* += 1 -> ++

* Use VEC3F_LERPIMPDST macro

* Force a jenkins rerun by adding a space

* Remove the space from the last commit

* Move literal to the back of the conditional

* Respond to review feedback

* Add ArrowIce_LerpFiredPosition to functions.txt
2021-09-30 10:34:45 -03:00
EllipticEllipsis
f80b08450f
ShrinkWindow OK (#303)
* OK, small amount of documentation, import bss

* Remove comments

* Actually commit functions.txt

* Add renames to actorfixer.py, review
2021-09-29 21:55:41 -04:00
Anghelo Carvajal
2f000058f5
ovl_select: ZELDA MAP SELECT matched and documented (#310)
* basic functions

* errr

* Progress, kinda

* func_808016E8

* func_808019FC and func_80801A64

* Import data

* Format

* some progress

* func_808013B8

* func_80801620

* fix stuff

* func_80800930

* improve func_80800A44 a bit

* At least it is equivalent now

* matches!

* small renames

* Use generated reloc

* move functions

* Renaming a lot of stuff

* Some functions renames

* Rename members

* Add translations for everything

* Run formatter

* Update include/alloca.h

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

* Update src/overlays/actors/ovl_En_Bigpo/z_en_bigpo.c

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

* review changes

* review comments

* Update src/overlays/gamestates/ovl_select/z_select.h

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

* Update src/overlays/gamestates/ovl_select/z_select.h

Co-authored-by: Kenix3 <kenixwhisperwind@gmail.com>

Co-authored-by: EllipticEllipsis <73679967+EllipticEllipsis@users.noreply.github.com>
Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com>
Co-authored-by: Kenix3 <kenixwhisperwind@gmail.com>
2021-09-28 22:23:08 -04:00
Maide
9478fc760f
Thiefbird (#290)
* Thiefbird

* Fix enums

* Rename funcs

* PR
2021-09-28 17:56:25 -04:00
Maide
edb1dd4675
En_Zot (#320)
* En_Zot

* PR
2021-09-28 10:28:06 -03:00
Tom Overton
0f4bdbc020
Obj_Etcetera (Deku Flower) OK and somewhat documented (#326)
* Migrate data to C

* ObjEtcetera_Init OK

* ObjEtcetera_Destroy OK

* ObjEtcetera_Update OK

* func_80A7C690 OK

* func_80A7C718 OK

* func_80A7C168 OK

* func_80A7BE8C OK

* Make the draw functions take Actor*

* CollisionCheck_SetAC should take a Collider

* func_80A7BDC8 OK (with silly dummy label meme)

* func_80A7C1F0 OK

* unk_276 is almost certainly a u16 since I constantly have to cast it, so just retype it

* func_80A7BF08 OK

* Some minor cleanup

* Convert D_80A7C80C to array of CollisionHeader*

* Finish defining struct to prepare for func_80A7C308

* func_80A7C308 OK

* Move gameplay_keep symbols to variables.h

* Explanatory comment at the top

* Type gameplay_keep animation headers too

* Update the spec (why do I always forget this?)

* Rename func_80A7BDC8 to ObjEtcetera_PerformFlutter (name still up for debate)

* Name objIndex

* Document the types of flowers

* Name displayListPtr

* Name burrowFlag and provide a macro

* Name specialFlutterScale and clean up some things with newer understanding

* Give the draw functions (bad) names

* Name ObjEtcetera_Idle

* Name ObjEtcetera_Setup (name sucks but oh well lol)

* Name ObjEtcetera_ReturnToIdle. These names all suck but they're a start

* Document some of ObjEtcetera_Idle's behavior

* Name and document objectIds

* Remove the burrow macro because it's frankly more confusing for now

* Name the draw functions something slightly better

* MUCH better names for things + more documentation

* Clean up ObjEtcetera_Setup a bit

* Call it NUMBER_OF_FLOWER_TYPES instead

* A few more name changes

* Link -> Player in comments

* displayListPtr -> dList

* Trailing commas + format

* Move initialization of type up

* Improve conditional check

* Use BGCHECK_SCENE macro

* Move initialization of floorBgId up

* Use documentation comment style

* Match ObjEtcetera_DoNormalOscillation without a dummy label

* param_2 -> arg1

* Insert blank line after scoped pad

* OBJETCETERA_TYPE -> DEKU_FLOWER_TYPE

* Cleanup and rename enum

* Break up ObjEtcetera_Setup a bit and convert DekuFlowerType to an s32 to remove warnings

* Whoops, run format

* Delete leading 0 on struct comments

* Rename pad to requiredScopeTemp to match my other PR
2021-09-28 08:18:31 -04:00
Maide
27e41b73a8
En_Rd (#316)
* En_Rd

* PR

* a
2021-09-27 23:17:28 -03:00
Maide
039fc4623e
En_Syateki_Man (#269)
* En_Syateki_Man

* a
2021-09-25 13:22:51 -03:00
Tom Overton
6ecea0ec6f
Obj_KIbako cleanup (#280)
* Modify Kibako to use the same ID/FLAG macros as Kibako2

* Define KIBAKO_BANK_INDEX

* Add explanatory comment at the top of the file

* Add Kibako function names to functions.txt

* Define KIBAKO_BOMBER_CAN_HIDE_IN_BOX
2021-09-02 11:44:50 -04:00
gamestabled
b3816cd26b
ObjMakeoshihiki OK (#272)
* ObjMakeoshihiki OK

* suggested changed

Co-authored-by: gamestabled <gamest@bl.edu>
2021-09-02 10:49:00 -04:00
rylieb
6fb180d0e1
En_Holl (Loading Halls/Holes) OK and mostly documented. (#270)
* EnHoll_Destroy() matching.

* EnHoll_Update() matching.

* EnHoll_Draw() matching and mostly documented.

* func_808999B0() matching and mostly documented.

* En_Holl OK (some asm remains)

* Renamed macros.

* func_80899B88 matching, but control flow could use some work.

* Got rid of GOTO in func_80899B88.

* Removed as many returns and magic numbers as currently possible.

* Renamed previous two functions to EnHoll_ChangeRooms and
EnHoll_VisibleIdle.

* EnHoll_SetAlwaysZero matching.

* EnHoll_TransparentIdle matching.

* func_8089A0C0 matching and mostly documented.

* func_8089A238 matching and mostly documented.

* Deleted last GLOBAL_ASM pragma.

* Final documentation for En_Holl PR.

* Switched spec to generated reloc.

* Clean up macros.

* Rename functions.

* Simplify name of ActionFunc array.

* Renamed globalCtx->unk_18878 to bgCoverAlpha.

* Ran format.sh.

* Added c file header.

* Update src/overlays/actors/ovl_En_Holl/z_en_holl.c

add trailing comma to sActionFuncs[]

Co-authored-by: Anghelo Carvajal <angheloalf95@gmail.com>

* Update src/overlays/actors/ovl_En_Holl/z_en_holl.c

replace UNK_TYPE with s32.

Co-authored-by: Derek Hensley <hensley.derek58@gmail.com>

* Run format.sh.

* s32 pad and declaration formatting

* Remove comma in EnHoll_TransparentIdle.

* Renamed sThis to sInstancePlayingSound.

* renamed gfxP to dl

* Improved affine transformation documentation.

* ran format.sh

* Updated documentation to be doxygen compatible.

* Extracted assets.

* fix bss

* Update src/overlays/actors/ovl_En_Holl/z_en_holl.c

replace bitmask == 0 with !

Co-authored-by: Anghelo Carvajal <angheloalf95@gmail.com>

* Rename extracted asset variables.

* Renamed argument to macro functions to match .c

* renamed Vertices to Vtx.

* Renamed Vtx and DL.

* Update src/overlays/actors/ovl_En_Holl/z_en_holl.c

Shorten documentation.

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

* Apply suggestions from code review

Newline changes for readability.

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

* Update src/overlays/actors/ovl_En_Holl/z_en_holl.c

* Update src/overlays/actors/ovl_En_Holl/z_en_holl.c

Change oldCurrRoom to tempRoom.

* Apply suggestions from code review

engineer124's suggestions

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

Co-authored-by: Anghelo Carvajal <angheloalf95@gmail.com>
Co-authored-by: Derek Hensley <hensley.derek58@gmail.com>
Co-authored-by: EllipticEllipsis <73679967+EllipticEllipsis@users.noreply.github.com>
Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com>
2021-09-01 19:39:01 -04:00
Isghj
f21f393fcc
EnBigpo (Big Poh) (#250)
* EnBigpo: start

* EnBigpo: uhh, this struct is weird

* EnBigpo: progress

* EnBigpo: so many of these functions are tiny

* EnBigpo nasty four loop function

* EnBigpo: hate draw functions

* EnBigpo: all functions attempted

* EnBigpo: data migrated, does not OK, 2 bytes off...

* Multi: Attempting to OK, issues

* EnBigpo: more docs

* EnBigpo: more docs2

* EnBigpo: more docs and cleaning

* EnBigpo: removed data to try to find the issues, matched a draw function thanks to Tharo

* EnBigpo: progress? maybe not

* EnBigpo: matched another function

* EnBigpo: overwrite limbdraw matches now

* EnBigpo: one more nonmatching rejected

* EnBigPo: not actual progress, probably

* Match Init, down to single stack pointer on second func

* EnBigPo OK

* EnBigpo: docs and cleaning

* EnBigpo: more docs and cleaning

* EnBigpo: back to OK with no warnings

* EnBigpo: more docs and cleaning

* EnBigpo: docs and cleaning

* EnBigpo: hmm, rename_sym doesn't like renaming system functions but I'm 98% sure I know what these are

* Multiple: changed some function names, maybe changed too much... hmm

* EnBigpo: even more changes to docs

* EnBigpo: formater pass

* EnBigpo: small fixes

* EnBigpo: c file description

* Apply suggestions from code review

Apply camera suggestions from eng124

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

* EnBigpo: updating all requested changes and reverting one incorrect macro

* Apply suggestions from code review

Some of eng124's recommendations, need to add the last by hand

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

* EnBigpo: back to OK

* EnBigpo: Minor cleanup changes

* Functions fixed: added function changes to actorfixer and fixed dinofos

* EnBigpo: BINANG_ROT180

* Apply suggestions from code review

First batch of requested changes, the simpler ones that shouldn't require checking

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

* EnBigpo: fixes to recommended changes, back to OK

* EnBigpo: move idleTimer docs out of struct

* Sprite: removed old commented out pragma, it matches, I still dont get it

* EnBigpo: more changes I had to check first

* EnBigpo: more requested changes, and some macro uses found

* EnBigpo: forgot a requested change

* Update src/overlays/actors/ovl_En_Bigpo/z_en_bigpo.c

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

* Apply suggestions from code review

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

* EnBigPo: missed a disphead array access

* Apply suggestions from code review

More requested changes

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

* EnBigpo: more hex to dec

* EnBigpo: more hex to dec 2

* Update src/overlays/actors/ovl_En_Bigpo/z_en_bigpo.c

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

* Update include/functions.h

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

* EnBigpo: build being weird

* EnBigpo: weird, rename_sym didn't catch this earlier

* Tools: fixed actorfixer to use Play_CameraSetAtEye forgot I blew this change away trying to get build again,

* Update src/overlays/actors/ovl_En_Bigpo/z_en_bigpo.h

Co-authored-by: Kenix3 <kenixwhisperwind@gmail.com>

* EnBigpo: cutscene functions changed name to indicate they are stages

* EnBigpo: Rename Particles to Effect

* EnBigpo: changed draw function names, changed function comment format

* EnBigpo: renamed limbdraw functions, formater pass

Co-authored-by: isghj8 <isghj8@gmail.com>
Co-authored-by: engineer124 <engineer124engineer124@gmail.com>
Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com>
Co-authored-by: Anghelo Carvajal <angheloalf95@gmail.com>
Co-authored-by: Kenix3 <kenixwhisperwind@gmail.com>
2021-09-01 18:44:42 -04:00
Tom Overton
f0749d583c
Obj_Kibako2 OK (#249)
* Data migrated and ObjKibako2_Init OK

* ObjKibako2_Destroy OK

* func_8098EC68 OK

* Commit what I have on Update as I figure it out

* Name skulltulaNoiseTimer and get a little closer to matching Update

* Wrap Update in NON_MATCHING for now

* Get this ready to push up

* func_8098ED20 OK (but it's not an actionFunc???)

* ObjKibako2_Draw OK

* func_8098E9C4 OK

* Turns out globalCtx *is* needed

* func_8098E8A8 OK

* Save my progress on func_8098E5C0 for now

* func_8098E900 OK

* func_8098EB78 OK

* Clean up some if-conditionals

* Delete pointless forward declaration

* ObjKibako2_Break OK

* Update names to match OoT equivalent

* func_8098E5C0 OK (though a little weird)

* ObjKibako2_Update OK

* Clean, document, and name ObjKibako2_ShouldBreak

* Clean and name ObjKibako2_ContainsSkulltula

* Some more cleanup

* Why did I mix snake case with camel case lol

* Update spec now that everything matches

* Actually rename the data

* sn/cs -> sin/cos

* Use true/false in ObjKibako2_ShouldBreak

* Use the AC_HIT macro and don't use the temp where it isn't needed

* Use macro and enum for contents

* Get rid of fake temp in Init

* Macros for collectible ID/Flag

* 0xFFFD -> ~AC_HIT

* In macros, x -> this

* Just kidding, use thisx for macros

* Add description to the top of C file

* Run ./format.sh after installing clang-format-11

* char -> UNK_TYPE1

* Remove unnecessary struct padding

* Initialize thisPos at the same time it's declared

* Clean up parentheses for bitwise operations to make it clearer what they do

* Clean up control flow in ObjKibako2_Idle

* Remove extraneous parentheses

* Move instantialization up in ObjKibako2_ContainsSkulltula

* Move tempRand instantiation up in ObjKibako2_Break

* Move collectible instantiation up in ObjKibako2_SpawnCollectible

* Remove extra brackets

* Remove extra brackets (again)

* Move contents instantiation up in ObjKibako2_Init
2021-08-23 22:14:18 -04:00
EllipticEllipsis
04343a1202
z_construct OK (#267)
* z_construct OK

* Rename
2021-08-18 11:24:57 -04:00
Anghelo Carvajal
49922b4856
system_malloc OK (#261)
* move system_malloc to boot_O2

* Rename StartHeap into SystemArena

* match

* fake system_malloc data

* fix return types

* Rename Alloc to Malloc

* Update tools/disasm/files.txt

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

* fix spec

Co-authored-by: EllipticEllipsis <73679967+EllipticEllipsis@users.noreply.github.com>
2021-08-18 08:48:08 -04:00
Derek Hensley
f90e3ee739
Color_RGBAu32 (#253)
* Renamed deprecated RGB5A1 to RGBA16

* Cleanup shopkeeper structs with Color_RGBAu32 and Vec3f

* Rename functions with RGB5A1 in them

* BSS fix
2021-08-15 10:56:20 -04:00
Tharo
82cc274b6a
Sort boot files (#260) 2021-08-10 22:15:31 -04:00
Anghelo Carvajal
9333306738
z_face_reaction OK (#255)
* match function and split data

* import data

* Rename function and variable

* format data

* Fix data

* { 0 }

* Update src/code/z_face_reaction.c

Co-authored-by: rylieb <31797144+rylieb@users.noreply.github.com>

* Rename return variable in en_ossan

* textId

* Rylie's review

* Try to format this properly

* Format again

Co-authored-by: rylieb <31797144+rylieb@users.noreply.github.com>
2021-08-08 23:14:07 -04:00
EllipticEllipsis
823281291b
Script fixes, Type 1 cylinders fixed, rename main (#256)
* Fix actor_symbols.py

* Temporary fix to rename_sym.sh

* Fix the few Type1 cylinders

* Rename main -> Main

* chmod rename_global_asm, fix asm in rename_syms

* Format
2021-08-08 23:01:51 -04:00
Maide
f5cbbc3268
Daiku2 (#228)
* Daiku2

* PR

* Macros

* NBS

* PR

* Format
2021-08-08 15:28:45 -04:00
Tharo
1c544d2351
sched.c OK (#248)
* sched

* Minor fixes

* Format headers in the ultra64 folder, bitshifts in defines

* Fix PI_STATUS_ERROR

* Update variables
2021-08-07 12:43:11 -04:00
rylieb
161da0c881
Obj_Warpstone (Owl Statue) OK and mostly documented. (#243)
* EnBji01_Init OK and Partially Documented.

* EnBji01_Destroy OK and Fully Documented.

* func_809CCE98 OK and partially documented.

* Removed goto in func_809CCE98().

* func_809CD6C0 matching and partly documented.

* Pasted raw mips_to_c into EnBji01_Update().

* EnBji01_Update() matching and partially documented.

* EnBji01_Update() matching and partially documented.

* func_809CDA4C() matching and partially documented.

* func_809CDA4C actually matching this time, and partially documented.

* func_809CDB04() matching and partially documented.

* func_809CD028() matching and mostly documented.

* func_809CD6B0() matching.

* func_809CD328() matching and partially documented.

* func_809CCDE0() matching and partially documented, func_8013E950()
prototyped.

* func_809CD634() and func_809CD70C() matching and partially documented.
func_801A5BD0() prototyped.

* func_809CD77C() matching and mostly documented. All functions now
matching.

* Imported data from ovl_En_Bji_01_data.asm to z_en_bji_01.c. Updated
object_script.txt and code_script.txt. Ran format.sh. Builds OK.

* Documented all of the unks in Shikashi's struct. Build still OK.

* Fixed new warning in Bg_Haka_Tomb resulting from my new prototype of
func_8013E3B8().

* Renamed remaining instances of unk160 to cutscenes.

* Update src/overlays/actors/ovl_En_Bji_01/z_en_bji_01.h

Remove unnecessary comment about compiler padding.

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

* Update src/overlays/actors/ovl_En_Bji_01/z_en_bji_01.c

Correct stack declaration spacing.

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

* Update src/overlays/actors/ovl_Bg_Haka_Tomb/z_bg_haka_tomb.h

Remove unnecessary comment about compiler alignment padding.

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

* Update src/overlays/actors/ovl_En_Bji_01/z_en_bji_01.c

Remove unnecessary padding comment.

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

* Apply suggestions from code review

Co-authored-by: Anghelo Carvajal <anghelo.carvajal.14@sansano.usm.cl>
Co-authored-by: EllipticEllipsis <73679967+EllipticEllipsis@users.noreply.github.com>

* Batch commit for comments during code review.

* Apply suggestions from code review (trailing Us)

Co-authored-by: Derek Hensley <hensley.derek58@gmail.com>

* Deleted exteraneous space at the bottom of En_Bji_01 struct in the
header file.

* Used params enum for switch cases.

* Update src/overlays/actors/ovl_En_Bji_01/z_en_bji_01.h

Co-authored-by: Parker Burnett <burnettparker@gmail.com>

* Apply suggestions from code review

replacing magic numbers with limb enums

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

* Renamed func_809CD328 to EnBji01_DialogueHandler per code review.

* ObjWarpstone_Init() matching and mostly documented.

* ObjWarpstone_Destroy() matching and fully documented.

* ObjWarpstone_Update() matching and partially documented.

* ObjWarpstone_Draw() matching and partially documented.

* func_80B92B10() matching and partially documented.

* func_80B92C00() matching and mostly documented.

* func_80B92C48() matching and mostly documented.

* func_80B92CD0() matching and partially documented.

* func_80B92DC4() matching and fully documented.

* Obj_Warpstone OK.

* Obj_Warpstone OK and mostly documented.

* Changed "actionFunc" return values from 0/1 to false/true.

* Apply suggestions from code review

Change colors to decimal, and use matrix defines/enums instead of magic numbers.

Co-authored-by: kyleburnette <kyle@kyleburnette.com>

* Convert more colors to decimal and replace more magic nums with mtx
defines/enums.

* Ran format.sh after adding (wordy) mtx defines.

* Ran format.sh which updated ginko_man.

* Update src/overlays/actors/ovl_Obj_Warpstone/z_obj_warpstone.c

Switch to line comments.

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

* Changed floating point constants in ObjWarpstone_Draw to hex per code review.

* Rename timer and timer enums.

Co-authored-by: Anghelo Carvajal <anghelo.carvajal.14@sansano.usm.cl>
Co-authored-by: EllipticEllipsis <73679967+EllipticEllipsis@users.noreply.github.com>
Co-authored-by: Derek Hensley <hensley.derek58@gmail.com>
Co-authored-by: Parker Burnett <burnettparker@gmail.com>
Co-authored-by: kyleburnette <kyle@kyleburnette.com>
Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com>
2021-08-04 22:24:27 -04:00
Tharo
7743e5a2c4
Overhaul the build system (#234)
* wip

* fix

* add disassembler

* Disasm builds OK

* Variable addends

* More wip

* Rodata migration implemented

* Cleanup old tools

* Try fix submodule -> subrepo merge

* git subrepo pull --force --remote=https://github.com/zeldaret/ZAPD.git tools/ZAPD

subrepo:
  subdir:   "tools/ZAPD"
  merged:   "602e609"
upstream:
  origin:   "https://github.com/zeldaret/ZAPD.git"
  branch:   "master"
  commit:   "602e609"
git-subrepo:
  version:  "0.4.3"
  origin:   "https://github.com/ingydotnet/git-subrepo"
  commit:   "2f68596"

* Builds again but assets are totally broken

* git subrepo pull --force tools/asm-processor

subrepo:
  subdir:   "tools/asm-processor"
  merged:   "1ffdb08a"
upstream:
  origin:   "https://github.com/simonlindholm/asm-processor.git"
  branch:   "master"
  commit:   "1ffdb08a"
git-subrepo:
  version:  "0.4.3"
  origin:   "https://github.com/ingydotnet/git-subrepo"
  commit:   "2f68596"

* More cleanup, move functions.txt and variables.txt to tools/disasm and rm tables

* rm z64compress in preparation for subrepo

* git subrepo clone (merge) https://github.com/z64me/z64compress.git tools/z64compress

subrepo:
  subdir:   "tools/z64compress"
  merged:   "eb11085c"
upstream:
  origin:   "https://github.com/z64me/z64compress.git"
  branch:   "main"
  commit:   "eb11085c"
git-subrepo:
  version:  "0.4.3"
  origin:   "https://github.com/ingydotnet/git-subrepo"
  commit:   "2f68596"

* Fix asset extraction

* Fix diff-init make rule

* Split code bss

* Split assumed linker bug padding from assembly files

* add filelists for mm.us.rev1

* Maybe working, but I'm not sure

* add overlays to spec

* Add rodata to actos

* Everything compiles

* Make a lot of C files for code

* Add almost every file in code to spec

* whoops

* 3 code files left

* add scenes to spec

* More progress on progress.py

* Fix skelanime in spec

* audio files!

* Fix merge issues

* Fix some C files in code

* Fix remaining code files

* Use existing O1 C files in spec

* reorder boot order in spec

* update spec

* fault.c

* Convert relocs on completed actors, fixbaserom uses current rom name

* more boot files

* Add VT macros and script

* finish already existing boot files

* most of  libultra

* fix 64bits libultra files

* Use C files for libultra, wrap some functions in NON_MATCHING

* Remove duplicate of OS_CLOCK_RATE from fault.c

* C files for fbdemos

* delete dumb files

* bootstrap C files, still need to add them to the spec

* update fixbaserom

* boot OK?

* I forgot to commit the spec

* C for gamestates

* C for kaleido

* Change all includes to ""

* copy actor sizes script from oot

* I forgot to delete those files

* Basic C files for effects

* Add effects initvars names

* Remove mislabelled boot functions from header/txt

* Begin porting bootstrap_fx, some sizes

* Fix <>

* Fix enum

* Fix diff.py

* fix libultra stuff

* update regconvert

* update setup warnings

* add some missing ;

* Fix some makefile stuff and other fixes on some non_matching functions

* add executable flag in extract_baserom and fixbaserom

* fix relative path

* copy assist from oot

* fix map path

* another assist path fix

* Delete C files for handwritten files

* add code_801A51F0 to spec

* add gfxbuffers to spec

* Move rodata to top of each file when possible

* UNK_TYPEs for func_801A51F0

* Remove kaleido rodata from spec

* Update spec and undefined_syms for recent merge

* GCC warnings and fix errors in nonmatchings,

* round percentage numbers

* progress script: format changes

* progress: error on non-existing files

* fix warning in z_scene_table

* Match 2 nonmatchings in z_actor

* Warnings in lightswitch and invadepoh

* Fix warning in z_actor_dlftbls

* I though I fixed this one

* whoops

* Comment out CC_CHECK

* Removed redundant ultra64.h includes

* Update asm_processor, sorted boot_O1 into other folders, completed the fbdemo bootstrap, cleaned up undefined_syms

* Completed gamestates bootstrap

* Split kaleido_scope

* Remove section.h and segment.h, move keep object externs to a common location in variables.h

* Completed effects bootstrap

* Segmented address externs for effects, fbdemos, gamestates and kaleido

* Move actor data externs out of the if 0

* Segmented address externs for actors

* Prepare actionfunc detection

* fix script, how did it even work before

* Fix actionfunc script again, re-introduce some more intermediate prints to the disassembler

* Automated actionFunc detection in actors

* Segmented addresses from player .text

* rm old segment addrs script and fix build

* Move sizes folder to tools

* Make build.py executable

* New Jenkinsfile Prayge

* Remove numpy dependencies

* Add warnings_disasm_current.txt

* my bad

* Update spec and undefined_syms

* Add z_eff_ss_hahen to pametfrog

* git subrepo pull (merge) --force tools/z64compress

subrepo:
  subdir:   "tools/z64compress"
  merged:   "163ca2af"
upstream:
  origin:   "https://github.com/z64me/z64compress.git"
  branch:   "main"
  commit:   "163ca2af"
git-subrepo:
  version:  "0.4.3"
  origin:   "https://github.com/ingydotnet/git-subrepo"
  commit:   "2f68596"

* Make z64compress print to stdout

* sneeky commit to update warnings tooling

* test

* Another test

* Mark fixing overlay reloc generating as a TODO

* Update warnings stuff

* Communicate the return code from running z64compress back to the Makefile through the wrapper

* Run formatter, remove extra commented copy of function

* Re-fix some includes

* Convert atan to hex to conform to decided style

* Some tidying up, remove c for fp and the other two handwritten code files

* BSS in z_collision_check & z_scene_proc

* add static back in

* Fix timerintr bss, add file to spec, some cleanup

* Remove externs

* Newline

* Readd enums

* Typo

* Colours

* Comments for hitmark enum values

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

* Improvements and suggestions

* Organize and remove unused imports and use env for python3 scripts, delete unused overlay.py

Co-authored-by: angie <angheloalf95@gmail.com>
Co-authored-by: Elliptic Ellipsis <elliptic.ellipsis@gmail.com>
Co-authored-by: engineer124 <engineer124engineer124@gmail.com>
Co-authored-by: EllipticEllipsis <73679967+EllipticEllipsis@users.noreply.github.com>
2021-08-03 23:21:31 -04:00