Assorted Decomp Across The Galaxy (#574)

* popup_menu_update & other

* a bunch of 190B20

* starting load_player_actor

* load_player_actor

* blorp

* load_partner_actor

* fx_11_main

* fx_11 done

* cleanup

* fx_12

* 3 encounter_api funcs

* encounter_api done

* some 20ec0 funcs

* clean

* PR comments, warnings

* name btl_actorHomePositions

* PR comments
This commit is contained in:
Ethan Roseman 2021-12-28 06:43:24 -05:00 committed by GitHub
parent 33457751e2
commit 15b6cb398c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
80 changed files with 2711 additions and 5767 deletions

View File

@ -13,6 +13,11 @@ typedef ApiStatus(*ApiFunc)(struct Evt*, s32);
typedef Bytecode EvtSource[0]; typedef Bytecode EvtSource[0];
typedef struct DictionaryEntry {
/* 0x00 */ s32 key;
/* 0x04 */ s32 value;
} DictionaryEntry; // size = 0x08
typedef struct { typedef struct {
u8 r, g, b, a; u8 r, g, b, a;
} Color_RGBA8; } Color_RGBA8;
@ -678,7 +683,7 @@ typedef struct BattleStatus {
/* 0x079 */ u8 pendingStarPoints; /* how many to add */ /* 0x079 */ u8 pendingStarPoints; /* how many to add */
/* 0x07A */ u8 incrementStarPointDelay; /* related to star points, set to 0x28 when they are dropped */ /* 0x07A */ u8 incrementStarPointDelay; /* related to star points, set to 0x28 when they are dropped */
/* 0x07B */ u8 damageTaken; /* 0x07B */ u8 damageTaken;
/* 0x07C */ u8 changePartnerAllowed; /* 0x07C */ s8 changePartnerAllowed;
/* 0x07D */ s8 menuStatus[4]; ///< -1 = automatically pick the first move, 0 = disabled, 1 = enabled /* 0x07D */ s8 menuStatus[4]; ///< -1 = automatically pick the first move, 0 = disabled, 1 = enabled
/* 0x081 */ s8 actionSuccess; /* 0x081 */ s8 actionSuccess;
/* 0x082 */ char unk_82; /* 0x082 */ char unk_82;
@ -697,7 +702,7 @@ typedef struct BattleStatus {
/* 0x08F */ char unk_8F[1]; /* 0x08F */ char unk_8F[1];
/* 0x090 */ s16 unk_90; /* 0x090 */ s16 unk_90;
/* 0x092 */ s8 unk_92; /* 0x092 */ s8 unk_92;
/* 0x093 */ char unk_93; /* 0x093 */ s8 unk_93;
/* 0x094 */ s8 unk_94; /* 0x094 */ s8 unk_94;
/* 0x095 */ s8 unk_95; /* 0x095 */ s8 unk_95;
/* 0x096 */ s8 hammerCharge; /* 0x096 */ s8 hammerCharge;
@ -748,7 +753,7 @@ typedef struct BattleStatus {
/* 0x18C */ s32 currentAttackEventSuppression; /* 0x18C */ s32 currentAttackEventSuppression;
/* 0x190 */ s32 currentAttackStatus; /* 0x190 */ s32 currentAttackStatus;
/* 0x194 */ u8 statusChance; /* 0x194 */ u8 statusChance;
/* 0x195 */ u8 statusDuration; /* 0x195 */ s8 statusDuration;
/* 0x196 */ char unk_196; /* 0x196 */ char unk_196;
/* 0x197 */ u8 targetHomeIndex; /* some sort of home idnex used for target list construction */ /* 0x197 */ u8 targetHomeIndex; /* some sort of home idnex used for target list construction */
/* 0x198 */ u8 powerBounceCounter; /* 0x198 */ u8 powerBounceCounter;
@ -1652,7 +1657,8 @@ typedef struct Actor {
/* 0x11C */ char unk_11C[4]; /* 0x11C */ char unk_11C[4];
/* 0x120 */ s16 flyTime; /* 0x120 */ s16 flyTime;
/* 0x122 */ s16 flyArcAmplitude; /* 0x122 */ s16 flyArcAmplitude;
/* 0x124 */ char unk_124[17]; /* 0x124 */ char unk_124[16];
/* 0x134 */ s8 unk_134;
/* 0x135 */ u8 footStepCounter; /* 0x135 */ u8 footStepCounter;
/* 0x136 */ u8 actorType; /* 0x136 */ u8 actorType;
/* 0x137 */ char unk_137; /* 0x137 */ char unk_137;
@ -1706,7 +1712,7 @@ typedef struct Actor {
/* 0x1FE */ char unk_1FE[2]; /* 0x1FE */ char unk_1FE[2];
/* 0x200 */ s32** unk_200; // Probably a struct but not sure what yet /* 0x200 */ s32** unk_200; // Probably a struct but not sure what yet
/* 0x204 */ s8 unk_204; /* 0x204 */ s8 unk_204;
/* 0x205 */ char unk_205[0x1]; /* 0x205 */ s8 unk_205;
/* 0x206 */ s8 unk_206; /* 0x206 */ s8 unk_206;
/* 0x207 */ s8 extraCoinBonus; /* 0x207 */ s8 extraCoinBonus;
/* 0x208 */ s8 unk_208; /* 0x208 */ s8 unk_208;
@ -1724,7 +1730,8 @@ typedef struct Actor {
/* 0x219 */ s8 transDuration; /* 0x219 */ s8 transDuration;
/* 0x21A */ char unk_21A[2]; /* 0x21A */ char unk_21A[2];
/* 0x21C */ u8 status; /* 0x21C */ u8 status;
/* 0x21D */ char unk_21D[3]; /* 0x21D */ s8 unk_21D;
/* 0x21E */ s16 unk_21E;
/* 0x220 */ s8 isGlowing; /* 0x220 */ s8 isGlowing;
/* 0x221 */ s8 attackBoost; /* 0x221 */ s8 attackBoost;
/* 0x222 */ s8 defenseBoost; /* 0x222 */ s8 defenseBoost;
@ -1744,7 +1751,7 @@ typedef struct Actor {
/* 0x430 */ f32 shadowScale; /* = actor size / 24.0 */ /* 0x430 */ f32 shadowScale; /* = actor size / 24.0 */
/* 0x434 */ s16 renderMode; /* initially 0xD, set to 0x22 if any part is transparent */ /* 0x434 */ s16 renderMode; /* initially 0xD, set to 0x22 if any part is transparent */
/* 0x436 */ s16 hudElementDataIndex; /* 0x436 */ s16 hudElementDataIndex;
/* 0x438 */ s32 x[2]; /* ??? see FUN_80253974 */ /* 0x438 */ s32 unk_438[2]; /* ??? see FUN_80253974 */
/* 0x440 */ struct HudElement* ptrDefuffIcon; /* 0x440 */ struct HudElement* ptrDefuffIcon;
} Actor; // size = 0x444 } Actor; // size = 0x444

View File

@ -2,7 +2,6 @@
#define _EFFECTS_H_ #define _EFFECTS_H_
#include "types.h" #include "types.h"
#include "common_structs.h"
typedef struct { typedef struct {
char unk_00[0x38]; char unk_00[0x38];
@ -95,10 +94,79 @@ typedef struct Effect8 {
/* 0x94 */ f32 unk_94; /* 0x94 */ f32 unk_94;
} Effect8; // size = 0x98 } Effect8; // size = 0x98
typedef struct Effect12 { typedef struct Effect10 {
/* 0x00 */ char unk_00[0x28]; /* 0x00 */ s32 alive;
/* 0x04 */ char unk_04[0x2];
/* 0x06 */ s16 lifetime;
/* 0x08 */ u8 alpha;
/* 0x09 */ char unk_09[0x3];
/* 0x0C */ f32 unk_0C;
/* 0x10 */ f32 unk_10;
/* 0x14 */ f32 unk_14;
/* 0x18 */ f32 unk_18;
/* 0x1C */ f32 unk_1C;
/* 0x20 */ f32 unk_20;
/* 0x24 */ f32 unk_24;
/* 0x28 */ f32 unk_28; /* 0x28 */ f32 unk_28;
} Effect12; // size = 0x2C /* 0x2C */ f32 unk_2C;
/* 0x30 */ f32 unk_30;
/* 0x34 */ f32 unk_34;
/* 0x38 */ f32 unk_38;
/* 0x3C */ f32 unk_3C;
/* 0x40 */ s32 unk_40;
/* 0x44 */ f32 unk_44;
/* 0x48 */ f32 unk_48;
} Effect10; // size = 0x4C
typedef struct Effect11 {
/* 0x00 */ s32 alive;
/* 0x04 */ u16 unk_04;
/* 0x06 */ s16 lifetime;
/* 0x08 */ u8 alpha;
/* 0x09 */ char unk_09[0x3];
/* 0x0C */ f32 unk_0C;
/* 0x10 */ f32 unk_10;
/* 0x14 */ f32 unk_14;
/* 0x18 */ f32 unk_18;
/* 0x1C */ f32 unk_1C;
/* 0x20 */ f32 unk_20;
/* 0x24 */ f32 unk_24;
/* 0x28 */ f32 unk_28;
/* 0x2C */ f32 unk_2C;
/* 0x30 */ f32 unk_30;
/* 0x34 */ char unk_34[0x4];
/* 0x38 */ f32 unk_38;
/* 0x3C */ f32 unk_3C;
/* 0x40 */ f32 unk_40;
/* 0x44 */ s32 unk_44;
/* 0x48 */ char unk_48[0x8];
} Effect11; // size = 0x50
typedef struct Effect12 {
/* 0x00 */ s32 alive;
/* 0x04 */ char unk_04[0x2];
/* 0x06 */ s16 lifetime;
/* 0x08 */ u8 alpha;
/* 0x09 */ char unk_09[0x3];
/* 0x0C */ f32 unk_0C;
/* 0x10 */ f32 unk_10;
/* 0x14 */ f32 unk_14;
/* 0x18 */ f32 unk_18;
/* 0x1C */ f32 unk_1C;
/* 0x20 */ f32 unk_20;
/* 0x24 */ f32 unk_24;
/* 0x28 */ f32 unk_28;
/* 0x2C */ f32 unk_2C;
/* 0x30 */ Mtx mtx;
/* 0x70 */ s32 unk_70;
/* 0x74 */ char unk_74[0x8];
/* 0x7C */ s32 unk_7C;
/* 0x80 */ s32 unk_80;
/* 0x84 */ s32 unk_84;
/* 0x88 */ char unk_88[0x8];
/* 0x90 */ f32 unk_90;
/* 0x94 */ f32 unk_94;
} Effect12; // size = 0x98
// TODO figure out what this actually is // TODO figure out what this actually is
// playFX_4E invokes gEffectTable[78]'s entryPoint function // playFX_4E invokes gEffectTable[78]'s entryPoint function
@ -153,7 +221,7 @@ typedef struct EffectInstance {
/* 0x08 */ s32 numParts; /* 0x08 */ s32 numParts;
/* 0x0C */ void* data; // often but not always EffectInstanceData /* 0x0C */ void* data; // often but not always EffectInstanceData
/* 0x10 */ struct EffectGraphics* effect; /* 0x10 */ struct EffectGraphics* effect;
} EffectInstance; } EffectInstance; // size = 0x14
typedef struct EffectBlueprint { typedef struct EffectBlueprint {
/* 0x00 */ s32 unk_00; /* 0x00 */ s32 unk_00;
@ -189,7 +257,7 @@ typedef struct EffectWhirlwind {
/* 0x28 */ f32 unk_28; /* 0x28 */ f32 unk_28;
/* 0x2C */ f32 unk_2C; /* 0x2C */ f32 unk_2C;
/* 0x30 */ f32 unk_30; /* 0x30 */ f32 unk_30;
} EffectWhirlwind; } EffectWhirlwind;
typedef struct Effect6FData { typedef struct Effect6FData {
/* 0x00 */ EffectInstanceDataThing* unk_00; /* 0x00 */ EffectInstanceDataThing* unk_00;

View File

@ -19,7 +19,7 @@ void shim_guScaleF(float mf[4][4], float x, float y, float z);
void shim_guRotateF(float mf[4][4], float a, float x, float y, float z); void shim_guRotateF(float mf[4][4], float a, float x, float y, float z);
void shim_guTranslateF(float mf[4][4], float x, float y, float z); void shim_guTranslateF(float mf[4][4], float x, float y, float z);
void shim_guPositionF(float mf[4][4], float r, float p, float h, float s, float x, float y, float z); void shim_guPositionF(float mf[4][4], float r, float p, float h, float s, float x, float y, float z);
void shim_mem_clear(s8* data, s32 numBytes); void shim_mem_clear(void* data, s32 numBytes);
void shim_transform_point(Matrix4f mtx, f32 inX, f32 inY, f32 inZ, f32 inS, f32* outX, f32* outY, f32* outZ, f32* outS); void shim_transform_point(Matrix4f mtx, f32 inX, f32 inY, f32 inZ, f32 inS, f32* outX, f32* outY, f32* outZ, f32* outS);
#endif #endif

View File

@ -545,6 +545,7 @@ enum SoundIDs {
SOUND_282 = 0x00000282, SOUND_282 = 0x00000282,
SOUND_BOW_SPOOK = 0x00000291, SOUND_BOW_SPOOK = 0x00000291,
SOUND_295 = 0x00000295, SOUND_295 = 0x00000295,
SOUND_299 = 0x00000299,
SOUND_UNUSED_2C1 = 0x000002C1, SOUND_UNUSED_2C1 = 0x000002C1,
SOUND_SMOKE_BURST = 0x000002CD, SOUND_SMOKE_BURST = 0x000002CD,
SOUND_DAYZEE_SONG = 0x000002D7, SOUND_DAYZEE_SONG = 0x000002D7,
@ -1260,6 +1261,8 @@ enum HitSounds {
HIT_SOUND_SHOCK = 5, HIT_SOUND_SHOCK = 5,
}; };
// Player.debuff
// Partner.debuff
enum Statuses { enum Statuses {
STATUS_END = 0x00000000, STATUS_END = 0x00000000,
STATUS_NORMAL = 0x00000001, STATUS_NORMAL = 0x00000001,

View File

@ -51,7 +51,7 @@ u32 get_entity_type(s32 arg0);
Entity* get_entity_by_index(s32 index); Entity* get_entity_by_index(s32 index);
s32 create_entity(StaticEntityData*, s32, s32, s32, s32, ...); s32 create_entity(StaticEntityData*, s32, s32, s32, s32, ...);
void entity_shattering_idle(Entity* entity); void entity_shattering_idle(Entity* entity);
void func_802666E4(Actor* actor, f32 x, f32 y, f32 z, s16 damage); void func_802666E4(Actor* actor, f32 x, f32 y, f32 z, s32 damage);
void step_game_loop(void); void step_game_loop(void);
s32 resume_all_group(s32 groupFlags); s32 resume_all_group(s32 groupFlags);
@ -96,6 +96,7 @@ f32 func_800E34D8(void);
void func_800E4AD8(s32 arg0); void func_800E4AD8(s32 arg0);
f32 player_check_collision_below(f32, s32* colliderID); f32 player_check_collision_below(f32, s32* colliderID);
s32 can_trigger_loading_zone(void); s32 can_trigger_loading_zone(void);
void func_80266684(void);
void func_802667F0(s32, Actor*, f32, f32, f32); void func_802667F0(s32, Actor*, f32, f32, f32);
void func_802591EC(s32, ActorPart*, s32, Matrix4f*, s32); void func_802591EC(s32, ActorPart*, s32, Matrix4f*, s32);
@ -634,7 +635,7 @@ void set_message_msg(s32 msgID, s32 index);
void set_message_value(s32 value, s32 index); void set_message_value(s32 value, s32 index);
s32 store_item(s32 itemID); s32 store_item(s32 itemID);
void open_status_menu_short(void); void open_status_menu_short(void);
void func_8024EFE0(f32 x, f32 y, f32 z, s32 a, s32 b, s32 c); void func_8024EFE0(f32 x, f32 y, f32 z, s32, s32, s32);
void func_802664DC(f32 x, f32 y, f32 z, s32 attack, s32 a); void func_802664DC(f32 x, f32 y, f32 z, s32 attack, s32 a);
s32 dispatch_damage_event_partner(s32 damageAmount, s32 event, s32 stopMotion); s32 dispatch_damage_event_partner(s32 damageAmount, s32 event, s32 stopMotion);
s32 calc_partner_test_enemy(void); s32 calc_partner_test_enemy(void);

View File

@ -280,7 +280,7 @@ extern s32 D_800F7B44;
extern f32 D_8010C938; extern f32 D_8010C938;
extern f32 D_8010C990; extern f32 D_8010C990;
extern s32 D_8010C978; extern s32 D_8010C978;
extern Vec3s D_80283524[]; extern Vec3s btl_actorHomePositions[];
extern PartnerActionStatus gPartnerActionStatus; // something with partners extern PartnerActionStatus gPartnerActionStatus; // something with partners
extern Temp8010F250 D_8010F250; // sfx_play_sound state struct? extern Temp8010F250 D_8010F250; // sfx_play_sound state struct?
@ -324,7 +324,7 @@ extern UNK_TYPE D_0A000800;
extern UNK_TYPE D_0A000808; extern UNK_TYPE D_0A000808;
// Scripts // Scripts
extern EvtSource* SCRIPT_NpcDefeat; extern EvtSource SCRIPT_NpcDefeat;
extern EvtSource ShakeCam1; extern EvtSource ShakeCam1;
extern EvtSource ShakeCamX; extern EvtSource ShakeCamX;

View File

@ -833,7 +833,7 @@ void btl_state_update_partner_move(void) {
func_8024E40C(0x36); func_8024E40C(0x36);
btl_show_battle_message(0x23, 0x3C); btl_show_battle_message(0x23, 0x3C);
partner->status = 0; partner->status = 0;
partner->unk_21D[0] = 0; partner->unk_21D = 0;
gBattleState2 = BATTLE_STATES2_UNK_B; gBattleState2 = BATTLE_STATES2_UNK_B;
partner->flags |= ACTOR_FLAG_8000000; partner->flags |= ACTOR_FLAG_8000000;
} else { } else {

View File

@ -1,8 +1,11 @@
#include "common.h" #include "common.h"
#include "effects.h" #include "effects.h"
extern PopupMessage popupMessages[32]; // from 190B20.c
extern s32 bMessages[];
extern PopupMessage* D_802838F8; extern PopupMessage* D_802838F8;
extern PopupMessage popupMessages[32];
extern s16 D_8029F64C; extern s16 D_8029F64C;
extern s16 D_8029F640; extern s16 D_8029F640;
extern s16 D_8029F64A; extern s16 D_8029F64A;
@ -89,7 +92,6 @@ void free_popup(PopupMessage* popup) {
popup->active = FALSE; popup->active = FALSE;
} }
void func_8024EFE0(f32 x, f32 y, f32 z, s32, s32, s32);
INCLUDE_ASM(s32, "17D6A0", func_8024EFE0); INCLUDE_ASM(s32, "17D6A0", func_8024EFE0);
INCLUDE_ASM(s32, "17D6A0", func_8024F394); INCLUDE_ASM(s32, "17D6A0", func_8024F394);

View File

@ -328,7 +328,7 @@ ApiStatus PlayLoopingSoundAtActor(Evt* script, s32 isInitialCall) {
} }
actor = get_actor(actorID); actor = get_actor(actorID);
actor->x[idx] = soundID; actor->unk_438[idx] = soundID;
sfx_play_sound_at_position(soundID, 0, actor->currentPos.x, actor->currentPos.y, actor->currentPos.z); sfx_play_sound_at_position(soundID, 0, actor->currentPos.x, actor->currentPos.y, actor->currentPos.z);
return ApiStatus_DONE2; return ApiStatus_DONE2;
@ -346,12 +346,12 @@ ApiStatus StopLoopingSoundAtActor(Evt* script, s32 isInitialCall) {
actor = get_actor(actorID); actor = get_actor(actorID);
if (actor->x[idx] == 0) { if (actor->unk_438[idx] == 0) {
return ApiStatus_DONE2; return ApiStatus_DONE2;
} }
sfx_stop_sound(actor->x[idx]); sfx_stop_sound(actor->unk_438[idx]);
actor->x[idx] = 0; actor->unk_438[idx] = 0;
return ApiStatus_DONE2; return ApiStatus_DONE2;
} }

File diff suppressed because it is too large Load Diff

View File

@ -57,13 +57,13 @@ void set_part_absolute_position(s32 actorID, s32 partIndex, f32 x, f32 y, f32 z)
ActorPart* actorPart; ActorPart* actorPart;
switch (actorID & 0x700) { switch (actorID & 0x700) {
case 0: case ACTOR_PLAYER:
actor->currentPos.x = x; actor->currentPos.x = x;
actor->currentPos.y = y; actor->currentPos.y = y;
actor->currentPos.z = z; actor->currentPos.z = z;
break; break;
case 0x100: case ACTOR_PARTNER:
case 0x200: case ACTOR_ENEMY0:
actorPart = get_actor_part(actor, partIndex); actorPart = get_actor_part(actor, partIndex);
actorPart->absolutePosition.x = x; actorPart->absolutePosition.x = x;
actorPart->absolutePosition.y = y; actorPart->absolutePosition.y = y;
@ -87,13 +87,13 @@ Actor* get_actor(s32 actorID) {
u32 idIdx = (u8)actorID; u32 idIdx = (u8)actorID;
switch (idFlag) { switch (idFlag) {
case 0: case ACTOR_PLAYER:
ret = battleStatus->playerActor; ret = battleStatus->playerActor;
break; break;
case 0x100: case ACTOR_PARTNER:
ret = battleStatus->partnerActor; ret = battleStatus->partnerActor;
break; break;
case 0x200: case ACTOR_ENEMY0:
ret = battleStatus->enemyActors[idIdx]; ret = battleStatus->enemyActors[idIdx];
break; break;
} }
@ -173,9 +173,9 @@ ApiStatus SetGoalToIndex(Evt* script, s32 isInitialCall) {
} }
actor = get_actor(actorID); actor = get_actor(actorID);
actor->state.goalPos.x = D_80283524[index].x; actor->state.goalPos.x = btl_actorHomePositions[index].x;
actor->state.goalPos.y = D_80283524[index].y; actor->state.goalPos.y = btl_actorHomePositions[index].y;
actor->state.goalPos.z = D_80283524[index].z; actor->state.goalPos.z = btl_actorHomePositions[index].z;
return ApiStatus_DONE2; return ApiStatus_DONE2;
} }
@ -678,13 +678,13 @@ ApiStatus SetPartPos(Evt* script, s32 isInitialCall) {
actor = get_actor(actorID); actor = get_actor(actorID);
switch (actorID & 0x700) { switch (actorID & 0x700) {
case 0: case ACTOR_PLAYER:
actor->currentPos.x = x; actor->currentPos.x = x;
actor->currentPos.y = y; actor->currentPos.y = y;
actor->currentPos.z = z; actor->currentPos.z = z;
break; break;
case 0x100: case ACTOR_PARTNER:
case 0x200: case ACTOR_ENEMY0:
actorPart = get_actor_part(actor, partIndex); actorPart = get_actor_part(actor, partIndex);
if (!(actorPart->flags & ACTOR_PART_FLAG_100000)) { if (!(actorPart->flags & ACTOR_PART_FLAG_100000)) {
@ -721,10 +721,10 @@ ApiStatus SetEnemyTargetOffset(Evt* script, s32 isInitialCall) {
actor = get_actor(actorID); actor = get_actor(actorID);
switch (actorID & 0x700) { switch (actorID & 0x700) {
case 0: case ACTOR_PLAYER:
break; break;
case 0x100: case ACTOR_PARTNER:
case 0x200: case ACTOR_ENEMY0:
actorPart = get_actor_part(actor, partIndex); actorPart = get_actor_part(actor, partIndex);
actorPart->targetOffset.x = x; actorPart->targetOffset.x = x;
actorPart->targetOffset.y = y; actorPart->targetOffset.y = y;
@ -1957,7 +1957,7 @@ ApiStatus SummonEnemy(Evt* script, s32 isInitialCall) {
if (isInitialCall) { if (isInitialCall) {
script->functionTemp[0] = 0; script->functionTemp[0] = 0;
} }
switch (script->functionTemp[0]) { switch (script->functionTemp[0]) {
case 0: case 0:
script->functionTemp[1] = create_actor(evt_get_variable(script, *args++)); script->functionTemp[1] = create_actor(evt_get_variable(script, *args++));
@ -2374,7 +2374,7 @@ ApiStatus ModifyActorDecoration(Evt* script, s32 isInitialCall) {
if (actorID == ACTOR_SELF) { if (actorID == ACTOR_SELF) {
actorID = script->owner1.actorID; actorID = script->owner1.actorID;
} }
actor = get_actor(actorID); actor = get_actor(actorID);
actorPart = get_actor_part(actor, partIndex); actorPart = get_actor_part(actor, partIndex);
decorationtable = actorPart->decorationTable; decorationtable = actorPart->decorationTable;

View File

@ -7,7 +7,7 @@
extern s32 D_802946E0[]; extern s32 D_802946E0[];
void dispatch_event_actor(Actor* actor, s32 event); void dispatch_event_actor(Actor* actor, s32 event);
void func_8024EFE0(f32 x, f32 y, f32 z, s32 a, s32 b, s32 c); void func_8024EFE0(f32 x, f32 y, f32 z, s32, s32, s32);
void func_802664DC(f32 x, f32 y, f32 z, s32 attack, s32 a); void func_802664DC(f32 x, f32 y, f32 z, s32 attack, s32 a);
s32 dispatch_damage_event_actor_1(Actor* actor, s32 damageAmount, s32 event); s32 dispatch_damage_event_actor_1(Actor* actor, s32 damageAmount, s32 event);
s32 func_80263230(Actor*, Actor*); s32 func_80263230(Actor*, Actor*);

View File

@ -72,6 +72,7 @@ extern HudElementAnim D_80107474[];
extern s32 D_800A0F40; extern s32 D_800A0F40;
extern PopupMessage D_800A0BC0[32]; extern PopupMessage D_800A0BC0[32];
extern s16 D_80078160[]; extern s16 D_80078160[];
extern s16 D_80078164[];
extern s32 D_80078168[]; extern s32 D_80078168[];
void update_merlee_message(PopupMessage* popup); void update_merlee_message(PopupMessage* popup);
@ -175,7 +176,6 @@ void show_merlee_message(s16 messageIndex, s16 duration) {
} }
} }
#ifdef NON_MATCHING // .rodata alignment, will match once all other functions in this file are matched
void update_merlee_message(PopupMessage* popup) { void update_merlee_message(PopupMessage* popup) {
s32 closeMessage = FALSE; s32 closeMessage = FALSE;
@ -210,12 +210,20 @@ void update_merlee_message(PopupMessage* popup) {
dispose_merlee_message(popup); dispose_merlee_message(popup);
} }
} }
#else
INCLUDE_ASM(s32, "20ec0_len_5040", update_merlee_message);
#endif
void draw_merlee_message_string(PopupMessage* popup); // TODO remove once all other functions in this file are matched
INCLUDE_ASM(s32, "20ec0_len_5040", draw_merlee_message_string); const static f32 padding = 0.0f;
void draw_merlee_message_string(PopupMessage* popup, s32 posX, s32 posY) {
s32 messageID = D_80078168[popup->messageIndex];
posY += 6;
posX += 15;
posY += D_80078164[get_msg_lines(messageID) - 1];
draw_msg(messageID, posX, posY, 255, 15, 0);
}
void draw_merlee_message(PopupMessage* popup) { void draw_merlee_message(PopupMessage* popup) {
s32 messageID; s32 messageID;
@ -359,7 +367,15 @@ void enable_status_3(s32 iconID) {
statusIcon->flags |= STATUS_ICON_FLAG_TRANSPARENT; statusIcon->flags |= STATUS_ICON_FLAG_TRANSPARENT;
} }
INCLUDE_ASM(s32, "20ec0_len_5040", func_80047B38); void func_80047B38(s32 iconID) {
HudStatusIcon* statusIcon = &D_800A0F44[iconID];
statusIcon->flags &= ~STATUS_ICON_FLAG_STATUS_4;
if (!statusIcon->status4.active) {
statusIcon->status4.active = TRUE;
statusIcon->status4.unk_02 = TRUE;
}
}
void remove_status_4(s32 iconID) { void remove_status_4(s32 iconID) {
HudStatusIcon* statusIcon = &D_800A0F44[iconID]; HudStatusIcon* statusIcon = &D_800A0F44[iconID];

View File

@ -13,8 +13,6 @@ extern HudElementAnim D_801086AC[];
extern HudElementAnim D_801083D8[]; extern HudElementAnim D_801083D8[];
extern HudElementAnim D_80108068[]; extern HudElementAnim D_80108068[];
extern HudElementAnim D_80104BEC[]; extern HudElementAnim D_80104BEC[];
extern HudElementAnim D_80108558[];
extern HudElementAnim D_80109270[];
void clear_player_data(void) { void clear_player_data(void) {
PlayerData* playerData = &gPlayerData; PlayerData* playerData = &gPlayerData;

View File

@ -1,34 +1,68 @@
#include "common.h" #include "common.h"
#include "hud_element.h" #include "hud_element.h"
extern HudElementAnim D_80104A00[0];
extern HudElementAnim D_80104C10[0];
extern HudElementAnim D_80107798[0];
extern HudElementAnim D_801077E4[0];
extern HudElementAnim D_8010790C[0];
extern HudElementAnim D_80109298;
extern HudElementAnim D_801092C0;
extern HudElementAnim D_801092E8;
extern HudElementAnim D_80109310;
HudElementAnim* D_80109890[] = { &D_80109298, &D_801092E8 };
HudElementAnim* D_80109898[] = { &D_801092C0, &D_80109310 };
s16 D_801098A0[] = {
0x008C, 0x008C, 0x008D, 0x007C, 0x0086, 0x0077, 0x008D, 0x008D, 0x006C, 0x008D, 0x0084, 0x0084, 0x008D, 0x008C,
};
s16 D_801098BC[] = {
0x0089, 0x0085, 0x0089, 0x009A, 0x00A4, 0x0122, 0x0089, 0x0089, 0x00A7, 0x0089, 0x0089, 0x0093, 0x0089, 0x0089,
0x0000, 0x0000, 0x0000, 0x0000,
};
extern s32 D_8010D640;
extern s32 D_8010D644;
extern s32 D_8010D648;
extern s32 D_8010D64C;
extern s32 D_8010D650; extern s32 D_8010D650;
extern s8 D_8010D654;
extern s8 D_8010D655;
extern u8 D_8010D656;
extern s16 D_8010D658;
extern s16 D_8010D65A;
extern s32 D_8010D65C;
extern s32 D_8010D660; extern s32 D_8010D660;
extern s32 D_8010D664; extern s32 D_8010D664;
extern s8 D_8010D699;
extern PopupMenu* D_8010D69C;
extern s32 D_8010D640;
extern s32 D_8010D65C;
extern s32 D_8010D668; extern s32 D_8010D668;
extern s32 D_8010D66C; extern s32 D_8010D66C;
extern s32 D_8010D670; extern s32 D_8010D670;
extern s32 D_8010D674; extern s32 D_8010D674;
extern s32 D_8010D678; extern s32 D_8010D678;
extern s8 D_8010D69A; extern s16 D_8010D67C;
extern s32 D_8010D648; extern s16 D_8010D67E;
extern s32 D_8010D64C; extern s16 D_8010D680;
extern s8 D_8010D654; extern s16 D_8010D682;
extern u8 D_8010D655; extern s16 D_8010D684;
extern u8 D_8010D656; extern s16 D_8010D686;
extern s16 D_8010D688;
extern s16 D_8010D68A;
extern s16 D_8010D68C;
extern s8 D_8010D68E; extern s8 D_8010D68E;
extern s8 D_8010D68F; extern s8 D_8010D68F;
extern s8 D_8010D690;
extern s8 D_8010D691; extern s8 D_8010D691;
extern s8 D_8010D692; extern s8 D_8010D692;
extern s32 D_8010D694; extern s32 D_8010D694;
extern s8 D_8010D698; extern s8 D_8010D698;
extern s8 D_8010D699;
extern s8 D_8010D69A;
extern PopupMenu* gPopupMenu;
extern MessagePrintState* D_8010D6A0;
extern s32 D_8010D6A4;
void func_800E9894(void); void func_800E9894(void);
s8 func_800E98D4(void); s8 func_800E98D4(void);
void open_status_menu_short(void);
void func_800E98C4(void);
enum PopupTypes { enum PopupTypes {
POPUP_TYPE_USE_ITEM, POPUP_TYPE_USE_ITEM,
@ -46,6 +80,15 @@ enum PopupTypes {
POPUP_TYPE_USE_KEY, POPUP_TYPE_USE_KEY,
}; };
void popup_menu_draw_menu_contents(s32* userData, s32 baseX, s32 baseY, s32 width, s32 height, s32 opacity, s32 darkening);
void popup_menu_draw_title_contents(s32* userData, s32 baseX, s32 baseY, s32 width, s32 height, s32 opacity, s32 darkening);
void func_800F48F4(s32* userData, s32 baseX, s32 baseY, s32 width, s32 height, s32 opacity, s32 darkening);
void func_800F4944(s32* userData, s32 baseX, s32 baseY, s32 width, s32 height, s32 opacity, s32 darkening);
void func_800F4C1C(PopupMessage* popup, s32 x, s32 y);
void func_800F4C6C(PopupMessage* popup, s32 x, s32 y);
void func_800F4CF0(PopupMessage* popup, s32 x, s32 y);
void func_800F4D28(PopupMessage* popup, s32 x, s32 y);
INCLUDE_ASM(s32, "8a860_len_3f30", hide_popup_menu); INCLUDE_ASM(s32, "8a860_len_3f30", hide_popup_menu);
void destroy_popup_menu(void) { void destroy_popup_menu(void) {
@ -55,30 +98,30 @@ void destroy_popup_menu(void) {
free_hud_element(D_8010D670); free_hud_element(D_8010D670);
free_hud_element(D_8010D674); free_hud_element(D_8010D674);
if (D_8010D69C->popupType == POPUP_TYPE_TRADE_FOR_BADGE) { if (gPopupMenu->popupType == POPUP_TYPE_TRADE_FOR_BADGE) {
free_hud_element(D_8010D660); free_hud_element(D_8010D660);
free_hud_element(D_8010D664); free_hud_element(D_8010D664);
} }
if (D_8010D69C->popupType == POPUP_TYPE_UPGRADE_PARTNER) { if (gPopupMenu->popupType == POPUP_TYPE_UPGRADE_PARTNER) {
free_hud_element(D_8010D660); free_hud_element(D_8010D660);
free_hud_element(D_8010D664); free_hud_element(D_8010D664);
} }
if (D_8010D69C->popupType == POPUP_TYPE_SWITCH_PARTNER || D_8010D69C->popupType == POPUP_TYPE_UPGRADE_PARTNER) { if (gPopupMenu->popupType == POPUP_TYPE_SWITCH_PARTNER || gPopupMenu->popupType == POPUP_TYPE_UPGRADE_PARTNER) {
free_hud_element(D_8010D668); free_hud_element(D_8010D668);
} }
if (D_8010D69C->popupType == POPUP_TYPE_SELL_ITEM) { if (gPopupMenu->popupType == POPUP_TYPE_SELL_ITEM) {
free_hud_element(D_8010D660); free_hud_element(D_8010D660);
} }
if ((D_8010D69C->popupType <= POPUP_TYPE_USE_ITEM || if ((gPopupMenu->popupType <= POPUP_TYPE_USE_ITEM ||
D_8010D69C->popupType == POPUP_TYPE_SWITCH_PARTNER || gPopupMenu->popupType == POPUP_TYPE_SWITCH_PARTNER ||
D_8010D69C->popupType == POPUP_TYPE_THROW_AWAY_ITEM || gPopupMenu->popupType == POPUP_TYPE_THROW_AWAY_ITEM ||
D_8010D69C->popupType == POPUP_TYPE_TRADE_FOR_BADGE || gPopupMenu->popupType == POPUP_TYPE_TRADE_FOR_BADGE ||
D_8010D69C->popupType == POPUP_TYPE_UPGRADE_PARTNER || gPopupMenu->popupType == POPUP_TYPE_UPGRADE_PARTNER ||
D_8010D69C->popupType == POPUP_TYPE_USE_KEY gPopupMenu->popupType == POPUP_TYPE_USE_KEY
) && !gGameStatusPtr->isBattle) { ) && !gGameStatusPtr->isBattle) {
if (D_8010D69A == 0) { if (D_8010D69A == 0) {
func_800E98C4(); func_800E98C4();
@ -91,14 +134,727 @@ void destroy_popup_menu(void) {
INCLUDE_ASM(s32, "8a860_len_3f30", func_800F16CC); INCLUDE_ASM(s32, "8a860_len_3f30", func_800F16CC);
void popup_menu_update(void); s32 popup_menu_update(void) {
INCLUDE_ASM(s32, "8a860_len_3f30", popup_menu_update); s32 posX;
s32 posY;
s32 width;
s32 elementID;
s32 cond;
s32 buttons;
s32 msgID;
s32 one;
s32 i;
switch (D_8010D640) {
case 0:
D_8010D67C = 20;
D_8010D67E = 72;
D_8010D680 = 20;
D_8010D682 = 186;
D_8010D684 = 16;
D_8010D686 = 88;
D_8010D688 = 32;
D_8010D68A = 164;
if (D_8010D68E != 0) {
D_8010D67C = D_801098A0[gPopupMenu->popupType] + 20;
}
if (D_8010D68F >= 7) {
D_8010D67E = 62;
}
D_8010D68C = 0;
elementID = create_hud_element(D_8010790C);
D_8010D65C = elementID;
set_hud_element_flags(elementID, 0x80);
set_hud_element_tint(elementID, 255, 255, 255);
if (gPopupMenu->popupType != 2) {
set_hud_element_flags(elementID, 2);
}
one = 1; // required to match (why is 1 loaded so early?)
elementID = create_hud_element(gPopupMenu->ptrIcon[0]);
D_8010D678 = elementID;
set_hud_element_scale(elementID, 0.45f);
set_hud_element_flags(elementID, 0x8080);
elementID = create_hud_element(D_80104A28);
D_8010D66C = elementID;
set_hud_element_flags(elementID, 0x20000080);
elementID = create_hud_element(D_801077E4);
D_8010D670 = elementID;
set_hud_element_flags(elementID, 0x20000080);
elementID = create_hud_element(D_80107798);
D_8010D674 = elementID;
set_hud_element_flags(elementID, 0x20000080);
if (gPopupMenu->popupType == 3) {
D_8010D660 = create_hud_element(D_80104C10);
elementID = D_8010D660;
set_hud_element_flags(elementID, 0x80);
set_hud_element_tint(elementID, 255, 255, 255);
}
if (gPopupMenu->popupType == 4) {
D_8010D660 = create_hud_element(D_80104C10);
elementID = D_8010D660;
set_hud_element_flags(elementID, 0x8080);
set_hud_element_tint(elementID, 255, 255, 255);
}
if (gPopupMenu->popupType == 5) {
D_8010D660 = create_hud_element(D_80108558);
elementID = D_8010D660;
set_hud_element_flags(elementID, 0x80);
set_hud_element_tint(elementID, 255, 255, 255);
}
if (gPopupMenu->popupType == 3 || gPopupMenu->popupType == 4) {
D_8010D664 = create_hud_element(D_80109270);
elementID = D_8010D664;
set_hud_element_flags(elementID, 0x80);
set_hud_element_tint(elementID, 255, 255, 255);
}
if (gPopupMenu->popupType == one || gPopupMenu->popupType == 4) {
D_8010D668 = create_hud_element(D_80109890[0]);
elementID = D_8010D668;
set_hud_element_flags(elementID, 0x80);
set_hud_element_tint(elementID, 255, 255, 255);
}
D_8010D65A = -200;
D_8010D644 = D_8010D691;
if (D_8010D68E == 0) {
D_8010D644 = 1;
}
D_8010D690 = 0xA;
posX = D_8010D67C;
posY = D_8010D67E;
switch (gPopupMenu->popupType) {
case 0:
case 2:
case 6:
case 7:
case 12:
set_window_properties(0xE, posX, posY, 0x91, ((s8) D_8010D656 * 0xD) + 0x1A, 0x14, popup_menu_draw_menu_contents, NULL, -1);
if (gPopupMenu->unk_31C == 0) {
set_window_properties(0xF, 0x19, -6, 0x5F, 0x10, 0x15, popup_menu_draw_title_contents, NULL, 0xE);
} else {
set_window_properties(0xF, 0xC, -6, 0x79, 0x10, 0x15, popup_menu_draw_title_contents, NULL, 0xE);
}
set_window_update(0xF, 1);
set_window_update(0x11, 2);
break;
case 1:
set_window_properties(0xE, posX, posY, 0x8B, ((s8) D_8010D656 * 0xD) + 0x1A, 0x14, popup_menu_draw_menu_contents, NULL, -1);
set_window_properties(0x11, 0xD, -6, 0x72, 0x10, 0x15, popup_menu_draw_title_contents, NULL, 0xE);
set_window_update(0xF, 2);
set_window_update(0x11, 1);
break;
case 3:
set_window_properties(0xE, posX, posY, 0xA2, ((s8) D_8010D656 * 0xD) + 0x1A, 0x14, popup_menu_draw_menu_contents, NULL, -1);
set_window_properties(0xF, 0x11, -6, 0x60, 0x10, 0x15, popup_menu_draw_title_contents, NULL, 0xE);
set_window_update(0xF, 1);
set_window_update(0x11, 2);
break;
case 4:
set_window_properties(0xE, posX, posY, 0x92, ((s8) D_8010D656 * 0xD) + 0x1A, 0x14, popup_menu_draw_menu_contents, NULL, -1);
set_window_properties(0x11, 0xC, -6, 0x72, 0x10, 0x15, popup_menu_draw_title_contents, NULL, 0xE);
set_window_update(0xF, 2);
set_window_update(0x11, 1);
break;
case 5:
set_window_properties(0xE, posX, posY, 0xA7, ((s8) D_8010D656 * 0xD) + 0x1A, 0x14, popup_menu_draw_menu_contents, NULL, -1);
set_window_properties(0xF, 0x16, -6, 0x5F, 0x10, 0x15, popup_menu_draw_title_contents, NULL, 0xE);
set_window_update(0xF, 1);
set_window_update(0x11, 2);
break;
case 8:
set_window_properties(0xE, posX, posY, 0xAA, ((s8) D_8010D656 * 0xD) + 0x1A, 0x14, popup_menu_draw_menu_contents, NULL, -1);
set_window_properties(0xF, 0x20, -6, 0x68, 0x10, 0x15, popup_menu_draw_title_contents, NULL, 0xE);
set_window_update(0xF, 1);
set_window_update(0x11, 2);
break;
case 9:
set_window_properties(0xE, posX, posY, 0x91, ((s8) D_8010D656 * 0xD) + 0x1A, 0x14, popup_menu_draw_menu_contents, NULL, -1);
set_window_properties(0xF, 0xC, -6, 0x79, 0x10, 0x15, popup_menu_draw_title_contents, NULL, 0xE);
set_window_update(0xF, 1);
set_window_update(0x11, 2);
break;
case 10:
set_window_properties(0xE, posX, posY, 0x80, ((s8) D_8010D656 * 0xD) + 0x1A, 0x14, popup_menu_draw_menu_contents, NULL, -1);
set_window_properties(0xF, 0xC, -6, 0x68, 0x10, 0x15, popup_menu_draw_title_contents, NULL, 0xE);
set_window_update(0xF, 1);
set_window_update(0x11, 2);
break;
case 11:
set_window_properties(0xE, posX, posY, 0x95, ((s8) D_8010D656 * 0xD) + 0x1A, 0x14, popup_menu_draw_menu_contents, NULL, -1);
set_window_properties(0xF, 6, -6, 0x8B, 0x10, 0x15, popup_menu_draw_title_contents, NULL, 0xE);
set_window_update(0xF, 1);
set_window_update(0x11, 2);
break;
case 13:
set_window_properties(0xE, posX, posY, 0x83, ((s8) D_8010D656 * 0xD) + 0x1A, 0x14, popup_menu_draw_menu_contents, NULL, -1);
set_window_properties(0x11, 0xA, -6, 0x72, 0x10, 0x15, popup_menu_draw_title_contents, NULL, 0xE);
set_window_update(0xF, 2);
set_window_update(0x11, 1);
break;
}
switch (gPopupMenu->popupType) {
case 3:
set_window_properties(0x10, 0x7E, -0xE, 0x20, 0x20, 0x15, func_800F4C6C, NULL, 0xE);
break;
case 5:
set_window_properties(0x10, 0x83, -0xE, 0x20, 0x20, 0x15, func_800F4C6C, NULL, 0xE);
break;
}
if (gPopupMenu->popupType == 3) {
set_window_properties(0x14, D_8010D688, D_8010D68A, 0x40, 0x14, 0x15, func_800F4D28, NULL, -1);
}
do {
cond = FALSE;
if (D_8010D648 >= D_8010D654 + D_8010D655 - 1) {
D_8010D654++;
if (D_8010D654 > gPopupMenu->numEntries - D_8010D68F) {
D_8010D654 = gPopupMenu->numEntries - D_8010D68F;
if (D_8010D654 < 0) {
D_8010D654 = 0;
}
} else {
cond = TRUE;
}
}
} while (cond);
D_8010D655 = D_8010D654 + D_8010D68F;
D_8010D658 = -D_8010D654 * 0xD;
if (gPopupMenu->popupType >= 0 && (gPopupMenu->popupType < 0xA || gPopupMenu->popupType == 0xC)) {
set_window_properties(0x13, D_8010D680, D_8010D682, 0x118, 0x20, 0x14, func_800F48F4, NULL, -1);
}
posX = D_8010D684;
posY = D_8010D686;
switch (gPopupMenu->popupType) {
case 0:
case 6:
case 7:
case 9:
case 12:
set_window_properties(0x15, posX, posY, 0x90, 0x20, 0x14, func_800F4944, NULL, -1);
break;
case 1:
case 2:
case 13:
set_window_properties(0x15, posX, posY, 0x90, 0x28, 0x14, func_800F4944, NULL, -1);
break;
case 3:
case 10:
case 11:
set_window_properties(0x15, posX, posY, 0x80, 0x28, 0x14, func_800F4944, NULL, -1);
break;
case 4:
set_window_properties(0x15, posX, posY, 0x88, 0x28, 0x14, func_800F4944, NULL, -1);
break;
case 8:
set_window_properties(0x15, posX, posY, 0x70, 0x28, 0x14, func_800F4944, NULL, -1);
break;
case 5:
set_window_properties(0x15, posX, posY, 0x78, 0x20, 0x14, func_800F4944, NULL, -1);
break;
}
if (D_8010D68E == 0) {
switch (gPopupMenu->popupType) {
case 0:
case 2:
case 3:
case 5:
case 6:
case 7:
case 8:
case 9:
case 12:
set_window_update(0xE, 1);
set_window_update(0x13, 1);
break;
case 1:
case 4:
set_window_update(0xE, 1);
set_window_update(0x13, 1);
break;
case 10:
case 11:
case 13:
set_window_update(0xE, 1);
break;
}
} else {
switch (gPopupMenu->popupType) {
case 0:
case 2:
case 3:
case 5:
case 6:
case 7:
case 8:
case 9:
case 12:
set_window_update(0xE, basic_window_update);
sfx_play_sound(1);
set_window_update(0x13, basic_window_update);
break;
case 1:
case 4:
set_window_update(0xE, basic_window_update);
sfx_play_sound(2);
set_window_update(0x13, basic_window_update);
break;
case 10:
case 11:
case 13:
set_window_update(0xE, basic_window_update);
sfx_play_sound(1);
break;
}
set_window_update(0x15, 1);
}
if (gPopupMenu->popupType == 3) {
set_window_update(0x10, basic_window_update);
set_window_update(0x14, basic_window_update);
}
if (gPopupMenu->popupType == 4) {
set_window_update(0x12, basic_window_update);
}
if (gPopupMenu->popupType == 5) {
set_window_update(0x10, basic_window_update);
}
D_8010D640 = 1;
break;
case 1:
if (D_8010D644 != 0) {
D_8010D644--;
} else {
D_8010D64C = D_8010D648;
if (gGameStatusPtr->heldButtons & (BUTTON_STICK_UP | BUTTON_Z) &&
(D_8010D648 > 0 || (gGameStatusPtr->pressedButtons & 0x12000)))
{
do {
D_8010D648--;
} while (0); // required to match
}
if (gGameStatusPtr->heldButtons & (BUTTON_STICK_DOWN | BUTTON_R) &&
((D_8010D648 < gPopupMenu->numEntries - 1) || (gGameStatusPtr->pressedButtons & (BUTTON_STICK_DOWN | BUTTON_R))))
{
do {
D_8010D648++;
} while (0); // required to match
}
if (D_8010D648 < 0) {
D_8010D648 = gPopupMenu->numEntries - 1;
}
if (D_8010D648 > gPopupMenu->numEntries - 1) {
D_8010D648 = 0;
}
if (D_8010D64C != D_8010D648) {
sfx_play_sound(0xC7);
}
for (i = 0; i < 4; i++) {
if (D_8010D648 < D_8010D654 + 1) {
D_8010D654--;
if (D_8010D654 < 0) {
D_8010D654 = 0;
}
}
}
for (i = 0; i < 4; i++) {
if (D_8010D648 >= D_8010D655 - 1) {
D_8010D654++;
if (D_8010D654 > gPopupMenu->numEntries - D_8010D68F) {
D_8010D654 = gPopupMenu->numEntries - D_8010D68F;
if (D_8010D654 < 0) {
D_8010D654 = 0;
}
}
}
D_8010D655 = D_8010D654 + D_8010D68F;
}
if (gGameStatusPtr->pressedButtons & 0x8000) {
switch (gPopupMenu->popupType) {
case 8:
sfx_play_sound(SOUND_MENU_NEXT);
if (D_8010D68E == 0) {
D_8010D640 = -1;
} else {
D_8010D640 = -2;
}
break;
case 13:
sfx_play_sound(SOUND_MENU_NEXT);
if (D_8010D68E == 0) {
D_8010D640 = -1;
} else {
D_8010D640 = -2;
}
break;
default:
if (gPopupMenu->enabled[D_8010D648]) {
sfx_play_sound(SOUND_MENU_NEXT);
if (D_8010D68E == 0) {
D_8010D640 = -1;
} else {
D_8010D640 = -2;
}
break;
}
if (gPopupMenu->popupType == 1) {
sfx_play_sound(SOUND_MENU_BADGE_ERROR);
D_8010D640 = 0x1E;
break;
}
if ((D_8010D68E != 0) && (gPopupMenu->popupType == 0 || gPopupMenu->popupType == 3)) {
sfx_play_sound(SOUND_MENU_BADGE_ERROR);
}
break;
}
} else {
switch (gPopupMenu->popupType) {
case 0:
case 2:
case 3:
case 5:
case 6:
case 7:
case 12:
if (D_8010D68E != 0) {
buttons = BUTTON_B | BUTTON_C_LEFT;
} else {
buttons = BUTTON_B;
}
break;
case 1:
case 4:
if (D_8010D68E != 0) {
buttons = BUTTON_B | BUTTON_C_RIGHT;
} else {
buttons = BUTTON_B;
}
break;
case 8:
case 9:
case 10:
case 11:
case 13:
buttons = BUTTON_B;
break;
default:
buttons = 0;
break;
}
if (gGameStatusPtr->pressedButtons & buttons) {
sfx_play_sound(0xCA);
if (D_8010D698 != 0) {
if (D_8010D68E == 0) {
D_8010D640 = -3;
} else {
D_8010D640 = -7;
}
} else {
if (D_8010D699 == 0) {
D_8010D640 = 30;
} else {
D_8010D640 = 100;
}
}
break;
}
switch (gPopupMenu->popupType) {
default:
buttons = 0;
break;
case 0:
buttons = BUTTON_C_RIGHT;
break;
case 1:
buttons = BUTTON_C_LEFT;
break;
}
if (D_8010D68E != 0 && (gGameStatusPtr->pressedButtons & buttons)) {
sfx_play_sound(0xCA);
D_8010D640 = -6;
break;
}
}
}
break;
case -1:
set_hud_element_tint(D_8010D65C, 160, 160, 160);
set_hud_element_tint(D_8010D678, 160, 160, 160);
set_hud_element_tint(D_8010D66C, 160, 160, 160);
set_hud_element_tint(D_8010D670, 160, 160, 160);
set_hud_element_tint(D_8010D674, 160, 160, 160);
set_hud_element_anim(D_8010D66C, D_80104A00);
if (gPopupMenu->popupType == 3) {
set_hud_element_tint(D_8010D660, 160, 160, 160);
set_hud_element_tint(D_8010D664, 160, 160, 160);
}
if (gPopupMenu->popupType == 4) {
set_hud_element_tint(D_8010D660, 160, 160, 160);
set_hud_element_tint(D_8010D664, 160, 160, 160);
}
if (gPopupMenu->popupType == 1 || gPopupMenu->popupType == 4) {
set_hud_element_tint(D_8010D668, 160, 160, 160);
}
if (gPopupMenu->popupType == 5) {
set_hud_element_tint(D_8010D660, 160, 160, 160);
}
D_8010D690 = 0xD;
gPopupMenu->result = D_8010D648 + 1;
return D_8010D648 + 1;
case -2:
gPopupMenu->result = D_8010D648 + 1;
return D_8010D648 + 1;
case -3:
switch (gPopupMenu->popupType) {
case 0:
case 2:
case 3:
case 5:
case 6:
case 7:
case 8:
case 9:
case 12:
set_window_update(0xE, 2);
set_window_update(0x13, 2);
break;
case 1:
case 4:
set_window_update(0xE, 2);
set_window_update(0x13, 2);
break;
case 10:
case 11:
case 13:
set_window_update(0xE, 2);
break;
}
destroy_popup_menu();
free_generic_entity(D_8010D694);
D_8010D640 = -5;
gPopupMenu->result = 255;
return 255;
case -4:
free_generic_entity(D_8010D694);
D_8010D640 = -5;
gPopupMenu->result = 255;
return 255;
case -6:
gPopupMenu->result = -2;
return 255;
case -7:
case -5:
gPopupMenu->result = 255;
return 255;
case 10:
D_8010D644--;
if (D_8010D644 == 0) {
D_8010D640 = 0xB;
gPopupMenu->result = D_8010D648 + 1;
return D_8010D648 + 1;
}
break;
case 20:
D_8010D644++;
if (D_8010D644 >= D_8010D692) {
D_8010D640 = 1;
gPopupMenu->result = D_8010D648 + 1;
return D_8010D648 + 1;
}
break;
case 30:
D_8010D640 = 0x1F;
gPopupMenu->result = -1;
return 0;
case 31:
set_window_update(0xE, 2);
set_window_update(0x13, 2);
if (D_8010D68E != 0) {
set_window_update(0x15, 2);
}
width = get_msg_width(0x1D006B, 0) + 23;
set_window_properties(9, 160 - (width / 2), 0x50, width, 0x28, 0x14, func_800F4CF0, NULL, -1);
set_window_update(9, 1);
D_8010D644 = 0x3C;
D_8010D640 = 0x20;
return 0;
case 32:
if (gGameStatusPtr->pressedButtons & (BUTTON_A | BUTTON_B | BUTTON_C_RIGHT)) {
D_8010D644 = 0;
}
if (D_8010D644 != 0) {
D_8010D644--;
return 0;
}
set_window_update(9, 2);
set_window_update(0xE, 1);
set_window_update(0x13, 1);
if (D_8010D68E != 0) {
set_window_update(0x15, 1);
}
D_8010D640 = 1;
gPopupMenu->result = 0;
break;
case 100:
set_hud_element_tint(D_8010D65C, 160, 160, 160);
set_hud_element_tint(D_8010D678, 160, 160, 160);
set_hud_element_tint(D_8010D66C, 160, 160, 160);
set_hud_element_tint(D_8010D670, 160, 160, 160);
set_hud_element_tint(D_8010D674, 160, 160, 160);
set_hud_element_anim(D_8010D66C, D_80104A00);
if (gPopupMenu->popupType == 3) {
set_hud_element_tint(D_8010D660, 160, 160, 160);
set_hud_element_tint(D_8010D664, 160, 160, 160);
}
if (gPopupMenu->popupType == 4) {
set_hud_element_tint(D_8010D660, 160, 160, 160);
set_hud_element_tint(D_8010D664, 160, 160, 160);
}
if (gPopupMenu->popupType == 1 || gPopupMenu->popupType == 4) {
set_hud_element_tint(D_8010D668, 160, 160, 160);
}
if (gPopupMenu->popupType == 5) {
set_hud_element_tint(D_8010D660, 160, 160, 160);
}
switch (gPopupMenu->popupType) {
case 0:
case 2:
case 3:
case 5:
case 6:
case 7:
case 8:
case 9:
case 12:
set_window_update(0xE, 2);
set_window_update(0x13, 2);
break;
case 1:
case 4:
set_window_update(0xE, 2);
set_window_update(0x13, 2);
break;
case 10:
case 11:
case 13:
set_window_update(0xE, 2);
break;
}
D_8010D690 = 0xD;
if (D_8010D699 == 1) {
msgID = 0x1D0068;
} else {
msgID = 0x1D0069;
}
width = get_msg_width(msgID, 0) + 23;
set_window_properties(0x15, 160 - (width / 2), 76, width, 32, 0x13, func_800F4C1C, NULL, -1);
set_window_update(0x15, 1);
D_8010D6A0 = msg_get_printer_for_msg(0x1E001D, &D_8010D6A4);
msg_printer_set_origin_pos(D_8010D6A0, 160, 0x90);
D_8010D640 = 0x65;
break;
case 101:
if (D_8010D6A4 == 1) {
set_window_update(0x15, 2);
switch (D_8010D6A0->currentOption) {
case 0:
D_8010D640 = 0x66;
break;
case 1:
D_8010D640 = 0x67;
break;
}
}
break;
case 102:
D_8010D640 = -3;
break;
case 103:
set_hud_element_tint(D_8010D65C, 255, 255, 255);
set_hud_element_tint(D_8010D678, 255, 255, 255);
set_hud_element_tint(D_8010D66C, 255, 255, 255);
set_hud_element_tint(D_8010D670, 255, 255, 255);
set_hud_element_tint(D_8010D674, 255, 255, 255);
if (gPopupMenu->popupType == 3) {
set_hud_element_tint(D_8010D660, 160, 160, 160);
set_hud_element_tint(D_8010D664, 160, 160, 160);
}
if (gPopupMenu->popupType == 4) {
set_hud_element_tint(D_8010D660, 160, 160, 160);
set_hud_element_tint(D_8010D664, 160, 160, 160);
}
if (gPopupMenu->popupType == 1 || gPopupMenu->popupType == 4) {
set_hud_element_tint(D_8010D668, 160, 160, 160);
}
if (gPopupMenu->popupType == 5) {
set_hud_element_tint(D_8010D660, 160, 160, 160);
}
set_hud_element_anim(D_8010D66C, D_80104A00);
switch (gPopupMenu->popupType) {
case 0:
case 2:
case 3:
case 5:
case 6:
case 7:
case 8:
case 9:
case 12:
set_window_update(0xE, 1);
set_window_update(0x13, 1);
break;
case 1:
case 4:
set_window_update(0xE, 1);
set_window_update(0x13, 1);
break;
case 10:
case 11:
case 13:
set_window_update(0xE, 1);
break;
}
D_8010D690 = 0xA;
D_8010D640 = 1;
break;
}
gPopupMenu->result = 0;
return 0;
}
INCLUDE_ASM(s32, "8a860_len_3f30", popup_menu_draw_menu_contents); INCLUDE_ASM(s32, "8a860_len_3f30", popup_menu_draw_menu_contents);
INCLUDE_ASM(s32, "8a860_len_3f30", popup_menu_draw_title_contents); INCLUDE_ASM(s32, "8a860_len_3f30", popup_menu_draw_title_contents);
INCLUDE_ASM(s32, "8a860_len_3f30", func_800F48F4); void func_800F48F4(s32* userData, s32 baseX, s32 baseY, s32 width, s32 height, s32 opacity, s32 darkening) {
draw_msg(gPopupMenu->descMsg[D_8010D648], baseX + 8, baseY, D_8010D650, D_8010D690, 0);
}
INCLUDE_ASM(s32, "8a860_len_3f30", func_800F4944); INCLUDE_ASM(s32, "8a860_len_3f30", func_800F4944);
@ -118,7 +874,7 @@ void func_800F4C6C(PopupMessage* popup, s32 x, s32 y) {
s32 xPos; s32 xPos;
s32 yPos; s32 yPos;
switch (D_8010D69C->popupType) { switch (gPopupMenu->popupType) {
case POPUP_TYPE_TRADE_FOR_BADGE: case POPUP_TYPE_TRADE_FOR_BADGE:
xPos = x + 16; xPos = x + 16;
hudElement = D_8010D660; hudElement = D_8010D660;
@ -151,7 +907,7 @@ void func_800F4D28(PopupMessage* popup, s32 x, s32 y) {
set_hud_element_alpha(hudElement, D_8010D650); set_hud_element_alpha(hudElement, D_8010D650);
if (D_8010D69C->popupType == POPUP_TYPE_TRADE_FOR_BADGE) { if (gPopupMenu->popupType == POPUP_TYPE_TRADE_FOR_BADGE) {
set_hud_element_render_pos(hudElement, xPos, yPos); set_hud_element_render_pos(hudElement, xPos, yPos);
} else { } else {
set_hud_element_render_pos(hudElement, xPos, y + 10); set_hud_element_render_pos(hudElement, xPos, y + 10);
@ -163,7 +919,7 @@ void func_800F4D28(PopupMessage* popup, s32 x, s32 y) {
set_hud_element_alpha(hudElement, D_8010D650); set_hud_element_alpha(hudElement, D_8010D650);
draw_hud_element_clipped(hudElement); draw_hud_element_clipped(hudElement);
type = D_8010D69C->popupType; type = gPopupMenu->popupType;
if (type == POPUP_TYPE_TRADE_FOR_BADGE) { if (type == POPUP_TYPE_TRADE_FOR_BADGE) {
draw_number(playerData->starPieces, x + 58, y + 4, 1, 10, D_8010D650, type); draw_number(playerData->starPieces, x + 58, y + 4, 1, 10, D_8010D650, type);
} }
@ -177,7 +933,7 @@ void create_popup_menu(PopupMenu* popup) {
D_8010D69A = func_800E98D4(); D_8010D69A = func_800E98D4();
func_800E9894(); func_800E9894();
open_status_menu_short(); open_status_menu_short();
D_8010D69C = popup; gPopupMenu = popup;
popup->result = 0; popup->result = 0;
popup->unk_31C = 0; popup->unk_31C = 0;
popup->unk_320 = 0; popup->unk_320 = 0;
@ -192,7 +948,7 @@ void create_popup_menu(PopupMenu* popup) {
} }
D_8010D698 = 0; D_8010D698 = 0;
} }
otherPopup = D_8010D69C; otherPopup = gPopupMenu;
D_8010D68E = 1; D_8010D68E = 1;
D_8010D640 = 0; D_8010D640 = 0;
D_8010D648 = otherPopup->initialPos; D_8010D648 = otherPopup->initialPos;
@ -209,8 +965,8 @@ void create_popup_menu(PopupMenu* popup) {
D_8010D656 = 6; D_8010D656 = 6;
} }
D_8010D655 = 6; D_8010D655 = 6;
if (temp_a1->numEntries < 6) { if (gPopupMenu->numEntries < 6) {
D_8010D655 = temp_a1->numEntries; D_8010D655 = gPopupMenu->numEntries;
} }
D_8010D650 = 255; D_8010D650 = 255;
D_8010D691 = 4; D_8010D691 = 4;

View File

@ -254,7 +254,7 @@ typedef struct ActorDesc {
/* 0x0A */ char unk_0A[2]; /* 0x0A */ char unk_0A[2];
/* 0x0C */ struct ActorPartDesc* partsData; /* 0x0C */ struct ActorPartDesc* partsData;
/* 0x10 */ Bytecode* script; /* 0x10 */ Bytecode* script;
/* 0x14 */ s32* statusTable; /* 0x14 */ DictionaryEntry* statusTable;
/* 0x18 */ u8 escapeChance; /* 0x18 */ u8 escapeChance;
/* 0x19 */ u8 airLiftChance; /* 0x19 */ u8 airLiftChance;
/* 0x1A */ u8 spookChance; /* 0x1A */ u8 spookChance;
@ -324,11 +324,6 @@ extern BattleArea gBattleAreas[0x30];
// TODO: enum for home position (0..3 are floor, 4..7 are air, etc.) // TODO: enum for home position (0..3 are floor, 4..7 are air, etc.)
typedef struct DictionaryEntry {
/* 0x00 */ s32 key;
/* 0x04 */ s32 value;
} DictionaryEntry; // size = 0x08
typedef DictionaryEntry DefenseTable[]; typedef DictionaryEntry DefenseTable[];
typedef DictionaryEntry StatusTable[]; typedef DictionaryEntry StatusTable[];
@ -350,4 +345,7 @@ extern BattleList* D_800DC4FC;
extern ActorOffsets bActorOffsets[ACTOR_TYPE_COUNT]; extern ActorOffsets bActorOffsets[ACTOR_TYPE_COUNT];
void func_80072BCC(s32 arg0);
void load_demo_battle(u32 index);
#endif #endif

View File

@ -55,11 +55,15 @@ ApiStatus N(func_802A1378_725058)(Evt* script, s32 isInitialCall) {
if (actor->koStatus != 0) { if (actor->koStatus != 0) {
actor->koDuration = 0; actor->koDuration = 0;
actor->koStatus = 0; actor->koStatus = 0;
if (id != 0) {
if (id == 0x100) { switch (id) {
case ACTOR_PLAYER:
break;
case ACTOR_PARTNER:
dispatch_event_partner(0x31); dispatch_event_partner(0x31);
} break;
} }
actor->ptrDefuffIcon->ptrPropertyList[15] = 0; actor->ptrDefuffIcon->ptrPropertyList[15] = 0;
} }

View File

@ -16,10 +16,12 @@ ApiStatus N(func_802A123C_72223C)(Evt* script, s32 isInitialCall) {
if (actor->koStatus != 0) { if (actor->koStatus != 0) {
actor->koDuration = 0; actor->koDuration = 0;
actor->koStatus = 0; actor->koStatus = 0;
if (id != 0) {
if (id == 0x100) { switch (id) {
case ACTOR_PLAYER:
break;
case ACTOR_PARTNER:
dispatch_event_partner(0x31); dispatch_event_partner(0x31);
}
} }
actor->ptrDefuffIcon->ptrPropertyList[15] = 0; actor->ptrDefuffIcon->ptrPropertyList[15] = 0;
} }

View File

@ -9,30 +9,6 @@ void fx_10_update(EffectInstance* effect);
void fx_10_render(EffectInstance* effect); void fx_10_render(EffectInstance* effect);
void fx_10_appendGfx(EffectInstance* effect); void fx_10_appendGfx(EffectInstance* effect);
typedef struct Effect10 {
/* 0x00 */ s32 alive;
/* 0x04 */ char unk_04[0x2];
/* 0x06 */ s16 lifetime;
/* 0x08 */ u8 alpha;
/* 0x09 */ char unk_09[0x3];
/* 0x0C */ f32 unk_0C;
/* 0x10 */ f32 unk_10;
/* 0x14 */ f32 unk_14;
/* 0x18 */ f32 unk_18;
/* 0x1C */ f32 unk_1C;
/* 0x20 */ f32 unk_20;
/* 0x24 */ f32 unk_24;
/* 0x28 */ f32 unk_28;
/* 0x2C */ f32 unk_2C;
/* 0x30 */ f32 unk_30;
/* 0x34 */ f32 unk_34;
/* 0x38 */ f32 unk_38;
/* 0x3C */ f32 unk_3C;
/* 0x40 */ s32 unk_40;
/* 0x44 */ f32 unk_44;
/* 0x48 */ f32 unk_48;
} Effect10; // size = 0x4C
void fx_10_main(f32 arg0, f32 arg1, f32 arg2, f32 arg3) { void fx_10_main(f32 arg0, f32 arg1, f32 arg2, f32 arg3) {
EffectBlueprint bp; EffectBlueprint bp;
EffectInstance* effect; EffectInstance* effect;
@ -41,10 +17,10 @@ void fx_10_main(f32 arg0, f32 arg1, f32 arg2, f32 arg3) {
s32 numParts = 8; s32 numParts = 8;
s32 i; s32 i;
bp.unk_00 = 0;
bp.init = fx_10_init; bp.init = fx_10_init;
bp.update = fx_10_update; bp.update = fx_10_update;
bp.renderWorld = fx_10_render; bp.renderWorld = fx_10_render;
bp.unk_00 = 0;
bp.unk_14 = NULL; bp.unk_14 = NULL;
bp.effectIndex = 10; bp.effectIndex = 10;

View File

@ -1,14 +1,104 @@
#include "common.h" #include "common.h"
#include "effects_internal.h" #include "effects_internal.h"
extern Gfx D_090000E0[];
extern Gfx D_090001B8[];
void fx_11_init(EffectInstance* effect);
void fx_11_update(EffectInstance* effect);
void fx_11_render(EffectInstance* effect);
void fx_11_appendGfx(EffectInstance* effect); void fx_11_appendGfx(EffectInstance* effect);
INCLUDE_ASM(s32, "effects/effect_11", fx_11_main); void fx_11_main(s32 arg0, f32 arg1, f32 arg2, f32 arg3) {
EffectBlueprint bp;
EffectInstance* effect;
Effect11* part;
s32 numParts = 1;
s32 i;
void fx_11_init(void) { bp.unk_00 = 0;
bp.init = fx_11_init;
bp.update = fx_11_update;
bp.renderWorld = fx_11_render;
bp.unk_14 = 0;
bp.effectIndex = 11;
effect = shim_create_effect_instance(&bp);
effect->numParts = 1;
part = shim_general_heap_malloc(numParts * sizeof(*part));
effect->data = part;
ASSERT(effect->data != NULL);
shim_mem_clear(part, numParts * sizeof(*part));
for (i = 0; i < numParts; i++, part++) {
part->alive = 1;
part->unk_04 = arg0;
part->unk_40 = 0;
part->unk_44 = 0;
part->unk_0C = arg1;
part->unk_10 = arg2;
part->unk_14 = arg3;
part->unk_1C = 1.0f;
part->unk_20 = 1.0f;
part->unk_24 = 1.0f;
part->alpha = -1;
part->unk_28 = (shim_rand_int(10) * 0.03) + 1.4;
part->unk_2C = (shim_rand_int(10) * 0.03) + 1.5;
part->unk_30 = func_E0200000(60);
part->unk_04 = arg0;
part->lifetime = 15;
part->unk_38 = 2.0f;
part->unk_3C = -0.5f;
part->unk_18 = func_E0200000(360);
part->alpha = -1;
}
} }
INCLUDE_ASM(s32, "effects/effect_11", fx_11_update); void fx_11_init(EffectInstance* effect) {
}
void fx_11_update(EffectInstance* effect) {
Effect11* part = (Effect11*)effect->data;
s32 cond = FALSE;
s32 i;
for (i = 0; i < effect->numParts; i++, part++) {
if (part->alive) {
part->lifetime--;
if (part->lifetime <= 0) {
part->alive = FALSE;
} else {
cond = TRUE;
part->unk_30 = shim_clamp_angle(part->unk_30 + 12.0f);
part->unk_1C = part->unk_28 + shim_sin_deg(part->unk_30) * 0.1;
part->unk_20 = part->unk_2C + shim_cos_deg(part->unk_30) * 0.1;
if (part->unk_04 == 0 && (part->lifetime == 5 && gPlayerActionState == ACTION_STATE_IDLE)) {
part->lifetime++;
return;
}
part->alpha -= 15;
part->unk_3C += part->unk_40;
part->unk_38 += part->unk_3C;
part->unk_10 += part->unk_38;
part->unk_28 += 0.14;
part->unk_2C *= 0.94;
if (part->unk_38 < 0.0f) {
part->unk_3C = 0.0f;
part->unk_38 = 0.0f;
}
}
}
}
if (!cond) {
shim_remove_effect(effect);
}
}
void fx_11_render(EffectInstance* effect) { void fx_11_render(EffectInstance* effect) {
RenderTask renderTask; RenderTask renderTask;
@ -23,4 +113,33 @@ void fx_11_render(EffectInstance* effect) {
retTask->renderMode |= RENDER_MODE_2; retTask->renderMode |= RENDER_MODE_2;
} }
INCLUDE_ASM(s32, "effects/effect_11", fx_11_appendGfx); void fx_11_appendGfx(EffectInstance* effect) {
EffectInstance* effectTemp = effect;
Effect11* part = effect->data;
Matrix4f sp20;
Matrix4f sp60;
s32 i;
gDPPipeSync(gMasterGfxPos++);
gSPSegment(gMasterGfxPos++, 0x09, VIRTUAL_TO_PHYSICAL(effectTemp->effect->data));
gSPDisplayList(gMasterGfxPos++, D_090000E0);
for (i = 0; i < effectTemp->numParts; i++, part++) {
if (part->alive) {
shim_guPositionF(sp20, 0.0f, -gCameras[gCurrentCameraID].currentYaw, 0.0f, 1.0f,
part->unk_0C, part->unk_10, part->unk_14);
shim_guScaleF(sp60, part->unk_1C, part->unk_20, part->unk_24);
shim_guMtxCatF(sp60, sp20, sp20);
shim_guRotateF(sp60, part->unk_18, 0.0f, 0.0f, 1.0f);
shim_guMtxCatF(sp60, sp20, sp20);
shim_guMtxF2L(sp20, &gDisplayContext->matrixStack[gMatrixListPos]);
gDPSetPrimColor(gMasterGfxPos++, 0, 0, 112, 96, 24, part->alpha);
gSPMatrix(gMasterGfxPos++, &gDisplayContext->matrixStack[gMatrixListPos++],
G_MTX_PUSH | G_MTX_MUL | G_MTX_MODELVIEW);
gSPDisplayList(gMasterGfxPos++, D_090001B8);
gSPPopMatrix(gMasterGfxPos++, G_MTX_MODELVIEW);
}
}
gDPPipeSync(gMasterGfxPos++);
}

View File

@ -1,16 +1,101 @@
#include "common.h" #include "common.h"
#include "effects_internal.h" #include "effects_internal.h"
extern Gfx* D_09000240[];
void func_E0018000(Effect12* part);
void fx_12_init(EffectInstance* effect);
void fx_12_update(EffectInstance* effect);
void fx_12_render(EffectInstance* effect);
void fx_12_appendGfx(EffectInstance* effect); void fx_12_appendGfx(EffectInstance* effect);
INCLUDE_ASM(s32, "effects/effect_12", func_E0018000); void func_E0018000(Effect12* part) {
Matrix4f sp18;
Matrix4f sp58;
INCLUDE_ASM(s32, "effects/effect_12", fx_12_main); shim_guTranslateF(sp18, part->unk_0C, part->unk_10, part->unk_14);
shim_guRotateF(sp58, part->unk_28, 0.0f, 1.0f, 0.0f);
void fx_12_init(void) { shim_guMtxCatF(sp58, sp18, sp18);
shim_guMtxF2L(sp18, &part->mtx);
} }
INCLUDE_ASM(s32, "effects/effect_12", fx_12_update); void fx_12_main(f32 arg0, f32 arg1, f32 arg2, f32 arg3, f32 arg4, f32 arg5, f32 arg6, f32 arg7) {
EffectBlueprint bp;
EffectInstance* effect;
Effect12* part;
s32 numParts = 1;
s32 i;
f32 temp_f20;
f32 temp_f20_2;
bp.unk_00 = 0;
bp.init = fx_12_init;
bp.update = fx_12_update;
bp.renderWorld = fx_12_render;
bp.unk_14 = 0;
bp.effectIndex = 12;
effect = shim_create_effect_instance(&bp);
effect->numParts = 1;
part = shim_general_heap_malloc(numParts * sizeof(*part));
effect->data = part;
ASSERT(effect->data != NULL);
shim_mem_clear(part, numParts * sizeof(*part));
for (i = 0; i < numParts; i++, part++) {
part->alive = TRUE;
part->unk_7C = 0;
part->unk_0C = arg0;
part->unk_10 = arg1;
part->unk_14 = arg2;
part->alpha = 255;
part->unk_18 = 1.0f;
part->unk_1C = 1.0f;
part->unk_20 = 1.0f;
part->unk_70 = 0;
part->unk_80 = 0;
part->unk_84 = 0;
part->lifetime = 100;
part->unk_24 = 0.0f;
part->unk_28 = (arg3 + (arg4 * 30.0f)) - 15.0f;
part->unk_2C = 0.0f;
temp_f20 = shim_clamp_angle(arg3);
part->unk_90 = shim_sin_deg(temp_f20);
part->unk_94 = shim_cos_deg(temp_f20);
temp_f20_2 = (temp_f20 + 45.0f) - (arg4 * 180.0f);
part->unk_0C += shim_sin_deg(temp_f20_2) * 5.0f;
part->unk_14 += shim_cos_deg(temp_f20_2) * 5.0f;
part->alpha = 200;
}
}
void fx_12_init(EffectInstance* effect) {
}
void fx_12_update(EffectInstance* effect) {
Effect12* part = (Effect12*)effect->data;
s32 cond = FALSE;
s32 i;
for (i = 0; i < effect->numParts; i++, part++) {
if (part->alive) {
part->lifetime--;
if (part->lifetime <= 0) {
part->alive = FALSE;
} else {
cond = TRUE;
func_E0018000(part);
part->alpha -= 2;
}
}
}
if (!cond) {
shim_remove_effect(effect);
}
}
void fx_12_render(EffectInstance* effect) { void fx_12_render(EffectInstance* effect) {
RenderTask renderTask; RenderTask renderTask;
@ -25,6 +110,30 @@ void fx_12_render(EffectInstance* effect) {
retTask->renderMode |= RENDER_MODE_2; retTask->renderMode |= RENDER_MODE_2;
} }
INCLUDE_ASM(s32, "effects/effect_12", func_E00183BC); void func_E00183BC(EffectInstance* effect) {
shim_remove_effect(effect);
}
INCLUDE_ASM(s32, "effects/effect_12", fx_12_appendGfx); void fx_12_appendGfx(EffectInstance* effect) {
EffectInstance* effectTemp = effect;
Effect12* part = effect->data;
s32 i;
gDPPipeSync(gMasterGfxPos++);
gSPSegment(gMasterGfxPos++, 0x09, VIRTUAL_TO_PHYSICAL(effectTemp->effect->data));
for (i = 0; i < effectTemp->numParts; i++, part++) {
if (part->alive) {
Gfx** dlist = D_09000240;
gDisplayContext->matrixStack[gMatrixListPos] = part->mtx;
gDPSetPrimColor(gMasterGfxPos++, 0, 0, 112, 96, 24, part->alpha);
gSPMatrix(gMasterGfxPos++, &gDisplayContext->matrixStack[gMatrixListPos++],
G_MTX_PUSH | G_MTX_MUL | G_MTX_MODELVIEW);
gSPDisplayList(gMasterGfxPos++, dlist);
gSPPopMatrix(gMasterGfxPos++, G_MTX_MODELVIEW);
}
}
gDPPipeSync(gMasterGfxPos++);
}

View File

@ -1,6 +1,7 @@
#include "common.h" #include "common.h"
#include "npc.h" #include "npc.h"
#include "effects.h" #include "effects.h"
#include "battle/battle.h"
ApiStatus SetEncounterStatusFlags(Evt* script, s32 isInitialCall) { ApiStatus SetEncounterStatusFlags(Evt* script, s32 isInitialCall) {
Bytecode* args = script->ptrReadPos; Bytecode* args = script->ptrReadPos;
@ -58,9 +59,89 @@ ApiStatus MakeNpcs(Evt* script, s32 isInitialCall) {
return ApiStatus_BLOCK; return ApiStatus_BLOCK;
} }
INCLUDE_ASM(s32, "encounter_api", RemoveNpc, Evt* script, s32 isInitialCall); ApiStatus RemoveNpc(Evt* script, s32 isInitialCall) {
Bytecode* args = script->ptrReadPos;
Enemy* enemy = script->owner1.enemy;
ApiStatus ret = ApiStatus_DONE1;
s32 id = evt_get_variable(script, *args++);
EncounterStatus* currentEncounter = &gCurrentEncounter;
s32 i, j;
INCLUDE_ASM(s32, "encounter_api", RemoveEncounter, Evt* script, s32 isInitialCall); if ((s32)enemy != NPC_SELF) {
if (id == NPC_SELF) {
id = enemy->npcID;
ret = ApiStatus_FINISH;
} else {
if (enemy->npcID == id) {
Evt* scriptTemp = script;
while (TRUE) {
if (scriptTemp->blockingParent != NULL) {
scriptTemp = scriptTemp->blockingParent;
} else {
break;
}
}
if (scriptTemp == enemy->aiScript) {
ret = ApiStatus_FINISH;
}
} else {
get_enemy(id);
}
}
} else {
get_enemy(id);
}
for (i = 0; i < currentEncounter->numEncounters; i++) {
Encounter* encounter = currentEncounter->encounterList[i];
if (encounter != NULL) {
for (j = 0; j < encounter->count; j++) {
enemy = encounter->enemy[j];
if (enemy != NULL && enemy->npcID == id) {
kill_enemy(enemy);
return ret;
}
}
}
}
return ret;
}
ApiStatus RemoveEncounter(Evt* script, s32 isInitialCall) {
Bytecode* args = script->ptrReadPos;
Enemy* enemy = script->owner1.enemy;
s32 id = evt_get_variable(script, *args++);
EncounterStatus* currentEncounter = &gCurrentEncounter;
ApiStatus ret = ApiStatus_DONE1;
s32 i, j;
if ((s32)enemy != NPC_SELF && (id == NPC_SELF || enemy->npcID == id)) {
id = enemy->npcID;
ret = ApiStatus_FINISH;
} else {
get_enemy(id);
}
for (i = 0; i < currentEncounter->numEncounters; i++) {
Encounter* encounter = currentEncounter->encounterList[i];
if (encounter != NULL) {
for (j = 0; j < encounter->count; j++) {
enemy = encounter->enemy[j];
if (enemy != NULL && enemy->npcID == id) {
kill_encounter(enemy);
return ret;
}
}
}
}
return ret;
}
ApiStatus GetBattleOutcome(Evt* script, s32 isInitialCall) { ApiStatus GetBattleOutcome(Evt* script, s32 isInitialCall) {
evt_set_variable(script, *script->ptrReadPos, gCurrentEncounter.battleOutcome); evt_set_variable(script, *script->ptrReadPos, gCurrentEncounter.battleOutcome);
@ -234,13 +315,61 @@ ApiStatus SetBattleMusic(Evt* script, s32 isInitialCall) {
return ApiStatus_DONE2; return ApiStatus_DONE2;
} }
INCLUDE_ASM(s32, "encounter_api", BindNpcAI, Evt* script, s32 isInitialCall); ApiStatus BindNpcAI(Evt* script, s32 isInitialCall) {
Bytecode* args = script->ptrReadPos;
Enemy* enemy = script->owner1.enemy;
s32 id = evt_get_variable(script, *args++);
EvtSource* newScriptSource = (EvtSource*)evt_get_variable(script, *args++);
Evt* scriptTemp = script;
ApiStatus ret = ApiStatus_DONE2;
Evt* aiScript;
s32 phi_s1;
if ((s32)enemy != NPC_SELF && (id == NPC_SELF || enemy->npcID == id)) {
id = enemy->npcID;
while (TRUE) {
if (scriptTemp->blockingParent != NULL) {
scriptTemp = scriptTemp->blockingParent;
} else {
break;
}
}
aiScript = enemy->aiScript;
if (scriptTemp == aiScript) {
ret = ApiStatus_FINISH;
}
} else {
enemy = get_enemy(id);
}
if (enemy->flags & ENEMY_FLAGS_1) {
phi_s1 = 10;
} else {
phi_s1 = 11;
}
if (enemy->aiScript != NULL) {
kill_script_by_ID(enemy->aiScriptID);
}
enemy->unk_C8 = 100;
enemy->aiBytecode = newScriptSource;
scriptTemp = start_script(newScriptSource, 10, 0);
enemy->aiScript = scriptTemp;
enemy->aiScriptID = scriptTemp->id;
scriptTemp->owner1.enemyID = (s32)enemy;
scriptTemp->owner2.npcID = id;
scriptTemp->groupFlags = phi_s1;
return ret;
}
ApiStatus BindNpcIdle(Evt* script, s32 isInitialCall) { ApiStatus BindNpcIdle(Evt* script, s32 isInitialCall) {
Bytecode* args = script->ptrReadPos; Bytecode* args = script->ptrReadPos;
Enemy* owner = script->owner1.enemy; Enemy* owner = script->owner1.enemy;
s32 npcID = evt_get_variable(script, *args++); s32 npcID = evt_get_variable(script, *args++);
Bytecode* aiBytecode = (Bytecode*)evt_get_variable(script, *args); EvtSource* aiBytecode = (EvtSource*)evt_get_variable(script, *args);
if (npcID == NPC_SELF) { if (npcID == NPC_SELF) {
npcID = owner->npcID; npcID = owner->npcID;
@ -309,13 +438,56 @@ ApiStatus EnableNpcAI(Evt* script, s32 isInitialCall) {
return ApiStatus_DONE2; return ApiStatus_DONE2;
} }
INCLUDE_ASM(s32, "encounter_api", SetNpcAux, Evt* script, s32 isInitialCall); ApiStatus SetNpcAux(Evt* script, s32 isInitialCall) {
Bytecode* args = script->ptrReadPos;
Enemy* enemy = script->owner1.enemy;
s32 id = evt_get_variable(script, *args++);
EvtSource* newScriptSource = (EvtSource*)evt_get_variable(script, *args++);
Evt* scriptTemp = script;
ApiStatus ret = ApiStatus_DONE2;
Evt* auxScript;
if ((s32)enemy != NPC_SELF && (id == NPC_SELF || enemy->npcID == id)) {
id = enemy->npcID;
while (TRUE) {
if (scriptTemp->blockingParent != NULL) {
scriptTemp = scriptTemp->blockingParent;
} else {
break;
}
}
auxScript = enemy->auxScript;
if (scriptTemp == auxScript) {
ret = ApiStatus_FINISH;
}
} else {
enemy = get_enemy(id);
auxScript = enemy->auxScript;
}
if (auxScript != NULL) {
kill_script_by_ID(enemy->auxScriptID);
}
if (newScriptSource != NULL) {
enemy->auxBytecode = newScriptSource;
scriptTemp = start_script(newScriptSource, 10, 0);
enemy->auxScript = scriptTemp;
enemy->auxScriptID = scriptTemp->id;
scriptTemp->owner1.enemyID = (s32)enemy;
scriptTemp->owner2.npcID = id;
scriptTemp->groupFlags = script->groupFlags;
}
return ret;
}
ApiStatus BindNpcAux(Evt* script, s32 isInitialCall) { ApiStatus BindNpcAux(Evt* script, s32 isInitialCall) {
Bytecode* args = script->ptrReadPos; Bytecode* args = script->ptrReadPos;
Enemy* npc = script->owner1.enemy; Enemy* npc = script->owner1.enemy;
s32 npcId = evt_get_variable(script, *args++); s32 npcId = evt_get_variable(script, *args++);
Bytecode* auxBytecode = (Bytecode*)evt_get_variable(script, *args); EvtSource* auxBytecode = (EvtSource*)evt_get_variable(script, *args);
if (npcId == NPC_SELF) { if (npcId == NPC_SELF) {
npcId = npc->npcID; npcId = npc->npcID;
@ -387,7 +559,7 @@ ApiStatus BindNpcInteract(Evt* script, s32 isInitialCall) {
Bytecode* args = script->ptrReadPos; Bytecode* args = script->ptrReadPos;
Enemy* npc = script->owner1.enemy; Enemy* npc = script->owner1.enemy;
s32 npcId = evt_get_variable(script, *args++); s32 npcId = evt_get_variable(script, *args++);
Bytecode* interactBytecode = (Bytecode*)evt_get_variable(script, *args); EvtSource* interactBytecode = (EvtSource*)evt_get_variable(script, *args);
if (npcId == NPC_SELF) { if (npcId == NPC_SELF) {
npcId = npc->npcID; npcId = npc->npcID;
@ -407,7 +579,7 @@ ApiStatus BindNpcHit(Evt* script, s32 isInitialCall) {
Bytecode* args = script->ptrReadPos; Bytecode* args = script->ptrReadPos;
Enemy* npc = script->owner1.enemy; Enemy* npc = script->owner1.enemy;
s32 npcId = evt_get_variable(script, *args++); s32 npcId = evt_get_variable(script, *args++);
Bytecode* hitBytecode = (Bytecode*)evt_get_variable(script, *args); EvtSource* hitBytecode = (EvtSource*)evt_get_variable(script, *args);
if (npcId == NPC_SELF) { if (npcId == NPC_SELF) {
npcId = npc->npcID; npcId = npc->npcID;
@ -427,7 +599,7 @@ ApiStatus BindNpcDefeat(Evt* script, s32 isInitialCall) {
Bytecode* args = script->ptrReadPos; Bytecode* args = script->ptrReadPos;
Enemy* npc = script->owner1.enemy; Enemy* npc = script->owner1.enemy;
s32 npcId = evt_get_variable(script, *args++); s32 npcId = evt_get_variable(script, *args++);
Bytecode* defeatBytecode = (Bytecode*)evt_get_variable(script, *args); EvtSource* defeatBytecode = (EvtSource*)evt_get_variable(script, *args);
if (npcId == -1) { if (npcId == -1) {
npcId = npc->npcID; npcId = npc->npcID;

View File

@ -111,7 +111,9 @@ typedef struct HudElement {
} HudElement; // size = 0x54 } HudElement; // size = 0x54
extern HudElementAnim D_80104A28[]; extern HudElementAnim D_80104A28[];
extern HudElementAnim D_80108558[];
extern HudElementAnim D_80108A64[]; extern HudElementAnim D_80108A64[];
extern HudElementAnim D_80109270[];
extern HudElementAnim* D_8024FA30[1]; extern HudElementAnim* D_8024FA30[1];
extern HudElementAnim *gBadgeMenuElements[22]; extern HudElementAnim *gBadgeMenuElements[22];
extern HudElement* gItemIcons[20]; extern HudElement* gItemIcons[20];

View File

@ -1,24 +1,27 @@
#include "common.h" #include "common.h"
#include "../src/world/partners.h" #include "../src/world/partners.h"
extern unkPartnerStruct* D_802BEB60_31CB80;
s32 entity_interacts_with_current_partner(s32); s32 entity_interacts_with_current_partner(s32);
s32 test_item_entity_position(f32, f32, f32, f32); s32 test_item_entity_position(f32, f32, f32, f32);
s32 npc_raycast_up_corner(s32 ignoreFlags, f32* x, f32* y, f32* z, f32* length); s32 npc_raycast_up_corner(s32 ignoreFlags, f32* x, f32* y, f32* z, f32* length);
s32 npc_raycast_up(s32 ignoreFlags, f32* x, f32* y, f32* z, f32* length); s32 npc_raycast_up(s32 ignoreFlags, f32* x, f32* y, f32* z, f32* length);
void start_bounce_b(void); void start_bounce_b(void);
extern s32 D_802BEB40_31CB60;
extern unkPartnerStruct* D_802BEB60_31CB80;
extern s32 D_802BEC50;
extern s32 D_802BEC54;
extern s32 D_802BEC58;
extern s32 D_802BEC5C;
extern s32 D_802BEC60;
extern s32 D_802BEC64;
extern s32 D_802BEC68; extern s32 D_802BEC68;
extern s32 D_802BEC6C; extern s32 D_802BEC6C;
extern s32 D_802BEC54;
extern s32 D_802BEB40_31CB60;
extern s32 D_802BEC64;
extern s32 D_802BEC58;
extern f32 D_802BEC70; extern f32 D_802BEC70;
extern f32 D_802BEC74; extern f32 D_802BEC74;
extern f32 D_802BEC78; extern f32 D_802BEC78;
extern s32 D_802BEC50;
extern s32 D_802BEC60;
extern s32 D_802BEC5C;
extern s16 D_8010C97A; extern s16 D_8010C97A;
void playFX_18(s32, f32, f32, f32, f32, f32, f32, s32); void playFX_18(s32, f32, f32, f32, f32, f32, f32, s32);
void func_801341B0(Npc* npc); void func_801341B0(Npc* npc);
@ -27,11 +30,11 @@ s32 func_802BD100_31B120(Npc* npc) {
if (D_8010C978 < 0) { if (D_8010C978 < 0) {
return 0; return 0;
} }
if (!(D_8010C978 & 0x4000)) { if (!(D_8010C978 & 0x4000)) {
return 0; return 0;
} }
return entity_interacts_with_current_partner(D_8010C978 & ~0x4000); return entity_interacts_with_current_partner(D_8010C978 & ~0x4000);
} }
@ -43,7 +46,7 @@ void func_802BD144_31B164(Npc* kooper) {
s32 func_802BD17C_31B19C(Npc* kooper) { s32 func_802BD17C_31B19C(Npc* kooper) {
D_802BEC68 = test_item_entity_position(kooper->pos.x, kooper->pos.y, kooper->pos.z, kooper->collisionRadius); D_802BEC68 = test_item_entity_position(kooper->pos.x, kooper->pos.y, kooper->pos.z, kooper->collisionRadius);
if (D_802BEC68 < 0) { if (D_802BEC68 < 0) {
return 0; return 0;
} else { } else {
@ -85,7 +88,7 @@ ApiStatus func_802BD260_31B280(Evt* script, s32 isInitialCall) {
playerData->unk_2F4[2]++; playerData->unk_2F4[2]++;
entity = D_8010C954; entity = D_8010C954;
if (entity == NULL) { if (entity == NULL) {
partner_walking_update_player_tracking(kooper); partner_walking_update_player_tracking(kooper);
partner_walking_update_motion(kooper); partner_walking_update_motion(kooper);
@ -185,7 +188,7 @@ ApiStatus func_802BD638_31B658(Evt* script, s32 isInitialCall) {
f32 clamp; f32 clamp;
f32 colheight; f32 colheight;
f32 temp2; f32 temp2;
if (currentEncounter->unk_08 == 0) { if (currentEncounter->unk_08 == 0) {
if (isInitialCall) { if (isInitialCall) {
func_802BD5F4_31B614(kooper); func_802BD5F4_31B614(kooper);
@ -200,7 +203,7 @@ ApiStatus func_802BD638_31B658(Evt* script, s32 isInitialCall) {
} else { } else {
return ApiStatus_DONE2; return ApiStatus_DONE2;
} }
} }
else if (partnerActionStatus->actionState.b[0] == 0) { else if (partnerActionStatus->actionState.b[0] == 0) {
@ -211,7 +214,7 @@ ApiStatus func_802BD638_31B658(Evt* script, s32 isInitialCall) {
D_802BEC50 = 30; D_802BEC50 = 30;
} }
} }
switch (script->functionTemp[0]) { switch (script->functionTemp[0]) {
case 20: case 20:
if (playerStatus->statusMenuCounterinputEnabledCounter == 0) { if (playerStatus->statusMenuCounterinputEnabledCounter == 0) {
@ -291,14 +294,14 @@ ApiStatus func_802BD638_31B658(Evt* script, s32 isInitialCall) {
kooper->moveToPos.z = playerStatus->position.y + temp2; kooper->moveToPos.z = playerStatus->position.y + temp2;
playerStatus->flags |= PLAYER_STATUS_FLAGS_JUMPING; playerStatus->flags |= PLAYER_STATUS_FLAGS_JUMPING;
gCameras->moveFlags |= CAMERA_FLAGS_1; gCameras->moveFlags |= CAMERA_FLAGS_1;
suggest_player_anim_clearUnkFlag(0x10007); suggest_player_anim_clearUnkFlag(0x10007);
D_802BEC60 = 0; D_802BEC60 = 0;
sfx_play_sound_at_npc(0x2081, 0, -4); sfx_play_sound_at_npc(0x2081, 0, -4);
script->functionTemp[0] = 2; script->functionTemp[0] = 2;
} }
} }
case 2: case 2:
if ((u8)playerStatus->actionState == 0x15 || if ((u8)playerStatus->actionState == 0x15 ||
(u8)playerStatus->actionState == 0x16 || (u8)playerStatus->actionState == 0x16 ||
@ -434,7 +437,7 @@ ApiStatus func_802BD638_31B658(Evt* script, s32 isInitialCall) {
kooper->moveSpeed = 0.0f; kooper->moveSpeed = 0.0f;
sfx_play_sound_at_npc(0, 0, -4); sfx_play_sound_at_npc(0, 0, -4);
} }
else if (kooper->planarFlyDist > 105.0f) { else if (kooper->planarFlyDist > 105.0f) {
kooper->moveSpeed -= 4.0; kooper->moveSpeed -= 4.0;
if (kooper->moveSpeed < 0.01) { if (kooper->moveSpeed < 0.01) {
@ -487,7 +490,7 @@ ApiStatus func_802BD638_31B658(Evt* script, s32 isInitialCall) {
} }
D_802BEC50--; D_802BEC50--;
break; break;
case 5: case 5:
if (D_802BEC50 != 0) { if (D_802BEC50 != 0) {
D_802BEC50--; D_802BEC50--;
@ -624,7 +627,7 @@ s32 func_802BE818_31C838(Npc* npcKooper, Npc* npc2) {
npcKooperX = npcDistanceToKooperX; npcKooperX = npcDistanceToKooperX;
npcKooperY = npcKooper->pos.y; npcKooperY = npcKooper->pos.y;
npcKooperZ = npcKooper->pos.z; npcKooperZ = npcKooper->pos.z;
npcCollisionHeight = npc2->collisionHeight; npcCollisionHeight = npc2->collisionHeight;
npcCollisionRadius = npc2->collisionRadius * 0.8; npcCollisionRadius = npc2->collisionRadius * 0.8;
kooperCollisionHeight = npcKooper->collisionHeight; kooperCollisionHeight = npcKooper->collisionHeight;

View File

@ -4,7 +4,7 @@ import argparse
import os import os
import sys import sys
import subprocess import subprocess
from pathlib import Path import tempfile
script_dir = os.path.dirname(os.path.realpath(__file__)) script_dir = os.path.dirname(os.path.realpath(__file__))
root_dir = os.path.abspath(os.path.join(script_dir, "..")) root_dir = os.path.abspath(os.path.join(script_dir, ".."))
@ -30,6 +30,9 @@ def import_c_file(in_file) -> str:
cpp_command = ["gcc", "-E", "-P", "-dM", *CPP_FLAGS, in_file] cpp_command = ["gcc", "-E", "-P", "-dM", *CPP_FLAGS, in_file]
cpp_command2 = ["gcc", "-E", "-P", *CPP_FLAGS, in_file] cpp_command2 = ["gcc", "-E", "-P", *CPP_FLAGS, in_file]
with tempfile.NamedTemporaryFile(suffix=".c") as tmp:
stock_macros = subprocess.check_output(["gcc", "-E", "-P", "-dM", tmp.name], cwd=root_dir, encoding="utf-8")
out_text = "" out_text = ""
try: try:
out_text += subprocess.check_output(cpp_command, cwd=root_dir, encoding="utf-8") out_text += subprocess.check_output(cpp_command, cwd=root_dir, encoding="utf-8")
@ -45,6 +48,9 @@ def import_c_file(in_file) -> str:
if not out_text: if not out_text:
print("Output is empty - aborting") print("Output is empty - aborting")
sys.exit(1) sys.exit(1)
for line in stock_macros.strip().splitlines():
out_text = out_text.replace(line + "\n", "")
return out_text return out_text
def main(): def main():

View File

@ -1,31 +0,0 @@
#!/usr/bin/python3
import argparse
import os
import re
script_dir = os.path.dirname(os.path.realpath(__file__))
root_dir = script_dir + "/../"
src_dir = root_dir + "src/"
asm_dir = root_dir + "ver/current/asm/"
symbol = "gMasterGfxPos"
smallest_file = None
smallest_len = 1000
for root, dirs, files in os.walk(asm_dir):
for f_name in files:
if f_name.endswith(".s") and not f_name.startswith("func_E") and len(f_name) < 20 and f_name not in ["func_8011800C.s", "func_E011A3BC.s", "func_8024F768.s", "gfx_init_state.s", "func_80240448_B141B8.s"]:
f_path = os.path.join(root, f_name)
with open(f_path) as f:
f_text = f.read()
if symbol in f_text:
num_lines = len(f_text.split("\n"))
if num_lines <= smallest_len:
print(f"{f_name}: {int(num_lines)}")
smallest_len = num_lines
smallest_file = f_name
print("\n" + smallest_file)

View File

@ -869,10 +869,10 @@ dlabel D_802938A4
dlabel D_802938A8 dlabel D_802938A8
.short 0x0004, 0x0000 .short 0x0004, 0x0000
dlabel D_802938AC dlabel gDamageCountEffects
.word 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000 .word 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000
dlabel D_8029390C dlabel gDamageCountTimers
.word 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000 .word 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000
dlabel D_80293970 dlabel D_80293970

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1,18 +0,0 @@
.include "macro.inc"
.section .data
dlabel D_E0016720
.double 0.03
dlabel D_E0016728
.double 1.4
dlabel D_E0016730
.double 0.1
dlabel D_E0016738
.double 0.94
dlabel D_E0016740
.double 0.14, 0.0

View File

@ -1,74 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel btl_update_ko_status
/* 19605C 8026777C 27BDFFE0 */ addiu $sp, $sp, -0x20
/* 196060 80267780 AFB10014 */ sw $s1, 0x14($sp)
/* 196064 80267784 3C11800E */ lui $s1, %hi(gBattleStatus)
/* 196068 80267788 2631C070 */ addiu $s1, $s1, %lo(gBattleStatus)
/* 19606C 8026778C AFBF0018 */ sw $ra, 0x18($sp)
/* 196070 80267790 AFB00010 */ sw $s0, 0x10($sp)
/* 196074 80267794 8E2400D8 */ lw $a0, 0xd8($s1)
/* 196078 80267798 8E3000DC */ lw $s0, 0xdc($s1)
/* 19607C 8026779C 90820211 */ lbu $v0, 0x211($a0)
/* 196080 802677A0 80850217 */ lb $a1, 0x217($a0)
/* 196084 802677A4 A0820217 */ sb $v0, 0x217($a0)
/* 196088 802677A8 00021600 */ sll $v0, $v0, 0x18
/* 19608C 802677AC 18400009 */ blez $v0, .L802677D4
/* 196090 802677B0 2402000D */ addiu $v0, $zero, 0xd
/* 196094 802677B4 8C830440 */ lw $v1, 0x440($a0)
/* 196098 802677B8 A0820216 */ sb $v0, 0x216($a0)
/* 19609C 802677BC 80820217 */ lb $v0, 0x217($a0)
/* 1960A0 802677C0 8C63000C */ lw $v1, 0xc($v1)
/* 1960A4 802677C4 14A00003 */ bnez $a1, .L802677D4
/* 1960A8 802677C8 AC62003C */ sw $v0, 0x3c($v1)
/* 1960AC 802677CC 0C05272D */ jal sfx_play_sound
/* 1960B0 802677D0 24042107 */ addiu $a0, $zero, 0x2107
.L802677D4:
/* 1960B4 802677D4 12000012 */ beqz $s0, .L80267820
/* 1960B8 802677D8 0000302D */ daddu $a2, $zero, $zero
/* 1960BC 802677DC 82020217 */ lb $v0, 0x217($s0)
/* 1960C0 802677E0 82030211 */ lb $v1, 0x211($s0)
/* 1960C4 802677E4 0043102A */ slt $v0, $v0, $v1
/* 1960C8 802677E8 10400004 */ beqz $v0, .L802677FC
/* 1960CC 802677EC 2402000D */ addiu $v0, $zero, 0xd
/* 1960D0 802677F0 92030211 */ lbu $v1, 0x211($s0)
/* 1960D4 802677F4 A2020216 */ sb $v0, 0x216($s0)
/* 1960D8 802677F8 A2030217 */ sb $v1, 0x217($s0)
.L802677FC:
/* 1960DC 802677FC 82020217 */ lb $v0, 0x217($s0)
/* 1960E0 80267800 18400006 */ blez $v0, .L8026781C
/* 1960E4 80267804 2402000D */ addiu $v0, $zero, 0xd
/* 1960E8 80267808 8E030440 */ lw $v1, 0x440($s0)
/* 1960EC 8026780C A2020216 */ sb $v0, 0x216($s0)
/* 1960F0 80267810 82020217 */ lb $v0, 0x217($s0)
/* 1960F4 80267814 8C63000C */ lw $v1, 0xc($v1)
/* 1960F8 80267818 AC62003C */ sw $v0, 0x3c($v1)
.L8026781C:
/* 1960FC 8026781C 0000302D */ daddu $a2, $zero, $zero
.L80267820:
/* 196100 80267820 2407000D */ addiu $a3, $zero, 0xd
/* 196104 80267824 0220282D */ daddu $a1, $s1, $zero
.L80267828:
/* 196108 80267828 8CA400E0 */ lw $a0, 0xe0($a1)
/* 19610C 8026782C 1080000B */ beqz $a0, .L8026785C
/* 196110 80267830 24C60001 */ addiu $a2, $a2, 1
/* 196114 80267834 90820211 */ lbu $v0, 0x211($a0)
/* 196118 80267838 A0820217 */ sb $v0, 0x217($a0)
/* 19611C 8026783C 00021600 */ sll $v0, $v0, 0x18
/* 196120 80267840 18400006 */ blez $v0, .L8026785C
/* 196124 80267844 00000000 */ nop
/* 196128 80267848 8C820440 */ lw $v0, 0x440($a0)
/* 19612C 8026784C A0870216 */ sb $a3, 0x216($a0)
/* 196130 80267850 8C43000C */ lw $v1, 0xc($v0)
/* 196134 80267854 80820217 */ lb $v0, 0x217($a0)
/* 196138 80267858 AC62003C */ sw $v0, 0x3c($v1)
.L8026785C:
/* 19613C 8026785C 28C20018 */ slti $v0, $a2, 0x18
/* 196140 80267860 1440FFF1 */ bnez $v0, .L80267828
/* 196144 80267864 24A50004 */ addiu $a1, $a1, 4
/* 196148 80267868 8FBF0018 */ lw $ra, 0x18($sp)
/* 19614C 8026786C 8FB10014 */ lw $s1, 0x14($sp)
/* 196150 80267870 8FB00010 */ lw $s0, 0x10($sp)
/* 196154 80267874 03E00008 */ jr $ra
/* 196158 80267878 27BD0020 */ addiu $sp, $sp, 0x20

View File

@ -23,8 +23,8 @@ glabel create_actor
/* 193CCC 802653EC 0082102A */ slt $v0, $a0, $v0 /* 193CCC 802653EC 0082102A */ slt $v0, $a0, $v0
/* 193CD0 802653F0 14400014 */ bnez $v0, .L80265444 /* 193CD0 802653F0 14400014 */ bnez $v0, .L80265444
/* 193CD4 802653F4 0000802D */ daddu $s0, $zero, $zero /* 193CD4 802653F4 0000802D */ daddu $s0, $zero, $zero
/* 193CD8 802653F8 3C038028 */ lui $v1, %hi(D_80283524) /* 193CD8 802653F8 3C038028 */ lui $v1, %hi(btl_actorHomePositions)
/* 193CDC 802653FC 24633524 */ addiu $v1, $v1, %lo(D_80283524) /* 193CDC 802653FC 24633524 */ addiu $v1, $v1, %lo(btl_actorHomePositions)
/* 193CE0 80265400 00041040 */ sll $v0, $a0, 1 /* 193CE0 80265400 00041040 */ sll $v0, $a0, 1
/* 193CE4 80265404 00441021 */ addu $v0, $v0, $a0 /* 193CE4 80265404 00441021 */ addu $v0, $v0, $a0
/* 193CE8 80265408 00021040 */ sll $v0, $v0, 1 /* 193CE8 80265408 00021040 */ sll $v0, $v0, 1

View File

@ -1,49 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_80263268
/* 191B48 80263268 3C07800E */ lui $a3, %hi(gBattleStatus)
/* 191B4C 8026326C 24E7C070 */ addiu $a3, $a3, %lo(gBattleStatus)
/* 191B50 80263270 8CE600DC */ lw $a2, 0xdc($a3)
/* 191B54 80263274 3C088011 */ lui $t0, %hi(gPlayerData)
/* 191B58 80263278 2508F290 */ addiu $t0, $t0, %lo(gPlayerData)
/* 191B5C 8026327C 10C0001C */ beqz $a2, .L802632F0
/* 191B60 80263280 A0E0007C */ sb $zero, 0x7c($a3)
/* 191B64 80263284 24020001 */ addiu $v0, $zero, 1
/* 191B68 80263288 A0E2007C */ sb $v0, 0x7c($a3)
/* 191B6C 8026328C 0000282D */ daddu $a1, $zero, $zero
/* 191B70 80263290 00A0202D */ daddu $a0, $a1, $zero
/* 191B74 80263294 0100182D */ daddu $v1, $t0, $zero
.L80263298:
/* 191B78 80263298 90620014 */ lbu $v0, 0x14($v1)
/* 191B7C 8026329C 54400001 */ bnel $v0, $zero, .L802632A4
/* 191B80 802632A0 24A50001 */ addiu $a1, $a1, 1
.L802632A4:
/* 191B84 802632A4 24840001 */ addiu $a0, $a0, 1
/* 191B88 802632A8 2882000C */ slti $v0, $a0, 0xc
/* 191B8C 802632AC 1440FFFA */ bnez $v0, .L80263298
/* 191B90 802632B0 24630008 */ addiu $v1, $v1, 8
/* 191B94 802632B4 28A20002 */ slti $v0, $a1, 2
/* 191B98 802632B8 1440000E */ bnez $v0, .L802632F4
/* 191B9C 802632BC 2402FFFF */ addiu $v0, $zero, -1
/* 191BA0 802632C0 80C30216 */ lb $v1, 0x216($a2)
/* 191BA4 802632C4 2402000D */ addiu $v0, $zero, 0xd
/* 191BA8 802632C8 14620003 */ bne $v1, $v0, .L802632D8
/* 191BAC 802632CC 24020007 */ addiu $v0, $zero, 7
.L802632D0:
/* 191BB0 802632D0 03E00008 */ jr $ra
/* 191BB4 802632D4 A0E0007C */ sb $zero, 0x7c($a3)
.L802632D8:
/* 191BB8 802632D8 80C30210 */ lb $v1, 0x210($a2)
/* 191BBC 802632DC 1062FFFC */ beq $v1, $v0, .L802632D0
/* 191BC0 802632E0 24020005 */ addiu $v0, $zero, 5
/* 191BC4 802632E4 81030012 */ lb $v1, 0x12($t0)
/* 191BC8 802632E8 14620003 */ bne $v1, $v0, .L802632F8
/* 191BCC 802632EC 00000000 */ nop
.L802632F0:
/* 191BD0 802632F0 2402FFFF */ addiu $v0, $zero, -1
.L802632F4:
/* 191BD4 802632F4 A0E2007C */ sb $v0, 0x7c($a3)
.L802632F8:
/* 191BD8 802632F8 03E00008 */ jr $ra
/* 191BDC 802632FC 00000000 */ nop

View File

@ -1,65 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_80263300
/* 191BE0 80263300 27BDFFD0 */ addiu $sp, $sp, -0x30
/* 191BE4 80263304 AFB40020 */ sw $s4, 0x20($sp)
/* 191BE8 80263308 0000A02D */ daddu $s4, $zero, $zero
/* 191BEC 8026330C AFB20018 */ sw $s2, 0x18($sp)
/* 191BF0 80263310 0280902D */ daddu $s2, $s4, $zero
/* 191BF4 80263314 AFB60028 */ sw $s6, 0x28($sp)
/* 191BF8 80263318 3C168008 */ lui $s6, %hi(gItemTable)
/* 191BFC 8026331C 26D678E0 */ addiu $s6, $s6, %lo(gItemTable)
/* 191C00 80263320 AFB50024 */ sw $s5, 0x24($sp)
/* 191C04 80263324 24150002 */ addiu $s5, $zero, 2
/* 191C08 80263328 AFB10014 */ sw $s1, 0x14($sp)
/* 191C0C 8026332C 3C11800E */ lui $s1, %hi(gBattleStatus)
/* 191C10 80263330 2631C070 */ addiu $s1, $s1, %lo(gBattleStatus)
/* 191C14 80263334 AFBF002C */ sw $ra, 0x2c($sp)
/* 191C18 80263338 AFB3001C */ sw $s3, 0x1c($sp)
/* 191C1C 8026333C AFB00010 */ sw $s0, 0x10($sp)
/* 191C20 80263340 8E3300D8 */ lw $s3, 0xd8($s1)
/* 191C24 80263344 3C108011 */ lui $s0, %hi(gPlayerData)
/* 191C28 80263348 2610F290 */ addiu $s0, $s0, %lo(gPlayerData)
/* 191C2C 8026334C A220007D */ sb $zero, 0x7d($s1)
.L80263350:
/* 191C30 80263350 860201B4 */ lh $v0, 0x1b4($s0)
/* 191C34 80263354 50400015 */ beql $v0, $zero, .L802633AC
/* 191C38 80263358 26520001 */ addiu $s2, $s2, 1
/* 191C3C 8026335C 00021140 */ sll $v0, $v0, 5
/* 191C40 80263360 00561821 */ addu $v1, $v0, $s6
/* 191C44 80263364 94620018 */ lhu $v0, 0x18($v1)
/* 191C48 80263368 30420002 */ andi $v0, $v0, 2
/* 191C4C 8026336C 5040000F */ beql $v0, $zero, .L802633AC
/* 191C50 80263370 26520001 */ addiu $s2, $s2, 1
/* 191C54 80263374 A2350178 */ sb $s5, 0x178($s1)
/* 191C58 80263378 960201B4 */ lhu $v0, 0x1b4($s0)
/* 191C5C 8026337C A622017A */ sh $v0, 0x17a($s1)
/* 191C60 80263380 8C620008 */ lw $v0, 8($v1)
/* 191C64 80263384 0260202D */ daddu $a0, $s3, $zero
/* 191C68 80263388 0C098C0B */ jal player_create_target_list
/* 191C6C 8026338C AE220184 */ sw $v0, 0x184($s1)
/* 191C70 80263390 8262040C */ lb $v0, 0x40c($s3)
/* 191C74 80263394 10400005 */ beqz $v0, .L802633AC
/* 191C78 80263398 26520001 */ addiu $s2, $s2, 1
/* 191C7C 8026339C 9222007D */ lbu $v0, 0x7d($s1)
/* 191C80 802633A0 24140001 */ addiu $s4, $zero, 1
/* 191C84 802633A4 00541021 */ addu $v0, $v0, $s4
/* 191C88 802633A8 A222007D */ sb $v0, 0x7d($s1)
.L802633AC:
/* 191C8C 802633AC 2A42000A */ slti $v0, $s2, 0xa
/* 191C90 802633B0 1440FFE7 */ bnez $v0, .L80263350
/* 191C94 802633B4 26100002 */ addiu $s0, $s0, 2
/* 191C98 802633B8 52800001 */ beql $s4, $zero, .L802633C0
/* 191C9C 802633BC A220007D */ sb $zero, 0x7d($s1)
.L802633C0:
/* 191CA0 802633C0 8FBF002C */ lw $ra, 0x2c($sp)
/* 191CA4 802633C4 8FB60028 */ lw $s6, 0x28($sp)
/* 191CA8 802633C8 8FB50024 */ lw $s5, 0x24($sp)
/* 191CAC 802633CC 8FB40020 */ lw $s4, 0x20($sp)
/* 191CB0 802633D0 8FB3001C */ lw $s3, 0x1c($sp)
/* 191CB4 802633D4 8FB20018 */ lw $s2, 0x18($sp)
/* 191CB8 802633D8 8FB10014 */ lw $s1, 0x14($sp)
/* 191CBC 802633DC 8FB00010 */ lw $s0, 0x10($sp)
/* 191CC0 802633E0 03E00008 */ jr $ra
/* 191CC4 802633E4 27BD0030 */ addiu $sp, $sp, 0x30

View File

@ -1,52 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_80263E08
/* 1926E8 80263E08 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 1926EC 80263E0C AFB00010 */ sw $s0, 0x10($sp)
/* 1926F0 80263E10 00A0802D */ daddu $s0, $a1, $zero
/* 1926F4 80263E14 00C0282D */ daddu $a1, $a2, $zero
/* 1926F8 80263E18 04A00023 */ bltz $a1, .L80263EA8
/* 1926FC 80263E1C AFBF0014 */ sw $ra, 0x14($sp)
/* 192700 80263E20 94820192 */ lhu $v0, 0x192($a0)
/* 192704 80263E24 30430700 */ andi $v1, $v0, 0x700
/* 192708 80263E28 24020100 */ addiu $v0, $zero, 0x100
/* 19270C 80263E2C 10620013 */ beq $v1, $v0, .L80263E7C
/* 192710 80263E30 28620101 */ slti $v0, $v1, 0x101
/* 192714 80263E34 50400005 */ beql $v0, $zero, .L80263E4C
/* 192718 80263E38 24020200 */ addiu $v0, $zero, 0x200
/* 19271C 80263E3C 10600007 */ beqz $v1, .L80263E5C
/* 192720 80263E40 00000000 */ nop
/* 192724 80263E44 08098FAA */ j .L80263EA8
/* 192728 80263E48 00000000 */ nop
.L80263E4C:
/* 19272C 80263E4C 1062000B */ beq $v1, $v0, .L80263E7C
/* 192730 80263E50 00000000 */ nop
/* 192734 80263E54 08098FAA */ j .L80263EA8
/* 192738 80263E58 00000000 */ nop
.L80263E5C:
/* 19273C 80263E5C 8E020088 */ lw $v0, 0x88($s0)
/* 192740 80263E60 10450011 */ beq $v0, $a1, .L80263EA8
/* 192744 80263E64 0000202D */ daddu $a0, $zero, $zero
/* 192748 80263E68 8E060090 */ lw $a2, 0x90($s0)
/* 19274C 80263E6C 0C0B76A3 */ jal spr_update_player_sprite
/* 192750 80263E70 AE050088 */ sw $a1, 0x88($s0)
/* 192754 80263E74 08098FAA */ j .L80263EA8
/* 192758 80263E78 00000000 */ nop
.L80263E7C:
/* 19275C 80263E7C 8E020088 */ lw $v0, 0x88($s0)
/* 192760 80263E80 10450009 */ beq $v0, $a1, .L80263EA8
/* 192764 80263E84 00000000 */ nop
/* 192768 80263E88 8E040084 */ lw $a0, 0x84($s0)
/* 19276C 80263E8C 8E060090 */ lw $a2, 0x90($s0)
/* 192770 80263E90 0C0B78AB */ jal spr_update_sprite
/* 192774 80263E94 AE050088 */ sw $a1, 0x88($s0)
/* 192778 80263E98 8E040084 */ lw $a0, 0x84($s0)
/* 19277C 80263E9C 0C0B7972 */ jal func_802DE5C8
/* 192780 80263EA0 00000000 */ nop
/* 192784 80263EA4 AE02008C */ sw $v0, 0x8c($s0)
.L80263EA8:
/* 192788 80263EA8 8FBF0014 */ lw $ra, 0x14($sp)
/* 19278C 80263EAC 8FB00010 */ lw $s0, 0x10($sp)
/* 192790 80263EB0 03E00008 */ jr $ra
/* 192794 80263EB4 27BD0018 */ addiu $sp, $sp, 0x18

View File

@ -1,48 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_80263FE8
/* 1928C8 80263FE8 27BDFFE0 */ addiu $sp, $sp, -0x20
/* 1928CC 80263FEC AFB00010 */ sw $s0, 0x10($sp)
/* 1928D0 80263FF0 0080802D */ daddu $s0, $a0, $zero
/* 1928D4 80263FF4 AFB20018 */ sw $s2, 0x18($sp)
/* 1928D8 80263FF8 00A0902D */ daddu $s2, $a1, $zero
/* 1928DC 80263FFC AFB10014 */ sw $s1, 0x14($sp)
/* 1928E0 80264000 AFBF001C */ sw $ra, 0x1c($sp)
/* 1928E4 80264004 0C09A75B */ jal get_actor
/* 1928E8 80264008 00C0882D */ daddu $s1, $a2, $zero
/* 1928EC 8026400C 0040202D */ daddu $a0, $v0, $zero
/* 1928F0 80264010 32100700 */ andi $s0, $s0, 0x700
/* 1928F4 80264014 24020100 */ addiu $v0, $zero, 0x100
/* 1928F8 80264018 12020009 */ beq $s0, $v0, .L80264040
/* 1928FC 8026401C 2A020101 */ slti $v0, $s0, 0x101
/* 192900 80264020 50400005 */ beql $v0, $zero, .L80264038
/* 192904 80264024 24020200 */ addiu $v0, $zero, 0x200
/* 192908 80264028 12000007 */ beqz $s0, .L80264048
/* 19290C 8026402C 00000000 */ nop
/* 192910 80264030 0809901B */ j .L8026406C
/* 192914 80264034 00000000 */ nop
.L80264038:
/* 192918 80264038 1602000C */ bne $s0, $v0, .L8026406C
/* 19291C 8026403C 00000000 */ nop
.L80264040:
/* 192920 80264040 16400005 */ bnez $s2, .L80264058
/* 192924 80264044 00000000 */ nop
.L80264048:
/* 192928 80264048 8C820000 */ lw $v0, ($a0)
/* 19292C 8026404C 00511025 */ or $v0, $v0, $s1
/* 192930 80264050 0809901B */ j .L8026406C
/* 192934 80264054 AC820000 */ sw $v0, ($a0)
.L80264058:
/* 192938 80264058 0C099117 */ jal get_actor_part
/* 19293C 8026405C 0240282D */ daddu $a1, $s2, $zero
/* 192940 80264060 8C430000 */ lw $v1, ($v0)
/* 192944 80264064 00711825 */ or $v1, $v1, $s1
/* 192948 80264068 AC430000 */ sw $v1, ($v0)
.L8026406C:
/* 19294C 8026406C 8FBF001C */ lw $ra, 0x1c($sp)
/* 192950 80264070 8FB20018 */ lw $s2, 0x18($sp)
/* 192954 80264074 8FB10014 */ lw $s1, 0x14($sp)
/* 192958 80264078 8FB00010 */ lw $s0, 0x10($sp)
/* 19295C 8026407C 03E00008 */ jr $ra
/* 192960 80264080 27BD0020 */ addiu $sp, $sp, 0x20

View File

@ -1,50 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_80264084
/* 192964 80264084 27BDFFE0 */ addiu $sp, $sp, -0x20
/* 192968 80264088 AFB00010 */ sw $s0, 0x10($sp)
/* 19296C 8026408C 0080802D */ daddu $s0, $a0, $zero
/* 192970 80264090 AFB20018 */ sw $s2, 0x18($sp)
/* 192974 80264094 00A0902D */ daddu $s2, $a1, $zero
/* 192978 80264098 AFB10014 */ sw $s1, 0x14($sp)
/* 19297C 8026409C AFBF001C */ sw $ra, 0x1c($sp)
/* 192980 802640A0 0C09A75B */ jal get_actor
/* 192984 802640A4 00C0882D */ daddu $s1, $a2, $zero
/* 192988 802640A8 0040202D */ daddu $a0, $v0, $zero
/* 19298C 802640AC 32100700 */ andi $s0, $s0, 0x700
/* 192990 802640B0 24020100 */ addiu $v0, $zero, 0x100
/* 192994 802640B4 12020009 */ beq $s0, $v0, .L802640DC
/* 192998 802640B8 2A020101 */ slti $v0, $s0, 0x101
/* 19299C 802640BC 50400005 */ beql $v0, $zero, .L802640D4
/* 1929A0 802640C0 24020200 */ addiu $v0, $zero, 0x200
/* 1929A4 802640C4 12000007 */ beqz $s0, .L802640E4
/* 1929A8 802640C8 00000000 */ nop
/* 1929AC 802640CC 08099044 */ j .L80264110
/* 1929B0 802640D0 00000000 */ nop
.L802640D4:
/* 1929B4 802640D4 1602000E */ bne $s0, $v0, .L80264110
/* 1929B8 802640D8 00000000 */ nop
.L802640DC:
/* 1929BC 802640DC 16400006 */ bnez $s2, .L802640F8
/* 1929C0 802640E0 00000000 */ nop
.L802640E4:
/* 1929C4 802640E4 8C820000 */ lw $v0, ($a0)
/* 1929C8 802640E8 00111827 */ nor $v1, $zero, $s1
/* 1929CC 802640EC 00431024 */ and $v0, $v0, $v1
/* 1929D0 802640F0 08099044 */ j .L80264110
/* 1929D4 802640F4 AC820000 */ sw $v0, ($a0)
.L802640F8:
/* 1929D8 802640F8 0C099117 */ jal get_actor_part
/* 1929DC 802640FC 0240282D */ daddu $a1, $s2, $zero
/* 1929E0 80264100 8C430000 */ lw $v1, ($v0)
/* 1929E4 80264104 00112027 */ nor $a0, $zero, $s1
/* 1929E8 80264108 00641824 */ and $v1, $v1, $a0
/* 1929EC 8026410C AC430000 */ sw $v1, ($v0)
.L80264110:
/* 1929F0 80264110 8FBF001C */ lw $ra, 0x1c($sp)
/* 1929F4 80264114 8FB20018 */ lw $s2, 0x18($sp)
/* 1929F8 80264118 8FB10014 */ lw $s1, 0x14($sp)
/* 1929FC 8026411C 8FB00010 */ lw $s0, 0x10($sp)
/* 192A00 80264120 03E00008 */ jr $ra
/* 192A04 80264124 27BD0020 */ addiu $sp, $sp, 0x20

View File

@ -1,32 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_80265CE8
/* 1945C8 80265CE8 14800006 */ bnez $a0, .L80265D04
/* 1945CC 80265CEC 0000102D */ daddu $v0, $zero, $zero
/* 1945D0 80265CF0 03E00008 */ jr $ra
/* 1945D4 80265CF4 00000000 */ nop
.L80265CF8:
/* 1945D8 80265CF8 8C830004 */ lw $v1, 4($a0)
/* 1945DC 80265CFC 03E00008 */ jr $ra
/* 1945E0 80265D00 0060102D */ daddu $v0, $v1, $zero
.L80265D04:
/* 1945E4 80265D04 8C820000 */ lw $v0, ($a0)
/* 1945E8 80265D08 1040000C */ beqz $v0, .L80265D3C
/* 1945EC 80265D0C 0000182D */ daddu $v1, $zero, $zero
/* 1945F0 80265D10 24060001 */ addiu $a2, $zero, 1
/* 1945F4 80265D14 8C820000 */ lw $v0, ($a0)
.L80265D18:
/* 1945F8 80265D18 14460002 */ bne $v0, $a2, .L80265D24
/* 1945FC 80265D1C 00000000 */ nop
/* 194600 80265D20 8C830004 */ lw $v1, 4($a0)
.L80265D24:
/* 194604 80265D24 1045FFF4 */ beq $v0, $a1, .L80265CF8
/* 194608 80265D28 00000000 */ nop
/* 19460C 80265D2C 24840008 */ addiu $a0, $a0, 8
/* 194610 80265D30 8C820000 */ lw $v0, ($a0)
/* 194614 80265D34 1440FFF8 */ bnez $v0, .L80265D18
/* 194618 80265D38 00000000 */ nop
.L80265D3C:
/* 19461C 80265D3C 03E00008 */ jr $ra
/* 194620 80265D40 0060102D */ daddu $v0, $v1, $zero

View File

@ -1,81 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_80265D44
/* 194624 80265D44 3C03800E */ lui $v1, %hi(gBattleStatus)
/* 194628 80265D48 2463C070 */ addiu $v1, $v1, %lo(gBattleStatus)
/* 19462C 80265D4C 8C6600D8 */ lw $a2, 0xd8($v1)
/* 194630 80265D50 8CC201F4 */ lw $v0, 0x1f4($a2)
/* 194634 80265D54 8C450094 */ lw $a1, 0x94($v0)
/* 194638 80265D58 14A00006 */ bnez $a1, .L80265D74
/* 19463C 80265D5C 0000102D */ daddu $v0, $zero, $zero
/* 194640 80265D60 03E00008 */ jr $ra
/* 194644 80265D64 00000000 */ nop
.L80265D68:
/* 194648 80265D68 8CA70004 */ lw $a3, 4($a1)
/* 19464C 80265D6C 03E00008 */ jr $ra
/* 194650 80265D70 00E0102D */ daddu $v0, $a3, $zero
.L80265D74:
/* 194654 80265D74 8C620004 */ lw $v0, 4($v1)
/* 194658 80265D78 30420040 */ andi $v0, $v0, 0x40
/* 19465C 80265D7C 14400022 */ bnez $v0, .L80265E08
/* 194660 80265D80 0000382D */ daddu $a3, $zero, $zero
/* 194664 80265D84 3C028011 */ lui $v0, %hi(gPlayerData)
/* 194668 80265D88 2442F290 */ addiu $v0, $v0, %lo(gPlayerData)
/* 19466C 80265D8C 80420002 */ lb $v0, 2($v0)
/* 194670 80265D90 28420006 */ slti $v0, $v0, 6
/* 194674 80265D94 10400009 */ beqz $v0, .L80265DBC
/* 194678 80265D98 24020001 */ addiu $v0, $zero, 1
/* 19467C 80265D9C 50820001 */ beql $a0, $v0, .L80265DA4
/* 194680 80265DA0 2404001A */ addiu $a0, $zero, 0x1a
.L80265DA4:
/* 194684 80265DA4 24020012 */ addiu $v0, $zero, 0x12
/* 194688 80265DA8 50820001 */ beql $a0, $v0, .L80265DB0
/* 19468C 80265DAC 24040016 */ addiu $a0, $zero, 0x16
.L80265DB0:
/* 194690 80265DB0 2402001C */ addiu $v0, $zero, 0x1c
/* 194694 80265DB4 50820001 */ beql $a0, $v0, .L80265DBC
/* 194698 80265DB8 2404001D */ addiu $a0, $zero, 0x1d
.L80265DBC:
/* 19469C 80265DBC 80C30210 */ lb $v1, 0x210($a2)
/* 1946A0 80265DC0 24020009 */ addiu $v0, $zero, 9
/* 1946A4 80265DC4 1462000C */ bne $v1, $v0, .L80265DF8
/* 1946A8 80265DC8 24020004 */ addiu $v0, $zero, 4
/* 1946AC 80265DCC 24020001 */ addiu $v0, $zero, 1
/* 1946B0 80265DD0 50820001 */ beql $a0, $v0, .L80265DD8
/* 1946B4 80265DD4 2404001A */ addiu $a0, $zero, 0x1a
.L80265DD8:
/* 1946B8 80265DD8 24020012 */ addiu $v0, $zero, 0x12
/* 1946BC 80265DDC 50820001 */ beql $a0, $v0, .L80265DE4
/* 1946C0 80265DE0 24040016 */ addiu $a0, $zero, 0x16
.L80265DE4:
/* 1946C4 80265DE4 2402001C */ addiu $v0, $zero, 0x1c
/* 1946C8 80265DE8 50820001 */ beql $a0, $v0, .L80265DF0
/* 1946CC 80265DEC 2404001D */ addiu $a0, $zero, 0x1d
.L80265DF0:
/* 1946D0 80265DF0 80C30210 */ lb $v1, 0x210($a2)
/* 1946D4 80265DF4 24020004 */ addiu $v0, $zero, 4
.L80265DF8:
/* 1946D8 80265DF8 14620003 */ bne $v1, $v0, .L80265E08
/* 1946DC 80265DFC 24020012 */ addiu $v0, $zero, 0x12
/* 1946E0 80265E00 50820001 */ beql $a0, $v0, .L80265E08
/* 1946E4 80265E04 24040018 */ addiu $a0, $zero, 0x18
.L80265E08:
/* 1946E8 80265E08 8CA20000 */ lw $v0, ($a1)
/* 1946EC 80265E0C 1040000B */ beqz $v0, .L80265E3C
/* 1946F0 80265E10 24030001 */ addiu $v1, $zero, 1
/* 1946F4 80265E14 8CA20000 */ lw $v0, ($a1)
.L80265E18:
/* 1946F8 80265E18 14430002 */ bne $v0, $v1, .L80265E24
/* 1946FC 80265E1C 00000000 */ nop
/* 194700 80265E20 8CA70004 */ lw $a3, 4($a1)
.L80265E24:
/* 194704 80265E24 1044FFD0 */ beq $v0, $a0, .L80265D68
/* 194708 80265E28 00000000 */ nop
/* 19470C 80265E2C 24A50008 */ addiu $a1, $a1, 8
/* 194710 80265E30 8CA20000 */ lw $v0, ($a1)
/* 194714 80265E34 1440FFF8 */ bnez $v0, .L80265E18
/* 194718 80265E38 00000000 */ nop
.L80265E3C:
/* 19471C 80265E3C 03E00008 */ jr $ra
/* 194720 80265E40 00E0102D */ daddu $v0, $a3, $zero

View File

@ -5,8 +5,8 @@ glabel func_802664DC
/* 194DBC 802664DC 27BDFFD8 */ addiu $sp, $sp, -0x28 /* 194DBC 802664DC 27BDFFD8 */ addiu $sp, $sp, -0x28
/* 194DC0 802664E0 AFB00020 */ sw $s0, 0x20($sp) /* 194DC0 802664E0 AFB00020 */ sw $s0, 0x20($sp)
/* 194DC4 802664E4 0000802D */ daddu $s0, $zero, $zero /* 194DC4 802664E4 0000802D */ daddu $s0, $zero, $zero
/* 194DC8 802664E8 3C058029 */ lui $a1, %hi(D_802938AC) /* 194DC8 802664E8 3C058029 */ lui $a1, %hi(gDamageCountEffects)
/* 194DCC 802664EC 24A538AC */ addiu $a1, $a1, %lo(D_802938AC) /* 194DCC 802664EC 24A538AC */ addiu $a1, $a1, %lo(gDamageCountEffects)
/* 194DD0 802664F0 44861000 */ mtc1 $a2, $f2 /* 194DD0 802664F0 44861000 */ mtc1 $a2, $f2
/* 194DD4 802664F4 8FA40038 */ lw $a0, 0x38($sp) /* 194DD4 802664F4 8FA40038 */ lw $a0, 0x38($sp)
/* 194DD8 802664F8 00A0182D */ daddu $v1, $a1, $zero /* 194DD8 802664F8 00A0182D */ daddu $v1, $a1, $zero
@ -35,8 +35,8 @@ glabel func_802664DC
/* 194E24 80266544 44840000 */ mtc1 $a0, $f0 /* 194E24 80266544 44840000 */ mtc1 $a0, $f0
/* 194E28 80266548 00000000 */ nop /* 194E28 80266548 00000000 */ nop
/* 194E2C 8026654C 46800020 */ cvt.s.w $f0, $f0 /* 194E2C 8026654C 46800020 */ cvt.s.w $f0, $f0
/* 194E30 80266550 3C028029 */ lui $v0, %hi(D_802938AC) /* 194E30 80266550 3C028029 */ lui $v0, %hi(gDamageCountEffects)
/* 194E34 80266554 244238AC */ addiu $v0, $v0, %lo(D_802938AC) /* 194E34 80266554 244238AC */ addiu $v0, $v0, %lo(gDamageCountEffects)
/* 194E38 80266558 00108080 */ sll $s0, $s0, 2 /* 194E38 80266558 00108080 */ sll $s0, $s0, 2
/* 194E3C 8026655C E7A00014 */ swc1 $f0, 0x14($sp) /* 194E3C 8026655C E7A00014 */ swc1 $f0, 0x14($sp)
/* 194E40 80266560 3C014120 */ lui $at, 0x4120 /* 194E40 80266560 3C014120 */ lui $at, 0x4120
@ -51,9 +51,9 @@ glabel func_802664DC
/* 194E64 80266584 0C01C0F4 */ jal playFX_1E /* 194E64 80266584 0C01C0F4 */ jal playFX_1E
/* 194E68 80266588 E7A00010 */ swc1 $f0, 0x10($sp) /* 194E68 80266588 E7A00010 */ swc1 $f0, 0x10($sp)
/* 194E6C 8026658C 24020028 */ addiu $v0, $zero, 0x28 /* 194E6C 8026658C 24020028 */ addiu $v0, $zero, 0x28
/* 194E70 80266590 3C018029 */ lui $at, %hi(D_8029390C) /* 194E70 80266590 3C018029 */ lui $at, %hi(gDamageCountTimers)
/* 194E74 80266594 00300821 */ addu $at, $at, $s0 /* 194E74 80266594 00300821 */ addu $at, $at, $s0
/* 194E78 80266598 AC22390C */ sw $v0, %lo(D_8029390C)($at) /* 194E78 80266598 AC22390C */ sw $v0, %lo(gDamageCountTimers)($at)
/* 194E7C 8026659C 8FBF0024 */ lw $ra, 0x24($sp) /* 194E7C 8026659C 8FBF0024 */ lw $ra, 0x24($sp)
/* 194E80 802665A0 8FB00020 */ lw $s0, 0x20($sp) /* 194E80 802665A0 8FB00020 */ lw $s0, 0x20($sp)
/* 194E84 802665A4 03E00008 */ jr $ra /* 194E84 802665A4 03E00008 */ jr $ra

View File

@ -1,31 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_80266684
/* 194F64 80266684 0000282D */ daddu $a1, $zero, $zero
/* 194F68 80266688 24060005 */ addiu $a2, $zero, 5
/* 194F6C 8026668C 3C038029 */ lui $v1, %hi(D_802938AC)
/* 194F70 80266690 246338AC */ addiu $v1, $v1, %lo(D_802938AC)
/* 194F74 80266694 3C048029 */ lui $a0, %hi(D_8029390C)
/* 194F78 80266698 2484390C */ addiu $a0, $a0, %lo(D_8029390C)
.L8026669C:
/* 194F7C 8026669C 8C620000 */ lw $v0, ($v1)
/* 194F80 802666A0 5040000A */ beql $v0, $zero, .L802666CC
/* 194F84 802666A4 24630004 */ addiu $v1, $v1, 4
/* 194F88 802666A8 8C820000 */ lw $v0, ($a0)
/* 194F8C 802666AC 2442FFFF */ addiu $v0, $v0, -1
/* 194F90 802666B0 14400005 */ bnez $v0, .L802666C8
/* 194F94 802666B4 AC820000 */ sw $v0, ($a0)
/* 194F98 802666B8 8C620000 */ lw $v0, ($v1)
/* 194F9C 802666BC 8C42000C */ lw $v0, 0xc($v0)
/* 194FA0 802666C0 AC460030 */ sw $a2, 0x30($v0)
/* 194FA4 802666C4 AC600000 */ sw $zero, ($v1)
.L802666C8:
/* 194FA8 802666C8 24630004 */ addiu $v1, $v1, 4
.L802666CC:
/* 194FAC 802666CC 24A50001 */ addiu $a1, $a1, 1
/* 194FB0 802666D0 28A20018 */ slti $v0, $a1, 0x18
/* 194FB4 802666D4 1440FFF1 */ bnez $v0, .L8026669C
/* 194FB8 802666D8 24840004 */ addiu $a0, $a0, 4
/* 194FBC 802666DC 03E00008 */ jr $ra
/* 194FC0 802666E0 00000000 */ nop

View File

@ -1,31 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_80266B14
/* 1953F4 80266B14 0000302D */ daddu $a2, $zero, $zero
/* 1953F8 80266B18 3C07FFF7 */ lui $a3, 0xfff7
/* 1953FC 80266B1C 34E7FFFF */ ori $a3, $a3, 0xffff
/* 195400 80266B20 3C05800E */ lui $a1, %hi(gBattleStatus)
/* 195404 80266B24 24A5C070 */ addiu $a1, $a1, %lo(gBattleStatus)
.L80266B28:
/* 195408 80266B28 8CA400E0 */ lw $a0, 0xe0($a1)
/* 19540C 80266B2C 5080000D */ beql $a0, $zero, .L80266B64
/* 195410 80266B30 24C60001 */ addiu $a2, $a2, 1
/* 195414 80266B34 80820206 */ lb $v0, 0x206($a0)
/* 195418 80266B38 90830206 */ lbu $v1, 0x206($a0)
/* 19541C 80266B3C 18400009 */ blez $v0, .L80266B64
/* 195420 80266B40 24C60001 */ addiu $a2, $a2, 1
/* 195424 80266B44 2462FFFF */ addiu $v0, $v1, -1
/* 195428 80266B48 A0820206 */ sb $v0, 0x206($a0)
/* 19542C 80266B4C 00021600 */ sll $v0, $v0, 0x18
/* 195430 80266B50 14400004 */ bnez $v0, .L80266B64
/* 195434 80266B54 00000000 */ nop
/* 195438 80266B58 8C820000 */ lw $v0, ($a0)
/* 19543C 80266B5C 00471024 */ and $v0, $v0, $a3
/* 195440 80266B60 AC820000 */ sw $v0, ($a0)
.L80266B64:
/* 195444 80266B64 28C20018 */ slti $v0, $a2, 0x18
/* 195448 80266B68 1440FFEF */ bnez $v0, .L80266B28
/* 19544C 80266B6C 24A50004 */ addiu $a1, $a1, 4
/* 195450 80266B70 03E00008 */ jr $ra
/* 195454 80266B74 00000000 */ nop

View File

@ -1,33 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_80266DAC
/* 19568C 80266DAC 27BDFFE0 */ addiu $sp, $sp, -0x20
/* 195690 80266DB0 AFBF0018 */ sw $ra, 0x18($sp)
/* 195694 80266DB4 AFB10014 */ sw $s1, 0x14($sp)
/* 195698 80266DB8 AFB00010 */ sw $s0, 0x10($sp)
/* 19569C 80266DBC 8C9001F4 */ lw $s0, 0x1f4($a0)
/* 1956A0 80266DC0 1200000F */ beqz $s0, .L80266E00
/* 1956A4 80266DC4 00A0882D */ daddu $s1, $a1, $zero
.L80266DC8:
/* 1956A8 80266DC8 8E030000 */ lw $v1, ($s0)
/* 1956AC 80266DCC 30620001 */ andi $v0, $v1, 1
/* 1956B0 80266DD0 14400008 */ bnez $v0, .L80266DF4
/* 1956B4 80266DD4 00000000 */ nop
/* 1956B8 80266DD8 8E020094 */ lw $v0, 0x94($s0)
/* 1956BC 80266DDC 10400005 */ beqz $v0, .L80266DF4
/* 1956C0 80266DE0 30620002 */ andi $v0, $v1, 2
/* 1956C4 80266DE4 14400003 */ bnez $v0, .L80266DF4
/* 1956C8 80266DE8 0200202D */ daddu $a0, $s0, $zero
/* 1956CC 80266DEC 0C099B5B */ jal func_80266D6C
/* 1956D0 80266DF0 0220282D */ daddu $a1, $s1, $zero
.L80266DF4:
/* 1956D4 80266DF4 8E10000C */ lw $s0, 0xc($s0)
/* 1956D8 80266DF8 1600FFF3 */ bnez $s0, .L80266DC8
/* 1956DC 80266DFC 00000000 */ nop
.L80266E00:
/* 1956E0 80266E00 8FBF0018 */ lw $ra, 0x18($sp)
/* 1956E4 80266E04 8FB10014 */ lw $s1, 0x14($sp)
/* 1956E8 80266E08 8FB00010 */ lw $s0, 0x10($sp)
/* 1956EC 80266E0C 03E00008 */ jr $ra
/* 1956F0 80266E10 27BD0020 */ addiu $sp, $sp, 0x20

View File

@ -1,33 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_80266E40
/* 195720 80266E40 8C8401F4 */ lw $a0, 0x1f4($a0)
/* 195724 80266E44 10800016 */ beqz $a0, .L80266EA0
/* 195728 80266E48 3C060010 */ lui $a2, 0x10
/* 19572C 80266E4C 34C60001 */ ori $a2, $a2, 1
/* 195730 80266E50 2408000E */ addiu $t0, $zero, 0xe
/* 195734 80266E54 2407000F */ addiu $a3, $zero, 0xf
.L80266E58:
/* 195738 80266E58 8C8500C0 */ lw $a1, 0xc0($a0)
/* 19573C 80266E5C 8C830000 */ lw $v1, ($a0)
/* 195740 80266E60 00661024 */ and $v0, $v1, $a2
/* 195744 80266E64 1440000B */ bnez $v0, .L80266E94
/* 195748 80266E68 00000000 */ nop
/* 19574C 80266E6C 8C820094 */ lw $v0, 0x94($a0)
/* 195750 80266E70 10400008 */ beqz $v0, .L80266E94
/* 195754 80266E74 30620002 */ andi $v0, $v1, 2
/* 195758 80266E78 14400006 */ bnez $v0, .L80266E94
/* 19575C 80266E7C 00000000 */ nop
/* 195760 80266E80 80A206C0 */ lb $v0, 0x6c0($a1)
/* 195764 80266E84 10480003 */ beq $v0, $t0, .L80266E94
/* 195768 80266E88 00000000 */ nop
/* 19576C 80266E8C 54470001 */ bnel $v0, $a3, .L80266E94
/* 195770 80266E90 A0A006C0 */ sb $zero, 0x6c0($a1)
.L80266E94:
/* 195774 80266E94 8C84000C */ lw $a0, 0xc($a0)
/* 195778 80266E98 1480FFEF */ bnez $a0, .L80266E58
/* 19577C 80266E9C 00000000 */ nop
.L80266EA0:
/* 195780 80266EA0 03E00008 */ jr $ra
/* 195784 80266EA4 00000000 */ nop

View File

@ -1,37 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_80266EE8
/* 1957C8 80266EE8 27BDFFE0 */ addiu $sp, $sp, -0x20
/* 1957CC 80266EEC AFBF001C */ sw $ra, 0x1c($sp)
/* 1957D0 80266EF0 AFB20018 */ sw $s2, 0x18($sp)
/* 1957D4 80266EF4 AFB10014 */ sw $s1, 0x14($sp)
/* 1957D8 80266EF8 AFB00010 */ sw $s0, 0x10($sp)
/* 1957DC 80266EFC 8C9001F4 */ lw $s0, 0x1f4($a0)
/* 1957E0 80266F00 12000011 */ beqz $s0, .L80266F48
/* 1957E4 80266F04 00A0902D */ daddu $s2, $a1, $zero
/* 1957E8 80266F08 3C110010 */ lui $s1, 0x10
/* 1957EC 80266F0C 36310001 */ ori $s1, $s1, 1
.L80266F10:
/* 1957F0 80266F10 8E030000 */ lw $v1, ($s0)
/* 1957F4 80266F14 00711024 */ and $v0, $v1, $s1
/* 1957F8 80266F18 14400008 */ bnez $v0, .L80266F3C
/* 1957FC 80266F1C 00000000 */ nop
/* 195800 80266F20 8E020094 */ lw $v0, 0x94($s0)
/* 195804 80266F24 10400005 */ beqz $v0, .L80266F3C
/* 195808 80266F28 30620002 */ andi $v0, $v1, 2
/* 19580C 80266F2C 14400003 */ bnez $v0, .L80266F3C
/* 195810 80266F30 0200202D */ daddu $a0, $s0, $zero
/* 195814 80266F34 0C099BAA */ jal func_80266EA8
/* 195818 80266F38 0240282D */ daddu $a1, $s2, $zero
.L80266F3C:
/* 19581C 80266F3C 8E10000C */ lw $s0, 0xc($s0)
/* 195820 80266F40 1600FFF3 */ bnez $s0, .L80266F10
/* 195824 80266F44 00000000 */ nop
.L80266F48:
/* 195828 80266F48 8FBF001C */ lw $ra, 0x1c($sp)
/* 19582C 80266F4C 8FB20018 */ lw $s2, 0x18($sp)
/* 195830 80266F50 8FB10014 */ lw $s1, 0x14($sp)
/* 195834 80266F54 8FB00010 */ lw $s0, 0x10($sp)
/* 195838 80266F58 03E00008 */ jr $ra
/* 19583C 80266F5C 27BD0020 */ addiu $sp, $sp, 0x20

View File

@ -1,551 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel load_partner_actor
/* 193454 80264B74 27BDFFB0 */ addiu $sp, $sp, -0x50
/* 193458 80264B78 AFB30024 */ sw $s3, 0x24($sp)
/* 19345C 80264B7C 3C138011 */ lui $s3, %hi(gPlayerData)
/* 193460 80264B80 2673F290 */ addiu $s3, $s3, %lo(gPlayerData)
/* 193464 80264B84 AFBF0034 */ sw $ra, 0x34($sp)
/* 193468 80264B88 AFB60030 */ sw $s6, 0x30($sp)
/* 19346C 80264B8C AFB5002C */ sw $s5, 0x2c($sp)
/* 193470 80264B90 AFB40028 */ sw $s4, 0x28($sp)
/* 193474 80264B94 AFB20020 */ sw $s2, 0x20($sp)
/* 193478 80264B98 AFB1001C */ sw $s1, 0x1c($sp)
/* 19347C 80264B9C AFB00018 */ sw $s0, 0x18($sp)
/* 193480 80264BA0 F7B80048 */ sdc1 $f24, 0x48($sp)
/* 193484 80264BA4 F7B60040 */ sdc1 $f22, 0x40($sp)
/* 193488 80264BA8 F7B40038 */ sdc1 $f20, 0x38($sp)
/* 19348C 80264BAC 82640012 */ lb $a0, 0x12($s3)
/* 193490 80264BB0 3C12800E */ lui $s2, %hi(gBattleStatus)
/* 193494 80264BB4 2652C070 */ addiu $s2, $s2, %lo(gBattleStatus)
/* 193498 80264BB8 108001ED */ beqz $a0, .L80265370
/* 19349C 80264BBC AE4000DC */ sw $zero, 0xdc($s2)
/* 1934A0 80264BC0 3C038028 */ lui $v1, %hi(D_80283F10)
/* 1934A4 80264BC4 24633F10 */ addiu $v1, $v1, %lo(D_80283F10)
/* 1934A8 80264BC8 00041080 */ sll $v0, $a0, 2
/* 1934AC 80264BCC 00441021 */ addu $v0, $v0, $a0
/* 1934B0 80264BD0 00021080 */ sll $v0, $v0, 2
/* 1934B4 80264BD4 00438021 */ addu $s0, $v0, $v1
/* 1934B8 80264BD8 8E14000C */ lw $s4, 0xc($s0)
/* 1934BC 80264BDC 16800003 */ bnez $s4, .L80264BEC
/* 1934C0 80264BE0 00000000 */ nop
.L80264BE4:
/* 1934C4 80264BE4 080992F9 */ j .L80264BE4
/* 1934C8 80264BE8 00000000 */ nop
.L80264BEC:
/* 1934CC 80264BEC 8E040000 */ lw $a0, ($s0)
/* 1934D0 80264BF0 8E060004 */ lw $a2, 4($s0)
/* 1934D4 80264BF4 8E050008 */ lw $a1, 8($s0)
/* 1934D8 80264BF8 0C017D24 */ jal nuPiReadRom
/* 1934DC 80264BFC 00C43023 */ subu $a2, $a2, $a0
/* 1934E0 80264C00 3C04800E */ lui $a0, %hi(gBattleStatus)
/* 1934E4 80264C04 2484C070 */ addiu $a0, $a0, %lo(gBattleStatus)
/* 1934E8 80264C08 8C820004 */ lw $v0, 4($a0)
/* 1934EC 80264C0C 30420040 */ andi $v0, $v0, 0x40
/* 1934F0 80264C10 14400007 */ bnez $v0, .L80264C30
/* 1934F4 80264C14 00000000 */ nop
/* 1934F8 80264C18 3C028007 */ lui $v0, %hi(gGameStatusPtr)
/* 1934FC 80264C1C 8C42419C */ lw $v0, %lo(gGameStatusPtr)($v0)
/* 193500 80264C20 904200AA */ lbu $v0, 0xaa($v0)
/* 193504 80264C24 30420002 */ andi $v0, $v0, 2
/* 193508 80264C28 1040000B */ beqz $v0, .L80264C58
/* 19350C 80264C2C 00000000 */ nop
.L80264C30:
/* 193510 80264C30 C6180010 */ lwc1 $f24, 0x10($s0)
/* 193514 80264C34 4680C620 */ cvt.s.w $f24, $f24
/* 193518 80264C38 3C030010 */ lui $v1, 0x10
/* 19351C 80264C3C 3C01C2BE */ lui $at, 0xc2be
/* 193520 80264C40 4481A000 */ mtc1 $at, $f20
/* 193524 80264C44 8C820000 */ lw $v0, ($a0)
/* 193528 80264C48 4480B000 */ mtc1 $zero, $f22
/* 19352C 80264C4C 00431025 */ or $v0, $v0, $v1
/* 193530 80264C50 0809931C */ j .L80264C70
/* 193534 80264C54 AC820000 */ sw $v0, ($a0)
.L80264C58:
/* 193538 80264C58 C6180010 */ lwc1 $f24, 0x10($s0)
/* 19353C 80264C5C 4680C620 */ cvt.s.w $f24, $f24
/* 193540 80264C60 3C01C302 */ lui $at, 0xc302
/* 193544 80264C64 4481A000 */ mtc1 $at, $f20
/* 193548 80264C68 3C01C120 */ lui $at, 0xc120
/* 19354C 80264C6C 4481B000 */ mtc1 $at, $f22
.L80264C70:
/* 193550 80264C70 86960008 */ lh $s6, 8($s4)
/* 193554 80264C74 0C00AB39 */ jal heap_malloc
/* 193558 80264C78 24040444 */ addiu $a0, $zero, 0x444
/* 19355C 80264C7C 0040882D */ daddu $s1, $v0, $zero
/* 193560 80264C80 16200003 */ bnez $s1, .L80264C90
/* 193564 80264C84 AE4200DC */ sw $v0, 0xdc($s2)
.L80264C88:
/* 193568 80264C88 08099322 */ j .L80264C88
/* 19356C 80264C8C 00000000 */ nop
.L80264C90:
/* 193570 80264C90 82620012 */ lb $v0, 0x12($s3)
/* 193574 80264C94 000210C0 */ sll $v0, $v0, 3
/* 193578 80264C98 02621021 */ addu $v0, $s3, $v0
/* 19357C 80264C9C 90420015 */ lbu $v0, 0x15($v0)
/* 193580 80264CA0 A2820006 */ sb $v0, 6($s4)
/* 193584 80264CA4 92430093 */ lbu $v1, 0x93($s2)
/* 193588 80264CA8 3C013F80 */ lui $at, 0x3f80
/* 19358C 80264CAC 44811000 */ mtc1 $at, $f2
/* 193590 80264CB0 24620001 */ addiu $v0, $v1, 1
/* 193594 80264CB4 A2420093 */ sb $v0, 0x93($s2)
/* 193598 80264CB8 A2230134 */ sb $v1, 0x134($s1)
/* 19359C 80264CBC A2200135 */ sb $zero, 0x135($s1)
/* 1935A0 80264CC0 AE340008 */ sw $s4, 8($s1)
/* 1935A4 80264CC4 92820005 */ lbu $v0, 5($s4)
/* 1935A8 80264CC8 A2220136 */ sb $v0, 0x136($s1)
/* 1935AC 80264CCC 8E820000 */ lw $v0, ($s4)
/* 1935B0 80264CD0 E6340144 */ swc1 $f20, 0x144($s1)
/* 1935B4 80264CD4 E6340138 */ swc1 $f20, 0x138($s1)
/* 1935B8 80264CD8 E6380148 */ swc1 $f24, 0x148($s1)
/* 1935BC 80264CDC E638013C */ swc1 $f24, 0x13c($s1)
/* 1935C0 80264CE0 E636014C */ swc1 $f22, 0x14c($s1)
/* 1935C4 80264CE4 E6360140 */ swc1 $f22, 0x140($s1)
/* 1935C8 80264CE8 A6200150 */ sh $zero, 0x150($s1)
/* 1935CC 80264CEC A6200152 */ sh $zero, 0x152($s1)
/* 1935D0 80264CF0 A6200154 */ sh $zero, 0x154($s1)
/* 1935D4 80264CF4 AE220000 */ sw $v0, ($s1)
/* 1935D8 80264CF8 92820007 */ lbu $v0, 7($s4)
/* 1935DC 80264CFC A23601F3 */ sb $s6, 0x1f3($s1)
/* 1935E0 80264D00 AE2001C0 */ sw $zero, 0x1c0($s1)
/* 1935E4 80264D04 A22201B8 */ sb $v0, 0x1b8($s1)
/* 1935E8 80264D08 8E820010 */ lw $v0, 0x10($s4)
/* 1935EC 80264D0C AE2001C8 */ sw $zero, 0x1c8($s1)
/* 1935F0 80264D10 AE2001CC */ sw $zero, 0x1cc($s1)
/* 1935F4 80264D14 AE2001D0 */ sw $zero, 0x1d0($s1)
/* 1935F8 80264D18 AE2001D4 */ sw $zero, 0x1d4($s1)
/* 1935FC 80264D1C AE2001D8 */ sw $zero, 0x1d8($s1)
/* 193600 80264D20 AE2001DC */ sw $zero, 0x1dc($s1)
/* 193604 80264D24 AE2201C4 */ sw $v0, 0x1c4($s1)
/* 193608 80264D28 A22001F1 */ sb $zero, 0x1f1($s1)
/* 19360C 80264D2C 4600A006 */ mov.s $f0, $f20
/* 193610 80264D30 A22001F2 */ sb $zero, 0x1f2($s1)
/* 193614 80264D34 AE20018C */ sw $zero, 0x18c($s1)
/* 193618 80264D38 AE20015C */ sw $zero, 0x15c($s1)
/* 19361C 80264D3C AE200160 */ sw $zero, 0x160($s1)
/* 193620 80264D40 AE200164 */ sw $zero, 0x164($s1)
/* 193624 80264D44 A6200168 */ sh $zero, 0x168($s1)
/* 193628 80264D48 A620016A */ sh $zero, 0x16a($s1)
/* 19362C 80264D4C A620016C */ sh $zero, 0x16c($s1)
/* 193630 80264D50 E6220170 */ swc1 $f2, 0x170($s1)
/* 193634 80264D54 E6220174 */ swc1 $f2, 0x174($s1)
/* 193638 80264D58 E6220178 */ swc1 $f2, 0x178($s1)
/* 19363C 80264D5C E622017C */ swc1 $f2, 0x17c($s1)
/* 193640 80264D60 E6220180 */ swc1 $f2, 0x180($s1)
/* 193644 80264D64 E6220184 */ swc1 $f2, 0x184($s1)
/* 193648 80264D68 A220019A */ sb $zero, 0x19a($s1)
/* 19364C 80264D6C 92820020 */ lbu $v0, 0x20($s4)
/* 193650 80264D70 4600B106 */ mov.s $f4, $f22
/* 193654 80264D74 A2220190 */ sb $v0, 0x190($s1)
/* 193658 80264D78 4600018D */ trunc.w.s $f6, $f0
/* 19365C 80264D7C 44023000 */ mfc1 $v0, $f6
/* 193660 80264D80 92830021 */ lbu $v1, 0x21($s4)
/* 193664 80264D84 4600C006 */ mov.s $f0, $f24
/* 193668 80264D88 A6220156 */ sh $v0, 0x156($s1)
/* 19366C 80264D8C 4600018D */ trunc.w.s $f6, $f0
/* 193670 80264D90 44023000 */ mfc1 $v0, $f6
/* 193674 80264D94 00000000 */ nop
/* 193678 80264D98 A6220158 */ sh $v0, 0x158($s1)
/* 19367C 80264D9C 4600218D */ trunc.w.s $f6, $f4
/* 193680 80264DA0 44023000 */ mfc1 $v0, $f6
/* 193684 80264DA4 00000000 */ nop
/* 193688 80264DA8 A622015A */ sh $v0, 0x15a($s1)
/* 19368C 80264DAC 2402000D */ addiu $v0, $zero, 0xd
/* 193690 80264DB0 E6220188 */ swc1 $f2, 0x188($s1)
/* 193694 80264DB4 AE200200 */ sw $zero, 0x200($s1)
/* 193698 80264DB8 A2200204 */ sb $zero, 0x204($s1)
/* 19369C 80264DBC A2200205 */ sb $zero, 0x205($s1)
/* 1936A0 80264DC0 A2200194 */ sb $zero, 0x194($s1)
/* 1936A4 80264DC4 A2200195 */ sb $zero, 0x195($s1)
/* 1936A8 80264DC8 A2200196 */ sb $zero, 0x196($s1)
/* 1936AC 80264DCC A2200197 */ sb $zero, 0x197($s1)
/* 1936B0 80264DD0 A2230191 */ sb $v1, 0x191($s1)
/* 1936B4 80264DD4 A6220434 */ sh $v0, 0x434($s1)
/* 1936B8 80264DD8 24020100 */ addiu $v0, $zero, 0x100
/* 1936BC 80264DDC A6220192 */ sh $v0, 0x192($s1)
/* 1936C0 80264DE0 8E820014 */ lw $v0, 0x14($s4)
/* 1936C4 80264DE4 92230136 */ lbu $v1, 0x136($s1)
/* 1936C8 80264DE8 A2200210 */ sb $zero, 0x210($s1)
/* 1936CC 80264DEC A2200211 */ sb $zero, 0x211($s1)
/* 1936D0 80264DF0 A2200212 */ sb $zero, 0x212($s1)
/* 1936D4 80264DF4 A2200213 */ sb $zero, 0x213($s1)
/* 1936D8 80264DF8 A2200214 */ sb $zero, 0x214($s1)
/* 1936DC 80264DFC A2200215 */ sb $zero, 0x215($s1)
/* 1936E0 80264E00 A2200216 */ sb $zero, 0x216($s1)
/* 1936E4 80264E04 A2200217 */ sb $zero, 0x217($s1)
/* 1936E8 80264E08 A2200218 */ sb $zero, 0x218($s1)
/* 1936EC 80264E0C A2200219 */ sb $zero, 0x219($s1)
/* 1936F0 80264E10 A2200220 */ sb $zero, 0x220($s1)
/* 1936F4 80264E14 A620021E */ sh $zero, 0x21e($s1)
/* 1936F8 80264E18 A220021D */ sb $zero, 0x21d($s1)
/* 1936FC 80264E1C A2200221 */ sb $zero, 0x221($s1)
/* 193700 80264E20 A2200222 */ sb $zero, 0x222($s1)
/* 193704 80264E24 A2200223 */ sb $zero, 0x223($s1)
/* 193708 80264E28 A2200224 */ sb $zero, 0x224($s1)
/* 19370C 80264E2C A220021C */ sb $zero, 0x21c($s1)
/* 193710 80264E30 AE22020C */ sw $v0, 0x20c($s1)
/* 193714 80264E34 000310C0 */ sll $v0, $v1, 3
/* 193718 80264E38 00431023 */ subu $v0, $v0, $v1
/* 19371C 80264E3C 00021080 */ sll $v0, $v0, 2
/* 193720 80264E40 3C018028 */ lui $at, %hi(bActorSoundTable)
/* 193724 80264E44 00220821 */ addu $at, $at, $v0
/* 193728 80264E48 8C221468 */ lw $v0, %lo(bActorSoundTable)($at)
/* 19372C 80264E4C AE22019C */ sw $v0, 0x19c($s1)
/* 193730 80264E50 000310C0 */ sll $v0, $v1, 3
/* 193734 80264E54 00431023 */ subu $v0, $v0, $v1
/* 193738 80264E58 00021080 */ sll $v0, $v0, 2
/* 19373C 80264E5C 3C018028 */ lui $at, %hi(bActorSoundTable+0x4)
/* 193740 80264E60 00220821 */ addu $at, $at, $v0
/* 193744 80264E64 8C22146C */ lw $v0, %lo(bActorSoundTable+0x4)($at)
/* 193748 80264E68 AE2201A0 */ sw $v0, 0x1a0($s1)
/* 19374C 80264E6C 000310C0 */ sll $v0, $v1, 3
/* 193750 80264E70 00431023 */ subu $v0, $v0, $v1
/* 193754 80264E74 00021080 */ sll $v0, $v0, 2
/* 193758 80264E78 3C018028 */ lui $at, %hi(bActorSoundTable+0x8)
/* 19375C 80264E7C 00220821 */ addu $at, $at, $v0
/* 193760 80264E80 8C221470 */ lw $v0, %lo(bActorSoundTable+0x8)($at)
/* 193764 80264E84 AE2201A4 */ sw $v0, 0x1a4($s1)
/* 193768 80264E88 000310C0 */ sll $v0, $v1, 3
/* 19376C 80264E8C 00431023 */ subu $v0, $v0, $v1
/* 193770 80264E90 00021080 */ sll $v0, $v0, 2
/* 193774 80264E94 3C018028 */ lui $at, %hi(bActorSoundTable+0xC)
/* 193778 80264E98 00220821 */ addu $at, $at, $v0
/* 19377C 80264E9C 8C221474 */ lw $v0, %lo(bActorSoundTable+0xC)($at)
/* 193780 80264EA0 AE2201A8 */ sw $v0, 0x1a8($s1)
/* 193784 80264EA4 000310C0 */ sll $v0, $v1, 3
/* 193788 80264EA8 00431023 */ subu $v0, $v0, $v1
/* 19378C 80264EAC 00021080 */ sll $v0, $v0, 2
/* 193790 80264EB0 3C018028 */ lui $at, %hi(bActorSoundTable+0x10)
/* 193794 80264EB4 00220821 */ addu $at, $at, $v0
/* 193798 80264EB8 8C221478 */ lw $v0, %lo(bActorSoundTable+0x10)($at)
/* 19379C 80264EBC AE2201AC */ sw $v0, 0x1ac($s1)
/* 1937A0 80264EC0 000310C0 */ sll $v0, $v1, 3
/* 1937A4 80264EC4 00431023 */ subu $v0, $v0, $v1
/* 1937A8 80264EC8 00021080 */ sll $v0, $v0, 2
/* 1937AC 80264ECC 3C018028 */ lui $at, %hi(bActorSoundTable+0x14)
/* 1937B0 80264ED0 00220821 */ addu $at, $at, $v0
/* 1937B4 80264ED4 8C22147C */ lw $v0, %lo(bActorSoundTable+0x14)($at)
/* 1937B8 80264ED8 AE2201B0 */ sw $v0, 0x1b0($s1)
/* 1937BC 80264EDC 000310C0 */ sll $v0, $v1, 3
/* 1937C0 80264EE0 00431023 */ subu $v0, $v0, $v1
/* 1937C4 80264EE4 00021080 */ sll $v0, $v0, 2
/* 1937C8 80264EE8 3C018028 */ lui $at, %hi(bActorSoundTable+0x18)
/* 1937CC 80264EEC 00220821 */ addu $at, $at, $v0
/* 1937D0 80264EF0 94221480 */ lhu $v0, %lo(bActorSoundTable+0x18)($at)
/* 1937D4 80264EF4 24040001 */ addiu $a0, $zero, 1
/* 1937D8 80264EF8 A62201B4 */ sh $v0, 0x1b4($s1)
/* 1937DC 80264EFC 000310C0 */ sll $v0, $v1, 3
/* 1937E0 80264F00 00431023 */ subu $v0, $v0, $v1
/* 1937E4 80264F04 00021080 */ sll $v0, $v0, 2
/* 1937E8 80264F08 3C018028 */ lui $at, %hi(bActorSoundTable+0x1A)
/* 1937EC 80264F0C 00220821 */ addu $at, $at, $v0
/* 1937F0 80264F10 94221482 */ lhu $v0, %lo(bActorSoundTable+0x1A)($at)
/* 1937F4 80264F14 26230004 */ addiu $v1, $s1, 4
/* 1937F8 80264F18 A62201B6 */ sh $v0, 0x1b6($s1)
.L80264F1C:
/* 1937FC 80264F1C AC600438 */ sw $zero, 0x438($v1)
/* 193800 80264F20 2484FFFF */ addiu $a0, $a0, -1
/* 193804 80264F24 0481FFFD */ bgez $a0, .L80264F1C
/* 193808 80264F28 2463FFFC */ addiu $v1, $v1, -4
/* 19380C 80264F2C 0C00AB39 */ jal heap_malloc
/* 193810 80264F30 240400C4 */ addiu $a0, $zero, 0xc4
/* 193814 80264F34 0040802D */ daddu $s0, $v0, $zero
/* 193818 80264F38 16000003 */ bnez $s0, .L80264F48
/* 19381C 80264F3C AE3001F4 */ sw $s0, 0x1f4($s1)
.L80264F40:
/* 193820 80264F40 080993D0 */ j .L80264F40
/* 193824 80264F44 00000000 */ nop
.L80264F48:
/* 193828 80264F48 1AC000E7 */ blez $s6, .L802652E8
/* 19382C 80264F4C 0000982D */ daddu $s3, $zero, $zero
/* 193830 80264F50 3C013F80 */ lui $at, 0x3f80
/* 193834 80264F54 4481A000 */ mtc1 $at, $f20
/* 193838 80264F58 3C128028 */ lui $s2, %hi(bActorSoundTable)
/* 19383C 80264F5C 26521468 */ addiu $s2, $s2, %lo(bActorSoundTable)
/* 193840 80264F60 0260A82D */ daddu $s5, $s3, $zero
.L80264F64:
/* 193844 80264F64 8E83000C */ lw $v1, 0xc($s4)
/* 193848 80264F68 AE0000C0 */ sw $zero, 0xc0($s0)
/* 19384C 80264F6C 00751821 */ addu $v1, $v1, $s5
/* 193850 80264F70 AE030008 */ sw $v1, 8($s0)
/* 193854 80264F74 8C620000 */ lw $v0, ($v1)
/* 193858 80264F78 AE000004 */ sw $zero, 4($s0)
/* 19385C 80264F7C 34420004 */ ori $v0, $v0, 4
/* 193860 80264F80 AE020000 */ sw $v0, ($s0)
/* 193864 80264F84 90620005 */ lbu $v0, 5($v1)
/* 193868 80264F88 00021600 */ sll $v0, $v0, 0x18
/* 19386C 80264F8C 00021603 */ sra $v0, $v0, 0x18
/* 193870 80264F90 A6020014 */ sh $v0, 0x14($s0)
/* 193874 80264F94 00021400 */ sll $v0, $v0, 0x10
/* 193878 80264F98 00021403 */ sra $v0, $v0, 0x10
/* 19387C 80264F9C 44820000 */ mtc1 $v0, $f0
/* 193880 80264FA0 00000000 */ nop
/* 193884 80264FA4 46800020 */ cvt.s.w $f0, $f0
/* 193888 80264FA8 E6000020 */ swc1 $f0, 0x20($s0)
/* 19388C 80264FAC 90620006 */ lbu $v0, 6($v1)
/* 193890 80264FB0 00021600 */ sll $v0, $v0, 0x18
/* 193894 80264FB4 00021603 */ sra $v0, $v0, 0x18
/* 193898 80264FB8 A6020016 */ sh $v0, 0x16($s0)
/* 19389C 80264FBC 00021400 */ sll $v0, $v0, 0x10
/* 1938A0 80264FC0 00021403 */ sra $v0, $v0, 0x10
/* 1938A4 80264FC4 44820000 */ mtc1 $v0, $f0
/* 1938A8 80264FC8 00000000 */ nop
/* 1938AC 80264FCC 46800020 */ cvt.s.w $f0, $f0
/* 1938B0 80264FD0 E6000024 */ swc1 $f0, 0x24($s0)
/* 1938B4 80264FD4 90620007 */ lbu $v0, 7($v1)
/* 1938B8 80264FD8 A600001A */ sh $zero, 0x1a($s0)
/* 1938BC 80264FDC A600001C */ sh $zero, 0x1c($s0)
/* 1938C0 80264FE0 A600001E */ sh $zero, 0x1e($s0)
/* 1938C4 80264FE4 AE00002C */ sw $zero, 0x2c($s0)
/* 1938C8 80264FE8 AE000030 */ sw $zero, 0x30($s0)
/* 1938CC 80264FEC AE000034 */ sw $zero, 0x34($s0)
/* 1938D0 80264FF0 00021600 */ sll $v0, $v0, 0x18
/* 1938D4 80264FF4 00021603 */ sra $v0, $v0, 0x18
/* 1938D8 80264FF8 A6020018 */ sh $v0, 0x18($s0)
/* 1938DC 80264FFC 00021400 */ sll $v0, $v0, 0x10
/* 1938E0 80265000 00021403 */ sra $v0, $v0, 0x10
/* 1938E4 80265004 44820000 */ mtc1 $v0, $f0
/* 1938E8 80265008 00000000 */ nop
/* 1938EC 8026500C 46800020 */ cvt.s.w $f0, $f0
/* 1938F0 80265010 E6000028 */ swc1 $f0, 0x28($s0)
/* 1938F4 80265014 8C620010 */ lw $v0, 0x10($v1)
/* 1938F8 80265018 AE020078 */ sw $v0, 0x78($s0)
/* 1938FC 8026501C 8C62000C */ lw $v0, 0xc($v1)
/* 193900 80265020 AE020094 */ sw $v0, 0x94($s0)
/* 193904 80265024 8C620014 */ lw $v0, 0x14($v1)
/* 193908 80265028 AE02007C */ sw $v0, 0x7c($s0)
/* 19390C 8026502C 8C620018 */ lw $v0, 0x18($v1)
/* 193910 80265030 AE020080 */ sw $v0, 0x80($s0)
/* 193914 80265034 9462000A */ lhu $v0, 0xa($v1)
/* 193918 80265038 A6020098 */ sh $v0, 0x98($s0)
/* 19391C 8026503C 92220191 */ lbu $v0, 0x191($s1)
/* 193920 80265040 A2020073 */ sb $v0, 0x73($s0)
/* 193924 80265044 92220190 */ lbu $v0, 0x190($s1)
/* 193928 80265048 A2020072 */ sb $v0, 0x72($s0)
/* 19392C 8026504C AE000064 */ sw $zero, 0x64($s0)
/* 193930 80265050 90620008 */ lbu $v0, 8($v1)
/* 193934 80265054 00021600 */ sll $v0, $v0, 0x18
/* 193938 80265058 00021603 */ sra $v0, $v0, 0x18
/* 19393C 8026505C A602006C */ sh $v0, 0x6c($s0)
/* 193940 80265060 90630009 */ lbu $v1, 9($v1)
/* 193944 80265064 24020001 */ addiu $v0, $zero, 1
/* 193948 80265068 A6000070 */ sh $zero, 0x70($s0)
/* 19394C 8026506C A6000044 */ sh $zero, 0x44($s0)
/* 193950 80265070 A6000046 */ sh $zero, 0x46($s0)
/* 193954 80265074 A6000048 */ sh $zero, 0x48($s0)
/* 193958 80265078 AE000038 */ sw $zero, 0x38($s0)
/* 19395C 8026507C AE00003C */ sw $zero, 0x3c($s0)
/* 193960 80265080 AE000040 */ sw $zero, 0x40($s0)
/* 193964 80265084 E614004C */ swc1 $f20, 0x4c($s0)
/* 193968 80265088 E6140050 */ swc1 $f20, 0x50($s0)
/* 19396C 8026508C E6140054 */ swc1 $f20, 0x54($s0)
/* 193970 80265090 A2020074 */ sb $v0, 0x74($s0)
/* 193974 80265094 A6000068 */ sh $zero, 0x68($s0)
/* 193978 80265098 A600006A */ sh $zero, 0x6a($s0)
/* 19397C 8026509C 00031E00 */ sll $v1, $v1, 0x18
/* 193980 802650A0 00031E03 */ sra $v1, $v1, 0x18
/* 193984 802650A4 A603006E */ sh $v1, 0x6e($s0)
/* 193988 802650A8 92230136 */ lbu $v1, 0x136($s1)
/* 19398C 802650AC 000310C0 */ sll $v0, $v1, 3
/* 193990 802650B0 00431023 */ subu $v0, $v0, $v1
/* 193994 802650B4 00021080 */ sll $v0, $v0, 2
/* 193998 802650B8 00521021 */ addu $v0, $v0, $s2
/* 19399C 802650BC 8C420000 */ lw $v0, ($v0)
/* 1939A0 802650C0 AE0200A4 */ sw $v0, 0xa4($s0)
/* 1939A4 802650C4 92230136 */ lbu $v1, 0x136($s1)
/* 1939A8 802650C8 000310C0 */ sll $v0, $v1, 3
/* 1939AC 802650CC 00431023 */ subu $v0, $v0, $v1
/* 1939B0 802650D0 00021080 */ sll $v0, $v0, 2
/* 1939B4 802650D4 00521021 */ addu $v0, $v0, $s2
/* 1939B8 802650D8 8C420004 */ lw $v0, 4($v0)
/* 1939BC 802650DC AE0200A8 */ sw $v0, 0xa8($s0)
/* 1939C0 802650E0 92230136 */ lbu $v1, 0x136($s1)
/* 1939C4 802650E4 000310C0 */ sll $v0, $v1, 3
/* 1939C8 802650E8 00431023 */ subu $v0, $v0, $v1
/* 1939CC 802650EC 00021080 */ sll $v0, $v0, 2
/* 1939D0 802650F0 00521021 */ addu $v0, $v0, $s2
/* 1939D4 802650F4 8C420008 */ lw $v0, 8($v0)
/* 1939D8 802650F8 AE0200AC */ sw $v0, 0xac($s0)
/* 1939DC 802650FC 92230136 */ lbu $v1, 0x136($s1)
/* 1939E0 80265100 000310C0 */ sll $v0, $v1, 3
/* 1939E4 80265104 00431023 */ subu $v0, $v0, $v1
/* 1939E8 80265108 00021080 */ sll $v0, $v0, 2
/* 1939EC 8026510C 00521021 */ addu $v0, $v0, $s2
/* 1939F0 80265110 8C42000C */ lw $v0, 0xc($v0)
/* 1939F4 80265114 AE0200B0 */ sw $v0, 0xb0($s0)
/* 1939F8 80265118 92230136 */ lbu $v1, 0x136($s1)
/* 1939FC 8026511C 000310C0 */ sll $v0, $v1, 3
/* 193A00 80265120 00431023 */ subu $v0, $v0, $v1
/* 193A04 80265124 00021080 */ sll $v0, $v0, 2
/* 193A08 80265128 00521021 */ addu $v0, $v0, $s2
/* 193A0C 8026512C 8C420010 */ lw $v0, 0x10($v0)
/* 193A10 80265130 AE0200B4 */ sw $v0, 0xb4($s0)
/* 193A14 80265134 92230136 */ lbu $v1, 0x136($s1)
/* 193A18 80265138 000310C0 */ sll $v0, $v1, 3
/* 193A1C 8026513C 00431023 */ subu $v0, $v0, $v1
/* 193A20 80265140 00021080 */ sll $v0, $v0, 2
/* 193A24 80265144 00521021 */ addu $v0, $v0, $s2
/* 193A28 80265148 8C420014 */ lw $v0, 0x14($v0)
/* 193A2C 8026514C AE0200B8 */ sw $v0, 0xb8($s0)
/* 193A30 80265150 92230136 */ lbu $v1, 0x136($s1)
/* 193A34 80265154 000310C0 */ sll $v0, $v1, 3
/* 193A38 80265158 00431023 */ subu $v0, $v0, $v1
/* 193A3C 8026515C 00021080 */ sll $v0, $v0, 2
/* 193A40 80265160 00521021 */ addu $v0, $v0, $s2
/* 193A44 80265164 94420018 */ lhu $v0, 0x18($v0)
/* 193A48 80265168 A60200BC */ sh $v0, 0xbc($s0)
/* 193A4C 8026516C 92230136 */ lbu $v1, 0x136($s1)
/* 193A50 80265170 000310C0 */ sll $v0, $v1, 3
/* 193A54 80265174 00431023 */ subu $v0, $v0, $v1
/* 193A58 80265178 00021080 */ sll $v0, $v0, 2
/* 193A5C 8026517C 00521021 */ addu $v0, $v0, $s2
/* 193A60 80265180 9442001A */ lhu $v0, 0x1a($v0)
/* 193A64 80265184 8E030094 */ lw $v1, 0x94($s0)
/* 193A68 80265188 10600030 */ beqz $v1, .L8026524C
/* 193A6C 8026518C A60200BE */ sh $v0, 0xbe($s0)
/* 193A70 80265190 0C00AB39 */ jal heap_malloc
/* 193A74 80265194 240408E8 */ addiu $a0, $zero, 0x8e8
/* 193A78 80265198 0040202D */ daddu $a0, $v0, $zero
/* 193A7C 8026519C 14800003 */ bnez $a0, .L802651AC
/* 193A80 802651A0 AE0200C0 */ sw $v0, 0xc0($s0)
.L802651A4:
/* 193A84 802651A4 08099469 */ j .L802651A4
/* 193A88 802651A8 00000000 */ nop
.L802651AC:
/* 193A8C 802651AC 0000282D */ daddu $a1, $zero, $zero
/* 193A90 802651B0 0080182D */ daddu $v1, $a0, $zero
/* 193A94 802651B4 A08006C0 */ sb $zero, 0x6c0($a0)
/* 193A98 802651B8 A0800750 */ sb $zero, 0x750($a0)
/* 193A9C 802651BC A0800764 */ sb $zero, 0x764($a0)
/* 193AA0 802651C0 A0800768 */ sb $zero, 0x768($a0)
/* 193AA4 802651C4 A08007D8 */ sb $zero, 0x7d8($a0)
/* 193AA8 802651C8 A08007D9 */ sb $zero, 0x7d9($a0)
.L802651CC:
/* 193AAC 802651CC C6200144 */ lwc1 $f0, 0x144($s1)
/* 193AB0 802651D0 4600018D */ trunc.w.s $f6, $f0
/* 193AB4 802651D4 44023000 */ mfc1 $v0, $f6
/* 193AB8 802651D8 00000000 */ nop
/* 193ABC 802651DC A46207FC */ sh $v0, 0x7fc($v1)
/* 193AC0 802651E0 C6200148 */ lwc1 $f0, 0x148($s1)
/* 193AC4 802651E4 4600018D */ trunc.w.s $f6, $f0
/* 193AC8 802651E8 44023000 */ mfc1 $v0, $f6
/* 193ACC 802651EC 00000000 */ nop
/* 193AD0 802651F0 A462081C */ sh $v0, 0x81c($v1)
/* 193AD4 802651F4 C620014C */ lwc1 $f0, 0x14c($s1)
/* 193AD8 802651F8 24A50001 */ addiu $a1, $a1, 1
/* 193ADC 802651FC 4600018D */ trunc.w.s $f6, $f0
/* 193AE0 80265200 44023000 */ mfc1 $v0, $f6
/* 193AE4 80265204 00000000 */ nop
/* 193AE8 80265208 A462083C */ sh $v0, 0x83c($v1)
/* 193AEC 8026520C 28A20010 */ slti $v0, $a1, 0x10
/* 193AF0 80265210 1440FFEE */ bnez $v0, .L802651CC
/* 193AF4 80265214 24630002 */ addiu $v1, $v1, 2
/* 193AF8 80265218 0000282D */ daddu $a1, $zero, $zero
/* 193AFC 8026521C 0080182D */ daddu $v1, $a0, $zero
/* 193B00 80265220 24020003 */ addiu $v0, $zero, 3
/* 193B04 80265224 A08207DA */ sb $v0, 0x7da($a0)
/* 193B08 80265228 A08007DB */ sb $zero, 0x7db($a0)
/* 193B0C 8026522C A08008AC */ sb $zero, 0x8ac($a0)
.L80265230:
/* 193B10 80265230 AC6008B0 */ sw $zero, 0x8b0($v1)
/* 193B14 80265234 00851021 */ addu $v0, $a0, $a1
/* 193B18 80265238 24A50001 */ addiu $a1, $a1, 1
/* 193B1C 8026523C A04008B8 */ sb $zero, 0x8b8($v0)
/* 193B20 80265240 28A20002 */ slti $v0, $a1, 2
/* 193B24 80265244 1440FFFA */ bnez $v0, .L80265230
/* 193B28 80265248 24630004 */ addiu $v1, $v1, 4
.L8026524C:
/* 193B2C 8026524C 8E020000 */ lw $v0, ($s0)
/* 193B30 80265250 04400007 */ bltz $v0, .L80265270
/* 193B34 80265254 00000000 */ nop
/* 193B38 80265258 0C00AB39 */ jal heap_malloc
/* 193B3C 8026525C 2404008C */ addiu $a0, $zero, 0x8c
/* 193B40 80265260 14400003 */ bnez $v0, .L80265270
/* 193B44 80265264 AE020010 */ sw $v0, 0x10($s0)
.L80265268:
/* 193B48 80265268 0809949A */ j .L80265268
/* 193B4C 8026526C 00000000 */ nop
.L80265270:
/* 193B50 80265270 8E040094 */ lw $a0, 0x94($s0)
/* 193B54 80265274 2402FFFF */ addiu $v0, $zero, -1
/* 193B58 80265278 E6140090 */ swc1 $f20, 0x90($s0)
/* 193B5C 8026527C AE000088 */ sw $zero, 0x88($s0)
/* 193B60 80265280 10800009 */ beqz $a0, .L802652A8
/* 193B64 80265284 AE020084 */ sw $v0, 0x84($s0)
/* 193B68 80265288 0C09973A */ jal func_80265CE8
/* 193B6C 8026528C 24050001 */ addiu $a1, $zero, 1
/* 193B70 80265290 3C048000 */ lui $a0, 0x8000
/* 193B74 80265294 00442025 */ or $a0, $v0, $a0
/* 193B78 80265298 0000282D */ daddu $a1, $zero, $zero
/* 193B7C 8026529C 0C0B783B */ jal spr_load_npc_sprite
/* 193B80 802652A0 AE020088 */ sw $v0, 0x88($s0)
/* 193B84 802652A4 AE020084 */ sw $v0, 0x84($s0)
.L802652A8:
/* 193B88 802652A8 26620001 */ addiu $v0, $s3, 1
/* 193B8C 802652AC 0056102A */ slt $v0, $v0, $s6
/* 193B90 802652B0 50400009 */ beql $v0, $zero, .L802652D8
/* 193B94 802652B4 AE00000C */ sw $zero, 0xc($s0)
/* 193B98 802652B8 0C00AB39 */ jal heap_malloc
/* 193B9C 802652BC 240400C4 */ addiu $a0, $zero, 0xc4
/* 193BA0 802652C0 AE02000C */ sw $v0, 0xc($s0)
/* 193BA4 802652C4 0040802D */ daddu $s0, $v0, $zero
/* 193BA8 802652C8 56000003 */ bnel $s0, $zero, .L802652D8
/* 193BAC 802652CC AE00000C */ sw $zero, 0xc($s0)
.L802652D0:
/* 193BB0 802652D0 080994B4 */ j .L802652D0
/* 193BB4 802652D4 00000000 */ nop
.L802652D8:
/* 193BB8 802652D8 26730001 */ addiu $s3, $s3, 1
/* 193BBC 802652DC 0276102A */ slt $v0, $s3, $s6
/* 193BC0 802652E0 1440FF20 */ bnez $v0, .L80264F64
/* 193BC4 802652E4 26B50024 */ addiu $s5, $s5, 0x24
.L802652E8:
/* 193BC8 802652E8 8E250144 */ lw $a1, 0x144($s1)
/* 193BCC 802652EC 8E260148 */ lw $a2, 0x148($s1)
/* 193BD0 802652F0 8E27014C */ lw $a3, 0x14c($s1)
/* 193BD4 802652F4 0C044898 */ jal create_shadow_type
/* 193BD8 802652F8 0000202D */ daddu $a0, $zero, $zero
/* 193BDC 802652FC AE22042C */ sw $v0, 0x42c($s1)
/* 193BE0 80265300 92220190 */ lbu $v0, 0x190($s1)
/* 193BE4 80265304 3C014038 */ lui $at, 0x4038
/* 193BE8 80265308 44811800 */ mtc1 $at, $f3
/* 193BEC 8026530C 44801000 */ mtc1 $zero, $f2
/* 193BF0 80265310 44820000 */ mtc1 $v0, $f0
/* 193BF4 80265314 00000000 */ nop
/* 193BF8 80265318 46800021 */ cvt.d.w $f0, $f0
/* 193BFC 8026531C 46220003 */ div.d $f0, $f0, $f2
/* 193C00 80265320 46200020 */ cvt.s.d $f0, $f0
/* 193C04 80265324 0C011D82 */ jal create_status_icon_set
/* 193C08 80265328 E6200430 */ swc1 $f0, 0x430($s1)
/* 193C0C 8026532C 3C05C30E */ lui $a1, 0xc30e
/* 193C10 80265330 3C064208 */ lui $a2, 0x4208
/* 193C14 80265334 3C073F80 */ lui $a3, 0x3f80
/* 193C18 80265338 0000202D */ daddu $a0, $zero, $zero
/* 193C1C 8026533C A6220436 */ sh $v0, 0x436($s1)
/* 193C20 80265340 0C01C43C */ jal playFX_41
/* 193C24 80265344 AFA00010 */ sw $zero, 0x10($sp)
/* 193C28 80265348 2405000A */ addiu $a1, $zero, 0xa
/* 193C2C 8026534C 8E2401C4 */ lw $a0, 0x1c4($s1)
/* 193C30 80265350 0000302D */ daddu $a2, $zero, $zero
/* 193C34 80265354 AE220440 */ sw $v0, 0x440($s1)
/* 193C38 80265358 0C0B0CF8 */ jal start_script
/* 193C3C 8026535C AE200228 */ sw $zero, 0x228($s1)
/* 193C40 80265360 8C430144 */ lw $v1, 0x144($v0)
/* 193C44 80265364 AE2301E4 */ sw $v1, 0x1e4($s1)
/* 193C48 80265368 24030100 */ addiu $v1, $zero, 0x100
/* 193C4C 8026536C AC430148 */ sw $v1, 0x148($v0)
.L80265370:
/* 193C50 80265370 8FBF0034 */ lw $ra, 0x34($sp)
/* 193C54 80265374 8FB60030 */ lw $s6, 0x30($sp)
/* 193C58 80265378 8FB5002C */ lw $s5, 0x2c($sp)
/* 193C5C 8026537C 8FB40028 */ lw $s4, 0x28($sp)
/* 193C60 80265380 8FB30024 */ lw $s3, 0x24($sp)
/* 193C64 80265384 8FB20020 */ lw $s2, 0x20($sp)
/* 193C68 80265388 8FB1001C */ lw $s1, 0x1c($sp)
/* 193C6C 8026538C 8FB00018 */ lw $s0, 0x18($sp)
/* 193C70 80265390 D7B80048 */ ldc1 $f24, 0x48($sp)
/* 193C74 80265394 D7B60040 */ ldc1 $f22, 0x40($sp)
/* 193C78 80265398 D7B40038 */ ldc1 $f20, 0x38($sp)
/* 193C7C 8026539C 03E00008 */ jr $ra
/* 193C80 802653A0 27BD0050 */ addiu $sp, $sp, 0x50

View File

@ -1,458 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel load_player_actor
/* 192D84 802644A4 27BDFFD8 */ addiu $sp, $sp, -0x28
/* 192D88 802644A8 24040444 */ addiu $a0, $zero, 0x444
/* 192D8C 802644AC AFBF0020 */ sw $ra, 0x20($sp)
/* 192D90 802644B0 AFB1001C */ sw $s1, 0x1c($sp)
/* 192D94 802644B4 0C00AB39 */ jal heap_malloc
/* 192D98 802644B8 AFB00018 */ sw $s0, 0x18($sp)
/* 192D9C 802644BC 3C11800E */ lui $s1, %hi(gBattleStatus)
/* 192DA0 802644C0 2631C070 */ addiu $s1, $s1, %lo(gBattleStatus)
/* 192DA4 802644C4 0040802D */ daddu $s0, $v0, $zero
/* 192DA8 802644C8 16000003 */ bnez $s0, .L802644D8
/* 192DAC 802644CC AE2200D8 */ sw $v0, 0xd8($s1)
.L802644D0:
/* 192DB0 802644D0 08099134 */ j .L802644D0
/* 192DB4 802644D4 00000000 */ nop
.L802644D8:
/* 192DB8 802644D8 92230093 */ lbu $v1, 0x93($s1)
/* 192DBC 802644DC 24620001 */ addiu $v0, $v1, 1
/* 192DC0 802644E0 A2220093 */ sb $v0, 0x93($s1)
/* 192DC4 802644E4 3C028028 */ lui $v0, %hi(bPlayerActorDesc)
/* 192DC8 802644E8 244234D8 */ addiu $v0, $v0, %lo(bPlayerActorDesc)
/* 192DCC 802644EC A2030134 */ sb $v1, 0x134($s0)
/* 192DD0 802644F0 A2000135 */ sb $zero, 0x135($s0)
/* 192DD4 802644F4 AE000000 */ sw $zero, ($s0)
/* 192DD8 802644F8 AE020008 */ sw $v0, 8($s0)
/* 192DDC 802644FC 90420005 */ lbu $v0, 5($v0)
/* 192DE0 80264500 A2020136 */ sb $v0, 0x136($s0)
/* 192DE4 80264504 3C02800E */ lui $v0, %hi(gBattleStatus+0x4)
/* 192DE8 80264508 8C42C074 */ lw $v0, %lo(gBattleStatus+0x4)($v0)
/* 192DEC 8026450C 30420040 */ andi $v0, $v0, 0x40
/* 192DF0 80264510 14400007 */ bnez $v0, .L80264530
/* 192DF4 80264514 00000000 */ nop
/* 192DF8 80264518 3C028007 */ lui $v0, %hi(gGameStatusPtr)
/* 192DFC 8026451C 8C42419C */ lw $v0, %lo(gGameStatusPtr)($v0)
/* 192E00 80264520 904200AA */ lbu $v0, 0xaa($v0)
/* 192E04 80264524 30420002 */ andi $v0, $v0, 2
/* 192E08 80264528 1040000D */ beqz $v0, .L80264560
/* 192E0C 8026452C 00000000 */ nop
.L80264530:
/* 192E10 80264530 3C01C302 */ lui $at, 0xc302
/* 192E14 80264534 44810000 */ mtc1 $at, $f0
/* 192E18 80264538 44801000 */ mtc1 $zero, $f2
/* 192E1C 8026453C 3C01C120 */ lui $at, 0xc120
/* 192E20 80264540 44812000 */ mtc1 $at, $f4
/* 192E24 80264544 E6000144 */ swc1 $f0, 0x144($s0)
/* 192E28 80264548 E6000138 */ swc1 $f0, 0x138($s0)
/* 192E2C 8026454C E6020148 */ swc1 $f2, 0x148($s0)
/* 192E30 80264550 E602013C */ swc1 $f2, 0x13c($s0)
/* 192E34 80264554 E604014C */ swc1 $f4, 0x14c($s0)
/* 192E38 80264558 08099161 */ j .L80264584
/* 192E3C 8026455C E6040140 */ swc1 $f4, 0x140($s0)
.L80264560:
/* 192E40 80264560 3C01C2BE */ lui $at, 0xc2be
/* 192E44 80264564 44811000 */ mtc1 $at, $f2
/* 192E48 80264568 44800000 */ mtc1 $zero, $f0
/* 192E4C 8026456C E6020144 */ swc1 $f2, 0x144($s0)
/* 192E50 80264570 E6020138 */ swc1 $f2, 0x138($s0)
/* 192E54 80264574 E6000148 */ swc1 $f0, 0x148($s0)
/* 192E58 80264578 E600013C */ swc1 $f0, 0x13c($s0)
/* 192E5C 8026457C E600014C */ swc1 $f0, 0x14c($s0)
/* 192E60 80264580 E6000140 */ swc1 $f0, 0x140($s0)
.L80264584:
/* 192E64 80264584 3C013F80 */ lui $at, 0x3f80
/* 192E68 80264588 44810000 */ mtc1 $at, $f0
/* 192E6C 8026458C 8E030008 */ lw $v1, 8($s0)
/* 192E70 80264590 C6020144 */ lwc1 $f2, 0x144($s0)
/* 192E74 80264594 C604014C */ lwc1 $f4, 0x14c($s0)
/* 192E78 80264598 2402000D */ addiu $v0, $zero, 0xd
/* 192E7C 8026459C A6000150 */ sh $zero, 0x150($s0)
/* 192E80 802645A0 A6000152 */ sh $zero, 0x152($s0)
/* 192E84 802645A4 A6000154 */ sh $zero, 0x154($s0)
/* 192E88 802645A8 AE00015C */ sw $zero, 0x15c($s0)
/* 192E8C 802645AC AE000160 */ sw $zero, 0x160($s0)
/* 192E90 802645B0 AE000164 */ sw $zero, 0x164($s0)
/* 192E94 802645B4 A6000168 */ sh $zero, 0x168($s0)
/* 192E98 802645B8 A600016A */ sh $zero, 0x16a($s0)
/* 192E9C 802645BC A600016C */ sh $zero, 0x16c($s0)
/* 192EA0 802645C0 A200019A */ sb $zero, 0x19a($s0)
/* 192EA4 802645C4 AE00018C */ sw $zero, 0x18c($s0)
/* 192EA8 802645C8 A6020434 */ sh $v0, 0x434($s0)
/* 192EAC 802645CC E6000170 */ swc1 $f0, 0x170($s0)
/* 192EB0 802645D0 E6000174 */ swc1 $f0, 0x174($s0)
/* 192EB4 802645D4 E6000178 */ swc1 $f0, 0x178($s0)
/* 192EB8 802645D8 E600017C */ swc1 $f0, 0x17c($s0)
/* 192EBC 802645DC E6000180 */ swc1 $f0, 0x180($s0)
/* 192EC0 802645E0 E6000184 */ swc1 $f0, 0x184($s0)
/* 192EC4 802645E4 90620020 */ lbu $v0, 0x20($v1)
/* 192EC8 802645E8 A2020190 */ sb $v0, 0x190($s0)
/* 192ECC 802645EC 4600118D */ trunc.w.s $f6, $f2
/* 192ED0 802645F0 44023000 */ mfc1 $v0, $f6
/* 192ED4 802645F4 90630021 */ lbu $v1, 0x21($v1)
/* 192ED8 802645F8 C6020148 */ lwc1 $f2, 0x148($s0)
/* 192EDC 802645FC A6000192 */ sh $zero, 0x192($s0)
/* 192EE0 80264600 A6020156 */ sh $v0, 0x156($s0)
/* 192EE4 80264604 E6000188 */ swc1 $f0, 0x188($s0)
/* 192EE8 80264608 AE000200 */ sw $zero, 0x200($s0)
/* 192EEC 8026460C 4600118D */ trunc.w.s $f6, $f2
/* 192EF0 80264610 44023000 */ mfc1 $v0, $f6
/* 192EF4 80264614 00000000 */ nop
/* 192EF8 80264618 A6020158 */ sh $v0, 0x158($s0)
/* 192EFC 8026461C 4600218D */ trunc.w.s $f6, $f4
/* 192F00 80264620 44023000 */ mfc1 $v0, $f6
/* 192F04 80264624 00000000 */ nop
/* 192F08 80264628 A602015A */ sh $v0, 0x15a($s0)
/* 192F0C 8026462C A2030191 */ sb $v1, 0x191($s0)
/* 192F10 80264630 A2000204 */ sb $zero, 0x204($s0)
/* 192F14 80264634 A2000205 */ sb $zero, 0x205($s0)
/* 192F18 80264638 92030136 */ lbu $v1, 0x136($s0)
/* 192F1C 8026463C 3C028028 */ lui $v0, %hi(bPlayerStatusTable)
/* 192F20 80264640 2442342C */ addiu $v0, $v0, %lo(bPlayerStatusTable)
/* 192F24 80264644 A2000194 */ sb $zero, 0x194($s0)
/* 192F28 80264648 A2000195 */ sb $zero, 0x195($s0)
/* 192F2C 8026464C A2000196 */ sb $zero, 0x196($s0)
/* 192F30 80264650 A2000197 */ sb $zero, 0x197($s0)
/* 192F34 80264654 AE0001C0 */ sw $zero, 0x1c0($s0)
/* 192F38 80264658 AE0001C4 */ sw $zero, 0x1c4($s0)
/* 192F3C 8026465C AE0001C8 */ sw $zero, 0x1c8($s0)
/* 192F40 80264660 AE0001CC */ sw $zero, 0x1cc($s0)
/* 192F44 80264664 AE0001D0 */ sw $zero, 0x1d0($s0)
/* 192F48 80264668 AE0001D4 */ sw $zero, 0x1d4($s0)
/* 192F4C 8026466C AE0001D8 */ sw $zero, 0x1d8($s0)
/* 192F50 80264670 AE0001DC */ sw $zero, 0x1dc($s0)
/* 192F54 80264674 A20001F1 */ sb $zero, 0x1f1($s0)
/* 192F58 80264678 AE02020C */ sw $v0, 0x20c($s0)
/* 192F5C 8026467C A2000210 */ sb $zero, 0x210($s0)
/* 192F60 80264680 A2000211 */ sb $zero, 0x211($s0)
/* 192F64 80264684 A2000212 */ sb $zero, 0x212($s0)
/* 192F68 80264688 A2000213 */ sb $zero, 0x213($s0)
/* 192F6C 8026468C A2000214 */ sb $zero, 0x214($s0)
/* 192F70 80264690 A2000215 */ sb $zero, 0x215($s0)
/* 192F74 80264694 A2000216 */ sb $zero, 0x216($s0)
/* 192F78 80264698 A2000217 */ sb $zero, 0x217($s0)
/* 192F7C 8026469C A2000218 */ sb $zero, 0x218($s0)
/* 192F80 802646A0 A2000219 */ sb $zero, 0x219($s0)
/* 192F84 802646A4 A2000220 */ sb $zero, 0x220($s0)
/* 192F88 802646A8 A600021E */ sh $zero, 0x21e($s0)
/* 192F8C 802646AC A200021D */ sb $zero, 0x21d($s0)
/* 192F90 802646B0 A2000221 */ sb $zero, 0x221($s0)
/* 192F94 802646B4 A2000222 */ sb $zero, 0x222($s0)
/* 192F98 802646B8 A2000223 */ sb $zero, 0x223($s0)
/* 192F9C 802646BC A2000224 */ sb $zero, 0x224($s0)
/* 192FA0 802646C0 A200021C */ sb $zero, 0x21c($s0)
/* 192FA4 802646C4 000310C0 */ sll $v0, $v1, 3
/* 192FA8 802646C8 00431023 */ subu $v0, $v0, $v1
/* 192FAC 802646CC 00021080 */ sll $v0, $v0, 2
/* 192FB0 802646D0 3C018028 */ lui $at, %hi(bActorSoundTable)
/* 192FB4 802646D4 00220821 */ addu $at, $at, $v0
/* 192FB8 802646D8 8C221468 */ lw $v0, %lo(bActorSoundTable)($at)
/* 192FBC 802646DC AE02019C */ sw $v0, 0x19c($s0)
/* 192FC0 802646E0 000310C0 */ sll $v0, $v1, 3
/* 192FC4 802646E4 00431023 */ subu $v0, $v0, $v1
/* 192FC8 802646E8 00021080 */ sll $v0, $v0, 2
/* 192FCC 802646EC 3C018028 */ lui $at, %hi(bActorSoundTable+0x4)
/* 192FD0 802646F0 00220821 */ addu $at, $at, $v0
/* 192FD4 802646F4 8C22146C */ lw $v0, %lo(bActorSoundTable+0x4)($at)
/* 192FD8 802646F8 AE0201A0 */ sw $v0, 0x1a0($s0)
/* 192FDC 802646FC 000310C0 */ sll $v0, $v1, 3
/* 192FE0 80264700 00431023 */ subu $v0, $v0, $v1
/* 192FE4 80264704 00021080 */ sll $v0, $v0, 2
/* 192FE8 80264708 3C018028 */ lui $at, %hi(bActorSoundTable+0x8)
/* 192FEC 8026470C 00220821 */ addu $at, $at, $v0
/* 192FF0 80264710 8C221470 */ lw $v0, %lo(bActorSoundTable+0x8)($at)
/* 192FF4 80264714 AE0201A4 */ sw $v0, 0x1a4($s0)
/* 192FF8 80264718 000310C0 */ sll $v0, $v1, 3
/* 192FFC 8026471C 00431023 */ subu $v0, $v0, $v1
/* 193000 80264720 00021080 */ sll $v0, $v0, 2
/* 193004 80264724 3C018028 */ lui $at, %hi(bActorSoundTable+0xC)
/* 193008 80264728 00220821 */ addu $at, $at, $v0
/* 19300C 8026472C 8C221474 */ lw $v0, %lo(bActorSoundTable+0xC)($at)
/* 193010 80264730 AE0201A8 */ sw $v0, 0x1a8($s0)
/* 193014 80264734 000310C0 */ sll $v0, $v1, 3
/* 193018 80264738 00431023 */ subu $v0, $v0, $v1
/* 19301C 8026473C 00021080 */ sll $v0, $v0, 2
/* 193020 80264740 3C018028 */ lui $at, %hi(bActorSoundTable+0x10)
/* 193024 80264744 00220821 */ addu $at, $at, $v0
/* 193028 80264748 8C221478 */ lw $v0, %lo(bActorSoundTable+0x10)($at)
/* 19302C 8026474C AE0201AC */ sw $v0, 0x1ac($s0)
/* 193030 80264750 000310C0 */ sll $v0, $v1, 3
/* 193034 80264754 00431023 */ subu $v0, $v0, $v1
/* 193038 80264758 00021080 */ sll $v0, $v0, 2
/* 19303C 8026475C 3C018028 */ lui $at, %hi(bActorSoundTable+0x14)
/* 193040 80264760 00220821 */ addu $at, $at, $v0
/* 193044 80264764 8C22147C */ lw $v0, %lo(bActorSoundTable+0x14)($at)
/* 193048 80264768 AE0201B0 */ sw $v0, 0x1b0($s0)
/* 19304C 8026476C 000310C0 */ sll $v0, $v1, 3
/* 193050 80264770 00431023 */ subu $v0, $v0, $v1
/* 193054 80264774 00021080 */ sll $v0, $v0, 2
/* 193058 80264778 3C018028 */ lui $at, %hi(bActorSoundTable+0x18)
/* 19305C 8026477C 00220821 */ addu $at, $at, $v0
/* 193060 80264780 94221480 */ lhu $v0, %lo(bActorSoundTable+0x18)($at)
/* 193064 80264784 24040001 */ addiu $a0, $zero, 1
/* 193068 80264788 A60201B4 */ sh $v0, 0x1b4($s0)
/* 19306C 8026478C 000310C0 */ sll $v0, $v1, 3
/* 193070 80264790 00431023 */ subu $v0, $v0, $v1
/* 193074 80264794 00021080 */ sll $v0, $v0, 2
/* 193078 80264798 3C018028 */ lui $at, %hi(bActorSoundTable+0x1A)
/* 19307C 8026479C 00220821 */ addu $at, $at, $v0
/* 193080 802647A0 94221482 */ lhu $v0, %lo(bActorSoundTable+0x1A)($at)
/* 193084 802647A4 26030004 */ addiu $v1, $s0, 4
/* 193088 802647A8 A60201B6 */ sh $v0, 0x1b6($s0)
.L802647AC:
/* 19308C 802647AC AC600438 */ sw $zero, 0x438($v1)
/* 193090 802647B0 2484FFFF */ addiu $a0, $a0, -1
/* 193094 802647B4 0481FFFD */ bgez $a0, .L802647AC
/* 193098 802647B8 2463FFFC */ addiu $v1, $v1, -4
/* 19309C 802647BC 0C00AB39 */ jal heap_malloc
/* 1930A0 802647C0 240400C4 */ addiu $a0, $zero, 0xc4
/* 1930A4 802647C4 0040882D */ daddu $s1, $v0, $zero
/* 1930A8 802647C8 16200003 */ bnez $s1, .L802647D8
/* 1930AC 802647CC AE1101F4 */ sw $s1, 0x1f4($s0)
.L802647D0:
/* 1930B0 802647D0 080991F4 */ j .L802647D0
/* 1930B4 802647D4 00000000 */ nop
.L802647D8:
/* 1930B8 802647D8 24020001 */ addiu $v0, $zero, 1
/* 1930BC 802647DC A20201F3 */ sb $v0, 0x1f3($s0)
/* 1930C0 802647E0 3C028028 */ lui $v0, %hi(bMarioParts)
/* 1930C4 802647E4 24423500 */ addiu $v0, $v0, %lo(bMarioParts)
/* 1930C8 802647E8 AE220008 */ sw $v0, 8($s1)
/* 1930CC 802647EC 2402000C */ addiu $v0, $zero, 0xc
/* 1930D0 802647F0 A6200014 */ sh $zero, 0x14($s1)
/* 1930D4 802647F4 A6220014 */ sh $v0, 0x14($s1)
/* 1930D8 802647F8 24020020 */ addiu $v0, $zero, 0x20
/* 1930DC 802647FC A6200016 */ sh $zero, 0x16($s1)
/* 1930E0 80264800 A6220016 */ sh $v0, 0x16($s1)
/* 1930E4 80264804 24020005 */ addiu $v0, $zero, 5
/* 1930E8 80264808 A6200018 */ sh $zero, 0x18($s1)
/* 1930EC 8026480C A6220018 */ sh $v0, 0x18($s1)
/* 1930F0 80264810 3C028028 */ lui $v0, %hi(bMarioDefenseTable)
/* 1930F4 80264814 24423420 */ addiu $v0, $v0, %lo(bMarioDefenseTable)
/* 1930F8 80264818 AE2000C0 */ sw $zero, 0xc0($s1)
/* 1930FC 8026481C AE200000 */ sw $zero, ($s1)
/* 193100 80264820 AE200004 */ sw $zero, 4($s1)
/* 193104 80264824 AE200020 */ sw $zero, 0x20($s1)
/* 193108 80264828 AE200024 */ sw $zero, 0x24($s1)
/* 19310C 8026482C AE200028 */ sw $zero, 0x28($s1)
/* 193110 80264830 A6200044 */ sh $zero, 0x44($s1)
/* 193114 80264834 A6200046 */ sh $zero, 0x46($s1)
/* 193118 80264838 A6200048 */ sh $zero, 0x48($s1)
/* 19311C 8026483C A620001A */ sh $zero, 0x1a($s1)
/* 193120 80264840 A620001C */ sh $zero, 0x1c($s1)
/* 193124 80264844 A620001E */ sh $zero, 0x1e($s1)
/* 193128 80264848 AE20002C */ sw $zero, 0x2c($s1)
/* 19312C 8026484C AE200030 */ sw $zero, 0x30($s1)
/* 193130 80264850 AE200034 */ sw $zero, 0x34($s1)
/* 193134 80264854 AE220078 */ sw $v0, 0x78($s1)
/* 193138 80264858 3C02800E */ lui $v0, %hi(gBattleStatus+0x4)
/* 19313C 8026485C 8C42C074 */ lw $v0, %lo(gBattleStatus+0x4)($v0)
/* 193140 80264860 30420040 */ andi $v0, $v0, 0x40
/* 193144 80264864 10400005 */ beqz $v0, .L8026487C
/* 193148 80264868 00000000 */ nop
/* 19314C 8026486C 3C028028 */ lui $v0, %hi(bPeachIdleAnims)
/* 193150 80264870 2442340C */ addiu $v0, $v0, %lo(bPeachIdleAnims)
/* 193154 80264874 08099222 */ j .L80264888
/* 193158 80264878 AE220094 */ sw $v0, 0x94($s1)
.L8026487C:
/* 19315C 8026487C 3C028028 */ lui $v0, %hi(bMarioIdleAnims)
/* 193160 80264880 24423238 */ addiu $v0, $v0, %lo(bMarioIdleAnims)
/* 193164 80264884 AE220094 */ sw $v0, 0x94($s1)
.L80264888:
/* 193168 80264888 240200FF */ addiu $v0, $zero, 0xff
/* 19316C 8026488C 8E240094 */ lw $a0, 0x94($s1)
/* 193170 80264890 AE20007C */ sw $zero, 0x7c($s1)
/* 193174 80264894 AE200080 */ sw $zero, 0x80($s1)
/* 193178 80264898 A6220098 */ sh $v0, 0x98($s1)
/* 19317C 8026489C 92020191 */ lbu $v0, 0x191($s0)
/* 193180 802648A0 3C013F80 */ lui $at, 0x3f80
/* 193184 802648A4 44810000 */ mtc1 $at, $f0
/* 193188 802648A8 24050001 */ addiu $a1, $zero, 1
/* 19318C 802648AC A2220073 */ sb $v0, 0x73($s1)
/* 193190 802648B0 92030190 */ lbu $v1, 0x190($s0)
/* 193194 802648B4 00A0102D */ daddu $v0, $a1, $zero
/* 193198 802648B8 AE200064 */ sw $zero, 0x64($s1)
/* 19319C 802648BC A620006C */ sh $zero, 0x6c($s1)
/* 1931A0 802648C0 A620006E */ sh $zero, 0x6e($s1)
/* 1931A4 802648C4 A6200070 */ sh $zero, 0x70($s1)
/* 1931A8 802648C8 AE200038 */ sw $zero, 0x38($s1)
/* 1931AC 802648CC AE20003C */ sw $zero, 0x3c($s1)
/* 1931B0 802648D0 AE200040 */ sw $zero, 0x40($s1)
/* 1931B4 802648D4 E620004C */ swc1 $f0, 0x4c($s1)
/* 1931B8 802648D8 E6200050 */ swc1 $f0, 0x50($s1)
/* 1931BC 802648DC E6200054 */ swc1 $f0, 0x54($s1)
/* 1931C0 802648E0 A2220074 */ sb $v0, 0x74($s1)
/* 1931C4 802648E4 A6200068 */ sh $zero, 0x68($s1)
/* 1931C8 802648E8 A620006A */ sh $zero, 0x6a($s1)
/* 1931CC 802648EC E6200090 */ swc1 $f0, 0x90($s1)
/* 1931D0 802648F0 0C09973A */ jal func_80265CE8
/* 1931D4 802648F4 A2230072 */ sb $v1, 0x72($s1)
/* 1931D8 802648F8 AE220088 */ sw $v0, 0x88($s1)
/* 1931DC 802648FC AE20000C */ sw $zero, 0xc($s1)
/* 1931E0 80264900 92030136 */ lbu $v1, 0x136($s0)
/* 1931E4 80264904 000310C0 */ sll $v0, $v1, 3
/* 1931E8 80264908 00431023 */ subu $v0, $v0, $v1
/* 1931EC 8026490C 00021080 */ sll $v0, $v0, 2
/* 1931F0 80264910 3C018028 */ lui $at, %hi(bActorSoundTable)
/* 1931F4 80264914 00220821 */ addu $at, $at, $v0
/* 1931F8 80264918 8C221468 */ lw $v0, %lo(bActorSoundTable)($at)
/* 1931FC 8026491C AE2200A4 */ sw $v0, 0xa4($s1)
/* 193200 80264920 92030136 */ lbu $v1, 0x136($s0)
/* 193204 80264924 000310C0 */ sll $v0, $v1, 3
/* 193208 80264928 00431023 */ subu $v0, $v0, $v1
/* 19320C 8026492C 00021080 */ sll $v0, $v0, 2
/* 193210 80264930 3C018028 */ lui $at, %hi(bActorSoundTable+0x4)
/* 193214 80264934 00220821 */ addu $at, $at, $v0
/* 193218 80264938 8C22146C */ lw $v0, %lo(bActorSoundTable+0x4)($at)
/* 19321C 8026493C AE2200A8 */ sw $v0, 0xa8($s1)
/* 193220 80264940 92030136 */ lbu $v1, 0x136($s0)
/* 193224 80264944 000310C0 */ sll $v0, $v1, 3
/* 193228 80264948 00431023 */ subu $v0, $v0, $v1
/* 19322C 8026494C 00021080 */ sll $v0, $v0, 2
/* 193230 80264950 3C018028 */ lui $at, %hi(bActorSoundTable+0x8)
/* 193234 80264954 00220821 */ addu $at, $at, $v0
/* 193238 80264958 8C221470 */ lw $v0, %lo(bActorSoundTable+0x8)($at)
/* 19323C 8026495C AE2200AC */ sw $v0, 0xac($s1)
/* 193240 80264960 92030136 */ lbu $v1, 0x136($s0)
/* 193244 80264964 000310C0 */ sll $v0, $v1, 3
/* 193248 80264968 00431023 */ subu $v0, $v0, $v1
/* 19324C 8026496C 00021080 */ sll $v0, $v0, 2
/* 193250 80264970 3C018028 */ lui $at, %hi(bActorSoundTable+0xC)
/* 193254 80264974 00220821 */ addu $at, $at, $v0
/* 193258 80264978 8C221474 */ lw $v0, %lo(bActorSoundTable+0xC)($at)
/* 19325C 8026497C AE2200B0 */ sw $v0, 0xb0($s1)
/* 193260 80264980 92030136 */ lbu $v1, 0x136($s0)
/* 193264 80264984 000310C0 */ sll $v0, $v1, 3
/* 193268 80264988 00431023 */ subu $v0, $v0, $v1
/* 19326C 8026498C 00021080 */ sll $v0, $v0, 2
/* 193270 80264990 3C018028 */ lui $at, %hi(bActorSoundTable+0x10)
/* 193274 80264994 00220821 */ addu $at, $at, $v0
/* 193278 80264998 8C221478 */ lw $v0, %lo(bActorSoundTable+0x10)($at)
/* 19327C 8026499C AE2200B4 */ sw $v0, 0xb4($s1)
/* 193280 802649A0 92030136 */ lbu $v1, 0x136($s0)
/* 193284 802649A4 000310C0 */ sll $v0, $v1, 3
/* 193288 802649A8 00431023 */ subu $v0, $v0, $v1
/* 19328C 802649AC 00021080 */ sll $v0, $v0, 2
/* 193290 802649B0 3C018028 */ lui $at, %hi(bActorSoundTable+0x14)
/* 193294 802649B4 00220821 */ addu $at, $at, $v0
/* 193298 802649B8 8C22147C */ lw $v0, %lo(bActorSoundTable+0x14)($at)
/* 19329C 802649BC AE2200B8 */ sw $v0, 0xb8($s1)
/* 1932A0 802649C0 92030136 */ lbu $v1, 0x136($s0)
/* 1932A4 802649C4 000310C0 */ sll $v0, $v1, 3
/* 1932A8 802649C8 00431023 */ subu $v0, $v0, $v1
/* 1932AC 802649CC 00021080 */ sll $v0, $v0, 2
/* 1932B0 802649D0 3C018028 */ lui $at, %hi(bActorSoundTable+0x18)
/* 1932B4 802649D4 00220821 */ addu $at, $at, $v0
/* 1932B8 802649D8 94221480 */ lhu $v0, %lo(bActorSoundTable+0x18)($at)
/* 1932BC 802649DC A62200BC */ sh $v0, 0xbc($s1)
/* 1932C0 802649E0 92030136 */ lbu $v1, 0x136($s0)
/* 1932C4 802649E4 000310C0 */ sll $v0, $v1, 3
/* 1932C8 802649E8 00431023 */ subu $v0, $v0, $v1
/* 1932CC 802649EC 00021080 */ sll $v0, $v0, 2
/* 1932D0 802649F0 3C018028 */ lui $at, %hi(bActorSoundTable+0x1A)
/* 1932D4 802649F4 00220821 */ addu $at, $at, $v0
/* 1932D8 802649F8 94221482 */ lhu $v0, %lo(bActorSoundTable+0x1A)($at)
/* 1932DC 802649FC 8E230094 */ lw $v1, 0x94($s1)
/* 1932E0 80264A00 10600030 */ beqz $v1, .L80264AC4
/* 1932E4 80264A04 A62200BE */ sh $v0, 0xbe($s1)
/* 1932E8 80264A08 0C00AB39 */ jal heap_malloc
/* 1932EC 80264A0C 240408E8 */ addiu $a0, $zero, 0x8e8
/* 1932F0 80264A10 0040282D */ daddu $a1, $v0, $zero
/* 1932F4 80264A14 14A00003 */ bnez $a1, .L80264A24
/* 1932F8 80264A18 AE2200C0 */ sw $v0, 0xc0($s1)
.L80264A1C:
/* 1932FC 80264A1C 08099287 */ j .L80264A1C
/* 193300 80264A20 00000000 */ nop
.L80264A24:
/* 193304 80264A24 0000182D */ daddu $v1, $zero, $zero
/* 193308 80264A28 00A0202D */ daddu $a0, $a1, $zero
/* 19330C 80264A2C A0A006C0 */ sb $zero, 0x6c0($a1)
/* 193310 80264A30 A0A00750 */ sb $zero, 0x750($a1)
/* 193314 80264A34 A0A00764 */ sb $zero, 0x764($a1)
/* 193318 80264A38 A0A00768 */ sb $zero, 0x768($a1)
/* 19331C 80264A3C A0A007D8 */ sb $zero, 0x7d8($a1)
/* 193320 80264A40 A0A007D9 */ sb $zero, 0x7d9($a1)
.L80264A44:
/* 193324 80264A44 C6000144 */ lwc1 $f0, 0x144($s0)
/* 193328 80264A48 4600018D */ trunc.w.s $f6, $f0
/* 19332C 80264A4C 44023000 */ mfc1 $v0, $f6
/* 193330 80264A50 00000000 */ nop
/* 193334 80264A54 A48207FC */ sh $v0, 0x7fc($a0)
/* 193338 80264A58 C6000148 */ lwc1 $f0, 0x148($s0)
/* 19333C 80264A5C 4600018D */ trunc.w.s $f6, $f0
/* 193340 80264A60 44023000 */ mfc1 $v0, $f6
/* 193344 80264A64 00000000 */ nop
/* 193348 80264A68 A482081C */ sh $v0, 0x81c($a0)
/* 19334C 80264A6C C600014C */ lwc1 $f0, 0x14c($s0)
/* 193350 80264A70 24630001 */ addiu $v1, $v1, 1
/* 193354 80264A74 4600018D */ trunc.w.s $f6, $f0
/* 193358 80264A78 44023000 */ mfc1 $v0, $f6
/* 19335C 80264A7C 00000000 */ nop
/* 193360 80264A80 A482083C */ sh $v0, 0x83c($a0)
/* 193364 80264A84 28620010 */ slti $v0, $v1, 0x10
/* 193368 80264A88 1440FFEE */ bnez $v0, .L80264A44
/* 19336C 80264A8C 24840002 */ addiu $a0, $a0, 2
/* 193370 80264A90 0000182D */ daddu $v1, $zero, $zero
/* 193374 80264A94 00A0202D */ daddu $a0, $a1, $zero
/* 193378 80264A98 24020003 */ addiu $v0, $zero, 3
/* 19337C 80264A9C A0A207DA */ sb $v0, 0x7da($a1)
/* 193380 80264AA0 A0A007DB */ sb $zero, 0x7db($a1)
/* 193384 80264AA4 A0A008AC */ sb $zero, 0x8ac($a1)
.L80264AA8:
/* 193388 80264AA8 AC8008B0 */ sw $zero, 0x8b0($a0)
/* 19338C 80264AAC 00A31021 */ addu $v0, $a1, $v1
/* 193390 80264AB0 24630001 */ addiu $v1, $v1, 1
/* 193394 80264AB4 A04008B8 */ sb $zero, 0x8b8($v0)
/* 193398 80264AB8 28620002 */ slti $v0, $v1, 2
/* 19339C 80264ABC 1440FFFA */ bnez $v0, .L80264AA8
/* 1933A0 80264AC0 24840004 */ addiu $a0, $a0, 4
.L80264AC4:
/* 1933A4 80264AC4 0C00AB39 */ jal heap_malloc
/* 1933A8 80264AC8 2404008C */ addiu $a0, $zero, 0x8c
/* 1933AC 80264ACC 14400003 */ bnez $v0, .L80264ADC
/* 1933B0 80264AD0 AE220010 */ sw $v0, 0x10($s1)
.L80264AD4:
/* 1933B4 80264AD4 080992B5 */ j .L80264AD4
/* 1933B8 80264AD8 00000000 */ nop
.L80264ADC:
/* 1933BC 80264ADC 8E050144 */ lw $a1, 0x144($s0)
/* 1933C0 80264AE0 8E060148 */ lw $a2, 0x148($s0)
/* 1933C4 80264AE4 8E07014C */ lw $a3, 0x14c($s0)
/* 1933C8 80264AE8 0C044898 */ jal create_shadow_type
/* 1933CC 80264AEC 0000202D */ daddu $a0, $zero, $zero
/* 1933D0 80264AF0 AE02042C */ sw $v0, 0x42c($s0)
/* 1933D4 80264AF4 92020190 */ lbu $v0, 0x190($s0)
/* 1933D8 80264AF8 3C014038 */ lui $at, 0x4038
/* 1933DC 80264AFC 44811800 */ mtc1 $at, $f3
/* 1933E0 80264B00 44801000 */ mtc1 $zero, $f2
/* 1933E4 80264B04 44820000 */ mtc1 $v0, $f0
/* 1933E8 80264B08 00000000 */ nop
/* 1933EC 80264B0C 46800021 */ cvt.d.w $f0, $f0
/* 1933F0 80264B10 46220003 */ div.d $f0, $f0, $f2
/* 1933F4 80264B14 46200020 */ cvt.s.d $f0, $f0
/* 1933F8 80264B18 0C011D82 */ jal create_status_icon_set
/* 1933FC 80264B1C E6000430 */ swc1 $f0, 0x430($s0)
/* 193400 80264B20 3C05C30E */ lui $a1, 0xc30e
/* 193404 80264B24 3C064208 */ lui $a2, 0x4208
/* 193408 80264B28 3C073F80 */ lui $a3, 0x3f80
/* 19340C 80264B2C 0000202D */ daddu $a0, $zero, $zero
/* 193410 80264B30 A6020436 */ sh $v0, 0x436($s0)
/* 193414 80264B34 0C01C43C */ jal playFX_41
/* 193418 80264B38 AFA00010 */ sw $zero, 0x10($sp)
/* 19341C 80264B3C 24040013 */ addiu $a0, $zero, 0x13
/* 193420 80264B40 AE020440 */ sw $v0, 0x440($s0)
/* 193424 80264B44 0C03A752 */ jal is_ability_active
/* 193428 80264B48 AE000228 */ sw $zero, 0x228($s0)
/* 19342C 80264B4C 10400004 */ beqz $v0, .L80264B60
/* 193430 80264B50 2402000B */ addiu $v0, $zero, 0xb
/* 193434 80264B54 A2020212 */ sb $v0, 0x212($s0)
/* 193438 80264B58 2402007F */ addiu $v0, $zero, 0x7f
/* 19343C 80264B5C A2020213 */ sb $v0, 0x213($s0)
.L80264B60:
/* 193440 80264B60 8FBF0020 */ lw $ra, 0x20($sp)
/* 193444 80264B64 8FB1001C */ lw $s1, 0x1c($sp)
/* 193448 80264B68 8FB00018 */ lw $s0, 0x18($sp)
/* 19344C 80264B6C 03E00008 */ jr $ra
/* 193450 80264B70 27BD0028 */ addiu $sp, $sp, 0x28

View File

@ -1,86 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel reset_all_actor_sounds
/* 19637C 80267A9C 90830136 */ lbu $v1, 0x136($a0)
/* 196380 80267AA0 8C8501F4 */ lw $a1, 0x1f4($a0)
/* 196384 80267AA4 000310C0 */ sll $v0, $v1, 3
/* 196388 80267AA8 00431023 */ subu $v0, $v0, $v1
/* 19638C 80267AAC 00021080 */ sll $v0, $v0, 2
/* 196390 80267AB0 3C018028 */ lui $at, %hi(bActorSoundTable)
/* 196394 80267AB4 00220821 */ addu $at, $at, $v0
/* 196398 80267AB8 8C221468 */ lw $v0, %lo(bActorSoundTable)($at)
/* 19639C 80267ABC AC82019C */ sw $v0, 0x19c($a0)
/* 1963A0 80267AC0 000310C0 */ sll $v0, $v1, 3
/* 1963A4 80267AC4 00431023 */ subu $v0, $v0, $v1
/* 1963A8 80267AC8 00021080 */ sll $v0, $v0, 2
/* 1963AC 80267ACC 3C018028 */ lui $at, %hi(bActorSoundTable+0x4)
/* 1963B0 80267AD0 00220821 */ addu $at, $at, $v0
/* 1963B4 80267AD4 8C22146C */ lw $v0, %lo(bActorSoundTable+0x4)($at)
/* 1963B8 80267AD8 AC8201A0 */ sw $v0, 0x1a0($a0)
/* 1963BC 80267ADC 000310C0 */ sll $v0, $v1, 3
/* 1963C0 80267AE0 00431023 */ subu $v0, $v0, $v1
/* 1963C4 80267AE4 00021080 */ sll $v0, $v0, 2
/* 1963C8 80267AE8 3C018028 */ lui $at, %hi(bActorSoundTable+0x8)
/* 1963CC 80267AEC 00220821 */ addu $at, $at, $v0
/* 1963D0 80267AF0 8C221470 */ lw $v0, %lo(bActorSoundTable+0x8)($at)
/* 1963D4 80267AF4 AC8201A4 */ sw $v0, 0x1a4($a0)
/* 1963D8 80267AF8 000310C0 */ sll $v0, $v1, 3
/* 1963DC 80267AFC 00431023 */ subu $v0, $v0, $v1
/* 1963E0 80267B00 00021080 */ sll $v0, $v0, 2
/* 1963E4 80267B04 3C018028 */ lui $at, %hi(bActorSoundTable+0xC)
/* 1963E8 80267B08 00220821 */ addu $at, $at, $v0
/* 1963EC 80267B0C 8C221474 */ lw $v0, %lo(bActorSoundTable+0xC)($at)
/* 1963F0 80267B10 AC8201A8 */ sw $v0, 0x1a8($a0)
/* 1963F4 80267B14 000310C0 */ sll $v0, $v1, 3
/* 1963F8 80267B18 00431023 */ subu $v0, $v0, $v1
/* 1963FC 80267B1C 00021080 */ sll $v0, $v0, 2
/* 196400 80267B20 3C018028 */ lui $at, %hi(bActorSoundTable+0x10)
/* 196404 80267B24 00220821 */ addu $at, $at, $v0
/* 196408 80267B28 8C221478 */ lw $v0, %lo(bActorSoundTable+0x10)($at)
/* 19640C 80267B2C AC8201AC */ sw $v0, 0x1ac($a0)
/* 196410 80267B30 000310C0 */ sll $v0, $v1, 3
/* 196414 80267B34 00431023 */ subu $v0, $v0, $v1
/* 196418 80267B38 00021080 */ sll $v0, $v0, 2
/* 19641C 80267B3C 3C018028 */ lui $at, %hi(bActorSoundTable+0x14)
/* 196420 80267B40 00220821 */ addu $at, $at, $v0
/* 196424 80267B44 8C22147C */ lw $v0, %lo(bActorSoundTable+0x14)($at)
/* 196428 80267B48 AC8201B0 */ sw $v0, 0x1b0($a0)
/* 19642C 80267B4C 000310C0 */ sll $v0, $v1, 3
/* 196430 80267B50 00431023 */ subu $v0, $v0, $v1
/* 196434 80267B54 00021080 */ sll $v0, $v0, 2
/* 196438 80267B58 3C018028 */ lui $at, %hi(bActorSoundTable+0x18)
/* 19643C 80267B5C 00220821 */ addu $at, $at, $v0
/* 196440 80267B60 94221480 */ lhu $v0, %lo(bActorSoundTable+0x18)($at)
/* 196444 80267B64 A48201B4 */ sh $v0, 0x1b4($a0)
/* 196448 80267B68 000310C0 */ sll $v0, $v1, 3
/* 19644C 80267B6C 00431023 */ subu $v0, $v0, $v1
/* 196450 80267B70 00021080 */ sll $v0, $v0, 2
/* 196454 80267B74 3C018028 */ lui $at, %hi(bActorSoundTable+0x1A)
/* 196458 80267B78 00220821 */ addu $at, $at, $v0
/* 19645C 80267B7C 94221482 */ lhu $v0, %lo(bActorSoundTable+0x1A)($at)
/* 196460 80267B80 10A00014 */ beqz $a1, .L80267BD4
/* 196464 80267B84 A48201B6 */ sh $v0, 0x1b6($a0)
.L80267B88:
/* 196468 80267B88 8C82019C */ lw $v0, 0x19c($a0)
/* 19646C 80267B8C ACA200A4 */ sw $v0, 0xa4($a1)
/* 196470 80267B90 8C8201A0 */ lw $v0, 0x1a0($a0)
/* 196474 80267B94 ACA200A8 */ sw $v0, 0xa8($a1)
/* 196478 80267B98 8C8201A4 */ lw $v0, 0x1a4($a0)
/* 19647C 80267B9C ACA200AC */ sw $v0, 0xac($a1)
/* 196480 80267BA0 8C8201A8 */ lw $v0, 0x1a8($a0)
/* 196484 80267BA4 ACA200B0 */ sw $v0, 0xb0($a1)
/* 196488 80267BA8 8C8201AC */ lw $v0, 0x1ac($a0)
/* 19648C 80267BAC ACA200B4 */ sw $v0, 0xb4($a1)
/* 196490 80267BB0 8C8201B0 */ lw $v0, 0x1b0($a0)
/* 196494 80267BB4 ACA200B8 */ sw $v0, 0xb8($a1)
/* 196498 80267BB8 948201B4 */ lhu $v0, 0x1b4($a0)
/* 19649C 80267BBC A4A200BC */ sh $v0, 0xbc($a1)
/* 1964A0 80267BC0 948201B6 */ lhu $v0, 0x1b6($a0)
/* 1964A4 80267BC4 A4A200BE */ sh $v0, 0xbe($a1)
/* 1964A8 80267BC8 8CA5000C */ lw $a1, 0xc($a1)
/* 1964AC 80267BCC 14A0FFEE */ bnez $a1, .L80267B88
/* 1964B0 80267BD0 00000000 */ nop
.L80267BD4:
/* 1964B4 80267BD4 03E00008 */ jr $ra
/* 1964B8 80267BD8 00000000 */ nop

View File

@ -1,78 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel set_animation
/* 1925DC 80263CFC 27BDFFD8 */ addiu $sp, $sp, -0x28
/* 1925E0 80263D00 AFB00010 */ sw $s0, 0x10($sp)
/* 1925E4 80263D04 0080802D */ daddu $s0, $a0, $zero
/* 1925E8 80263D08 AFB3001C */ sw $s3, 0x1c($sp)
/* 1925EC 80263D0C 00A0982D */ daddu $s3, $a1, $zero
/* 1925F0 80263D10 AFB20018 */ sw $s2, 0x18($sp)
/* 1925F4 80263D14 00C0902D */ daddu $s2, $a2, $zero
/* 1925F8 80263D18 AFBF0020 */ sw $ra, 0x20($sp)
/* 1925FC 80263D1C 06400033 */ bltz $s2, .L80263DEC
/* 192600 80263D20 AFB10014 */ sw $s1, 0x14($sp)
/* 192604 80263D24 0C09A75B */ jal get_actor
/* 192608 80263D28 00000000 */ nop
/* 19260C 80263D2C 0040882D */ daddu $s1, $v0, $zero
/* 192610 80263D30 32040700 */ andi $a0, $s0, 0x700
/* 192614 80263D34 24020100 */ addiu $v0, $zero, 0x100
/* 192618 80263D38 10820015 */ beq $a0, $v0, .L80263D90
/* 19261C 80263D3C 28820101 */ slti $v0, $a0, 0x101
/* 192620 80263D40 50400005 */ beql $v0, $zero, .L80263D58
/* 192624 80263D44 24020200 */ addiu $v0, $zero, 0x200
/* 192628 80263D48 10800007 */ beqz $a0, .L80263D68
/* 19262C 80263D4C 00000000 */ nop
/* 192630 80263D50 08098F7B */ j .L80263DEC
/* 192634 80263D54 00000000 */ nop
.L80263D58:
/* 192638 80263D58 10820016 */ beq $a0, $v0, .L80263DB4
/* 19263C 80263D5C 0220202D */ daddu $a0, $s1, $zero
/* 192640 80263D60 08098F7B */ j .L80263DEC
/* 192644 80263D64 00000000 */ nop
.L80263D68:
/* 192648 80263D68 8E3001F4 */ lw $s0, 0x1f4($s1)
/* 19264C 80263D6C 8E020088 */ lw $v0, 0x88($s0)
/* 192650 80263D70 1052001E */ beq $v0, $s2, .L80263DEC
/* 192654 80263D74 0000202D */ daddu $a0, $zero, $zero
/* 192658 80263D78 8E060090 */ lw $a2, 0x90($s0)
/* 19265C 80263D7C 0240282D */ daddu $a1, $s2, $zero
/* 192660 80263D80 0C0B76A3 */ jal spr_update_player_sprite
/* 192664 80263D84 AE050088 */ sw $a1, 0x88($s0)
/* 192668 80263D88 08098F7B */ j .L80263DEC
/* 19266C 80263D8C 00000000 */ nop
.L80263D90:
/* 192670 80263D90 12600006 */ beqz $s3, .L80263DAC
/* 192674 80263D94 0220202D */ daddu $a0, $s1, $zero
/* 192678 80263D98 0C099117 */ jal get_actor_part
/* 19267C 80263D9C 0260282D */ daddu $a1, $s3, $zero
/* 192680 80263DA0 0040802D */ daddu $s0, $v0, $zero
/* 192684 80263DA4 16000006 */ bnez $s0, .L80263DC0
/* 192688 80263DA8 00000000 */ nop
.L80263DAC:
/* 19268C 80263DAC 08098F70 */ j .L80263DC0
/* 192690 80263DB0 8E3001F4 */ lw $s0, 0x1f4($s1)
.L80263DB4:
/* 192694 80263DB4 0C099117 */ jal get_actor_part
/* 192698 80263DB8 0260282D */ daddu $a1, $s3, $zero
/* 19269C 80263DBC 0040802D */ daddu $s0, $v0, $zero
.L80263DC0:
/* 1926A0 80263DC0 8E020088 */ lw $v0, 0x88($s0)
/* 1926A4 80263DC4 10520009 */ beq $v0, $s2, .L80263DEC
/* 1926A8 80263DC8 0240282D */ daddu $a1, $s2, $zero
/* 1926AC 80263DCC 8E040084 */ lw $a0, 0x84($s0)
/* 1926B0 80263DD0 8E060090 */ lw $a2, 0x90($s0)
/* 1926B4 80263DD4 0C0B78AB */ jal spr_update_sprite
/* 1926B8 80263DD8 AE050088 */ sw $a1, 0x88($s0)
/* 1926BC 80263DDC 8E040084 */ lw $a0, 0x84($s0)
/* 1926C0 80263DE0 0C0B7972 */ jal func_802DE5C8
/* 1926C4 80263DE4 00000000 */ nop
/* 1926C8 80263DE8 AE02008C */ sw $v0, 0x8c($s0)
.L80263DEC:
/* 1926CC 80263DEC 8FBF0020 */ lw $ra, 0x20($sp)
/* 1926D0 80263DF0 8FB3001C */ lw $s3, 0x1c($sp)
/* 1926D4 80263DF4 8FB20018 */ lw $s2, 0x18($sp)
/* 1926D8 80263DF8 8FB10014 */ lw $s1, 0x14($sp)
/* 1926DC 80263DFC 8FB00010 */ lw $s0, 0x10($sp)
/* 1926E0 80263E00 03E00008 */ jr $ra
/* 1926E4 80263E04 27BD0028 */ addiu $sp, $sp, 0x28

View File

@ -1,53 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel set_animation_rate
/* 192798 80263EB8 27BDFFD8 */ addiu $sp, $sp, -0x28
/* 19279C 80263EBC AFB00010 */ sw $s0, 0x10($sp)
/* 1927A0 80263EC0 0080802D */ daddu $s0, $a0, $zero
/* 1927A4 80263EC4 AFB20018 */ sw $s2, 0x18($sp)
/* 1927A8 80263EC8 00A0902D */ daddu $s2, $a1, $zero
/* 1927AC 80263ECC F7B40020 */ sdc1 $f20, 0x20($sp)
/* 1927B0 80263ED0 4486A000 */ mtc1 $a2, $f20
/* 1927B4 80263ED4 AFBF001C */ sw $ra, 0x1c($sp)
/* 1927B8 80263ED8 0C09A75B */ jal get_actor
/* 1927BC 80263EDC AFB10014 */ sw $s1, 0x14($sp)
/* 1927C0 80263EE0 0040882D */ daddu $s1, $v0, $zero
/* 1927C4 80263EE4 32100700 */ andi $s0, $s0, 0x700
/* 1927C8 80263EE8 24020100 */ addiu $v0, $zero, 0x100
/* 1927CC 80263EEC 1202000B */ beq $s0, $v0, .L80263F1C
/* 1927D0 80263EF0 2A020101 */ slti $v0, $s0, 0x101
/* 1927D4 80263EF4 50400005 */ beql $v0, $zero, .L80263F0C
/* 1927D8 80263EF8 24020200 */ addiu $v0, $zero, 0x200
/* 1927DC 80263EFC 12000010 */ beqz $s0, .L80263F40
/* 1927E0 80263F00 0220202D */ daddu $a0, $s1, $zero
/* 1927E4 80263F04 08098FD3 */ j .L80263F4C
/* 1927E8 80263F08 00000000 */ nop
.L80263F0C:
/* 1927EC 80263F0C 1202000C */ beq $s0, $v0, .L80263F40
/* 1927F0 80263F10 0220202D */ daddu $a0, $s1, $zero
/* 1927F4 80263F14 08098FD3 */ j .L80263F4C
/* 1927F8 80263F18 00000000 */ nop
.L80263F1C:
/* 1927FC 80263F1C 12400005 */ beqz $s2, .L80263F34
/* 192800 80263F20 0220202D */ daddu $a0, $s1, $zero
/* 192804 80263F24 0C099117 */ jal get_actor_part
/* 192808 80263F28 0240282D */ daddu $a1, $s2, $zero
/* 19280C 80263F2C 54400007 */ bnel $v0, $zero, .L80263F4C
/* 192810 80263F30 E4540090 */ swc1 $f20, 0x90($v0)
.L80263F34:
/* 192814 80263F34 8E2201F4 */ lw $v0, 0x1f4($s1)
/* 192818 80263F38 08098FD3 */ j .L80263F4C
/* 19281C 80263F3C E4540090 */ swc1 $f20, 0x90($v0)
.L80263F40:
/* 192820 80263F40 0C099117 */ jal get_actor_part
/* 192824 80263F44 0240282D */ daddu $a1, $s2, $zero
/* 192828 80263F48 E4540090 */ swc1 $f20, 0x90($v0)
.L80263F4C:
/* 19282C 80263F4C 8FBF001C */ lw $ra, 0x1c($sp)
/* 192830 80263F50 8FB20018 */ lw $s2, 0x18($sp)
/* 192834 80263F54 8FB10014 */ lw $s1, 0x14($sp)
/* 192838 80263F58 8FB00010 */ lw $s0, 0x10($sp)
/* 19283C 80263F5C D7B40020 */ ldc1 $f20, 0x20($sp)
/* 192840 80263F60 03E00008 */ jr $ra
/* 192844 80263F64 27BD0028 */ addiu $sp, $sp, 0x28

View File

@ -5,8 +5,8 @@ glabel show_damage_popup
/* 194E8C 802665AC 27BDFFD8 */ addiu $sp, $sp, -0x28 /* 194E8C 802665AC 27BDFFD8 */ addiu $sp, $sp, -0x28
/* 194E90 802665B0 AFB00020 */ sw $s0, 0x20($sp) /* 194E90 802665B0 AFB00020 */ sw $s0, 0x20($sp)
/* 194E94 802665B4 0000802D */ daddu $s0, $zero, $zero /* 194E94 802665B4 0000802D */ daddu $s0, $zero, $zero
/* 194E98 802665B8 3C058029 */ lui $a1, %hi(D_802938AC) /* 194E98 802665B8 3C058029 */ lui $a1, %hi(gDamageCountEffects)
/* 194E9C 802665BC 24A538AC */ addiu $a1, $a1, %lo(D_802938AC) /* 194E9C 802665BC 24A538AC */ addiu $a1, $a1, %lo(gDamageCountEffects)
/* 194EA0 802665C0 44861000 */ mtc1 $a2, $f2 /* 194EA0 802665C0 44861000 */ mtc1 $a2, $f2
/* 194EA4 802665C4 8FA40038 */ lw $a0, 0x38($sp) /* 194EA4 802665C4 8FA40038 */ lw $a0, 0x38($sp)
/* 194EA8 802665C8 00A0182D */ daddu $v1, $a1, $zero /* 194EA8 802665C8 00A0182D */ daddu $v1, $a1, $zero
@ -37,8 +37,8 @@ glabel show_damage_popup
/* 194EFC 8026661C 44840000 */ mtc1 $a0, $f0 /* 194EFC 8026661C 44840000 */ mtc1 $a0, $f0
/* 194F00 80266620 00000000 */ nop /* 194F00 80266620 00000000 */ nop
/* 194F04 80266624 46800020 */ cvt.s.w $f0, $f0 /* 194F04 80266624 46800020 */ cvt.s.w $f0, $f0
/* 194F08 80266628 3C028029 */ lui $v0, %hi(D_802938AC) /* 194F08 80266628 3C028029 */ lui $v0, %hi(gDamageCountEffects)
/* 194F0C 8026662C 244238AC */ addiu $v0, $v0, %lo(D_802938AC) /* 194F0C 8026662C 244238AC */ addiu $v0, $v0, %lo(gDamageCountEffects)
/* 194F10 80266630 00108080 */ sll $s0, $s0, 2 /* 194F10 80266630 00108080 */ sll $s0, $s0, 2
/* 194F14 80266634 E7A00014 */ swc1 $f0, 0x14($sp) /* 194F14 80266634 E7A00014 */ swc1 $f0, 0x14($sp)
/* 194F18 80266638 3C014120 */ lui $at, 0x4120 /* 194F18 80266638 3C014120 */ lui $at, 0x4120
@ -53,9 +53,9 @@ glabel show_damage_popup
/* 194F3C 8026665C 0C01C0F4 */ jal playFX_1E /* 194F3C 8026665C 0C01C0F4 */ jal playFX_1E
/* 194F40 80266660 E7A00010 */ swc1 $f0, 0x10($sp) /* 194F40 80266660 E7A00010 */ swc1 $f0, 0x10($sp)
/* 194F44 80266664 24020028 */ addiu $v0, $zero, 0x28 /* 194F44 80266664 24020028 */ addiu $v0, $zero, 0x28
/* 194F48 80266668 3C018029 */ lui $at, %hi(D_8029390C) /* 194F48 80266668 3C018029 */ lui $at, %hi(gDamageCountTimers)
/* 194F4C 8026666C 00300821 */ addu $at, $at, $s0 /* 194F4C 8026666C 00300821 */ addu $at, $at, $s0
/* 194F50 80266670 AC22390C */ sw $v0, %lo(D_8029390C)($at) /* 194F50 80266670 AC22390C */ sw $v0, %lo(gDamageCountTimers)($at)
/* 194F54 80266674 8FBF0024 */ lw $ra, 0x24($sp) /* 194F54 80266674 8FBF0024 */ lw $ra, 0x24($sp)
/* 194F58 80266678 8FB00020 */ lw $s0, 0x20($sp) /* 194F58 80266678 8FB00020 */ lw $s0, 0x20($sp)
/* 194F5C 8026667C 03E00008 */ jr $ra /* 194F5C 8026667C 03E00008 */ jr $ra

View File

@ -1,76 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
.section .rodata
dlabel jtbl_8029D670
.word .L80267EB8_196798, .L80267E38_196718, .L80267E48_196728, .L80267E58_196738, .L80267E68_196748, .L80267E78_196758, .L80267E88_196768, .L80267E98_196778, .L80267E98_196778, .L80267E98_196778, .L80267E98_196778, .L80267E98_196778
.section .text
glabel start_rumble_type
/* 1966D4 80267DF4 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 1966D8 80267DF8 AFB00010 */ sw $s0, 0x10($sp)
/* 1966DC 80267DFC 0080802D */ daddu $s0, $a0, $zero
/* 1966E0 80267E00 3C048029 */ lui $a0, %hi(D_802939C0)
/* 1966E4 80267E04 8C8439C0 */ lw $a0, %lo(D_802939C0)($a0)
/* 1966E8 80267E08 10800003 */ beqz $a0, .L80267E18
/* 1966EC 80267E0C AFBF0014 */ sw $ra, 0x14($sp)
/* 1966F0 80267E10 0C0B102B */ jal kill_script_by_ID
/* 1966F4 80267E14 00000000 */ nop
.L80267E18:
/* 1966F8 80267E18 2E02000C */ sltiu $v0, $s0, 0xc
/* 1966FC 80267E1C 10400026 */ beqz $v0, .L80267EB8_196798
/* 196700 80267E20 00101080 */ sll $v0, $s0, 2
/* 196704 80267E24 3C01802A */ lui $at, %hi(jtbl_8029D670)
/* 196708 80267E28 00220821 */ addu $at, $at, $v0
/* 19670C 80267E2C 8C22D670 */ lw $v0, %lo(jtbl_8029D670)($at)
/* 196710 80267E30 00400008 */ jr $v0
/* 196714 80267E34 00000000 */ nop
.L80267E38_196718:
/* 196718 80267E38 3C048029 */ lui $a0, %hi(D_802939C4)
/* 19671C 80267E3C 248439C4 */ addiu $a0, $a0, %lo(D_802939C4)
/* 196720 80267E40 08099FA9 */ j .L80267EA4
/* 196724 80267E44 2405000A */ addiu $a1, $zero, 0xa
.L80267E48_196728:
/* 196728 80267E48 3C048029 */ lui $a0, %hi(D_80293A10)
/* 19672C 80267E4C 24843A10 */ addiu $a0, $a0, %lo(D_80293A10)
/* 196730 80267E50 08099FA9 */ j .L80267EA4
/* 196734 80267E54 2405000A */ addiu $a1, $zero, 0xa
.L80267E58_196738:
/* 196738 80267E58 3C048029 */ lui $a0, %hi(D_80293A34)
/* 19673C 80267E5C 24843A34 */ addiu $a0, $a0, %lo(D_80293A34)
/* 196740 80267E60 08099FA9 */ j .L80267EA4
/* 196744 80267E64 2405000A */ addiu $a1, $zero, 0xa
.L80267E68_196748:
/* 196748 80267E68 3C048029 */ lui $a0, %hi(D_80293A58)
/* 19674C 80267E6C 24843A58 */ addiu $a0, $a0, %lo(D_80293A58)
/* 196750 80267E70 08099FA9 */ j .L80267EA4
/* 196754 80267E74 2405000A */ addiu $a1, $zero, 0xa
.L80267E78_196758:
/* 196758 80267E78 3C048029 */ lui $a0, %hi(D_80293A7C)
/* 19675C 80267E7C 24843A7C */ addiu $a0, $a0, %lo(D_80293A7C)
/* 196760 80267E80 08099FA9 */ j .L80267EA4
/* 196764 80267E84 2405000A */ addiu $a1, $zero, 0xa
.L80267E88_196768:
/* 196768 80267E88 3C048029 */ lui $a0, %hi(D_80293AA0)
/* 19676C 80267E8C 24843AA0 */ addiu $a0, $a0, %lo(D_80293AA0)
/* 196770 80267E90 08099FA9 */ j .L80267EA4
/* 196774 80267E94 2405000A */ addiu $a1, $zero, 0xa
.L80267E98_196778:
/* 196778 80267E98 3C048029 */ lui $a0, %hi(D_80293AC4)
/* 19677C 80267E9C 24843AC4 */ addiu $a0, $a0, %lo(D_80293AC4)
/* 196780 80267EA0 2405000A */ addiu $a1, $zero, 0xa
.L80267EA4:
/* 196784 80267EA4 0C0B0CF8 */ jal start_script
/* 196788 80267EA8 24060020 */ addiu $a2, $zero, 0x20
/* 19678C 80267EAC 8C420144 */ lw $v0, 0x144($v0)
/* 196790 80267EB0 3C018029 */ lui $at, %hi(D_802939C0)
/* 196794 80267EB4 AC2239C0 */ sw $v0, %lo(D_802939C0)($at)
.L80267EB8_196798:
/* 196798 80267EB8 8FBF0014 */ lw $ra, 0x14($sp)
/* 19679C 80267EBC 8FB00010 */ lw $s0, 0x10($sp)
/* 1967A0 80267EC0 03E00008 */ jr $ra
/* 1967A4 80267EC4 27BD0018 */ addiu $sp, $sp, 0x18
/* 1967A8 80267EC8 00000000 */ nop
/* 1967AC 80267ECC 00000000 */ nop

View File

@ -1,37 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel draw_merlee_message_string
/* 2124C 80045E4C 27BDFFD8 */ addiu $sp, $sp, -0x28
/* 21250 80045E50 AFBF0024 */ sw $ra, 0x24($sp)
/* 21254 80045E54 AFB20020 */ sw $s2, 0x20($sp)
/* 21258 80045E58 AFB1001C */ sw $s1, 0x1c($sp)
/* 2125C 80045E5C AFB00018 */ sw $s0, 0x18($sp)
/* 21260 80045E60 84820012 */ lh $v0, 0x12($a0)
/* 21264 80045E64 24D00006 */ addiu $s0, $a2, 6
/* 21268 80045E68 00021080 */ sll $v0, $v0, 2
/* 2126C 80045E6C 3C128008 */ lui $s2, %hi(D_80078168)
/* 21270 80045E70 02429021 */ addu $s2, $s2, $v0
/* 21274 80045E74 8E528168 */ lw $s2, %lo(D_80078168)($s2)
/* 21278 80045E78 24B1000F */ addiu $s1, $a1, 0xf
/* 2127C 80045E7C 0C04992C */ jal get_msg_lines
/* 21280 80045E80 0240202D */ daddu $a0, $s2, $zero
/* 21284 80045E84 0240202D */ daddu $a0, $s2, $zero
/* 21288 80045E88 2442FFFF */ addiu $v0, $v0, -1
/* 2128C 80045E8C 00021040 */ sll $v0, $v0, 1
/* 21290 80045E90 3C068008 */ lui $a2, %hi(D_80078164)
/* 21294 80045E94 00C23021 */ addu $a2, $a2, $v0
/* 21298 80045E98 84C68164 */ lh $a2, %lo(D_80078164)($a2)
/* 2129C 80045E9C 2402000F */ addiu $v0, $zero, 0xf
/* 212A0 80045EA0 0220282D */ daddu $a1, $s1, $zero
/* 212A4 80045EA4 240700FF */ addiu $a3, $zero, 0xff
/* 212A8 80045EA8 AFA20010 */ sw $v0, 0x10($sp)
/* 212AC 80045EAC AFA00014 */ sw $zero, 0x14($sp)
/* 212B0 80045EB0 0C04993B */ jal draw_msg
/* 212B4 80045EB4 02063021 */ addu $a2, $s0, $a2
/* 212B8 80045EB8 8FBF0024 */ lw $ra, 0x24($sp)
/* 212BC 80045EBC 8FB20020 */ lw $s2, 0x20($sp)
/* 212C0 80045EC0 8FB1001C */ lw $s1, 0x1c($sp)
/* 212C4 80045EC4 8FB00018 */ lw $s0, 0x18($sp)
/* 212C8 80045EC8 03E00008 */ jr $ra
/* 212CC 80045ECC 27BD0028 */ addiu $sp, $sp, 0x28

View File

@ -1,24 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_80047B38
/* 22F38 80047B38 00041040 */ sll $v0, $a0, 1
/* 22F3C 80047B3C 00441021 */ addu $v0, $v0, $a0
/* 22F40 80047B40 00021080 */ sll $v0, $v0, 2
/* 22F44 80047B44 00441023 */ subu $v0, $v0, $a0
/* 22F48 80047B48 3C03800A */ lui $v1, %hi(D_800A0F44)
/* 22F4C 80047B4C 8C630F44 */ lw $v1, %lo(D_800A0F44)($v1)
/* 22F50 80047B50 00021100 */ sll $v0, $v0, 4
/* 22F54 80047B54 00622821 */ addu $a1, $v1, $v0
/* 22F58 80047B58 2403FFDF */ addiu $v1, $zero, -0x21
/* 22F5C 80047B5C 8CA20000 */ lw $v0, ($a1)
/* 22F60 80047B60 80A40068 */ lb $a0, 0x68($a1)
/* 22F64 80047B64 00431024 */ and $v0, $v0, $v1
/* 22F68 80047B68 14800004 */ bnez $a0, .L80047B7C
/* 22F6C 80047B6C ACA20000 */ sw $v0, ($a1)
/* 22F70 80047B70 24020001 */ addiu $v0, $zero, 1
/* 22F74 80047B74 A0A20068 */ sb $v0, 0x68($a1)
/* 22F78 80047B78 A0A2006A */ sb $v0, 0x6a($a1)
.L80047B7C:
/* 22F7C 80047B7C 03E00008 */ jr $ra
/* 22F80 80047B80 00000000 */ nop

View File

@ -1,72 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
.section .rodata
dlabel jtbl_800986B0
.word .L80045DB4_211B4, .L80045DC0_211C0, .L80045DCC_211CC, .L80045E08_21208, .L80045E14_21214, 0
.section .text
glabel update_merlee_message
/* 2117C 80045D7C 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 21180 80045D80 AFB00010 */ sw $s0, 0x10($sp)
/* 21184 80045D84 0080802D */ daddu $s0, $a0, $zero
/* 21188 80045D88 AFBF0014 */ sw $ra, 0x14($sp)
/* 2118C 80045D8C 82030016 */ lb $v1, 0x16($s0)
/* 21190 80045D90 2C620005 */ sltiu $v0, $v1, 5
/* 21194 80045D94 10400020 */ beqz $v0, .L80045E18
/* 21198 80045D98 0000202D */ daddu $a0, $zero, $zero
/* 2119C 80045D9C 00031080 */ sll $v0, $v1, 2
/* 211A0 80045DA0 3C01800A */ lui $at, %hi(jtbl_800986B0)
/* 211A4 80045DA4 00220821 */ addu $at, $at, $v0
/* 211A8 80045DA8 8C2286B0 */ lw $v0, %lo(jtbl_800986B0)($at)
/* 211AC 80045DAC 00400008 */ jr $v0
/* 211B0 80045DB0 00000000 */ nop
.L80045DB4_211B4:
/* 211B4 80045DB4 24020001 */ addiu $v0, $zero, 1
/* 211B8 80045DB8 08011786 */ j .L80045E18
/* 211BC 80045DBC A2020016 */ sb $v0, 0x16($s0)
.L80045DC0_211C0:
/* 211C0 80045DC0 24020002 */ addiu $v0, $zero, 2
/* 211C4 80045DC4 08011786 */ j .L80045E18
/* 211C8 80045DC8 A2020016 */ sb $v0, 0x16($s0)
.L80045DCC_211CC:
/* 211CC 80045DCC 3C028007 */ lui $v0, %hi(gGameStatusPtr)
/* 211D0 80045DD0 8C42419C */ lw $v0, %lo(gGameStatusPtr)($v0)
/* 211D4 80045DD4 8C420010 */ lw $v0, 0x10($v0)
/* 211D8 80045DD8 3042C000 */ andi $v0, $v0, 0xc000
/* 211DC 80045DDC 54400001 */ bnel $v0, $zero, .L80045DE4
/* 211E0 80045DE0 A6000014 */ sh $zero, 0x14($s0)
.L80045DE4:
/* 211E4 80045DE4 86020014 */ lh $v0, 0x14($s0)
/* 211E8 80045DE8 96030014 */ lhu $v1, 0x14($s0)
/* 211EC 80045DEC 10400003 */ beqz $v0, .L80045DFC
/* 211F0 80045DF0 2462FFFF */ addiu $v0, $v1, -1
/* 211F4 80045DF4 08011786 */ j .L80045E18
/* 211F8 80045DF8 A6020014 */ sh $v0, 0x14($s0)
.L80045DFC:
/* 211FC 80045DFC 24020003 */ addiu $v0, $zero, 3
/* 21200 80045E00 08011786 */ j .L80045E18
/* 21204 80045E04 A2020016 */ sb $v0, 0x16($s0)
.L80045E08_21208:
/* 21208 80045E08 24020004 */ addiu $v0, $zero, 4
/* 2120C 80045E0C 08011786 */ j .L80045E18
/* 21210 80045E10 A2020016 */ sb $v0, 0x16($s0)
.L80045E14_21214:
/* 21214 80045E14 24040001 */ addiu $a0, $zero, 1
.L80045E18:
/* 21218 80045E18 10800008 */ beqz $a0, .L80045E3C
/* 2121C 80045E1C 00000000 */ nop
/* 21220 80045E20 24040009 */ addiu $a0, $zero, 9
/* 21224 80045E24 0C051F9F */ jal set_window_update
/* 21228 80045E28 24050002 */ addiu $a1, $zero, 2
/* 2122C 80045E2C 3C01800A */ lui $at, %hi(D_800A0F40)
/* 21230 80045E30 AC200F40 */ sw $zero, %lo(D_800A0F40)($at)
/* 21234 80045E34 0C011731 */ jal dispose_merlee_message
/* 21238 80045E38 0200202D */ daddu $a0, $s0, $zero
.L80045E3C:
/* 2123C 80045E3C 8FBF0014 */ lw $ra, 0x14($sp)
/* 21240 80045E40 8FB00010 */ lw $s0, 0x10($sp)
/* 21244 80045E44 03E00008 */ jr $ra
/* 21248 80045E48 27BD0018 */ addiu $sp, $sp, 0x18

View File

@ -17,8 +17,8 @@ glabel create_popup_menu
/* 8E320 800F4E70 2484D699 */ addiu $a0, $a0, %lo(D_8010D699) /* 8E320 800F4E70 2484D699 */ addiu $a0, $a0, %lo(D_8010D699)
/* 8E324 800F4E74 3C068011 */ lui $a2, %hi(D_8010D698) /* 8E324 800F4E74 3C068011 */ lui $a2, %hi(D_8010D698)
/* 8E328 800F4E78 24C6D698 */ addiu $a2, $a2, %lo(D_8010D698) /* 8E328 800F4E78 24C6D698 */ addiu $a2, $a2, %lo(D_8010D698)
/* 8E32C 800F4E7C 3C018011 */ lui $at, %hi(D_8010D69C) /* 8E32C 800F4E7C 3C018011 */ lui $at, %hi(gPopupMenu)
/* 8E330 800F4E80 AC30D69C */ sw $s0, %lo(D_8010D69C)($at) /* 8E330 800F4E80 AC30D69C */ sw $s0, %lo(gPopupMenu)($at)
/* 8E334 800F4E84 A600032C */ sh $zero, 0x32c($s0) /* 8E334 800F4E84 A600032C */ sh $zero, 0x32c($s0)
/* 8E338 800F4E88 AE00031C */ sw $zero, 0x31c($s0) /* 8E338 800F4E88 AE00031C */ sw $zero, 0x31c($s0)
/* 8E33C 800F4E8C AE000320 */ sw $zero, 0x320($s0) /* 8E33C 800F4E8C AE000320 */ sw $zero, 0x320($s0)
@ -41,8 +41,8 @@ glabel create_popup_menu
.L800F4ED0: .L800F4ED0:
/* 8E380 800F4ED0 A0C00000 */ sb $zero, ($a2) /* 8E380 800F4ED0 A0C00000 */ sb $zero, ($a2)
.L800F4ED4: .L800F4ED4:
/* 8E384 800F4ED4 3C058011 */ lui $a1, %hi(D_8010D69C) /* 8E384 800F4ED4 3C058011 */ lui $a1, %hi(gPopupMenu)
/* 8E388 800F4ED8 8CA5D69C */ lw $a1, %lo(D_8010D69C)($a1) /* 8E388 800F4ED8 8CA5D69C */ lw $a1, %lo(gPopupMenu)($a1)
/* 8E38C 800F4EDC 24020001 */ addiu $v0, $zero, 1 /* 8E38C 800F4EDC 24020001 */ addiu $v0, $zero, 1
/* 8E390 800F4EE0 3C018011 */ lui $at, %hi(D_8010D68E) /* 8E390 800F4EE0 3C018011 */ lui $at, %hi(D_8010D68E)
/* 8E394 800F4EE4 A022D68E */ sb $v0, %lo(D_8010D68E)($at) /* 8E394 800F4EE4 A022D68E */ sb $v0, %lo(D_8010D68E)($at)

View File

@ -20,8 +20,8 @@ glabel func_800F16CC
/* 8AB90 800F16E0 AFB10014 */ sw $s1, 0x14($sp) /* 8AB90 800F16E0 AFB10014 */ sw $s1, 0x14($sp)
/* 8AB94 800F16E4 1040002B */ beqz $v0, .L800F1794 /* 8AB94 800F16E4 1040002B */ beqz $v0, .L800F1794
/* 8AB98 800F16E8 AFB00010 */ sw $s0, 0x10($sp) /* 8AB98 800F16E8 AFB00010 */ sw $s0, 0x10($sp)
/* 8AB9C 800F16EC 3C028011 */ lui $v0, %hi(D_8010D69C) /* 8AB9C 800F16EC 3C028011 */ lui $v0, %hi(gPopupMenu)
/* 8ABA0 800F16F0 8C42D69C */ lw $v0, %lo(D_8010D69C)($v0) /* 8ABA0 800F16F0 8C42D69C */ lw $v0, %lo(gPopupMenu)($v0)
/* 8ABA4 800F16F4 8C430318 */ lw $v1, 0x318($v0) /* 8ABA4 800F16F4 8C430318 */ lw $v1, 0x318($v0)
/* 8ABA8 800F16F8 2C62000E */ sltiu $v0, $v1, 0xe /* 8ABA8 800F16F8 2C62000E */ sltiu $v0, $v1, 0xe
/* 8ABAC 800F16FC 10400020 */ beqz $v0, .L800F1780 /* 8ABAC 800F16FC 10400020 */ beqz $v0, .L800F1780
@ -69,8 +69,8 @@ glabel func_800F16CC
/* 8AC3C 800F178C 0803C5FC */ j .L800F17F0 /* 8AC3C 800F178C 0803C5FC */ j .L800F17F0
/* 8AC40 800F1790 00000000 */ nop /* 8AC40 800F1790 00000000 */ nop
.L800F1794: .L800F1794:
/* 8AC44 800F1794 3C028011 */ lui $v0, %hi(D_8010D69C) /* 8AC44 800F1794 3C028011 */ lui $v0, %hi(gPopupMenu)
/* 8AC48 800F1798 8C42D69C */ lw $v0, %lo(D_8010D69C)($v0) /* 8AC48 800F1798 8C42D69C */ lw $v0, %lo(gPopupMenu)($v0)
/* 8AC4C 800F179C 8C430318 */ lw $v1, 0x318($v0) /* 8AC4C 800F179C 8C430318 */ lw $v1, 0x318($v0)
/* 8AC50 800F17A0 2C62000E */ sltiu $v0, $v1, 0xe /* 8AC50 800F17A0 2C62000E */ sltiu $v0, $v1, 0xe
/* 8AC54 800F17A4 10400014 */ beqz $v0, .L800F17F8 /* 8AC54 800F17A4 10400014 */ beqz $v0, .L800F17F8
@ -100,8 +100,8 @@ glabel func_800F16CC
/* 8ACA0 800F17F0 0C051F9F */ jal set_window_update /* 8ACA0 800F17F0 0C051F9F */ jal set_window_update
/* 8ACA4 800F17F4 00000000 */ nop /* 8ACA4 800F17F4 00000000 */ nop
.L800F17F8: .L800F17F8:
/* 8ACA8 800F17F8 3C118011 */ lui $s1, %hi(D_8010D69C) /* 8ACA8 800F17F8 3C118011 */ lui $s1, %hi(gPopupMenu)
/* 8ACAC 800F17FC 2631D69C */ addiu $s1, $s1, %lo(D_8010D69C) /* 8ACAC 800F17FC 2631D69C */ addiu $s1, $s1, %lo(gPopupMenu)
/* 8ACB0 800F1800 8E220000 */ lw $v0, ($s1) /* 8ACB0 800F1800 8E220000 */ lw $v0, ($s1)
/* 8ACB4 800F1804 8C420318 */ lw $v0, 0x318($v0) /* 8ACB4 800F1804 8C420318 */ lw $v0, 0x318($v0)
/* 8ACB8 800F1808 24120003 */ addiu $s2, $zero, 3 /* 8ACB8 800F1808 24120003 */ addiu $s2, $zero, 3
@ -212,8 +212,8 @@ glabel func_800F16CC
/* 8AE44 800F1994 0C0513BF */ jal set_hud_element_tint /* 8AE44 800F1994 0C0513BF */ jal set_hud_element_tint
/* 8AE48 800F1998 00A0382D */ daddu $a3, $a1, $zero /* 8AE48 800F1998 00A0382D */ daddu $a3, $a1, $zero
.L800F199C: .L800F199C:
/* 8AE4C 800F199C 3C028011 */ lui $v0, %hi(D_8010D69C) /* 8AE4C 800F199C 3C028011 */ lui $v0, %hi(gPopupMenu)
/* 8AE50 800F19A0 8C42D69C */ lw $v0, %lo(D_8010D69C)($v0) /* 8AE50 800F19A0 8C42D69C */ lw $v0, %lo(gPopupMenu)($v0)
/* 8AE54 800F19A4 8C430318 */ lw $v1, 0x318($v0) /* 8AE54 800F19A4 8C430318 */ lw $v1, 0x318($v0)
/* 8AE58 800F19A8 24020005 */ addiu $v0, $zero, 5 /* 8AE58 800F19A8 24020005 */ addiu $v0, $zero, 5
/* 8AE5C 800F19AC 14620006 */ bne $v1, $v0, .L800F19C8 /* 8AE5C 800F19AC 14620006 */ bne $v1, $v0, .L800F19C8

View File

@ -1,24 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_800F48F4
/* 8DDA4 800F48F4 3C028011 */ lui $v0, %hi(D_8010D690)
/* 8DDA8 800F48F8 8042D690 */ lb $v0, %lo(D_8010D690)($v0)
/* 8DDAC 800F48FC 3C038011 */ lui $v1, %hi(D_8010D69C)
/* 8DDB0 800F4900 8C63D69C */ lw $v1, %lo(D_8010D69C)($v1)
/* 8DDB4 800F4904 3C078011 */ lui $a3, %hi(D_8010D650)
/* 8DDB8 800F4908 8CE7D650 */ lw $a3, %lo(D_8010D650)($a3)
/* 8DDBC 800F490C 27BDFFE0 */ addiu $sp, $sp, -0x20
/* 8DDC0 800F4910 AFA20010 */ sw $v0, 0x10($sp)
/* 8DDC4 800F4914 3C028011 */ lui $v0, %hi(D_8010D648)
/* 8DDC8 800F4918 8C42D648 */ lw $v0, %lo(D_8010D648)($v0)
/* 8DDCC 800F491C AFBF0018 */ sw $ra, 0x18($sp)
/* 8DDD0 800F4920 AFA00014 */ sw $zero, 0x14($sp)
/* 8DDD4 800F4924 00021080 */ sll $v0, $v0, 2
/* 8DDD8 800F4928 00621821 */ addu $v1, $v1, $v0
/* 8DDDC 800F492C 8C640294 */ lw $a0, 0x294($v1)
/* 8DDE0 800F4930 0C04993B */ jal draw_msg
/* 8DDE4 800F4934 24A50008 */ addiu $a1, $a1, 8
/* 8DDE8 800F4938 8FBF0018 */ lw $ra, 0x18($sp)
/* 8DDEC 800F493C 03E00008 */ jr $ra
/* 8DDF0 800F4940 27BD0020 */ addiu $sp, $sp, 0x20

View File

@ -18,8 +18,8 @@ glabel func_800F4944
/* 8DE0C 800F495C 24D10007 */ addiu $s1, $a2, 7 /* 8DE0C 800F495C 24D10007 */ addiu $s1, $a2, 7
/* 8DE10 800F4960 104000A9 */ beqz $v0, .L800F4C08 /* 8DE10 800F4960 104000A9 */ beqz $v0, .L800F4C08
/* 8DE14 800F4964 AFBF0020 */ sw $ra, 0x20($sp) /* 8DE14 800F4964 AFBF0020 */ sw $ra, 0x20($sp)
/* 8DE18 800F4968 3C028011 */ lui $v0, %hi(D_8010D69C) /* 8DE18 800F4968 3C028011 */ lui $v0, %hi(gPopupMenu)
/* 8DE1C 800F496C 8C42D69C */ lw $v0, %lo(D_8010D69C)($v0) /* 8DE1C 800F496C 8C42D69C */ lw $v0, %lo(gPopupMenu)($v0)
/* 8DE20 800F4970 8C430318 */ lw $v1, 0x318($v0) /* 8DE20 800F4970 8C430318 */ lw $v1, 0x318($v0)
/* 8DE24 800F4974 2C62000E */ sltiu $v0, $v1, 0xe /* 8DE24 800F4974 2C62000E */ sltiu $v0, $v1, 0xe
/* 8DE28 800F4978 104000A3 */ beqz $v0, .L800F4C08 /* 8DE28 800F4978 104000A3 */ beqz $v0, .L800F4C08

View File

@ -4,8 +4,8 @@
glabel func_800F4FC4 glabel func_800F4FC4
/* 8E474 800F4FC4 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 8E474 800F4FC4 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 8E478 800F4FC8 AFB00010 */ sw $s0, 0x10($sp) /* 8E478 800F4FC8 AFB00010 */ sw $s0, 0x10($sp)
/* 8E47C 800F4FCC 3C108011 */ lui $s0, %hi(D_8010D69C) /* 8E47C 800F4FCC 3C108011 */ lui $s0, %hi(gPopupMenu)
/* 8E480 800F4FD0 2610D69C */ addiu $s0, $s0, %lo(D_8010D69C) /* 8E480 800F4FD0 2610D69C */ addiu $s0, $s0, %lo(gPopupMenu)
/* 8E484 800F4FD4 AFBF0014 */ sw $ra, 0x14($sp) /* 8E484 800F4FD4 AFBF0014 */ sw $ra, 0x14($sp)
/* 8E488 800F4FD8 AE040000 */ sw $a0, ($s0) /* 8E488 800F4FD8 AE040000 */ sw $a0, ($s0)
/* 8E48C 800F4FDC A480032C */ sh $zero, 0x32c($a0) /* 8E48C 800F4FDC A480032C */ sh $zero, 0x32c($a0)
@ -38,8 +38,8 @@ glabel func_800F4FC4
.L800F5048: .L800F5048:
/* 8E4F8 800F5048 A0C00000 */ sb $zero, ($a2) /* 8E4F8 800F5048 A0C00000 */ sb $zero, ($a2)
.L800F504C: .L800F504C:
/* 8E4FC 800F504C 3C058011 */ lui $a1, %hi(D_8010D69C) /* 8E4FC 800F504C 3C058011 */ lui $a1, %hi(gPopupMenu)
/* 8E500 800F5050 8CA5D69C */ lw $a1, %lo(D_8010D69C)($a1) /* 8E500 800F5050 8CA5D69C */ lw $a1, %lo(gPopupMenu)($a1)
/* 8E504 800F5054 24020001 */ addiu $v0, $zero, 1 /* 8E504 800F5054 24020001 */ addiu $v0, $zero, 1
/* 8E508 800F5058 3C018011 */ lui $at, %hi(D_8010D68E) /* 8E508 800F5058 3C018011 */ lui $at, %hi(D_8010D68E)
/* 8E50C 800F505C A022D68E */ sb $v0, %lo(D_8010D68E)($at) /* 8E50C 800F505C A022D68E */ sb $v0, %lo(D_8010D68E)($at)

View File

@ -4,8 +4,8 @@
glabel func_800F513C glabel func_800F513C
/* 8E5EC 800F513C 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 8E5EC 800F513C 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 8E5F0 800F5140 AFB00010 */ sw $s0, 0x10($sp) /* 8E5F0 800F5140 AFB00010 */ sw $s0, 0x10($sp)
/* 8E5F4 800F5144 3C108011 */ lui $s0, %hi(D_8010D69C) /* 8E5F4 800F5144 3C108011 */ lui $s0, %hi(gPopupMenu)
/* 8E5F8 800F5148 2610D69C */ addiu $s0, $s0, %lo(D_8010D69C) /* 8E5F8 800F5148 2610D69C */ addiu $s0, $s0, %lo(gPopupMenu)
/* 8E5FC 800F514C AFBF0014 */ sw $ra, 0x14($sp) /* 8E5FC 800F514C AFBF0014 */ sw $ra, 0x14($sp)
/* 8E600 800F5150 AE040000 */ sw $a0, ($s0) /* 8E600 800F5150 AE040000 */ sw $a0, ($s0)
/* 8E604 800F5154 90820323 */ lbu $v0, 0x323($a0) /* 8E604 800F5154 90820323 */ lbu $v0, 0x323($a0)
@ -40,8 +40,8 @@ glabel func_800F513C
.L800F51C8: .L800F51C8:
/* 8E678 800F51C8 A0C00000 */ sb $zero, ($a2) /* 8E678 800F51C8 A0C00000 */ sb $zero, ($a2)
.L800F51CC: .L800F51CC:
/* 8E67C 800F51CC 3C058011 */ lui $a1, %hi(D_8010D69C) /* 8E67C 800F51CC 3C058011 */ lui $a1, %hi(gPopupMenu)
/* 8E680 800F51D0 8CA5D69C */ lw $a1, %lo(D_8010D69C)($a1) /* 8E680 800F51D0 8CA5D69C */ lw $a1, %lo(gPopupMenu)($a1)
/* 8E684 800F51D4 24020006 */ addiu $v0, $zero, 6 /* 8E684 800F51D4 24020006 */ addiu $v0, $zero, 6
/* 8E688 800F51D8 3C018011 */ lui $at, %hi(D_8010D68F) /* 8E688 800F51D8 3C018011 */ lui $at, %hi(D_8010D68F)
/* 8E68C 800F51DC A022D68F */ sb $v0, %lo(D_8010D68F)($at) /* 8E68C 800F51DC A022D68F */ sb $v0, %lo(D_8010D68F)($at)

View File

@ -19,8 +19,8 @@ glabel hide_popup_menu
/* 8A870 800F13C0 AFB10014 */ sw $s1, 0x14($sp) /* 8A870 800F13C0 AFB10014 */ sw $s1, 0x14($sp)
/* 8A874 800F13C4 1040001A */ beqz $v0, .L800F1430 /* 8A874 800F13C4 1040001A */ beqz $v0, .L800F1430
/* 8A878 800F13C8 AFB00010 */ sw $s0, 0x10($sp) /* 8A878 800F13C8 AFB00010 */ sw $s0, 0x10($sp)
/* 8A87C 800F13CC 3C028011 */ lui $v0, %hi(D_8010D69C) /* 8A87C 800F13CC 3C028011 */ lui $v0, %hi(gPopupMenu)
/* 8A880 800F13D0 8C42D69C */ lw $v0, %lo(D_8010D69C)($v0) /* 8A880 800F13D0 8C42D69C */ lw $v0, %lo(gPopupMenu)($v0)
/* 8A884 800F13D4 8C430318 */ lw $v1, 0x318($v0) /* 8A884 800F13D4 8C430318 */ lw $v1, 0x318($v0)
/* 8A888 800F13D8 2C62000E */ sltiu $v0, $v1, 0xe /* 8A888 800F13D8 2C62000E */ sltiu $v0, $v1, 0xe
/* 8A88C 800F13DC 10400012 */ beqz $v0, .L800F1428 /* 8A88C 800F13DC 10400012 */ beqz $v0, .L800F1428
@ -49,8 +49,8 @@ glabel hide_popup_menu
/* 8A8D8 800F1428 0803C51D */ j .L800F1474 /* 8A8D8 800F1428 0803C51D */ j .L800F1474
/* 8A8DC 800F142C 24040015 */ addiu $a0, $zero, 0x15 /* 8A8DC 800F142C 24040015 */ addiu $a0, $zero, 0x15
.L800F1430: .L800F1430:
/* 8A8E0 800F1430 3C028011 */ lui $v0, %hi(D_8010D69C) /* 8A8E0 800F1430 3C028011 */ lui $v0, %hi(gPopupMenu)
/* 8A8E4 800F1434 8C42D69C */ lw $v0, %lo(D_8010D69C)($v0) /* 8A8E4 800F1434 8C42D69C */ lw $v0, %lo(gPopupMenu)($v0)
/* 8A8E8 800F1438 8C430318 */ lw $v1, 0x318($v0) /* 8A8E8 800F1438 8C430318 */ lw $v1, 0x318($v0)
/* 8A8EC 800F143C 2C62000E */ sltiu $v0, $v1, 0xe /* 8A8EC 800F143C 2C62000E */ sltiu $v0, $v1, 0xe
/* 8A8F0 800F1440 1040000E */ beqz $v0, .L800F147C /* 8A8F0 800F1440 1040000E */ beqz $v0, .L800F147C
@ -72,8 +72,8 @@ glabel hide_popup_menu
/* 8A924 800F1474 0C051F9F */ jal set_window_update /* 8A924 800F1474 0C051F9F */ jal set_window_update
/* 8A928 800F1478 24050002 */ addiu $a1, $zero, 2 /* 8A928 800F1478 24050002 */ addiu $a1, $zero, 2
.L800F147C: .L800F147C:
/* 8A92C 800F147C 3C118011 */ lui $s1, %hi(D_8010D69C) /* 8A92C 800F147C 3C118011 */ lui $s1, %hi(gPopupMenu)
/* 8A930 800F1480 2631D69C */ addiu $s1, $s1, %lo(D_8010D69C) /* 8A930 800F1480 2631D69C */ addiu $s1, $s1, %lo(gPopupMenu)
/* 8A934 800F1484 8E220000 */ lw $v0, ($s1) /* 8A934 800F1484 8E220000 */ lw $v0, ($s1)
/* 8A938 800F1488 8C430318 */ lw $v1, 0x318($v0) /* 8A938 800F1488 8C430318 */ lw $v1, 0x318($v0)
/* 8A93C 800F148C 24020003 */ addiu $v0, $zero, 3 /* 8A93C 800F148C 24020003 */ addiu $v0, $zero, 3

View File

@ -137,8 +137,8 @@ glabel popup_menu_draw_menu_contents
/* 8CCD4 800F3824 00441021 */ addu $v0, $v0, $a0 /* 8CCD4 800F3824 00441021 */ addu $v0, $v0, $a0
/* 8CCD8 800F3828 02221021 */ addu $v0, $s1, $v0 /* 8CCD8 800F3828 02221021 */ addu $v0, $s1, $v0
/* 8CCDC 800F382C 24480004 */ addiu $t0, $v0, 4 /* 8CCDC 800F382C 24480004 */ addiu $t0, $v0, 4
/* 8CCE0 800F3830 3C028011 */ lui $v0, %hi(D_8010D69C) /* 8CCE0 800F3830 3C028011 */ lui $v0, %hi(gPopupMenu)
/* 8CCE4 800F3834 8C42D69C */ lw $v0, %lo(D_8010D69C)($v0) /* 8CCE4 800F3834 8C42D69C */ lw $v0, %lo(gPopupMenu)($v0)
/* 8CCE8 800F3838 00650018 */ mult $v1, $a1 /* 8CCE8 800F3838 00650018 */ mult $v1, $a1
/* 8CCEC 800F383C AFAB0020 */ sw $t3, 0x20($sp) /* 8CCEC 800F383C AFAB0020 */ sw $t3, 0x20($sp)
/* 8CCF0 800F3840 8C450318 */ lw $a1, 0x318($v0) /* 8CCF0 800F3840 8C450318 */ lw $a1, 0x318($v0)
@ -256,8 +256,8 @@ glabel popup_menu_draw_menu_contents
/* 8CE9C 800F39EC 3C028011 */ lui $v0, %hi(D_8010D658) /* 8CE9C 800F39EC 3C028011 */ lui $v0, %hi(D_8010D658)
/* 8CEA0 800F39F0 8442D658 */ lh $v0, %lo(D_8010D658)($v0) /* 8CEA0 800F39F0 8442D658 */ lh $v0, %lo(D_8010D658)($v0)
/* 8CEA4 800F39F4 8FAB0060 */ lw $t3, 0x60($sp) /* 8CEA4 800F39F4 8FAB0060 */ lw $t3, 0x60($sp)
/* 8CEA8 800F39F8 3C128011 */ lui $s2, %hi(D_8010D69C) /* 8CEA8 800F39F8 3C128011 */ lui $s2, %hi(gPopupMenu)
/* 8CEAC 800F39FC 2652D69C */ addiu $s2, $s2, %lo(D_8010D69C) /* 8CEAC 800F39FC 2652D69C */ addiu $s2, $s2, %lo(gPopupMenu)
/* 8CEB0 800F3A00 01621821 */ addu $v1, $t3, $v0 /* 8CEB0 800F3A00 01621821 */ addu $v1, $t3, $v0
/* 8CEB4 800F3A04 8E420000 */ lw $v0, ($s2) /* 8CEB4 800F3A04 8E420000 */ lw $v0, ($s2)
/* 8CEB8 800F3A08 24130002 */ addiu $s3, $zero, 2 /* 8CEB8 800F3A08 24130002 */ addiu $s3, $zero, 2
@ -337,8 +337,8 @@ glabel popup_menu_draw_menu_contents
/* 8CFD4 800F3B24 30630FFF */ andi $v1, $v1, 0xfff /* 8CFD4 800F3B24 30630FFF */ andi $v1, $v1, 0xfff
/* 8CFD8 800F3B28 00641825 */ or $v1, $v1, $a0 /* 8CFD8 800F3B28 00641825 */ or $v1, $v1, $a0
/* 8CFDC 800F3B2C 00431025 */ or $v0, $v0, $v1 /* 8CFDC 800F3B2C 00431025 */ or $v0, $v0, $v1
/* 8CFE0 800F3B30 3C048011 */ lui $a0, %hi(D_8010D69C) /* 8CFE0 800F3B30 3C048011 */ lui $a0, %hi(gPopupMenu)
/* 8CFE4 800F3B34 8C84D69C */ lw $a0, %lo(D_8010D69C)($a0) /* 8CFE4 800F3B34 8C84D69C */ lw $a0, %lo(gPopupMenu)($a0)
/* 8CFE8 800F3B38 44880000 */ mtc1 $t0, $f0 /* 8CFE8 800F3B38 44880000 */ mtc1 $t0, $f0
/* 8CFEC 800F3B3C 00000000 */ nop /* 8CFEC 800F3B3C 00000000 */ nop
/* 8CFF0 800F3B40 46800020 */ cvt.s.w $f0, $f0 /* 8CFF0 800F3B40 46800020 */ cvt.s.w $f0, $f0
@ -408,8 +408,8 @@ glabel popup_menu_draw_menu_contents
/* 8D0E4 800F3C34 0803CFDE */ j .L800F3F78 /* 8D0E4 800F3C34 0803CFDE */ j .L800F3F78
/* 8D0E8 800F3C38 022B8821 */ addu $s1, $s1, $t3 /* 8D0E8 800F3C38 022B8821 */ addu $s1, $s1, $t3
.L800F3C3C: .L800F3C3C:
/* 8D0EC 800F3C3C 3C028011 */ lui $v0, %hi(D_8010D69C) /* 8D0EC 800F3C3C 3C028011 */ lui $v0, %hi(gPopupMenu)
/* 8D0F0 800F3C40 8C42D69C */ lw $v0, %lo(D_8010D69C)($v0) /* 8D0F0 800F3C40 8C42D69C */ lw $v0, %lo(gPopupMenu)($v0)
/* 8D0F4 800F3C44 8C430318 */ lw $v1, 0x318($v0) /* 8D0F4 800F3C44 8C430318 */ lw $v1, 0x318($v0)
/* 8D0F8 800F3C48 3C108011 */ lui $s0, %hi(D_8010D690) /* 8D0F8 800F3C48 3C108011 */ lui $s0, %hi(D_8010D690)
/* 8D0FC 800F3C4C 8210D690 */ lb $s0, %lo(D_8010D690)($s0) /* 8D0FC 800F3C4C 8210D690 */ lb $s0, %lo(D_8010D690)($s0)
@ -433,8 +433,8 @@ glabel popup_menu_draw_menu_contents
.L800F3C8C_8D13C: .L800F3C8C_8D13C:
/* 8D13C 800F3C8C 3C078011 */ lui $a3, %hi(D_8010D650) /* 8D13C 800F3C8C 3C078011 */ lui $a3, %hi(D_8010D650)
/* 8D140 800F3C90 8CE7D650 */ lw $a3, %lo(D_8010D650)($a3) /* 8D140 800F3C90 8CE7D650 */ lw $a3, %lo(D_8010D650)($a3)
/* 8D144 800F3C94 3C028011 */ lui $v0, %hi(D_8010D69C) /* 8D144 800F3C94 3C028011 */ lui $v0, %hi(gPopupMenu)
/* 8D148 800F3C98 8C42D69C */ lw $v0, %lo(D_8010D69C)($v0) /* 8D148 800F3C98 8C42D69C */ lw $v0, %lo(gPopupMenu)($v0)
/* 8D14C 800F3C9C 8FA50020 */ lw $a1, 0x20($sp) /* 8D14C 800F3C9C 8FA50020 */ lw $a1, 0x20($sp)
/* 8D150 800F3CA0 8FAB002C */ lw $t3, 0x2c($sp) /* 8D150 800F3CA0 8FAB002C */ lw $t3, 0x2c($sp)
/* 8D154 800F3CA4 240A0001 */ addiu $t2, $zero, 1 /* 8D154 800F3CA4 240A0001 */ addiu $t2, $zero, 1
@ -447,8 +447,8 @@ glabel popup_menu_draw_menu_contents
.L800F3CC0_8D170: .L800F3CC0_8D170:
/* 8D170 800F3CC0 3C078011 */ lui $a3, %hi(D_8010D650) /* 8D170 800F3CC0 3C078011 */ lui $a3, %hi(D_8010D650)
/* 8D174 800F3CC4 8CE7D650 */ lw $a3, %lo(D_8010D650)($a3) /* 8D174 800F3CC4 8CE7D650 */ lw $a3, %lo(D_8010D650)($a3)
/* 8D178 800F3CC8 3C028011 */ lui $v0, %hi(D_8010D69C) /* 8D178 800F3CC8 3C028011 */ lui $v0, %hi(gPopupMenu)
/* 8D17C 800F3CCC 8C42D69C */ lw $v0, %lo(D_8010D69C)($v0) /* 8D17C 800F3CCC 8C42D69C */ lw $v0, %lo(gPopupMenu)($v0)
/* 8D180 800F3CD0 8FA50020 */ lw $a1, 0x20($sp) /* 8D180 800F3CD0 8FA50020 */ lw $a1, 0x20($sp)
/* 8D184 800F3CD4 8FAB002C */ lw $t3, 0x2c($sp) /* 8D184 800F3CD4 8FAB002C */ lw $t3, 0x2c($sp)
/* 8D188 800F3CD8 240A0001 */ addiu $t2, $zero, 1 /* 8D188 800F3CD8 240A0001 */ addiu $t2, $zero, 1
@ -459,8 +459,8 @@ glabel popup_menu_draw_menu_contents
/* 8D19C 800F3CEC 0803CF75 */ j .L800F3DD4 /* 8D19C 800F3CEC 0803CF75 */ j .L800F3DD4
/* 8D1A0 800F3CF0 0220302D */ daddu $a2, $s1, $zero /* 8D1A0 800F3CF0 0220302D */ daddu $a2, $s1, $zero
.L800F3CF4_8D1A4: .L800F3CF4_8D1A4:
/* 8D1A4 800F3CF4 3C028011 */ lui $v0, %hi(D_8010D69C) /* 8D1A4 800F3CF4 3C028011 */ lui $v0, %hi(gPopupMenu)
/* 8D1A8 800F3CF8 8C42D69C */ lw $v0, %lo(D_8010D69C)($v0) /* 8D1A8 800F3CF8 8C42D69C */ lw $v0, %lo(gPopupMenu)($v0)
/* 8D1AC 800F3CFC 8FAA002C */ lw $t2, 0x2c($sp) /* 8D1AC 800F3CFC 8FAA002C */ lw $t2, 0x2c($sp)
/* 8D1B0 800F3D00 004A2021 */ addu $a0, $v0, $t2 /* 8D1B0 800F3D00 004A2021 */ addu $a0, $v0, $t2
/* 8D1B4 800F3D04 8C83018C */ lw $v1, 0x18c($a0) /* 8D1B4 800F3D04 8C83018C */ lw $v1, 0x18c($a0)
@ -478,8 +478,8 @@ glabel popup_menu_draw_menu_contents
/* 8D1E0 800F3D30 0803CF75 */ j .L800F3DD4 /* 8D1E0 800F3D30 0803CF75 */ j .L800F3DD4
/* 8D1E4 800F3D34 0220302D */ daddu $a2, $s1, $zero /* 8D1E4 800F3D34 0220302D */ daddu $a2, $s1, $zero
.L800F3D38_8D1E8: .L800F3D38_8D1E8:
/* 8D1E8 800F3D38 3C028011 */ lui $v0, %hi(D_8010D69C) /* 8D1E8 800F3D38 3C028011 */ lui $v0, %hi(gPopupMenu)
/* 8D1EC 800F3D3C 8C42D69C */ lw $v0, %lo(D_8010D69C)($v0) /* 8D1EC 800F3D3C 8C42D69C */ lw $v0, %lo(gPopupMenu)($v0)
/* 8D1F0 800F3D40 8FAA002C */ lw $t2, 0x2c($sp) /* 8D1F0 800F3D40 8FAA002C */ lw $t2, 0x2c($sp)
/* 8D1F4 800F3D44 004A1821 */ addu $v1, $v0, $t2 /* 8D1F4 800F3D44 004A1821 */ addu $v1, $v0, $t2
/* 8D1F8 800F3D48 8C620210 */ lw $v0, 0x210($v1) /* 8D1F8 800F3D48 8C620210 */ lw $v0, 0x210($v1)
@ -503,8 +503,8 @@ glabel popup_menu_draw_menu_contents
/* 8D23C 800F3D8C 0803CF75 */ j .L800F3DD4 /* 8D23C 800F3D8C 0803CF75 */ j .L800F3DD4
/* 8D240 800F3D90 25650008 */ addiu $a1, $t3, 8 /* 8D240 800F3D90 25650008 */ addiu $a1, $t3, 8
.L800F3D94_8D244: .L800F3D94_8D244:
/* 8D244 800F3D94 3C028011 */ lui $v0, %hi(D_8010D69C) /* 8D244 800F3D94 3C028011 */ lui $v0, %hi(gPopupMenu)
/* 8D248 800F3D98 8C42D69C */ lw $v0, %lo(D_8010D69C)($v0) /* 8D248 800F3D98 8C42D69C */ lw $v0, %lo(gPopupMenu)($v0)
/* 8D24C 800F3D9C 8FAB002C */ lw $t3, 0x2c($sp) /* 8D24C 800F3D9C 8FAB002C */ lw $t3, 0x2c($sp)
/* 8D250 800F3DA0 004B1821 */ addu $v1, $v0, $t3 /* 8D250 800F3DA0 004B1821 */ addu $v1, $v0, $t3
/* 8D254 800F3DA4 8C620210 */ lw $v0, 0x210($v1) /* 8D254 800F3DA4 8C620210 */ lw $v0, 0x210($v1)
@ -524,8 +524,8 @@ glabel popup_menu_draw_menu_contents
/* 8D284 800F3DD4 0C04993B */ jal draw_msg /* 8D284 800F3DD4 0C04993B */ jal draw_msg
/* 8D288 800F3DD8 00000000 */ nop /* 8D288 800F3DD8 00000000 */ nop
.L800F3DDC: .L800F3DDC:
/* 8D28C 800F3DDC 3C048011 */ lui $a0, %hi(D_8010D69C) /* 8D28C 800F3DDC 3C048011 */ lui $a0, %hi(gPopupMenu)
/* 8D290 800F3DE0 8C84D69C */ lw $a0, %lo(D_8010D69C)($a0) /* 8D290 800F3DE0 8C84D69C */ lw $a0, %lo(gPopupMenu)($a0)
/* 8D294 800F3DE4 8C830318 */ lw $v1, 0x318($a0) /* 8D294 800F3DE4 8C830318 */ lw $v1, 0x318($a0)
/* 8D298 800F3DE8 240B0003 */ addiu $t3, $zero, 3 /* 8D298 800F3DE8 240B0003 */ addiu $t3, $zero, 3
/* 8D29C 800F3DEC 106B0045 */ beq $v1, $t3, .L800F3F04 /* 8D29C 800F3DEC 106B0045 */ beq $v1, $t3, .L800F3F04
@ -556,8 +556,8 @@ glabel popup_menu_draw_menu_contents
/* 8D2F4 800F3E44 3C148011 */ lui $s4, %hi(D_80109890) /* 8D2F4 800F3E44 3C148011 */ lui $s4, %hi(D_80109890)
/* 8D2F8 800F3E48 26949890 */ addiu $s4, $s4, %lo(D_80109890) /* 8D2F8 800F3E48 26949890 */ addiu $s4, $s4, %lo(D_80109890)
.L800F3E4C: .L800F3E4C:
/* 8D2FC 800F3E4C 3C028011 */ lui $v0, %hi(D_8010D69C) /* 8D2FC 800F3E4C 3C028011 */ lui $v0, %hi(gPopupMenu)
/* 8D300 800F3E50 8C42D69C */ lw $v0, %lo(D_8010D69C)($v0) /* 8D300 800F3E50 8C42D69C */ lw $v0, %lo(gPopupMenu)($v0)
/* 8D304 800F3E54 005E1021 */ addu $v0, $v0, $fp /* 8D304 800F3E54 005E1021 */ addu $v0, $v0, $fp
/* 8D308 800F3E58 8C42018C */ lw $v0, 0x18c($v0) /* 8D308 800F3E58 8C42018C */ lw $v0, 0x18c($v0)
/* 8D30C 800F3E5C 3C108011 */ lui $s0, %hi(D_8010D668) /* 8D30C 800F3E5C 3C108011 */ lui $s0, %hi(D_8010D668)
@ -571,8 +571,8 @@ glabel popup_menu_draw_menu_contents
.L800F3E78: .L800F3E78:
/* 8D328 800F3E78 0C0511FF */ jal set_hud_element_anim /* 8D328 800F3E78 0C0511FF */ jal set_hud_element_anim
/* 8D32C 800F3E7C 0200202D */ daddu $a0, $s0, $zero /* 8D32C 800F3E7C 0200202D */ daddu $a0, $s0, $zero
/* 8D330 800F3E80 3C028011 */ lui $v0, %hi(D_8010D69C) /* 8D330 800F3E80 3C028011 */ lui $v0, %hi(gPopupMenu)
/* 8D334 800F3E84 8C42D69C */ lw $v0, %lo(D_8010D69C)($v0) /* 8D334 800F3E84 8C42D69C */ lw $v0, %lo(gPopupMenu)($v0)
/* 8D338 800F3E88 8C420318 */ lw $v0, 0x318($v0) /* 8D338 800F3E88 8C420318 */ lw $v0, 0x318($v0)
/* 8D33C 800F3E8C 240B0001 */ addiu $t3, $zero, 1 /* 8D33C 800F3E8C 240B0001 */ addiu $t3, $zero, 1
/* 8D340 800F3E90 144B0005 */ bne $v0, $t3, .L800F3EA8 /* 8D340 800F3E90 144B0005 */ bne $v0, $t3, .L800F3EA8
@ -588,8 +588,8 @@ glabel popup_menu_draw_menu_contents
.L800F3EB4: .L800F3EB4:
/* 8D364 800F3EB4 0C051261 */ jal set_hud_element_render_pos /* 8D364 800F3EB4 0C051261 */ jal set_hud_element_render_pos
/* 8D368 800F3EB8 00000000 */ nop /* 8D368 800F3EB8 00000000 */ nop
/* 8D36C 800F3EBC 3C028011 */ lui $v0, %hi(D_8010D69C) /* 8D36C 800F3EBC 3C028011 */ lui $v0, %hi(gPopupMenu)
/* 8D370 800F3EC0 8C42D69C */ lw $v0, %lo(D_8010D69C)($v0) /* 8D370 800F3EC0 8C42D69C */ lw $v0, %lo(gPopupMenu)($v0)
/* 8D374 800F3EC4 005E1021 */ addu $v0, $v0, $fp /* 8D374 800F3EC4 005E1021 */ addu $v0, $v0, $fp
/* 8D378 800F3EC8 8C420210 */ lw $v0, 0x210($v0) /* 8D378 800F3EC8 8C420210 */ lw $v0, 0x210($v0)
/* 8D37C 800F3ECC 0262102A */ slt $v0, $s3, $v0 /* 8D37C 800F3ECC 0262102A */ slt $v0, $s3, $v0
@ -643,8 +643,8 @@ glabel popup_menu_draw_menu_contents
.L800F3F78: .L800F3F78:
/* 8D428 800F3F78 26520001 */ addiu $s2, $s2, 1 /* 8D428 800F3F78 26520001 */ addiu $s2, $s2, 1
.L800F3F7C: .L800F3F7C:
/* 8D42C 800F3F7C 3C028011 */ lui $v0, %hi(D_8010D69C) /* 8D42C 800F3F7C 3C028011 */ lui $v0, %hi(gPopupMenu)
/* 8D430 800F3F80 8C42D69C */ lw $v0, %lo(D_8010D69C)($v0) /* 8D430 800F3F80 8C42D69C */ lw $v0, %lo(gPopupMenu)($v0)
/* 8D434 800F3F84 8FAB002C */ lw $t3, 0x2c($sp) /* 8D434 800F3F84 8FAB002C */ lw $t3, 0x2c($sp)
/* 8D438 800F3F88 8C420324 */ lw $v0, 0x324($v0) /* 8D438 800F3F88 8C420324 */ lw $v0, 0x324($v0)
/* 8D43C 800F3F8C 256B0004 */ addiu $t3, $t3, 4 /* 8D43C 800F3F8C 256B0004 */ addiu $t3, $t3, 4
@ -659,8 +659,8 @@ glabel popup_menu_draw_menu_contents
/* 8D45C 800F3FAC AFA00024 */ sw $zero, 0x24($sp) /* 8D45C 800F3FAC AFA00024 */ sw $zero, 0x24($sp)
/* 8D460 800F3FB0 254A0018 */ addiu $t2, $t2, 0x18 /* 8D460 800F3FB0 254A0018 */ addiu $t2, $t2, 0x18
/* 8D464 800F3FB4 01622021 */ addu $a0, $t3, $v0 /* 8D464 800F3FB4 01622021 */ addu $a0, $t3, $v0
/* 8D468 800F3FB8 3C028011 */ lui $v0, %hi(D_8010D69C) /* 8D468 800F3FB8 3C028011 */ lui $v0, %hi(gPopupMenu)
/* 8D46C 800F3FBC 8C42D69C */ lw $v0, %lo(D_8010D69C)($v0) /* 8D46C 800F3FBC 8C42D69C */ lw $v0, %lo(gPopupMenu)($v0)
/* 8D470 800F3FC0 AFAA0020 */ sw $t2, 0x20($sp) /* 8D470 800F3FC0 AFAA0020 */ sw $t2, 0x20($sp)
/* 8D474 800F3FC4 8C430318 */ lw $v1, 0x318($v0) /* 8D474 800F3FC4 8C430318 */ lw $v1, 0x318($v0)
/* 8D478 800F3FC8 24020002 */ addiu $v0, $zero, 2 /* 8D478 800F3FC8 24020002 */ addiu $v0, $zero, 2
@ -679,8 +679,8 @@ glabel popup_menu_draw_menu_contents
/* 8D4A8 800F3FF8 00400008 */ jr $v0 /* 8D4A8 800F3FF8 00400008 */ jr $v0
/* 8D4AC 800F3FFC 00000000 */ nop /* 8D4AC 800F3FFC 00000000 */ nop
.L800F4000_8D4B0: .L800F4000_8D4B0:
/* 8D4B0 800F4000 3C028011 */ lui $v0, %hi(D_8010D69C) /* 8D4B0 800F4000 3C028011 */ lui $v0, %hi(gPopupMenu)
/* 8D4B4 800F4004 8C42D69C */ lw $v0, %lo(D_8010D69C)($v0) /* 8D4B4 800F4004 8C42D69C */ lw $v0, %lo(gPopupMenu)($v0)
/* 8D4B8 800F4008 8C420324 */ lw $v0, 0x324($v0) /* 8D4B8 800F4008 8C420324 */ lw $v0, 0x324($v0)
/* 8D4BC 800F400C 184000A8 */ blez $v0, .L800F42B0 /* 8D4BC 800F400C 184000A8 */ blez $v0, .L800F42B0
/* 8D4C0 800F4010 0000902D */ daddu $s2, $zero, $zero /* 8D4C0 800F4010 0000902D */ daddu $s2, $zero, $zero
@ -704,8 +704,8 @@ glabel popup_menu_draw_menu_contents
/* 8D500 800F4050 0803D031 */ j .L800F40C4 /* 8D500 800F4050 0803D031 */ j .L800F40C4
/* 8D504 800F4054 022B8821 */ addu $s1, $s1, $t3 /* 8D504 800F4054 022B8821 */ addu $s1, $s1, $t3
.L800F4058: .L800F4058:
/* 8D508 800F4058 3C028011 */ lui $v0, %hi(D_8010D69C) /* 8D508 800F4058 3C028011 */ lui $v0, %hi(gPopupMenu)
/* 8D50C 800F405C 8C42D69C */ lw $v0, %lo(D_8010D69C)($v0) /* 8D50C 800F405C 8C42D69C */ lw $v0, %lo(gPopupMenu)($v0)
/* 8D510 800F4060 3C108011 */ lui $s0, %hi(D_8010D678) /* 8D510 800F4060 3C108011 */ lui $s0, %hi(D_8010D678)
/* 8D514 800F4064 8E10D678 */ lw $s0, %lo(D_8010D678)($s0) /* 8D514 800F4064 8E10D678 */ lw $s0, %lo(D_8010D678)($s0)
/* 8D518 800F4068 00431021 */ addu $v0, $v0, $v1 /* 8D518 800F4068 00431021 */ addu $v0, $v0, $v1
@ -732,8 +732,8 @@ glabel popup_menu_draw_menu_contents
/* 8D56C 800F40BC 8FAA0024 */ lw $t2, 0x24($sp) /* 8D56C 800F40BC 8FAA0024 */ lw $t2, 0x24($sp)
/* 8D570 800F40C0 022A8821 */ addu $s1, $s1, $t2 /* 8D570 800F40C0 022A8821 */ addu $s1, $s1, $t2
.L800F40C4: .L800F40C4:
/* 8D574 800F40C4 3C028011 */ lui $v0, %hi(D_8010D69C) /* 8D574 800F40C4 3C028011 */ lui $v0, %hi(gPopupMenu)
/* 8D578 800F40C8 8C42D69C */ lw $v0, %lo(D_8010D69C)($v0) /* 8D578 800F40C8 8C42D69C */ lw $v0, %lo(gPopupMenu)($v0)
/* 8D57C 800F40CC 8C420324 */ lw $v0, 0x324($v0) /* 8D57C 800F40CC 8C420324 */ lw $v0, 0x324($v0)
/* 8D580 800F40D0 26520001 */ addiu $s2, $s2, 1 /* 8D580 800F40D0 26520001 */ addiu $s2, $s2, 1
/* 8D584 800F40D4 0242102A */ slt $v0, $s2, $v0 /* 8D584 800F40D4 0242102A */ slt $v0, $s2, $v0
@ -742,8 +742,8 @@ glabel popup_menu_draw_menu_contents
/* 8D590 800F40E0 0803D0AC */ j .L800F42B0 /* 8D590 800F40E0 0803D0AC */ j .L800F42B0
/* 8D594 800F40E4 00000000 */ nop /* 8D594 800F40E4 00000000 */ nop
.L800F40E8_8D598: .L800F40E8_8D598:
/* 8D598 800F40E8 3C028011 */ lui $v0, %hi(D_8010D69C) /* 8D598 800F40E8 3C028011 */ lui $v0, %hi(gPopupMenu)
/* 8D59C 800F40EC 8C42D69C */ lw $v0, %lo(D_8010D69C)($v0) /* 8D59C 800F40EC 8C42D69C */ lw $v0, %lo(gPopupMenu)($v0)
/* 8D5A0 800F40F0 8C420324 */ lw $v0, 0x324($v0) /* 8D5A0 800F40F0 8C420324 */ lw $v0, 0x324($v0)
/* 8D5A4 800F40F4 1840006E */ blez $v0, .L800F42B0 /* 8D5A4 800F40F4 1840006E */ blez $v0, .L800F42B0
/* 8D5A8 800F40F8 0000902D */ daddu $s2, $zero, $zero /* 8D5A8 800F40F8 0000902D */ daddu $s2, $zero, $zero
@ -767,8 +767,8 @@ glabel popup_menu_draw_menu_contents
/* 8D5E8 800F4138 0803D06B */ j .L800F41AC /* 8D5E8 800F4138 0803D06B */ j .L800F41AC
/* 8D5EC 800F413C 022B8821 */ addu $s1, $s1, $t3 /* 8D5EC 800F413C 022B8821 */ addu $s1, $s1, $t3
.L800F4140: .L800F4140:
/* 8D5F0 800F4140 3C028011 */ lui $v0, %hi(D_8010D69C) /* 8D5F0 800F4140 3C028011 */ lui $v0, %hi(gPopupMenu)
/* 8D5F4 800F4144 8C42D69C */ lw $v0, %lo(D_8010D69C)($v0) /* 8D5F4 800F4144 8C42D69C */ lw $v0, %lo(gPopupMenu)($v0)
/* 8D5F8 800F4148 3C108011 */ lui $s0, %hi(D_8010D678) /* 8D5F8 800F4148 3C108011 */ lui $s0, %hi(D_8010D678)
/* 8D5FC 800F414C 8E10D678 */ lw $s0, %lo(D_8010D678)($s0) /* 8D5FC 800F414C 8E10D678 */ lw $s0, %lo(D_8010D678)($s0)
/* 8D600 800F4150 00431021 */ addu $v0, $v0, $v1 /* 8D600 800F4150 00431021 */ addu $v0, $v0, $v1
@ -795,8 +795,8 @@ glabel popup_menu_draw_menu_contents
/* 8D654 800F41A4 8FAA0024 */ lw $t2, 0x24($sp) /* 8D654 800F41A4 8FAA0024 */ lw $t2, 0x24($sp)
/* 8D658 800F41A8 022A8821 */ addu $s1, $s1, $t2 /* 8D658 800F41A8 022A8821 */ addu $s1, $s1, $t2
.L800F41AC: .L800F41AC:
/* 8D65C 800F41AC 3C028011 */ lui $v0, %hi(D_8010D69C) /* 8D65C 800F41AC 3C028011 */ lui $v0, %hi(gPopupMenu)
/* 8D660 800F41B0 8C42D69C */ lw $v0, %lo(D_8010D69C)($v0) /* 8D660 800F41B0 8C42D69C */ lw $v0, %lo(gPopupMenu)($v0)
/* 8D664 800F41B4 8C420324 */ lw $v0, 0x324($v0) /* 8D664 800F41B4 8C420324 */ lw $v0, 0x324($v0)
/* 8D668 800F41B8 26520001 */ addiu $s2, $s2, 1 /* 8D668 800F41B8 26520001 */ addiu $s2, $s2, 1
/* 8D66C 800F41BC 0242102A */ slt $v0, $s2, $v0 /* 8D66C 800F41BC 0242102A */ slt $v0, $s2, $v0
@ -805,8 +805,8 @@ glabel popup_menu_draw_menu_contents
/* 8D678 800F41C8 0803D0AC */ j .L800F42B0 /* 8D678 800F41C8 0803D0AC */ j .L800F42B0
/* 8D67C 800F41CC 00000000 */ nop /* 8D67C 800F41CC 00000000 */ nop
.L800F41D0_8D680: .L800F41D0_8D680:
/* 8D680 800F41D0 3C028011 */ lui $v0, %hi(D_8010D69C) /* 8D680 800F41D0 3C028011 */ lui $v0, %hi(gPopupMenu)
/* 8D684 800F41D4 8C42D69C */ lw $v0, %lo(D_8010D69C)($v0) /* 8D684 800F41D4 8C42D69C */ lw $v0, %lo(gPopupMenu)($v0)
/* 8D688 800F41D8 8C420324 */ lw $v0, 0x324($v0) /* 8D688 800F41D8 8C420324 */ lw $v0, 0x324($v0)
/* 8D68C 800F41DC 18400034 */ blez $v0, .L800F42B0 /* 8D68C 800F41DC 18400034 */ blez $v0, .L800F42B0
/* 8D690 800F41E0 0000902D */ daddu $s2, $zero, $zero /* 8D690 800F41E0 0000902D */ daddu $s2, $zero, $zero
@ -830,8 +830,8 @@ glabel popup_menu_draw_menu_contents
/* 8D6D0 800F4220 0803D0A5 */ j .L800F4294 /* 8D6D0 800F4220 0803D0A5 */ j .L800F4294
/* 8D6D4 800F4224 022B8821 */ addu $s1, $s1, $t3 /* 8D6D4 800F4224 022B8821 */ addu $s1, $s1, $t3
.L800F4228: .L800F4228:
/* 8D6D8 800F4228 3C028011 */ lui $v0, %hi(D_8010D69C) /* 8D6D8 800F4228 3C028011 */ lui $v0, %hi(gPopupMenu)
/* 8D6DC 800F422C 8C42D69C */ lw $v0, %lo(D_8010D69C)($v0) /* 8D6DC 800F422C 8C42D69C */ lw $v0, %lo(gPopupMenu)($v0)
/* 8D6E0 800F4230 3C108011 */ lui $s0, %hi(D_8010D678) /* 8D6E0 800F4230 3C108011 */ lui $s0, %hi(D_8010D678)
/* 8D6E4 800F4234 8E10D678 */ lw $s0, %lo(D_8010D678)($s0) /* 8D6E4 800F4234 8E10D678 */ lw $s0, %lo(D_8010D678)($s0)
/* 8D6E8 800F4238 00431021 */ addu $v0, $v0, $v1 /* 8D6E8 800F4238 00431021 */ addu $v0, $v0, $v1
@ -858,8 +858,8 @@ glabel popup_menu_draw_menu_contents
/* 8D73C 800F428C 8FAA0024 */ lw $t2, 0x24($sp) /* 8D73C 800F428C 8FAA0024 */ lw $t2, 0x24($sp)
/* 8D740 800F4290 022A8821 */ addu $s1, $s1, $t2 /* 8D740 800F4290 022A8821 */ addu $s1, $s1, $t2
.L800F4294: .L800F4294:
/* 8D744 800F4294 3C028011 */ lui $v0, %hi(D_8010D69C) /* 8D744 800F4294 3C028011 */ lui $v0, %hi(gPopupMenu)
/* 8D748 800F4298 8C42D69C */ lw $v0, %lo(D_8010D69C)($v0) /* 8D748 800F4298 8C42D69C */ lw $v0, %lo(gPopupMenu)($v0)
/* 8D74C 800F429C 8C420324 */ lw $v0, 0x324($v0) /* 8D74C 800F429C 8C420324 */ lw $v0, 0x324($v0)
/* 8D750 800F42A0 26520001 */ addiu $s2, $s2, 1 /* 8D750 800F42A0 26520001 */ addiu $s2, $s2, 1
/* 8D754 800F42A4 0242102A */ slt $v0, $s2, $v0 /* 8D754 800F42A4 0242102A */ slt $v0, $s2, $v0
@ -881,8 +881,8 @@ glabel popup_menu_draw_menu_contents
/* 8D790 800F42E0 00021080 */ sll $v0, $v0, 2 /* 8D790 800F42E0 00021080 */ sll $v0, $v0, 2
/* 8D794 800F42E4 00431021 */ addu $v0, $v0, $v1 /* 8D794 800F42E4 00431021 */ addu $v0, $v0, $v1
/* 8D798 800F42E8 24420009 */ addiu $v0, $v0, 9 /* 8D798 800F42E8 24420009 */ addiu $v0, $v0, 9
/* 8D79C 800F42EC 3C038011 */ lui $v1, %hi(D_8010D69C) /* 8D79C 800F42EC 3C038011 */ lui $v1, %hi(gPopupMenu)
/* 8D7A0 800F42F0 8C63D69C */ lw $v1, %lo(D_8010D69C)($v1) /* 8D7A0 800F42F0 8C63D69C */ lw $v1, %lo(gPopupMenu)($v1)
/* 8D7A4 800F42F4 01428821 */ addu $s1, $t2, $v0 /* 8D7A4 800F42F4 01428821 */ addu $s1, $t2, $v0
/* 8D7A8 800F42F8 AFAB0020 */ sw $t3, 0x20($sp) /* 8D7A8 800F42F8 AFAB0020 */ sw $t3, 0x20($sp)
/* 8D7AC 800F42FC 8C630318 */ lw $v1, 0x318($v1) /* 8D7AC 800F42FC 8C630318 */ lw $v1, 0x318($v1)
@ -912,8 +912,8 @@ glabel popup_menu_draw_menu_contents
/* 8D804 800F4354 00431021 */ addu $v0, $v0, $v1 /* 8D804 800F4354 00431021 */ addu $v0, $v0, $v1
/* 8D808 800F4358 00021080 */ sll $v0, $v0, 2 /* 8D808 800F4358 00021080 */ sll $v0, $v0, 2
/* 8D80C 800F435C 00431021 */ addu $v0, $v0, $v1 /* 8D80C 800F435C 00431021 */ addu $v0, $v0, $v1
/* 8D810 800F4360 3C038011 */ lui $v1, %hi(D_8010D69C) /* 8D810 800F4360 3C038011 */ lui $v1, %hi(gPopupMenu)
/* 8D814 800F4364 8C63D69C */ lw $v1, %lo(D_8010D69C)($v1) /* 8D814 800F4364 8C63D69C */ lw $v1, %lo(gPopupMenu)($v1)
/* 8D818 800F4368 02221021 */ addu $v0, $s1, $v0 /* 8D818 800F4368 02221021 */ addu $v0, $s1, $v0
/* 8D81C 800F436C AFAB0020 */ sw $t3, 0x20($sp) /* 8D81C 800F436C AFAB0020 */ sw $t3, 0x20($sp)
/* 8D820 800F4370 8C630318 */ lw $v1, 0x318($v1) /* 8D820 800F4370 8C630318 */ lw $v1, 0x318($v1)
@ -1003,8 +1003,8 @@ glabel popup_menu_draw_menu_contents
/* 8D964 800F44B4 00431025 */ or $v0, $v0, $v1 /* 8D964 800F44B4 00431025 */ or $v0, $v0, $v1
/* 8D968 800F44B8 ACA20004 */ sw $v0, 4($a1) /* 8D968 800F44B8 ACA20004 */ sw $v0, 4($a1)
.L800F44BC: .L800F44BC:
/* 8D96C 800F44BC 3C028011 */ lui $v0, %hi(D_8010D69C) /* 8D96C 800F44BC 3C028011 */ lui $v0, %hi(gPopupMenu)
/* 8D970 800F44C0 8C42D69C */ lw $v0, %lo(D_8010D69C)($v0) /* 8D970 800F44C0 8C42D69C */ lw $v0, %lo(gPopupMenu)($v0)
/* 8D974 800F44C4 8C420318 */ lw $v0, 0x318($v0) /* 8D974 800F44C4 8C420318 */ lw $v0, 0x318($v0)
/* 8D978 800F44C8 2443FFFF */ addiu $v1, $v0, -1 /* 8D978 800F44C8 2443FFFF */ addiu $v1, $v0, -1
/* 8D97C 800F44CC 2C62000D */ sltiu $v0, $v1, 0xd /* 8D97C 800F44CC 2C62000D */ sltiu $v0, $v1, 0xd
@ -1070,8 +1070,8 @@ glabel popup_menu_draw_menu_contents
/* 8DA40 800F4590 0C0511F8 */ jal draw_hud_element_3 /* 8DA40 800F4590 0C0511F8 */ jal draw_hud_element_3
/* 8DA44 800F4594 0200202D */ daddu $a0, $s0, $zero /* 8DA44 800F4594 0200202D */ daddu $a0, $s0, $zero
.L800F4598: .L800F4598:
/* 8DA48 800F4598 3C028011 */ lui $v0, %hi(D_8010D69C) /* 8DA48 800F4598 3C028011 */ lui $v0, %hi(gPopupMenu)
/* 8DA4C 800F459C 8C42D69C */ lw $v0, %lo(D_8010D69C)($v0) /* 8DA4C 800F459C 8C42D69C */ lw $v0, %lo(gPopupMenu)($v0)
/* 8DA50 800F45A0 3C038011 */ lui $v1, %hi(D_8010D655) /* 8DA50 800F45A0 3C038011 */ lui $v1, %hi(D_8010D655)
/* 8DA54 800F45A4 8063D655 */ lb $v1, %lo(D_8010D655)($v1) /* 8DA54 800F45A4 8063D655 */ lb $v1, %lo(D_8010D655)($v1)
/* 8DA58 800F45A8 8C420324 */ lw $v0, 0x324($v0) /* 8DA58 800F45A8 8C420324 */ lw $v0, 0x324($v0)

View File

@ -9,8 +9,8 @@ dlabel jtbl_8010C8A8
.section .text .section .text
glabel popup_menu_draw_title_contents glabel popup_menu_draw_title_contents
/* 8DAF8 800F4648 3C028011 */ lui $v0, %hi(D_8010D69C) /* 8DAF8 800F4648 3C028011 */ lui $v0, %hi(gPopupMenu)
/* 8DAFC 800F464C 8C42D69C */ lw $v0, %lo(D_8010D69C)($v0) /* 8DAFC 800F464C 8C42D69C */ lw $v0, %lo(gPopupMenu)($v0)
/* 8DB00 800F4650 27BDFFC8 */ addiu $sp, $sp, -0x38 /* 8DB00 800F4650 27BDFFC8 */ addiu $sp, $sp, -0x38
/* 8DB04 800F4654 AFBF0034 */ sw $ra, 0x34($sp) /* 8DB04 800F4654 AFBF0034 */ sw $ra, 0x34($sp)
/* 8DB08 800F4658 AFB40030 */ sw $s4, 0x30($sp) /* 8DB08 800F4658 AFB40030 */ sw $s4, 0x30($sp)
@ -29,8 +29,8 @@ glabel popup_menu_draw_title_contents
/* 8DB3C 800F468C 00400008 */ jr $v0 /* 8DB3C 800F468C 00400008 */ jr $v0
/* 8DB40 800F4690 00000000 */ nop /* 8DB40 800F4690 00000000 */ nop
.L800F4694_8DB44: .L800F4694_8DB44:
/* 8DB44 800F4694 3C138011 */ lui $s3, %hi(D_8010D69C) /* 8DB44 800F4694 3C138011 */ lui $s3, %hi(gPopupMenu)
/* 8DB48 800F4698 2673D69C */ addiu $s3, $s3, %lo(D_8010D69C) /* 8DB48 800F4698 2673D69C */ addiu $s3, $s3, %lo(gPopupMenu)
/* 8DB4C 800F469C 8E620000 */ lw $v0, ($s3) /* 8DB4C 800F469C 8E620000 */ lw $v0, ($s3)
/* 8DB50 800F46A0 8C43031C */ lw $v1, 0x31c($v0) /* 8DB50 800F46A0 8C43031C */ lw $v1, 0x31c($v0)
/* 8DB54 800F46A4 24080001 */ addiu $t0, $zero, 1 /* 8DB54 800F46A4 24080001 */ addiu $t0, $zero, 1

File diff suppressed because it is too large Load Diff

View File

@ -1,186 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel fx_11_appendGfx
/* 32F284 E0016454 27BDFF28 */ addiu $sp, $sp, -0xd8
/* 32F288 E0016458 AFB600B8 */ sw $s6, 0xb8($sp)
/* 32F28C E001645C 0080B02D */ daddu $s6, $a0, $zero
/* 32F290 E0016460 3C05DB06 */ lui $a1, 0xdb06
/* 32F294 E0016464 34A50024 */ ori $a1, $a1, 0x24
/* 32F298 E0016468 AFB300AC */ sw $s3, 0xac($sp)
/* 32F29C E001646C 0000982D */ daddu $s3, $zero, $zero
/* 32F2A0 E0016470 3C06800A */ lui $a2, %hi(gMasterGfxPos)
/* 32F2A4 E0016474 24C6A66C */ addiu $a2, $a2, %lo(gMasterGfxPos)
/* 32F2A8 E0016478 3C02E700 */ lui $v0, 0xe700
/* 32F2AC E001647C AFBF00C4 */ sw $ra, 0xc4($sp)
/* 32F2B0 E0016480 AFBE00C0 */ sw $fp, 0xc0($sp)
/* 32F2B4 E0016484 AFB700BC */ sw $s7, 0xbc($sp)
/* 32F2B8 E0016488 AFB500B4 */ sw $s5, 0xb4($sp)
/* 32F2BC E001648C AFB400B0 */ sw $s4, 0xb0($sp)
/* 32F2C0 E0016490 AFB200A8 */ sw $s2, 0xa8($sp)
/* 32F2C4 E0016494 AFB100A4 */ sw $s1, 0xa4($sp)
/* 32F2C8 E0016498 AFB000A0 */ sw $s0, 0xa0($sp)
/* 32F2CC E001649C F7B600D0 */ sdc1 $f22, 0xd0($sp)
/* 32F2D0 E00164A0 F7B400C8 */ sdc1 $f20, 0xc8($sp)
/* 32F2D4 E00164A4 8CC30000 */ lw $v1, ($a2)
/* 32F2D8 E00164A8 8ED2000C */ lw $s2, 0xc($s6)
/* 32F2DC E00164AC 0060202D */ daddu $a0, $v1, $zero
/* 32F2E0 E00164B0 24630008 */ addiu $v1, $v1, 8
/* 32F2E4 E00164B4 ACC30000 */ sw $v1, ($a2)
/* 32F2E8 E00164B8 AC820000 */ sw $v0, ($a0)
/* 32F2EC E00164BC AC800004 */ sw $zero, 4($a0)
/* 32F2F0 E00164C0 AC650000 */ sw $a1, ($v1)
/* 32F2F4 E00164C4 8EC40010 */ lw $a0, 0x10($s6)
/* 32F2F8 E00164C8 24620008 */ addiu $v0, $v1, 8
/* 32F2FC E00164CC ACC20000 */ sw $v0, ($a2)
/* 32F300 E00164D0 8C84001C */ lw $a0, 0x1c($a0)
/* 32F304 E00164D4 3C02DE00 */ lui $v0, 0xde00
/* 32F308 E00164D8 AC620008 */ sw $v0, 8($v1)
/* 32F30C E00164DC 3C020900 */ lui $v0, 0x900
/* 32F310 E00164E0 244200E0 */ addiu $v0, $v0, 0xe0
/* 32F314 E00164E4 AC62000C */ sw $v0, 0xc($v1)
/* 32F318 E00164E8 3C028000 */ lui $v0, 0x8000
/* 32F31C E00164EC 00822021 */ addu $a0, $a0, $v0
/* 32F320 E00164F0 AC640004 */ sw $a0, 4($v1)
/* 32F324 E00164F4 8EC20008 */ lw $v0, 8($s6)
/* 32F328 E00164F8 24630010 */ addiu $v1, $v1, 0x10
/* 32F32C E00164FC 18400070 */ blez $v0, .LE00166C0
/* 32F330 E0016500 ACC30000 */ sw $v1, ($a2)
/* 32F334 E0016504 27B10060 */ addiu $s1, $sp, 0x60
/* 32F338 E0016508 3C1E800A */ lui $fp, %hi(gDisplayContext)
/* 32F33C E001650C 27DEA674 */ addiu $fp, $fp, %lo(gDisplayContext)
/* 32F340 E0016510 3C178007 */ lui $s7, %hi(gMatrixListPos)
/* 32F344 E0016514 26F741F0 */ addiu $s7, $s7, %lo(gMatrixListPos)
/* 32F348 E0016518 3C150001 */ lui $s5, 1
/* 32F34C E001651C 36B51630 */ ori $s5, $s5, 0x1630
/* 32F350 E0016520 00C0A02D */ daddu $s4, $a2, $zero
/* 32F354 E0016524 26500008 */ addiu $s0, $s2, 8
/* 32F358 E0016528 4480A000 */ mtc1 $zero, $f20
/* 32F35C E001652C 3C013F80 */ lui $at, 0x3f80
/* 32F360 E0016530 4481B000 */ mtc1 $at, $f22
.LE0016534:
/* 32F364 E0016534 8E420000 */ lw $v0, ($s2)
/* 32F368 E0016538 5040005C */ beql $v0, $zero, .LE00166AC
/* 32F36C E001653C 26730001 */ addiu $s3, $s3, 1
/* 32F370 E0016540 3C09800B */ lui $t1, %hi(gCameras)
/* 32F374 E0016544 25291D80 */ addiu $t1, $t1, %lo(gCameras)
/* 32F378 E0016548 4405A000 */ mfc1 $a1, $f20
/* 32F37C E001654C 3C038007 */ lui $v1, %hi(gCurrentCameraID)
/* 32F380 E0016550 8C637410 */ lw $v1, %lo(gCurrentCameraID)($v1)
/* 32F384 E0016554 4407A000 */ mfc1 $a3, $f20
/* 32F388 E0016558 00031080 */ sll $v0, $v1, 2
/* 32F38C E001655C 00431021 */ addu $v0, $v0, $v1
/* 32F390 E0016560 00021080 */ sll $v0, $v0, 2
/* 32F394 E0016564 00431023 */ subu $v0, $v0, $v1
/* 32F398 E0016568 000218C0 */ sll $v1, $v0, 3
/* 32F39C E001656C 00431021 */ addu $v0, $v0, $v1
/* 32F3A0 E0016570 000210C0 */ sll $v0, $v0, 3
/* 32F3A4 E0016574 00491021 */ addu $v0, $v0, $t1
/* 32F3A8 E0016578 C442006C */ lwc1 $f2, 0x6c($v0)
/* 32F3AC E001657C E7B60010 */ swc1 $f22, 0x10($sp)
/* 32F3B0 E0016580 C6000004 */ lwc1 $f0, 4($s0)
/* 32F3B4 E0016584 46001087 */ neg.s $f2, $f2
/* 32F3B8 E0016588 E7A00014 */ swc1 $f0, 0x14($sp)
/* 32F3BC E001658C C6000008 */ lwc1 $f0, 8($s0)
/* 32F3C0 E0016590 44061000 */ mfc1 $a2, $f2
/* 32F3C4 E0016594 E7A00018 */ swc1 $f0, 0x18($sp)
/* 32F3C8 E0016598 C600000C */ lwc1 $f0, 0xc($s0)
/* 32F3CC E001659C 27A40020 */ addiu $a0, $sp, 0x20
/* 32F3D0 E00165A0 0C080180 */ jal shim_guPositionF
/* 32F3D4 E00165A4 E7A0001C */ swc1 $f0, 0x1c($sp)
/* 32F3D8 E00165A8 8E050014 */ lw $a1, 0x14($s0)
/* 32F3DC E00165AC 8E060018 */ lw $a2, 0x18($s0)
/* 32F3E0 E00165B0 8E07001C */ lw $a3, 0x1c($s0)
/* 32F3E4 E00165B4 0C080110 */ jal shim_guScaleF
/* 32F3E8 E00165B8 0220202D */ daddu $a0, $s1, $zero
/* 32F3EC E00165BC 0220202D */ daddu $a0, $s1, $zero
/* 32F3F0 E00165C0 27A50020 */ addiu $a1, $sp, 0x20
/* 32F3F4 E00165C4 0C080114 */ jal shim_guMtxCatF
/* 32F3F8 E00165C8 00A0302D */ daddu $a2, $a1, $zero
/* 32F3FC E00165CC E7B60010 */ swc1 $f22, 0x10($sp)
/* 32F400 E00165D0 8E050010 */ lw $a1, 0x10($s0)
/* 32F404 E00165D4 4406A000 */ mfc1 $a2, $f20
/* 32F408 E00165D8 4407A000 */ mfc1 $a3, $f20
/* 32F40C E00165DC 0C080104 */ jal shim_guRotateF
/* 32F410 E00165E0 0220202D */ daddu $a0, $s1, $zero
/* 32F414 E00165E4 0220202D */ daddu $a0, $s1, $zero
/* 32F418 E00165E8 27A50020 */ addiu $a1, $sp, 0x20
/* 32F41C E00165EC 0C080114 */ jal shim_guMtxCatF
/* 32F420 E00165F0 00A0302D */ daddu $a2, $a1, $zero
/* 32F424 E00165F4 27A40020 */ addiu $a0, $sp, 0x20
/* 32F428 E00165F8 96E50000 */ lhu $a1, ($s7)
/* 32F42C E00165FC 8FC20000 */ lw $v0, ($fp)
/* 32F430 E0016600 00052980 */ sll $a1, $a1, 6
/* 32F434 E0016604 00B52821 */ addu $a1, $a1, $s5
/* 32F438 E0016608 0C080118 */ jal shim_guMtxF2L
/* 32F43C E001660C 00452821 */ addu $a1, $v0, $a1
/* 32F440 E0016610 3C077060 */ lui $a3, 0x7060
/* 32F444 E0016614 34E71800 */ ori $a3, $a3, 0x1800
/* 32F448 E0016618 3C08D838 */ lui $t0, 0xd838
/* 32F44C E001661C 35080002 */ ori $t0, $t0, 2
/* 32F450 E0016620 8E840000 */ lw $a0, ($s4)
/* 32F454 E0016624 3C02FA00 */ lui $v0, 0xfa00
/* 32F458 E0016628 0080302D */ daddu $a2, $a0, $zero
/* 32F45C E001662C 24840008 */ addiu $a0, $a0, 8
/* 32F460 E0016630 AE840000 */ sw $a0, ($s4)
/* 32F464 E0016634 ACC20000 */ sw $v0, ($a2)
/* 32F468 E0016638 92050000 */ lbu $a1, ($s0)
/* 32F46C E001663C 96E30000 */ lhu $v1, ($s7)
/* 32F470 E0016640 24820008 */ addiu $v0, $a0, 8
/* 32F474 E0016644 AE820000 */ sw $v0, ($s4)
/* 32F478 E0016648 24620001 */ addiu $v0, $v1, 1
/* 32F47C E001664C A6E20000 */ sh $v0, ($s7)
/* 32F480 E0016650 24820010 */ addiu $v0, $a0, 0x10
/* 32F484 E0016654 AE820000 */ sw $v0, ($s4)
/* 32F488 E0016658 24820018 */ addiu $v0, $a0, 0x18
/* 32F48C E001665C 00A72825 */ or $a1, $a1, $a3
/* 32F490 E0016660 AE820000 */ sw $v0, ($s4)
/* 32F494 E0016664 3C02DA38 */ lui $v0, 0xda38
/* 32F498 E0016668 3063FFFF */ andi $v1, $v1, 0xffff
/* 32F49C E001666C 00031980 */ sll $v1, $v1, 6
/* 32F4A0 E0016670 ACC50004 */ sw $a1, 4($a2)
/* 32F4A4 E0016674 AC820000 */ sw $v0, ($a0)
/* 32F4A8 E0016678 8FC20000 */ lw $v0, ($fp)
/* 32F4AC E001667C 00751821 */ addu $v1, $v1, $s5
/* 32F4B0 E0016680 AC880010 */ sw $t0, 0x10($a0)
/* 32F4B4 E0016684 00431021 */ addu $v0, $v0, $v1
/* 32F4B8 E0016688 AC820004 */ sw $v0, 4($a0)
/* 32F4BC E001668C 3C02DE00 */ lui $v0, 0xde00
/* 32F4C0 E0016690 AC820008 */ sw $v0, 8($a0)
/* 32F4C4 E0016694 3C020900 */ lui $v0, 0x900
/* 32F4C8 E0016698 244201B8 */ addiu $v0, $v0, 0x1b8
/* 32F4CC E001669C AC82000C */ sw $v0, 0xc($a0)
/* 32F4D0 E00166A0 24020040 */ addiu $v0, $zero, 0x40
/* 32F4D4 E00166A4 AC820014 */ sw $v0, 0x14($a0)
/* 32F4D8 E00166A8 26730001 */ addiu $s3, $s3, 1
.LE00166AC:
/* 32F4DC E00166AC 26100050 */ addiu $s0, $s0, 0x50
/* 32F4E0 E00166B0 8EC20008 */ lw $v0, 8($s6)
/* 32F4E4 E00166B4 0262102A */ slt $v0, $s3, $v0
/* 32F4E8 E00166B8 1440FF9E */ bnez $v0, .LE0016534
/* 32F4EC E00166BC 26520050 */ addiu $s2, $s2, 0x50
.LE00166C0:
/* 32F4F0 E00166C0 3C03800A */ lui $v1, %hi(gMasterGfxPos)
/* 32F4F4 E00166C4 2463A66C */ addiu $v1, $v1, %lo(gMasterGfxPos)
/* 32F4F8 E00166C8 8C620000 */ lw $v0, ($v1)
/* 32F4FC E00166CC 0040202D */ daddu $a0, $v0, $zero
/* 32F500 E00166D0 24420008 */ addiu $v0, $v0, 8
/* 32F504 E00166D4 AC620000 */ sw $v0, ($v1)
/* 32F508 E00166D8 3C02E700 */ lui $v0, 0xe700
/* 32F50C E00166DC AC820000 */ sw $v0, ($a0)
/* 32F510 E00166E0 AC800004 */ sw $zero, 4($a0)
/* 32F514 E00166E4 8FBF00C4 */ lw $ra, 0xc4($sp)
/* 32F518 E00166E8 8FBE00C0 */ lw $fp, 0xc0($sp)
/* 32F51C E00166EC 8FB700BC */ lw $s7, 0xbc($sp)
/* 32F520 E00166F0 8FB600B8 */ lw $s6, 0xb8($sp)
/* 32F524 E00166F4 8FB500B4 */ lw $s5, 0xb4($sp)
/* 32F528 E00166F8 8FB400B0 */ lw $s4, 0xb0($sp)
/* 32F52C E00166FC 8FB300AC */ lw $s3, 0xac($sp)
/* 32F530 E0016700 8FB200A8 */ lw $s2, 0xa8($sp)
/* 32F534 E0016704 8FB100A4 */ lw $s1, 0xa4($sp)
/* 32F538 E0016708 8FB000A0 */ lw $s0, 0xa0($sp)
/* 32F53C E001670C D7B600D0 */ ldc1 $f22, 0xd0($sp)
/* 32F540 E0016710 D7B400C8 */ ldc1 $f20, 0xc8($sp)
/* 32F544 E0016714 03E00008 */ jr $ra
/* 32F548 E0016718 27BD00D8 */ addiu $sp, $sp, 0xd8
/* 32F54C E001671C 00000000 */ nop

View File

@ -1,144 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel fx_11_main
/* 32EE30 E0016000 27BDFF90 */ addiu $sp, $sp, -0x70
/* 32EE34 E0016004 F7B80058 */ sdc1 $f24, 0x58($sp)
/* 32EE38 E0016008 4485C000 */ mtc1 $a1, $f24
/* 32EE3C E001600C AFB5003C */ sw $s5, 0x3c($sp)
/* 32EE40 E0016010 0080A82D */ daddu $s5, $a0, $zero
/* 32EE44 E0016014 F7BA0060 */ sdc1 $f26, 0x60($sp)
/* 32EE48 E0016018 4486D000 */ mtc1 $a2, $f26
/* 32EE4C E001601C 27A40010 */ addiu $a0, $sp, 0x10
/* 32EE50 E0016020 F7BC0068 */ sdc1 $f28, 0x68($sp)
/* 32EE54 E0016024 4487E000 */ mtc1 $a3, $f28
/* 32EE58 E0016028 3C02E001 */ lui $v0, %hi(fx_11_init)
/* 32EE5C E001602C 24426220 */ addiu $v0, $v0, %lo(fx_11_init)
/* 32EE60 E0016030 AFA20018 */ sw $v0, 0x18($sp)
/* 32EE64 E0016034 3C02E001 */ lui $v0, %hi(fx_11_update)
/* 32EE68 E0016038 24426228 */ addiu $v0, $v0, %lo(fx_11_update)
/* 32EE6C E001603C AFA2001C */ sw $v0, 0x1c($sp)
/* 32EE70 E0016040 3C02E001 */ lui $v0, %hi(fx_11_render)
/* 32EE74 E0016044 24426410 */ addiu $v0, $v0, %lo(fx_11_render)
/* 32EE78 E0016048 AFA20020 */ sw $v0, 0x20($sp)
/* 32EE7C E001604C 2402000B */ addiu $v0, $zero, 0xb
/* 32EE80 E0016050 AFBF0044 */ sw $ra, 0x44($sp)
/* 32EE84 E0016054 AFB60040 */ sw $s6, 0x40($sp)
/* 32EE88 E0016058 AFB40038 */ sw $s4, 0x38($sp)
/* 32EE8C E001605C AFB30034 */ sw $s3, 0x34($sp)
/* 32EE90 E0016060 AFB20030 */ sw $s2, 0x30($sp)
/* 32EE94 E0016064 AFB1002C */ sw $s1, 0x2c($sp)
/* 32EE98 E0016068 AFB00028 */ sw $s0, 0x28($sp)
/* 32EE9C E001606C F7B60050 */ sdc1 $f22, 0x50($sp)
/* 32EEA0 E0016070 F7B40048 */ sdc1 $f20, 0x48($sp)
/* 32EEA4 E0016074 AFA00010 */ sw $zero, 0x10($sp)
/* 32EEA8 E0016078 AFA00024 */ sw $zero, 0x24($sp)
/* 32EEAC E001607C 0C080124 */ jal shim_create_effect_instance
/* 32EEB0 E0016080 AFA20014 */ sw $v0, 0x14($sp)
/* 32EEB4 E0016084 24040050 */ addiu $a0, $zero, 0x50
/* 32EEB8 E0016088 24130001 */ addiu $s3, $zero, 1
/* 32EEBC E001608C 0040802D */ daddu $s0, $v0, $zero
/* 32EEC0 E0016090 0C08012C */ jal shim_general_heap_malloc
/* 32EEC4 E0016094 AE130008 */ sw $s3, 8($s0)
/* 32EEC8 E0016098 0040882D */ daddu $s1, $v0, $zero
/* 32EECC E001609C 16200003 */ bnez $s1, .LE00160AC
/* 32EED0 E00160A0 AE11000C */ sw $s1, 0xc($s0)
.LE00160A4:
/* 32EED4 E00160A4 08005829 */ j .LE00160A4
/* 32EED8 E00160A8 00000000 */ nop
.LE00160AC:
/* 32EEDC E00160AC 0220202D */ daddu $a0, $s1, $zero
/* 32EEE0 E00160B0 00132880 */ sll $a1, $s3, 2
/* 32EEE4 E00160B4 00B32821 */ addu $a1, $a1, $s3
/* 32EEE8 E00160B8 0C080130 */ jal shim_mem_clear
/* 32EEEC E00160BC 00052900 */ sll $a1, $a1, 4
/* 32EEF0 E00160C0 0000902D */ daddu $s2, $zero, $zero
/* 32EEF4 E00160C4 0253102A */ slt $v0, $s2, $s3
/* 32EEF8 E00160C8 10400046 */ beqz $v0, .LE00161E4
/* 32EEFC E00160CC 24160001 */ addiu $s6, $zero, 1
/* 32EF00 E00160D0 241400FF */ addiu $s4, $zero, 0xff
/* 32EF04 E00160D4 26300008 */ addiu $s0, $s1, 8
/* 32EF08 E00160D8 3C013F80 */ lui $at, 0x3f80
/* 32EF0C E00160DC 4481B000 */ mtc1 $at, $f22
/* 32EF10 E00160E0 3C01E001 */ lui $at, %hi(D_E0016720)
/* 32EF14 E00160E4 D4346720 */ ldc1 $f20, %lo(D_E0016720)($at)
.LE00160E8:
/* 32EF18 E00160E8 2404000A */ addiu $a0, $zero, 0xa
/* 32EF1C E00160EC AE360000 */ sw $s6, ($s1)
/* 32EF20 E00160F0 A615FFFC */ sh $s5, -4($s0)
/* 32EF24 E00160F4 AE000038 */ sw $zero, 0x38($s0)
/* 32EF28 E00160F8 AE00003C */ sw $zero, 0x3c($s0)
/* 32EF2C E00160FC E6180004 */ swc1 $f24, 4($s0)
/* 32EF30 E0016100 E61A0008 */ swc1 $f26, 8($s0)
/* 32EF34 E0016104 E61C000C */ swc1 $f28, 0xc($s0)
/* 32EF38 E0016108 E6160014 */ swc1 $f22, 0x14($s0)
/* 32EF3C E001610C E6160018 */ swc1 $f22, 0x18($s0)
/* 32EF40 E0016110 E616001C */ swc1 $f22, 0x1c($s0)
/* 32EF44 E0016114 0C080138 */ jal shim_rand_int
/* 32EF48 E0016118 A2140000 */ sb $s4, ($s0)
/* 32EF4C E001611C 44820000 */ mtc1 $v0, $f0
/* 32EF50 E0016120 00000000 */ nop
/* 32EF54 E0016124 46800021 */ cvt.d.w $f0, $f0
/* 32EF58 E0016128 46340002 */ mul.d $f0, $f0, $f20
/* 32EF5C E001612C 00000000 */ nop
/* 32EF60 E0016130 3C01E001 */ lui $at, %hi(D_E0016728)
/* 32EF64 E0016134 D4226728 */ ldc1 $f2, %lo(D_E0016728)($at)
/* 32EF68 E0016138 46220000 */ add.d $f0, $f0, $f2
/* 32EF6C E001613C 2404000A */ addiu $a0, $zero, 0xa
/* 32EF70 E0016140 46200020 */ cvt.s.d $f0, $f0
/* 32EF74 E0016144 0C080138 */ jal shim_rand_int
/* 32EF78 E0016148 E6000020 */ swc1 $f0, 0x20($s0)
/* 32EF7C E001614C 44820000 */ mtc1 $v0, $f0
/* 32EF80 E0016150 00000000 */ nop
/* 32EF84 E0016154 46800021 */ cvt.d.w $f0, $f0
/* 32EF88 E0016158 46340002 */ mul.d $f0, $f0, $f20
/* 32EF8C E001615C 00000000 */ nop
/* 32EF90 E0016160 3C013FF8 */ lui $at, 0x3ff8
/* 32EF94 E0016164 44811800 */ mtc1 $at, $f3
/* 32EF98 E0016168 44801000 */ mtc1 $zero, $f2
/* 32EF9C E001616C 26520001 */ addiu $s2, $s2, 1
/* 32EFA0 E0016170 46220000 */ add.d $f0, $f0, $f2
/* 32EFA4 E0016174 26310050 */ addiu $s1, $s1, 0x50
/* 32EFA8 E0016178 2404003C */ addiu $a0, $zero, 0x3c
/* 32EFAC E001617C 46200020 */ cvt.s.d $f0, $f0
/* 32EFB0 E0016180 0C080000 */ jal func_E0200000
/* 32EFB4 E0016184 E6000024 */ swc1 $f0, 0x24($s0)
/* 32EFB8 E0016188 24040168 */ addiu $a0, $zero, 0x168
/* 32EFBC E001618C 44820000 */ mtc1 $v0, $f0
/* 32EFC0 E0016190 00000000 */ nop
/* 32EFC4 E0016194 46800020 */ cvt.s.w $f0, $f0
/* 32EFC8 E0016198 E6000028 */ swc1 $f0, 0x28($s0)
/* 32EFCC E001619C 3C014000 */ lui $at, 0x4000
/* 32EFD0 E00161A0 44810000 */ mtc1 $at, $f0
/* 32EFD4 E00161A4 3C01BF00 */ lui $at, 0xbf00
/* 32EFD8 E00161A8 44811000 */ mtc1 $at, $f2
/* 32EFDC E00161AC 2402000F */ addiu $v0, $zero, 0xf
/* 32EFE0 E00161B0 A615FFFC */ sh $s5, -4($s0)
/* 32EFE4 E00161B4 A602FFFE */ sh $v0, -2($s0)
/* 32EFE8 E00161B8 E6000030 */ swc1 $f0, 0x30($s0)
/* 32EFEC E00161BC 0C080000 */ jal func_E0200000
/* 32EFF0 E00161C0 E6020034 */ swc1 $f2, 0x34($s0)
/* 32EFF4 E00161C4 44820000 */ mtc1 $v0, $f0
/* 32EFF8 E00161C8 00000000 */ nop
/* 32EFFC E00161CC 46800020 */ cvt.s.w $f0, $f0
/* 32F000 E00161D0 E6000010 */ swc1 $f0, 0x10($s0)
/* 32F004 E00161D4 A2140000 */ sb $s4, ($s0)
/* 32F008 E00161D8 0253102A */ slt $v0, $s2, $s3
/* 32F00C E00161DC 1440FFC2 */ bnez $v0, .LE00160E8
/* 32F010 E00161E0 26100050 */ addiu $s0, $s0, 0x50
.LE00161E4:
/* 32F014 E00161E4 8FBF0044 */ lw $ra, 0x44($sp)
/* 32F018 E00161E8 8FB60040 */ lw $s6, 0x40($sp)
/* 32F01C E00161EC 8FB5003C */ lw $s5, 0x3c($sp)
/* 32F020 E00161F0 8FB40038 */ lw $s4, 0x38($sp)
/* 32F024 E00161F4 8FB30034 */ lw $s3, 0x34($sp)
/* 32F028 E00161F8 8FB20030 */ lw $s2, 0x30($sp)
/* 32F02C E00161FC 8FB1002C */ lw $s1, 0x2c($sp)
/* 32F030 E0016200 8FB00028 */ lw $s0, 0x28($sp)
/* 32F034 E0016204 D7BC0068 */ ldc1 $f28, 0x68($sp)
/* 32F038 E0016208 D7BA0060 */ ldc1 $f26, 0x60($sp)
/* 32F03C E001620C D7B80058 */ ldc1 $f24, 0x58($sp)
/* 32F040 E0016210 D7B60050 */ ldc1 $f22, 0x50($sp)
/* 32F044 E0016214 D7B40048 */ ldc1 $f20, 0x48($sp)
/* 32F048 E0016218 03E00008 */ jr $ra
/* 32F04C E001621C 27BD0070 */ addiu $sp, $sp, 0x70

View File

@ -1,133 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel fx_11_update
/* 32F058 E0016228 27BDFFC8 */ addiu $sp, $sp, -0x38
/* 32F05C E001622C AFB40020 */ sw $s4, 0x20($sp)
/* 32F060 E0016230 0080A02D */ daddu $s4, $a0, $zero
/* 32F064 E0016234 AFB20018 */ sw $s2, 0x18($sp)
/* 32F068 E0016238 0000902D */ daddu $s2, $zero, $zero
/* 32F06C E001623C AFB3001C */ sw $s3, 0x1c($sp)
/* 32F070 E0016240 AFBF0024 */ sw $ra, 0x24($sp)
/* 32F074 E0016244 AFB10014 */ sw $s1, 0x14($sp)
/* 32F078 E0016248 AFB00010 */ sw $s0, 0x10($sp)
/* 32F07C E001624C F7B60030 */ sdc1 $f22, 0x30($sp)
/* 32F080 E0016250 F7B40028 */ sdc1 $f20, 0x28($sp)
/* 32F084 E0016254 8E820008 */ lw $v0, 8($s4)
/* 32F088 E0016258 8E91000C */ lw $s1, 0xc($s4)
/* 32F08C E001625C 1840005E */ blez $v0, .LE00163D8
/* 32F090 E0016260 0240982D */ daddu $s3, $s2, $zero
/* 32F094 E0016264 26300038 */ addiu $s0, $s1, 0x38
/* 32F098 E0016268 3C01E001 */ lui $at, %hi(D_E0016730)
/* 32F09C E001626C D4346730 */ ldc1 $f20, %lo(D_E0016730)($at)
/* 32F0A0 E0016270 4480B000 */ mtc1 $zero, $f22
.LE0016274:
/* 32F0A4 E0016274 8E220000 */ lw $v0, ($s1)
/* 32F0A8 E0016278 50400052 */ beql $v0, $zero, .LE00163C4
/* 32F0AC E001627C 26520001 */ addiu $s2, $s2, 1
/* 32F0B0 E0016280 9602FFCE */ lhu $v0, -0x32($s0)
/* 32F0B4 E0016284 2442FFFF */ addiu $v0, $v0, -1
/* 32F0B8 E0016288 A602FFCE */ sh $v0, -0x32($s0)
/* 32F0BC E001628C 00021400 */ sll $v0, $v0, 0x10
/* 32F0C0 E0016290 1C400003 */ bgtz $v0, .LE00162A0
/* 32F0C4 E0016294 00000000 */ nop
/* 32F0C8 E0016298 080058F0 */ j .LE00163C0
/* 32F0CC E001629C AE200000 */ sw $zero, ($s1)
.LE00162A0:
/* 32F0D0 E00162A0 C600FFF8 */ lwc1 $f0, -8($s0)
/* 32F0D4 E00162A4 3C014140 */ lui $at, 0x4140
/* 32F0D8 E00162A8 44816000 */ mtc1 $at, $f12
/* 32F0DC E00162AC 0C08013C */ jal shim_clamp_angle
/* 32F0E0 E00162B0 460C0300 */ add.s $f12, $f0, $f12
/* 32F0E4 E00162B4 46000306 */ mov.s $f12, $f0
/* 32F0E8 E00162B8 0C080140 */ jal shim_sin_deg
/* 32F0EC E00162BC E60CFFF8 */ swc1 $f12, -8($s0)
/* 32F0F0 E00162C0 46000021 */ cvt.d.s $f0, $f0
/* 32F0F4 E00162C4 46340002 */ mul.d $f0, $f0, $f20
/* 32F0F8 E00162C8 00000000 */ nop
/* 32F0FC E00162CC C602FFF0 */ lwc1 $f2, -0x10($s0)
/* 32F100 E00162D0 460010A1 */ cvt.d.s $f2, $f2
/* 32F104 E00162D4 46201080 */ add.d $f2, $f2, $f0
/* 32F108 E00162D8 C60CFFF8 */ lwc1 $f12, -8($s0)
/* 32F10C E00162DC 462010A0 */ cvt.s.d $f2, $f2
/* 32F110 E00162E0 0C080144 */ jal shim_cos_deg
/* 32F114 E00162E4 E602FFE4 */ swc1 $f2, -0x1c($s0)
/* 32F118 E00162E8 46000021 */ cvt.d.s $f0, $f0
/* 32F11C E00162EC 46340002 */ mul.d $f0, $f0, $f20
/* 32F120 E00162F0 00000000 */ nop
/* 32F124 E00162F4 C602FFF4 */ lwc1 $f2, -0xc($s0)
/* 32F128 E00162F8 460010A1 */ cvt.d.s $f2, $f2
/* 32F12C E00162FC 46201080 */ add.d $f2, $f2, $f0
/* 32F130 E0016300 24130001 */ addiu $s3, $zero, 1
/* 32F134 E0016304 9602FFCC */ lhu $v0, -0x34($s0)
/* 32F138 E0016308 462010A0 */ cvt.s.d $f2, $f2
/* 32F13C E001630C 1440000B */ bnez $v0, .LE001633C
/* 32F140 E0016310 E602FFE8 */ swc1 $f2, -0x18($s0)
/* 32F144 E0016314 24030005 */ addiu $v1, $zero, 5
/* 32F148 E0016318 8602FFCE */ lh $v0, -0x32($s0)
/* 32F14C E001631C 14430007 */ bne $v0, $v1, .LE001633C
/* 32F150 E0016320 9604FFCE */ lhu $a0, -0x32($s0)
/* 32F154 E0016324 3C028011 */ lui $v0, %hi(gPlayerActionState)
/* 32F158 E0016328 8042F07C */ lb $v0, %lo(gPlayerActionState)($v0)
/* 32F15C E001632C 14400003 */ bnez $v0, .LE001633C
/* 32F160 E0016330 00931021 */ addu $v0, $a0, $s3
/* 32F164 E0016334 080058FA */ j .LE00163E8
/* 32F168 E0016338 A602FFCE */ sh $v0, -0x32($s0)
.LE001633C:
/* 32F16C E001633C C604FFF4 */ lwc1 $f4, -0xc($s0)
/* 32F170 E0016340 3C01E001 */ lui $at, %hi(D_E0016738)
/* 32F174 E0016344 D4206738 */ ldc1 $f0, %lo(D_E0016738)($at)
/* 32F178 E0016348 46002121 */ cvt.d.s $f4, $f4
/* 32F17C E001634C 46202102 */ mul.d $f4, $f4, $f0
/* 32F180 E0016350 00000000 */ nop
/* 32F184 E0016354 9202FFD0 */ lbu $v0, -0x30($s0)
/* 32F188 E0016358 C6080004 */ lwc1 $f8, 4($s0)
/* 32F18C E001635C C6020008 */ lwc1 $f2, 8($s0)
/* 32F190 E0016360 C6060000 */ lwc1 $f6, ($s0)
/* 32F194 E0016364 2442FFF1 */ addiu $v0, $v0, -0xf
/* 32F198 E0016368 46024200 */ add.s $f8, $f8, $f2
/* 32F19C E001636C C600FFF0 */ lwc1 $f0, -0x10($s0)
/* 32F1A0 E0016370 3C01E001 */ lui $at, %hi(D_E0016740)
/* 32F1A4 E0016374 D4226740 */ ldc1 $f2, %lo(D_E0016740)($at)
/* 32F1A8 E0016378 46000021 */ cvt.d.s $f0, $f0
/* 32F1AC E001637C 46220000 */ add.d $f0, $f0, $f2
/* 32F1B0 E0016380 A202FFD0 */ sb $v0, -0x30($s0)
/* 32F1B4 E0016384 C602FFD8 */ lwc1 $f2, -0x28($s0)
/* 32F1B8 E0016388 46083180 */ add.s $f6, $f6, $f8
/* 32F1BC E001638C E6080004 */ swc1 $f8, 4($s0)
/* 32F1C0 E0016390 46200020 */ cvt.s.d $f0, $f0
/* 32F1C4 E0016394 E600FFF0 */ swc1 $f0, -0x10($s0)
/* 32F1C8 E0016398 46061080 */ add.s $f2, $f2, $f6
/* 32F1CC E001639C E6060000 */ swc1 $f6, ($s0)
/* 32F1D0 E00163A0 46003006 */ mov.s $f0, $f6
/* 32F1D4 E00163A4 4616003C */ c.lt.s $f0, $f22
/* 32F1D8 E00163A8 E602FFD8 */ swc1 $f2, -0x28($s0)
/* 32F1DC E00163AC 46202120 */ cvt.s.d $f4, $f4
/* 32F1E0 E00163B0 45000003 */ bc1f .LE00163C0
/* 32F1E4 E00163B4 E604FFF4 */ swc1 $f4, -0xc($s0)
/* 32F1E8 E00163B8 E6160004 */ swc1 $f22, 4($s0)
/* 32F1EC E00163BC E6160000 */ swc1 $f22, ($s0)
.LE00163C0:
/* 32F1F0 E00163C0 26520001 */ addiu $s2, $s2, 1
.LE00163C4:
/* 32F1F4 E00163C4 26100050 */ addiu $s0, $s0, 0x50
/* 32F1F8 E00163C8 8E820008 */ lw $v0, 8($s4)
/* 32F1FC E00163CC 0242102A */ slt $v0, $s2, $v0
/* 32F200 E00163D0 1440FFA8 */ bnez $v0, .LE0016274
/* 32F204 E00163D4 26310050 */ addiu $s1, $s1, 0x50
.LE00163D8:
/* 32F208 E00163D8 16600003 */ bnez $s3, .LE00163E8
/* 32F20C E00163DC 00000000 */ nop
/* 32F210 E00163E0 0C080128 */ jal shim_remove_effect
/* 32F214 E00163E4 0280202D */ daddu $a0, $s4, $zero
.LE00163E8:
/* 32F218 E00163E8 8FBF0024 */ lw $ra, 0x24($sp)
/* 32F21C E00163EC 8FB40020 */ lw $s4, 0x20($sp)
/* 32F220 E00163F0 8FB3001C */ lw $s3, 0x1c($sp)
/* 32F224 E00163F4 8FB20018 */ lw $s2, 0x18($sp)
/* 32F228 E00163F8 8FB10014 */ lw $s1, 0x14($sp)
/* 32F22C E00163FC 8FB00010 */ lw $s0, 0x10($sp)
/* 32F230 E0016400 D7B60030 */ ldc1 $f22, 0x30($sp)
/* 32F234 E0016404 D7B40028 */ ldc1 $f20, 0x28($sp)
/* 32F238 E0016408 03E00008 */ jr $ra
/* 32F23C E001640C 27BD0038 */ addiu $sp, $sp, 0x38

View File

@ -1,34 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_E0018000
/* 32F580 E0018000 27BDFF58 */ addiu $sp, $sp, -0xa8
/* 32F584 E0018004 AFB00098 */ sw $s0, 0x98($sp)
/* 32F588 E0018008 0080802D */ daddu $s0, $a0, $zero
/* 32F58C E001800C AFBF00A0 */ sw $ra, 0xa0($sp)
/* 32F590 E0018010 AFB1009C */ sw $s1, 0x9c($sp)
/* 32F594 E0018014 8E05000C */ lw $a1, 0xc($s0)
/* 32F598 E0018018 8E060010 */ lw $a2, 0x10($s0)
/* 32F59C E001801C 8E070014 */ lw $a3, 0x14($s0)
/* 32F5A0 E0018020 0C080108 */ jal shim_guTranslateF
/* 32F5A4 E0018024 27A40018 */ addiu $a0, $sp, 0x18
/* 32F5A8 E0018028 3C073F80 */ lui $a3, 0x3f80
/* 32F5AC E001802C 44800000 */ mtc1 $zero, $f0
/* 32F5B0 E0018030 27B10058 */ addiu $s1, $sp, 0x58
/* 32F5B4 E0018034 E7A00010 */ swc1 $f0, 0x10($sp)
/* 32F5B8 E0018038 8E050028 */ lw $a1, 0x28($s0)
/* 32F5BC E001803C 44060000 */ mfc1 $a2, $f0
/* 32F5C0 E0018040 0C080104 */ jal shim_guRotateF
/* 32F5C4 E0018044 0220202D */ daddu $a0, $s1, $zero
/* 32F5C8 E0018048 0220202D */ daddu $a0, $s1, $zero
/* 32F5CC E001804C 27A50018 */ addiu $a1, $sp, 0x18
/* 32F5D0 E0018050 0C080114 */ jal shim_guMtxCatF
/* 32F5D4 E0018054 00A0302D */ daddu $a2, $a1, $zero
/* 32F5D8 E0018058 27A40018 */ addiu $a0, $sp, 0x18
/* 32F5DC E001805C 0C080118 */ jal shim_guMtxF2L
/* 32F5E0 E0018060 26050030 */ addiu $a1, $s0, 0x30
/* 32F5E4 E0018064 8FBF00A0 */ lw $ra, 0xa0($sp)
/* 32F5E8 E0018068 8FB1009C */ lw $s1, 0x9c($sp)
/* 32F5EC E001806C 8FB00098 */ lw $s0, 0x98($sp)
/* 32F5F0 E0018070 03E00008 */ jr $ra
/* 32F5F4 E0018074 27BD00A8 */ addiu $sp, $sp, 0xa8

View File

@ -1,11 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_E00183BC
/* 32F93C E00183BC 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 32F940 E00183C0 AFBF0010 */ sw $ra, 0x10($sp)
/* 32F944 E00183C4 0C080128 */ jal shim_remove_effect
/* 32F948 E00183C8 00000000 */ nop
/* 32F94C E00183CC 8FBF0010 */ lw $ra, 0x10($sp)
/* 32F950 E00183D0 03E00008 */ jr $ra
/* 32F954 E00183D4 27BD0018 */ addiu $sp, $sp, 0x18

View File

@ -1,134 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel fx_12_appendGfx
/* 32F958 E00183D8 27BDFFE0 */ addiu $sp, $sp, -0x20
/* 32F95C E00183DC 0080602D */ daddu $t4, $a0, $zero
/* 32F960 E00183E0 3C05DB06 */ lui $a1, 0xdb06
/* 32F964 E00183E4 34A50024 */ ori $a1, $a1, 0x24
/* 32F968 E00183E8 3C06800A */ lui $a2, %hi(gMasterGfxPos)
/* 32F96C E00183EC 24C6A66C */ addiu $a2, $a2, %lo(gMasterGfxPos)
/* 32F970 E00183F0 3C02E700 */ lui $v0, 0xe700
/* 32F974 E00183F4 AFB7001C */ sw $s7, 0x1c($sp)
/* 32F978 E00183F8 AFB60018 */ sw $s6, 0x18($sp)
/* 32F97C E00183FC AFB50014 */ sw $s5, 0x14($sp)
/* 32F980 E0018400 AFB40010 */ sw $s4, 0x10($sp)
/* 32F984 E0018404 AFB3000C */ sw $s3, 0xc($sp)
/* 32F988 E0018408 AFB20008 */ sw $s2, 8($sp)
/* 32F98C E001840C AFB10004 */ sw $s1, 4($sp)
/* 32F990 E0018410 AFB00000 */ sw $s0, ($sp)
/* 32F994 E0018414 8CC40000 */ lw $a0, ($a2)
/* 32F998 E0018418 8D88000C */ lw $t0, 0xc($t4)
/* 32F99C E001841C 0080182D */ daddu $v1, $a0, $zero
/* 32F9A0 E0018420 24840008 */ addiu $a0, $a0, 8
/* 32F9A4 E0018424 AC620000 */ sw $v0, ($v1)
/* 32F9A8 E0018428 AC600004 */ sw $zero, 4($v1)
/* 32F9AC E001842C AC850000 */ sw $a1, ($a0)
/* 32F9B0 E0018430 8D820010 */ lw $v0, 0x10($t4)
/* 32F9B4 E0018434 0000482D */ daddu $t1, $zero, $zero
/* 32F9B8 E0018438 ACC40000 */ sw $a0, ($a2)
/* 32F9BC E001843C 8C42001C */ lw $v0, 0x1c($v0)
/* 32F9C0 E0018440 3C038000 */ lui $v1, 0x8000
/* 32F9C4 E0018444 00431021 */ addu $v0, $v0, $v1
/* 32F9C8 E0018448 AC820004 */ sw $v0, 4($a0)
/* 32F9CC E001844C 8D820008 */ lw $v0, 8($t4)
/* 32F9D0 E0018450 24840008 */ addiu $a0, $a0, 8
/* 32F9D4 E0018454 1840004A */ blez $v0, .LE0018580
/* 32F9D8 E0018458 ACC40000 */ sw $a0, ($a2)
/* 32F9DC E001845C 3C0F800A */ lui $t7, %hi(gDisplayContext)
/* 32F9E0 E0018460 25EFA674 */ addiu $t7, $t7, %lo(gDisplayContext)
/* 32F9E4 E0018464 3C0D8007 */ lui $t5, %hi(gMatrixListPos)
/* 32F9E8 E0018468 25AD41F0 */ addiu $t5, $t5, %lo(gMatrixListPos)
/* 32F9EC E001846C 3C0B0001 */ lui $t3, 1
/* 32F9F0 E0018470 356B1630 */ ori $t3, $t3, 0x1630
/* 32F9F4 E0018474 00C0502D */ daddu $t2, $a2, $zero
/* 32F9F8 E0018478 3C13FA00 */ lui $s3, 0xfa00
/* 32F9FC E001847C 3C197060 */ lui $t9, 0x7060
/* 32FA00 E0018480 37391800 */ ori $t9, $t9, 0x1800
/* 32FA04 E0018484 3C12DA38 */ lui $s2, 0xda38
/* 32FA08 E0018488 3C11DE00 */ lui $s1, 0xde00
/* 32FA0C E001848C 3C18D838 */ lui $t8, 0xd838
/* 32FA10 E0018490 37180002 */ ori $t8, $t8, 2
/* 32FA14 E0018494 24100040 */ addiu $s0, $zero, 0x40
/* 32FA18 E0018498 25070070 */ addiu $a3, $t0, 0x70
.LE001849C:
/* 32FA1C E001849C 8D020000 */ lw $v0, ($t0)
/* 32FA20 E00184A0 50400032 */ beql $v0, $zero, .LE001856C
/* 32FA24 E00184A4 25290001 */ addiu $t1, $t1, 1
/* 32FA28 E00184A8 3C0E0900 */ lui $t6, 0x900
/* 32FA2C E00184AC 25CE0240 */ addiu $t6, $t6, 0x240
/* 32FA30 E00184B0 25040030 */ addiu $a0, $t0, 0x30
/* 32FA34 E00184B4 00E0282D */ daddu $a1, $a3, $zero
/* 32FA38 E00184B8 95A20000 */ lhu $v0, ($t5)
/* 32FA3C E00184BC 8DE30000 */ lw $v1, ($t7)
/* 32FA40 E00184C0 00021180 */ sll $v0, $v0, 6
/* 32FA44 E00184C4 00621821 */ addu $v1, $v1, $v0
/* 32FA48 E00184C8 006B1821 */ addu $v1, $v1, $t3
.LE00184CC:
/* 32FA4C E00184CC 8C940000 */ lw $s4, ($a0)
/* 32FA50 E00184D0 8C950004 */ lw $s5, 4($a0)
/* 32FA54 E00184D4 8C960008 */ lw $s6, 8($a0)
/* 32FA58 E00184D8 8C97000C */ lw $s7, 0xc($a0)
/* 32FA5C E00184DC AC740000 */ sw $s4, ($v1)
/* 32FA60 E00184E0 AC750004 */ sw $s5, 4($v1)
/* 32FA64 E00184E4 AC760008 */ sw $s6, 8($v1)
/* 32FA68 E00184E8 AC77000C */ sw $s7, 0xc($v1)
/* 32FA6C E00184EC 24840010 */ addiu $a0, $a0, 0x10
/* 32FA70 E00184F0 1485FFF6 */ bne $a0, $a1, .LE00184CC
/* 32FA74 E00184F4 24630010 */ addiu $v1, $v1, 0x10
/* 32FA78 E00184F8 8D440000 */ lw $a0, ($t2)
/* 32FA7C E00184FC 0080302D */ daddu $a2, $a0, $zero
/* 32FA80 E0018500 24840008 */ addiu $a0, $a0, 8
/* 32FA84 E0018504 AD440000 */ sw $a0, ($t2)
/* 32FA88 E0018508 ACD30000 */ sw $s3, ($a2)
/* 32FA8C E001850C 90E5FF98 */ lbu $a1, -0x68($a3)
/* 32FA90 E0018510 95A30000 */ lhu $v1, ($t5)
/* 32FA94 E0018514 24820008 */ addiu $v0, $a0, 8
/* 32FA98 E0018518 AD420000 */ sw $v0, ($t2)
/* 32FA9C E001851C 24620001 */ addiu $v0, $v1, 1
/* 32FAA0 E0018520 A5A20000 */ sh $v0, ($t5)
/* 32FAA4 E0018524 24820010 */ addiu $v0, $a0, 0x10
/* 32FAA8 E0018528 AD420000 */ sw $v0, ($t2)
/* 32FAAC E001852C 24820018 */ addiu $v0, $a0, 0x18
/* 32FAB0 E0018530 00B92825 */ or $a1, $a1, $t9
/* 32FAB4 E0018534 3063FFFF */ andi $v1, $v1, 0xffff
/* 32FAB8 E0018538 00031980 */ sll $v1, $v1, 6
/* 32FABC E001853C AD420000 */ sw $v0, ($t2)
/* 32FAC0 E0018540 ACC50004 */ sw $a1, 4($a2)
/* 32FAC4 E0018544 AC920000 */ sw $s2, ($a0)
/* 32FAC8 E0018548 8DE20000 */ lw $v0, ($t7)
/* 32FACC E001854C 006B1821 */ addu $v1, $v1, $t3
/* 32FAD0 E0018550 AC910008 */ sw $s1, 8($a0)
/* 32FAD4 E0018554 AC8E000C */ sw $t6, 0xc($a0)
/* 32FAD8 E0018558 AC980010 */ sw $t8, 0x10($a0)
/* 32FADC E001855C AC900014 */ sw $s0, 0x14($a0)
/* 32FAE0 E0018560 00431021 */ addu $v0, $v0, $v1
/* 32FAE4 E0018564 AC820004 */ sw $v0, 4($a0)
/* 32FAE8 E0018568 25290001 */ addiu $t1, $t1, 1
.LE001856C:
/* 32FAEC E001856C 24E70098 */ addiu $a3, $a3, 0x98
/* 32FAF0 E0018570 8D820008 */ lw $v0, 8($t4)
/* 32FAF4 E0018574 0122102A */ slt $v0, $t1, $v0
/* 32FAF8 E0018578 1440FFC8 */ bnez $v0, .LE001849C
/* 32FAFC E001857C 25080098 */ addiu $t0, $t0, 0x98
.LE0018580:
/* 32FB00 E0018580 3C03800A */ lui $v1, %hi(gMasterGfxPos)
/* 32FB04 E0018584 2463A66C */ addiu $v1, $v1, %lo(gMasterGfxPos)
/* 32FB08 E0018588 8C620000 */ lw $v0, ($v1)
/* 32FB0C E001858C 0040202D */ daddu $a0, $v0, $zero
/* 32FB10 E0018590 24420008 */ addiu $v0, $v0, 8
/* 32FB14 E0018594 AC620000 */ sw $v0, ($v1)
/* 32FB18 E0018598 3C02E700 */ lui $v0, 0xe700
/* 32FB1C E001859C AC820000 */ sw $v0, ($a0)
/* 32FB20 E00185A0 AC800004 */ sw $zero, 4($a0)
/* 32FB24 E00185A4 8FB7001C */ lw $s7, 0x1c($sp)
/* 32FB28 E00185A8 8FB60018 */ lw $s6, 0x18($sp)
/* 32FB2C E00185AC 8FB50014 */ lw $s5, 0x14($sp)
/* 32FB30 E00185B0 8FB40010 */ lw $s4, 0x10($sp)
/* 32FB34 E00185B4 8FB3000C */ lw $s3, 0xc($sp)
/* 32FB38 E00185B8 8FB20008 */ lw $s2, 8($sp)
/* 32FB3C E00185BC 8FB10004 */ lw $s1, 4($sp)
/* 32FB40 E00185C0 8FB00000 */ lw $s0, ($sp)
/* 32FB44 E00185C4 03E00008 */ jr $ra
/* 32FB48 E00185C8 27BD0020 */ addiu $sp, $sp, 0x20
/* 32FB4C E00185CC 00000000 */ nop

View File

@ -1,149 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel fx_12_main
/* 32F5F8 E0018078 27BDFF90 */ addiu $sp, $sp, -0x70
/* 32F5FC E001807C F7BC0060 */ sdc1 $f28, 0x60($sp)
/* 32F600 E0018080 4487E000 */ mtc1 $a3, $f28
/* 32F604 E0018084 27A40010 */ addiu $a0, $sp, 0x10
/* 32F608 E0018088 F7BE0068 */ sdc1 $f30, 0x68($sp)
/* 32F60C E001808C C7BE0080 */ lwc1 $f30, 0x80($sp)
/* 32F610 E0018090 3C02E002 */ lui $v0, %hi(fx_12_init)
/* 32F614 E0018094 244282AC */ addiu $v0, $v0, %lo(fx_12_init)
/* 32F618 E0018098 AFA20018 */ sw $v0, 0x18($sp)
/* 32F61C E001809C 3C02E002 */ lui $v0, %hi(fx_12_update)
/* 32F620 E00180A0 244282B4 */ addiu $v0, $v0, %lo(fx_12_update)
/* 32F624 E00180A4 AFA2001C */ sw $v0, 0x1c($sp)
/* 32F628 E00180A8 3C02E002 */ lui $v0, %hi(fx_12_render)
/* 32F62C E00180AC 24428378 */ addiu $v0, $v0, %lo(fx_12_render)
/* 32F630 E00180B0 AFA20020 */ sw $v0, 0x20($sp)
/* 32F634 E00180B4 2402000C */ addiu $v0, $zero, 0xc
/* 32F638 E00180B8 AFBF0038 */ sw $ra, 0x38($sp)
/* 32F63C E00180BC AFB30034 */ sw $s3, 0x34($sp)
/* 32F640 E00180C0 AFB20030 */ sw $s2, 0x30($sp)
/* 32F644 E00180C4 AFB1002C */ sw $s1, 0x2c($sp)
/* 32F648 E00180C8 AFB00028 */ sw $s0, 0x28($sp)
/* 32F64C E00180CC F7BA0058 */ sdc1 $f26, 0x58($sp)
/* 32F650 E00180D0 F7B80050 */ sdc1 $f24, 0x50($sp)
/* 32F654 E00180D4 F7B60048 */ sdc1 $f22, 0x48($sp)
/* 32F658 E00180D8 F7B40040 */ sdc1 $f20, 0x40($sp)
/* 32F65C E00180DC E7AC0070 */ swc1 $f12, 0x70($sp)
/* 32F660 E00180E0 E7AE0074 */ swc1 $f14, 0x74($sp)
/* 32F664 E00180E4 AFA60078 */ sw $a2, 0x78($sp)
/* 32F668 E00180E8 AFA00010 */ sw $zero, 0x10($sp)
/* 32F66C E00180EC AFA00024 */ sw $zero, 0x24($sp)
/* 32F670 E00180F0 0C080124 */ jal shim_create_effect_instance
/* 32F674 E00180F4 AFA20014 */ sw $v0, 0x14($sp)
/* 32F678 E00180F8 24040098 */ addiu $a0, $zero, 0x98
/* 32F67C E00180FC 24130001 */ addiu $s3, $zero, 1
/* 32F680 E0018100 0040802D */ daddu $s0, $v0, $zero
/* 32F684 E0018104 0C08012C */ jal shim_general_heap_malloc
/* 32F688 E0018108 AE130008 */ sw $s3, 8($s0)
/* 32F68C E001810C 0040882D */ daddu $s1, $v0, $zero
/* 32F690 E0018110 16200003 */ bnez $s1, .LE0018120
/* 32F694 E0018114 AE11000C */ sw $s1, 0xc($s0)
.LE0018118:
/* 32F698 E0018118 08006046 */ j .LE0018118
/* 32F69C E001811C 00000000 */ nop
.LE0018120:
/* 32F6A0 E0018120 0220202D */ daddu $a0, $s1, $zero
/* 32F6A4 E0018124 00132880 */ sll $a1, $s3, 2
/* 32F6A8 E0018128 00B32821 */ addu $a1, $a1, $s3
/* 32F6AC E001812C 00052880 */ sll $a1, $a1, 2
/* 32F6B0 E0018130 00B32823 */ subu $a1, $a1, $s3
/* 32F6B4 E0018134 0C080130 */ jal shim_mem_clear
/* 32F6B8 E0018138 000528C0 */ sll $a1, $a1, 3
/* 32F6BC E001813C 0000902D */ daddu $s2, $zero, $zero
/* 32F6C0 E0018140 0253102A */ slt $v0, $s2, $s3
/* 32F6C4 E0018144 1040004C */ beqz $v0, .LE0018278
/* 32F6C8 E0018148 26300008 */ addiu $s0, $s1, 8
/* 32F6CC E001814C 3C0141F0 */ lui $at, 0x41f0
/* 32F6D0 E0018150 44810000 */ mtc1 $at, $f0
/* 32F6D4 E0018154 00000000 */ nop
/* 32F6D8 E0018158 4600F002 */ mul.s $f0, $f30, $f0
/* 32F6DC E001815C 00000000 */ nop
/* 32F6E0 E0018160 3C013F80 */ lui $at, 0x3f80
/* 32F6E4 E0018164 4481B000 */ mtc1 $at, $f22
/* 32F6E8 E0018168 4600E000 */ add.s $f0, $f28, $f0
/* 32F6EC E001816C 3C014170 */ lui $at, 0x4170
/* 32F6F0 E0018170 44811000 */ mtc1 $at, $f2
/* 32F6F4 E0018174 3C0140A0 */ lui $at, 0x40a0
/* 32F6F8 E0018178 4481C000 */ mtc1 $at, $f24
/* 32F6FC E001817C 46020681 */ sub.s $f26, $f0, $f2
.LE0018180:
/* 32F700 E0018180 24020001 */ addiu $v0, $zero, 1
/* 32F704 E0018184 AE220000 */ sw $v0, ($s1)
/* 32F708 E0018188 AE000074 */ sw $zero, 0x74($s0)
/* 32F70C E001818C C7A60070 */ lwc1 $f6, 0x70($sp)
/* 32F710 E0018190 E6060004 */ swc1 $f6, 4($s0)
/* 32F714 E0018194 C7A60074 */ lwc1 $f6, 0x74($sp)
/* 32F718 E0018198 4600E306 */ mov.s $f12, $f28
/* 32F71C E001819C E6060008 */ swc1 $f6, 8($s0)
/* 32F720 E00181A0 C7A60078 */ lwc1 $f6, 0x78($sp)
/* 32F724 E00181A4 240200FF */ addiu $v0, $zero, 0xff
/* 32F728 E00181A8 A2020000 */ sb $v0, ($s0)
/* 32F72C E00181AC 24020064 */ addiu $v0, $zero, 0x64
/* 32F730 E00181B0 E6160010 */ swc1 $f22, 0x10($s0)
/* 32F734 E00181B4 E6160014 */ swc1 $f22, 0x14($s0)
/* 32F738 E00181B8 E6160018 */ swc1 $f22, 0x18($s0)
/* 32F73C E00181BC AE000068 */ sw $zero, 0x68($s0)
/* 32F740 E00181C0 AE000078 */ sw $zero, 0x78($s0)
/* 32F744 E00181C4 AE00007C */ sw $zero, 0x7c($s0)
/* 32F748 E00181C8 A602FFFE */ sh $v0, -2($s0)
/* 32F74C E00181CC AE00001C */ sw $zero, 0x1c($s0)
/* 32F750 E00181D0 E61A0020 */ swc1 $f26, 0x20($s0)
/* 32F754 E00181D4 AE000024 */ sw $zero, 0x24($s0)
/* 32F758 E00181D8 0C08013C */ jal shim_clamp_angle
/* 32F75C E00181DC E606000C */ swc1 $f6, 0xc($s0)
/* 32F760 E00181E0 46000506 */ mov.s $f20, $f0
/* 32F764 E00181E4 0C080140 */ jal shim_sin_deg
/* 32F768 E00181E8 4600A306 */ mov.s $f12, $f20
/* 32F76C E00181EC 4600A306 */ mov.s $f12, $f20
/* 32F770 E00181F0 0C080144 */ jal shim_cos_deg
/* 32F774 E00181F4 E6000088 */ swc1 $f0, 0x88($s0)
/* 32F778 E00181F8 3C014334 */ lui $at, 0x4334
/* 32F77C E00181FC 44812000 */ mtc1 $at, $f4
/* 32F780 E0018200 00000000 */ nop
/* 32F784 E0018204 4604F102 */ mul.s $f4, $f30, $f4
/* 32F788 E0018208 00000000 */ nop
/* 32F78C E001820C 3C014234 */ lui $at, 0x4234
/* 32F790 E0018210 44811000 */ mtc1 $at, $f2
/* 32F794 E0018214 00000000 */ nop
/* 32F798 E0018218 4602A500 */ add.s $f20, $f20, $f2
/* 32F79C E001821C 4604A501 */ sub.s $f20, $f20, $f4
/* 32F7A0 E0018220 E600008C */ swc1 $f0, 0x8c($s0)
/* 32F7A4 E0018224 0C080140 */ jal shim_sin_deg
/* 32F7A8 E0018228 4600A306 */ mov.s $f12, $f20
/* 32F7AC E001822C 46180002 */ mul.s $f0, $f0, $f24
/* 32F7B0 E0018230 00000000 */ nop
/* 32F7B4 E0018234 C6020004 */ lwc1 $f2, 4($s0)
/* 32F7B8 E0018238 46001080 */ add.s $f2, $f2, $f0
/* 32F7BC E001823C 4600A306 */ mov.s $f12, $f20
/* 32F7C0 E0018240 0C080144 */ jal shim_cos_deg
/* 32F7C4 E0018244 E6020004 */ swc1 $f2, 4($s0)
/* 32F7C8 E0018248 46180002 */ mul.s $f0, $f0, $f24
/* 32F7CC E001824C 00000000 */ nop
/* 32F7D0 E0018250 26520001 */ addiu $s2, $s2, 1
/* 32F7D4 E0018254 26310098 */ addiu $s1, $s1, 0x98
/* 32F7D8 E0018258 C602000C */ lwc1 $f2, 0xc($s0)
/* 32F7DC E001825C 240200C8 */ addiu $v0, $zero, 0xc8
/* 32F7E0 E0018260 46001080 */ add.s $f2, $f2, $f0
/* 32F7E4 E0018264 A2020000 */ sb $v0, ($s0)
/* 32F7E8 E0018268 0253102A */ slt $v0, $s2, $s3
/* 32F7EC E001826C E602000C */ swc1 $f2, 0xc($s0)
/* 32F7F0 E0018270 1440FFC3 */ bnez $v0, .LE0018180
/* 32F7F4 E0018274 26100098 */ addiu $s0, $s0, 0x98
.LE0018278:
/* 32F7F8 E0018278 8FBF0038 */ lw $ra, 0x38($sp)
/* 32F7FC E001827C 8FB30034 */ lw $s3, 0x34($sp)
/* 32F800 E0018280 8FB20030 */ lw $s2, 0x30($sp)
/* 32F804 E0018284 8FB1002C */ lw $s1, 0x2c($sp)
/* 32F808 E0018288 8FB00028 */ lw $s0, 0x28($sp)
/* 32F80C E001828C D7BE0068 */ ldc1 $f30, 0x68($sp)
/* 32F810 E0018290 D7BC0060 */ ldc1 $f28, 0x60($sp)
/* 32F814 E0018294 D7BA0058 */ ldc1 $f26, 0x58($sp)
/* 32F818 E0018298 D7B80050 */ ldc1 $f24, 0x50($sp)
/* 32F81C E001829C D7B60048 */ ldc1 $f22, 0x48($sp)
/* 32F820 E00182A0 D7B40040 */ ldc1 $f20, 0x40($sp)
/* 32F824 E00182A4 03E00008 */ jr $ra
/* 32F828 E00182A8 27BD0070 */ addiu $sp, $sp, 0x70

View File

@ -1,59 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel fx_12_update
/* 32F834 E00182B4 27BDFFD8 */ addiu $sp, $sp, -0x28
/* 32F838 E00182B8 AFB40020 */ sw $s4, 0x20($sp)
/* 32F83C E00182BC 0080A02D */ daddu $s4, $a0, $zero
/* 32F840 E00182C0 AFB20018 */ sw $s2, 0x18($sp)
/* 32F844 E00182C4 0000902D */ daddu $s2, $zero, $zero
/* 32F848 E00182C8 AFB3001C */ sw $s3, 0x1c($sp)
/* 32F84C E00182CC AFBF0024 */ sw $ra, 0x24($sp)
/* 32F850 E00182D0 AFB10014 */ sw $s1, 0x14($sp)
/* 32F854 E00182D4 AFB00010 */ sw $s0, 0x10($sp)
/* 32F858 E00182D8 8E820008 */ lw $v0, 8($s4)
/* 32F85C E00182DC 8E91000C */ lw $s1, 0xc($s4)
/* 32F860 E00182E0 18400019 */ blez $v0, .LE0018348
/* 32F864 E00182E4 0240982D */ daddu $s3, $s2, $zero
/* 32F868 E00182E8 26300008 */ addiu $s0, $s1, 8
.LE00182EC:
/* 32F86C E00182EC 8E220000 */ lw $v0, ($s1)
/* 32F870 E00182F0 50400010 */ beql $v0, $zero, .LE0018334
/* 32F874 E00182F4 26520001 */ addiu $s2, $s2, 1
/* 32F878 E00182F8 9602FFFE */ lhu $v0, -2($s0)
/* 32F87C E00182FC 2442FFFF */ addiu $v0, $v0, -1
/* 32F880 E0018300 A602FFFE */ sh $v0, -2($s0)
/* 32F884 E0018304 00021400 */ sll $v0, $v0, 0x10
/* 32F888 E0018308 1C400003 */ bgtz $v0, .LE0018318
/* 32F88C E001830C 00000000 */ nop
/* 32F890 E0018310 080060CC */ j .LE0018330
/* 32F894 E0018314 AE200000 */ sw $zero, ($s1)
.LE0018318:
/* 32F898 E0018318 0C006000 */ jal func_E0018000
/* 32F89C E001831C 0220202D */ daddu $a0, $s1, $zero
/* 32F8A0 E0018320 92020000 */ lbu $v0, ($s0)
/* 32F8A4 E0018324 24130001 */ addiu $s3, $zero, 1
/* 32F8A8 E0018328 2442FFFE */ addiu $v0, $v0, -2
/* 32F8AC E001832C A2020000 */ sb $v0, ($s0)
.LE0018330:
/* 32F8B0 E0018330 26520001 */ addiu $s2, $s2, 1
.LE0018334:
/* 32F8B4 E0018334 26100098 */ addiu $s0, $s0, 0x98
/* 32F8B8 E0018338 8E820008 */ lw $v0, 8($s4)
/* 32F8BC E001833C 0242102A */ slt $v0, $s2, $v0
/* 32F8C0 E0018340 1440FFEA */ bnez $v0, .LE00182EC
/* 32F8C4 E0018344 26310098 */ addiu $s1, $s1, 0x98
.LE0018348:
/* 32F8C8 E0018348 16600003 */ bnez $s3, .LE0018358
/* 32F8CC E001834C 00000000 */ nop
/* 32F8D0 E0018350 0C080128 */ jal shim_remove_effect
/* 32F8D4 E0018354 0280202D */ daddu $a0, $s4, $zero
.LE0018358:
/* 32F8D8 E0018358 8FBF0024 */ lw $ra, 0x24($sp)
/* 32F8DC E001835C 8FB40020 */ lw $s4, 0x20($sp)
/* 32F8E0 E0018360 8FB3001C */ lw $s3, 0x1c($sp)
/* 32F8E4 E0018364 8FB20018 */ lw $s2, 0x18($sp)
/* 32F8E8 E0018368 8FB10014 */ lw $s1, 0x14($sp)
/* 32F8EC E001836C 8FB00010 */ lw $s0, 0x10($sp)
/* 32F8F0 E0018370 03E00008 */ jr $ra
/* 32F8F4 E0018374 27BD0028 */ addiu $sp, $sp, 0x28

View File

@ -1,88 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel BindNpcAI
/* 1FE78 80044A78 27BDFFD0 */ addiu $sp, $sp, -0x30
/* 1FE7C 80044A7C AFB00010 */ sw $s0, 0x10($sp)
/* 1FE80 80044A80 0080802D */ daddu $s0, $a0, $zero
/* 1FE84 80044A84 AFB50024 */ sw $s5, 0x24($sp)
/* 1FE88 80044A88 24150002 */ addiu $s5, $zero, 2
/* 1FE8C 80044A8C AFBF0028 */ sw $ra, 0x28($sp)
/* 1FE90 80044A90 AFB40020 */ sw $s4, 0x20($sp)
/* 1FE94 80044A94 AFB3001C */ sw $s3, 0x1c($sp)
/* 1FE98 80044A98 AFB20018 */ sw $s2, 0x18($sp)
/* 1FE9C 80044A9C AFB10014 */ sw $s1, 0x14($sp)
/* 1FEA0 80044AA0 8E11000C */ lw $s1, 0xc($s0)
/* 1FEA4 80044AA4 8E120148 */ lw $s2, 0x148($s0)
/* 1FEA8 80044AA8 8E250000 */ lw $a1, ($s1)
/* 1FEAC 80044AAC 0C0B1EAF */ jal evt_get_variable
/* 1FEB0 80044AB0 26310004 */ addiu $s1, $s1, 4
/* 1FEB4 80044AB4 0040982D */ daddu $s3, $v0, $zero
/* 1FEB8 80044AB8 8E250000 */ lw $a1, ($s1)
/* 1FEBC 80044ABC 0C0B1EAF */ jal evt_get_variable
/* 1FEC0 80044AC0 0200202D */ daddu $a0, $s0, $zero
/* 1FEC4 80044AC4 0040A02D */ daddu $s4, $v0, $zero
/* 1FEC8 80044AC8 2402FFFF */ addiu $v0, $zero, -1
/* 1FECC 80044ACC 12420011 */ beq $s2, $v0, .L80044B14
/* 1FED0 80044AD0 00000000 */ nop
/* 1FED4 80044AD4 12620004 */ beq $s3, $v0, .L80044AE8
/* 1FED8 80044AD8 00000000 */ nop
/* 1FEDC 80044ADC 86420008 */ lh $v0, 8($s2)
/* 1FEE0 80044AE0 1453000C */ bne $v0, $s3, .L80044B14
/* 1FEE4 80044AE4 00000000 */ nop
.L80044AE8:
/* 1FEE8 80044AE8 86530008 */ lh $s3, 8($s2)
.L80044AEC:
/* 1FEEC 80044AEC 8E020064 */ lw $v0, 0x64($s0)
/* 1FEF0 80044AF0 10400003 */ beqz $v0, .L80044B00
/* 1FEF4 80044AF4 00000000 */ nop
/* 1FEF8 80044AF8 080112BB */ j .L80044AEC
/* 1FEFC 80044AFC 0040802D */ daddu $s0, $v0, $zero
.L80044B00:
/* 1FF00 80044B00 8E42003C */ lw $v0, 0x3c($s2)
/* 1FF04 80044B04 52020006 */ beql $s0, $v0, .L80044B20
/* 1FF08 80044B08 241500FF */ addiu $s5, $zero, 0xff
/* 1FF0C 80044B0C 080112C8 */ j .L80044B20
/* 1FF10 80044B10 00000000 */ nop
.L80044B14:
/* 1FF14 80044B14 0C00FB3A */ jal get_enemy
/* 1FF18 80044B18 0260202D */ daddu $a0, $s3, $zero
/* 1FF1C 80044B1C 0040902D */ daddu $s2, $v0, $zero
.L80044B20:
/* 1FF20 80044B20 8E420000 */ lw $v0, ($s2)
/* 1FF24 80044B24 30420001 */ andi $v0, $v0, 1
/* 1FF28 80044B28 10400002 */ beqz $v0, .L80044B34
/* 1FF2C 80044B2C 2411000B */ addiu $s1, $zero, 0xb
/* 1FF30 80044B30 2411000A */ addiu $s1, $zero, 0xa
.L80044B34:
/* 1FF34 80044B34 8E42003C */ lw $v0, 0x3c($s2)
/* 1FF38 80044B38 10400005 */ beqz $v0, .L80044B50
/* 1FF3C 80044B3C 0280202D */ daddu $a0, $s4, $zero
/* 1FF40 80044B40 8E440054 */ lw $a0, 0x54($s2)
/* 1FF44 80044B44 0C0B102B */ jal kill_script_by_ID
/* 1FF48 80044B48 00000000 */ nop
/* 1FF4C 80044B4C 0280202D */ daddu $a0, $s4, $zero
.L80044B50:
/* 1FF50 80044B50 2405000A */ addiu $a1, $zero, 0xa
/* 1FF54 80044B54 24020064 */ addiu $v0, $zero, 0x64
/* 1FF58 80044B58 0000302D */ daddu $a2, $zero, $zero
/* 1FF5C 80044B5C AE4200C8 */ sw $v0, 0xc8($s2)
/* 1FF60 80044B60 0C0B0CF8 */ jal start_script
/* 1FF64 80044B64 AE440024 */ sw $a0, 0x24($s2)
/* 1FF68 80044B68 0040802D */ daddu $s0, $v0, $zero
/* 1FF6C 80044B6C AE50003C */ sw $s0, 0x3c($s2)
/* 1FF70 80044B70 8E030144 */ lw $v1, 0x144($s0)
/* 1FF74 80044B74 02A0102D */ daddu $v0, $s5, $zero
/* 1FF78 80044B78 AE430054 */ sw $v1, 0x54($s2)
/* 1FF7C 80044B7C AE120148 */ sw $s2, 0x148($s0)
/* 1FF80 80044B80 AE13014C */ sw $s3, 0x14c($s0)
/* 1FF84 80044B84 A2110004 */ sb $s1, 4($s0)
/* 1FF88 80044B88 8FBF0028 */ lw $ra, 0x28($sp)
/* 1FF8C 80044B8C 8FB50024 */ lw $s5, 0x24($sp)
/* 1FF90 80044B90 8FB40020 */ lw $s4, 0x20($sp)
/* 1FF94 80044B94 8FB3001C */ lw $s3, 0x1c($sp)
/* 1FF98 80044B98 8FB20018 */ lw $s2, 0x18($sp)
/* 1FF9C 80044B9C 8FB10014 */ lw $s1, 0x14($sp)
/* 1FFA0 80044BA0 8FB00010 */ lw $s0, 0x10($sp)
/* 1FFA4 80044BA4 03E00008 */ jr $ra
/* 1FFA8 80044BA8 27BD0030 */ addiu $sp, $sp, 0x30

View File

@ -1,80 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel RemoveEncounter
/* 1F878 80044478 27BDFFD8 */ addiu $sp, $sp, -0x28
/* 1F87C 8004447C AFBF0020 */ sw $ra, 0x20($sp)
/* 1F880 80044480 AFB3001C */ sw $s3, 0x1c($sp)
/* 1F884 80044484 AFB20018 */ sw $s2, 0x18($sp)
/* 1F888 80044488 AFB10014 */ sw $s1, 0x14($sp)
/* 1F88C 8004448C AFB00010 */ sw $s0, 0x10($sp)
/* 1F890 80044490 8C82000C */ lw $v0, 0xc($a0)
/* 1F894 80044494 8C450000 */ lw $a1, ($v0)
/* 1F898 80044498 8C900148 */ lw $s0, 0x148($a0)
/* 1F89C 8004449C 0C0B1EAF */ jal evt_get_variable
/* 1F8A0 800444A0 24120001 */ addiu $s2, $zero, 1
/* 1F8A4 800444A4 0040882D */ daddu $s1, $v0, $zero
/* 1F8A8 800444A8 3C13800B */ lui $s3, %hi(gCurrentEncounter)
/* 1F8AC 800444AC 26730F10 */ addiu $s3, $s3, %lo(gCurrentEncounter)
/* 1F8B0 800444B0 2402FFFF */ addiu $v0, $zero, -1
/* 1F8B4 800444B4 1202000D */ beq $s0, $v0, .L800444EC
/* 1F8B8 800444B8 00000000 */ nop
/* 1F8BC 800444BC 12220004 */ beq $s1, $v0, .L800444D0
/* 1F8C0 800444C0 00000000 */ nop
/* 1F8C4 800444C4 86020008 */ lh $v0, 8($s0)
/* 1F8C8 800444C8 14510008 */ bne $v0, $s1, .L800444EC
/* 1F8CC 800444CC 00000000 */ nop
.L800444D0:
/* 1F8D0 800444D0 86110008 */ lh $s1, 8($s0)
/* 1F8D4 800444D4 0801113D */ j .L800444F4
/* 1F8D8 800444D8 241200FF */ addiu $s2, $zero, 0xff
.L800444DC:
/* 1F8DC 800444DC 0C00F9CC */ jal kill_encounter
/* 1F8E0 800444E0 0200202D */ daddu $a0, $s0, $zero
/* 1F8E4 800444E4 08011158 */ j .L80044560
/* 1F8E8 800444E8 0240102D */ daddu $v0, $s2, $zero
.L800444EC:
/* 1F8EC 800444EC 0C00FB3A */ jal get_enemy
/* 1F8F0 800444F0 0220202D */ daddu $a0, $s1, $zero
.L800444F4:
/* 1F8F4 800444F4 8262001C */ lb $v0, 0x1c($s3)
/* 1F8F8 800444F8 18400018 */ blez $v0, .L8004455C
/* 1F8FC 800444FC 0000282D */ daddu $a1, $zero, $zero
/* 1F900 80044500 0040402D */ daddu $t0, $v0, $zero
/* 1F904 80044504 0260382D */ daddu $a3, $s3, $zero
.L80044508:
/* 1F908 80044508 8CE20028 */ lw $v0, 0x28($a3)
/* 1F90C 8004450C 50400010 */ beql $v0, $zero, .L80044550
/* 1F910 80044510 24A50001 */ addiu $a1, $a1, 1
/* 1F914 80044514 8C430000 */ lw $v1, ($v0)
/* 1F918 80044518 1860000C */ blez $v1, .L8004454C
/* 1F91C 8004451C 0000202D */ daddu $a0, $zero, $zero
/* 1F920 80044520 0060302D */ daddu $a2, $v1, $zero
/* 1F924 80044524 0040182D */ daddu $v1, $v0, $zero
.L80044528:
/* 1F928 80044528 8C700004 */ lw $s0, 4($v1)
/* 1F92C 8004452C 12000004 */ beqz $s0, .L80044540
/* 1F930 80044530 24840001 */ addiu $a0, $a0, 1
/* 1F934 80044534 86020008 */ lh $v0, 8($s0)
/* 1F938 80044538 1051FFE8 */ beq $v0, $s1, .L800444DC
/* 1F93C 8004453C 00000000 */ nop
.L80044540:
/* 1F940 80044540 0086102A */ slt $v0, $a0, $a2
/* 1F944 80044544 1440FFF8 */ bnez $v0, .L80044528
/* 1F948 80044548 24630004 */ addiu $v1, $v1, 4
.L8004454C:
/* 1F94C 8004454C 24A50001 */ addiu $a1, $a1, 1
.L80044550:
/* 1F950 80044550 00A8102A */ slt $v0, $a1, $t0
/* 1F954 80044554 1440FFEC */ bnez $v0, .L80044508
/* 1F958 80044558 24E70004 */ addiu $a3, $a3, 4
.L8004455C:
/* 1F95C 8004455C 0240102D */ daddu $v0, $s2, $zero
.L80044560:
/* 1F960 80044560 8FBF0020 */ lw $ra, 0x20($sp)
/* 1F964 80044564 8FB3001C */ lw $s3, 0x1c($sp)
/* 1F968 80044568 8FB20018 */ lw $s2, 0x18($sp)
/* 1F96C 8004456C 8FB10014 */ lw $s1, 0x14($sp)
/* 1F970 80044570 8FB00010 */ lw $s0, 0x10($sp)
/* 1F974 80044574 03E00008 */ jr $ra
/* 1F978 80044578 27BD0028 */ addiu $sp, $sp, 0x28

View File

@ -1,95 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel RemoveNpc
/* 1F740 80044340 27BDFFD8 */ addiu $sp, $sp, -0x28
/* 1F744 80044344 AFB20018 */ sw $s2, 0x18($sp)
/* 1F748 80044348 0080902D */ daddu $s2, $a0, $zero
/* 1F74C 8004434C AFB3001C */ sw $s3, 0x1c($sp)
/* 1F750 80044350 AFBF0024 */ sw $ra, 0x24($sp)
/* 1F754 80044354 AFB40020 */ sw $s4, 0x20($sp)
/* 1F758 80044358 AFB10014 */ sw $s1, 0x14($sp)
/* 1F75C 8004435C AFB00010 */ sw $s0, 0x10($sp)
/* 1F760 80044360 8E42000C */ lw $v0, 0xc($s2)
/* 1F764 80044364 8C450000 */ lw $a1, ($v0)
/* 1F768 80044368 8E500148 */ lw $s0, 0x148($s2)
/* 1F76C 8004436C 0C0B1EAF */ jal evt_get_variable
/* 1F770 80044370 24130001 */ addiu $s3, $zero, 1
/* 1F774 80044374 0040882D */ daddu $s1, $v0, $zero
/* 1F778 80044378 3C14800B */ lui $s4, %hi(gCurrentEncounter)
/* 1F77C 8004437C 26940F10 */ addiu $s4, $s4, %lo(gCurrentEncounter)
/* 1F780 80044380 2402FFFF */ addiu $v0, $zero, -1
/* 1F784 80044384 12020017 */ beq $s0, $v0, .L800443E4
/* 1F788 80044388 00000000 */ nop
/* 1F78C 8004438C 16220004 */ bne $s1, $v0, .L800443A0
/* 1F790 80044390 00000000 */ nop
/* 1F794 80044394 86110008 */ lh $s1, 8($s0)
/* 1F798 80044398 080110FB */ j .L800443EC
/* 1F79C 8004439C 241300FF */ addiu $s3, $zero, 0xff
.L800443A0:
/* 1F7A0 800443A0 86020008 */ lh $v0, 8($s0)
/* 1F7A4 800443A4 1451000F */ bne $v0, $s1, .L800443E4
/* 1F7A8 800443A8 0240202D */ daddu $a0, $s2, $zero
.L800443AC:
/* 1F7AC 800443AC 8C820064 */ lw $v0, 0x64($a0)
/* 1F7B0 800443B0 10400003 */ beqz $v0, .L800443C0
/* 1F7B4 800443B4 00000000 */ nop
/* 1F7B8 800443B8 080110EB */ j .L800443AC
/* 1F7BC 800443BC 0040202D */ daddu $a0, $v0, $zero
.L800443C0:
/* 1F7C0 800443C0 8E02003C */ lw $v0, 0x3c($s0)
/* 1F7C4 800443C4 50820009 */ beql $a0, $v0, .L800443EC
/* 1F7C8 800443C8 241300FF */ addiu $s3, $zero, 0xff
/* 1F7CC 800443CC 080110FB */ j .L800443EC
/* 1F7D0 800443D0 00000000 */ nop
.L800443D4:
/* 1F7D4 800443D4 0C00F9EB */ jal kill_enemy
/* 1F7D8 800443D8 0200202D */ daddu $a0, $s0, $zero
/* 1F7DC 800443DC 08011116 */ j .L80044458
/* 1F7E0 800443E0 0260102D */ daddu $v0, $s3, $zero
.L800443E4:
/* 1F7E4 800443E4 0C00FB3A */ jal get_enemy
/* 1F7E8 800443E8 0220202D */ daddu $a0, $s1, $zero
.L800443EC:
/* 1F7EC 800443EC 8282001C */ lb $v0, 0x1c($s4)
/* 1F7F0 800443F0 18400018 */ blez $v0, .L80044454
/* 1F7F4 800443F4 0000282D */ daddu $a1, $zero, $zero
/* 1F7F8 800443F8 0040402D */ daddu $t0, $v0, $zero
/* 1F7FC 800443FC 0280382D */ daddu $a3, $s4, $zero
.L80044400:
/* 1F800 80044400 8CE20028 */ lw $v0, 0x28($a3)
/* 1F804 80044404 50400010 */ beql $v0, $zero, .L80044448
/* 1F808 80044408 24A50001 */ addiu $a1, $a1, 1
/* 1F80C 8004440C 8C430000 */ lw $v1, ($v0)
/* 1F810 80044410 1860000C */ blez $v1, .L80044444
/* 1F814 80044414 0000202D */ daddu $a0, $zero, $zero
/* 1F818 80044418 0060302D */ daddu $a2, $v1, $zero
/* 1F81C 8004441C 0040182D */ daddu $v1, $v0, $zero
.L80044420:
/* 1F820 80044420 8C700004 */ lw $s0, 4($v1)
/* 1F824 80044424 12000004 */ beqz $s0, .L80044438
/* 1F828 80044428 24840001 */ addiu $a0, $a0, 1
/* 1F82C 8004442C 86020008 */ lh $v0, 8($s0)
/* 1F830 80044430 1051FFE8 */ beq $v0, $s1, .L800443D4
/* 1F834 80044434 00000000 */ nop
.L80044438:
/* 1F838 80044438 0086102A */ slt $v0, $a0, $a2
/* 1F83C 8004443C 1440FFF8 */ bnez $v0, .L80044420
/* 1F840 80044440 24630004 */ addiu $v1, $v1, 4
.L80044444:
/* 1F844 80044444 24A50001 */ addiu $a1, $a1, 1
.L80044448:
/* 1F848 80044448 00A8102A */ slt $v0, $a1, $t0
/* 1F84C 8004444C 1440FFEC */ bnez $v0, .L80044400
/* 1F850 80044450 24E70004 */ addiu $a3, $a3, 4
.L80044454:
/* 1F854 80044454 0260102D */ daddu $v0, $s3, $zero
.L80044458:
/* 1F858 80044458 8FBF0024 */ lw $ra, 0x24($sp)
/* 1F85C 8004445C 8FB40020 */ lw $s4, 0x20($sp)
/* 1F860 80044460 8FB3001C */ lw $s3, 0x1c($sp)
/* 1F864 80044464 8FB20018 */ lw $s2, 0x18($sp)
/* 1F868 80044468 8FB10014 */ lw $s1, 0x14($sp)
/* 1F86C 8004446C 8FB00010 */ lw $s0, 0x10($sp)
/* 1F870 80044470 03E00008 */ jr $ra
/* 1F874 80044474 27BD0028 */ addiu $sp, $sp, 0x28

View File

@ -1,80 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel SetNpcAux
/* 201A4 80044DA4 27BDFFD8 */ addiu $sp, $sp, -0x28
/* 201A8 80044DA8 AFB3001C */ sw $s3, 0x1c($sp)
/* 201AC 80044DAC 0080982D */ daddu $s3, $a0, $zero
/* 201B0 80044DB0 AFB40020 */ sw $s4, 0x20($sp)
/* 201B4 80044DB4 24140002 */ addiu $s4, $zero, 2
/* 201B8 80044DB8 AFBF0024 */ sw $ra, 0x24($sp)
/* 201BC 80044DBC AFB20018 */ sw $s2, 0x18($sp)
/* 201C0 80044DC0 AFB10014 */ sw $s1, 0x14($sp)
/* 201C4 80044DC4 AFB00010 */ sw $s0, 0x10($sp)
/* 201C8 80044DC8 8E70000C */ lw $s0, 0xc($s3)
/* 201CC 80044DCC 8E710148 */ lw $s1, 0x148($s3)
/* 201D0 80044DD0 8E050000 */ lw $a1, ($s0)
/* 201D4 80044DD4 0C0B1EAF */ jal evt_get_variable
/* 201D8 80044DD8 26100004 */ addiu $s0, $s0, 4
/* 201DC 80044DDC 0040902D */ daddu $s2, $v0, $zero
/* 201E0 80044DE0 8E050000 */ lw $a1, ($s0)
/* 201E4 80044DE4 0C0B1EAF */ jal evt_get_variable
/* 201E8 80044DE8 0260202D */ daddu $a0, $s3, $zero
/* 201EC 80044DEC 0040802D */ daddu $s0, $v0, $zero
/* 201F0 80044DF0 2402FFFF */ addiu $v0, $zero, -1
/* 201F4 80044DF4 12220011 */ beq $s1, $v0, .L80044E3C
/* 201F8 80044DF8 0260182D */ daddu $v1, $s3, $zero
/* 201FC 80044DFC 12420004 */ beq $s2, $v0, .L80044E10
/* 20200 80044E00 00000000 */ nop
/* 20204 80044E04 86220008 */ lh $v0, 8($s1)
/* 20208 80044E08 1452000C */ bne $v0, $s2, .L80044E3C
/* 2020C 80044E0C 00000000 */ nop
.L80044E10:
/* 20210 80044E10 86320008 */ lh $s2, 8($s1)
.L80044E14:
/* 20214 80044E14 8C620064 */ lw $v0, 0x64($v1)
/* 20218 80044E18 10400003 */ beqz $v0, .L80044E28
/* 2021C 80044E1C 00000000 */ nop
/* 20220 80044E20 08011385 */ j .L80044E14
/* 20224 80044E24 0040182D */ daddu $v1, $v0, $zero
.L80044E28:
/* 20228 80044E28 8E220044 */ lw $v0, 0x44($s1)
/* 2022C 80044E2C 50620007 */ beql $v1, $v0, .L80044E4C
/* 20230 80044E30 241400FF */ addiu $s4, $zero, 0xff
/* 20234 80044E34 08011393 */ j .L80044E4C
/* 20238 80044E38 00000000 */ nop
.L80044E3C:
/* 2023C 80044E3C 0C00FB3A */ jal get_enemy
/* 20240 80044E40 0240202D */ daddu $a0, $s2, $zero
/* 20244 80044E44 0040882D */ daddu $s1, $v0, $zero
/* 20248 80044E48 8E220044 */ lw $v0, 0x44($s1)
.L80044E4C:
/* 2024C 80044E4C 10400003 */ beqz $v0, .L80044E5C
/* 20250 80044E50 00000000 */ nop
/* 20254 80044E54 0C0B102B */ jal kill_script_by_ID
/* 20258 80044E58 8E24005C */ lw $a0, 0x5c($s1)
.L80044E5C:
/* 2025C 80044E5C 1200000D */ beqz $s0, .L80044E94
/* 20260 80044E60 0200202D */ daddu $a0, $s0, $zero
/* 20264 80044E64 2405000A */ addiu $a1, $zero, 0xa
/* 20268 80044E68 0000302D */ daddu $a2, $zero, $zero
/* 2026C 80044E6C 0C0B0CF8 */ jal start_script
/* 20270 80044E70 AE24002C */ sw $a0, 0x2c($s1)
/* 20274 80044E74 0040182D */ daddu $v1, $v0, $zero
/* 20278 80044E78 AE230044 */ sw $v1, 0x44($s1)
/* 2027C 80044E7C 8C620144 */ lw $v0, 0x144($v1)
/* 20280 80044E80 AE22005C */ sw $v0, 0x5c($s1)
/* 20284 80044E84 AC710148 */ sw $s1, 0x148($v1)
/* 20288 80044E88 AC72014C */ sw $s2, 0x14c($v1)
/* 2028C 80044E8C 92620004 */ lbu $v0, 4($s3)
/* 20290 80044E90 A0620004 */ sb $v0, 4($v1)
.L80044E94:
/* 20294 80044E94 0280102D */ daddu $v0, $s4, $zero
/* 20298 80044E98 8FBF0024 */ lw $ra, 0x24($sp)
/* 2029C 80044E9C 8FB40020 */ lw $s4, 0x20($sp)
/* 202A0 80044EA0 8FB3001C */ lw $s3, 0x1c($sp)
/* 202A4 80044EA4 8FB20018 */ lw $s2, 0x18($sp)
/* 202A8 80044EA8 8FB10014 */ lw $s1, 0x14($sp)
/* 202AC 80044EAC 8FB00010 */ lw $s0, 0x10($sp)
/* 202B0 80044EB0 03E00008 */ jr $ra
/* 202B4 80044EB4 27BD0028 */ addiu $sp, $sp, 0x28

View File

@ -695,6 +695,8 @@ segments:
- [0x9DA58] - [0x9DA58]
- [0x9DA60, rgba32, ui/stat_flower, 16, 16] - [0x9DA60, rgba32, ui/stat_flower, 16, 16]
- [0x9DE60, data] - [0x9DE60, data]
- [0xA2D40, .data, 8a860_len_3f30]
- [0xA2D90, data]
- [0xA5100] # bss at 8010C920 - [0xA5100] # bss at 8010C920
- type: code - type: code
start: 0xA5DD0 start: 0xA5DD0
@ -2276,7 +2278,7 @@ segments:
vram: 0xE0016000 vram: 0xE0016000
subsegments: subsegments:
- [0x32EE30, c, effect_11] - [0x32EE30, c, effect_11]
- [0x32F550, data] - [0x32F550]
- name: effect_12 - name: effect_12
dir: effects dir: effects
type: code type: code

View File

@ -4634,7 +4634,7 @@ bMarioDefenseTable = 0x80283420; // type:data rom:0x1B1D00
bPlayerStatusTable = 0x8028342C; // type:data rom:0x1B1D0C bPlayerStatusTable = 0x8028342C; // type:data rom:0x1B1D0C
bPlayerActorDesc = 0x802834D8; // type:data rom:0x1B1DB8 bPlayerActorDesc = 0x802834D8; // type:data rom:0x1B1DB8
bMarioParts = 0x80283500; // type:data rom:0x1B1DE0 bMarioParts = 0x80283500; // type:data rom:0x1B1DE0
D_80283524 = 0x80283524; // type:data rom:0x1B1E04 btl_actorHomePositions = 0x80283524; // type:data rom:0x1B1E04
D_8028358C = 0x8028358C; // type:data rom:0x1B1E6C D_8028358C = 0x8028358C; // type:data rom:0x1B1E6C
D_802835D0 = 0x802835D0; // type:data rom:0x1B1EB0 D_802835D0 = 0x802835D0; // type:data rom:0x1B1EB0
D_802835D4 = 0x802835D4; // type:data rom:0x1B1EB4 D_802835D4 = 0x802835D4; // type:data rom:0x1B1EB4
@ -18893,7 +18893,7 @@ D_8010D694 = 0x8010D694; // type:data
D_8010D698 = 0x8010D698; // type:data D_8010D698 = 0x8010D698; // type:data
D_8010D699 = 0x8010D699; // type:data D_8010D699 = 0x8010D699; // type:data
D_8010D69A = 0x8010D69A; // type:data D_8010D69A = 0x8010D69A; // type:data
D_8010D69C = 0x8010D69C; // type:data gPopupMenu = 0x8010D69C; // type:data
D_8010D6A0 = 0x8010D6A0; // type:data D_8010D6A0 = 0x8010D6A0; // type:data
D_8010D6A4 = 0x8010D6A4; // type:data D_8010D6A4 = 0x8010D6A4; // type:data
D_8010D6B0 = 0x8010D6B0; // type:data D_8010D6B0 = 0x8010D6B0; // type:data

View File

@ -1289,10 +1289,13 @@ D_09000E08 = 0x09000E08;
D_09000E20 = 0x09000E20; D_09000E20 = 0x09000E20;
D_09000E38 = 0x09000E38; D_09000E38 = 0x09000E38;
// effect_10 // effect_10 / effect_11
D_090000E0 = 0x090000E0; D_090000E0 = 0x090000E0;
D_090001B8 = 0x090001B8; D_090001B8 = 0x090001B8;
// effect_12
D_09000240 = 0x09000240;
// effect_73 // effect_73
D_090002C0 = 0x090002C0; D_090002C0 = 0x090002C0;
D_09000330 = 0x09000330; D_09000330 = 0x09000330;
@ -1410,7 +1413,7 @@ D_8010D694 = 0x8010D694;
D_8010D698 = 0x8010D698; D_8010D698 = 0x8010D698;
D_8010D699 = 0x8010D699; D_8010D699 = 0x8010D699;
D_8010D69A = 0x8010D69A; D_8010D69A = 0x8010D69A;
D_8010D69C = 0x8010D69C; gPopupMenu = 0x8010D69C;
D_8010D6A0 = 0x8010D6A0; D_8010D6A0 = 0x8010D6A0;
D_8010D6A4 = 0x8010D6A4; D_8010D6A4 = 0x8010D6A4;
D_8010D6B0 = 0x8010D6B0; D_8010D6B0 = 0x8010D6B0;