From 378684152cde8a3674f9d92a1a154f72b4968ae1 Mon Sep 17 00:00:00 2001 From: fullgrowngaming <42490167+fullgrowngaming@users.noreply.github.com> Date: Mon, 28 Sep 2020 16:26:33 -0700 Subject: [PATCH] bg_market_step OK (#21) * bg_market_step OK * Ran formatting script * Converted arrays to Gfx* arrays and formatted init vars properly * Propery formed display lists and arrays --- linker_scripts/code_script.txt | 5 ++-- linker_scripts/object_script.txt | 6 ++++ .../ovl_Bg_Market_Step/z_bg_market_step.c | 28 ++++++++++++++++--- 3 files changed, 33 insertions(+), 6 deletions(-) diff --git a/linker_scripts/code_script.txt b/linker_scripts/code_script.txt index 724529f417..0ca1557b6d 100644 --- a/linker_scripts/code_script.txt +++ b/linker_scripts/code_script.txt @@ -5763,8 +5763,9 @@ SECTIONS ovl_Bg_Market_Step : AT(RomLocation) { build/src/overlays/actors/ovl_Bg_Market_Step/z_bg_market_step.o(.text) - build/asm/ovl_Bg_Market_Step_data.o(.data) - build/asm/ovl_Bg_Market_Step_rodata.o(.rodata) + build/src/overlays/actors/ovl_Bg_Market_Step/z_bg_market_step.o(.data) + build/src/overlays/actors/ovl_Bg_Market_Step/z_bg_market_step.o(.rodata) + build/src/overlays/actors/ovl_Bg_Market_Step/z_bg_market_step_overlay.o(.ovl) } SegmentEnd = .; SegmentSize = SegmentEnd - SegmentStart; diff --git a/linker_scripts/object_script.txt b/linker_scripts/object_script.txt index 2fb81f5a03..9b0e3b8c12 100644 --- a/linker_scripts/object_script.txt +++ b/linker_scripts/object_script.txt @@ -26,3 +26,9 @@ D_060011E0 = 0x060011E0; /* bg_mbar */ D_06000288 = 0x06000288; D_060019B4 = 0x060019B4; + +/* z_bg_market_step */ +D_0601F050 = 0x0601F050; +D_06018DA0 = 0x06018DA0; +D_0601EF10 = 0x0601EF10; +D_06018C60 = 0x06018C60; diff --git a/src/overlays/actors/ovl_Bg_Market_Step/z_bg_market_step.c b/src/overlays/actors/ovl_Bg_Market_Step/z_bg_market_step.c index 26a640422d..6d58adc13f 100644 --- a/src/overlays/actors/ovl_Bg_Market_Step/z_bg_market_step.c +++ b/src/overlays/actors/ovl_Bg_Market_Step/z_bg_market_step.c @@ -7,7 +7,6 @@ void BgMarketStep_Init(Actor* thisx, GlobalContext* globalCtx); void BgMarketStep_Draw(Actor* thisx, GlobalContext* globalCtx); -/* const ActorInit Bg_Market_Step_InitVars = { ACTOR_BG_MARKET_STEP, ACTORTYPE_BG, @@ -19,8 +18,29 @@ const ActorInit Bg_Market_Step_InitVars = { (ActorFunc)func_800BDFB0, (ActorFunc)BgMarketStep_Draw }; -*/ -GLOBAL_ASM("asm/non_matchings/ovl_Bg_Market_Step_0x80AF0060/BgMarketStep_Init.asm") +static InitChainEntry sInitChain[] = { + ICHAIN_F32(unkFC, 1, ICHAIN_CONTINUE), + ICHAIN_F32(unk100, 1, ICHAIN_CONTINUE), + ICHAIN_F32(unk104, 1, ICHAIN_CONTINUE), + ICHAIN_VEC3F_DIV1000(scale, 1000, ICHAIN_STOP), +}; -GLOBAL_ASM("asm/non_matchings/ovl_Bg_Market_Step_0x80AF0060/BgMarketStep_Draw.asm") +extern Gfx D_0601F050[]; +extern Gfx D_06018DA0[]; +extern Gfx D_0601EF10[]; +extern Gfx D_06018C60[]; +Gfx* D_80AF0120[] = { D_0601F050, D_06018DA0 }; +Gfx* D_80AF0128[] = { D_0601EF10, D_06018C60 }; + +void BgMarketStep_Init(Actor* thisx, GlobalContext* globalCtx) { + BgMarketStep* this = THIS; + + Actor_ProcessInitChain(&this->actor, sInitChain); +} +void BgMarketStep_Draw(Actor* thisx, GlobalContext* globalCtx) { + s32 index = thisx->params & 1; + + func_800BDFC0(globalCtx, D_80AF0120[index]); + func_800BDFC0(globalCtx, D_80AF0128[index]); +}