Commit Graph

285 Commits

Author SHA1 Message Date
PJB3005 038ef4216f 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
Jeffrey Crowell 9af9240253 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
TakaRikka ae147e97f7 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 f2dacf2a75 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 02a6746c68 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 68fabb248a 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 513b86f8ed Translate memory allocation failure error 2026-02-24 21:04:48 +01:00
PJB3005 e4104cadad Make OSReport_Error less hideous to look at 2026-02-24 21:03:05 +01:00
Lurs 2b78bb3375 Changed loading for already static loaded .rel files. Added gamepad init 2026-02-24 20:42:45 +01:00
PJB3005 e5cfe0e6b4 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 818b190bb5 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 04fdee9d5a 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
Lurs f710f30702 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 d66e35eefc tests with edited aurora 2026-02-22 07:06:54 +01:00
Lurs 8599684fae First pink screen! 2026-02-21 22:15:39 +01:00
Lurs 97e7a8b145 first try to draw first logo 2026-02-20 21:13:50 +01:00
Lurs c86a2208d2 first start with aurora after linking on MSVC 2026-02-17 22:28:42 +01:00
Lurs 89ed35ad76 Merge origin/wip/linkfix2 into msvc-linkfix-dev (local dev branch) 2026-02-15 20:36:46 +01:00
Jeffrey Crowell 833db377af call game_main 2026-02-14 16:04:12 -08:00
Jeffrey Crowell 5d359236e1 change ifdef instead of copying function blocks 2026-02-14 00:03:10 -08:00
Lurs 292724920c Merge branch 'wip/linkfix2' into wip/linkfix 2026-02-11 07:20:44 +01:00
Jeffrey Crowell 5d6aa01e6e 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 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
kipcode66 d82453292a Merge remote-tracking branch 'decomp/main' into compile 2026-01-26 18:11:18 -05: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
kipcode66 02ba53f72e Merge commit '46da46b152472c668875d67c336f59ded62d3ecc' into compile 2026-01-23 17:04:18 -05:00
Max Roncace 2ac52379df Use default parameter values in JORMContext calls where appropriate (#3057) 2026-01-19 18:18:30 -08:00
Max Roncace 21af98f856 Fix misspelled dSv_config_language enum values (#3056) 2026-01-19 18:15:39 -08:00
Jcw87 0440061c10 m_Do debug (#3052)
* m_Do debug

* m_Do wii data
2026-01-18 17:59:57 -08:00
kipcode66 dd67314902 Merge branch 'main' of https://github.com/zeldaret/tp into compile 2026-01-13 21:53:54 -05:00
kipcode66 9b7e55965f standard compiler compatibility changes (#3040)
* move math to cmath

* replace stdarg to cstdarg

* change stdint to stdint.h

* minor fixes

* change stdio to cstdio

* change stdlib to stdlib

* renamed ctype to cctype

* fix missing argument for UNSET_FLAG
2026-01-13 00:48:25 +02:00
roeming 37ec227b3f first round of constants cleanup (#3021)
* first round of constants cleanup

* move m_PI_D definition

* remove compatibility comment

* add future version of angle subtracting with/without cast

* whitespace change to run builds again
2026-01-10 23:38:04 +02:00
TakaRikka eb089801c6 Merge https://www.github.com/zeldaret/tp 2026-01-05 13:46:27 -08:00
kipcode66 ea53712c30 Add guards around std library headers (#3013)
* Last fix for standard compiler error

* adding define guards around headers

* rename cmath.h and climits.h to cmath and climits respectively

* renaming cstdarg.h to cstdarg

* renaming cstdlib.h to cstdlib

* renaming cstring.h to cstring

* renaming cstdio.h to cstdio

* renaming cmath locale ctype

* renaming stdarg string and va_list

* renaming cstddef

* renaming stdio stddef stdlib

* renaming algorithm, functional, iterator, memory, and utility

* renaming bitset, cstdint, limits, and stdint

* renaming new and type_traits

* update quote includes for standard library headers to angle bracket includes
2026-01-05 03:50:45 -08:00
Jcw87 8561613852 m_Do debug (#3017)
* m_Do debug

* d_particle fix
2026-01-05 02:19:14 -08:00
Max Roncace 124eb12f13 m_Do_ext retail linked + debug improvements (#3009) 2026-01-04 17:20:35 -08:00
Niklas Bauer b3803dfa74 f_op work (#3008)
* f_op debug 1

* f_op debug 2

* f_op debug 3

* f_op debug 4

* f_op debug 5

* f_op_debug fix build

* f_op linking

* remove goto in fopac_create

* fix regressions

* fix regressions

* pr comments

* f_op debug 6

* f_op debug 7

* f_op debug 8

* f_op debug 9

* f_op debug 10

* f_op work, linking, symbols, heap

* regressions 1

* regressions 2

* pr comments
2025-12-30 14:22:38 +02:00
LagoLunatic d63835d5c6 Fix optimization flag for Shield (#3004)
* Fix optimization flag for Shield

* Minor debug work

* Fix NULL asserts
2025-12-26 16:20:21 -08:00
Niklas Bauer df0ffcd87c f_op debug work (#2991)
* f_op debug 1

* f_op debug 2

* f_op debug 3

* f_op debug 4

* f_op debug 5

* f_op_debug fix build

* f_op linking

* remove goto in fopac_create

* fix regressions

* fix regressions

* pr comments
2025-12-26 13:17:51 -08:00
LagoLunatic e8c70fb18f Clean up code, remove fakematches, add UNUSED, enable warnings (#2992)
* Remove NDEBUG_DEFINED fakematch, clean up getName temps

* Fix ifdef

* Fix bad JSystem pch ifdef breaking decomp.me

* Remove Acch Chk fakematches

* Private Acch fields

* Fix some clangd errors in headers

* Add UNUSED macro for matching debug parameters

* Enable clangd unused-parameter warning

* Remove extern from initializers

Probably added by dol2asm?

* Fix process profile definitions

* Remove leftover dol2asm address comments

* Remove some unnecessary double casts

* Enable some more clangd warnings

* Fix missing usages of fopAcM_ct

* Fix wrong enum usage

* Fix more fakematches
2025-12-23 15:53:10 -08:00
TakaRikka 46d53ab65f MSL_C header cleanup (#2988)
* msl_c header cleanup

* math header cleanup

* fix rest of shieldD configs

* cleanup cflag configs a bit

* fix shield build
2025-12-23 10:20:32 -08:00
Jcw87 758f83dda5 JAHostIO, JAWExtSystem debug (#2985) 2025-12-22 12:27:31 -08:00
Pheenoh a2d6ead878 Merge remote-tracking branch 'upstream/main' 2025-12-21 15:41:05 -07:00
TakaRikka 7476c5f8fb m_Do_MemCard/d_file_select wii/debug work (#2976)
* m_Do_MemCard/d_file_select wii/debug work

* fix builds
2025-12-20 18:30:04 -08:00
Jcw87 86729e6597 m_Do_main debug (#2965) 2025-12-19 21:22:03 +02:00
TakaRikka 1901b7b78f most of shieldD revo sdk matching (#2951)
* shieldD revo wpad done

* shieldD revo hio2 done

* shieldD revo aralt, ppcarch, gf done

* shieldD revo exi done

* shieldD revo SI done

* shieldD revo vi done

* shieldD revo mtx done

* shieldD revo GX mostly done

* shieldD revo ai/dsp done

* shieldD revo sc mostly done

* shieldD revo esp/euart/wenc mostly done

* build fixes
2025-12-13 18:21:32 +02:00
LagoLunatic e48c55555c J3D debug work (#2949)
* J3D debug work

* Clean up JSystem GXColor ctors, remove a couple fakematches

* Update symbols.txt

* Fix res include syntax

* Remove fakematch that isn't necessary anymore

* Fix some Shield regressions
2025-12-12 21:04:03 -08:00
Max Roncace 4fa301a6da Clean up conditional compilation a bit (#2943) 2025-12-11 15:34:16 -08:00
kipcode66 1adace595e Improving standard compiler compatibility (#2926)
* Adding explicit dolphin/ prefix & fix characters

* Rename ShiftJIS to SJIS

* Separate JASSeqReader read methods implementation between compilers.

* Fix pointer.h

* fix d_item_data typo

* fix gcn matching issue
2025-12-08 20:31:22 -08:00
kipcode66 aeb51cade5 Improving compatibility with standard cpp compiler (#2920)
* Improving compatibility with standard cpp compiler

* Add __REGISTER macro for non mwcc compatibility

* Fix for PR comments

* fix missing define for revolution

* Simplifying cSAngle conversion
2025-12-06 21:08:05 -08:00