PJB3005
a7148d8bc3
Rename StageOffsetPtr to just OffsetPtr
2026-02-28 22:12:39 +01:00
Jasper St. Pierre
8185100d2f
get farther
2026-02-28 12:46:05 -08:00
Luke Street
32c32a73ca
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
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
Luke Street
819f59c1c7
Use tls_model("global-dynamic") for JKRHeap on GCC
2026-02-28 13:16:42 -07:00
Luke Street
f501960314
Some TARGET_PC fixes
2026-02-28 13:16:02 -07: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
PJB3005
5926989394
Fix pointer truncation in fopScnM_CreateReq i_data
2026-02-28 21:00:16 +01:00
PJB3005
5a519da22b
Fix JGadget::TLinkList offsets on 64-bit
2026-02-28 20:17:20 +01:00
PJB3005
a23721bc7d
Process debug imgui
2026-02-28 19:39:52 +01:00
PJB3005
9a12c28823
Fix dScnPly_Create not returning properly
2026-02-28 19:13:17 +01:00
PJB3005
2ed6a26de4
Get imgui running
2026-02-28 14:43:47 +01:00
PJB3005
29ec605929
Stub out the entire dynamic linking table
2026-02-28 13:47:24 +01:00
PJB3005
0c16a748c3
Make stage loading work on LE & 64-bit
2026-02-28 13:17:05 +01:00
Jeffrey Crowell
799cfc022d
address comments
2026-02-27 16:56:35 -08:00
PJB3005
b8e92ad08d
Speed up logos
...
Keeping this in my working tree was getting annoying. Later we can probably revert it.
2026-02-27 23:55:10 +01:00
PJB3005
be84ab7b0a
Disable the audio engine for now
2026-02-27 23:54:50 +01:00
PJB3005
f759c7fe65
Disable clearEfb for now
...
Causes crash due to weird way of clearing depth buffer
2026-02-27 23:33:36 +01:00
PJB3005
bb0ef954c2
Merge branch 'main' into 26-02-27-pjb-dev-2
2026-02-27 23:28:08 +01:00
PJB3005
0ee3b2b197
Isolate JKRHeap operator overloads
...
Fixes #25
This isolates the JKRHeap operator new/delete overloads. Every single new/delete site in the code has been replaced with a macro.
Sadly for new[] and delete[] we have to keep global operators. The global new[] just allocates into malloc() however, and delete[] goes into free() if it's not in a JKRHeap. So that's fine.
2026-02-27 23:11:59 +01:00
Max Roncace
d017a3cd36
d_a_alink debug improvements ( #3112 )
2026-02-27 11:20:39 -07:00
Jeffrey Crowell
1f01a1e147
fix more compile errors with clang
2026-02-26 23:03:55 -08:00
PJB3005
4213b055ea
Make GXVtxDescList and GXVtxAttrFmtList not be behind BE
...
Fixes a stub call because we couldn't pass the BE form to the API
2026-02-27 01:04:44 +01:00
PJB3005
e9cd1d1f64
Endianness fixes in JAudio loading code
...
Not tested because I can't even get the code to init again due to the aforementioned race condition
2026-02-26 23:22:47 +01:00
PJB3005
d7a4fe6fa8
Fix JASDram allocation race condition
...
Not sure if useful as long-term plan involves abandoning the DSP entirely.
2026-02-26 23:19:15 +01:00
PJB3005
fb20c793ce
This parameter was not what I thought it was
2026-02-26 23:02:46 +01:00
PJB3005
4a36376ae4
Increase audio heap sizes on PC
...
prevent allocation failures from larger 64-bit pointers
2026-02-26 18:46:47 +01:00
PJB3005
60e5d599ee
Make the audio engine initialize again
...
Removes spurious mDoAud_zelAudio_c::onInitFlag call in m_do_main that was added in the port, it breaks audio engine init.
Re-introduced g_mDoAud_audioHeap initialization.
2026-02-26 18:45:57 +01:00
PJB3005
55d162fd3e
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
TakaRikka
a2e8b9647b
Merge pull request #22 from TakaRikka/26-02-25-fix-fader
...
Re-enable fader logic
2026-02-25 13:53:22 -08:00
PJB3005
70f32d0f25
Re-enable fader logic
...
Was disabled during port development, needed to load the game
2026-02-25 22:47:31 +01:00
PJB3005
454d3e80c6
Make the rest of JSystem compiled in DEBUG
2026-02-25 21:31:13 +01:00
TakaRikka
7fc1363d8b
Merge pull request #16 from TakaRikka/26-02-25-more-endian-fixes
...
Asset loading endian fixes (mostly)
2026-02-25 11:58:37 -08:00
PJB3005
24ea26187e
Merge branch 'main' into 26-02-25-more-endian-fixes
2026-02-25 20:47:33 +01:00
PJB3005
e7e176bfd4
Windows build fixes
...
Name mangling/linkage shenanigans
Remove jsystem_stubs.cpp, it's not necessary.
2026-02-25 20:43:43 +01:00
Jeffrey Crowell
7da545a06f
fix two more ptr narrowing casts
2026-02-25 11:21:28 -08:00
PJB3005
284e6c50b6
Fix endianness & 64-bit in 3D asset loading code
...
Combination of plumbing BE(T) through everything, making BE<T> have template specializations, and inverting at load time where more practical.
2026-02-25 20:20:45 +01:00
Jeffrey Crowell
9c7f55d1ac
builds on mac again
...
revert some useless ifdefs
rm TARGET_PC in the wrong place
remove stubbed version of functions
2026-02-25 11:09:19 -08:00
PJB3005
975a15036e
Implement GDInitGDLObj a little bit
...
Enough to avoid a crash during asset loading.
2026-02-25 19:52:31 +01:00
TakaRikka
7f76378d0f
Merge pull request #13 from TakaRikka/26-02-24-thread-local-current-heap
...
Make JKRHeap::sCurrentHeap thread local
2026-02-24 14:53:44 -08:00
PJB3005
6fed5eb37c
Make JKRHeap::sCurrentHeap thread local
...
Needed because we're using true OS threading, so we can't do the normal JSystem heap changing on thread change.
Requires encapsulating it (removing the public static field)
2026-02-24 23:35:16 +01:00
PJB3005
e10bf4a8d2
Disable assert heap on DVD thread
...
Nintendo does this probably as a debugging aid. Problem is we allocate from our DVD driver implementation, so everything explodes.
2026-02-24 23:32:45 +01:00
Pieter-Jan Briers
02607a4571
Minor JKRSolidHeap fixes ( #3109 )
...
64-bit compat
2026-02-24 14:20:11 -08:00
PJB3005
80e09302ac
Make JUT showAssert_f_va just log and exit
...
Normally it tries to draw the error on screen, but the wait on vblank just infinite loops for us.
2026-02-24 23:01:29 +01:00
PJB3005
0cdbd764b4
Make OSPanic abort properly, don't unwind stack
...
Existing abort code is a bad idea on a modern compiler. Just call abort()
2026-02-24 23:00:23 +01:00
PJB3005
696cf75ed3
Fix getMaxAllocatableSize & CMemBlock::getBlock on 64-bit
2026-02-24 21:39:45 +01:00
PJB3005
a000b79584
Translate memory allocation failure error
2026-02-24 21:04:48 +01:00
PJB3005
61abd3b353
Make OSReport_Error less hideous to look at
2026-02-24 21:03:05 +01:00
PJB3005
78c91adcf6
Fix AR DMAs & async DVD reads on 64-bit
...
We get to the health and safety screen!!
2026-02-24 20:48:16 +01:00