Commit Graph

132 Commits

Author SHA1 Message Date
Anghelo Carvajal 2854294009
`z_jpeg`, `jpegutils` and `jpegdecoder` OK (#322)
* this is a disaster

* two more

* func_800F470C

* split and rename jpegutils and jpegdecoder

* match jpegutils

* match jpegdecoder.c

* audio_rodata

* data split

* Split rsp

* Steal documentation from OoT

* cleanup

* Format

* remove removed members in JpegContext

* Update include/z64.h

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

* Update src/code/jpegdecoder.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>

* Apply suggestions from code review

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>

* Update src/code/jpegutils.c

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

* review renames

* true

* Some type fixes

* Update include/z64.h

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

* add comment

* Update src/code/z_jpeg.c

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

* format

* bss fix

* decr

* format

* z64jpeg.h

* Add stdbool

* Rename audio_init_params

* whoops

* whoops++

* whoops#

* remove extra dumb variables in variables.txt

* fix

Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com>
Co-authored-by: EllipticEllipsis <73679967+EllipticEllipsis@users.noreply.github.com>
2021-11-19 17:34:45 -03:00
engineer124 c8b0ff3f74
Introducing z64audio.h (#459)
* Copy over z64audio.h from audio WIP

* Cleanup z64audio.h

* PR Suggestions

* Improvements from Audio doc WIP

* More cleanup

* Remove a few structs, Introduce OcarinaSongId

* More cleanup from audio docs WIP

* Fix
2021-11-19 15:26:20 -03:00
EllipticEllipsis dfc146663f
aisetfreq OK, some libultra improvements (#416)
* aisetfreq OK

* Add a lot of HW_REG and some other macros to libultra

* Format

* Remove extra volatile

* Review

* De-C guNormalize

* Correct typo in crc.c
2021-11-18 15:15:09 -03:00
EllipticEllipsis 7134e81898
sys_initial_check OK, documented, error message files debinarised (#437)
* OK

* Symbols and other documentation

* Remove externs

* spec

* More documentation, decompile the texture files,
some uintptr_t and size_t

* Top-of-file comment

* Move symbols back into right order

* Use some defines

* Missed an osTvType and a size_t

* Add missing header to os.h

* Use segment symbol macros

* Remove duplicate header

* Address review suggestions
2021-11-15 19:57:16 -03:00
Anghelo Carvajal 0a953f7aea
sched.h (#341)
* sched.h

* format

* screen.h

* sched.h and scheduler.h

* empty commit

* remove screen.h

* format

* Fix

* fix bss

* remove line

* Whoops

* remove dupllicated structs

* ...

* c'mon

* Add TASK_FRAMEBUFFER macro

* format
2021-11-14 18:38:27 -03:00
Maide 602f348928
En_Pm (#309)
* En_Pm

* Format

* PR

* a

* a

* Finally fixed?

* PR

* Fix enum
2021-11-11 22:41:59 -03:00
EllipticEllipsis 285381e662
vimgr OK (#421)
* vimgr OK

* spec

* OSIoMesg, add OS_MESG defines, other review

* Review
2021-11-11 15:30:31 -03:00
engineer124 d825ef5de1
Improve/Add Enums for Player, Items, and Quest (#275)
* Create enums (non-matching monkaBSS)

* Add effect enum

* Almost fix bss reordering (1 different word)

* Fix capacity

* Fully fix bss

* Add PlayerBoots

* PR Feedback & add missing playerForm enums

* Clean-Up

* Script to check global bss ordering

* Bit of cleanup

* Format

* Remove global_bss_check PR

* Fix bss

* Add enums to new PRs & previously missed ones

* Remove Effect Enums

* Missed one

* Format

* Remove old prevent_bss_reordering.h comments

* Use a better macro

* A few more uses of enums found

* Add enums to recent PRs

* Improve GI enums

* Add enums from new PRs

* PR Suggestions

* format

* Fix bss

* Fix mistake in GI

* No actually, part of it was correct before

Co-authored-by: Elliptic Ellipsis <elliptic.ellipsis@gmail.com>
2021-11-11 12:04:57 -03:00
EllipticEllipsis 304bfa443e
Transfer osViModes to C files (#438)
* Transfer osViModes to C files

* Finish spec

* Import data to and Improve vi.c

* spec, again

* Format

* Use defines for the types
2021-11-10 23:04:57 -05:00
Anghelo Carvajal 278ff4a4b3
`motor.c` OK (#397)
* use motor in the spec

* import bss

* Delete viextendvstart.c

* rename functions

* move stuff and format

* remove globals.h and ultra64.h

* Update src/libultra/io/motor.c

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

* add motor.h to padmgr

* fix

Co-authored-by: EllipticEllipsis <73679967+EllipticEllipsis@users.noreply.github.com>
2021-11-06 00:29:56 -03:00
EllipticEllipsis 2907da61c3
xlitob.c OK (#417)
* xlitob.c OK

* spec
2021-11-05 12:03:11 -03:00
Maide 693c701025
Boss_02 (3 non-matching) (#324)
* Boss_02

* Fixups

* Warnings
2021-11-05 08:04:10 -04:00
petrie911 ad4c16d40f
osFlash (#158)
* some matches

* Decompile code_0x80186A70 Add defines for KSEG0/1 and (Un)Cached RDRAM

* format

* cleanup

* moved osFlash and imported data

* implement fixes

* format again

* Update include/functions.h

Co-authored-by: Tharo <17233964+Thar0@users.noreply.github.com>

* Update include/variables.h

Co-authored-by: Tharo <17233964+Thar0@users.noreply.github.com>

* Update src/libultra/flash/osFlash.c

Co-authored-by: Tharo <17233964+Thar0@users.noreply.github.com>

* Update src/libultra/flash/osFlash.c

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

* returns are needed

* format

* Update src/libultra/flash/osFlash.c

Co-authored-by: Tharo <17233964+Thar0@users.noreply.github.com>

* Update src/libultra/flash/osFlash.c

Co-authored-by: Tharo <17233964+Thar0@users.noreply.github.com>

* Update src/libultra/flash/osFlash.c

Co-authored-by: Tharo <17233964+Thar0@users.noreply.github.com>

* Update src/libultra/flash/osFlash.c

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

* Update src/libultra/flash/osFlash.c

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

* Update src/libultra/flash/osFlash.c

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

* should be fixed

Co-authored-by: petrie911 <pmontag@DESKTOP-LG8A167.localdomain>
Co-authored-by: MMDecomp <mmdecomp@gmail.com>
Co-authored-by: Tharo <17233964+Thar0@users.noreply.github.com>
Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com>
Co-authored-by: Kenix3 <kenixwhisperwind@gmail.com>
2021-11-03 18:30:20 -04:00
louist103 8e88768a70
Fireobj Kinda OK (#400)
* done

* format

* PR fixes

* revert formatting z64.h

* Update warnings_build_current.txt
2021-11-03 15:09:43 -03:00
Isghj 60b9cd789e
Demo_Kankyo (Lost Woods Sparkles) (#380)
* Demo_Kankyo

* DemoKankyo: docs

* DemoKankyo: documenting this is a pain...

* found bug

* DemoKankyo: docs

* DemoKankyo: function renamed

* DemoKankyo: docs

* DemoKankyo: more docks

* DemoKankyo: more docks

* DemoKankyo: docs and format

* DemoKankyo: requested changes

* DemoKankyo: bug documented

* PR feedback via docs

* DemoKankyo: minor documentation and format

* DemoKankyo: requested changes

* DemoKankyo: removed some old comments

Co-authored-by: Maide <eeeedddccc@hotmail.co.uk>
Co-authored-by: isghj8 <isghj8@gmail.com>
Co-authored-by: engineer124 <engineer124engineer124@gmail.com>
2021-11-03 12:10:54 -03:00
louist103 fcbd524b5d
Debug display mostly OK (#399)
* WIP

* done?

* remove something from variables.h

* missed a warning

* PR fixes (AngheloAlf)

* fix lights

* restore ZAPD makefile

* format

* format again

* fix a graph alloc

* Missed one in skin
2021-11-03 11:52:01 -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 8beaa7841e
En_Mushi2 (#304)
* En_Mushi2

* Warnings

* Fix

* YOLO

* Format
2021-10-27 15:36:06 -03:00
Maide a60c47a970
En_Fish2 (#292)
* En_Fish2

* Fix
2021-10-27 10:28:52 -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 4c43661cf3
Decompile the GameStateOverlay table (#337)
* Decomp GameStateOverlayTable

* spec

* Review

* gSchedContext

* Format

* Fix bss
2021-10-12 10:25:20 -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
EllipticEllipsis bd9e21b165
`z_nmi_buff` OK, `code_8010C1B0` split and OK (#334)
* nmi_buff OK, code_8010C1B0 split and OK

* COLD_RESET

* spec

* Fix lifemeter bss

* Rename variable
2021-09-29 22:13:31 -04:00
EllipticEllipsis 5c06a6b240
Main OK (#329)
* Main OK, use defines where known

* Couple more defines

* Tharo's review

* Fix lifemeter bss
2021-09-29 18:27:07 -04:00
Anghelo Carvajal 96cd49b6d5
`ovl_En_Test4` with 1 non-matching (#319)
* Decompile update and stuff

* Decompile some more

* func_80A41FA4 non_matching

* init is a disaster

* Import bss

* match func_80A41D70

* Improve func_80A42AB8 a bit

* equivalent EnTest4_Init

* Import data

* CLOCK_TIME

* Run formatter

* func_80A42AB8 may be equivalent now, not completely sure

* match func_80A42AB8

* Some minor renames

* Name some struct members

* Format

* format in bigpo

* fix merge issue

* Apply suggestions from code review

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

* Description: Day transition effects

* Un-rename unk_144

* Update include/macros.h

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

* sIsLoaded

* Update src/overlays/actors/ovl_En_Test4/z_en_test4.c

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

* review

* format

* daytemp

Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com>
Co-authored-by: EllipticEllipsis <73679967+EllipticEllipsis@users.noreply.github.com>
2021-09-29 00:08:54 -03: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
EllipticEllipsis ddc643f708
`ovl_opening` OK (#300)
* ovl_opening OK

* un-format z64save.h

* Actually change the other uses of nextCutsceneIndex

* format

* Review

* engineer's review

* Get it to match again
2021-09-28 21:17:39 -04: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
EllipticEllipsis c72b5788a3
sys_math, cosf OK and documented, sinf, coss, sins documented (#289)
* OK, data imported, document

* spec

* Match cosf, document sinf and cosf

* Some more documentation, switch fu back

* Format

* Little more documentation

* Document coss too

* Move macros

* Review, add some .s

* Fix headers, review
2021-09-27 17:41:07 -04:00
rylieb bc5c3866d5
Obj_Syokudai (Torch) OK and mostly documented (#306)
* Started uncommenting statics, but then realized this actor has BSS, lol.

* Import .data and .bss. Run format.sh.

* ObjSyokudai_Init OK and mostly documented.

* ObjSyokudai_Destroy OK and fully documented.

* ObjSyokudai_Draw OK and partially documented.

* Good progress on ObjSyokudai_Update, but NOT OK.

* Instruction match, but needs regalloc and stack.

* Stack is closer now.

* Obj_Syokudai OK, no new warnings, ran formatter.

* Documented .data and .bss variables.

* Final documentation pass before PR.

* Add header, fix build errors.

* Use COLTYPE_METAL and COLTYPE_WOOD macros.

* Apply suggestions from code review

engineer124's suggestions.

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

* Apply suggestions from code review

engineer124: WaterBox* instead of UNK_PTR

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

* Update src/overlays/actors/ovl_Obj_Syokudai/z_obj_syokudai.c

engineer124: AC_HARD -> AC_HIT so Jenkins stops complaining

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

* Hopefully fix Jenkins via z_bg_lotus WaterBox*.

* Rename sp2C to waterBox in BgLotus.

* Run format.sh.

* Update include/functions.h

Change func_800F22C4 param_1 from s8 to s16.

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

* Change func_801A5CFC param_1 to sfxId in prototype

* Document interactions.

* Run formatter.

* Clarify that posDiff is relative to stick *tip*.

* Changed interaction comparisons to better fit enum

* snuffTimer enum

* Added more #defines.

Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com>
2021-09-25 09:53:53 -04:00
Anghelo Carvajal 2ff7320409
`ovl_daytelop` OK (#277)
* eeeee

* nonequivalents

* draw

* Import data

* Match Daytelop_LoadGraphics

* draw kinda better

* extract daytelops and gameover

* SEGMENT_ROM macros

* Use extracted symbols for daytelop

* match Daytelop_Draw

* Fix bss

* draw cleanup

* Daytelop_Update from non equivalent to non matching

* Some renames and spec

* Run formatter

* enum

* sfx

* Use SEGMENT_ROM_START macros everywhere

* more macros

* run formatter

* Add description

* update variables.txt

* Remove extra stuff in gbi.h

* Would this fix it?

* and again

* whoops

* Apply suggestions from code review

Co-authored-by: Tharo <17233964+Thar0@users.noreply.github.com>

* Tharo's suggestions

* match Daytelop_Update

* run formatter

* fix merge issues

Co-authored-by: Tharo <17233964+Thar0@users.noreply.github.com>
2021-09-22 21:50:35 -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
Maide c96d1df320
En_Dodongo (#242)
* En_Dodongo

* NBS

* PR

* PR

* PR

* PR
2021-09-01 18:53:12 -04:00
EllipticEllipsis fa95f9e6e8
Migrated a lot of `boot` bss, matched a few NON_MATCHINGs in `boot` (#266)
* Import bss to boot_main and idle, match last function in idle

* Some pointer cleanup in idle, spec

* Clean up idle, add build.c, add bss to CIC6105

* Import rand bss

* sptask bss and a macro

* sptask updated to use libultra macros

* siacs.c bss

* Macros in CIC and idle

* controller bss

* seteventmesg bss

* spec

* pimgr and piacs bss

* initialize OK, threadsave, initialize, pimgr bss

* Match DmaMgr_Start

* Fix bss reorder using separate file

* Small cleanup of hex/dec in buffer sizes

* Add comment, remove unused bss from spec

* Merge remote-tracking branch 'upstream/master' into boot_bss

* Format

* Delete files

* remove commented-out structs

* Bit more cleanup

* Addressed reviews

* Format
2021-08-18 11:12:35 -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
Andzura 3e0801890d
z_lifemeter (#247)
* z_lifemeter done.

* fix new warning I didn't saw. add variables.txt

* suggested changes

* add new texture ptrs to undefined_sym, changed heartTex & temp to TexturePtr in LifeMeter_Draw

* change hex literal to decimal and other small suggestions

* change bool to u32; change hexa literal to decimal in LifeMeter_IsCritical; renamed undefined sym to their D_02 addresses

* re-applied format.sh on z_lifemeter

* coding style fixes

* fix typo in undefined_sym

* named func and vars.

* changed modulo check

* add extra line after var declaration in LifeMeter_Draw

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

* changed unkTimer to camelCase; timer constant as decimal; flip some comparison in LifeMeter_Draw

* uncomment & rename func_ in functions.h

* Update include/functions.h

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

Co-authored-by: Andzura <andzura@andzura.fr>
Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com>
2021-08-15 12:20:35 -04:00
Derek Hensley 3bac4232fd
Matched last function in Ovl_en_encount2 (#252)
* Matched last function

* Format

* Fix Gfx arrays
2021-08-08 23:08:01 -04:00
Maide a35f091505
En_Dno (#238)
* En_Dno

* NBS

* PR

* PR
2021-08-08 14:05:52 -04:00
Maide 9d80797251
En_Dnb (#236)
* En_Dnb

* NBS

* PR
2021-08-08 12:02:34 -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
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
engineer124 9637e19303
EnClearTag OK and documented (#214)
* merge main

* Match Init

* Clear_Tag OK

* Full documentation

* More docs

* Fix function

* Fix MakeFile for assets and Fix texture swapped names

* Fix name

* Improve name and remove pad

* Can't stop the minor tweeks

* Adding potential Makefile fixes

* Minor name change

* Another name fix... and format

* PR Suggestion & Add Overlay File Description

* Re-documentation to match OoT WIP (more to come)

* Finish docs from OoT

* Fix merge and format

* Minor touch-ups

* Cleaner conditional
2021-07-20 11:07:05 -04:00
engineer124 7b154c23e1
AudioMgr OK and Mostly Documented (#208)
* AudioMgr OK

* Cleanup

* Improve naming from PR Feedback
2021-07-19 19:49:29 -04:00
Derek Hensley 594a3ceaff
Ovl_En_Fsn Ok and Documented (#204)
* First decomp pass: Matched everything w/ data

* Minor cleanup of func_80AE2F78

* Documented

* Format

* Some cleanup and PR suggestions

* Format

* Add the word player to a few functions to specify it is the player trying to buy

* Add controller macros

* Move common shopkeeper defines

* name unk274 and add note to unk27A

* Remove macros and just use flag defines

* Convert Controller Macros to take globalCtx

* Fix merge conflicts
2021-07-19 19:26:47 -04:00
engineer124 b5c931e432
z_quake OK and documented (#213)
* Create z_quake.c file

* Match all quake functions with OoT counterparts (quake2 left)

* z_quake OK

* Document first half of quake

* More docs

* more cleanup

* remember to format!

* PR Suggestions

* More PR Suggestions
2021-07-19 19:06:54 -04:00
EllipticEllipsis 66d0656128
C file for Fishing, some changes to collider scripts, a few minor cleanups (#210)
* Improve match in EnFirefly_Draw

* Vestigial fishing files, add enums

* Improve scripts, add ColChkInfo one

* Some minor actor cleanup (static etc)

* C file for Fishing, remove some local vars from variables.h

* Remove comma and format

* Newline

* Review suggestions
2021-07-15 00:33:20 -04:00
Derek Hensley 70b67402cb
ovl_en_in OK (#173)
* First pass, 5 still non matching

* data

* cleanup

* Progress on func_808F33B8

* func_808F33B8 is ugly but it matches

* func_808F5728 ugly but matches

* cleanup

* More cleanup/doc a possible inifite loop bug

* Cleanup of the switch

* Readd functions returns

* More progress on THE switch

* Everything matches but the MACROS

* OK

* Add new global Animaion struct

* fix arg name

* PR suggestions pt 1

* PR suggestions pt 2

* Fix up a few things

* Add comment about walking flag

* update functions.txt

* Update 7 to more explicit bits

* More PR cleanup
2021-06-10 23:08:25 -04:00
engineer124 8b21da8c34
Match Remaining EnGinkoMan Functions (EnGinkoMan OK) (#175)
* EnGinkoMan OK

* Cleanup

* Minor PR suggestion
2021-06-09 18:49:20 -04:00