Skip to content

Pr 13#2184

Merged
ribbanya merged 47 commits intodoldecomp:masterfrom
stephenjayakar:pr-13
Mar 2, 2026
Merged

Pr 13#2184
ribbanya merged 47 commits intodoldecomp:masterfrom
stephenjayakar:pr-13

Conversation

@stephenjayakar
Copy link
Copy Markdown
Contributor

No description provided.

Decompile the following functions:
- fn_800DC014 (ftCo_Attack100.c) - 12 instructions
- fn_80169550 (gm_1601.c) - 9 instructions
- gm_8017E5C8 (gm_17C0.c) - 13 instructions
- gm_80182554 (gm_17C0.c) - 9 instructions
- grCorneria_801E2598 (grcorneria.c) - 11 instructions
- grIceMt_801F8364 (gricemt.c) - 13 instructions
- grOldKongo_8020F4E8 (groldkongo.c) - 15 instructions
- grOldPupupu_802109D8 (groldpupupu.c) - 17 instructions
- it_802B1FE8 (itpikachuthunder.c) - 17 instructions
- it_802F1344 (itcrazyhandbomb.c) - 16 instructions

Also fixes function signatures in headers and expands
itPikachuthunder_ItemVars and itPikachuthunderAttributes structs
with proper field layouts.
Decompile the following stub functions:
- grCorneria_801E2738 (gr/grcorneria.c)
- grIceMt_801F85C4 (gr/gricemt.c)
- fn_801F91A8 / grIceMt_801F929C (gr/gricemt.c)
- grPushOn_80219204 (gr/grpushon.c)
- grZakoGenerator_801CAEB0 (gr/grzakogenerator.c)
- grZebesRoute_8020B3C0 (gr/grzebesroute.c)
- fn_80169574 (gm/gm_1601.c)
- fn_80171B64 (gm/gm_16F1.c)
- gm_8017ECD4 (gm/gm_17C0.c)
- gm_8017ED08 (gm/gm_17C0.c)

Also fixes grCorneria_801E25C4 signature (grcorneria.h) and
updates call site in grvenom.c.
Decompile the following stub functions:
- fn_800DB8A4 (ft/chara/ftCommon/ftCo_Attack100.c)
- ftCh_Slap_Phys (ft/chara/ftCrazyHand/ftCh_Init.c)
- fn_801587B0 (ft/chara/ftCrazyHand/ftCh_Init.c)
- lbMthp_8001F578 (lb/lbmthp.c)
- CreateNameAtIndex (mn/mnname.c)
- itBombhei_UnkMotion6_Coll (it/items/itbombhei.c)
- itBombhei_UnkMotion10_Coll (it/items/itbombhei.c)
- it_3F14_Logic42_DmgDealt (it/items/itevyoshiegg.c)
- it_3F14_Logic42_Clanked (it/items/itevyoshiegg.c)
- it_3F14_Logic42_HitShield (it/items/itevyoshiegg.c)
- it_3F14_Logic42_Reflected (it/items/itevyoshiegg.c)

Also updates InitializePersistentNameData signature in gmmain_lib.h
and lbmthp struct layout in lbmthp.static.h.
Decompile the following stub functions:
- it_8028EC98 (it/items/itfreeze.c)
- itGamewatchchef_UnkMotion0_Phys (it/items/itgamewatchchef.c)
- it_802D4510 (it/items/ithitodeman.c)
- it_802D2668 (it/items/ithouou.c)
- it_802ECFE0 (it/items/itkyasarin.c)
- it_802DABC0 (it/items/itlikelike.c)
- it_802D1580 (it/items/itlugia.c)
- fn_802C5E18 (it/items/itmewtwoshadowball.c)
- it_2725_Logic59_EvtUnk (it/items/itnessyoyo.c)
- itOldkuri_UnkMotion3_Coll (it/items/itoldkuri.c)
- itOldkuri_UnkMotion4_Coll (it/items/itoldkuri.c)

