Luke Street
4df8ccc871
Reorganize library code into libs/ ( #3119 )
...
* Reorganize files into libs/{dolphin,JSystem,PowerPC_EABI_Support,revolution,TRK_MINNOW_DOLPHIN}
* Update configure.py and project.py for new libs structure
* Refactor `#include <dolphin/x.h>` -> `<x.h>`
* Remove `__REVOLUTION_SDK__` forwards from dolphin
* Fix dolphin/ references in revolution
* Wrap `#include <dolphin.h>` in `!__REVOLUTION_SDK__`
* Always build TRK against dolphin headers
* Resolve revolution SDK header resolution issues
2026-03-01 14:35:36 -08:00
TakaRikka
c9a46bd65b
d_s_logo / d_s_play debug work, d_a_kago cleanup, misc cleanup ( #3116 )
...
* d_a_kago cleanup
* d_s_logo wii/shield work
* d_s_logo / d_s_play debug work
* fix missing profile class sizeof's
* fix phase->id values
* build fixes
* fix dCamera_c and camera profile
2026-03-01 13:19:48 -08:00
Luke Street
6e748ac283
More GCC compatibility/warning fixes ( #3118 )
...
* Wrap >4-char literals in a MULTI_CHAR macro
Modern compilers do not support CW's non-standard behavior with
>4 char literals. We can, however, use a constexpr function to
compute the u64 values directly. This leaves <=4 char literals
unchanged.
* Replace non-pointer usages of NULL with 0
* Define NULL to nullptr on C++11 and above
* Fix more -Wpointer-arith and -Woverflow warnings
* Replace u32/s32 with uintptr_t/intptr_t where appropriate
* JSUOutputStream: Overload all standard int types
2026-02-28 20:19:17 -08:00
Luke Street
38b7156a8e
Another round of GCC fixes ( #3115 )
...
* Fix remaining <string> -> <cstring> for GCC compilation (#3114 follow-up)
MWerks' <string> header transitively includes C string functions
(memcpy, strlen, strcmp, etc.), but GCC/Clang's <string> is the C++
std::string header. These files all use C string functions and should
include <cstring> instead.
* Use std::isnan instead of isnan for GCC compilation
GCC's <cmath> places isnan in the std namespace. Using the unqualified
isnan fails to compile with GCC/Clang.
* Fix cCcD_Src types: s32 -> u32 for bitmask fields
cCcD_SrcObjCommonBase::mSPrm, cCcD_SrcObjTg::mType, and
cCcD_SrcObjAt::mType are used as bitmasks (SetType/SetSPrm take u32,
MskType/MskSPrm use u32, values like 0xFFFFFFFF are common in
aggregate inits). Change from s32 to u32 to match usage.
Also fix AT_TYPE_WOLF_ATTACK/AT_TYPE_UNK to use unsigned literals,
and remove now-unnecessary (s32) casts on hex literals in collision
source data.
* Mark dummy() functions as static to avoid multiple definition errors
These decomp artifact functions have the same name and signature across
TUs, causing linker errors when building as a single binary.
2026-02-28 13:35:07 -08:00
Luzagar
ff82ba7a4f
E rd documentation ( #3106 )
...
* some e_rd doc
* fix build
* more doc
* more doc
* fix debug
* fix debug for real
* change some name
* some rename
* rename
2026-02-28 12:25:31 -08:00
Max Roncace
a290c2d52c
ShieldD: Clean up a bunch of 99% matching TUs ( #3113 )
...
* d_a_npc_ks debug code 100%
* d_a_npc_rafrel debug code 100%
* d_a_npc_inko minor improvements
* d_a_npc_gro debug code 100%
* d_a_npc_pachi_taro debug code 100%
* d_a_npc_passer debug code 100%
* d_a_npc_pachi_maro debug code 100%
* d_a_npc_post debug code 100%
* d_a_obj_bemos debug improvements
* d_a_obj_scannon_ten debug code 100%
* d_a_b_mgn debug code 100%
* d_a_e_fb debug code 100%
* d_a_e_gb debug code 100%
* d_a_e_hz debug code 100%
* d_a_e_cr_egg debug code 100%
* d_a_e_md debug code 100%
* d_a_e_wb debug code 100%
* d_a_obj_mirror_6pole debug code 100%
* d_a_obj_spinLift debug data fixes
* d_a_obj_pdwall debug data fixes
* d_a_obj_ss_drink debug code almost matching
* d_a_obj_poFire debug code 100%
* d_a_obj_picture debug code 100%
* d_a_obj_dust debug code 100%
* d_a_obj_fallobj debug code 100%
* d_a_obj_itamato debug code almost matching
* d_a_obj_syRock debug code 100%
* d_a_obj_katatsumuri debug code 100%
* d_a_obj_wood_statue debug code 100%
* d_a_obj_lv6egate debug code 100%
* d_a_tag_qs minor debug symbol fixes
* d_a_obj_twGate debug code 100%
* d_a_obj_lv6SwGate debug code 100%
* d_a_obj_lv6swturn debug code 100%
* d_a_obj_lv6Tenbin debug code 100%
* d_a_obj_kwheel01 debug code 100%
* Fix RTTI order regression (cM3dGCyl vs cBgS_*)
2026-02-28 12:13:57 -08:00
Luke Street
29c96f5c65
Some GCC compilation fixes ( #3114 )
...
* Fix 6-byte multichar literals
* Add `struct` to `e_ga_class::ga_s`
* Fix remaining wrong forward declares (struct/class)
* Replace `#include <string>` with `#include <cstring>`
* Guard FLT_EPSILON define to prevent redefinition
* Add missing `#include <cstring>` for direct cstring function usage
2026-02-28 12:11:00 -08:00
Max Roncace
bf4d19d8db
d_a_alink debug improvements ( #3112 )
2026-02-27 11:20:39 -07:00
Luzagar
765878893f
Warpappear doc ( #3104 )
...
* warpappear documentation
* dist documentation
* more doc
* add enum name + square macro
2026-02-20 19:06:42 -08:00
roeming
07ef4b6d26
Big cast cleanup ( #3076 )
...
* Big cast cleanup
* fix for name conflict
* rename header
* rename cast macros
* fix rename mistake
---------
Co-authored-by: roeming <roeming@users.noreply.github.com >
2026-02-20 02:48:29 -08:00
TakaRikka
43b886a7c9
extract d_a_player l_sightDL ( #3095 )
2026-02-11 08:00:44 -07:00
Jcw87
7a22a1c320
fix compiler warnings ( #3094 )
2026-02-11 00:14:18 -08:00
Jcw87
971daa6efa
d_com_static debug ( #3082 )
2026-02-02 23:46:39 -08:00
hatal175
13d3ae312a
Use literals in TWgate ( #3071 )
2026-01-28 14:22:12 -08:00
Huitzi
9041d6289f
Various Lakebed Temple/water-related object debug equivalencies ( #3070 )
...
* d_a_obj_syRock + waterPillar debug equivalent
* Implemented HIO genMessage
* Added drawCylinder debug drawing
* d_a_obj_waterfall debug equivalent
* Implemented HIO genMessage
* Added unused tri collider and cull box data
* Various LV3 d_a_obj_* actors debug equivalent
* Added/modified some documentation
* Added some widescreen support functions
* Added relevant HIO stuff
* Noted weak ordering issues in configure.py
* Refactoring according to feedback
2026-01-28 14:21:47 -08:00
YunataSavior
7130aecf9a
DBG npc_henna and mg_fshop equiv ( #3069 )
...
* DBG npc_henna almost, some mg_fshop
* Fix weed_control
* demo_camera_shop OK
* misc dbg symbol/etc fixes
* Fix e_ym/npc_henna dbg bss splits
Thanks @LagoLunatic
* dbg mg_fshop equiv
* PR comments
* DEBUG_CHECK_PAD_TRIG_Z mg_fshop
2026-01-28 14:19:46 -08:00
kipcode66
a4246921a3
Std7 ( #3068 )
...
* fix standard compiler error for d_a_tag_TWgate
* fix standard compiler errors for J3DJoint
* fix regression in ShieldD
2026-01-27 00:20:19 +02:00
TakaRikka
c9e2a73dda
general cleanup, d_menu_quit / d_a_obj_testcube mostly done, d_msg_scrn_explain debug ( #3065 )
...
* typedef for cPhs_Step
* make sdk includes consistent
* d_menu_quit / d_msg_scrn_explain debug
* d_a_obj_testcube mostly done
* d_debug_pad mostly done
* jstudio tool library headers
* some JStudioCameraEditor headers
* d_jcam_editor mostly done
* try fixing some shield regressions
* d_bg_parts mostly done
* fix merge errors
* debug fix
2026-01-24 23:36:23 -08:00
Niklas Bauer
6f73e18bd2
d_a_e_tk debug ( #3062 )
...
* d_a_e_tk debug
* a_this -> actor
2026-01-24 21:20:33 +02:00
YunataSavior
cac63ec131
dbg npc_aru (-1 func), npc_maro, and npc_bans equiv ( #3053 )
...
* dbg npc_aru (-1 func), npc_maro, and tag_push equiv
* daNpc_Aru_c::adjustMoveDir doesn't match. I don't know how to fix it without breaking GCN
* JORM default args + PR comments
* npc_bans dbg equiv
2026-01-20 16:28:50 -08:00
Max Roncace
2ac52379df
Use default parameter values in JORMContext calls where appropriate ( #3057 )
2026-01-19 18:18:30 -08:00
Max Roncace
21af98f856
Fix misspelled dSv_config_language enum values ( #3056 )
2026-01-19 18:15:39 -08:00
Max Roncace
b5df6738da
d_a_tag_* TUs mostly matching for debug ( #3054 )
...
* d_a_tag_event debug almost matching
* d_a_tag_msg debug almost matching
* d_a_tag_attention almost matching
* d_a_tag_chkpoint debug almost matching (weak func order)
* d_a_tag_evt debug almost matching (extra weak fns)
* d_a_tag_evtarea debug almost matching (weak func order)
* d_a_tag_evtmsg debug almost matching (weak func order)
* d_a_tag_mist debug almost matching (weak func order)
* d_a_tag_howl debug almost matching (weak func order)
* d_a_tag_lantern debug almost matching (weak func order)
* d_a_tag_push debug almost matching (weak func order)
* d_a_tag_telop debug almost matching (weak func order)
* d_a_tag_CstaSw debug almost matching (weak func order)
* d_a_tag_ajnot debug almost matching (weak func order)
* d_a_tag_attack_item debug almost matching (weak func order)
* d_a_tag_gstart debug almost matching (weak func order)
* d_a_tag_hinit debug almost matching (debug weak func order)
* d_a_tag_hjump debug almost matching (weak func order)
* d_a_tag_hstop debug almost matching (weak func order)
* d_a_tag_lv2prchk debug almost matching (weak func order)
* d_a_tag_magne debug almost matching (weak func order)
* d_a_tag_mhint debug almost matching (weak func order)
* d_a_tag_mstop debug almost matching (weak func order)
* d_a_tag_spring debug almost matching (weak func order)
* d_a_tag_statue_evt debug almost matching (weak func order)
* d_a_tag_arena debug almost matching (weak func order)
* d_a_tag_Lv6Gate debug almost matching (weak func order)
* d_a_tag_Lv7Gate debug almost matching (weak func order)
* d_a_tag_Lv8Gate debug almost matching (.data + weak func order)
* d_a_tag_TWgate debug almost matching (weak func order)
* d_a_tag_lv6CstaSw debug almost matching (weak func order)
* d_a_tag_assistance debug almost matching (weak func order)
* d_a_tag_bottle_item debug almost matching (weak func order)
* d_a_tag_chgrestart debug almost matching (weak func order)
* d_a_tag_csw debug almost matching (weak func order)
* d_a_tag_escape debug almost matching (weak func order)
* d_a_tag_firewall debug almost matching (weak func order)
* d_a_tag_gra debug almost matching (weak func order)
* d_a_tag_guard debug almost matching (weak func order)
* d_a_tag_instruction debug almost matching (weak func order)
* d_a_tag_kago_fall debug almost matching (weak func order)
* d_a_tag_lightball debug almost matching (weak func order)
* d_a_tag_lv5soup debug almost matching (weak func order)
* d_a_tag_mmsg debug almost matching (weak func order)
* d_a_tag_mwait debug almost matching (weak func order)
* d_a_tag_myna2 debug almost matching (weak func order)
* d_a_tag_myna_light debug almost matching (weak func order)
* d_a_tag_pachi debug almost matching (weak func order)
* d_a_tag_poFire debug almost matching (weak func order)
* d_a_tag_qs debug almost matching (small mismatch in search)
* d_a_tag_ret_room debug almost matching (weak func order)
* d_a_tag_river_back debug almost matching (weak func order)
* d_a_tag_rmbit_sw debug almost matching (weak func order)
* d_a_tag_schedule debug almost matching (weak func order)
* d_a_tag_setBall debug almost matching (weak func order)
* d_a_tag_setrestart debug almost matching (weak func order)
* d_a_tag_shop_item debug almost matching (weak func order)
* d_a_tag_smk_emt debug almost matching (weak func order)
* d_a_tag_spinner debug almost matching (weak func order)
* d_a_tag_sspath debug almost matching (weak func order)
* d_a_tag_ss_drink debug almost matching (weak func order)
* d_a_tag_stream debug almost matching (weak func order)
* d_a_tag_theB_hint debug almost matching (weak func order)
* d_a_tag_watchge debug almost matching (weak func order)
* d_a_tag_waterfall debug almost matching (weak func order)
* d_a_tag_allmato debug almost matching (weak func order)
* d_a_tag_camera debug almost matching (extra weak fns)
* d_a_tag_wara_howl debug almost matching (RTTI mismatch?)
* d_a_tag_yami debug almost matching (weak func order)
* Fix Shield regressions related to d_a_tag_* debug work
2026-01-19 18:11:54 -08:00
Niklas Bauer
f4f647bf44
d_a_obj_fallobj debug work + dVibration_c alignment ( #3048 )
...
* d_a_obj_fallobj debug
* fix dVibration_c alignment
* fix
* pr comments
2026-01-19 17:58:59 -08:00
YunataSavior
5536ed3f3d
npc_besu, npc_toby DBG equiv ( #3051 )
2026-01-18 17:52:48 -08:00
Jeffrey Crowell
56f04f54c8
fix build in daNpc_Hoz_c::test ( #3050 )
...
mMotionSeqMngr.setNo and mFaceMotionSeqMngr.setNo were called with int instead of the proper pointer.
2026-01-17 19:15:44 -08:00
roeming
0571b8c22d
fopAcM_Register cleanup (#3047 )
...
* use macro `fopAcM_Register` more consistently
* replace fopAcM_RegisterCreateID with version that doesn't create `a_this`
2026-01-17 15:52:32 +02:00
roeming
7c71acb6b6
match d_a_npc_tk for debug ( #3046 )
...
* match d_a_npc_tk for debug
* fix macro usage
* fix whitespace
2026-01-17 15:45:52 +02:00
TakaRikka
ccdb3fbd2a
d_a_alink cleanup / debug work ( #3045 )
...
* start d_a_alink debug cleanup
* d_a_alink_damage debug
* d_a_alink_guard debug
* d_a_alink_bow debug
* d_a_alink_boom debug
* d_a_alink_copyrod debug
* d_a_alink_hvyboots debug
* d_a_alink_grab debug
* d_a_alink_sumou debug
* d_a_alink_horse debug
* d_a_alink_canoe debug
* d_a_alink_crawl / d_a_alink_hang debug
* d_a_alink_swim debug
* d_a_alink_hook / d_a_alink_iceleaf debug
* d_a_alink_bottle debug
* d_a_alink_whistle / d_a_alink_kandelaar / d_a_alink_ironball debug
* d_a_alink_demo debug
* d_a_alink_effect debug
* d_a_alink_wolf debug
* d_a_alink debug / cleanup
* cleanup button status enums
2026-01-17 15:44:37 +02:00
Max Roncace
43eac24e2e
Use attention enums everywhere instead of integer literals ( #3044 )
2026-01-14 16:55:59 +02:00
Max Roncace
db936de5c9
Clean up HIO for TUs using HIOParam/Param_c/HIO_c pattern ( #3043 )
2026-01-13 14:58:15 -08:00
kipcode66
9b7e55965f
standard compiler compatibility changes ( #3040 )
...
* move math to cmath
* replace stdarg to cstdarg
* change stdint to stdint.h
* minor fixes
* change stdio to cstdio
* change stdlib to stdlib
* renamed ctype to cctype
* fix missing argument for UNSET_FLAG
2026-01-13 00:48:25 +02:00
YunataSavior
e3b78563d1
obj_pumpkin dbg equiv ( #3036 )
2026-01-12 22:18:58 +02:00
roeming
36984571ff
d_a_obj_cowdoor debug matching ( #3031 )
...
* d_a_obj_cowdoor debug work
* fix formatting
2026-01-12 22:17:56 +02:00
roeming
6906b0b4c8
attempt 2 at d_a_cow debug work ( #3030 )
...
* transfer cow progress
* fix symbol names
* Fix shield names
* typo
* remove predefined macro
2026-01-12 22:17:09 +02:00
YunataSavior
f80c653d3e
e_rd, npc_ks dbg work ( #3029 )
...
* Partial e_rd, npc_ks dbg work
* More e_rd matching
* e_rd fixes and dbg ctor matched
* obj_ita dbg equiv
* e_st dbg almost equiv
* Some obj_ladder dbg work
* dbg e_rd PR comments
* Further e_rd dbg clangd fixes
2026-01-11 19:49:05 -08:00
Max Roncace
91d97cf3f4
d_camera debug almost matching ( #3032 )
2026-01-11 19:20:17 -08:00
roeming
37ec227b3f
first round of constants cleanup ( #3021 )
...
* first round of constants cleanup
* move m_PI_D definition
* remove compatibility comment
* add future version of angle subtracting with/without cast
* whitespace change to run builds again
2026-01-10 23:38:04 +02:00
hatal175
d5e748beaa
Work on d_debug_camera ( #3024 )
2026-01-08 07:53:40 -07:00
Max Roncace
b6e14dd4c8
Misc debug include/class order improvements + link remaining Z2AudioLib TUs ( #3014 )
...
* Improve dolzel.pch ordering
* Improve JSystem include order
* Various class ordering fixes
* Link remaining Z2AudioLib TUs
* Fix some symbols in Shield and weak functions in ShieldD
2026-01-06 04:38:40 -08:00
Max Roncace
29d2308308
Link d_a_npc and d_a_npc_cd2 ( #3019 )
2026-01-05 03:58:09 -08:00
Jcw87
378e6ecf72
fix functions not returning values ( #3018 )
2026-01-05 03:55:35 -08:00
kipcode66
ea53712c30
Add guards around std library headers ( #3013 )
...
* Last fix for standard compiler error
* adding define guards around headers
* rename cmath.h and climits.h to cmath and climits respectively
* renaming cstdarg.h to cstdarg
* renaming cstdlib.h to cstdlib
* renaming cstring.h to cstring
* renaming cstdio.h to cstdio
* renaming cmath locale ctype
* renaming stdarg string and va_list
* renaming cstddef
* renaming stdio stddef stdlib
* renaming algorithm, functional, iterator, memory, and utility
* renaming bitset, cstdint, limits, and stdint
* renaming new and type_traits
* update quote includes for standard library headers to angle bracket includes
2026-01-05 03:50:45 -08:00
roeming
350d24b4b4
d_a_e_rdy debug work ( #3011 )
...
* debug work for d_a_e_rdy
* remove unused fake function
* fix regressions
* rename variable
* Fix version diffs of angle adding
2026-01-04 17:22:04 -08:00
hatal175
798ba743a0
Work on d_cc_d debug ( #3002 )
2025-12-29 04:12:01 -08:00
TakaRikka
d58e17f9f1
d_a_door_spiral mostly done ( #3007 )
2025-12-27 13:46:46 -07:00
YunataSavior
fc3692e4ac
Debug d_a_e_ym ( #3003 )
2025-12-26 16:23:14 -08:00
LagoLunatic
d63835d5c6
Fix optimization flag for Shield ( #3004 )
...
* Fix optimization flag for Shield
* Minor debug work
* Fix NULL asserts
2025-12-26 16:20:21 -08:00
roeming
e9e4adc368
match most of d_a_e_wb debug ( #3001 )
...
* match most of d_a_e_wb debug
* Move over to using new `UNUSED` macro
2025-12-26 14:56:46 -08:00
roeming
6a9525b54f
match d_a_e_mk debug ( #2999 )
...
* match d_a_e_mk debug
* Fix platform guard
2025-12-26 14:56:15 -08:00