* Fix assert in z_en_horse.c
* Fix UB sceneFlags access in z_en_elf.c
* Add Object_Spawn to public object functions
This function is used externally in MM and works as a standalone, so it most likely belongs to the public interface
* Fix float literals to always use lowercase e for the exponent
* Remove "mininap" in one of the map data variables
sDgnMinimapTexIndexBase is also used for the pause menu map so naming it for the minimap turned out to be inaccurate
* Pass boolean for `freezeFlag` to `Actor_SetDropFlag`
* Use `else if`s in `func_80835F44`
* Cleanup `transitionCtx` usage of instance data
* `TransitionContext.setEnvColor` -> `TransitionContext.setUnkColor`
* Fixup one comment
* linebreaks (#1)
* Run formatter
Co-authored-by: fig02 <fig02srl@gmail.com>
* Name rsp ucodes and surrounding cleanup
* Fix comments alignment and remove unnecessary & in sys_ucode
* Change capitalization of sys_ucode variables
* Remove unnecessary externs for aspMain
* Improvements to Jpeg_ScheduleDecoderTask
* Split unknown rsp code into a separate file, spacing
* Format all handwritten asm and document some
* Use c preprocessor for constants
* Fix
* Fix PI_STATUS_ERROR, some label improvements
* Avoid hi/lo for constants
* Some more comments
* Properly mark functions as functions and their sizes
* Fix merge
* Improvements
* Review suggestions, rework procedure start/end macros to be more like libreultra
* Move IPL3 symbol definitions into ipl3.s
* Fix undefined_syms, add include and language guards to asm.h and fix the comment in gbi.h
* Consistent hex capitalization, add some MIPS builtin defines to CC_CHECK to behave properly
* Add -no-pad-sections assembler option and clean up alignment in gu files and bzero
* Further suggestions and improvements
* Matrix conversion function clarifications
* Fix passing AVOID_UB to gcc
* Suggestions
* Suggestions, global interrupt mask improvements
* Further suggestions, interrupt mask comments
* Comments fixes, rdb.h
* Switch from # comments to // comments, remove unnecesary .set gp=64 directives
* Further review suggestions
* Missed one
* transition type enum
* mode enum, start documenting some types
* some more
* use enums for entrance table
* entrance table filled out
* sceneLoadFlag -> transitionTrigger
* sandstorm state/mode/type
* done i think
* fixes
* clean up circle weirdness
* circle use enum + fix texture names
* fix
* how did that even happen lol
* jesus
* review2
* some more review
* most review, still some more to do
* new transition trigger names
* some of review
* next type default
* message queues, threads, and surroundings cleanup
* Format, make the formatter prefer clang-format-11 if found
* Fix __osThreadTail type
* Q -> Queue, thread defines renamed
* Reformat, add missing NULL
* Suggested changes and further casting cleanup
* Reformat
* padmgr name fixes
* Fix typo `tranform` -> `transform`
* (may be controversial) `indexes` (noun) -> `indices`, both are correct but `indices` prevails in the repo currently, and seems prefered in technical contexts
* Fixup one `@bug`
* Fix typo `relfect` -> `reflect`
* Rename and `@bug` `DemoTreLgt_OverrideLimbDraw`
* Fixup `PLAYER_AP_` to `ARROW_` type conversion
* `posModel` -> `modelPos`
* `effSpawnPosModel` -> `effSpawnModelPos`
* Gohma decay bug: Verified that timers do not prevent UB access
* Reorder summation in a more meaningful way
Co-authored-by: JoshDuMan <40190173+JoshDuMan@users.noreply.github.com>
* Introduce and use more enums and defines for equips and data involved in player drawing
* `EQUIP_TYPE_`, `EQUIP_INV_`, `EQUIP_VALUE_`
* Improve doc on ItemEquips/Inventory's `equipment` field
* Run formatter
* Add `PLAYER_MODELGROUPENTRY_*` for second index of `gPlayerModelTypes`
* Name `PLAYER_MODELGROUPENTRY_*` from existing documentation
* Partial doc on `PLAYER_MODELTYPE_*`
* Some doc on `PLAYER_MODELGROUP_*`
* Run formatter
* Name and some doc/cleanup on the various player draw functions
* Name symbols used for player position in pause menu
* Name player override/post limb draw callbacks
* `BOOTS_NORMAL` -> `BOOTS_KOKIRI`
* `EQUIP_INV_SWORD_GIANTKNIFE` -> `EQUIP_INV_SWORD_BROKENGIANTKNIFE`
* `currentSword` -> `currentSwordItem` to avoid confusion with `PlayerSword` enum
* Make one constant more explicit
* Document severe bug (not an issue by luck)
* Some doc on `PLAYER_MODELTYPE_RH_FF`
* Actually name most of `PlayerModelType`
* Actually name most of `PlayerModelGroup` and improve comments
* Make equipment in debug save data use equip enums
* Name symbol for computing player's `bodyPartsPos` and fix struct access
* Name right/left `HandType` symbols
* Add `PlayerBodyPart` enum
* Run formatter
* Introduce defines for pause player render dimensions and cleanup viewport usage in pause drawing
* Document `playerSegment` related usage
* Run formatter
* Revert player bodypart changes
* Revert equips doc changes
* Revert player model and anim data changes
* Revert drawing-unrelated changes
* Move `sTunicColors` tunic comments to after data
* Fixup `Math3D_LineClosestToPoint`
* `gDodongosCavernBossLavaFloorTex` is 32x64
* Name empty-dlist-making functions `_EmptyDList`
* Fix typos
* transitionRate -> morphFrames
* Compare `xyzDistToPlayerSq` to squared values
* Fix hookshot target/post collision header names being swapped
* Fix description of `z_bg_mizu_movebg.c`
* Add scene command comment to `func_80098508` to match other scene command handlers
* Some fixup in `Camera_Demo5`
* `1` -> `ALLOCTYPE_ABSOLUTE` in comment on `ActorContext.absoluteSpace`
* Force dword alignment on OSPifRam
* force_structure_alignment on each Font buffer
* Add ALIGNED8 macro to gSaveContext to ensure alignment
* create alignment.h header and use ALIGN8 in PLAYER_LIMB_BUF_COUNT
* add comment in common_data
* Roman's suggestion
* player_limb_buf_count
Co-authored-by: fig02 <fig02srl@gmail.com>
* Properly align program stacks
* Enforce size being a multiple of 8 bytes
* Correct alignment calculation
* Use an ALIGN8 macro in the stack declaration macro
* merge master
* A little bit
* start docs on lens
* Delete Jenkinsfile
* Make sense of the numbers in `Actor_DrawLensOfTruthMask` f3dzex commands
* More comments on `Actor_DrawLens` f3dzex usage
* remove padding
* renames
* Simplify gfx comments
* Add some line breaks
* Remove undef
Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
Co-authored-by: Louis <louist103@pop-os.localdomain>
* Cleanup parameters passed to `Actor_SpawnFloorDustRing`
* `10` -> `ARROW_NUT` for spawning EnArrow
* Missing empty line after declaration
* Introduce `ACTORCAT_MAX`
* Minor cleanup
* Run formatter
* `sgiDrawIds` -> `giDrawIds`
* `sDmaMgrDataExistError` -> `sDmaMgrIsRomCompressed` bool
* Add Makefile dependencies to rebuild some files when editing actor, object and effect tables in `include/tables/`
* Run formatter
* Revert "Add Makefile dependencies to rebuild some files when editing actor, object and effect tables in `include/tables/`"
This reverts commit c6b9a92139.
* some docs
* rename a bunch of callbacks
* more cleanup
* format
* last cleanup
* some updates
* more docs
* done i think
* name flag and format
* name unused variable
* comments
* revert unwanted change
* z64skin.h
* format
* Address review
* Rename PostLimbDraw callbacks to PostDraw and some PR addressing
* add true/false for setTranslation
* ahhhh
* remove "you"
Co-authored-by: fig02 <fig02srl@gmail.com>
* Name generic anim info structs and cleanup usage
* Make `EnDaiku` use generic struct
* Add `/* decimalid */` comments to all added enums
* small fixes
* Two more generic animinfo structs
* Cleanup usage of newly generic structs
* Cleanup x2 usage of newly generic structs
* `transitionRate` -> `morphFrames`
* Properly name generic anim structs (attempt to at least)
* `anim` -> `animation`
* fixes
* run formatter
* Use consistent prototypes for each actor's ChangeAnim helper
* run formatter
* minor cleanup
* Run formatter
* `Animation_ChangeInfo` -> `Animation_ChangeByInfo`
* Document `func_80033480` more
* More doc in `BgDdanKd`
* WIP Document BgDodoago
The dodongo skull light-eyes-with-bomb puzzle
Some TODOs, jank/legacy code which I'm unsure if it achieves something significant
* Finish documenting BgDodoago
* `BgDodoago_WaitExplosives_` -> `BgDodoago_WaitExplosives`
* Run formatter
* `dlistBuffer` -> `displayListHead`
* Cleanup `UNK_TYPE`, `UNK_PTR` usage
* Add some missing empty lines after declarations
* Remove some legacy comments from non-matching times
* Fix some grammar (mostly "it's"/"its")
* Use proper names for two symbols after ZAPD bugfix
* Cleanup `place_title_cards.xml`
* Use `NULL` to check against `D_8012D260` pointer
* Parentheses around some macro arguments
* wip proofread headers up to z64animation.h
* Fix some disp usage in EffectSsGMagma2
* Fix some incorrect SAC flags
* Remove some instances where bool was used
* Fix a few line numbers to be decimal
* Remove MatrixInternal and use Mtx instead
* Fix gs flag names to be plural for consistency
* Fix some hex numbers to be uppercase
* Fix instances of 0X for hex numbers
* Initial progress on z_message_PAL, very messy
* Fix merge
* Some more progress
* Fix merge
* More z_message_PAL
* Small progress
* More small progress
* message_data_static files OK
* Prepare z_message_tables
* Matched another function, small updates
* Attempt to use asm-processor static-symbols branch
* Refactor text id declarations
* Begin large text codes parser function
* Fix merge
* Refactor done
* Build OK, add color and highscore names
* Remove encoded text headers and automatically encode during build
* Fix kanfont
* Various cleanups
* DISP macros
* Another match aside data
* Further progress
* Small improvements
* Deduplicate magic values for text control codes, small improvements
* Tiny progress
* Minor cleanups
* Clean up z_message_PAL comment
* Progress on large functions
* Further progress on large functions
* Changes to mkldscript to link .data in the .rodata section
* data OK
* Few improvements
* Use gDPLoadTextureBlock macros where appropriate
* rm z_message_tables, progress on large functions
* 2 more matches
* Improvements
* Small progress
* More progress on big function
* progress
* match func_80107980
* match Message_Update
* match func_8010BED8
* done
* Progress on remaining large functions
* Small progress on largest function
* Another match, extract text and move to assets, improve text build system
* Small nonmatchings improvements
* docs wip
* Largest function maybe equivalent
* Fix merge
* Document do_action values, largest function is almost instruction-matching
* Rename NAVI do_action to NONE, as that appears to be how that value is used in practice
* Fix merge
* one match
* Last function is instruction-matching
* Fix
* Improvements thanks to engineer124
* Stack matched thanks to petrie911, now just a/v/low t regalloc issues, some cleanup
* More variables labeled, use text state enum everywhere
* More labels and names
* Fix
* Actor_IsTalking -> Actor_TalkRequested
* Match func_8010C39C and remove unused asm
* More docs
* Mostly ocarina related docs
* All msgModes named
* Fix assetclean
* Cleanup
* Extraction fixes and headers
* Suggestions
* Review suggestions
* Change text extraction again, only extract if the headers do not already exist
* Fix
* Use ast for charmap, fix assetclean for real this time
* Review suggestions
* BGM ids and ran formatter
* Review comments
* rename include_readonly to include_data_with_rodata
* Remove leading 0s in number directives
* Review suggestions for message_data_static
* textbox pos enum comments, rename several enum names from Message to TextBox
Co-authored-by: Thar0 <maximilianc64@gmail.com>
Co-authored-by: Zelllll <56516451+Zelllll@users.noreply.github.com>
Co-authored-by: petrie911 <pmontag@DESKTOP-LG8A167.localdomain>
Co-authored-by: Roman971 <romanlasnier@hotmail.com>
* matching split
* migrate progress
* split done and rodata migrated
* all data migrated to c
* start init
* progress
* progress
* progress
* progress
* progress
* progress
* copy done
* progress
* erase and settings done
* progress
* progress
* progress
* start keyboard
* progress
* progress
* progress
* progress
* Minor progress
* fix z_magic_dark issue
* func_80806F34 decomp'd
* verified equivalence
* one fix
* format
* merge petries work
* reorganizing
* lots of reorganizing and wraning fixing
* rename file
* remove language enum
* unwanted changes
* some symbol replacement, organization, and some names
* all symbols replaced, some organization
* some more cleanup
* continue docs
* Match the remaining functions in file_choose
* merge master
* select mode documented, all functions in file_choose.c named
* nameset functions named, some other cleaning
* some more general cleanup
* stub comments for cm, name a few things
* fix data and sizeof
* copy/erase functions and modes named
* rename assets, format
* change some struct members
* fixes
* review1
* fix maching error
* extract VTX data
* re add werror to ZAPD
* review 2
* fix
* remove file boundary padding
* remove zeroes
* review3
* change skybox stuff
* changes to vs etc
Co-authored-by: KrimtonZ <krimtonz@gmail.com>
Co-authored-by: Thar0 <17233964+Thar0@users.noreply.github.com>
Co-authored-by: mzxrules <mzxrules@gmail.com>
Co-authored-by: petrie911 <pmontag@DESKTOP-LG8A167.localdomain>
Co-authored-by: Roman971 <romanlasnier@hotmail.com>
Co-authored-by: Louis <louist103@gmail.com>
* remove fake match
* u32 segment -> void* and add symbols to sEntranceCutsceneTable
* rename some symbols
* remove if1
* add the last missing symbol
* add symbols for almost all extrence textures
* finish adding the symbols
* Remove comment
* spelling fix
* Fig's and Dragorn's fixes
* add symbols to unkknown array
* format
* romans fixes
* Some renames
* Some renames
* Some more renames
* pageDown
* Last name update
* Translate scene entries
* formatter
* Review
* A bunch of suggestions
* Run formatter
* Roman's suggestions
* Add parens around params usage in VEC_SET macro
* Remove unnecessary space character in a xml
* Use defines instead of magic values in head/tail magic comments
* Use `OS_USEC_TO_CYCLES` to make a time look better in `Graph_TaskSet00`
* `0x25800` -> `sizeof(u16[SCREEN_HEIGHT][SCREEN_WIDTH])`
* `0x803DA800` -> `0x80400000 - frame buffer size`
* Use `OS_VI_` defines instead of hex
* Add empty line after some variable declarations
* Remove unused `extern CutsceneData` in `z_bg_dy_yoseizo.c`
* `Matrix_MtxFToYXZRotS` does not use `MTXMODE_`
* Use `MTXMODE_` more
* Remove `ASCII_TO_U32`, use `'IS64'`
* Add explicit `!= NULL` in some ternaries
* Use `INV_CONTENT`, `AMMO` macros more
* Use `PLAYER_AP_` enum more to compare to `Player#heldItemActionParam`
* Get rid of lowercase hex (outside libultra)
* `gWindMill*` -> `gWindmill*`
* Format and small fix enums in `z_boss_mo.h`
* Use `CHECK_BTN_ANY` more
* Fix xz/xy mistake in comment in tektite
* Rephrase comments mentioning "the devs" in a more neutral way
* Clean-up some objectively useless parens
* Fix some negative values written as u16 instead of s16 in ichains
* `SKJ_ACTON_` -> `SKJ_ACTION_`
* Run formatter
* Fix unk_ offset of `TransformUpdateIndex#unk_10` -> `unk_0E`
* Remove comments using in-game text
* Remove `U` suffix from integer literals
* Revert "Remove `ASCII_TO_U32`, use `'IS64'`"
This reverts commit c801337dde.
* Use `PLAYER_STR_*` to compare to `CUR_UPG_VALUE(UPG_STRENGTH)`
* Add empty line after decl x2
* Revert "Use `PLAYER_STR_*` to compare to `CUR_UPG_VALUE(UPG_STRENGTH)`"
This reverts commit d80bdb32da.
* Make `CUR_UPG_VALUE(UPG_STRENGTH)` compare to integers (eventually needs its own enum)
* Only use `PLAYER_SHIELD_` enum with `Player#currentShield`
* Only use `PLAYER_TUNIC_` enum with `Player#currentTunic`
* Fix all headers to comply with C standard
* fix a file in libultra
* Update include/stdbool.h
Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
* Update stdbool.h
* Update z64animation.h
Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
* Match a few
* Remove cast
* BossGanon2_Destroy
* Some struct layout
* Missed one
* Work on BossGanon2_Update
* Oops missed another
* Work on update more
* Get it to compile
* Work a bit on update
* func_808FD27C
* Cleanup a bit
* Fix incompatible pointer type
* Work more on update
* Multiply
* Fix janky cast regalloc
* Remove some casts
* Move switch case to right spot
* Tiny regalloc
* Fix stack
* Try to fix jump table
* Migrate bss
* Make data match
* Fix minor formatting
* Another minor formatting
* Replace hex with symbols
* Do display lists
* Vertices
* jnt items init
* Split gfx into separate file
* func_808FCF40
* func_808FCF5C
* func_808FD080
* func_808FD4D4
* func_808FF898
* func_808FFA24
* func_808FFAC8
* func_808FFBBC
* func_808FFC84
* use unk_313 as a bool
* func_808FFCFC
* func_808FFDB0
* Add commented static
* func_808FFEBC
* func_808FFFE0
* func_809000A0
* Remove useless cast in func_809000A0
* Remove useless temp
* Fix wrong branch
* BossGanon2_Update
* Fix implicit function declarations
* Type D_8090EB2C to zelda pointer
* Reorder include because why not
* Deduplicate undefined syms
* Add more to struct
* Work on func_808FD5F4
* Major work on func_808FD5F4
* Get func_808FD5F4 to compile
* Make unk_398 unsigned
* Work on func_808FD5F4
* Progress
* func_808FD210
* BossGanon2_Draw
* Make it compile
* Fix compiler warnings
* Fix branches func_808FD5F4
* re-nonmatching func_808FD5F4
* stuff
* fix math functions
* clang format
* more progress
* Replace bit stuff with type
* Merge master
* Add possibly janky things and fix while loop
* Why does this help
* Chained assignment
* Remove dubious thing
* Reorder thing
* Add possibly fake notices
* Use true and false
* Make func_808FD5F4 equivalent
* Massage stack a little
* func_80906AB0
* Correct texture params
* Whitespace is good
* Use decimal line numbers
* func_809069F8
* Work on func_809060E8
* Make funny loop less funny
* Float stuff
* Remove useless cast
* Merge upstream
* Fix compiler error in nonmatchings
* func_809060E8
* Change tex alloc to be full integer
* Add unk_234
* Correct size of unk_2F4
* Make textures u64[]
* Type textures to u64[]
* func_80905DA8
* func_80905674
* Replace some pi
* BossGanon2_PostLimbDraw2
* func_8090523C
* func_80904FC8
* func_80904D88
* BossGanon2_PostLimbDraw
* BossGanon2_OverrideLimbDraw
* func_8090464C
* func_80903F38
* Match func_80900890
* Move func_80906538 prototype
* Work on func_80902348
* Match func_80902348
* Add fake warning to array thing
* Work on func_8090120C
* Remove useless var from func_8090120C
* Work more on func_8090120C
* Move case probably into place func_8090120C
* Work on func_8090120C until 4914
* Add break to switch
* Pass player to startPlayerCutscene
* Work more on func_8090120C
* Work on func_80902524
* Move function prototype
* Match func_80902524
* Clean up sfx ids in func_808FD5F4
* Correct SFX_FLAG in func_8090120C
* Match func_8090120C
* Match func_80904340
* Change tex to u8[]
* Cleanup func_808FD5F4 a bit
* Clean up another inequality func_808FD5F4
* Match func_80904108
* Cleanup for PR
* Cleanup for PR part 2
* Cleanup data a bit and start on func_80906538
* Basically match func_80906538
* Match func_80906538
* Rename tex to shadowTexture
* Work on func_809034E4 a bit
* replace 255 with 0xFF for texture
* Correct NON_MATCHING guard
* Make func_809034E4 equivalent and not ugly!
* Reuse i in func_809034E4
* Minor cleanup in func_809034E4
* Remove unused asm
* Static all the data
* Switch to using assets xml for overlay graphics :)
* Remove now unused undefined syms
* Rename pad to D_809071FC
* Some cleanup
* Cleanup and name more stuff
* Name BossGanon2_DrawShadowTexture
* Rename to sZelda
* Correct array in func_809034E4.s
* Start using proper symbols for assets
* Add morre undefined syms comments
* Cleanup a bit
* Cleanup a bit more
* Use THIS in limb functions
* Update comments
* Use define for actor id
* Remove unnecessary padding in struct
* Rename rand_float to randFloat
* Update src/overlays/actors/ovl_Boss_Ganon2/z_boss_ganon2.c
Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
* Various minor suggestions
* Replace shadowTexture with void* wherever possible
* Update src/overlays/actors/ovl_Boss_Ganon2/z_boss_ganon2.c
Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
* Do multiply
* Name some variables from debug prints
* Update src/overlays/actors/ovl_Boss_Ganon2/z_boss_ganon2.c
Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
* Use ARRAY_COUNT(sParticles) everywhere
* Put data and bss in _data.c
* Remove unecessary @bug s
* Minor suggestions
* Why are there so many timers
Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
* being code_800EC960
* wip
* wip
* more audio progress
* migrate data in code_800E11F0
* wip
* make ok
* remove asm
* wip
* move some variables outside of gAudioContext to the AudioContext structure due to the size used in func_800E3094
* more progress
* wip
* wip
* split code_800E11F0
* migrate rodata in code_800E11F0
* match functions that couldn't because of data issues
* move code_800E4FE0 asm files
* wip
* more wip
* fix global functions, and forward declarations
* wip
* wip
* wip
* ocarina wip
* match a couple functions
* some progress
* separate some bss
* match func_800EDA3C
* some matching
* more matches
* migrate audio rodata
* some matches
* more matchess
* start on synthesis
* work on synthesis
* fix function declaration
* Merge branch 'master' into audio
* match a few more functions
* wip
* wip
* more matching, rename Audio_SetBGM to Audio_QueueSeqCmd
* name several audio functions, and audiocontext members
* more naming, rename code_800E11F0 to audio_load, code_800DAAC0 to audio_synthesis
* audio wip
* match a few more functions.
* wip
* add missing NON_MATCHING directive
* wip
* some matching, data reogranization
* match cursed function
* wip
* wip
* formatting
* remove prefix from struct memebers
* missed function rename
* review
Co-authored-by: fig02 <fig02srl@gmail.com>
* z_vr_box.c progress
* Rename dpList to dlistBuf and SKYBOX_CLEAR_SKY to SKYBOX_NORMAL_SKY
* Fix
* renamed dlistBuf to dListBuf and split large string further
* Add symbols, does NOT build OK
* parameter OK with syms
* Use `static` more and inline arrays
* wip docs
* Start on Interface_Draw, NOT OK yet
* rename variables since interface dev is weird
* nonmatching for now
* kaleido
* Update src/code/z_parameter.c
Co-authored-by: louist103 <35883445+louist103@users.noreply.github.com>
* Make most texture rectangles use shifts
* fix symbols for all interface things
* done with interface_draw for now
* Update z_parameter.c
* format files
* fix wrong function calls
* fix bss
* improvements in matching
* remove button enum for now
* (void)0 to fix warning
* make conditional look nicer
* fix
* fix wrong combiner
* Update src/overlays/actors/ovl_kaleido_scope/z_lmap_mark.c
Co-authored-by: Roman971 <32455037+Roman971@users.noreply.github.com>
* format
* remove "HUD" naming
* review suggestions
Co-authored-by: louist103 <35883445+louist103@users.noreply.github.com>
Co-authored-by: Roman971 <32455037+Roman971@users.noreply.github.com>
* Improve z_jpeg documentation
* JpegWork::data is probably better than address
* Rename Jpeg_SendTask to Jpeg_ScheduleDecoderTask
* Rename njpegUCode to gJpegUCode
* Rename GetU16 to GetUnalignedU16 and improve docs
* ViMode OK
* Fix variable name in regconvert tool
* ViMode: fix formatting
* Add nonmatching impl for ViMode_Configure, respond to PR
- Fixed struct field naming (unkXX -> unk_XX)
- ViMode_Configure args are not flags for top/left etc; seem to be for
video mode
- Used @Random06457's implementation of `ViMode_LogPrint`
* Use plain LOG_ADDRESS in ViMode_LogPrint
* Incorporate PR feedback from Roman971
* Decompile ovl_kaleido_scope + minor cleanups
* Add a common header for ovl_kaleido_scope
* Start cleaning up and documenting kaleido_scope (+ some interface docs)
* Improve and fix some kaleido_scope non matchings
* Match KaleidoSetup_Init
* Extract icon_item_fra/ger_static files
* Add more documentation and matches to kaleido_scope
* Improve the z_kaleido_collect.c non matching
* Rename z_kaleido_8081EFF0.c to z_kaleido_prompt.c
* Update most kaleido variables to be static
* Improve GS flag macros
* Improve z_lmap_mark.c and extract z_lmap_mark_data.c with a script
* Various minor fixes and improvements
* Minor fixes and review changes
* Review changes part 2
* Rename gSetTileCustom to gDPSetTileCustom
* Review changes part 3
* Darkmeiro decompilation
Bg_Gnd_Darkmeiro decompiled, matched, and documented.
* Lots of functions matched. Some big ones are close.
* Five left unmatched, one close.
* Merged data and decompiled the giant function into something readable. Its branch structure has yet to be matched.
* Three unmatched, one essentially matched, the rest matched.
* More fixes.
* Documented more of the structure and cleaned up a bit.
* BossFd2, BgVbSima, and EnVbBall matched and documented
* Also removed unneeded .s files
* And need to name EnVbBall's functions
* give this a shot
* fix conflict
* one more try
* removing darkmeiro changes
* and again
* now OK from make clean
* minor cleanup
* One more matching function for BossFd
* which means it doesn't need its .s
* splitting
* splitting
* splitting
* forgot some .s
* fancy new names
* fancy new names
* trying again
* sneaky .s files
* sound effects and some hex to decimal conversions
* Sound effects and static variable cleanup
* format.sh and clean up static variables
* sfx and formatting
* ZAP and cleanup
* small cleanup
* cleanup and ZAP
* ZAP
* looking at the giant function again
* looking at the giant function again
* Only the big function left.
* Those .s files aren't mine, officer
* float literals might be fixed. regalloc still a nightmare
* almost done with the big function
* should make now
* not much of a change
* all functions match. rodata somehow doesn't.
* forgot some things
* lots of cleanup
* and a little more
* small error
* large cleanup. Also BossFd has function names and inlined variable declarations
* still more cleanup
* the quest for 0.1f continues
* forgot to put NON_MATCHING back in
* Data structures fully documented. Still more cleanup.
* DECR now works with BossFd2
* should match now
* cleanup
* small cleanup
* cleanup and names
* tiny thing
* particles and headers and stuff
* now with more enums
* merge
* test
* end test
* update
* cleanup
* object 2
* object 1
* doc object_fd2
* git subrepo pull --force tools/ZAPD
subrepo:
subdir: "tools/ZAPD"
merged: "6f874af4a"
upstream:
origin: "https://github.com/zeldaret/ZAPD.git"
branch: "master"
commit: "6f874af4a"
git-subrepo:
version: "0.4.3"
origin: "https://github.com/ingydotnet/git-subrepo.git"
commit: "2f68596"
* formatting
* .s
* merge actor
* vertex arrays
* a little more
* formatting
* merge opd
* fixed damage check
* cleanup
* fixes
* effect struct
* review
Co-authored-by: petrie911 <pmontag@DESKTOP-LG8A167.localdomain>
Co-authored-by: fig02 <fig02srl@gmail.com>
* named members of TitleCardContext
* changed screenX/Y to just x/y
* added clarifying comments and renamed timer -> duration because i think its better
* changed names to delayTimer and durationTimer
* made texture a void*
Co-authored-by: gamestabled <chandler2016@yahoo.com>
* ovl_Boss_Goma OK, except func_80917D98
* ovl_Boss_Goma OK and documented
* Minor cleanup: shorten enums, use named constants...
* Floats with .0f, less useless static usage, details on oversight about spawning child gohmas, cleanup...
* More documentation, hopefully less weird about documenting setups and actions
* fix fhg_fire
* remove warnings
* formatting things
* newlines
* review
Co-authored-by: Fig02 <fig02srl@gmail.com>
* matches
* more matches
* progress?
* it's time
* so close
* organize declarations
* docs
* more fixes
* more fixes
* fix stage 1
* more fixes
* first try
* demo ids in decimal
* final cleanup
* one more thing
* fixes
* more cleanup
* onepointcs
* OnePointCutscene
Co-authored-by: petrie911 <pmontag@DESKTOP-LG8A167.localdomain>
* Decompile and document En_Clear_Tag
* Adds a define for setting the total count of ClearTag particles.
* Fixes swap in particle effect struct member names.
Additionally, implements the DECR macro where available.
Additionally, implements the CLAMP_MIN macro.
Additionally, adds more comments inside of functions explaining how the Arwing works.
* Reformats z_en_clear_tag.c after recent fixes.
* Removes not OK DECR and CLAMP_MIN macros.
I don't know why they built locally OK for me. May have had a stale build.
* Added static to data declarations.
Additionally added white spacing between data definitions.
* Various syling fixes in EnClearTag
Fixes inconsistent usage of particle/effect. They're Effect is the better name, so I went with that.
Fixed a naming issue in CalculateFloorTangent.
Adds s prefix to all the static variables.
Renames clearTagParticlesBuffer to sClearTagEffects
Consistent capitalization in comments.
Adds more descriptive comments to function level comments that didn't say a lot already.
Renamed gameplay.particleEffects to gameplay.specialEffects.
Renames cameraNumber to cameraId.
Fixed capitalization in display list variable names.
* Always capitalize the A in arwing.
* Fixes issue with overzealous replacement of arwing -> Arwing
* Renames arwing display lists to include the g prefix.
* Renames effect seed -> random
* Removes unnecessary decrement timer comments.
* Updates Arwing comments to detail why it's important that the roll is updated to zero.
* Updates stack variable names in EnClearTag_Update to be more consistent with each other.
* Updates Arwing crashing documentation.
* Further update documentation on arwing crashing.
* Even further updates to Arwing crashing docs.
* Fixes issue of missing newline in En_Clear_Tag.xml
* targetDirection reset now has a chained assignment
* Rotation angle to hex
* Fixes rotation hex and identifies float.
* Updates arwing fire check.
* Arwing cutscene timer is multiplied by 128 rather than shifting 7
* Updates scaledCrashingTimer assignment to be more consistent.
* Updates max scale to multiply by 2
* Gives name to the work buffer indices.
Additionally, makes enum names more consistent.
* Removes unnecessary globalCtx2 in EnClearTag_CreateFlashEffect
* Runs format.sh after recent changes.
* Updated path of ClearTag assets.
* Clear tag now uses Arwing in the display list name for all effects.
* Updates work buffer to expand and contract as new enums are added.
* Uses c99 defines in my c89
* Updates the unknown 8 bytes in en_clear_tag
* review
Co-authored-by: fig02 <fig02srl@gmail.com>
* first two funcs done
* fixing struct var name due to external use
* func_80A07CA4 done
* started EnEncount2_Update
* EnEncount2_Update done
* Encount2 done!
* EnFireRock_Init done (but will only match once initvars are uncommented
* progress
* 4 funcs left
* Fully matching
* minor formatting
* renames
* change structs back to normal
* formatting
* removing unused comments
* even more formatting stuff
* removed unused asm
* pr stuff
* pr stuff
* added newline at end of file
* some merge suggestions
* more pr stuff
* review
Co-authored-by: fig02 <fig02srl@gmail.com>
* Less warnings in boot & code segments
* few more warnings gone
* Ran formatter
* z_view warning gone
* -> 1
* f31 -> 31
* Remove function casts
* Few more small improvements
* Separate declaration and assignment in func_80091738 and Item_Give
Co-authored-by: Thar0 <maximilianc64@gmail.com>
* mostly done, one function left
* daiku_kakariko OK
* should be ready for pr
* removed unused asm
* should build OK now
* builds OK now
* all of fig's suggestions resolved
* Darkmeiro decompilation
Bg_Gnd_Darkmeiro decompiled, matched, and documented.
* give this a shot
* fix conflict
* one more try
* could be useful
* whoops
* some decomp
* still playing around with this
* rename functions
* ZAP again
* ZAP again
* the renaming begins
* more renaming. hopefully didn't break anything
* change all the things
* this and then merge
* and done
* one little thing
* small docs, small rename
* changed mind on cylinder and quad elements
* something
* more stuff
* more docs
* more adjustments
* Fixed some types
* more fixes
* all sorts of cleanup
* now with flags
* match!
* names and such
* update tools
* damage tables
* ColChkInfo
* one more thing
* formatting
* more formatting
* anime merge
* some stuff
* damage table
* again
* changes
* .s
* changes
* oc2 type
* a couple things
* format
* un-name magic arrows, not enough proof yet
* fix damage table script and remove old one
* EnAObj
* changes
Co-authored-by: petrie911 <pmontag@DESKTOP-LG8A167.localdomain>
Co-authored-by: Fig02 <fig02srl@gmail.com>
* z_lifemeter cleanup finished, one non-matching
* made Health_UpdateData a bit better, nowhere near matching still
* lifemeter done for now
* fixed define issue
* improve z_lifemeter, still doesn't match
* z_lifemeter done
* Rename functions
* Add files via upload
* Update Health_Update.s
* fix missing symbols in asm file
* Update Health_Update.s
* Update Health_Update.s
* fixed stuff
* Add files via upload
* Delete Health_Update.s
* Rename things according to Roman's suggestions
* lifemeter done hopefully
* fix unused asm that for some reason didn't merge
* fix feedback
* compiles right now
Co-authored-by: Zelllll <elijah@DESKTOP-NMP1I89.localdomain>
* beginning of migrating changes
* got matching
* changed order a bit
* clean up bgcheck
* fix conflict
* fix conflict again
* first stab at identifying types, some oks
* Clean up most bad structs/pointer math, move relevant structs to z64bgcheck.h, get some OKs
* more OKs, z_bgcheck.bss migration, update some sys_math3d.c args
* couple more OKs
* pushing some OKs
* fix compilation issues
* code_800430A0.c OK, more files decomp'd
* 8003A3E0 big OK :)
* Decomp most of func_8003C614, decomp helper funcs
* Decomp SurfaceType, CamData, and WaterBox property related functions
* more OKs, big OK in 8003C078
* more OKs, more progress, move a function definition in z_collision_check to functions.h
* more clean-ups, more OKs, dyn_vtx is now defined as u8*
* 8003A5B8, 8003A7D8, 8003C614, 8003DD6C OK, document function args better
* data migrated, more OKs
* 80041240 OK, func_8003B3C8 and func_8003BB18 disassembled
* func_80040284, 800409A8 non_matching, add IS_ZERO macro
* All asm files have C representations, some big OKs, lots of minor tweaks
* More OKs, non-matching code cleanup
* 8003FBF4 and 80040BE4 OK, improve codegen for most functions
* format z_bgcheck.c
* fix warnings, compile errors on NON_MATCHING
* func_8003EE80 is now NON_MATCHING
* begin documenting some functions
* formatting
* more documentation, func_8003A95C OK
* fix PHYSICAL_TO_VIRTUAL changes
* fix var rename
* More documentation, functions 80040E40, 80041648 OK, change types to not be compatible with ZAP
* func_8004239C ok, more NON_MATCHING improvements, more documentation
* Implement most suggested changes
* Convert comments to slower comments
* /**
* Implement ZAP2 changes
* my anti-virus ate my format.sh results
* Rename a couple hundred functions, fix minor stuff
* rename var so that clang formats correctly
* run format.sh
* implement Petrie's matches/suggestions
* format
* matches
* and the asm
* slight error
* Add SSList
* two more matches
* stuff
* implement code changes
* clean up Petrie's matchings
Co-authored-by: Arthur <arthurtilly413@gmail.com>
Co-authored-by: fig02 <fig02srl@gmail.com>
Co-authored-by: petrie911 <pmontag@DESKTOP-LG8A167.localdomain>
* Auto stash before rebase of "upstream/master"
* A large number of scenes have been decompiled.
* Fixed makefile
* Decompiled around 40 scenes.
* Removed old file
* Finished matching remaining scenes.
* Removed old commented out spec lines
* Decompiled a few object files.
* Reorganized xmls a bit. Updated pu_box overlay to use proper symbol.
* Updated texture and object file decomp
* Fixed newline issue with ZAPD
* Moved scenes/ into the assets/ folder
* Fixed a few compile errors
* Auto stash before rebase of "upstream/master"
* A large number of scenes have been decompiled.
* Fixed makefile
* Decompiled around 40 scenes.
* Removed old file
* Finished matching remaining scenes.
* Removed old commented out spec lines
* Decompiled a few object files.
* Reorganized xmls a bit. Updated pu_box overlay to use proper symbol.
* Updated texture and object file decomp
* Moved scenes/ into the assets/ folder
* Fixed a few compile errors
* Fixed merge issues.
* Fixed makefile merge error
* Fixed additional merge error
* Fixed several more merge issues
* Commented out gameplay_keep and sk2 extraction, since currently unused.
* Reenabled gameplay_keep extraction since it's used in the spec
* Fixed build error
* Removed test struct
* Fixed makefile error that would happen on fresh builds
* Fixed merge issue
* Removed relative paths
* Multithreading on extraction, spec uses numbers, few changes to XMLs
* Removed redundant code from the extract_assets script
* object_sk2 and object_spot09_obj OK
* object_spot11_obj OK
* object_spot17_obj OK
* Test: One of the gameplay_keep dlists given a proper symbol
* Updated asset symbol names based on new naming scheme
* XMLs use "Offset" instead of "Address" now
* Fixed merge issues, updated ovl_Magic_Dark xml and gfx file
* Updated to use latest build of ZAPD
* Updated ZAPD again
* Updated ZAP to remove assimp dependency
* Jenkins Test: Added .gitkeep file
* Updated ZAP once more
* Updated png file name to comply with new naming scheme.
* Fixed bad include
Co-authored-by: Jack Walker <7463599+Jack-Walker@users.noreply.github.com>
* Darkmeiro decompilation
Bg_Gnd_Darkmeiro decompiled, matched, and documented.
* give this a shot
* fix conflict
* one more try
* could be useful
* whoops
* ZAP2 stuff
* ZAP why
* ZAP again
* rupees and, for some reason, pots
* and now an even larger man
* now for the gallery
* more progress
* naming continues
* even more docs
* another match
* match, fix, a new enum
* Update src/overlays/actors/ovl_En_Syateki_Man/z_en_syateki_man.c
* fixes except globalctx
* well one more
* and now globalCtx
* cleanup
* name camera action functions
* decompile a few small functions, name a few Camera struct members
* decompile camera data, decompile a few camera functions
* Split ASM for code_800BB0A0
* removing code_800BB0A0.s
* PR Requests, Camera WIP
* remove #define NON_MATCHING from db_camera
* rename code_8007BF90.c to z_olib.c, rename functions in z_olib.c
* camera wip
* rename some struct memebers, some decomp wip
* pr updates
* camera wip
* name some fields in Camera Struct, being making sense of Camera_Update
* Camera WIP
* wip
* wip
* add z64camera.h header, begin creating CameraSetting macros
* wip
* wip
* wip
* wip
* migrate camera bss to c
* match a couple functions in db_camera
* match some small db_camera functions
* wip
* migrate db_camera rodata, match a few functions
* remote db_camera.rodata.s
* match some of db_camera
* identify types of some unknown data pieces
* some small wip
* Match Camera_Init, some function changes, some struct name changes. Change unk_C0 and unk_CC to floats from Vec3fs
* add naming for a few more Camera struct members
* wip
* match func_80043F94
* Match Camera_Jump1
* document some of Camera_Jump1
* wip
* match Camera_Jump3
* Match Camera_Update, FeelsAmazing
* wip
* wip
* match Camera_SetParam
* minor cleanup
* wip
* wip
* match Camera_KeepOn0
* some documentation, modify some matching functions to match style of others.
* match Camera_Demo1
* match camera_demo9
* document Camera_Demo1 and Camera_Demo9
* wip
* Match camera_battle4
* match camera_unique2
* Match Camera_Unique3
* match camera_special6
* match Camera_Special5
* wip
* document camera_special6
* naming updates
* match camera_Unique1
* match Camera_Unique0
* wip
* Match Camera_CalcUpFromPitchYawRoll
* match func_80045508
* document Camera_Battle4
* document several camera functions, move camera data to separate file
* rename phi/theta to pitch/yaw
* wip
* uniq9 wip
* Camera_Unqiue9 OK
* document Camera_Unique9
* name unk_160 in camera struct
* wip
* wip
* minor updates
* fix conflicts
* wip
* wip
* Olib updates
* wip
* wip
* rename most Math3D functions, few matches, documentation
* wip
* document most of math3d
* wip
* wip
* wip
* pr updates
* Match Camera_Fixed4
* match func_80058E8C
* pr updates
* add missing comment block finalizer
* Merge math3dupdates
* match Camera_ChangeSetting
* Match Camera_ChangeMode
* match func_80058148
* Match Camera_Special9
* decompile the rest of camera data
* match Camera_Demo5
* name a few camera functions in z_play
* match func_80046CB4, some work on other fucntions
* wip
* impove some non matchings
* fix function rename
* match func_800588B4
* match Camera_Subj4
* wip
* Camera_Demo3 matching, Camera_Battle1 big progress
* Camera_Normal2 OK
* wip
* match Camera_Parallel1
* normalize some things across functions
* match Camera_Normal1
* Match Camera_Normal3
* some cleanup
* more cleanup
* more cleanup , match Camera_CalcDefaultPitch
* data formatting
* Match Camera_Jump2
* document Camera_Jump2
* Match Camera_KeepOn3
* document some of Camera_KeepOn3
* improve some non_matchings
* match func_80045C74 and func_800460A8
* code cleanup, documentation
* match Camera_KeepOn1
* Match Camera_Subj3
* Match Camera_Battle1
* remove non_matching from func_80044adc and func_80046e20
* name several members of Battle1
* more documentation on Battle1
* cleanup
* renaming Camera_Vec3fScaleXYZFactor to Camera_Vec3fTranslateByUnitVector
* reorganize update structs, remove final references to params, remove CameraParams union
* implement camera enums into player
* Renaming Camera_GetDir to Camera_GetInputDir, Camera_GetRealDir to Camera_GetCamDir, etc, implement camera enum's into player
* remove non-global camera variables from variables.h
* clean up some variable declarations
* finish pr comment updates
* fix some warnings
* data formatting
* finish commenting on data
* delete unused asm
* remove asm
Co-authored-by: fig <fig02srl@gmail.com>
* Darkmeiro decompilation
Bg_Gnd_Darkmeiro decompiled, matched, and documented.
* give this a shot
* fix conflict
* one more try
* could be useful
* whoops
* ZAP2 stuff
* ZAP why
* ZAP again
* spooky scary skeletons
* there's a skeleton inside of you
* formatting
* types
* a matched function even
* undo change
* lol anime
* ok how did I forget the .s
* array fix
* would you like to ride the bone train?
* stuff
* more renames
* renames and cleanup
* names suck
* idea
* using void** for now
* stuff
* look more type fixes
Co-authored-by: fig <fig02srl@gmail.com>
* merge upstream
* Merge upstream
* Small formatting
* Data section
* MagicDark_Draw
* Gross match of func_80B874E4
* Add func_8005A9CC to functions.h
* Work on func_80B87A18
* func_80B8772C
* Remove comment
* Work on func_80B87A18
* Correct fp constant
* Add regalloc comment ;(
* Move negatives to numbers
* Stupid casts >:(
* Use this->actor when possible
* It's so close
* Use cast + 0xFF
* func_80B87A18
* Delete asm and replace globalCtx2
* Update spec
* static everything
* Name scale
* Use decimal for alpha
* Name some stuff
* Delete reloc
* Name orbOffset
* Name some functions
* Make unused data colors (because it probably is)
* Change >= to >
* Use clamps
* Name MagicDark_DimLighting
* Name gfx
* Rename prototype params
* Cleanup
* Funny cast
Co-authored-by: Ethan Roseman <ethteck@gmail.com>
* cleanup libultra
* fixes
- use quotes instead of <> for includes
- add macros for zelda specific thread priorities
- fix Makefile
- properly format the remaining pfs structs
* fix button macros + add CHECK_BTN_ANY/CHECK_BTN_ALL
* remove ULTRA_ABS
* fix includes
* update z_player.c/z_lib.c + run format.sh
* merge upstream/master
* fix include in En_Goroiwa
* fix includes
* Setup player decomp
* Decompile z_player.c and z_player_lib.c
* Decompile remaining z_player.c functions
* Various player improvements
* Player progress (some non matchings and .data migrated)
* Player progress (reposition data and fix some non matchings)
* Cleanup, improve and document parts of z_player_lib.c/z_player.c
* Fix player renames in z_en_st.c
* Fix missing open/close disps in z_player.c
* Minor player fixes
* Address player comments
* Decompile PreRender.c
* use NON_EQUIVALENT and run format.sh
* Get rid of some magic values
* rename dList/dListp to dListHead/dList
* make func_800C213C NON_MATCHING
* replace more values with SCREEN_WIDTH/SCREEN_HEIGHT
* dList/dListHead with gfxp/gfx
* rename some structs
* changes
* rename stuff and start a func
* progress
* progress
* progress
* remove unwanted file
* progress
* match last few funcs
* done, i think
* small changes
* match Lights_Draw (thanks krim)
* comments
* cleanup
* most pr suggestions
* name changes
* rename
* Initial commit of weather_tag actor decomp
* Formatted source files and updated spec.
* Fixed references to the environment context variable that I changed.
* Deleted the last of the asm (forgot the stuff in the data folder)
* Made all requested changes to z_en_weather_tag
* Forgot to change basereg
* Removed unnecessary field in weather tag struct
* Update src/overlays/actors/ovl_En_Weather_Tag/z_en_weather_tag.c
Co-authored-by: Roman971 <32455037+Roman971@users.noreply.github.com>
* That field in the header was totally necessary, not sure what I was thinking, sorry for all the commits
* Renamed what I thought was struct padding to more accurately represent the fact that that field is an unused variable.
* Update src/overlays/actors/ovl_En_Weather_Tag/z_en_weather_tag.h
Co-authored-by: Roman971 <32455037+Roman971@users.noreply.github.com>
Co-authored-by: Roman971 <32455037+Roman971@users.noreply.github.com>
* Bg_Haka_Tubo OK
* Ran formatter
* Review suggestions
* Fix commented field offsets in header
Co-authored-by: Roman971 <32455037+Roman971@users.noreply.github.com>
* Fix other field offset
Co-authored-by: Roman971 <32455037+Roman971@users.noreply.github.com>
* Named data and made static
Co-authored-by: Roman971 <32455037+Roman971@users.noreply.github.com>
* Start decompiling bugs
* Decomp func_80A7BFA0
* Match 4 functions
* Match a few functions, really close on another
* Consolidate if statements
* Progress on func_80A7C86C
* Decompile a few small functions
* func_80A7CEC0 still needs stack and regalloc work
* Finish up func_80A7CEC0, do a couple functions
* Start on func_80A7D460
* func_80A7D460 is mostly down to regalloc
* Match update and draw, more work on func_80A7D460
* func_80A7D460 is really close to matching
* func_80A7D460 matches
* Cleanup
* Run formatter
* Missed reversing a couple flout comparisons
* Apply suggestions from code review
Co-authored-by: Roman971 <32455037+Roman971@users.noreply.github.com>
* PR Comments
* PR Comments #2
* Missed one
Co-authored-by: Roman971 <32455037+Roman971@users.noreply.github.com>
* match ShotSun_Init
* match ShotSun_Destroy
* match func_80BADDCC
* break up unk_19C to add spawnTimer
* ShotSun_Update
* func_80BADE74
* work on func_80BAE05C
* make func_80BAE05C closer
* use proper macros for osSyncPrintf
* format if statement better and add temp player pointer func_80BAE05C
* Reorder spawnPos to match stack args later
* match func_80BAE05C
* almost match func_80BADF0C
* Remove temporary and add parenthesis
* change part of comment and move last unk_1A4 assignment to be similar to decompiler
* Change do while(false) to if (1)
* func_80BADF0C
* change comment
* update spec
* fix vt macro
* cleanup and name
* remove asm
* remove data
* remove extern
Co-authored-by: Random <28494085+Random06457@users.noreply.github.com>
* remove & for function pointers
* rename and retype D_02007020
* format
* remove tiny whitespace
* reorder if statement
* finish renaming
* replace cast with bitwise operation
* move globally used functions to functions.h
* reorder description
* move headers for EnItem00 and EnAObj to z64actor.h
* retype Item_DropCollectible and Item_DropCollectible2 to return EnItem00*
* rename ShotSun_StartFairyCountdown to ShotSun_TriggerFairy
* rename ShotSun_FairyCountdown to ShotSun_SpawnFairy
* add unk_E3EC field to MessageContext
* rename to ShotSun_UpdateHyliaSun for now
* remove != 0 on flag check
* remove unsigned suffix and use enum constant for Item_DropCollectible call
* add unk_95C field to Player
* add ub comment
* retype unk_1A4 and remove explicit struct padding
* Update src/overlays/actors/ovl_Shot_Sun/z_shot_sun.c
Co-authored-by: Roman971 <32455037+Roman971@users.noreply.github.com>
Co-authored-by: Random <28494085+Random06457@users.noreply.github.com>
Co-authored-by: Roman971 <32455037+Roman971@users.noreply.github.com>
* Decompile jpegdecoder.c, padsetup.c and code_800C3C20.c
* change func_800C3C20's prototype and rename some fields in jpeg related structs
* Fix comment in Jpeg_GetU16 and change func_800C3C20
* use a switch in padsetup.c
* osPfsIsPlug.c and osContSetCh.c OK
* update
* __osPfsGetStatus.c OK
* removed unused asm
* Updated all libultra controller files to use new structs instead of the temporary structs. Added os_pfs.h
* controller updates
* fixed header guard
* Made suggested changes
* cleanup
* name camera action functions
* decompile a few small functions, name a few Camera struct members
* decompile camera data, decompile a few camera functions
* Split ASM for code_800BB0A0
* removing code_800BB0A0.s
* PR Requests, Camera WIP
* remove #define NON_MATCHING from db_camera
* Some progress
* progs
* More
* 1 more
* Init
* Slightly better score on one function
* 1 down!
* some progress
* Prep for PR
* PR suggestions
* OK!
* Formatting
* formatting again
* PR comments
* updating ZAP2
* Start work on ovl_En_Guest
* Match func_80A5046C and func_80A50518
* Everything but func_80A509D4 matches
* Match last function, cleanup, rename stuff
* Run formatter
* Temp didn't need to be used
* I should have ran the formatter again
* Use tcrf translation for debug string
* Apply suggestions from code review
Co-authored-by: krimtonz <33664508+krimtonz@users.noreply.github.com>
* Rename references to function and fix semicolon
* Apply suggestions from code review
Co-authored-by: Roman971 <32455037+Roman971@users.noreply.github.com>
Co-authored-by: fig02 <fig02srl@gmail.com>
* PR Suggestions
* More comments
Co-authored-by: krimtonz <33664508+krimtonz@users.noreply.github.com>
Co-authored-by: Roman971 <32455037+Roman971@users.noreply.github.com>
Co-authored-by: fig02 <fig02srl@gmail.com>
* Added additional (potentially unused) fields to macros, now builds OK
* Ran formatter, attempted better macro formatting
* Formatted unknown fields as hex, further cleanups
* Rename and prefix macros, use command base macros, format cutscenes with indents
* Move command macros into a new file and include it globally
* Generate cutscene command macros for Bg_Toki_Swd, Cleanups
* Rename CS_TEXTBOX commands to CS_TEXT, fix typo ic command_macros_base.h
* Introduce CS_CMD_CONTINUE and CS_CMD_STOP
* Remove apparently redundant arguments in certain commands, include the values in the macros directly
* Re-add cutscene terminator destination enum values to example cutscene data
* Format what should be floats as hex, Change actorAnim to actorAction
* Allow floating-point representation of values in cutscene data (asm-processor hack)
* Include cutscene commands only where necessary, documentation fixes
* Rename actor actions to npc actions, separate player action from npc actions
* Remove PlayerActionIDs for now as relevant information on it is not yet decompiled
* Generate cutscene data for en_ru1, remove apparent redundancies in CS_LIGHTING and CS_PLAY/STOP/FADE_BGM commands, relax static requirement in asm-processor CutsceneData float conversion
* Progress on z_player_lib, Named fields in Player struct
* More functions decompiled
* Matched another function
* A few more functions
* Ran formatter
* Rename some variables and add comments where appropriate, change types of unknowns
* Create PlayerActionFunc type
* Fix uncaught syntax error and issues from effects merge
* Rename invincible to invincibilityTimer, refactor long comments in Player struct
* Properly rename all occurences of invincibilityTimer
- `z_effect`: Matched and essentially all documented.
- `z_eff_spark.c`: Decompiled (1 non matching left) and mostly documented.
- `z_eff_shield_particle.c`: Matched and mostly documented.
- `z_eff_blure.c`: Decompiled (5 non matchings left) and partially documented.
- `z_effect_soft_sprite.c`: Matched and mostly documented.
- `z_eff_ss_dead.c`: Matched but not documented.
- `z_effect_soft_sprite_dlftbls.c`: "Matched" (only data, contains the effect ss overlay table).
- `z_effect_soft_sprite_old_init.c`: Not decompiled, but functions are categorized by effect ss overlay. And they should be decompiled at the same time as their corresponding effect ss in the future.
Other changes:
- Added a lot of types/enums to `z64effect.h`and moved+renamed some structs from `z64.h` to this header
- Added effect ss overlay segments to `segment_symbols.h` and effect ss init vars to `initvars.h`
- Added a macro called `VTX_T` to generate a `Vtx_t` in the same style as `VTX`
- Fixed `flg_set.c` .bss to be in the right file
- Removed `tools/overlayhelpers/batchdisasm` since it's no longer relevant
- Removed unused leftover asm from recent PRs
* Decompile speed_meter.c and add VIEWPORT_INIT macro
- speed_meter.c: OK
- Add VIEWPORT_INIT(viewport, by, rx, ty, lx) macro
* get rid of some magic numbers
* use early return instead of a big if block in SpeedMeter_DrawTimeEntries
* Decompile most of AudioMgr
* Decompile most of audioMgr
* Decompile audioMgr
* Remove commented out rodata from spec
* Small cleanup
* Last function OK, renamed functions and removed asm
* Remove sched.h and audiomgr.h and include contents in z64.h
* Un-comment prototypes in functions.h
Co-authored-by: Roman971 <32455037+Roman971@users.noreply.github.com>
* Remove prototypes from audioMgr.c
Co-authored-by: Roman971 <32455037+Roman971@users.noreply.github.com>
Co-authored-by: Roman971 <32455037+Roman971@users.noreply.github.com>
* Decompile z_oceff_wipe
- z_oceff_wipe: OK
- z_oceff_wipe2: OK
- z_oceff_wipe3: OK
- z_oceff_wipe4: OK
- Add patched libmalloc to ido 7 to prevent segfaults
- Add CUR_CAM macro
* Rename CUR_CAM to ACTIVE_CAM
* Fixes in PR #122
* Work on horse ganon
* Match destroy, init matches but need mv data -> .c
* Match EnHorseGanon_Draw and func_80A68E14
* Move some data to .c
* Decomp func_80A68870
* EnHorseGanon_Update nearly matches
* func_80A68FA8 and func_80A686A8 match
* Fix EnHorseGanon_Init, start on func_80A68B20
* match func_80A68B20
* Migrate data but something doesn't match
* Matches with migrated data, fix most warnings
* Rename some variables, some clean up
* A little more cleanup before PR
* Move commented out code to NON_MATCHING blocks
* Run formatter and delete unused line, char -> u8
* Update function was matched
Also imports another type from z_skin.Seeing as they are somewhat
tentative I decided not to put them in any global file.
* Update src/overlays/actors/ovl_En_Horse_Ganon/z_en_horse_ganon.c
Co-authored-by: Random <28494085+Random06457@users.noreply.github.com>
* PR Changes
* Apply suggestions from code review
Co-authored-by: Roman971 <32455037+Roman971@users.noreply.github.com>
* PR Changes round 2
Co-authored-by: Random <28494085+Random06457@users.noreply.github.com>
Co-authored-by: Roman971 <32455037+Roman971@users.noreply.github.com>
* Decompile fbdemo (transition) files
* run format.sh
* reformat vtx array, fill in a couple unk
* match TransitionTriforce_IsDone
* add VTX macro, add DW_ wrapping around triangle macros
* use new VTX macro, name graphic assets
* Naming updates
* pr updates
* naming updates
* remove symbols for COLOR_BUFFER, D_08000000, and D_09000000
* func_8005B280 ok
* func_8005B65C OK
* split out func_8005BD50
* func_8005B7C0 OK
* func_8005B7F4 OK
* func_8005B824 OK
* func_8005B860 ok
* improve sanity
* func_8005B6B0 ok, ColliderInit_Actor structs added
* func_8005B884 ok
* func_8005BBF8 ok, split out func_8005BF50
* split more stuff out of func_8005C050.s
* func_8005C050 OK
* func_8005BA30 fakish OK, func_8005BAD8 real OK
* func_8005BB48 OK, func_8005BA84 almost decomp'd, but type issues
* func_8005BB10 Ok
* func_8005BF50 OK
* func_8005BE50 OK
* func_8005BD50 OK
* func_8005BCC8 Ok
* func_8005BC28
* func_8005BB8C func_8005BBB0 func_8005BBD4 Ok
* save my work commit
* func_8005C2BC fake OK
* func_8005C5B0 ok
* func_8005C608 ok
* func_8005C6C0 ok
* func_8005C6F8 ok
* func_8005C730 ok
* func_8005C774 func_8005C798 func_8005C7BC OK
* func_8005C7E0 ok, func_8005C810 split
* func_8005C810 OK
* func_8005C8C8 ok
* func_8005C964 OK
* func_8005CA88 ok
* func_8005CBAC ok
* func_8005C124 func_8005C1AC func_8005C234 func_8005CC98 OK
* func_8005CD34 func_8005CDD0 Ok
* func_8005CE6C ok
* func_8005CEC4 ok
* func_8005CEDC ok
* func_8005CF90 Ok
* standardize type names/vars more
* func_8005D3BC ok
* func_8005D40C OK, z64.h CollisionCheckContext
* func_8005D4B4 func_8005D4C8 ok
* partial data section migration
* improve function documentation, OT->OC
* Actor_CollisionCheck_SetOC ok
* Actor_CollisionCheck_SetAT Actor_CollisionCheck_SetAC Ok
* func_8005BA84 ok
* func_800611A0 ok
* func_80061274 ok
* clean up func_80061274
* func_8006139C ok
* func_8005E9C0 and dependencies OK
* minor cleanup to func_8005E9C0
* func_8005EC6C OK!
* func_8005E81C ok
* func_8005E604 ok
* func_8005E2EC func_8005E4F8 OK
* func_8005DE9C OK func_8005D8AC disassembled
* func_8006146C func_8006268C ok
* func_8005EEE0 ok
* func_8005F17C
* func_8005F39C ok
* func_8005F5B0 decompiled, not matching
* func_8005F7D0 decomp, func_8005D218 and func_8005D324 OK
* func_8005FA30 ok, split more functions
* func_8005FC04 ok
* func_8005FDCC k
* func_8005FF90 OK OK OK
* func_80060204 dead
* func_800604B0 ok
* func_80060704 func_80060994 ok, func_80060C2C somewhat disassembled. AT to AC matrix doneish
* func_800635D0 ok, func_80062ECC not so much
* OcLine oks
* D_8011DF28 functions disassembled
* D_8011DF5C functions OK
* setAT_SAC. setAC_SAC, setOC_SAC OK
* func_80061C98 decompiled, func_80061BF4, func_80061C18 OK
* func_800617D4 ok, func_800614A4 disassembled
* CollisionCheck_OC D_8011DFAC functions OK
* func_80062530 ok
* CollisionCheck_generalLineOcCheck subfunctions OK
* func_800622E4 ok
* after a long fought battle, func_80061F64 has fallen.
* func_800628A4 disassembled
* func_800627A0 func_8006285C OK
* ActorCollider_Cylinder_Update, func_80062718, func_80062734 ok
* func_80062CD4 decompiled, import EffShield/EffSpark types from MM
* various SubActor98 struct functions OK
* func_8005D4DC func_8005D62C ok
* .data section migrated, more OKs, fix NON_MATCHINGs to use effect structs
* func_80060C2C ok
* minor code tweaks
* func_80061C98 ok somehow
* Attempt to fix some unknowns, move types out of z64actor, add set3 ColliderInit types
* Apply changes
* formatting
* tweak a couple function names
* krim changes, func naming
* missed some things
* function renames
* Implement GenColliderInit.py utility
* Implement pr changes, GenColliderInit.py, DamageTable.py, z_collision_btltbls.c fully matching
* func_800614A4 ok
* Implement Roman's fixes, name Collider unknowns, rename COLTYPE -> COLSHAPE and define new COLTYPE
* collisionCheckCtx -> colChkCtx, fix small things
* Match func_800AA000
* Match z_camera/func_800437F0
* Decompile code_800D2E30, use struct in 800A9F30
* Format
* Remove 'U' from literals
* Remove bss, cleanup z_camera
* Review changes, rename temp
* Move externs to variables.h
* osgetactivequeue ok
* osspdevicebusy ok
* osGetCurrFaultedThread ok
* osSpRawStartDma OK
* __osSpSetPc and osViGetCurrentFramebuffer OK
* sinf, sins, and sptask OK
* coss OK
* cosf OK
* ran format.sh
* Updated PR to use ultratypes
* osContStartQuery OK
* ran format.sh
* Updated PR to fix issues
* Made suggested changes
* Decompile z_play.c and Match/Document some of z_view.c
Also fix the last non matching in z_sample.c and update some game state functions.
* Suggestions from PR #74
* Fix undefined reference to Gameplay_DrawOverlay
* Suggestion from PR #74 (2)
* Fix a fake argument in func_800BC450
* Decompile jpegutils.c
jpegutils.c : OK
* Fix a typo
* Fixes in PR #75
- Fix a type in JpegWork
- Remove clang-format off/on in z_quake.c
- Move the jpegutils rule at the end of makefile
* In process of moving changes over from old repo
* Merged in changes
* Finished import of padmgr changes from old repo
* Adjusted some volatile
* Improving padmgr volatile situation
* Almost matched osReadMempak
* Working on osMempakDataCRC
* Explanations and equivalents but no matches for osMempakAddrCRC and osMempakDataCRC
* OK after merge
* Matched osMempakAddrCRC and osMempakDataCRC
* Matched osReadMempak
* Updated PadMgr function names to be less like original code
* Changed variable names to make them further from original code
* Changed names and it stopped matching
* Undid clang-format steamrollering whitespace memes
* Cleaned up Input names
* More formatting changes
* Moved padmgr to z64.h, deleted padmgr.h
* Decompile z_jpeg.c
- Decompile z_jpeg.c
- Move .bss variables from fault.c and fault_drawer.c into .s files to avoid bss reordering
* Rename JPEGWork to JpegWork and minor fix in Jpeg_GetU16