PJB3005
3750e7cfee
Merge remote-tracking branch 'origin/main' into 26-02-27-pjb-dev-2
2026-03-01 15:08:52 +01:00
CraftyBoss
3e4b9bf59b
update some actors to use sizeof for mSize, endian swap J2DScreen related structs, add 64bit endian swapping
...
game appears to be hanging on fully initing some processes, so while there isnt an immediate crash, nothing seems to be happening
2026-03-01 14:46:16 +01:00
Luke Street
0631cfe894
Fix all -Wconversion-null warnings
2026-02-28 15:59:24 -07:00
PJB3005
17873f0a22
Fix cBgD_Grp_t m_name field size
...
Missed this.
2026-02-28 23:21:11 +01:00
PJB3005
1b69152d5a
Fix collision data loading (64-bit & BE)
2026-02-28 22:52:18 +01:00
Luke Street
3385468314
Merge decomp/main into dusk
2026-02-28 14:49:57 -07: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
Luke Street
b7961b7739
Fix compilation errors after decomp/main merge
...
- Fix <string> -> <cstring> across all source files (upstream fix)
- Add <cstring> to JASGadget.h, <cstdarg> to JUTDbPrint.cpp
- Fix <string> -> <cstring> in JUTFont.h, d_save.h, f_ap_game.h
- Fix std::isnan usage in c_cc_d.cpp
- Fix cCcD_Src types: s32 -> u32 for bitmask fields (upstream fix)
- Fix AT_TYPE_WOLF_ATTACK/AT_TYPE_UNK unsigned literals (upstream fix)
- Remove (s32) casts on hex literals in collision data (upstream fix)
- Fix 0xFFFFFFFF literal in d_a_obj_wood_statue.cpp (upstream fix)
- Add braces to case 0 in d_a_e_gb.cpp to fix jump-over-init
- Fix Z2AudioCS.h include path (Z2AudioLib -> Z2AudioCS)
- Forward-declare Z2AudioCS in stubs.cpp to avoid revolution conflicts
- Guard JASGlobalInstance specializations with __MWERKS__ in m_Do_main
- Remove duplicate inline functions from d_com_inf_game.h
- Mark dummy() functions as static (upstream fix)
- Add JAUSectionHeap.h include to m_Do_main.cpp
2026-02-28 14:29:46 -07:00
PJB3005
6abae56af4
Actually fix compile with offset_ptr for real this time I hope?
2026-02-28 22:28:37 +01:00
PJB3005
f43b88823c
Rename StageOffsetPtr to just OffsetPtr
2026-02-28 22:12:39 +01:00
Luke Street
3b8300d0d2
Merge decomp/main into dusk
...
Merges 44 upstream commits from zeldaret/tp decomp/main.
Conflict resolutions:
- .github/workflows/build.yml: keep deleted (not needed for PC port)
- README.md: keep PC port README
- J3DAnimation.h: keep OFFSET_PTR macro + add upstream forward decl
- J3DModelLoader.h: keep BE(u32) mBlockNum + add field_0x1c
- d_com_inf_game.h: keep PC port inlines + add upstream declarations
- global.h: keep MULTI_CHAR macro + add FABSF macro
- JUTConsole.cpp: keep uintptr_t cast for 64-bit
- JUTDbPrint.cpp: keep PC enter_() helper + add cstring include
- JUTResFont.cpp: take upstream loop/struct improvements with BE types
- JUTCacheFont.cpp: take upstream decomp fix
- float.h: use upstream !PLATFORM_GCN guard
- d_a_npc_bouS/theB.cpp: keep MULTI_CHAR() for PC portability
- d_a_npc_henna.cpp: keep uintptr_t + use upstream var name
- d_demo.cpp: keep near_/far_ field renames for PC
- d_resorce.cpp: keep uintptr_t + fix var name to res
- d_s_room.cpp, m_Do_graphic.cpp: keep dusk includes + add cstring
- m_Do_main.cpp: keep JHIComPortManager + use JAS_GLOBAL_INSTANCE_INIT
- angle_utils.h: remove redundant types.h include
2026-02-28 13:33:16 -07: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
PJB3005
d90b0c550b
fix StageOffsetPtrT -> overload
2026-02-28 20:58:21 +01:00
PJB3005
4d78474d12
Process debug imgui
2026-02-28 19:39:52 +01:00
PJB3005
b598f856b4
Make stage loading work on LE & 64-bit
2026-02-28 13:17:05 +01:00
Max Roncace
bf4d19d8db
d_a_alink debug improvements ( #3112 )
2026-02-27 11:20:39 -07:00
PJB3005
2ee3dae5d5
Make stage loading work somewhat
...
BE & 64-bit support
Most nodes haven't been fixed yet but this at least avoids an immediate crash.
2026-02-26 18:44:40 +01:00
PJB3005
3e0023961f
Windows build fixes
...
Name mangling/linkage shenanigans
Remove jsystem_stubs.cpp, it's not necessary.
2026-02-25 20:43:43 +01:00
Pieter-Jan Briers
af7ab981e6
Fix MORE wrong forward declares (struct/class) ( #3110 )
2026-02-24 14:20:45 -08:00
PJB3005
fcf1f4bed1
Fix wrong forward declares (struct/class)
...
Requires removing the now-matching symbols from jsystem_stubs.cpp
2026-02-24 16:58:12 +01:00
Pieter-Jan Briers
a2dcb7251b
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
765878893f
Warpappear doc ( #3104 )
...
* warpappear documentation
* dist documentation
* more doc
* add enum name + square macro
2026-02-20 19:06:42 -08:00
Jcw87
b6abc56f94
d_resorce debug ( #3105 )
2026-02-20 03:05:23 -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
Max Roncace
ba2700248e
d_cursor_mng mostly matching ( #3101 )
2026-02-17 22:58:52 -08:00
Max Roncace
ca94ab6a92
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
6703a5c0ce
d_demo debug ( #3098 )
2026-02-13 15:08:10 -08:00
Jcw87
a6561ebcf1
d_bg_parts debug ( #3097 )
2026-02-13 15:06:14 -08:00
Lurs
3b742025db
Fix MSVC compiler and linker errors
...
- Fix struct/class forward declaration mismatches (JAIAudience, JASTrack) causing different MSVC mangled names and unresolved symbols
- Add jsystem_stubs.cpp with stubs for JASHeap, JASVoiceBank, J3DShapeTable, JAUSection, JHICommBuf, HIO/HIO2, JOR
2026-02-13 23:28:47 +01:00
Jcw87
7a22a1c320
fix compiler warnings ( #3094 )
2026-02-11 00:14:18 -08:00
Jcw87
9250959981
d_a_obj debug ( #3089 )
2026-02-11 00:06:12 -08:00
Jcw87
c6b361575e
d_jnt_col debug ( #3088 )
2026-02-11 00:05:16 -08:00
Jcw87
25ce57cd32
d_save debug ( #3087 )
2026-02-11 00:04:54 -08:00
Lurs
292724920c
Merge branch 'wip/linkfix2' into wip/linkfix
2026-02-11 07:20:44 +01:00
Jcw87
971daa6efa
d_com_static debug ( #3082 )
2026-02-02 23:46:39 -08:00
roeming
81d679d207
Fix errors for msvc
...
Use less strict compiler flags instead of modifying source code
Add ugly defines so MSVC stops complaining about zero length arrays
2026-02-01 15:37:26 -08:00
Jcw87
dbee7c8f1f
d_com_inf_game debug ( #3075 )
...
* d_com_inf_game debug
* inline sorting
2026-01-29 18:58:59 -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
d82453292a
Merge remote-tracking branch 'decomp/main' into compile
2026-01-26 18:11:18 -05:00
hatal175
6e1fcd4dcf
Work on d_jdpreviwer ( #3067 )
2026-01-25 21:20:02 -08:00
Jcw87
7cce77d9e1
d_map debug ( #3066 )
2026-01-25 21:17:59 -08: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
kipcode66
02ba53f72e
Merge commit '46da46b152472c668875d67c336f59ded62d3ecc' into compile
2026-01-23 17:04:18 -05:00
Jcw87
46da46b152
d_stage debug ( #3063 )
2026-01-22 21:11:28 -08:00
Max Roncace
8420d2b777
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
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