mirror of
https://github.com/pmret/papermario.git
synced 2024-11-09 12:32:38 +01:00
small and large boys (#749)
* func_802DE780 * EnterPlayerPostPipe * UnkFoldFunc * smores * func_802403C0_800C40 * 3 mo * filemenu_draw_char * btl_state_update_enemy_move * prepz * fix func thing * btl_state_update_partner_striking_first * PR comments * PR comment * warning
This commit is contained in:
parent
d11054b41a
commit
9d47d968f9
@ -299,7 +299,7 @@ typedef struct PlayerData {
|
|||||||
/* 0x296 */ s16 actionCommandSuccesses;
|
/* 0x296 */ s16 actionCommandSuccesses;
|
||||||
/* 0x298 */ u16 hitsTaken;
|
/* 0x298 */ u16 hitsTaken;
|
||||||
/* 0x29A */ u16 hitsBlocked;
|
/* 0x29A */ u16 hitsBlocked;
|
||||||
/* 0x29C */ s16 playerFirstStrikes;
|
/* 0x29C */ u16 playerFirstStrikes;
|
||||||
/* 0x29E */ s16 enemyFirstStrikes;
|
/* 0x29E */ s16 enemyFirstStrikes;
|
||||||
/* 0x2A0 */ u16 powerBounces;
|
/* 0x2A0 */ u16 powerBounces;
|
||||||
/* 0x2A2 */ u16 battlesCount;
|
/* 0x2A2 */ u16 battlesCount;
|
||||||
@ -1273,10 +1273,10 @@ typedef struct MessageCharData {
|
|||||||
} MessageCharData; // size = 0xC
|
} MessageCharData; // size = 0xC
|
||||||
|
|
||||||
typedef struct MessageCharset {
|
typedef struct MessageCharset {
|
||||||
/* 0x0 */ Vec2b texSize;
|
/* 0x0 */ Vec2bu texSize;
|
||||||
/* 0x2 */ s8 unk_02;
|
/* 0x2 */ s8 unk_02;
|
||||||
/* 0x3 */ u8 newLineY;
|
/* 0x3 */ u8 newLineY;
|
||||||
/* 0x4 */ s16 charRasterSize; // in bytes
|
/* 0x4 */ u16 charRasterSize; // in bytes
|
||||||
/* 0x6 */ char unk_06[0x2];
|
/* 0x6 */ char unk_06[0x2];
|
||||||
/* 0x8 */ MessageCharData* rasters;
|
/* 0x8 */ MessageCharData* rasters;
|
||||||
} MessageCharset; // size = 0xA;
|
} MessageCharset; // size = 0xA;
|
||||||
@ -1308,6 +1308,11 @@ typedef struct MessageNumber {
|
|||||||
/* 0x12 */ char unk_12[0x2];
|
/* 0x12 */ char unk_12[0x2];
|
||||||
} MessageNumber; // size = 0x14
|
} MessageNumber; // size = 0x14
|
||||||
|
|
||||||
|
typedef struct UnkMsgStruct8 {
|
||||||
|
/* 0x00 */ s16 unk_00;
|
||||||
|
/* 0x02 */ char unk_02[0xE];
|
||||||
|
} UnkMsgStruct8; // size = 0x16
|
||||||
|
|
||||||
typedef struct ShopItemEntity {
|
typedef struct ShopItemEntity {
|
||||||
/* 0x00 */ s32 index;
|
/* 0x00 */ s32 index;
|
||||||
/* 0x04 */ Vec3f pos;
|
/* 0x04 */ Vec3f pos;
|
||||||
@ -1420,7 +1425,7 @@ typedef struct GameStatus {
|
|||||||
/* 0x150 */ s16 backgroundMaxY;
|
/* 0x150 */ s16 backgroundMaxY;
|
||||||
/* 0x152 */ s16 backgroundXOffset; /* (used for parallax scroll) */
|
/* 0x152 */ s16 backgroundXOffset; /* (used for parallax scroll) */
|
||||||
/* 0x154 */ UNK_PTR backgroundRaster;
|
/* 0x154 */ UNK_PTR backgroundRaster;
|
||||||
/* 0x158 */ UNK_PTR backgroundPalette;
|
/* 0x158 */ u16* backgroundPalette;
|
||||||
/* 0x15C */ s16 unk_15C;
|
/* 0x15C */ s16 unk_15C;
|
||||||
/* 0x15E */ u16 unk_15E;
|
/* 0x15E */ u16 unk_15E;
|
||||||
/* 0x160 */ Vec3s savedPos;
|
/* 0x160 */ Vec3s savedPos;
|
||||||
@ -1850,7 +1855,7 @@ typedef struct Actor {
|
|||||||
/* 0x218 */ s8 transStatus; /* 0E = yes */
|
/* 0x218 */ s8 transStatus; /* 0E = yes */
|
||||||
/* 0x219 */ s8 transDuration;
|
/* 0x219 */ s8 transDuration;
|
||||||
/* 0x21A */ char unk_21A[2];
|
/* 0x21A */ char unk_21A[2];
|
||||||
/* 0x21C */ u8 status;
|
/* 0x21C */ s8 status;
|
||||||
/* 0x21D */ s8 unk_21D;
|
/* 0x21D */ s8 unk_21D;
|
||||||
/* 0x21E */ s16 unk_21E;
|
/* 0x21E */ s16 unk_21E;
|
||||||
/* 0x220 */ s8 isGlowing; // not the case for goombario
|
/* 0x220 */ s8 isGlowing; // not the case for goombario
|
||||||
@ -2131,7 +2136,7 @@ typedef struct {
|
|||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
/* 0x00000 */ LookAt lookAt;
|
/* 0x00000 */ LookAt lookAt;
|
||||||
/* 0x00020 */ char unk_20[0x10];
|
/* 0x00020 */ Hilite hilite;
|
||||||
/* 0x00030 */ Mtx camPerspMatrix[8]; // could only be length 4, unsure
|
/* 0x00030 */ Mtx camPerspMatrix[8]; // could only be length 4, unsure
|
||||||
/* 0x00230 */ Gfx mainGfx[0x2080];
|
/* 0x00230 */ Gfx mainGfx[0x2080];
|
||||||
/* 0x10630 */ Gfx backgroundGfx[0x200]; // used by gfx_task_background
|
/* 0x10630 */ Gfx backgroundGfx[0x200]; // used by gfx_task_background
|
||||||
@ -2190,6 +2195,18 @@ typedef struct SpriteRasterInfo {
|
|||||||
/* 0x0C */ s32 height;
|
/* 0x0C */ s32 height;
|
||||||
} SpriteRasterInfo; // size = 0x10
|
} SpriteRasterInfo; // size = 0x10
|
||||||
|
|
||||||
|
typedef struct UnkEntityStruct {
|
||||||
|
/* 0x00 */ s32 foldID;
|
||||||
|
/* 0x04 */ s32 entityID;
|
||||||
|
/* 0x08 */ s32 spriteIndex;
|
||||||
|
/* 0x0C */ s32 rasterIndex;
|
||||||
|
/* 0x10 */ Vec3f pos;
|
||||||
|
/* 0x1C */ Vec3f rot;
|
||||||
|
/* 0x28 */ Vec3f scale;
|
||||||
|
/* 0x34 */ f32 unk_34;
|
||||||
|
/* 0x38 */ f32 unk_38;
|
||||||
|
} UnkEntityStruct; // size = 0x3C
|
||||||
|
|
||||||
typedef struct EntityModel {
|
typedef struct EntityModel {
|
||||||
/* 0x00 */ s32 flags;
|
/* 0x00 */ s32 flags;
|
||||||
/* 0x04 */ s8 renderMode;
|
/* 0x04 */ s8 renderMode;
|
||||||
|
@ -2848,6 +2848,7 @@ enum BattleStatusFlags2 {
|
|||||||
BS_FLAGS2_400 = 0x00000400,
|
BS_FLAGS2_400 = 0x00000400,
|
||||||
BS_FLAGS2_800 = 0x00000800,
|
BS_FLAGS2_800 = 0x00000800,
|
||||||
BS_FLAGS2_NO_TARGET_AVAILABLE = 0x00001000,
|
BS_FLAGS2_NO_TARGET_AVAILABLE = 0x00001000,
|
||||||
|
BS_FLAGS2_4000 = 0x00004000,
|
||||||
BS_FLAGS2_10000 = 0x00010000,
|
BS_FLAGS2_10000 = 0x00010000,
|
||||||
BS_FLAGS2_100000 = 0x00100000,
|
BS_FLAGS2_100000 = 0x00100000,
|
||||||
BS_FLAGS2_1000000 = 0x01000000,
|
BS_FLAGS2_1000000 = 0x01000000,
|
||||||
|
@ -112,8 +112,8 @@ void func_80248170(s32 idx);
|
|||||||
void filemenu_set_selected(MenuPanel* menu, s32 col, s32 row);
|
void filemenu_set_selected(MenuPanel* menu, s32 col, s32 row);
|
||||||
void filemenu_set_cursor_alpha(s32 arg0);
|
void filemenu_set_cursor_alpha(s32 arg0);
|
||||||
void filemenu_set_cursor_goal_pos(s32 windowIndex, s32 posX, s32 posY);
|
void filemenu_set_cursor_goal_pos(s32 windowIndex, s32 posX, s32 posY);
|
||||||
Message* filemenu_get_menu_message(s32 idx);
|
u8* filemenu_get_menu_message(s32 idx);
|
||||||
void filemenu_draw_message(Message*, s32 posX, s32 posY, s32 alpha, s32 color, s32 flags);
|
void filemenu_draw_message(s8*, s32 posX, s32 posY, s32 alpha, s32 color, s32 flags);
|
||||||
|
|
||||||
void gfx_task_background(void);
|
void gfx_task_background(void);
|
||||||
|
|
||||||
@ -410,6 +410,7 @@ s32 npc_test_move_simple_with_slipping(s32, f32*, f32*, f32*, f32, f32, f32, f32
|
|||||||
s32 npc_test_move_complex_with_slipping(s32, f32*, f32*, f32*, f32, f32, f32, f32);
|
s32 npc_test_move_complex_with_slipping(s32, f32*, f32*, f32*, f32, f32, f32, f32);
|
||||||
|
|
||||||
// Partner
|
// Partner
|
||||||
|
EvtScript* partner_get_ride_script(void);
|
||||||
void partner_handle_before_battle(void);
|
void partner_handle_before_battle(void);
|
||||||
void partner_walking_update_player_tracking(Npc* partner);
|
void partner_walking_update_player_tracking(Npc* partner);
|
||||||
void partner_walking_update_motion(Npc* partner);
|
void partner_walking_update_motion(Npc* partner);
|
||||||
@ -467,6 +468,8 @@ void set_aux_pan_v(s32 texPannerID, s32 value);
|
|||||||
void enable_world_fog(void);
|
void enable_world_fog(void);
|
||||||
void set_world_fog_dist(s32 start, s32 end);
|
void set_world_fog_dist(s32 start, s32 end);
|
||||||
void set_world_fog_color(s32 r, s32 g, s32 b, s32 a);
|
void set_world_fog_color(s32 r, s32 g, s32 b, s32 a);
|
||||||
|
s32 is_world_fog_enabled(void);
|
||||||
|
void get_world_fog_color(s32* r, s32* g, s32* b, s32* a);
|
||||||
void enable_entity_fog(void);
|
void enable_entity_fog(void);
|
||||||
void set_entity_fog_dist(s32 start, s32 end);
|
void set_entity_fog_dist(s32 start, s32 end);
|
||||||
void set_entity_fog_color(s32 r, s32 g, s32 b, s32 a);
|
void set_entity_fog_color(s32 r, s32 g, s32 b, s32 a);
|
||||||
@ -634,7 +637,7 @@ void dispatch_event_player(s32);
|
|||||||
s32 btl_are_all_enemies_defeated(void);
|
s32 btl_are_all_enemies_defeated(void);
|
||||||
s32 btl_check_enemies_defeated(void);
|
s32 btl_check_enemies_defeated(void);
|
||||||
s32 btl_check_player_defeated(void);
|
s32 btl_check_player_defeated(void);
|
||||||
void btl_show_battle_message(s32, s32);
|
void btl_show_battle_message(s32 messageIndex, s32 duration);
|
||||||
void btl_update_ko_status(void);
|
void btl_update_ko_status(void);
|
||||||
void reset_actor_turn_info(void);
|
void reset_actor_turn_info(void);
|
||||||
void btl_draw_prim_quad(u8 r, u8 g, u8 b, u8 a, u16 left, u16 top, u16 arg6, u16 arg7);
|
void btl_draw_prim_quad(u8 r, u8 g, u8 b, u8 a, u16 left, u16 top, u16 arg6, u16 arg7);
|
||||||
|
@ -225,7 +225,10 @@ void filemenu_draw_contents_file_title(
|
|||||||
draw_number(fileIdx + 1, baseX + 33, baseY + 1, 1, 0, 255, 2);
|
draw_number(fileIdx + 1, baseX + 33, baseY + 1, 1, 0, 255, 2);
|
||||||
} else {
|
} else {
|
||||||
draw_number(fileIdx + 1, baseX + 33, baseY + 1, 1, 0, 255, 2);
|
draw_number(fileIdx + 1, baseX + 33, baseY + 1, 1, 0, 255, 2);
|
||||||
filemenu_draw_file_name(gSaveSlotMetadata[fileIdx].filename, 8, baseX + 46, baseY + 1, 255, 0, 1, 9);
|
filemenu_draw_file_name(
|
||||||
|
gSaveSlotMetadata[fileIdx].filename,
|
||||||
|
ARRAY_COUNT(gSaveSlotMetadata[fileIdx].filename),
|
||||||
|
baseX + 46, baseY + 1, 255, 0, 1, 9);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -93,7 +93,7 @@ void filemenu_yesno_draw_prompt_contents(MenuPanel* tab, s32 posX, s32 posY) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
xOffset = (147 - (i * 11)) / 2;
|
xOffset = (147 - (i * 11)) / 2;
|
||||||
filemenu_draw_file_name(&filemenu_8024C110[0], i + 1, posX + xOffset, posY + 22, 0xFF, 0, 8, 0xB);
|
filemenu_draw_file_name(filemenu_8024C110, i + 1, posX + xOffset, posY + 22, 0xFF, 0, 8, 0xB);
|
||||||
xOffset += (i + 1) * 11;
|
xOffset += (i + 1) * 11;
|
||||||
filemenu_draw_message(filemenu_get_menu_message(FILE_MESSAGE_PERIOD_20), posX + xOffset, posY + 22, 0xFF, 0, 0);
|
filemenu_draw_message(filemenu_get_menu_message(FILE_MESSAGE_PERIOD_20), posX + xOffset, posY + 22, 0xFF, 0, 0);
|
||||||
filemenu_draw_message(filemenu_get_menu_message(FILE_MESSAGE_OK), posX + 70, posY + 38, 0xFF, 0, 0);
|
filemenu_draw_message(filemenu_get_menu_message(FILE_MESSAGE_OK), posX + 70, posY + 38, 0xFF, 0, 0);
|
||||||
|
@ -17,7 +17,6 @@ extern HudScript* D_8024A180[3];
|
|||||||
extern s32 D_8024A18C;
|
extern s32 D_8024A18C;
|
||||||
extern s32 D_8024C108;
|
extern s32 D_8024C108;
|
||||||
extern MenuWindowBP D_8024A190[2];
|
extern MenuWindowBP D_8024A190[2];
|
||||||
extern s32 D_8024A1B4;
|
|
||||||
extern s8 D_8024C090;
|
extern s8 D_8024C090;
|
||||||
extern s32 D_8024C100_C09980[3];
|
extern s32 D_8024C100_C09980[3];
|
||||||
extern u8 D_8024C117;
|
extern u8 D_8024C117;
|
||||||
|
131
src/169BE0.c
131
src/169BE0.c
@ -1,30 +1,145 @@
|
|||||||
#include "common.h"
|
#include "common.h"
|
||||||
|
|
||||||
extern Message* gFileMenuMessages[35];
|
extern u8* gFileMenuMessages[35];
|
||||||
|
|
||||||
extern s32 D_8024B74C[];
|
extern s32 D_8024B74C[];
|
||||||
|
extern Gfx D_8024B760[];
|
||||||
|
extern Gfx* D_8024B7C8; // some gfx pos
|
||||||
|
extern s32 D_8024B7CC;
|
||||||
|
extern s32 D_8024B7D0;
|
||||||
|
extern s32 D_8024B7D4;
|
||||||
|
extern MessageCharset* gMsgCharsets[5];
|
||||||
|
extern UnkMsgStruct8 D_802F4560[];
|
||||||
|
|
||||||
INCLUDE_ASM(s32, "169BE0", filemenu_draw_char);
|
s32 filemenu_draw_char(s32 c, s32 x, s32 y, s32 flag1, s32 color, s32 flag2) {
|
||||||
|
MessageCharset* charset;
|
||||||
|
s32 texSizeX;
|
||||||
|
s32 texSizeY;
|
||||||
|
s32 charRasterSize;
|
||||||
|
MessageCharData* charData;
|
||||||
|
u8* raster;
|
||||||
|
s32 charWidth;
|
||||||
|
|
||||||
|
if (flag1 != D_8024B7CC) {
|
||||||
|
D_8024B7CC = flag1;
|
||||||
|
D_8024B7D0 = 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
charset = gMsgCharsets[D_8024B7CC];
|
||||||
|
texSizeX = charset->texSize.x;
|
||||||
|
texSizeY = charset->texSize.y;
|
||||||
|
charRasterSize = charset->charRasterSize;
|
||||||
|
charData = &charset->rasters[D_8024B7D0];
|
||||||
|
charWidth = charData->monospaceWidth;
|
||||||
|
raster = charData->raster;
|
||||||
|
|
||||||
|
if (c < 0xA2) {
|
||||||
|
charWidth = charData->charWidthTable[c];
|
||||||
|
if (gMasterGfxPos != D_8024B7C8) {
|
||||||
|
gSPDisplayList(gMasterGfxPos++, D_8024B760);
|
||||||
|
D_8024B7D4 = -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (D_8024B7D4 != color) {
|
||||||
|
D_8024B7D4 = color;
|
||||||
|
gDPLoadTLUT_pal16(gMasterGfxPos++, 0, &D_802F4560[color]);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (texSizeX >= 16 && texSizeX % 16 == 0) {
|
||||||
|
gDPLoadTextureBlock_4b(gMasterGfxPos++, &raster[charRasterSize * c], G_IM_FMT_CI,
|
||||||
|
texSizeX, texSizeY, 0,
|
||||||
|
G_TX_WRAP, G_TX_WRAP, G_TX_NOMASK, G_TX_NOMASK, G_TX_NOLOD, G_TX_NOLOD);
|
||||||
|
} else {
|
||||||
|
gDPLoadTextureTile_4b(gMasterGfxPos++, &raster[charRasterSize * c], G_IM_FMT_CI,
|
||||||
|
texSizeX, texSizeY,
|
||||||
|
0, 0, texSizeX - 1, texSizeY - 1, 0,
|
||||||
|
G_TX_WRAP, G_TX_WRAP, G_TX_NOMASK, G_TX_NOMASK, G_TX_NOLOD, G_TX_NOLOD);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (flag2) {
|
||||||
|
gDPSetCombineLERP(gMasterGfxPos++, 0, 0, 0, PRIMITIVE, TEXEL0, 0, PRIMITIVE, 0, 0, 0, 0, PRIMITIVE, TEXEL0, 0, PRIMITIVE, 0);
|
||||||
|
gDPSetRenderMode(gMasterGfxPos++, G_RM_CLD_SURF, G_RM_CLD_SURF2);
|
||||||
|
mainmenu_draw_rect((x + 2) * 4, (y + 2) * 4, (2 + x + texSizeX) * 4, (2 + y + texSizeY) * 4, 0, 0, 0, 0x400, 0x400);
|
||||||
|
gDPPipeSync(gMasterGfxPos++);
|
||||||
|
gDPSetCombineMode(gMasterGfxPos++, G_CC_DECALRGBA, G_CC_DECALRGBA);
|
||||||
|
gDPSetRenderMode(gMasterGfxPos++, G_RM_TEX_EDGE, G_RM_TEX_EDGE2);
|
||||||
|
}
|
||||||
|
|
||||||
|
mainmenu_draw_rect(x * 4, y * 4, (x + texSizeX) * 4, (y + texSizeY) * 4, 0, 0, 0, 0x400, 0x400);
|
||||||
|
D_8024B7C8 = gMasterGfxPos;
|
||||||
|
return charWidth;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (c == 0xF7) {
|
||||||
|
return charWidth - 6;
|
||||||
|
}
|
||||||
|
|
||||||
|
switch (c) {
|
||||||
|
case 0xF3:
|
||||||
|
D_8024B7D0 = 0;
|
||||||
|
break;
|
||||||
|
case 0xF4:
|
||||||
|
D_8024B7D0 = 1;
|
||||||
|
break;
|
||||||
|
case 0xF5:
|
||||||
|
D_8024B7D0 = 2;
|
||||||
|
break;
|
||||||
|
case 0xF6:
|
||||||
|
D_8024B7D0 = 3;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
// issue with the second filemenu_draw_char arg order
|
||||||
|
#ifdef NON_MATCHING
|
||||||
|
void filemenu_draw_message(u8* message, s32 x, s32 y, s32 alpha, s32 color, u32 flags) {
|
||||||
|
s32 flag1 = flags & 1;
|
||||||
|
s32 flag2 = flags >> 3;
|
||||||
|
|
||||||
|
flag2 &= 1;
|
||||||
|
if (flag1 == 1) {
|
||||||
|
y -= 2;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (message < 0x100) {
|
||||||
|
if (message - 0xA2 >= 0x4E) {
|
||||||
|
filemenu_draw_char(message, x, y, flag1, color, flag2);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if ((s32) message >= 0xC6) {
|
||||||
|
message = D_8024B74C[(s32) message - 0xC6];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if ((s32) message < 0) {
|
||||||
|
filemenu_draw_char(0xF3, x, y, flag1, color, flag2);
|
||||||
|
while (*message != 0xFD) {
|
||||||
|
x += filemenu_draw_char(*message++, x, y, flag1, color, flag2);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#else
|
||||||
INCLUDE_ASM(s32, "169BE0", filemenu_draw_message);
|
INCLUDE_ASM(s32, "169BE0", filemenu_draw_message);
|
||||||
|
#endif
|
||||||
|
|
||||||
// data migration
|
// data migration
|
||||||
#ifdef NON_MATCHING
|
#ifdef NON_MATCHING
|
||||||
Message* filemenu_get_menu_message(s32 idx) {
|
u8* filemenu_get_menu_message(s32 idx) {
|
||||||
return gFileMenuMessages[idx];
|
return gFileMenuMessages[idx];
|
||||||
}
|
}
|
||||||
#else
|
#else
|
||||||
INCLUDE_ASM(s32, "169BE0", filemenu_get_menu_message);
|
INCLUDE_ASM(s32, "169BE0", filemenu_get_menu_message);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
void filemenu_draw_file_name(u8* arg0, s32 arg1, s32 arg2, s32 arg3, s32 arg4, s32 arg5, s32 arg6, s32 arg7) {
|
void filemenu_draw_file_name(u8* filename, s32 length, s32 x, s32 y, s32 alpha, s32 arg5, s32 arg6, s32 charWidth) {
|
||||||
s32 i;
|
s32 i;
|
||||||
|
|
||||||
for (i = 0; i < arg1; i++) {
|
for (i = 0; i < length; i++) {
|
||||||
u32 temp = arg0[i];
|
u32 c = filename[i];
|
||||||
|
|
||||||
if (temp != 0xF7) {
|
if (c != 0xF7) {
|
||||||
filemenu_draw_message(temp, arg2 + (i * arg7), arg3, arg4, arg5, arg6);
|
filemenu_draw_message(c, x + (i * charWidth), y, alpha, arg5, arg6);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
467
src/16F740.c
467
src/16F740.c
@ -382,13 +382,13 @@ void btl_state_update_begin_player_turn(void) {
|
|||||||
|
|
||||||
if (gBattleState2 != BATTLE_STATE2_UNK_14) {
|
if (gBattleState2 != BATTLE_STATE2_UNK_14) {
|
||||||
if (gBattleState2 == BATTLE_STATE2_UNK_64 && btl_cam_is_moving_done()) {
|
if (gBattleState2 == BATTLE_STATE2_UNK_64 && btl_cam_is_moving_done()) {
|
||||||
gBattleStatus.flags1 &= ~0x80000;
|
gBattleStatus.flags1 &= ~BS_FLAGS1_80000;
|
||||||
reset_actor_turn_info();
|
reset_actor_turn_info();
|
||||||
battleStatus->unk_86 = 0x7F;
|
battleStatus->unk_86 = 0x7F;
|
||||||
battleStatus->blockResult = 0x7F;
|
battleStatus->blockResult = 0x7F;
|
||||||
battleStatus->selectedMoveID = 0;
|
battleStatus->selectedMoveID = 0;
|
||||||
gBattleStatus.flags1 |= 8;
|
gBattleStatus.flags1 |= BS_FLAGS1_8;
|
||||||
gBattleStatus.flags2 &= ~0x1000000;
|
gBattleStatus.flags2 &= ~BS_FLAGS2_1000000;
|
||||||
player->unk_21D = 0;
|
player->unk_21D = 0;
|
||||||
player->flags |= 0x0C000000;
|
player->flags |= 0x0C000000;
|
||||||
|
|
||||||
@ -404,7 +404,7 @@ void btl_state_update_begin_player_turn(void) {
|
|||||||
if (battleStatus->outtaSightActive == 0) {
|
if (battleStatus->outtaSightActive == 0) {
|
||||||
gBattleState2 = BATTLE_STATE2_PLAYER_DEFEATED;
|
gBattleState2 = BATTLE_STATE2_PLAYER_DEFEATED;
|
||||||
} else {
|
} else {
|
||||||
battleStatus->battlePhase = 0xC;
|
battleStatus->battlePhase = PHASE_ENEMY_BEGIN;
|
||||||
script = start_script(partner->onTurnChanceScriptSource, EVT_PRIORITY_A, 0);
|
script = start_script(partner->onTurnChanceScriptSource, EVT_PRIORITY_A, 0);
|
||||||
partner->onTurnChangeScript = script;
|
partner->onTurnChangeScript = script;
|
||||||
gBattleState2 = BATTLE_STATE2_UNK_14;
|
gBattleState2 = BATTLE_STATE2_UNK_14;
|
||||||
@ -415,7 +415,7 @@ void btl_state_update_begin_player_turn(void) {
|
|||||||
} else if (!does_script_exist(partner->onTurnChangeID)) {
|
} else if (!does_script_exist(partner->onTurnChangeID)) {
|
||||||
battleStatus->outtaSightActive = 0;
|
battleStatus->outtaSightActive = 0;
|
||||||
gBattleState2 = BATTLE_STATE2_PLAYER_DEFEATED;
|
gBattleState2 = BATTLE_STATE2_PLAYER_DEFEATED;
|
||||||
gBattleStatus.flags2 |= 4;
|
gBattleStatus.flags2 |= BS_FLAGS2_4;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (gBattleState2 != BATTLE_STATE2_UNK_2) {
|
if (gBattleState2 != BATTLE_STATE2_UNK_2) {
|
||||||
@ -431,7 +431,7 @@ void btl_state_update_begin_player_turn(void) {
|
|||||||
fx_water_splash(1, player->currentPos.x + 15.0f, player->currentPos.y + 22.0f, player->currentPos.z + 5.0f, 1.0f, 0x18);
|
fx_water_splash(1, player->currentPos.x + 15.0f, player->currentPos.y + 22.0f, player->currentPos.z + 5.0f, 1.0f, 0x18);
|
||||||
battleStatus->waterBlockEffect = NULL;
|
battleStatus->waterBlockEffect = NULL;
|
||||||
sfx_play_sound(SOUND_299);
|
sfx_play_sound(SOUND_299);
|
||||||
btl_show_battle_message(0x27, 0x3C);
|
btl_show_battle_message(0x27, 60);
|
||||||
gBattleState2 = BATTLE_STATE2_UNK_2;
|
gBattleState2 = BATTLE_STATE2_UNK_2;
|
||||||
} else {
|
} else {
|
||||||
gBattleState2 = BATTLE_STATE2_UNK_B;
|
gBattleState2 = BATTLE_STATE2_UNK_B;
|
||||||
@ -453,7 +453,7 @@ void btl_state_update_begin_player_turn(void) {
|
|||||||
if (battleStatus->cloudNineTurnsLeft <= 0) {
|
if (battleStatus->cloudNineTurnsLeft <= 0) {
|
||||||
remove_effect(battleStatus->cloudNineEffect);
|
remove_effect(battleStatus->cloudNineEffect);
|
||||||
battleStatus->cloudNineEffect = NULL;
|
battleStatus->cloudNineEffect = NULL;
|
||||||
btl_show_battle_message(0x29, 0x3C);
|
btl_show_battle_message(0x29, 60);
|
||||||
gBattleState2 = BATTLE_STATE2_UNK_C;
|
gBattleState2 = BATTLE_STATE2_UNK_C;
|
||||||
} else {
|
} else {
|
||||||
gBattleState2 = BATTLE_STATE2_UNK_F;
|
gBattleState2 = BATTLE_STATE2_UNK_F;
|
||||||
@ -472,14 +472,14 @@ void btl_state_update_begin_player_turn(void) {
|
|||||||
switch (gBattleState2) {
|
switch (gBattleState2) {
|
||||||
case BATTLE_STATE2_UNK_F:
|
case BATTLE_STATE2_UNK_F:
|
||||||
if (battleStatus->turboChargeTurnsLeft != 0) {
|
if (battleStatus->turboChargeTurnsLeft != 0) {
|
||||||
if (gBattleStatus.flags2 & 0x100) {
|
if (gBattleStatus.flags2 & BS_FLAGS2_100) {
|
||||||
gBattleStatus.flags2 &= ~0x100;
|
gBattleStatus.flags2 &= ~BS_FLAGS2_100;
|
||||||
gBattleState2 = BATTLE_STATE2_UNK_15;
|
gBattleState2 = BATTLE_STATE2_UNK_15;
|
||||||
} else {
|
} else {
|
||||||
battleStatus->turboChargeTurnsLeft--;
|
battleStatus->turboChargeTurnsLeft--;
|
||||||
battleStatus->unk_43C->unk_0C->unk_24 = battleStatus->turboChargeTurnsLeft;
|
battleStatus->unk_43C->unk_0C->unk_24 = battleStatus->turboChargeTurnsLeft;
|
||||||
if (battleStatus->turboChargeTurnsLeft <= 0) {
|
if (battleStatus->turboChargeTurnsLeft <= 0) {
|
||||||
btl_show_battle_message(0x2B, 0x3C);
|
btl_show_battle_message(0x2B, 60);
|
||||||
gBattleState2 = BATTLE_STATE2_UNK_10;
|
gBattleState2 = BATTLE_STATE2_UNK_10;
|
||||||
} else {
|
} else {
|
||||||
gBattleState2 = BATTLE_STATE2_UNK_15;
|
gBattleState2 = BATTLE_STATE2_UNK_15;
|
||||||
@ -497,20 +497,20 @@ void btl_state_update_begin_player_turn(void) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (gBattleState2 == BATTLE_STATE2_UNK_15) {
|
if (gBattleState2 == BATTLE_STATE2_UNK_15) {
|
||||||
if ((player->debuff == 9) && (player->stoneStatus == 0)) {
|
if (player->debuff == 9 && player->stoneStatus == 0) {
|
||||||
gBattleStatus.flags1 |= 0x20;
|
gBattleStatus.flags1 |= BS_FLAGS1_SP_EVT_ACTIVE;
|
||||||
dispatch_damage_event_player_0(1, 0xA);
|
dispatch_damage_event_player_0(1, 0xA);
|
||||||
}
|
}
|
||||||
|
|
||||||
battleStatus->rushFlags = 0;
|
battleStatus->rushFlags = 0;
|
||||||
gBattleStatus.flags2 &= ~0x8000000;
|
gBattleStatus.flags2 &= ~BS_FLAGS2_8000000;
|
||||||
if (!(gBattleStatus.flags2 & 0x40)) {
|
if (!(gBattleStatus.flags2 & BS_FLAGS2_40)) {
|
||||||
if (playerData->curHP <= 1 && is_ability_active(0x14)) {
|
if (playerData->curHP <= 1 && is_ability_active(0x14)) {
|
||||||
gBattleStatus.flags2 |= 0x08000000;
|
gBattleStatus.flags2 |= BS_FLAGS2_8000000;
|
||||||
battleStatus->rushFlags |= 1;
|
battleStatus->rushFlags |= 1;
|
||||||
}
|
}
|
||||||
if (playerData->curHP < 6 && is_ability_active(0x1E) && !(battleStatus->rushFlags & 1)) {
|
if (playerData->curHP < 6 && is_ability_active(0x1E) && !(battleStatus->rushFlags & 1)) {
|
||||||
gBattleStatus.flags2 |= 0x08000000;
|
gBattleStatus.flags2 |= BS_FLAGS2_8000000;
|
||||||
battleStatus->rushFlags |= 2;
|
battleStatus->rushFlags |= 2;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -688,7 +688,7 @@ void btl_state_update_begin_player_turn(void) {
|
|||||||
btl_set_state(BATTLE_STATE_SWITCH_TO_PLAYER);
|
btl_set_state(BATTLE_STATE_SWITCH_TO_PLAYER);
|
||||||
} else{
|
} else{
|
||||||
btl_set_state(BATTLE_STATE_BEGIN_PARTNER_TURN);
|
btl_set_state(BATTLE_STATE_BEGIN_PARTNER_TURN);
|
||||||
gBattleStatus.flags2 |= 2;
|
gBattleStatus.flags2 |= BS_FLAGS2_2;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -815,7 +815,7 @@ block_27:
|
|||||||
if (partner->onTurnChanceScriptSource != NULL) {
|
if (partner->onTurnChanceScriptSource != NULL) {
|
||||||
Evt* script;
|
Evt* script;
|
||||||
|
|
||||||
battleStatus->battlePhase = 0xC;
|
battleStatus->battlePhase = PHASE_ENEMY_BEGIN;
|
||||||
script = start_script(partner->onTurnChanceScriptSource, EVT_PRIORITY_A, 0);
|
script = start_script(partner->onTurnChanceScriptSource, EVT_PRIORITY_A, 0);
|
||||||
partner->onTurnChangeScript = script;
|
partner->onTurnChangeScript = script;
|
||||||
partner->onTurnChangeID = script->id;
|
partner->onTurnChangeID = script->id;
|
||||||
@ -1438,7 +1438,7 @@ void btl_state_update_run_away(void) {
|
|||||||
if (gGameStatusPtr->debugEnemyContact == 4) {
|
if (gGameStatusPtr->debugEnemyContact == 4) {
|
||||||
player->state.varTable[0] = 100;
|
player->state.varTable[0] = 100;
|
||||||
}
|
}
|
||||||
battleStatus->battlePhase = 3;
|
battleStatus->battlePhase = PHASE_RUN_AWAY_START;
|
||||||
script = start_script(&PlayerScriptDispatcher, EVT_PRIORITY_A, 0);
|
script = start_script(&PlayerScriptDispatcher, EVT_PRIORITY_A, 0);
|
||||||
player->takeTurnScript = script;
|
player->takeTurnScript = script;
|
||||||
player->takeTurnID = script->id;
|
player->takeTurnID = script->id;
|
||||||
@ -1509,7 +1509,7 @@ void btl_state_update_run_away(void) {
|
|||||||
|
|
||||||
if (gBattleState2 == BATTLE_STATE2_UNK_B) {
|
if (gBattleState2 == BATTLE_STATE2_UNK_B) {
|
||||||
playerData->battlesFled++;
|
playerData->battlesFled++;
|
||||||
if (!(gBattleStatus.flags2 & 0x02000000)) {
|
if (!(gBattleStatus.flags2 & BS_FLAGS2_2000000)) {
|
||||||
bgm_set_song(0, -1, 0, 1500, 8);
|
bgm_set_song(0, -1, 0, 1500, 8);
|
||||||
}
|
}
|
||||||
btl_set_state(BATTLE_STATE_END_BATTLE);
|
btl_set_state(BATTLE_STATE_END_BATTLE);
|
||||||
@ -1517,7 +1517,7 @@ void btl_state_update_run_away(void) {
|
|||||||
|
|
||||||
switch (gBattleState2) {
|
switch (gBattleState2) {
|
||||||
case BATTLE_STATE2_UNK_3:
|
case BATTLE_STATE2_UNK_3:
|
||||||
battleStatus->battlePhase = 7;
|
battleStatus->battlePhase = PHASE_RUN_AWAY_FAIL;
|
||||||
script = start_script(&PlayerScriptDispatcher, EVT_PRIORITY_A, 0);
|
script = start_script(&PlayerScriptDispatcher, EVT_PRIORITY_A, 0);
|
||||||
player->takeTurnScript = script;
|
player->takeTurnScript = script;
|
||||||
player->takeTurnID = script->id;
|
player->takeTurnID = script->id;
|
||||||
@ -1777,13 +1777,12 @@ INCLUDE_ASM(s32, "16F740", btl_state_update_end_player_turn);
|
|||||||
void btl_state_draw_end_player_turn(void) {
|
void btl_state_draw_end_player_turn(void) {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void btl_state_update_partner_move(void) {
|
void btl_state_update_partner_move(void) {
|
||||||
BattleStatus* battleStatus = &gBattleStatus;
|
BattleStatus* battleStatus = &gBattleStatus;
|
||||||
PlayerData* playerData = &gPlayerData;
|
PlayerData* playerData = &gPlayerData;
|
||||||
Actor* enemyActor;
|
|
||||||
Actor* player = battleStatus->playerActor;
|
Actor* player = battleStatus->playerActor;
|
||||||
Actor* partner = battleStatus->partnerActor;
|
Actor* partner = battleStatus->partnerActor;
|
||||||
|
Actor* enemyActor;
|
||||||
Evt* script;
|
Evt* script;
|
||||||
s8 switchCondition;
|
s8 switchCondition;
|
||||||
s32 phi_s3;
|
s32 phi_s3;
|
||||||
@ -1910,7 +1909,7 @@ void btl_state_update_partner_move(void) {
|
|||||||
|
|
||||||
if ((s8) partner->status == 0xD && btl_are_all_enemies_defeated() == FALSE) {
|
if ((s8) partner->status == 0xD && btl_are_all_enemies_defeated() == FALSE) {
|
||||||
btl_cam_use_preset(BTL_CAM_PRESET_54);
|
btl_cam_use_preset(BTL_CAM_PRESET_54);
|
||||||
btl_show_battle_message(0x23, 0x3C);
|
btl_show_battle_message(0x23, 60);
|
||||||
partner->status = 0;
|
partner->status = 0;
|
||||||
partner->unk_21D = 0;
|
partner->unk_21D = 0;
|
||||||
gBattleState2 = BATTLE_STATE2_UNK_B;
|
gBattleState2 = BATTLE_STATE2_UNK_B;
|
||||||
@ -1992,7 +1991,7 @@ void btl_state_update_partner_move(void) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
sfx_play_sound(SOUND_2107);
|
sfx_play_sound(SOUND_2107);
|
||||||
btl_show_battle_message(phi_s0, 0x3C);
|
btl_show_battle_message(phi_s0, 60);
|
||||||
|
|
||||||
for (i = 0; i < ARRAY_COUNT(battleStatus->enemyActors); i++) {
|
for (i = 0; i < ARRAY_COUNT(battleStatus->enemyActors); i++) {
|
||||||
enemyActor = battleStatus->enemyActors[i];
|
enemyActor = battleStatus->enemyActors[i];
|
||||||
@ -2177,12 +2176,420 @@ void btl_state_update_next_enemy(void) {
|
|||||||
void btl_state_draw_next_enemy(void) {
|
void btl_state_draw_next_enemy(void) {
|
||||||
}
|
}
|
||||||
|
|
||||||
INCLUDE_ASM(s32, "16F740", btl_state_update_enemy_move);
|
void btl_state_update_enemy_move(void) {
|
||||||
|
BattleStatus* battleStatus = &gBattleStatus;
|
||||||
|
Actor* player = gBattleStatus.playerActor;
|
||||||
|
Actor* partner = gBattleStatus.partnerActor;
|
||||||
|
Actor* enemy;
|
||||||
|
s32 i;
|
||||||
|
|
||||||
|
Evt* script;
|
||||||
|
s32 messageIndex;
|
||||||
|
s32 cond;
|
||||||
|
|
||||||
|
switch (gBattleState2) {
|
||||||
|
case BATTLE_STATE2_UNK_0:
|
||||||
|
case BATTLE_STATE2_UNK_1:
|
||||||
|
gBattleStatus.flags1 &= ~BS_FLAGS1_2;
|
||||||
|
gBattleStatus.flags1 &= ~BS_FLAGS1_200000;
|
||||||
|
player->flags &= ~ACTOR_FLAG_8000000;
|
||||||
|
if (partner != NULL) {
|
||||||
|
partner->flags &= ~ACTOR_FLAG_8000000;
|
||||||
|
}
|
||||||
|
battleStatus->unk_8C = 0;
|
||||||
|
battleStatus->lastAttackDamage = 0;
|
||||||
|
battleStatus->actionSuccess = 0;
|
||||||
|
battleStatus->unk_86 = 0x7F;
|
||||||
|
battleStatus->blockResult = 0x7F;
|
||||||
|
battleStatus->unk_19A = 0;
|
||||||
|
reset_actor_turn_info();
|
||||||
|
gBattleStatus.flags1 |= BS_FLAGS1_100;
|
||||||
|
player->status = 0;
|
||||||
|
if (partner != NULL) {
|
||||||
|
partner->status = 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
gBattleStatus.flags2 |= BS_FLAGS2_4000;
|
||||||
|
for (i = 0; i < ARRAY_COUNT(battleStatus->enemyActors); i++) {
|
||||||
|
enemy = battleStatus->enemyActors[i];
|
||||||
|
if (enemy != NULL) {
|
||||||
|
enemy->flags &= ~ACTOR_FLAG_80000;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
for (i = 0; i < ARRAY_COUNT(battleStatus->enemyActors); i++) {
|
||||||
|
enemy = battleStatus->enemyActors[i];
|
||||||
|
if (enemy != NULL) {
|
||||||
|
if (!(enemy->flags & ACTOR_FLAG_NO_DMG_APPLY)) {
|
||||||
|
enemy->flags &= ~ACTOR_FLAG_8000000;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
enemy = battleStatus->currentTurnEnemy;
|
||||||
|
if (!(enemy->flags & ACTOR_FLAG_NO_ATTACK)) {
|
||||||
|
reset_all_actor_sounds(enemy);
|
||||||
|
battleStatus->battlePhase = PHASE_EXECUTE_ACTION;
|
||||||
|
script = start_script(enemy->takeTurnScriptSource, 0xA, 0);
|
||||||
|
enemy->takeTurnScript = script;
|
||||||
|
enemy->takeTurnID = script->id;
|
||||||
|
script->owner1.actorID = battleStatus->activeEnemyActorID;
|
||||||
|
}
|
||||||
|
gBattleState2 = BATTLE_STATE2_UNK_2;
|
||||||
|
break;
|
||||||
|
case BATTLE_STATE2_UNK_2:
|
||||||
|
if (player->takeTurnScript == NULL || !does_script_exist(player->takeTurnID)) {
|
||||||
|
player->takeTurnScript = NULL;
|
||||||
|
|
||||||
|
if (player->onHitScript == NULL || !does_script_exist(player->onHitID)) {
|
||||||
|
player->onHitScript = NULL;
|
||||||
|
if (partner != NULL) {
|
||||||
|
if (partner->onHitScript == NULL || !does_script_exist(partner->onHitID)) {
|
||||||
|
partner->onHitScript = NULL;
|
||||||
|
} else {
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
cond = FALSE;
|
||||||
|
for (i = 0; i < ARRAY_COUNT(battleStatus->enemyActors); i++) {
|
||||||
|
enemy = battleStatus->enemyActors[i];
|
||||||
|
if (enemy != NULL && enemy->onHitScript != NULL) {
|
||||||
|
if (does_script_exist(enemy->onHitID)) {
|
||||||
|
cond = TRUE;
|
||||||
|
} else {
|
||||||
|
enemy->onHitScript = NULL;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!cond) {
|
||||||
|
if (btl_check_player_defeated()) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
for (i = 0; i < ARRAY_COUNT(battleStatus->enemyActors); i++) {
|
||||||
|
enemy = battleStatus->enemyActors[i];
|
||||||
|
if (enemy != NULL && enemy->takeTurnScript != NULL) {
|
||||||
|
if (does_script_exist(enemy->takeTurnID)) {
|
||||||
|
cond = TRUE;
|
||||||
|
} else {
|
||||||
|
enemy->takeTurnScript = NULL;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!cond || (gBattleStatus.flags1 & BS_FLAGS1_200000)) {
|
||||||
|
gBattleStatus.flags1 &= ~BS_FLAGS1_100;
|
||||||
|
gBattleStatus.flags2 &= ~BS_FLAGS2_4000;
|
||||||
|
if (btl_check_enemies_defeated()) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (battleStatus->unk_8C == 0) {
|
||||||
|
if (gGameStatusPtr->demoFlags & 1) {
|
||||||
|
btl_set_state(BATTLE_STATE_END_DEMO_BATTLE);
|
||||||
|
} else {
|
||||||
|
btl_update_ko_status();
|
||||||
|
if (player->status != 0) {
|
||||||
|
player->flags |= ACTOR_FLAG_8000000 | ACTOR_FLAG_4000000;
|
||||||
|
if (partner != NULL) {
|
||||||
|
partner->flags |= ACTOR_FLAG_8000000 | ACTOR_FLAG_4000000;
|
||||||
|
}
|
||||||
|
btl_cam_use_preset(BTL_CAM_PRESET_33);
|
||||||
|
|
||||||
|
switch (player->status) {
|
||||||
|
case STATUS_DIZZY:
|
||||||
|
messageIndex = 0xA;
|
||||||
|
break;
|
||||||
|
case STATUS_SLEEP:
|
||||||
|
messageIndex = 0xB;
|
||||||
|
break;
|
||||||
|
case STATUS_FROZEN:
|
||||||
|
messageIndex = 0xC;
|
||||||
|
break;
|
||||||
|
case STATUS_POISON:
|
||||||
|
messageIndex = 0xD;
|
||||||
|
break;
|
||||||
|
case STATUS_SHRINK:
|
||||||
|
messageIndex = 0xE;
|
||||||
|
break;
|
||||||
|
case STATUS_PARALYZE:
|
||||||
|
messageIndex = 0xF;
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
messageIndex = 0;
|
||||||
|
gBattleState2 = BATTLE_STATE2_UNK_14;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
btl_show_battle_message(messageIndex, 60);
|
||||||
|
player->status = 0;
|
||||||
|
gBattleState2 = BATTLE_STATE2_UNK_B;
|
||||||
|
break;
|
||||||
|
} else {
|
||||||
|
gBattleState2 = BATTLE_STATE2_UNK_14;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case BATTLE_STATE2_UNK_B:
|
||||||
|
if (!btl_is_popup_displayed()) {
|
||||||
|
btl_cam_use_preset(BTL_CAM_PRESET_C);
|
||||||
|
btl_cam_move(15);
|
||||||
|
D_8029F248 = 10;
|
||||||
|
gBattleState2 = BATTLE_STATE2_UNK_C;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case BATTLE_STATE2_UNK_C:
|
||||||
|
if (D_8029F248 != 0) {
|
||||||
|
D_8029F248--;
|
||||||
|
} else {
|
||||||
|
gBattleState2 = BATTLE_STATE2_UNK_14;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
switch (gBattleState2) {
|
||||||
|
case BATTLE_STATE2_UNK_14:
|
||||||
|
if (partner != NULL) {
|
||||||
|
if (partner->status == 0xD) {
|
||||||
|
player->flags |= ACTOR_FLAG_8000000 | ACTOR_FLAG_4000000;
|
||||||
|
partner->flags |= ACTOR_FLAG_8000000 | ACTOR_FLAG_4000000;
|
||||||
|
btl_cam_use_preset(BTL_CAM_PRESET_54);
|
||||||
|
btl_show_battle_message(0x23, 60);
|
||||||
|
partner->status = 0;
|
||||||
|
gBattleState2 = BATTLE_STATE2_UNK_15;
|
||||||
|
} else {
|
||||||
|
gBattleState2 = BATTLE_STATE2_UNK_1E;
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
gBattleState2 = BATTLE_STATE2_UNK_1E;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case BATTLE_STATE2_UNK_15:
|
||||||
|
if (!btl_is_popup_displayed()) {
|
||||||
|
btl_cam_use_preset(BTL_CAM_PRESET_C);
|
||||||
|
btl_cam_move(15);
|
||||||
|
D_8029F248 = 10;
|
||||||
|
gBattleState2 = BATTLE_STATE2_UNK_16;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case BATTLE_STATE2_UNK_16:
|
||||||
|
if (D_8029F248 != 0) {
|
||||||
|
D_8029F248--;
|
||||||
|
} else {
|
||||||
|
gBattleState2 = BATTLE_STATE2_UNK_1E;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (gBattleState2 == BATTLE_STATE2_UNK_1E) {
|
||||||
|
btl_set_state(BATTLE_STATE_NEXT_ENEMY);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
void btl_state_draw_enemy_move(void) {
|
void btl_state_draw_enemy_move(void) {
|
||||||
}
|
}
|
||||||
|
|
||||||
INCLUDE_ASM(s32, "16F740", btl_state_update_first_strike);
|
void btl_state_update_first_strike(void) {
|
||||||
|
PlayerData* playerData = &gPlayerData;
|
||||||
|
BattleStatus* battleStatus = &gBattleStatus;
|
||||||
|
EncounterStatus* encounterStatus = &gCurrentEncounter;
|
||||||
|
Actor* player = gBattleStatus.playerActor;
|
||||||
|
Actor* partner = gBattleStatus.partnerActor;
|
||||||
|
Evt* script;
|
||||||
|
Actor* enemy;
|
||||||
|
s32 cond;
|
||||||
|
s32 i;
|
||||||
|
|
||||||
|
switch (gBattleState2) {
|
||||||
|
case BATTLE_STATE2_UNK_0:
|
||||||
|
D_8029F254 = 0;
|
||||||
|
btl_merlee_on_first_strike();
|
||||||
|
if (playerData->playerFirstStrikes < 9999) {
|
||||||
|
playerData->playerFirstStrikes++;
|
||||||
|
}
|
||||||
|
battleStatus->rushFlags = 0;
|
||||||
|
gBattleStatus.flags2 &= ~BS_FLAGS2_8000000;
|
||||||
|
|
||||||
|
if (!(gBattleStatus.flags2 & BS_FLAGS2_40)) {
|
||||||
|
if (playerData->curHP < 2 && is_ability_active(ABILITY_MEGA_RUSH)) {
|
||||||
|
gBattleStatus.flags2 |= BS_FLAGS2_8000000;
|
||||||
|
battleStatus->rushFlags |= 1;
|
||||||
|
}
|
||||||
|
if (playerData->curHP < 6 && is_ability_active(ABILITY_POWER_RUSH) &&
|
||||||
|
!(battleStatus->rushFlags & RUSH_FLAG_MEGA))
|
||||||
|
{
|
||||||
|
gBattleStatus.flags2 |= BS_FLAGS2_8000000;
|
||||||
|
battleStatus->rushFlags |= 2;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
switch (encounterStatus->hitType) {
|
||||||
|
case 2:
|
||||||
|
battleStatus->moveCategory = 0;
|
||||||
|
battleStatus->selectedMoveID = MOVE_UNUSED_JUMP4;
|
||||||
|
battleStatus->selectedItemID = encounterStatus->hitTier;
|
||||||
|
battleStatus->currentTargetListFlags = gMoveTable[MOVE_UNUSED_JUMP4].flags;
|
||||||
|
break;
|
||||||
|
case 4:
|
||||||
|
battleStatus->moveCategory = 1;
|
||||||
|
battleStatus->selectedMoveID = MOVE_UNUSED_HAMMER4;
|
||||||
|
battleStatus->selectedItemID = encounterStatus->hitTier;
|
||||||
|
battleStatus->currentTargetListFlags = gMoveTable[MOVE_UNUSED_HAMMER4].flags;
|
||||||
|
break;
|
||||||
|
case 6:
|
||||||
|
btl_set_state(3);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
enemy = get_actor(ACTOR_ENEMY0);
|
||||||
|
if (enemy->onHitScriptSource != NULL) {
|
||||||
|
enemy->lastEventType = EVENT_BEGIN_FIRST_STRIKE;
|
||||||
|
script = start_script(enemy->onHitScriptSource, 0xA, 0x20);
|
||||||
|
enemy->onHitScript = script;
|
||||||
|
enemy->onHitID = script->id;
|
||||||
|
script->owner1.actorID = enemy->actorID;
|
||||||
|
}
|
||||||
|
gBattleState2 = BATTLE_STATE2_UNK_1;
|
||||||
|
break;
|
||||||
|
case BATTLE_STATE2_UNK_1:
|
||||||
|
enemy = get_actor(ACTOR_ENEMY0);
|
||||||
|
if (enemy->onHitScriptSource != NULL) {
|
||||||
|
if (does_script_exist(enemy->onHitID)) {
|
||||||
|
break;
|
||||||
|
} else {
|
||||||
|
enemy->onHitScript = NULL;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func_80263230(player, enemy);
|
||||||
|
battleStatus->unk_8C = 0;
|
||||||
|
battleStatus->lastAttackDamage = 0;
|
||||||
|
battleStatus->unk_19A = 0;
|
||||||
|
gBattleStatus.flags1 &= ~BS_FLAGS1_2;
|
||||||
|
gBattleStatus.flags2 |= BS_FLAGS2_1000000;
|
||||||
|
gBattleStatus.flags1 &= ~BS_FLAGS1_80000;
|
||||||
|
increment_status_menu_disabled();
|
||||||
|
btl_cam_use_preset(BTL_CAM_PRESET_10);
|
||||||
|
btl_cam_target_actor(0);
|
||||||
|
reset_actor_turn_info();
|
||||||
|
battleStatus->battlePhase = PHASE_FIRST_STRIKE;
|
||||||
|
script = start_script(&PlayerScriptDispatcher, 0xA, 0);
|
||||||
|
player->takeTurnScript = script;
|
||||||
|
D_8029F248 = 3;
|
||||||
|
gBattleState2 = BATTLE_STATE2_UNK_2;
|
||||||
|
player->takeTurnID = script->id;
|
||||||
|
script->owner1.actorID = ACTOR_PLAYER;
|
||||||
|
break;
|
||||||
|
case BATTLE_STATE2_UNK_2:
|
||||||
|
if (D_8029F248 != 0) {
|
||||||
|
D_8029F248--;
|
||||||
|
} else {
|
||||||
|
D_8029F254 = 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!(gBattleStatus.flags1 & BS_FLAGS1_200000)) {
|
||||||
|
if (player->takeTurnScript != NULL && does_script_exist(player->takeTurnID)) {
|
||||||
|
break;
|
||||||
|
} else {
|
||||||
|
player->takeTurnScript = NULL;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
gBattleStatus.flags1 &= ~BS_FLAGS1_100;
|
||||||
|
if (player->onHitScript == NULL || !does_script_exist(player->onHitID)) {
|
||||||
|
player->onHitScript = NULL;
|
||||||
|
if (partner != NULL) {
|
||||||
|
if (partner->onHitScript != NULL && does_script_exist(partner->onHitID)) {
|
||||||
|
break;
|
||||||
|
} else {
|
||||||
|
partner->onHitScript = NULL;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
cond = FALSE;
|
||||||
|
for (i = 0; i < ARRAY_COUNT(battleStatus->enemyActors); i++) {
|
||||||
|
enemy = battleStatus->enemyActors[i];
|
||||||
|
if (enemy != NULL && enemy->takeTurnScript != NULL) {
|
||||||
|
if (does_script_exist(enemy->takeTurnID)) {
|
||||||
|
cond = TRUE;
|
||||||
|
} else {
|
||||||
|
enemy->takeTurnScript = NULL;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!cond) {
|
||||||
|
for (i = 0; i < ARRAY_COUNT(battleStatus->enemyActors); i++) {
|
||||||
|
enemy = battleStatus->enemyActors[i];
|
||||||
|
if (enemy != NULL && enemy->onHitScript != NULL) {
|
||||||
|
if (does_script_exist(enemy->onHitID)) {
|
||||||
|
cond = TRUE;
|
||||||
|
} else {
|
||||||
|
enemy->onHitScript = NULL;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!cond) {
|
||||||
|
for (i = 0; i < ARRAY_COUNT(battleStatus->enemyActors); i++) {
|
||||||
|
enemy = battleStatus->enemyActors[i];
|
||||||
|
if (enemy != NULL) {
|
||||||
|
enemy->flags &= ~ACTOR_FLAG_80000;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (battleStatus->unk_8C == 0) {
|
||||||
|
decrement_status_menu_disabled();
|
||||||
|
if (!(gGameStatusPtr->demoFlags & 1)) {
|
||||||
|
if (!btl_check_player_defeated() && !btl_check_enemies_defeated()) {
|
||||||
|
Actor* target = get_actor(player->targetActorID);
|
||||||
|
|
||||||
|
if (target != NULL) {
|
||||||
|
if (target->onHitScriptSource != NULL) {
|
||||||
|
target->lastEventType = EVENT_END_FIRST_STRIKE;
|
||||||
|
script = start_script(target->onHitScriptSource, 0xA, 0x20);
|
||||||
|
target->onHitScript = script;
|
||||||
|
target->onHitID = script->id;
|
||||||
|
script->owner1.actorID = target->actorID;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
gBattleState2 = BATTLE_STATE2_UNK_3;
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
btl_set_state(BATTLE_STATE_END_DEMO_BATTLE);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case BATTLE_STATE2_UNK_3:
|
||||||
|
cond = FALSE;
|
||||||
|
for (i = 0; i < ARRAY_COUNT(battleStatus->enemyActors); i++) {
|
||||||
|
enemy = battleStatus->enemyActors[i];
|
||||||
|
if (enemy != NULL && enemy->onHitScript != NULL) {
|
||||||
|
if (does_script_exist(enemy->onHitID)) {
|
||||||
|
cond = TRUE;
|
||||||
|
} else {
|
||||||
|
enemy->onHitScript = NULL;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (!cond && (player->takeTurnScript == NULL || !does_script_exist(player->takeTurnID))) {
|
||||||
|
player->takeTurnScript = NULL;
|
||||||
|
btl_set_state(BATTLE_STATE_BEGIN_TURN);
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
void btl_state_draw_first_stike(void) {
|
void btl_state_draw_first_stike(void) {
|
||||||
if (D_802809F6 == -1 && D_8029F254 != 0) {
|
if (D_802809F6 == -1 && D_8029F254 != 0) {
|
||||||
@ -2484,13 +2891,13 @@ void btl_state_update_enemy_striking_first(void) {
|
|||||||
btl_cam_target_actor(battleStatus->activeEnemyActorID);
|
btl_cam_target_actor(battleStatus->activeEnemyActorID);
|
||||||
enemy = battleStatus->currentTurnEnemy;
|
enemy = battleStatus->currentTurnEnemy;
|
||||||
reset_actor_turn_info();
|
reset_actor_turn_info();
|
||||||
battleStatus->battlePhase = 1;
|
battleStatus->battlePhase = PHASE_FIRST_STRIKE;
|
||||||
script = start_script(enemy->takeTurnScriptSource, EVT_PRIORITY_A, 0);
|
script = start_script(enemy->takeTurnScriptSource, EVT_PRIORITY_A, 0);
|
||||||
enemy->takeTurnScript = script;
|
enemy->takeTurnScript = script;
|
||||||
D_8029F248 = 3;
|
D_8029F248 = 3;
|
||||||
enemy->takeTurnID = script->id;
|
enemy->takeTurnID = script->id;
|
||||||
gBattleState2 = 2;
|
gBattleState2 = 2;
|
||||||
script->owner1.enemyID = battleStatus->activeEnemyActorID;
|
script->owner1.actorID = battleStatus->activeEnemyActorID;
|
||||||
break;
|
break;
|
||||||
case 2:
|
case 2:
|
||||||
if (D_8029F248 != 0) {
|
if (D_8029F248 != 0) {
|
||||||
@ -2534,7 +2941,7 @@ void btl_state_update_enemy_striking_first(void) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (!cond) {
|
if (!cond) {
|
||||||
gBattleStatus.flags2 &= ~0x4000;
|
gBattleStatus.flags2 &= ~BS_FLAGS2_4000;
|
||||||
for (i = 0; i < ARRAY_COUNT(battleStatus->enemyActors); i++) {
|
for (i = 0; i < ARRAY_COUNT(battleStatus->enemyActors); i++) {
|
||||||
enemy = battleStatus->enemyActors[i];
|
enemy = battleStatus->enemyActors[i];
|
||||||
if (enemy != NULL) {
|
if (enemy != NULL) {
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
#include "common.h"
|
#include "common.h"
|
||||||
|
#include "nu/nusys.h"
|
||||||
#include "hud_element.h"
|
#include "hud_element.h"
|
||||||
#include "battle/battle.h"
|
#include "battle/battle.h"
|
||||||
#include "script_api/battle.h"
|
#include "script_api/battle.h"
|
||||||
@ -92,6 +93,9 @@ extern s32 D_8029EFBC;
|
|||||||
extern s32 D_8029EFC0[10];
|
extern s32 D_8029EFC0[10];
|
||||||
extern s32 D_8029EFE8[10];
|
extern s32 D_8029EFE8[10];
|
||||||
extern s32 D_8029F010[10];
|
extern s32 D_8029F010[10];
|
||||||
|
|
||||||
|
extern s16 D_8029F038[0x100];
|
||||||
|
|
||||||
extern HudScript HES_HPBar;
|
extern HudScript HES_HPBar;
|
||||||
extern HudScript HES_Item_SmallStarPoint;
|
extern HudScript HES_Item_SmallStarPoint;
|
||||||
extern HudScript HES_Item_StarPoint;
|
extern HudScript HES_Item_StarPoint;
|
||||||
|
@ -138,7 +138,7 @@ typedef struct Shop {
|
|||||||
/* 0x008 */ s32 currentItemSlot;
|
/* 0x008 */ s32 currentItemSlot;
|
||||||
/* 0x00C */ s32 selectedStoreItemSlot;
|
/* 0x00C */ s32 selectedStoreItemSlot;
|
||||||
/* 0x010 */ ShopOwner* owner;
|
/* 0x010 */ ShopOwner* owner;
|
||||||
/* 0x014 */ ShopItemLocation* ItemDataPositions;
|
/* 0x014 */ ShopItemLocation* itemDataPositions;
|
||||||
/* 0x018 */ ShopItemData* staticInventory;
|
/* 0x018 */ ShopItemData* staticInventory;
|
||||||
/* 0x01C */ ShopSellPriceData* staticPriceList;
|
/* 0x01C */ ShopSellPriceData* staticPriceList;
|
||||||
/* 0x020 */ s32 costIconID;
|
/* 0x020 */ s32 costIconID;
|
||||||
|
@ -5,11 +5,6 @@
|
|||||||
// todo consider symbol
|
// todo consider symbol
|
||||||
#define MSG_ROM_START 0x1B83000
|
#define MSG_ROM_START 0x1B83000
|
||||||
|
|
||||||
typedef struct UnkMsgStruct8 {
|
|
||||||
/* 0x00 */ s16 unk_00;
|
|
||||||
/* 0x02 */ char unk_02[0xE];
|
|
||||||
} UnkMsgStruct8; // size = 0x16
|
|
||||||
|
|
||||||
typedef MessageImageData* MessageImageDataList[1];
|
typedef MessageImageData* MessageImageDataList[1];
|
||||||
|
|
||||||
extern IMG_BIN D_802EF0D0;
|
extern IMG_BIN D_802EF0D0;
|
||||||
|
74
src/sprite.c
74
src/sprite.c
@ -676,13 +676,81 @@ s32 func_802DE748(s32 arg0, s32 arg1) {
|
|||||||
return componentList[arg1]->unk_4C & 0xFF;
|
return componentList[arg1]->unk_4C & 0xFF;
|
||||||
}
|
}
|
||||||
|
|
||||||
INCLUDE_ASM(s32, "sprite", func_802DE780);
|
void func_802DE780(s32 spriteIdx, s32 arg1, s32 arg2, s32 arg3, s32 arg4, s32 arg5, s32 arg6, s32 arg7) {
|
||||||
|
SpriteInstance* sprite = &D_802DFA48[spriteIdx];
|
||||||
|
SpriteComponent** componentList;
|
||||||
|
s32 i;
|
||||||
|
|
||||||
s32 func_802DE894(s32 arg0, s32 arg1, s32 arg2, s32 arg3, s32 arg4, s32 arg5, s32 arg6) {
|
if (sprite->componentList != NULL) {
|
||||||
return func_802DE780(arg0, -1, arg1, arg2, arg3, arg4, arg5, arg6);
|
componentList = sprite->componentList;
|
||||||
|
i = 0;
|
||||||
|
|
||||||
|
while ((s32) *componentList != -1) {
|
||||||
|
SpriteComponent* comp = *componentList;
|
||||||
|
|
||||||
|
if (arg1 == -1 || i == arg1) {
|
||||||
|
fold_update((u8)comp->unk_4C, arg2, arg3, arg4, arg5, arg6, arg7);
|
||||||
|
if (arg2 != FOLD_TYPE_NONE) {
|
||||||
|
comp->unk_4C |= 0x10000000;
|
||||||
|
} else {
|
||||||
|
comp->unk_4C &= ~0xF0000000;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
componentList++;
|
||||||
|
i++;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void func_802DE894(s32 spriteIdx, s32 compListIdx, s32 foldType, s32 arg3, s32 arg4, s32 arg5, s32 arg6) {
|
||||||
|
func_802DE780(spriteIdx, -1, compListIdx, foldType, arg3, arg4, arg5, arg6);
|
||||||
|
}
|
||||||
|
|
||||||
|
// animList issue
|
||||||
|
#ifdef NON_MATCHING
|
||||||
|
s32 func_802DE8DC(s32 spriteIdx, s32 compListIdx, s32* outX, s32* outY, s32* outZ) {
|
||||||
|
SpriteInstance* sprite = &D_802DFA48[spriteIdx];
|
||||||
|
SpriteAnimComponent** animList;
|
||||||
|
SpriteComponent** compList;
|
||||||
|
SpriteAnimComponent* anim;
|
||||||
|
SpriteComponent* comp;
|
||||||
|
u8 animID;
|
||||||
|
s32 i;
|
||||||
|
|
||||||
|
if (sprite->componentList == NULL) {
|
||||||
|
return spriteIdx * 20;
|
||||||
|
}
|
||||||
|
|
||||||
|
animID = sprite->currentAnimID;
|
||||||
|
if (animID == 0xFF) {
|
||||||
|
return 0xFF;
|
||||||
|
}
|
||||||
|
|
||||||
|
animList = sprite->spriteData[animID].animListStart;
|
||||||
|
compList = sprite->componentList;
|
||||||
|
i = 0;
|
||||||
|
while (*compList != (SpriteComponent*) -1) {
|
||||||
|
if (i == compListIdx) {
|
||||||
|
do {
|
||||||
|
anim = *animList;
|
||||||
|
comp = *compList;
|
||||||
|
} while (0); // TODO required to match
|
||||||
|
*outX = comp->compPos.x + anim->compOffset.x;
|
||||||
|
*outY = comp->compPos.y + anim->compOffset.y;
|
||||||
|
*outZ = comp->compPos.z + anim->compOffset.z;
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
i++;
|
||||||
|
compList++;
|
||||||
|
if (*animList != (SpriteAnimComponent*) -1) {
|
||||||
|
animList++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
#else
|
||||||
INCLUDE_ASM(s32, "sprite", func_802DE8DC);
|
INCLUDE_ASM(s32, "sprite", func_802DE8DC);
|
||||||
|
#endif
|
||||||
|
|
||||||
s32 spr_get_npc_raster_info(SpriteRasterInfo* out, s32 npcSpriteID, s32 rasterIndex) {
|
s32 spr_get_npc_raster_info(SpriteRasterInfo* out, s32 npcSpriteID, s32 rasterIndex) {
|
||||||
SpriteAnimData* sprite = spr_npcSprites[npcSpriteID];
|
SpriteAnimData* sprite = spr_npcSprites[npcSpriteID];
|
||||||
|
@ -27,7 +27,7 @@ typedef struct PlayerCurrentAnimInfo {
|
|||||||
typedef struct SpriteAnimComponent {
|
typedef struct SpriteAnimComponent {
|
||||||
/* 0x00 */ s16** cmdList;
|
/* 0x00 */ s16** cmdList;
|
||||||
/* 0x04 */ s16 cmdListSize;
|
/* 0x04 */ s16 cmdListSize;
|
||||||
/* 0x08 */ Vec3s compOffset;
|
/* 0x06 */ Vec3s compOffset;
|
||||||
} SpriteAnimComponent; // size = 0xC
|
} SpriteAnimComponent; // size = 0xC
|
||||||
|
|
||||||
// TODO: consider moving to 101b90_len_8f0 (sprite_cache)
|
// TODO: consider moving to 101b90_len_8f0 (sprite_cache)
|
||||||
@ -138,9 +138,9 @@ s32 spr_free_sprite(s32 spriteInstanceID);
|
|||||||
|
|
||||||
s32 func_802DE748(s32, s32); // TODO
|
s32 func_802DE748(s32, s32); // TODO
|
||||||
|
|
||||||
s32 func_802DE780(s32, s32, s32, s32, s32, s32, s32, s32);
|
void func_802DE780(s32, s32, s32, s32, s32, s32, s32, s32);
|
||||||
|
|
||||||
s32 func_802DE894(s32 arg0, s32 arg1, s32 arg2, s32 arg3, s32 arg4, s32 arg5, s32 arg6);
|
void func_802DE894(s32 arg0, s32 arg1, s32 arg2, s32 arg3, s32 arg4, s32 arg5, s32 arg6);
|
||||||
|
|
||||||
//s32 func_802DE8DC(); // TODO
|
//s32 func_802DE8DC(); // TODO
|
||||||
|
|
||||||
|
@ -28,4 +28,17 @@ INCLUDE_ASM(s32, "world/area_kkj/kkj_19/AF7C00", func_80240C10_AF8560);
|
|||||||
|
|
||||||
INCLUDE_ASM(s32, "world/area_kkj/kkj_19/AF7C00", func_80240C4C_AF859C);
|
INCLUDE_ASM(s32, "world/area_kkj/kkj_19/AF7C00", func_80240C4C_AF859C);
|
||||||
|
|
||||||
INCLUDE_ASM(s32, "world/area_kkj/kkj_19/AF7C00", func_80240CB4_AF8604);
|
ApiStatus func_80240CB4_AF8604(Evt* script, s32 isInitialCall) {
|
||||||
|
if (isInitialCall) {
|
||||||
|
script->functionTemp[1] = 255;
|
||||||
|
}
|
||||||
|
|
||||||
|
script->functionTemp[1] -= 16;
|
||||||
|
if (script->functionTemp[1] <= 0) {
|
||||||
|
script->functionTemp[1] = 0;
|
||||||
|
return ApiStatus_DONE2;
|
||||||
|
}
|
||||||
|
|
||||||
|
set_screen_overlay_params_front(0, script->functionTemp[1]);
|
||||||
|
return ApiStatus_BLOCK;
|
||||||
|
}
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
#include "kkj_25.h"
|
#include "kkj_25.h"
|
||||||
|
|
||||||
INCLUDE_ASM(s32, "world/area_kkj/kkj_25/B06D10", func_80240310_B06D10);
|
#include "world/common/UnkFoldFunc.inc.c"
|
||||||
|
|
||||||
INCLUDE_ASM(s32, "world/area_kkj/kkj_25/B06D10", func_802406EC_B070EC);
|
INCLUDE_ASM(s32, "world/area_kkj/kkj_25/B06D10", func_802406EC_B070EC);
|
||||||
|
|
||||||
|
@ -74,7 +74,7 @@ ApiStatus func_802404A0_8AC430(Evt* script, s32 isInitialCall) {
|
|||||||
|
|
||||||
ApiStatus func_802404E8_8AC478(Evt* script, s32 isInitialCall) {
|
ApiStatus func_802404E8_8AC478(Evt* script, s32 isInitialCall) {
|
||||||
s32 pitch = evt_get_variable(script, script->varTable[0]);
|
s32 pitch = evt_get_variable(script, script->varTable[0]);
|
||||||
gCameras->controlSettings.boomPitch = pitch * 0.001f;
|
gCameras[CAM_DEFAULT].controlSettings.boomPitch = pitch * 0.001f;
|
||||||
return ApiStatus_DONE2;
|
return ApiStatus_DONE2;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -8,7 +8,20 @@ INCLUDE_ASM(s32, "world/area_kmr/kmr_20/8EDB70", func_80242030_8EDE50);
|
|||||||
|
|
||||||
INCLUDE_ASM(s32, "world/area_kmr/kmr_20/8EDB70", func_80242084_8EDEA4);
|
INCLUDE_ASM(s32, "world/area_kmr/kmr_20/8EDB70", func_80242084_8EDEA4);
|
||||||
|
|
||||||
INCLUDE_ASM(s32, "world/area_kmr/kmr_20/8EDB70", func_802420EC_8EDF0C);
|
ApiStatus func_802420EC_8EDF0C(Evt* script, s32 isInitialCall) {
|
||||||
|
if (isInitialCall) {
|
||||||
|
script->functionTemp[1] = 255;
|
||||||
|
}
|
||||||
|
|
||||||
|
script->functionTemp[1] -= 16;
|
||||||
|
if (script->functionTemp[1] <= 0) {
|
||||||
|
script->functionTemp[1] = 0;
|
||||||
|
return ApiStatus_DONE2;
|
||||||
|
}
|
||||||
|
|
||||||
|
set_screen_overlay_params_front(0, script->functionTemp[1]);
|
||||||
|
return ApiStatus_BLOCK;
|
||||||
|
}
|
||||||
|
|
||||||
ApiStatus func_80242144_8EDF64(Evt* script, s32 isInitialCall) {
|
ApiStatus func_80242144_8EDF64(Evt* script, s32 isInitialCall) {
|
||||||
au_ambience_set_volume(0, 1000, 0x3F);
|
au_ambience_set_volume(0, 1000, 0x3F);
|
||||||
|
@ -53,4 +53,7 @@ ApiStatus func_80242224_7ECF34(Evt* script, s32 isInitialCall) {
|
|||||||
|
|
||||||
INCLUDE_ASM(s32, "world/area_mac/mac_00/7EB340", func_80242250_7ECF60);
|
INCLUDE_ASM(s32, "world/area_mac/mac_00/7EB340", func_80242250_7ECF60);
|
||||||
|
|
||||||
INCLUDE_ASM(s32, "world/area_mac/mac_00/7EB340", func_8024228C_7ECF9C);
|
ApiStatus func_8024228C_7ECF9C(Evt* script, s32 isInitialCall) {
|
||||||
|
script->varTable[0] = get_item_count();
|
||||||
|
return ApiStatus_DONE2;
|
||||||
|
}
|
||||||
|
@ -1,6 +1,27 @@
|
|||||||
#include "mac_01.h"
|
#include "mac_01.h"
|
||||||
|
|
||||||
INCLUDE_ASM(s32, "world/area_mac/mac_01/800C40", func_802403C0_800C40);
|
extern s32 D_80248420_808CA0;
|
||||||
|
|
||||||
|
void func_802403C0_800C40(void) {
|
||||||
|
Camera* camera = &gCameras[gCurrentCameraID];
|
||||||
|
Matrix4f sp50;
|
||||||
|
LookAt sp90;
|
||||||
|
|
||||||
|
D_80248420_808CA0 += 1;
|
||||||
|
guLookAtHiliteF(sp50, &sp90, &gDisplayContext->hilite,
|
||||||
|
camera->lookAt_eye.x, camera->lookAt_eye.y, camera->lookAt_eye.z,
|
||||||
|
camera->lookAt_obj.x, camera->lookAt_obj.y, camera->lookAt_obj.z,
|
||||||
|
0.0f, 1.0f, 0.0f,
|
||||||
|
-50.0f, 63.0f, 95.0f,
|
||||||
|
31.0f, 63.0f, 95.0f,
|
||||||
|
64, 64);
|
||||||
|
gSPLookAtX(gMasterGfxPos++, &gDisplayContext->lookAt.l[0]);
|
||||||
|
gSPLookAtY(gMasterGfxPos++, &gDisplayContext->lookAt.l[1]);
|
||||||
|
gDPSetHilite1Tile(gMasterGfxPos++, G_TX_RENDERTILE, &gDisplayContext->hilite, 64, 64);
|
||||||
|
gDPSetHilite2Tile(gMasterGfxPos++, G_TX_MIRROR, &gDisplayContext->hilite, 64, 64);
|
||||||
|
gSPTexture(gMasterGfxPos++, 0x1000, 0x1000, 0, G_TX_RENDERTILE, G_ON);
|
||||||
|
gSPSetGeometryMode(gMasterGfxPos++, G_TEXTURE_GEN);
|
||||||
|
}
|
||||||
|
|
||||||
void func_802405E8_800E68(void) {
|
void func_802405E8_800E68(void) {
|
||||||
gSPClearGeometryMode(gMasterGfxPos++, G_TEXTURE_GEN);
|
gSPClearGeometryMode(gMasterGfxPos++, G_TEXTURE_GEN);
|
||||||
|
@ -2,7 +2,10 @@
|
|||||||
|
|
||||||
#define CHUCK_QUIZMO_NPC_ID 5
|
#define CHUCK_QUIZMO_NPC_ID 5
|
||||||
|
|
||||||
extern u8 D_80258407_818C87;
|
extern s32 D_8024D944_80E1C4;
|
||||||
|
extern s32 D_8024D948_80E1C8;
|
||||||
|
extern s32 D_80258404_818C84;
|
||||||
|
extern s32 D_80262F68;
|
||||||
|
|
||||||
#include "world/common/atomic/MonitorMusicProximityTrigger.inc.c"
|
#include "world/common/atomic/MonitorMusicProximityTrigger.inc.c"
|
||||||
|
|
||||||
@ -19,9 +22,32 @@ extern EffectInstance* N(Quizmo_VannaTEffect);
|
|||||||
|
|
||||||
#include "world/common/atomic/Quizmo.inc.c"
|
#include "world/common/atomic/Quizmo.inc.c"
|
||||||
|
|
||||||
INCLUDE_ASM(s32, "world/area_mac/mac_01/8017D0", func_80242FA4_803824);
|
#include "world/common/UnkFoldFunc.inc.c"
|
||||||
|
|
||||||
INCLUDE_ASM(s32, "world/area_mac/mac_01/8017D0", func_80243380_803C00);
|
ApiStatus func_80243380_803C00(Evt* script, s32 isInitialCall) {
|
||||||
|
Bytecode* args = script->ptrReadPos;
|
||||||
|
s32 spriteIndex = evt_get_variable(script, *args++);
|
||||||
|
s32 rasterIndex = evt_get_variable(script, *args++);
|
||||||
|
UnkEntityStruct* temp_v0 = heap_malloc(sizeof(*temp_v0));
|
||||||
|
|
||||||
|
temp_v0->spriteIndex = spriteIndex;
|
||||||
|
temp_v0->rasterIndex = rasterIndex;
|
||||||
|
temp_v0->unk_34 = gPlayerStatus.colliderHeight;
|
||||||
|
temp_v0->unk_38 = gPlayerStatus.colliderDiameter;
|
||||||
|
temp_v0->pos.x = gPlayerStatus.position.x;
|
||||||
|
temp_v0->pos.y = gPlayerStatus.position.y;
|
||||||
|
temp_v0->pos.z = gPlayerStatus.position.z;
|
||||||
|
temp_v0->rot.x = 0.0f;
|
||||||
|
temp_v0->rot.y = 0.0f;
|
||||||
|
temp_v0->rot.z = 0.0f;
|
||||||
|
temp_v0->scale.x = SPRITE_WORLD_SCALE;
|
||||||
|
temp_v0->scale.y = SPRITE_WORLD_SCALE;
|
||||||
|
temp_v0->scale.z = SPRITE_WORLD_SCALE;
|
||||||
|
temp_v0->foldID = func_8013A704(1);
|
||||||
|
temp_v0->entityID = create_generic_entity_world(NULL, mac_01_UnkFoldFunc);
|
||||||
|
evt_set_variable(script, EVT_MAP_VAR(10), (s32) temp_v0);
|
||||||
|
return ApiStatus_DONE2;
|
||||||
|
}
|
||||||
|
|
||||||
INCLUDE_ASM(s32, "world/area_mac/mac_01/8017D0", func_80243494_803D14);
|
INCLUDE_ASM(s32, "world/area_mac/mac_01/8017D0", func_80243494_803D14);
|
||||||
|
|
||||||
@ -41,7 +67,13 @@ INCLUDE_ASM(s32, "world/area_mac/mac_01/8017D0", func_80243740_803FC0);
|
|||||||
|
|
||||||
INCLUDE_ASM(s32, "world/area_mac/mac_01/8017D0", func_80243CD4_804554);
|
INCLUDE_ASM(s32, "world/area_mac/mac_01/8017D0", func_80243CD4_804554);
|
||||||
|
|
||||||
INCLUDE_ASM(s32, "world/area_mac/mac_01/8017D0", func_80243D28_8045A8);
|
ApiStatus func_80243D28_8045A8(Evt* script, s32 isInitialCall) {
|
||||||
|
Bytecode* args = script->ptrReadPos;
|
||||||
|
|
||||||
|
D_8024D948_80E1C8 = evt_get_variable(script, *args++);
|
||||||
|
D_8024D944_80E1C4 = 1;
|
||||||
|
return ApiStatus_DONE2;
|
||||||
|
}
|
||||||
|
|
||||||
INCLUDE_ASM(s32, "world/area_mac/mac_01/8017D0", func_80243D60_8045E0);
|
INCLUDE_ASM(s32, "world/area_mac/mac_01/8017D0", func_80243D60_8045E0);
|
||||||
|
|
||||||
@ -62,9 +94,39 @@ INCLUDE_ASM(s32, "world/area_mac/mac_01/8017D0", func_802446AC_804F2C);
|
|||||||
|
|
||||||
#include "world/common/UnkPositionFunc.inc.c"
|
#include "world/common/UnkPositionFunc.inc.c"
|
||||||
|
|
||||||
INCLUDE_ASM(s32, "world/area_mac/mac_01/8017D0", func_802447E0_805060);
|
ApiStatus func_802447E0_805060(Evt* script, s32 isInitialCall) {
|
||||||
|
if (isInitialCall) {
|
||||||
|
script->functionTemp[1] = 0;
|
||||||
|
}
|
||||||
|
|
||||||
INCLUDE_ASM(s32, "world/area_mac/mac_01/8017D0", func_80244848_8050C8);
|
script->functionTemp[1] += 10;
|
||||||
|
if (script->functionTemp[1] > 255) {
|
||||||
|
script->functionTemp[1] = 255;
|
||||||
|
}
|
||||||
|
|
||||||
|
set_screen_overlay_params_front(0, script->functionTemp[1]);
|
||||||
|
|
||||||
|
if (script->functionTemp[1] == 255) {
|
||||||
|
return ApiStatus_DONE2;
|
||||||
|
} else {
|
||||||
|
return ApiStatus_BLOCK;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
ApiStatus func_80244848_8050C8(Evt* script, s32 isInitialCall) {
|
||||||
|
if (isInitialCall) {
|
||||||
|
script->functionTemp[1] = 255;
|
||||||
|
}
|
||||||
|
|
||||||
|
script->functionTemp[1] -= 10;
|
||||||
|
if (script->functionTemp[1] <= 0) {
|
||||||
|
script->functionTemp[1] = 0;
|
||||||
|
return ApiStatus_DONE2;
|
||||||
|
}
|
||||||
|
|
||||||
|
set_screen_overlay_params_front(0, script->functionTemp[1]);
|
||||||
|
return ApiStatus_BLOCK;
|
||||||
|
}
|
||||||
|
|
||||||
INCLUDE_ASM(s32, "world/area_mac/mac_01/8017D0", func_802448A0_805120);
|
INCLUDE_ASM(s32, "world/area_mac/mac_01/8017D0", func_802448A0_805120);
|
||||||
|
|
||||||
@ -76,7 +138,7 @@ INCLUDE_ASM(s32, "world/area_mac/mac_01/8017D0", pause_tabs_draw_stats_805418);
|
|||||||
|
|
||||||
INCLUDE_ASM(s32, "world/area_mac/mac_01/8017D0", pause_tabs_draw_badges_805540);
|
INCLUDE_ASM(s32, "world/area_mac/mac_01/8017D0", pause_tabs_draw_badges_805540);
|
||||||
|
|
||||||
INCLUDE_ASM(s32, "world/area_mac/mac_01/8017D0", func_80244D68_8055E8);
|
#include "world/common/UnkMachiFunc.inc.c"
|
||||||
|
|
||||||
INCLUDE_ASM(s32, "world/area_mac/mac_01/8017D0", func_80244E10_805690);
|
INCLUDE_ASM(s32, "world/area_mac/mac_01/8017D0", func_80244E10_805690);
|
||||||
|
|
||||||
@ -84,7 +146,10 @@ INCLUDE_ASM(s32, "world/area_mac/mac_01/8017D0", func_80244E90_805710);
|
|||||||
|
|
||||||
INCLUDE_ASM(s32, "world/area_mac/mac_01/8017D0", func_80244F5C_8057DC);
|
INCLUDE_ASM(s32, "world/area_mac/mac_01/8017D0", func_80244F5C_8057DC);
|
||||||
|
|
||||||
INCLUDE_ASM(s32, "world/area_mac/mac_01/8017D0", func_80245018_805898);
|
ApiStatus func_80245018_805898(Evt* script, s32 isInitialCall) {
|
||||||
|
D_80262F68 = 0;
|
||||||
|
return ApiStatus_DONE2;
|
||||||
|
}
|
||||||
|
|
||||||
INCLUDE_ASM(s32, "world/area_mac/mac_01/8017D0", func_80245028_8058A8);
|
INCLUDE_ASM(s32, "world/area_mac/mac_01/8017D0", func_80245028_8058A8);
|
||||||
|
|
||||||
@ -101,11 +166,16 @@ ApiStatus func_80245440_805CC0(Evt* script, s32 isInitialCall) {
|
|||||||
return ApiStatus_DONE2;
|
return ApiStatus_DONE2;
|
||||||
}
|
}
|
||||||
|
|
||||||
INCLUDE_ASM(s32, "world/area_mac/mac_01/8017D0", func_80245488_805D08);
|
ApiStatus func_80245488_805D08(Evt* script, s32 isInitialCall) {
|
||||||
|
Bytecode* args = script->ptrReadPos;
|
||||||
|
|
||||||
|
D_80258404_818C84 = evt_get_variable(script, *args++);
|
||||||
|
return ApiStatus_DONE2;
|
||||||
|
}
|
||||||
|
|
||||||
void func_802454B4_805D34(void) {
|
void func_802454B4_805D34(void) {
|
||||||
gDPSetCombineLERP(gMasterGfxPos++, 0, 0, 0, 1, SHADE, 0, PRIMITIVE, 0, 0, 0, 0, 1, SHADE, 0, PRIMITIVE, 0);
|
gDPSetCombineLERP(gMasterGfxPos++, 0, 0, 0, 1, SHADE, 0, PRIMITIVE, 0, 0, 0, 0, 1, SHADE, 0, PRIMITIVE, 0);
|
||||||
gDPSetPrimColor(gMasterGfxPos++, 0, 0, 0, 0, 0, D_80258407_818C87);
|
gDPSetPrimColor(gMasterGfxPos++, 0, 0, 0, 0, 0, D_80258404_818C84 & 0xFF);
|
||||||
}
|
}
|
||||||
|
|
||||||
ApiStatus func_80245504_805D84(Evt* script, s32 isInitialCall) {
|
ApiStatus func_80245504_805D84(Evt* script, s32 isInitialCall) {
|
||||||
|
@ -4,9 +4,8 @@
|
|||||||
|
|
||||||
#include "world/common/enemy/PatrolNoAttackAI.inc.c"
|
#include "world/common/enemy/PatrolNoAttackAI.inc.c"
|
||||||
|
|
||||||
|
#include "world/common/UnkMachiFunc.inc.c"
|
||||||
|
|
||||||
#define NAMESPACE mac_01
|
#define NAMESPACE mac_01
|
||||||
|
|
||||||
static char* N(exit_str_0) = "osr_00";
|
static char* N(exit_str_0) = "osr_00";
|
||||||
|
|
||||||
INCLUDE_ASM(s32, "world/area_mac/mac_01/805DD0", func_802463E0_806C60);
|
|
||||||
|
|
||||||
|
@ -6,9 +6,9 @@ ApiStatus func_802405F0_8238B0(Evt* script, s32 isInitialCall) {
|
|||||||
|
|
||||||
func_8011B950(71, -1, 1, 1);
|
func_8011B950(71, -1, 1, 1);
|
||||||
set_background_color_blend(0, 0, 0, 255);
|
set_background_color_blend(0, 0, 0, 255);
|
||||||
gCameras->bgColor[0] = 0;
|
gCameras[CAM_DEFAULT].bgColor[0] = 0;
|
||||||
gCameras->bgColor[1] = 0;
|
gCameras[CAM_DEFAULT].bgColor[1] = 0;
|
||||||
gCameras->bgColor[2] = 0;
|
gCameras[CAM_DEFAULT].bgColor[2] = 0;
|
||||||
|
|
||||||
for (i = 0; i < MAX_NPCS; i++) {
|
for (i = 0; i < MAX_NPCS; i++) {
|
||||||
npc = get_npc_by_index(i);
|
npc = get_npc_by_index(i);
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
#include "obk_08.h"
|
#include "obk_08.h"
|
||||||
|
|
||||||
INCLUDE_ASM(s32, "world/area_obk/obk_08/BD3870", func_80240000_BD3870);
|
#include "world/common/UnkFoldFunc.inc.c"
|
||||||
|
|
||||||
INCLUDE_ASM(s32, "world/area_obk/obk_08/BD3870", func_802403DC_BD3C4C);
|
INCLUDE_ASM(s32, "world/area_obk/obk_08/BD3870", func_802403DC_BD3C4C);
|
||||||
|
|
||||||
|
51
src/world/common/UnkFoldFunc.inc.c
Normal file
51
src/world/common/UnkFoldFunc.inc.c
Normal file
@ -0,0 +1,51 @@
|
|||||||
|
#include "common.h"
|
||||||
|
#include "sprite.h"
|
||||||
|
|
||||||
|
void N(UnkFoldFunc)(void) {
|
||||||
|
UnkEntityStruct* temp_v0 = (UnkEntityStruct*) evt_get_variable(NULL, EVT_MAP_VAR(10));
|
||||||
|
FoldImageRecPart part;
|
||||||
|
SpriteRasterInfo rasterInfo;
|
||||||
|
Matrix4f sp40, sp80;
|
||||||
|
|
||||||
|
gDPPipeSync(gMasterGfxPos++);
|
||||||
|
gDPSetCycleType(gMasterGfxPos++, G_CYC_1CYCLE);
|
||||||
|
gSPClearGeometryMode(gMasterGfxPos++,
|
||||||
|
G_SHADE | G_CULL_BOTH | G_FOG | G_LIGHTING | G_TEXTURE_GEN | G_TEXTURE_GEN_LINEAR | G_LOD |
|
||||||
|
G_SHADING_SMOOTH);
|
||||||
|
gSPSetGeometryMode(gMasterGfxPos++, G_ZBUFFER | G_SHADE | G_SHADING_SMOOTH);
|
||||||
|
gSPTexture(gMasterGfxPos++, 0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_ON);
|
||||||
|
gDPSetTextureLOD(gMasterGfxPos++, G_TL_TILE);
|
||||||
|
gDPSetTexturePersp(gMasterGfxPos++, G_TP_PERSP);
|
||||||
|
gDPSetTextureFilter(gMasterGfxPos++, G_TF_BILERP);
|
||||||
|
gDPSetColorDither(gMasterGfxPos++, G_CD_DISABLE);
|
||||||
|
gDPSetTextureDetail(gMasterGfxPos++, G_TD_CLAMP);
|
||||||
|
gDPSetTextureConvert(gMasterGfxPos++, G_TC_FILT);
|
||||||
|
gDPSetCombineKey(gMasterGfxPos++, G_CK_NONE);
|
||||||
|
gDPSetAlphaCompare(gMasterGfxPos++, G_AC_NONE);
|
||||||
|
|
||||||
|
guTranslateF(sp40, temp_v0->pos.x, temp_v0->pos.y, temp_v0->pos.z);
|
||||||
|
guRotateF(sp80, temp_v0->rot.y, 0.0f, 1.0f, 0.0f);
|
||||||
|
guMtxCatF(sp80, sp40, sp40);
|
||||||
|
guRotateF(sp80, temp_v0->rot.z, 0.0f, 0.0f, 1.0f);
|
||||||
|
guMtxCatF(sp80, sp40, sp40);
|
||||||
|
guRotateF(sp80, temp_v0->rot.x, 1.0f, 0.0f, 0.0f);
|
||||||
|
guMtxCatF(sp80, sp40, sp40);
|
||||||
|
guScaleF(sp80, temp_v0->scale.x, temp_v0->scale.y, temp_v0->scale.z);
|
||||||
|
guMtxCatF(sp80, sp40, sp40);
|
||||||
|
guMtxF2L(sp40, &gDisplayContext->matrixStack[gMatrixListPos]);
|
||||||
|
gSPMatrix(gMasterGfxPos++,
|
||||||
|
OS_K0_TO_PHYSICAL(&gDisplayContext->matrixStack[gMatrixListPos++]),
|
||||||
|
G_MTX_PUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
|
||||||
|
|
||||||
|
spr_get_player_raster_info(&rasterInfo, temp_v0->spriteIndex, temp_v0->rasterIndex);
|
||||||
|
part.raster = rasterInfo.raster;
|
||||||
|
part.palette = rasterInfo.defaultPal;
|
||||||
|
temp_v0->unk_34 = part.width = rasterInfo.width;
|
||||||
|
temp_v0->unk_38 = part.height = rasterInfo.height;
|
||||||
|
part.xOffset = -(s32) (rasterInfo.width * 0.5f);
|
||||||
|
part.yOffset = rasterInfo.height;
|
||||||
|
part.opacity = 255;
|
||||||
|
|
||||||
|
fold_appendGfx_component(temp_v0->foldID, &part, 0.0f, sp40);
|
||||||
|
gSPPopMatrix(gMasterGfxPos++, G_MTX_MODELVIEW);
|
||||||
|
}
|
15
src/world/common/UnkMachiFunc.inc.c
Normal file
15
src/world/common/UnkMachiFunc.inc.c
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
#include "common.h"
|
||||||
|
#include "evt.h"
|
||||||
|
|
||||||
|
ApiStatus N(UnkMachiFunc)(Evt* script, s32 isInitialCall) {
|
||||||
|
if (evt_get_variable(NULL, EVT_SAVE_FLAG(260)) == 0) {
|
||||||
|
set_item_entity_flags(gGameStatusPtr->shopItemEntities[0].index, ITEM_ENTITY_FLAGS_40);
|
||||||
|
}
|
||||||
|
if (evt_get_variable(NULL, EVT_SAVE_FLAG(261)) == 0) {
|
||||||
|
set_item_entity_flags(gGameStatusPtr->shopItemEntities[1].index, ITEM_ENTITY_FLAGS_40);
|
||||||
|
}
|
||||||
|
if (evt_get_variable(NULL, EVT_SAVE_FLAG(262)) == 0) {
|
||||||
|
set_item_entity_flags(gGameStatusPtr->shopItemEntities[2].index, ITEM_ENTITY_FLAGS_40);
|
||||||
|
}
|
||||||
|
return ApiStatus_DONE2;
|
||||||
|
}
|
@ -831,13 +831,13 @@ INCLUDE_ASM(s32, "world/script_api/7E0E80", draw_shop_items);
|
|||||||
// This should be equivalent to the original code but there is some funny business with
|
// This should be equivalent to the original code but there is some funny business with
|
||||||
// the evt_get_variable's at the beginning that makes absolutely no sense.
|
// the evt_get_variable's at the beginning that makes absolutely no sense.
|
||||||
#ifdef NON_MATCHING
|
#ifdef NON_MATCHING
|
||||||
s32 MakeShop(Evt* script, s32 isInitialCall) {
|
ApiStatus MakeShop(Evt* script, s32 isInitialCall) {
|
||||||
Bytecode* args = script->ptrReadPos;
|
Bytecode* args = script->ptrReadPos;
|
||||||
ShopItemLocation* ItemDataPositions = evt_get_variable(script, *args++);
|
ShopItemLocation* itemDataPositions;
|
||||||
ShopItemData* inventory = evt_get_variable(script, *args++);
|
ShopItemData* inventory;
|
||||||
ShopSellPriceData* prices = evt_get_variable(script, *args++);
|
s32 inventoryItemFlags;
|
||||||
s32 inventoryItemFlags = evt_get_variable(script, *args++);
|
ShopSellPriceData* prices;
|
||||||
Shop* shop = heap_malloc(sizeof(*shop));
|
Shop* shop;
|
||||||
Model* model;
|
Model* model;
|
||||||
s32 numShopItems;
|
s32 numShopItems;
|
||||||
f32 centerX;
|
f32 centerX;
|
||||||
@ -848,8 +848,15 @@ s32 MakeShop(Evt* script, s32 isInitialCall) {
|
|||||||
f32 sizeZ;
|
f32 sizeZ;
|
||||||
s32 items;
|
s32 items;
|
||||||
|
|
||||||
|
itemDataPositions = evt_get_variable(script, *args++);
|
||||||
|
inventory = evt_get_variable(script, *args++);
|
||||||
|
prices = evt_get_variable(script, *args++);
|
||||||
|
inventoryItemFlags = evt_get_variable(script, *args++);
|
||||||
|
|
||||||
|
shop = heap_malloc(sizeof(*shop));
|
||||||
|
|
||||||
gGameStatusPtr->mapShop = shop;
|
gGameStatusPtr->mapShop = shop;
|
||||||
shop->ItemDataPositions = ItemDataPositions;
|
shop->itemDataPositions = itemDataPositions;
|
||||||
shop->staticInventory = inventory;
|
shop->staticInventory = inventory;
|
||||||
shop->staticPriceList = prices;
|
shop->staticPriceList = prices;
|
||||||
shop->inventoryItemFlags = inventoryItemFlags;
|
shop->inventoryItemFlags = inventoryItemFlags;
|
||||||
@ -879,21 +886,21 @@ s32 MakeShop(Evt* script, s32 isInitialCall) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
inventory = shop->staticInventory;
|
inventory = shop->staticInventory;
|
||||||
ItemDataPositions = shop->ItemDataPositions;
|
itemDataPositions = shop->itemDataPositions;
|
||||||
numShopItems = 0;
|
numShopItems = 0;
|
||||||
while (inventory->itemID != 0) {
|
while (inventory->itemID != 0) {
|
||||||
get_model_center_and_size(ItemDataPositions->posModelID, ¢erX, ¢erY, ¢erZ, &sizeX, &sizeY, &sizeZ);
|
get_model_center_and_size(itemDataPositions->posModelID, ¢erX, ¢erY, ¢erZ, &sizeX, &sizeY, &sizeZ);
|
||||||
centerY += 6;
|
centerY += 6;
|
||||||
gGameStatusPtr->shopItemEntities[numShopItems].pos.x = centerX;
|
gGameStatusPtr->shopItemEntities[numShopItems].pos.x = centerX;
|
||||||
gGameStatusPtr->shopItemEntities[numShopItems].pos.y = centerY;
|
gGameStatusPtr->shopItemEntities[numShopItems].pos.y = centerY;
|
||||||
gGameStatusPtr->shopItemEntities[numShopItems].pos.z = centerZ;
|
gGameStatusPtr->shopItemEntities[numShopItems].pos.z = centerZ;
|
||||||
model = get_model_from_list_index(get_model_list_index_from_tree_index(ItemDataPositions->posModelID));
|
model = get_model_from_list_index(get_model_list_index_from_tree_index(itemDataPositions->posModelID));
|
||||||
model->flags |= MODEL_FLAGS_FLAG_4;
|
model->flags |= MODEL_FLAGS_FLAG_4;
|
||||||
gGameStatusPtr->shopItemEntities[numShopItems].index = make_item_entity_nodelay(inventory->itemID | shop->inventoryItemFlags, centerX, centerY, centerZ, 1, 0);
|
gGameStatusPtr->shopItemEntities[numShopItems].index = make_item_entity_nodelay(inventory->itemID | shop->inventoryItemFlags, centerX, centerY, centerZ, 1, 0);
|
||||||
set_item_entity_flags(gGameStatusPtr->shopItemEntities[numShopItems].index, 0x4000);
|
set_item_entity_flags(gGameStatusPtr->shopItemEntities[numShopItems].index, 0x4000);
|
||||||
bind_trigger_1(D_80283F58_7E4DD8, 0x80, ItemDataPositions->triggerColliderID, numShopItems, 0, 3);
|
bind_trigger_1(D_80283F58_7E4DD8, 0x80, itemDataPositions->triggerColliderID, numShopItems, 0, 3);
|
||||||
bind_trigger_1(D_80283F58_7E4DD8, 0x800, ItemDataPositions->triggerColliderID, numShopItems, 0, 3);
|
bind_trigger_1(D_80283F58_7E4DD8, 0x800, itemDataPositions->triggerColliderID, numShopItems, 0, 3);
|
||||||
ItemDataPositions++;
|
itemDataPositions++;
|
||||||
inventory++;
|
inventory++;
|
||||||
numShopItems++;
|
numShopItems++;
|
||||||
}
|
}
|
||||||
@ -904,8 +911,8 @@ s32 MakeShop(Evt* script, s32 isInitialCall) {
|
|||||||
get_generic_entity(create_generic_entity_frontUI(NULL, draw_shop_items));
|
get_generic_entity(create_generic_entity_frontUI(NULL, draw_shop_items));
|
||||||
set_window_properties(WINDOW_ID_10, 100, 66, 120, 28, 0, shop_draw_item_name, NULL, -1);
|
set_window_properties(WINDOW_ID_10, 100, 66, 120, 28, 0, shop_draw_item_name, NULL, -1);
|
||||||
set_window_properties(WINDOW_ID_11, 32, 184, 256, 32, 1, shop_draw_item_desc, NULL, -1);
|
set_window_properties(WINDOW_ID_11, 32, 184, 256, 32, 1, shop_draw_item_desc, NULL, -1);
|
||||||
gWindowStyles[10] = 9;
|
gWindowStyles[10].defaultStyleID = 9;
|
||||||
gWindowStyles[11] = 3;
|
gWindowStyles[11].defaultStyleID = 3;
|
||||||
shop->currentItemSlot = 0;
|
shop->currentItemSlot = 0;
|
||||||
shop->selectedStoreItemSlot = 0;
|
shop->selectedStoreItemSlot = 0;
|
||||||
shop->flags = SHOP_FLAGS_0;
|
shop->flags = SHOP_FLAGS_0;
|
||||||
|
@ -2,6 +2,7 @@
|
|||||||
#include "entity.h"
|
#include "entity.h"
|
||||||
|
|
||||||
extern PushBlockGrid* D_802DBC88[]; //TODO determine length
|
extern PushBlockGrid* D_802DBC88[]; //TODO determine length
|
||||||
|
extern f32 D_80285640_7E64C0[];
|
||||||
extern EvtScript D_80285674_7E64F4;
|
extern EvtScript D_80285674_7E64F4;
|
||||||
|
|
||||||
#define BLOCK_GRID_SIZE 25
|
#define BLOCK_GRID_SIZE 25
|
||||||
@ -15,14 +16,60 @@ ApiStatus func_80282880(Evt* script, s32 isInitialCall) {
|
|||||||
return ApiStatus_DONE2;
|
return ApiStatus_DONE2;
|
||||||
}
|
}
|
||||||
|
|
||||||
INCLUDE_ASM(s32, "world/script_api/7E3700", func_802828DC);
|
ApiStatus func_802828DC(Evt* script, s32 isInitialCall) {
|
||||||
|
PlayerStatus* playerStatus = &gPlayerStatus;
|
||||||
|
Entity* entity = get_entity_by_index(script->varTable[11]);
|
||||||
|
f32 temp_f4;
|
||||||
|
|
||||||
|
if (isInitialCall) {
|
||||||
|
script->functionTemp[0] = 0;
|
||||||
|
script->varTable[0] = playerStatus->position.x;
|
||||||
|
script->varTable[1] = playerStatus->position.y;
|
||||||
|
script->varTable[2] = playerStatus->position.z;
|
||||||
|
script->varTable[3] = entity->position.x;
|
||||||
|
script->varTable[4] = entity->position.y;
|
||||||
|
script->varTable[5] = entity->position.z;
|
||||||
|
script->varTable[9] = entity->rotation.x;
|
||||||
|
script->varTable[12] = entity->rotation.z;
|
||||||
|
}
|
||||||
|
|
||||||
|
temp_f4 = D_80285640_7E64C0[script->functionTemp[0]];
|
||||||
|
playerStatus->position.x = script->varTable[0] + (script->varTable[6] * temp_f4 * 25.0f);
|
||||||
|
playerStatus->position.y = script->varTable[1] + (script->varTable[7] * temp_f4 * 25.0f);
|
||||||
|
playerStatus->position.z = script->varTable[2] + (script->varTable[8] * temp_f4 * 25.0f);
|
||||||
|
entity->position.x = script->varTable[3] + (script->varTable[6] * temp_f4 * 25.0f);
|
||||||
|
entity->position.y = script->varTable[4] + (script->varTable[7] * temp_f4 * 25.0f);
|
||||||
|
entity->position.z = script->varTable[5] + (script->varTable[8] * temp_f4 * 25.0f);
|
||||||
|
|
||||||
|
if (script->functionTemp[0] < 12) {
|
||||||
|
entity->rotation.z = script->varTable[12] + (script->varTable[6] * temp_f4 * -90.0f);
|
||||||
|
entity->rotation.x = script->varTable[9] + (script->varTable[8] * temp_f4 * 90.0f);
|
||||||
|
entity->position.y = entity->position.y + (sin_deg(temp_f4 * 90.0f) * 25.0f * 0.5);
|
||||||
|
entity->position.x = entity->position.x - (script->varTable[6] * sin_deg(temp_f4 * 90.0f) * 25.0f * 0.5);
|
||||||
|
entity->position.z = entity->position.z - (script->varTable[8] * sin_deg(temp_f4 * 90.0f) * 25.0f * 0.5);
|
||||||
|
} else {
|
||||||
|
entity->rotation.z = entity->rotation.x = 0.0f;
|
||||||
|
}
|
||||||
|
|
||||||
|
gCameras[CAM_DEFAULT].targetPos.x = playerStatus->position.x;
|
||||||
|
gCameras[CAM_DEFAULT].targetPos.y = playerStatus->position.y;
|
||||||
|
gCameras[CAM_DEFAULT].targetPos.z = playerStatus->position.z;
|
||||||
|
|
||||||
|
script->functionTemp[0]++;
|
||||||
|
if (script->functionTemp[0] == 13) {
|
||||||
|
return ApiStatus_DONE1;
|
||||||
|
}
|
||||||
|
return ApiStatus_BLOCK;
|
||||||
|
}
|
||||||
|
|
||||||
INCLUDE_ASM(s32, "world/script_api/7E3700", func_80282C40);
|
INCLUDE_ASM(s32, "world/script_api/7E3700", func_80282C40);
|
||||||
|
|
||||||
|
ApiStatus func_80282E30(Evt* script, s32 isInitialCall);
|
||||||
INCLUDE_ASM(s32, "world/script_api/7E3700", func_80282E30);
|
INCLUDE_ASM(s32, "world/script_api/7E3700", func_80282E30);
|
||||||
|
|
||||||
INCLUDE_ASM(s32, "world/script_api/7E3700", func_80283080);
|
INCLUDE_ASM(s32, "world/script_api/7E3700", func_80283080);
|
||||||
|
|
||||||
|
ApiStatus func_80283174(Evt* script, s32 isInitialCall);
|
||||||
INCLUDE_ASM(s32, "world/script_api/7E3700", func_80283174);
|
INCLUDE_ASM(s32, "world/script_api/7E3700", func_80283174);
|
||||||
|
|
||||||
ApiStatus CheckActionState(Evt* script, s32 isInitialCall) {
|
ApiStatus CheckActionState(Evt* script, s32 isInitialCall) {
|
||||||
|
@ -10,7 +10,7 @@ ApiStatus CheckRideScriptForEnterExit(Evt* script, s32 isInitialCall) {
|
|||||||
script->varTable[10] = 0;
|
script->varTable[10] = 0;
|
||||||
} else {
|
} else {
|
||||||
script->varTable[10] = 1;
|
script->varTable[10] = 1;
|
||||||
script->varTable[11] = partner_get_ride_script();
|
script->varTablePtr[11] = partner_get_ride_script();
|
||||||
script->varTable[13] = playerStatus->targetYaw;
|
script->varTable[13] = playerStatus->targetYaw;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -63,7 +63,32 @@ ApiStatus SetPlayerPositionFromSaveData(Evt* script, s32 isInitialCall) {
|
|||||||
return ApiStatus_DONE2;
|
return ApiStatus_DONE2;
|
||||||
}
|
}
|
||||||
|
|
||||||
INCLUDE_ASM(s32, "world/script_api/7E4690", EnterPlayerPostPipe);
|
ApiStatus EnterPlayerPostPipe(Evt* script, s32 isInitialCall) {
|
||||||
|
PlayerStatus* playerStatus = &gPlayerStatus;
|
||||||
|
MapConfig* mapConfig = get_current_map_header();
|
||||||
|
ApiStatus ret = ApiStatus_BLOCK;
|
||||||
|
|
||||||
|
if (isInitialCall) {
|
||||||
|
playerStatus->position.x = (*mapConfig->entryList)[gGameStatusPtr->entryID].x;
|
||||||
|
playerStatus->position.z = (*mapConfig->entryList)[gGameStatusPtr->entryID].z;
|
||||||
|
script->varTable[2] = (*mapConfig->entryList)[gGameStatusPtr->entryID].y;
|
||||||
|
playerStatus->position.y = script->varTable[2] - 40;
|
||||||
|
playerStatus->flags |= PLAYER_STATUS_FLAGS_CAMERA_DOESNT_FOLLOW;
|
||||||
|
} else {
|
||||||
|
do {
|
||||||
|
playerStatus->position.y += 1.0f;
|
||||||
|
if (!(playerStatus->position.y < script->varTable[2])) {
|
||||||
|
playerStatus->position.y = script->varTable[2];
|
||||||
|
playerStatus->flags &= ~PLAYER_STATUS_FLAGS_CAMERA_DOESNT_FOLLOW;
|
||||||
|
ret = ApiStatus_DONE2;
|
||||||
|
}
|
||||||
|
} while (0); // todo required to match
|
||||||
|
}
|
||||||
|
gCameras[CAM_DEFAULT].targetPos.x = playerStatus->position.x;
|
||||||
|
gCameras[CAM_DEFAULT].targetPos.y = playerStatus->position.y;
|
||||||
|
gCameras[CAM_DEFAULT].targetPos.z = playerStatus->position.z;
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
|
||||||
ApiStatus ShortenPartnerTetherDistance(Evt* script, s32 isInitialCall) {
|
ApiStatus ShortenPartnerTetherDistance(Evt* script, s32 isInitialCall) {
|
||||||
partner_set_tether_distance(20.0f);
|
partner_set_tether_distance(20.0f);
|
||||||
|
File diff suppressed because one or more lines are too long
@ -3,4 +3,4 @@
|
|||||||
.section .data
|
.section .data
|
||||||
|
|
||||||
dlabel D_80261880_822100
|
dlabel D_80261880_822100
|
||||||
.word 0x00000043, 0x00000002, DisablePlayerInput, 0x00000001, 0x00000043, 0x00000003, EnableModel, 0x0000008D, 0x00000000, 0x00000043, 0x00000001, func_802463E0_806C60, 0x00000043, 0x00000005, UseSettingsFrom, 0x00000000, 0xFFFFFDD0, 0x00000000, 0x00000000, 0x00000043, 0x00000005, SetPanTarget, 0x00000000, 0xFFFFFDD0, 0x00000000, 0x00000000, 0x00000043, 0x00000003, SetCamDistance, 0x00000000, 0xF24E6280, 0x00000043, 0x00000003, SetCamSpeed, 0x00000000, 0xF24BE280, 0x00000043, 0x00000004, PanToTarget, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000003, WaitForCam, 0x00000000, 0xF24A7E80, 0x00000043, 0x00000005, SetNpcPos, 0x00000000, 0xFFFFFE34, 0x00000000, 0x00000000, 0x00000043, 0x00000003, SetNpcYaw, 0x00000000, 0x0000005A, 0x00000056, 0x00000000, 0x00000043, 0x00000004, func_802D1270, 0xFFFFFF9C, 0x00000000, 0xF24A8A80, 0x00000043, 0x00000004, func_802D1270, 0xFFFFFFE7, 0xFFFFFFE7, 0xF24A8A80, 0x00000043, 0x00000004, func_802D1270, 0x00000000, 0xFFFFFF9C, 0xF24A8A80, 0x00000043, 0x00000004, func_802D1270, 0x00000000, 0xFFFFFE70, 0xF24A8A80, 0x00000057, 0x00000000, 0x00000056, 0x00000000, 0x00000043, 0x00000003, SetNpcSpeed, 0x00000000, 0xF24A8A80, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000000, 0x0082000A, 0x00000043, 0x00000005, NpcMoveTo, 0x00000000, 0xFFFFFF9C, 0x00000000, 0x00000000, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000000, 0x0082001E, 0x00000043, 0x00000005, NpcMoveTo, 0x00000000, 0xFFFFFFE7, 0xFFFFFFE7, 0x00000000, 0x00000043, 0x00000005, NpcMoveTo, 0x00000000, 0x00000000, 0xFFFFFF9C, 0x00000000, 0x00000043, 0x00000005, NpcMoveTo, 0x00000000, 0x00000000, 0xFFFFFEAC, 0x00000000, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000000, 0x0082001C, 0x00000057, 0x00000000, 0x00000043, 0x00000003, SetCamSpeed, 0x00000000, 0xF24BE280, 0x00000043, 0x00000005, MakeLerp, 0x0000012C, 0x00000190, 0x00000064, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000043, 0x00000004, GetPlayerPos, 0xFE363C82, 0xFE363C83, 0xFE363C84, 0x00000043, 0x00000005, SetPanTarget, 0x00000000, 0xFE363C82, 0xFE363C83, 0xFE363C84, 0x00000043, 0x00000003, SetCamDistance, 0x00000000, 0xFE363C80, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000043, 0x00000004, PanToTarget, 0x00000000, 0x00000000, 0x00000000, 0x00000008, 0x00000001, 0x0000004B, 0x00000043, 0x00000003, GotoMap, 0x80262A30, 0x00000004, 0x00000008, 0x00000001, 0x00000064, 0x00000043, 0x00000002, DisablePlayerInput, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000
|
.word 0x00000043, 0x00000002, DisablePlayerInput, 0x00000001, 0x00000043, 0x00000003, EnableModel, 0x0000008D, 0x00000000, 0x00000043, 0x00000001, dup_mac_01_UnkMachiFunc, 0x00000043, 0x00000005, UseSettingsFrom, 0x00000000, 0xFFFFFDD0, 0x00000000, 0x00000000, 0x00000043, 0x00000005, SetPanTarget, 0x00000000, 0xFFFFFDD0, 0x00000000, 0x00000000, 0x00000043, 0x00000003, SetCamDistance, 0x00000000, 0xF24E6280, 0x00000043, 0x00000003, SetCamSpeed, 0x00000000, 0xF24BE280, 0x00000043, 0x00000004, PanToTarget, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000003, WaitForCam, 0x00000000, 0xF24A7E80, 0x00000043, 0x00000005, SetNpcPos, 0x00000000, 0xFFFFFE34, 0x00000000, 0x00000000, 0x00000043, 0x00000003, SetNpcYaw, 0x00000000, 0x0000005A, 0x00000056, 0x00000000, 0x00000043, 0x00000004, func_802D1270, 0xFFFFFF9C, 0x00000000, 0xF24A8A80, 0x00000043, 0x00000004, func_802D1270, 0xFFFFFFE7, 0xFFFFFFE7, 0xF24A8A80, 0x00000043, 0x00000004, func_802D1270, 0x00000000, 0xFFFFFF9C, 0xF24A8A80, 0x00000043, 0x00000004, func_802D1270, 0x00000000, 0xFFFFFE70, 0xF24A8A80, 0x00000057, 0x00000000, 0x00000056, 0x00000000, 0x00000043, 0x00000003, SetNpcSpeed, 0x00000000, 0xF24A8A80, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000000, 0x0082000A, 0x00000043, 0x00000005, NpcMoveTo, 0x00000000, 0xFFFFFF9C, 0x00000000, 0x00000000, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000000, 0x0082001E, 0x00000043, 0x00000005, NpcMoveTo, 0x00000000, 0xFFFFFFE7, 0xFFFFFFE7, 0x00000000, 0x00000043, 0x00000005, NpcMoveTo, 0x00000000, 0x00000000, 0xFFFFFF9C, 0x00000000, 0x00000043, 0x00000005, NpcMoveTo, 0x00000000, 0x00000000, 0xFFFFFEAC, 0x00000000, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000000, 0x0082001C, 0x00000057, 0x00000000, 0x00000043, 0x00000003, SetCamSpeed, 0x00000000, 0xF24BE280, 0x00000043, 0x00000005, MakeLerp, 0x0000012C, 0x00000190, 0x00000064, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000043, 0x00000004, GetPlayerPos, 0xFE363C82, 0xFE363C83, 0xFE363C84, 0x00000043, 0x00000005, SetPanTarget, 0x00000000, 0xFE363C82, 0xFE363C83, 0xFE363C84, 0x00000043, 0x00000003, SetCamDistance, 0x00000000, 0xFE363C80, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000043, 0x00000004, PanToTarget, 0x00000000, 0x00000000, 0x00000000, 0x00000008, 0x00000001, 0x0000004B, 0x00000043, 0x00000003, GotoMap, 0x80262A30, 0x00000004, 0x00000008, 0x00000001, 0x00000064, 0x00000043, 0x00000002, DisablePlayerInput, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000
|
||||||
|
@ -1,410 +0,0 @@
|
|||||||
.set noat # allow manual use of $at
|
|
||||||
.set noreorder # don't insert nops after branches
|
|
||||||
|
|
||||||
glabel filemenu_draw_char
|
|
||||||
/* 169BE0 80249380 27BDFFB8 */ addiu $sp, $sp, -0x48
|
|
||||||
/* 169BE4 80249384 0080482D */ daddu $t1, $a0, $zero
|
|
||||||
/* 169BE8 80249388 AFB5003C */ sw $s5, 0x3c($sp)
|
|
||||||
/* 169BEC 8024938C 00A0A82D */ daddu $s5, $a1, $zero
|
|
||||||
/* 169BF0 80249390 AFB60040 */ sw $s6, 0x40($sp)
|
|
||||||
/* 169BF4 80249394 8FAA0058 */ lw $t2, 0x58($sp)
|
|
||||||
/* 169BF8 80249398 3C038025 */ lui $v1, %hi(D_8024B7CC)
|
|
||||||
/* 169BFC 8024939C 2463B7CC */ addiu $v1, $v1, %lo(D_8024B7CC)
|
|
||||||
/* 169C00 802493A0 AFBF0044 */ sw $ra, 0x44($sp)
|
|
||||||
/* 169C04 802493A4 AFB40038 */ sw $s4, 0x38($sp)
|
|
||||||
/* 169C08 802493A8 AFB30034 */ sw $s3, 0x34($sp)
|
|
||||||
/* 169C0C 802493AC AFB20030 */ sw $s2, 0x30($sp)
|
|
||||||
/* 169C10 802493B0 AFB1002C */ sw $s1, 0x2c($sp)
|
|
||||||
/* 169C14 802493B4 AFB00028 */ sw $s0, 0x28($sp)
|
|
||||||
/* 169C18 802493B8 8C620000 */ lw $v0, ($v1)
|
|
||||||
/* 169C1C 802493BC 8FAD005C */ lw $t5, 0x5c($sp)
|
|
||||||
/* 169C20 802493C0 10E20004 */ beq $a3, $v0, .L802493D4
|
|
||||||
/* 169C24 802493C4 00C0B02D */ daddu $s6, $a2, $zero
|
|
||||||
/* 169C28 802493C8 AC670000 */ sw $a3, ($v1)
|
|
||||||
/* 169C2C 802493CC 3C018025 */ lui $at, %hi(D_8024B7D0)
|
|
||||||
/* 169C30 802493D0 AC20B7D0 */ sw $zero, %lo(D_8024B7D0)($at)
|
|
||||||
.L802493D4:
|
|
||||||
/* 169C34 802493D4 3C058025 */ lui $a1, %hi(D_8024B7D0)
|
|
||||||
/* 169C38 802493D8 24A5B7D0 */ addiu $a1, $a1, %lo(D_8024B7D0)
|
|
||||||
/* 169C3C 802493DC 8C630000 */ lw $v1, ($v1)
|
|
||||||
/* 169C40 802493E0 8CA40000 */ lw $a0, ($a1)
|
|
||||||
/* 169C44 802493E4 00031880 */ sll $v1, $v1, 2
|
|
||||||
/* 169C48 802493E8 00041040 */ sll $v0, $a0, 1
|
|
||||||
/* 169C4C 802493EC 00441021 */ addu $v0, $v0, $a0
|
|
||||||
/* 169C50 802493F0 3C01802F */ lui $at, %hi(gMsgCharsets)
|
|
||||||
/* 169C54 802493F4 00230821 */ addu $at, $at, $v1
|
|
||||||
/* 169C58 802493F8 8C23B5A8 */ lw $v1, %lo(gMsgCharsets)($at)
|
|
||||||
/* 169C5C 802493FC 00021080 */ sll $v0, $v0, 2
|
|
||||||
/* 169C60 80249400 8C640008 */ lw $a0, 8($v1)
|
|
||||||
/* 169C64 80249404 90720000 */ lbu $s2, ($v1)
|
|
||||||
/* 169C68 80249408 90730001 */ lbu $s3, 1($v1)
|
|
||||||
/* 169C6C 8024940C 946B0004 */ lhu $t3, 4($v1)
|
|
||||||
/* 169C70 80249410 00822021 */ addu $a0, $a0, $v0
|
|
||||||
/* 169C74 80249414 292200A2 */ slti $v0, $t1, 0xa2
|
|
||||||
/* 169C78 80249418 90940008 */ lbu $s4, 8($a0)
|
|
||||||
/* 169C7C 8024941C 8C8C0000 */ lw $t4, ($a0)
|
|
||||||
/* 169C80 80249420 10400130 */ beqz $v0, .L802498E4
|
|
||||||
/* 169C84 80249424 240200F7 */ addiu $v0, $zero, 0xf7
|
|
||||||
/* 169C88 80249428 3C08800A */ lui $t0, %hi(gMasterGfxPos)
|
|
||||||
/* 169C8C 8024942C 2508A66C */ addiu $t0, $t0, %lo(gMasterGfxPos)
|
|
||||||
/* 169C90 80249430 8C820004 */ lw $v0, 4($a0)
|
|
||||||
/* 169C94 80249434 8D040000 */ lw $a0, ($t0)
|
|
||||||
/* 169C98 80249438 3C038025 */ lui $v1, %hi(D_8024B7C8)
|
|
||||||
/* 169C9C 8024943C 8C63B7C8 */ lw $v1, %lo(D_8024B7C8)($v1)
|
|
||||||
/* 169CA0 80249440 00491021 */ addu $v0, $v0, $t1
|
|
||||||
/* 169CA4 80249444 90540000 */ lbu $s4, ($v0)
|
|
||||||
/* 169CA8 80249448 1083000A */ beq $a0, $v1, .L80249474
|
|
||||||
/* 169CAC 8024944C 24820008 */ addiu $v0, $a0, 8
|
|
||||||
/* 169CB0 80249450 AD020000 */ sw $v0, ($t0)
|
|
||||||
/* 169CB4 80249454 3C02DE00 */ lui $v0, 0xde00
|
|
||||||
/* 169CB8 80249458 AC820000 */ sw $v0, ($a0)
|
|
||||||
/* 169CBC 8024945C 3C028025 */ lui $v0, %hi(D_8024B760)
|
|
||||||
/* 169CC0 80249460 2442B760 */ addiu $v0, $v0, %lo(D_8024B760)
|
|
||||||
/* 169CC4 80249464 AC820004 */ sw $v0, 4($a0)
|
|
||||||
/* 169CC8 80249468 2402FFFF */ addiu $v0, $zero, -1
|
|
||||||
/* 169CCC 8024946C 3C018025 */ lui $at, %hi(D_8024B7D4)
|
|
||||||
/* 169CD0 80249470 AC22B7D4 */ sw $v0, %lo(D_8024B7D4)($at)
|
|
||||||
.L80249474:
|
|
||||||
/* 169CD4 80249474 3C048025 */ lui $a0, %hi(D_8024B7D4)
|
|
||||||
/* 169CD8 80249478 2484B7D4 */ addiu $a0, $a0, %lo(D_8024B7D4)
|
|
||||||
/* 169CDC 8024947C 8C820000 */ lw $v0, ($a0)
|
|
||||||
/* 169CE0 80249480 104A0029 */ beq $v0, $t2, .L80249528
|
|
||||||
/* 169CE4 80249484 3C06F500 */ lui $a2, 0xf500
|
|
||||||
/* 169CE8 80249488 34C60100 */ ori $a2, $a2, 0x100
|
|
||||||
/* 169CEC 8024948C 3C070703 */ lui $a3, 0x703
|
|
||||||
/* 169CF0 80249490 34E7C000 */ ori $a3, $a3, 0xc000
|
|
||||||
/* 169CF4 80249494 8D030000 */ lw $v1, ($t0)
|
|
||||||
/* 169CF8 80249498 3C02FD10 */ lui $v0, 0xfd10
|
|
||||||
/* 169CFC 8024949C AC8A0000 */ sw $t2, ($a0)
|
|
||||||
/* 169D00 802494A0 3C04802F */ lui $a0, %hi(D_802F4560)
|
|
||||||
/* 169D04 802494A4 24844560 */ addiu $a0, $a0, %lo(D_802F4560)
|
|
||||||
/* 169D08 802494A8 0060282D */ daddu $a1, $v1, $zero
|
|
||||||
/* 169D0C 802494AC 24630008 */ addiu $v1, $v1, 8
|
|
||||||
/* 169D10 802494B0 AD030000 */ sw $v1, ($t0)
|
|
||||||
/* 169D14 802494B4 ACA20000 */ sw $v0, ($a1)
|
|
||||||
/* 169D18 802494B8 000A1100 */ sll $v0, $t2, 4
|
|
||||||
/* 169D1C 802494BC 00441021 */ addu $v0, $v0, $a0
|
|
||||||
/* 169D20 802494C0 ACA20004 */ sw $v0, 4($a1)
|
|
||||||
/* 169D24 802494C4 24620008 */ addiu $v0, $v1, 8
|
|
||||||
/* 169D28 802494C8 AD020000 */ sw $v0, ($t0)
|
|
||||||
/* 169D2C 802494CC 3C02E800 */ lui $v0, 0xe800
|
|
||||||
/* 169D30 802494D0 AC620000 */ sw $v0, ($v1)
|
|
||||||
/* 169D34 802494D4 24620010 */ addiu $v0, $v1, 0x10
|
|
||||||
/* 169D38 802494D8 AC600004 */ sw $zero, 4($v1)
|
|
||||||
/* 169D3C 802494DC AD020000 */ sw $v0, ($t0)
|
|
||||||
/* 169D40 802494E0 3C020700 */ lui $v0, 0x700
|
|
||||||
/* 169D44 802494E4 AC62000C */ sw $v0, 0xc($v1)
|
|
||||||
/* 169D48 802494E8 24620018 */ addiu $v0, $v1, 0x18
|
|
||||||
/* 169D4C 802494EC AC660008 */ sw $a2, 8($v1)
|
|
||||||
/* 169D50 802494F0 AD020000 */ sw $v0, ($t0)
|
|
||||||
/* 169D54 802494F4 3C02E600 */ lui $v0, 0xe600
|
|
||||||
/* 169D58 802494F8 AC620010 */ sw $v0, 0x10($v1)
|
|
||||||
/* 169D5C 802494FC 24620020 */ addiu $v0, $v1, 0x20
|
|
||||||
/* 169D60 80249500 AC600014 */ sw $zero, 0x14($v1)
|
|
||||||
/* 169D64 80249504 AD020000 */ sw $v0, ($t0)
|
|
||||||
/* 169D68 80249508 3C02F000 */ lui $v0, 0xf000
|
|
||||||
/* 169D6C 8024950C AC620018 */ sw $v0, 0x18($v1)
|
|
||||||
/* 169D70 80249510 24620028 */ addiu $v0, $v1, 0x28
|
|
||||||
/* 169D74 80249514 AC67001C */ sw $a3, 0x1c($v1)
|
|
||||||
/* 169D78 80249518 AD020000 */ sw $v0, ($t0)
|
|
||||||
/* 169D7C 8024951C 3C02E700 */ lui $v0, 0xe700
|
|
||||||
/* 169D80 80249520 AC620020 */ sw $v0, 0x20($v1)
|
|
||||||
/* 169D84 80249524 AC600024 */ sw $zero, 0x24($v1)
|
|
||||||
.L80249528:
|
|
||||||
/* 169D88 80249528 2A420010 */ slti $v0, $s2, 0x10
|
|
||||||
/* 169D8C 8024952C 1440005E */ bnez $v0, .L802496A8
|
|
||||||
/* 169D90 80249530 3242000F */ andi $v0, $s2, 0xf
|
|
||||||
/* 169D94 80249534 1440005C */ bnez $v0, .L802496A8
|
|
||||||
/* 169D98 80249538 0240202D */ daddu $a0, $s2, $zero
|
|
||||||
/* 169D9C 8024953C 3C02FD50 */ lui $v0, 0xfd50
|
|
||||||
/* 169DA0 80249540 3C070700 */ lui $a3, 0x700
|
|
||||||
/* 169DA4 80249544 8D050000 */ lw $a1, ($t0)
|
|
||||||
/* 169DA8 80249548 01690018 */ mult $t3, $t1
|
|
||||||
/* 169DAC 8024954C 00A0182D */ daddu $v1, $a1, $zero
|
|
||||||
/* 169DB0 80249550 24A50008 */ addiu $a1, $a1, 8
|
|
||||||
/* 169DB4 80249554 AD050000 */ sw $a1, ($t0)
|
|
||||||
/* 169DB8 80249558 AC620000 */ sw $v0, ($v1)
|
|
||||||
/* 169DBC 8024955C 24A20008 */ addiu $v0, $a1, 8
|
|
||||||
/* 169DC0 80249560 AD020000 */ sw $v0, ($t0)
|
|
||||||
/* 169DC4 80249564 24A20010 */ addiu $v0, $a1, 0x10
|
|
||||||
/* 169DC8 80249568 AD020000 */ sw $v0, ($t0)
|
|
||||||
/* 169DCC 8024956C 24A20018 */ addiu $v0, $a1, 0x18
|
|
||||||
/* 169DD0 80249570 AD020000 */ sw $v0, ($t0)
|
|
||||||
/* 169DD4 80249574 00007012 */ mflo $t6
|
|
||||||
/* 169DD8 80249578 018E1021 */ addu $v0, $t4, $t6
|
|
||||||
/* 169DDC 8024957C AC620004 */ sw $v0, 4($v1)
|
|
||||||
/* 169DE0 80249580 3C02F550 */ lui $v0, 0xf550
|
|
||||||
/* 169DE4 80249584 ACA20000 */ sw $v0, ($a1)
|
|
||||||
/* 169DE8 80249588 3C02E600 */ lui $v0, 0xe600
|
|
||||||
/* 169DEC 8024958C ACA20008 */ sw $v0, 8($a1)
|
|
||||||
/* 169DF0 80249590 3C02F300 */ lui $v0, 0xf300
|
|
||||||
/* 169DF4 80249594 ACA70004 */ sw $a3, 4($a1)
|
|
||||||
/* 169DF8 80249598 ACA0000C */ sw $zero, 0xc($a1)
|
|
||||||
/* 169DFC 8024959C 06410002 */ bgez $s2, .L802495A8
|
|
||||||
/* 169E00 802495A0 ACA20010 */ sw $v0, 0x10($a1)
|
|
||||||
/* 169E04 802495A4 2644000F */ addiu $a0, $s2, 0xf
|
|
||||||
.L802495A8:
|
|
||||||
/* 169E08 802495A8 00043103 */ sra $a2, $a0, 4
|
|
||||||
/* 169E0C 802495AC 18C00002 */ blez $a2, .L802495B8
|
|
||||||
/* 169E10 802495B0 24030800 */ addiu $v1, $zero, 0x800
|
|
||||||
/* 169E14 802495B4 24C307FF */ addiu $v1, $a2, 0x7ff
|
|
||||||
.L802495B8:
|
|
||||||
/* 169E18 802495B8 02530018 */ mult $s2, $s3
|
|
||||||
/* 169E1C 802495BC 00007012 */ mflo $t6
|
|
||||||
/* 169E20 802495C0 25C20003 */ addiu $v0, $t6, 3
|
|
||||||
/* 169E24 802495C4 00021083 */ sra $v0, $v0, 2
|
|
||||||
/* 169E28 802495C8 2444FFFF */ addiu $a0, $v0, -1
|
|
||||||
/* 169E2C 802495CC 28820800 */ slti $v0, $a0, 0x800
|
|
||||||
/* 169E30 802495D0 50400001 */ beql $v0, $zero, .L802495D8
|
|
||||||
/* 169E34 802495D4 240407FF */ addiu $a0, $zero, 0x7ff
|
|
||||||
.L802495D8:
|
|
||||||
/* 169E38 802495D8 30820FFF */ andi $v0, $a0, 0xfff
|
|
||||||
/* 169E3C 802495DC 00021300 */ sll $v0, $v0, 0xc
|
|
||||||
/* 169E40 802495E0 18C0000D */ blez $a2, .L80249618
|
|
||||||
/* 169E44 802495E4 00472025 */ or $a0, $v0, $a3
|
|
||||||
/* 169E48 802495E8 14C00002 */ bnez $a2, .L802495F4
|
|
||||||
/* 169E4C 802495EC 0066001A */ div $zero, $v1, $a2
|
|
||||||
/* 169E50 802495F0 0007000D */ break 7
|
|
||||||
.L802495F4:
|
|
||||||
/* 169E54 802495F4 2401FFFF */ addiu $at, $zero, -1
|
|
||||||
/* 169E58 802495F8 14C10004 */ bne $a2, $at, .L8024960C
|
|
||||||
/* 169E5C 802495FC 3C018000 */ lui $at, 0x8000
|
|
||||||
/* 169E60 80249600 14610002 */ bne $v1, $at, .L8024960C
|
|
||||||
/* 169E64 80249604 00000000 */ nop
|
|
||||||
/* 169E68 80249608 0006000D */ break 6
|
|
||||||
.L8024960C:
|
|
||||||
/* 169E6C 8024960C 00001012 */ mflo $v0
|
|
||||||
/* 169E70 80249610 08092587 */ j .L8024961C
|
|
||||||
/* 169E74 80249614 30420FFF */ andi $v0, $v0, 0xfff
|
|
||||||
.L80249618:
|
|
||||||
/* 169E78 80249618 30620FFF */ andi $v0, $v1, 0xfff
|
|
||||||
.L8024961C:
|
|
||||||
/* 169E7C 8024961C 00821025 */ or $v0, $a0, $v0
|
|
||||||
/* 169E80 80249620 ACA20014 */ sw $v0, 0x14($a1)
|
|
||||||
/* 169E84 80249624 3C05800A */ lui $a1, %hi(gMasterGfxPos)
|
|
||||||
/* 169E88 80249628 24A5A66C */ addiu $a1, $a1, %lo(gMasterGfxPos)
|
|
||||||
/* 169E8C 8024962C 8CA40000 */ lw $a0, ($a1)
|
|
||||||
/* 169E90 80249630 3C02E700 */ lui $v0, 0xe700
|
|
||||||
/* 169E94 80249634 0080182D */ daddu $v1, $a0, $zero
|
|
||||||
/* 169E98 80249638 24840008 */ addiu $a0, $a0, 8
|
|
||||||
/* 169E9C 8024963C ACA40000 */ sw $a0, ($a1)
|
|
||||||
/* 169EA0 80249640 AC620000 */ sw $v0, ($v1)
|
|
||||||
/* 169EA4 80249644 24820008 */ addiu $v0, $a0, 8
|
|
||||||
/* 169EA8 80249648 AC600004 */ sw $zero, 4($v1)
|
|
||||||
/* 169EAC 8024964C ACA20000 */ sw $v0, ($a1)
|
|
||||||
/* 169EB0 80249650 00121043 */ sra $v0, $s2, 1
|
|
||||||
/* 169EB4 80249654 24420007 */ addiu $v0, $v0, 7
|
|
||||||
/* 169EB8 80249658 000210C2 */ srl $v0, $v0, 3
|
|
||||||
/* 169EBC 8024965C 00021240 */ sll $v0, $v0, 9
|
|
||||||
/* 169EC0 80249660 3C03F540 */ lui $v1, 0xf540
|
|
||||||
/* 169EC4 80249664 00431025 */ or $v0, $v0, $v1
|
|
||||||
/* 169EC8 80249668 AC820000 */ sw $v0, ($a0)
|
|
||||||
/* 169ECC 8024966C 24820010 */ addiu $v0, $a0, 0x10
|
|
||||||
/* 169ED0 80249670 AC800004 */ sw $zero, 4($a0)
|
|
||||||
/* 169ED4 80249674 ACA20000 */ sw $v0, ($a1)
|
|
||||||
/* 169ED8 80249678 3C02F200 */ lui $v0, 0xf200
|
|
||||||
/* 169EDC 8024967C 2643FFFF */ addiu $v1, $s2, -1
|
|
||||||
/* 169EE0 80249680 00031880 */ sll $v1, $v1, 2
|
|
||||||
/* 169EE4 80249684 30630FFF */ andi $v1, $v1, 0xfff
|
|
||||||
/* 169EE8 80249688 00031B00 */ sll $v1, $v1, 0xc
|
|
||||||
/* 169EEC 8024968C AC820008 */ sw $v0, 8($a0)
|
|
||||||
/* 169EF0 80249690 2662FFFF */ addiu $v0, $s3, -1
|
|
||||||
/* 169EF4 80249694 00021080 */ sll $v0, $v0, 2
|
|
||||||
/* 169EF8 80249698 30420FFF */ andi $v0, $v0, 0xfff
|
|
||||||
/* 169EFC 8024969C 00621825 */ or $v1, $v1, $v0
|
|
||||||
/* 169F00 802496A0 080925EB */ j .L802497AC
|
|
||||||
/* 169F04 802496A4 AC83000C */ sw $v1, 0xc($a0)
|
|
||||||
.L802496A8:
|
|
||||||
/* 169F08 802496A8 3C05800A */ lui $a1, %hi(gMasterGfxPos)
|
|
||||||
/* 169F0C 802496AC 24A5A66C */ addiu $a1, $a1, %lo(gMasterGfxPos)
|
|
||||||
/* 169F10 802496B0 00123043 */ sra $a2, $s2, 1
|
|
||||||
/* 169F14 802496B4 24C2FFFF */ addiu $v0, $a2, -1
|
|
||||||
/* 169F18 802496B8 30420FFF */ andi $v0, $v0, 0xfff
|
|
||||||
/* 169F1C 802496BC 3C03FD48 */ lui $v1, 0xfd48
|
|
||||||
/* 169F20 802496C0 00431025 */ or $v0, $v0, $v1
|
|
||||||
/* 169F24 802496C4 24C60007 */ addiu $a2, $a2, 7
|
|
||||||
/* 169F28 802496C8 000630C2 */ srl $a2, $a2, 3
|
|
||||||
/* 169F2C 802496CC 00063240 */ sll $a2, $a2, 9
|
|
||||||
/* 169F30 802496D0 2643FFFF */ addiu $v1, $s2, -1
|
|
||||||
/* 169F34 802496D4 8CA40000 */ lw $a0, ($a1)
|
|
||||||
/* 169F38 802496D8 01690018 */ mult $t3, $t1
|
|
||||||
/* 169F3C 802496DC 0080382D */ daddu $a3, $a0, $zero
|
|
||||||
/* 169F40 802496E0 24840008 */ addiu $a0, $a0, 8
|
|
||||||
/* 169F44 802496E4 ACA40000 */ sw $a0, ($a1)
|
|
||||||
/* 169F48 802496E8 ACE20000 */ sw $v0, ($a3)
|
|
||||||
/* 169F4C 802496EC 24820008 */ addiu $v0, $a0, 8
|
|
||||||
/* 169F50 802496F0 ACA20000 */ sw $v0, ($a1)
|
|
||||||
/* 169F54 802496F4 24820010 */ addiu $v0, $a0, 0x10
|
|
||||||
/* 169F58 802496F8 ACA20000 */ sw $v0, ($a1)
|
|
||||||
/* 169F5C 802496FC 24820018 */ addiu $v0, $a0, 0x18
|
|
||||||
/* 169F60 80249700 ACA20000 */ sw $v0, ($a1)
|
|
||||||
/* 169F64 80249704 24820020 */ addiu $v0, $a0, 0x20
|
|
||||||
/* 169F68 80249708 ACA20000 */ sw $v0, ($a1)
|
|
||||||
/* 169F6C 8024970C 24820028 */ addiu $v0, $a0, 0x28
|
|
||||||
/* 169F70 80249710 ACA20000 */ sw $v0, ($a1)
|
|
||||||
/* 169F74 80249714 24820030 */ addiu $v0, $a0, 0x30
|
|
||||||
/* 169F78 80249718 ACA20000 */ sw $v0, ($a1)
|
|
||||||
/* 169F7C 8024971C 2665FFFF */ addiu $a1, $s3, -1
|
|
||||||
/* 169F80 80249720 00052880 */ sll $a1, $a1, 2
|
|
||||||
/* 169F84 80249724 30A50FFF */ andi $a1, $a1, 0xfff
|
|
||||||
/* 169F88 80249728 00007012 */ mflo $t6
|
|
||||||
/* 169F8C 8024972C 018E1021 */ addu $v0, $t4, $t6
|
|
||||||
/* 169F90 80249730 ACE20004 */ sw $v0, 4($a3)
|
|
||||||
/* 169F94 80249734 3C02F548 */ lui $v0, 0xf548
|
|
||||||
/* 169F98 80249738 00C21025 */ or $v0, $a2, $v0
|
|
||||||
/* 169F9C 8024973C 3C070700 */ lui $a3, 0x700
|
|
||||||
/* 169FA0 80249740 AC820000 */ sw $v0, ($a0)
|
|
||||||
/* 169FA4 80249744 3C02E600 */ lui $v0, 0xe600
|
|
||||||
/* 169FA8 80249748 AC820008 */ sw $v0, 8($a0)
|
|
||||||
/* 169FAC 8024974C 3C02F400 */ lui $v0, 0xf400
|
|
||||||
/* 169FB0 80249750 AC820010 */ sw $v0, 0x10($a0)
|
|
||||||
/* 169FB4 80249754 00031040 */ sll $v0, $v1, 1
|
|
||||||
/* 169FB8 80249758 30420FFF */ andi $v0, $v0, 0xfff
|
|
||||||
/* 169FBC 8024975C 00021300 */ sll $v0, $v0, 0xc
|
|
||||||
/* 169FC0 80249760 AC870004 */ sw $a3, 4($a0)
|
|
||||||
/* 169FC4 80249764 00A73825 */ or $a3, $a1, $a3
|
|
||||||
/* 169FC8 80249768 00471025 */ or $v0, $v0, $a3
|
|
||||||
/* 169FCC 8024976C AC820014 */ sw $v0, 0x14($a0)
|
|
||||||
/* 169FD0 80249770 3C02E700 */ lui $v0, 0xe700
|
|
||||||
/* 169FD4 80249774 AC820018 */ sw $v0, 0x18($a0)
|
|
||||||
/* 169FD8 80249778 3C02F540 */ lui $v0, 0xf540
|
|
||||||
/* 169FDC 8024977C 00C23025 */ or $a2, $a2, $v0
|
|
||||||
/* 169FE0 80249780 3C02F200 */ lui $v0, 0xf200
|
|
||||||
/* 169FE4 80249784 00031880 */ sll $v1, $v1, 2
|
|
||||||
/* 169FE8 80249788 30630FFF */ andi $v1, $v1, 0xfff
|
|
||||||
/* 169FEC 8024978C 00031B00 */ sll $v1, $v1, 0xc
|
|
||||||
/* 169FF0 80249790 00651825 */ or $v1, $v1, $a1
|
|
||||||
/* 169FF4 80249794 AC80000C */ sw $zero, 0xc($a0)
|
|
||||||
/* 169FF8 80249798 AC80001C */ sw $zero, 0x1c($a0)
|
|
||||||
/* 169FFC 8024979C AC860020 */ sw $a2, 0x20($a0)
|
|
||||||
/* 16A000 802497A0 AC800024 */ sw $zero, 0x24($a0)
|
|
||||||
/* 16A004 802497A4 AC820028 */ sw $v0, 0x28($a0)
|
|
||||||
/* 16A008 802497A8 AC83002C */ sw $v1, 0x2c($a0)
|
|
||||||
.L802497AC:
|
|
||||||
/* 16A00C 802497AC 11A0003A */ beqz $t5, .L80249898
|
|
||||||
/* 16A010 802497B0 3C0AFCFF */ lui $t2, 0xfcff
|
|
||||||
/* 16A014 802497B4 354A97FF */ ori $t2, $t2, 0x97ff
|
|
||||||
/* 16A018 802497B8 3C08FF2D */ lui $t0, 0xff2d
|
|
||||||
/* 16A01C 802497BC 3508FEFF */ ori $t0, $t0, 0xfeff
|
|
||||||
/* 16A020 802497C0 3C11E200 */ lui $s1, 0xe200
|
|
||||||
/* 16A024 802497C4 3631001C */ ori $s1, $s1, 0x1c
|
|
||||||
/* 16A028 802497C8 3C090050 */ lui $t1, 0x50
|
|
||||||
/* 16A02C 802497CC 35294340 */ ori $t1, $t1, 0x4340
|
|
||||||
/* 16A030 802497D0 26A40002 */ addiu $a0, $s5, 2
|
|
||||||
/* 16A034 802497D4 00042080 */ sll $a0, $a0, 2
|
|
||||||
/* 16A038 802497D8 26C50002 */ addiu $a1, $s6, 2
|
|
||||||
/* 16A03C 802497DC 00052880 */ sll $a1, $a1, 2
|
|
||||||
/* 16A040 802497E0 26460002 */ addiu $a2, $s2, 2
|
|
||||||
/* 16A044 802497E4 02A63021 */ addu $a2, $s5, $a2
|
|
||||||
/* 16A048 802497E8 00063080 */ sll $a2, $a2, 2
|
|
||||||
/* 16A04C 802497EC 3C10800A */ lui $s0, %hi(gMasterGfxPos)
|
|
||||||
/* 16A050 802497F0 2610A66C */ addiu $s0, $s0, %lo(gMasterGfxPos)
|
|
||||||
/* 16A054 802497F4 26670002 */ addiu $a3, $s3, 2
|
|
||||||
/* 16A058 802497F8 02C73821 */ addu $a3, $s6, $a3
|
|
||||||
/* 16A05C 802497FC 8E020000 */ lw $v0, ($s0)
|
|
||||||
/* 16A060 80249800 00073880 */ sll $a3, $a3, 2
|
|
||||||
/* 16A064 80249804 0040182D */ daddu $v1, $v0, $zero
|
|
||||||
/* 16A068 80249808 24420008 */ addiu $v0, $v0, 8
|
|
||||||
/* 16A06C 8024980C AE020000 */ sw $v0, ($s0)
|
|
||||||
/* 16A070 80249810 AC6A0000 */ sw $t2, ($v1)
|
|
||||||
/* 16A074 80249814 AC680004 */ sw $t0, 4($v1)
|
|
||||||
/* 16A078 80249818 24430008 */ addiu $v1, $v0, 8
|
|
||||||
/* 16A07C 8024981C AE030000 */ sw $v1, ($s0)
|
|
||||||
/* 16A080 80249820 AC510000 */ sw $s1, ($v0)
|
|
||||||
/* 16A084 80249824 AC490004 */ sw $t1, 4($v0)
|
|
||||||
/* 16A088 80249828 24020400 */ addiu $v0, $zero, 0x400
|
|
||||||
/* 16A08C 8024982C AFA00010 */ sw $zero, 0x10($sp)
|
|
||||||
/* 16A090 80249830 AFA00014 */ sw $zero, 0x14($sp)
|
|
||||||
/* 16A094 80249834 AFA00018 */ sw $zero, 0x18($sp)
|
|
||||||
/* 16A098 80249838 AFA2001C */ sw $v0, 0x1c($sp)
|
|
||||||
/* 16A09C 8024983C 0C090AE8 */ jal mainmenu_draw_rect
|
|
||||||
/* 16A0A0 80249840 AFA20020 */ sw $v0, 0x20($sp)
|
|
||||||
/* 16A0A4 80249844 3C06FCFF */ lui $a2, 0xfcff
|
|
||||||
/* 16A0A8 80249848 34C6FFFF */ ori $a2, $a2, 0xffff
|
|
||||||
/* 16A0AC 8024984C 3C05FFFC */ lui $a1, 0xfffc
|
|
||||||
/* 16A0B0 80249850 34A5F279 */ ori $a1, $a1, 0xf279
|
|
||||||
/* 16A0B4 80249854 3C070F0A */ lui $a3, 0xf0a
|
|
||||||
/* 16A0B8 80249858 34E77008 */ ori $a3, $a3, 0x7008
|
|
||||||
/* 16A0BC 8024985C 8E020000 */ lw $v0, ($s0)
|
|
||||||
/* 16A0C0 80249860 3C03E700 */ lui $v1, 0xe700
|
|
||||||
/* 16A0C4 80249864 0040202D */ daddu $a0, $v0, $zero
|
|
||||||
/* 16A0C8 80249868 24420008 */ addiu $v0, $v0, 8
|
|
||||||
/* 16A0CC 8024986C AE020000 */ sw $v0, ($s0)
|
|
||||||
/* 16A0D0 80249870 AC830000 */ sw $v1, ($a0)
|
|
||||||
/* 16A0D4 80249874 24430008 */ addiu $v1, $v0, 8
|
|
||||||
/* 16A0D8 80249878 AC800004 */ sw $zero, 4($a0)
|
|
||||||
/* 16A0DC 8024987C AE030000 */ sw $v1, ($s0)
|
|
||||||
/* 16A0E0 80249880 24430010 */ addiu $v1, $v0, 0x10
|
|
||||||
/* 16A0E4 80249884 AC460000 */ sw $a2, ($v0)
|
|
||||||
/* 16A0E8 80249888 AC450004 */ sw $a1, 4($v0)
|
|
||||||
/* 16A0EC 8024988C AE030000 */ sw $v1, ($s0)
|
|
||||||
/* 16A0F0 80249890 AC510008 */ sw $s1, 8($v0)
|
|
||||||
/* 16A0F4 80249894 AC47000C */ sw $a3, 0xc($v0)
|
|
||||||
.L80249898:
|
|
||||||
/* 16A0F8 80249898 00152080 */ sll $a0, $s5, 2
|
|
||||||
/* 16A0FC 8024989C 00162880 */ sll $a1, $s6, 2
|
|
||||||
/* 16A100 802498A0 02B23021 */ addu $a2, $s5, $s2
|
|
||||||
/* 16A104 802498A4 00063080 */ sll $a2, $a2, 2
|
|
||||||
/* 16A108 802498A8 02D33821 */ addu $a3, $s6, $s3
|
|
||||||
/* 16A10C 802498AC 00073880 */ sll $a3, $a3, 2
|
|
||||||
/* 16A110 802498B0 24020400 */ addiu $v0, $zero, 0x400
|
|
||||||
/* 16A114 802498B4 AFA00010 */ sw $zero, 0x10($sp)
|
|
||||||
/* 16A118 802498B8 AFA00014 */ sw $zero, 0x14($sp)
|
|
||||||
/* 16A11C 802498BC AFA00018 */ sw $zero, 0x18($sp)
|
|
||||||
/* 16A120 802498C0 AFA2001C */ sw $v0, 0x1c($sp)
|
|
||||||
/* 16A124 802498C4 0C090AE8 */ jal mainmenu_draw_rect
|
|
||||||
/* 16A128 802498C8 AFA20020 */ sw $v0, 0x20($sp)
|
|
||||||
/* 16A12C 802498CC 3C03800A */ lui $v1, %hi(gMasterGfxPos)
|
|
||||||
/* 16A130 802498D0 8C63A66C */ lw $v1, %lo(gMasterGfxPos)($v1)
|
|
||||||
/* 16A134 802498D4 3C018025 */ lui $at, %hi(D_8024B7C8)
|
|
||||||
/* 16A138 802498D8 AC23B7C8 */ sw $v1, %lo(D_8024B7C8)($at)
|
|
||||||
/* 16A13C 802498DC 08092655 */ j .L80249954
|
|
||||||
/* 16A140 802498E0 0280102D */ daddu $v0, $s4, $zero
|
|
||||||
.L802498E4:
|
|
||||||
/* 16A144 802498E4 15220003 */ bne $t1, $v0, .L802498F4
|
|
||||||
/* 16A148 802498E8 240200F4 */ addiu $v0, $zero, 0xf4
|
|
||||||
/* 16A14C 802498EC 08092655 */ j .L80249954
|
|
||||||
/* 16A150 802498F0 2682FFFA */ addiu $v0, $s4, -6
|
|
||||||
.L802498F4:
|
|
||||||
/* 16A154 802498F4 11220010 */ beq $t1, $v0, .L80249938
|
|
||||||
/* 16A158 802498F8 292200F5 */ slti $v0, $t1, 0xf5
|
|
||||||
/* 16A15C 802498FC 10400005 */ beqz $v0, .L80249914
|
|
||||||
/* 16A160 80249900 240200F3 */ addiu $v0, $zero, 0xf3
|
|
||||||
/* 16A164 80249904 1122000A */ beq $t1, $v0, .L80249930
|
|
||||||
/* 16A168 80249908 0000102D */ daddu $v0, $zero, $zero
|
|
||||||
/* 16A16C 8024990C 08092655 */ j .L80249954
|
|
||||||
/* 16A170 80249910 00000000 */ nop
|
|
||||||
.L80249914:
|
|
||||||
/* 16A174 80249914 240200F5 */ addiu $v0, $zero, 0xf5
|
|
||||||
/* 16A178 80249918 11220009 */ beq $t1, $v0, .L80249940
|
|
||||||
/* 16A17C 8024991C 240200F6 */ addiu $v0, $zero, 0xf6
|
|
||||||
/* 16A180 80249920 11220009 */ beq $t1, $v0, .L80249948
|
|
||||||
/* 16A184 80249924 0000102D */ daddu $v0, $zero, $zero
|
|
||||||
/* 16A188 80249928 08092655 */ j .L80249954
|
|
||||||
/* 16A18C 8024992C 00000000 */ nop
|
|
||||||
.L80249930:
|
|
||||||
/* 16A190 80249930 08092654 */ j .L80249950
|
|
||||||
/* 16A194 80249934 ACA00000 */ sw $zero, ($a1)
|
|
||||||
.L80249938:
|
|
||||||
/* 16A198 80249938 08092653 */ j .L8024994C
|
|
||||||
/* 16A19C 8024993C 24020001 */ addiu $v0, $zero, 1
|
|
||||||
.L80249940:
|
|
||||||
/* 16A1A0 80249940 08092653 */ j .L8024994C
|
|
||||||
/* 16A1A4 80249944 24020002 */ addiu $v0, $zero, 2
|
|
||||||
.L80249948:
|
|
||||||
/* 16A1A8 80249948 24020003 */ addiu $v0, $zero, 3
|
|
||||||
.L8024994C:
|
|
||||||
/* 16A1AC 8024994C ACA20000 */ sw $v0, ($a1)
|
|
||||||
.L80249950:
|
|
||||||
/* 16A1B0 80249950 0000102D */ daddu $v0, $zero, $zero
|
|
||||||
.L80249954:
|
|
||||||
/* 16A1B4 80249954 8FBF0044 */ lw $ra, 0x44($sp)
|
|
||||||
/* 16A1B8 80249958 8FB60040 */ lw $s6, 0x40($sp)
|
|
||||||
/* 16A1BC 8024995C 8FB5003C */ lw $s5, 0x3c($sp)
|
|
||||||
/* 16A1C0 80249960 8FB40038 */ lw $s4, 0x38($sp)
|
|
||||||
/* 16A1C4 80249964 8FB30034 */ lw $s3, 0x34($sp)
|
|
||||||
/* 16A1C8 80249968 8FB20030 */ lw $s2, 0x30($sp)
|
|
||||||
/* 16A1CC 8024996C 8FB1002C */ lw $s1, 0x2c($sp)
|
|
||||||
/* 16A1D0 80249970 8FB00028 */ lw $s0, 0x28($sp)
|
|
||||||
/* 16A1D4 80249974 03E00008 */ jr $ra
|
|
||||||
/* 16A1D8 80249978 27BD0048 */ addiu $sp, $sp, 0x48
|
|
@ -1,410 +0,0 @@
|
|||||||
.set noat # allow manual use of $at
|
|
||||||
.set noreorder # don't insert nops after branches
|
|
||||||
|
|
||||||
.section .rodata
|
|
||||||
|
|
||||||
dlabel jtbl_8029CB88
|
|
||||||
.word .L802475CC_175EAC, .L802475CC_175EAC, .L80247720_176000, .L802479CC_1762AC, .L802479CC_1762AC, .L802479CC_1762AC, .L802479CC_1762AC, .L802479CC_1762AC, .L802479CC_1762AC, .L802479CC_1762AC, .L802479CC_1762AC, .L80247970_176250, .L802479A4_176284, 0
|
|
||||||
|
|
||||||
dlabel jtbl_8029CBC0
|
|
||||||
.word .L8024791C_1761FC, .L80247944_176224, .L80247924_176204, .L8024792C_17620C, .L8024794C_17622C, .L80247934_176214, .L8024793C_17621C, 0
|
|
||||||
|
|
||||||
.section .text
|
|
||||||
|
|
||||||
glabel btl_state_update_enemy_move
|
|
||||||
/* 175E50 80247570 3C03800E */ lui $v1, %hi(gBattleState2)
|
|
||||||
/* 175E54 80247574 8C63C4DC */ lw $v1, %lo(gBattleState2)($v1)
|
|
||||||
/* 175E58 80247578 27BDFFD0 */ addiu $sp, $sp, -0x30
|
|
||||||
/* 175E5C 8024757C AFB60028 */ sw $s6, 0x28($sp)
|
|
||||||
/* 175E60 80247580 3C16800E */ lui $s6, %hi(gBattleStatus)
|
|
||||||
/* 175E64 80247584 26D6C070 */ addiu $s6, $s6, %lo(gBattleStatus)
|
|
||||||
/* 175E68 80247588 AFBF002C */ sw $ra, 0x2c($sp)
|
|
||||||
/* 175E6C 8024758C AFB50024 */ sw $s5, 0x24($sp)
|
|
||||||
/* 175E70 80247590 AFB40020 */ sw $s4, 0x20($sp)
|
|
||||||
/* 175E74 80247594 AFB3001C */ sw $s3, 0x1c($sp)
|
|
||||||
/* 175E78 80247598 AFB20018 */ sw $s2, 0x18($sp)
|
|
||||||
/* 175E7C 8024759C AFB10014 */ sw $s1, 0x14($sp)
|
|
||||||
/* 175E80 802475A0 AFB00010 */ sw $s0, 0x10($sp)
|
|
||||||
/* 175E84 802475A4 8ED500D8 */ lw $s5, 0xd8($s6)
|
|
||||||
/* 175E88 802475A8 8ED400DC */ lw $s4, 0xdc($s6)
|
|
||||||
/* 175E8C 802475AC 2C62000D */ sltiu $v0, $v1, 0xd
|
|
||||||
/* 175E90 802475B0 10400106 */ beqz $v0, .L802479CC_1762AC
|
|
||||||
/* 175E94 802475B4 00031080 */ sll $v0, $v1, 2
|
|
||||||
/* 175E98 802475B8 3C01802A */ lui $at, %hi(jtbl_8029CB88)
|
|
||||||
/* 175E9C 802475BC 00220821 */ addu $at, $at, $v0
|
|
||||||
/* 175EA0 802475C0 8C22CB88 */ lw $v0, %lo(jtbl_8029CB88)($at)
|
|
||||||
/* 175EA4 802475C4 00400008 */ jr $v0
|
|
||||||
/* 175EA8 802475C8 00000000 */ nop
|
|
||||||
.L802475CC_175EAC:
|
|
||||||
/* 175EAC 802475CC 3C04FFDF */ lui $a0, 0xffdf
|
|
||||||
/* 175EB0 802475D0 3484FFFF */ ori $a0, $a0, 0xffff
|
|
||||||
/* 175EB4 802475D4 3C05F7FF */ lui $a1, 0xf7ff
|
|
||||||
/* 175EB8 802475D8 3C10800E */ lui $s0, %hi(gBattleStatus)
|
|
||||||
/* 175EBC 802475DC 2610C070 */ addiu $s0, $s0, %lo(gBattleStatus)
|
|
||||||
/* 175EC0 802475E0 8E020000 */ lw $v0, ($s0)
|
|
||||||
/* 175EC4 802475E4 2403FFFD */ addiu $v1, $zero, -3
|
|
||||||
/* 175EC8 802475E8 00431024 */ and $v0, $v0, $v1
|
|
||||||
/* 175ECC 802475EC 00441024 */ and $v0, $v0, $a0
|
|
||||||
/* 175ED0 802475F0 AE020000 */ sw $v0, ($s0)
|
|
||||||
/* 175ED4 802475F4 8EA20000 */ lw $v0, ($s5)
|
|
||||||
/* 175ED8 802475F8 34A5FFFF */ ori $a1, $a1, 0xffff
|
|
||||||
/* 175EDC 802475FC 00451024 */ and $v0, $v0, $a1
|
|
||||||
/* 175EE0 80247600 12800004 */ beqz $s4, .L80247614
|
|
||||||
/* 175EE4 80247604 AEA20000 */ sw $v0, ($s5)
|
|
||||||
/* 175EE8 80247608 8E820000 */ lw $v0, ($s4)
|
|
||||||
/* 175EEC 8024760C 00451024 */ and $v0, $v0, $a1
|
|
||||||
/* 175EF0 80247610 AE820000 */ sw $v0, ($s4)
|
|
||||||
.L80247614:
|
|
||||||
/* 175EF4 80247614 2402007F */ addiu $v0, $zero, 0x7f
|
|
||||||
/* 175EF8 80247618 A2C0008C */ sb $zero, 0x8c($s6)
|
|
||||||
/* 175EFC 8024761C A6C00180 */ sh $zero, 0x180($s6)
|
|
||||||
/* 175F00 80247620 A2C00081 */ sb $zero, 0x81($s6)
|
|
||||||
/* 175F04 80247624 A2C20086 */ sb $v0, 0x86($s6)
|
|
||||||
/* 175F08 80247628 A2C20087 */ sb $v0, 0x87($s6)
|
|
||||||
/* 175F0C 8024762C 0C098F18 */ jal reset_actor_turn_info
|
|
||||||
/* 175F10 80247630 A2C0019A */ sb $zero, 0x19a($s6)
|
|
||||||
/* 175F14 80247634 8E020000 */ lw $v0, ($s0)
|
|
||||||
/* 175F18 80247638 34420100 */ ori $v0, $v0, 0x100
|
|
||||||
/* 175F1C 8024763C AE020000 */ sw $v0, ($s0)
|
|
||||||
/* 175F20 80247640 12800002 */ beqz $s4, .L8024764C
|
|
||||||
/* 175F24 80247644 A2A0021C */ sb $zero, 0x21c($s5)
|
|
||||||
/* 175F28 80247648 A280021C */ sb $zero, 0x21c($s4)
|
|
||||||
.L8024764C:
|
|
||||||
/* 175F2C 8024764C 0000882D */ daddu $s1, $zero, $zero
|
|
||||||
/* 175F30 80247650 3C04FFF7 */ lui $a0, 0xfff7
|
|
||||||
/* 175F34 80247654 3484FFFF */ ori $a0, $a0, 0xffff
|
|
||||||
/* 175F38 80247658 8E020004 */ lw $v0, 4($s0)
|
|
||||||
/* 175F3C 8024765C 02C0182D */ daddu $v1, $s6, $zero
|
|
||||||
/* 175F40 80247660 34424000 */ ori $v0, $v0, 0x4000
|
|
||||||
/* 175F44 80247664 AE020004 */ sw $v0, 4($s0)
|
|
||||||
.L80247668:
|
|
||||||
/* 175F48 80247668 8C7000E0 */ lw $s0, 0xe0($v1)
|
|
||||||
/* 175F4C 8024766C 12000004 */ beqz $s0, .L80247680
|
|
||||||
/* 175F50 80247670 26310001 */ addiu $s1, $s1, 1
|
|
||||||
/* 175F54 80247674 8E020000 */ lw $v0, ($s0)
|
|
||||||
/* 175F58 80247678 00441024 */ and $v0, $v0, $a0
|
|
||||||
/* 175F5C 8024767C AE020000 */ sw $v0, ($s0)
|
|
||||||
.L80247680:
|
|
||||||
/* 175F60 80247680 2A220018 */ slti $v0, $s1, 0x18
|
|
||||||
/* 175F64 80247684 1440FFF8 */ bnez $v0, .L80247668
|
|
||||||
/* 175F68 80247688 24630004 */ addiu $v1, $v1, 4
|
|
||||||
/* 175F6C 8024768C 0000882D */ daddu $s1, $zero, $zero
|
|
||||||
/* 175F70 80247690 3C060040 */ lui $a2, 0x40
|
|
||||||
/* 175F74 80247694 3C05F7FF */ lui $a1, 0xf7ff
|
|
||||||
/* 175F78 80247698 34A5FFFF */ ori $a1, $a1, 0xffff
|
|
||||||
/* 175F7C 8024769C 02C0202D */ daddu $a0, $s6, $zero
|
|
||||||
.L802476A0:
|
|
||||||
/* 175F80 802476A0 8C9000E0 */ lw $s0, 0xe0($a0)
|
|
||||||
/* 175F84 802476A4 12000007 */ beqz $s0, .L802476C4
|
|
||||||
/* 175F88 802476A8 26310001 */ addiu $s1, $s1, 1
|
|
||||||
/* 175F8C 802476AC 8E030000 */ lw $v1, ($s0)
|
|
||||||
/* 175F90 802476B0 00661024 */ and $v0, $v1, $a2
|
|
||||||
/* 175F94 802476B4 14400003 */ bnez $v0, .L802476C4
|
|
||||||
/* 175F98 802476B8 00000000 */ nop
|
|
||||||
/* 175F9C 802476BC 00651024 */ and $v0, $v1, $a1
|
|
||||||
/* 175FA0 802476C0 AE020000 */ sw $v0, ($s0)
|
|
||||||
.L802476C4:
|
|
||||||
/* 175FA4 802476C4 2A220018 */ slti $v0, $s1, 0x18
|
|
||||||
/* 175FA8 802476C8 1440FFF5 */ bnez $v0, .L802476A0
|
|
||||||
/* 175FAC 802476CC 24840004 */ addiu $a0, $a0, 4
|
|
||||||
/* 175FB0 802476D0 8ED00174 */ lw $s0, 0x174($s6)
|
|
||||||
/* 175FB4 802476D4 8E020000 */ lw $v0, ($s0)
|
|
||||||
/* 175FB8 802476D8 3C030020 */ lui $v1, 0x20
|
|
||||||
/* 175FBC 802476DC 00431024 */ and $v0, $v0, $v1
|
|
||||||
/* 175FC0 802476E0 544000B8 */ bnel $v0, $zero, .L802479C4
|
|
||||||
/* 175FC4 802476E4 24020002 */ addiu $v0, $zero, 2
|
|
||||||
/* 175FC8 802476E8 0C099EA7 */ jal reset_all_actor_sounds
|
|
||||||
/* 175FCC 802476EC 0200202D */ daddu $a0, $s0, $zero
|
|
||||||
/* 175FD0 802476F0 2405000A */ addiu $a1, $zero, 0xa
|
|
||||||
/* 175FD4 802476F4 A2C001A7 */ sb $zero, 0x1a7($s6)
|
|
||||||
/* 175FD8 802476F8 8E0401C4 */ lw $a0, 0x1c4($s0)
|
|
||||||
/* 175FDC 802476FC 0C0B0CF8 */ jal start_script
|
|
||||||
/* 175FE0 80247700 0000302D */ daddu $a2, $zero, $zero
|
|
||||||
/* 175FE4 80247704 AE0201D4 */ sw $v0, 0x1d4($s0)
|
|
||||||
/* 175FE8 80247708 8C430144 */ lw $v1, 0x144($v0)
|
|
||||||
/* 175FEC 8024770C AE0301E4 */ sw $v1, 0x1e4($s0)
|
|
||||||
/* 175FF0 80247710 86C30172 */ lh $v1, 0x172($s6)
|
|
||||||
/* 175FF4 80247714 AC430148 */ sw $v1, 0x148($v0)
|
|
||||||
/* 175FF8 80247718 08091E71 */ j .L802479C4
|
|
||||||
/* 175FFC 8024771C 24020002 */ addiu $v0, $zero, 2
|
|
||||||
.L80247720_176000:
|
|
||||||
/* 176000 80247720 8EA201D4 */ lw $v0, 0x1d4($s5)
|
|
||||||
/* 176004 80247724 10400005 */ beqz $v0, .L8024773C
|
|
||||||
/* 176008 80247728 00000000 */ nop
|
|
||||||
/* 17600C 8024772C 0C0B1059 */ jal does_script_exist
|
|
||||||
/* 176010 80247730 8EA401E4 */ lw $a0, 0x1e4($s5)
|
|
||||||
/* 176014 80247734 144000A5 */ bnez $v0, .L802479CC_1762AC
|
|
||||||
/* 176018 80247738 00000000 */ nop
|
|
||||||
.L8024773C:
|
|
||||||
/* 17601C 8024773C 8EA201D8 */ lw $v0, 0x1d8($s5)
|
|
||||||
/* 176020 80247740 10400006 */ beqz $v0, .L8024775C
|
|
||||||
/* 176024 80247744 AEA001D4 */ sw $zero, 0x1d4($s5)
|
|
||||||
/* 176028 80247748 8EA401E8 */ lw $a0, 0x1e8($s5)
|
|
||||||
/* 17602C 8024774C 0C0B1059 */ jal does_script_exist
|
|
||||||
/* 176030 80247750 00000000 */ nop
|
|
||||||
/* 176034 80247754 1440009D */ bnez $v0, .L802479CC_1762AC
|
|
||||||
/* 176038 80247758 00000000 */ nop
|
|
||||||
.L8024775C:
|
|
||||||
/* 17603C 8024775C 1280000A */ beqz $s4, .L80247788
|
|
||||||
/* 176040 80247760 AEA001D8 */ sw $zero, 0x1d8($s5)
|
|
||||||
/* 176044 80247764 8E8201D8 */ lw $v0, 0x1d8($s4)
|
|
||||||
/* 176048 80247768 50400007 */ beql $v0, $zero, .L80247788
|
|
||||||
/* 17604C 8024776C AE8001D8 */ sw $zero, 0x1d8($s4)
|
|
||||||
/* 176050 80247770 8E8401E8 */ lw $a0, 0x1e8($s4)
|
|
||||||
/* 176054 80247774 0C0B1059 */ jal does_script_exist
|
|
||||||
/* 176058 80247778 00000000 */ nop
|
|
||||||
/* 17605C 8024777C 14400093 */ bnez $v0, .L802479CC_1762AC
|
|
||||||
/* 176060 80247780 00000000 */ nop
|
|
||||||
/* 176064 80247784 AE8001D8 */ sw $zero, 0x1d8($s4)
|
|
||||||
.L80247788:
|
|
||||||
/* 176068 80247788 0000982D */ daddu $s3, $zero, $zero
|
|
||||||
/* 17606C 8024778C 0260882D */ daddu $s1, $s3, $zero
|
|
||||||
/* 176070 80247790 02C0902D */ daddu $s2, $s6, $zero
|
|
||||||
.L80247794:
|
|
||||||
/* 176074 80247794 8E5000E0 */ lw $s0, 0xe0($s2)
|
|
||||||
/* 176078 80247798 5200000B */ beql $s0, $zero, .L802477C8
|
|
||||||
/* 17607C 8024779C 26310001 */ addiu $s1, $s1, 1
|
|
||||||
/* 176080 802477A0 8E0201D8 */ lw $v0, 0x1d8($s0)
|
|
||||||
/* 176084 802477A4 50400008 */ beql $v0, $zero, .L802477C8
|
|
||||||
/* 176088 802477A8 26310001 */ addiu $s1, $s1, 1
|
|
||||||
/* 17608C 802477AC 8E0401E8 */ lw $a0, 0x1e8($s0)
|
|
||||||
/* 176090 802477B0 0C0B1059 */ jal does_script_exist
|
|
||||||
/* 176094 802477B4 00000000 */ nop
|
|
||||||
/* 176098 802477B8 50400002 */ beql $v0, $zero, .L802477C4
|
|
||||||
/* 17609C 802477BC AE0001D8 */ sw $zero, 0x1d8($s0)
|
|
||||||
/* 1760A0 802477C0 24130001 */ addiu $s3, $zero, 1
|
|
||||||
.L802477C4:
|
|
||||||
/* 1760A4 802477C4 26310001 */ addiu $s1, $s1, 1
|
|
||||||
.L802477C8:
|
|
||||||
/* 1760A8 802477C8 2A220018 */ slti $v0, $s1, 0x18
|
|
||||||
/* 1760AC 802477CC 1440FFF1 */ bnez $v0, .L80247794
|
|
||||||
/* 1760B0 802477D0 26520004 */ addiu $s2, $s2, 4
|
|
||||||
/* 1760B4 802477D4 1660007D */ bnez $s3, .L802479CC_1762AC
|
|
||||||
/* 1760B8 802477D8 00000000 */ nop
|
|
||||||
/* 1760BC 802477DC 0C098D19 */ jal btl_check_player_defeated
|
|
||||||
/* 1760C0 802477E0 00000000 */ nop
|
|
||||||
/* 1760C4 802477E4 144000BB */ bnez $v0, .L80247AD4
|
|
||||||
/* 1760C8 802477E8 0000882D */ daddu $s1, $zero, $zero
|
|
||||||
/* 1760CC 802477EC 02C0902D */ daddu $s2, $s6, $zero
|
|
||||||
.L802477F0:
|
|
||||||
/* 1760D0 802477F0 8E5000E0 */ lw $s0, 0xe0($s2)
|
|
||||||
/* 1760D4 802477F4 5200000B */ beql $s0, $zero, .L80247824
|
|
||||||
/* 1760D8 802477F8 26310001 */ addiu $s1, $s1, 1
|
|
||||||
/* 1760DC 802477FC 8E0201D4 */ lw $v0, 0x1d4($s0)
|
|
||||||
/* 1760E0 80247800 50400008 */ beql $v0, $zero, .L80247824
|
|
||||||
/* 1760E4 80247804 26310001 */ addiu $s1, $s1, 1
|
|
||||||
/* 1760E8 80247808 8E0401E4 */ lw $a0, 0x1e4($s0)
|
|
||||||
/* 1760EC 8024780C 0C0B1059 */ jal does_script_exist
|
|
||||||
/* 1760F0 80247810 00000000 */ nop
|
|
||||||
/* 1760F4 80247814 50400002 */ beql $v0, $zero, .L80247820
|
|
||||||
/* 1760F8 80247818 AE0001D4 */ sw $zero, 0x1d4($s0)
|
|
||||||
/* 1760FC 8024781C 24130001 */ addiu $s3, $zero, 1
|
|
||||||
.L80247820:
|
|
||||||
/* 176100 80247820 26310001 */ addiu $s1, $s1, 1
|
|
||||||
.L80247824:
|
|
||||||
/* 176104 80247824 2A220018 */ slti $v0, $s1, 0x18
|
|
||||||
/* 176108 80247828 1440FFF1 */ bnez $v0, .L802477F0
|
|
||||||
/* 17610C 8024782C 26520004 */ addiu $s2, $s2, 4
|
|
||||||
/* 176110 80247830 12600006 */ beqz $s3, .L8024784C
|
|
||||||
/* 176114 80247834 3C030020 */ lui $v1, 0x20
|
|
||||||
/* 176118 80247838 3C02800E */ lui $v0, %hi(gBattleStatus)
|
|
||||||
/* 17611C 8024783C 8C42C070 */ lw $v0, %lo(gBattleStatus)($v0)
|
|
||||||
/* 176120 80247840 00431024 */ and $v0, $v0, $v1
|
|
||||||
/* 176124 80247844 10400061 */ beqz $v0, .L802479CC_1762AC
|
|
||||||
/* 176128 80247848 00000000 */ nop
|
|
||||||
.L8024784C:
|
|
||||||
/* 17612C 8024784C 3C04800E */ lui $a0, %hi(gBattleStatus)
|
|
||||||
/* 176130 80247850 2484C070 */ addiu $a0, $a0, %lo(gBattleStatus)
|
|
||||||
/* 176134 80247854 8C820000 */ lw $v0, ($a0)
|
|
||||||
/* 176138 80247858 2403FEFF */ addiu $v1, $zero, -0x101
|
|
||||||
/* 17613C 8024785C 00431024 */ and $v0, $v0, $v1
|
|
||||||
/* 176140 80247860 AC820000 */ sw $v0, ($a0)
|
|
||||||
/* 176144 80247864 8C820004 */ lw $v0, 4($a0)
|
|
||||||
/* 176148 80247868 2403BFFF */ addiu $v1, $zero, -0x4001
|
|
||||||
/* 17614C 8024786C 00431024 */ and $v0, $v0, $v1
|
|
||||||
/* 176150 80247870 0C098D0D */ jal btl_check_enemies_defeated
|
|
||||||
/* 176154 80247874 AC820004 */ sw $v0, 4($a0)
|
|
||||||
/* 176158 80247878 14400096 */ bnez $v0, .L80247AD4
|
|
||||||
/* 17615C 8024787C 00000000 */ nop
|
|
||||||
/* 176160 80247880 82C2008C */ lb $v0, 0x8c($s6)
|
|
||||||
/* 176164 80247884 14400051 */ bnez $v0, .L802479CC_1762AC
|
|
||||||
/* 176168 80247888 00000000 */ nop
|
|
||||||
/* 17616C 8024788C 3C028007 */ lui $v0, %hi(gGameStatusPtr)
|
|
||||||
/* 176170 80247890 8C42419C */ lw $v0, %lo(gGameStatusPtr)($v0)
|
|
||||||
/* 176174 80247894 904200AA */ lbu $v0, 0xaa($v0)
|
|
||||||
/* 176178 80247898 30420001 */ andi $v0, $v0, 1
|
|
||||||
/* 17617C 8024789C 10400005 */ beqz $v0, .L802478B4
|
|
||||||
/* 176180 802478A0 00000000 */ nop
|
|
||||||
/* 176184 802478A4 0C090464 */ jal btl_set_state
|
|
||||||
/* 176188 802478A8 24040023 */ addiu $a0, $zero, 0x23
|
|
||||||
/* 17618C 802478AC 08091E73 */ j .L802479CC_1762AC
|
|
||||||
/* 176190 802478B0 00000000 */ nop
|
|
||||||
.L802478B4:
|
|
||||||
/* 176194 802478B4 0C099DDF */ jal btl_update_ko_status
|
|
||||||
/* 176198 802478B8 00000000 */ nop
|
|
||||||
/* 17619C 802478BC 82A2021C */ lb $v0, 0x21c($s5)
|
|
||||||
/* 1761A0 802478C0 1040003F */ beqz $v0, .L802479C0
|
|
||||||
/* 1761A4 802478C4 3C030C00 */ lui $v1, 0xc00
|
|
||||||
/* 1761A8 802478C8 8EA20000 */ lw $v0, ($s5)
|
|
||||||
/* 1761AC 802478CC 00431025 */ or $v0, $v0, $v1
|
|
||||||
/* 1761B0 802478D0 12800004 */ beqz $s4, .L802478E4
|
|
||||||
/* 1761B4 802478D4 AEA20000 */ sw $v0, ($s5)
|
|
||||||
/* 1761B8 802478D8 8E820000 */ lw $v0, ($s4)
|
|
||||||
/* 1761BC 802478DC 00431025 */ or $v0, $v0, $v1
|
|
||||||
/* 1761C0 802478E0 AE820000 */ sw $v0, ($s4)
|
|
||||||
.L802478E4:
|
|
||||||
/* 1761C4 802478E4 0C093903 */ jal btl_cam_use_preset
|
|
||||||
/* 1761C8 802478E8 24040021 */ addiu $a0, $zero, 0x21
|
|
||||||
/* 1761CC 802478EC 92A2021C */ lbu $v0, 0x21c($s5)
|
|
||||||
/* 1761D0 802478F0 2442FFFC */ addiu $v0, $v0, -4
|
|
||||||
/* 1761D4 802478F4 00021600 */ sll $v0, $v0, 0x18
|
|
||||||
/* 1761D8 802478F8 00021E03 */ sra $v1, $v0, 0x18
|
|
||||||
/* 1761DC 802478FC 2C620007 */ sltiu $v0, $v1, 7
|
|
||||||
/* 1761E0 80247900 10400012 */ beqz $v0, .L8024794C_17622C
|
|
||||||
/* 1761E4 80247904 00031080 */ sll $v0, $v1, 2
|
|
||||||
/* 1761E8 80247908 3C01802A */ lui $at, %hi(jtbl_8029CBC0)
|
|
||||||
/* 1761EC 8024790C 00220821 */ addu $at, $at, $v0
|
|
||||||
/* 1761F0 80247910 8C22CBC0 */ lw $v0, %lo(jtbl_8029CBC0)($at)
|
|
||||||
/* 1761F4 80247914 00400008 */ jr $v0
|
|
||||||
/* 1761F8 80247918 00000000 */ nop
|
|
||||||
.L8024791C_1761FC:
|
|
||||||
/* 1761FC 8024791C 08091E57 */ j .L8024795C
|
|
||||||
/* 176200 80247920 2404000A */ addiu $a0, $zero, 0xa
|
|
||||||
.L80247924_176204:
|
|
||||||
/* 176204 80247924 08091E57 */ j .L8024795C
|
|
||||||
/* 176208 80247928 2404000B */ addiu $a0, $zero, 0xb
|
|
||||||
.L8024792C_17620C:
|
|
||||||
/* 17620C 8024792C 08091E57 */ j .L8024795C
|
|
||||||
/* 176210 80247930 2404000C */ addiu $a0, $zero, 0xc
|
|
||||||
.L80247934_176214:
|
|
||||||
/* 176214 80247934 08091E57 */ j .L8024795C
|
|
||||||
/* 176218 80247938 2404000D */ addiu $a0, $zero, 0xd
|
|
||||||
.L8024793C_17621C:
|
|
||||||
/* 17621C 8024793C 08091E57 */ j .L8024795C
|
|
||||||
/* 176220 80247940 2404000E */ addiu $a0, $zero, 0xe
|
|
||||||
.L80247944_176224:
|
|
||||||
/* 176224 80247944 08091E57 */ j .L8024795C
|
|
||||||
/* 176228 80247948 2404000F */ addiu $a0, $zero, 0xf
|
|
||||||
.L8024794C_17622C:
|
|
||||||
/* 17622C 8024794C 0000202D */ daddu $a0, $zero, $zero
|
|
||||||
/* 176230 80247950 24020014 */ addiu $v0, $zero, 0x14
|
|
||||||
/* 176234 80247954 3C01800E */ lui $at, %hi(gBattleState2)
|
|
||||||
/* 176238 80247958 AC22C4DC */ sw $v0, %lo(gBattleState2)($at)
|
|
||||||
.L8024795C:
|
|
||||||
/* 17623C 8024795C 0C093E58 */ jal btl_show_battle_message
|
|
||||||
/* 176240 80247960 2405003C */ addiu $a1, $zero, 0x3c
|
|
||||||
/* 176244 80247964 2402000B */ addiu $v0, $zero, 0xb
|
|
||||||
/* 176248 80247968 08091E71 */ j .L802479C4
|
|
||||||
/* 17624C 8024796C A2A0021C */ sb $zero, 0x21c($s5)
|
|
||||||
.L80247970_176250:
|
|
||||||
/* 176250 80247970 0C093EAD */ jal btl_is_popup_displayed
|
|
||||||
/* 176254 80247974 00000000 */ nop
|
|
||||||
/* 176258 80247978 14400014 */ bnez $v0, .L802479CC_1762AC
|
|
||||||
/* 17625C 8024797C 00000000 */ nop
|
|
||||||
/* 176260 80247980 0C093903 */ jal btl_cam_use_preset
|
|
||||||
/* 176264 80247984 24040002 */ addiu $a0, $zero, 2
|
|
||||||
/* 176268 80247988 0C093936 */ jal btl_cam_move
|
|
||||||
/* 17626C 8024798C 2404000F */ addiu $a0, $zero, 0xf
|
|
||||||
/* 176270 80247990 2402000A */ addiu $v0, $zero, 0xa
|
|
||||||
/* 176274 80247994 3C01802A */ lui $at, %hi(D_8029F248)
|
|
||||||
/* 176278 80247998 AC22F248 */ sw $v0, %lo(D_8029F248)($at)
|
|
||||||
/* 17627C 8024799C 08091E71 */ j .L802479C4
|
|
||||||
/* 176280 802479A0 2402000C */ addiu $v0, $zero, 0xc
|
|
||||||
.L802479A4_176284:
|
|
||||||
/* 176284 802479A4 3C03802A */ lui $v1, %hi(D_8029F248)
|
|
||||||
/* 176288 802479A8 2463F248 */ addiu $v1, $v1, %lo(D_8029F248)
|
|
||||||
/* 17628C 802479AC 8C620000 */ lw $v0, ($v1)
|
|
||||||
/* 176290 802479B0 10400003 */ beqz $v0, .L802479C0
|
|
||||||
/* 176294 802479B4 2442FFFF */ addiu $v0, $v0, -1
|
|
||||||
/* 176298 802479B8 08091E73 */ j .L802479CC_1762AC
|
|
||||||
/* 17629C 802479BC AC620000 */ sw $v0, ($v1)
|
|
||||||
.L802479C0:
|
|
||||||
/* 1762A0 802479C0 24020014 */ addiu $v0, $zero, 0x14
|
|
||||||
.L802479C4:
|
|
||||||
/* 1762A4 802479C4 3C01800E */ lui $at, %hi(gBattleState2)
|
|
||||||
/* 1762A8 802479C8 AC22C4DC */ sw $v0, %lo(gBattleState2)($at)
|
|
||||||
.L802479CC_1762AC:
|
|
||||||
/* 1762AC 802479CC 3C10800E */ lui $s0, %hi(gBattleState2)
|
|
||||||
/* 1762B0 802479D0 2610C4DC */ addiu $s0, $s0, %lo(gBattleState2)
|
|
||||||
/* 1762B4 802479D4 8E030000 */ lw $v1, ($s0)
|
|
||||||
/* 1762B8 802479D8 24110015 */ addiu $s1, $zero, 0x15
|
|
||||||
/* 1762BC 802479DC 10710020 */ beq $v1, $s1, .L80247A60
|
|
||||||
/* 1762C0 802479E0 28620016 */ slti $v0, $v1, 0x16
|
|
||||||
/* 1762C4 802479E4 10400005 */ beqz $v0, .L802479FC
|
|
||||||
/* 1762C8 802479E8 24020014 */ addiu $v0, $zero, 0x14
|
|
||||||
/* 1762CC 802479EC 10620008 */ beq $v1, $v0, .L80247A10
|
|
||||||
/* 1762D0 802479F0 00000000 */ nop
|
|
||||||
/* 1762D4 802479F4 08091EAE */ j .L80247AB8
|
|
||||||
/* 1762D8 802479F8 00000000 */ nop
|
|
||||||
.L802479FC:
|
|
||||||
/* 1762DC 802479FC 24020016 */ addiu $v0, $zero, 0x16
|
|
||||||
/* 1762E0 80247A00 10620024 */ beq $v1, $v0, .L80247A94
|
|
||||||
/* 1762E4 80247A04 00000000 */ nop
|
|
||||||
/* 1762E8 80247A08 08091EAE */ j .L80247AB8
|
|
||||||
/* 1762EC 80247A0C 00000000 */ nop
|
|
||||||
.L80247A10:
|
|
||||||
/* 1762F0 80247A10 12800027 */ beqz $s4, .L80247AB0
|
|
||||||
/* 1762F4 80247A14 2402000D */ addiu $v0, $zero, 0xd
|
|
||||||
/* 1762F8 80247A18 8283021C */ lb $v1, 0x21c($s4)
|
|
||||||
/* 1762FC 80247A1C 14620025 */ bne $v1, $v0, .L80247AB4
|
|
||||||
/* 176300 80247A20 2402001E */ addiu $v0, $zero, 0x1e
|
|
||||||
/* 176304 80247A24 8EA20000 */ lw $v0, ($s5)
|
|
||||||
/* 176308 80247A28 3C030C00 */ lui $v1, 0xc00
|
|
||||||
/* 17630C 80247A2C 00431025 */ or $v0, $v0, $v1
|
|
||||||
/* 176310 80247A30 AEA20000 */ sw $v0, ($s5)
|
|
||||||
/* 176314 80247A34 8E820000 */ lw $v0, ($s4)
|
|
||||||
/* 176318 80247A38 24040036 */ addiu $a0, $zero, 0x36
|
|
||||||
/* 17631C 80247A3C 00431025 */ or $v0, $v0, $v1
|
|
||||||
/* 176320 80247A40 0C093903 */ jal btl_cam_use_preset
|
|
||||||
/* 176324 80247A44 AE820000 */ sw $v0, ($s4)
|
|
||||||
/* 176328 80247A48 24040023 */ addiu $a0, $zero, 0x23
|
|
||||||
/* 17632C 80247A4C 0C093E58 */ jal btl_show_battle_message
|
|
||||||
/* 176330 80247A50 2405003C */ addiu $a1, $zero, 0x3c
|
|
||||||
/* 176334 80247A54 A280021C */ sb $zero, 0x21c($s4)
|
|
||||||
/* 176338 80247A58 08091EAE */ j .L80247AB8
|
|
||||||
/* 17633C 80247A5C AE110000 */ sw $s1, ($s0)
|
|
||||||
.L80247A60:
|
|
||||||
/* 176340 80247A60 0C093EAD */ jal btl_is_popup_displayed
|
|
||||||
/* 176344 80247A64 00000000 */ nop
|
|
||||||
/* 176348 80247A68 14400013 */ bnez $v0, .L80247AB8
|
|
||||||
/* 17634C 80247A6C 00000000 */ nop
|
|
||||||
/* 176350 80247A70 0C093903 */ jal btl_cam_use_preset
|
|
||||||
/* 176354 80247A74 24040002 */ addiu $a0, $zero, 2
|
|
||||||
/* 176358 80247A78 0C093936 */ jal btl_cam_move
|
|
||||||
/* 17635C 80247A7C 2404000F */ addiu $a0, $zero, 0xf
|
|
||||||
/* 176360 80247A80 2402000A */ addiu $v0, $zero, 0xa
|
|
||||||
/* 176364 80247A84 3C01802A */ lui $at, %hi(D_8029F248)
|
|
||||||
/* 176368 80247A88 AC22F248 */ sw $v0, %lo(D_8029F248)($at)
|
|
||||||
/* 17636C 80247A8C 08091EAD */ j .L80247AB4
|
|
||||||
/* 176370 80247A90 24020016 */ addiu $v0, $zero, 0x16
|
|
||||||
.L80247A94:
|
|
||||||
/* 176374 80247A94 3C03802A */ lui $v1, %hi(D_8029F248)
|
|
||||||
/* 176378 80247A98 2463F248 */ addiu $v1, $v1, %lo(D_8029F248)
|
|
||||||
/* 17637C 80247A9C 8C620000 */ lw $v0, ($v1)
|
|
||||||
/* 176380 80247AA0 10400003 */ beqz $v0, .L80247AB0
|
|
||||||
/* 176384 80247AA4 2442FFFF */ addiu $v0, $v0, -1
|
|
||||||
/* 176388 80247AA8 08091EAE */ j .L80247AB8
|
|
||||||
/* 17638C 80247AAC AC620000 */ sw $v0, ($v1)
|
|
||||||
.L80247AB0:
|
|
||||||
/* 176390 80247AB0 2402001E */ addiu $v0, $zero, 0x1e
|
|
||||||
.L80247AB4:
|
|
||||||
/* 176394 80247AB4 AE020000 */ sw $v0, ($s0)
|
|
||||||
.L80247AB8:
|
|
||||||
/* 176398 80247AB8 3C03800E */ lui $v1, %hi(gBattleState2)
|
|
||||||
/* 17639C 80247ABC 8C63C4DC */ lw $v1, %lo(gBattleState2)($v1)
|
|
||||||
/* 1763A0 80247AC0 2402001E */ addiu $v0, $zero, 0x1e
|
|
||||||
/* 1763A4 80247AC4 14620003 */ bne $v1, $v0, .L80247AD4
|
|
||||||
/* 1763A8 80247AC8 00000000 */ nop
|
|
||||||
/* 1763AC 80247ACC 0C090464 */ jal btl_set_state
|
|
||||||
/* 1763B0 80247AD0 24040014 */ addiu $a0, $zero, 0x14
|
|
||||||
.L80247AD4:
|
|
||||||
/* 1763B4 80247AD4 8FBF002C */ lw $ra, 0x2c($sp)
|
|
||||||
/* 1763B8 80247AD8 8FB60028 */ lw $s6, 0x28($sp)
|
|
||||||
/* 1763BC 80247ADC 8FB50024 */ lw $s5, 0x24($sp)
|
|
||||||
/* 1763C0 80247AE0 8FB40020 */ lw $s4, 0x20($sp)
|
|
||||||
/* 1763C4 80247AE4 8FB3001C */ lw $s3, 0x1c($sp)
|
|
||||||
/* 1763C8 80247AE8 8FB20018 */ lw $s2, 0x18($sp)
|
|
||||||
/* 1763CC 80247AEC 8FB10014 */ lw $s1, 0x14($sp)
|
|
||||||
/* 1763D0 80247AF0 8FB00010 */ lw $s0, 0x10($sp)
|
|
||||||
/* 1763D4 80247AF4 03E00008 */ jr $ra
|
|
||||||
/* 1763D8 80247AF8 27BD0030 */ addiu $sp, $sp, 0x30
|
|
@ -1,419 +0,0 @@
|
|||||||
.set noat # allow manual use of $at
|
|
||||||
.set noreorder # don't insert nops after branches
|
|
||||||
|
|
||||||
glabel btl_state_update_first_strike
|
|
||||||
/* 1763E4 80247B04 27BDFFD0 */ addiu $sp, $sp, -0x30
|
|
||||||
/* 1763E8 80247B08 AFB10014 */ sw $s1, 0x14($sp)
|
|
||||||
/* 1763EC 80247B0C 3C118011 */ lui $s1, %hi(gPlayerData)
|
|
||||||
/* 1763F0 80247B10 2631F290 */ addiu $s1, $s1, %lo(gPlayerData)
|
|
||||||
/* 1763F4 80247B14 AFB40020 */ sw $s4, 0x20($sp)
|
|
||||||
/* 1763F8 80247B18 3C14800E */ lui $s4, %hi(gBattleStatus)
|
|
||||||
/* 1763FC 80247B1C 2694C070 */ addiu $s4, $s4, %lo(gBattleStatus)
|
|
||||||
/* 176400 80247B20 AFB3001C */ sw $s3, 0x1c($sp)
|
|
||||||
/* 176404 80247B24 3C13800B */ lui $s3, %hi(gCurrentEncounter)
|
|
||||||
/* 176408 80247B28 26730F10 */ addiu $s3, $s3, %lo(gCurrentEncounter)
|
|
||||||
/* 17640C 80247B2C AFB60028 */ sw $s6, 0x28($sp)
|
|
||||||
/* 176410 80247B30 3C16800E */ lui $s6, %hi(gBattleState2)
|
|
||||||
/* 176414 80247B34 26D6C4DC */ addiu $s6, $s6, %lo(gBattleState2)
|
|
||||||
/* 176418 80247B38 AFB20018 */ sw $s2, 0x18($sp)
|
|
||||||
/* 17641C 80247B3C 24120001 */ addiu $s2, $zero, 1
|
|
||||||
/* 176420 80247B40 AFBF002C */ sw $ra, 0x2c($sp)
|
|
||||||
/* 176424 80247B44 AFB50024 */ sw $s5, 0x24($sp)
|
|
||||||
/* 176428 80247B48 AFB00010 */ sw $s0, 0x10($sp)
|
|
||||||
/* 17642C 80247B4C 8E9500D8 */ lw $s5, 0xd8($s4)
|
|
||||||
/* 176430 80247B50 8EC30000 */ lw $v1, ($s6)
|
|
||||||
/* 176434 80247B54 8E9000DC */ lw $s0, 0xdc($s4)
|
|
||||||
/* 176438 80247B58 10720077 */ beq $v1, $s2, .L80247D38
|
|
||||||
/* 17643C 80247B5C 28620002 */ slti $v0, $v1, 2
|
|
||||||
/* 176440 80247B60 50400005 */ beql $v0, $zero, .L80247B78
|
|
||||||
/* 176444 80247B64 24020002 */ addiu $v0, $zero, 2
|
|
||||||
/* 176448 80247B68 10600009 */ beqz $v1, .L80247B90
|
|
||||||
/* 17644C 80247B6C 00000000 */ nop
|
|
||||||
/* 176450 80247B70 08092032 */ j .L802480C8
|
|
||||||
/* 176454 80247B74 00000000 */ nop
|
|
||||||
.L80247B78:
|
|
||||||
/* 176458 80247B78 106200A4 */ beq $v1, $v0, .L80247E0C
|
|
||||||
/* 17645C 80247B7C 24020003 */ addiu $v0, $zero, 3
|
|
||||||
/* 176460 80247B80 10620131 */ beq $v1, $v0, .L80248048
|
|
||||||
/* 176464 80247B84 0000982D */ daddu $s3, $zero, $zero
|
|
||||||
/* 176468 80247B88 08092032 */ j .L802480C8
|
|
||||||
/* 17646C 80247B8C 00000000 */ nop
|
|
||||||
.L80247B90:
|
|
||||||
/* 176470 80247B90 3C01802A */ lui $at, %hi(D_8029F254)
|
|
||||||
/* 176474 80247B94 AC20F254 */ sw $zero, %lo(D_8029F254)($at)
|
|
||||||
/* 176478 80247B98 0C0903F7 */ jal btl_merlee_on_first_strike
|
|
||||||
/* 17647C 80247B9C 00000000 */ nop
|
|
||||||
/* 176480 80247BA0 9623029C */ lhu $v1, 0x29c($s1)
|
|
||||||
/* 176484 80247BA4 2C62270F */ sltiu $v0, $v1, 0x270f
|
|
||||||
/* 176488 80247BA8 10400002 */ beqz $v0, .L80247BB4
|
|
||||||
/* 17648C 80247BAC 24620001 */ addiu $v0, $v1, 1
|
|
||||||
/* 176490 80247BB0 A622029C */ sh $v0, 0x29c($s1)
|
|
||||||
.L80247BB4:
|
|
||||||
/* 176494 80247BB4 3C03F7FF */ lui $v1, 0xf7ff
|
|
||||||
/* 176498 80247BB8 8E820004 */ lw $v0, 4($s4)
|
|
||||||
/* 17649C 80247BBC 3463FFFF */ ori $v1, $v1, 0xffff
|
|
||||||
/* 1764A0 80247BC0 A2800099 */ sb $zero, 0x99($s4)
|
|
||||||
/* 1764A4 80247BC4 00431824 */ and $v1, $v0, $v1
|
|
||||||
/* 1764A8 80247BC8 30420040 */ andi $v0, $v0, 0x40
|
|
||||||
/* 1764AC 80247BCC 14400023 */ bnez $v0, .L80247C5C
|
|
||||||
/* 1764B0 80247BD0 AE830004 */ sw $v1, 4($s4)
|
|
||||||
/* 1764B4 80247BD4 82220002 */ lb $v0, 2($s1)
|
|
||||||
/* 1764B8 80247BD8 28420002 */ slti $v0, $v0, 2
|
|
||||||
/* 1764BC 80247BDC 1040000B */ beqz $v0, .L80247C0C
|
|
||||||
/* 1764C0 80247BE0 00000000 */ nop
|
|
||||||
/* 1764C4 80247BE4 0C03A752 */ jal is_ability_active
|
|
||||||
/* 1764C8 80247BE8 24040014 */ addiu $a0, $zero, 0x14
|
|
||||||
/* 1764CC 80247BEC 10400007 */ beqz $v0, .L80247C0C
|
|
||||||
/* 1764D0 80247BF0 3C020800 */ lui $v0, 0x800
|
|
||||||
/* 1764D4 80247BF4 8E830004 */ lw $v1, 4($s4)
|
|
||||||
/* 1764D8 80247BF8 92840099 */ lbu $a0, 0x99($s4)
|
|
||||||
/* 1764DC 80247BFC 00621825 */ or $v1, $v1, $v0
|
|
||||||
/* 1764E0 80247C00 34840001 */ ori $a0, $a0, 1
|
|
||||||
/* 1764E4 80247C04 AE830004 */ sw $v1, 4($s4)
|
|
||||||
/* 1764E8 80247C08 A2840099 */ sb $a0, 0x99($s4)
|
|
||||||
.L80247C0C:
|
|
||||||
/* 1764EC 80247C0C 82220002 */ lb $v0, 2($s1)
|
|
||||||
/* 1764F0 80247C10 28420006 */ slti $v0, $v0, 6
|
|
||||||
/* 1764F4 80247C14 10400011 */ beqz $v0, .L80247C5C
|
|
||||||
/* 1764F8 80247C18 00000000 */ nop
|
|
||||||
/* 1764FC 80247C1C 0C03A752 */ jal is_ability_active
|
|
||||||
/* 176500 80247C20 2404001E */ addiu $a0, $zero, 0x1e
|
|
||||||
/* 176504 80247C24 1040000D */ beqz $v0, .L80247C5C
|
|
||||||
/* 176508 80247C28 00000000 */ nop
|
|
||||||
/* 17650C 80247C2C 92820099 */ lbu $v0, 0x99($s4)
|
|
||||||
/* 176510 80247C30 30420001 */ andi $v0, $v0, 1
|
|
||||||
/* 176514 80247C34 14400009 */ bnez $v0, .L80247C5C
|
|
||||||
/* 176518 80247C38 3C040800 */ lui $a0, 0x800
|
|
||||||
/* 17651C 80247C3C 3C05800E */ lui $a1, %hi(gBattleStatus)
|
|
||||||
/* 176520 80247C40 24A5C070 */ addiu $a1, $a1, %lo(gBattleStatus)
|
|
||||||
/* 176524 80247C44 8CA20004 */ lw $v0, 4($a1)
|
|
||||||
/* 176528 80247C48 92830099 */ lbu $v1, 0x99($s4)
|
|
||||||
/* 17652C 80247C4C 00441025 */ or $v0, $v0, $a0
|
|
||||||
/* 176530 80247C50 34630002 */ ori $v1, $v1, 2
|
|
||||||
/* 176534 80247C54 ACA20004 */ sw $v0, 4($a1)
|
|
||||||
/* 176538 80247C58 A2830099 */ sb $v1, 0x99($s4)
|
|
||||||
.L80247C5C:
|
|
||||||
/* 17653C 80247C5C 82630005 */ lb $v1, 5($s3)
|
|
||||||
/* 176540 80247C60 24020004 */ addiu $v0, $zero, 4
|
|
||||||
/* 176544 80247C64 10620013 */ beq $v1, $v0, .L80247CB4
|
|
||||||
/* 176548 80247C68 28620005 */ slti $v0, $v1, 5
|
|
||||||
/* 17654C 80247C6C 10400005 */ beqz $v0, .L80247C84
|
|
||||||
/* 176550 80247C70 24020002 */ addiu $v0, $zero, 2
|
|
||||||
/* 176554 80247C74 50620008 */ beql $v1, $v0, .L80247C98
|
|
||||||
/* 176558 80247C78 A2800178 */ sb $zero, 0x178($s4)
|
|
||||||
/* 17655C 80247C7C 08091F38 */ j .L80247CE0
|
|
||||||
/* 176560 80247C80 00000000 */ nop
|
|
||||||
.L80247C84:
|
|
||||||
/* 176564 80247C84 24020006 */ addiu $v0, $zero, 6
|
|
||||||
/* 176568 80247C88 1062010D */ beq $v1, $v0, .L802480C0
|
|
||||||
/* 17656C 80247C8C 24040003 */ addiu $a0, $zero, 3
|
|
||||||
/* 176570 80247C90 08091F38 */ j .L80247CE0
|
|
||||||
/* 176574 80247C94 00000000 */ nop
|
|
||||||
.L80247C98:
|
|
||||||
/* 176578 80247C98 92620006 */ lbu $v0, 6($s3)
|
|
||||||
/* 17657C 80247C9C 2403001D */ addiu $v1, $zero, 0x1d
|
|
||||||
/* 176580 80247CA0 A683017C */ sh $v1, 0x17c($s4)
|
|
||||||
/* 176584 80247CA4 3C038009 */ lui $v1, %hi(gMoveTable+0x248)
|
|
||||||
/* 176588 80247CA8 8C63F2A8 */ lw $v1, %lo(gMoveTable+0x248)($v1)
|
|
||||||
/* 17658C 80247CAC 08091F35 */ j .L80247CD4
|
|
||||||
/* 176590 80247CB0 00021600 */ sll $v0, $v0, 0x18
|
|
||||||
.L80247CB4:
|
|
||||||
/* 176594 80247CB4 24020001 */ addiu $v0, $zero, 1
|
|
||||||
/* 176598 80247CB8 A2820178 */ sb $v0, 0x178($s4)
|
|
||||||
/* 17659C 80247CBC 92620006 */ lbu $v0, 6($s3)
|
|
||||||
/* 1765A0 80247CC0 24030006 */ addiu $v1, $zero, 6
|
|
||||||
/* 1765A4 80247CC4 A683017C */ sh $v1, 0x17c($s4)
|
|
||||||
/* 1765A8 80247CC8 3C038009 */ lui $v1, %hi(gMoveTable+0x7C)
|
|
||||||
/* 1765AC 80247CCC 8C63F0DC */ lw $v1, %lo(gMoveTable+0x7C)($v1)
|
|
||||||
/* 1765B0 80247CD0 00021600 */ sll $v0, $v0, 0x18
|
|
||||||
.L80247CD4:
|
|
||||||
/* 1765B4 80247CD4 00021603 */ sra $v0, $v0, 0x18
|
|
||||||
/* 1765B8 80247CD8 A682017A */ sh $v0, 0x17a($s4)
|
|
||||||
/* 1765BC 80247CDC AE830184 */ sw $v1, 0x184($s4)
|
|
||||||
.L80247CE0:
|
|
||||||
/* 1765C0 80247CE0 0C09A75B */ jal get_actor
|
|
||||||
/* 1765C4 80247CE4 24040200 */ addiu $a0, $zero, 0x200
|
|
||||||
/* 1765C8 80247CE8 0040802D */ daddu $s0, $v0, $zero
|
|
||||||
/* 1765CC 80247CEC 8E0201C8 */ lw $v0, 0x1c8($s0)
|
|
||||||
/* 1765D0 80247CF0 1040000C */ beqz $v0, .L80247D24
|
|
||||||
/* 1765D4 80247CF4 2405000A */ addiu $a1, $zero, 0xa
|
|
||||||
/* 1765D8 80247CF8 24060020 */ addiu $a2, $zero, 0x20
|
|
||||||
/* 1765DC 80247CFC 0040202D */ daddu $a0, $v0, $zero
|
|
||||||
/* 1765E0 80247D00 24020038 */ addiu $v0, $zero, 0x38
|
|
||||||
/* 1765E4 80247D04 0C0B0CF8 */ jal start_script
|
|
||||||
/* 1765E8 80247D08 A20201F0 */ sb $v0, 0x1f0($s0)
|
|
||||||
/* 1765EC 80247D0C 0040202D */ daddu $a0, $v0, $zero
|
|
||||||
/* 1765F0 80247D10 AE0401D8 */ sw $a0, 0x1d8($s0)
|
|
||||||
/* 1765F4 80247D14 8C820144 */ lw $v0, 0x144($a0)
|
|
||||||
/* 1765F8 80247D18 86030192 */ lh $v1, 0x192($s0)
|
|
||||||
/* 1765FC 80247D1C AE0201E8 */ sw $v0, 0x1e8($s0)
|
|
||||||
/* 176600 80247D20 AC830148 */ sw $v1, 0x148($a0)
|
|
||||||
.L80247D24:
|
|
||||||
/* 176604 80247D24 24020001 */ addiu $v0, $zero, 1
|
|
||||||
/* 176608 80247D28 3C01800E */ lui $at, %hi(gBattleState2)
|
|
||||||
/* 17660C 80247D2C AC22C4DC */ sw $v0, %lo(gBattleState2)($at)
|
|
||||||
/* 176610 80247D30 08092032 */ j .L802480C8
|
|
||||||
/* 176614 80247D34 00000000 */ nop
|
|
||||||
.L80247D38:
|
|
||||||
/* 176618 80247D38 0C09A75B */ jal get_actor
|
|
||||||
/* 17661C 80247D3C 24040200 */ addiu $a0, $zero, 0x200
|
|
||||||
/* 176620 80247D40 0040802D */ daddu $s0, $v0, $zero
|
|
||||||
/* 176624 80247D44 8E0201C8 */ lw $v0, 0x1c8($s0)
|
|
||||||
/* 176628 80247D48 10400007 */ beqz $v0, .L80247D68
|
|
||||||
/* 17662C 80247D4C 02A0202D */ daddu $a0, $s5, $zero
|
|
||||||
/* 176630 80247D50 8E0401E8 */ lw $a0, 0x1e8($s0)
|
|
||||||
/* 176634 80247D54 0C0B1059 */ jal does_script_exist
|
|
||||||
/* 176638 80247D58 00000000 */ nop
|
|
||||||
/* 17663C 80247D5C 144000DA */ bnez $v0, .L802480C8
|
|
||||||
/* 176640 80247D60 02A0202D */ daddu $a0, $s5, $zero
|
|
||||||
/* 176644 80247D64 AE0001D8 */ sw $zero, 0x1d8($s0)
|
|
||||||
.L80247D68:
|
|
||||||
/* 176648 80247D68 0C098C8C */ jal func_80263230
|
|
||||||
/* 17664C 80247D6C 0200282D */ daddu $a1, $s0, $zero
|
|
||||||
/* 176650 80247D70 3C05FFF7 */ lui $a1, 0xfff7
|
|
||||||
/* 176654 80247D74 34A5FFFF */ ori $a1, $a1, 0xffff
|
|
||||||
/* 176658 80247D78 8E840000 */ lw $a0, ($s4)
|
|
||||||
/* 17665C 80247D7C 2402FFFD */ addiu $v0, $zero, -3
|
|
||||||
/* 176660 80247D80 00822024 */ and $a0, $a0, $v0
|
|
||||||
/* 176664 80247D84 8E820004 */ lw $v0, 4($s4)
|
|
||||||
/* 176668 80247D88 3C030100 */ lui $v1, 0x100
|
|
||||||
/* 17666C 80247D8C A280008C */ sb $zero, 0x8c($s4)
|
|
||||||
/* 176670 80247D90 A6800180 */ sh $zero, 0x180($s4)
|
|
||||||
/* 176674 80247D94 A280019A */ sb $zero, 0x19a($s4)
|
|
||||||
/* 176678 80247D98 AE840000 */ sw $a0, ($s4)
|
|
||||||
/* 17667C 80247D9C 00852024 */ and $a0, $a0, $a1
|
|
||||||
/* 176680 80247DA0 AE840000 */ sw $a0, ($s4)
|
|
||||||
/* 176684 80247DA4 00431025 */ or $v0, $v0, $v1
|
|
||||||
/* 176688 80247DA8 0C03A6D5 */ jal increment_status_menu_disabled
|
|
||||||
/* 17668C 80247DAC AE820004 */ sw $v0, 4($s4)
|
|
||||||
/* 176690 80247DB0 0C093903 */ jal btl_cam_use_preset
|
|
||||||
/* 176694 80247DB4 2404000A */ addiu $a0, $zero, 0xa
|
|
||||||
/* 176698 80247DB8 0C09390F */ jal btl_cam_target_actor
|
|
||||||
/* 17669C 80247DBC 0000202D */ daddu $a0, $zero, $zero
|
|
||||||
/* 1766A0 80247DC0 0C098F18 */ jal reset_actor_turn_info
|
|
||||||
/* 1766A4 80247DC4 00000000 */ nop
|
|
||||||
/* 1766A8 80247DC8 3C048028 */ lui $a0, %hi(PlayerScriptDispatcher)
|
|
||||||
/* 1766AC 80247DCC 24844EBC */ addiu $a0, $a0, %lo(PlayerScriptDispatcher)
|
|
||||||
/* 1766B0 80247DD0 2405000A */ addiu $a1, $zero, 0xa
|
|
||||||
/* 1766B4 80247DD4 0000302D */ daddu $a2, $zero, $zero
|
|
||||||
/* 1766B8 80247DD8 0C0B0CF8 */ jal start_script
|
|
||||||
/* 1766BC 80247DDC A29201A7 */ sb $s2, 0x1a7($s4)
|
|
||||||
/* 1766C0 80247DE0 0040202D */ daddu $a0, $v0, $zero
|
|
||||||
/* 1766C4 80247DE4 AEA401D4 */ sw $a0, 0x1d4($s5)
|
|
||||||
/* 1766C8 80247DE8 8C830144 */ lw $v1, 0x144($a0)
|
|
||||||
/* 1766CC 80247DEC 24020003 */ addiu $v0, $zero, 3
|
|
||||||
/* 1766D0 80247DF0 3C01802A */ lui $at, %hi(D_8029F248)
|
|
||||||
/* 1766D4 80247DF4 AC22F248 */ sw $v0, %lo(D_8029F248)($at)
|
|
||||||
/* 1766D8 80247DF8 24020002 */ addiu $v0, $zero, 2
|
|
||||||
/* 1766DC 80247DFC AEC20000 */ sw $v0, ($s6)
|
|
||||||
/* 1766E0 80247E00 AEA301E4 */ sw $v1, 0x1e4($s5)
|
|
||||||
/* 1766E4 80247E04 08092032 */ j .L802480C8
|
|
||||||
/* 1766E8 80247E08 AC800148 */ sw $zero, 0x148($a0)
|
|
||||||
.L80247E0C:
|
|
||||||
/* 1766EC 80247E0C 3C03802A */ lui $v1, %hi(D_8029F248)
|
|
||||||
/* 1766F0 80247E10 2463F248 */ addiu $v1, $v1, %lo(D_8029F248)
|
|
||||||
/* 1766F4 80247E14 8C620000 */ lw $v0, ($v1)
|
|
||||||
/* 1766F8 80247E18 10400003 */ beqz $v0, .L80247E28
|
|
||||||
/* 1766FC 80247E1C 2442FFFF */ addiu $v0, $v0, -1
|
|
||||||
/* 176700 80247E20 08091F8C */ j .L80247E30
|
|
||||||
/* 176704 80247E24 AC620000 */ sw $v0, ($v1)
|
|
||||||
.L80247E28:
|
|
||||||
/* 176708 80247E28 3C01802A */ lui $at, %hi(D_8029F254)
|
|
||||||
/* 17670C 80247E2C AC32F254 */ sw $s2, %lo(D_8029F254)($at)
|
|
||||||
.L80247E30:
|
|
||||||
/* 176710 80247E30 3C02800E */ lui $v0, %hi(gBattleStatus)
|
|
||||||
/* 176714 80247E34 8C42C070 */ lw $v0, %lo(gBattleStatus)($v0)
|
|
||||||
/* 176718 80247E38 3C030020 */ lui $v1, 0x20
|
|
||||||
/* 17671C 80247E3C 00431024 */ and $v0, $v0, $v1
|
|
||||||
/* 176720 80247E40 1440000A */ bnez $v0, .L80247E6C
|
|
||||||
/* 176724 80247E44 00000000 */ nop
|
|
||||||
/* 176728 80247E48 8EA201D4 */ lw $v0, 0x1d4($s5)
|
|
||||||
/* 17672C 80247E4C 50400007 */ beql $v0, $zero, .L80247E6C
|
|
||||||
/* 176730 80247E50 AEA001D4 */ sw $zero, 0x1d4($s5)
|
|
||||||
/* 176734 80247E54 8EA401E4 */ lw $a0, 0x1e4($s5)
|
|
||||||
/* 176738 80247E58 0C0B1059 */ jal does_script_exist
|
|
||||||
/* 17673C 80247E5C 00000000 */ nop
|
|
||||||
/* 176740 80247E60 14400099 */ bnez $v0, .L802480C8
|
|
||||||
/* 176744 80247E64 00000000 */ nop
|
|
||||||
/* 176748 80247E68 AEA001D4 */ sw $zero, 0x1d4($s5)
|
|
||||||
.L80247E6C:
|
|
||||||
/* 17674C 80247E6C 3C04800E */ lui $a0, %hi(gBattleStatus)
|
|
||||||
/* 176750 80247E70 2484C070 */ addiu $a0, $a0, %lo(gBattleStatus)
|
|
||||||
/* 176754 80247E74 8C820000 */ lw $v0, ($a0)
|
|
||||||
/* 176758 80247E78 2403FEFF */ addiu $v1, $zero, -0x101
|
|
||||||
/* 17675C 80247E7C 00431024 */ and $v0, $v0, $v1
|
|
||||||
/* 176760 80247E80 AC820000 */ sw $v0, ($a0)
|
|
||||||
/* 176764 80247E84 8EA201D8 */ lw $v0, 0x1d8($s5)
|
|
||||||
/* 176768 80247E88 10400005 */ beqz $v0, .L80247EA0
|
|
||||||
/* 17676C 80247E8C 00000000 */ nop
|
|
||||||
/* 176770 80247E90 0C0B1059 */ jal does_script_exist
|
|
||||||
/* 176774 80247E94 8EA401E8 */ lw $a0, 0x1e8($s5)
|
|
||||||
/* 176778 80247E98 1440008B */ bnez $v0, .L802480C8
|
|
||||||
/* 17677C 80247E9C 00000000 */ nop
|
|
||||||
.L80247EA0:
|
|
||||||
/* 176780 80247EA0 1200000A */ beqz $s0, .L80247ECC
|
|
||||||
/* 176784 80247EA4 AEA001D8 */ sw $zero, 0x1d8($s5)
|
|
||||||
/* 176788 80247EA8 8E0201D8 */ lw $v0, 0x1d8($s0)
|
|
||||||
/* 17678C 80247EAC 50400007 */ beql $v0, $zero, .L80247ECC
|
|
||||||
/* 176790 80247EB0 AE0001D8 */ sw $zero, 0x1d8($s0)
|
|
||||||
/* 176794 80247EB4 8E0401E8 */ lw $a0, 0x1e8($s0)
|
|
||||||
/* 176798 80247EB8 0C0B1059 */ jal does_script_exist
|
|
||||||
/* 17679C 80247EBC 00000000 */ nop
|
|
||||||
/* 1767A0 80247EC0 14400081 */ bnez $v0, .L802480C8
|
|
||||||
/* 1767A4 80247EC4 00000000 */ nop
|
|
||||||
/* 1767A8 80247EC8 AE0001D8 */ sw $zero, 0x1d8($s0)
|
|
||||||
.L80247ECC:
|
|
||||||
/* 1767AC 80247ECC 0000982D */ daddu $s3, $zero, $zero
|
|
||||||
/* 1767B0 80247ED0 0260882D */ daddu $s1, $s3, $zero
|
|
||||||
/* 1767B4 80247ED4 0280902D */ daddu $s2, $s4, $zero
|
|
||||||
.L80247ED8:
|
|
||||||
/* 1767B8 80247ED8 8E5000E0 */ lw $s0, 0xe0($s2)
|
|
||||||
/* 1767BC 80247EDC 5200000B */ beql $s0, $zero, .L80247F0C
|
|
||||||
/* 1767C0 80247EE0 26310001 */ addiu $s1, $s1, 1
|
|
||||||
/* 1767C4 80247EE4 8E0201D4 */ lw $v0, 0x1d4($s0)
|
|
||||||
/* 1767C8 80247EE8 50400008 */ beql $v0, $zero, .L80247F0C
|
|
||||||
/* 1767CC 80247EEC 26310001 */ addiu $s1, $s1, 1
|
|
||||||
/* 1767D0 80247EF0 8E0401E4 */ lw $a0, 0x1e4($s0)
|
|
||||||
/* 1767D4 80247EF4 0C0B1059 */ jal does_script_exist
|
|
||||||
/* 1767D8 80247EF8 00000000 */ nop
|
|
||||||
/* 1767DC 80247EFC 50400002 */ beql $v0, $zero, .L80247F08
|
|
||||||
/* 1767E0 80247F00 AE0001D4 */ sw $zero, 0x1d4($s0)
|
|
||||||
/* 1767E4 80247F04 24130001 */ addiu $s3, $zero, 1
|
|
||||||
.L80247F08:
|
|
||||||
/* 1767E8 80247F08 26310001 */ addiu $s1, $s1, 1
|
|
||||||
.L80247F0C:
|
|
||||||
/* 1767EC 80247F0C 2A220018 */ slti $v0, $s1, 0x18
|
|
||||||
/* 1767F0 80247F10 1440FFF1 */ bnez $v0, .L80247ED8
|
|
||||||
/* 1767F4 80247F14 26520004 */ addiu $s2, $s2, 4
|
|
||||||
/* 1767F8 80247F18 1660006B */ bnez $s3, .L802480C8
|
|
||||||
/* 1767FC 80247F1C 0000882D */ daddu $s1, $zero, $zero
|
|
||||||
/* 176800 80247F20 0280902D */ daddu $s2, $s4, $zero
|
|
||||||
.L80247F24:
|
|
||||||
/* 176804 80247F24 8E5000E0 */ lw $s0, 0xe0($s2)
|
|
||||||
/* 176808 80247F28 5200000B */ beql $s0, $zero, .L80247F58
|
|
||||||
/* 17680C 80247F2C 26310001 */ addiu $s1, $s1, 1
|
|
||||||
/* 176810 80247F30 8E0201D8 */ lw $v0, 0x1d8($s0)
|
|
||||||
/* 176814 80247F34 50400008 */ beql $v0, $zero, .L80247F58
|
|
||||||
/* 176818 80247F38 26310001 */ addiu $s1, $s1, 1
|
|
||||||
/* 17681C 80247F3C 8E0401E8 */ lw $a0, 0x1e8($s0)
|
|
||||||
/* 176820 80247F40 0C0B1059 */ jal does_script_exist
|
|
||||||
/* 176824 80247F44 00000000 */ nop
|
|
||||||
/* 176828 80247F48 50400002 */ beql $v0, $zero, .L80247F54
|
|
||||||
/* 17682C 80247F4C AE0001D8 */ sw $zero, 0x1d8($s0)
|
|
||||||
/* 176830 80247F50 24130001 */ addiu $s3, $zero, 1
|
|
||||||
.L80247F54:
|
|
||||||
/* 176834 80247F54 26310001 */ addiu $s1, $s1, 1
|
|
||||||
.L80247F58:
|
|
||||||
/* 176838 80247F58 2A220018 */ slti $v0, $s1, 0x18
|
|
||||||
/* 17683C 80247F5C 1440FFF1 */ bnez $v0, .L80247F24
|
|
||||||
/* 176840 80247F60 26520004 */ addiu $s2, $s2, 4
|
|
||||||
/* 176844 80247F64 16600058 */ bnez $s3, .L802480C8
|
|
||||||
/* 176848 80247F68 0000882D */ daddu $s1, $zero, $zero
|
|
||||||
/* 17684C 80247F6C 3C04FFF7 */ lui $a0, 0xfff7
|
|
||||||
/* 176850 80247F70 3484FFFF */ ori $a0, $a0, 0xffff
|
|
||||||
/* 176854 80247F74 0280182D */ daddu $v1, $s4, $zero
|
|
||||||
.L80247F78:
|
|
||||||
/* 176858 80247F78 8C7000E0 */ lw $s0, 0xe0($v1)
|
|
||||||
/* 17685C 80247F7C 12000004 */ beqz $s0, .L80247F90
|
|
||||||
/* 176860 80247F80 26310001 */ addiu $s1, $s1, 1
|
|
||||||
/* 176864 80247F84 8E020000 */ lw $v0, ($s0)
|
|
||||||
/* 176868 80247F88 00441024 */ and $v0, $v0, $a0
|
|
||||||
/* 17686C 80247F8C AE020000 */ sw $v0, ($s0)
|
|
||||||
.L80247F90:
|
|
||||||
/* 176870 80247F90 2A220018 */ slti $v0, $s1, 0x18
|
|
||||||
/* 176874 80247F94 1440FFF8 */ bnez $v0, .L80247F78
|
|
||||||
/* 176878 80247F98 24630004 */ addiu $v1, $v1, 4
|
|
||||||
/* 17687C 80247F9C 8282008C */ lb $v0, 0x8c($s4)
|
|
||||||
/* 176880 80247FA0 14400049 */ bnez $v0, .L802480C8
|
|
||||||
/* 176884 80247FA4 00000000 */ nop
|
|
||||||
/* 176888 80247FA8 0C03A6CC */ jal decrement_status_menu_disabled
|
|
||||||
/* 17688C 80247FAC 00000000 */ nop
|
|
||||||
/* 176890 80247FB0 3C028007 */ lui $v0, %hi(gGameStatusPtr)
|
|
||||||
/* 176894 80247FB4 8C42419C */ lw $v0, %lo(gGameStatusPtr)($v0)
|
|
||||||
/* 176898 80247FB8 904200AA */ lbu $v0, 0xaa($v0)
|
|
||||||
/* 17689C 80247FBC 30420001 */ andi $v0, $v0, 1
|
|
||||||
/* 1768A0 80247FC0 1440003F */ bnez $v0, .L802480C0
|
|
||||||
/* 1768A4 80247FC4 24040023 */ addiu $a0, $zero, 0x23
|
|
||||||
/* 1768A8 80247FC8 0C098D19 */ jal btl_check_player_defeated
|
|
||||||
/* 1768AC 80247FCC 00000000 */ nop
|
|
||||||
/* 1768B0 80247FD0 1440003D */ bnez $v0, .L802480C8
|
|
||||||
/* 1768B4 80247FD4 00000000 */ nop
|
|
||||||
/* 1768B8 80247FD8 0C098D0D */ jal btl_check_enemies_defeated
|
|
||||||
/* 1768BC 80247FDC 00000000 */ nop
|
|
||||||
/* 1768C0 80247FE0 14400039 */ bnez $v0, .L802480C8
|
|
||||||
/* 1768C4 80247FE4 00000000 */ nop
|
|
||||||
/* 1768C8 80247FE8 0C09A75B */ jal get_actor
|
|
||||||
/* 1768CC 80247FEC 86A40428 */ lh $a0, 0x428($s5)
|
|
||||||
/* 1768D0 80247FF0 0040802D */ daddu $s0, $v0, $zero
|
|
||||||
/* 1768D4 80247FF4 12000010 */ beqz $s0, .L80248038
|
|
||||||
/* 1768D8 80247FF8 24020003 */ addiu $v0, $zero, 3
|
|
||||||
/* 1768DC 80247FFC 8E0201C8 */ lw $v0, 0x1c8($s0)
|
|
||||||
/* 1768E0 80248000 1040000C */ beqz $v0, .L80248034
|
|
||||||
/* 1768E4 80248004 2405000A */ addiu $a1, $zero, 0xa
|
|
||||||
/* 1768E8 80248008 24060020 */ addiu $a2, $zero, 0x20
|
|
||||||
/* 1768EC 8024800C 0040202D */ daddu $a0, $v0, $zero
|
|
||||||
/* 1768F0 80248010 24020035 */ addiu $v0, $zero, 0x35
|
|
||||||
/* 1768F4 80248014 0C0B0CF8 */ jal start_script
|
|
||||||
/* 1768F8 80248018 A20201F0 */ sb $v0, 0x1f0($s0)
|
|
||||||
/* 1768FC 8024801C 0040202D */ daddu $a0, $v0, $zero
|
|
||||||
/* 176900 80248020 AE0401D8 */ sw $a0, 0x1d8($s0)
|
|
||||||
/* 176904 80248024 8C820144 */ lw $v0, 0x144($a0)
|
|
||||||
/* 176908 80248028 86030192 */ lh $v1, 0x192($s0)
|
|
||||||
/* 17690C 8024802C AE0201E8 */ sw $v0, 0x1e8($s0)
|
|
||||||
/* 176910 80248030 AC830148 */ sw $v1, 0x148($a0)
|
|
||||||
.L80248034:
|
|
||||||
/* 176914 80248034 24020003 */ addiu $v0, $zero, 3
|
|
||||||
.L80248038:
|
|
||||||
/* 176918 80248038 3C01800E */ lui $at, %hi(gBattleState2)
|
|
||||||
/* 17691C 8024803C AC22C4DC */ sw $v0, %lo(gBattleState2)($at)
|
|
||||||
/* 176920 80248040 08092032 */ j .L802480C8
|
|
||||||
/* 176924 80248044 00000000 */ nop
|
|
||||||
.L80248048:
|
|
||||||
/* 176928 80248048 0260882D */ daddu $s1, $s3, $zero
|
|
||||||
/* 17692C 8024804C 0280902D */ daddu $s2, $s4, $zero
|
|
||||||
.L80248050:
|
|
||||||
/* 176930 80248050 8E5000E0 */ lw $s0, 0xe0($s2)
|
|
||||||
/* 176934 80248054 5200000B */ beql $s0, $zero, .L80248084
|
|
||||||
/* 176938 80248058 26310001 */ addiu $s1, $s1, 1
|
|
||||||
/* 17693C 8024805C 8E0201D8 */ lw $v0, 0x1d8($s0)
|
|
||||||
/* 176940 80248060 50400008 */ beql $v0, $zero, .L80248084
|
|
||||||
/* 176944 80248064 26310001 */ addiu $s1, $s1, 1
|
|
||||||
/* 176948 80248068 8E0401E8 */ lw $a0, 0x1e8($s0)
|
|
||||||
/* 17694C 8024806C 0C0B1059 */ jal does_script_exist
|
|
||||||
/* 176950 80248070 00000000 */ nop
|
|
||||||
/* 176954 80248074 50400002 */ beql $v0, $zero, .L80248080
|
|
||||||
/* 176958 80248078 AE0001D8 */ sw $zero, 0x1d8($s0)
|
|
||||||
/* 17695C 8024807C 24130001 */ addiu $s3, $zero, 1
|
|
||||||
.L80248080:
|
|
||||||
/* 176960 80248080 26310001 */ addiu $s1, $s1, 1
|
|
||||||
.L80248084:
|
|
||||||
/* 176964 80248084 2A220018 */ slti $v0, $s1, 0x18
|
|
||||||
/* 176968 80248088 1440FFF1 */ bnez $v0, .L80248050
|
|
||||||
/* 17696C 8024808C 26520004 */ addiu $s2, $s2, 4
|
|
||||||
/* 176970 80248090 1660000D */ bnez $s3, .L802480C8
|
|
||||||
/* 176974 80248094 00000000 */ nop
|
|
||||||
/* 176978 80248098 8EA201D4 */ lw $v0, 0x1d4($s5)
|
|
||||||
/* 17697C 8024809C 50400007 */ beql $v0, $zero, .L802480BC
|
|
||||||
/* 176980 802480A0 AEA001D4 */ sw $zero, 0x1d4($s5)
|
|
||||||
/* 176984 802480A4 8EA401E4 */ lw $a0, 0x1e4($s5)
|
|
||||||
/* 176988 802480A8 0C0B1059 */ jal does_script_exist
|
|
||||||
/* 17698C 802480AC 00000000 */ nop
|
|
||||||
/* 176990 802480B0 14400005 */ bnez $v0, .L802480C8
|
|
||||||
/* 176994 802480B4 00000000 */ nop
|
|
||||||
/* 176998 802480B8 AEA001D4 */ sw $zero, 0x1d4($s5)
|
|
||||||
.L802480BC:
|
|
||||||
/* 17699C 802480BC 24040005 */ addiu $a0, $zero, 5
|
|
||||||
.L802480C0:
|
|
||||||
/* 1769A0 802480C0 0C090464 */ jal btl_set_state
|
|
||||||
/* 1769A4 802480C4 00000000 */ nop
|
|
||||||
.L802480C8:
|
|
||||||
/* 1769A8 802480C8 8FBF002C */ lw $ra, 0x2c($sp)
|
|
||||||
/* 1769AC 802480CC 8FB60028 */ lw $s6, 0x28($sp)
|
|
||||||
/* 1769B0 802480D0 8FB50024 */ lw $s5, 0x24($sp)
|
|
||||||
/* 1769B4 802480D4 8FB40020 */ lw $s4, 0x20($sp)
|
|
||||||
/* 1769B8 802480D8 8FB3001C */ lw $s3, 0x1c($sp)
|
|
||||||
/* 1769BC 802480DC 8FB20018 */ lw $s2, 0x18($sp)
|
|
||||||
/* 1769C0 802480E0 8FB10014 */ lw $s1, 0x14($sp)
|
|
||||||
/* 1769C4 802480E4 8FB00010 */ lw $s0, 0x10($sp)
|
|
||||||
/* 1769C8 802480E8 03E00008 */ jr $ra
|
|
||||||
/* 1769CC 802480EC 27BD0030 */ addiu $sp, $sp, 0x30
|
|
@ -1,79 +0,0 @@
|
|||||||
.set noat # allow manual use of $at
|
|
||||||
.set noreorder # don't insert nops after branches
|
|
||||||
|
|
||||||
glabel func_802DE780
|
|
||||||
/* 101870 802DE780 27BDFFB8 */ addiu $sp, $sp, -0x48
|
|
||||||
/* 101874 802DE784 AFB40030 */ sw $s4, 0x30($sp)
|
|
||||||
/* 101878 802DE788 00A0A02D */ daddu $s4, $a1, $zero
|
|
||||||
/* 10187C 802DE78C AFB50034 */ sw $s5, 0x34($sp)
|
|
||||||
/* 101880 802DE790 00041080 */ sll $v0, $a0, 2
|
|
||||||
/* 101884 802DE794 00441021 */ addu $v0, $v0, $a0
|
|
||||||
/* 101888 802DE798 00021080 */ sll $v0, $v0, 2
|
|
||||||
/* 10188C 802DE79C AFBF0044 */ sw $ra, 0x44($sp)
|
|
||||||
/* 101890 802DE7A0 AFBE0040 */ sw $fp, 0x40($sp)
|
|
||||||
/* 101894 802DE7A4 AFB7003C */ sw $s7, 0x3c($sp)
|
|
||||||
/* 101898 802DE7A8 AFB60038 */ sw $s6, 0x38($sp)
|
|
||||||
/* 10189C 802DE7AC AFB3002C */ sw $s3, 0x2c($sp)
|
|
||||||
/* 1018A0 802DE7B0 AFB20028 */ sw $s2, 0x28($sp)
|
|
||||||
/* 1018A4 802DE7B4 AFB10024 */ sw $s1, 0x24($sp)
|
|
||||||
/* 1018A8 802DE7B8 AFB00020 */ sw $s0, 0x20($sp)
|
|
||||||
/* 1018AC 802DE7BC AFA70054 */ sw $a3, 0x54($sp)
|
|
||||||
/* 1018B0 802DE7C0 3C01802E */ lui $at, %hi(D_802DFA48 + 0x4)
|
|
||||||
/* 1018B4 802DE7C4 00220821 */ addu $at, $at, $v0
|
|
||||||
/* 1018B8 802DE7C8 8C22FA4C */ lw $v0, %lo(D_802DFA48 + 0x4)($at)
|
|
||||||
/* 1018BC 802DE7CC 8FBE0064 */ lw $fp, 0x64($sp)
|
|
||||||
/* 1018C0 802DE7D0 10400024 */ beqz $v0, .L802DE864
|
|
||||||
/* 1018C4 802DE7D4 00C0A82D */ daddu $s5, $a2, $zero
|
|
||||||
/* 1018C8 802DE7D8 0040882D */ daddu $s1, $v0, $zero
|
|
||||||
/* 1018CC 802DE7DC 8E230000 */ lw $v1, ($s1)
|
|
||||||
/* 1018D0 802DE7E0 2402FFFF */ addiu $v0, $zero, -1
|
|
||||||
/* 1018D4 802DE7E4 1062001F */ beq $v1, $v0, .L802DE864
|
|
||||||
/* 1018D8 802DE7E8 0000902D */ daddu $s2, $zero, $zero
|
|
||||||
/* 1018DC 802DE7EC 0040982D */ daddu $s3, $v0, $zero
|
|
||||||
/* 1018E0 802DE7F0 3C171000 */ lui $s7, 0x1000
|
|
||||||
/* 1018E4 802DE7F4 3C160FFF */ lui $s6, 0xfff
|
|
||||||
/* 1018E8 802DE7F8 36D6FFFF */ ori $s6, $s6, 0xffff
|
|
||||||
.L802DE7FC:
|
|
||||||
/* 1018EC 802DE7FC 12930003 */ beq $s4, $s3, .L802DE80C
|
|
||||||
/* 1018F0 802DE800 8E300000 */ lw $s0, ($s1)
|
|
||||||
/* 1018F4 802DE804 56540014 */ bnel $s2, $s4, .L802DE858
|
|
||||||
/* 1018F8 802DE808 26310004 */ addiu $s1, $s1, 4
|
|
||||||
.L802DE80C:
|
|
||||||
/* 1018FC 802DE80C 8FA8005C */ lw $t0, 0x5c($sp)
|
|
||||||
/* 101900 802DE810 9204004F */ lbu $a0, 0x4f($s0)
|
|
||||||
/* 101904 802DE814 8FA60054 */ lw $a2, 0x54($sp)
|
|
||||||
/* 101908 802DE818 8FA70058 */ lw $a3, 0x58($sp)
|
|
||||||
/* 10190C 802DE81C AFA80010 */ sw $t0, 0x10($sp)
|
|
||||||
/* 101910 802DE820 8FA80060 */ lw $t0, 0x60($sp)
|
|
||||||
/* 101914 802DE824 02A0282D */ daddu $a1, $s5, $zero
|
|
||||||
/* 101918 802DE828 AFBE0018 */ sw $fp, 0x18($sp)
|
|
||||||
/* 10191C 802DE82C 0C04EAA7 */ jal fold_update
|
|
||||||
/* 101920 802DE830 AFA80014 */ sw $t0, 0x14($sp)
|
|
||||||
/* 101924 802DE834 12A00004 */ beqz $s5, .L802DE848
|
|
||||||
/* 101928 802DE838 00000000 */ nop
|
|
||||||
/* 10192C 802DE83C 8E02004C */ lw $v0, 0x4c($s0)
|
|
||||||
/* 101930 802DE840 080B7A14 */ j .L802DE850
|
|
||||||
/* 101934 802DE844 00571025 */ or $v0, $v0, $s7
|
|
||||||
.L802DE848:
|
|
||||||
/* 101938 802DE848 8E02004C */ lw $v0, 0x4c($s0)
|
|
||||||
/* 10193C 802DE84C 00561024 */ and $v0, $v0, $s6
|
|
||||||
.L802DE850:
|
|
||||||
/* 101940 802DE850 AE02004C */ sw $v0, 0x4c($s0)
|
|
||||||
/* 101944 802DE854 26310004 */ addiu $s1, $s1, 4
|
|
||||||
.L802DE858:
|
|
||||||
/* 101948 802DE858 8E220000 */ lw $v0, ($s1)
|
|
||||||
/* 10194C 802DE85C 1453FFE7 */ bne $v0, $s3, .L802DE7FC
|
|
||||||
/* 101950 802DE860 26520001 */ addiu $s2, $s2, 1
|
|
||||||
.L802DE864:
|
|
||||||
/* 101954 802DE864 8FBF0044 */ lw $ra, 0x44($sp)
|
|
||||||
/* 101958 802DE868 8FBE0040 */ lw $fp, 0x40($sp)
|
|
||||||
/* 10195C 802DE86C 8FB7003C */ lw $s7, 0x3c($sp)
|
|
||||||
/* 101960 802DE870 8FB60038 */ lw $s6, 0x38($sp)
|
|
||||||
/* 101964 802DE874 8FB50034 */ lw $s5, 0x34($sp)
|
|
||||||
/* 101968 802DE878 8FB40030 */ lw $s4, 0x30($sp)
|
|
||||||
/* 10196C 802DE87C 8FB3002C */ lw $s3, 0x2c($sp)
|
|
||||||
/* 101970 802DE880 8FB20028 */ lw $s2, 0x28($sp)
|
|
||||||
/* 101974 802DE884 8FB10024 */ lw $s1, 0x24($sp)
|
|
||||||
/* 101978 802DE888 8FB00020 */ lw $s0, 0x20($sp)
|
|
||||||
/* 10197C 802DE88C 03E00008 */ jr $ra
|
|
||||||
/* 101980 802DE890 27BD0048 */ addiu $sp, $sp, 0x48
|
|
@ -1,30 +0,0 @@
|
|||||||
.set noat # allow manual use of $at
|
|
||||||
.set noreorder # don't insert nops after branches
|
|
||||||
|
|
||||||
glabel func_80240CB4_AF8604
|
|
||||||
/* AF8604 80240CB4 27BDFFE8 */ addiu $sp, $sp, -0x18
|
|
||||||
/* AF8608 80240CB8 10A00003 */ beqz $a1, .L80240CC8
|
|
||||||
/* AF860C 80240CBC AFBF0010 */ sw $ra, 0x10($sp)
|
|
||||||
/* AF8610 80240CC0 240200FF */ addiu $v0, $zero, 0xff
|
|
||||||
/* AF8614 80240CC4 AC820074 */ sw $v0, 0x74($a0)
|
|
||||||
.L80240CC8:
|
|
||||||
/* AF8618 80240CC8 8C820074 */ lw $v0, 0x74($a0)
|
|
||||||
/* AF861C 80240CCC 2442FFF0 */ addiu $v0, $v0, -0x10
|
|
||||||
/* AF8620 80240CD0 18400009 */ blez $v0, .L80240CF8
|
|
||||||
/* AF8624 80240CD4 AC820074 */ sw $v0, 0x74($a0)
|
|
||||||
/* AF8628 80240CD8 44820000 */ mtc1 $v0, $f0
|
|
||||||
/* AF862C 80240CDC 00000000 */ nop
|
|
||||||
/* AF8630 80240CE0 46800020 */ cvt.s.w $f0, $f0
|
|
||||||
/* AF8634 80240CE4 44050000 */ mfc1 $a1, $f0
|
|
||||||
/* AF8638 80240CE8 0C04DF62 */ jal set_screen_overlay_params_front
|
|
||||||
/* AF863C 80240CEC 0000202D */ daddu $a0, $zero, $zero
|
|
||||||
/* AF8640 80240CF0 08090340 */ j .L80240D00
|
|
||||||
/* AF8644 80240CF4 0000102D */ daddu $v0, $zero, $zero
|
|
||||||
.L80240CF8:
|
|
||||||
/* AF8648 80240CF8 AC800074 */ sw $zero, 0x74($a0)
|
|
||||||
/* AF864C 80240CFC 24020002 */ addiu $v0, $zero, 2
|
|
||||||
.L80240D00:
|
|
||||||
/* AF8650 80240D00 8FBF0010 */ lw $ra, 0x10($sp)
|
|
||||||
/* AF8654 80240D04 03E00008 */ jr $ra
|
|
||||||
/* AF8658 80240D08 27BD0018 */ addiu $sp, $sp, 0x18
|
|
||||||
/* AF865C 80240D0C 00000000 */ nop
|
|
@ -1,251 +0,0 @@
|
|||||||
.set noat # allow manual use of $at
|
|
||||||
.set noreorder # don't insert nops after branches
|
|
||||||
|
|
||||||
glabel func_80240310_B06D10
|
|
||||||
/* B06D10 80240310 27BDFF10 */ addiu $sp, $sp, -0xf0
|
|
||||||
/* B06D14 80240314 0000202D */ daddu $a0, $zero, $zero
|
|
||||||
/* B06D18 80240318 3C05FD05 */ lui $a1, 0xfd05
|
|
||||||
/* B06D1C 8024031C AFBF00DC */ sw $ra, 0xdc($sp)
|
|
||||||
/* B06D20 80240320 AFB600D8 */ sw $s6, 0xd8($sp)
|
|
||||||
/* B06D24 80240324 AFB500D4 */ sw $s5, 0xd4($sp)
|
|
||||||
/* B06D28 80240328 AFB400D0 */ sw $s4, 0xd0($sp)
|
|
||||||
/* B06D2C 8024032C AFB300CC */ sw $s3, 0xcc($sp)
|
|
||||||
/* B06D30 80240330 AFB200C8 */ sw $s2, 0xc8($sp)
|
|
||||||
/* B06D34 80240334 AFB100C4 */ sw $s1, 0xc4($sp)
|
|
||||||
/* B06D38 80240338 AFB000C0 */ sw $s0, 0xc0($sp)
|
|
||||||
/* B06D3C 8024033C F7B600E8 */ sdc1 $f22, 0xe8($sp)
|
|
||||||
/* B06D40 80240340 F7B400E0 */ sdc1 $f20, 0xe0($sp)
|
|
||||||
/* B06D44 80240344 0C0B1EAF */ jal evt_get_variable
|
|
||||||
/* B06D48 80240348 34A50F8A */ ori $a1, $a1, 0xf8a
|
|
||||||
/* B06D4C 8024034C 3C07E300 */ lui $a3, 0xe300
|
|
||||||
/* B06D50 80240350 34E70A01 */ ori $a3, $a3, 0xa01
|
|
||||||
/* B06D54 80240354 3C08D9C0 */ lui $t0, 0xd9c0
|
|
||||||
/* B06D58 80240358 3508F9FB */ ori $t0, $t0, 0xf9fb
|
|
||||||
/* B06D5C 8024035C 3C0AD9FF */ lui $t2, 0xd9ff
|
|
||||||
/* B06D60 80240360 354AFFFF */ ori $t2, $t2, 0xffff
|
|
||||||
/* B06D64 80240364 3C090020 */ lui $t1, 0x20
|
|
||||||
/* B06D68 80240368 35290005 */ ori $t1, $t1, 5
|
|
||||||
/* B06D6C 8024036C 3C0BD700 */ lui $t3, 0xd700
|
|
||||||
/* B06D70 80240370 356B0002 */ ori $t3, $t3, 2
|
|
||||||
/* B06D74 80240374 3C0CE300 */ lui $t4, 0xe300
|
|
||||||
/* B06D78 80240378 358C0F00 */ ori $t4, $t4, 0xf00
|
|
||||||
/* B06D7C 8024037C 3C0DE300 */ lui $t5, 0xe300
|
|
||||||
/* B06D80 80240380 35AD0C00 */ ori $t5, $t5, 0xc00
|
|
||||||
/* B06D84 80240384 3C0EE300 */ lui $t6, 0xe300
|
|
||||||
/* B06D88 80240388 35CE1201 */ ori $t6, $t6, 0x1201
|
|
||||||
/* B06D8C 8024038C 3C0FE300 */ lui $t7, 0xe300
|
|
||||||
/* B06D90 80240390 35EF1801 */ ori $t7, $t7, 0x1801
|
|
||||||
/* B06D94 80240394 3C10E300 */ lui $s0, 0xe300
|
|
||||||
/* B06D98 80240398 36100D01 */ ori $s0, $s0, 0xd01
|
|
||||||
/* B06D9C 8024039C 3C12E300 */ lui $s2, 0xe300
|
|
||||||
/* B06DA0 802403A0 36521402 */ ori $s2, $s2, 0x1402
|
|
||||||
/* B06DA4 802403A4 3C14E300 */ lui $s4, 0xe300
|
|
||||||
/* B06DA8 802403A8 36941700 */ ori $s4, $s4, 0x1700
|
|
||||||
/* B06DAC 802403AC 3C15E200 */ lui $s5, 0xe200
|
|
||||||
/* B06DB0 802403B0 36B51E01 */ ori $s5, $s5, 0x1e01
|
|
||||||
/* B06DB4 802403B4 27B30040 */ addiu $s3, $sp, 0x40
|
|
||||||
/* B06DB8 802403B8 0260202D */ daddu $a0, $s3, $zero
|
|
||||||
/* B06DBC 802403BC 3C160001 */ lui $s6, 1
|
|
||||||
/* B06DC0 802403C0 3C11800A */ lui $s1, %hi(gMasterGfxPos)
|
|
||||||
/* B06DC4 802403C4 2631A66C */ addiu $s1, $s1, %lo(gMasterGfxPos)
|
|
||||||
/* B06DC8 802403C8 36D61630 */ ori $s6, $s6, 0x1630
|
|
||||||
/* B06DCC 802403CC 3C05E700 */ lui $a1, 0xe700
|
|
||||||
/* B06DD0 802403D0 8E230000 */ lw $v1, ($s1)
|
|
||||||
/* B06DD4 802403D4 4480A000 */ mtc1 $zero, $f20
|
|
||||||
/* B06DD8 802403D8 0060302D */ daddu $a2, $v1, $zero
|
|
||||||
/* B06DDC 802403DC 24630008 */ addiu $v1, $v1, 8
|
|
||||||
/* B06DE0 802403E0 AE230000 */ sw $v1, ($s1)
|
|
||||||
/* B06DE4 802403E4 ACC50000 */ sw $a1, ($a2)
|
|
||||||
/* B06DE8 802403E8 24650008 */ addiu $a1, $v1, 8
|
|
||||||
/* B06DEC 802403EC ACC00004 */ sw $zero, 4($a2)
|
|
||||||
/* B06DF0 802403F0 AE250000 */ sw $a1, ($s1)
|
|
||||||
/* B06DF4 802403F4 24650010 */ addiu $a1, $v1, 0x10
|
|
||||||
/* B06DF8 802403F8 AC670000 */ sw $a3, ($v1)
|
|
||||||
/* B06DFC 802403FC AC600004 */ sw $zero, 4($v1)
|
|
||||||
/* B06E00 80240400 AE250000 */ sw $a1, ($s1)
|
|
||||||
/* B06E04 80240404 24650018 */ addiu $a1, $v1, 0x18
|
|
||||||
/* B06E08 80240408 AC680008 */ sw $t0, 8($v1)
|
|
||||||
/* B06E0C 8024040C AC60000C */ sw $zero, 0xc($v1)
|
|
||||||
/* B06E10 80240410 AE250000 */ sw $a1, ($s1)
|
|
||||||
/* B06E14 80240414 24650020 */ addiu $a1, $v1, 0x20
|
|
||||||
/* B06E18 80240418 AC6A0010 */ sw $t2, 0x10($v1)
|
|
||||||
/* B06E1C 8024041C AC690014 */ sw $t1, 0x14($v1)
|
|
||||||
/* B06E20 80240420 AE250000 */ sw $a1, ($s1)
|
|
||||||
/* B06E24 80240424 2405FFFF */ addiu $a1, $zero, -1
|
|
||||||
/* B06E28 80240428 AC65001C */ sw $a1, 0x1c($v1)
|
|
||||||
/* B06E2C 8024042C 24650028 */ addiu $a1, $v1, 0x28
|
|
||||||
/* B06E30 80240430 AC6B0018 */ sw $t3, 0x18($v1)
|
|
||||||
/* B06E34 80240434 AE250000 */ sw $a1, ($s1)
|
|
||||||
/* B06E38 80240438 24650030 */ addiu $a1, $v1, 0x30
|
|
||||||
/* B06E3C 8024043C AC6C0020 */ sw $t4, 0x20($v1)
|
|
||||||
/* B06E40 80240440 AC600024 */ sw $zero, 0x24($v1)
|
|
||||||
/* B06E44 80240444 AE250000 */ sw $a1, ($s1)
|
|
||||||
/* B06E48 80240448 3C050008 */ lui $a1, 8
|
|
||||||
/* B06E4C 8024044C AC65002C */ sw $a1, 0x2c($v1)
|
|
||||||
/* B06E50 80240450 24650038 */ addiu $a1, $v1, 0x38
|
|
||||||
/* B06E54 80240454 AC6D0028 */ sw $t5, 0x28($v1)
|
|
||||||
/* B06E58 80240458 AE250000 */ sw $a1, ($s1)
|
|
||||||
/* B06E5C 8024045C 24052000 */ addiu $a1, $zero, 0x2000
|
|
||||||
/* B06E60 80240460 AC650034 */ sw $a1, 0x34($v1)
|
|
||||||
/* B06E64 80240464 24650040 */ addiu $a1, $v1, 0x40
|
|
||||||
/* B06E68 80240468 AC6E0030 */ sw $t6, 0x30($v1)
|
|
||||||
/* B06E6C 8024046C AE250000 */ sw $a1, ($s1)
|
|
||||||
/* B06E70 80240470 240500C0 */ addiu $a1, $zero, 0xc0
|
|
||||||
/* B06E74 80240474 AC65003C */ sw $a1, 0x3c($v1)
|
|
||||||
/* B06E78 80240478 24650048 */ addiu $a1, $v1, 0x48
|
|
||||||
/* B06E7C 8024047C AC6F0038 */ sw $t7, 0x38($v1)
|
|
||||||
/* B06E80 80240480 AE250000 */ sw $a1, ($s1)
|
|
||||||
/* B06E84 80240484 24650050 */ addiu $a1, $v1, 0x50
|
|
||||||
/* B06E88 80240488 AC700040 */ sw $s0, 0x40($v1)
|
|
||||||
/* B06E8C 8024048C AC600044 */ sw $zero, 0x44($v1)
|
|
||||||
/* B06E90 80240490 AE250000 */ sw $a1, ($s1)
|
|
||||||
/* B06E94 80240494 24050C00 */ addiu $a1, $zero, 0xc00
|
|
||||||
/* B06E98 80240498 AC720048 */ sw $s2, 0x48($v1)
|
|
||||||
/* B06E9C 8024049C 0040902D */ daddu $s2, $v0, $zero
|
|
||||||
/* B06EA0 802404A0 24620058 */ addiu $v0, $v1, 0x58
|
|
||||||
/* B06EA4 802404A4 AC65004C */ sw $a1, 0x4c($v1)
|
|
||||||
/* B06EA8 802404A8 AC740050 */ sw $s4, 0x50($v1)
|
|
||||||
/* B06EAC 802404AC AC600054 */ sw $zero, 0x54($v1)
|
|
||||||
/* B06EB0 802404B0 AC750058 */ sw $s5, 0x58($v1)
|
|
||||||
/* B06EB4 802404B4 AC60005C */ sw $zero, 0x5c($v1)
|
|
||||||
/* B06EB8 802404B8 8E450010 */ lw $a1, 0x10($s2)
|
|
||||||
/* B06EBC 802404BC 8E460014 */ lw $a2, 0x14($s2)
|
|
||||||
/* B06EC0 802404C0 8E470018 */ lw $a3, 0x18($s2)
|
|
||||||
/* B06EC4 802404C4 24630060 */ addiu $v1, $v1, 0x60
|
|
||||||
/* B06EC8 802404C8 AE220000 */ sw $v0, ($s1)
|
|
||||||
/* B06ECC 802404CC 0C019E40 */ jal guTranslateF
|
|
||||||
/* B06ED0 802404D0 AE230000 */ sw $v1, ($s1)
|
|
||||||
/* B06ED4 802404D4 27B00080 */ addiu $s0, $sp, 0x80
|
|
||||||
/* B06ED8 802404D8 E7B40010 */ swc1 $f20, 0x10($sp)
|
|
||||||
/* B06EDC 802404DC 8E450020 */ lw $a1, 0x20($s2)
|
|
||||||
/* B06EE0 802404E0 3C013F80 */ lui $at, 0x3f80
|
|
||||||
/* B06EE4 802404E4 4481B000 */ mtc1 $at, $f22
|
|
||||||
/* B06EE8 802404E8 4406A000 */ mfc1 $a2, $f20
|
|
||||||
/* B06EEC 802404EC 4407B000 */ mfc1 $a3, $f22
|
|
||||||
/* B06EF0 802404F0 0C019EC8 */ jal guRotateF
|
|
||||||
/* B06EF4 802404F4 0200202D */ daddu $a0, $s0, $zero
|
|
||||||
/* B06EF8 802404F8 0200202D */ daddu $a0, $s0, $zero
|
|
||||||
/* B06EFC 802404FC 0260282D */ daddu $a1, $s3, $zero
|
|
||||||
/* B06F00 80240500 0C019D80 */ jal guMtxCatF
|
|
||||||
/* B06F04 80240504 0260302D */ daddu $a2, $s3, $zero
|
|
||||||
/* B06F08 80240508 E7B60010 */ swc1 $f22, 0x10($sp)
|
|
||||||
/* B06F0C 8024050C 8E450024 */ lw $a1, 0x24($s2)
|
|
||||||
/* B06F10 80240510 4406A000 */ mfc1 $a2, $f20
|
|
||||||
/* B06F14 80240514 4407A000 */ mfc1 $a3, $f20
|
|
||||||
/* B06F18 80240518 0C019EC8 */ jal guRotateF
|
|
||||||
/* B06F1C 8024051C 0200202D */ daddu $a0, $s0, $zero
|
|
||||||
/* B06F20 80240520 0200202D */ daddu $a0, $s0, $zero
|
|
||||||
/* B06F24 80240524 0260282D */ daddu $a1, $s3, $zero
|
|
||||||
/* B06F28 80240528 0C019D80 */ jal guMtxCatF
|
|
||||||
/* B06F2C 8024052C 0260302D */ daddu $a2, $s3, $zero
|
|
||||||
/* B06F30 80240530 E7B40010 */ swc1 $f20, 0x10($sp)
|
|
||||||
/* B06F34 80240534 8E45001C */ lw $a1, 0x1c($s2)
|
|
||||||
/* B06F38 80240538 4406B000 */ mfc1 $a2, $f22
|
|
||||||
/* B06F3C 8024053C 4407A000 */ mfc1 $a3, $f20
|
|
||||||
/* B06F40 80240540 0C019EC8 */ jal guRotateF
|
|
||||||
/* B06F44 80240544 0200202D */ daddu $a0, $s0, $zero
|
|
||||||
/* B06F48 80240548 0200202D */ daddu $a0, $s0, $zero
|
|
||||||
/* B06F4C 8024054C 0260282D */ daddu $a1, $s3, $zero
|
|
||||||
/* B06F50 80240550 0C019D80 */ jal guMtxCatF
|
|
||||||
/* B06F54 80240554 0260302D */ daddu $a2, $s3, $zero
|
|
||||||
/* B06F58 80240558 8E450028 */ lw $a1, 0x28($s2)
|
|
||||||
/* B06F5C 8024055C 8E46002C */ lw $a2, 0x2c($s2)
|
|
||||||
/* B06F60 80240560 8E470030 */ lw $a3, 0x30($s2)
|
|
||||||
/* B06F64 80240564 0C019DF0 */ jal guScaleF
|
|
||||||
/* B06F68 80240568 0200202D */ daddu $a0, $s0, $zero
|
|
||||||
/* B06F6C 8024056C 0200202D */ daddu $a0, $s0, $zero
|
|
||||||
/* B06F70 80240570 0260282D */ daddu $a1, $s3, $zero
|
|
||||||
/* B06F74 80240574 0C019D80 */ jal guMtxCatF
|
|
||||||
/* B06F78 80240578 0260302D */ daddu $a2, $s3, $zero
|
|
||||||
/* B06F7C 8024057C 0260202D */ daddu $a0, $s3, $zero
|
|
||||||
/* B06F80 80240580 3C108007 */ lui $s0, %hi(gMatrixListPos)
|
|
||||||
/* B06F84 80240584 261041F0 */ addiu $s0, $s0, %lo(gMatrixListPos)
|
|
||||||
/* B06F88 80240588 3C14800A */ lui $s4, %hi(gDisplayContext)
|
|
||||||
/* B06F8C 8024058C 2694A674 */ addiu $s4, $s4, %lo(gDisplayContext)
|
|
||||||
/* B06F90 80240590 96050000 */ lhu $a1, ($s0)
|
|
||||||
/* B06F94 80240594 8E820000 */ lw $v0, ($s4)
|
|
||||||
/* B06F98 80240598 00052980 */ sll $a1, $a1, 6
|
|
||||||
/* B06F9C 8024059C 00B62821 */ addu $a1, $a1, $s6
|
|
||||||
/* B06FA0 802405A0 0C019D40 */ jal guMtxF2L
|
|
||||||
/* B06FA4 802405A4 00452821 */ addu $a1, $v0, $a1
|
|
||||||
/* B06FA8 802405A8 3C02DA38 */ lui $v0, 0xda38
|
|
||||||
/* B06FAC 802405AC 34420002 */ ori $v0, $v0, 2
|
|
||||||
/* B06FB0 802405B0 27A40030 */ addiu $a0, $sp, 0x30
|
|
||||||
/* B06FB4 802405B4 8E270000 */ lw $a3, ($s1)
|
|
||||||
/* B06FB8 802405B8 96080000 */ lhu $t0, ($s0)
|
|
||||||
/* B06FBC 802405BC 00E0282D */ daddu $a1, $a3, $zero
|
|
||||||
/* B06FC0 802405C0 ACA20000 */ sw $v0, ($a1)
|
|
||||||
/* B06FC4 802405C4 3102FFFF */ andi $v0, $t0, 0xffff
|
|
||||||
/* B06FC8 802405C8 00021180 */ sll $v0, $v0, 6
|
|
||||||
/* B06FCC 802405CC 00561021 */ addu $v0, $v0, $s6
|
|
||||||
/* B06FD0 802405D0 8E830000 */ lw $v1, ($s4)
|
|
||||||
/* B06FD4 802405D4 24E70008 */ addiu $a3, $a3, 8
|
|
||||||
/* B06FD8 802405D8 00621821 */ addu $v1, $v1, $v0
|
|
||||||
/* B06FDC 802405DC 3C028000 */ lui $v0, 0x8000
|
|
||||||
/* B06FE0 802405E0 00621821 */ addu $v1, $v1, $v0
|
|
||||||
/* B06FE4 802405E4 ACA30004 */ sw $v1, 4($a1)
|
|
||||||
/* B06FE8 802405E8 8E450008 */ lw $a1, 8($s2)
|
|
||||||
/* B06FEC 802405EC 8E46000C */ lw $a2, 0xc($s2)
|
|
||||||
/* B06FF0 802405F0 25080001 */ addiu $t0, $t0, 1
|
|
||||||
/* B06FF4 802405F4 AE270000 */ sw $a3, ($s1)
|
|
||||||
/* B06FF8 802405F8 0C0B7811 */ jal spr_get_player_raster_info
|
|
||||||
/* B06FFC 802405FC A6080000 */ sh $t0, ($s0)
|
|
||||||
/* B07000 80240600 8FA30030 */ lw $v1, 0x30($sp)
|
|
||||||
/* B07004 80240604 8FA40034 */ lw $a0, 0x34($sp)
|
|
||||||
/* B07008 80240608 97A2003A */ lhu $v0, 0x3a($sp)
|
|
||||||
/* B0700C 8024060C 3C013F00 */ lui $at, 0x3f00
|
|
||||||
/* B07010 80240610 44811000 */ mtc1 $at, $f2
|
|
||||||
/* B07014 80240614 27A50018 */ addiu $a1, $sp, 0x18
|
|
||||||
/* B07018 80240618 A7A20020 */ sh $v0, 0x20($sp)
|
|
||||||
/* B0701C 8024061C 3042FFFF */ andi $v0, $v0, 0xffff
|
|
||||||
/* B07020 80240620 44820000 */ mtc1 $v0, $f0
|
|
||||||
/* B07024 80240624 00000000 */ nop
|
|
||||||
/* B07028 80240628 46800020 */ cvt.s.w $f0, $f0
|
|
||||||
/* B0702C 8024062C AFA30018 */ sw $v1, 0x18($sp)
|
|
||||||
/* B07030 80240630 AFA4001C */ sw $a0, 0x1c($sp)
|
|
||||||
/* B07034 80240634 E6400034 */ swc1 $f0, 0x34($s2)
|
|
||||||
/* B07038 80240638 97A2003E */ lhu $v0, 0x3e($sp)
|
|
||||||
/* B0703C 8024063C 0000302D */ daddu $a2, $zero, $zero
|
|
||||||
/* B07040 80240640 A7A20022 */ sh $v0, 0x22($sp)
|
|
||||||
/* B07044 80240644 3042FFFF */ andi $v0, $v0, 0xffff
|
|
||||||
/* B07048 80240648 44820000 */ mtc1 $v0, $f0
|
|
||||||
/* B0704C 8024064C 00000000 */ nop
|
|
||||||
/* B07050 80240650 46800020 */ cvt.s.w $f0, $f0
|
|
||||||
/* B07054 80240654 E6400038 */ swc1 $f0, 0x38($s2)
|
|
||||||
/* B07058 80240658 C7A00038 */ lwc1 $f0, 0x38($sp)
|
|
||||||
/* B0705C 8024065C 46800020 */ cvt.s.w $f0, $f0
|
|
||||||
/* B07060 80240660 46020002 */ mul.s $f0, $f0, $f2
|
|
||||||
/* B07064 80240664 00000000 */ nop
|
|
||||||
/* B07068 80240668 97A3003E */ lhu $v1, 0x3e($sp)
|
|
||||||
/* B0706C 8024066C 240200FF */ addiu $v0, $zero, 0xff
|
|
||||||
/* B07070 80240670 A3A20028 */ sb $v0, 0x28($sp)
|
|
||||||
/* B07074 80240674 A7A30026 */ sh $v1, 0x26($sp)
|
|
||||||
/* B07078 80240678 4600010D */ trunc.w.s $f4, $f0
|
|
||||||
/* B0707C 8024067C 44022000 */ mfc1 $v0, $f4
|
|
||||||
/* B07080 80240680 00000000 */ nop
|
|
||||||
/* B07084 80240684 00021023 */ negu $v0, $v0
|
|
||||||
/* B07088 80240688 A7A20024 */ sh $v0, 0x24($sp)
|
|
||||||
/* B0708C 8024068C 8E440000 */ lw $a0, ($s2)
|
|
||||||
/* B07090 80240690 0C04EBDC */ jal fold_appendGfx_component
|
|
||||||
/* B07094 80240694 0260382D */ daddu $a3, $s3, $zero
|
|
||||||
/* B07098 80240698 3C04D838 */ lui $a0, 0xd838
|
|
||||||
/* B0709C 8024069C 8E220000 */ lw $v0, ($s1)
|
|
||||||
/* B070A0 802406A0 34840002 */ ori $a0, $a0, 2
|
|
||||||
/* B070A4 802406A4 0040182D */ daddu $v1, $v0, $zero
|
|
||||||
/* B070A8 802406A8 24420008 */ addiu $v0, $v0, 8
|
|
||||||
/* B070AC 802406AC AE220000 */ sw $v0, ($s1)
|
|
||||||
/* B070B0 802406B0 24020040 */ addiu $v0, $zero, 0x40
|
|
||||||
/* B070B4 802406B4 AC640000 */ sw $a0, ($v1)
|
|
||||||
/* B070B8 802406B8 AC620004 */ sw $v0, 4($v1)
|
|
||||||
/* B070BC 802406BC 8FBF00DC */ lw $ra, 0xdc($sp)
|
|
||||||
/* B070C0 802406C0 8FB600D8 */ lw $s6, 0xd8($sp)
|
|
||||||
/* B070C4 802406C4 8FB500D4 */ lw $s5, 0xd4($sp)
|
|
||||||
/* B070C8 802406C8 8FB400D0 */ lw $s4, 0xd0($sp)
|
|
||||||
/* B070CC 802406CC 8FB300CC */ lw $s3, 0xcc($sp)
|
|
||||||
/* B070D0 802406D0 8FB200C8 */ lw $s2, 0xc8($sp)
|
|
||||||
/* B070D4 802406D4 8FB100C4 */ lw $s1, 0xc4($sp)
|
|
||||||
/* B070D8 802406D8 8FB000C0 */ lw $s0, 0xc0($sp)
|
|
||||||
/* B070DC 802406DC D7B600E8 */ ldc1 $f22, 0xe8($sp)
|
|
||||||
/* B070E0 802406E0 D7B400E0 */ ldc1 $f20, 0xe0($sp)
|
|
||||||
/* B070E4 802406E4 03E00008 */ jr $ra
|
|
||||||
/* B070E8 802406E8 27BD00F0 */ addiu $sp, $sp, 0xf0
|
|
@ -53,8 +53,8 @@ glabel func_802406EC_B070EC
|
|||||||
/* B071AC 802407AC 0C04E9C1 */ jal func_8013A704
|
/* B071AC 802407AC 0C04E9C1 */ jal func_8013A704
|
||||||
/* B071B0 802407B0 E6020018 */ swc1 $f2, 0x18($s0)
|
/* B071B0 802407B0 E6020018 */ swc1 $f2, 0x18($s0)
|
||||||
/* B071B4 802407B4 0000202D */ daddu $a0, $zero, $zero
|
/* B071B4 802407B4 0000202D */ daddu $a0, $zero, $zero
|
||||||
/* B071B8 802407B8 3C058024 */ lui $a1, %hi(func_80240310_B06D10)
|
/* B071B8 802407B8 3C058024 */ lui $a1, %hi(kkj_25_UnkFoldFunc)
|
||||||
/* B071BC 802407BC 24A50310 */ addiu $a1, $a1, %lo(func_80240310_B06D10)
|
/* B071BC 802407BC 24A50310 */ addiu $a1, $a1, %lo(kkj_25_UnkFoldFunc)
|
||||||
/* B071C0 802407C0 0C048C56 */ jal create_generic_entity_world
|
/* B071C0 802407C0 0C048C56 */ jal create_generic_entity_world
|
||||||
/* B071C4 802407C4 AE020000 */ sw $v0, ($s0)
|
/* B071C4 802407C4 AE020000 */ sw $v0, ($s0)
|
||||||
/* B071C8 802407C8 0260202D */ daddu $a0, $s3, $zero
|
/* B071C8 802407C8 0260202D */ daddu $a0, $s3, $zero
|
||||||
|
@ -1,29 +0,0 @@
|
|||||||
.set noat # allow manual use of $at
|
|
||||||
.set noreorder # don't insert nops after branches
|
|
||||||
|
|
||||||
glabel func_802420EC_8EDF0C
|
|
||||||
/* 8EDF0C 802420EC 27BDFFE8 */ addiu $sp, $sp, -0x18
|
|
||||||
/* 8EDF10 802420F0 10A00003 */ beqz $a1, .L80242100
|
|
||||||
/* 8EDF14 802420F4 AFBF0010 */ sw $ra, 0x10($sp)
|
|
||||||
/* 8EDF18 802420F8 240200FF */ addiu $v0, $zero, 0xff
|
|
||||||
/* 8EDF1C 802420FC AC820074 */ sw $v0, 0x74($a0)
|
|
||||||
.L80242100:
|
|
||||||
/* 8EDF20 80242100 8C820074 */ lw $v0, 0x74($a0)
|
|
||||||
/* 8EDF24 80242104 2442FFF0 */ addiu $v0, $v0, -0x10
|
|
||||||
/* 8EDF28 80242108 18400009 */ blez $v0, .L80242130
|
|
||||||
/* 8EDF2C 8024210C AC820074 */ sw $v0, 0x74($a0)
|
|
||||||
/* 8EDF30 80242110 44820000 */ mtc1 $v0, $f0
|
|
||||||
/* 8EDF34 80242114 00000000 */ nop
|
|
||||||
/* 8EDF38 80242118 46800020 */ cvt.s.w $f0, $f0
|
|
||||||
/* 8EDF3C 8024211C 44050000 */ mfc1 $a1, $f0
|
|
||||||
/* 8EDF40 80242120 0C04DF62 */ jal set_screen_overlay_params_front
|
|
||||||
/* 8EDF44 80242124 0000202D */ daddu $a0, $zero, $zero
|
|
||||||
/* 8EDF48 80242128 0809084E */ j .L80242138
|
|
||||||
/* 8EDF4C 8024212C 0000102D */ daddu $v0, $zero, $zero
|
|
||||||
.L80242130:
|
|
||||||
/* 8EDF50 80242130 AC800074 */ sw $zero, 0x74($a0)
|
|
||||||
/* 8EDF54 80242134 24020002 */ addiu $v0, $zero, 2
|
|
||||||
.L80242138:
|
|
||||||
/* 8EDF58 80242138 8FBF0010 */ lw $ra, 0x10($sp)
|
|
||||||
/* 8EDF5C 8024213C 03E00008 */ jr $ra
|
|
||||||
/* 8EDF60 80242140 27BD0018 */ addiu $sp, $sp, 0x18
|
|
@ -1,17 +0,0 @@
|
|||||||
.set noat # allow manual use of $at
|
|
||||||
.set noreorder # don't insert nops after branches
|
|
||||||
|
|
||||||
glabel func_8024228C_7ECF9C
|
|
||||||
/* 7ECF9C 8024228C 27BDFFE8 */ addiu $sp, $sp, -0x18
|
|
||||||
/* 7ECFA0 80242290 AFB00010 */ sw $s0, 0x10($sp)
|
|
||||||
/* 7ECFA4 80242294 AFBF0014 */ sw $ra, 0x14($sp)
|
|
||||||
/* 7ECFA8 80242298 0C039D7B */ jal get_item_count
|
|
||||||
/* 7ECFAC 8024229C 0080802D */ daddu $s0, $a0, $zero
|
|
||||||
/* 7ECFB0 802422A0 AE020084 */ sw $v0, 0x84($s0)
|
|
||||||
/* 7ECFB4 802422A4 8FBF0014 */ lw $ra, 0x14($sp)
|
|
||||||
/* 7ECFB8 802422A8 8FB00010 */ lw $s0, 0x10($sp)
|
|
||||||
/* 7ECFBC 802422AC 24020002 */ addiu $v0, $zero, 2
|
|
||||||
/* 7ECFC0 802422B0 03E00008 */ jr $ra
|
|
||||||
/* 7ECFC4 802422B4 27BD0018 */ addiu $sp, $sp, 0x18
|
|
||||||
/* 7ECFC8 802422B8 00000000 */ nop
|
|
||||||
/* 7ECFCC 802422BC 00000000 */ nop
|
|
@ -1,142 +0,0 @@
|
|||||||
.set noat # allow manual use of $at
|
|
||||||
.set noreorder # don't insert nops after branches
|
|
||||||
|
|
||||||
glabel func_802403C0_800C40
|
|
||||||
/* 800C40 802403C0 27BDFF48 */ addiu $sp, $sp, -0xb8
|
|
||||||
/* 800C44 802403C4 3C028007 */ lui $v0, %hi(gCurrentCameraID)
|
|
||||||
/* 800C48 802403C8 8C427410 */ lw $v0, %lo(gCurrentCameraID)($v0)
|
|
||||||
/* 800C4C 802403CC 3C01C248 */ lui $at, 0xc248
|
|
||||||
/* 800C50 802403D0 44813000 */ mtc1 $at, $f6
|
|
||||||
/* 800C54 802403D4 3C01427C */ lui $at, 0x427c
|
|
||||||
/* 800C58 802403D8 44811000 */ mtc1 $at, $f2
|
|
||||||
/* 800C5C 802403DC 3C0142BE */ lui $at, 0x42be
|
|
||||||
/* 800C60 802403E0 44812000 */ mtc1 $at, $f4
|
|
||||||
/* 800C64 802403E4 3C0141F8 */ lui $at, 0x41f8
|
|
||||||
/* 800C68 802403E8 44814000 */ mtc1 $at, $f8
|
|
||||||
/* 800C6C 802403EC 3C04800B */ lui $a0, %hi(gCameras)
|
|
||||||
/* 800C70 802403F0 24841D80 */ addiu $a0, $a0, %lo(gCameras)
|
|
||||||
/* 800C74 802403F4 AFBF00B4 */ sw $ra, 0xb4($sp)
|
|
||||||
/* 800C78 802403F8 AFB000B0 */ sw $s0, 0xb0($sp)
|
|
||||||
/* 800C7C 802403FC 00021880 */ sll $v1, $v0, 2
|
|
||||||
/* 800C80 80240400 00621821 */ addu $v1, $v1, $v0
|
|
||||||
/* 800C84 80240404 00031880 */ sll $v1, $v1, 2
|
|
||||||
/* 800C88 80240408 00621823 */ subu $v1, $v1, $v0
|
|
||||||
/* 800C8C 8024040C 000310C0 */ sll $v0, $v1, 3
|
|
||||||
/* 800C90 80240410 00621821 */ addu $v1, $v1, $v0
|
|
||||||
/* 800C94 80240414 000318C0 */ sll $v1, $v1, 3
|
|
||||||
/* 800C98 80240418 00641821 */ addu $v1, $v1, $a0
|
|
||||||
/* 800C9C 8024041C C4600040 */ lwc1 $f0, 0x40($v1)
|
|
||||||
/* 800CA0 80240420 E7A00010 */ swc1 $f0, 0x10($sp)
|
|
||||||
/* 800CA4 80240424 C4600044 */ lwc1 $f0, 0x44($v1)
|
|
||||||
/* 800CA8 80240428 3C10800A */ lui $s0, %hi(gDisplayContext)
|
|
||||||
/* 800CAC 8024042C 2610A674 */ addiu $s0, $s0, %lo(gDisplayContext)
|
|
||||||
/* 800CB0 80240430 E7A00014 */ swc1 $f0, 0x14($sp)
|
|
||||||
/* 800CB4 80240434 C4600048 */ lwc1 $f0, 0x48($v1)
|
|
||||||
/* 800CB8 80240438 27A50090 */ addiu $a1, $sp, 0x90
|
|
||||||
/* 800CBC 8024043C E7A00018 */ swc1 $f0, 0x18($sp)
|
|
||||||
/* 800CC0 80240440 C460004C */ lwc1 $f0, 0x4c($v1)
|
|
||||||
/* 800CC4 80240444 3C048025 */ lui $a0, %hi(D_80248420_808CA0)
|
|
||||||
/* 800CC8 80240448 24848420 */ addiu $a0, $a0, %lo(D_80248420_808CA0)
|
|
||||||
/* 800CCC 8024044C E7A0001C */ swc1 $f0, 0x1c($sp)
|
|
||||||
/* 800CD0 80240450 8C820000 */ lw $v0, ($a0)
|
|
||||||
/* 800CD4 80240454 C46A0050 */ lwc1 $f10, 0x50($v1)
|
|
||||||
/* 800CD8 80240458 3C013F80 */ lui $at, 0x3f80
|
|
||||||
/* 800CDC 8024045C 44810000 */ mtc1 $at, $f0
|
|
||||||
/* 800CE0 80240460 24420001 */ addiu $v0, $v0, 1
|
|
||||||
/* 800CE4 80240464 AC820000 */ sw $v0, ($a0)
|
|
||||||
/* 800CE8 80240468 24020040 */ addiu $v0, $zero, 0x40
|
|
||||||
/* 800CEC 8024046C 27A40050 */ addiu $a0, $sp, 0x50
|
|
||||||
/* 800CF0 80240470 AFA00024 */ sw $zero, 0x24($sp)
|
|
||||||
/* 800CF4 80240474 E7A00028 */ swc1 $f0, 0x28($sp)
|
|
||||||
/* 800CF8 80240478 AFA0002C */ sw $zero, 0x2c($sp)
|
|
||||||
/* 800CFC 8024047C E7A60030 */ swc1 $f6, 0x30($sp)
|
|
||||||
/* 800D00 80240480 E7A20034 */ swc1 $f2, 0x34($sp)
|
|
||||||
/* 800D04 80240484 E7A40038 */ swc1 $f4, 0x38($sp)
|
|
||||||
/* 800D08 80240488 E7A8003C */ swc1 $f8, 0x3c($sp)
|
|
||||||
/* 800D0C 8024048C E7A20040 */ swc1 $f2, 0x40($sp)
|
|
||||||
/* 800D10 80240490 E7A40044 */ swc1 $f4, 0x44($sp)
|
|
||||||
/* 800D14 80240494 AFA20048 */ sw $v0, 0x48($sp)
|
|
||||||
/* 800D18 80240498 AFA2004C */ sw $v0, 0x4c($sp)
|
|
||||||
/* 800D1C 8024049C E7AA0020 */ swc1 $f10, 0x20($sp)
|
|
||||||
/* 800D20 802404A0 8E060000 */ lw $a2, ($s0)
|
|
||||||
/* 800D24 802404A4 8C67003C */ lw $a3, 0x3c($v1)
|
|
||||||
/* 800D28 802404A8 0C018A30 */ jal guLookAtHiliteF
|
|
||||||
/* 800D2C 802404AC 24C60020 */ addiu $a2, $a2, 0x20
|
|
||||||
/* 800D30 802404B0 3C03DC08 */ lui $v1, 0xdc08
|
|
||||||
/* 800D34 802404B4 3463000A */ ori $v1, $v1, 0xa
|
|
||||||
/* 800D38 802404B8 3C07DC08 */ lui $a3, 0xdc08
|
|
||||||
/* 800D3C 802404BC 34E7030A */ ori $a3, $a3, 0x30a
|
|
||||||
/* 800D40 802404C0 3C0AD700 */ lui $t2, 0xd700
|
|
||||||
/* 800D44 802404C4 354A0002 */ ori $t2, $t2, 2
|
|
||||||
/* 800D48 802404C8 3C091000 */ lui $t1, 0x1000
|
|
||||||
/* 800D4C 802404CC 35291000 */ ori $t1, $t1, 0x1000
|
|
||||||
/* 800D50 802404D0 3C08D9FF */ lui $t0, 0xd9ff
|
|
||||||
/* 800D54 802404D4 3C06800A */ lui $a2, %hi(gMasterGfxPos)
|
|
||||||
/* 800D58 802404D8 24C6A66C */ addiu $a2, $a2, %lo(gMasterGfxPos)
|
|
||||||
/* 800D5C 802404DC 3508FFFF */ ori $t0, $t0, 0xffff
|
|
||||||
/* 800D60 802404E0 8CC50000 */ lw $a1, ($a2)
|
|
||||||
/* 800D64 802404E4 8E040000 */ lw $a0, ($s0)
|
|
||||||
/* 800D68 802404E8 00A0102D */ daddu $v0, $a1, $zero
|
|
||||||
/* 800D6C 802404EC 24A50008 */ addiu $a1, $a1, 8
|
|
||||||
/* 800D70 802404F0 ACC50000 */ sw $a1, ($a2)
|
|
||||||
/* 800D74 802404F4 AC430000 */ sw $v1, ($v0)
|
|
||||||
/* 800D78 802404F8 AC440004 */ sw $a0, 4($v0)
|
|
||||||
/* 800D7C 802404FC 24A20008 */ addiu $v0, $a1, 8
|
|
||||||
/* 800D80 80240500 ACC20000 */ sw $v0, ($a2)
|
|
||||||
/* 800D84 80240504 24820010 */ addiu $v0, $a0, 0x10
|
|
||||||
/* 800D88 80240508 24A30010 */ addiu $v1, $a1, 0x10
|
|
||||||
/* 800D8C 8024050C ACA70000 */ sw $a3, ($a1)
|
|
||||||
/* 800D90 80240510 ACA20004 */ sw $v0, 4($a1)
|
|
||||||
/* 800D94 80240514 8C820020 */ lw $v0, 0x20($a0)
|
|
||||||
/* 800D98 80240518 3C07F200 */ lui $a3, 0xf200
|
|
||||||
/* 800D9C 8024051C ACC30000 */ sw $v1, ($a2)
|
|
||||||
/* 800DA0 80240520 8C830024 */ lw $v1, 0x24($a0)
|
|
||||||
/* 800DA4 80240524 30420FFF */ andi $v0, $v0, 0xfff
|
|
||||||
/* 800DA8 80240528 00021300 */ sll $v0, $v0, 0xc
|
|
||||||
/* 800DAC 8024052C 30630FFF */ andi $v1, $v1, 0xfff
|
|
||||||
/* 800DB0 80240530 00671825 */ or $v1, $v1, $a3
|
|
||||||
/* 800DB4 80240534 00431025 */ or $v0, $v0, $v1
|
|
||||||
/* 800DB8 80240538 ACA20008 */ sw $v0, 8($a1)
|
|
||||||
/* 800DBC 8024053C 8C820020 */ lw $v0, 0x20($a0)
|
|
||||||
/* 800DC0 80240540 24A30018 */ addiu $v1, $a1, 0x18
|
|
||||||
/* 800DC4 80240544 ACC30000 */ sw $v1, ($a2)
|
|
||||||
/* 800DC8 80240548 8C830024 */ lw $v1, 0x24($a0)
|
|
||||||
/* 800DCC 8024054C 244200FC */ addiu $v0, $v0, 0xfc
|
|
||||||
/* 800DD0 80240550 30420FFF */ andi $v0, $v0, 0xfff
|
|
||||||
/* 800DD4 80240554 00021300 */ sll $v0, $v0, 0xc
|
|
||||||
/* 800DD8 80240558 246300FC */ addiu $v1, $v1, 0xfc
|
|
||||||
/* 800DDC 8024055C 30630FFF */ andi $v1, $v1, 0xfff
|
|
||||||
/* 800DE0 80240560 00431025 */ or $v0, $v0, $v1
|
|
||||||
/* 800DE4 80240564 ACA2000C */ sw $v0, 0xc($a1)
|
|
||||||
/* 800DE8 80240568 8C830028 */ lw $v1, 0x28($a0)
|
|
||||||
/* 800DEC 8024056C 24A20020 */ addiu $v0, $a1, 0x20
|
|
||||||
/* 800DF0 80240570 ACC20000 */ sw $v0, ($a2)
|
|
||||||
/* 800DF4 80240574 8C82002C */ lw $v0, 0x2c($a0)
|
|
||||||
/* 800DF8 80240578 30630FFF */ andi $v1, $v1, 0xfff
|
|
||||||
/* 800DFC 8024057C 00031B00 */ sll $v1, $v1, 0xc
|
|
||||||
/* 800E00 80240580 30420FFF */ andi $v0, $v0, 0xfff
|
|
||||||
/* 800E04 80240584 00471025 */ or $v0, $v0, $a3
|
|
||||||
/* 800E08 80240588 00621825 */ or $v1, $v1, $v0
|
|
||||||
/* 800E0C 8024058C ACA30010 */ sw $v1, 0x10($a1)
|
|
||||||
/* 800E10 80240590 8C830028 */ lw $v1, 0x28($a0)
|
|
||||||
/* 800E14 80240594 8C84002C */ lw $a0, 0x2c($a0)
|
|
||||||
/* 800E18 80240598 24A20028 */ addiu $v0, $a1, 0x28
|
|
||||||
/* 800E1C 8024059C ACC20000 */ sw $v0, ($a2)
|
|
||||||
/* 800E20 802405A0 3C020004 */ lui $v0, 4
|
|
||||||
/* 800E24 802405A4 ACA20024 */ sw $v0, 0x24($a1)
|
|
||||||
/* 800E28 802405A8 3C020100 */ lui $v0, 0x100
|
|
||||||
/* 800E2C 802405AC ACAA0018 */ sw $t2, 0x18($a1)
|
|
||||||
/* 800E30 802405B0 ACA9001C */ sw $t1, 0x1c($a1)
|
|
||||||
/* 800E34 802405B4 ACA80020 */ sw $t0, 0x20($a1)
|
|
||||||
/* 800E38 802405B8 246300FC */ addiu $v1, $v1, 0xfc
|
|
||||||
/* 800E3C 802405BC 30630FFF */ andi $v1, $v1, 0xfff
|
|
||||||
/* 800E40 802405C0 00031B00 */ sll $v1, $v1, 0xc
|
|
||||||
/* 800E44 802405C4 248400FC */ addiu $a0, $a0, 0xfc
|
|
||||||
/* 800E48 802405C8 30840FFF */ andi $a0, $a0, 0xfff
|
|
||||||
/* 800E4C 802405CC 00822025 */ or $a0, $a0, $v0
|
|
||||||
/* 800E50 802405D0 00641825 */ or $v1, $v1, $a0
|
|
||||||
/* 800E54 802405D4 ACA30014 */ sw $v1, 0x14($a1)
|
|
||||||
/* 800E58 802405D8 8FBF00B4 */ lw $ra, 0xb4($sp)
|
|
||||||
/* 800E5C 802405DC 8FB000B0 */ lw $s0, 0xb0($sp)
|
|
||||||
/* 800E60 802405E0 03E00008 */ jr $ra
|
|
||||||
/* 800E64 802405E4 27BD00B8 */ addiu $sp, $sp, 0xb8
|
|
@ -1,251 +0,0 @@
|
|||||||
.set noat # allow manual use of $at
|
|
||||||
.set noreorder # don't insert nops after branches
|
|
||||||
|
|
||||||
glabel func_80242FA4_803824
|
|
||||||
/* 803824 80242FA4 27BDFF10 */ addiu $sp, $sp, -0xf0
|
|
||||||
/* 803828 80242FA8 0000202D */ daddu $a0, $zero, $zero
|
|
||||||
/* 80382C 80242FAC 3C05FD05 */ lui $a1, 0xfd05
|
|
||||||
/* 803830 80242FB0 AFBF00DC */ sw $ra, 0xdc($sp)
|
|
||||||
/* 803834 80242FB4 AFB600D8 */ sw $s6, 0xd8($sp)
|
|
||||||
/* 803838 80242FB8 AFB500D4 */ sw $s5, 0xd4($sp)
|
|
||||||
/* 80383C 80242FBC AFB400D0 */ sw $s4, 0xd0($sp)
|
|
||||||
/* 803840 80242FC0 AFB300CC */ sw $s3, 0xcc($sp)
|
|
||||||
/* 803844 80242FC4 AFB200C8 */ sw $s2, 0xc8($sp)
|
|
||||||
/* 803848 80242FC8 AFB100C4 */ sw $s1, 0xc4($sp)
|
|
||||||
/* 80384C 80242FCC AFB000C0 */ sw $s0, 0xc0($sp)
|
|
||||||
/* 803850 80242FD0 F7B600E8 */ sdc1 $f22, 0xe8($sp)
|
|
||||||
/* 803854 80242FD4 F7B400E0 */ sdc1 $f20, 0xe0($sp)
|
|
||||||
/* 803858 80242FD8 0C0B1EAF */ jal evt_get_variable
|
|
||||||
/* 80385C 80242FDC 34A50F8A */ ori $a1, $a1, 0xf8a
|
|
||||||
/* 803860 80242FE0 3C07E300 */ lui $a3, 0xe300
|
|
||||||
/* 803864 80242FE4 34E70A01 */ ori $a3, $a3, 0xa01
|
|
||||||
/* 803868 80242FE8 3C08D9C0 */ lui $t0, 0xd9c0
|
|
||||||
/* 80386C 80242FEC 3508F9FB */ ori $t0, $t0, 0xf9fb
|
|
||||||
/* 803870 80242FF0 3C0AD9FF */ lui $t2, 0xd9ff
|
|
||||||
/* 803874 80242FF4 354AFFFF */ ori $t2, $t2, 0xffff
|
|
||||||
/* 803878 80242FF8 3C090020 */ lui $t1, 0x20
|
|
||||||
/* 80387C 80242FFC 35290005 */ ori $t1, $t1, 5
|
|
||||||
/* 803880 80243000 3C0BD700 */ lui $t3, 0xd700
|
|
||||||
/* 803884 80243004 356B0002 */ ori $t3, $t3, 2
|
|
||||||
/* 803888 80243008 3C0CE300 */ lui $t4, 0xe300
|
|
||||||
/* 80388C 8024300C 358C0F00 */ ori $t4, $t4, 0xf00
|
|
||||||
/* 803890 80243010 3C0DE300 */ lui $t5, 0xe300
|
|
||||||
/* 803894 80243014 35AD0C00 */ ori $t5, $t5, 0xc00
|
|
||||||
/* 803898 80243018 3C0EE300 */ lui $t6, 0xe300
|
|
||||||
/* 80389C 8024301C 35CE1201 */ ori $t6, $t6, 0x1201
|
|
||||||
/* 8038A0 80243020 3C0FE300 */ lui $t7, 0xe300
|
|
||||||
/* 8038A4 80243024 35EF1801 */ ori $t7, $t7, 0x1801
|
|
||||||
/* 8038A8 80243028 3C10E300 */ lui $s0, 0xe300
|
|
||||||
/* 8038AC 8024302C 36100D01 */ ori $s0, $s0, 0xd01
|
|
||||||
/* 8038B0 80243030 3C12E300 */ lui $s2, 0xe300
|
|
||||||
/* 8038B4 80243034 36521402 */ ori $s2, $s2, 0x1402
|
|
||||||
/* 8038B8 80243038 3C14E300 */ lui $s4, 0xe300
|
|
||||||
/* 8038BC 8024303C 36941700 */ ori $s4, $s4, 0x1700
|
|
||||||
/* 8038C0 80243040 3C15E200 */ lui $s5, 0xe200
|
|
||||||
/* 8038C4 80243044 36B51E01 */ ori $s5, $s5, 0x1e01
|
|
||||||
/* 8038C8 80243048 27B30040 */ addiu $s3, $sp, 0x40
|
|
||||||
/* 8038CC 8024304C 0260202D */ daddu $a0, $s3, $zero
|
|
||||||
/* 8038D0 80243050 3C160001 */ lui $s6, 1
|
|
||||||
/* 8038D4 80243054 3C11800A */ lui $s1, %hi(gMasterGfxPos)
|
|
||||||
/* 8038D8 80243058 2631A66C */ addiu $s1, $s1, %lo(gMasterGfxPos)
|
|
||||||
/* 8038DC 8024305C 36D61630 */ ori $s6, $s6, 0x1630
|
|
||||||
/* 8038E0 80243060 3C05E700 */ lui $a1, 0xe700
|
|
||||||
/* 8038E4 80243064 8E230000 */ lw $v1, ($s1)
|
|
||||||
/* 8038E8 80243068 4480A000 */ mtc1 $zero, $f20
|
|
||||||
/* 8038EC 8024306C 0060302D */ daddu $a2, $v1, $zero
|
|
||||||
/* 8038F0 80243070 24630008 */ addiu $v1, $v1, 8
|
|
||||||
/* 8038F4 80243074 AE230000 */ sw $v1, ($s1)
|
|
||||||
/* 8038F8 80243078 ACC50000 */ sw $a1, ($a2)
|
|
||||||
/* 8038FC 8024307C 24650008 */ addiu $a1, $v1, 8
|
|
||||||
/* 803900 80243080 ACC00004 */ sw $zero, 4($a2)
|
|
||||||
/* 803904 80243084 AE250000 */ sw $a1, ($s1)
|
|
||||||
/* 803908 80243088 24650010 */ addiu $a1, $v1, 0x10
|
|
||||||
/* 80390C 8024308C AC670000 */ sw $a3, ($v1)
|
|
||||||
/* 803910 80243090 AC600004 */ sw $zero, 4($v1)
|
|
||||||
/* 803914 80243094 AE250000 */ sw $a1, ($s1)
|
|
||||||
/* 803918 80243098 24650018 */ addiu $a1, $v1, 0x18
|
|
||||||
/* 80391C 8024309C AC680008 */ sw $t0, 8($v1)
|
|
||||||
/* 803920 802430A0 AC60000C */ sw $zero, 0xc($v1)
|
|
||||||
/* 803924 802430A4 AE250000 */ sw $a1, ($s1)
|
|
||||||
/* 803928 802430A8 24650020 */ addiu $a1, $v1, 0x20
|
|
||||||
/* 80392C 802430AC AC6A0010 */ sw $t2, 0x10($v1)
|
|
||||||
/* 803930 802430B0 AC690014 */ sw $t1, 0x14($v1)
|
|
||||||
/* 803934 802430B4 AE250000 */ sw $a1, ($s1)
|
|
||||||
/* 803938 802430B8 2405FFFF */ addiu $a1, $zero, -1
|
|
||||||
/* 80393C 802430BC AC65001C */ sw $a1, 0x1c($v1)
|
|
||||||
/* 803940 802430C0 24650028 */ addiu $a1, $v1, 0x28
|
|
||||||
/* 803944 802430C4 AC6B0018 */ sw $t3, 0x18($v1)
|
|
||||||
/* 803948 802430C8 AE250000 */ sw $a1, ($s1)
|
|
||||||
/* 80394C 802430CC 24650030 */ addiu $a1, $v1, 0x30
|
|
||||||
/* 803950 802430D0 AC6C0020 */ sw $t4, 0x20($v1)
|
|
||||||
/* 803954 802430D4 AC600024 */ sw $zero, 0x24($v1)
|
|
||||||
/* 803958 802430D8 AE250000 */ sw $a1, ($s1)
|
|
||||||
/* 80395C 802430DC 3C050008 */ lui $a1, 8
|
|
||||||
/* 803960 802430E0 AC65002C */ sw $a1, 0x2c($v1)
|
|
||||||
/* 803964 802430E4 24650038 */ addiu $a1, $v1, 0x38
|
|
||||||
/* 803968 802430E8 AC6D0028 */ sw $t5, 0x28($v1)
|
|
||||||
/* 80396C 802430EC AE250000 */ sw $a1, ($s1)
|
|
||||||
/* 803970 802430F0 24052000 */ addiu $a1, $zero, 0x2000
|
|
||||||
/* 803974 802430F4 AC650034 */ sw $a1, 0x34($v1)
|
|
||||||
/* 803978 802430F8 24650040 */ addiu $a1, $v1, 0x40
|
|
||||||
/* 80397C 802430FC AC6E0030 */ sw $t6, 0x30($v1)
|
|
||||||
/* 803980 80243100 AE250000 */ sw $a1, ($s1)
|
|
||||||
/* 803984 80243104 240500C0 */ addiu $a1, $zero, 0xc0
|
|
||||||
/* 803988 80243108 AC65003C */ sw $a1, 0x3c($v1)
|
|
||||||
/* 80398C 8024310C 24650048 */ addiu $a1, $v1, 0x48
|
|
||||||
/* 803990 80243110 AC6F0038 */ sw $t7, 0x38($v1)
|
|
||||||
/* 803994 80243114 AE250000 */ sw $a1, ($s1)
|
|
||||||
/* 803998 80243118 24650050 */ addiu $a1, $v1, 0x50
|
|
||||||
/* 80399C 8024311C AC700040 */ sw $s0, 0x40($v1)
|
|
||||||
/* 8039A0 80243120 AC600044 */ sw $zero, 0x44($v1)
|
|
||||||
/* 8039A4 80243124 AE250000 */ sw $a1, ($s1)
|
|
||||||
/* 8039A8 80243128 24050C00 */ addiu $a1, $zero, 0xc00
|
|
||||||
/* 8039AC 8024312C AC720048 */ sw $s2, 0x48($v1)
|
|
||||||
/* 8039B0 80243130 0040902D */ daddu $s2, $v0, $zero
|
|
||||||
/* 8039B4 80243134 24620058 */ addiu $v0, $v1, 0x58
|
|
||||||
/* 8039B8 80243138 AC65004C */ sw $a1, 0x4c($v1)
|
|
||||||
/* 8039BC 8024313C AC740050 */ sw $s4, 0x50($v1)
|
|
||||||
/* 8039C0 80243140 AC600054 */ sw $zero, 0x54($v1)
|
|
||||||
/* 8039C4 80243144 AC750058 */ sw $s5, 0x58($v1)
|
|
||||||
/* 8039C8 80243148 AC60005C */ sw $zero, 0x5c($v1)
|
|
||||||
/* 8039CC 8024314C 8E450010 */ lw $a1, 0x10($s2)
|
|
||||||
/* 8039D0 80243150 8E460014 */ lw $a2, 0x14($s2)
|
|
||||||
/* 8039D4 80243154 8E470018 */ lw $a3, 0x18($s2)
|
|
||||||
/* 8039D8 80243158 24630060 */ addiu $v1, $v1, 0x60
|
|
||||||
/* 8039DC 8024315C AE220000 */ sw $v0, ($s1)
|
|
||||||
/* 8039E0 80243160 0C019E40 */ jal guTranslateF
|
|
||||||
/* 8039E4 80243164 AE230000 */ sw $v1, ($s1)
|
|
||||||
/* 8039E8 80243168 27B00080 */ addiu $s0, $sp, 0x80
|
|
||||||
/* 8039EC 8024316C E7B40010 */ swc1 $f20, 0x10($sp)
|
|
||||||
/* 8039F0 80243170 8E450020 */ lw $a1, 0x20($s2)
|
|
||||||
/* 8039F4 80243174 3C013F80 */ lui $at, 0x3f80
|
|
||||||
/* 8039F8 80243178 4481B000 */ mtc1 $at, $f22
|
|
||||||
/* 8039FC 8024317C 4406A000 */ mfc1 $a2, $f20
|
|
||||||
/* 803A00 80243180 4407B000 */ mfc1 $a3, $f22
|
|
||||||
/* 803A04 80243184 0C019EC8 */ jal guRotateF
|
|
||||||
/* 803A08 80243188 0200202D */ daddu $a0, $s0, $zero
|
|
||||||
/* 803A0C 8024318C 0200202D */ daddu $a0, $s0, $zero
|
|
||||||
/* 803A10 80243190 0260282D */ daddu $a1, $s3, $zero
|
|
||||||
/* 803A14 80243194 0C019D80 */ jal guMtxCatF
|
|
||||||
/* 803A18 80243198 0260302D */ daddu $a2, $s3, $zero
|
|
||||||
/* 803A1C 8024319C E7B60010 */ swc1 $f22, 0x10($sp)
|
|
||||||
/* 803A20 802431A0 8E450024 */ lw $a1, 0x24($s2)
|
|
||||||
/* 803A24 802431A4 4406A000 */ mfc1 $a2, $f20
|
|
||||||
/* 803A28 802431A8 4407A000 */ mfc1 $a3, $f20
|
|
||||||
/* 803A2C 802431AC 0C019EC8 */ jal guRotateF
|
|
||||||
/* 803A30 802431B0 0200202D */ daddu $a0, $s0, $zero
|
|
||||||
/* 803A34 802431B4 0200202D */ daddu $a0, $s0, $zero
|
|
||||||
/* 803A38 802431B8 0260282D */ daddu $a1, $s3, $zero
|
|
||||||
/* 803A3C 802431BC 0C019D80 */ jal guMtxCatF
|
|
||||||
/* 803A40 802431C0 0260302D */ daddu $a2, $s3, $zero
|
|
||||||
/* 803A44 802431C4 E7B40010 */ swc1 $f20, 0x10($sp)
|
|
||||||
/* 803A48 802431C8 8E45001C */ lw $a1, 0x1c($s2)
|
|
||||||
/* 803A4C 802431CC 4406B000 */ mfc1 $a2, $f22
|
|
||||||
/* 803A50 802431D0 4407A000 */ mfc1 $a3, $f20
|
|
||||||
/* 803A54 802431D4 0C019EC8 */ jal guRotateF
|
|
||||||
/* 803A58 802431D8 0200202D */ daddu $a0, $s0, $zero
|
|
||||||
/* 803A5C 802431DC 0200202D */ daddu $a0, $s0, $zero
|
|
||||||
/* 803A60 802431E0 0260282D */ daddu $a1, $s3, $zero
|
|
||||||
/* 803A64 802431E4 0C019D80 */ jal guMtxCatF
|
|
||||||
/* 803A68 802431E8 0260302D */ daddu $a2, $s3, $zero
|
|
||||||
/* 803A6C 802431EC 8E450028 */ lw $a1, 0x28($s2)
|
|
||||||
/* 803A70 802431F0 8E46002C */ lw $a2, 0x2c($s2)
|
|
||||||
/* 803A74 802431F4 8E470030 */ lw $a3, 0x30($s2)
|
|
||||||
/* 803A78 802431F8 0C019DF0 */ jal guScaleF
|
|
||||||
/* 803A7C 802431FC 0200202D */ daddu $a0, $s0, $zero
|
|
||||||
/* 803A80 80243200 0200202D */ daddu $a0, $s0, $zero
|
|
||||||
/* 803A84 80243204 0260282D */ daddu $a1, $s3, $zero
|
|
||||||
/* 803A88 80243208 0C019D80 */ jal guMtxCatF
|
|
||||||
/* 803A8C 8024320C 0260302D */ daddu $a2, $s3, $zero
|
|
||||||
/* 803A90 80243210 0260202D */ daddu $a0, $s3, $zero
|
|
||||||
/* 803A94 80243214 3C108007 */ lui $s0, %hi(gMatrixListPos)
|
|
||||||
/* 803A98 80243218 261041F0 */ addiu $s0, $s0, %lo(gMatrixListPos)
|
|
||||||
/* 803A9C 8024321C 3C14800A */ lui $s4, %hi(gDisplayContext)
|
|
||||||
/* 803AA0 80243220 2694A674 */ addiu $s4, $s4, %lo(gDisplayContext)
|
|
||||||
/* 803AA4 80243224 96050000 */ lhu $a1, ($s0)
|
|
||||||
/* 803AA8 80243228 8E820000 */ lw $v0, ($s4)
|
|
||||||
/* 803AAC 8024322C 00052980 */ sll $a1, $a1, 6
|
|
||||||
/* 803AB0 80243230 00B62821 */ addu $a1, $a1, $s6
|
|
||||||
/* 803AB4 80243234 0C019D40 */ jal guMtxF2L
|
|
||||||
/* 803AB8 80243238 00452821 */ addu $a1, $v0, $a1
|
|
||||||
/* 803ABC 8024323C 3C02DA38 */ lui $v0, 0xda38
|
|
||||||
/* 803AC0 80243240 34420002 */ ori $v0, $v0, 2
|
|
||||||
/* 803AC4 80243244 27A40030 */ addiu $a0, $sp, 0x30
|
|
||||||
/* 803AC8 80243248 8E270000 */ lw $a3, ($s1)
|
|
||||||
/* 803ACC 8024324C 96080000 */ lhu $t0, ($s0)
|
|
||||||
/* 803AD0 80243250 00E0282D */ daddu $a1, $a3, $zero
|
|
||||||
/* 803AD4 80243254 ACA20000 */ sw $v0, ($a1)
|
|
||||||
/* 803AD8 80243258 3102FFFF */ andi $v0, $t0, 0xffff
|
|
||||||
/* 803ADC 8024325C 00021180 */ sll $v0, $v0, 6
|
|
||||||
/* 803AE0 80243260 00561021 */ addu $v0, $v0, $s6
|
|
||||||
/* 803AE4 80243264 8E830000 */ lw $v1, ($s4)
|
|
||||||
/* 803AE8 80243268 24E70008 */ addiu $a3, $a3, 8
|
|
||||||
/* 803AEC 8024326C 00621821 */ addu $v1, $v1, $v0
|
|
||||||
/* 803AF0 80243270 3C028000 */ lui $v0, 0x8000
|
|
||||||
/* 803AF4 80243274 00621821 */ addu $v1, $v1, $v0
|
|
||||||
/* 803AF8 80243278 ACA30004 */ sw $v1, 4($a1)
|
|
||||||
/* 803AFC 8024327C 8E450008 */ lw $a1, 8($s2)
|
|
||||||
/* 803B00 80243280 8E46000C */ lw $a2, 0xc($s2)
|
|
||||||
/* 803B04 80243284 25080001 */ addiu $t0, $t0, 1
|
|
||||||
/* 803B08 80243288 AE270000 */ sw $a3, ($s1)
|
|
||||||
/* 803B0C 8024328C 0C0B7811 */ jal spr_get_player_raster_info
|
|
||||||
/* 803B10 80243290 A6080000 */ sh $t0, ($s0)
|
|
||||||
/* 803B14 80243294 8FA30030 */ lw $v1, 0x30($sp)
|
|
||||||
/* 803B18 80243298 8FA40034 */ lw $a0, 0x34($sp)
|
|
||||||
/* 803B1C 8024329C 97A2003A */ lhu $v0, 0x3a($sp)
|
|
||||||
/* 803B20 802432A0 3C013F00 */ lui $at, 0x3f00
|
|
||||||
/* 803B24 802432A4 44811000 */ mtc1 $at, $f2
|
|
||||||
/* 803B28 802432A8 27A50018 */ addiu $a1, $sp, 0x18
|
|
||||||
/* 803B2C 802432AC A7A20020 */ sh $v0, 0x20($sp)
|
|
||||||
/* 803B30 802432B0 3042FFFF */ andi $v0, $v0, 0xffff
|
|
||||||
/* 803B34 802432B4 44820000 */ mtc1 $v0, $f0
|
|
||||||
/* 803B38 802432B8 00000000 */ nop
|
|
||||||
/* 803B3C 802432BC 46800020 */ cvt.s.w $f0, $f0
|
|
||||||
/* 803B40 802432C0 AFA30018 */ sw $v1, 0x18($sp)
|
|
||||||
/* 803B44 802432C4 AFA4001C */ sw $a0, 0x1c($sp)
|
|
||||||
/* 803B48 802432C8 E6400034 */ swc1 $f0, 0x34($s2)
|
|
||||||
/* 803B4C 802432CC 97A2003E */ lhu $v0, 0x3e($sp)
|
|
||||||
/* 803B50 802432D0 0000302D */ daddu $a2, $zero, $zero
|
|
||||||
/* 803B54 802432D4 A7A20022 */ sh $v0, 0x22($sp)
|
|
||||||
/* 803B58 802432D8 3042FFFF */ andi $v0, $v0, 0xffff
|
|
||||||
/* 803B5C 802432DC 44820000 */ mtc1 $v0, $f0
|
|
||||||
/* 803B60 802432E0 00000000 */ nop
|
|
||||||
/* 803B64 802432E4 46800020 */ cvt.s.w $f0, $f0
|
|
||||||
/* 803B68 802432E8 E6400038 */ swc1 $f0, 0x38($s2)
|
|
||||||
/* 803B6C 802432EC C7A00038 */ lwc1 $f0, 0x38($sp)
|
|
||||||
/* 803B70 802432F0 46800020 */ cvt.s.w $f0, $f0
|
|
||||||
/* 803B74 802432F4 46020002 */ mul.s $f0, $f0, $f2
|
|
||||||
/* 803B78 802432F8 00000000 */ nop
|
|
||||||
/* 803B7C 802432FC 97A3003E */ lhu $v1, 0x3e($sp)
|
|
||||||
/* 803B80 80243300 240200FF */ addiu $v0, $zero, 0xff
|
|
||||||
/* 803B84 80243304 A3A20028 */ sb $v0, 0x28($sp)
|
|
||||||
/* 803B88 80243308 A7A30026 */ sh $v1, 0x26($sp)
|
|
||||||
/* 803B8C 8024330C 4600010D */ trunc.w.s $f4, $f0
|
|
||||||
/* 803B90 80243310 44022000 */ mfc1 $v0, $f4
|
|
||||||
/* 803B94 80243314 00000000 */ nop
|
|
||||||
/* 803B98 80243318 00021023 */ negu $v0, $v0
|
|
||||||
/* 803B9C 8024331C A7A20024 */ sh $v0, 0x24($sp)
|
|
||||||
/* 803BA0 80243320 8E440000 */ lw $a0, ($s2)
|
|
||||||
/* 803BA4 80243324 0C04EBDC */ jal fold_appendGfx_component
|
|
||||||
/* 803BA8 80243328 0260382D */ daddu $a3, $s3, $zero
|
|
||||||
/* 803BAC 8024332C 3C04D838 */ lui $a0, 0xd838
|
|
||||||
/* 803BB0 80243330 8E220000 */ lw $v0, ($s1)
|
|
||||||
/* 803BB4 80243334 34840002 */ ori $a0, $a0, 2
|
|
||||||
/* 803BB8 80243338 0040182D */ daddu $v1, $v0, $zero
|
|
||||||
/* 803BBC 8024333C 24420008 */ addiu $v0, $v0, 8
|
|
||||||
/* 803BC0 80243340 AE220000 */ sw $v0, ($s1)
|
|
||||||
/* 803BC4 80243344 24020040 */ addiu $v0, $zero, 0x40
|
|
||||||
/* 803BC8 80243348 AC640000 */ sw $a0, ($v1)
|
|
||||||
/* 803BCC 8024334C AC620004 */ sw $v0, 4($v1)
|
|
||||||
/* 803BD0 80243350 8FBF00DC */ lw $ra, 0xdc($sp)
|
|
||||||
/* 803BD4 80243354 8FB600D8 */ lw $s6, 0xd8($sp)
|
|
||||||
/* 803BD8 80243358 8FB500D4 */ lw $s5, 0xd4($sp)
|
|
||||||
/* 803BDC 8024335C 8FB400D0 */ lw $s4, 0xd0($sp)
|
|
||||||
/* 803BE0 80243360 8FB300CC */ lw $s3, 0xcc($sp)
|
|
||||||
/* 803BE4 80243364 8FB200C8 */ lw $s2, 0xc8($sp)
|
|
||||||
/* 803BE8 80243368 8FB100C4 */ lw $s1, 0xc4($sp)
|
|
||||||
/* 803BEC 8024336C 8FB000C0 */ lw $s0, 0xc0($sp)
|
|
||||||
/* 803BF0 80243370 D7B600E8 */ ldc1 $f22, 0xe8($sp)
|
|
||||||
/* 803BF4 80243374 D7B400E0 */ ldc1 $f20, 0xe0($sp)
|
|
||||||
/* 803BF8 80243378 03E00008 */ jr $ra
|
|
||||||
/* 803BFC 8024337C 27BD00F0 */ addiu $sp, $sp, 0xf0
|
|
@ -1,73 +0,0 @@
|
|||||||
.set noat # allow manual use of $at
|
|
||||||
.set noreorder # don't insert nops after branches
|
|
||||||
|
|
||||||
glabel filemenu_update_show_name_input_803C00
|
|
||||||
/* 803C00 80243380 27BDFFD8 */ addiu $sp, $sp, -0x28
|
|
||||||
/* 803C04 80243384 AFB3001C */ sw $s3, 0x1c($sp)
|
|
||||||
/* 803C08 80243388 0080982D */ daddu $s3, $a0, $zero
|
|
||||||
/* 803C0C 8024338C AFBF0020 */ sw $ra, 0x20($sp)
|
|
||||||
/* 803C10 80243390 AFB20018 */ sw $s2, 0x18($sp)
|
|
||||||
/* 803C14 80243394 AFB10014 */ sw $s1, 0x14($sp)
|
|
||||||
/* 803C18 80243398 AFB00010 */ sw $s0, 0x10($sp)
|
|
||||||
/* 803C1C 8024339C 8E70000C */ lw $s0, 0xc($s3)
|
|
||||||
/* 803C20 802433A0 8E050000 */ lw $a1, ($s0)
|
|
||||||
/* 803C24 802433A4 0C0B1EAF */ jal evt_get_variable
|
|
||||||
/* 803C28 802433A8 26100004 */ addiu $s0, $s0, 4
|
|
||||||
/* 803C2C 802433AC 0260202D */ daddu $a0, $s3, $zero
|
|
||||||
/* 803C30 802433B0 8E050000 */ lw $a1, ($s0)
|
|
||||||
/* 803C34 802433B4 0C0B1EAF */ jal evt_get_variable
|
|
||||||
/* 803C38 802433B8 0040902D */ daddu $s2, $v0, $zero
|
|
||||||
/* 803C3C 802433BC 2404003C */ addiu $a0, $zero, 0x3c
|
|
||||||
/* 803C40 802433C0 0C00AB39 */ jal heap_malloc
|
|
||||||
/* 803C44 802433C4 0040882D */ daddu $s1, $v0, $zero
|
|
||||||
/* 803C48 802433C8 0040802D */ daddu $s0, $v0, $zero
|
|
||||||
/* 803C4C 802433CC 3C038011 */ lui $v1, %hi(gPlayerStatus)
|
|
||||||
/* 803C50 802433D0 2463EFC8 */ addiu $v1, $v1, %lo(gPlayerStatus)
|
|
||||||
/* 803C54 802433D4 AE120008 */ sw $s2, 8($s0)
|
|
||||||
/* 803C58 802433D8 AE11000C */ sw $s1, 0xc($s0)
|
|
||||||
/* 803C5C 802433DC 846200B0 */ lh $v0, 0xb0($v1)
|
|
||||||
/* 803C60 802433E0 44820000 */ mtc1 $v0, $f0
|
|
||||||
/* 803C64 802433E4 00000000 */ nop
|
|
||||||
/* 803C68 802433E8 46800020 */ cvt.s.w $f0, $f0
|
|
||||||
/* 803C6C 802433EC E6000034 */ swc1 $f0, 0x34($s0)
|
|
||||||
/* 803C70 802433F0 846200B2 */ lh $v0, 0xb2($v1)
|
|
||||||
/* 803C74 802433F4 44820000 */ mtc1 $v0, $f0
|
|
||||||
/* 803C78 802433F8 00000000 */ nop
|
|
||||||
/* 803C7C 802433FC 46800020 */ cvt.s.w $f0, $f0
|
|
||||||
/* 803C80 80243400 E6000038 */ swc1 $f0, 0x38($s0)
|
|
||||||
/* 803C84 80243404 C4600028 */ lwc1 $f0, 0x28($v1)
|
|
||||||
/* 803C88 80243408 E6000010 */ swc1 $f0, 0x10($s0)
|
|
||||||
/* 803C8C 8024340C C460002C */ lwc1 $f0, 0x2c($v1)
|
|
||||||
/* 803C90 80243410 E6000014 */ swc1 $f0, 0x14($s0)
|
|
||||||
/* 803C94 80243414 C4620030 */ lwc1 $f2, 0x30($v1)
|
|
||||||
/* 803C98 80243418 3C013F36 */ lui $at, 0x3f36
|
|
||||||
/* 803C9C 8024341C 3421DB6E */ ori $at, $at, 0xdb6e
|
|
||||||
/* 803CA0 80243420 44810000 */ mtc1 $at, $f0
|
|
||||||
/* 803CA4 80243424 24040001 */ addiu $a0, $zero, 1
|
|
||||||
/* 803CA8 80243428 AE00001C */ sw $zero, 0x1c($s0)
|
|
||||||
/* 803CAC 8024342C AE000020 */ sw $zero, 0x20($s0)
|
|
||||||
/* 803CB0 80243430 AE000024 */ sw $zero, 0x24($s0)
|
|
||||||
/* 803CB4 80243434 E6000028 */ swc1 $f0, 0x28($s0)
|
|
||||||
/* 803CB8 80243438 E600002C */ swc1 $f0, 0x2c($s0)
|
|
||||||
/* 803CBC 8024343C E6000030 */ swc1 $f0, 0x30($s0)
|
|
||||||
/* 803CC0 80243440 0C04E9C1 */ jal func_8013A704
|
|
||||||
/* 803CC4 80243444 E6020018 */ swc1 $f2, 0x18($s0)
|
|
||||||
/* 803CC8 80243448 0000202D */ daddu $a0, $zero, $zero
|
|
||||||
/* 803CCC 8024344C 3C058024 */ lui $a1, %hi(func_80242FA4_803824)
|
|
||||||
/* 803CD0 80243450 24A52FA4 */ addiu $a1, $a1, %lo(func_80242FA4_803824)
|
|
||||||
/* 803CD4 80243454 0C048C56 */ jal create_generic_entity_world
|
|
||||||
/* 803CD8 80243458 AE020000 */ sw $v0, ($s0)
|
|
||||||
/* 803CDC 8024345C 0260202D */ daddu $a0, $s3, $zero
|
|
||||||
/* 803CE0 80243460 3C05FD05 */ lui $a1, 0xfd05
|
|
||||||
/* 803CE4 80243464 34A50F8A */ ori $a1, $a1, 0xf8a
|
|
||||||
/* 803CE8 80243468 0200302D */ daddu $a2, $s0, $zero
|
|
||||||
/* 803CEC 8024346C 0C0B2026 */ jal evt_set_variable
|
|
||||||
/* 803CF0 80243470 AE020004 */ sw $v0, 4($s0)
|
|
||||||
/* 803CF4 80243474 8FBF0020 */ lw $ra, 0x20($sp)
|
|
||||||
/* 803CF8 80243478 8FB3001C */ lw $s3, 0x1c($sp)
|
|
||||||
/* 803CFC 8024347C 8FB20018 */ lw $s2, 0x18($sp)
|
|
||||||
/* 803D00 80243480 8FB10014 */ lw $s1, 0x14($sp)
|
|
||||||
/* 803D04 80243484 8FB00010 */ lw $s0, 0x10($sp)
|
|
||||||
/* 803D08 80243488 24020002 */ addiu $v0, $zero, 2
|
|
||||||
/* 803D0C 8024348C 03E00008 */ jr $ra
|
|
||||||
/* 803D10 80243490 27BD0028 */ addiu $sp, $sp, 0x28
|
|
@ -1,18 +0,0 @@
|
|||||||
.set noat # allow manual use of $at
|
|
||||||
.set noreorder # don't insert nops after branches
|
|
||||||
|
|
||||||
glabel func_80243D28_8045A8
|
|
||||||
/* 8045A8 80243D28 27BDFFE8 */ addiu $sp, $sp, -0x18
|
|
||||||
/* 8045AC 80243D2C AFBF0010 */ sw $ra, 0x10($sp)
|
|
||||||
/* 8045B0 80243D30 8C82000C */ lw $v0, 0xc($a0)
|
|
||||||
/* 8045B4 80243D34 0C0B1EAF */ jal evt_get_variable
|
|
||||||
/* 8045B8 80243D38 8C450000 */ lw $a1, ($v0)
|
|
||||||
/* 8045BC 80243D3C 3C018025 */ lui $at, %hi(D_8024D948_80E1C8)
|
|
||||||
/* 8045C0 80243D40 AC22D948 */ sw $v0, %lo(D_8024D948_80E1C8)($at)
|
|
||||||
/* 8045C4 80243D44 24020002 */ addiu $v0, $zero, 2
|
|
||||||
/* 8045C8 80243D48 8FBF0010 */ lw $ra, 0x10($sp)
|
|
||||||
/* 8045CC 80243D4C 24030001 */ addiu $v1, $zero, 1
|
|
||||||
/* 8045D0 80243D50 3C018025 */ lui $at, %hi(D_8024D944_80E1C4)
|
|
||||||
/* 8045D4 80243D54 AC23D944 */ sw $v1, %lo(D_8024D944_80E1C4)($at)
|
|
||||||
/* 8045D8 80243D58 03E00008 */ jr $ra
|
|
||||||
/* 8045DC 80243D5C 27BD0018 */ addiu $sp, $sp, 0x18
|
|
@ -1,32 +0,0 @@
|
|||||||
.set noat # allow manual use of $at
|
|
||||||
.set noreorder # don't insert nops after branches
|
|
||||||
|
|
||||||
glabel func_802447E0_805060
|
|
||||||
/* 805060 802447E0 27BDFFE8 */ addiu $sp, $sp, -0x18
|
|
||||||
/* 805064 802447E4 AFB00010 */ sw $s0, 0x10($sp)
|
|
||||||
/* 805068 802447E8 0080802D */ daddu $s0, $a0, $zero
|
|
||||||
/* 80506C 802447EC 10A00002 */ beqz $a1, .L802447F8
|
|
||||||
/* 805070 802447F0 AFBF0014 */ sw $ra, 0x14($sp)
|
|
||||||
/* 805074 802447F4 AE000074 */ sw $zero, 0x74($s0)
|
|
||||||
.L802447F8:
|
|
||||||
/* 805078 802447F8 8E020074 */ lw $v0, 0x74($s0)
|
|
||||||
/* 80507C 802447FC 2442000A */ addiu $v0, $v0, 0xa
|
|
||||||
/* 805080 80244800 AE020074 */ sw $v0, 0x74($s0)
|
|
||||||
/* 805084 80244804 28420100 */ slti $v0, $v0, 0x100
|
|
||||||
/* 805088 80244808 14400002 */ bnez $v0, .L80244814
|
|
||||||
/* 80508C 8024480C 240200FF */ addiu $v0, $zero, 0xff
|
|
||||||
/* 805090 80244810 AE020074 */ sw $v0, 0x74($s0)
|
|
||||||
.L80244814:
|
|
||||||
/* 805094 80244814 C6000074 */ lwc1 $f0, 0x74($s0)
|
|
||||||
/* 805098 80244818 46800020 */ cvt.s.w $f0, $f0
|
|
||||||
/* 80509C 8024481C 44050000 */ mfc1 $a1, $f0
|
|
||||||
/* 8050A0 80244820 0C04DF62 */ jal set_screen_overlay_params_front
|
|
||||||
/* 8050A4 80244824 0000202D */ daddu $a0, $zero, $zero
|
|
||||||
/* 8050A8 80244828 8E020074 */ lw $v0, 0x74($s0)
|
|
||||||
/* 8050AC 8024482C 8FBF0014 */ lw $ra, 0x14($sp)
|
|
||||||
/* 8050B0 80244830 8FB00010 */ lw $s0, 0x10($sp)
|
|
||||||
/* 8050B4 80244834 384200FF */ xori $v0, $v0, 0xff
|
|
||||||
/* 8050B8 80244838 2C420001 */ sltiu $v0, $v0, 1
|
|
||||||
/* 8050BC 8024483C 00021040 */ sll $v0, $v0, 1
|
|
||||||
/* 8050C0 80244840 03E00008 */ jr $ra
|
|
||||||
/* 8050C4 80244844 27BD0018 */ addiu $sp, $sp, 0x18
|
|
@ -1,29 +0,0 @@
|
|||||||
.set noat # allow manual use of $at
|
|
||||||
.set noreorder # don't insert nops after branches
|
|
||||||
|
|
||||||
glabel func_80244848_8050C8
|
|
||||||
/* 8050C8 80244848 27BDFFE8 */ addiu $sp, $sp, -0x18
|
|
||||||
/* 8050CC 8024484C 10A00003 */ beqz $a1, .L8024485C
|
|
||||||
/* 8050D0 80244850 AFBF0010 */ sw $ra, 0x10($sp)
|
|
||||||
/* 8050D4 80244854 240200FF */ addiu $v0, $zero, 0xff
|
|
||||||
/* 8050D8 80244858 AC820074 */ sw $v0, 0x74($a0)
|
|
||||||
.L8024485C:
|
|
||||||
/* 8050DC 8024485C 8C820074 */ lw $v0, 0x74($a0)
|
|
||||||
/* 8050E0 80244860 2442FFF6 */ addiu $v0, $v0, -0xa
|
|
||||||
/* 8050E4 80244864 18400009 */ blez $v0, .L8024488C
|
|
||||||
/* 8050E8 80244868 AC820074 */ sw $v0, 0x74($a0)
|
|
||||||
/* 8050EC 8024486C 44820000 */ mtc1 $v0, $f0
|
|
||||||
/* 8050F0 80244870 00000000 */ nop
|
|
||||||
/* 8050F4 80244874 46800020 */ cvt.s.w $f0, $f0
|
|
||||||
/* 8050F8 80244878 44050000 */ mfc1 $a1, $f0
|
|
||||||
/* 8050FC 8024487C 0C04DF62 */ jal set_screen_overlay_params_front
|
|
||||||
/* 805100 80244880 0000202D */ daddu $a0, $zero, $zero
|
|
||||||
/* 805104 80244884 08091225 */ j .L80244894
|
|
||||||
/* 805108 80244888 0000102D */ daddu $v0, $zero, $zero
|
|
||||||
.L8024488C:
|
|
||||||
/* 80510C 8024488C AC800074 */ sw $zero, 0x74($a0)
|
|
||||||
/* 805110 80244890 24020002 */ addiu $v0, $zero, 2
|
|
||||||
.L80244894:
|
|
||||||
/* 805114 80244894 8FBF0010 */ lw $ra, 0x10($sp)
|
|
||||||
/* 805118 80244898 03E00008 */ jr $ra
|
|
||||||
/* 80511C 8024489C 27BD0018 */ addiu $sp, $sp, 0x18
|
|
@ -1,49 +0,0 @@
|
|||||||
.set noat # allow manual use of $at
|
|
||||||
.set noreorder # don't insert nops after branches
|
|
||||||
|
|
||||||
glabel func_80244D68_8055E8
|
|
||||||
/* 8055E8 80244D68 27BDFFE8 */ addiu $sp, $sp, -0x18
|
|
||||||
/* 8055EC 80244D6C AFBF0010 */ sw $ra, 0x10($sp)
|
|
||||||
/* 8055F0 80244D70 0000202D */ daddu $a0, $zero, $zero
|
|
||||||
/* 8055F4 80244D74 3C05F840 */ lui $a1, 0xf840
|
|
||||||
/* 8055F8 80244D78 0C0B1EAF */ jal evt_get_variable
|
|
||||||
/* 8055FC 80244D7C 34A55C84 */ ori $a1, $a1, 0x5c84
|
|
||||||
/* 805600 80244D80 14400008 */ bnez $v0, .L80244DA4
|
|
||||||
/* 805604 80244D84 0000202D */ daddu $a0, $zero, $zero
|
|
||||||
/* 805608 80244D88 3C028007 */ lui $v0, %hi(gGameStatusPtr)
|
|
||||||
/* 80560C 80244D8C 8C42419C */ lw $v0, %lo(gGameStatusPtr)($v0)
|
|
||||||
/* 805610 80244D90 8C420140 */ lw $v0, 0x140($v0)
|
|
||||||
/* 805614 80244D94 8C440000 */ lw $a0, ($v0)
|
|
||||||
/* 805618 80244D98 0C04D052 */ jal set_item_entity_flags
|
|
||||||
/* 80561C 80244D9C 24050040 */ addiu $a1, $zero, 0x40
|
|
||||||
/* 805620 80244DA0 0000202D */ daddu $a0, $zero, $zero
|
|
||||||
.L80244DA4:
|
|
||||||
/* 805624 80244DA4 3C05F840 */ lui $a1, 0xf840
|
|
||||||
/* 805628 80244DA8 0C0B1EAF */ jal evt_get_variable
|
|
||||||
/* 80562C 80244DAC 34A55C85 */ ori $a1, $a1, 0x5c85
|
|
||||||
/* 805630 80244DB0 14400008 */ bnez $v0, .L80244DD4
|
|
||||||
/* 805634 80244DB4 0000202D */ daddu $a0, $zero, $zero
|
|
||||||
/* 805638 80244DB8 3C028007 */ lui $v0, %hi(gGameStatusPtr)
|
|
||||||
/* 80563C 80244DBC 8C42419C */ lw $v0, %lo(gGameStatusPtr)($v0)
|
|
||||||
/* 805640 80244DC0 8C420140 */ lw $v0, 0x140($v0)
|
|
||||||
/* 805644 80244DC4 8C440010 */ lw $a0, 0x10($v0)
|
|
||||||
/* 805648 80244DC8 0C04D052 */ jal set_item_entity_flags
|
|
||||||
/* 80564C 80244DCC 24050040 */ addiu $a1, $zero, 0x40
|
|
||||||
/* 805650 80244DD0 0000202D */ daddu $a0, $zero, $zero
|
|
||||||
.L80244DD4:
|
|
||||||
/* 805654 80244DD4 3C05F840 */ lui $a1, 0xf840
|
|
||||||
/* 805658 80244DD8 0C0B1EAF */ jal evt_get_variable
|
|
||||||
/* 80565C 80244DDC 34A55C86 */ ori $a1, $a1, 0x5c86
|
|
||||||
/* 805660 80244DE0 14400007 */ bnez $v0, .L80244E00
|
|
||||||
/* 805664 80244DE4 00000000 */ nop
|
|
||||||
/* 805668 80244DE8 3C028007 */ lui $v0, %hi(gGameStatusPtr)
|
|
||||||
/* 80566C 80244DEC 8C42419C */ lw $v0, %lo(gGameStatusPtr)($v0)
|
|
||||||
/* 805670 80244DF0 8C420140 */ lw $v0, 0x140($v0)
|
|
||||||
/* 805674 80244DF4 8C440020 */ lw $a0, 0x20($v0)
|
|
||||||
/* 805678 80244DF8 0C04D052 */ jal set_item_entity_flags
|
|
||||||
/* 80567C 80244DFC 24050040 */ addiu $a1, $zero, 0x40
|
|
||||||
.L80244E00:
|
|
||||||
/* 805680 80244E00 8FBF0010 */ lw $ra, 0x10($sp)
|
|
||||||
/* 805684 80244E04 24020002 */ addiu $v0, $zero, 2
|
|
||||||
/* 805688 80244E08 03E00008 */ jr $ra
|
|
||||||
/* 80568C 80244E0C 27BD0018 */ addiu $sp, $sp, 0x18
|
|
@ -1,8 +0,0 @@
|
|||||||
.set noat # allow manual use of $at
|
|
||||||
.set noreorder # don't insert nops after branches
|
|
||||||
|
|
||||||
glabel func_80245018_805898
|
|
||||||
/* 805898 80245018 3C018026 */ lui $at, %hi(D_80262F68)
|
|
||||||
/* 80589C 8024501C AC202F68 */ sw $zero, %lo(D_80262F68)($at)
|
|
||||||
/* 8058A0 80245020 03E00008 */ jr $ra
|
|
||||||
/* 8058A4 80245024 24020002 */ addiu $v0, $zero, 2
|
|
@ -1,15 +0,0 @@
|
|||||||
.set noat # allow manual use of $at
|
|
||||||
.set noreorder # don't insert nops after branches
|
|
||||||
|
|
||||||
glabel func_80245488_805D08
|
|
||||||
/* 805D08 80245488 27BDFFE8 */ addiu $sp, $sp, -0x18
|
|
||||||
/* 805D0C 8024548C AFBF0010 */ sw $ra, 0x10($sp)
|
|
||||||
/* 805D10 80245490 8C82000C */ lw $v0, 0xc($a0)
|
|
||||||
/* 805D14 80245494 0C0B1EAF */ jal evt_get_variable
|
|
||||||
/* 805D18 80245498 8C450000 */ lw $a1, ($v0)
|
|
||||||
/* 805D1C 8024549C 8FBF0010 */ lw $ra, 0x10($sp)
|
|
||||||
/* 805D20 802454A0 3C018026 */ lui $at, %hi(D_80258404_818C84)
|
|
||||||
/* 805D24 802454A4 AC228404 */ sw $v0, %lo(D_80258404_818C84)($at)
|
|
||||||
/* 805D28 802454A8 24020002 */ addiu $v0, $zero, 2
|
|
||||||
/* 805D2C 802454AC 03E00008 */ jr $ra
|
|
||||||
/* 805D30 802454B0 27BD0018 */ addiu $sp, $sp, 0x18
|
|
@ -1,51 +0,0 @@
|
|||||||
.set noat # allow manual use of $at
|
|
||||||
.set noreorder # don't insert nops after branches
|
|
||||||
|
|
||||||
glabel func_802463E0_806C60
|
|
||||||
/* 806C60 802463E0 27BDFFE8 */ addiu $sp, $sp, -0x18
|
|
||||||
/* 806C64 802463E4 AFBF0010 */ sw $ra, 0x10($sp)
|
|
||||||
/* 806C68 802463E8 0000202D */ daddu $a0, $zero, $zero
|
|
||||||
/* 806C6C 802463EC 3C05F840 */ lui $a1, 0xf840
|
|
||||||
/* 806C70 802463F0 0C0B1EAF */ jal evt_get_variable
|
|
||||||
/* 806C74 802463F4 34A55C84 */ ori $a1, $a1, 0x5c84
|
|
||||||
/* 806C78 802463F8 14400008 */ bnez $v0, .L8024641C
|
|
||||||
/* 806C7C 802463FC 0000202D */ daddu $a0, $zero, $zero
|
|
||||||
/* 806C80 80246400 3C028007 */ lui $v0, %hi(gGameStatusPtr)
|
|
||||||
/* 806C84 80246404 8C42419C */ lw $v0, %lo(gGameStatusPtr)($v0)
|
|
||||||
/* 806C88 80246408 8C420140 */ lw $v0, 0x140($v0)
|
|
||||||
/* 806C8C 8024640C 8C440000 */ lw $a0, ($v0)
|
|
||||||
/* 806C90 80246410 0C04D052 */ jal set_item_entity_flags
|
|
||||||
/* 806C94 80246414 24050040 */ addiu $a1, $zero, 0x40
|
|
||||||
/* 806C98 80246418 0000202D */ daddu $a0, $zero, $zero
|
|
||||||
.L8024641C:
|
|
||||||
/* 806C9C 8024641C 3C05F840 */ lui $a1, 0xf840
|
|
||||||
/* 806CA0 80246420 0C0B1EAF */ jal evt_get_variable
|
|
||||||
/* 806CA4 80246424 34A55C85 */ ori $a1, $a1, 0x5c85
|
|
||||||
/* 806CA8 80246428 14400008 */ bnez $v0, .L8024644C
|
|
||||||
/* 806CAC 8024642C 0000202D */ daddu $a0, $zero, $zero
|
|
||||||
/* 806CB0 80246430 3C028007 */ lui $v0, %hi(gGameStatusPtr)
|
|
||||||
/* 806CB4 80246434 8C42419C */ lw $v0, %lo(gGameStatusPtr)($v0)
|
|
||||||
/* 806CB8 80246438 8C420140 */ lw $v0, 0x140($v0)
|
|
||||||
/* 806CBC 8024643C 8C440010 */ lw $a0, 0x10($v0)
|
|
||||||
/* 806CC0 80246440 0C04D052 */ jal set_item_entity_flags
|
|
||||||
/* 806CC4 80246444 24050040 */ addiu $a1, $zero, 0x40
|
|
||||||
/* 806CC8 80246448 0000202D */ daddu $a0, $zero, $zero
|
|
||||||
.L8024644C:
|
|
||||||
/* 806CCC 8024644C 3C05F840 */ lui $a1, 0xf840
|
|
||||||
/* 806CD0 80246450 0C0B1EAF */ jal evt_get_variable
|
|
||||||
/* 806CD4 80246454 34A55C86 */ ori $a1, $a1, 0x5c86
|
|
||||||
/* 806CD8 80246458 14400007 */ bnez $v0, .L80246478
|
|
||||||
/* 806CDC 8024645C 00000000 */ nop
|
|
||||||
/* 806CE0 80246460 3C028007 */ lui $v0, %hi(gGameStatusPtr)
|
|
||||||
/* 806CE4 80246464 8C42419C */ lw $v0, %lo(gGameStatusPtr)($v0)
|
|
||||||
/* 806CE8 80246468 8C420140 */ lw $v0, 0x140($v0)
|
|
||||||
/* 806CEC 8024646C 8C440020 */ lw $a0, 0x20($v0)
|
|
||||||
/* 806CF0 80246470 0C04D052 */ jal set_item_entity_flags
|
|
||||||
/* 806CF4 80246474 24050040 */ addiu $a1, $zero, 0x40
|
|
||||||
.L80246478:
|
|
||||||
/* 806CF8 80246478 8FBF0010 */ lw $ra, 0x10($sp)
|
|
||||||
/* 806CFC 8024647C 24020002 */ addiu $v0, $zero, 2
|
|
||||||
/* 806D00 80246480 03E00008 */ jr $ra
|
|
||||||
/* 806D04 80246484 27BD0018 */ addiu $sp, $sp, 0x18
|
|
||||||
/* 806D08 80246488 00000000 */ nop
|
|
||||||
/* 806D0C 8024648C 00000000 */ nop
|
|
@ -1,251 +0,0 @@
|
|||||||
.set noat # allow manual use of $at
|
|
||||||
.set noreorder # don't insert nops after branches
|
|
||||||
|
|
||||||
glabel func_80240000_BD3870
|
|
||||||
/* BD3870 80240000 27BDFF10 */ addiu $sp, $sp, -0xf0
|
|
||||||
/* BD3874 80240004 0000202D */ daddu $a0, $zero, $zero
|
|
||||||
/* BD3878 80240008 3C05FD05 */ lui $a1, 0xfd05
|
|
||||||
/* BD387C 8024000C AFBF00DC */ sw $ra, 0xdc($sp)
|
|
||||||
/* BD3880 80240010 AFB600D8 */ sw $s6, 0xd8($sp)
|
|
||||||
/* BD3884 80240014 AFB500D4 */ sw $s5, 0xd4($sp)
|
|
||||||
/* BD3888 80240018 AFB400D0 */ sw $s4, 0xd0($sp)
|
|
||||||
/* BD388C 8024001C AFB300CC */ sw $s3, 0xcc($sp)
|
|
||||||
/* BD3890 80240020 AFB200C8 */ sw $s2, 0xc8($sp)
|
|
||||||
/* BD3894 80240024 AFB100C4 */ sw $s1, 0xc4($sp)
|
|
||||||
/* BD3898 80240028 AFB000C0 */ sw $s0, 0xc0($sp)
|
|
||||||
/* BD389C 8024002C F7B600E8 */ sdc1 $f22, 0xe8($sp)
|
|
||||||
/* BD38A0 80240030 F7B400E0 */ sdc1 $f20, 0xe0($sp)
|
|
||||||
/* BD38A4 80240034 0C0B1EAF */ jal evt_get_variable
|
|
||||||
/* BD38A8 80240038 34A50F8A */ ori $a1, $a1, 0xf8a
|
|
||||||
/* BD38AC 8024003C 3C07E300 */ lui $a3, 0xe300
|
|
||||||
/* BD38B0 80240040 34E70A01 */ ori $a3, $a3, 0xa01
|
|
||||||
/* BD38B4 80240044 3C08D9C0 */ lui $t0, 0xd9c0
|
|
||||||
/* BD38B8 80240048 3508F9FB */ ori $t0, $t0, 0xf9fb
|
|
||||||
/* BD38BC 8024004C 3C0AD9FF */ lui $t2, 0xd9ff
|
|
||||||
/* BD38C0 80240050 354AFFFF */ ori $t2, $t2, 0xffff
|
|
||||||
/* BD38C4 80240054 3C090020 */ lui $t1, 0x20
|
|
||||||
/* BD38C8 80240058 35290005 */ ori $t1, $t1, 5
|
|
||||||
/* BD38CC 8024005C 3C0BD700 */ lui $t3, 0xd700
|
|
||||||
/* BD38D0 80240060 356B0002 */ ori $t3, $t3, 2
|
|
||||||
/* BD38D4 80240064 3C0CE300 */ lui $t4, 0xe300
|
|
||||||
/* BD38D8 80240068 358C0F00 */ ori $t4, $t4, 0xf00
|
|
||||||
/* BD38DC 8024006C 3C0DE300 */ lui $t5, 0xe300
|
|
||||||
/* BD38E0 80240070 35AD0C00 */ ori $t5, $t5, 0xc00
|
|
||||||
/* BD38E4 80240074 3C0EE300 */ lui $t6, 0xe300
|
|
||||||
/* BD38E8 80240078 35CE1201 */ ori $t6, $t6, 0x1201
|
|
||||||
/* BD38EC 8024007C 3C0FE300 */ lui $t7, 0xe300
|
|
||||||
/* BD38F0 80240080 35EF1801 */ ori $t7, $t7, 0x1801
|
|
||||||
/* BD38F4 80240084 3C10E300 */ lui $s0, 0xe300
|
|
||||||
/* BD38F8 80240088 36100D01 */ ori $s0, $s0, 0xd01
|
|
||||||
/* BD38FC 8024008C 3C12E300 */ lui $s2, 0xe300
|
|
||||||
/* BD3900 80240090 36521402 */ ori $s2, $s2, 0x1402
|
|
||||||
/* BD3904 80240094 3C14E300 */ lui $s4, 0xe300
|
|
||||||
/* BD3908 80240098 36941700 */ ori $s4, $s4, 0x1700
|
|
||||||
/* BD390C 8024009C 3C15E200 */ lui $s5, 0xe200
|
|
||||||
/* BD3910 802400A0 36B51E01 */ ori $s5, $s5, 0x1e01
|
|
||||||
/* BD3914 802400A4 27B30040 */ addiu $s3, $sp, 0x40
|
|
||||||
/* BD3918 802400A8 0260202D */ daddu $a0, $s3, $zero
|
|
||||||
/* BD391C 802400AC 3C160001 */ lui $s6, 1
|
|
||||||
/* BD3920 802400B0 3C11800A */ lui $s1, %hi(gMasterGfxPos)
|
|
||||||
/* BD3924 802400B4 2631A66C */ addiu $s1, $s1, %lo(gMasterGfxPos)
|
|
||||||
/* BD3928 802400B8 36D61630 */ ori $s6, $s6, 0x1630
|
|
||||||
/* BD392C 802400BC 3C05E700 */ lui $a1, 0xe700
|
|
||||||
/* BD3930 802400C0 8E230000 */ lw $v1, ($s1)
|
|
||||||
/* BD3934 802400C4 4480A000 */ mtc1 $zero, $f20
|
|
||||||
/* BD3938 802400C8 0060302D */ daddu $a2, $v1, $zero
|
|
||||||
/* BD393C 802400CC 24630008 */ addiu $v1, $v1, 8
|
|
||||||
/* BD3940 802400D0 AE230000 */ sw $v1, ($s1)
|
|
||||||
/* BD3944 802400D4 ACC50000 */ sw $a1, ($a2)
|
|
||||||
/* BD3948 802400D8 24650008 */ addiu $a1, $v1, 8
|
|
||||||
/* BD394C 802400DC ACC00004 */ sw $zero, 4($a2)
|
|
||||||
/* BD3950 802400E0 AE250000 */ sw $a1, ($s1)
|
|
||||||
/* BD3954 802400E4 24650010 */ addiu $a1, $v1, 0x10
|
|
||||||
/* BD3958 802400E8 AC670000 */ sw $a3, ($v1)
|
|
||||||
/* BD395C 802400EC AC600004 */ sw $zero, 4($v1)
|
|
||||||
/* BD3960 802400F0 AE250000 */ sw $a1, ($s1)
|
|
||||||
/* BD3964 802400F4 24650018 */ addiu $a1, $v1, 0x18
|
|
||||||
/* BD3968 802400F8 AC680008 */ sw $t0, 8($v1)
|
|
||||||
/* BD396C 802400FC AC60000C */ sw $zero, 0xc($v1)
|
|
||||||
/* BD3970 80240100 AE250000 */ sw $a1, ($s1)
|
|
||||||
/* BD3974 80240104 24650020 */ addiu $a1, $v1, 0x20
|
|
||||||
/* BD3978 80240108 AC6A0010 */ sw $t2, 0x10($v1)
|
|
||||||
/* BD397C 8024010C AC690014 */ sw $t1, 0x14($v1)
|
|
||||||
/* BD3980 80240110 AE250000 */ sw $a1, ($s1)
|
|
||||||
/* BD3984 80240114 2405FFFF */ addiu $a1, $zero, -1
|
|
||||||
/* BD3988 80240118 AC65001C */ sw $a1, 0x1c($v1)
|
|
||||||
/* BD398C 8024011C 24650028 */ addiu $a1, $v1, 0x28
|
|
||||||
/* BD3990 80240120 AC6B0018 */ sw $t3, 0x18($v1)
|
|
||||||
/* BD3994 80240124 AE250000 */ sw $a1, ($s1)
|
|
||||||
/* BD3998 80240128 24650030 */ addiu $a1, $v1, 0x30
|
|
||||||
/* BD399C 8024012C AC6C0020 */ sw $t4, 0x20($v1)
|
|
||||||
/* BD39A0 80240130 AC600024 */ sw $zero, 0x24($v1)
|
|
||||||
/* BD39A4 80240134 AE250000 */ sw $a1, ($s1)
|
|
||||||
/* BD39A8 80240138 3C050008 */ lui $a1, 8
|
|
||||||
/* BD39AC 8024013C AC65002C */ sw $a1, 0x2c($v1)
|
|
||||||
/* BD39B0 80240140 24650038 */ addiu $a1, $v1, 0x38
|
|
||||||
/* BD39B4 80240144 AC6D0028 */ sw $t5, 0x28($v1)
|
|
||||||
/* BD39B8 80240148 AE250000 */ sw $a1, ($s1)
|
|
||||||
/* BD39BC 8024014C 24052000 */ addiu $a1, $zero, 0x2000
|
|
||||||
/* BD39C0 80240150 AC650034 */ sw $a1, 0x34($v1)
|
|
||||||
/* BD39C4 80240154 24650040 */ addiu $a1, $v1, 0x40
|
|
||||||
/* BD39C8 80240158 AC6E0030 */ sw $t6, 0x30($v1)
|
|
||||||
/* BD39CC 8024015C AE250000 */ sw $a1, ($s1)
|
|
||||||
/* BD39D0 80240160 240500C0 */ addiu $a1, $zero, 0xc0
|
|
||||||
/* BD39D4 80240164 AC65003C */ sw $a1, 0x3c($v1)
|
|
||||||
/* BD39D8 80240168 24650048 */ addiu $a1, $v1, 0x48
|
|
||||||
/* BD39DC 8024016C AC6F0038 */ sw $t7, 0x38($v1)
|
|
||||||
/* BD39E0 80240170 AE250000 */ sw $a1, ($s1)
|
|
||||||
/* BD39E4 80240174 24650050 */ addiu $a1, $v1, 0x50
|
|
||||||
/* BD39E8 80240178 AC700040 */ sw $s0, 0x40($v1)
|
|
||||||
/* BD39EC 8024017C AC600044 */ sw $zero, 0x44($v1)
|
|
||||||
/* BD39F0 80240180 AE250000 */ sw $a1, ($s1)
|
|
||||||
/* BD39F4 80240184 24050C00 */ addiu $a1, $zero, 0xc00
|
|
||||||
/* BD39F8 80240188 AC720048 */ sw $s2, 0x48($v1)
|
|
||||||
/* BD39FC 8024018C 0040902D */ daddu $s2, $v0, $zero
|
|
||||||
/* BD3A00 80240190 24620058 */ addiu $v0, $v1, 0x58
|
|
||||||
/* BD3A04 80240194 AC65004C */ sw $a1, 0x4c($v1)
|
|
||||||
/* BD3A08 80240198 AC740050 */ sw $s4, 0x50($v1)
|
|
||||||
/* BD3A0C 8024019C AC600054 */ sw $zero, 0x54($v1)
|
|
||||||
/* BD3A10 802401A0 AC750058 */ sw $s5, 0x58($v1)
|
|
||||||
/* BD3A14 802401A4 AC60005C */ sw $zero, 0x5c($v1)
|
|
||||||
/* BD3A18 802401A8 8E450010 */ lw $a1, 0x10($s2)
|
|
||||||
/* BD3A1C 802401AC 8E460014 */ lw $a2, 0x14($s2)
|
|
||||||
/* BD3A20 802401B0 8E470018 */ lw $a3, 0x18($s2)
|
|
||||||
/* BD3A24 802401B4 24630060 */ addiu $v1, $v1, 0x60
|
|
||||||
/* BD3A28 802401B8 AE220000 */ sw $v0, ($s1)
|
|
||||||
/* BD3A2C 802401BC 0C019E40 */ jal guTranslateF
|
|
||||||
/* BD3A30 802401C0 AE230000 */ sw $v1, ($s1)
|
|
||||||
/* BD3A34 802401C4 27B00080 */ addiu $s0, $sp, 0x80
|
|
||||||
/* BD3A38 802401C8 E7B40010 */ swc1 $f20, 0x10($sp)
|
|
||||||
/* BD3A3C 802401CC 8E450020 */ lw $a1, 0x20($s2)
|
|
||||||
/* BD3A40 802401D0 3C013F80 */ lui $at, 0x3f80
|
|
||||||
/* BD3A44 802401D4 4481B000 */ mtc1 $at, $f22
|
|
||||||
/* BD3A48 802401D8 4406A000 */ mfc1 $a2, $f20
|
|
||||||
/* BD3A4C 802401DC 4407B000 */ mfc1 $a3, $f22
|
|
||||||
/* BD3A50 802401E0 0C019EC8 */ jal guRotateF
|
|
||||||
/* BD3A54 802401E4 0200202D */ daddu $a0, $s0, $zero
|
|
||||||
/* BD3A58 802401E8 0200202D */ daddu $a0, $s0, $zero
|
|
||||||
/* BD3A5C 802401EC 0260282D */ daddu $a1, $s3, $zero
|
|
||||||
/* BD3A60 802401F0 0C019D80 */ jal guMtxCatF
|
|
||||||
/* BD3A64 802401F4 0260302D */ daddu $a2, $s3, $zero
|
|
||||||
/* BD3A68 802401F8 E7B60010 */ swc1 $f22, 0x10($sp)
|
|
||||||
/* BD3A6C 802401FC 8E450024 */ lw $a1, 0x24($s2)
|
|
||||||
/* BD3A70 80240200 4406A000 */ mfc1 $a2, $f20
|
|
||||||
/* BD3A74 80240204 4407A000 */ mfc1 $a3, $f20
|
|
||||||
/* BD3A78 80240208 0C019EC8 */ jal guRotateF
|
|
||||||
/* BD3A7C 8024020C 0200202D */ daddu $a0, $s0, $zero
|
|
||||||
/* BD3A80 80240210 0200202D */ daddu $a0, $s0, $zero
|
|
||||||
/* BD3A84 80240214 0260282D */ daddu $a1, $s3, $zero
|
|
||||||
/* BD3A88 80240218 0C019D80 */ jal guMtxCatF
|
|
||||||
/* BD3A8C 8024021C 0260302D */ daddu $a2, $s3, $zero
|
|
||||||
/* BD3A90 80240220 E7B40010 */ swc1 $f20, 0x10($sp)
|
|
||||||
/* BD3A94 80240224 8E45001C */ lw $a1, 0x1c($s2)
|
|
||||||
/* BD3A98 80240228 4406B000 */ mfc1 $a2, $f22
|
|
||||||
/* BD3A9C 8024022C 4407A000 */ mfc1 $a3, $f20
|
|
||||||
/* BD3AA0 80240230 0C019EC8 */ jal guRotateF
|
|
||||||
/* BD3AA4 80240234 0200202D */ daddu $a0, $s0, $zero
|
|
||||||
/* BD3AA8 80240238 0200202D */ daddu $a0, $s0, $zero
|
|
||||||
/* BD3AAC 8024023C 0260282D */ daddu $a1, $s3, $zero
|
|
||||||
/* BD3AB0 80240240 0C019D80 */ jal guMtxCatF
|
|
||||||
/* BD3AB4 80240244 0260302D */ daddu $a2, $s3, $zero
|
|
||||||
/* BD3AB8 80240248 8E450028 */ lw $a1, 0x28($s2)
|
|
||||||
/* BD3ABC 8024024C 8E46002C */ lw $a2, 0x2c($s2)
|
|
||||||
/* BD3AC0 80240250 8E470030 */ lw $a3, 0x30($s2)
|
|
||||||
/* BD3AC4 80240254 0C019DF0 */ jal guScaleF
|
|
||||||
/* BD3AC8 80240258 0200202D */ daddu $a0, $s0, $zero
|
|
||||||
/* BD3ACC 8024025C 0200202D */ daddu $a0, $s0, $zero
|
|
||||||
/* BD3AD0 80240260 0260282D */ daddu $a1, $s3, $zero
|
|
||||||
/* BD3AD4 80240264 0C019D80 */ jal guMtxCatF
|
|
||||||
/* BD3AD8 80240268 0260302D */ daddu $a2, $s3, $zero
|
|
||||||
/* BD3ADC 8024026C 0260202D */ daddu $a0, $s3, $zero
|
|
||||||
/* BD3AE0 80240270 3C108007 */ lui $s0, %hi(gMatrixListPos)
|
|
||||||
/* BD3AE4 80240274 261041F0 */ addiu $s0, $s0, %lo(gMatrixListPos)
|
|
||||||
/* BD3AE8 80240278 3C14800A */ lui $s4, %hi(gDisplayContext)
|
|
||||||
/* BD3AEC 8024027C 2694A674 */ addiu $s4, $s4, %lo(gDisplayContext)
|
|
||||||
/* BD3AF0 80240280 96050000 */ lhu $a1, ($s0)
|
|
||||||
/* BD3AF4 80240284 8E820000 */ lw $v0, ($s4)
|
|
||||||
/* BD3AF8 80240288 00052980 */ sll $a1, $a1, 6
|
|
||||||
/* BD3AFC 8024028C 00B62821 */ addu $a1, $a1, $s6
|
|
||||||
/* BD3B00 80240290 0C019D40 */ jal guMtxF2L
|
|
||||||
/* BD3B04 80240294 00452821 */ addu $a1, $v0, $a1
|
|
||||||
/* BD3B08 80240298 3C02DA38 */ lui $v0, 0xda38
|
|
||||||
/* BD3B0C 8024029C 34420002 */ ori $v0, $v0, 2
|
|
||||||
/* BD3B10 802402A0 27A40030 */ addiu $a0, $sp, 0x30
|
|
||||||
/* BD3B14 802402A4 8E270000 */ lw $a3, ($s1)
|
|
||||||
/* BD3B18 802402A8 96080000 */ lhu $t0, ($s0)
|
|
||||||
/* BD3B1C 802402AC 00E0282D */ daddu $a1, $a3, $zero
|
|
||||||
/* BD3B20 802402B0 ACA20000 */ sw $v0, ($a1)
|
|
||||||
/* BD3B24 802402B4 3102FFFF */ andi $v0, $t0, 0xffff
|
|
||||||
/* BD3B28 802402B8 00021180 */ sll $v0, $v0, 6
|
|
||||||
/* BD3B2C 802402BC 00561021 */ addu $v0, $v0, $s6
|
|
||||||
/* BD3B30 802402C0 8E830000 */ lw $v1, ($s4)
|
|
||||||
/* BD3B34 802402C4 24E70008 */ addiu $a3, $a3, 8
|
|
||||||
/* BD3B38 802402C8 00621821 */ addu $v1, $v1, $v0
|
|
||||||
/* BD3B3C 802402CC 3C028000 */ lui $v0, 0x8000
|
|
||||||
/* BD3B40 802402D0 00621821 */ addu $v1, $v1, $v0
|
|
||||||
/* BD3B44 802402D4 ACA30004 */ sw $v1, 4($a1)
|
|
||||||
/* BD3B48 802402D8 8E450008 */ lw $a1, 8($s2)
|
|
||||||
/* BD3B4C 802402DC 8E46000C */ lw $a2, 0xc($s2)
|
|
||||||
/* BD3B50 802402E0 25080001 */ addiu $t0, $t0, 1
|
|
||||||
/* BD3B54 802402E4 AE270000 */ sw $a3, ($s1)
|
|
||||||
/* BD3B58 802402E8 0C0B7811 */ jal spr_get_player_raster_info
|
|
||||||
/* BD3B5C 802402EC A6080000 */ sh $t0, ($s0)
|
|
||||||
/* BD3B60 802402F0 8FA30030 */ lw $v1, 0x30($sp)
|
|
||||||
/* BD3B64 802402F4 8FA40034 */ lw $a0, 0x34($sp)
|
|
||||||
/* BD3B68 802402F8 97A2003A */ lhu $v0, 0x3a($sp)
|
|
||||||
/* BD3B6C 802402FC 3C013F00 */ lui $at, 0x3f00
|
|
||||||
/* BD3B70 80240300 44811000 */ mtc1 $at, $f2
|
|
||||||
/* BD3B74 80240304 27A50018 */ addiu $a1, $sp, 0x18
|
|
||||||
/* BD3B78 80240308 A7A20020 */ sh $v0, 0x20($sp)
|
|
||||||
/* BD3B7C 8024030C 3042FFFF */ andi $v0, $v0, 0xffff
|
|
||||||
/* BD3B80 80240310 44820000 */ mtc1 $v0, $f0
|
|
||||||
/* BD3B84 80240314 00000000 */ nop
|
|
||||||
/* BD3B88 80240318 46800020 */ cvt.s.w $f0, $f0
|
|
||||||
/* BD3B8C 8024031C AFA30018 */ sw $v1, 0x18($sp)
|
|
||||||
/* BD3B90 80240320 AFA4001C */ sw $a0, 0x1c($sp)
|
|
||||||
/* BD3B94 80240324 E6400034 */ swc1 $f0, 0x34($s2)
|
|
||||||
/* BD3B98 80240328 97A2003E */ lhu $v0, 0x3e($sp)
|
|
||||||
/* BD3B9C 8024032C 0000302D */ daddu $a2, $zero, $zero
|
|
||||||
/* BD3BA0 80240330 A7A20022 */ sh $v0, 0x22($sp)
|
|
||||||
/* BD3BA4 80240334 3042FFFF */ andi $v0, $v0, 0xffff
|
|
||||||
/* BD3BA8 80240338 44820000 */ mtc1 $v0, $f0
|
|
||||||
/* BD3BAC 8024033C 00000000 */ nop
|
|
||||||
/* BD3BB0 80240340 46800020 */ cvt.s.w $f0, $f0
|
|
||||||
/* BD3BB4 80240344 E6400038 */ swc1 $f0, 0x38($s2)
|
|
||||||
/* BD3BB8 80240348 C7A00038 */ lwc1 $f0, 0x38($sp)
|
|
||||||
/* BD3BBC 8024034C 46800020 */ cvt.s.w $f0, $f0
|
|
||||||
/* BD3BC0 80240350 46020002 */ mul.s $f0, $f0, $f2
|
|
||||||
/* BD3BC4 80240354 00000000 */ nop
|
|
||||||
/* BD3BC8 80240358 97A3003E */ lhu $v1, 0x3e($sp)
|
|
||||||
/* BD3BCC 8024035C 240200FF */ addiu $v0, $zero, 0xff
|
|
||||||
/* BD3BD0 80240360 A3A20028 */ sb $v0, 0x28($sp)
|
|
||||||
/* BD3BD4 80240364 A7A30026 */ sh $v1, 0x26($sp)
|
|
||||||
/* BD3BD8 80240368 4600010D */ trunc.w.s $f4, $f0
|
|
||||||
/* BD3BDC 8024036C 44022000 */ mfc1 $v0, $f4
|
|
||||||
/* BD3BE0 80240370 00000000 */ nop
|
|
||||||
/* BD3BE4 80240374 00021023 */ negu $v0, $v0
|
|
||||||
/* BD3BE8 80240378 A7A20024 */ sh $v0, 0x24($sp)
|
|
||||||
/* BD3BEC 8024037C 8E440000 */ lw $a0, ($s2)
|
|
||||||
/* BD3BF0 80240380 0C04EBDC */ jal fold_appendGfx_component
|
|
||||||
/* BD3BF4 80240384 0260382D */ daddu $a3, $s3, $zero
|
|
||||||
/* BD3BF8 80240388 3C04D838 */ lui $a0, 0xd838
|
|
||||||
/* BD3BFC 8024038C 8E220000 */ lw $v0, ($s1)
|
|
||||||
/* BD3C00 80240390 34840002 */ ori $a0, $a0, 2
|
|
||||||
/* BD3C04 80240394 0040182D */ daddu $v1, $v0, $zero
|
|
||||||
/* BD3C08 80240398 24420008 */ addiu $v0, $v0, 8
|
|
||||||
/* BD3C0C 8024039C AE220000 */ sw $v0, ($s1)
|
|
||||||
/* BD3C10 802403A0 24020040 */ addiu $v0, $zero, 0x40
|
|
||||||
/* BD3C14 802403A4 AC640000 */ sw $a0, ($v1)
|
|
||||||
/* BD3C18 802403A8 AC620004 */ sw $v0, 4($v1)
|
|
||||||
/* BD3C1C 802403AC 8FBF00DC */ lw $ra, 0xdc($sp)
|
|
||||||
/* BD3C20 802403B0 8FB600D8 */ lw $s6, 0xd8($sp)
|
|
||||||
/* BD3C24 802403B4 8FB500D4 */ lw $s5, 0xd4($sp)
|
|
||||||
/* BD3C28 802403B8 8FB400D0 */ lw $s4, 0xd0($sp)
|
|
||||||
/* BD3C2C 802403BC 8FB300CC */ lw $s3, 0xcc($sp)
|
|
||||||
/* BD3C30 802403C0 8FB200C8 */ lw $s2, 0xc8($sp)
|
|
||||||
/* BD3C34 802403C4 8FB100C4 */ lw $s1, 0xc4($sp)
|
|
||||||
/* BD3C38 802403C8 8FB000C0 */ lw $s0, 0xc0($sp)
|
|
||||||
/* BD3C3C 802403CC D7B600E8 */ ldc1 $f22, 0xe8($sp)
|
|
||||||
/* BD3C40 802403D0 D7B400E0 */ ldc1 $f20, 0xe0($sp)
|
|
||||||
/* BD3C44 802403D4 03E00008 */ jr $ra
|
|
||||||
/* BD3C48 802403D8 27BD00F0 */ addiu $sp, $sp, 0xf0
|
|
@ -53,8 +53,8 @@ glabel func_802403DC_BD3C4C
|
|||||||
/* BD3D0C 8024049C 0C04E9C1 */ jal func_8013A704
|
/* BD3D0C 8024049C 0C04E9C1 */ jal func_8013A704
|
||||||
/* BD3D10 802404A0 E6020018 */ swc1 $f2, 0x18($s0)
|
/* BD3D10 802404A0 E6020018 */ swc1 $f2, 0x18($s0)
|
||||||
/* BD3D14 802404A4 0000202D */ daddu $a0, $zero, $zero
|
/* BD3D14 802404A4 0000202D */ daddu $a0, $zero, $zero
|
||||||
/* BD3D18 802404A8 3C058024 */ lui $a1, %hi(func_80240000_BD3870)
|
/* BD3D18 802404A8 3C058024 */ lui $a1, %hi(obk_08_UnkFoldFunc)
|
||||||
/* BD3D1C 802404AC 24A50000 */ addiu $a1, $a1, %lo(func_80240000_BD3870)
|
/* BD3D1C 802404AC 24A50000 */ addiu $a1, $a1, %lo(obk_08_UnkFoldFunc)
|
||||||
/* BD3D20 802404B0 0C048C56 */ jal create_generic_entity_world
|
/* BD3D20 802404B0 0C048C56 */ jal create_generic_entity_world
|
||||||
/* BD3D24 802404B4 AE020000 */ sw $v0, ($s0)
|
/* BD3D24 802404B4 AE020000 */ sw $v0, ($s0)
|
||||||
/* BD3D28 802404B8 0260202D */ daddu $a0, $s3, $zero
|
/* BD3D28 802404B8 0260202D */ daddu $a0, $s3, $zero
|
||||||
|
@ -1,224 +0,0 @@
|
|||||||
.set noat # allow manual use of $at
|
|
||||||
.set noreorder # don't insert nops after branches
|
|
||||||
|
|
||||||
glabel func_802828DC
|
|
||||||
/* 7E375C 802828DC 27BDFFC0 */ addiu $sp, $sp, -0x40
|
|
||||||
/* 7E3760 802828E0 AFB20018 */ sw $s2, 0x18($sp)
|
|
||||||
/* 7E3764 802828E4 0080902D */ daddu $s2, $a0, $zero
|
|
||||||
/* 7E3768 802828E8 AFBF0020 */ sw $ra, 0x20($sp)
|
|
||||||
/* 7E376C 802828EC AFB3001C */ sw $s3, 0x1c($sp)
|
|
||||||
/* 7E3770 802828F0 AFB10014 */ sw $s1, 0x14($sp)
|
|
||||||
/* 7E3774 802828F4 AFB00010 */ sw $s0, 0x10($sp)
|
|
||||||
/* 7E3778 802828F8 F7B80038 */ sdc1 $f24, 0x38($sp)
|
|
||||||
/* 7E377C 802828FC F7B60030 */ sdc1 $f22, 0x30($sp)
|
|
||||||
/* 7E3780 80282900 F7B40028 */ sdc1 $f20, 0x28($sp)
|
|
||||||
/* 7E3784 80282904 8E4400B0 */ lw $a0, 0xb0($s2)
|
|
||||||
/* 7E3788 80282908 0C04417A */ jal get_entity_by_index
|
|
||||||
/* 7E378C 8028290C 00A0802D */ daddu $s0, $a1, $zero
|
|
||||||
/* 7E3790 80282910 3C138011 */ lui $s3, %hi(gPlayerStatus)
|
|
||||||
/* 7E3794 80282914 2673EFC8 */ addiu $s3, $s3, %lo(gPlayerStatus)
|
|
||||||
/* 7E3798 80282918 1200001A */ beqz $s0, .L80282984
|
|
||||||
/* 7E379C 8028291C 0040882D */ daddu $s1, $v0, $zero
|
|
||||||
/* 7E37A0 80282920 AE400070 */ sw $zero, 0x70($s2)
|
|
||||||
/* 7E37A4 80282924 C6600028 */ lwc1 $f0, 0x28($s3)
|
|
||||||
/* 7E37A8 80282928 4600018D */ trunc.w.s $f6, $f0
|
|
||||||
/* 7E37AC 8028292C E6460084 */ swc1 $f6, 0x84($s2)
|
|
||||||
/* 7E37B0 80282930 C660002C */ lwc1 $f0, 0x2c($s3)
|
|
||||||
/* 7E37B4 80282934 4600018D */ trunc.w.s $f6, $f0
|
|
||||||
/* 7E37B8 80282938 E6460088 */ swc1 $f6, 0x88($s2)
|
|
||||||
/* 7E37BC 8028293C C6600030 */ lwc1 $f0, 0x30($s3)
|
|
||||||
/* 7E37C0 80282940 4600018D */ trunc.w.s $f6, $f0
|
|
||||||
/* 7E37C4 80282944 E646008C */ swc1 $f6, 0x8c($s2)
|
|
||||||
/* 7E37C8 80282948 C6200048 */ lwc1 $f0, 0x48($s1)
|
|
||||||
/* 7E37CC 8028294C 4600018D */ trunc.w.s $f6, $f0
|
|
||||||
/* 7E37D0 80282950 E6460090 */ swc1 $f6, 0x90($s2)
|
|
||||||
/* 7E37D4 80282954 C620004C */ lwc1 $f0, 0x4c($s1)
|
|
||||||
/* 7E37D8 80282958 4600018D */ trunc.w.s $f6, $f0
|
|
||||||
/* 7E37DC 8028295C E6460094 */ swc1 $f6, 0x94($s2)
|
|
||||||
/* 7E37E0 80282960 C6200050 */ lwc1 $f0, 0x50($s1)
|
|
||||||
/* 7E37E4 80282964 4600018D */ trunc.w.s $f6, $f0
|
|
||||||
/* 7E37E8 80282968 E6460098 */ swc1 $f6, 0x98($s2)
|
|
||||||
/* 7E37EC 8028296C C6200060 */ lwc1 $f0, 0x60($s1)
|
|
||||||
/* 7E37F0 80282970 4600018D */ trunc.w.s $f6, $f0
|
|
||||||
/* 7E37F4 80282974 E64600A8 */ swc1 $f6, 0xa8($s2)
|
|
||||||
/* 7E37F8 80282978 C6200068 */ lwc1 $f0, 0x68($s1)
|
|
||||||
/* 7E37FC 8028297C 4600018D */ trunc.w.s $f6, $f0
|
|
||||||
/* 7E3800 80282980 E64600B4 */ swc1 $f6, 0xb4($s2)
|
|
||||||
.L80282984:
|
|
||||||
/* 7E3804 80282984 8E420070 */ lw $v0, 0x70($s2)
|
|
||||||
/* 7E3808 80282988 00021080 */ sll $v0, $v0, 2
|
|
||||||
/* 7E380C 8028298C 3C018028 */ lui $at, %hi(D_80285640_7E64C0)
|
|
||||||
/* 7E3810 80282990 00220821 */ addu $at, $at, $v0
|
|
||||||
/* 7E3814 80282994 C4245640 */ lwc1 $f4, %lo(D_80285640_7E64C0)($at)
|
|
||||||
/* 7E3818 80282998 C642009C */ lwc1 $f2, 0x9c($s2)
|
|
||||||
/* 7E381C 8028299C 468010A0 */ cvt.s.w $f2, $f2
|
|
||||||
/* 7E3820 802829A0 46041082 */ mul.s $f2, $f2, $f4
|
|
||||||
/* 7E3824 802829A4 00000000 */ nop
|
|
||||||
/* 7E3828 802829A8 3C0141C8 */ lui $at, 0x41c8
|
|
||||||
/* 7E382C 802829AC 4481C000 */ mtc1 $at, $f24
|
|
||||||
/* 7E3830 802829B0 00000000 */ nop
|
|
||||||
/* 7E3834 802829B4 46181082 */ mul.s $f2, $f2, $f24
|
|
||||||
/* 7E3838 802829B8 00000000 */ nop
|
|
||||||
/* 7E383C 802829BC C6400084 */ lwc1 $f0, 0x84($s2)
|
|
||||||
/* 7E3840 802829C0 46800020 */ cvt.s.w $f0, $f0
|
|
||||||
/* 7E3844 802829C4 46020000 */ add.s $f0, $f0, $f2
|
|
||||||
/* 7E3848 802829C8 E6600028 */ swc1 $f0, 0x28($s3)
|
|
||||||
/* 7E384C 802829CC C64200A0 */ lwc1 $f2, 0xa0($s2)
|
|
||||||
/* 7E3850 802829D0 468010A0 */ cvt.s.w $f2, $f2
|
|
||||||
/* 7E3854 802829D4 46041082 */ mul.s $f2, $f2, $f4
|
|
||||||
/* 7E3858 802829D8 00000000 */ nop
|
|
||||||
/* 7E385C 802829DC 46181082 */ mul.s $f2, $f2, $f24
|
|
||||||
/* 7E3860 802829E0 00000000 */ nop
|
|
||||||
/* 7E3864 802829E4 C6400088 */ lwc1 $f0, 0x88($s2)
|
|
||||||
/* 7E3868 802829E8 46800020 */ cvt.s.w $f0, $f0
|
|
||||||
/* 7E386C 802829EC 46020000 */ add.s $f0, $f0, $f2
|
|
||||||
/* 7E3870 802829F0 E660002C */ swc1 $f0, 0x2c($s3)
|
|
||||||
/* 7E3874 802829F4 C64200A4 */ lwc1 $f2, 0xa4($s2)
|
|
||||||
/* 7E3878 802829F8 468010A0 */ cvt.s.w $f2, $f2
|
|
||||||
/* 7E387C 802829FC 46041082 */ mul.s $f2, $f2, $f4
|
|
||||||
/* 7E3880 80282A00 00000000 */ nop
|
|
||||||
/* 7E3884 80282A04 46181082 */ mul.s $f2, $f2, $f24
|
|
||||||
/* 7E3888 80282A08 00000000 */ nop
|
|
||||||
/* 7E388C 80282A0C C640008C */ lwc1 $f0, 0x8c($s2)
|
|
||||||
/* 7E3890 80282A10 46800020 */ cvt.s.w $f0, $f0
|
|
||||||
/* 7E3894 80282A14 46020000 */ add.s $f0, $f0, $f2
|
|
||||||
/* 7E3898 80282A18 E6600030 */ swc1 $f0, 0x30($s3)
|
|
||||||
/* 7E389C 80282A1C C642009C */ lwc1 $f2, 0x9c($s2)
|
|
||||||
/* 7E38A0 80282A20 468010A0 */ cvt.s.w $f2, $f2
|
|
||||||
/* 7E38A4 80282A24 46041082 */ mul.s $f2, $f2, $f4
|
|
||||||
/* 7E38A8 80282A28 00000000 */ nop
|
|
||||||
/* 7E38AC 80282A2C 46181082 */ mul.s $f2, $f2, $f24
|
|
||||||
/* 7E38B0 80282A30 00000000 */ nop
|
|
||||||
/* 7E38B4 80282A34 C6400090 */ lwc1 $f0, 0x90($s2)
|
|
||||||
/* 7E38B8 80282A38 46800020 */ cvt.s.w $f0, $f0
|
|
||||||
/* 7E38BC 80282A3C 46020000 */ add.s $f0, $f0, $f2
|
|
||||||
/* 7E38C0 80282A40 E6200048 */ swc1 $f0, 0x48($s1)
|
|
||||||
/* 7E38C4 80282A44 C64200A0 */ lwc1 $f2, 0xa0($s2)
|
|
||||||
/* 7E38C8 80282A48 468010A0 */ cvt.s.w $f2, $f2
|
|
||||||
/* 7E38CC 80282A4C 46041082 */ mul.s $f2, $f2, $f4
|
|
||||||
/* 7E38D0 80282A50 00000000 */ nop
|
|
||||||
/* 7E38D4 80282A54 46181082 */ mul.s $f2, $f2, $f24
|
|
||||||
/* 7E38D8 80282A58 00000000 */ nop
|
|
||||||
/* 7E38DC 80282A5C C6400094 */ lwc1 $f0, 0x94($s2)
|
|
||||||
/* 7E38E0 80282A60 46800020 */ cvt.s.w $f0, $f0
|
|
||||||
/* 7E38E4 80282A64 46020000 */ add.s $f0, $f0, $f2
|
|
||||||
/* 7E38E8 80282A68 E620004C */ swc1 $f0, 0x4c($s1)
|
|
||||||
/* 7E38EC 80282A6C C64200A4 */ lwc1 $f2, 0xa4($s2)
|
|
||||||
/* 7E38F0 80282A70 468010A0 */ cvt.s.w $f2, $f2
|
|
||||||
/* 7E38F4 80282A74 46041082 */ mul.s $f2, $f2, $f4
|
|
||||||
/* 7E38F8 80282A78 00000000 */ nop
|
|
||||||
/* 7E38FC 80282A7C 46181082 */ mul.s $f2, $f2, $f24
|
|
||||||
/* 7E3900 80282A80 00000000 */ nop
|
|
||||||
/* 7E3904 80282A84 C6400098 */ lwc1 $f0, 0x98($s2)
|
|
||||||
/* 7E3908 80282A88 46800020 */ cvt.s.w $f0, $f0
|
|
||||||
/* 7E390C 80282A8C 46020000 */ add.s $f0, $f0, $f2
|
|
||||||
/* 7E3910 80282A90 E6200050 */ swc1 $f0, 0x50($s1)
|
|
||||||
/* 7E3914 80282A94 8E420070 */ lw $v0, 0x70($s2)
|
|
||||||
/* 7E3918 80282A98 2842000C */ slti $v0, $v0, 0xc
|
|
||||||
/* 7E391C 80282A9C 1040004D */ beqz $v0, .L80282BD4
|
|
||||||
/* 7E3920 80282AA0 00000000 */ nop
|
|
||||||
/* 7E3924 80282AA4 C642009C */ lwc1 $f2, 0x9c($s2)
|
|
||||||
/* 7E3928 80282AA8 468010A0 */ cvt.s.w $f2, $f2
|
|
||||||
/* 7E392C 80282AAC 46041082 */ mul.s $f2, $f2, $f4
|
|
||||||
/* 7E3930 80282AB0 00000000 */ nop
|
|
||||||
/* 7E3934 80282AB4 3C01C2B4 */ lui $at, 0xc2b4
|
|
||||||
/* 7E3938 80282AB8 44810000 */ mtc1 $at, $f0
|
|
||||||
/* 7E393C 80282ABC 00000000 */ nop
|
|
||||||
/* 7E3940 80282AC0 46001082 */ mul.s $f2, $f2, $f0
|
|
||||||
/* 7E3944 80282AC4 00000000 */ nop
|
|
||||||
/* 7E3948 80282AC8 C64000B4 */ lwc1 $f0, 0xb4($s2)
|
|
||||||
/* 7E394C 80282ACC 46800020 */ cvt.s.w $f0, $f0
|
|
||||||
/* 7E3950 80282AD0 46020000 */ add.s $f0, $f0, $f2
|
|
||||||
/* 7E3954 80282AD4 E6200068 */ swc1 $f0, 0x68($s1)
|
|
||||||
/* 7E3958 80282AD8 C64200A4 */ lwc1 $f2, 0xa4($s2)
|
|
||||||
/* 7E395C 80282ADC 468010A0 */ cvt.s.w $f2, $f2
|
|
||||||
/* 7E3960 80282AE0 46041082 */ mul.s $f2, $f2, $f4
|
|
||||||
/* 7E3964 80282AE4 00000000 */ nop
|
|
||||||
/* 7E3968 80282AE8 3C0142B4 */ lui $at, 0x42b4
|
|
||||||
/* 7E396C 80282AEC 4481B000 */ mtc1 $at, $f22
|
|
||||||
/* 7E3970 80282AF0 00000000 */ nop
|
|
||||||
/* 7E3974 80282AF4 46161082 */ mul.s $f2, $f2, $f22
|
|
||||||
/* 7E3978 80282AF8 00000000 */ nop
|
|
||||||
/* 7E397C 80282AFC 46162582 */ mul.s $f22, $f4, $f22
|
|
||||||
/* 7E3980 80282B00 00000000 */ nop
|
|
||||||
/* 7E3984 80282B04 C64000A8 */ lwc1 $f0, 0xa8($s2)
|
|
||||||
/* 7E3988 80282B08 46800020 */ cvt.s.w $f0, $f0
|
|
||||||
/* 7E398C 80282B0C 46020000 */ add.s $f0, $f0, $f2
|
|
||||||
/* 7E3990 80282B10 4600B306 */ mov.s $f12, $f22
|
|
||||||
/* 7E3994 80282B14 0C00A8BB */ jal sin_deg
|
|
||||||
/* 7E3998 80282B18 E6200060 */ swc1 $f0, 0x60($s1)
|
|
||||||
/* 7E399C 80282B1C 46180002 */ mul.s $f0, $f0, $f24
|
|
||||||
/* 7E39A0 80282B20 00000000 */ nop
|
|
||||||
/* 7E39A4 80282B24 3C013FE0 */ lui $at, 0x3fe0
|
|
||||||
/* 7E39A8 80282B28 4481A800 */ mtc1 $at, $f21
|
|
||||||
/* 7E39AC 80282B2C 4480A000 */ mtc1 $zero, $f20
|
|
||||||
/* 7E39B0 80282B30 46000021 */ cvt.d.s $f0, $f0
|
|
||||||
/* 7E39B4 80282B34 46340002 */ mul.d $f0, $f0, $f20
|
|
||||||
/* 7E39B8 80282B38 00000000 */ nop
|
|
||||||
/* 7E39BC 80282B3C C622004C */ lwc1 $f2, 0x4c($s1)
|
|
||||||
/* 7E39C0 80282B40 460010A1 */ cvt.d.s $f2, $f2
|
|
||||||
/* 7E39C4 80282B44 46201080 */ add.d $f2, $f2, $f0
|
|
||||||
/* 7E39C8 80282B48 4600B306 */ mov.s $f12, $f22
|
|
||||||
/* 7E39CC 80282B4C 462010A0 */ cvt.s.d $f2, $f2
|
|
||||||
/* 7E39D0 80282B50 0C00A8BB */ jal sin_deg
|
|
||||||
/* 7E39D4 80282B54 E622004C */ swc1 $f2, 0x4c($s1)
|
|
||||||
/* 7E39D8 80282B58 C642009C */ lwc1 $f2, 0x9c($s2)
|
|
||||||
/* 7E39DC 80282B5C 468010A0 */ cvt.s.w $f2, $f2
|
|
||||||
/* 7E39E0 80282B60 46001082 */ mul.s $f2, $f2, $f0
|
|
||||||
/* 7E39E4 80282B64 00000000 */ nop
|
|
||||||
/* 7E39E8 80282B68 46181082 */ mul.s $f2, $f2, $f24
|
|
||||||
/* 7E39EC 80282B6C 00000000 */ nop
|
|
||||||
/* 7E39F0 80282B70 460010A1 */ cvt.d.s $f2, $f2
|
|
||||||
/* 7E39F4 80282B74 46341082 */ mul.d $f2, $f2, $f20
|
|
||||||
/* 7E39F8 80282B78 00000000 */ nop
|
|
||||||
/* 7E39FC 80282B7C C6200048 */ lwc1 $f0, 0x48($s1)
|
|
||||||
/* 7E3A00 80282B80 46000021 */ cvt.d.s $f0, $f0
|
|
||||||
/* 7E3A04 80282B84 46220001 */ sub.d $f0, $f0, $f2
|
|
||||||
/* 7E3A08 80282B88 4600B306 */ mov.s $f12, $f22
|
|
||||||
/* 7E3A0C 80282B8C 46200020 */ cvt.s.d $f0, $f0
|
|
||||||
/* 7E3A10 80282B90 0C00A8BB */ jal sin_deg
|
|
||||||
/* 7E3A14 80282B94 E6200048 */ swc1 $f0, 0x48($s1)
|
|
||||||
/* 7E3A18 80282B98 C64200A4 */ lwc1 $f2, 0xa4($s2)
|
|
||||||
/* 7E3A1C 80282B9C 468010A0 */ cvt.s.w $f2, $f2
|
|
||||||
/* 7E3A20 80282BA0 46001082 */ mul.s $f2, $f2, $f0
|
|
||||||
/* 7E3A24 80282BA4 00000000 */ nop
|
|
||||||
/* 7E3A28 80282BA8 46181082 */ mul.s $f2, $f2, $f24
|
|
||||||
/* 7E3A2C 80282BAC 00000000 */ nop
|
|
||||||
/* 7E3A30 80282BB0 460010A1 */ cvt.d.s $f2, $f2
|
|
||||||
/* 7E3A34 80282BB4 46341082 */ mul.d $f2, $f2, $f20
|
|
||||||
/* 7E3A38 80282BB8 00000000 */ nop
|
|
||||||
/* 7E3A3C 80282BBC C6200050 */ lwc1 $f0, 0x50($s1)
|
|
||||||
/* 7E3A40 80282BC0 46000021 */ cvt.d.s $f0, $f0
|
|
||||||
/* 7E3A44 80282BC4 46220001 */ sub.d $f0, $f0, $f2
|
|
||||||
/* 7E3A48 80282BC8 46200020 */ cvt.s.d $f0, $f0
|
|
||||||
/* 7E3A4C 80282BCC 080A0AF9 */ j .L80282BE4
|
|
||||||
/* 7E3A50 80282BD0 E6200050 */ swc1 $f0, 0x50($s1)
|
|
||||||
.L80282BD4:
|
|
||||||
/* 7E3A54 80282BD4 44800000 */ mtc1 $zero, $f0
|
|
||||||
/* 7E3A58 80282BD8 00000000 */ nop
|
|
||||||
/* 7E3A5C 80282BDC E6200060 */ swc1 $f0, 0x60($s1)
|
|
||||||
/* 7E3A60 80282BE0 E6200068 */ swc1 $f0, 0x68($s1)
|
|
||||||
.L80282BE4:
|
|
||||||
/* 7E3A64 80282BE4 C6600028 */ lwc1 $f0, 0x28($s3)
|
|
||||||
/* 7E3A68 80282BE8 C662002C */ lwc1 $f2, 0x2c($s3)
|
|
||||||
/* 7E3A6C 80282BEC C6640030 */ lwc1 $f4, 0x30($s3)
|
|
||||||
/* 7E3A70 80282BF0 3C02800B */ lui $v0, %hi(gCameras)
|
|
||||||
/* 7E3A74 80282BF4 24421D80 */ addiu $v0, $v0, %lo(gCameras)
|
|
||||||
/* 7E3A78 80282BF8 E4400060 */ swc1 $f0, 0x60($v0)
|
|
||||||
/* 7E3A7C 80282BFC E4420064 */ swc1 $f2, 0x64($v0)
|
|
||||||
/* 7E3A80 80282C00 E4440068 */ swc1 $f4, 0x68($v0)
|
|
||||||
/* 7E3A84 80282C04 8E430070 */ lw $v1, 0x70($s2)
|
|
||||||
/* 7E3A88 80282C08 24630001 */ addiu $v1, $v1, 1
|
|
||||||
/* 7E3A8C 80282C0C 3862000D */ xori $v0, $v1, 0xd
|
|
||||||
/* 7E3A90 80282C10 AE430070 */ sw $v1, 0x70($s2)
|
|
||||||
/* 7E3A94 80282C14 8FBF0020 */ lw $ra, 0x20($sp)
|
|
||||||
/* 7E3A98 80282C18 8FB3001C */ lw $s3, 0x1c($sp)
|
|
||||||
/* 7E3A9C 80282C1C 8FB20018 */ lw $s2, 0x18($sp)
|
|
||||||
/* 7E3AA0 80282C20 8FB10014 */ lw $s1, 0x14($sp)
|
|
||||||
/* 7E3AA4 80282C24 8FB00010 */ lw $s0, 0x10($sp)
|
|
||||||
/* 7E3AA8 80282C28 D7B80038 */ ldc1 $f24, 0x38($sp)
|
|
||||||
/* 7E3AAC 80282C2C D7B60030 */ ldc1 $f22, 0x30($sp)
|
|
||||||
/* 7E3AB0 80282C30 D7B40028 */ ldc1 $f20, 0x28($sp)
|
|
||||||
/* 7E3AB4 80282C34 2C420001 */ sltiu $v0, $v0, 1
|
|
||||||
/* 7E3AB8 80282C38 03E00008 */ jr $ra
|
|
||||||
/* 7E3ABC 80282C3C 27BD0040 */ addiu $sp, $sp, 0x40
|
|
@ -1,85 +0,0 @@
|
|||||||
.set noat # allow manual use of $at
|
|
||||||
.set noreorder # don't insert nops after branches
|
|
||||||
|
|
||||||
glabel EnterPlayerPostPipe
|
|
||||||
/* 7E48D0 80283A50 27BDFFE0 */ addiu $sp, $sp, -0x20
|
|
||||||
/* 7E48D4 80283A54 AFB20018 */ sw $s2, 0x18($sp)
|
|
||||||
/* 7E48D8 80283A58 0080902D */ daddu $s2, $a0, $zero
|
|
||||||
/* 7E48DC 80283A5C AFB00010 */ sw $s0, 0x10($sp)
|
|
||||||
/* 7E48E0 80283A60 00A0802D */ daddu $s0, $a1, $zero
|
|
||||||
/* 7E48E4 80283A64 AFBF001C */ sw $ra, 0x1c($sp)
|
|
||||||
/* 7E48E8 80283A68 0C016AFA */ jal get_current_map_header
|
|
||||||
/* 7E48EC 80283A6C AFB10014 */ sw $s1, 0x14($sp)
|
|
||||||
/* 7E48F0 80283A70 0000302D */ daddu $a2, $zero, $zero
|
|
||||||
/* 7E48F4 80283A74 3C118011 */ lui $s1, %hi(gPlayerStatus)
|
|
||||||
/* 7E48F8 80283A78 2631EFC8 */ addiu $s1, $s1, %lo(gPlayerStatus)
|
|
||||||
/* 7E48FC 80283A7C 12000021 */ beqz $s0, .L80283B04
|
|
||||||
/* 7E4900 80283A80 0040282D */ daddu $a1, $v0, $zero
|
|
||||||
/* 7E4904 80283A84 3C048007 */ lui $a0, %hi(gGameStatusPtr)
|
|
||||||
/* 7E4908 80283A88 8C84419C */ lw $a0, %lo(gGameStatusPtr)($a0)
|
|
||||||
/* 7E490C 80283A8C 8482008E */ lh $v0, 0x8e($a0)
|
|
||||||
/* 7E4910 80283A90 8CA30014 */ lw $v1, 0x14($a1)
|
|
||||||
/* 7E4914 80283A94 00021100 */ sll $v0, $v0, 4
|
|
||||||
/* 7E4918 80283A98 00431021 */ addu $v0, $v0, $v1
|
|
||||||
/* 7E491C 80283A9C C4400000 */ lwc1 $f0, ($v0)
|
|
||||||
/* 7E4920 80283AA0 E6200028 */ swc1 $f0, 0x28($s1)
|
|
||||||
/* 7E4924 80283AA4 8482008E */ lh $v0, 0x8e($a0)
|
|
||||||
/* 7E4928 80283AA8 8CA30014 */ lw $v1, 0x14($a1)
|
|
||||||
/* 7E492C 80283AAC 00021100 */ sll $v0, $v0, 4
|
|
||||||
/* 7E4930 80283AB0 00431021 */ addu $v0, $v0, $v1
|
|
||||||
/* 7E4934 80283AB4 C4400008 */ lwc1 $f0, 8($v0)
|
|
||||||
/* 7E4938 80283AB8 E6200030 */ swc1 $f0, 0x30($s1)
|
|
||||||
/* 7E493C 80283ABC 8482008E */ lh $v0, 0x8e($a0)
|
|
||||||
/* 7E4940 80283AC0 8CA30014 */ lw $v1, 0x14($a1)
|
|
||||||
/* 7E4944 80283AC4 00021100 */ sll $v0, $v0, 4
|
|
||||||
/* 7E4948 80283AC8 00431021 */ addu $v0, $v0, $v1
|
|
||||||
/* 7E494C 80283ACC C4400004 */ lwc1 $f0, 4($v0)
|
|
||||||
/* 7E4950 80283AD0 4600018D */ trunc.w.s $f6, $f0
|
|
||||||
/* 7E4954 80283AD4 44023000 */ mfc1 $v0, $f6
|
|
||||||
/* 7E4958 80283AD8 00000000 */ nop
|
|
||||||
/* 7E495C 80283ADC AE42008C */ sw $v0, 0x8c($s2)
|
|
||||||
/* 7E4960 80283AE0 2442FFD8 */ addiu $v0, $v0, -0x28
|
|
||||||
/* 7E4964 80283AE4 44820000 */ mtc1 $v0, $f0
|
|
||||||
/* 7E4968 80283AE8 00000000 */ nop
|
|
||||||
/* 7E496C 80283AEC 46800020 */ cvt.s.w $f0, $f0
|
|
||||||
/* 7E4970 80283AF0 8E220000 */ lw $v0, ($s1)
|
|
||||||
/* 7E4974 80283AF4 3C030400 */ lui $v1, 0x400
|
|
||||||
/* 7E4978 80283AF8 E620002C */ swc1 $f0, 0x2c($s1)
|
|
||||||
/* 7E497C 80283AFC 080A0ED2 */ j .L80283B48
|
|
||||||
/* 7E4980 80283B00 00431025 */ or $v0, $v0, $v1
|
|
||||||
.L80283B04:
|
|
||||||
/* 7E4984 80283B04 C622002C */ lwc1 $f2, 0x2c($s1)
|
|
||||||
/* 7E4988 80283B08 3C013F80 */ lui $at, 0x3f80
|
|
||||||
/* 7E498C 80283B0C 44810000 */ mtc1 $at, $f0
|
|
||||||
/* 7E4990 80283B10 00000000 */ nop
|
|
||||||
/* 7E4994 80283B14 46001080 */ add.s $f2, $f2, $f0
|
|
||||||
/* 7E4998 80283B18 E622002C */ swc1 $f2, 0x2c($s1)
|
|
||||||
/* 7E499C 80283B1C C640008C */ lwc1 $f0, 0x8c($s2)
|
|
||||||
/* 7E49A0 80283B20 46800020 */ cvt.s.w $f0, $f0
|
|
||||||
/* 7E49A4 80283B24 4600103C */ c.lt.s $f2, $f0
|
|
||||||
/* 7E49A8 80283B28 00000000 */ nop
|
|
||||||
/* 7E49AC 80283B2C 45010007 */ bc1t .L80283B4C
|
|
||||||
/* 7E49B0 80283B30 3C03FBFF */ lui $v1, 0xfbff
|
|
||||||
/* 7E49B4 80283B34 3463FFFF */ ori $v1, $v1, 0xffff
|
|
||||||
/* 7E49B8 80283B38 8E220000 */ lw $v0, ($s1)
|
|
||||||
/* 7E49BC 80283B3C 24060002 */ addiu $a2, $zero, 2
|
|
||||||
/* 7E49C0 80283B40 E620002C */ swc1 $f0, 0x2c($s1)
|
|
||||||
/* 7E49C4 80283B44 00431024 */ and $v0, $v0, $v1
|
|
||||||
.L80283B48:
|
|
||||||
/* 7E49C8 80283B48 AE220000 */ sw $v0, ($s1)
|
|
||||||
.L80283B4C:
|
|
||||||
/* 7E49CC 80283B4C C6200028 */ lwc1 $f0, 0x28($s1)
|
|
||||||
/* 7E49D0 80283B50 C622002C */ lwc1 $f2, 0x2c($s1)
|
|
||||||
/* 7E49D4 80283B54 C6240030 */ lwc1 $f4, 0x30($s1)
|
|
||||||
/* 7E49D8 80283B58 3C03800B */ lui $v1, %hi(gCameras)
|
|
||||||
/* 7E49DC 80283B5C 24631D80 */ addiu $v1, $v1, %lo(gCameras)
|
|
||||||
/* 7E49E0 80283B60 E4600060 */ swc1 $f0, 0x60($v1)
|
|
||||||
/* 7E49E4 80283B64 E4620064 */ swc1 $f2, 0x64($v1)
|
|
||||||
/* 7E49E8 80283B68 E4640068 */ swc1 $f4, 0x68($v1)
|
|
||||||
/* 7E49EC 80283B6C 8FBF001C */ lw $ra, 0x1c($sp)
|
|
||||||
/* 7E49F0 80283B70 8FB20018 */ lw $s2, 0x18($sp)
|
|
||||||
/* 7E49F4 80283B74 8FB10014 */ lw $s1, 0x14($sp)
|
|
||||||
/* 7E49F8 80283B78 8FB00010 */ lw $s0, 0x10($sp)
|
|
||||||
/* 7E49FC 80283B7C 00C0102D */ daddu $v0, $a2, $zero
|
|
||||||
/* 7E4A00 80283B80 03E00008 */ jr $ra
|
|
||||||
/* 7E4A04 80283B84 27BD0020 */ addiu $sp, $sp, 0x20
|
|
Loading…
Reference in New Issue
Block a user