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
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
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
2ac86ddc4a
Use real line numbers for asserts
...
Redefine the macros to use __LINE__
2026-02-24 23:15:01 +01:00
PJB3005
696cf75ed3
Fix getMaxAllocatableSize & CMemBlock::getBlock on 64-bit
2026-02-24 21:39:45 +01:00
PJB3005
6e0c9f2637
Add BIT_64 define to types.h
...
I'll be using this
2026-02-24 21:39:11 +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
Lurs
26b3ffb303
Fix JSUOutputStream uintptr_t operator conflict on MSVC x86.
...
uintptr_t == u32 == unsigned int on 32-bit MSVC since u32 was changed from unsigned long to unsigned int for TARGET_PC. Guard the uintptr_t overload to x64 only where uintptr_t != u32.
2026-02-24 20:42:46 +01:00
PJB3005
cf5eca0910
Fix JKRArchive on 64-bit
...
They store the data address in the same struct that's directly loaded from archive files. This means it's impossible to expand to 64-bit directly, and instead we need to allocate the data pointers in a separate array.
2026-02-24 19:55:15 +01:00
PJB3005
08ab1e1106
Fix wrong forward declares (struct/class)
...
Requires removing the now-matching symbols from jsystem_stubs.cpp
2026-02-24 16:58:12 +01:00
PJB3005
99e0ca4a46
Use BE(T) for JKRArchive
2026-02-24 16:55:08 +01:00
PJB3005
78be0f28fa
Revert accidental changes to JKRArchive.h
...
(not mine)
2026-02-24 16:51:27 +01:00
PJB3005
2900265ceb
Use BE(T) for JUTPalette
2026-02-24 16:35:45 +01:00
PJB3005
4c98a536af
Use BE(T) for JUTFont
2026-02-24 16:29:13 +01:00
PJB3005
6e385ad102
Add template-based BE(T) endianness conversion helper types
...
Doesn't require modification at the call sites thanks to the implicit conversion operator.
2026-02-24 16:29:00 +01:00
PJB3005
436a500c65
Compile fixes for previous commit
...
oops
2026-02-24 15:29:08 +01:00
PJB3005
4fb2389b43
Fix primitive int types on 64-bit non-Windows targets
...
`long` is variable-sized on non-Windows targets, so don't use it.
Added some static_asserts to confirm this is the case.
2026-02-24 15:23:52 +01:00
PJB3005
defe78c4a2
Fix compile with Dusk's mtx lib
...
Move Mtx33 and similar types to JMath
Rename mtx.h in decomp to _mtx.h so Aurora's header is used instead.
2026-02-24 13:15:21 +01:00
Lurs
1513f896ed
Added a bunch of Diag functions to diagnose the black screen issue (was a bug in GXGeometry.h). Resumed to old ClearEfb function, no pink screen anymore.
...
Updated aurora with local changes for TP
2026-02-23 14:33:29 +01:00
Lurs
22a86deb76
First pink screen!
2026-02-21 22:15:39 +01:00
Lurs
a41c3d59b4
first try to draw first logo
2026-02-20 21:13:50 +01:00
Lurs
8020eb64ba
OS threading, DVD I/O, Endianness fixes, ARAM emulation, GX vertex fix
...
Major changes:
- Implement Big-Endian to Little-Endian byte-swapping for all RARC archive
types (JKRCompArchive, JKRMemArchive, JKRDvdArchive, JKRAramArchive)
- Implement DVD file I/O via DvdEmu (DVDOpen, DVDFastOpen, DVDReadPrio,
DVDReadAsyncPrio, DVDConvertPathToEntrynum)
- Fix YAZ0 decompression endianness in JKRDvdRipper, JKRDecomp, JKRAram,
and JKRDvdAramRipper (use JKRDecompExpandSize instead of direct header read)
- Emulate ARAM with 16MB malloc buffer and synchronous memcpy in ARQPostRequest
instead of hardware DMA transfers that hang on PC
- Add real OS threading implementation (OSContext, OSThread, OSMutex) using
native Windows threads with side-table pattern for GC struct compatibility
- Fix font endianness for JUTResFont and JUTCacheFont
- Redirect GXVert.h to Aurora's PC implementation to prevent FIFO writes to
the GameCube hardware address 0xCC008000
- Add Z-buffer texture format support (GX_TF_Z24X8, GX_TF_Z16, GX_TF_Z8)
in Aurora's texture converter
2026-02-19 10:35:42 +01:00
Lurs
43847d81b1
first start with aurora after linking on MSVC
2026-02-17 22:28:42 +01:00
Lurs
f6cba82a91
Merge origin/wip/linkfix2 into msvc-linkfix-dev (local dev branch)
2026-02-15 20:36:46 +01:00
Jeffrey Crowell
cc2b506476
now it links (except for no main!)
2026-02-14 15:55:43 -08:00
Lurs
d069062c5c
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
Lurs
143c973b49
Merge branch 'wip/linkfix2' into wip/linkfix
2026-02-11 07:20:44 +01:00
Jeffrey Crowell
6b212d913d
Fix linker errors.
...
Stubbing out all OS* functions to stubs.cpp, these will likely have to
be replaced with the operating system's primitives for
locking/heaps/threads/etc.
Moved some generic globals into globals.cpp, not sure where they're
actually to be used.
Stub DSP functions
Stub JSUMemoryOutputStream, JORServer, Z2Audio
mDoExt stubs
add memcpy
add some more stubs, add extras c++ mangled functions
add extras.cpp
AR/AQ stubbing
stub DVD
stub CARD
more stubs, more extras
add missing mtx functions to dusk file
finish mtx
stub GX
KPAD and LC, also do pragma marks for better visualization
finish mtx, add a few more stubs
gf/wpad/vi
translate some matrix math from ppc to C
jorserver/debugpad/fap/dmsgobject
add m_Do_ext functions from debug block to separate file
make small janges to JSystem, does this need upstreaming
reorg DVD stubs
reorganize stubs by mark
2026-02-07 15:25:09 -08:00
roeming
ef1e1e954c
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
Jeffrey Crowell
fcb2ab00e1
Fix linker errors.
...
Stubbing out all OS* functions to stubs.cpp, these will likely have to
be replaced with the operating system's primitives for
locking/heaps/threads/etc.
Moved some generic globals into globals.cpp, not sure where they're
actually to be used.
Stub DSP functions
Stub JSUMemoryOutputStream, JORServer, Z2Audio
mDoExt stubs
add memcpy
add some more stubs, add extras c++ mangled functions
add extras.cpp
AR/AQ stubbing
stub DVD
stub CARD
more stubs, more extras
add missing mtx functions to dusk file
finish mtx
stub GX
KPAD and LC, also do pragma marks for better visualization
finish mtx, add a few more stubs
gf/wpad/vi
translate some matrix math from ppc to C
jorserver/debugpad/fap/dmsgobject
add m_Do_ext functions from debug block to separate file
make small janges to JSystem, does this need upstreaming
reorg DVD stubs
reorganize stubs by mark
2026-02-01 15:36:56 -08:00
kipcode66
d4cd40ee41
Adding stubs file to compilation list
2026-01-26 20:35:21 -05:00
kipcode66
38c854bb01
Merge remote-tracking branch 'decomp/main' into compile
2026-01-26 18:11:18 -05:00
kipcode66
d787afaee0
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
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
kipcode66
63f8079212
Merge commit '86fddd48d54f5b8fb126cf71f130a4733c8f0ded' into compile
2026-01-23 17:04:18 -05:00
Jcw87
86fddd48d5
d_stage debug ( #3063 )
2026-01-22 21:11:28 -08:00
Jcw87
623ba48542
JKernel wii ( #3059 )
2026-01-20 16:35:11 -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
roeming
d45b10d0fd
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