Also adds/updates shared item type definitions:
- itMewtwoShadowball_ItemVars, itOldkuri_ItemVars (itCommonItems.h)
- itGamewatchchef_ItemVars, itTools_ItemVars (itCharItems.h)
- itLugiaAttributes, itFreeze_ItemVars layout (itCommonItems.h)
- it/types.h Item union members
Matched functions:
- grHomeRun_8021DEF0, grHomeRun_8021E074, grHomeRun_8021E1F8, grHomeRun_8021E37C (grhomerun.c)
- grIceMt_801F815C (gricemt.c)
- grMuteCity_801F044C (grmutecity.c)
- grOnett_801E5140 (gronett.c)
- fn_802130D0 (grpura.c)
- ft_80089824 (ft_0892.c)
- ftKb_SpecialN_800F15D8 (ftKb_Init.c)
- fn_800F64C8 (ftKb_SpecialN.c)
Matched functions:
- it_3F14_Logic17_Spawned, it_8028F434, itFreeze_UnkMotion4_Phys, it_8028F7C8, itFreeze_UnkMotion5_Coll, it_8028F8E4, it_8028F968 (itfreeze.c)
- it_802C875C, it_2725_Logic112_Clanked, it_2725_Logic112_HitShield (itgamewatchchef.c)
Matched functions:
- it_802B2080 (itpikachuthunder.c)
- it_2725_Logic106_Destroyed, itPikachutjoltground_UnkMotion1_Anim, itPikachutjoltground_UnkMotion0_Phys, itPikachutjoltground_UnkMotion0_Coll, itPikachutjoltground_UnkMotion1_Coll, it_2725_Logic106_DmgDealt, it_2725_Logic106_Clanked, it_2725_Logic106_Absorbed, it_2725_Logic106_HitShield (itpikachutjoltground.c)
Matched functions:
- it_8028D4E4, it_3F14_Logic15_Spawned, it_8028D62C, it_3F14_Logic15_Thrown, itRshell_UnkMotion3_Anim, itRshell_UnkMotion4_Anim, itRshell_UnkMotion6_Anim (itrshell.c)
- it_802E0F1C, it_2725_Logic4_Dropped, it_2725_Logic4_Thrown (itpatapata.c)
Matched functions:
- it_80294364, it_80294430, it_802944AC, it_802946B0, it_3F14_Logic29_PickedUp, it_802947CC, itWstar_UnkMotion5_Anim (itwstar.c)
- it_802881B4, it_802881FC (ittaru.c)
- it_3F14_Logic5_Dropped, it_80296EA8 (ittarucann.c)
Matched functions:
- it_802BCED4, it_802BCF2C (itseakchain.c)
- it_802E436C, it_2725_Logic9_Thrown (itwhitebea.c)
- it_2725_Logic23_DmgDealt, it_2725_Logic23_Clanked (itnesspkfire.c)
- itSamuschargeshot_UnkMotion8_Phys (itsamuschargeshot.c)
- it_802F1030 (itcrazyhandbomb.c)
- it_802EB268 (itgreatfoxlaser.c)
- it_802D290C (ithouou.c)
Matched functions:
- it_802C9E8C (itkabigon.c)
- it_802ED0D0 (itkyasarin.c)
- it_802D9DDC (itlikelike.c)
- it_2725_Logic0_Thrown (itoldkuri.c)
- itTools_UnkMotion4_Phys (ittools.c)
- itUnknown_UnkMotion0_Phys (itunknown.c)
Decompile the following stub functions:
- fn_800DB8A4 (ft/chara/ftCommon/ftCo_Attack100.c)
- ftCh_Slap_Phys (ft/chara/ftCrazyHand/ftCh_Init.c)
- fn_801587B0 (ft/chara/ftCrazyHand/ftCh_Init.c)
- lbMthp_8001F578 (lb/lbmthp.c)
- CreateNameAtIndex (mn/mnname.c)
- itBombhei_UnkMotion6_Coll (it/items/itbombhei.c)
- itBombhei_UnkMotion10_Coll (it/items/itbombhei.c)
- it_3F14_Logic42_DmgDealt (it/items/itevyoshiegg.c)
- it_3F14_Logic42_Clanked (it/items/itevyoshiegg.c)
- it_3F14_Logic42_HitShield (it/items/itevyoshiegg.c)
- it_3F14_Logic42_Reflected (it/items/itevyoshiegg.c)

