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
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
Lurs
ae76a2e614
Changed loading for already static loaded .rel files. Added gamepad init
2026-02-24 20:42:45 +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
4e0a8292e9
Fix JKRExpHeap on 64 bit
2026-02-24 18:16:45 +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
1061a79070
I apparently missed JUTCacheFont
2026-02-24 16:36:16 +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
38b02dbc41
Replace some hardcoded 4 -> alignof(max_align_t)
...
Hope this fixes the allocator issues
2026-02-24 16:04:53 +01:00
PJB3005
c925d2483a
Fix JKRSolidHeap on 64-bit
2026-02-24 15:49:28 +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
a526eab880
Use calloc instead of malloc followed by memset
...
Avoids forcing pages to be allocated until actually needed.
2026-02-24 15:17:47 +01:00
PJB3005
df50d57ca9
Make heap init work on 64-bit
...
Larger pointer sizes means the normal heap limits don't work.
Expand them even when on 32-bit because we're already allocating 256 MB
of MEM1 anyways
2026-02-24 15:14:57 +01:00
PJB3005
ed6e31c88b
Make console UTF-8 & VT sequences work reliably on Windows
2026-02-24 14:54:53 +01:00
PJB3005
59119622f8
Fix mDoPrintf_vprintf_Interrupt on 64-bit
...
This is an ABI hazard so I'm just gonna call vprintf directly.
2026-02-24 14:08:15 +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
PJB3005
811e50b452
Remove some GX stubs now implemented by Aurora
2026-02-24 13:13:46 +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
472debc53a
stubbed unresolved symbols again after updating aurora
2026-02-22 07:31:22 +01:00
Lurs
d5c5bb8708
tests with edited aurora
2026-02-22 07:06:54 +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
3391680faf
call game_main
2026-02-14 16:04:12 -08:00
Jeffrey Crowell
cc2b506476
now it links (except for no main!)
2026-02-14 15:55:43 -08:00
Jeffrey Crowell
5bf60a807d
change ifdef instead of copying function blocks
2026-02-14 00:03:10 -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