summaryrefslogtreecommitdiff
path: root/include/JSystem
AgeCommit message (Collapse)Author
2026-03-01Reorganize library code into `libs/` (#3119)Luke Street
* Reorganize files into libs/{dolphin,JSystem,PowerPC_EABI_Support,revolution,TRK_MINNOW_DOLPHIN} * Update configure.py and project.py for new libs structure * Refactor `#include <dolphin/x.h>` -> `<x.h>` * Remove `__REVOLUTION_SDK__` forwards from dolphin * Fix dolphin/ references in revolution * Wrap `#include <dolphin.h>` in `!__REVOLUTION_SDK__` * Always build TRK against dolphin headers * Resolve revolution SDK header resolution issues
2026-03-01d_s_logo / d_s_play debug work, d_a_kago cleanup, misc cleanup (#3116)TakaRikka
* d_a_kago cleanup * d_s_logo wii/shield work * d_s_logo / d_s_play debug work * fix missing profile class sizeof's * fix phase->id values * build fixes * fix dCamera_c and camera profile
2026-02-28More GCC compatibility/warning fixes (#3118)Luke Street
* Wrap >4-char literals in a MULTI_CHAR macro Modern compilers do not support CW's non-standard behavior with >4 char literals. We can, however, use a constexpr function to compute the u64 values directly. This leaves <=4 char literals unchanged. * Replace non-pointer usages of NULL with 0 * Define NULL to nullptr on C++11 and above * Fix more -Wpointer-arith and -Woverflow warnings * Replace u32/s32 with uintptr_t/intptr_t where appropriate * JSUOutputStream: Overload all standard int types
2026-02-28Another round of GCC fixes (#3115)Luke Street
* Fix remaining <string> -> <cstring> for GCC compilation (#3114 follow-up) MWerks' <string> header transitively includes C string functions (memcpy, strlen, strcmp, etc.), but GCC/Clang's <string> is the C++ std::string header. These files all use C string functions and should include <cstring> instead. * Use std::isnan instead of isnan for GCC compilation GCC's <cmath> places isnan in the std namespace. Using the unqualified isnan fails to compile with GCC/Clang. * Fix cCcD_Src types: s32 -> u32 for bitmask fields cCcD_SrcObjCommonBase::mSPrm, cCcD_SrcObjTg::mType, and cCcD_SrcObjAt::mType are used as bitmasks (SetType/SetSPrm take u32, MskType/MskSPrm use u32, values like 0xFFFFFFFF are common in aggregate inits). Change from s32 to u32 to match usage. Also fix AT_TYPE_WOLF_ATTACK/AT_TYPE_UNK to use unsigned literals, and remove now-unnecessary (s32) casts on hex literals in collision source data. * Mark dummy() functions as static to avoid multiple definition errors These decomp artifact functions have the same name and signature across TUs, causing linker errors when building as a single binary.
2026-02-28Some GCC compilation fixes (#3114)Luke Street
* 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-25Fix broken J3DTexture assert (#3111)Pieter-Jan Briers
2026-02-24Fix MORE wrong forward declares (struct/class) (#3110)Pieter-Jan Briers
2026-02-23Fix JASGlobalInstance instance definitions (#3108)Pieter-Jan Briers
There are a few places where JASGlobalInstance have their sInstance storage implemented via template specialization. The problem is that these have no initializer, which means that they are not proper definitions (only declarations) in standards-compliant C++. MSVC and (evidently) MWCC accept this, but modern Clang and GCC do not and won't emit symbols. I've added a macro that properly initializes these outside MWCC. Also, JASGlobalInstance<JAUSectionHeap> was only being declared in each actor file that used it, which sounds incorrect? Not sure about this but I added it to m_Do_main too, again behind MWERKS check.
2026-02-23Fix incorrect forward declare keywords (#3107)Pieter-Jan Briers
Mixups of class/struct keyword in forward declares. Doesn't seem to matter on MWCC, but causes name mangling mismatching on modern platforms.
2026-02-20d_resorce debug (#3105)Jcw87
2026-02-20Implement Z2AudioCS (#3103)Max Roncace
2026-02-13d_demo debug (#3098)Jcw87
2026-02-13d_bg_parts debug (#3097)Jcw87
2026-02-11d_jnt_col debug (#3088)Jcw87
2026-02-07JParticle debug (#3090)Jcw87
2026-01-29Add missing TUs for Wii/Shield retail (+ filename cleanup) (#3072)Max Roncace
* Fix GCN_mem_alloc.c filename capitalization * Fix up TRK file names in Wii/Shield splits * Add string_TRK * Add cc_gdev * Add Shield-only wstring TUs * Implement NdevExi2A * Add missing JSystem TUs (more are still missing from ShieldD) * Clean up includes
2026-01-28JUtility matching for debug (#3074)roeming
* Jut cleanup work * data section fix * match the last of JUtility * added more helpful comment * Add missed null terminator * do while -> while loop * replace more do whiles * Fix wii regression * Add suggestions * fix null check --------- Co-authored-by: roeming <roeming@users.noreply.github.com>
2026-01-27Std7 (#3068)kipcode66
* fix standard compiler error for d_a_tag_TWgate * fix standard compiler errors for J3DJoint * fix regression in ShieldD
2026-01-25Work on d_jdpreviwer (#3067)hatal175
2026-01-24general cleanup, d_menu_quit / d_a_obj_testcube mostly done, ↵TakaRikka
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-20JKernel wii (#3059)Jcw87
2026-01-19Use default parameter values in JORMContext calls where appropriate (#3057)Max Roncace
2026-01-18m_Do debug (#3052)Jcw87
* m_Do debug * m_Do wii data
2026-01-13fix va_list (#3042)kipcode66
2026-01-13JAWWindow (#3039)Jcw87
2026-01-13J3D debug (#3037)Jcw87
* J3DGraphBase debug * J3DGraphAnimator debug * J3DGraphLoader debug
2026-01-13standard compiler compatibility changes (#3040)kipcode66
* 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-11Fix errors when building with -ipa program (#3035)Max Roncace
2026-01-11Work on c_damagereaction and f_ap_game debug (#3033)hatal175
2026-01-11J2DGraph debug (#3028)Jcw87
* J2DGraph debug * J2DGraph debug
2026-01-10std-vector debug (#3027)Jcw87
2026-01-10first round of constants cleanup (#3021)roeming
* 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-08linklist debug (#3025)Jcw87
2026-01-07JMath debug (#3023)Jcw87
2026-01-07JFWDisplay debug (#3022)Jcw87
2026-01-06f_pc mostly linked for Wii/Shield (#3015)Max Roncace
2026-01-06Misc debug include/class order improvements + link remaining Z2AudioLib TUs ↵Max Roncace
(#3014) * Improve dolzel.pch ordering * Improve JSystem include order * Various class ordering fixes * Link remaining Z2AudioLib TUs * Fix some symbols in Shield and weak functions in ShieldD
2026-01-05JUtility debug (#3020)Jcw87
2026-01-05fix functions not returning values (#3018)Jcw87
2026-01-05Z2AudioLib debug (#3016)Jcw87
2026-01-05Add guards around std library headers (#3013)kipcode66
* 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-05m_Do debug (#3017)Jcw87
* m_Do debug * d_particle fix
2026-01-04JKernel debug (#3012)Jcw87
2026-01-04m_Do_ext retail linked + debug improvements (#3009)Max Roncace
2026-01-02d_particle debug improvements (#3010)Max Roncace
2025-12-30f_op work (#3008)Niklas Bauer
* 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-27jgadget debug improvements (#3000)TakaRikka
2025-12-27JAudio2 debug (#3006)Jcw87
2025-12-26Fix optimization flag for Shield (#3004)LagoLunatic
* Fix optimization flag for Shield * Minor debug work * Fix NULL asserts
2025-12-26JAudio2 debug (#2996)Jcw87