Also updates InitializePersistentNameData signature in gmmain_lib.h
and lbmthp struct layout in lbmthp.static.h.
Decompile the following stub functions:
- it_8028EC98 (it/items/itfreeze.c)
- itGamewatchchef_UnkMotion0_Phys (it/items/itgamewatchchef.c)
- it_802D4510 (it/items/ithitodeman.c)
- it_802D2668 (it/items/ithouou.c)
- it_802ECFE0 (it/items/itkyasarin.c)
- it_802DABC0 (it/items/itlikelike.c)
- it_802D1580 (it/items/itlugia.c)
- fn_802C5E18 (it/items/itmewtwoshadowball.c)
- it_2725_Logic59_EvtUnk (it/items/itnessyoyo.c)
- itOldkuri_UnkMotion3_Coll (it/items/itoldkuri.c)
- itOldkuri_UnkMotion4_Coll (it/items/itoldkuri.c)

Also adds/updates shared item type definitions:
- itMewtwoShadowball_ItemVars, itOldkuri_ItemVars (itCommonItems.h)
- itGamewatchchef_ItemVars, itTools_ItemVars (itCharItems.h)
- itLugiaAttributes, itFreeze_ItemVars layout (itCommonItems.h)
- it/types.h Item union members
Matched functions:
- grHomeRun_8021DEF0, grHomeRun_8021E074, grHomeRun_8021E1F8, grHomeRun_8021E37C (grhomerun.c)
- grIceMt_801F815C (gricemt.c)
- grMuteCity_801F044C (grmutecity.c)
- grOnett_801E5140 (gronett.c)
- fn_802130D0 (grpura.c)
- ft_80089824 (ft_0892.c)
- ftKb_SpecialN_800F15D8 (ftKb_Init.c)
- fn_800F64C8 (ftKb_SpecialN.c)
Matched functions:
- it_3F14_Logic17_Spawned, it_8028F434, itFreeze_UnkMotion4_Phys, it_8028F7C8, itFreeze_UnkMotion5_Coll, it_8028F8E4, it_8028F968 (itfreeze.c)
- it_802C875C, it_2725_Logic112_Clanked, it_2725_Logic112_HitShield (itgamewatchchef.c)
Matched functions:
- it_802B2080 (itpikachuthunder.c)
- it_2725_Logic106_Destroyed, itPikachutjoltground_UnkMotion1_Anim, itPikachutjoltground_UnkMotion0_Phys, itPikachutjoltground_UnkMotion0_Coll, itPikachutjoltground_UnkMotion1_Coll, it_2725_Logic106_DmgDealt, it_2725_Logic106_Clanked, it_2725_Logic106_Absorbed, it_2725_Logic106_HitShield (itpikachutjoltground.c)
Matched functions:
- it_8028D4E4, it_3F14_Logic15_Spawned, it_8028D62C, it_3F14_Logic15_Thrown, itRshell_UnkMotion3_Anim, itRshell_UnkMotion4_Anim, itRshell_UnkMotion6_Anim (itrshell.c)
- it_802E0F1C, it_2725_Logic4_Dropped, it_2725_Logic4_Thrown (itpatapata.c)
Matched functions:
- it_80294364, it_80294430, it_802944AC, it_802946B0, it_3F14_Logic29_PickedUp, it_802947CC, itWstar_UnkMotion5_Anim (itwstar.c)
- it_802881B4, it_802881FC (ittaru.c)
- it_3F14_Logic5_Dropped, it_80296EA8 (ittarucann.c)
Matched functions:
- it_802BCED4, it_802BCF2C (itseakchain.c)
- it_802E436C, it_2725_Logic9_Thrown (itwhitebea.c)
- it_2725_Logic23_DmgDealt, it_2725_Logic23_Clanked (itnesspkfire.c)
- itSamuschargeshot_UnkMotion8_Phys (itsamuschargeshot.c)
- it_802F1030 (itcrazyhandbomb.c)
- it_802EB268 (itgreatfoxlaser.c)
- it_802D290C (ithouou.c)
Matched functions:
- it_802C9E8C (itkabigon.c)
- it_802ED0D0 (itkyasarin.c)
- it_802D9DDC (itlikelike.c)
- it_2725_Logic0_Thrown (itoldkuri.c)
- itTools_UnkMotion4_Phys (ittools.c)
- itUnknown_UnkMotion0_Phys (itunknown.c)
@decomp-dev
Copy link
Copy Markdown

