TakaRikka
bc7503cb70
fix push pull callback UB in other compilers ( #3134 )
2026-03-18 02:57:37 -07:00
TakaRikka
f64015ea38
cc debug work ( #3133 )
2026-03-17 22:48:37 -07:00
Max Roncace
6694c1b281
Fix a bunch of compiler warnings and document several more bugs ( #3130 )
2026-03-17 22:38:05 -07:00
TakaRikka
9f340b604b
various d_bg debug cleanup / d_menu_window_HIO debug ( #3132 )
...
* various d_bg debug cleanup
* matching forward decl for compiler compatibility
* fix build
2026-03-17 03:44:11 -07:00
roeming
ae0f8909a6
convert daPasserMng_c::mGroupTbl underlying data from bytes to daPasserMng_c::Group ( #3129 )
...
* daPasserMng_c::mGroupTbl underlying data to daPasserMng_c::Group
* move over to const groups
* templated solution that works on modern compilers + mwcc
---------
Co-authored-by: roeming <roeming@users.noreply.github.com >
2026-03-15 18:06:16 -07:00
Max Roncace
bc9bf9d062
d_a_npc_tkj2 debug code+data 100% ( #3128 )
2026-03-11 03:18:57 -07:00
Max Roncace
01654335d4
d_a_horse debug improvements ( #3127 )
2026-03-11 03:16:11 -07:00
Luzagar
7f91d9547f
E wb documentation + e_rd cleanup ( #3125 )
...
* e_rd cleanup
* first pass
* fix ?
* rename
* more rename
* fix other platform
* fix typo
* more documentation
* more work
* fix build
* fix
* more doc
* camera work
* more work
* cleanup
* more work
* clean up + fix build
* fix build
* more work
* change mSpeedRate name
* change description
* more work
* fire eff work
* fix build
* fix match
* debug fix ?
* update description
* rename field
2026-03-11 03:12:17 -07:00
Max Roncace
8a333fc7c9
More debug fixes for 99% TUs ( #3122 )
...
* d_a_e_hp debug code 100%
* d_a_npc_chin debug improvements
* d_a_npc_du debug code 100%
* d_a_npc_cdn3 debug code 100%
* d_a_e_rdy GCN symbol fixes
* d_a_kago debug code 100%
* d_a_e_oc debug code 100%
* d_a_e_yr debug code almost matching
* d_a_e_bg debug code 100%
* d_a_ykgr debug code 100%
* d_a_tag_hjump debug data fixes
* d_a_tag_attack_item debug data fixes
* d_a_e_df debug code 100%
* d_a_e_sh debug code 100%
* d_a_L7op_demo_dr debug code 100%
* d_a_L7low_dr debug code 100%
* d_a_e_sm2 debug code 100%
* d_a_movie_player debug code 100%
* d_a_e_st debug code 100%
* d_a_npc_aru debug code 100%
* d_a_e_yg debug code 100%
* d_a_door_spiral debug code 100%
* d_a_bg debug code 100% (still has .data issues)
* d_a_e_dn debug code 100%
* d_a_tag_attention debug code 100%
* d_a_e_bd debug code 100%
* d_a_tag_camera debug .rodata fix
* d_a_obj_movebox debug code 100% (array dtors are mismapped)
* d_a_mg_rod debug improvements
* d_a_e_rd debug symbol fixes
2026-03-11 03:07:19 -07:00
Huitzi
0b0fdd1f60
Actor status consolidation & process profile definition editing ( #3117 )
...
* Consolidate fopAcM_STATUS into fopAc_Status_e
* Add _e suffix to fopAcStts enums
* Prepare for profile enumeration
* Correct typo in scene_process_profile_definition
* Manually handle g_profile_Obj_DamCps (inline preprocessing)
* Correct g_profile_TAG_LV5SOUP procname to enum
* Create d_priority.h
* Update process profile definitions
* Moved inline comments to the left
* Add missing fopAcStts enums
* Add d_priority.h include in f_pc_leaf.h
* Manually update d_a_obj_damCps profile
* Replace fopAcStts enums replacing and anticipatory profile size correction
* Changed profile size from literal to sizeof() in anticipation of PR #3116
* Provided putative names to staff-related status enums
* Replaced appropriate literals with fopAcStts enums
* Fix borked merge
* Rename item number enums and move to d_item_data.h
* Rename process profile name & draw priority enums
* Move process profile name & draw priority enums to appropriate files
* Moved fpcNm_ enums from d/d_procname.h to f_pc/f_pc_name.h
* Moved fpcDwPi_ enums from d/d_priority.h to f_pc/f_pc_draw_priority.h
* ACTUALLY (whoops) stage merge
* Correct item mistranslation
Co-authored-by: LagoLunatic <LagoLunatic@users.noreply.github.com >
---------
Co-authored-by: LagoLunatic <LagoLunatic@users.noreply.github.com >
2026-03-09 18:33:31 -07:00
TakaRikka
30e839c28b
d_s_room / d_s_name / d_a_title debug work ( #3123 )
...
* d_s_room / d_s_name debug work
* camera_class rtti fix
* d_a_title debug / handle shield rel changes
* fix shield build
* fix regressions
2026-03-06 22:30:25 -08:00
Luke Street
9649319ec4
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
6e149819e1
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
6a48380461
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
b5d3b8c059
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
06ebc176c2
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
ebe7c7aabc
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
c900a043b8
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
d017a3cd36
d_a_alink debug improvements ( #3112 )
2026-02-27 11:20:39 -07:00
Pieter-Jan Briers
f54661f878
Fix MORE wrong forward declares (struct/class) ( #3110 )
2026-02-24 14:20:45 -08:00
Pieter-Jan Briers
59fd9f387a
Fix incorrect forward declare keywords ( #3107 )
...
Mixups of class/struct keyword in forward declares. Doesn't seem to matter on MWCC, but causes name mangling mismatching on modern platforms.
2026-02-23 11:13:00 -08:00
Luzagar
73debfd6b9
Warpappear doc ( #3104 )
...
* warpappear documentation
* dist documentation
* more doc
* add enum name + square macro
2026-02-20 19:06:42 -08:00
Jcw87
2113d9044b
d_resorce debug ( #3105 )
2026-02-20 03:05:23 -08:00
roeming
0558bde1e6
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
Max Roncace
a790efafc5
d_cursor_mng mostly matching ( #3101 )
2026-02-17 22:58:52 -08:00
Max Roncace
1273e633f2
m_Re_controller_pad mostly matching ( #3099 )
...
* Move m_Re_controller_pad to m_Re/
* m_Re_controller_pad mostly matching
2026-02-13 15:15:42 -08:00
Jcw87
0b1cb89d69
d_demo debug ( #3098 )
2026-02-13 15:08:10 -08:00
Jcw87
68f3531c2d
d_bg_parts debug ( #3097 )
2026-02-13 15:06:14 -08:00
Jcw87
a07ec61d66
fix compiler warnings ( #3094 )
2026-02-11 00:14:18 -08:00
Jcw87
b9de3375b4
d_a_obj debug ( #3089 )
2026-02-11 00:06:12 -08:00
Jcw87
d8a4157b9f
d_jnt_col debug ( #3088 )
2026-02-11 00:05:16 -08:00
Jcw87
a772c05f4d
d_save debug ( #3087 )
2026-02-11 00:04:54 -08:00
Jcw87
00bdde3b94
d_com_static debug ( #3082 )
2026-02-02 23:46:39 -08:00
Jcw87
21de544196
d_com_inf_game debug ( #3075 )
...
* d_com_inf_game debug
* inline sorting
2026-01-29 18:58:59 -08:00
Huitzi
414a650f9f
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
5812194fad
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
hatal175
be3efedee3
Work on d_jdpreviwer ( #3067 )
2026-01-25 21:20:02 -08:00
Jcw87
7883248acc
d_map debug ( #3066 )
2026-01-25 21:17:59 -08:00
TakaRikka
5867eaf68b
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
e01dbc3297
d_a_e_tk debug ( #3062 )
...
* d_a_e_tk debug
* a_this -> actor
2026-01-24 21:20:33 +02:00
Jcw87
86fddd48d5
d_stage debug ( #3063 )
2026-01-22 21:11:28 -08:00
Max Roncace
e023387d7b
Add missing d_bg_* TUs ( #3058 )
...
* Implement d_bg_s_capt_poly
* Add d_bg_s_func
* Ad d_bg_w_deform
* Add empty source file for d_bg_w_hf
2026-01-20 16:29:47 -08:00
YunataSavior
6472d5a4a6
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
1fba6e13e5
Use default parameter values in JORMContext calls where appropriate ( #3057 )
2026-01-19 18:18:30 -08:00
Max Roncace
d83996c711
Fix misspelled dSv_config_language enum values ( #3056 )
2026-01-19 18:15:39 -08:00
Max Roncace
9d926f6720
Fix signaling NaN constants not appearing in debug .rodata ( #3055 )
2026-01-19 18:15:10 -08:00
Max Roncace
a0a5b0cc38
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
1817d3123f
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
Jcw87
87a3705039
m_Do debug ( #3052 )
...
* m_Do debug
* m_Do wii data
2026-01-18 17:59:57 -08:00
YunataSavior
52a1e1363a
npc_besu, npc_toby DBG equiv ( #3051 )
2026-01-18 17:52:48 -08:00