summaryrefslogtreecommitdiff
path: root/include/global.h
AgeCommit message (Collapse)Author
2026-03-26JAHostIO and friends (#3131)Roman Sandu
2026-03-17Fix a bunch of compiler warnings and document several more bugs (#3130)Max Roncace
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-01-28DBG npc_henna and mg_fshop equiv (#3069)YunataSavior
* DBG npc_henna almost, some mg_fshop * Fix weed_control * demo_camera_shop OK * misc dbg symbol/etc fixes * Fix e_ym/npc_henna dbg bss splits Thanks @LagoLunatic * dbg mg_fshop equiv * PR comments * DEBUG_CHECK_PAD_TRIG_Z mg_fshop
2026-01-12obj_pumpkin dbg equiv (#3036)YunataSavior
2026-01-11e_rd, npc_ks dbg work (#3029)YunataSavior
* Partial e_rd, npc_ks dbg work * More e_rd matching * e_rd fixes and dbg ctor matched * obj_ita dbg equiv * e_st dbg almost equiv * Some obj_ladder dbg work * dbg e_rd PR comments * Further e_rd dbg clangd fixes
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
2025-12-24msl_c mostly matching for wii/shield (#2994)TakaRikka
2025-12-23Clean up code, remove fakematches, add UNUSED, enable warnings (#2992)LagoLunatic
* 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-23MSL_C header cleanup (#2988)TakaRikka
* msl_c header cleanup * math header cleanup * fix rest of shieldD configs * cleanup cflag configs a bit * fix shield build
2025-12-21next round of standard compiler fixes (#2969)kipcode66
* next round of standard compiler fixes * Fix weak function order issue * fix missmatch with ShieldD version
2025-12-16copy homebuttonLib from oot-vc (#2960)TakaRikka
* initial copy of hbm from sdk_2009-12-11 * some more nw4hbm cleanup * nw4hbm db mostly done * nw4hbm snd copied from oot-vc * nw4hbm ut copied * nw4hbm lyt copied * nw4hbm copied, mostly matching usa 1.0 * setup nw4hbm debug define * fix HBMDataInfo struct * add rvl sdk card lib
2025-12-16d_a_movie_player OK (#2958)LagoLunatic
* Match THPAudioDecode * Match daMP_MixAudio * Fix weak func order * Fix global.h
2025-12-13most of shieldD revo sdk matching (#2951)TakaRikka
* 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-08Improving standard compiler compatibility (#2926)kipcode66
* 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-06Various debug conditional compilation cleanup (#2915)Max Roncace
* Global: Define DEBUG as 0 if not already defined * Clean up DEBUG-guarded code
2025-11-30project cleanup (#2895)TakaRikka
* some wii OS fixes * remove old dol2asm comments * remove dol2asm.h * remove function address comments * normalize ATTRIBUTE_ALIGN usage * DECL_WEAK macro * fix gcc attribute weak macro * wrap more mwcc specific things in ifdefs * fixes * fix revo sdk version flags * fixes
2025-11-23Fix more nonmatchings (#2850)LagoLunatic
* Fix GetPolyIndex and GetBgIndex, fixing a couple regallocs * Match daNpcCd2_c::checkFearSituation and daNpcCd2_c::getAnmP * Match daAlink_c::jointControll * Clean up float class checks * Move float constants to global.h
2025-11-21Link d_name for GCN JPN (#2843)Max Roncace
2025-11-19Misc fixes (#2830)LagoLunatic
* Replace DANPCF_C_HACK with a better fakematch * d_a_obj_item OK * Fix ninja diff * Misc debug/nonmatching fixes * Fix ninja diff for PAL * Fix bad PAL split
2025-09-28Fix JUT_ASSERT and several other macros (#2711)LagoLunatic
* Fix JUT_ASSERT to be a nested define * Switch names that appear in asserts to be constants instead of defines * Replace `0` in asserts with `NULL` or `FALSE` * Fix fpclassify * Fix ARRAY_SIZE * Use G_CM3D_F_INF * More fixes for fpclassify * Remove FLOAT_LABEL * Remove incorrect FLAG_ON macro * Remove UNK_BSS macro * Silence clangd unused header warning for PCH
2025-09-26Misc matches and fixes (#2703)LagoLunatic
* Match mDoExt_morf_c::getPlayMode * Misc cleanup * Fix actor cull spheres * Match daPy_py_c::getLastSceneSwordAtUpTime, JUTGamePad::testTrigger * Fix improper demangling of dBgS_SphChk::SetCallback * Fix d_camera rangef weak func order * Match more alink_wolf funcs
2025-09-04some J3D/misc cleanup (#2628)TakaRikka
* some j3d cleanup * begin using uintptr_t * j3dgraphbase cleanup * j3dgraphanimator cleanup
2025-08-24Add a precompiled header for RELs (#2597)Max Roncace
2025-06-27add wii usa rev0 support (#2505)TakaRikka
* wii usa rev0 dol building ok * wii dol cleanup * some wii tests * most rels building
2025-04-25d_a_bg mostly matching. update version symbols / add platform macros (#2410)TakaRikka
* d_a_bg mostly matching * update version symbols from new dtk * add version platform macros * small fix
2025-02-10copy dolsdk2004 to tp / b_bh + e_mb done (#2299)TakaRikka
* move dolsdk2004 over * cleanup some temp work * finish and cleanup gf * b_bh done * d_a_e_mb done
2025-01-26Fix spurious differences when using `ninja diff` (#2294)LagoLunatic
* Fix spurious differences when using ninja diff * Fix some clangd errors/warnings
2025-01-16wip debug / pal building, b_gm mostly done (#2285)TakaRikka
* b_gm mostly done * wip debug / pal building * fix configure.py * fix some debug macros / flags
2025-01-09d_a_horse mostly done (#2284)TakaRikka
* checkpoint * d_a_horse mostly done * some horse doc
2024-10-25d_a_alink work / lv4digsand done / e_s1 matched (#2224)TakaRikka
* d_a_alink work / d_a_obj_lv4digsand done * d_a_e_s1 matched, not linked * d_a_e_s1 documentation
2024-10-12Add clangd support for VS Code (#2207)Luke Street
* Add clangd support for VS Code * Revert accidental change
2024-10-10switch to dtk setup (#2203)TakaRikka
* switch to dtk setup * some cleanup / fixes * cleanup d_a_alink literals * Restore doxygen, update CI & README.md (#1) * Fix build image ref (#2) --------- Co-authored-by: Luke Street <luke@street.dev>
2024-03-22work / documentation on d_a_b_ds (#2104)TakaRikka
* document / cleanup a good chunk of d_a_b_ds * fix d_a_b_ds nonmatching file
2024-03-07d_a_shop_item, d_a_b_go, d_a_b_gos OK (#2085)TakaRikka
* d_a_shop_item OK * d_a_b_go OK * d_a_b_gos OK * remove asm * some work on d_a_b_oh / d_a_b_zant_sima * d_a_startAndGoal done
2023-09-15JKRHeap (#1927)Jcw87
* JKRHeap * d_a_link
2022-11-11clean up dolphin files / work on some rels (#212)TakaRikka
* d_a_alldie / d_a_tboxSw / d_a_tag_gstart / d_a_tag_hstop * dolphin OS work / cleanup * dolphin GX work / cleanup * finish changing dolphin files to C * more files into C * match rest of MSL_C math functions * more dolphin files converted to C * remove asm * d_bg_w work * remove asm * d_a_alink work / kytag14
2021-11-09JUTException (#154)Jonathan Wase
* JUTException inherit JKRThread * OK __ct__12JUTExceptionFP14JUTDirectPrint * OK create__12JUTExceptionFP14JUTDirectPrint * OK setFPException__12JUTExceptionFUl * OK showFloatSub__12JUTExceptionFif * OK showFloat__12JUTExceptionFP9OSContext * OK searchPartialModule__12JUTExceptionFUlPUlPUlPUlPUl * OK search_name_part__FPUcPUci * OK showStack__12JUTExceptionFP9OSContext * OK showMainInfo__12JUTExceptionFUsP9OSContextUlUl * OK showGPR__12JUTExceptionFP9OSContext * OK __sinit_JUTException_cpp * OK showMapInfo_subroutine__12JUTExceptionFUlb * OK showGPRMap__12JUTExceptionFP9OSContext * OK showSRR0Map__12JUTExceptionFP9OSContext * OK printDebugInfo__12JUTExceptionFQ212JUTException9EInfoPageUsP9OSContextUlUl * OK isEnablePad__12JUTExceptionCFv * OK readPad__12JUTExceptionFPUlPUl * NONMATCHING printContext__12JUTExceptionFUsP9OSContextUlUl * OK printContext__12JUTExceptionFUsP9OSContextUlUl * OK __dt__12JUTExceptionFv * OK waitTime__12JUTExceptionFl * OK createFB__12JUTExceptionFv * OK setPreUserCallback__12JUTExceptionFPFUsP9OSContextUlUl_v * OK __ct__13JUTExternalFBFP16_GXRenderModeObj8_GXGammaPvUl * OK createConsole__12JUTExceptionFPvUl * NONMATCHING queryMapAddress_single__12JUTExceptionFPcUllPUlPUlPcUlbb * OK queryMapAddress__12JUTExceptionFPcUllPUlPUlPcUlbb * OK appendMapFile__12JUTExceptionFPCc * clean up * OK panic_f__12JUTExceptionFPCciPCce * OK panic_f_va__12JUTExceptionFPCciPCcP16__va_list_struct * OK errorHandler__12JUTExceptionFUsP9OSContextUlUl * format * format * fixed requested changes * merged with master and removed *.s files Co-authored-by: Julgodis <>
2021-09-24JKRThread & JKRThreadSwitch (#147)Jonathan Wase
* OK __ct__15JKRThreadSwitchFP7JKRHeap * OK createManager__15JKRThreadSwitchFP7JKRHeap * OK enter__15JKRThreadSwitchFP9JKRThreadi * OK callback__15JKRThreadSwitchFP8OSThreadP8OSThread * OK draw__15JKRThreadSwitchFP14JKRThreadName_P10JUTConsole * OK draw__15JKRThreadSwitchFP14JKRThreadName_ * OK __dt__15JKRThreadSwitchFv * JKRThread.cpp cleanup * Fixed tp.py and libelf, changed JUT_ASSERT macro and removed unused .s files. * Changed JKRThread access specifiers Co-authored-by: Julgodis <>
2021-06-12c_cc_d (#132)lepelog
* gnd check * more c_bg_s * start adding static asserts for size * Add more size checks * c_cc * c_cc progress * failed implementing cCcD_*Attr * progress * format * try destructor * data * remove unused asm * remove inlineCross * remove functions that didn't belong there * naming fix * match cCcD_SphAttr::CalcAabBox * cCcD_Stts::ClrTg * c_cc_s and mass fixes
2021-04-08c_xyz OKlepelog
2021-03-28dol2asm OKJulgodis
2021-02-20delete variables.hPheenoh
2021-02-19Decompile some SComponent data and some MSL_C.PPCEABI.bare.H headers (#115)lepelog
* data for c_angle * data c_sxyz * partially migrated c_xyz data * c_xyz data * c_xyz data decomp * c_math data * c_math data * c_lib data, some cleanup * rename some unnamed functions and create header for them * header for string functions * format and fix fabsf * cleanup * remove more unneded function prototypes * move fpclassify to math.h
2021-02-12f_op_actor_mng split & started decomp (#112)lepelog
* fop-actor-mng * rodata * more actor mng progress * actor mng progress * format * cleanup * fix Mtx function signatures * PR suggestion Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-02-07debugDisplay and Debug_console attempPheenoh
2021-01-31Merge branch 'functions'Pheenoh
2021-01-31remove functions.hPheenoh
2021-01-26some c_m3d (#97)lepelog
* decompiled some bgs_chk funcs * c_m3d_g * c_math progress * remove duplicate SComponent headers * move some variables and decompile a function * some inlined from debug * cM3d_2PlaneLinePosNearPos * fix fabsf and decompile cM3d_CrawVec * format * cleanup * more cleanup Co-authored-by: Pheenoh <pheenoh@gmail.com>