decomp-dev Bot commented Mar 1, 2026

Report for GALE01 (8db8688 - 926b61c)

📈 Matched code: 54.16% (+0.24%, +9176 bytes)

✅ 69 new matches
Unit Item Bytes Before After
main/melee/lb/lbaudio_ax fn_800259EC +172 0.00% 100.00%
main/melee/lb/lbaudio_ax fn_80025A98 +172 0.00% 100.00%
main/melee/ft/chara/ftCommon/ftCo_Attack100 ftCo_800DA698 +172 0.00% 100.00%
main/melee/ft/chara/ftKirby/ftKb_SpecialN ftKb_CaSpecialN_Coll +168 0.00% 100.00%
main/melee/ft/chara/ftKirby/ftKb_SpecialNFx ftKb_SpecialNFx_800FDD4C +168 0.00% 100.00%
main/melee/gr/grzakogenerator grZakoGenerator_801CA394 +168 0.00% 100.00%
main/melee/gr/grmutecity grMuteCity_801F2AB0 +168 0.00% 100.00%
main/melee/gr/grzebesroute grZebesRoute_8020B42C +168 0.00% 100.00%
main/melee/it/items/ithitodeman it_802D43EC +168 0.00% 100.00%
main/melee/it/items/itoldottosea itOldottosea_UnkMotion3_Anim +168 0.00% 100.00%
main/melee/ty/toy un_80308250 +168 0.00% 100.00%
main/melee/ft/chara/ftKirby/ftKb_Init ftKb_SpecialN_800EF040 +164 0.00% 100.00%
main/melee/ft/chara/ftPopo/ftPp_SpecialS ftPp_SpecialHiStart_0_Phys +164 0.00% 100.00%
main/melee/ft/chara/ftPopo/ftPp_SpecialS ftPp_SpecialHiThrow_0_Phys +164 0.00% 100.00%
main/melee/ft/chara/ftPopo/ftPp_SpecialS ftPp_SpecialHiThrow2_Phys +164 0.00% 100.00%
main/melee/mn/mndatadel fn_8024FBA4 +164 0.00% 100.00%
main/melee/it/items/itflipper it_80290DD4 +164 0.00% 100.00%
main/melee/it/items/itoldkuri it_802D8098 +164 0.00% 100.00%
main/melee/it/items/ittools itTools_UnkMotion9_Anim +164 0.00% 100.00%
main/melee/ft/chara/ftCommon/ftCo_Guard ftCo_80094098 +160 0.00% 100.00%
main/melee/ft/chara/ftKirby/ftKb_SpecialN ftKb_CaSpecialAirN_Coll +160 0.00% 100.00%
main/melee/ft/chara/ftKirby/ftKb_SpecialNYs ftKb_SpecialNPe_8010C148 +160 0.00% 100.00%
main/melee/ft/chara/ftKirby/ftKb_SpecialNYs ftKb_SpecialNPe_8010C1E8 +160 0.00% 100.00%
main/melee/gm/gm_17C0 gm_8017CD94 +160 0.00% 100.00%
main/melee/mn/mnname mnName_80238964 +160 0.00% 100.00%
main/melee/mn/mnname mnName_80239EBC +160 0.00% 100.00%
main/melee/mn/mnname mnName_80239F5C +160 0.00% 100.00%
main/melee/mn/mnnamenew mnNameNew_EnterFromMnName +160 0.00% 100.00%
main/melee/gm/gm_17C0 gm_80181AC8 +156 0.00% 100.00%
main/melee/it/items/itclimbersice it_802C1AE4 +156 0.00% 100.00%

...and 39 more new matches

