Commit Graph

535 Commits

Author SHA1 Message Date
YunataSavior 6bef300342
minor dol fixes for linkability (#2720) 2025-10-01 20:14:06 -07:00
LagoLunatic 9eea9289b1
Fix JUT_ASSERT and several other macros (#2711)
* Fix JUT_ASSERT to be a nested define

* Switch names that appear in asserts to be constants instead of defines

* Replace `0` in asserts with `NULL` or `FALSE`

* Fix fpclassify

* Fix ARRAY_SIZE

* Use G_CM3D_F_INF

* More fixes for fpclassify

* Remove FLOAT_LABEL

* Remove incorrect FLAG_ON macro

* Remove UNK_BSS macro

* Silence clangd unused header warning for PCH
2025-09-28 13:11:07 -07:00
LagoLunatic 5dc86158bc
Fix most vtable issues (#2706) 2025-09-27 15:35:11 -07:00
LagoLunatic 54d8839d91
Remove unnecessary externs (#2705) 2025-09-27 15:30:54 -07:00
LagoLunatic 6242aa6e84
Misc matches and fixes (#2703)
* Match mDoExt_morf_c::getPlayMode

* Misc cleanup

* Fix actor cull spheres

* Match daPy_py_c::getLastSceneSwordAtUpTime, JUTGamePad::testTrigger

* Fix improper demangling of dBgS_SphChk::SetCallback

* Fix d_camera rangef weak func order

* Match more alink_wolf funcs
2025-09-26 18:50:46 -07:00
LagoLunatic dbf6abeb90
Use composition instead of inheritance for most f_op classes (#2700) 2025-09-25 12:57:15 -07:00
TakaRikka 9a2df2162b
d_debug_camera mostly done (#2695)
* d_debug_camera mostly done

* update some alink demo stuff

* some misc debug stuff
2025-09-25 18:20:46 +03:00
hatal175 169c7ae4a2
JHOSTIO almost comletely linked (#2689) 2025-09-23 20:27:24 -06:00
Carco_21 5f70650ba2
d_a_e_gm matching (#2669)
* initial work

* Almost matching

* missed formatting changes

* matching

* changed to equivalent

* PR cleanup, now matching
2025-09-20 03:44:42 +03:00
TakaRikka e931b1fb79
swpush5 / bhashi done (#2663)
* swpush5 done

* bhashi done

* gptaru done
2025-09-16 17:31:37 +03:00
Max Roncace a8136496c7
Miscellaneous TU fixes (#2662) 2025-09-15 02:53:53 -07:00
Max Roncace 8420c94854
Minor JSystem/Z2Audio fixes (#2650) 2025-09-11 23:39:23 -07:00
Max Roncace a6c3c20b23
Add PCH for JSystem (#2645) 2025-09-11 13:20:45 -07:00
Max Roncace 4b729b0f65
Minor d_a_alink improvements (#2646) 2025-09-10 21:10:04 -07:00
TakaRikka 52aa5f677f
scannon / scannon_crs / scannon_ten done (#2632)
* scannon done

* scannon_crs done

* scannon_ten done

* pr

* attention debug stuff

* attn flags

* fix build
2025-09-08 12:01:20 +03:00
TakaRikka b45a089e15
some J3D/misc cleanup (#2628)
* some j3d cleanup

* begin using uintptr_t

* j3dgraphbase cleanup

* j3dgraphanimator cleanup
2025-09-04 17:56:59 +03:00
Max Roncace 8c94dc8608
Add hacks to fix PCH .data causing fake mismatches with decompctx (#2606) 2025-08-30 20:57:35 -07:00
LagoLunatic 956e84b0e7
Start linking some TUs on debug and PAL (#2612)
* 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
2025-08-27 17:37:31 -07:00
LagoLunatic 0579f4acef
Fix d_a_ykgr retail regalloc and mostly match on debug (#2608)
* d_a_ykgr OK

* Fix sqrtf for shield

* Fix pch caps
2025-08-27 01:40:48 -07:00
Max Roncace b309e0cf57
Miscellaneous improvements (#2603) 2025-08-25 15:33:44 -07:00
Max Roncace 513816ce5c
Add a precompiled header for RELs (#2597) 2025-08-24 09:52:08 +03:00
hatal175 58a6d8d793
d_a_obj_gomikabe OK (#2580)
* d_a_obj_gomikabe OK

* Remove unneeded include
2025-08-11 17:18:42 -07:00
Max Roncace ddf4fc0677
Misc framework fixes (#2578) 2025-08-10 23:22:28 -07:00
Max Roncace 156d2b24c3
Misc. J3D improvements (#2570) 2025-08-08 12:56:18 +03:00
Max Roncace 57c9d64308
Misc. framework/d/ improvements (#2572) 2025-08-06 21:46:07 -07:00
hatal175 ee608ceaac
d_a_obj_fallobj OK (#2568)
* d_a_obj_fallobj OK

* J3DMatBlock equivalent
2025-08-05 18:10:43 -07:00
hatal175 69aaeeeda6
d_a_obj_tobyhouse equivalent (#2546) 2025-07-20 16:57:50 -07:00
Max Roncace 5c86d6d26f
Minor d_a_alink fixes (#2534) 2025-07-15 23:00:01 +03:00
YunataSavior 9c48ec0905
Major npc wrestler cleanup (#2531) 2025-07-13 18:08:32 +03:00
Carco_21 b67414ef1a
d_a_demo00 work (#2525)
* Initial work

* Got to ke_control

* draw function

* tiny execute work

* all functions worked on

* PR cleanup

* Took out static keyword for dDemo_setDemoData
2025-07-11 02:16:30 +03:00
YunataSavior 712c880710
d_a_npc_besu equivalent (#2510)
* beautify_anm_data v2.0

* d_a_npc_besu 50% done

* d_a_npc_besu 70% done

* d_a_npc_besu until wait + indent fix

* d_a_npc_besu equivalent!

* Mark d_a_npc_besu as equiv in configure py
2025-07-06 03:07:33 -07:00
TakaRikka 79c56b2548
add wii usa rev0 support (#2505)
* wii usa rev0 dol building ok

* wii dol cleanup

* some wii tests

* most rels building
2025-06-27 13:14:58 +03:00
hatal175 e43b660038
Improve some J2DPictureEx matches (#2493)
* Improve some J2DPictureEx matches

+ other minor debug improvements

* Fix JASTrack::channelStart
2025-06-21 03:47:24 -07:00
LagoLunatic ac06966414
Add more J3D_ASSERTs (#2491)
* Fix debug build

* Add more J3D_ASSERTs

* Move J3DShapeMtx to correct header for assert

* Add VSCode task for ninja changes_all
2025-06-19 23:41:43 -07:00
LagoLunatic 23cba4d117
getDemoIDData matched, fix up various inlines and template classes (#2489)
* Fix debug build

* getDemoIDData matched, fix up various inlines and template classes

* Remove nonmatching comments
2025-06-17 22:11:53 -07:00
Carco_21 ba4ea76d4d
d_a_obj_gra2 work (#2482)
* Tiny start on d_a_obj_gra2

* Initial work

* Solid work done

* More work

* work on some rolling functions and deme camera

* Almost all functions worked on

* All functions worked on

* Fixed some BaseNpc functions I broke

* PR Cleanup

* PR cleanup part 2
2025-06-16 16:40:16 +03:00
hatal175 1a189d3d95
Work on d_a_obj_flag3 (#2485)
* Work on d_a_obj_flag3

* Fix JASBasicWaveBank::incWaveTable

* Match JASBNKParser::Ver0::createBasicBank
2025-06-15 15:38:08 -07:00
TakaRikka 288a08b798
cleanup/doc JMessage / d_msg_class (#2484)
* jmessage cleanup pass

* more JMessage cleanup

* d_msg_class cleanup
2025-06-13 15:33:33 +03:00
Max Roncace 23bee3b523
d_a_e_dk matching (#2476) 2025-06-06 08:16:44 +03:00
TakaRikka e8e36445ba
cleanup d_meter2_info / little JMessage work (#2460)
* d_meter2_info cleanup

* parseBlock_next matching
2025-05-28 14:04:30 +03:00
robojumper 6f4fae57da
jstudio-object OK (#2427)
* jstudio-object checkpoint

* jstudio-object OK

* Small debug improvements
2025-05-08 18:06:38 +03:00
YunataSavior eddbe73928
d_a_b_ds and d_a_e_vt equivalent (#2424) 2025-05-07 20:06:19 +03:00
TakaRikka 6637765454
e_md / coach2D done (#2418)
* e_md / coach2D done

* Update d_a_e_md.cpp

---------

Co-authored-by: hatal175 <hatal175@users.noreply.github.com>
2025-05-04 17:52:18 +03:00
hatal175 cfb614e8b2
d_menu_letter equivalent (#2407) 2025-04-23 11:39:12 -07:00
hatal175 b2d665c911
d_msg_class mostly equivalent (#2403) 2025-04-20 17:46:09 -07:00
hatal175 0ab8dc2519
Daswc (#2398)
* swball cleanup

* daSwc00_c OK

* Revert change in configure - we'll handle rel/dol changes in seperate PR
2025-04-17 16:23:05 -07:00
hatal175 b5e932c493
A Little j3d work (#2396) 2025-04-15 14:09:31 -07:00
hatal175 3df5c7bb42
Various alignments to debug + matching TUs (#2391) 2025-04-13 11:55:52 -07:00
LagoLunatic b52d288cd0
functionvalue 100% (#2389)
* functionvalue 100%

* Fix ninja always thinking the build is dirty due to nonexistent dependent file
2025-04-12 09:12:27 +03:00
hatal175 cc3e0856bf
Misc Matches using debug (#2388) 2025-04-11 14:54:08 -07:00
Caroline Madsen c6f76e7240
Various JSystem work (#2383)
* JKernel and JStudio cleanup

* JMessage cleanup

* JAudio cleanup

* JASBNKParser work

* functionvalue work

* fvb work

* J2D and J3D cleanup

* steal from tww

* J2DPictureEx mostly done

* fix build
2025-04-09 13:45:30 -07:00
LagoLunatic 6672817e41
JSystem work (#2384)
* object-id 100% on debug

Can't be linked due to .text alignment issues?

* J3DMaterialFactory and J3DMaterialFactory_v21 OK

* Match dKy_bg_MAxx_proc
2025-04-08 22:17:20 -07:00
LagoLunatic 6c51708b8c
JStudio object-actor OK (#2381)
* Fix debug build

* object-actor OK
2025-04-07 15:36:51 -07:00
LagoLunatic c0e111b081
Debug JStudio fix + match one retail func (#2378)
* Fix debug build

* Minor fixes

* Match daAlink_c::getDemoLookActor

* Fix JStudio paths in ShieldD splits

* Fix JStudio not compiling on debug

* Fix JStudio not compiling on retail, add fake header
2025-04-06 17:57:52 -07:00
TakaRikka 54dd764096
GCN pal / jpn support, some debug work (#2375)
* d_save debug cleanup / d_s_menu debug

* gameinfo / kankyo struct debug fixes

* pal building ok

* jp building ok

* some tests with jp

* some more pal/jp tests
2025-04-06 21:08:25 +03:00
Huitzi 4ccca6b893
d_event_debug equivalent & modifications to dEvLib_callback_c (#2359)
* WIP d_event_debug
* Implemented most functions close to matching
* Removed erroneous comment in d_com_inf_game.h
* Implemented getEventP in dEvDtBase_c
* Retyped dEvLib_callback_c function returns from BOOL to bool
* Implemented getHeader, getEventList, and setDbgData in dEvent_manager_c
* Moved relevant dEvDb_* classes from d_event.h to d_event_debug.h and changed to structs
* Extended JORFile mFilename character array from 8 to 256 characters
* Implemented combo boxes and update slider functionalities in JORMContext
* Named field_0xC of JORProperyEvent as id, based on use of field in d_event_debug.cpp
* Corrected debug event tables and created missing table
* Debug tables explicitly pasted in d_event_debug.cpp to circumvent ShiftJIS not properly encoding tables via #include directive

* Change return types for implemented virtual functions of actors that inherit from dEvLib_callback_c

* Add const modifier to several d_com_inf_game functions called in d_event_debug, and change respective fields in dEvDb_bit & reg_c to be const

* d_event_debug Equivalent
* Changed configure.py entry to equivalent instead of matching
* Preliminary documentation

* Remove debug tables from d_event.cpp
2025-03-30 20:11:50 -07:00
LagoLunatic ed42b15988
Debug build now takes .alf as input instead of .dol (#2360)
* Fix debug build

* Debug build now takes .alf as input instead of .dol

I had to manually remove the following line from symbols.txt for DTK to work:
```
.data = .sbss:0x8074C97C; // type:object size:0x4 scope:local data:byte
```
After that it built OK, and DTK automatically modified all other lines in symbols.txt.

* Fix pragma in header messing up debug optimization level
2025-03-30 15:43:44 -07:00
TakaRikka 934e14f12b
fix debug build (#2345) 2025-03-27 00:45:52 -07:00
LagoLunatic 4dc0cd9d09
Debug version now builds OK and all_source compiles (#2343)
* 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
2025-03-22 18:00:51 -07:00
Caroline Madsen 5a7b9f62d6
Z2AudioLib work (#2339)
* Z2LinkMgr work, Z2AudioArcLoader matching

* Z2SeMgr matching

* Z2SpeechMgr2 almost done, Z2SoundHandles matching
2025-03-21 23:03:43 -07:00
TakaRikka 60748d0924
b_dr equivalent, update dtk-template (#2327)
* d_a_tag_allmato almost done

* d_a_swhit0 done

* some SSystem cleanup

* treesh done

* swball done, some other rel cleanup

* b_dr equivalent

* update dtk-template

* rename j3dframectrl mode enum
2025-03-14 04:46:21 -04:00
TakaRikka 19e18654c9
tag_allmato almost, swhit0 treesh swball done, misc cleanup (#2312)
* d_a_tag_allmato almost done

* d_a_swhit0 done

* some SSystem cleanup

* treesh done

* swball done, some other rel cleanup
2025-03-01 14:48:49 +02:00
TakaRikka 6e94efaefb
d_a_obj_carry mostly done (#2301)
* d_a_obj_carry mostly done

* cleanup some acch inlines
2025-02-13 10:37:46 -07:00
TakaRikka 2453c0e333
copy dolsdk2004 to tp / b_bh + e_mb done (#2299)
* move dolsdk2004 over

* cleanup some temp work

* finish and cleanup gf

* b_bh done

* d_a_e_mb done
2025-02-10 21:20:42 +02:00
Huitzi 7c5006e446
d_a_obj_waterGate matching + d_a_obj_lv3Water2 equivalent (#2293)
* d_a_obj_waterGate matching + d_a_obj_lv3Water2 equivalent
* Add simpleCalcMaterial implicit inline to J3DModelData (seen in debug)
* Basic documentation for both actors
* WIP debug build implementations (note TODOs)
* Update configure.py and note weak ordering issues for lv3Water2

* Actually add modified J3DModelData.h & explicitly note fake padding
2025-01-27 11:55:55 -08:00
LagoLunatic bf4053fefa
Fix spurious differences when using `ninja diff` (#2294)
* Fix spurious differences when using ninja diff

* Fix some clangd errors/warnings
2025-01-26 22:01:05 -08:00
TakaRikka e0824a1590
most of JHostIO / m_Do_hostIO done (#2288) 2025-01-19 22:05:53 -07:00
TakaRikka 9948a6371f
wip debug / pal building, b_gm mostly done (#2285)
* b_gm mostly done

* wip debug / pal building

* fix configure.py

* fix some debug macros / flags
2025-01-16 19:37:39 +02:00
LagoLunatic 2189777abf
Fix various issues in TUs marked `Equivalent` (#2286) 2025-01-14 22:47:29 -08:00
TakaRikka 36daa25884
d_a_horse mostly done (#2284)
* checkpoint

* d_a_horse mostly done

* some horse doc
2025-01-09 15:45:46 +02:00
TakaRikka 0e281cb975
various matches / cleanup (#2271)
* cleanup various TUs

* checkpoint

* d_attention doc
2024-12-29 17:53:54 +02:00
TakaRikka ad2badcd29
kankyo mostly done (#2269)
* work on kankyo

* some more kankyo work

* kankyo almost done

* kankyo mostly done

* first cleanup pass

* some more renaming

* rename a bunch of kankyo vars

* fix regression
2024-12-24 16:52:12 +02:00
hatal175 d874f05f44
d_a_obj_wsStick, d_a_obj_onsenTaru OK (#2268)
* d_a_obj_wsStick, d_a_obj_onsenTaru OK

* d_a_obj_pdtile OK

* d_a_obj_stone equivalent

* d_a_npc_lf OK

* Z2SoundMgr OK

* Remove fixed nonmatching comment

* d_a_obj_kantera OK

* Remove unneeded header

* daMyna_c::deleteItem matching

* d_a_obj_crvsteel OK
2024-12-24 02:36:01 -08:00
TakaRikka ff5f31b844
kankyo_rain / obj_life_container mostly done, obj_glowsphere done (#2266)
* obj_life_container mostly done

* obj_glowSphere done

* kankyo_rain mostly done

* some cleanup

* more kankyo_rain cleanup
2024-12-18 20:02:52 +02:00
TakaRikka ee09fdf915
e_hzelda mostly done (#2258) 2024-12-06 16:47:30 +02:00
TakaRikka e510f33414
d_vibration / JUTGamePad matched + linked (#2256)
* d_vibration done

* JUTGamePad done

* cleanup JUTGamePad

* d_menu_window cleanup
2024-12-02 21:15:03 +02:00
TakaRikka 24b72a5302
some cleanup of f_pc/f_op files (#2254)
* cleanup f_pc files

* cleanup f_op files

* fix a couple f_op_actor_mng functions

* minor JSystem work
2024-11-29 18:24:26 +02:00
TakaRikka ebd7e3feed
d_error_msg mostly done, little Z2LinkMgr work (#2248) 2024-11-12 05:41:55 -05:00
Caroline Madsen f2a7b2a83a
J2DMatBlock work (#2247) 2024-11-11 22:31:37 +02:00
TakaRikka 650e1c44a4
work on d_a_movie_player (#2246)
* work on d_a_movie_player

* d_a_demo_item mostly done
2024-11-11 17:53:04 +02:00
TakaRikka aec7c1df12
d_demo mostly matched (#2242) 2024-11-10 05:18:28 -05:00
hatal175 d9201174e3
j2d/j3d work (#2241) 2024-11-10 04:53:09 -05:00
hatal175 bec20e3dd4
Work on various units, mostly d_menu_letter (#2240) 2024-11-09 13:20:06 -05:00
Caroline Madsen 98f8e7e741
d_a_midna mostly done (#2237) 2024-11-06 19:20:22 -08:00
Caroline Madsen 63abf9f6d2
JParticle mostly done (#2235) 2024-11-03 20:39:41 +02:00
Caroline Madsen 21cb60624a
J3DMatBlock, J3DMaterialFactory work (#2233) 2024-11-01 13:46:27 -07:00
Caroline Madsen 09423b6fa0
more misc. cleanup (#2232) 2024-10-31 17:36:11 -07:00
TakaRikka 36519ddf15
alink horse mostly done (#2229)
* d_a_horse work

* more work on alink horse

* finish alink horse

* little work on d_a_alink_link
2024-10-31 00:41:08 +02:00
TakaRikka b1d7bc9cc4
d_a_alink_effect mostly done (#2227)
* d_a_alink_effect work

* more d_a_alink_effect work

* some d_a_alink data cleanup

* d_a_alink_effect mostly done
2024-10-28 13:00:15 +02:00
Caroline Madsen 5650c7fe08
JAudio2 and Z2AudioLib work (#2223)
* JAudio2 and Z2AudioLib work

* check1stDynamicWave matched
2024-10-24 02:25:13 +03:00
Caroline Madsen 69dc7cbbf1
d_a_b_yo and d_a_b_yo_ice mostly OK (#2219) 2024-10-19 11:54:40 +03:00
TakaRikka 0652b2c7b3
obj_Iceleaf almost done / d_a_alink work (#2217)
* obj_iceleaf almost done

* fix up d_a_alink procvars

* more d_a_alink work

* some d_a_alink error cleanup

* some more cleanup
2024-10-19 11:54:22 +03:00
Caroline Madsen abc4c6659a
cleanup (#2216) 2024-10-17 14:24:29 -07:00
hatal175 38445f4d51
Work on d_a_title (#2215) 2024-10-17 14:21:08 -07:00
hatal175 ec07abb09b
Reintroduce missing changes from pull request #2200 (#2213)
* Reintroduce missing changes from pull request  #2200

* m_Do_audio OK
2024-10-16 12:41:21 -07:00
Caroline Madsen 9f58034704
J3D work (#2212) 2024-10-15 23:59:31 +03:00
Luke Street 0db466edfa
Add clangd support for VS Code (#2207)
* Add clangd support for VS Code

* Revert accidental change
2024-10-12 21:43:10 -07:00
TakaRikka 8514737d46
d_a_alink work / bump dtk version (#2205) 2024-10-12 15:11:17 -07:00
TakaRikka 12eb254d76
switch to dtk setup (#2203)
* switch to dtk setup

* some cleanup / fixes

* cleanup d_a_alink literals

* Restore doxygen, update CI & README.md (#1)

* Fix build image ref (#2)

---------

Co-authored-by: Luke Street <luke@street.dev>
2024-10-10 08:29:58 -06:00
Caroline Madsen 2fd702c0ac
d_menu_fmap and d_menu_fmap2D OK (#2202) 2024-10-07 15:34:13 -07:00