diff --git a/include/common_structs.h b/include/common_structs.h index 5dc4f0355c..17bc442bf3 100644 --- a/include/common_structs.h +++ b/include/common_structs.h @@ -396,27 +396,35 @@ typedef struct MusicSettings { /* 0x2C */ s32 unk_2C; } MusicSettings; // size = 0x30 -typedef struct MenuIcon { - /* 0x00 */ u32 flags; - /* 0x04 */ u32* readPos; - /* 0x08 */ u32* startReadPos; - /* 0x0C */ u32* ptrPropertyList; - /* 0x10 */ u32* imageAddr; - /* 0x14 */ u32* paletteAddr; - /* 0x18 */ u32 memOffset; - /* 0x1C */ char unk_1C[24]; +typedef struct HudElement { + /* 0x00 */ s32 flags; + /* 0x04 */ s32* readPos; + /* 0x08 */ s32* startReadPos; + /* 0x0C */ s32* ptrPropertyList; + /* 0x10 */ s32* imageAddr; + /* 0x14 */ s32* paletteAddr; + /* 0x18 */ s32 memOffset; + /* 0x1C */ s32* hudTransform; + /* 0x20 */ f32 unk_20; + /* 0x24 */ f32 unk_24; + /* 0x28 */ f32 unkImgScale[2]; + /* 0x30 */ f32 uniformScale; /* 0x34 */ f32 widthScaleF; /* X.10 fmt (divide by 1024.0 to get float) */ /* 0x38 */ f32 heightScaleF; /* X.10 fmt (divide by 1024.0 to get float) */ /* 0x3C */ s16 renderPosX; /* 0x3E */ s16 renderPosY; /* 0x40 */ u8 screenPosOffset[2]; /* 0x42 */ u8 worldPosOffset[3]; - /* 0x45 */ char unk_45[2]; + /* 0x45 */ s8 drawSizePreset; + /* 0x46 */ s8 tileSizePreset; /* 0x47 */ u8 updateTimer; /* 0x48 */ u8 sizeX; /* screen size? */ /* 0x49 */ u8 sizeY; /* screen size? */ - /* 0x4A */ char unk_4A[10]; -} MenuIcon; // size = 0x54 + /* 0x4A */ u8 opacity; + /* 0x4B */ s8 tint[3]; + /* 0x4E */ s8 customImageSize[2]; + /* 0x40 */ s8 customDrawSize[2]; +} HudElement; // size = 0x54 typedef struct UiStatus { /* 0x00 */ s32 hpIconIndexes[2]; @@ -1473,16 +1481,28 @@ typedef struct ActorMovement { /* 0x4C */ f32 distance; } ActorMovement; // size = 0x50; +typedef struct ActorMovementWalk { + /* 0x00 */ Vec3f currentPos; + /* 0x0C */ Vec3f goalPos; + /* 0x18 */ Vec3f unk_18; + /* 0x24 */ char unk_24[24]; + /* 0x3C */ f32 acceleration; + /* 0x40 */ f32 speed; + /* 0x44 */ f32 velocity; + /* 0x48 */ f32 angle; + /* 0x4C */ f32 distance; + /* 0x50 */ f32 bounceDivisor; + /* 0x54 */ char unk_54[0x4]; + /* 0x58 */ s32 animJumpRise; + /* 0x5C */ s32 animJumpFall; + /* 0x60 */ s32 animJumpLand; +} ActorMovementWalk; // size = 0x64; + typedef struct Actor { /* 0x000 */ s32 flags; /* 0x004 */ char unk_04[4]; /* 0x008 */ struct ActorDesc* staticActorData; - /* 0x00C */ ActorMovement walk; - /* 0x05C */ f32 bounceDivisor; - /* 0x060 */ char unk_60[4]; - /* 0x064 */ s32 animJumpRise; - /* 0x068 */ s32 animJumpFall; - /* 0x06C */ s32 animJumpLand; + /* 0x00C */ ActorMovementWalk walk; /* 0x070 */ s16 moveTime; /* 0x072 */ s16 moveArcAmplitude; /* 0x074 */ char unk_74[3]; @@ -1584,7 +1604,7 @@ typedef struct Actor { /* 0x434 */ s16 renderMode; /* initially 0xD, set to 0x22 if any part is transparent */ /* 0x436 */ s16 unk_436; /* 0x438 */ s32 x[2]; /* ??? see FUN_80253974 */ - /* 0x440 */ struct MenuIcon* ptrDefuffIcon; + /* 0x440 */ struct HudElement* ptrDefuffIcon; } Actor; // size = 0x444 typedef struct TileDescriptor { @@ -1834,7 +1854,7 @@ typedef struct { /* 0x12 */ s16 height; /* 0x14 */ UNK_PTR fpDrawContents; /* 0x18 */ s32 unk_18; // MenuTab pointer for pause menu tabs - /* 0x1C */ s8 unk_1C; + /* 0x1C */ u8 unk_1C; /* 0x1D */ char unk_1D[3]; } UIPanel; // size = 0x20 diff --git a/include/functions.h b/include/functions.h index 95ee12a6cb..98c15befcf 100644 --- a/include/functions.h +++ b/include/functions.h @@ -163,8 +163,8 @@ s32 osGetId(); void mem_clear(s8* data, s32 numBytes); -MenuIcon* create_icon(s32* iconIndex); -void set_icon_render_pos(MenuIcon* iconIndex, s32 posX, s32 posY); +HudElement* create_icon(s32* iconIndex); +void set_icon_render_pos(s32 iconIndex, s32 posX, s32 posY); void intro_logos_set_fade_color(s16 color); void intro_logos_set_fade_alpha(s16 alpha); diff --git a/include/variables.h b/include/variables.h index 42b8357d54..6e20f49036 100644 --- a/include/variables.h +++ b/include/variables.h @@ -63,6 +63,7 @@ extern NpcList* gCurrentNpcListPtr; extern ShadowList gWorldShadowList; extern ShadowList gBattleShadowList; extern ShadowList* gCurrentShadowListPtr; +extern HudElement** gHudElementList; extern Camera gCameras[4]; extern s32 gCurrentCameraID; @@ -203,7 +204,7 @@ extern s32 gItemMenuTargetScrollPos; extern s32 D_802705DC; extern s32 gItemMenuLevel; extern s32 gItemMenuCurrentTab; -extern MenuIcon* gItemIcons[20]; +extern HudElement* gItemIcons[20]; extern s32 gItemMenuScrollUpIcon; // Stats diff --git a/src/168590.c b/src/168590.c index 721fb03c47..d55efb0152 100644 --- a/src/168590.c +++ b/src/168590.c @@ -12,7 +12,14 @@ void func_80248160(void) { void func_80248168(void) { } -INCLUDE_ASM(s32, "168590", func_80248170); +void func_80248170(s32 arg0) { + UIPanel* panel = &gUIPanels[arg0]; + + if (panel->unk_1C == 0x8) { + panel->flags &= ~0x8; + set_window_update(arg0, 1); + } +} INCLUDE_ASM(s32, "168590", func_802481B8); diff --git a/src/197F40.c b/src/197F40.c index fff3bccad8..6570f1951a 100644 --- a/src/197F40.c +++ b/src/197F40.c @@ -927,9 +927,9 @@ ApiStatus SetJumpAnimations(ScriptInstance* script, s32 isInitialCall) { actor = get_actor(actorID); actor->jumpPartIndex = jumpPartIndex; - actor->animJumpRise = animJumpRise; - actor->animJumpFall = animJumpFall; - actor->animJumpLand = animJumpLand; + actor->walk.animJumpRise = animJumpRise; + actor->walk.animJumpFall = animJumpFall; + actor->walk.animJumpLand = animJumpLand; return ApiStatus_DONE2; } diff --git a/src/19FAF0.c b/src/19FAF0.c index 679ed9d438..a73a307e0a 100644 --- a/src/19FAF0.c +++ b/src/19FAF0.c @@ -110,7 +110,53 @@ INCLUDE_ASM(s32, "19FAF0", func_80273444); INCLUDE_ASM(s32, "19FAF0", PlayerFallToGoal, ScriptInstance* script, s32 isInitialCall); -INCLUDE_ASM(s32, "19FAF0", PlayerLandJump, ScriptInstance* script, s32 isInitialCall); +ApiStatus PlayerLandJump(ScriptInstance *script, s32 isInitialCall) { + Actor* player = gBattleStatus.playerActor; + ActorMovementWalk* walkMovement = &player->walk; + + if (isInitialCall) { + script->functionTemp[0].s = 0; + } + + if (script->functionTemp[0].s == 0) { + walkMovement->currentPos.x = player->currentPos.x; + walkMovement->currentPos.y = player->currentPos.y; + walkMovement->currentPos.z = player->currentPos.z; + script->functionTemp[0].s = 1; + } + + if (walkMovement->velocity > 0.0f) { + if (walkMovement->animJumpRise != 0) { + set_animation(0, 0, walkMovement->animJumpRise); + } + } + + if (walkMovement->velocity < 0.0f) { + if (walkMovement->animJumpFall != 0) { + set_animation(0, 0, walkMovement->animJumpFall); + } + } + + walkMovement->currentPos.y += walkMovement->velocity; + walkMovement->velocity -= walkMovement->acceleration; + + add_xz_vec3f(&walkMovement->currentPos, walkMovement->speed, walkMovement->angle); + + player->currentPos.x = walkMovement->currentPos.x; + player->currentPos.y = walkMovement->currentPos.y; + player->currentPos.z = walkMovement->currentPos.z; + + if (player->currentPos.y < 0.0f) { + player->currentPos.y = 0.0f; + + play_movement_dust_effects(2, player->currentPos.x, player->currentPos.y, player->currentPos.z, player->yaw); + sfx_play_sound_at_position(SOUND_SOFT_LAND, 0, player->currentPos.x, player->currentPos.y, player->currentPos.z); + + return ApiStatus_DONE1; + } + + return ApiStatus_BLOCK; +} INCLUDE_ASM(s32, "19FAF0", PlayerRunToGoal, ScriptInstance* script, s32 isInitialCall); diff --git a/src/25f00_len_940.c b/src/25f00_len_940.c index 7e5687bdc4..82dce9637f 100644 --- a/src/25f00_len_940.c +++ b/src/25f00_len_940.c @@ -3,8 +3,6 @@ #include "nu/nualsgi.h" #include "audio.h" -extern NUDMAState nuAuDmaState; - s32 D_80078170 = 0; NUAuPreNMIFunc nuAuPreNMIFunc = NULL; s32 nuAuDmaNext = 0; @@ -26,8 +24,89 @@ void nuAuPreNMIFuncSet(NUAuPreNMIFunc func) { INCLUDE_ASM(s32, "25f00_len_940", func_8004AE08); -s32 nuAuDmaCallBack(s32 addr, s32 len, void* state, s32 arg3); +extern OSMesgQueue* D_800A3640; +extern OSIoMesg D_800A3720[]; +extern NUDMABuffer* D_800A3BD4; + +// s32 nuAuDmaCallBack(s32 addr, s32 len, void* state, s32 arg3); +// WIP +#ifdef NON_MATCHING +s32 nuAuDmaCallBack(s32 addr, s32 len, void *state, u8 arg3) { + NUDMABuffer *temp_s1; + NUDMABuffer *temp_a1; + NUDMABuffer *firstFree; + OSIoMesg *mesg; + char *temp_s2; + s32 temp_s0; + s32 temp_s3; + char *new_var; + s32 startAddr; + + if (arg3 == 0) { + return osVirtualToPhysical(addr); + } + + temp_s1 = D_800A3BD4; + + while (temp_s1 != NULL) { + startAddr = temp_s1->startAddr; + + if (addr >= startAddr) { + if ((startAddr + 0x500) >= (addr + len)) { + temp_s1->frameCnt = nuAuFrameCounter; + return osVirtualToPhysical((temp_s1->ptr + addr) - temp_s1->startAddr); + } + + } else { + break; + } + + temp_s1 = temp_s1->node.next; + } + + firstFree = nuAuDmaState.firstFree; + if (firstFree == NULL) { + return osVirtualToPhysical(nuAuDmaState.firstUsed); + } + + new_var = firstFree->ptr; + nuAuDmaState.firstFree = firstFree; + alUnlink(&firstFree->node); + + if (temp_s1 != NULL) { + alLink(&firstFree->node, temp_s1); + } else { + temp_a1 = nuAuDmaState.firstUsed; + if (temp_a1 != NULL) { + nuAuDmaState.firstUsed = firstFree; + firstFree->node.next = &temp_a1->node; + firstFree->node.prev = NULL; + temp_a1->node.prev = &firstFree->node; + } else { + nuAuDmaState.firstUsed = firstFree; + firstFree->node.next = NULL; + firstFree->node.prev = NULL; + } + } + + temp_s0 = addr & 1; + temp_s3 = addr - temp_s0; + temp_s2 = new_var; + firstFree->startAddr = temp_s3; + mesg = &D_800A3720[nuAuDmaNext]; + nuAuDmaNext++; + firstFree->frameCnt = nuAuFrameCounter; + mesg->hdr.pri = 0; + mesg->hdr.retQueue = &D_800A3640; + mesg->dramAddr = temp_s2; + mesg->devAddr = temp_s3; + mesg->size = 0x500; + osEPiStartDma(carthandle, mesg, 0); + return osVirtualToPhysical(temp_s2) + temp_s0; +} +#else INCLUDE_ASM(s32, "25f00_len_940", nuAuDmaCallBack, s32 addr, s32 len, void* state, s32 arg3); +#endif ALDMAproc nuAuDmaNew(NUDMAState** state) { if (!nuAuDmaState.initialized) { diff --git a/src/26840_len_20d0.c b/src/26840_len_20d0.c index 6d5491d067..b0a33a0fd4 100644 --- a/src/26840_len_20d0.c +++ b/src/26840_len_20d0.c @@ -47,11 +47,11 @@ void func_8004B440(SoundManager* manager, u8 arg1, u8 arg2, UnkAl19E0* arg3, u8 sub->unk_7F = 0; } - for (i = 0; i < 4; i++) { + for (i = 0; i < ARRAY_COUNT(manager->unk_90); i++) { manager->unk_90[i] = 0; } - for (i = 0; i < 4; i++) { + for (i = 0; i < ARRAY_COUNT(manager->unk_A0); i++) { manager->unk_A0[i].x = 0; } @@ -170,6 +170,7 @@ INCLUDE_ASM(s32, "26840_len_20d0", func_8004C300); INCLUDE_ASM(void, "26840_len_20d0", snd_set_modifiers, SoundManager* manager, SoundSFXEntry* sfxEntry); +void snd_set_player_modifiers(SoundManager* manager, SoundSFXEntry* sfxEntry); INCLUDE_ASM(void, "26840_len_20d0", snd_set_player_modifiers, SoundManager* manager, SoundSFXEntry* sfxEntry); INCLUDE_ASM(s16, "26840_len_20d0", func_8004C444, SoundManager* manager); diff --git a/src/28910_len_5090.c b/src/28910_len_5090.c index 91d55b438e..414f593792 100644 --- a/src/28910_len_5090.c +++ b/src/28910_len_5090.c @@ -45,7 +45,10 @@ s32 func_8004DA0C(s32 songName) { return ret; } -INCLUDE_ASM(s32, "28910_len_5090", func_8004DA74); +void func_8004DA74(void) { + func_8004DAA8(D_8009A664); + func_8004DAA8(D_8009A5FC); +} void func_8004DAA8(BGMPlayer* player) { if (player->unk_221 != 0) { @@ -56,7 +59,17 @@ void func_8004DAA8(BGMPlayer* player) { } } -INCLUDE_ASM(s32, "28910_len_5090", func_8004DAE0); +s32 func_8004DAE0(s32 songName) { + if (songName != 0) { + BGMPlayer* player = snd_get_player_with_song_name(songName); + + if (player != NULL) { + return songName == player->songName; + } + return 2; + } + return 3; +} INCLUDE_ASM(s32, "28910_len_5090", func_8004DB28); @@ -287,11 +300,8 @@ void snd_BGMCmd_E4_MasterTempoFade(BGMPlayer* player, BGMPlayerTrack* track) { } void snd_BGMCmd_E5_MasterVolumeFade(BGMPlayer* player, BGMPlayerTrack* track) { - s32 temp_a1; - s32 temp_a2; - - temp_a1 = player->unk_D4.u16; - temp_a2 = player->unk_D6.u8[0] & 0x7F; + s32 temp_a1 = player->unk_D4.u16; + s32 temp_a2 = player->unk_D6.u8[0] & 0x7F; if (temp_a2 != 0) { temp_a2 = temp_a2 << 0x18; @@ -475,7 +485,10 @@ void func_8005083C(BGMPlayer* arg0, s32 arg1, s16 arg2, s8 arg3) { } } -INCLUDE_ASM(void, "28910_len_5090", func_8005087C, BGMPlayer* player, s32* arg1, s32 arg2); +void func_8005087C(BGMPlayer* player, s32* arg1, s32 arg2) { + player->unk_204 = arg1; + player->unk_232 = arg2; +} INCLUDE_ASM(s32, "28910_len_5090", func_80050888); diff --git a/src/80850_len_3060.c b/src/80850_len_3060.c index 2269c447a8..0fe8477eba 100644 --- a/src/80850_len_3060.c +++ b/src/80850_len_3060.c @@ -251,7 +251,6 @@ s32 get_stored_empty_count(void) { void enforce_hpfp_limits(void) { PlayerData* playerData = &gPlayerData; - PlayerData* playerData2 = &gPlayerData; playerData->curMaxHP = playerData->hardMaxHP + (is_ability_active(4) * 5); if (playerData->curMaxHP > 75) { @@ -261,12 +260,12 @@ void enforce_hpfp_limits(void) { playerData->curHP = playerData->curMaxHP; } - playerData2->curMaxFP = playerData2->hardMaxFP + (is_ability_active(12) * 5); - if (playerData2->curMaxFP > 75) { - playerData2->curMaxFP = 75; + playerData->curMaxFP = playerData->hardMaxFP + (is_ability_active(12) * 5); + if (playerData->curMaxFP > 75) { + playerData->curMaxFP = 75; } - if (playerData2->curFP > playerData2->curMaxFP) { - playerData2->curFP = playerData2->curMaxFP; + if (playerData->curFP > playerData->curMaxFP) { + playerData->curFP = playerData->curMaxFP; } } @@ -1124,7 +1123,6 @@ s8 add_star_points(s32 amt) { u8 add_star_pieces(s32 amt) { PlayerData* playerData = &gPlayerData; - PlayerData* playerData2 = &gPlayerData; s32 newSP = playerData->starPieces; newSP += amt; @@ -1140,29 +1138,23 @@ u8 add_star_pieces(s32 amt) { playerData->starPiecesCollected += amt; } - return playerData2->starPieces; + return playerData->starPieces; } void increment_max_SP() { - PlayerData* playerData = &gPlayerData; - - playerData->maxStarPower++; - playerData->specialBarsFilled = playerData->maxStarPower * 256; + gPlayerData.maxStarPower++; + gPlayerData.specialBarsFilled = gPlayerData.maxStarPower * 256; } void set_max_SP(s8 newMaxSP) { - PlayerData* playerData = &gPlayerData; - - playerData->maxStarPower = newMaxSP; - playerData->specialBarsFilled = newMaxSP * 256; + gPlayerData.maxStarPower = newMaxSP; + gPlayerData.specialBarsFilled = newMaxSP * 256; } void add_SP(s32 amt) { // TODO cleanup PlayerData* playerData = &gPlayerData; - PlayerData* playerData2 = &gPlayerData; UiStatus* uiStatus = &gUIStatus; - UiStatus* uiStatus2 = &gUIStatus; s32 phi_v1; s32 blah; @@ -1170,7 +1162,7 @@ void add_SP(s32 amt) { uiStatus->unk_57[1] = 60; phi_v1 = playerData->specialBarsFilled; - if (phi_v1 < 0) { + if (playerData->specialBarsFilled < 0) { phi_v1 = playerData->specialBarsFilled + 31; } uiStatus->unk_57[2] = phi_v1 >> 5; @@ -1182,7 +1174,7 @@ void add_SP(s32 amt) { playerData->specialBarsFilled = blah; } - uiStatus2->displaySP = playerData2->specialBarsFilled; + gUIStatus.displaySP = gPlayerData.specialBarsFilled; } s32 recover_fp(s32 amt) { @@ -1243,22 +1235,16 @@ void subtract_hp(s32 amt) { } s8 has_full_hp(void) { - PlayerData* playerData = &gPlayerData; - - return playerData->curMaxHP == playerData->curHP; + return gPlayerData.curMaxHP == gPlayerData.curHP; } s8 has_full_fp(void) { - PlayerData* playerData = &gPlayerData; - - return playerData->curMaxFP == playerData->curFP; + return gPlayerData.curMaxFP == gPlayerData.curFP; } s8 add_fortress_keys(s32 amt) { - PlayerData* playerData = &gPlayerData; - - playerData->fortressKeyCount += amt; - return playerData->fortressKeyCount; + gPlayerData.fortressKeyCount += amt; + return gPlayerData.fortressKeyCount; } s8 subtract_fortress_keys(s8 amt) { diff --git a/src/battle/area_kmr_part_3/447D50.c b/src/battle/area_kmr_part_3/447D50.c index fb3c3166a2..7ef97e5c15 100644 --- a/src/battle/area_kmr_part_3/447D50.c +++ b/src/battle/area_kmr_part_3/447D50.c @@ -12,7 +12,7 @@ ApiStatus func_802189DC_447E1C(ScriptInstance* script, s32 isInitialCall) { Bytecode* args = script->ptrReadPos; f32 posX = get_float_variable(script, *args++); f32 posY = get_float_variable(script, *args++); - MenuIcon* icon = create_icon(&D_80104A28); + HudElement* icon = create_icon(&D_80104A28); set_icon_render_pos(icon, posX, posY); set_hud_element_scale(icon, 1.5f); diff --git a/src/battle/item/coconut/lib.c b/src/battle/item/coconut/lib.c index 8a0b6980f0..a39499dbd7 100644 --- a/src/battle/item/coconut/lib.c +++ b/src/battle/item/coconut/lib.c @@ -1,7 +1,7 @@ #include "coconut.h" void* D_80108A64; // an image -static MenuIcon* D_802A1E80; +static HudElement* D_802A1E80; // Returns time to sleep for on $x. ApiStatus N(GiveRefund)(ScriptInstance* script, s32 isInitialCall) { diff --git a/src/battle/item/dizzy_dial/lib.c b/src/battle/item/dizzy_dial/lib.c index 005cc06369..7f25e97e70 100644 --- a/src/battle/item/dizzy_dial/lib.c +++ b/src/battle/item/dizzy_dial/lib.c @@ -2,7 +2,7 @@ extern s32 D_80108A64; static s32* D_802A1CD0; -static MenuIcon* D_802A1CD4; +static HudElement* D_802A1CD4; ApiStatus N(GiveRefund)(ScriptInstance* script, s32 isInitialCall) { BattleStatus* battleStatus = &gBattleStatus; diff --git a/src/battle/item/dried_shroom/lib.c b/src/battle/item/dried_shroom/lib.c index 544bd62305..d9c0a26532 100644 --- a/src/battle/item/dried_shroom/lib.c +++ b/src/battle/item/dried_shroom/lib.c @@ -1,7 +1,7 @@ #include "dried_shroom.h" extern s32 D_80108A64; -static MenuIcon* D_802A1A90; +static HudElement* D_802A1A90; ApiStatus N(GiveRefund)(ScriptInstance* script, s32 isInitialCall) { BattleStatus* battleStatus = &gBattleStatus; diff --git a/src/battle/item/dusty_hammer/lib.c b/src/battle/item/dusty_hammer/lib.c index 566548bdd8..ff026503df 100644 --- a/src/battle/item/dusty_hammer/lib.c +++ b/src/battle/item/dusty_hammer/lib.c @@ -1,7 +1,7 @@ #include "dusty_hammer.h" extern s32 D_80108A64; -static MenuIcon* D_802A1E80; +static HudElement* D_802A1E80; ApiStatus N(GiveRefund)(ScriptInstance* script, s32 isInitialCall) { BattleStatus* battleStatus = &gBattleStatus; diff --git a/src/battle/item/egg_missile/lib.c b/src/battle/item/egg_missile/lib.c index cdec1b1646..cb83310464 100644 --- a/src/battle/item/egg_missile/lib.c +++ b/src/battle/item/egg_missile/lib.c @@ -1,7 +1,7 @@ #include "egg_missile.h" extern s32 D_80108A64; -static MenuIcon* D_802A2890; +static HudElement* D_802A2890; ApiStatus N(GiveRefund)(ScriptInstance* script, s32 isInitialCall) { BattleStatus* battleStatus = &gBattleStatus; diff --git a/src/battle/item/electro_pop/lib.c b/src/battle/item/electro_pop/lib.c index 34df380c3e..1123cfd52b 100644 --- a/src/battle/item/electro_pop/lib.c +++ b/src/battle/item/electro_pop/lib.c @@ -1,7 +1,7 @@ #include "electro_pop.h" extern s32 D_80108A64; -static MenuIcon* D_802A1D60; +static HudElement* D_802A1D60; ApiStatus N(GiveRefund)(ScriptInstance* script, s32 isInitialCall) { BattleStatus* battleStatus = &gBattleStatus; @@ -106,7 +106,7 @@ ApiStatus N(func_802A1450_7309F0)(ScriptInstance* script, s32 isInitialCall) { ApiStatus N(AddFP)(ScriptInstance* script, s32 isInitialCall) { PlayerData* playerData = &gPlayerData; s32 amt = get_variable(script, *script->ptrReadPos); - + // @bug Should be playerData->curFP s32 newFP = playerData->curHP + amt; diff --git a/src/battle/item/fire_flower/lib.c b/src/battle/item/fire_flower/lib.c index 7918b90dc5..462b98bbcb 100644 --- a/src/battle/item/fire_flower/lib.c +++ b/src/battle/item/fire_flower/lib.c @@ -1,7 +1,7 @@ #include "fire_flower.h" extern s32 D_80108A64; -static MenuIcon* D_802A1D70; +static HudElement* D_802A1D70; ApiStatus N(GiveRefund)(ScriptInstance* script, s32 isInitialCall) { BattleStatus* battleStatus = &gBattleStatus; diff --git a/src/battle/item/food/lib.c b/src/battle/item/food/lib.c index 9f0e89d891..652f1f91b5 100644 --- a/src/battle/item/food/lib.c +++ b/src/battle/item/food/lib.c @@ -1,7 +1,7 @@ #include "food.h" extern s32 D_80108A64; -static MenuIcon* D_802A24D0; +static HudElement* D_802A24D0; ApiStatus N(GiveRefund)(ScriptInstance* script, s32 isInitialCall) { BattleStatus* battleStatus = &gBattleStatus; diff --git a/src/battle/item/fright_jar/lib.c b/src/battle/item/fright_jar/lib.c index beffdbd98e..3c728f2e08 100644 --- a/src/battle/item/fright_jar/lib.c +++ b/src/battle/item/fright_jar/lib.c @@ -1,7 +1,7 @@ #include "fright_jar.h" extern s32 D_80108A64; -static MenuIcon* D_802A1CA0; +static HudElement* D_802A1CA0; ApiStatus N(GiveRefund)(ScriptInstance* script, s32 isInitialCall) { BattleStatus* battleStatus = &gBattleStatus; diff --git a/src/battle/item/hustle_drink/lib.c b/src/battle/item/hustle_drink/lib.c index b37f90b706..bc956a3151 100644 --- a/src/battle/item/hustle_drink/lib.c +++ b/src/battle/item/hustle_drink/lib.c @@ -1,7 +1,7 @@ #include "hustle_drink.h" extern s32 D_80108A64; -static MenuIcon* D_802A1E70; +static HudElement* D_802A1E70; ApiStatus N(GiveRefund)(ScriptInstance* script, s32 isInitialCall) { BattleStatus* battleStatus = &gBattleStatus; diff --git a/src/battle/item/insecticide_herb/lib.c b/src/battle/item/insecticide_herb/lib.c index e9df393611..0f24e40243 100644 --- a/src/battle/item/insecticide_herb/lib.c +++ b/src/battle/item/insecticide_herb/lib.c @@ -1,7 +1,7 @@ #include "insecticide_herb.h" extern s32 D_80108A64; -static MenuIcon* D_802A21C0; +static HudElement* D_802A21C0; ApiStatus N(GiveRefund)(ScriptInstance* script, s32 isInitialCall) { BattleStatus* battleStatus = &gBattleStatus; diff --git a/src/battle/item/life_shroom/lib.c b/src/battle/item/life_shroom/lib.c index 356eff181a..e1604a36d6 100644 --- a/src/battle/item/life_shroom/lib.c +++ b/src/battle/item/life_shroom/lib.c @@ -1,7 +1,7 @@ #include "life_shroom.h" extern s32 D_80108A64; -static MenuIcon* D_802A21F0; +static HudElement* D_802A21F0; ApiStatus N(GiveRefund)(ScriptInstance* script, s32 isInitialCall) { BattleStatus* battleStatus = &gBattleStatus; diff --git a/src/battle/item/mushroom/lib.c b/src/battle/item/mushroom/lib.c index fc5fb5295a..1653dd9b8d 100644 --- a/src/battle/item/mushroom/lib.c +++ b/src/battle/item/mushroom/lib.c @@ -1,7 +1,7 @@ #include "mushroom.h" extern s32 D_80108A64; -static MenuIcon* D_802A2410; +static HudElement* D_802A2410; ApiStatus N(GiveRefund)(ScriptInstance* script, s32 isInitialCall) { BattleStatus* battleStatus = &gBattleStatus; diff --git a/src/battle/item/mystery/lib.c b/src/battle/item/mystery/lib.c index c9ddb60b5b..2786d2eea4 100644 --- a/src/battle/item/mystery/lib.c +++ b/src/battle/item/mystery/lib.c @@ -1,7 +1,7 @@ #include "mystery.h" extern s32 D_80108A64; -static MenuIcon* D_802A25C0; +static HudElement* D_802A25C0; ApiStatus N(GiveRefund)(ScriptInstance* script, s32 isInitialCall) { BattleStatus* battleStatus = &gBattleStatus; @@ -57,12 +57,12 @@ ApiStatus N(GiveRefundCleanup)(ScriptInstance* script, s32 isInitialCall) { #ifdef NON_MATCHING extern s32 D_802A25E4; -extern MenuIcon* D_802A25C8; +extern HudElement* D_802A25C8; extern s32 D_802A25EC; void N(func_802A123C_72C7EC)(void) { s32 i; - MenuIcon** ptr; + HudElement** ptr; s32 var; s32* var2; @@ -102,7 +102,7 @@ extern s32 D_802A25F0; extern s32 D_802A25F4; extern s32 D_802A25F8; extern s16** D_802A25FC; -extern MenuIcon** D_802A25C8; +extern HudElement** D_802A25C8; extern struct N(tempStc) D_8008A680[100]; ApiStatus N(func_802A13E4_72C994)(ScriptInstance* script, s32 isInitialCall) { @@ -118,8 +118,8 @@ ApiStatus N(func_802A13E4_72C994)(ScriptInstance* script, s32 isInitialCall) { s32 i; f32 t0; f32 t1; - MenuIcon* icon; - MenuIcon** iconPtr; + HudElement* icon; + HudElement** iconPtr; struct N(tempStc)* ic; StaticItem* itemTable; @@ -235,7 +235,7 @@ ApiStatus N(func_802A13E4_72C994)(ScriptInstance* script, s32 isInitialCall) { s32* F4ptr = &D_802A25F4; s32 i; s16 g; - MenuIcon** iconPtr; + HudElement** iconPtr; if (*F4ptr != 0) { *F4ptr -= 1; diff --git a/src/battle/item/pebble/lib.c b/src/battle/item/pebble/lib.c index 0f432612ff..1326977fb1 100644 --- a/src/battle/item/pebble/lib.c +++ b/src/battle/item/pebble/lib.c @@ -1,7 +1,7 @@ #include "pebble.h" extern s32 D_80108A64; -static MenuIcon* D_802A1E80; +static HudElement* D_802A1E80; ApiStatus N(GiveRefund)(ScriptInstance* script, s32 isInitialCall) { BattleStatus* battleStatus = &gBattleStatus; diff --git a/src/battle/item/please_come_back/lib.c b/src/battle/item/please_come_back/lib.c index 41fa6bc7e3..ce48ab7cc0 100644 --- a/src/battle/item/please_come_back/lib.c +++ b/src/battle/item/please_come_back/lib.c @@ -1,7 +1,7 @@ #include "please_come_back.h" extern s32 D_80108A64; -static MenuIcon* D_802A18E0; +static HudElement* D_802A18E0; ApiStatus N(GiveRefund)(ScriptInstance* script, s32 isInitialCall) { BattleStatus* battleStatus = &gBattleStatus; diff --git a/src/battle/item/pow_block/lib.c b/src/battle/item/pow_block/lib.c index a028279e6d..7baebd447b 100644 --- a/src/battle/item/pow_block/lib.c +++ b/src/battle/item/pow_block/lib.c @@ -1,7 +1,7 @@ #include "pow_block.h" extern s32 D_80108A64; -static MenuIcon* D_802A2120; +static HudElement* D_802A2120; ApiStatus N(GiveRefund)(ScriptInstance* script, s32 isInitialCall) { BattleStatus* battleStatus = &gBattleStatus; diff --git a/src/battle/item/repel_gel/lib.c b/src/battle/item/repel_gel/lib.c index dce1f7cb7b..481b61d35c 100644 --- a/src/battle/item/repel_gel/lib.c +++ b/src/battle/item/repel_gel/lib.c @@ -1,7 +1,7 @@ #include "repel_gel.h" extern s32 D_80108A64; -static MenuIcon* D_802A19C0; +static HudElement* D_802A19C0; ApiStatus N(GiveRefund)(ScriptInstance* script, s32 isInitialCall) { BattleStatus* battleStatus = &gBattleStatus; diff --git a/src/battle/item/shooting_star/lib.c b/src/battle/item/shooting_star/lib.c index 568278d066..0f30cfbc91 100644 --- a/src/battle/item/shooting_star/lib.c +++ b/src/battle/item/shooting_star/lib.c @@ -1,7 +1,7 @@ #include "shooting_star.h" extern s32 D_80108A64; -static MenuIcon* D_802A1EE0; +static HudElement* D_802A1EE0; ApiStatus N(GiveRefund)(ScriptInstance* script, s32 isInitialCall) { BattleStatus* battleStatus = &gBattleStatus; diff --git a/src/battle/item/sleepy_sheep/lib.c b/src/battle/item/sleepy_sheep/lib.c index c0c30da648..930213c509 100644 --- a/src/battle/item/sleepy_sheep/lib.c +++ b/src/battle/item/sleepy_sheep/lib.c @@ -1,7 +1,7 @@ #include "sleepy_sheep.h" extern s32 D_80108A64; -static MenuIcon* D_802A3F50; +static HudElement* D_802A3F50; ApiStatus N(GiveRefund)(ScriptInstance* script, s32 isInitialCall) { BattleStatus* battleStatus = &gBattleStatus; diff --git a/src/battle/item/snowman_doll/lib.c b/src/battle/item/snowman_doll/lib.c index d3a9c0e5d8..ddad27f4cc 100644 --- a/src/battle/item/snowman_doll/lib.c +++ b/src/battle/item/snowman_doll/lib.c @@ -1,7 +1,7 @@ #include "snowman_doll.h" extern s32 D_80108A64; -static MenuIcon* D_802A1EB0; +static HudElement* D_802A1EB0; ApiStatus N(GiveRefund)(ScriptInstance* script, s32 isInitialCall) { BattleStatus* battleStatus = &gBattleStatus; diff --git a/src/battle/item/stone_cap/lib.c b/src/battle/item/stone_cap/lib.c index e3a174dd86..776f36d956 100644 --- a/src/battle/item/stone_cap/lib.c +++ b/src/battle/item/stone_cap/lib.c @@ -1,7 +1,7 @@ #include "stone_cap.h" extern s32 D_80108A64; -static MenuIcon* D_802A1A60; +static HudElement* D_802A1A60; ApiStatus N(GiveRefund)(ScriptInstance* script, s32 isInitialCall) { BattleStatus* battleStatus = &gBattleStatus; diff --git a/src/battle/item/stop_watch/lib.c b/src/battle/item/stop_watch/lib.c index 7d481c9bd4..95f744abd6 100644 --- a/src/battle/item/stop_watch/lib.c +++ b/src/battle/item/stop_watch/lib.c @@ -1,7 +1,7 @@ #include "stop_watch.h" extern s32 D_80108A64; -static MenuIcon* D_802A1B40; +static HudElement* D_802A1B40; ApiStatus N(GiveRefund)(ScriptInstance* script, s32 isInitialCall) { BattleStatus* battleStatus = &gBattleStatus; diff --git a/src/battle/item/strange_cake/lib.c b/src/battle/item/strange_cake/lib.c index 2164998da8..923302759d 100644 --- a/src/battle/item/strange_cake/lib.c +++ b/src/battle/item/strange_cake/lib.c @@ -1,7 +1,7 @@ #include "strange_cake.h" extern s32 D_80108A64; -static MenuIcon* D_802A2DD0; +static HudElement* D_802A2DD0; ApiStatus N(GiveRefund)(ScriptInstance* script, s32 isInitialCall) { BattleStatus* battleStatus = &gBattleStatus; @@ -57,12 +57,12 @@ ApiStatus N(GiveRefundCleanup)(ScriptInstance* script, s32 isInitialCall) { #ifdef NON_MATCHING extern s32 D_802A25E4; -extern MenuIcon* D_802A2DF4; +extern HudElement* D_802A2DF4; extern s32 D_802A2DD8; ApiStatus N(func_802A123C_73153C)(ScriptInstance* script, s32 isInitialCall) { s32 i; - MenuIcon** ptr; + HudElement** ptr; s32 var; s32* var2; @@ -101,7 +101,7 @@ extern s32 D_802A2DF8; extern s32 D_802A2DFC; extern s32 D_802A2E00; extern s32* D_802A2DD8; -extern MenuIcon** D_802A25C8; +extern HudElement** D_802A25C8; s32 N(D_802A2848_732B48)[] = { 0x802A27F8, 0x802A2820, 0x802A27D0, 0x802A27F8 @@ -121,7 +121,7 @@ ApiStatus N(func_802A13E4_7316E4)(ScriptInstance* script, s32 isInitialCall) { switch (D_802A2DEC) { case 0: { s32 i; - MenuIcon** iconPtr; + HudElement** iconPtr; D_802A2E00 = create_dynamic_entity_frontUI(NULL, func_802A123C_73153C); i = rand_int(13000); @@ -132,7 +132,7 @@ ApiStatus N(func_802A13E4_7316E4)(ScriptInstance* script, s32 isInitialCall) { for (i = 0; i < 5; i++) { s32* B48Ptr = &N(D_802A2848_732B48); s32* B58Ptr = &N(D_802A2858_732B58); - MenuIcon* icon = create_icon(*(B48Ptr + * (B58Ptr + i))); + HudElement* icon = create_icon(*(B48Ptr + * (B58Ptr + i))); *(&D_802A2DD8 + i) = icon; set_icon_flags(icon, 0x80); @@ -227,7 +227,7 @@ ApiStatus N(func_802A13E4_7316E4)(ScriptInstance* script, s32 isInitialCall) { s32* F4ptr = &D_802A2DFC; s32 i; s16 g; - MenuIcon** iconPtr; + HudElement** iconPtr; if (*F4ptr != 0) { *F4ptr -= 1; diff --git a/src/battle/item/super_soda/lib.c b/src/battle/item/super_soda/lib.c index d1723fad9f..15d7358b85 100644 --- a/src/battle/item/super_soda/lib.c +++ b/src/battle/item/super_soda/lib.c @@ -1,7 +1,7 @@ #include "super_soda.h" extern s32 D_80108A64; -static MenuIcon* D_802A2280; +static HudElement* D_802A2280; ApiStatus N(GiveRefund)(ScriptInstance* script, s32 isInitialCall) { BattleStatus* battleStatus = &gBattleStatus; diff --git a/src/battle/item/tasty_tonic/lib.c b/src/battle/item/tasty_tonic/lib.c index d1c641b92c..34c3c9a9cf 100644 --- a/src/battle/item/tasty_tonic/lib.c +++ b/src/battle/item/tasty_tonic/lib.c @@ -1,7 +1,7 @@ #include "tasty_tonic.h" extern s32 D_80108A64; -static MenuIcon* D_802A1B40; +static HudElement* D_802A1B40; ApiStatus N(GiveRefund)(ScriptInstance* script, s32 isInitialCall) { BattleStatus* battleStatus = &gBattleStatus; diff --git a/src/battle/item/thunder_bolt/lib.c b/src/battle/item/thunder_bolt/lib.c index 5e1148858c..6809ced607 100644 --- a/src/battle/item/thunder_bolt/lib.c +++ b/src/battle/item/thunder_bolt/lib.c @@ -1,7 +1,7 @@ #include "thunder_bolt.h" extern s32 D_80108A64; -static MenuIcon* D_802A1C40; +static HudElement* D_802A1C40; ApiStatus N(GiveRefund)(ScriptInstance* script, s32 isInitialCall) { BattleStatus* battleStatus = &gBattleStatus; diff --git a/src/battle/item/thunder_rage/lib.c b/src/battle/item/thunder_rage/lib.c index da4c7ffeb9..c0dae201ab 100644 --- a/src/battle/item/thunder_rage/lib.c +++ b/src/battle/item/thunder_rage/lib.c @@ -1,7 +1,7 @@ #include "thunder_rage.h" extern s32 D_80108A64; -static MenuIcon* D_802A1C90; +static HudElement* D_802A1C90; ApiStatus N(GiveRefund)(ScriptInstance* script, s32 isInitialCall) { BattleStatus* battleStatus = &gBattleStatus; diff --git a/src/battle/item/ultra_shroom/lib.c b/src/battle/item/ultra_shroom/lib.c index 7ebee5a6a5..467fb39867 100644 --- a/src/battle/item/ultra_shroom/lib.c +++ b/src/battle/item/ultra_shroom/lib.c @@ -1,7 +1,7 @@ #include "ultra_shroom.h" extern s32 D_80108A64; -static MenuIcon* D_802A1AC0; +static HudElement* D_802A1AC0; ApiStatus N(GiveRefund)(ScriptInstance* script, s32 isInitialCall) { BattleStatus* battleStatus = &gBattleStatus; diff --git a/src/battle/item/unknown_item/lib.c b/src/battle/item/unknown_item/lib.c index 37f1501feb..de5cd3528e 100644 --- a/src/battle/item/unknown_item/lib.c +++ b/src/battle/item/unknown_item/lib.c @@ -1,7 +1,7 @@ #include "unknown_item.h" extern s32 D_80108A64; -static MenuIcon* D_802A1AA0; +static HudElement* D_802A1AA0; ApiStatus N(GiveRefund)(ScriptInstance* script, s32 isInitialCall) { BattleStatus* battleStatus = &gBattleStatus; diff --git a/src/battle/item/volt_shroom/lib.c b/src/battle/item/volt_shroom/lib.c index d4ba8b9dc9..1954b9bdc6 100644 --- a/src/battle/item/volt_shroom/lib.c +++ b/src/battle/item/volt_shroom/lib.c @@ -1,7 +1,7 @@ #include "volt_shroom.h" extern s32 D_80108A64; -static MenuIcon* D_802A19B0; +static HudElement* D_802A19B0; ApiStatus N(GiveRefund)(ScriptInstance* script, s32 isInitialCall) { BattleStatus* battleStatus = &gBattleStatus; diff --git a/src/battle/partner/6F10E0.c b/src/battle/partner/6F10E0.c index b570ae4bd8..bc8f6dc471 100644 --- a/src/battle/partner/6F10E0.c +++ b/src/battle/partner/6F10E0.c @@ -55,11 +55,11 @@ ApiStatus func_80238A20_6F1B00(ScriptInstance* script, s32 isInitialCall) { } if (partnerActor->walk.velocity > 0.0f) { - set_animation(0x100, 0, partnerActor->animJumpRise); + set_animation(0x100, 0, partnerActor->walk.animJumpRise); } if (partnerActor->walk.velocity < 0.0f) { - set_animation(0x100, 0, partnerActor->animJumpFall); + set_animation(0x100, 0, partnerActor->walk.animJumpFall); } partnerActor->walk.currentPos.y = (partnerActor->walk.currentPos.y + partnerActor->walk.velocity); @@ -74,7 +74,7 @@ ApiStatus func_80238A20_6F1B00(ScriptInstance* script, s32 isInitialCall) { play_movement_dust_effects(2, partnerActor->currentPos.x, partnerActor->currentPos.y, partnerActor->currentPos.z, partnerActor->yaw); - sfx_play_sound(0x148); + sfx_play_sound(SOUND_SOFT_LAND); return ApiStatus_DONE1; } diff --git a/src/d5a50_len_5fd0.c b/src/d5a50_len_5fd0.c index 328c0b78f3..7ed8dffa12 100644 --- a/src/d5a50_len_5fd0.c +++ b/src/d5a50_len_5fd0.c @@ -18,6 +18,7 @@ s32 D_8014F0C8[] = { 0xFFF40000, 0x00000000, 0x08000800, 0x000000FF, 0x00330000, }; s32 D_8014F110[] = { 0x00000000, 0x00000000, 0x00000000, 0x00000000 }; +extern s32 D_801512B4; INCLUDE_ASM(s32, "d5a50_len_5fd0", func_8013F350); @@ -29,7 +30,7 @@ INCLUDE_ASM(s32, "d5a50_len_5fd0", init_menu_icon_list); INCLUDE_ASM(s32, "d5a50_len_5fd0", func_801413F8); -INCLUDE_ASM(MenuIcon*, "d5a50_len_5fd0", create_icon, s32* iconIndex); +INCLUDE_ASM(HudElement*, "d5a50_len_5fd0", create_icon, s32* iconIndex); INCLUDE_ASM(s32, "d5a50_len_5fd0", update_menu_icons); @@ -63,21 +64,47 @@ INCLUDE_ASM(s32, "d5a50_len_5fd0", draw_icon_2); INCLUDE_ASM(s32, "d5a50_len_5fd0", set_menu_icon_script); -INCLUDE_ASM(s32, "d5a50_len_5fd0", get_menu_icon_script); +s32* get_menu_icon_script(s32 arg0) { + return gHudElementList[arg0 & ~0x800]->startReadPos; +} -INCLUDE_ASM(s32, "d5a50_len_5fd0", get_menu_icon); +HudElement* get_menu_icon(s32 arg0) { + return gHudElementList[arg0 & ~0x800]; +} -INCLUDE_ASM(s32, "d5a50_len_5fd0", free_icon, MenuIcon* iconIndex); +void free_icon(s32 arg0) { + if (gHudElementList[arg0 & ~0x800]->flags & 0x10000) { + func_80145108(arg0 & ~0x800); + } -INCLUDE_ASM(void, "d5a50_len_5fd0", set_icon_render_pos, MenuIcon* iconIndex, s32 posX, s32 posY); + heap_free(gHudElementList[arg0 & ~0x800]); + gHudElementList[arg0 & ~0x800] = NULL; + D_801512B4--; +} -INCLUDE_ASM(s32, "d5a50_len_5fd0", get_icon_render_pos); +void set_icon_render_pos(s32 iconIndex, s32 posX, s32 posY) { + HudElement* hudElement = gHudElementList[iconIndex & ~0x800]; + + hudElement->renderPosX = posX; + hudElement->renderPosY = posY; +} + +void get_icon_render_pos(s32 iconIndex, s32* x, s32* y) { + HudElement* hudElement = gHudElementList[iconIndex & ~0x800]; + + *x = hudElement->renderPosX; + *y = hudElement->renderPosY; +} INCLUDE_ASM(s32, "d5a50_len_5fd0", func_801449DC); -INCLUDE_ASM(s32, "d5a50_len_5fd0", set_icon_flags); +void set_icon_flags(s32 iconIndex, s32 flags) { + gHudElementList[iconIndex & ~0x800]->flags |= flags; +} -INCLUDE_ASM(s32, "d5a50_len_5fd0", clear_icon_flags); +void clear_icon_flags(s32 iconIndex, s32 flags) { + gHudElementList[iconIndex & ~0x800]->flags &= ~flags; +} INCLUDE_ASM(s32, "d5a50_len_5fd0", func_80144A5C); @@ -89,9 +116,24 @@ INCLUDE_ASM(s32, "d5a50_len_5fd0", func_80144E4C); INCLUDE_ASM(s32, "d5a50_len_5fd0", func_80144E74); -INCLUDE_ASM(s32, "d5a50_len_5fd0", icon_set_opacity); +void icon_set_opacity(s32 iconIndex, s32 opacity) { + HudElement* hudElement = gHudElementList[iconIndex & ~0x800]; -INCLUDE_ASM(s32, "d5a50_len_5fd0", icon_set_tint); + hudElement->flags |= 0x20; + hudElement->opacity = opacity; + + if (opacity == 255) { + hudElement->flags &= ~0x20; + } +} + +void icon_set_tint(s32 iconIndex, s8 tint1, s8 tint2, s8 tint3) { + HudElement* hudElement = gHudElementList[iconIndex & ~0x800]; + + hudElement->tint[0] = tint1; + hudElement->tint[1] = tint2; + hudElement->tint[2] = tint3; +} INCLUDE_ASM(s32, "d5a50_len_5fd0", func_80144F28); diff --git a/tools/m2ctx.py b/tools/m2ctx.py index ff11145881..9ab67d1ab3 100755 --- a/tools/m2ctx.py +++ b/tools/m2ctx.py @@ -43,8 +43,7 @@ def main(): arg = sys.argv[1] if arg == "-h" or arg == "--help": sys.exit("Usage: ./m2ctx.py path/to/file.c\n" \ - "or ./m2ctx.py (from an actor or gamestate's asm dir)\n" \ - "Output will be saved in oot/ctx.c") + "Output will be saved in the project root as ctx.c") c_file_path = Path.cwd() / sys.argv[1] else: this_dir = Path.cwd() diff --git a/ver/us/asm/nonmatchings/168590/func_80248170.s b/ver/us/asm/nonmatchings/168590/func_80248170.s deleted file mode 100644 index a3e54428d3..0000000000 --- a/ver/us/asm/nonmatchings/168590/func_80248170.s +++ /dev/null @@ -1,23 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80248170 -/* 1689D0 80248170 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 1689D4 80248174 3C038016 */ lui $v1, %hi(gUIPanels) -/* 1689D8 80248178 24639D50 */ addiu $v1, $v1, %lo(gUIPanels) -/* 1689DC 8024817C 00041140 */ sll $v0, $a0, 5 -/* 1689E0 80248180 00432821 */ addu $a1, $v0, $v1 -/* 1689E4 80248184 AFBF0010 */ sw $ra, 0x10($sp) -/* 1689E8 80248188 90A3001C */ lbu $v1, 0x1c($a1) -/* 1689EC 8024818C 24020008 */ addiu $v0, $zero, 8 -/* 1689F0 80248190 14620006 */ bne $v1, $v0, .L802481AC -/* 1689F4 80248194 00000000 */ nop -/* 1689F8 80248198 90A20000 */ lbu $v0, ($a1) -/* 1689FC 8024819C 304200F7 */ andi $v0, $v0, 0xf7 -/* 168A00 802481A0 A0A20000 */ sb $v0, ($a1) -/* 168A04 802481A4 0C051F9F */ jal set_window_update -/* 168A08 802481A8 24050001 */ addiu $a1, $zero, 1 -.L802481AC: -/* 168A0C 802481AC 8FBF0010 */ lw $ra, 0x10($sp) -/* 168A10 802481B0 03E00008 */ jr $ra -/* 168A14 802481B4 27BD0018 */ addiu $sp, $sp, 0x18 diff --git a/ver/us/asm/nonmatchings/19FAF0/PlayerLandJump.s b/ver/us/asm/nonmatchings/19FAF0/PlayerLandJump.s deleted file mode 100644 index 96d71aae79..0000000000 --- a/ver/us/asm/nonmatchings/19FAF0/PlayerLandJump.s +++ /dev/null @@ -1,98 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel PlayerLandJump -/* 1A23E4 80273B04 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 1A23E8 80273B08 AFB00018 */ sw $s0, 0x18($sp) -/* 1A23EC 80273B0C 3C10800E */ lui $s0, %hi(gBattleStatus+0xD8) -/* 1A23F0 80273B10 8E10C148 */ lw $s0, %lo(gBattleStatus+0xD8)($s0) -/* 1A23F4 80273B14 AFBF0020 */ sw $ra, 0x20($sp) -/* 1A23F8 80273B18 AFB1001C */ sw $s1, 0x1c($sp) -/* 1A23FC 80273B1C 10A00002 */ beqz $a1, .L80273B28 -/* 1A2400 80273B20 2611000C */ addiu $s1, $s0, 0xc -/* 1A2404 80273B24 AC800070 */ sw $zero, 0x70($a0) -.L80273B28: -/* 1A2408 80273B28 8C820070 */ lw $v0, 0x70($a0) -/* 1A240C 80273B2C 14400008 */ bnez $v0, .L80273B50 -/* 1A2410 80273B30 24020001 */ addiu $v0, $zero, 1 -/* 1A2414 80273B34 C6000144 */ lwc1 $f0, 0x144($s0) -/* 1A2418 80273B38 C6020148 */ lwc1 $f2, 0x148($s0) -/* 1A241C 80273B3C C604014C */ lwc1 $f4, 0x14c($s0) -/* 1A2420 80273B40 E600000C */ swc1 $f0, 0xc($s0) -/* 1A2424 80273B44 E6020010 */ swc1 $f2, 0x10($s0) -/* 1A2428 80273B48 E6040014 */ swc1 $f4, 0x14($s0) -/* 1A242C 80273B4C AC820070 */ sw $v0, 0x70($a0) -.L80273B50: -/* 1A2430 80273B50 C6020050 */ lwc1 $f2, 0x50($s0) -/* 1A2434 80273B54 44800000 */ mtc1 $zero, $f0 -/* 1A2438 80273B58 00000000 */ nop -/* 1A243C 80273B5C 4602003C */ c.lt.s $f0, $f2 -/* 1A2440 80273B60 00000000 */ nop -/* 1A2444 80273B64 45000006 */ bc1f .L80273B80 -/* 1A2448 80273B68 00000000 */ nop -/* 1A244C 80273B6C 8E060064 */ lw $a2, 0x64($s0) -/* 1A2450 80273B70 10C00003 */ beqz $a2, .L80273B80 -/* 1A2454 80273B74 0000202D */ daddu $a0, $zero, $zero -/* 1A2458 80273B78 0C098F3F */ jal set_animation -/* 1A245C 80273B7C 0080282D */ daddu $a1, $a0, $zero -.L80273B80: -/* 1A2460 80273B80 C6220044 */ lwc1 $f2, 0x44($s1) -/* 1A2464 80273B84 44800000 */ mtc1 $zero, $f0 -/* 1A2468 80273B88 00000000 */ nop -/* 1A246C 80273B8C 4600103C */ c.lt.s $f2, $f0 -/* 1A2470 80273B90 00000000 */ nop -/* 1A2474 80273B94 45000006 */ bc1f .L80273BB0 -/* 1A2478 80273B98 00000000 */ nop -/* 1A247C 80273B9C 8E26005C */ lw $a2, 0x5c($s1) -/* 1A2480 80273BA0 10C00003 */ beqz $a2, .L80273BB0 -/* 1A2484 80273BA4 0000202D */ daddu $a0, $zero, $zero -/* 1A2488 80273BA8 0C098F3F */ jal set_animation -/* 1A248C 80273BAC 0080282D */ daddu $a1, $a0, $zero -.L80273BB0: -/* 1A2490 80273BB0 C6240004 */ lwc1 $f4, 4($s1) -/* 1A2494 80273BB4 C6200044 */ lwc1 $f0, 0x44($s1) -/* 1A2498 80273BB8 8E250040 */ lw $a1, 0x40($s1) -/* 1A249C 80273BBC 46002100 */ add.s $f4, $f4, $f0 -/* 1A24A0 80273BC0 C622003C */ lwc1 $f2, 0x3c($s1) -/* 1A24A4 80273BC4 8E260048 */ lw $a2, 0x48($s1) -/* 1A24A8 80273BC8 46020001 */ sub.s $f0, $f0, $f2 -/* 1A24AC 80273BCC 0220202D */ daddu $a0, $s1, $zero -/* 1A24B0 80273BD0 E6240004 */ swc1 $f4, 4($s1) -/* 1A24B4 80273BD4 0C09904A */ jal add_xz_vec3f -/* 1A24B8 80273BD8 E6200044 */ swc1 $f0, 0x44($s1) -/* 1A24BC 80273BDC C6200000 */ lwc1 $f0, ($s1) -/* 1A24C0 80273BE0 44802000 */ mtc1 $zero, $f4 -/* 1A24C4 80273BE4 E6000144 */ swc1 $f0, 0x144($s0) -/* 1A24C8 80273BE8 C6200004 */ lwc1 $f0, 4($s1) -/* 1A24CC 80273BEC E6000148 */ swc1 $f0, 0x148($s0) -/* 1A24D0 80273BF0 46000086 */ mov.s $f2, $f0 -/* 1A24D4 80273BF4 C6200008 */ lwc1 $f0, 8($s1) -/* 1A24D8 80273BF8 4604103C */ c.lt.s $f2, $f4 -/* 1A24DC 80273BFC 00000000 */ nop -/* 1A24E0 80273C00 45010003 */ bc1t .L80273C10 -/* 1A24E4 80273C04 E600014C */ swc1 $f0, 0x14c($s0) -/* 1A24E8 80273C08 0809CF14 */ j .L80273C50 -/* 1A24EC 80273C0C 0000102D */ daddu $v0, $zero, $zero -.L80273C10: -/* 1A24F0 80273C10 C600018C */ lwc1 $f0, 0x18c($s0) -/* 1A24F4 80273C14 E6040148 */ swc1 $f4, 0x148($s0) -/* 1A24F8 80273C18 E7A00010 */ swc1 $f0, 0x10($sp) -/* 1A24FC 80273C1C 8E050144 */ lw $a1, 0x144($s0) -/* 1A2500 80273C20 8E060148 */ lw $a2, 0x148($s0) -/* 1A2504 80273C24 8E07014C */ lw $a3, 0x14c($s0) -/* 1A2508 80273C28 0C0990BC */ jal play_movement_dust_effects -/* 1A250C 80273C2C 24040002 */ addiu $a0, $zero, 2 -/* 1A2510 80273C30 C600014C */ lwc1 $f0, 0x14c($s0) -/* 1A2514 80273C34 24040148 */ addiu $a0, $zero, 0x148 -/* 1A2518 80273C38 E7A00010 */ swc1 $f0, 0x10($sp) -/* 1A251C 80273C3C 8E060144 */ lw $a2, 0x144($s0) -/* 1A2520 80273C40 8E070148 */ lw $a3, 0x148($s0) -/* 1A2524 80273C44 0C052757 */ jal sfx_play_sound_at_position -/* 1A2528 80273C48 0000282D */ daddu $a1, $zero, $zero -/* 1A252C 80273C4C 24020001 */ addiu $v0, $zero, 1 -.L80273C50: -/* 1A2530 80273C50 8FBF0020 */ lw $ra, 0x20($sp) -/* 1A2534 80273C54 8FB1001C */ lw $s1, 0x1c($sp) -/* 1A2538 80273C58 8FB00018 */ lw $s0, 0x18($sp) -/* 1A253C 80273C5C 03E00008 */ jr $ra -/* 1A2540 80273C60 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/ver/us/asm/nonmatchings/28910_len_5090/func_8004DA74.s b/ver/us/asm/nonmatchings/28910_len_5090/func_8004DA74.s deleted file mode 100644 index ddceeab432..0000000000 --- a/ver/us/asm/nonmatchings/28910_len_5090/func_8004DA74.s +++ /dev/null @@ -1,17 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_8004DA74 -/* 28E74 8004DA74 3C04800A */ lui $a0, %hi(D_8009A664) -/* 28E78 8004DA78 8C84A664 */ lw $a0, %lo(D_8009A664)($a0) -/* 28E7C 8004DA7C 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 28E80 8004DA80 AFBF0010 */ sw $ra, 0x10($sp) -/* 28E84 8004DA84 0C0136AA */ jal func_8004DAA8 -/* 28E88 8004DA88 00000000 */ nop -/* 28E8C 8004DA8C 3C04800A */ lui $a0, %hi(D_8009A5FC) -/* 28E90 8004DA90 8C84A5FC */ lw $a0, %lo(D_8009A5FC)($a0) -/* 28E94 8004DA94 0C0136AA */ jal func_8004DAA8 -/* 28E98 8004DA98 00000000 */ nop -/* 28E9C 8004DA9C 8FBF0010 */ lw $ra, 0x10($sp) -/* 28EA0 8004DAA0 03E00008 */ jr $ra -/* 28EA4 8004DAA4 27BD0018 */ addiu $sp, $sp, 0x18 diff --git a/ver/us/asm/nonmatchings/28910_len_5090/func_8004DAE0.s b/ver/us/asm/nonmatchings/28910_len_5090/func_8004DAE0.s deleted file mode 100644 index 435316df78..0000000000 --- a/ver/us/asm/nonmatchings/28910_len_5090/func_8004DAE0.s +++ /dev/null @@ -1,24 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_8004DAE0 -/* 28EE0 8004DAE0 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 28EE4 8004DAE4 AFB00010 */ sw $s0, 0x10($sp) -/* 28EE8 8004DAE8 0080802D */ daddu $s0, $a0, $zero -/* 28EEC 8004DAEC 12000009 */ beqz $s0, .L8004DB14 -/* 28EF0 8004DAF0 AFBF0014 */ sw $ra, 0x14($sp) -/* 28EF4 8004DAF4 0C0135E5 */ jal snd_get_player_with_song_name -/* 28EF8 8004DAF8 00000000 */ nop -/* 28EFC 8004DAFC 50400006 */ beql $v0, $zero, .L8004DB18 -/* 28F00 8004DB00 24020002 */ addiu $v0, $zero, 2 -/* 28F04 8004DB04 8C42001C */ lw $v0, 0x1c($v0) -/* 28F08 8004DB08 02021026 */ xor $v0, $s0, $v0 -/* 28F0C 8004DB0C 080136C6 */ j .L8004DB18 -/* 28F10 8004DB10 2C420001 */ sltiu $v0, $v0, 1 -.L8004DB14: -/* 28F14 8004DB14 24020003 */ addiu $v0, $zero, 3 -.L8004DB18: -/* 28F18 8004DB18 8FBF0014 */ lw $ra, 0x14($sp) -/* 28F1C 8004DB1C 8FB00010 */ lw $s0, 0x10($sp) -/* 28F20 8004DB20 03E00008 */ jr $ra -/* 28F24 8004DB24 27BD0018 */ addiu $sp, $sp, 0x18 diff --git a/ver/us/asm/nonmatchings/28910_len_5090/func_8005087C.s b/ver/us/asm/nonmatchings/28910_len_5090/func_8005087C.s deleted file mode 100644 index f66940b09c..0000000000 --- a/ver/us/asm/nonmatchings/28910_len_5090/func_8005087C.s +++ /dev/null @@ -1,7 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_8005087C -/* 2BC7C 8005087C AC850204 */ sw $a1, 0x204($a0) -/* 2BC80 80050880 03E00008 */ jr $ra -/* 2BC84 80050884 A0860232 */ sb $a2, 0x232($a0) diff --git a/ver/us/asm/nonmatchings/d5a50_len_5fd0/clear_icon_flags.s b/ver/us/asm/nonmatchings/d5a50_len_5fd0/clear_icon_flags.s deleted file mode 100644 index 78f9049225..0000000000 --- a/ver/us/asm/nonmatchings/d5a50_len_5fd0/clear_icon_flags.s +++ /dev/null @@ -1,16 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel clear_icon_flags -/* DB12C 80144A2C 2402F7FF */ addiu $v0, $zero, -0x801 -/* DB130 80144A30 00822024 */ and $a0, $a0, $v0 -/* DB134 80144A34 3C028015 */ lui $v0, %hi(D_80157960) -/* DB138 80144A38 8C427960 */ lw $v0, %lo(D_80157960)($v0) -/* DB13C 80144A3C 00042080 */ sll $a0, $a0, 2 -/* DB140 80144A40 00822021 */ addu $a0, $a0, $v0 -/* DB144 80144A44 8C830000 */ lw $v1, ($a0) -/* DB148 80144A48 8C620000 */ lw $v0, ($v1) -/* DB14C 80144A4C 00052827 */ nor $a1, $zero, $a1 -/* DB150 80144A50 00451024 */ and $v0, $v0, $a1 -/* DB154 80144A54 03E00008 */ jr $ra -/* DB158 80144A58 AC620000 */ sw $v0, ($v1) diff --git a/ver/us/asm/nonmatchings/d5a50_len_5fd0/create_icon.s b/ver/us/asm/nonmatchings/d5a50_len_5fd0/create_icon.s index cbe2cc9d00..0246e2a238 100644 --- a/ver/us/asm/nonmatchings/d5a50_len_5fd0/create_icon.s +++ b/ver/us/asm/nonmatchings/d5a50_len_5fd0/create_icon.s @@ -2,8 +2,8 @@ .set noreorder # don't insert nops after branches glabel create_icon -/* D7BA4 801414A4 3C038015 */ lui $v1, %hi(D_80157960) -/* D7BA8 801414A8 8C637960 */ lw $v1, %lo(D_80157960)($v1) +/* D7BA4 801414A4 3C038015 */ lui $v1, %hi(gHudElementList) +/* D7BA8 801414A8 8C637960 */ lw $v1, %lo(gHudElementList)($v1) /* D7BAC 801414AC 27BDFFE0 */ addiu $sp, $sp, -0x20 /* D7BB0 801414B0 AFB20018 */ sw $s2, 0x18($sp) /* D7BB4 801414B4 0080902D */ daddu $s2, $a0, $zero @@ -30,8 +30,8 @@ glabel create_icon /* D7BF8 801414F8 0C00AB39 */ jal heap_malloc /* D7BFC 801414FC 24040054 */ addiu $a0, $zero, 0x54 /* D7C00 80141500 00112080 */ sll $a0, $s1, 2 -/* D7C04 80141504 3C038015 */ lui $v1, %hi(D_80157960) -/* D7C08 80141508 8C637960 */ lw $v1, %lo(D_80157960)($v1) +/* D7C04 80141504 3C038015 */ lui $v1, %hi(gHudElementList) +/* D7C08 80141508 8C637960 */ lw $v1, %lo(gHudElementList)($v1) /* D7C0C 8014150C 3C058015 */ lui $a1, %hi(D_801512B4) /* D7C10 80141510 24A512B4 */ addiu $a1, $a1, %lo(D_801512B4) /* D7C14 80141514 00832021 */ addu $a0, $a0, $v1 diff --git a/ver/us/asm/nonmatchings/d5a50_len_5fd0/draw_menu_icon.s b/ver/us/asm/nonmatchings/d5a50_len_5fd0/draw_menu_icon.s index 0ede182a19..13f1b63310 100644 --- a/ver/us/asm/nonmatchings/d5a50_len_5fd0/draw_menu_icon.s +++ b/ver/us/asm/nonmatchings/d5a50_len_5fd0/draw_menu_icon.s @@ -5,8 +5,8 @@ glabel draw_menu_icon /* DA998 80144298 27BDFFB8 */ addiu $sp, $sp, -0x48 /* DA99C 8014429C 2402F7FF */ addiu $v0, $zero, -0x801 /* DA9A0 801442A0 00822024 */ and $a0, $a0, $v0 -/* DA9A4 801442A4 3C028015 */ lui $v0, %hi(D_80157960) -/* DA9A8 801442A8 8C427960 */ lw $v0, %lo(D_80157960)($v0) +/* DA9A4 801442A4 3C028015 */ lui $v0, %hi(gHudElementList) +/* DA9A8 801442A8 8C427960 */ lw $v0, %lo(gHudElementList)($v0) /* DA9AC 801442AC 00042080 */ sll $a0, $a0, 2 /* DA9B0 801442B0 AFBF0044 */ sw $ra, 0x44($sp) /* DA9B4 801442B4 AFB60040 */ sw $s6, 0x40($sp) diff --git a/ver/us/asm/nonmatchings/d5a50_len_5fd0/free_icon.s b/ver/us/asm/nonmatchings/d5a50_len_5fd0/free_icon.s deleted file mode 100644 index f1daa9b491..0000000000 --- a/ver/us/asm/nonmatchings/d5a50_len_5fd0/free_icon.s +++ /dev/null @@ -1,41 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel free_icon -/* DAFF4 801448F4 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* DAFF8 801448F8 2402F7FF */ addiu $v0, $zero, -0x801 -/* DAFFC 801448FC 00822024 */ and $a0, $a0, $v0 -/* DB000 80144900 AFB10014 */ sw $s1, 0x14($sp) -/* DB004 80144904 3C118015 */ lui $s1, %hi(D_80157960) -/* DB008 80144908 26317960 */ addiu $s1, $s1, %lo(D_80157960) -/* DB00C 8014490C AFBF0018 */ sw $ra, 0x18($sp) -/* DB010 80144910 AFB00010 */ sw $s0, 0x10($sp) -/* DB014 80144914 8E220000 */ lw $v0, ($s1) -/* DB018 80144918 00048080 */ sll $s0, $a0, 2 -/* DB01C 8014491C 02021021 */ addu $v0, $s0, $v0 -/* DB020 80144920 8C420000 */ lw $v0, ($v0) -/* DB024 80144924 8C420000 */ lw $v0, ($v0) -/* DB028 80144928 3C030001 */ lui $v1, 1 -/* DB02C 8014492C 00431024 */ and $v0, $v0, $v1 -/* DB030 80144930 10400003 */ beqz $v0, .L80144940 -/* DB034 80144934 00000000 */ nop -/* DB038 80144938 0C051442 */ jal func_80145108 -/* DB03C 8014493C 00000000 */ nop -.L80144940: -/* DB040 80144940 8E220000 */ lw $v0, ($s1) -/* DB044 80144944 02021021 */ addu $v0, $s0, $v0 -/* DB048 80144948 0C00AB4B */ jal heap_free -/* DB04C 8014494C 8C440000 */ lw $a0, ($v0) -/* DB050 80144950 3C048015 */ lui $a0, %hi(D_801512B4) -/* DB054 80144954 248412B4 */ addiu $a0, $a0, %lo(D_801512B4) -/* DB058 80144958 8E220000 */ lw $v0, ($s1) -/* DB05C 8014495C 8C830000 */ lw $v1, ($a0) -/* DB060 80144960 02021021 */ addu $v0, $s0, $v0 -/* DB064 80144964 2463FFFF */ addiu $v1, $v1, -1 -/* DB068 80144968 AC400000 */ sw $zero, ($v0) -/* DB06C 8014496C AC830000 */ sw $v1, ($a0) -/* DB070 80144970 8FBF0018 */ lw $ra, 0x18($sp) -/* DB074 80144974 8FB10014 */ lw $s1, 0x14($sp) -/* DB078 80144978 8FB00010 */ lw $s0, 0x10($sp) -/* DB07C 8014497C 03E00008 */ jr $ra -/* DB080 80144980 27BD0020 */ addiu $sp, $sp, 0x20 diff --git a/ver/us/asm/nonmatchings/d5a50_len_5fd0/func_80141100.s b/ver/us/asm/nonmatchings/d5a50_len_5fd0/func_80141100.s index 204b55a56e..89074a84b5 100644 --- a/ver/us/asm/nonmatchings/d5a50_len_5fd0/func_80141100.s +++ b/ver/us/asm/nonmatchings/d5a50_len_5fd0/func_80141100.s @@ -11,8 +11,8 @@ glabel func_80141100 /* D7818 80141118 00000000 */ nop /* D781C 8014111C 3C028015 */ lui $v0, %hi(D_80156F60) /* D7820 80141120 24426F60 */ addiu $v0, $v0, %lo(D_80156F60) -/* D7824 80141124 3C018015 */ lui $at, %hi(D_80157960) -/* D7828 80141128 AC227960 */ sw $v0, %lo(D_80157960)($at) +/* D7824 80141124 3C018015 */ lui $at, %hi(gHudElementList) +/* D7828 80141128 AC227960 */ sw $v0, %lo(gHudElementList)($at) /* D782C 8014112C 3C028015 */ lui $v0, %hi(D_80157968) /* D7830 80141130 24427968 */ addiu $v0, $v0, %lo(D_80157968) /* D7834 80141134 3C018015 */ lui $at, %hi(D_8015133C) @@ -28,8 +28,8 @@ glabel func_80141100 .L8014115C: /* D785C 8014115C 3C028015 */ lui $v0, %hi(D_80157460) /* D7860 80141160 24427460 */ addiu $v0, $v0, %lo(D_80157460) -/* D7864 80141164 3C018015 */ lui $at, %hi(D_80157960) -/* D7868 80141168 AC227960 */ sw $v0, %lo(D_80157960)($at) +/* D7864 80141164 3C018015 */ lui $at, %hi(gHudElementList) +/* D7868 80141168 AC227960 */ sw $v0, %lo(gHudElementList)($at) /* D786C 8014116C 3C028016 */ lui $v0, %hi(D_80158574) /* D7870 80141170 24428574 */ addiu $v0, $v0, %lo(D_80158574) /* D7874 80141174 3C018015 */ lui $at, %hi(D_8015133C) @@ -124,8 +124,8 @@ glabel func_80141100 /* D79B4 801412B4 1440FFFA */ bnez $v0, .L801412A0 /* D79B8 801412B8 24630008 */ addiu $v1, $v1, 8 .L801412BC: -/* D79BC 801412BC 3C028015 */ lui $v0, %hi(D_80157960) -/* D79C0 801412C0 8C427960 */ lw $v0, %lo(D_80157960)($v0) +/* D79BC 801412BC 3C028015 */ lui $v0, %hi(gHudElementList) +/* D79C0 801412C0 8C427960 */ lw $v0, %lo(gHudElementList)($v0) /* D79C4 801412C4 2404013F */ addiu $a0, $zero, 0x13f /* D79C8 801412C8 244204FC */ addiu $v0, $v0, 0x4fc .L801412CC: diff --git a/ver/us/asm/nonmatchings/d5a50_len_5fd0/func_80142210.s b/ver/us/asm/nonmatchings/d5a50_len_5fd0/func_80142210.s index 794810ab39..04c957067a 100644 --- a/ver/us/asm/nonmatchings/d5a50_len_5fd0/func_80142210.s +++ b/ver/us/asm/nonmatchings/d5a50_len_5fd0/func_80142210.s @@ -30,8 +30,8 @@ glabel func_80142210 /* D8970 80142270 3C03800A */ lui $v1, %hi(gMasterGfxPos) /* D8974 80142274 2463A66C */ addiu $v1, $v1, %lo(gMasterGfxPos) /* D8978 80142278 8C620000 */ lw $v0, ($v1) -/* D897C 8014227C 3C058015 */ lui $a1, %hi(D_80157960) -/* D8980 80142280 8CA57960 */ lw $a1, %lo(D_80157960)($a1) +/* D897C 8014227C 3C058015 */ lui $a1, %hi(gHudElementList) +/* D8980 80142280 8CA57960 */ lw $a1, %lo(gHudElementList)($a1) /* D8984 80142284 0040202D */ daddu $a0, $v0, $zero /* D8988 80142288 24420008 */ addiu $v0, $v0, 8 /* D898C 8014228C AC620000 */ sw $v0, ($v1) @@ -70,8 +70,8 @@ glabel func_80142210 /* D8A08 80142308 27C2FFFF */ addiu $v0, $fp, -1 /* D8A0C 8014230C 18400024 */ blez $v0, .L801423A0 /* D8A10 80142310 0000B82D */ daddu $s7, $zero, $zero -/* D8A14 80142314 3C0D8015 */ lui $t5, %hi(D_80157960) -/* D8A18 80142318 25AD7960 */ addiu $t5, $t5, %lo(D_80157960) +/* D8A14 80142314 3C0D8015 */ lui $t5, %hi(gHudElementList) +/* D8A18 80142318 25AD7960 */ addiu $t5, $t5, %lo(gHudElementList) /* D8A1C 8014231C 27AC0028 */ addiu $t4, $sp, 0x28 /* D8A20 80142320 0180582D */ daddu $t3, $t4, $zero .L80142324: @@ -116,8 +116,8 @@ glabel func_80142210 .L801423AC: /* D8AAC 801423AC 03A21021 */ addu $v0, $sp, $v0 /* D8AB0 801423B0 8C420028 */ lw $v0, 0x28($v0) -/* D8AB4 801423B4 3C038015 */ lui $v1, %hi(D_80157960) -/* D8AB8 801423B8 8C637960 */ lw $v1, %lo(D_80157960)($v1) +/* D8AB4 801423B4 3C038015 */ lui $v1, %hi(gHudElementList) +/* D8AB8 801423B8 8C637960 */ lw $v1, %lo(gHudElementList)($v1) /* D8ABC 801423BC 00021080 */ sll $v0, $v0, 2 /* D8AC0 801423C0 00431021 */ addu $v0, $v0, $v1 /* D8AC4 801423C4 8C500000 */ lw $s0, ($v0) diff --git a/ver/us/asm/nonmatchings/d5a50_len_5fd0/func_8014271C.s b/ver/us/asm/nonmatchings/d5a50_len_5fd0/func_8014271C.s index ac72f3cb31..3dc30d2d60 100644 --- a/ver/us/asm/nonmatchings/d5a50_len_5fd0/func_8014271C.s +++ b/ver/us/asm/nonmatchings/d5a50_len_5fd0/func_8014271C.s @@ -21,8 +21,8 @@ glabel func_8014271C /* D8E5C 8014275C AFB1052C */ sw $s1, 0x52c($sp) /* D8E60 80142760 AFB00528 */ sw $s0, 0x528($sp) /* D8E64 80142764 8C620000 */ lw $v0, ($v1) -/* D8E68 80142768 3C058015 */ lui $a1, %hi(D_80157960) -/* D8E6C 8014276C 8CA57960 */ lw $a1, %lo(D_80157960)($a1) +/* D8E68 80142768 3C058015 */ lui $a1, %hi(gHudElementList) +/* D8E6C 8014276C 8CA57960 */ lw $a1, %lo(gHudElementList)($a1) /* D8E70 80142770 0040202D */ daddu $a0, $v0, $zero /* D8E74 80142774 24420008 */ addiu $v0, $v0, 8 /* D8E78 80142778 AC620000 */ sw $v0, ($v1) @@ -61,8 +61,8 @@ glabel func_8014271C /* D8EF4 801427F4 27C2FFFF */ addiu $v0, $fp, -1 /* D8EF8 801427F8 18400024 */ blez $v0, .L8014288C /* D8EFC 801427FC 0000B82D */ daddu $s7, $zero, $zero -/* D8F00 80142800 3C0D8015 */ lui $t5, %hi(D_80157960) -/* D8F04 80142804 25AD7960 */ addiu $t5, $t5, %lo(D_80157960) +/* D8F00 80142800 3C0D8015 */ lui $t5, %hi(gHudElementList) +/* D8F04 80142804 25AD7960 */ addiu $t5, $t5, %lo(gHudElementList) /* D8F08 80142808 27AC0028 */ addiu $t4, $sp, 0x28 /* D8F0C 8014280C 0180582D */ daddu $t3, $t4, $zero .L80142810: @@ -107,8 +107,8 @@ glabel func_8014271C .L80142898: /* D8F98 80142898 03A21021 */ addu $v0, $sp, $v0 /* D8F9C 8014289C 8C420028 */ lw $v0, 0x28($v0) -/* D8FA0 801428A0 3C038015 */ lui $v1, %hi(D_80157960) -/* D8FA4 801428A4 8C637960 */ lw $v1, %lo(D_80157960)($v1) +/* D8FA0 801428A0 3C038015 */ lui $v1, %hi(gHudElementList) +/* D8FA4 801428A4 8C637960 */ lw $v1, %lo(gHudElementList)($v1) /* D8FA8 801428A8 00021080 */ sll $v0, $v0, 2 /* D8FAC 801428AC 00431021 */ addu $v0, $v0, $v1 /* D8FB0 801428B0 8C500000 */ lw $s0, ($v0) diff --git a/ver/us/asm/nonmatchings/d5a50_len_5fd0/func_80143C48.s b/ver/us/asm/nonmatchings/d5a50_len_5fd0/func_80143C48.s index 1c6408f933..f366d797ea 100644 --- a/ver/us/asm/nonmatchings/d5a50_len_5fd0/func_80143C48.s +++ b/ver/us/asm/nonmatchings/d5a50_len_5fd0/func_80143C48.s @@ -336,8 +336,8 @@ glabel func_80143C48 /* DA870 80144170 07C0001D */ bltz $fp, .L801441E8 /* DA874 80144174 2402F7FF */ addiu $v0, $zero, -0x801 /* DA878 80144178 03C2F024 */ and $fp, $fp, $v0 -/* DA87C 8014417C 3C038015 */ lui $v1, %hi(D_80157960) -/* DA880 80144180 8C637960 */ lw $v1, %lo(D_80157960)($v1) +/* DA87C 8014417C 3C038015 */ lui $v1, %hi(gHudElementList) +/* DA880 80144180 8C637960 */ lw $v1, %lo(gHudElementList)($v1) /* DA884 80144184 001E1080 */ sll $v0, $fp, 2 /* DA888 80144188 00431021 */ addu $v0, $v0, $v1 /* DA88C 8014418C 8C440000 */ lw $a0, ($v0) diff --git a/ver/us/asm/nonmatchings/d5a50_len_5fd0/func_801449DC.s b/ver/us/asm/nonmatchings/d5a50_len_5fd0/func_801449DC.s index ce2e535568..9b78bd12b2 100644 --- a/ver/us/asm/nonmatchings/d5a50_len_5fd0/func_801449DC.s +++ b/ver/us/asm/nonmatchings/d5a50_len_5fd0/func_801449DC.s @@ -4,8 +4,8 @@ glabel func_801449DC /* DB0DC 801449DC 2402F7FF */ addiu $v0, $zero, -0x801 /* DB0E0 801449E0 00822024 */ and $a0, $a0, $v0 -/* DB0E4 801449E4 3C028015 */ lui $v0, %hi(D_80157960) -/* DB0E8 801449E8 8C427960 */ lw $v0, %lo(D_80157960)($v0) +/* DB0E4 801449E4 3C028015 */ lui $v0, %hi(gHudElementList) +/* DB0E8 801449E8 8C427960 */ lw $v0, %lo(gHudElementList)($v0) /* DB0EC 801449EC 00042080 */ sll $a0, $a0, 2 /* DB0F0 801449F0 00822021 */ addu $a0, $a0, $v0 /* DB0F4 801449F4 8C820000 */ lw $v0, ($a0) diff --git a/ver/us/asm/nonmatchings/d5a50_len_5fd0/func_80144DF4.s b/ver/us/asm/nonmatchings/d5a50_len_5fd0/func_80144DF4.s index c2e6990736..11c7413a74 100644 --- a/ver/us/asm/nonmatchings/d5a50_len_5fd0/func_80144DF4.s +++ b/ver/us/asm/nonmatchings/d5a50_len_5fd0/func_80144DF4.s @@ -5,8 +5,8 @@ glabel func_80144DF4 /* DB4F4 80144DF4 2402F7FF */ addiu $v0, $zero, -0x801 /* DB4F8 80144DF8 00822024 */ and $a0, $a0, $v0 /* DB4FC 80144DFC 00042080 */ sll $a0, $a0, 2 -/* DB500 80144E00 3C028015 */ lui $v0, %hi(D_80157960) -/* DB504 80144E04 8C427960 */ lw $v0, %lo(D_80157960)($v0) +/* DB500 80144E00 3C028015 */ lui $v0, %hi(gHudElementList) +/* DB504 80144E04 8C427960 */ lw $v0, %lo(gHudElementList)($v0) /* DB508 80144E08 3C013F80 */ lui $at, 0x3f80 /* DB50C 80144E0C 44810000 */ mtc1 $at, $f0 /* DB510 80144E10 00822021 */ addu $a0, $a0, $v0 diff --git a/ver/us/asm/nonmatchings/d5a50_len_5fd0/func_80144E4C.s b/ver/us/asm/nonmatchings/d5a50_len_5fd0/func_80144E4C.s index 041c974c00..3e90930844 100644 --- a/ver/us/asm/nonmatchings/d5a50_len_5fd0/func_80144E4C.s +++ b/ver/us/asm/nonmatchings/d5a50_len_5fd0/func_80144E4C.s @@ -4,8 +4,8 @@ glabel func_80144E4C /* DB54C 80144E4C 2402F7FF */ addiu $v0, $zero, -0x801 /* DB550 80144E50 00822024 */ and $a0, $a0, $v0 -/* DB554 80144E54 3C028015 */ lui $v0, %hi(D_80157960) -/* DB558 80144E58 8C427960 */ lw $v0, %lo(D_80157960)($v0) +/* DB554 80144E54 3C028015 */ lui $v0, %hi(gHudElementList) +/* DB558 80144E58 8C427960 */ lw $v0, %lo(gHudElementList)($v0) /* DB55C 80144E5C 00042080 */ sll $a0, $a0, 2 /* DB560 80144E60 00822021 */ addu $a0, $a0, $v0 /* DB564 80144E64 8C820000 */ lw $v0, ($a0) diff --git a/ver/us/asm/nonmatchings/d5a50_len_5fd0/func_80144E74.s b/ver/us/asm/nonmatchings/d5a50_len_5fd0/func_80144E74.s index 7565aadf43..af1aea50df 100644 --- a/ver/us/asm/nonmatchings/d5a50_len_5fd0/func_80144E74.s +++ b/ver/us/asm/nonmatchings/d5a50_len_5fd0/func_80144E74.s @@ -5,8 +5,8 @@ glabel func_80144E74 /* DB574 80144E74 2402F7FF */ addiu $v0, $zero, -0x801 /* DB578 80144E78 00822024 */ and $a0, $a0, $v0 /* DB57C 80144E7C 00042080 */ sll $a0, $a0, 2 -/* DB580 80144E80 3C028015 */ lui $v0, %hi(D_80157960) -/* DB584 80144E84 8C427960 */ lw $v0, %lo(D_80157960)($v0) +/* DB580 80144E80 3C028015 */ lui $v0, %hi(gHudElementList) +/* DB584 80144E84 8C427960 */ lw $v0, %lo(gHudElementList)($v0) /* DB588 80144E88 3C03F0FF */ lui $v1, 0xf0ff /* DB58C 80144E8C 00822021 */ addu $a0, $a0, $v0 /* DB590 80144E90 8C840000 */ lw $a0, ($a0) diff --git a/ver/us/asm/nonmatchings/d5a50_len_5fd0/func_80144F28.s b/ver/us/asm/nonmatchings/d5a50_len_5fd0/func_80144F28.s index 78f9053d75..a32dc5bd03 100644 --- a/ver/us/asm/nonmatchings/d5a50_len_5fd0/func_80144F28.s +++ b/ver/us/asm/nonmatchings/d5a50_len_5fd0/func_80144F28.s @@ -5,8 +5,8 @@ glabel func_80144F28 /* DB628 80144F28 27BDFFE0 */ addiu $sp, $sp, -0x20 /* DB62C 80144F2C 2402F7FF */ addiu $v0, $zero, -0x801 /* DB630 80144F30 00821024 */ and $v0, $a0, $v0 -/* DB634 80144F34 3C038015 */ lui $v1, %hi(D_80157960) -/* DB638 80144F38 8C637960 */ lw $v1, %lo(D_80157960)($v1) +/* DB634 80144F34 3C038015 */ lui $v1, %hi(gHudElementList) +/* DB638 80144F38 8C637960 */ lw $v1, %lo(gHudElementList)($v1) /* DB63C 80144F3C 00021080 */ sll $v0, $v0, 2 /* DB640 80144F40 AFBF0018 */ sw $ra, 0x18($sp) /* DB644 80144F44 AFB10014 */ sw $s1, 0x14($sp) diff --git a/ver/us/asm/nonmatchings/d5a50_len_5fd0/func_80144FD8.s b/ver/us/asm/nonmatchings/d5a50_len_5fd0/func_80144FD8.s index 396e980143..4404cfe472 100644 --- a/ver/us/asm/nonmatchings/d5a50_len_5fd0/func_80144FD8.s +++ b/ver/us/asm/nonmatchings/d5a50_len_5fd0/func_80144FD8.s @@ -6,8 +6,8 @@ glabel func_80144FD8 /* DB6DC 80144FDC 2402F7FF */ addiu $v0, $zero, -0x801 /* DB6E0 80144FE0 00821024 */ and $v0, $a0, $v0 /* DB6E4 80144FE4 00021080 */ sll $v0, $v0, 2 -/* DB6E8 80144FE8 3C038015 */ lui $v1, %hi(D_80157960) -/* DB6EC 80144FEC 8C637960 */ lw $v1, %lo(D_80157960)($v1) +/* DB6E8 80144FE8 3C038015 */ lui $v1, %hi(gHudElementList) +/* DB6EC 80144FEC 8C637960 */ lw $v1, %lo(gHudElementList)($v1) /* DB6F0 80144FF0 AFBF0014 */ sw $ra, 0x14($sp) /* DB6F4 80144FF4 AFB00010 */ sw $s0, 0x10($sp) /* DB6F8 80144FF8 00431021 */ addu $v0, $v0, $v1 diff --git a/ver/us/asm/nonmatchings/d5a50_len_5fd0/func_80145070.s b/ver/us/asm/nonmatchings/d5a50_len_5fd0/func_80145070.s index 201196999b..0248043e9a 100644 --- a/ver/us/asm/nonmatchings/d5a50_len_5fd0/func_80145070.s +++ b/ver/us/asm/nonmatchings/d5a50_len_5fd0/func_80145070.s @@ -6,8 +6,8 @@ glabel func_80145070 /* DB774 80145074 2402F7FF */ addiu $v0, $zero, -0x801 /* DB778 80145078 00821024 */ and $v0, $a0, $v0 /* DB77C 8014507C 00021080 */ sll $v0, $v0, 2 -/* DB780 80145080 3C038015 */ lui $v1, %hi(D_80157960) -/* DB784 80145084 8C637960 */ lw $v1, %lo(D_80157960)($v1) +/* DB780 80145080 3C038015 */ lui $v1, %hi(gHudElementList) +/* DB784 80145084 8C637960 */ lw $v1, %lo(gHudElementList)($v1) /* DB788 80145088 AFBF0014 */ sw $ra, 0x14($sp) /* DB78C 8014508C AFB00010 */ sw $s0, 0x10($sp) /* DB790 80145090 00431021 */ addu $v0, $v0, $v1 diff --git a/ver/us/asm/nonmatchings/d5a50_len_5fd0/func_80145108.s b/ver/us/asm/nonmatchings/d5a50_len_5fd0/func_80145108.s index 7faff9fe94..b61a1314da 100644 --- a/ver/us/asm/nonmatchings/d5a50_len_5fd0/func_80145108.s +++ b/ver/us/asm/nonmatchings/d5a50_len_5fd0/func_80145108.s @@ -5,8 +5,8 @@ glabel func_80145108 /* DB808 80145108 27BDFFE8 */ addiu $sp, $sp, -0x18 /* DB80C 8014510C 2402F7FF */ addiu $v0, $zero, -0x801 /* DB810 80145110 00822024 */ and $a0, $a0, $v0 -/* DB814 80145114 3C028015 */ lui $v0, %hi(D_80157960) -/* DB818 80145118 8C427960 */ lw $v0, %lo(D_80157960)($v0) +/* DB814 80145114 3C028015 */ lui $v0, %hi(gHudElementList) +/* DB818 80145118 8C427960 */ lw $v0, %lo(gHudElementList)($v0) /* DB81C 8014511C 00042080 */ sll $a0, $a0, 2 /* DB820 80145120 AFBF0014 */ sw $ra, 0x14($sp) /* DB824 80145124 AFB00010 */ sw $s0, 0x10($sp) diff --git a/ver/us/asm/nonmatchings/d5a50_len_5fd0/func_80145184.s b/ver/us/asm/nonmatchings/d5a50_len_5fd0/func_80145184.s index b8628aad3c..45baac2593 100644 --- a/ver/us/asm/nonmatchings/d5a50_len_5fd0/func_80145184.s +++ b/ver/us/asm/nonmatchings/d5a50_len_5fd0/func_80145184.s @@ -6,8 +6,8 @@ glabel func_80145184 /* DB888 80145188 00822024 */ and $a0, $a0, $v0 /* DB88C 8014518C 00042080 */ sll $a0, $a0, 2 /* DB890 80145190 3C030001 */ lui $v1, 1 -/* DB894 80145194 3C028015 */ lui $v0, %hi(D_80157960) -/* DB898 80145198 8C427960 */ lw $v0, %lo(D_80157960)($v0) +/* DB894 80145194 3C028015 */ lui $v0, %hi(gHudElementList) +/* DB898 80145198 8C427960 */ lw $v0, %lo(gHudElementList)($v0) /* DB89C 8014519C 44850000 */ mtc1 $a1, $f0 /* DB8A0 801451A0 00822021 */ addu $a0, $a0, $v0 /* DB8A4 801451A4 8C840000 */ lw $a0, ($a0) diff --git a/ver/us/asm/nonmatchings/d5a50_len_5fd0/func_801451D4.s b/ver/us/asm/nonmatchings/d5a50_len_5fd0/func_801451D4.s index 8be9f378e5..109eebeb71 100644 --- a/ver/us/asm/nonmatchings/d5a50_len_5fd0/func_801451D4.s +++ b/ver/us/asm/nonmatchings/d5a50_len_5fd0/func_801451D4.s @@ -6,8 +6,8 @@ glabel func_801451D4 /* DB8D8 801451D8 00822024 */ and $a0, $a0, $v0 /* DB8DC 801451DC 00042080 */ sll $a0, $a0, 2 /* DB8E0 801451E0 3C030001 */ lui $v1, 1 -/* DB8E4 801451E4 3C028015 */ lui $v0, %hi(D_80157960) -/* DB8E8 801451E8 8C427960 */ lw $v0, %lo(D_80157960)($v0) +/* DB8E4 801451E4 3C028015 */ lui $v0, %hi(gHudElementList) +/* DB8E8 801451E8 8C427960 */ lw $v0, %lo(gHudElementList)($v0) /* DB8EC 801451EC 44850000 */ mtc1 $a1, $f0 /* DB8F0 801451F0 00822021 */ addu $a0, $a0, $v0 /* DB8F4 801451F4 8C840000 */ lw $a0, ($a0) diff --git a/ver/us/asm/nonmatchings/d5a50_len_5fd0/func_80145224.s b/ver/us/asm/nonmatchings/d5a50_len_5fd0/func_80145224.s index 3a5467b7ee..82fbaecce9 100644 --- a/ver/us/asm/nonmatchings/d5a50_len_5fd0/func_80145224.s +++ b/ver/us/asm/nonmatchings/d5a50_len_5fd0/func_80145224.s @@ -6,8 +6,8 @@ glabel func_80145224 /* DB928 80145228 00822024 */ and $a0, $a0, $v0 /* DB92C 8014522C 00042080 */ sll $a0, $a0, 2 /* DB930 80145230 3C030001 */ lui $v1, 1 -/* DB934 80145234 3C028015 */ lui $v0, %hi(D_80157960) -/* DB938 80145238 8C427960 */ lw $v0, %lo(D_80157960)($v0) +/* DB934 80145234 3C028015 */ lui $v0, %hi(gHudElementList) +/* DB938 80145238 8C427960 */ lw $v0, %lo(gHudElementList)($v0) /* DB93C 8014523C 44850000 */ mtc1 $a1, $f0 /* DB940 80145240 00822021 */ addu $a0, $a0, $v0 /* DB944 80145244 8C840000 */ lw $a0, ($a0) diff --git a/ver/us/asm/nonmatchings/d5a50_len_5fd0/func_80145274.s b/ver/us/asm/nonmatchings/d5a50_len_5fd0/func_80145274.s index 78bd0e4c02..f2cfa48b37 100644 --- a/ver/us/asm/nonmatchings/d5a50_len_5fd0/func_80145274.s +++ b/ver/us/asm/nonmatchings/d5a50_len_5fd0/func_80145274.s @@ -4,8 +4,8 @@ glabel func_80145274 /* DB974 80145274 2402F7FF */ addiu $v0, $zero, -0x801 /* DB978 80145278 00822024 */ and $a0, $a0, $v0 -/* DB97C 8014527C 3C028015 */ lui $v0, %hi(D_80157960) -/* DB980 80145280 8C427960 */ lw $v0, %lo(D_80157960)($v0) +/* DB97C 8014527C 3C028015 */ lui $v0, %hi(gHudElementList) +/* DB980 80145280 8C427960 */ lw $v0, %lo(gHudElementList)($v0) /* DB984 80145284 00042080 */ sll $a0, $a0, 2 /* DB988 80145288 00822021 */ addu $a0, $a0, $v0 /* DB98C 8014528C 8C840000 */ lw $a0, ($a0) diff --git a/ver/us/asm/nonmatchings/d5a50_len_5fd0/get_icon_render_pos.s b/ver/us/asm/nonmatchings/d5a50_len_5fd0/get_icon_render_pos.s deleted file mode 100644 index b8b426282c..0000000000 --- a/ver/us/asm/nonmatchings/d5a50_len_5fd0/get_icon_render_pos.s +++ /dev/null @@ -1,16 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel get_icon_render_pos -/* DB0AC 801449AC 2402F7FF */ addiu $v0, $zero, -0x801 -/* DB0B0 801449B0 00822024 */ and $a0, $a0, $v0 -/* DB0B4 801449B4 3C028015 */ lui $v0, %hi(D_80157960) -/* DB0B8 801449B8 8C427960 */ lw $v0, %lo(D_80157960)($v0) -/* DB0BC 801449BC 00042080 */ sll $a0, $a0, 2 -/* DB0C0 801449C0 00822021 */ addu $a0, $a0, $v0 -/* DB0C4 801449C4 8C830000 */ lw $v1, ($a0) -/* DB0C8 801449C8 8462003C */ lh $v0, 0x3c($v1) -/* DB0CC 801449CC ACA20000 */ sw $v0, ($a1) -/* DB0D0 801449D0 8462003E */ lh $v0, 0x3e($v1) -/* DB0D4 801449D4 03E00008 */ jr $ra -/* DB0D8 801449D8 ACC20000 */ sw $v0, ($a2) diff --git a/ver/us/asm/nonmatchings/d5a50_len_5fd0/get_menu_icon.s b/ver/us/asm/nonmatchings/d5a50_len_5fd0/get_menu_icon.s deleted file mode 100644 index 1f06568310..0000000000 --- a/ver/us/asm/nonmatchings/d5a50_len_5fd0/get_menu_icon.s +++ /dev/null @@ -1,12 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel get_menu_icon -/* DAFD4 801448D4 2402F7FF */ addiu $v0, $zero, -0x801 -/* DAFD8 801448D8 00822024 */ and $a0, $a0, $v0 -/* DAFDC 801448DC 3C028015 */ lui $v0, %hi(D_80157960) -/* DAFE0 801448E0 8C427960 */ lw $v0, %lo(D_80157960)($v0) -/* DAFE4 801448E4 00042080 */ sll $a0, $a0, 2 -/* DAFE8 801448E8 00822021 */ addu $a0, $a0, $v0 -/* DAFEC 801448EC 03E00008 */ jr $ra -/* DAFF0 801448F0 8C820000 */ lw $v0, ($a0) diff --git a/ver/us/asm/nonmatchings/d5a50_len_5fd0/get_menu_icon_script.s b/ver/us/asm/nonmatchings/d5a50_len_5fd0/get_menu_icon_script.s deleted file mode 100644 index b17538dfb7..0000000000 --- a/ver/us/asm/nonmatchings/d5a50_len_5fd0/get_menu_icon_script.s +++ /dev/null @@ -1,13 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel get_menu_icon_script -/* DAFB0 801448B0 2402F7FF */ addiu $v0, $zero, -0x801 -/* DAFB4 801448B4 00822024 */ and $a0, $a0, $v0 -/* DAFB8 801448B8 3C028015 */ lui $v0, %hi(D_80157960) -/* DAFBC 801448BC 8C427960 */ lw $v0, %lo(D_80157960)($v0) -/* DAFC0 801448C0 00042080 */ sll $a0, $a0, 2 -/* DAFC4 801448C4 00822021 */ addu $a0, $a0, $v0 -/* DAFC8 801448C8 8C820000 */ lw $v0, ($a0) -/* DAFCC 801448CC 03E00008 */ jr $ra -/* DAFD0 801448D0 8C420008 */ lw $v0, 8($v0) diff --git a/ver/us/asm/nonmatchings/d5a50_len_5fd0/icon_set_opacity.s b/ver/us/asm/nonmatchings/d5a50_len_5fd0/icon_set_opacity.s deleted file mode 100644 index fcef7770e3..0000000000 --- a/ver/us/asm/nonmatchings/d5a50_len_5fd0/icon_set_opacity.s +++ /dev/null @@ -1,24 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel icon_set_opacity -/* DB5B0 80144EB0 2402F7FF */ addiu $v0, $zero, -0x801 -/* DB5B4 80144EB4 00822024 */ and $a0, $a0, $v0 -/* DB5B8 80144EB8 3C028015 */ lui $v0, %hi(D_80157960) -/* DB5BC 80144EBC 8C427960 */ lw $v0, %lo(D_80157960)($v0) -/* DB5C0 80144EC0 00042080 */ sll $a0, $a0, 2 -/* DB5C4 80144EC4 00822021 */ addu $a0, $a0, $v0 -/* DB5C8 80144EC8 8C840000 */ lw $a0, ($a0) -/* DB5CC 80144ECC 8C820000 */ lw $v0, ($a0) -/* DB5D0 80144ED0 A085004A */ sb $a1, 0x4a($a0) -/* DB5D4 80144ED4 34420020 */ ori $v0, $v0, 0x20 -/* DB5D8 80144ED8 AC820000 */ sw $v0, ($a0) -/* DB5DC 80144EDC 240200FF */ addiu $v0, $zero, 0xff -/* DB5E0 80144EE0 14A20004 */ bne $a1, $v0, .L80144EF4 -/* DB5E4 80144EE4 2403FFDF */ addiu $v1, $zero, -0x21 -/* DB5E8 80144EE8 8C820000 */ lw $v0, ($a0) -/* DB5EC 80144EEC 00431024 */ and $v0, $v0, $v1 -/* DB5F0 80144EF0 AC820000 */ sw $v0, ($a0) -.L80144EF4: -/* DB5F4 80144EF4 03E00008 */ jr $ra -/* DB5F8 80144EF8 00000000 */ nop diff --git a/ver/us/asm/nonmatchings/d5a50_len_5fd0/icon_set_tint.s b/ver/us/asm/nonmatchings/d5a50_len_5fd0/icon_set_tint.s deleted file mode 100644 index 7be8e52549..0000000000 --- a/ver/us/asm/nonmatchings/d5a50_len_5fd0/icon_set_tint.s +++ /dev/null @@ -1,15 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel icon_set_tint -/* DB5FC 80144EFC 2402F7FF */ addiu $v0, $zero, -0x801 -/* DB600 80144F00 00822024 */ and $a0, $a0, $v0 -/* DB604 80144F04 3C028015 */ lui $v0, %hi(D_80157960) -/* DB608 80144F08 8C427960 */ lw $v0, %lo(D_80157960)($v0) -/* DB60C 80144F0C 00042080 */ sll $a0, $a0, 2 -/* DB610 80144F10 00822021 */ addu $a0, $a0, $v0 -/* DB614 80144F14 8C820000 */ lw $v0, ($a0) -/* DB618 80144F18 A045004B */ sb $a1, 0x4b($v0) -/* DB61C 80144F1C A046004C */ sb $a2, 0x4c($v0) -/* DB620 80144F20 03E00008 */ jr $ra -/* DB624 80144F24 A047004D */ sb $a3, 0x4d($v0) diff --git a/ver/us/asm/nonmatchings/d5a50_len_5fd0/init_menu_icon_list.s b/ver/us/asm/nonmatchings/d5a50_len_5fd0/init_menu_icon_list.s index a785369712..e99dae9304 100644 --- a/ver/us/asm/nonmatchings/d5a50_len_5fd0/init_menu_icon_list.s +++ b/ver/us/asm/nonmatchings/d5a50_len_5fd0/init_menu_icon_list.s @@ -23,8 +23,8 @@ glabel init_menu_icon_list /* D7A44 80141344 8C637964 */ lw $v1, %lo(D_80157964)($v1) /* D7A48 80141348 3C028015 */ lui $v0, %hi(D_80156F60) /* D7A4C 8014134C 24426F60 */ addiu $v0, $v0, %lo(D_80156F60) -/* D7A50 80141350 3C018015 */ lui $at, %hi(D_80157960) -/* D7A54 80141354 AC227960 */ sw $v0, %lo(D_80157960)($at) +/* D7A50 80141350 3C018015 */ lui $at, %hi(gHudElementList) +/* D7A54 80141354 AC227960 */ sw $v0, %lo(gHudElementList)($at) /* D7A58 80141358 3C028015 */ lui $v0, %hi(D_80157968) /* D7A5C 8014135C 24427968 */ addiu $v0, $v0, %lo(D_80157968) /* D7A60 80141360 3C018015 */ lui $at, %hi(D_8015133C) @@ -42,8 +42,8 @@ glabel init_menu_icon_list /* D7A8C 8014138C 8C638570 */ lw $v1, %lo(D_80158570)($v1) /* D7A90 80141390 3C028015 */ lui $v0, %hi(D_80157460) /* D7A94 80141394 24427460 */ addiu $v0, $v0, %lo(D_80157460) -/* D7A98 80141398 3C018015 */ lui $at, %hi(D_80157960) -/* D7A9C 8014139C AC227960 */ sw $v0, %lo(D_80157960)($at) +/* D7A98 80141398 3C018015 */ lui $at, %hi(gHudElementList) +/* D7A9C 8014139C AC227960 */ sw $v0, %lo(gHudElementList)($at) /* D7AA0 801413A0 3C028016 */ lui $v0, %hi(D_80158574) /* D7AA4 801413A4 24428574 */ addiu $v0, $v0, %lo(D_80158574) /* D7AA8 801413A8 3C018015 */ lui $at, %hi(D_8015133C) diff --git a/ver/us/asm/nonmatchings/d5a50_len_5fd0/render_menu_icons.s b/ver/us/asm/nonmatchings/d5a50_len_5fd0/render_menu_icons.s index a8e85cbeae..8b10709d45 100644 --- a/ver/us/asm/nonmatchings/d5a50_len_5fd0/render_menu_icons.s +++ b/ver/us/asm/nonmatchings/d5a50_len_5fd0/render_menu_icons.s @@ -16,8 +16,8 @@ glabel render_menu_icons /* D9DE0 801436E0 3C091020 */ lui $t1, 0x1020 /* D9DE4 801436E4 3C080001 */ lui $t0, 1 /* D9DE8 801436E8 3C074000 */ lui $a3, 0x4000 -/* D9DEC 801436EC 3C068015 */ lui $a2, %hi(D_80157960) -/* D9DF0 801436F0 8CC67960 */ lw $a2, %lo(D_80157960)($a2) +/* D9DEC 801436EC 3C068015 */ lui $a2, %hi(gHudElementList) +/* D9DF0 801436F0 8CC67960 */ lw $a2, %lo(gHudElementList)($a2) /* D9DF4 801436F4 27A50010 */ addiu $a1, $sp, 0x10 .L801436F8: /* D9DF8 801436F8 8CC40000 */ lw $a0, ($a2) @@ -59,8 +59,8 @@ glabel render_menu_icons /* D9E84 80143784 2642FFFF */ addiu $v0, $s2, -1 /* D9E88 80143788 18400024 */ blez $v0, .L8014381C /* D9E8C 8014378C 0000882D */ daddu $s1, $zero, $zero -/* D9E90 80143790 3C0C8015 */ lui $t4, %hi(D_80157960) -/* D9E94 80143794 258C7960 */ addiu $t4, $t4, %lo(D_80157960) +/* D9E90 80143790 3C0C8015 */ lui $t4, %hi(gHudElementList) +/* D9E94 80143794 258C7960 */ addiu $t4, $t4, %lo(gHudElementList) /* D9E98 80143798 27AB0010 */ addiu $t3, $sp, 0x10 /* D9E9C 8014379C 0160502D */ daddu $t2, $t3, $zero .L801437A0: @@ -178,8 +178,8 @@ glabel render_menu_icons .L8014394C: /* DA04C 8014394C 8E020000 */ lw $v0, ($s0) /* DA050 80143950 26100004 */ addiu $s0, $s0, 4 -/* DA054 80143954 3C038015 */ lui $v1, %hi(D_80157960) -/* DA058 80143958 8C637960 */ lw $v1, %lo(D_80157960)($v1) +/* DA054 80143954 3C038015 */ lui $v1, %hi(gHudElementList) +/* DA058 80143958 8C637960 */ lw $v1, %lo(gHudElementList)($v1) /* DA05C 8014395C 00021080 */ sll $v0, $v0, 2 /* DA060 80143960 00431021 */ addu $v0, $v0, $v1 /* DA064 80143964 8C440000 */ lw $a0, ($v0) @@ -199,8 +199,8 @@ glabel render_menu_icons /* DA094 80143994 3C091020 */ lui $t1, 0x1020 /* DA098 80143998 3C080001 */ lui $t0, 1 /* DA09C 8014399C 3C074000 */ lui $a3, 0x4000 -/* DA0A0 801439A0 3C068015 */ lui $a2, %hi(D_80157960) -/* DA0A4 801439A4 8CC67960 */ lw $a2, %lo(D_80157960)($a2) +/* DA0A0 801439A0 3C068015 */ lui $a2, %hi(gHudElementList) +/* DA0A4 801439A4 8CC67960 */ lw $a2, %lo(gHudElementList)($a2) /* DA0A8 801439A8 27A50010 */ addiu $a1, $sp, 0x10 .L801439AC: /* DA0AC 801439AC 8CC40000 */ lw $a0, ($a2) @@ -242,8 +242,8 @@ glabel render_menu_icons /* DA138 80143A38 2642FFFF */ addiu $v0, $s2, -1 /* DA13C 80143A3C 18400024 */ blez $v0, .L80143AD0 /* DA140 80143A40 0000882D */ daddu $s1, $zero, $zero -/* DA144 80143A44 3C0C8015 */ lui $t4, %hi(D_80157960) -/* DA148 80143A48 258C7960 */ addiu $t4, $t4, %lo(D_80157960) +/* DA144 80143A44 3C0C8015 */ lui $t4, %hi(gHudElementList) +/* DA148 80143A48 258C7960 */ addiu $t4, $t4, %lo(gHudElementList) /* DA14C 80143A4C 27AB0010 */ addiu $t3, $sp, 0x10 /* DA150 80143A50 0160502D */ daddu $t2, $t3, $zero .L80143A54: @@ -361,8 +361,8 @@ glabel render_menu_icons .L80143C00: /* DA300 80143C00 8E020000 */ lw $v0, ($s0) /* DA304 80143C04 26100004 */ addiu $s0, $s0, 4 -/* DA308 80143C08 3C038015 */ lui $v1, %hi(D_80157960) -/* DA30C 80143C0C 8C637960 */ lw $v1, %lo(D_80157960)($v1) +/* DA308 80143C08 3C038015 */ lui $v1, %hi(gHudElementList) +/* DA30C 80143C0C 8C637960 */ lw $v1, %lo(gHudElementList)($v1) /* DA310 80143C10 00021080 */ sll $v0, $v0, 2 /* DA314 80143C14 00431021 */ addu $v0, $v0, $v1 /* DA318 80143C18 8C440000 */ lw $a0, ($v0) diff --git a/ver/us/asm/nonmatchings/d5a50_len_5fd0/set_hud_element_scale.s b/ver/us/asm/nonmatchings/d5a50_len_5fd0/set_hud_element_scale.s index 41263f5f41..80bcd5e3f9 100644 --- a/ver/us/asm/nonmatchings/d5a50_len_5fd0/set_hud_element_scale.s +++ b/ver/us/asm/nonmatchings/d5a50_len_5fd0/set_hud_element_scale.s @@ -5,8 +5,8 @@ glabel set_hud_element_scale /* DB320 80144C20 2402F7FF */ addiu $v0, $zero, -0x801 /* DB324 80144C24 00822024 */ and $a0, $a0, $v0 /* DB328 80144C28 00042080 */ sll $a0, $a0, 2 -/* DB32C 80144C2C 3C028015 */ lui $v0, %hi(D_80157960) -/* DB330 80144C30 8C427960 */ lw $v0, %lo(D_80157960)($v0) +/* DB32C 80144C2C 3C028015 */ lui $v0, %hi(gHudElementList) +/* DB330 80144C30 8C427960 */ lw $v0, %lo(gHudElementList)($v0) /* DB334 80144C34 44853000 */ mtc1 $a1, $f6 /* DB338 80144C38 00822021 */ addu $a0, $a0, $v0 /* DB33C 80144C3C 8C850000 */ lw $a1, ($a0) diff --git a/ver/us/asm/nonmatchings/d5a50_len_5fd0/set_icon_flags.s b/ver/us/asm/nonmatchings/d5a50_len_5fd0/set_icon_flags.s deleted file mode 100644 index 4650def0be..0000000000 --- a/ver/us/asm/nonmatchings/d5a50_len_5fd0/set_icon_flags.s +++ /dev/null @@ -1,15 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel set_icon_flags -/* DB100 80144A00 2402F7FF */ addiu $v0, $zero, -0x801 -/* DB104 80144A04 00822024 */ and $a0, $a0, $v0 -/* DB108 80144A08 3C028015 */ lui $v0, %hi(D_80157960) -/* DB10C 80144A0C 8C427960 */ lw $v0, %lo(D_80157960)($v0) -/* DB110 80144A10 00042080 */ sll $a0, $a0, 2 -/* DB114 80144A14 00822021 */ addu $a0, $a0, $v0 -/* DB118 80144A18 8C830000 */ lw $v1, ($a0) -/* DB11C 80144A1C 8C620000 */ lw $v0, ($v1) -/* DB120 80144A20 00451025 */ or $v0, $v0, $a1 -/* DB124 80144A24 03E00008 */ jr $ra -/* DB128 80144A28 AC620000 */ sw $v0, ($v1) diff --git a/ver/us/asm/nonmatchings/d5a50_len_5fd0/set_icon_render_pos.s b/ver/us/asm/nonmatchings/d5a50_len_5fd0/set_icon_render_pos.s deleted file mode 100644 index 117f6e0bd2..0000000000 --- a/ver/us/asm/nonmatchings/d5a50_len_5fd0/set_icon_render_pos.s +++ /dev/null @@ -1,14 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel set_icon_render_pos -/* DB084 80144984 2402F7FF */ addiu $v0, $zero, -0x801 -/* DB088 80144988 00822024 */ and $a0, $a0, $v0 -/* DB08C 8014498C 3C028015 */ lui $v0, %hi(D_80157960) -/* DB090 80144990 8C427960 */ lw $v0, %lo(D_80157960)($v0) -/* DB094 80144994 00042080 */ sll $a0, $a0, 2 -/* DB098 80144998 00822021 */ addu $a0, $a0, $v0 -/* DB09C 8014499C 8C820000 */ lw $v0, ($a0) -/* DB0A0 801449A0 A445003C */ sh $a1, 0x3c($v0) -/* DB0A4 801449A4 03E00008 */ jr $ra -/* DB0A8 801449A8 A446003E */ sh $a2, 0x3e($v0) diff --git a/ver/us/asm/nonmatchings/d5a50_len_5fd0/set_menu_icon_script.s b/ver/us/asm/nonmatchings/d5a50_len_5fd0/set_menu_icon_script.s index 39bdd0e4c9..628deb994d 100644 --- a/ver/us/asm/nonmatchings/d5a50_len_5fd0/set_menu_icon_script.s +++ b/ver/us/asm/nonmatchings/d5a50_len_5fd0/set_menu_icon_script.s @@ -5,8 +5,8 @@ glabel set_menu_icon_script /* DAEFC 801447FC 27BDFFE8 */ addiu $sp, $sp, -0x18 /* DAF00 80144800 2402F7FF */ addiu $v0, $zero, -0x801 /* DAF04 80144804 00822024 */ and $a0, $a0, $v0 -/* DAF08 80144808 3C028015 */ lui $v0, %hi(D_80157960) -/* DAF0C 8014480C 8C427960 */ lw $v0, %lo(D_80157960)($v0) +/* DAF08 80144808 3C028015 */ lui $v0, %hi(gHudElementList) +/* DAF0C 8014480C 8C427960 */ lw $v0, %lo(gHudElementList)($v0) /* DAF10 80144810 00042080 */ sll $a0, $a0, 2 /* DAF14 80144814 AFBF0014 */ sw $ra, 0x14($sp) /* DAF18 80144818 AFB00010 */ sw $s0, 0x10($sp) diff --git a/ver/us/asm/nonmatchings/d5a50_len_5fd0/update_menu_icons.s b/ver/us/asm/nonmatchings/d5a50_len_5fd0/update_menu_icons.s index 093d48c22d..73c2c93d9a 100644 --- a/ver/us/asm/nonmatchings/d5a50_len_5fd0/update_menu_icons.s +++ b/ver/us/asm/nonmatchings/d5a50_len_5fd0/update_menu_icons.s @@ -10,8 +10,8 @@ glabel update_menu_icons /* D7D24 80141624 AFBF001C */ sw $ra, 0x1c($sp) /* D7D28 80141628 AFB00010 */ sw $s0, 0x10($sp) .L8014162C: -/* D7D2C 8014162C 3C038015 */ lui $v1, %hi(D_80157960) -/* D7D30 80141630 8C637960 */ lw $v1, %lo(D_80157960)($v1) +/* D7D2C 8014162C 3C038015 */ lui $v1, %hi(gHudElementList) +/* D7D30 80141630 8C637960 */ lw $v1, %lo(gHudElementList)($v1) /* D7D34 80141634 00111080 */ sll $v0, $s1, 2 /* D7D38 80141638 00431021 */ addu $v0, $v0, $v1 /* D7D3C 8014163C 8C500000 */ lw $s0, ($v0) diff --git a/ver/us/symbol_addrs.txt b/ver/us/symbol_addrs.txt index 06677baf03..ea1cb38a13 100644 --- a/ver/us/symbol_addrs.txt +++ b/ver/us/symbol_addrs.txt @@ -18797,7 +18797,7 @@ D_80156980 = 0x80156980; // type:data D_80156F20 = 0x80156F20; // type:data D_80156F60 = 0x80156F60; // type:data D_80157460 = 0x80157460; // type:data -D_80157960 = 0x80157960; // type:data +gHudElementList = 0x80157960; // type:data D_80157964 = 0x80157964; // type:data D_80157968 = 0x80157968; // type:data D_80157970 = 0x80157970; // type:data diff --git a/ver/us/undefined_syms_auto.txt b/ver/us/undefined_syms_auto.txt index ba3defca4f..d5be12ae14 100644 --- a/ver/us/undefined_syms_auto.txt +++ b/ver/us/undefined_syms_auto.txt @@ -641,7 +641,7 @@ D_80156980 = 0x80156980; D_80156F20 = 0x80156F20; D_80156F60 = 0x80156F60; D_80157460 = 0x80157460; -D_80157960 = 0x80157960; +gHudElementList = 0x80157960; D_80157964 = 0x80157964; D_80157968 = 0x80157968; D_80157970 = 0x80157970;