summaryrefslogtreecommitdiff
path: root/src/d/actor/d_a_alink.cpp
AgeCommit message (Collapse)Author
2026-06-20Alink Documentation (#3159)Luzagar
* some player work * more work * better name * fix compilation
2026-03-17Fix a bunch of compiler warnings and document several more bugs (#3130)Max Roncace
2026-03-09Actor status consolidation & process profile definition editing (#3117)Huitzi
* Consolidate fopAcM_STATUS into fopAc_Status_e * Add _e suffix to fopAcStts enums * Prepare for profile enumeration * Correct typo in scene_process_profile_definition * Manually handle g_profile_Obj_DamCps (inline preprocessing) * Correct g_profile_TAG_LV5SOUP procname to enum * Create d_priority.h * Update process profile definitions * Moved inline comments to the left * Add missing fopAcStts enums * Add d_priority.h include in f_pc_leaf.h * Manually update d_a_obj_damCps profile * Replace fopAcStts enums replacing and anticipatory profile size correction * Changed profile size from literal to sizeof() in anticipation of PR #3116 * Provided putative names to staff-related status enums * Replaced appropriate literals with fopAcStts enums * Fix borked merge * Rename item number enums and move to d_item_data.h * Rename process profile name & draw priority enums * Move process profile name & draw priority enums to appropriate files * Moved fpcNm_ enums from d/d_procname.h to f_pc/f_pc_name.h * Moved fpcDwPi_ enums from d/d_priority.h to f_pc/f_pc_draw_priority.h * ACTUALLY (whoops) stage merge * Correct item mistranslation Co-authored-by: LagoLunatic <LagoLunatic@users.noreply.github.com> --------- Co-authored-by: LagoLunatic <LagoLunatic@users.noreply.github.com>
2026-03-06d_s_room / d_s_name / d_a_title debug work (#3123)TakaRikka
* d_s_room / d_s_name debug work * camera_class rtti fix * d_a_title debug / handle shield rel changes * fix shield build * fix regressions
2026-03-02JUTDataFileHeader (#3121)qwertyquerty
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-27d_a_alink debug improvements (#3112)Max Roncace
2026-02-20Big cast cleanup (#3076)roeming
* Big cast cleanup * fix for name conflict * rename header * rename cast macros * fix rename mistake --------- Co-authored-by: roeming <roeming@users.noreply.github.com>
2026-01-19d_a_tag_* TUs mostly matching for debug (#3054)Max Roncace
* d_a_tag_event debug almost matching * d_a_tag_msg debug almost matching * d_a_tag_attention almost matching * d_a_tag_chkpoint debug almost matching (weak func order) * d_a_tag_evt debug almost matching (extra weak fns) * d_a_tag_evtarea debug almost matching (weak func order) * d_a_tag_evtmsg debug almost matching (weak func order) * d_a_tag_mist debug almost matching (weak func order) * d_a_tag_howl debug almost matching (weak func order) * d_a_tag_lantern debug almost matching (weak func order) * d_a_tag_push debug almost matching (weak func order) * d_a_tag_telop debug almost matching (weak func order) * d_a_tag_CstaSw debug almost matching (weak func order) * d_a_tag_ajnot debug almost matching (weak func order) * d_a_tag_attack_item debug almost matching (weak func order) * d_a_tag_gstart debug almost matching (weak func order) * d_a_tag_hinit debug almost matching (debug weak func order) * d_a_tag_hjump debug almost matching (weak func order) * d_a_tag_hstop debug almost matching (weak func order) * d_a_tag_lv2prchk debug almost matching (weak func order) * d_a_tag_magne debug almost matching (weak func order) * d_a_tag_mhint debug almost matching (weak func order) * d_a_tag_mstop debug almost matching (weak func order) * d_a_tag_spring debug almost matching (weak func order) * d_a_tag_statue_evt debug almost matching (weak func order) * d_a_tag_arena debug almost matching (weak func order) * d_a_tag_Lv6Gate debug almost matching (weak func order) * d_a_tag_Lv7Gate debug almost matching (weak func order) * d_a_tag_Lv8Gate debug almost matching (.data + weak func order) * d_a_tag_TWgate debug almost matching (weak func order) * d_a_tag_lv6CstaSw debug almost matching (weak func order) * d_a_tag_assistance debug almost matching (weak func order) * d_a_tag_bottle_item debug almost matching (weak func order) * d_a_tag_chgrestart debug almost matching (weak func order) * d_a_tag_csw debug almost matching (weak func order) * d_a_tag_escape debug almost matching (weak func order) * d_a_tag_firewall debug almost matching (weak func order) * d_a_tag_gra debug almost matching (weak func order) * d_a_tag_guard debug almost matching (weak func order) * d_a_tag_instruction debug almost matching (weak func order) * d_a_tag_kago_fall debug almost matching (weak func order) * d_a_tag_lightball debug almost matching (weak func order) * d_a_tag_lv5soup debug almost matching (weak func order) * d_a_tag_mmsg debug almost matching (weak func order) * d_a_tag_mwait debug almost matching (weak func order) * d_a_tag_myna2 debug almost matching (weak func order) * d_a_tag_myna_light debug almost matching (weak func order) * d_a_tag_pachi debug almost matching (weak func order) * d_a_tag_poFire debug almost matching (weak func order) * d_a_tag_qs debug almost matching (small mismatch in search) * d_a_tag_ret_room debug almost matching (weak func order) * d_a_tag_river_back debug almost matching (weak func order) * d_a_tag_rmbit_sw debug almost matching (weak func order) * d_a_tag_schedule debug almost matching (weak func order) * d_a_tag_setBall debug almost matching (weak func order) * d_a_tag_setrestart debug almost matching (weak func order) * d_a_tag_shop_item debug almost matching (weak func order) * d_a_tag_smk_emt debug almost matching (weak func order) * d_a_tag_spinner debug almost matching (weak func order) * d_a_tag_sspath debug almost matching (weak func order) * d_a_tag_ss_drink debug almost matching (weak func order) * d_a_tag_stream debug almost matching (weak func order) * d_a_tag_theB_hint debug almost matching (weak func order) * d_a_tag_watchge debug almost matching (weak func order) * d_a_tag_waterfall debug almost matching (weak func order) * d_a_tag_allmato debug almost matching (weak func order) * d_a_tag_camera debug almost matching (extra weak fns) * d_a_tag_wara_howl debug almost matching (RTTI mismatch?) * d_a_tag_yami debug almost matching (weak func order) * Fix Shield regressions related to d_a_tag_* debug work
2026-01-17d_a_alink cleanup / debug work (#3045)TakaRikka
* start d_a_alink debug cleanup * d_a_alink_damage debug * d_a_alink_guard debug * d_a_alink_bow debug * d_a_alink_boom debug * d_a_alink_copyrod debug * d_a_alink_hvyboots debug * d_a_alink_grab debug * d_a_alink_sumou debug * d_a_alink_horse debug * d_a_alink_canoe debug * d_a_alink_crawl / d_a_alink_hang debug * d_a_alink_swim debug * d_a_alink_hook / d_a_alink_iceleaf debug * d_a_alink_bottle debug * d_a_alink_whistle / d_a_alink_kandelaar / d_a_alink_ironball debug * d_a_alink_demo debug * d_a_alink_effect debug * d_a_alink_wolf debug * d_a_alink debug / cleanup * cleanup button status enums
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-04d_a_e_rdy debug work (#3011)roeming
* debug work for d_a_e_rdy * remove unused fake function * fix regressions * rename variable * Fix version diffs of angle adding
2025-12-29Work on d_cc_d debug (#3002)hatal175
2025-12-24Resolve all gameInfo fakematches (#2995)LagoLunatic
* Clean up various inlines/fakematches/comments * Copy OptRuby inline name from TWW debug * Resolve all dEvt_control_c related fakematches, return pointer instead of reference * Fix some more missing inline usages
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-21Work on weak order (#2979)LagoLunatic
* JAUSectionHeap OK * Slightly improve d_camera weak func order (12 -> 10) * Minor d_a_alink fixes * weak_order_diff.py: Change to take source file as cli argument instead of .o file For cli autocompletion to work. * Reorganize J3D structs (no change in weak order)
2025-12-19m_Do_main debug (#2965)Jcw87
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-12-04d_a_horse 100% (#2912)LagoLunatic
* Fix missing line numbers for debug * Fix horse inlines and HIO * Match daHorse_c::setEffect * Improve a few debug matches * Match daHorse_c::checkHorseNoMove (half fake) * Update configure.py
2025-12-03Debug+retail matches and clean up some fakematches (#2910)LagoLunatic
* Debug matches * Match daAlink_c::procGrassWhistleWait * Match JASAramStream::channelProc * More debug matches * Match JAUStreamStaticAramMgr_::deleteStreamAram and bitset inlines * Fix some fakematches * Fix gameinfo player info not being a struct * Update bug comments * Fix procids in alink * d_a_scene_exit OK
2025-12-01Fix HIO load issues (#2903)LagoLunatic
* Fix HIO load order in daHoZelda_c::searchBodyAngle * Fix regression in daHoZelda_c::createHeap Apparently the HIO class being constructed having an explicit ctor breaks the compiler ability to branchlessly optimize the false/true return afterwards. Without an explicit ctor the compiler is able to optimize it successfully, which breaks the match. * Fix HIO load order in daNpc_ykW_c::setAttnPos * Remove false version diff * Update configure.py * Remove old comment * Fix alink HIO members being private * alink: Fix HIO loads in 3 retail functions and almost all debug functions
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-30d_a_alink_HIO work (#2852)Howard Luck
* daAlink_c::jointControll OK * daalink debug work * checkpoint * fix casting * checkpoint * checkpoint * checkpoint * checkpoint * checkpoint * checkpoint * checkpoint * remaining functions + fixes round 1 * fixes round 2 * fixes round 3 * fixes round 4 * revert getNeckAimAngle for now
2025-11-25Misc fixes (#2860)LagoLunatic
* Misc matches * Remove more old dol2asm stuff * Remove dCcS::SetMass-related fakematches No longer necessary with the PCH for some reason. * Use attention types enum in more places * Remove more dol2asm stuff * Clean up matDL_dis.py
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-20Remove fake matches, fix false equivalencies, and other small matches (#2837)LagoLunatic
* Debug matches and remove fake matches * Fix false equivalencies, regallocs, and vtable orders * Fix PAL splits
2025-10-19m_Do_main / f_ap_game / f_op_actor debug work and misc (#2744)TakaRikka
* m_Do_main / f_ap_game debug stuff * revolution sdk compatibility * f_op_actor debug work * rename fopAcM_SetupActor to fopAcM_ct * fix build * fix jp/pal splits
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-25d_debug_camera mostly done (#2695)TakaRikka
* d_debug_camera mostly done * update some alink demo stuff * some misc debug stuff
2025-09-10Minor d_a_alink improvements (#2646)Max Roncace
2025-09-08scannon / scannon_crs / scannon_ten done (#2632)TakaRikka
* scannon done * scannon_crs done * scannon_ten done * pr * attention debug stuff * attn flags * fix build
2025-09-04some J3D/misc cleanup (#2628)TakaRikka
* some j3d cleanup * begin using uintptr_t * j3dgraphbase cleanup * j3dgraphanimator cleanup
2025-08-25Fix incorrect PCH being used in some framework objects (#2604)Max Roncace
2025-08-24Add a precompiled header for RELs (#2597)Max Roncace
2025-08-08ChkBit comments and enum work (#2571)Carco_21
* Jagar cleanup * saru work * e_fm work * gob enum added * gob cleanup * gob anm enums * dComIfGs_isEventBit comments added * More bit work and besu enum work * Maybe fixed the issue?
2025-07-15Minor d_a_alink fixes (#2534)Max Roncace
2025-06-01Sakuita rope Matching (#2470)hatal175
* Change dComIfGp_getAttention to return a pointer * d_a_obj_sakuita_rope Matching
2025-05-25d_a_e_yd equivalent (func order) (#2455)Max Roncace
2025-05-22Update dtk-template (#2453)LagoLunatic
* Update dtk-template * Fix debug build * Fix d_event_debug includes * Progress reports: Enable function relocation diffing (data_value) * Fix some diffs * Fix a few more diffs * More fixes
2025-04-16alink data cleanup (#2397)TakaRikka
2025-04-13d_stage cleanup (#2392)LagoLunatic
2025-03-30Fix dPnt struct (#2361)LagoLunatic
* Fix dPnt struct * Fix Vec warning
2025-03-23b_gnd equivalent (#2340)TakaRikka
* b_gnd equivalent * fix dEvt_info_c inlines * fix some more inlines
2025-03-18d_a_e_pz equivalent (#2330)TakaRikka
* d_a_e_pz equivalent * rename var * match f_pc closer to debug * hopefully fix decompctx * sdk done * remove unneeded file
2025-03-14b_dr equivalent, update dtk-template (#2327)TakaRikka
* d_a_tag_allmato almost done * d_a_swhit0 done * some SSystem cleanup * treesh done * swball done, some other rel cleanup * b_dr equivalent * update dtk-template * rename j3dframectrl mode enum
2025-02-13d_a_obj_carry mostly done (#2301)TakaRikka
* d_a_obj_carry mostly done * cleanup some acch inlines
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