Commit Graph
205 Commits
Author SHA1 Message Date
EllipticEllipsisandGitHub d5b71bd0f5 Tutorial (#362)
* ObjTree OK, data imported

* EnMs OK, data imported

* And the spec

* OK

* Some minor edits

* A lot of preliminary stuff

* Mostly complete beginning

* First draft of other functions doc

* Whoops, forgot the GlobalContext pad

* Draw functions (minus colour), create Data

* Data

* gitignore, some progress on documenting

* Review comments, continue documenting

* spec

* Finish off documentation

* undefined_syms

* Add a couple of todos

* One more

* At least add tools for object decomp

* Start conversion table stuff

* Document ObjTree

* Document EnMs

* Add more tables to conversions

* Maide's review

* Review

* Review

* Typos and incomplete thoughts

* Update vscode.md

* Correct function/variable names

* Review suggestions

* Format

* Missed one

* Rename functions and format

* Fix ObjTree

* Update actorfixer.py, fix some variable names

* Some review

* Review suggestions

* More review

* Hopefully fix all the thisx references

* Missed one
2021-12-16 18:47:18 -05:00
EllipticEllipsisandGitHub 9ca4ec7604 ZAPD fixes in sys_initial_check, update subrepos (#507)
* git subrepo pull --force tools/ZAPD

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

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

subrepo:
  subdir:   "tools/asm-differ"
  merged:   "70c33cc12"
upstream:
  origin:   "https://github.com/simonlindholm/asm-differ.git"
  branch:   "main"
  commit:   "70c33cc12"
git-subrepo:
  version:  "0.4.3"
  origin:   "https://github.com/ingydotnet/git-subrepo.git"
  commit:   "2f68596"

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

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

* Use defines for texture sizes in sys_initial_check

* Update extract_assets.py

* Add null check

* git subrepo pull --force tools/ZAPD

subrepo:
  subdir:   "tools/ZAPD"
  merged:   "50242eca9"
upstream:
  origin:   "https://github.com/zeldaret/ZAPD.git"
  branch:   "master"
  commit:   "50242eca9"
git-subrepo:
  version:  "0.4.3"
  origin:   "https://github.com/ingydotnet/git-subrepo.git"
  commit:   "2f68596"
2021-12-15 23:05:29 -05:00
Lucas ShawandGitHub ff231e093a z_vr_box_draw OK (#481)
* z_vr_box_draw OK

* ok

* Removed z_vr_box_draw.data.s, its actually z_sram_NES.data.s

* Added enum SkyboxId
2021-12-07 04:36:02 +00:00
engineer124andGitHub 1ab0fb5557 Importing Audio Sfx Params (#472)
* Import audio sfx params

* Add TODO: description for this file
2021-12-07 00:39:51 +00:00
Tom OvertonandGitHub d218c9be23 En_Stream (unused water vortex from OoT) OK (#480)
* En_Stream (unused water vortex from OoT) OK

* Better names in EnStream_PlayerIsInRange

* Enum for whether the player is in range
2021-12-06 23:52:18 +00:00
5b7df3f1ca EnHitTag OK (#482)
* EnHitTag all matching, data still not imported

* rename loop counter variable to i

* imported data

* use generated reloc

* cleanup

* name func_80BE20E8, document with ITEM00_RUPEE_GREEN enum, use if-return-implication in WaitForHit

* add switchflag param macro

* use previously unused pCylinder as function arguments

* use THIS macro and change switchflag macro to take actor pointer

* space between var declaration and code

* format

* rename pCylinder to cylinder

* rename cylinder to collider

* change ColliderCylinder* to pad

Co-authored-by: retro <retro@DESKTOP-KGV19SQ.localdomain>
2021-12-06 21:50:59 +00:00
MaideandGitHub 08cf506be7 Dm_Stk (#350)
* Dm_Stk

* PR
2021-12-06 21:45:28 +00:00
Zach BanksandGitHub b031598460 Disassembly performance improvements (speed, RAM) (#478)
* Improve disasm.py RAM usage using `bisect`

This is based on AngheloAlf's work in PR #477, but uses the built-in
library `bisect` instead of adding an external dependency.

* Caching vrom_variables for ~25% faster disasm.py
2021-12-06 20:21:01 +00:00
Derek HensleyandGitHub e177e99933 Elf_Message OK (#457)
* Matched

* Rename function
2021-12-06 14:42:17 -05:00
ce1de034df z_obj_mure.c (#364)
* a bunch of OKs and close functions

* OK All but 1 function

* Clean up code

* Match

* implement suggestions

* OBJMURE_CHILD_STATE_DEAD

* Update src/overlays/actors/ovl_Obj_Mure/z_obj_mure.c

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

* use enum for type tests

* add OBJMURE_TYPE_MAX

Co-authored-by: Kelebek1 <eeeedddccc@hotmail.co.uk>
Co-authored-by: Kenix3 <kenixwhisperwind@gmail.com>
Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com>
2021-11-30 22:18:58 -03:00
mzxrulesandGitHub 6b493d3f9d z_bgcheck.c (#357)
* first few functions

* two more almost matching functions

* Rebase to NBS, get it to compile

* BgCheck_RaycastFloorStaticList OK, fix-up some functions

* BgCheck_SphVsStaticWall OK! and a few others

* more z_bgcheck NON_MATCHINGS

* OK more functions, reorganize external reference #defines

* More functions OK, more struct fixes

* More OKs

* Decomp all the way to the end of bgcheck

* All functions attempted

* Rename functions

* formatting, data migration

* Give names to unk structs, rename some structs, fix some non-equivalent functions

* WaterBox_GetSurfaceImpl OK

* BgCheck_ResetPolyCheckTbl OK, improve WaterBox_GetSurface2 codegen, eliminate warnings and clean up source.

* BcCheck3_BgActorInit ->BgCheck3_BgActorInit, fix warnings

* pr change requests

* fix crc maybe

* implement more changes

* implement alf's changes
2021-11-23 13:29:18 -03:00
engineer124andGitHub ea17d924e4 Audio BGM Macros (#460)
* Introduce bgms

* Fill in bgm enums

* Rename bgm to clearer names

* Fix spacing

* Fix "No_Music" define

* remove comment

* Improve bgm names, found another seqId function

* Another seqId function

* Another name change

* Woods of Mystery -> Sarias Song

* add saria's song bgm to pierre

* Another bgm function found!

* Add bgm's to `gSaveContext.seqIndex`
2021-11-20 11:01:37 -03:00
MaideandGitHub 97425f68ae m2ctx: Optionally return Player* for Player accesses (#446)
* m2ctx

* Rename
2021-11-20 00:17:33 -03:00
EllipticEllipsisandGitHub 48a5116389 cartrominit OK (#412)
* cartrominit OK

* spec

* Rename a couple of variables
2021-11-20 00:15:50 -03:00
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
engineer124andGitHub 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
9a424688b1 Add ability to warnings script to just check building (not setup or disasm) (#414)
* Add option to run warnings on just build

* Rename all to full

* Update tools/warnings_count/check_new_warnings.sh

Remove testing code.

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

Co-authored-by: EllipticEllipsis <73679967+EllipticEllipsis@users.noreply.github.com>
2021-11-19 12:52:32 -03:00
engineer124andGitHub d190b265f6 Audio Files & Data: Fix File/Data Splits and Compiler Flags (#456)
* Properly split audio voice

* Split off jpeg code from audio

* Fix compiler flags

* Properly split libultra audio file

* Split audio data for many files correctly

* Fix remaining data splits

* Fix up troublesome data

* Fix variables.txt

* Missed two files that need to go in audio/

* Add missing `/`

* `D_801E1100` -> audio_init_params

* Properly split code_801D9090.data.s

* Fix code_801A5BD0 bss

* Move audio_dramStack to a blob
2021-11-19 09:36:50 -05:00
89b9d90826 En_Kakasi (Scarecrow) (#279)
* EnKakasi: rebase progress into one commit

* EnKakasi: fixes to get compiling on master, still doesn't match

* EnKakasi: is this even progress?

* EnKakasi: docs and cleaning

* EnKaksi: damn it, that master merge really messed up more than I thought, after clean build something really weird is going on and now I REALLY need firstdiff

* EnKakasi: Back to building, NOT OK

* fixed a code

* only rodata left to fix

* EnKakasi: functions got removed in included functions

* EnKakasi: thanks to fig mentioning there were missing cases, OK

* EnKakasi: (OK) docs and cleaning

* EnKakasi: Init now matches

* EnKakasi: cleaning and docs

* EnKakasi: more cleaning and docs

* EnKakasi: forgot function declarations

* EnKakasi: spec

* EnKakasi: animation array symbols added

* EnKakasi: formater pass

* EnKakasi: type warning fix

* EnKakasi: little descriptor

* EnKakasi: OK thanks to AngheloAlf

* Apply suggestions from code review

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

* Update src/overlays/actors/ovl_En_Kakasi/z_en_kakasi.c

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

* Apply suggestions from code review

Splitting this into pieces to not have a huge pile of bugs

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

* EnKakasi: wrong type of inverse flag

* Apply suggestions from code review

Batch 2

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

* EnKakasi: RIP Anime

* Apply suggestions from code review

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

* EnKakasi: Anim enum update

* EnKakasi: Removed text documentation

* EnKakas: return of THIS

* Update src/overlays/actors/ovl_En_Kakasi/z_en_kakasi.c

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

* EnKakasi: mystery solved but not understood

* Apply suggestions from code review

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

* EnKakasi: rename EnKakasi_CheckAnimateSFX to EnKakasi_CheckAnimationSfx (no real reason to shorten Animation to Animate, and SFX is not initialism, its a shorten)

* EnKakasi: minor change to touch jenkins

* EnKakasi: is it loise-uni?

* EnKakasi: fixed skelanime changes

* EnKakasi: formater pass

* EnKakasi: requested changes

* Update src/overlays/actors/ovl_En_Kakasi/z_en_kakasi.h

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

* EnKakasi: removed un needed pad

* EnKakasi: removed redundant documentation comment

Co-authored-by: isghj8 <isghj8@gmail.com>
Co-authored-by: Anghelo Carvajal <angheloalf95@gmail.com>
Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com>
Co-authored-by: Derek Hensley <hensley.derek58@gmail.com>
2021-11-18 14:33:23 -03:00
Kenix3andGitHub 0c3bba3ff6 Moves func_800CB000 to z_bg_item, decompiles func_800CB000, and documents z_bg_item and a few DynaPolyActor struct members. (#407)
* Moves func_800CB000 to z_bg_item, decompiles func_800CB000, and documents z_bg_item and a few DynaPolyActor struct members.

* Adding usage of dynapoly state flag defines.

* Formats z_bg_item

* Update z_bg_item.c

* Update z_bg_collect.c

* Update z_bg_item.c

* Update z_bg_item.c

* Renames z_bg_item system to DynaPolyActor

* Format
2021-11-14 19:06:34 -03:00
EllipticEllipsisandGitHub 285381e662 vimgr OK (#421)
* vimgr OK

* spec

* OSIoMesg, add OS_MESG defines, other review

* Review
2021-11-11 15:30:31 -03:00
b245740020 CRC files OK and documented (#409)
* crc.c OK and documented

* chmod calc_bss.sh and add base dir to includes

* Port voicecrc work, add documentation

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

* Add full stop

* Review

* Format

* Add some more `!= 0`s

* size_t

Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com>
2021-11-11 15:03:05 -03:00
Anghelo CarvajalandGitHub c018e83d36 Remove decomp-permuter (#447)
* Nuke decomp permuter

* Add decomp permuter and mips2c to gitignore
2021-11-11 12:46:18 -03:00
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
Connor AndersonandGitHub 25c60c6911 Add multiprocessing to disassembly script (#449)
* Fix naming bug in disasm.py

* Factor out segment disassembly

* Add multiprocessing for disassembly

* Add multiprocessing for symbol discovery
2021-11-11 11:36:40 -03:00