* launch.json cwd
* bodge to load gci for testing
* stub card stat
* gameplay bodges
* viewport, ub fixes
* add release with debug info cmake variant
* be fixes, sound stub
* viewport h
* d_msg_flow BE
* be fopAcM_createItemFromEnemyID
* update launch configuration to use iso
* more audio stubs
* Attempt to set viewport and get messages for brightness check
* skip opening scene again, fixed JMessage::TResourceContainer::TCResource::Do_destroy
* add guards for viewport changes
* moar endian swapping to get Link sitting in PROC_OPENING_SCENE and for dialogues
* BE d_msg_class i_data
* stub bgm start
* fix div by 0 error (for now)
* TEMP_BROKEN in d_menu_ring
* REQUIRES_GX_LINES
* properly stub renderingAmap::draw with REQUIRES_GX_LINES
* better stubbing outside of stubs
* fix event data getting swapped multiple times
* evil draw vp fix
* Stub log imgui
This redirects all spammy logs to an imgui window that is cleared per frame.
This fixes the serious performance dip of the logging, and makes the regular log readable.
* Oops move those optimization changes I accidentally committed behind a flag
DUSK_SELECTED_OPT
* gx_line macro in map
* fix audio stubbing
* switch to CARD API aurora impl
* remove kabufuda from link libs
* refactor imgui stuff and add input viewer
* merge stub log with refactor
* accidentally committed a metaforce header shh
* basic map loader
* ImGuiConsole: Add missing <thread> include
* you may now play as luigi (you may now load stages with bridges)
* bloom fix
* bloom leak fix
* cloud shadow fix
* add soft reset button to imgui menu
* if it broke dont not fix it
* i swear i committed this
* BE swap indMtx in JPAResource::setPTev
* wnark ct fix
* frsqrte implementation from kinoko
* Fix Clang compile error in JAISeq::prepare_getSeqData_
* Add endian conversions to dMsgFlow_c::getInitNodeIndex
This fixes a freeze when Fado tries to stop you from leaving the
starting area.
* Add RAII GXTexObj wrapper; fix almost all leaks
* Update aurora for indirect texturing
* Update aurora for CARD fix
* Fix Clang build
* More d_msg_flow endian fixes
Fixes softlock when trying to talk to Fado and possibly other NPCs.
* no frame limiter
* get pause menu working
* proper frame limiting
* particle pointer size fix
* improve map loader a bit
---------
Co-authored-by: Jasper St. Pierre <jstpierre@mecheye.net>
Co-authored-by: TakaRikka <takarikka@outlook.com>
Co-authored-by: CraftyBoss <talibabdulmaalik@gmail.com>
Co-authored-by: Luke Street <luke@street.dev>
Co-authored-by: Lurs <2795933+Lurs@users.noreply.github.com>
Co-authored-by: PJB3005 <pieterjan.briers+git@gmail.com>
Co-authored-by: tgsm <doodrabbit@hotmail.com>
Co-authored-by: Max Roncace <me@caseif.net>
Co-authored-by: Phillip Stephens <antidote.crk@gmail.com>
* Fix Debug_BBA being in the wrong split for GCN
* Add .init splits/symbols for Wii versions
* Fix incorrect relocations detected to __check_pad3 for Wii
* Add .init splits and fix __check_pad3 for Shield versions
* Replace DANPCF_C_HACK with a better fakematch
* d_a_obj_item OK
* Fix ninja diff
* Misc debug/nonmatching fixes
* Fix ninja diff for PAL
* Fix bad PAL split
* Fix REL ctors splits for Shield final version
* Fix profile_lst split for Shield
* Add Shield to vscode configure task
* Add align:16 to most functions in Shield main.dol
* Start linking some TUs for Shield
* Add Shield final version to CI
* Fix clang union handling (affects all TUs including d_camera.h)
Union members with non-trivial ctors/dtors is undefined behavior and clangd normally throws a fit and refuses to parse the whole union, but it seems to be possible to ifdef the problematic ctors out for non-mwerks compilers and explicitly tell modern compilers to use the defaults instead. Thanks to encounter for this fix.
* Link all TUs that already match on debug
In order to link TUs for debug, most functions seem to need to have their alignment set to 16 in symbols.txt. There are a few hundred functions that seem to be the exception and break when their alignment is set to 16, but I don't know the reason for this.
* Remove some fakematches (nosyminline/sym off) for weak func order in retail
* Fix clang not knowing that MSL_C++ is C++
* Link more debug TUs
* Fix missing PAL split
* Fix wrong slashes being used in includes
* RZDE01_00: Fix incorrect capitalization in config.yml
* Add RZDE01_00 to configure task
* Revert configure.py to use MatchingFor
* Fix PAL splits and symbols, link matching PAL TUs
* Tiny work
* d_a_e_bug equivalent
* took out unnecessary include
* fixed broken match
* PR cleanup
* OS_REPORT fixed
---------
Co-authored-by: hatal175 <hatal175@users.noreply.github.com>
* Fix missing arg to JUT_ASSERT
* Fix some MWCC version diff errors
* Compile m_Do_ext, d_demo, actor_mng
* Add VSCode task to quickly switch between versions
* Unlink magLift for debug
* Update the hash of the debug dol
The old cbea5fa... hash here was for the dol generated by the alf2dol.py script, which produces incorrect alignment.
The dol with the new hash can be obtained by using `dtk elf2dol` to convert the debug .alf file to a dol.
The DOL now builds OK.
* Fix all debug REL dtor splits
All RELs now also build OK, meaning `ninja build/ShieldD/ok` now succeeds.
* Add genMessage declarations to all HIO subclasses
* Fixing more compilation errors
* m_Do_mtx 100% on debug
Cannot be linked due to weak function name mangling?
* Improve various matches
* Fix all remaining compilation errors
* Fix new compilation errors from main
* Fix retail regression
* Link f_pc_profile_lst