* refactor: unknown arow actor to arrow
* refactor: rename ActorUnkArow_c4 and remove warning
* refactor: rename class in system files
* feat: match actorprofilearrow
* feat: progress decompilation
* feat: rename actor to ActorShotArrow
* feat: change mangled name
* feat: decompile some functions and mark unmatched functions as non-matching
* feat: progress
* feat: decompiling function 020f206c
* feat: change two fields for struct padding
* feat: remove non-matching comment on matched function
* feat: decompiling function 020f20bc
* refactor: fix .bss mangled names
* feat: decompiling 020f2134
* feat: decompiling func_ov031_020f2160
* feat: matching function func_ov031_020f21dc
* feat: use correct mangled names in jp version
* fix: change back arm9/delinks in eur version
* feat: non-matching function 020f1a64
* feat: decompile 020f2270
* feat: decompile function 020f2280
* feat: uncompile func_ov031_020f229c
* feat: match 020f22d4 add UnkSystem{4,5} as fields
* feat: reverse 020f2b8c
* feat: 020f2bbc
* feat: 020f2bec
* feat: 020f3304
* style: explicitly indicate floating values when using FLOAT_TO_Q20
* style: move external function to the top
* feat: begin of 020f3258
* feat: decompile 020f32c4
* feat: propagate mangled names changes to japan version
* feat: begin decompilation of func_ov031_020f370c
* feat: begin weird decompilation of func_ov031_020f3d4c
* feat: decompile function 020f3d04
* feat: better matching
* feat: matching function func_ov031_020f2214
* feat: decompile the function 020f3258
* feat: increase matched code
* feat: decompile function func_ov031_020f2794
* feat: decompile function func_ov031_020f18bc
* feat: decompile almost all func_ov031_020f195c
* feat: decompile 3/4 of func_ov031_020f173c
* refactor: change back function's return type to void
* feat: begin decompilation of func_ov031_020f1b04
* feat: advance decompilation of 020f1c7c
* feat: decompile 020f1e3c
* feat: decompile function func_ov031_020f1f54
* refactor: move func(Actor *) into ActorShotArrow class
* feat: introduce ActorShotArrow_194 thanks to Yanis002
* fix: use FX32 in macros over old Q20
* fix: praying magic behaviour
* revert: revert before build failure
* revert: remove all relocs.txt magic stuff
* revert: introduce back correct symbols
* revert: introduce back CORRECTLY correct symbols
* feat: rename vtable
* fix: wrong hex in comment
* feat: huge improvements
* fix: undefined 02081d7c
* fix: awful symbol name
* fix: part of mangled name in jp version
* fix: rest of the line disappeared
* fix: try to fix jp version
* fix: apply eur fix to jp
* feat: add function 020f374c
* fix: full match of 020f173c
* feat: move function in upperclass
* feat: change ActorRupee to use class function
* feat: try decompiling func_ov031_020f2ef0
* feat: improvements
* feat: improvements
* docs: add comment
* fix: build issues
* feat: improvements
* feat: improvements
* feat: forget inclusion of unkstruct
* feat: enhanced
* feat: some improvements
* style: better style
* feat: decompile function and cleanup
* refactor: remove .cache ??
* review
---------
Co-authored-by: Yanis002 <35189056+Yanis002@users.noreply.github.com>
* gcc fixes
* document random things in UnkStruct_027e09b8_00
* match func_ov001_020ba670 and rabbit docs
* match func_ov026_0211f394
* fix build issues
* match func_ov026_0211e3e0
* match func_ov026_02102924
* move structs to header
* document train rope thing
* MapObject OK and ActorRef stuff
* match more actor funcs
* fix regressions
* fix build issues
* more regressions fixes
* name keyt grab func
* UnkSubStruct19 -> CellAnimObject (based on the only assert string)
* fix build issues due to merge
* Actor::mUnk_4C -> Actor::mState + related changes
* create GetActorPtr template inline for Actor_c4
* ActorUnk_ov000_020a8bb0 -> Actor_Derived1
* actor: add comments about mUnk_50/52 and change type of mAngle
* name func_01ffd3d8 and func_01ffd400
* name func_01ffd3b0
* match func_ov024_020cf9d4 + improve the Random struct
* UnkStruct_027e0cf8_00_0C_024 45%
* match PassengerManager::GetRandomIndex
* UnkStruct_027e0cf8_00_0C_024 OK
* UnkStruct_027e0cf8_00_0C_024: do other sections
* UnkStruct_027e0cf8_08_024 55%
* cleanup: remplace delete into null by the delete macro
* UnkStruct_027e0cf8_08_024 OK
* fix build issues
* UnkStruct_ov024_020d86a0_024 OK
* PlayerActor_A0_38_024 .text OK, CreditsEndingType OK
* tools: create courselist.py to convert .CLB data to yaml
* UnkDataStruct4_14 OK
* UnkDataStruct4 17%
* UnkDataStruct4 OK
* MiscAdvManager OK
* PassengerManager OK
* fix build issues
* ZeldaTrainBinary OK
* mark PassengerManager as complete and adjust delinks
* UnkStruct_027e0cf8_08_00_024 OK
* document more of UnkStruct_027e0ce0
* savefile hotfixes
* UnkStruct_027e0ce0_34_024 OK
* code_020d46b4_024 OK
* UnkStruct_027e0d00 & UnkStruct_027e0d00_20 OK
* code_020d51dc_024 OK
* fix weird formatting
* UnkTrainSystem1 OK
* fix jp broken match
* UnkTrainSystem2 OK
* UnkStruct_027e0d08_024 31%
* fix build issues
* UnkStruct_027e0d08 OK!!!
* remove useless parenthesis
* ActorUnk_ov000_020a8bb0_EC OK
* move ActorUnk_ov000_020a8bb0_EC to MainGame/Actor/
* ActorUnkOBPC OK
* add sjiswrap support
* solve remaining gaps and fix build issues
* reorganise files + counter docs
* tools: remove format command execution from defaults
* feat: change symbols for ActorHeart
* feat: begin ActorHeart decompilation
* feat: continue decompilation (some changes should be refactored)
* improvements
* fix build issues
* feat: improve matching code
* fix: remove back nitro/math
* feat: load s8 as u8
* refactor: remove shady variadic function
* feat: better function, reg order issue
* refactor: switch EC, F0 and F4 to a single VecFx32 variable and improve vfunc_20
* feat: improvements in vfunc_v20
* docs: add what should be written in comments
* feat: match with temporary unknown actor structure
* style: remove unnecessary curly brackets in switch cases
* style: move external functions to the top
* docs: mark unmatched functions as non-matching
* refactor: use FLOAT_TO_Q20 instead of raw hex values
* style: remove unnecessary cast
* refactor: use macros to manipulate flags
* refactor: better floating values
* refactor: use hex values over bin values
* feat: use ROUND_Q20 to increase matching
* refactor: use Cylinder::Init instead of assigning each variable
* refactor: change mangled names
---------
Co-authored-by: Yanis002 <35189056+Yanis002@users.noreply.github.com>
* merge headers from nitro decomp
* cleanup: use inlines from g2.h and gx.h when changing registers
* cleanup: remove externs declarations in source files
* GameModeAdventure_001 OK
* GameModeAdventure_024 17%
* GameModeAdventure_024 73%
* GameModeAdventure_024 99%
* jp region differences
* rename GameModeAdventure_024 and GameModeAdventure + UnkStruct_ov000_020d8660_024 OK
* UnkActorSystem1OK
* UnkActorSystem2 OK
* delink more of ov024 & UnkStruct_027e0998_024 OK
* improve instance stuff & UnkStruct_027e0cf8_024 OK
* AdventureModeManager_160_024 OK & GameModeStartUp OK
* fix regressions
* fix regressions 2
* AdventureModeManager_170 OK
* AdventureModeManager_174_Base OK
* AdventureModeManager_174 OK
* mark GameModeAdventure_024 as complete
* AdventureModeManager_178 OK
* AdventureModeManager_180 OK
* AdventureModeManager_184_024 OK
* AdventureModeManager_18C_024 OK & AdventureModeManager_190_024 OK
* AdventureModeManager_15C_20_00 61%
* AdventureModeManager_15C_20_00 OK
* jp version differences
* delink what's left in the overlay
* fix regressions
* AdventureModeManager_1B8_Base_024 98%
* AdventureModeManager_1B8 48% and link AdventureModeManager_024
* AdventureModeManager_1B8_Base and AdventureModeManager_1B8 OK
* oops
* mark statics as local
* name item 31 to 34
* name item 25 to 29
* decompile PassengerManager (95%)
* started cargo manager
* local attribute
* passenger/cargo manager ov001 functions
* name item manager functions
* fix build issues & more docs on 027e0cd8
* format
* playrget progress and match treasuremanager remaining functions
* some docs
* fix build issues
* random docs
* match func_ov094_02172290
* random docs
* actor cleanup
* match freestanding item funcs
* mType -> mpProfile
* decompile random functions
* docs and start of wip chest stuff
* random docs
* more random docs
* match func_ov036_0211d0a8
* match func_ov036_0211d2dc & func_ov036_0211d570
* match func_ov110_02184a40
* random doc
* document letter/stamps system
* match func_ov001_020bb9f8
* fix build issues
* decompile tres
* start decomp chest base
* fix regressions
* name TRES
* name UnkStruct_ov024_020d86b0
* name stamp types and update save struct stuff
* name things and document BMG IDs
* cutscene stuff
* fix build issues
* revert accidental change and document random stuff
* document cutscene indices
* make mUnk_0D a bool + disambiguate a reloc
* decomp some itcm functions
* set the right base class size
* actor and map object changes
* rename id getters functions
* document unknown file system used in mapobjectprofile
* start to document MapObjectProfile
* match UnkStruct_ov000_020b4f84_00_Base
* lots of random stuff
* match other funcs from game.cpp
* data_02049a2c -> gGame, UnkStruct_02049a2c -> Game
* match operator new
* fix regressions
* fix some warnings
* another round of random things
* another round of random things 2
* complete slots column in overlays.md
* add scene indices
* gamemode stuff
* misc stuff
* fix build issues
* document random things
* fix regressions
* final round of random things (for now)
* match random init
* UnkSystem2_UnkSubSystem1_Derived1 related docs
* match func_ov031_020e9108 and FileSelect_UnkClass7::vfunc_00
* improve func_02017ea4
* rename next functions
* actor rupee improvements
* update gitignore
* fix broken match
* fileselectmain improvements
* fix broken match
* more misc progress
* fix build issues
* fix regressions
* improve configure.py part 1
* compile settings per-file instead of global
* remove dont_reuse_strings in sources
* multiversion support
* update docs
* report filename change
* fixed objdiff not being able to create context file
* add version define to decompme cflags/m2ctx
* match wstring.c
* match math_api.c, mbstring.c, mem.c and mem_funcs.c
* more progress
* build issues
* fix non-matching issues
* reorganise files
* match fdlibm (+ libc progress)
* fix jp build
* solved some non-matchings and progress
* removed types.h usage in libc
* match data and add missing delinks for jp
* delink overlay 110
* mangled functions names in symbols
* improve how versions are defined in the compiler's command
* add version-exclusive function + fix data_ov110_021861ec size
* match .rodata
* dsd sig apply
* progress
* vfunc_18 & func_ov110_02185d3c + format
* symbols renames
* remove force_data pragma
* started func_ov110_02184a40
* improve vfunc_18 match thanks to nepecam
* fixed relocs issues
* match func_ov110_02186b8c
* continue the awful function (and rename the folder)
* format
* build issues
* almost match func_ov110_02184a40!!!
* start vfunc_10 + misc
* vfunc_10 progress (91%)
* symbol fix
* vfunc_10 big switch fix
* turn some structs into a class
* update symbols
* vfunc_10 prog, move func_ov110_02185da4 to itemmanaager and some docs/cleanup
* progress on playerget and itemmanager
* fix build issues
* remove accidental header from merge and name mUnk_60
* add hex value comment in item id enum
* random stuff
* started vfunc_0c
* move externs around
* match/docs stuff related to item usage in PlayerGet
* format
* vfunc_10 version diff
* improve func_ov110_02186b8c handling and fix broken matches
* vfunc_0c small improvements
* progress on item manager
* complete item manager and add upgrade capacities
* some cleanup
* header cleanup
* match data (kind of)
* symbol naming
* name more symbols 1
* name more symbols 2
* name more symbols 3
* more jp syncing
* mystery actor stuff
* rename the file and fix build errors
* delink ActorRupee and match few functions
* add missing functions, mangle names and match func_ov031_020e9d54
* random stuff (literally)
* decomp more of ActorRupee
* rng stuff (thanks to aetias)
* decomp more of ActorRupee (36%)
* sync symbols
* format
* random: fixed wrong function call in configure.py
* decomp more of ActorRupee (51%)
* add actor ids and move them to their own header + small docs on actor class
* format
* improvements and small progress
* progress
* progress
* sync eur with jp
* fix build issues
* missed a file