* 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
* 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
* 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>
* 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>
* 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
* 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>
* 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>
* 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
* 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
* 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
* 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
* 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
* First pass
* second pass
* Everything matches now
* Fix ori
* final pass
* Add description
* Fix warnings (I hope)
* move dlist to top of the file
* Fix conflicts
* 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>
* 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
* 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>
* 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
* 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
* 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>
Additionally, updated code to use PHYSICAL_TO_VIRTUAL and ALIGN16 macros.
Additionally, retyped gRspSegmentPhysAddrs back to u32 as in OOT. These get the straight return value of PHYSICAL_TO_VIRTUAL, so they are u32.