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
TakaRikka
2473e04818
Merge pull request #11 from TakaRikka/26-02-24-fix-assert-lines
...
Use real line numbers for asserts
2026-02-24 14:16:47 -08:00
PJB3005
2ac86ddc4a
Use real line numbers for asserts
...
Redefine the macros to use __LINE__
2026-02-24 23:15:01 +01:00
TakaRikka
0b24a2bcd3
Merge pull request #10 from TakaRikka/26-02-24-error-fix
...
Error handling fixes
2026-02-24 14:04:10 -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
TakaRikka
d01a596804
Merge pull request #9 from TakaRikka/msvc-linkfix-dev
...
Merged wip/linkfix branches and show first logos on MSVC
2026-02-24 14:01:27 -08: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
6e0c9f2637
Add BIT_64 define to types.h
...
I'll be using this
2026-02-24 21:39:11 +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
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
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
78be0f28fa
Revert accidental changes to JKRArchive.h
...
(not mine)
2026-02-24 16:51:27 +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
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
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
8257cab1fe
Add CMake option to re-enable warnings in game build
2026-02-24 15:40:26 +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
cce53f356e
Move source file listing to separate CMake file
...
Huge
2026-02-24 13:14:12 +01:00
PJB3005
811e50b452
Remove some GX stubs now implemented by Aurora
2026-02-24 13:13:46 +01:00
PJB3005
a616aa954d
Move Aurora include before setting compile options
...
Fixes our compile options breaking Aurora build
2026-02-24 13:13:32 +01:00
PJB3005
aaf75a2ac9
Remove manual C++20 compile option from MSVC
...
Not necessary, we already set CMAKE_CXX_STANDARD
2026-02-24 13:11:35 +01:00
Lurs
0faa2568ad
Bringing aurora to remote origin again
2026-02-23 21:47:34 +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
c76ba99ef2
Update aurora
2026-02-22 07:18:58 +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