Commit Graph

34 Commits

Author SHA1 Message Date
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
Anghelo Carvajal 5fcd494a7a
`ovl_En_Ma4` matched and mostly documented (#199)
* First pass

* limbdraw

* another one

* lots of stuff

* stuff

* big one

* func_80ABEB6C

* The NON_MATCHING that matches in reality

* "Fix" some cases

* Fix merge issues

* fix func_80ABF254

* match a pair

* func_80ABF7C8

* func_80ABE1C4

* func_80ABF354

* func_80ABF534

* Import data

* Limb fixes

* Minor renames

* Fix merge issues

* A few renames

* Rename half the functions

* More renames

* More renaming

* documentation finished

* Format

* fix typo

* whoops

* Fix merge issues

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

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

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

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

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

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

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

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

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

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

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

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

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

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

* Update variables names

Co-authored-by: Kenix3 <kenixwhisperwind@gmail.com>
2021-07-13 21:49:05 -04:00
Zelllll 6db3fc7b32
Document most of global context (#198)
* doesn't build for some reason..?

* some formatting fixes

* windows calculator is trash

* fix!

* fix2

* most of global context documented

* interfacectx

* hopefully fix interface

* document restrictions

* envCtx done

* revert accidental change

* fix

* pause ctx done

* fixxxxxxxxxxxxxxx

* remove unintended zapd change

* fix..?

* format files

* Update include/z64.h

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

* ocarinstaff

* Update include/z64.h

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

* Update include/z64.h

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

* suggestions

* fix mistake in pausectx

* typo

* door context

* renames

* all nb removed

* Update include/z64.h

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

* Update include/functions.h

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

* fix kanfont, new docs

* format files, merge master

* fix typo in linker script

* extract asm properly

* door context rename

* fixes in door context

Co-authored-by: Tharo <17233964+Thar0@users.noreply.github.com>
Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com>
2021-07-05 21:14:27 -04:00
Anghelo Carvajal 3098abd4f6
Add current missing functions prototypes (#181)
* First bash

* Another batch

* Another bunch

* Update actorfixer

* run format

* Apply suggestions from code review

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

* Suggestion

* context renaming

* Update include/functions.h

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

* Fix renamings

* fix

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

* OK!

* fix data

* finish data etc

* work on save context

* save finished

* first func done

* roomInf

* done for now

* add missing file

* add most og names for struct members

* fix accidental change

* Update z_en_ginko_man.c

* Update z_scene.c

* maybe fix stuff hopefully

* proto

* sasa

* Update include/z64save.h

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

* Update z64save.h

Co-authored-by: Anghelo Carvajal <anghelo.carvajal.14@sansano.usm.cl>
2021-05-25 18:49:11 -04:00
Zelllll 874a75f456
Scene Changes (#114)
* match function

* major cleanups

* rename switch functions

* use graph_alloc to fix fake matches

* more documentation

* more matches, lots of changes

* lots more work

* format

* Update z_scene_proc.c

* very hard lagrange interpolation function OK!

* remove any remaining

* documentation done, only two functions left

* a few more things

* one function left!

* document another oot leftover

* last function decompiled, not matched yet

* scene_proc complete

* start work on z_scene

* done with z_scene

* remove unessecary typedefs

* fix some things to remove warnings

* Add z_scene_table and decomp data

* Delete ctx.c

* add draw cfg enum

* cleanup

* most scene table functions done

* done for now

* all scene files done

* Update include/z64scene.h

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

* add missing macros

* fix some renames

* scene texture file rename

* added temporary structs so it still builds

* more structs

* even more old structs

* fix boyo

* should fix compile error

* lets hope nothing broke

* ub comment back

Co-authored-by: Anghelo Carvajal <anghelo.carvajal.14@sansano.usm.cl>
2021-05-09 22:12:42 -04:00
Kenix3 c40bb119e1
Adds in scene support (#117)
* 1 scene done, Z2_SOUGEN OK

* All scenes OK

* Makefile improvements

* Use WIP ZAPD branch as submodule

* Add spawn rotation flag macro

* Fix bad merge

* Move scenes to be in their own subfolders

* Rename and restructure extracted baserom files

* Progress tracking for assets

* Add asset progress to csv

* Use master ZAPD

* Use distclean like in OOT

* Fix up a few things with the makefile

* Fix scenes not being dumped from ELF

Co-authored-by: Rozelette <Uberpanzermensch@gmail.com>
2021-04-29 18:56:18 -04:00
Isghj 768ca0839b
DoorAna: OK (#90)
* DoorAna: OK

* DoorAna: changed z_lib functionname to match new master

* DoorAna: requested changes

* DoorAna: requested changes

* DoorAna: Renamed nextEntranceIndex

* DoorAna: some changes requested

Co-authored-by: isghj8 <isghj8@gmail.com>
2021-04-18 14:16:14 -04:00
Rozelette d2c181a0a9
z_lib fully matched (#85)
* z_lib OK

* Documentation

* Added stdbool and stdint

* Fixup for new names

* Fixup bad merge

* Feedback

* Use u/s32 for intptr_t
2021-04-07 17:16:16 -04:00
Lucas Shaw 623b6d5318
Some OOT transfers, some renaming, etc (#75)
* Progress on various files

* gfxprint stuff

* split some rodata, add iconv for rodata string parsing

* z_std_dma rodata

* 2 nonmatchings in gfxprint

* mtxuty-cvt ok

* more

* match a function in idle.c

* progress

* Cleanup

* Rename BgPolygon to CollisionPoly

* progress

* some effect stuff

* more effect progress

* updates

* made suggested changes

* z_effect_soft_sprite_old_init mostly ok

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

* Documentation

* Fixup for z_collision_check

* Improve function types of bind functions

* Fixup for types
2021-03-27 14:29:30 -05:00
kyleburnette a0b8a7c718
TwoHeadArena and TwoHeadGfxArena OK (#83)
* TwoHeadArena and TwoHeadGfxArena OK

* Changed negatives to ~ in TwoHeadArena.c

* Renamed functions to match OoT

* Formatted code files

* Removed dispbuf
2021-03-27 12:13:56 -05:00
Rozelette 6e4d156ad7
Door_Spiral OK (from zel) (#87)
* Door_Spiral OK

* Cleanup
2021-03-27 12:17:42 -04:00
Zelllll fb1ed529ad
Add OoT actor structs and enums (#55)
* add oot structs

* revert formatting

* fix comment thing

* fix accidental renames

* slight fix

* naviEnemyId -> hintId

* fix headers
2021-02-28 22:52:12 -05:00
Rozelette 07efebe2ff
z_actor_dlftbls.c OK. Rework a bunch of segment address organization. (#29) 2020-09-27 20:19:06 -04:00
Rozelette 0844c24773
Split headers to be more similar to OOT (#13) 2020-08-31 19:02:37 -04:00
Rozelette 125b16cb17
Add object enum (#9) 2020-08-07 18:12:03 -04:00
Rozelette f37da749f6
Add actor and scene enums (#8) 2020-08-06 18:06:38 -04:00
Kenix3 e80336d4a8 Initial code format 2020-07-24 20:00:52 -04:00
Kenix3 2d191e301a Adds TODO comments to remove implementation defined pointer manipulation. 2020-06-06 19:27:28 -04:00
Kenix3 cb8b9a2020 z_lib now uses SEGMENTED_TO_VIRTUAL macro
Additionally removed some TODO comments in z_scene and defining gRspSegmentPhysAddrs array size as NUM_SEGMENTS
2020-06-04 23:25:57 -04:00
Kenix3 5c97d35841 Added macros header
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.
2020-06-04 23:07:09 -04:00
Kenix3 664182c289 Fixes known undefined behaviour from DmaMgr and Lib_Ptr taking u32 rather than void* 2020-06-04 21:41:44 -04:00
Kenix3 dfbcac539e All z_scene functions now OK 2020-06-04 20:41:16 -04:00
Kenix3 f230898dfe
z_scene functions now use the same structs as OOT (#3)
* z_scene now uses OOT structs where available

Additionally commits a decompiled z_actor function.

* Fixes audio_setBGM function call in Scene_HeaderCommand15

* Update structs.h

Co-authored-by: rozlette <uberpanzermensch@gmail.com>
Co-authored-by: Egor Ananyin <ananinegor@gmail.com>
2020-04-29 22:14:29 -05:00
rozlette ec3ccda941 Fix build issue 2020-04-21 00:45:00 -05:00
Kenix3 2ab90dca27
Adds in fully matching Scene_HeaderCommand00
Additionally fixes code formatting in Scene_HeaderCommand15
2020-04-08 18:37:27 -04:00
Kenix f8713ceb46 Decompile functions in z_scene 2020-04-08 17:49:40 -04:00
rozlette ff958ad932 Rename many functions, structs, and variables to match the oot decomp. Some things have not been renamed as their respective files have not been decompiled yet. 2020-03-15 01:13:53 -05:00
rozlette 581a97b561 Make non-matchings consistent with oot 2020-02-20 16:29:22 -06:00
rozlette e45d0ef673 Normalize line endings 2020-02-19 11:18:03 -06:00
Kenix3 bfcc1d6a9a
Decompiling functions in z_scene (#4)
* Decompiling functions in z_scene

* Bringing decompiled functions in line with project style
2020-02-17 23:17:07 -06:00
rozlette 69351886bf Fix nonmatching location in z_scene stub 2020-01-25 00:23:32 -06:00
Kenix 498909ea18 Splits out z_scene for decompilation. 2020-01-23 22:24:02 -05:00