Misc decomp (#215)

* Misc early code decomp

* Make expected script

* fix m2ctx

* gOverrideFlags & set/unset macros

* update symbol addrs

* Cleanup and PR comments

* oops
This commit is contained in:
Ethan Roseman 2021-03-19 19:25:14 +09:00 committed by GitHub
parent 31d1cf2376
commit 577b3e3ebe
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
164 changed files with 5363 additions and 5746 deletions

View File

@ -262,6 +262,9 @@ async def main():
version = versions[0]
f.write(f"compiler_command = \"{cpp} -Iver/{version}/build/include -Iinclude -Isrc -DPERMUTER -D _LANGUAGE_C -D _FINALROM -D VERSION={version} -ffreestanding -DF3DEX_GBI_2 -D_MIPS_SZLONG=32 {args.cflags} -D SCRIPT(...)={{}} | {iconv} | tools/{os_dir}/cc1 -O2 -quiet -G 0 -mcpu=vr4300 -mfix4300 -mips3 -mgp32 -mfp32 -Wuninitialized -Wshadow {args.cflags} -o - | tools/{os_dir}/mips-nintendo-nu64-as -EB -G 0 -\"\n")
f.write(f"assembler_command = \"{cross}as -march=vr4300 -mabi=32\"\n")
f.write("\n")
f.write("[preserve_macros]\n")
f.write("g[DS]P.*\" = \"void\n")
# $version
n.rule("cpp",

File diff suppressed because it is too large Load Diff

View File

@ -192,7 +192,7 @@ typedef struct PlayerData {
/* 0x2B4 */ u32 totalCoinsEarned;
/* 0x2B8 */ s16 idleFrameCounter; /* frames with no inputs, overflows ever ~36 minutes of idling */
/* 0x2BA */ char unk_2BA[2];
/* 0x2BC */ s32 frameCounter; /* increases by 2 per frame */
/* 0x2BC */ u32 frameCounter; /* increases by 2 per frame */
/* 0x2C0 */ s16 quizzesAnswered;
/* 0x2C2 */ s16 quizzesCorrect;
/* 0x2C4 */ s32 unk_2C4[12];
@ -666,7 +666,8 @@ typedef struct BattleStatus {
/* 0x46C */ s32 battleState; /* 0 = load assets, 1 = create actors, 4 = start scripts, 7 & 8 = unk */
/* 0x470 */ char unk_470[10];
/* 0x47A */ u8 currentBattleSection;
/* 0x47B */ char unk_47B[21];
/* 0x47B */ u8 unk_47B;
/* 0x47C */ char unk_47C[20];
} BattleStatus; // size = 0x490
typedef struct TextureHeader {
@ -1724,11 +1725,10 @@ typedef struct struct802E4B10 {
// END ENTITY-SPECIFIC STRUCTS
typedef struct {
/* 0x00000 */ Light l1[2];
/* 0x00018 */ Light l2[2];
/* 0x00000 */ LookAt lookAt[2];
/* 0x00030 */ Matrix4s camPerspMatrix[8]; // could only be length 4, unsure
/* 0x00230 */ s32 mainGfx[0x4100];
/* 0x10630 */ s32 smallGfx[0x400]; // used by gfx_task_background
/* 0x00230 */ Gfx mainGfx[0x2080];
/* 0x10630 */ Gfx backgroundGfx[0x200]; // used by gfx_task_background
/* 0x11630 */ Matrix4s matrixStack[0x200];
} DisplayContext; // size = 0x19630

View File

@ -93,6 +93,8 @@ s32 disable_player_input(void);
void func_80027088(s32);
void get_dpad_input_radial(f32* angle, f32* magnitude);
void func_8006F8F0(f32, f32, f32);
void func_8006FEF0(s32, f32, f32, f32, f32);
void func_80070190(s32, f32, f32, f32, s32, f32, s32, s32);

View File

@ -22,6 +22,11 @@
#define BADGE_MENU_PAGE(index) (&gBadgeMenuPages[index])
#define ITEM_MENU_PAGE(index) (&gItemMenuPages[index])
#define OVERRIDE_FLAG_SET(flag) { s32* overrideFlags = &gOverrideFlags; *overrideFlags |= flag; }
#define OVERRIDE_FLAG_UNSET(flag) { s32* overrideFlags = &gOverrideFlags; *overrideFlags &= ~flag; }
#define OVERRIDE_FLAG_CHECK(flag) ({ s32* overrideFlags = &gOverrideFlags; *overrideFlags & flag; })
#define MAX_MAPVARS 16
#define MAX_MAPFLAGS 3

View File

@ -99,7 +99,7 @@ extern PrintContext* D_802EB39C;
extern s32 D_802E99DC;
extern Entity* D_802EB3A0;
extern s32 D_8015C7D0[3];
extern s32 D_8015C7D0[3]; // not size 3
extern UNK_TYPE D_0A0031E0;
extern UNK_TYPE D_0A001508;
@ -205,7 +205,8 @@ extern s32 gStatsMenuIconIDs[12];
extern s32 gGameState;
extern s32 D_8009A650[1];
extern s32 D_8009A64C;
extern s32 gOverrideFlags;
extern u16 D_8009A6A0;
extern u16 D_8009A6A2;
extern u16 D_8009A6A4;
@ -299,7 +300,7 @@ extern OSDevMgr __osPiDevMgr;
extern DisplayContext* gDisplayContext;
extern Gfx* gMasterGfxPos;
extern u16 gMatrixListPos;
extern u16 gCurrentDisplayContextIndex;
extern s32 gCurrentDisplayContextIndex;
extern UNK_TYPE D_0A004350;
extern UNK_TYPE D_0A0026F0;

View File

@ -1,5 +1,10 @@
#include "common.h"
extern UNK_TYPE D_802EA728;
extern UNK_TYPE D_802EA760;
extern StaticEntityData D_802EA7BC;
extern UNK_TYPE D_802EB3C0;
INCLUDE_ASM(s32, "code_105F90", func_802E4710);
INCLUDE_ASM(s32, "code_105F90", func_802E4730);
@ -22,10 +27,11 @@ void func_802E4B60(Entity* entity) {
Entity* someEntity;
entity->unk_3C = func_802E4AEC;
entity->alpha = 0xFF;
entity->alpha = 255;
temp_s0 = entity->dataBuf;
entity->flags |= 0x2000;
someEntity = get_entity_by_index(temp_s0->unk_00);
if (temp_s0->unk_09 == 0) {
temp_s0->unk_09 = 1;
temp_s0->unk_01 = 2;
@ -70,8 +76,6 @@ void func_802E540C(Entity* entity) {
func_802E4B10(entity);
}
extern UNK_TYPE D_802EA728;
void func_802E5428(Entity* entity) {
func_802E4B60(entity);
func_80110BCC(entity, &D_802EA728);
@ -86,23 +90,19 @@ void func_802E548C(Entity* entity) {
func_802E4E04(entity, 0);
}
extern UNK_TYPE D_802EA760;
void func_802E54A8(Entity* entity) {
func_80110BCC(entity, &D_802EA760);
}
extern UNK_TYPE D_802EB3C0;
void func_802E54CC(Entity* entity) {
if ((gPlayerData.partners[1].enabled == 0) && (get_global_flag(0xF8405BE0) == 0)) {
if ((!gPlayerData.partners[1].enabled) && get_global_flag(SI_SAVE_FLAG(96)) == 0) {
UNK_TYPE* ptr = &D_802EB3C0;
*ptr = 0;
load_string(0x1D0001, ptr);
func_80027088(1);
D_8009A650[0] |= 0x40;
OVERRIDE_FLAG_SET(0x40);
disable_player_input();
set_global_flag(0xF8405BE0);
set_global_flag(SI_SAVE_FLAG(96));
return;
}
exec_entity_updatecmd(entity);
@ -112,23 +112,22 @@ void func_802E555C(Entity* entity) {
if (D_802EB3C0) {
exec_entity_updatecmd(entity);
func_80027088(0);
D_8009A650[0] &= ~0x40;
OVERRIDE_FLAG_UNSET(0x40);
enable_player_input();
}
}
s8 func_802E55A8(Entity* entity, StaticEntityData* data) {
s32 temp_s2;
s32 temp_s2 = D_8015C7D0[0];
Entity* someEntity;
struct802E4B10* temp_v1;
s8 phi_v0;
temp_s2 = D_8015C7D0[0];
entity_init_Hammer23Block_normal(entity);
someEntity = get_entity_by_index(create_entity(data, entity->position.x, entity->position.y, entity->position.z, 0.0f,
0x80000000));
temp_v1 = someEntity->dataBuf;
temp_v1->unk_00 = entity->listIndex;
if (temp_s2 == 0) {
temp_v1->unk_0A = 3;
} else {
@ -136,8 +135,6 @@ s8 func_802E55A8(Entity* entity, StaticEntityData* data) {
}
}
extern StaticEntityData D_802EA7BC;
void func_802E5648(Entity* entity) {
func_802E55A8(entity, &D_802EA7BC);
}

View File

@ -1,23 +1,20 @@
#include "common.h"
f32 func_802E5670(struct802E4B10* arg0, s32 arg1) {
s32 temp_v0;
extern StaticEntityData D_802EA934;
temp_v0 = arg0->unk_D0 - arg1;
if (arg0->unk_D0 - arg1 < 0) {
temp_v0 += 0x14;
f32 func_802E5670(struct802E4B10* arg0, s32 arg1) {
s32 idx = arg0->unk_D0 - arg1;
if (idx < 0) {
idx += 20;
}
return arg0->unk_D4[temp_v0];
return arg0->unk_D4[idx];
}
void func_802E5690(s32 entityIndex) {
s16 temp_a0;
Entity* someEntity;
Entity* someOtherEntity;
struct802E3650* temp;
Entity* someEntity = get_entity_by_index(entityIndex);
struct802E3650* temp = someEntity->dataBuf;
someEntity = get_entity_by_index(entityIndex);
temp = someEntity->dataBuf;
if (temp->unk_12 >= 0) {
Entity* someOtherEntity = get_entity_by_index(temp->unk_12);
struct802E4B10* temp2 = someOtherEntity->dataBuf;
@ -29,32 +26,23 @@ s32 func_802E56D0(Entity* entity) {
return func_802E3650(entity);
}
extern StaticEntityData D_802EA934;
void func_802E56EC(Entity* entity) {
s16 entityIndex;
u8 temp_v0_2;
struct802E3650* temp_s0;
struct802E3650* temp_s0 = entity->dataBuf;
temp_s0 = entity->dataBuf;
if (temp_s0->unk_0A != 0xFFFF) {
if (get_global_flag(temp_s0->unk_0A) == 0) {
Entity* someEntity;
struct802E3650* temp2;
if (temp_s0->unk_0A != 0xFFFF && !get_global_flag(temp_s0->unk_0A)) {
Entity* someEntity;
struct802E3650* temp2;
entityIndex = create_entity(&D_802EA934, entity->position.x, entity->position.y, entity->position.z, 0.0f, 0x80000000);
temp_s0->unk_12 = entityIndex;
someEntity = get_entity_by_index(entityIndex);
temp2 = someEntity->dataBuf;
temp2->unk_00 = entity->listIndex;
}
temp_s0->unk_12 = create_entity(&D_802EA934, entity->position.x, entity->position.y, entity->position.z, 0.0f, 0x80000000);
someEntity = get_entity_by_index(temp_s0->unk_12);
temp2 = someEntity->dataBuf;
temp2->unk_00 = entity->listIndex;
}
}
void func_802E578C(Entity* entity) {
struct802E3650* temp_s1;
struct802E3650* temp_s1 = entity->dataBuf;
temp_s1 = entity->dataBuf;
entity_init_Hammer23Block_normal(entity);
entity->rotation.y += 180.0f;
temp_s1->unk_0A = 0xFFFF;
@ -82,7 +70,6 @@ void func_802E581C(Entity* entity) {
INCLUDE_ASM(s32, "code_106EF0", func_802E586C);
void func_802E5E50(Entity* entity) {
f32 clampedAngle;
struct802E4B10* temp_s0 = entity->dataBuf;
func_802E581C(entity);
@ -90,36 +77,33 @@ void func_802E5E50(Entity* entity) {
entity->unk_3C = NULL;
}
clampedAngle = clamp_angle(entity->rotation.y + 3.0);
entity->rotation.y = clampedAngle;
temp_s0->unk_D4[temp_s0->unk_D0] = clampedAngle;
if (++temp_s0->unk_D0 >= 0x15) {
entity->rotation.y = clamp_angle(entity->rotation.y + 3.0);
temp_s0->unk_D4[temp_s0->unk_D0] = entity->rotation.y;
temp_s0->unk_D0++;
if (temp_s0->unk_D0 > 20) {
temp_s0->unk_D0 = 0;
}
if (temp_s0->unk_0A == 0) {
if (D_8009A650[0] == 0) {
if (--temp_s0->unk_02 <= 0) {
temp_s0->unk_02 = 0x32;
func_80070550(3, entity->position.x, entity->position.y, entity->position.z, 22.0f, 8.0f, 4, 0x14);
}
if (temp_s0->unk_0A == 0 && gOverrideFlags == 0) {
if (--temp_s0->unk_02 <= 0) {
temp_s0->unk_02 = 50;
func_80070550(3, entity->position.x, entity->position.y, entity->position.z, 22.0f, 8.0f, 4, 20);
}
}
}
void func_802E5F50(Entity* entity) {
struct802E3650* temp;
struct802E3650* temp = entity->dataBuf;
temp = entity->dataBuf;
temp->unk_128 = &D_0A000328;
temp->unk_12C = &D_0A000380;
entity->unk_3C = func_802E586C;
}
void func_802E5F7C(Entity* entity) {
struct802E3650* temp;
struct802E3650* temp = entity->dataBuf;
temp = entity->dataBuf;
temp->unk_128 = &D_0A000800;
temp->unk_12C = &D_0A000750;
entity->unk_3C = func_802E586C;

View File

@ -22,17 +22,15 @@ void func_802E89B0(Entity* entity) {
}
void func_802E89F8(Entity* entity) {
s32 temp_v0;
struct802E89B0* temp;
struct802E89B0* temp = entity->dataBuf;
temp = entity->dataBuf;
temp->unk_04--;
if ((temp->unk_04 != -1) && (temp->unk_08 == 0)) {
entity->position.y += 2.3125;
return;
} else {
temp->unk_04 = 0;
exec_entity_updatecmd(entity);
}
temp->unk_04 = 0;
exec_entity_updatecmd(entity);
}
void func_802E8A58(Entity* entity) {
@ -44,15 +42,15 @@ void func_802E8A58(Entity* entity) {
if (gCollisionStatus.currentFloor > 0) {
temp->unk_04 = 1;
}
return;
break;
case 1:
if (gCollisionStatus.currentFloor < 0) {
temp->unk_04 = 2;
}
return;
break;
default:
exec_entity_updatecmd(entity);
return;
break;
}
} else {
exec_entity_updatecmd(entity);
@ -65,24 +63,22 @@ void func_802E8ADC(Entity* entity) {
PlayerStatus* playerStatus = &gPlayerStatus;
if ((entity->unk_06 & 1) != 0) {
*D_8009A650 |= 0x40;
if ((playerStatus->flags & 0x3000) == 0) {
s32 phi_v0 = playerStatus->stickAxis[0];
s32 temp_a0 = playerStatus->stickAxis[1];
OVERRIDE_FLAG_SET(0x40);
if (phi_v0 < 0) {
phi_v0 = -phi_v0;
}
if (!(playerStatus->flags & 0x3000)) {
s32 stickAxis0 = playerStatus->stickAxis[0];
s32 stickAxis1 = playerStatus->stickAxis[1];
if ((phi_v0 != 0) || (temp_a0 != 0)) {
if (atan2(0.0f, 0.0f, phi_v0, temp_a0) < 60.0f) {
stickAxis0 = abs(stickAxis0);
if ((stickAxis0 != 0) || (stickAxis1 != 0)) {
if (atan2(0.0f, 0.0f, stickAxis0, stickAxis1) < 60.0f) {
exec_entity_updatecmd(entity);
return;
}
}
}
} else {
*D_8009A650 &= ~0x40;
OVERRIDE_FLAG_UNSET(0x40);
}
}
#else
@ -152,7 +148,7 @@ void func_802E8D74(Entity* entity) {
void func_802E8E10(Entity* entity) {
Bytecode* triggerScriptStart = ((Trigger*)entity->dataBuf)->scriptStart;
D_8009A650[0] &= ~0x40;
OVERRIDE_FLAG_UNSET(0x40);
entity->boundScript = triggerScriptStart;
func_80110678(entity);
}

View File

@ -30,7 +30,9 @@ void func_80035E54(void) {
*mapTransitonAlpha = 0xFF;
nuContRmbForceStopEnd();
func_801382AC(mapTransitonAlpha);
D_8009A650[0] |= 8;
OVERRIDE_FLAG_SET(0x8);
set_variable(0, SI_SAVE_VAR(1), (*gameStatus)->unk_A9);
D_8009A5D8 = 0;
}

View File

@ -2,7 +2,6 @@
#define _CODE_11A50_LEN_7A0_H_
#include "common.h"
#include "code_ebd0_len_6a0.h"
#include "code_6e40_len_500.h"
#endif

View File

@ -61,7 +61,7 @@ ApiStatus ActorSpeak(ScriptInstance* script, s32 isInitialCall) {
clamp_printer_coords(gSpeakingActorPrintCtx, screenX, screenY);
script->functionTemp[0].s = 0;
D_8009A650[0] |= 0x10;
OVERRIDE_FLAG_SET(0x10);
if (gSpeakingActorTalkAnim >= 0) {
func_80263E08(actor, part, gSpeakingActorTalkAnim);
}
@ -102,7 +102,7 @@ ApiStatus ActorSpeak(ScriptInstance* script, s32 isInitialCall) {
if (gSpeakingActorPrintIsDone == 1) {
decrement_status_menu_disabled();
D_8009A650[0] &= ~0x10;
OVERRIDE_FLAG_UNSET(0x10);
return ApiStatus_DONE1;
}
}
@ -159,10 +159,10 @@ ApiStatus func_802536A8(ScriptInstance* script, s32 isInitialCall) {
if (get_variable(script, *script->ptrReadPos) != 0) {
battleStatus2->unk_92 |= 1;
D_8009A650[0] |= 0x80;
OVERRIDE_FLAG_SET(0x80);
} else {
battleStatus2->unk_92 &= ~1;
D_8009A650[0] &= ~0x80;
OVERRIDE_FLAG_UNSET(0x80);
}
return ApiStatus_DONE2;

View File

@ -1,4 +1,5 @@
#include "common.h"
#include "nu/nusys.h"
s8 D_80074020 = 1;
s8 D_80074021 = 5;
@ -13,7 +14,7 @@ s32 D_800741A8[] = { 0x00010000, 0x00000000, 0x00000001, 0x00000000, 0x00000000,
0x00000000, 0x00000000, };
u16 gMatrixListPos = 0;
u16 D_800741F2 = 0;
u16 gCurrentDisplayContextIndex = 0;
s32 gCurrentDisplayContextIndex = 0;
s32 D_800741F8 = 0;
s32 D_800741FC = 0;
s32 D_80074200[] = { 0x028001E0, 0x01FF0000, 0x028001E0, 0x01FF0000 };
@ -34,9 +35,137 @@ Gfx D_80074230[] = {
gsSPEndDisplayList(),
};
INCLUDE_ASM(void, "code_1b40_len_20b0", step_game_loop);
extern DisplayContext D_80164000[];
extern s16 D_8009A690;
INCLUDE_ASM(s32, "code_1b40_len_20b0", gfx_task_background);
void gfx_init_state(void);
void gfx_draw_background(void);
void step_game_loop(void) {
PlayerData* playerData = &gPlayerData;
s8* temp80074021;
s16* temp80074182;
s16* temp800741A0;
s16* temp8009A690;
update_input();
(*gGameStatusPtr)->frameCounter++;
playerData->frameCounter += 2;
if (playerData->frameCounter > 215999999) {
playerData->frameCounter = 215999999;
}
update_max_rumble_duration();
temp80074021 = &D_80074021;
if (*temp80074021 != 0) {
(*temp80074021)-- ;
if (*temp80074021 == 0) {
*temp80074021 = D_80074020;
} else {
return;
}
}
func_8011BAE8();
func_8003857C();
update_dynamic_entities();
update_triggers();
update_scripts();
update_messages();
update_menu_icons();
step_current_game_mode();
update_entities();
func_80138198();
func_8014A548();
update_ambient_sounds();
func_80149734();
update_windows();
update_curtains();
if (OVERRIDE_FLAG_CHECK(0x20)) {
temp80074182 = &D_800741A2;
switch (*temp80074182) {
case 0:
OVERRIDE_FLAG_SET(0x200);
disable_player_input();
temp800741A0 = &D_800741A0;
if (*temp800741A0 == 255) {
*temp80074182 = 1;
D_8009A690 = 3;
} else {
*temp800741A0 += 10;
if (*temp800741A0 > 255) {
*temp800741A0 = 255;
}
}
break;
case 1:
OVERRIDE_FLAG_SET(0x8);
temp8009A690 = &D_8009A690;
(*temp8009A690)--;
if (*temp8009A690 == 0) {
func_80149838();
set_game_mode(0);
OVERRIDE_FLAG_UNSET(0x20);
}
break;
}
} else {
D_800741A0 = 0;
D_800741A2 = 0;
}
if (OVERRIDE_FLAG_CHECK(0x100)) {
OVERRIDE_FLAG_SET(0x1000);
} else {
OVERRIDE_FLAG_UNSET(0x1000);
}
if (OVERRIDE_FLAG_CHECK(0x200)) {
OVERRIDE_FLAG_SET(0x2000);
} else {
OVERRIDE_FLAG_UNSET(0x2000);
}
if (OVERRIDE_FLAG_CHECK(0x400)) {
OVERRIDE_FLAG_SET(0x4000);
} else {
OVERRIDE_FLAG_UNSET(0x4000);
}
if (OVERRIDE_FLAG_CHECK(0x800)) {
OVERRIDE_FLAG_SET(0x8000);
} else {
OVERRIDE_FLAG_UNSET(0x8000);
}
rand_int(1);
}
void gfx_task_background(void) {
DisplayContext** gDisplayContextPtr = &gDisplayContext;
Gfx** gfx = &gMasterGfxPos;
DisplayContext* dispContexts = D_80164000;
*gDisplayContextPtr = &dispContexts[gCurrentDisplayContextIndex];
*gfx = &(*gDisplayContextPtr)->backgroundGfx[0];
gfx_init_state();
gfx_draw_background();
gDPFullSync((*gfx)++);
gSPEndDisplayList((*gfx)++);
// TODO these << 3 >> 3 shouldn't be necessary. There's almost definitely something we're missing here...
ASSERT((s32)((u32)((*gfx) - (*gDisplayContextPtr)->backgroundGfx) << 3 >> 3) < ARRAY_COUNT((*gDisplayContextPtr)->backgroundGfx));
nuGfxTaskStart(&gDisplayContext->backgroundGfx[0], (gMasterGfxPos - gDisplayContext->backgroundGfx) << 3,
NU_GFX_UCODE_F3DEX2, NU_SC_NOSWAPBUFFER);
}
INCLUDE_ASM(s32, "code_1b40_len_20b0", gfx_draw_frame);
@ -53,7 +182,7 @@ void load_engine_data(void) {
dma_copy(&code_code_A5DD0_ROM_START, &code_code_A5DD0_ROM_END, &code_code_A5DD0_VRAM);
dma_copy(&code_code_10CC10_ROM_START, &code_code_10CC10_ROM_END, &code_code_10CC10_VRAM);
D_8009A650[0] = 0;
gOverrideFlags = 0;
(*gGameStatusPtr)->unk_79 = 0;
(*gameStatusPtrTemp2)->enableBackground = 0;
(*gGameStatusPtr)->musicEnabled = 1;
@ -107,46 +236,41 @@ void load_engine_data(void) {
gameStatus3->unk_48[i] = 0xC;
}
D_8009A650[0] |= 8;
OVERRIDE_FLAG_SET(0x8);
set_game_mode(0);
}
//weird ordering issue
#ifdef NON_MATCHING
void func_80027088(s32 arg0) {
switch (arg0) {
case 0:
D_8009A5D8 = arg0;
*D_8009A650 &= ~0xF00;
OVERRIDE_FLAG_UNSET(0xF00);
resume_all_group(3);
break;
case 1:
D_8009A5D8 = arg0;
*D_8009A650 &= ~0xE00;
*D_8009A650 |= 0x100;
OVERRIDE_FLAG_UNSET(0xE00);
OVERRIDE_FLAG_SET(0x100);
suspend_all_group(1);
break;
case 2:
D_8009A5D8 = arg0;
*D_8009A650 &= ~0xC00;
*D_8009A650 |= 0x300;
OVERRIDE_FLAG_UNSET(0xC00);
OVERRIDE_FLAG_SET(0x300);
suspend_all_group(2);
break;
case 3:
D_8009A5D8 = arg0;
*D_8009A650 &= ~0x800;
*D_8009A650 |= 0x700;
OVERRIDE_FLAG_UNSET(0x800);
OVERRIDE_FLAG_SET(0x700);
suspend_all_group(2);
break;
case 4:
D_8009A5D8 = arg0;
*D_8009A650 |= 0xF00;
OVERRIDE_FLAG_SET(0xF00);
break;
}
}
#else
INCLUDE_ASM(void, "code_1b40_len_20b0", func_80027088, s32 arg0);
#endif
s32 func_80027190(void) {
return D_8009A5D8;
@ -162,7 +286,7 @@ void gfx_init_state(void) {
gSPDisplayList(gMasterGfxPos++, OS_K0_TO_PHYSICAL(&D_80074210));
}
#else
INCLUDE_ASM(s32, "code_1b40_len_20b0", gfx_init_state);
INCLUDE_ASM(void, "code_1b40_len_20b0", gfx_init_state);
#endif
INCLUDE_ASM(s32, "code_1b40_len_20b0", func_800271FC);
@ -177,4 +301,4 @@ INCLUDE_ASM(s32, "code_1b40_len_20b0", func_800279B4);
INCLUDE_ASM(s32, "code_1b40_len_20b0", func_80027BAC);
INCLUDE_ASM(s32, "code_1b40_len_20b0", gfx_draw_background);
INCLUDE_ASM(void, "code_1b40_len_20b0", gfx_draw_background);

View File

@ -68,13 +68,13 @@ ApiStatus func_802BD388(ScriptInstance* script, s32 isInitialCall) {
ApiStatus func_802BD3E4(ScriptInstance* script, s32 isInitialCall) {
func_80027088(2);
D_8009A650[0] |= 0x200000;
OVERRIDE_FLAG_SET(0x200000);
return ApiStatus_DONE2;
}
ApiStatus func_802BD41C(ScriptInstance* script, s32 isInitialCall) {
func_80027088(0);
D_8009A650[0] &= ~0x200000;
OVERRIDE_FLAG_UNSET(0x200000);
return ApiStatus_DONE2;
}

View File

@ -79,7 +79,27 @@ INCLUDE_ASM(s32, "code_43F0", _heap_free);
INCLUDE_ASM(s32, "code_43F0", _heap_realloc);
INCLUDE_ASM(s32, "code_43F0", cosine);
f32 cosine(s16 arg0) {
s16 temp360;
s16 idx;
temp360 = arg0 % 360;
if (temp360 < 0) {
temp360 += 360;
}
idx = temp360 % 180;
if (idx > 90) {
idx = 180 - idx;
}
if (temp360 >= 180) {
return -D_80074274[idx];
} else {
return D_80074274[idx];
}
}
s32 sign(s32 val) {
s32 sign = -1;
@ -101,7 +121,12 @@ void mem_clear(s8* data, s32 numBytes) {
}
}
INCLUDE_ASM(s32, "code_43F0", transform_point);
void transform_point(Matrix4f mtx, f32 inX, f32 inY, f32 inZ, f32 inS, f32* outX, f32* outY, f32* outZ, f32* outS) {
*outX = ((mtx[0][0] * inX) + (mtx[1][0] * inY) + (mtx[2][0] * inZ) + mtx[3][0]);
*outY = ((mtx[0][1] * inX) + (mtx[1][1] * inY) + (mtx[2][1] * inZ) + mtx[3][1]);
*outZ = ((mtx[0][2] * inX) + (mtx[1][2] * inY) + (mtx[2][2] * inZ) + mtx[3][2]);
*outS = ((mtx[0][3] * inX) + (mtx[1][3] * inY) + (mtx[2][3] * inZ) + mtx[3][3]);
}
void copy_matrix(Matrix4f* src, Matrix4f* dest) {
bcopy(src, dest, sizeof(Matrix4f));
@ -193,31 +218,27 @@ s32 func_80029994(s32 arg0) {
return result;
}
// Issue with the negation at the beginning
#ifdef NON_MATCHING
s32 rand_int(s32 arg0) {
s32 ret;
s32 ret = 0;
if (arg0 < 0) {
arg0 = -arg0;
}
arg0 = abs(arg0);
ret = 0;
if (arg0 != 0) {
if (arg0 == 1) {
return (func_80029994(1000) < 501) ^ 1;
switch (arg0) {
case 1:
ret = func_80029994(1000) > 500;
break;
default:
ret = func_80029994(arg0);
break;
case 100:
ret = func_80029994(1009) / 10;
break;
}
if (arg0 != 100) {
return func_80029994(arg0);
}
ret = func_80029994(1009) / 10;
}
return ret;
}
#else
INCLUDE_ASM(s32, "code_43F0", rand_int, s32 arg0);
#endif
f32 signF(f32 val) {
f32 sign;
@ -242,7 +263,32 @@ s32 round(f32 arg0) {
}
}
INCLUDE_ASM(f32, "code_43F0", clamp_angle, f32 theta);
f32 clamp_angle(f32 theta) {
if (fabsf(theta) > 3600.0f) {
s32 thetaInt = theta;
if (thetaInt >= 0) {
thetaInt = -(thetaInt / 360 * 360) + thetaInt;
}
else {
thetaInt = -thetaInt;
thetaInt = (thetaInt / 360 * 360) - thetaInt;
}
return thetaInt;
}
do {
if (theta < 0.0f) {
theta += 360.0f;
}
if (theta >= 360.0f) {
theta -= 360.0f;
}
} while (!(theta >= 0.0f) || !(theta < 360.0f));
return theta;
}
f32 get_clamped_angle_diff(f32 a, f32 b) {
if (fabsf(b - a) >= 180.0f) {

View File

@ -25,6 +25,8 @@ s32 get_spirits_rescued(void) {
return ret;
}
extern s32 D_800D95E8[];
INCLUDE_ASM(s32, "code_6240_len_c00", fio_calc_header_checksum);
INCLUDE_ASM(s32, "code_6240_len_c00", fio_validate_header_checksums);
@ -35,8 +37,11 @@ INCLUDE_ASM(s32, "code_6240_len_c00", fio_flush_backups);
#ifdef NON_MATCHING
s32 fio_calc_file_checksum(s32* saveData) {
u32 sum = 0;
u32 i = 0;
u32 sum;
u32 i;
sum = 0;
i = 0;
for (i = 0; i < 0x4E0; i++) {
sum += saveData[i];

View File

@ -91,9 +91,7 @@ void clear_item_entity_flags(s32 index, s32 flags) {
void func_801341B0(s32 index) {
ItemEntity* itemEntity = D_801565A0[index];
s32* sym = D_8009A650;
sym[0] |= 0x40;
OVERRIDE_FLAG_SET(0x40);
itemEntity->flags |= 0x100;
}

View File

@ -55,12 +55,12 @@ ApiStatus DisablePlayerInput(ScriptInstance* script, s32 isInitialCall) {
if (playerStatus->actionState == ActionState_SPIN) {
playerStatus->animFlags |= 0x40000;
}
D_8009A650[0] |= 0x40;
OVERRIDE_FLAG_SET(0x40);
} else {
enable_player_input();
func_800EF600();
func_800E01DC();
D_8009A650[0] &= ~0x40;
OVERRIDE_FLAG_UNSET(0x40);
func_800E983C();
}
return ApiStatus_DONE2;

View File

@ -1,5 +1,8 @@
#include "common.h"
extern s16 D_800A08F0;
extern s32 D_80077850[];
INCLUDE_ASM(s32, "code_d610_len_1330", func_80032210);
INCLUDE_ASM(s32, "code_d610_len_1330", func_800322DC);
@ -17,6 +20,11 @@ INCLUDE_ASM(s32, "code_d610_len_1330", create_camera_lead_player_mtx);
void func_800334E8(void) {
}
INCLUDE_ASM(s32, "code_d610_len_1330", set_game_mode);
void set_game_mode(s16 idx) {
D_800A08F0 = idx;
_set_game_mode(0, D_80077850[idx]);
}
INCLUDE_ASM(s32, "code_d610_len_1330", get_game_mode);
s16 get_game_mode(void) {
return D_800A08F0;
}

View File

@ -291,8 +291,8 @@ void func_8014AE6C(void) {
MusicPlayer* musicPlayer = &gMusicPlayers[0];
if ((*gGameStatusPtr)->demoState == 0) {
if (D_8009A650[0] & 0x20000) {
D_8009A650[0] &= ~0x20000;
if (OVERRIDE_FLAG_CHECK(0x20000)) {
OVERRIDE_FLAG_UNSET(0x20000);
} else {
musicPlayer->flags |= 8;
_set_music_track(0, musicPlayer->unk_24, musicPlayer->unk_28, 0, 8);
@ -304,7 +304,7 @@ void func_8014AE6C(void) {
void func_8014AEF8(void) {
MusicPlayer* musicPlayer = &gMusicPlayers[0];
if ((*gGameStatusPtr)->demoState == 0 && !(D_8009A650[0] & 0x20000)) {
if ((*gGameStatusPtr)->demoState == 0 && !OVERRIDE_FLAG_CHECK(0x20000)) {
func_8005553C(0, 250);
musicPlayer->unk_24 = musicPlayer->songID;
musicPlayer->unk_28 = musicPlayer->variation;

View File

@ -1,7 +1,7 @@
#include "common.h"
void begin_state_init(void) {
D_8009A650[0] |= 0x8;
OVERRIDE_FLAG_SET(0x8);
(*gGameStatusPtr)->loadMenuState = 3;
}
@ -15,7 +15,7 @@ void step_init_state(void) {
return;
}
D_8009A650[0] = 0;
gOverrideFlags = 0;
(*gameStatusPtr)->areaID = 0;
gameStatus->isBattle = 0;
gameStatus->prevArea = -1;
@ -77,7 +77,7 @@ void step_init_state(void) {
func_80056180();
}
D_8009A650[0] &= ~0x8;
OVERRIDE_FLAG_UNSET(0x8);
set_game_mode(1);
}

View File

@ -1,4 +1,16 @@
#include "code_ebd0_len_6a0.h"
#include "common.h"
#include "nu/nusys.h"
void intro_logos_set_fade_alpha(s16 alpha);
void intro_logos_set_fade_color(s16 color);
s16 intro_logos_fade_in(s16 subtractAlpha);
s16 intro_logos_fade_out(s16 addAlpha);
void intro_logos_update_fade(void);
extern s32* D_8009A658;
extern s32 D_800A0904;
extern s32 D_800A0908;
extern s16** D_800778A0;
void intro_logos_set_fade_alpha(s16 alpha) {
GameStatus* gameStatus = *gGameStatusPtr;
@ -51,7 +63,96 @@ void begin_state_battle(void) {
D_800A0900 = 5;
}
#ifdef NON_MATCHING
void step_battle(void) {
s8* temp800A0900 = &D_800A0900;
s32 phi_a0;
if (*temp800A0900 == 5) {
if (D_8009A658[1] != D_8009A64C) {
return;
}
(*temp800A0900)--;
OVERRIDE_FLAG_SET(0x8);
nuContRmbForceStop();
}
if (*temp800A0900 >= 0) {
if (*temp800A0900 > 0) {
(*temp800A0900)--;
} else {
GameStatus* gameStatus;
*temp800A0900 = -1;
nuGfxSetCfb(&D_800778A0, 2);
nuContRmbForceStopEnd();
func_80149838();
func_8003B1A8();
(*gGameStatusPtr)->isBattle = TRUE;
allocate_hit_tables();
func_8002D160();
func_802B20B4();
func_80149670(0);
gameStatus = *gGameStatusPtr;
// This part sucks
if (!(gameStatus->peachFlags & 1)) {
if (gBattleStatus.currentBattleSection != 0x26 || gBattleStatus.unk_47B != 0) {
phi_a0 = 5;
} else {
gameStatus->peachFlags |= 1;
phi_a0 = 6;
}
} else {
gameStatus->peachFlags |= 1;
phi_a0 = 6;
}
func_802DD8F8(phi_a0);
clear_model_data();
func_80148040();
use_default_background_settings();
clear_entity_models();
func_8011E224();
clear_dynamic_entity_list();
func_801452E8(0, 0);
func_80141100();
reset_status_menu();
clear_item_entity_data();
clear_script_list();
clear_npcs();
clear_entity_data(1);
clear_trigger_data();
dma_copy(&code_code_16C8E0_ROM_START, &code_code_16C8E0_ROM_END, &code_code_16C8E0_VRAM);
initialize_battle();
func_802409F4();
load_battle_section();
D_800A0904 = gPlayerStatusPtr->animFlags;
gPlayerStatusPtr->animFlags &= ~0x40;
D_800A0908 = func_80027190(gPlayerStatusPtr);
func_80027088(0);
OVERRIDE_FLAG_UNSET(0x8);
if (D_800A0900 >= 0) {
return;
}
}
}
update_counters();
update_battle_state();
update_npcs();
update_item_entities();
update_effects();
func_80116674();
update_cameras();
}
#else
INCLUDE_ASM(s32, "code_ebd0_len_6a0", step_battle);
#endif
void func_80033B54(void) {
draw_encounter_ui();
@ -61,7 +162,7 @@ void func_80033B54(void) {
}
void func_80033B88(void) {
D_8009A650[0] |= 0x08;
OVERRIDE_FLAG_SET(0x8);
nuContRmbForceStop();
D_800A0900 = 5;
}

View File

@ -1,12 +0,0 @@
#ifndef _CODE_EBD0_LEN_6A0_H_
#define _CODE_EBD0_LEN_6A0_H_
#include "common.h"
void intro_logos_set_fade_alpha(s16 alpha);
void intro_logos_set_fade_color(s16 color);
s16 intro_logos_fade_in(s16 subtractAlpha);
s16 intro_logos_fade_out(s16 addAlpha);
void intro_logos_update_fade(void);
#endif

View File

@ -1,5 +1,9 @@
#include "common.h"
extern s8 D_800A0920;
extern s8 D_800A0921;
extern s16 D_800A0922;
void func_800343A4();
INCLUDE_ASM(s32, "code_f270_len_1190", begin_state_logos);
@ -12,14 +16,27 @@ void func_80034388(void) {
INCLUDE_ASM(void, "code_f270_len_1190", func_800343A4);
INCLUDE_ASM(s32, "code_f270_len_1190", begin_state_pause_menu);
void begin_state_pause_menu(void) {
D_800A0921 = 0;
D_800A0922 = 0;
disable_player_input();
func_80027088(3);
set_windows_visible(2);
}
INCLUDE_ASM(s32, "code_f270_len_1190", step_pause_menu);
void func_80034BF4(void) {
}
INCLUDE_ASM(s32, "code_f270_len_1190", func_80034BFC);
void func_80034BFC(void) {
if (D_800A0922 > 0) {
D_800A0921 = 0;
} else {
D_800A0921 = 1;
}
D_800A0920 = 4;
}
INCLUDE_ASM(s32, "code_f270_len_1190", func_80034C3C);

View File

@ -80,9 +80,9 @@ ApiStatus SetMessageImages(ScriptInstance* script, s32 isInitialCall) {
ApiStatus func_802D0C94(ScriptInstance* script, s32 initialCall) {
if (get_variable(script, *script->ptrReadPos) == 0) {
D_8009A650[0] |= 0x10;
OVERRIDE_FLAG_SET(0x10);
} else {
D_8009A650[0] &= ~0x10;
OVERRIDE_FLAG_UNSET(0x10);
}
return ApiStatus_DONE2;
}

View File

@ -400,11 +400,9 @@ ApiStatus func_802D585C(ScriptInstance* script, s32 initialCall) {
s32 flags = get_variable(script, *ptrReadPos++);
if (setMode) {
// Set flag
D_8009A650[0] |= flags;
OVERRIDE_FLAG_SET(flags);
} else {
// Unset flag
D_8009A650[0] &= ~flags;
OVERRIDE_FLAG_UNSET(flags);
}
return ApiStatus_DONE2;

View File

@ -217,7 +217,7 @@ ApiStatus func_802D6954(ScriptInstance* script, s32 isInitialCall) {
enable_player_input();
enable_player_static_collisions();
func_800EF600();
D_8009A650[0] &= ~0x40;
OVERRIDE_FLAG_UNSET(0x40);
return ApiStatus_DONE2;
}

View File

@ -44,7 +44,7 @@ INCLUDE_ASM(s32, "world/area_dgb/dgb_04/C36530", func_80241E3C_C3836C);
INCLUDE_ASM(s32, "world/area_dgb/dgb_04/C36530", func_80242154_C38684);
#include "world/common/Set8009A650_40.inc.c"
#include "world/common/SetOverrideFlags_40.inc.c"
INCLUDE_ASM(s32, "world/area_dgb/dgb_04/C36530", func_802423EC_C3891C);

View File

@ -1,6 +1,6 @@
#include "flo_08.h"
#include "world/common/Set8009A650_40.inc.c"
#include "world/common/SetOverrideFlags_40.inc.c"
INCLUDE_ASM(s32, "world/area_flo/flo_08/CAED40", func_8024001C_CAED5C);

View File

@ -1,6 +1,6 @@
#include "flo_16.h"
#include "world/common/Set8009A650_40.inc.c"
#include "world/common/SetOverrideFlags_40.inc.c"
INCLUDE_ASM(s32, "world/area_flo/flo_16/CD1F10", func_802400FC_CD1F2C);

View File

@ -1,6 +1,6 @@
#include "isk_10.h"
#include "world/common/Set8009A650_40.inc.c"
#include "world/common/SetOverrideFlags_40.inc.c"
INCLUDE_ASM(s32, "world/area_isk/isk_10/988B60", func_8024001C_988B7C);

View File

@ -2,7 +2,7 @@
#include "common/UnkFloatFunc.inc.c"
#include "world/common/Set8009A650_40.inc.c"
#include "world/common/SetOverrideFlags_40.inc.c"
INCLUDE_ASM(s32, "world/area_iwa/iwa_10/91E6D0", func_8024030C_91E87C);

View File

@ -1,6 +1,6 @@
#include "jan_08.h"
#include "world/common/Set8009A650_40.inc.c"
#include "world/common/SetOverrideFlags_40.inc.c"
INCLUDE_ASM(s32, "world/area_jan/jan_08/B5E910", func_8024067C_B5E92C);

View File

@ -1,6 +1,6 @@
#include "kzn_04.h"
#include "world/common/Set8009A650_40.inc.c"
#include "world/common/SetOverrideFlags_40.inc.c"
INCLUDE_ASM(s32, "world/area_kzn/kzn_04/C68440", func_8024032C_C6845C);

View File

@ -1,6 +1,6 @@
#include "kzn_09.h"
#include "world/common/Set8009A650_40.inc.c"
#include "world/common/SetOverrideFlags_40.inc.c"
INCLUDE_ASM(s32, "world/area_kzn/kzn_09/C76CE0", func_8024001C_C76CFC);

View File

@ -1,6 +1,6 @@
#include "omo_11.h"
#include "world/common/Set8009A650_40.inc.c"
#include "world/common/SetOverrideFlags_40.inc.c"
INCLUDE_ASM(s32, "world/area_omo/omo_11/DDCFC0", func_802407AC_DDCFDC);

View File

@ -29,7 +29,7 @@ INCLUDE_ASM(s32, "world/area_pra/pra_01/D4D060", func_80240D3C_D4DD7C);
INCLUDE_ASM(s32, "world/area_pra/pra_01/D4D060", func_80240F20_D4DF60);
ApiStatus func_80240F60_D4DFA0(ScriptInstance* script, s32 isInitialCall) {
D_8009A650[0] &= ~0x80;
OVERRIDE_FLAG_UNSET(0x80);
return ApiStatus_DONE2;
}

View File

@ -1,6 +1,6 @@
#include "sam_08.h"
#include "world/common/Set8009A650_40.inc.c"
#include "world/common/SetOverrideFlags_40.inc.c"
INCLUDE_ASM(s32, "world/area_sam/sam_08/D2FC80", func_8024001C_D2FC9C);

View File

@ -6,7 +6,7 @@ INCLUDE_ASM(s32, "world/area_sbk/sbk_56/953FC0", func_80240038_953FF8);
INCLUDE_ASM(s32, "world/area_sbk/sbk_56/953FC0", func_8024005C_95401C);
#include "world/common/Set8009A650_40.inc.c"
#include "world/common/SetOverrideFlags_40.inc.c"
INCLUDE_ASM(s32, "world/area_sbk/sbk_56/953FC0", func_8024009C_95405C);

View File

@ -12,7 +12,7 @@ INCLUDE_ASM(s32, "world/area_tik/tik_07/879BE0", func_80240034_879C14);
#include "world/common/SomeXYZFunc2.inc.c"
#include "world/common/Set8009A650_40.inc.c"
#include "world/common/SetOverrideFlags_40.inc.c"
INCLUDE_ASM(s32, "world/area_tik/tik_07/879BE0", func_802402FC_879EDC);

View File

@ -2,7 +2,7 @@
INCLUDE_ASM(s32, "world/area_tik/tik_10/8866D0", func_80240310_8866D0);
#include "world/common/Set8009A650_40.inc.c"
#include "world/common/SetOverrideFlags_40.inc.c"
INCLUDE_ASM(s32, "world/area_tik/tik_10/8866D0", func_8024069C_886A5C);

View File

@ -10,7 +10,7 @@ INCLUDE_ASM(s32, "world/area_tik/tik_12/8891C0", func_80240960_889530);
#include "world/common/CheckItemFlags40.inc.c"
#include "world/common/Set8009A650_40.inc.c"
#include "world/common/SetOverrideFlags_40.inc.c"
INCLUDE_ASM(s32, "world/area_tik/tik_12/8891C0", func_80240C38_889808);

View File

@ -1,6 +1,6 @@
#include "tik_17.h"
#include "world/common/Set8009A650_40.inc.c"
#include "world/common/SetOverrideFlags_40.inc.c"
INCLUDE_ASM(s32, "world/area_tik/tik_17/892A50", func_8024004C_892A6C);

View File

@ -1,6 +1,6 @@
#include "tik_19.h"
#include "world/common/Set8009A650_40.inc.c"
#include "world/common/SetOverrideFlags_40.inc.c"
INCLUDE_ASM(s32, "world/area_tik/tik_19/897BD0", func_8024060C_897BEC);

View File

@ -1,7 +0,0 @@
#include "common.h"
#include "map.h"
ApiStatus N(Set8009A650_40)(ScriptInstance* script, s32 isInitialCall) {
D_8009A650[0] |= 0x40;
return ApiStatus_DONE2;
}

View File

@ -0,0 +1,7 @@
#include "common.h"
#include "map.h"
ApiStatus N(SetOverrideFlags_40)(ScriptInstance* script, s32 isInitialCall) {
OVERRIDE_FLAG_SET(0x40);
return ApiStatus_DONE2;
}

View File

@ -59,7 +59,7 @@ def main():
output = []
for line in processed_lines:
if "__attribute__" not in line:
if "__attribute__" not in line and "__asm__" not in line:
output.append(line)
with open(os.path.join(root_dir, "ctx.c"), "w", encoding="UTF-8") as f:

View File

@ -28,8 +28,8 @@ glabel func_800355D4
/* 10A28 80035628 0C04DF62 */ jal set_transition_stencil_zoom_0
/* 10A2C 8003562C 00000000 */ nop
/* 10A30 80035630 24020001 */ addiu $v0, $zero, 1
/* 10A34 80035634 3C04800A */ lui $a0, %hi(D_8009A650)
/* 10A38 80035638 2484A650 */ addiu $a0, $a0, %lo(D_8009A650)
/* 10A34 80035634 3C04800A */ lui $a0, %hi(gOverrideFlags)
/* 10A38 80035638 2484A650 */ addiu $a0, $a0, %lo(gOverrideFlags)
/* 10A3C 8003563C 3C01800A */ lui $at, %hi(D_800A0930)
/* 10A40 80035640 A0220930 */ sb $v0, %lo(D_800A0930)($at)
/* 10A44 80035644 8C820000 */ lw $v0, ($a0)

View File

@ -24,8 +24,8 @@ glabel func_80035660
/* 10AA8 800356A8 3C06FFFE */ lui $a2, 0xfffe
/* 10AAC 800356AC 34C6FFFF */ ori $a2, $a2, 0xffff
/* 10AB0 800356B0 0000202D */ daddu $a0, $zero, $zero
/* 10AB4 800356B4 3C05800A */ lui $a1, %hi(D_8009A650)
/* 10AB8 800356B8 24A5A650 */ addiu $a1, $a1, %lo(D_8009A650)
/* 10AB4 800356B4 3C05800A */ lui $a1, %hi(gOverrideFlags)
/* 10AB8 800356B8 24A5A650 */ addiu $a1, $a1, %lo(gOverrideFlags)
/* 10ABC 800356BC 24030008 */ addiu $v1, $zero, 8
/* 10AC0 800356C0 8CA20000 */ lw $v0, ($a1)
/* 10AC4 800356C4 240703E8 */ addiu $a3, $zero, 0x3e8
@ -36,8 +36,8 @@ glabel func_80035660
/* 10AD8 800356D8 0C052A46 */ jal set_music_track
/* 10ADC 800356DC 0080302D */ daddu $a2, $a0, $zero
.L800356E0:
/* 10AE0 800356E0 3C02800A */ lui $v0, %hi(D_8009A650)
/* 10AE4 800356E4 2442A650 */ addiu $v0, $v0, %lo(D_8009A650)
/* 10AE0 800356E0 3C02800A */ lui $v0, %hi(gOverrideFlags)
/* 10AE4 800356E4 2442A650 */ addiu $v0, $v0, %lo(gOverrideFlags)
/* 10AE8 800356E8 8C430000 */ lw $v1, ($v0)
/* 10AEC 800356EC 2404FFBF */ addiu $a0, $zero, -0x41
/* 10AF0 800356F0 00641824 */ and $v1, $v1, $a0

View File

@ -90,8 +90,8 @@ glabel L80035814_10C14
/* 10C20 80035820 24020003 */ addiu $v0, $zero, 3
/* 10C24 80035824 14620006 */ bne $v1, $v0, .L80035840
/* 10C28 80035828 00000000 */ nop
/* 10C2C 8003582C 3C03800A */ lui $v1, %hi(D_8009A650)
/* 10C30 80035830 2463A650 */ addiu $v1, $v1, %lo(D_8009A650)
/* 10C2C 8003582C 3C03800A */ lui $v1, %hi(gOverrideFlags)
/* 10C30 80035830 2463A650 */ addiu $v1, $v1, %lo(gOverrideFlags)
/* 10C34 80035834 8C620000 */ lw $v0, ($v1)
/* 10C38 80035838 34420008 */ ori $v0, $v0, 8
/* 10C3C 8003583C AC620000 */ sw $v0, ($v1)
@ -111,8 +111,8 @@ glabel L80035814_10C14
/* 10C70 80035870 A0C20000 */ sb $v0, ($a2)
/* 10C74 80035874 0C0912C0 */ jal func_80244B00
/* 10C78 80035878 00000000 */ nop
/* 10C7C 8003587C 3C04800A */ lui $a0, %hi(D_8009A650)
/* 10C80 80035880 2484A650 */ addiu $a0, $a0, %lo(D_8009A650)
/* 10C7C 8003587C 3C04800A */ lui $a0, %hi(gOverrideFlags)
/* 10C80 80035880 2484A650 */ addiu $a0, $a0, %lo(gOverrideFlags)
/* 10C84 80035884 8C820000 */ lw $v0, ($a0)
/* 10C88 80035888 2403FFF7 */ addiu $v1, $zero, -9
/* 10C8C 8003588C 00431024 */ and $v0, $v0, $v1

View File

@ -83,8 +83,8 @@ glabel L80035C2C_1102C
/* 1103C 80035C3C 0C00CD3C */ jal set_game_mode
/* 11040 80035C40 24040002 */ addiu $a0, $zero, 2
/* 11044 80035C44 3C04FFFE */ lui $a0, 0xfffe
/* 11048 80035C48 3C03800A */ lui $v1, %hi(D_8009A650)
/* 1104C 80035C4C 2463A650 */ addiu $v1, $v1, %lo(D_8009A650)
/* 11048 80035C48 3C03800A */ lui $v1, %hi(gOverrideFlags)
/* 1104C 80035C4C 2463A650 */ addiu $v1, $v1, %lo(gOverrideFlags)
/* 11050 80035C50 8C620000 */ lw $v0, ($v1)
/* 11054 80035C54 3484FFFF */ ori $a0, $a0, 0xffff
/* 11058 80035C58 00441024 */ and $v0, $v0, $a0

View File

@ -71,8 +71,8 @@ glabel state_init_file_select
/* 10560 80035160 44812000 */ mtc1 $at, $f4
/* 10564 80035164 3C014316 */ lui $at, 0x4316
/* 10568 80035168 44813000 */ mtc1 $at, $f6
/* 1056C 8003516C 3C04800A */ lui $a0, %hi(D_8009A650)
/* 10570 80035170 2484A650 */ addiu $a0, $a0, %lo(D_8009A650)
/* 1056C 8003516C 3C04800A */ lui $a0, %hi(gOverrideFlags)
/* 10570 80035170 2484A650 */ addiu $a0, $a0, %lo(gOverrideFlags)
/* 10574 80035174 A600002C */ sh $zero, 0x2c($s0)
/* 10578 80035178 A600002E */ sh $zero, 0x2e($s0)
/* 1057C 8003517C A6000030 */ sh $zero, 0x30($s0)

View File

@ -67,8 +67,8 @@ glabel state_step_language_select
/* 106B0 800352B0 A2320000 */ sb $s2, ($s1)
.L800352B4:
/* 106B4 800352B4 24020005 */ addiu $v0, $zero, 5
/* 106B8 800352B8 3C04800A */ lui $a0, %hi(D_8009A650)
/* 106BC 800352BC 2484A650 */ addiu $a0, $a0, %lo(D_8009A650)
/* 106B8 800352B8 3C04800A */ lui $a0, %hi(gOverrideFlags)
/* 106BC 800352BC 2484A650 */ addiu $a0, $a0, %lo(gOverrideFlags)
/* 106C0 800352C0 3C01800A */ lui $at, %hi(D_800A0930)
/* 106C4 800352C4 A0220930 */ sb $v0, %lo(D_800A0930)($at)
/* 106C8 800352C8 8C820000 */ lw $v0, ($a0)
@ -97,16 +97,16 @@ glabel state_step_language_select
/* 10720 80035320 8C42A64C */ lw $v0, %lo(D_8009A64C)($v0)
/* 10724 80035324 14620008 */ bne $v1, $v0, .L80035348
/* 10728 80035328 24040003 */ addiu $a0, $zero, 3
/* 1072C 8003532C 3C02800A */ lui $v0, %hi(D_8009A650)
/* 10730 80035330 2442A650 */ addiu $v0, $v0, %lo(D_8009A650)
/* 1072C 8003532C 3C02800A */ lui $v0, %hi(gOverrideFlags)
/* 10730 80035330 2442A650 */ addiu $v0, $v0, %lo(gOverrideFlags)
/* 10734 80035334 8C430000 */ lw $v1, ($v0)
/* 10738 80035338 2404FFF7 */ addiu $a0, $zero, -9
/* 1073C 8003533C 00641824 */ and $v1, $v1, $a0
/* 10740 80035340 0800D534 */ j .L800354D0
/* 10744 80035344 AC430000 */ sw $v1, ($v0)
.L80035348:
/* 10748 80035348 3C02800A */ lui $v0, %hi(D_8009A650)
/* 1074C 8003534C 2442A650 */ addiu $v0, $v0, %lo(D_8009A650)
/* 10748 80035348 3C02800A */ lui $v0, %hi(gOverrideFlags)
/* 1074C 8003534C 2442A650 */ addiu $v0, $v0, %lo(gOverrideFlags)
/* 10750 80035350 8C430000 */ lw $v1, ($v0)
/* 10754 80035354 34630008 */ ori $v1, $v1, 8
/* 10758 80035358 0C051FB1 */ jal set_windows_visible
@ -176,8 +176,8 @@ glabel state_step_language_select
/* 10854 80035454 0C091238 */ jal func_802448E0
/* 10858 80035458 24040001 */ addiu $a0, $zero, 1
/* 1085C 8003545C 240400FF */ addiu $a0, $zero, 0xff
/* 10860 80035460 3C06800A */ lui $a2, %hi(D_8009A650)
/* 10864 80035464 24C6A650 */ addiu $a2, $a2, %lo(D_8009A650)
/* 10860 80035460 3C06800A */ lui $a2, %hi(gOverrideFlags)
/* 10864 80035464 24C6A650 */ addiu $a2, $a2, %lo(gOverrideFlags)
/* 10868 80035468 2403FFF7 */ addiu $v1, $zero, -9
/* 1086C 8003546C 8CC20000 */ lw $v0, ($a2)
/* 10870 80035470 3C05437F */ lui $a1, 0x437f

View File

@ -77,8 +77,8 @@ glabel func_802E4C10
/* 106580 802E4D00 24420001 */ addiu $v0, $v0, 1
/* 106584 802E4D04 A2020001 */ sb $v0, 1($s0)
.L802E4D08:
/* 106588 802E4D08 3C02800A */ lui $v0, %hi(D_8009A650)
/* 10658C 802E4D0C 8C42A650 */ lw $v0, %lo(D_8009A650)($v0)
/* 106588 802E4D08 3C02800A */ lui $v0, %hi(gOverrideFlags)
/* 10658C 802E4D0C 8C42A650 */ lw $v0, %lo(gOverrideFlags)($v0)
/* 106590 802E4D10 14400017 */ bnez $v0, .L802E4D70
/* 106594 802E4D14 00000000 */ nop
/* 106598 802E4D18 92020002 */ lbu $v0, 2($s0)
@ -122,8 +122,8 @@ glabel func_802E4C10
/* 10662C 802E4DAC 34420200 */ ori $v0, $v0, 0x200
/* 106630 802E4DB0 0C009C22 */ jal func_80027088
/* 106634 802E4DB4 AC620004 */ sw $v0, 4($v1)
/* 106638 802E4DB8 3C03800A */ lui $v1, %hi(D_8009A650)
/* 10663C 802E4DBC 2463A650 */ addiu $v1, $v1, %lo(D_8009A650)
/* 106638 802E4DB8 3C03800A */ lui $v1, %hi(gOverrideFlags)
/* 10663C 802E4DBC 2463A650 */ addiu $v1, $v1, %lo(gOverrideFlags)
/* 106640 802E4DC0 8C620000 */ lw $v0, ($v1)
/* 106644 802E4DC4 34420040 */ ori $v0, $v0, 0x40
/* 106648 802E4DC8 AC620000 */ sw $v0, ($v1)

View File

@ -332,8 +332,8 @@ glabel L802E52AC_106B2C
/* 106B40 802E52C0 0C009C22 */ jal func_80027088
/* 106B44 802E52C4 0000202D */ daddu $a0, $zero, $zero
/* 106B48 802E52C8 0220202D */ daddu $a0, $s1, $zero
/* 106B4C 802E52CC 3C05800A */ lui $a1, %hi(D_8009A650)
/* 106B50 802E52D0 24A5A650 */ addiu $a1, $a1, %lo(D_8009A650)
/* 106B4C 802E52CC 3C05800A */ lui $a1, %hi(gOverrideFlags)
/* 106B50 802E52D0 24A5A650 */ addiu $a1, $a1, %lo(gOverrideFlags)
/* 106B54 802E52D4 8CA20000 */ lw $v0, ($a1)
/* 106B58 802E52D8 2403FFBF */ addiu $v1, $zero, -0x41
/* 106B5C 802E52DC 00431024 */ and $v0, $v0, $v1

View File

@ -12,8 +12,8 @@ glabel func_802E8ADC
/* 10A378 802E8AF8 30420001 */ andi $v0, $v0, 1
/* 10A37C 802E8AFC 10400027 */ beqz $v0, .L802E8B9C
/* 10A380 802E8B00 2404FFBF */ addiu $a0, $zero, -0x41
/* 10A384 802E8B04 3C02800A */ lui $v0, %hi(D_8009A650)
/* 10A388 802E8B08 2442A650 */ addiu $v0, $v0, %lo(D_8009A650)
/* 10A384 802E8B04 3C02800A */ lui $v0, %hi(gOverrideFlags)
/* 10A388 802E8B08 2442A650 */ addiu $v0, $v0, %lo(gOverrideFlags)
/* 10A38C 802E8B0C 8C430000 */ lw $v1, ($v0)
/* 10A390 802E8B10 8CE40000 */ lw $a0, ($a3)
/* 10A394 802E8B14 34630040 */ ori $v1, $v1, 0x40
@ -53,8 +53,8 @@ glabel func_802E8ADC
/* 10A414 802E8B94 080BA2EC */ j .L802E8BB0
/* 10A418 802E8B98 00000000 */ nop
.L802E8B9C:
/* 10A41C 802E8B9C 3C02800A */ lui $v0, %hi(D_8009A650)
/* 10A420 802E8BA0 2442A650 */ addiu $v0, $v0, %lo(D_8009A650)
/* 10A41C 802E8B9C 3C02800A */ lui $v0, %hi(gOverrideFlags)
/* 10A420 802E8BA0 2442A650 */ addiu $v0, $v0, %lo(gOverrideFlags)
/* 10A424 802E8BA4 8C430000 */ lw $v1, ($v0)
/* 10A428 802E8BA8 00641824 */ and $v1, $v1, $a0
/* 10A42C 802E8BAC AC430000 */ sw $v1, ($v0)

View File

@ -101,8 +101,8 @@ glabel func_80035EEC
/* 1144C 8003604C 8C44006C */ lw $a0, 0x6c($v0)
/* 11450 80036050 14400026 */ bnez $v0, .L800360EC
/* 11454 80036054 00000000 */ nop
/* 11458 80036058 3C05800A */ lui $a1, %hi(D_8009A650)
/* 1145C 8003605C 24A5A650 */ addiu $a1, $a1, %lo(D_8009A650)
/* 11458 80036058 3C05800A */ lui $a1, %hi(gOverrideFlags)
/* 1145C 8003605C 24A5A650 */ addiu $a1, $a1, %lo(gOverrideFlags)
/* 11460 80036060 2404FFF7 */ addiu $a0, $zero, -9
/* 11464 80036064 8CA20000 */ lw $v0, ($a1)
/* 11468 80036068 96030000 */ lhu $v1, ($s0)

View File

@ -46,8 +46,8 @@ glabel L800361B4_115B4
/* 11600 80036200 0800D8FA */ j .L800363E8
/* 11604 80036204 A4620000 */ sh $v0, ($v1)
glabel L80036208_11608
/* 11608 80036208 3C03800A */ lui $v1, %hi(D_8009A650)
/* 1160C 8003620C 2463A650 */ addiu $v1, $v1, %lo(D_8009A650)
/* 11608 80036208 3C03800A */ lui $v1, %hi(gOverrideFlags)
/* 1160C 8003620C 2463A650 */ addiu $v1, $v1, %lo(gOverrideFlags)
/* 11610 80036210 8C620000 */ lw $v0, ($v1)
/* 11614 80036214 34420008 */ ori $v0, $v0, 8
/* 11618 80036218 0C018028 */ jal nuContRmbForceStop
@ -134,8 +134,8 @@ glabel L800362F8_116F8
/* 11744 80036344 8C44006C */ lw $a0, 0x6c($v0)
/* 11748 80036348 14400027 */ bnez $v0, .L800363E8
/* 1174C 8003634C 2405FFF7 */ addiu $a1, $zero, -9
/* 11750 80036350 3C04800A */ lui $a0, %hi(D_8009A650)
/* 11754 80036354 2484A650 */ addiu $a0, $a0, %lo(D_8009A650)
/* 11750 80036350 3C04800A */ lui $a0, %hi(gOverrideFlags)
/* 11754 80036354 2484A650 */ addiu $a0, $a0, %lo(gOverrideFlags)
/* 11758 80036358 3C06800A */ lui $a2, %hi(D_800A0944)
/* 1175C 8003635C 24C60944 */ addiu $a2, $a2, %lo(D_800A0944)
/* 11760 80036360 8C820000 */ lw $v0, ($a0)

View File

@ -27,8 +27,8 @@ glabel func_8003646C
/* 118C0 800364C0 0800D984 */ j .L80036610
/* 118C4 800364C4 00000000 */ nop
.L800364C8:
/* 118C8 800364C8 3C03800A */ lui $v1, %hi(D_8009A650)
/* 118CC 800364CC 2463A650 */ addiu $v1, $v1, %lo(D_8009A650)
/* 118C8 800364C8 3C03800A */ lui $v1, %hi(gOverrideFlags)
/* 118CC 800364CC 2463A650 */ addiu $v1, $v1, %lo(gOverrideFlags)
/* 118D0 800364D0 8C620000 */ lw $v0, ($v1)
/* 118D4 800364D4 34420008 */ ori $v0, $v0, 8
/* 118D8 800364D8 0C018028 */ jal nuContRmbForceStop
@ -78,8 +78,8 @@ glabel func_8003646C
/* 11978 80036578 8C44006C */ lw $a0, 0x6c($v0)
/* 1197C 8003657C 1440002C */ bnez $v0, .L80036630
/* 11980 80036580 00000000 */ nop
/* 11984 80036584 3C05800A */ lui $a1, %hi(D_8009A650)
/* 11988 80036588 24A5A650 */ addiu $a1, $a1, %lo(D_8009A650)
/* 11984 80036584 3C05800A */ lui $a1, %hi(gOverrideFlags)
/* 11988 80036588 24A5A650 */ addiu $a1, $a1, %lo(gOverrideFlags)
/* 1198C 8003658C 2404FFF7 */ addiu $a0, $zero, -9
/* 11990 80036590 8CA20000 */ lw $v0, ($a1)
/* 11994 80036594 96030000 */ lhu $v1, ($s0)

View File

@ -133,8 +133,8 @@ glabel L8003696C_11D6C
/* 11E18 80036A18 0800DB5E */ j L80036D78_12178
/* 11E1C 80036A1C 00000000 */ nop
glabel L80036A20_11E20
/* 11E20 80036A20 3C04800A */ lui $a0, %hi(D_8009A650)
/* 11E24 80036A24 2484A650 */ addiu $a0, $a0, %lo(D_8009A650)
/* 11E20 80036A20 3C04800A */ lui $a0, %hi(gOverrideFlags)
/* 11E24 80036A24 2484A650 */ addiu $a0, $a0, %lo(gOverrideFlags)
/* 11E28 80036A28 8C820000 */ lw $v0, ($a0)
/* 11E2C 80036A2C 24030004 */ addiu $v1, $zero, 4
/* 11E30 80036A30 3C01800A */ lui $at, %hi(D_800A0950)
@ -155,8 +155,8 @@ glabel L80036A5C_11E5C
/* 11E68 80036A68 2442FFFF */ addiu $v0, $v0, -1
/* 11E6C 80036A6C 1C4000C2 */ bgtz $v0, L80036D78_12178
/* 11E70 80036A70 AC620000 */ sw $v0, ($v1)
/* 11E74 80036A74 3C04800A */ lui $a0, %hi(D_8009A650)
/* 11E78 80036A78 2484A650 */ addiu $a0, $a0, %lo(D_8009A650)
/* 11E74 80036A74 3C04800A */ lui $a0, %hi(gOverrideFlags)
/* 11E78 80036A78 2484A650 */ addiu $a0, $a0, %lo(gOverrideFlags)
/* 11E7C 80036A7C 8C820000 */ lw $v0, ($a0)
/* 11E80 80036A80 2403FFF7 */ addiu $v1, $zero, -9
/* 11E84 80036A84 00431024 */ and $v0, $v0, $v1
@ -285,8 +285,8 @@ glabel L80036C40_12040
/* 1205C 80036C5C AC820000 */ sw $v0, ($a0)
/* 12060 80036C60 240200FF */ addiu $v0, $zero, 0xff
.L80036C64:
/* 12064 80036C64 3C04800A */ lui $a0, %hi(D_8009A650)
/* 12068 80036C68 2484A650 */ addiu $a0, $a0, %lo(D_8009A650)
/* 12064 80036C64 3C04800A */ lui $a0, %hi(gOverrideFlags)
/* 12068 80036C68 2484A650 */ addiu $a0, $a0, %lo(gOverrideFlags)
/* 1206C 80036C6C 2405FFF7 */ addiu $a1, $zero, -9
/* 12070 80036C70 3C03800A */ lui $v1, %hi(D_800A0958)
/* 12074 80036C74 94630958 */ lhu $v1, %lo(D_800A0958)($v1)

View File

@ -14,8 +14,8 @@ glabel D_8009839C
glabel begin_state_title_screen
/* 121F0 80036DF0 27BDFFC8 */ addiu $sp, $sp, -0x38
/* 121F4 80036DF4 AFB20028 */ sw $s2, 0x28($sp)
/* 121F8 80036DF8 3C12800A */ lui $s2, %hi(D_8009A650)
/* 121FC 80036DFC 2652A650 */ addiu $s2, $s2, %lo(D_8009A650)
/* 121F8 80036DF8 3C12800A */ lui $s2, %hi(gOverrideFlags)
/* 121FC 80036DFC 2652A650 */ addiu $s2, $s2, %lo(gOverrideFlags)
/* 12200 80036E00 24020001 */ addiu $v0, $zero, 1
/* 12204 80036E04 AFBF002C */ sw $ra, 0x2c($sp)
/* 12208 80036E08 AFB10024 */ sw $s1, 0x24($sp)

View File

@ -42,8 +42,8 @@ glabel step_title_screen
/* 12528 80037128 00400008 */ jr $v0
/* 1252C 8003712C 00000000 */ nop
glabel L80037130_12530
/* 12530 80037130 3C04800A */ lui $a0, %hi(D_8009A650)
/* 12534 80037134 2484A650 */ addiu $a0, $a0, %lo(D_8009A650)
/* 12530 80037130 3C04800A */ lui $a0, %hi(gOverrideFlags)
/* 12534 80037134 2484A650 */ addiu $a0, $a0, %lo(gOverrideFlags)
/* 12538 80037138 8C820000 */ lw $v0, ($a0)
/* 1253C 8003713C 24030003 */ addiu $v1, $zero, 3
/* 12540 80037140 3C01800A */ lui $at, %hi(D_800A0970)
@ -83,8 +83,8 @@ glabel L80037184_12584
/* 125C0 800371C0 A08200AF */ sb $v0, 0xaf($a0)
.L800371C4:
/* 125C4 800371C4 24040006 */ addiu $a0, $zero, 6
/* 125C8 800371C8 3C02800A */ lui $v0, %hi(D_8009A650)
/* 125CC 800371CC 2442A650 */ addiu $v0, $v0, %lo(D_8009A650)
/* 125C8 800371C8 3C02800A */ lui $v0, %hi(gOverrideFlags)
/* 125CC 800371CC 2442A650 */ addiu $v0, $v0, %lo(gOverrideFlags)
/* 125D0 800371D0 8C430000 */ lw $v1, ($v0)
/* 125D4 800371D4 2405FFF7 */ addiu $a1, $zero, -9
/* 125D8 800371D8 00651824 */ and $v1, $v1, $a1
@ -208,8 +208,8 @@ glabel L8003733C_1273C
/* 1278C 8003738C 1440000A */ bnez $v0, .L800373B8
/* 12790 80037390 24020003 */ addiu $v0, $zero, 3
/* 12794 80037394 A06200AF */ sb $v0, 0xaf($v1)
/* 12798 80037398 3C03800A */ lui $v1, %hi(D_8009A650)
/* 1279C 8003739C 2463A650 */ addiu $v1, $v1, %lo(D_8009A650)
/* 12798 80037398 3C03800A */ lui $v1, %hi(gOverrideFlags)
/* 1279C 8003739C 2463A650 */ addiu $v1, $v1, %lo(gOverrideFlags)
/* 127A0 800373A0 8C620000 */ lw $v0, ($v1)
/* 127A4 800373A4 34420008 */ ori $v0, $v0, 8
/* 127A8 800373A8 AC620000 */ sw $v0, ($v1)
@ -234,8 +234,8 @@ glabel L8003733C_1273C
/* 127EC 800373EC 1440001F */ bnez $v0, .L8003746C
/* 127F0 800373F0 2462FFFF */ addiu $v0, $v1, -1
/* 127F4 800373F4 24020003 */ addiu $v0, $zero, 3
/* 127F8 800373F8 3C03800A */ lui $v1, %hi(D_8009A650)
/* 127FC 800373FC 2463A650 */ addiu $v1, $v1, %lo(D_8009A650)
/* 127F8 800373F8 3C03800A */ lui $v1, %hi(gOverrideFlags)
/* 127FC 800373FC 2463A650 */ addiu $v1, $v1, %lo(gOverrideFlags)
/* 12800 80037400 A08200AF */ sb $v0, 0xaf($a0)
/* 12804 80037404 8C620000 */ lw $v0, ($v1)
/* 12808 80037408 34420008 */ ori $v0, $v0, 8
@ -248,8 +248,8 @@ glabel L8003733C_1273C
/* 12820 80037420 2484419C */ addiu $a0, $a0, %lo(gGameStatusPtr)
/* 12824 80037424 8C830000 */ lw $v1, ($a0)
/* 12828 80037428 A06200AF */ sb $v0, 0xaf($v1)
/* 1282C 8003742C 3C03800A */ lui $v1, %hi(D_8009A650)
/* 12830 80037430 2463A650 */ addiu $v1, $v1, %lo(D_8009A650)
/* 1282C 8003742C 3C03800A */ lui $v1, %hi(gOverrideFlags)
/* 12830 80037430 2463A650 */ addiu $v1, $v1, %lo(gOverrideFlags)
/* 12834 80037434 8C620000 */ lw $v0, ($v1)
/* 12838 80037438 34420008 */ ori $v0, $v0, 8
/* 1283C 8003743C AC620000 */ sw $v0, ($v1)
@ -290,8 +290,8 @@ glabel L80037450_12850
/* 128B8 800374B8 24040001 */ addiu $a0, $zero, 1
/* 128BC 800374BC 0C051CFC */ jal clear_windows
/* 128C0 800374C0 00000000 */ nop
/* 128C4 800374C4 3C04800A */ lui $a0, %hi(D_8009A650)
/* 128C8 800374C8 2484A650 */ addiu $a0, $a0, %lo(D_8009A650)
/* 128C4 800374C4 3C04800A */ lui $a0, %hi(gOverrideFlags)
/* 128C8 800374C8 2484A650 */ addiu $a0, $a0, %lo(gOverrideFlags)
/* 128CC 800374CC 2403FFF7 */ addiu $v1, $zero, -9
/* 128D0 800374D0 8C820000 */ lw $v0, ($a0)
/* 128D4 800374D4 8E050000 */ lw $a1, ($s0)
@ -337,8 +337,8 @@ glabel L80037450_12850
/* 12964 80037564 0800DD64 */ j .L80037590
/* 12968 80037568 00000000 */ nop
glabel L8003756C_1296C
/* 1296C 8003756C 3C02800A */ lui $v0, %hi(D_8009A650)
/* 12970 80037570 8C42A650 */ lw $v0, %lo(D_8009A650)($v0)
/* 1296C 8003756C 3C02800A */ lui $v0, %hi(gOverrideFlags)
/* 12970 80037570 8C42A650 */ lw $v0, %lo(gOverrideFlags)($v0)
/* 12974 80037574 30420008 */ andi $v0, $v0, 8
/* 12978 80037578 14400005 */ bnez $v0, .L80037590
/* 1297C 8003757C 00000000 */ nop

View File

@ -55,8 +55,8 @@ glabel L8003817C_1357C
/* 13594 80038194 8E030000 */ lw $v1, ($s0)
/* 13598 80038198 24020003 */ addiu $v0, $zero, 3
/* 1359C 8003819C A06200AC */ sb $v0, 0xac($v1)
/* 135A0 800381A0 3C03800A */ lui $v1, %hi(D_8009A650)
/* 135A4 800381A4 2463A650 */ addiu $v1, $v1, %lo(D_8009A650)
/* 135A0 800381A0 3C03800A */ lui $v1, %hi(gOverrideFlags)
/* 135A4 800381A4 2463A650 */ addiu $v1, $v1, %lo(gOverrideFlags)
/* 135A8 800381A8 8C620000 */ lw $v0, ($v1)
/* 135AC 800381AC 34420008 */ ori $v0, $v0, 8
/* 135B0 800381B0 0C00CE1D */ jal intro_logos_update_fade
@ -93,8 +93,8 @@ glabel L800381C8_135C8
/* 13624 80038224 8E020000 */ lw $v0, ($s0)
/* 13628 80038228 A0400078 */ sb $zero, 0x78($v0)
/* 1362C 8003822C 8E020000 */ lw $v0, ($s0)
/* 13630 80038230 3C04800A */ lui $a0, %hi(D_8009A650)
/* 13634 80038234 2484A650 */ addiu $a0, $a0, %lo(D_8009A650)
/* 13630 80038230 3C04800A */ lui $a0, %hi(gOverrideFlags)
/* 13634 80038234 2484A650 */ addiu $a0, $a0, %lo(gOverrideFlags)
/* 13638 80038238 A040007D */ sb $zero, 0x7d($v0)
/* 1363C 8003823C 8C820000 */ lw $v0, ($a0)
/* 13640 80038240 2403FFF7 */ addiu $v1, $zero, -9

View File

@ -20,8 +20,8 @@ glabel func_80039DA4
/* 151E0 80039DE0 000218C0 */ sll $v1, $v0, 3
/* 151E4 80039DE4 00431021 */ addu $v0, $v0, $v1
/* 151E8 80039DE8 000210C0 */ sll $v0, $v0, 3
/* 151EC 80039DEC 3C03800A */ lui $v1, %hi(D_8009A650)
/* 151F0 80039DF0 8C63A650 */ lw $v1, %lo(D_8009A650)($v1)
/* 151EC 80039DEC 3C03800A */ lui $v1, %hi(gOverrideFlags)
/* 151F0 80039DF0 8C63A650 */ lw $v1, %lo(gOverrideFlags)($v1)
/* 151F4 80039DF4 3063C000 */ andi $v1, $v1, 0xc000
/* 151F8 80039DF8 1460006C */ bnez $v1, .L80039FAC
/* 151FC 80039DFC 00441021 */ addu $v0, $v0, $a0

View File

@ -14,8 +14,8 @@ glabel update_npcs
/* 14D54 80039954 AFB00030 */ sw $s0, 0x30($sp)
/* 14D58 80039958 F7B40048 */ sdc1 $f20, 0x48($sp)
/* 14D5C 8003995C 8E630004 */ lw $v1, 4($s3)
/* 14D60 80039960 3C04800A */ lui $a0, %hi(D_8009A650)
/* 14D64 80039964 8C84A650 */ lw $a0, %lo(D_8009A650)($a0)
/* 14D60 80039960 3C04800A */ lui $a0, %hi(gOverrideFlags)
/* 14D64 80039964 8C84A650 */ lw $a0, %lo(gOverrideFlags)($a0)
/* 14D68 80039968 00621824 */ and $v1, $v1, $v0
/* 14D6C 8003996C 30840C00 */ andi $a0, $a0, 0xc00
/* 14D70 80039970 14800104 */ bnez $a0, .L80039D84

View File

@ -49,15 +49,15 @@ glabel func_80240AA8
/* 16F430 80240B50 E502002C */ swc1 $f2, 0x2c($t0)
/* 16F434 80240B54 10400007 */ beqz $v0, .L80240B74
/* 16F438 80240B58 E5040030 */ swc1 $f4, 0x30($t0)
/* 16F43C 80240B5C 3C03800A */ lui $v1, %hi(D_8009A650)
/* 16F440 80240B60 2463A650 */ addiu $v1, $v1, %lo(D_8009A650)
/* 16F43C 80240B5C 3C03800A */ lui $v1, %hi(gOverrideFlags)
/* 16F440 80240B60 2463A650 */ addiu $v1, $v1, %lo(gOverrideFlags)
/* 16F444 80240B64 8C620000 */ lw $v0, ($v1)
/* 16F448 80240B68 34420080 */ ori $v0, $v0, 0x80
/* 16F44C 80240B6C 080902E3 */ j .L80240B8C
/* 16F450 80240B70 AC620000 */ sw $v0, ($v1)
.L80240B74:
/* 16F454 80240B74 3C02800A */ lui $v0, %hi(D_8009A650)
/* 16F458 80240B78 2442A650 */ addiu $v0, $v0, %lo(D_8009A650)
/* 16F454 80240B74 3C02800A */ lui $v0, %hi(gOverrideFlags)
/* 16F458 80240B78 2442A650 */ addiu $v0, $v0, %lo(gOverrideFlags)
/* 16F45C 80240B7C 8C430000 */ lw $v1, ($v0)
/* 16F460 80240B80 2404FF7F */ addiu $a0, $zero, -0x81
/* 16F464 80240B84 00641824 */ and $v1, $v1, $a0

View File

@ -14,8 +14,8 @@ glabel initialize_battle
/* 16CA34 8023E154 3C06800E */ lui $a2, %hi(gBattleStatus)
/* 16CA38 8023E158 24C6C070 */ addiu $a2, $a2, %lo(gBattleStatus)
/* 16CA3C 8023E15C 24C5003C */ addiu $a1, $a2, 0x3c
/* 16CA40 8023E160 3C04800A */ lui $a0, %hi(D_8009A650)
/* 16CA44 8023E164 2484A650 */ addiu $a0, $a0, %lo(D_8009A650)
/* 16CA40 8023E160 3C04800A */ lui $a0, %hi(gOverrideFlags)
/* 16CA44 8023E164 2484A650 */ addiu $a0, $a0, %lo(gOverrideFlags)
/* 16CA48 8023E168 AFBF0024 */ sw $ra, 0x24($sp)
/* 16CA4C 8023E16C AFB20018 */ sw $s2, 0x18($sp)
/* 16CA50 8023E170 AFB00010 */ sw $s0, 0x10($sp)

View File

@ -117,8 +117,8 @@ glabel ActorSpeak
/* 1819C4 802530E4 AC24FA60 */ sw $a0, %lo(gSpeakingActorPrintCtx)($at)
/* 1819C8 802530E8 0C0496AE */ jal clamp_printer_coords
/* 1819CC 802530EC 00000000 */ nop
/* 1819D0 802530F0 3C03800A */ lui $v1, %hi(D_8009A650)
/* 1819D4 802530F4 2463A650 */ addiu $v1, $v1, %lo(D_8009A650)
/* 1819D0 802530F0 3C03800A */ lui $v1, %hi(gOverrideFlags)
/* 1819D4 802530F4 2463A650 */ addiu $v1, $v1, %lo(gOverrideFlags)
/* 1819D8 802530F8 AE600070 */ sw $zero, 0x70($s3)
/* 1819DC 802530FC 8C620000 */ lw $v0, ($v1)
/* 1819E0 80253100 3C06802A */ lui $a2, %hi(gSpeakingActorTalkAnim)
@ -231,8 +231,8 @@ glabel ActorSpeak
/* 181B6C 8025328C 0C03A6CC */ jal decrement_status_menu_disabled
/* 181B70 80253290 00000000 */ nop
/* 181B74 80253294 24020001 */ addiu $v0, $zero, 1
/* 181B78 80253298 3C03800A */ lui $v1, %hi(D_8009A650)
/* 181B7C 8025329C 2463A650 */ addiu $v1, $v1, %lo(D_8009A650)
/* 181B78 80253298 3C03800A */ lui $v1, %hi(gOverrideFlags)
/* 181B7C 8025329C 2463A650 */ addiu $v1, $v1, %lo(gOverrideFlags)
/* 181B80 802532A0 8C640000 */ lw $a0, ($v1)
/* 181B84 802532A4 2405FFEF */ addiu $a1, $zero, -0x11
/* 181B88 802532A8 00852024 */ and $a0, $a0, $a1

View File

@ -151,8 +151,8 @@ glabel EndActorSpeech
/* 181DD8 802534F8 0C03A6CC */ jal decrement_status_menu_disabled
/* 181DDC 802534FC 00000000 */ nop
/* 181DE0 80253500 24020001 */ addiu $v0, $zero, 1
/* 181DE4 80253504 3C03800A */ lui $v1, %hi(D_8009A650)
/* 181DE8 80253508 2463A650 */ addiu $v1, $v1, %lo(D_8009A650)
/* 181DE4 80253504 3C03800A */ lui $v1, %hi(gOverrideFlags)
/* 181DE8 80253508 2463A650 */ addiu $v1, $v1, %lo(gOverrideFlags)
/* 181DEC 8025350C 8C640000 */ lw $a0, ($v1)
/* 181DF0 80253510 2405FFEF */ addiu $a1, $zero, -0x11
/* 181DF4 80253514 00852024 */ and $a0, $a0, $a1

View File

@ -100,8 +100,8 @@ glabel update_encounters_neutral
/* 1AD00 8003F900 8262000A */ lb $v0, 0xa($s3)
/* 1AD04 8003F904 10400059 */ beqz $v0, .L8003FA6C
/* 1AD08 8003F908 9263000A */ lbu $v1, 0xa($s3)
/* 1AD0C 8003F90C 3C02800A */ lui $v0, %hi(D_8009A650)
/* 1AD10 8003F910 8C42A650 */ lw $v0, %lo(D_8009A650)($v0)
/* 1AD0C 8003F90C 3C02800A */ lui $v0, %hi(gOverrideFlags)
/* 1AD10 8003F910 8C42A650 */ lw $v0, %lo(gOverrideFlags)($v0)
/* 1AD14 8003F914 30420040 */ andi $v0, $v0, 0x40
/* 1AD18 8003F918 14400002 */ bnez $v0, .L8003F924
/* 1AD1C 8003F91C 2462FFFF */ addiu $v0, $v1, -1
@ -230,8 +230,8 @@ glabel update_encounters_neutral
/* 1AEEC 8003FAEC 922300B4 */ lbu $v1, 0xb4($s1)
/* 1AEF0 8003FAF0 50400030 */ beql $v0, $zero, .L8003FBB4
/* 1AEF4 8003FAF4 3C030020 */ lui $v1, 0x20
/* 1AEF8 8003FAF8 3C02800A */ lui $v0, %hi(D_8009A650)
/* 1AEFC 8003FAFC 8C42A650 */ lw $v0, %lo(D_8009A650)($v0)
/* 1AEF8 8003FAF8 3C02800A */ lui $v0, %hi(gOverrideFlags)
/* 1AEFC 8003FAFC 8C42A650 */ lw $v0, %lo(gOverrideFlags)($v0)
/* 1AF00 8003FB00 30420040 */ andi $v0, $v0, 0x40
/* 1AF04 8003FB04 54400005 */ bnel $v0, $zero, .L8003FB1C
/* 1AF08 8003FB08 0000102D */ daddu $v0, $zero, $zero
@ -431,8 +431,8 @@ glabel update_encounters_neutral
/* 1B1D4 8003FDD4 00431024 */ and $v0, $v0, $v1
/* 1B1D8 8003FDD8 144002BB */ bnez $v0, .L800408C8
/* 1B1DC 8003FDDC 00000000 */ nop
/* 1B1E0 8003FDE0 3C04800A */ lui $a0, %hi(D_8009A650)
/* 1B1E4 8003FDE4 8C84A650 */ lw $a0, %lo(D_8009A650)($a0)
/* 1B1E0 8003FDE0 3C04800A */ lui $a0, %hi(gOverrideFlags)
/* 1B1E4 8003FDE4 8C84A650 */ lw $a0, %lo(gOverrideFlags)($a0)
/* 1B1E8 8003FDE8 30820040 */ andi $v0, $a0, 0x40
/* 1B1EC 8003FDEC 144002B6 */ bnez $v0, .L800408C8
/* 1B1F0 8003FDF0 24020009 */ addiu $v0, $zero, 9

View File

@ -1,84 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
.section .rodata
glabel jtbl_80097D48
.word L800270B4_24B4, L800270E4_24E4, L8002710C_250C, L80027134_2534, L80027168_2568, 0
.section .text
glabel func_80027088
/* 2488 80027088 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 248C 8002708C 0080282D */ daddu $a1, $a0, $zero
/* 2490 80027090 2CA20005 */ sltiu $v0, $a1, 5
/* 2494 80027094 1040003B */ beqz $v0, .L80027184
/* 2498 80027098 AFBF0010 */ sw $ra, 0x10($sp)
/* 249C 8002709C 00051080 */ sll $v0, $a1, 2
/* 24A0 800270A0 3C018009 */ lui $at, %hi(jtbl_80097D48)
/* 24A4 800270A4 00220821 */ addu $at, $at, $v0
/* 24A8 800270A8 8C227D48 */ lw $v0, %lo(jtbl_80097D48)($at)
/* 24AC 800270AC 00400008 */ jr $v0
/* 24B0 800270B0 00000000 */ nop
glabel L800270B4_24B4
/* 24B4 800270B4 24040003 */ addiu $a0, $zero, 3
/* 24B8 800270B8 3C02800A */ lui $v0, %hi(D_8009A650)
/* 24BC 800270BC 2442A650 */ addiu $v0, $v0, %lo(D_8009A650)
/* 24C0 800270C0 3C01800A */ lui $at, %hi(D_8009A5D8)
/* 24C4 800270C4 AC25A5D8 */ sw $a1, %lo(D_8009A5D8)($at)
/* 24C8 800270C8 8C430000 */ lw $v1, ($v0)
/* 24CC 800270CC 2405F0FF */ addiu $a1, $zero, -0xf01
/* 24D0 800270D0 00651824 */ and $v1, $v1, $a1
/* 24D4 800270D4 0C0B1192 */ jal resume_all_group
/* 24D8 800270D8 AC430000 */ sw $v1, ($v0)
/* 24DC 800270DC 08009C61 */ j .L80027184
/* 24E0 800270E0 00000000 */ nop
glabel L800270E4_24E4
/* 24E4 800270E4 24040001 */ addiu $a0, $zero, 1
/* 24E8 800270E8 3C02800A */ lui $v0, %hi(D_8009A650)
/* 24EC 800270EC 2442A650 */ addiu $v0, $v0, %lo(D_8009A650)
/* 24F0 800270F0 3C01800A */ lui $at, %hi(D_8009A5D8)
/* 24F4 800270F4 AC25A5D8 */ sw $a1, %lo(D_8009A5D8)($at)
/* 24F8 800270F8 8C430000 */ lw $v1, ($v0)
/* 24FC 800270FC 2405F1FF */ addiu $a1, $zero, -0xe01
/* 2500 80027100 00651824 */ and $v1, $v1, $a1
/* 2504 80027104 08009C56 */ j .L80027158
/* 2508 80027108 34630100 */ ori $v1, $v1, 0x100
glabel L8002710C_250C
/* 250C 8002710C 24040002 */ addiu $a0, $zero, 2
/* 2510 80027110 3C02800A */ lui $v0, %hi(D_8009A650)
/* 2514 80027114 2442A650 */ addiu $v0, $v0, %lo(D_8009A650)
/* 2518 80027118 3C01800A */ lui $at, %hi(D_8009A5D8)
/* 251C 8002711C AC25A5D8 */ sw $a1, %lo(D_8009A5D8)($at)
/* 2520 80027120 8C430000 */ lw $v1, ($v0)
/* 2524 80027124 2405F3FF */ addiu $a1, $zero, -0xc01
/* 2528 80027128 00651824 */ and $v1, $v1, $a1
/* 252C 8002712C 08009C56 */ j .L80027158
/* 2530 80027130 34630300 */ ori $v1, $v1, 0x300
glabel L80027134_2534
/* 2534 80027134 24040002 */ addiu $a0, $zero, 2
/* 2538 80027138 3C02800A */ lui $v0, %hi(D_8009A650)
/* 253C 8002713C 2442A650 */ addiu $v0, $v0, %lo(D_8009A650)
/* 2540 80027140 3C01800A */ lui $at, %hi(D_8009A5D8)
/* 2544 80027144 AC25A5D8 */ sw $a1, %lo(D_8009A5D8)($at)
/* 2548 80027148 8C430000 */ lw $v1, ($v0)
/* 254C 8002714C 2405F7FF */ addiu $a1, $zero, -0x801
/* 2550 80027150 00651824 */ and $v1, $v1, $a1
/* 2554 80027154 34630700 */ ori $v1, $v1, 0x700
.L80027158:
/* 2558 80027158 0C0B117A */ jal suspend_all_group
/* 255C 8002715C AC430000 */ sw $v1, ($v0)
/* 2560 80027160 08009C61 */ j .L80027184
/* 2564 80027164 00000000 */ nop
glabel L80027168_2568
/* 2568 80027168 3C03800A */ lui $v1, %hi(D_8009A650)
/* 256C 8002716C 2463A650 */ addiu $v1, $v1, %lo(D_8009A650)
/* 2570 80027170 8C620000 */ lw $v0, ($v1)
/* 2574 80027174 3C01800A */ lui $at, %hi(D_8009A5D8)
/* 2578 80027178 AC25A5D8 */ sw $a1, %lo(D_8009A5D8)($at)
/* 257C 8002717C 34420F00 */ ori $v0, $v0, 0xf00
/* 2580 80027180 AC620000 */ sw $v0, ($v1)
.L80027184:
/* 2584 80027184 8FBF0010 */ lw $ra, 0x10($sp)
/* 2588 80027188 03E00008 */ jr $ra
/* 258C 8002718C 27BD0018 */ addiu $sp, $sp, 0x18

View File

@ -336,8 +336,8 @@ glabel gfx_draw_background
/* 3724 80028324 0800A1E4 */ j .L80028790
/* 3728 80028328 00000000 */ nop
.L8002832C:
/* 372C 8002832C 3C02800A */ lui $v0, %hi(D_8009A650)
/* 3730 80028330 8C42A650 */ lw $v0, %lo(D_8009A650)($v0)
/* 372C 8002832C 3C02800A */ lui $v0, %hi(gOverrideFlags)
/* 3730 80028330 8C42A650 */ lw $v0, %lo(gOverrideFlags)($v0)
/* 3734 80028334 30420008 */ andi $v0, $v0, 8
/* 3738 80028338 1040000E */ beqz $v0, .L80028374
/* 373C 8002833C 3C05FF10 */ lui $a1, 0xff10

View File

@ -8,8 +8,8 @@ glabel gfx_draw_frame
/* 1F14 80026B14 3C05800A */ lui $a1, %hi(gMasterGfxPos)
/* 1F18 80026B18 24A5A66C */ addiu $a1, $a1, %lo(gMasterGfxPos)
/* 1F1C 80026B1C AFB00010 */ sw $s0, 0x10($sp)
/* 1F20 80026B20 3C10800A */ lui $s0, %hi(D_8009A650)
/* 1F24 80026B24 2610A650 */ addiu $s0, $s0, %lo(D_8009A650)
/* 1F20 80026B20 3C10800A */ lui $s0, %hi(gOverrideFlags)
/* 1F24 80026B24 2610A650 */ addiu $s0, $s0, %lo(gOverrideFlags)
/* 1F28 80026B28 AFBF0018 */ sw $ra, 0x18($sp)
/* 1F2C 80026B2C AFB10014 */ sw $s1, 0x14($sp)
/* 1F30 80026B30 3C018007 */ lui $at, %hi(gMatrixListPos)
@ -77,8 +77,8 @@ glabel gfx_draw_frame
/* 201C 80026C1C 24040001 */ addiu $a0, $zero, 1
/* 2020 80026C20 3C100010 */ lui $s0, 0x10
.L80026C24:
/* 2024 80026C24 3C11800A */ lui $s1, %hi(D_8009A650)
/* 2028 80026C28 2631A650 */ addiu $s1, $s1, %lo(D_8009A650)
/* 2024 80026C24 3C11800A */ lui $s1, %hi(gOverrideFlags)
/* 2028 80026C28 2631A650 */ addiu $s1, $s1, %lo(gOverrideFlags)
/* 202C 80026C2C 8E220000 */ lw $v0, ($s1)
/* 2030 80026C30 36100010 */ ori $s0, $s0, 0x10
/* 2034 80026C34 00501024 */ and $v0, $v0, $s0

View File

@ -1,77 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel gfx_task_background
/* 1DEC 800269EC 27BDFFE0 */ addiu $sp, $sp, -0x20
/* 1DF0 800269F0 AFB20018 */ sw $s2, 0x18($sp)
/* 1DF4 800269F4 3C120001 */ lui $s2, 1
/* 1DF8 800269F8 36520630 */ ori $s2, $s2, 0x630
/* 1DFC 800269FC AFB10014 */ sw $s1, 0x14($sp)
/* 1E00 80026A00 3C11800A */ lui $s1, %hi(gDisplayContext)
/* 1E04 80026A04 2631A674 */ addiu $s1, $s1, %lo(gDisplayContext)
/* 1E08 80026A08 3C048007 */ lui $a0, %hi(gCurrentDisplayContextIndex)
/* 1E0C 80026A0C 8C8441F4 */ lw $a0, %lo(gCurrentDisplayContextIndex)($a0)
/* 1E10 80026A10 3C058016 */ lui $a1, %hi(D_80164000)
/* 1E14 80026A14 24A54000 */ addiu $a1, $a1, %lo(D_80164000)
/* 1E18 80026A18 AFB00010 */ sw $s0, 0x10($sp)
/* 1E1C 80026A1C 3C10800A */ lui $s0, %hi(gMasterGfxPos)
/* 1E20 80026A20 2610A66C */ addiu $s0, $s0, %lo(gMasterGfxPos)
/* 1E24 80026A24 AFBF001C */ sw $ra, 0x1c($sp)
/* 1E28 80026A28 00041040 */ sll $v0, $a0, 1
/* 1E2C 80026A2C 00441021 */ addu $v0, $v0, $a0
/* 1E30 80026A30 000210C0 */ sll $v0, $v0, 3
/* 1E34 80026A34 00441021 */ addu $v0, $v0, $a0
/* 1E38 80026A38 00021980 */ sll $v1, $v0, 6
/* 1E3C 80026A3C 00431021 */ addu $v0, $v0, $v1
/* 1E40 80026A40 00021080 */ sll $v0, $v0, 2
/* 1E44 80026A44 00441023 */ subu $v0, $v0, $a0
/* 1E48 80026A48 00021100 */ sll $v0, $v0, 4
/* 1E4C 80026A4C 00451021 */ addu $v0, $v0, $a1
/* 1E50 80026A50 AE220000 */ sw $v0, ($s1)
/* 1E54 80026A54 00521021 */ addu $v0, $v0, $s2
/* 1E58 80026A58 0C009C68 */ jal gfx_init_state
/* 1E5C 80026A5C AE020000 */ sw $v0, ($s0)
/* 1E60 80026A60 0C009F84 */ jal gfx_draw_background
/* 1E64 80026A64 00000000 */ nop
/* 1E68 80026A68 8E030000 */ lw $v1, ($s0)
/* 1E6C 80026A6C 3C02E900 */ lui $v0, 0xe900
/* 1E70 80026A70 0060202D */ daddu $a0, $v1, $zero
/* 1E74 80026A74 24630008 */ addiu $v1, $v1, 8
/* 1E78 80026A78 AE030000 */ sw $v1, ($s0)
/* 1E7C 80026A7C AC820000 */ sw $v0, ($a0)
/* 1E80 80026A80 24620008 */ addiu $v0, $v1, 8
/* 1E84 80026A84 AC800004 */ sw $zero, 4($a0)
/* 1E88 80026A88 3C04DF00 */ lui $a0, 0xdf00
/* 1E8C 80026A8C AE020000 */ sw $v0, ($s0)
/* 1E90 80026A90 AC640000 */ sw $a0, ($v1)
/* 1E94 80026A94 AC600004 */ sw $zero, 4($v1)
/* 1E98 80026A98 8E230000 */ lw $v1, ($s1)
/* 1E9C 80026A9C 00521023 */ subu $v0, $v0, $s2
/* 1EA0 80026AA0 00431023 */ subu $v0, $v0, $v1
/* 1EA4 80026AA4 000210C2 */ srl $v0, $v0, 3
/* 1EA8 80026AA8 28420200 */ slti $v0, $v0, 0x200
/* 1EAC 80026AAC 14400003 */ bnez $v0, .L80026ABC
/* 1EB0 80026AB0 3C040001 */ lui $a0, 1
.L80026AB4:
/* 1EB4 80026AB4 08009AAD */ j .L80026AB4
/* 1EB8 80026AB8 00000000 */ nop
.L80026ABC:
/* 1EBC 80026ABC 34840630 */ ori $a0, $a0, 0x630
/* 1EC0 80026AC0 0000302D */ daddu $a2, $zero, $zero
/* 1EC4 80026AC4 00C0382D */ daddu $a3, $a2, $zero
/* 1EC8 80026AC8 3C05800A */ lui $a1, %hi(gMasterGfxPos)
/* 1ECC 80026ACC 8CA5A66C */ lw $a1, %lo(gMasterGfxPos)($a1)
/* 1ED0 80026AD0 3C02800A */ lui $v0, %hi(gDisplayContext)
/* 1ED4 80026AD4 8C42A674 */ lw $v0, %lo(gDisplayContext)($v0)
/* 1ED8 80026AD8 00A42823 */ subu $a1, $a1, $a0
/* 1EDC 80026ADC 00A22823 */ subu $a1, $a1, $v0
/* 1EE0 80026AE0 000528C3 */ sra $a1, $a1, 3
/* 1EE4 80026AE4 00442021 */ addu $a0, $v0, $a0
/* 1EE8 80026AE8 0C00B331 */ jal nuGfxTaskStart
/* 1EEC 80026AEC 000528C0 */ sll $a1, $a1, 3
/* 1EF0 80026AF0 8FBF001C */ lw $ra, 0x1c($sp)
/* 1EF4 80026AF4 8FB20018 */ lw $s2, 0x18($sp)
/* 1EF8 80026AF8 8FB10014 */ lw $s1, 0x14($sp)
/* 1EFC 80026AFC 8FB00010 */ lw $s0, 0x10($sp)
/* 1F00 80026B00 03E00008 */ jr $ra
/* 1F04 80026B04 27BD0020 */ addiu $sp, $sp, 0x20

View File

@ -1,187 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel step_game_loop
/* 1B40 80026740 27BDFFE0 */ addiu $sp, $sp, -0x20
/* 1B44 80026744 AFBF0018 */ sw $ra, 0x18($sp)
/* 1B48 80026748 AFB10014 */ sw $s1, 0x14($sp)
/* 1B4C 8002674C 0C00A21D */ jal update_input
/* 1B50 80026750 AFB00010 */ sw $s0, 0x10($sp)
/* 1B54 80026754 3C038007 */ lui $v1, %hi(gGameStatusPtr)
/* 1B58 80026758 8C63419C */ lw $v1, %lo(gGameStatusPtr)($v1)
/* 1B5C 8002675C 3C040CDF */ lui $a0, 0xcdf
/* 1B60 80026760 94620134 */ lhu $v0, 0x134($v1)
/* 1B64 80026764 3C108011 */ lui $s0, %hi(gPlayerData)
/* 1B68 80026768 2610F290 */ addiu $s0, $s0, %lo(gPlayerData)
/* 1B6C 8002676C 24420001 */ addiu $v0, $v0, 1
/* 1B70 80026770 A4620134 */ sh $v0, 0x134($v1)
/* 1B74 80026774 8E0202BC */ lw $v0, 0x2bc($s0)
/* 1B78 80026778 3484E5FF */ ori $a0, $a0, 0xe5ff
/* 1B7C 8002677C 24420002 */ addiu $v0, $v0, 2
/* 1B80 80026780 AE0202BC */ sw $v0, 0x2bc($s0)
/* 1B84 80026784 0082102B */ sltu $v0, $a0, $v0
/* 1B88 80026788 54400001 */ bnel $v0, $zero, .L80026790
/* 1B8C 8002678C AE0402BC */ sw $a0, 0x2bc($s0)
.L80026790:
/* 1B90 80026790 0C00A3E3 */ jal update_max_rumble_duration
/* 1B94 80026794 00000000 */ nop
/* 1B98 80026798 3C048007 */ lui $a0, %hi(D_80074021)
/* 1B9C 8002679C 24844021 */ addiu $a0, $a0, %lo(D_80074021)
/* 1BA0 800267A0 80820000 */ lb $v0, ($a0)
/* 1BA4 800267A4 90830000 */ lbu $v1, ($a0)
/* 1BA8 800267A8 10400008 */ beqz $v0, .L800267CC
/* 1BAC 800267AC 2462FFFF */ addiu $v0, $v1, -1
/* 1BB0 800267B0 A0820000 */ sb $v0, ($a0)
/* 1BB4 800267B4 00021600 */ sll $v0, $v0, 0x18
/* 1BB8 800267B8 14400087 */ bnez $v0, .L800269D8
/* 1BBC 800267BC 00000000 */ nop
/* 1BC0 800267C0 3C028007 */ lui $v0, %hi(D_80074020)
/* 1BC4 800267C4 90424020 */ lbu $v0, %lo(D_80074020)($v0)
/* 1BC8 800267C8 A0820000 */ sb $v0, ($a0)
.L800267CC:
/* 1BCC 800267CC 0C046EBA */ jal func_8011BAE8
/* 1BD0 800267D0 00000000 */ nop
/* 1BD4 800267D4 0C00E15F */ jal func_8003857C
/* 1BD8 800267D8 00000000 */ nop
/* 1BDC 800267DC 0C048D01 */ jal update_dynamic_entities
/* 1BE0 800267E0 00000000 */ nop
/* 1BE4 800267E4 0C051618 */ jal update_triggers
/* 1BE8 800267E8 00000000 */ nop
/* 1BEC 800267EC 0C0B0F5D */ jal update_scripts
/* 1BF0 800267F0 00000000 */ nop
/* 1BF4 800267F4 0C048DF6 */ jal update_messages
/* 1BF8 800267F8 00000000 */ nop
/* 1BFC 800267FC 0C050584 */ jal update_menu_icons
/* 1C00 80026800 00000000 */ nop
/* 1C04 80026804 0C044B9E */ jal step_current_game_mode
/* 1C08 80026808 00000000 */ nop
/* 1C0C 8002680C 0C043DB4 */ jal update_entities
/* 1C10 80026810 00000000 */ nop
/* 1C14 80026814 0C04E066 */ jal func_80138198
/* 1C18 80026818 00000000 */ nop
/* 1C1C 8002681C 0C052952 */ jal func_8014A548
/* 1C20 80026820 00000000 */ nop
/* 1C24 80026824 0C051C99 */ jal update_ambient_sounds
/* 1C28 80026828 00000000 */ nop
/* 1C2C 8002682C 0C0525CD */ jal func_80149734
/* 1C30 80026830 00000000 */ nop
/* 1C34 80026834 0C051D05 */ jal update_windows
/* 1C38 80026838 00000000 */ nop
/* 1C3C 8002683C 0C00AE9E */ jal update_curtains
/* 1C40 80026840 00000000 */ nop
/* 1C44 80026844 3C10800A */ lui $s0, %hi(D_8009A650)
/* 1C48 80026848 2610A650 */ addiu $s0, $s0, %lo(D_8009A650)
/* 1C4C 8002684C 8E040000 */ lw $a0, ($s0)
/* 1C50 80026850 30820020 */ andi $v0, $a0, 0x20
/* 1C54 80026854 10400035 */ beqz $v0, .L8002692C
/* 1C58 80026858 00000000 */ nop
/* 1C5C 8002685C 3C118007 */ lui $s1, %hi(D_800741A2)
/* 1C60 80026860 263141A2 */ addiu $s1, $s1, %lo(D_800741A2)
/* 1C64 80026864 86230000 */ lh $v1, ($s1)
/* 1C68 80026868 10600005 */ beqz $v1, .L80026880
/* 1C6C 8002686C 24020001 */ addiu $v0, $zero, 1
/* 1C70 80026870 1062001C */ beq $v1, $v0, .L800268E4
/* 1C74 80026874 34840008 */ ori $a0, $a0, 8
/* 1C78 80026878 08009A4F */ j .L8002693C
/* 1C7C 8002687C 00000000 */ nop
.L80026880:
/* 1C80 80026880 34820200 */ ori $v0, $a0, 0x200
/* 1C84 80026884 0C03805E */ jal disable_player_input
/* 1C88 80026888 AE020000 */ sw $v0, ($s0)
/* 1C8C 8002688C 3C048007 */ lui $a0, %hi(D_800741A0)
/* 1C90 80026890 248441A0 */ addiu $a0, $a0, %lo(D_800741A0)
/* 1C94 80026894 240500FF */ addiu $a1, $zero, 0xff
/* 1C98 80026898 84820000 */ lh $v0, ($a0)
/* 1C9C 8002689C 94830000 */ lhu $v1, ($a0)
/* 1CA0 800268A0 14450008 */ bne $v0, $a1, .L800268C4
/* 1CA4 800268A4 2462000A */ addiu $v0, $v1, 0xa
/* 1CA8 800268A8 24020001 */ addiu $v0, $zero, 1
/* 1CAC 800268AC A6220000 */ sh $v0, ($s1)
/* 1CB0 800268B0 24020003 */ addiu $v0, $zero, 3
/* 1CB4 800268B4 3C01800A */ lui $at, %hi(D_8009A690)
/* 1CB8 800268B8 A422A690 */ sh $v0, %lo(D_8009A690)($at)
/* 1CBC 800268BC 08009A4F */ j .L8002693C
/* 1CC0 800268C0 00000000 */ nop
.L800268C4:
/* 1CC4 800268C4 A4820000 */ sh $v0, ($a0)
/* 1CC8 800268C8 00021400 */ sll $v0, $v0, 0x10
/* 1CCC 800268CC 00021403 */ sra $v0, $v0, 0x10
/* 1CD0 800268D0 28420100 */ slti $v0, $v0, 0x100
/* 1CD4 800268D4 50400019 */ beql $v0, $zero, .L8002693C
/* 1CD8 800268D8 A4850000 */ sh $a1, ($a0)
/* 1CDC 800268DC 08009A4F */ j .L8002693C
/* 1CE0 800268E0 00000000 */ nop
.L800268E4:
/* 1CE4 800268E4 3C02800A */ lui $v0, %hi(D_8009A690)
/* 1CE8 800268E8 2442A690 */ addiu $v0, $v0, %lo(D_8009A690)
/* 1CEC 800268EC 94430000 */ lhu $v1, ($v0)
/* 1CF0 800268F0 AE040000 */ sw $a0, ($s0)
/* 1CF4 800268F4 2463FFFF */ addiu $v1, $v1, -1
/* 1CF8 800268F8 A4430000 */ sh $v1, ($v0)
/* 1CFC 800268FC 00031C00 */ sll $v1, $v1, 0x10
/* 1D00 80026900 1460000E */ bnez $v1, .L8002693C
/* 1D04 80026904 00000000 */ nop
/* 1D08 80026908 0C05260E */ jal func_80149838
/* 1D0C 8002690C 00000000 */ nop
/* 1D10 80026910 0C00CD3C */ jal set_game_mode
/* 1D14 80026914 0000202D */ daddu $a0, $zero, $zero
/* 1D18 80026918 8E020000 */ lw $v0, ($s0)
/* 1D1C 8002691C 2403FFDF */ addiu $v1, $zero, -0x21
/* 1D20 80026920 00431024 */ and $v0, $v0, $v1
/* 1D24 80026924 08009A4F */ j .L8002693C
/* 1D28 80026928 AE020000 */ sw $v0, ($s0)
.L8002692C:
/* 1D2C 8002692C 3C018007 */ lui $at, %hi(D_800741A0)
/* 1D30 80026930 A42041A0 */ sh $zero, %lo(D_800741A0)($at)
/* 1D34 80026934 3C018007 */ lui $at, %hi(D_800741A2)
/* 1D38 80026938 A42041A2 */ sh $zero, %lo(D_800741A2)($at)
.L8002693C:
/* 1D3C 8002693C 3C04800A */ lui $a0, %hi(D_8009A650)
/* 1D40 80026940 2484A650 */ addiu $a0, $a0, %lo(D_8009A650)
/* 1D44 80026944 8C830000 */ lw $v1, ($a0)
/* 1D48 80026948 30620100 */ andi $v0, $v1, 0x100
/* 1D4C 8002694C 14400003 */ bnez $v0, .L8002695C
/* 1D50 80026950 34621000 */ ori $v0, $v1, 0x1000
/* 1D54 80026954 2402EFFF */ addiu $v0, $zero, -0x1001
/* 1D58 80026958 00621024 */ and $v0, $v1, $v0
.L8002695C:
/* 1D5C 8002695C AC820000 */ sw $v0, ($a0)
/* 1D60 80026960 3C04800A */ lui $a0, %hi(D_8009A650)
/* 1D64 80026964 2484A650 */ addiu $a0, $a0, %lo(D_8009A650)
/* 1D68 80026968 8C830000 */ lw $v1, ($a0)
/* 1D6C 8002696C 30620200 */ andi $v0, $v1, 0x200
/* 1D70 80026970 14400003 */ bnez $v0, .L80026980
/* 1D74 80026974 34622000 */ ori $v0, $v1, 0x2000
/* 1D78 80026978 2402DFFF */ addiu $v0, $zero, -0x2001
/* 1D7C 8002697C 00621024 */ and $v0, $v1, $v0
.L80026980:
/* 1D80 80026980 AC820000 */ sw $v0, ($a0)
/* 1D84 80026984 3C04800A */ lui $a0, %hi(D_8009A650)
/* 1D88 80026988 2484A650 */ addiu $a0, $a0, %lo(D_8009A650)
/* 1D8C 8002698C 8C830000 */ lw $v1, ($a0)
/* 1D90 80026990 30620400 */ andi $v0, $v1, 0x400
/* 1D94 80026994 14400003 */ bnez $v0, .L800269A4
/* 1D98 80026998 34624000 */ ori $v0, $v1, 0x4000
/* 1D9C 8002699C 2402BFFF */ addiu $v0, $zero, -0x4001
/* 1DA0 800269A0 00621024 */ and $v0, $v1, $v0
.L800269A4:
/* 1DA4 800269A4 AC820000 */ sw $v0, ($a0)
/* 1DA8 800269A8 3C04800A */ lui $a0, %hi(D_8009A650)
/* 1DAC 800269AC 2484A650 */ addiu $a0, $a0, %lo(D_8009A650)
/* 1DB0 800269B0 8C830000 */ lw $v1, ($a0)
/* 1DB4 800269B4 30620800 */ andi $v0, $v1, 0x800
/* 1DB8 800269B8 14400004 */ bnez $v0, .L800269CC
/* 1DBC 800269BC 34628000 */ ori $v0, $v1, 0x8000
/* 1DC0 800269C0 3C02FFFF */ lui $v0, 0xffff
/* 1DC4 800269C4 34427FFF */ ori $v0, $v0, 0x7fff
/* 1DC8 800269C8 00621024 */ and $v0, $v1, $v0
.L800269CC:
/* 1DCC 800269CC AC820000 */ sw $v0, ($a0)
/* 1DD0 800269D0 0C00A67F */ jal rand_int
/* 1DD4 800269D4 24040001 */ addiu $a0, $zero, 1
.L800269D8:
/* 1DD8 800269D8 8FBF0018 */ lw $ra, 0x18($sp)
/* 1DDC 800269DC 8FB10014 */ lw $s1, 0x14($sp)
/* 1DE0 800269E0 8FB00010 */ lw $s0, 0x10($sp)
/* 1DE4 800269E4 03E00008 */ jr $ra
/* 1DE8 800269E8 27BD0020 */ addiu $sp, $sp, 0x20

View File

@ -2,8 +2,8 @@
.set noreorder # don't insert nops after branches
glabel update_effects
/* 35150 80059D50 3C02800A */ lui $v0, %hi(D_8009A650)
/* 35154 80059D54 8C42A650 */ lw $v0, %lo(D_8009A650)($v0)
/* 35150 80059D50 3C02800A */ lui $v0, %hi(gOverrideFlags)
/* 35154 80059D54 8C42A650 */ lw $v0, %lo(gOverrideFlags)($v0)
/* 35158 80059D58 27BDFFD8 */ addiu $sp, $sp, -0x28
/* 3515C 80059D5C AFBF0020 */ sw $ra, 0x20($sp)
/* 35160 80059D60 AFB3001C */ sw $s3, 0x1c($sp)

View File

@ -1,75 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel clamp_angle
/* 4F24 80029B24 3C014561 */ lui $at, 0x4561
/* 4F28 80029B28 44811000 */ mtc1 $at, $f2
/* 4F2C 80029B2C 46006005 */ abs.s $f0, $f12
/* 4F30 80029B30 4600103C */ c.lt.s $f2, $f0
/* 4F34 80029B34 00000000 */ nop
/* 4F38 80029B38 45000026 */ bc1f .L80029BD4
/* 4F3C 80029B3C 00000000 */ nop
/* 4F40 80029B40 4600610D */ trunc.w.s $f4, $f12
/* 4F44 80029B44 44042000 */ mfc1 $a0, $f4
/* 4F48 80029B48 00000000 */ nop
/* 4F4C 80029B4C 0480000F */ bltz $a0, .L80029B8C
/* 4F50 80029B50 3C02B60B */ lui $v0, 0xb60b
/* 4F54 80029B54 344260B7 */ ori $v0, $v0, 0x60b7
/* 4F58 80029B58 00820018 */ mult $a0, $v0
/* 4F5C 80029B5C 00041FC3 */ sra $v1, $a0, 0x1f
/* 4F60 80029B60 00002810 */ mfhi $a1
/* 4F64 80029B64 00A41021 */ addu $v0, $a1, $a0
/* 4F68 80029B68 00021203 */ sra $v0, $v0, 8
/* 4F6C 80029B6C 00431023 */ subu $v0, $v0, $v1
/* 4F70 80029B70 00021840 */ sll $v1, $v0, 1
/* 4F74 80029B74 00621821 */ addu $v1, $v1, $v0
/* 4F78 80029B78 00031100 */ sll $v0, $v1, 4
/* 4F7C 80029B7C 00431023 */ subu $v0, $v0, $v1
/* 4F80 80029B80 000210C0 */ sll $v0, $v0, 3
/* 4F84 80029B84 0800A6F1 */ j .L80029BC4
/* 4F88 80029B88 00822023 */ subu $a0, $a0, $v0
.L80029B8C:
/* 4F8C 80029B8C 00042023 */ negu $a0, $a0
/* 4F90 80029B90 344260B7 */ ori $v0, $v0, 0x60b7
/* 4F94 80029B94 00820018 */ mult $a0, $v0
/* 4F98 80029B98 00041FC3 */ sra $v1, $a0, 0x1f
/* 4F9C 80029B9C 00002810 */ mfhi $a1
/* 4FA0 80029BA0 00A41021 */ addu $v0, $a1, $a0
/* 4FA4 80029BA4 00021203 */ sra $v0, $v0, 8
/* 4FA8 80029BA8 00431023 */ subu $v0, $v0, $v1
/* 4FAC 80029BAC 00021840 */ sll $v1, $v0, 1
/* 4FB0 80029BB0 00621821 */ addu $v1, $v1, $v0
/* 4FB4 80029BB4 00031100 */ sll $v0, $v1, 4
/* 4FB8 80029BB8 00431023 */ subu $v0, $v0, $v1
/* 4FBC 80029BBC 000210C0 */ sll $v0, $v0, 3
/* 4FC0 80029BC0 00442023 */ subu $a0, $v0, $a0
.L80029BC4:
/* 4FC4 80029BC4 44840000 */ mtc1 $a0, $f0
/* 4FC8 80029BC8 00000000 */ nop
/* 4FCC 80029BCC 03E00008 */ jr $ra
/* 4FD0 80029BD0 46800020 */ cvt.s.w $f0, $f0
.L80029BD4:
/* 4FD4 80029BD4 44801000 */ mtc1 $zero, $f2
/* 4FD8 80029BD8 3C0143B4 */ lui $at, 0x43b4
/* 4FDC 80029BDC 44810000 */ mtc1 $at, $f0
.L80029BE0:
/* 4FE0 80029BE0 4602603C */ c.lt.s $f12, $f2
/* 4FE4 80029BE4 00000000 */ nop
/* 4FE8 80029BE8 45030001 */ bc1tl .L80029BF0
/* 4FEC 80029BEC 46006300 */ add.s $f12, $f12, $f0
.L80029BF0:
/* 4FF0 80029BF0 460C003E */ c.le.s $f0, $f12
/* 4FF4 80029BF4 00000000 */ nop
/* 4FF8 80029BF8 45030001 */ bc1tl .L80029C00
/* 4FFC 80029BFC 46006301 */ sub.s $f12, $f12, $f0
.L80029C00:
/* 5000 80029C00 460C103E */ c.le.s $f2, $f12
/* 5004 80029C04 00000000 */ nop
/* 5008 80029C08 4500FFF5 */ bc1f .L80029BE0
/* 500C 80029C0C 00000000 */ nop
/* 5010 80029C10 4600603C */ c.lt.s $f12, $f0
/* 5014 80029C14 00000000 */ nop
/* 5018 80029C18 4500FFF1 */ bc1f .L80029BE0
/* 501C 80029C1C 00000000 */ nop
/* 5020 80029C20 03E00008 */ jr $ra
/* 5024 80029C24 46006006 */ mov.s $f0, $f12

View File

@ -1,62 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel cosine
/* 47D4 800293D4 3C06B60B */ lui $a2, 0xb60b
/* 47D8 800293D8 34C660B7 */ ori $a2, $a2, 0x60b7
/* 47DC 800293DC 00042400 */ sll $a0, $a0, 0x10
/* 47E0 800293E0 00042C03 */ sra $a1, $a0, 0x10
/* 47E4 800293E4 00A60018 */ mult $a1, $a2
/* 47E8 800293E8 000427C3 */ sra $a0, $a0, 0x1f
/* 47EC 800293EC 00003810 */ mfhi $a3
/* 47F0 800293F0 00E51021 */ addu $v0, $a3, $a1
/* 47F4 800293F4 00021203 */ sra $v0, $v0, 8
/* 47F8 800293F8 00441023 */ subu $v0, $v0, $a0
/* 47FC 800293FC 00021840 */ sll $v1, $v0, 1
/* 4800 80029400 00621821 */ addu $v1, $v1, $v0
/* 4804 80029404 00031100 */ sll $v0, $v1, 4
/* 4808 80029408 00431023 */ subu $v0, $v0, $v1
/* 480C 8002940C 000210C0 */ sll $v0, $v0, 3
/* 4810 80029410 00A22823 */ subu $a1, $a1, $v0
/* 4814 80029414 00051400 */ sll $v0, $a1, 0x10
/* 4818 80029418 04410002 */ bgez $v0, .L80029424
/* 481C 8002941C 00A0182D */ daddu $v1, $a1, $zero
/* 4820 80029420 24A30168 */ addiu $v1, $a1, 0x168
.L80029424:
/* 4824 80029424 00031C00 */ sll $v1, $v1, 0x10
/* 4828 80029428 00032C03 */ sra $a1, $v1, 0x10
/* 482C 8002942C 00A60018 */ mult $a1, $a2
/* 4830 80029430 00031FC3 */ sra $v1, $v1, 0x1f
/* 4834 80029434 00003810 */ mfhi $a3
/* 4838 80029438 00E51021 */ addu $v0, $a3, $a1
/* 483C 8002943C 000211C3 */ sra $v0, $v0, 7
/* 4840 80029440 00431023 */ subu $v0, $v0, $v1
/* 4844 80029444 00021840 */ sll $v1, $v0, 1
/* 4848 80029448 00621821 */ addu $v1, $v1, $v0
/* 484C 8002944C 00031100 */ sll $v0, $v1, 4
/* 4850 80029450 00431023 */ subu $v0, $v0, $v1
/* 4854 80029454 00021080 */ sll $v0, $v0, 2
/* 4858 80029458 00A21823 */ subu $v1, $a1, $v0
/* 485C 8002945C 00031400 */ sll $v0, $v1, 0x10
/* 4860 80029460 00021403 */ sra $v0, $v0, 0x10
/* 4864 80029464 2842005B */ slti $v0, $v0, 0x5b
/* 4868 80029468 14400003 */ bnez $v0, .L80029478
/* 486C 8002946C 0060202D */ daddu $a0, $v1, $zero
/* 4870 80029470 240200B4 */ addiu $v0, $zero, 0xb4
/* 4874 80029474 00432023 */ subu $a0, $v0, $v1
.L80029478:
/* 4878 80029478 28A200B4 */ slti $v0, $a1, 0xb4
/* 487C 8002947C 10400006 */ beqz $v0, .L80029498
/* 4880 80029480 00041400 */ sll $v0, $a0, 0x10
/* 4884 80029484 00021383 */ sra $v0, $v0, 0xe
/* 4888 80029488 3C018007 */ lui $at, %hi(D_80074274)
/* 488C 8002948C 00220821 */ addu $at, $at, $v0
/* 4890 80029490 03E00008 */ jr $ra
/* 4894 80029494 C4204274 */ lwc1 $f0, %lo(D_80074274)($at)
.L80029498:
/* 4898 80029498 00021383 */ sra $v0, $v0, 0xe
/* 489C 8002949C 3C018007 */ lui $at, %hi(D_80074274)
/* 48A0 800294A0 00220821 */ addu $at, $at, $v0
/* 48A4 800294A4 C4204274 */ lwc1 $f0, %lo(D_80074274)($at)
/* 48A8 800294A8 03E00008 */ jr $ra
/* 48AC 800294AC 46000007 */ neg.s $f0, $f0

View File

@ -1,40 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel rand_int
/* 4DFC 800299FC 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 4E00 80029A00 AFBF0010 */ sw $ra, 0x10($sp)
/* 4E04 80029A04 04820001 */ bltzl $a0, .L80029A0C
/* 4E08 80029A08 00042023 */ negu $a0, $a0
.L80029A0C:
/* 4E0C 80029A0C 10800018 */ beqz $a0, .L80029A70
/* 4E10 80029A10 0000102D */ daddu $v0, $zero, $zero
/* 4E14 80029A14 24020001 */ addiu $v0, $zero, 1
/* 4E18 80029A18 54820006 */ bnel $a0, $v0, .L80029A34
/* 4E1C 80029A1C 24020064 */ addiu $v0, $zero, 0x64
/* 4E20 80029A20 0C00A665 */ jal func_80029994
/* 4E24 80029A24 240403E8 */ addiu $a0, $zero, 0x3e8
/* 4E28 80029A28 284201F5 */ slti $v0, $v0, 0x1f5
/* 4E2C 80029A2C 0800A69C */ j .L80029A70
/* 4E30 80029A30 38420001 */ xori $v0, $v0, 1
.L80029A34:
/* 4E34 80029A34 10820005 */ beq $a0, $v0, .L80029A4C
/* 4E38 80029A38 00000000 */ nop
/* 4E3C 80029A3C 0C00A665 */ jal func_80029994
/* 4E40 80029A40 00000000 */ nop
/* 4E44 80029A44 0800A69C */ j .L80029A70
/* 4E48 80029A48 00000000 */ nop
.L80029A4C:
/* 4E4C 80029A4C 0C00A665 */ jal func_80029994
/* 4E50 80029A50 240403F1 */ addiu $a0, $zero, 0x3f1
/* 4E54 80029A54 3C036666 */ lui $v1, 0x6666
/* 4E58 80029A58 34636667 */ ori $v1, $v1, 0x6667
/* 4E5C 80029A5C 00430018 */ mult $v0, $v1
/* 4E60 80029A60 000217C3 */ sra $v0, $v0, 0x1f
/* 4E64 80029A64 00002810 */ mfhi $a1
/* 4E68 80029A68 00051883 */ sra $v1, $a1, 2
/* 4E6C 80029A6C 00621023 */ subu $v0, $v1, $v0
.L80029A70:
/* 4E70 80029A70 8FBF0010 */ lw $ra, 0x10($sp)
/* 4E74 80029A74 03E00008 */ jr $ra
/* 4E78 80029A78 27BD0018 */ addiu $sp, $sp, 0x18

View File

@ -1,68 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel transform_point
/* 4A20 80029620 44853000 */ mtc1 $a1, $f6
/* 4A24 80029624 C4800000 */ lwc1 $f0, ($a0)
/* 4A28 80029628 46060002 */ mul.s $f0, $f0, $f6
/* 4A2C 8002962C 00000000 */ nop
/* 4A30 80029630 44864000 */ mtc1 $a2, $f8
/* 4A34 80029634 C4820010 */ lwc1 $f2, 0x10($a0)
/* 4A38 80029638 46081082 */ mul.s $f2, $f2, $f8
/* 4A3C 8002963C 00000000 */ nop
/* 4A40 80029640 44875000 */ mtc1 $a3, $f10
/* 4A44 80029644 C4840020 */ lwc1 $f4, 0x20($a0)
/* 4A48 80029648 460A2102 */ mul.s $f4, $f4, $f10
/* 4A4C 8002964C 00000000 */ nop
/* 4A50 80029650 46020000 */ add.s $f0, $f0, $f2
/* 4A54 80029654 8FA20014 */ lw $v0, 0x14($sp)
/* 4A58 80029658 8FA30018 */ lw $v1, 0x18($sp)
/* 4A5C 8002965C 46040000 */ add.s $f0, $f0, $f4
/* 4A60 80029660 C4820030 */ lwc1 $f2, 0x30($a0)
/* 4A64 80029664 8FA5001C */ lw $a1, 0x1c($sp)
/* 4A68 80029668 46020000 */ add.s $f0, $f0, $f2
/* 4A6C 8002966C 8FA60020 */ lw $a2, 0x20($sp)
/* 4A70 80029670 E4400000 */ swc1 $f0, ($v0)
/* 4A74 80029674 C4800004 */ lwc1 $f0, 4($a0)
/* 4A78 80029678 46060002 */ mul.s $f0, $f0, $f6
/* 4A7C 8002967C 00000000 */ nop
/* 4A80 80029680 C4840014 */ lwc1 $f4, 0x14($a0)
/* 4A84 80029684 46082102 */ mul.s $f4, $f4, $f8
/* 4A88 80029688 00000000 */ nop
/* 4A8C 8002968C C4820024 */ lwc1 $f2, 0x24($a0)
/* 4A90 80029690 460A1082 */ mul.s $f2, $f2, $f10
/* 4A94 80029694 00000000 */ nop
/* 4A98 80029698 46040000 */ add.s $f0, $f0, $f4
/* 4A9C 8002969C 46020000 */ add.s $f0, $f0, $f2
/* 4AA0 800296A0 C4820034 */ lwc1 $f2, 0x34($a0)
/* 4AA4 800296A4 46020000 */ add.s $f0, $f0, $f2
/* 4AA8 800296A8 E4600000 */ swc1 $f0, ($v1)
/* 4AAC 800296AC C4800008 */ lwc1 $f0, 8($a0)
/* 4AB0 800296B0 46060002 */ mul.s $f0, $f0, $f6
/* 4AB4 800296B4 00000000 */ nop
/* 4AB8 800296B8 C4840018 */ lwc1 $f4, 0x18($a0)
/* 4ABC 800296BC 46082102 */ mul.s $f4, $f4, $f8
/* 4AC0 800296C0 00000000 */ nop
/* 4AC4 800296C4 C4820028 */ lwc1 $f2, 0x28($a0)
/* 4AC8 800296C8 460A1082 */ mul.s $f2, $f2, $f10
/* 4ACC 800296CC 00000000 */ nop
/* 4AD0 800296D0 46040000 */ add.s $f0, $f0, $f4
/* 4AD4 800296D4 46020000 */ add.s $f0, $f0, $f2
/* 4AD8 800296D8 C4820038 */ lwc1 $f2, 0x38($a0)
/* 4ADC 800296DC 46020000 */ add.s $f0, $f0, $f2
/* 4AE0 800296E0 E4A00000 */ swc1 $f0, ($a1)
/* 4AE4 800296E4 C480000C */ lwc1 $f0, 0xc($a0)
/* 4AE8 800296E8 46060002 */ mul.s $f0, $f0, $f6
/* 4AEC 800296EC 00000000 */ nop
/* 4AF0 800296F0 C484001C */ lwc1 $f4, 0x1c($a0)
/* 4AF4 800296F4 46082102 */ mul.s $f4, $f4, $f8
/* 4AF8 800296F8 00000000 */ nop
/* 4AFC 800296FC C482002C */ lwc1 $f2, 0x2c($a0)
/* 4B00 80029700 460A1082 */ mul.s $f2, $f2, $f10
/* 4B04 80029704 00000000 */ nop
/* 4B08 80029708 46040000 */ add.s $f0, $f0, $f4
/* 4B0C 8002970C 46020000 */ add.s $f0, $f0, $f2
/* 4B10 80029710 C482003C */ lwc1 $f2, 0x3c($a0)
/* 4B14 80029714 46020000 */ add.s $f0, $f0, $f2
/* 4B18 80029718 03E00008 */ jr $ra
/* 4B1C 8002971C E4C00000 */ swc1 $f0, ($a2)

View File

@ -229,8 +229,8 @@ glabel L800730F8_4E4F8
/* 4E558 80073158 8C63419C */ lw $v1, %lo(gGameStatusPtr)($v1)
/* 4E55C 8007315C 0220202D */ daddu $a0, $s1, $zero
/* 4E560 80073160 906200AA */ lbu $v0, 0xaa($v1)
/* 4E564 80073164 3C05800A */ lui $a1, %hi(D_8009A650)
/* 4E568 80073168 24A5A650 */ addiu $a1, $a1, %lo(D_8009A650)
/* 4E564 80073164 3C05800A */ lui $a1, %hi(gOverrideFlags)
/* 4E568 80073168 24A5A650 */ addiu $a1, $a1, %lo(gOverrideFlags)
/* 4E56C 8007316C 34420001 */ ori $v0, $v0, 1
/* 4E570 80073170 A06200AA */ sb $v0, 0xaa($v1)
/* 4E574 80073174 8CA20000 */ lw $v0, ($a1)

View File

@ -37,8 +37,8 @@ glabel can_pause
/* 7FF0C 800E6A5C 1440003C */ bnez $v0, .L800E6B50
/* 7FF10 800E6A60 0000102D */ daddu $v0, $zero, $zero
.L800E6A64:
/* 7FF14 800E6A64 3C02800A */ lui $v0, %hi(D_8009A650)
/* 7FF18 800E6A68 8C42A650 */ lw $v0, %lo(D_8009A650)($v0)
/* 7FF14 800E6A64 3C02800A */ lui $v0, %hi(gOverrideFlags)
/* 7FF18 800E6A68 8C42A650 */ lw $v0, %lo(gOverrideFlags)($v0)
/* 7FF1C 800E6A6C 3C030004 */ lui $v1, 4
/* 7FF20 800E6A70 00431024 */ and $v0, $v0, $v1
/* 7FF24 800E6A74 14400036 */ bnez $v0, .L800E6B50

View File

@ -200,8 +200,8 @@ glabel L800E6F14_803C4
/* 8044C 800E6F9C 00021400 */ sll $v0, $v0, 0x10
/* 80450 800E6FA0 144000B2 */ bnez $v0, L800E726C_8071C
/* 80454 800E6FA4 24040002 */ addiu $a0, $zero, 2
/* 80458 800E6FA8 3C02800A */ lui $v0, %hi(D_8009A650)
/* 8045C 800E6FAC 2442A650 */ addiu $v0, $v0, %lo(D_8009A650)
/* 80458 800E6FA8 3C02800A */ lui $v0, %hi(gOverrideFlags)
/* 8045C 800E6FAC 2442A650 */ addiu $v0, $v0, %lo(gOverrideFlags)
/* 80460 800E6FB0 8C430000 */ lw $v1, ($v0)
/* 80464 800E6FB4 3C018011 */ lui $at, %hi(D_8010CD00)
/* 80468 800E6FB8 A424CD00 */ sh $a0, %lo(D_8010CD00)($at)
@ -343,8 +343,8 @@ glabel L800E7090_80540
/* 80654 800E71A4 02421021 */ addu $v0, $s2, $v0
/* 80658 800E71A8 0C03A900 */ jal use_consumable
/* 8065C 800E71AC 8C440108 */ lw $a0, 0x108($v0)
/* 80660 800E71B0 3C04800A */ lui $a0, %hi(D_8009A650)
/* 80664 800E71B4 2484A650 */ addiu $a0, $a0, %lo(D_8009A650)
/* 80660 800E71B0 3C04800A */ lui $a0, %hi(gOverrideFlags)
/* 80664 800E71B4 2484A650 */ addiu $a0, $a0, %lo(gOverrideFlags)
/* 80668 800E71B8 8C820000 */ lw $v0, ($a0)
/* 8066C 800E71BC 3C030020 */ lui $v1, 0x20
/* 80670 800E71C0 00431025 */ or $v0, $v0, $v1
@ -355,8 +355,8 @@ glabel L800E7090_80540
/* 80680 800E71D0 0000202D */ daddu $a0, $zero, $zero
/* 80684 800E71D4 2403FFDF */ addiu $v1, $zero, -0x21
/* 80688 800E71D8 8E820000 */ lw $v0, ($s4)
/* 8068C 800E71DC 3C05800A */ lui $a1, %hi(D_8009A650)
/* 80690 800E71E0 24A5A650 */ addiu $a1, $a1, %lo(D_8009A650)
/* 8068C 800E71DC 3C05800A */ lui $a1, %hi(gOverrideFlags)
/* 80690 800E71E0 24A5A650 */ addiu $a1, $a1, %lo(gOverrideFlags)
/* 80694 800E71E4 00431024 */ and $v0, $v0, $v1
/* 80698 800E71E8 AE820000 */ sw $v0, ($s4)
/* 8069C 800E71EC 8CA20000 */ lw $v0, ($a1)
@ -379,8 +379,8 @@ glabel L800E7208_806B8
/* 806DC 800E722C 00000000 */ nop
/* 806E0 800E7230 2403FFDF */ addiu $v1, $zero, -0x21
/* 806E4 800E7234 8E820000 */ lw $v0, ($s4)
/* 806E8 800E7238 3C04800A */ lui $a0, %hi(D_8009A650)
/* 806EC 800E723C 2484A650 */ addiu $a0, $a0, %lo(D_8009A650)
/* 806E8 800E7238 3C04800A */ lui $a0, %hi(gOverrideFlags)
/* 806EC 800E723C 2484A650 */ addiu $a0, $a0, %lo(gOverrideFlags)
/* 806F0 800E7240 3C018011 */ lui $at, %hi(D_8010CD00)
/* 806F4 800E7244 A420CD00 */ sh $zero, %lo(D_8010CD00)($at)
/* 806F8 800E7248 00431024 */ and $v0, $v0, $v1

View File

@ -9,8 +9,8 @@ glabel D_80150CC8
.section .text
glabel func_80132D94
/* C9494 80132D94 3C02800A */ lui $v0, %hi(D_8009A650)
/* C9498 80132D98 8C42A650 */ lw $v0, %lo(D_8009A650)($v0)
/* C9494 80132D94 3C02800A */ lui $v0, %hi(gOverrideFlags)
/* C9498 80132D98 8C42A650 */ lw $v0, %lo(gOverrideFlags)($v0)
/* C949C 80132D9C 27BDFFE0 */ addiu $sp, $sp, -0x20
/* C94A0 80132DA0 AFBF0018 */ sw $ra, 0x18($sp)
/* C94A4 80132DA4 AFB10014 */ sw $s1, 0x14($sp)

View File

@ -27,8 +27,8 @@ glabel func_80133FC8
/* CA720 80134020 00000000 */ nop
/* CA724 80134024 1440003D */ bnez $v0, .L8013411C
/* CA728 80134028 2402FFFF */ addiu $v0, $zero, -1
/* CA72C 8013402C 3C02800A */ lui $v0, %hi(D_8009A650)
/* CA730 80134030 8C42A650 */ lw $v0, %lo(D_8009A650)($v0)
/* CA72C 8013402C 3C02800A */ lui $v0, %hi(gOverrideFlags)
/* CA730 80134030 8C42A650 */ lw $v0, %lo(gOverrideFlags)($v0)
/* CA734 80134034 3C030020 */ lui $v1, 0x20
/* CA738 80134038 00431024 */ and $v0, $v0, $v1
/* CA73C 8013403C 14400037 */ bnez $v0, .L8013411C

View File

@ -84,8 +84,8 @@ glabel test_item_player_collision
/* CA33C 80133C3C 146200D4 */ bne $v1, $v0, .L80133F90
/* CA340 80133C40 0000102D */ daddu $v0, $zero, $zero
.L80133C44:
/* CA344 80133C44 3C02800A */ lui $v0, %hi(D_8009A650)
/* CA348 80133C48 8C42A650 */ lw $v0, %lo(D_8009A650)($v0)
/* CA344 80133C44 3C02800A */ lui $v0, %hi(gOverrideFlags)
/* CA348 80133C48 8C42A650 */ lw $v0, %lo(gOverrideFlags)($v0)
/* CA34C 80133C4C 3C030020 */ lui $v1, 0x20
/* CA350 80133C50 00431024 */ and $v0, $v0, $v1
/* CA354 80133C54 144000CE */ bnez $v0, .L80133F90

View File

@ -12,8 +12,8 @@ glabel jtbl_80150C50
.section .text
glabel update_item_entities
/* C85EC 80131EEC 3C02800A */ lui $v0, %hi(D_8009A650)
/* C85F0 80131EF0 8C42A650 */ lw $v0, %lo(D_8009A650)($v0)
/* C85EC 80131EEC 3C02800A */ lui $v0, %hi(gOverrideFlags)
/* C85F0 80131EF0 8C42A650 */ lw $v0, %lo(gOverrideFlags)($v0)
/* C85F4 80131EF4 27BDFFC0 */ addiu $sp, $sp, -0x40
/* C85F8 80131EF8 AFBF0038 */ sw $ra, 0x38($sp)
/* C85FC 80131EFC AFB30034 */ sw $s3, 0x34($sp)

View File

@ -607,8 +607,8 @@ glabel update_item_entity_collectable
/* CB20C 80134B0C 30620200 */ andi $v0, $v1, 0x200
/* CB210 80134B10 14400010 */ bnez $v0, .L80134B54
/* CB214 80134B14 30622000 */ andi $v0, $v1, 0x2000
/* CB218 80134B18 3C02800A */ lui $v0, %hi(D_8009A650)
/* CB21C 80134B1C 8C42A650 */ lw $v0, %lo(D_8009A650)($v0)
/* CB218 80134B18 3C02800A */ lui $v0, %hi(gOverrideFlags)
/* CB21C 80134B1C 8C42A650 */ lw $v0, %lo(gOverrideFlags)($v0)
/* CB220 80134B20 30420300 */ andi $v0, $v0, 0x300
/* CB224 80134B24 1440000B */ bnez $v0, .L80134B54
/* CB228 80134B28 30622000 */ andi $v0, $v1, 0x2000
@ -1282,8 +1282,8 @@ glabel update_item_entity_collectable
.L801354C8:
/* CBBC8 801354C8 0240202D */ daddu $a0, $s2, $zero
.L801354CC:
/* CBBCC 801354CC 3C02800A */ lui $v0, %hi(D_8009A650)
/* CBBD0 801354D0 2442A650 */ addiu $v0, $v0, %lo(D_8009A650)
/* CBBCC 801354CC 3C02800A */ lui $v0, %hi(gOverrideFlags)
/* CBBD0 801354D0 2442A650 */ addiu $v0, $v0, %lo(gOverrideFlags)
/* CBBD4 801354D4 3C018015 */ lui $at, %hi(D_801565A8)
/* CBBD8 801354D8 A42065A8 */ sh $zero, %lo(D_801565A8)($at)
/* CBBDC 801354DC 8C430000 */ lw $v1, ($v0)
@ -1317,8 +1317,8 @@ glabel update_item_entity_collectable
/* CBC40 80135540 3C018015 */ lui $at, %hi(D_801565A4)
/* CBC44 80135544 A42265A4 */ sh $v0, %lo(D_801565A4)($at)
/* CBC48 80135548 2402001C */ addiu $v0, $zero, 0x1c
/* CBC4C 8013554C 3C03800A */ lui $v1, %hi(D_8009A650)
/* CBC50 80135550 2463A650 */ addiu $v1, $v1, %lo(D_8009A650)
/* CBC4C 8013554C 3C03800A */ lui $v1, %hi(gOverrideFlags)
/* CBC50 80135550 2463A650 */ addiu $v1, $v1, %lo(gOverrideFlags)
/* CBC54 80135554 A242001B */ sb $v0, 0x1b($s2)
/* CBC58 80135558 A240001A */ sb $zero, 0x1a($s2)
/* CBC5C 8013555C 8C620000 */ lw $v0, ($v1)

View File

@ -16,8 +16,8 @@ glabel update_item_entity_static
/* CBD84 80135684 3C018015 */ lui $at, %hi(D_801565A4)
/* CBD88 80135688 A42265A4 */ sh $v0, %lo(D_801565A4)($at)
/* CBD8C 8013568C 2402001C */ addiu $v0, $zero, 0x1c
/* CBD90 80135690 3C03800A */ lui $v1, %hi(D_8009A650)
/* CBD94 80135694 2463A650 */ addiu $v1, $v1, %lo(D_8009A650)
/* CBD90 80135690 3C03800A */ lui $v1, %hi(gOverrideFlags)
/* CBD94 80135694 2463A650 */ addiu $v1, $v1, %lo(gOverrideFlags)
/* CBD98 80135698 A202001B */ sb $v0, 0x1b($s0)
/* CBD9C 8013569C A200001A */ sb $zero, 0x1a($s0)
/* CBDA0 801356A0 8C620000 */ lw $v0, ($v1)

View File

@ -38,8 +38,8 @@ glabel update_item_entity_temp
/* CBE44 80135744 00000000 */ nop
/* CBE48 80135748 0C03BD8A */ jal func_800EF628
/* CBE4C 8013574C 00000000 */ nop
/* CBE50 80135750 3C03800A */ lui $v1, %hi(D_8009A650)
/* CBE54 80135754 2463A650 */ addiu $v1, $v1, %lo(D_8009A650)
/* CBE50 80135750 3C03800A */ lui $v1, %hi(gOverrideFlags)
/* CBE54 80135754 2463A650 */ addiu $v1, $v1, %lo(gOverrideFlags)
/* CBE58 80135758 8C620000 */ lw $v0, ($v1)
/* CBE5C 8013575C 24040002 */ addiu $a0, $zero, 2
/* CBE60 80135760 34420040 */ ori $v0, $v0, 0x40
@ -630,8 +630,8 @@ glabel L80135F94_CC694
/* CC6B4 80135FB4 00000000 */ nop
/* CC6B8 80135FB8 0C03BD80 */ jal func_800EF600
/* CC6BC 80135FBC 00000000 */ nop
/* CC6C0 80135FC0 3C02800A */ lui $v0, %hi(D_8009A650)
/* CC6C4 80135FC4 2442A650 */ addiu $v0, $v0, %lo(D_8009A650)
/* CC6C0 80135FC0 3C02800A */ lui $v0, %hi(gOverrideFlags)
/* CC6C4 80135FC4 2442A650 */ addiu $v0, $v0, %lo(gOverrideFlags)
/* CC6C8 80135FC8 8C430000 */ lw $v1, ($v0)
/* CC6CC 80135FCC 2404FFBF */ addiu $a0, $zero, -0x41
/* CC6D0 80135FD0 00641824 */ and $v1, $v1, $a0
@ -863,8 +863,8 @@ glabel L80136310_CCA10
/* CCA28 80136328 00000000 */ nop
/* CCA2C 8013632C 0C03BD80 */ jal func_800EF600
/* CCA30 80136330 00000000 */ nop
/* CCA34 80136334 3C02800A */ lui $v0, %hi(D_8009A650)
/* CCA38 80136338 2442A650 */ addiu $v0, $v0, %lo(D_8009A650)
/* CCA34 80136334 3C02800A */ lui $v0, %hi(gOverrideFlags)
/* CCA38 80136338 2442A650 */ addiu $v0, $v0, %lo(gOverrideFlags)
/* CCA3C 8013633C 2405FFBF */ addiu $a1, $zero, -0x41
/* CCA40 80136340 8C430000 */ lw $v1, ($v0)
/* CCA44 80136344 3C048015 */ lui $a0, %hi(D_801568E0)

View File

@ -77,8 +77,8 @@ glabel func_802B6000_E27C90
/* E27DB0 802B6120 E6000054 */ swc1 $f0, 0x54($s0)
/* E27DB4 802B6124 0C03A5D8 */ jal open_status_menu_long
/* E27DB8 802B6128 00000000 */ nop
/* E27DBC 802B612C 3C03800A */ lui $v1, %hi(D_8009A650)
/* E27DC0 802B6130 2463A650 */ addiu $v1, $v1, %lo(D_8009A650)
/* E27DBC 802B612C 3C03800A */ lui $v1, %hi(gOverrideFlags)
/* E27DC0 802B6130 2463A650 */ addiu $v1, $v1, %lo(gOverrideFlags)
/* E27DC4 802B6134 8C620000 */ lw $v0, ($v1)
/* E27DC8 802B6138 34420040 */ ori $v0, $v0, 0x40
/* E27DCC 802B613C AC620000 */ sw $v0, ($v1)
@ -160,8 +160,8 @@ glabel func_802B6000_E27C90
/* E27EF0 802B6260 2403F7FF */ addiu $v1, $zero, -0x801
/* E27EF4 802B6264 A6220010 */ sh $v0, 0x10($s1)
/* E27EF8 802B6268 8E220000 */ lw $v0, ($s1)
/* E27EFC 802B626C 3C04800A */ lui $a0, %hi(D_8009A650)
/* E27F00 802B6270 2484A650 */ addiu $a0, $a0, %lo(D_8009A650)
/* E27EFC 802B626C 3C04800A */ lui $a0, %hi(gOverrideFlags)
/* E27F00 802B6270 2484A650 */ addiu $a0, $a0, %lo(gOverrideFlags)
/* E27F04 802B6274 A22000BF */ sb $zero, 0xbf($s1)
/* E27F08 802B6278 00431024 */ and $v0, $v0, $v1
/* E27F0C 802B627C AE220000 */ sw $v0, ($s1)

View File

@ -54,8 +54,8 @@ glabel func_802B6000_E27F40
/* E28000 802B60C0 0C03A5D8 */ jal open_status_menu_long
/* E28004 802B60C4 00000000 */ nop
/* E28008 802B60C8 240400E8 */ addiu $a0, $zero, 0xe8
/* E2800C 802B60CC 3C03800A */ lui $v1, %hi(D_8009A650)
/* E28010 802B60D0 2463A650 */ addiu $v1, $v1, %lo(D_8009A650)
/* E2800C 802B60CC 3C03800A */ lui $v1, %hi(gOverrideFlags)
/* E28010 802B60D0 2463A650 */ addiu $v1, $v1, %lo(gOverrideFlags)
/* E28014 802B60D4 8C620000 */ lw $v0, ($v1)
/* E28018 802B60D8 0000282D */ daddu $a1, $zero, $zero
/* E2801C 802B60DC 34420040 */ ori $v0, $v0, 0x40
@ -538,8 +538,8 @@ glabel L802B67BC_E286FC
/* E2871C 802B67DC 3C03FF7F */ lui $v1, 0xff7f
/* E28720 802B67E0 3463FFFF */ ori $v1, $v1, 0xffff
/* E28724 802B67E4 8E020000 */ lw $v0, ($s0)
/* E28728 802B67E8 3C04800A */ lui $a0, %hi(D_8009A650)
/* E2872C 802B67EC 2484A650 */ addiu $a0, $a0, %lo(D_8009A650)
/* E28728 802B67E8 3C04800A */ lui $a0, %hi(gOverrideFlags)
/* E2872C 802B67EC 2484A650 */ addiu $a0, $a0, %lo(gOverrideFlags)
/* E28730 802B67F0 00431024 */ and $v0, $v0, $v1
/* E28734 802B67F4 AE020000 */ sw $v0, ($s0)
/* E28738 802B67F8 8C820000 */ lw $v0, ($a0)

View File

@ -13,8 +13,8 @@ glabel func_802B6000_E291A0
/* E291C0 802B6020 04A1000D */ bgez $a1, .L802B6058
/* E291C4 802B6024 3C027FFF */ lui $v0, 0x7fff
/* E291C8 802B6028 3442FFFF */ ori $v0, $v0, 0xffff
/* E291CC 802B602C 3C04800A */ lui $a0, %hi(D_8009A650)
/* E291D0 802B6030 2484A650 */ addiu $a0, $a0, %lo(D_8009A650)
/* E291CC 802B602C 3C04800A */ lui $a0, %hi(gOverrideFlags)
/* E291D0 802B6030 2484A650 */ addiu $a0, $a0, %lo(gOverrideFlags)
/* E291D4 802B6034 8C830000 */ lw $v1, ($a0)
/* E291D8 802B6038 00A21024 */ and $v0, $a1, $v0
/* E291DC 802B603C AE220000 */ sw $v0, ($s1)
@ -170,8 +170,8 @@ glabel L802B6250_E293F0
/* E29414 802B6274 00000000 */ nop
/* E29418 802B6278 0C039769 */ jal set_action_state
/* E2941C 802B627C 0000202D */ daddu $a0, $zero, $zero
/* E29420 802B6280 3C02800A */ lui $v0, %hi(D_8009A650)
/* E29424 802B6284 2442A650 */ addiu $v0, $v0, %lo(D_8009A650)
/* E29420 802B6280 3C02800A */ lui $v0, %hi(gOverrideFlags)
/* E29424 802B6284 2442A650 */ addiu $v0, $v0, %lo(gOverrideFlags)
/* E29428 802B6288 8C430000 */ lw $v1, ($v0)
/* E2942C 802B628C 2404FFBF */ addiu $a0, $zero, -0x41
/* E29430 802B6290 00641824 */ and $v1, $v1, $a0

View File

@ -20,8 +20,8 @@ glabel func_802B60A4_E29514
/* E29550 802B60E0 04A10032 */ bgez $a1, .L802B61AC
/* E29554 802B60E4 3C037FFF */ lui $v1, 0x7fff
/* E29558 802B60E8 3463FFFF */ ori $v1, $v1, 0xffff
/* E2955C 802B60EC 3C04800A */ lui $a0, %hi(D_8009A650)
/* E29560 802B60F0 2484A650 */ addiu $a0, $a0, %lo(D_8009A650)
/* E2955C 802B60EC 3C04800A */ lui $a0, %hi(gOverrideFlags)
/* E29560 802B60F0 2484A650 */ addiu $a0, $a0, %lo(gOverrideFlags)
/* E29564 802B60F4 8C820000 */ lw $v0, ($a0)
/* E29568 802B60F8 00A31824 */ and $v1, $a1, $v1
/* E2956C 802B60FC AE630000 */ sw $v1, ($s3)
@ -82,8 +82,8 @@ glabel func_802B60A4_E29514
.L802B61CC:
/* E2963C 802B61CC 3C04802B */ lui $a0, %hi(D_802B6EE4)
/* E29640 802B61D0 24846EE4 */ addiu $a0, $a0, %lo(D_802B6EE4)
/* E29644 802B61D4 3C03800A */ lui $v1, %hi(D_8009A650)
/* E29648 802B61D8 2463A650 */ addiu $v1, $v1, %lo(D_8009A650)
/* E29644 802B61D4 3C03800A */ lui $v1, %hi(gOverrideFlags)
/* E29648 802B61D8 2463A650 */ addiu $v1, $v1, %lo(gOverrideFlags)
/* E2964C 802B61DC C4800000 */ lwc1 $f0, ($a0)
/* E29650 802B61E0 3C013F80 */ lui $at, 0x3f80
/* E29654 802B61E4 4481E000 */ mtc1 $at, $f28
@ -334,8 +334,8 @@ glabel func_802B60A4_E29514
.L802B6598:
/* E29A08 802B6598 3C04802B */ lui $a0, %hi(D_802B6EE4)
/* E29A0C 802B659C 24846EE4 */ addiu $a0, $a0, %lo(D_802B6EE4)
/* E29A10 802B65A0 3C11800A */ lui $s1, %hi(D_8009A650)
/* E29A14 802B65A4 2631A650 */ addiu $s1, $s1, %lo(D_8009A650)
/* E29A10 802B65A0 3C11800A */ lui $s1, %hi(gOverrideFlags)
/* E29A14 802B65A4 2631A650 */ addiu $s1, $s1, %lo(gOverrideFlags)
/* E29A18 802B65A8 C4800000 */ lwc1 $f0, ($a0)
/* E29A1C 802B65AC 3C013F80 */ lui $at, 0x3f80
/* E29A20 802B65B0 44811000 */ mtc1 $at, $f2
@ -906,8 +906,8 @@ glabel L802B6E08_E2A278
/* E2A2A4 802B6E34 AE620000 */ sw $v0, ($s3)
/* E2A2A8 802B6E38 0C03BCCA */ jal enable_partner_ai
/* E2A2AC 802B6E3C 00000000 */ nop
/* E2A2B0 802B6E40 3C04800A */ lui $a0, %hi(D_8009A650)
/* E2A2B4 802B6E44 2484A650 */ addiu $a0, $a0, %lo(D_8009A650)
/* E2A2B0 802B6E40 3C04800A */ lui $a0, %hi(gOverrideFlags)
/* E2A2B4 802B6E44 2484A650 */ addiu $a0, $a0, %lo(gOverrideFlags)
/* E2A2B8 802B6E48 8C820000 */ lw $v0, ($a0)
/* E2A2BC 802B6E4C 2403FFBF */ addiu $v1, $zero, -0x41
/* E2A2C0 802B6E50 00431024 */ and $v0, $v0, $v1

View File

@ -184,8 +184,8 @@ glabel func_8011D9B8
.L8011DC3C:
/* B433C 8011DC3C 3C038015 */ lui $v1, %hi(D_801533AC)
/* B4340 8011DC40 8C6333AC */ lw $v1, %lo(D_801533AC)($v1)
/* B4344 8011DC44 3C02800A */ lui $v0, %hi(D_8009A650)
/* B4348 8011DC48 8C42A650 */ lw $v0, %lo(D_8009A650)($v0)
/* B4344 8011DC44 3C02800A */ lui $v0, %hi(gOverrideFlags)
/* B4348 8011DC48 8C42A650 */ lw $v0, %lo(gOverrideFlags)($v0)
/* B434C 8011DC4C 3C018015 */ lui $at, %hi(D_8014B7F0)
/* B4350 8011DC50 AC35B7F0 */ sw $s5, %lo(D_8014B7F0)($at)
/* B4354 8011DC54 00031880 */ sll $v1, $v1, 2

View File

@ -1,10 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel get_game_mode
/* E928 80033528 3C02800A */ lui $v0, %hi(D_800A08F0)
/* E92C 8003352C 844208F0 */ lh $v0, %lo(D_800A08F0)($v0)
/* E930 80033530 03E00008 */ jr $ra
/* E934 80033534 00000000 */ nop
/* E938 80033538 00000000 */ nop
/* E93C 8003353C 00000000 */ nop

View File

@ -1,18 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel set_game_mode
/* E8F0 800334F0 27BDFFE8 */ addiu $sp, $sp, -0x18
/* E8F4 800334F4 3C01800A */ lui $at, %hi(D_800A08F0)
/* E8F8 800334F8 A42408F0 */ sh $a0, %lo(D_800A08F0)($at)
/* E8FC 800334FC 00042400 */ sll $a0, $a0, 0x10
/* E900 80033500 00042383 */ sra $a0, $a0, 0xe
/* E904 80033504 AFBF0010 */ sw $ra, 0x10($sp)
/* E908 80033508 3C058007 */ lui $a1, %hi(D_80077850)
/* E90C 8003350C 00A42821 */ addu $a1, $a1, $a0
/* E910 80033510 8CA57850 */ lw $a1, %lo(D_80077850)($a1)
/* E914 80033514 0C044B2A */ jal _set_game_mode
/* E918 80033518 0000202D */ daddu $a0, $zero, $zero
/* E91C 8003351C 8FBF0010 */ lw $ra, 0x10($sp)
/* E920 80033520 03E00008 */ jr $ra
/* E924 80033524 27BD0018 */ addiu $sp, $sp, 0x18

View File

@ -25,8 +25,8 @@ glabel func_80033BC0
/* F010 80033C10 2402FFFF */ addiu $v0, $zero, -1
/* F014 80033C14 0C017CBC */ jal nuGfxSetCfb
/* F018 80033C18 A0C20000 */ sb $v0, ($a2)
/* F01C 80033C1C 3C04800A */ lui $a0, %hi(D_8009A650)
/* F020 80033C20 2484A650 */ addiu $a0, $a0, %lo(D_8009A650)
/* F01C 80033C1C 3C04800A */ lui $a0, %hi(gOverrideFlags)
/* F020 80033C20 2484A650 */ addiu $a0, $a0, %lo(gOverrideFlags)
/* F024 80033C24 8C820000 */ lw $v0, ($a0)
/* F028 80033C28 2403FFF7 */ addiu $v1, $zero, -9
/* F02C 80033C2C 00431024 */ and $v0, $v0, $v1

View File

@ -18,8 +18,8 @@ glabel step_battle
/* ED18 80033918 8C42A64C */ lw $v0, %lo(D_8009A64C)($v0)
/* ED1C 8003391C 14620089 */ bne $v1, $v0, .L80033B44
/* ED20 80033920 2484FFFF */ addiu $a0, $a0, -1
/* ED24 80033924 3C02800A */ lui $v0, %hi(D_8009A650)
/* ED28 80033928 2442A650 */ addiu $v0, $v0, %lo(D_8009A650)
/* ED24 80033924 3C02800A */ lui $v0, %hi(gOverrideFlags)
/* ED28 80033928 2442A650 */ addiu $v0, $v0, %lo(gOverrideFlags)
/* ED2C 8003392C 8C430000 */ lw $v1, ($v0)
/* ED30 80033930 A2040000 */ sb $a0, ($s0)
/* ED34 80033934 34630008 */ ori $v1, $v1, 8
@ -135,8 +135,8 @@ glabel step_battle
/* EEDC 80033ADC AC220908 */ sw $v0, %lo(D_800A0908)($at)
/* EEE0 80033AE0 0C009C22 */ jal func_80027088
/* EEE4 80033AE4 0000202D */ daddu $a0, $zero, $zero
/* EEE8 80033AE8 3C05800A */ lui $a1, %hi(D_8009A650)
/* EEEC 80033AEC 24A5A650 */ addiu $a1, $a1, %lo(D_8009A650)
/* EEE8 80033AE8 3C05800A */ lui $a1, %hi(gOverrideFlags)
/* EEEC 80033AEC 24A5A650 */ addiu $a1, $a1, %lo(gOverrideFlags)
/* EEF0 80033AF0 2403FFF7 */ addiu $v1, $zero, -9
/* EEF4 80033AF4 8CA20000 */ lw $v0, ($a1)
/* EEF8 80033AF8 3C04800A */ lui $a0, %hi(D_800A0900)

View File

@ -128,8 +128,8 @@ glabel begin_state_logos
/* F45C 8003405C 24040001 */ addiu $a0, $zero, 1
/* F460 80034060 0C016727 */ jal clear_effect_data
/* F464 80034064 00000000 */ nop
/* F468 80034068 3C03800A */ lui $v1, %hi(D_8009A650)
/* F46C 8003406C 2463A650 */ addiu $v1, $v1, %lo(D_8009A650)
/* F468 80034068 3C03800A */ lui $v1, %hi(gOverrideFlags)
/* F46C 8003406C 2463A650 */ addiu $v1, $v1, %lo(gOverrideFlags)
/* F470 80034070 8C620000 */ lw $v0, ($v1)
/* F474 80034074 34420002 */ ori $v0, $v0, 2
/* F478 80034078 0C00CE1D */ jal intro_logos_update_fade

Some files were not shown because too many files have changed in this diff Show More