📈 14 improvements in unmatched items
Unit Item Bytes Before After
main/melee/gr/granime grAnime_801C86D4 +161 0.00% 93.79%
main/melee/gr/grzakogenerator grZakoGenerator_801CAC14 +151 0.00% 92.29%
main/melee/gr/grcastle grCastle_801CE7E8 +106 0.00% 95.11%
main/melee/ft/chara/ftCrazyHand/ftCh_Init fn_80156F6C +81 0.00% 72.54%
main/melee/mn/mnname .sdata +21 0.00% 33.77%
main/melee/gr/grzebesroute .sdata2 +13 0.00% 28.57%
main/melee/it/items/itzgshell .sdata2 +12 21.05% 38.10%
main/melee/it/items/itoldkuri .sdata2 +11 18.18% 46.15%
main/melee/it/items/ittools .sdata2 +11 18.18% 46.15%
main/melee/it/items/itflipper .sdata2 +7 11.76% 22.22%
main/melee/it/items/ittincle .sdata2 +6 15.38% 28.57%
main/melee/gr/grcastle .sbss +5 0.00% 66.67%
main/melee/it/items/ithitodeman .sdata2 +5 25.00% 35.29%
main/melee/gr/granime .sdata +3 40.00% 57.14%
📉 2 regressions in unmatched items
Unit Item Bytes Before After
main/melee/it/items/itdosei .sdata2 -4 44.44% 36.11%
main/melee/it/items/itoldottosea .sdata2 -1 22.22% 20.00%

Copy link
Copy Markdown
Collaborator

@ribbanya ribbanya left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Using ninja baseline and ninja changes, we need to fix all regressions relative to master and to 2ecbc73 (the pre-merge commit). As of now, those are:

vs. master (8db8688)

main/melee/ft/chara/ftKirby/ftKb_Init | fuzzy_match  |  59.28% ->  58.40%
main/melee/ft/chara/ftKirby/ftKb_Init | matched_code |  46.07% ->  44.13%
               ftKb_SpecialN_800F0FC0 | fuzzy_match  | 100.00% ->  35.00%
               ftKb_SpecialN_800F130C | fuzzy_match  | 100.00% ->  35.00%
             main/melee/gm/gmmultiman | fuzzy_match  | 100.00% ->  99.86%
             main/melee/gm/gmmultiman | matched_code | 100.00% ->  47.59%
                          gm_801B6BE8 | fuzzy_match  | 100.00% ->  99.72%
                          gm_801B7154 | fuzzy_match  | 100.00% ->  99.74%
                          gm_801B7700 | fuzzy_match  | 100.00% ->  99.74%
                          gm_801B7C84 | fuzzy_match  | 100.00% ->  99.74%
                          gm_801B8220 | fuzzy_match  | 100.00% ->  99.72%
                          gm_801B874C | fuzzy_match  | 100.00% ->  99.74%

vs. pre-merge (2ecbc73)

                    fn_801697FC | fuzzy_match  | 100.00% ->  97.62%
                    gm_8016A164 | fuzzy_match  | 100.00% ->  99.81%
                    fn_801F5914 | fuzzy_match  | 100.00% ->   0.00%
             mnDiagram_80242C0C | fuzzy_match  |  65.20% ->  59.97%
   main/melee/it/items/itfreeze | fuzzy_match  |  50.25% ->  49.77%
       itFreeze_UnkMotion4_Phys | fuzzy_match  |  96.05% ->  85.70%
main/melee/it/items/ithitodeman | fuzzy_match  |  28.84% ->  28.83%
main/melee/it/items/ithitodeman | matched_code |  28.84% ->  23.99%
                    it_802D43EC | fuzzy_match  | 100.00% ->  99.90%
                    fn_80393C14 | fuzzy_match  |  99.00% ->  98.77%
                   hsd_80393DA0 | fuzzy_match  | 100.00% ->  99.78%

@ribbanya
Copy link
Copy Markdown
Collaborator

ribbanya commented Mar 1, 2026

Changes against master are good to go.

vs. pre-merge (2ecbc73)

       gm_8016A164 | fuzzy_match | 100.00% ->  99.81%
       fn_801F5914 | fuzzy_match | 100.00% ->   0.00%
mnDiagram_80242C0C | fuzzy_match |  65.20% ->  59.97%
       fn_80393C14 | fuzzy_match |  99.00% ->  98.77%
      hsd_80393DA0 | fuzzy_match | 100.00% ->  99.78%

Copy link
Copy Markdown
Collaborator

@ribbanya ribbanya left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Okay, the last regressions are more or less false positives.

@ribbanya ribbanya merged commit e2062fe into doldecomp:master Mar 2, 2026
7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants