diff options
Diffstat (limited to 'src/pokemon_storage_system.c')
-rw-r--r-- | src/pokemon_storage_system.c | 1085 |
1 files changed, 123 insertions, 962 deletions
diff --git a/src/pokemon_storage_system.c b/src/pokemon_storage_system.c index 1660316de..fcca744c2 100644 --- a/src/pokemon_storage_system.c +++ b/src/pokemon_storage_system.c @@ -128,7 +128,7 @@ struct PokemonStorageSystemData u16 field_B0[528 / 2]; u16 field_2C0; u16 field_2C2; - u8 field_2C4; + u8 field_2C4; // Unused u8 field_2C5; u8 showPartyMenuState; u8 unk_02C7; @@ -136,21 +136,21 @@ struct PokemonStorageSystemData bool8 unk_02C9; s16 newCurrBoxId; u16 bg2_X; - s16 field_2CE; + s16 wallpaperScrollSpeed; u16 field_2D0; u8 field_2D2; - u8 field_2D3; - u8 field_2D4; - u16 field_2D6; - s16 field_2D8; - u16 field_2DA; - u16 field_2DC; - u16 field_2DE; - u16 field_2E0; + u8 field_2D3; // Written to, but never read. + u8 field_2D4; // Written to, but never read. + u16 field_2D6; // Written to, but never read. + s16 field_2D8; // Written to, but never read. + u16 field_2DA; // Written to, but never read. + u16 field_2DC; // Written to, but never read. + u16 field_2DE; // Written to, but never read. + u16 field_2E0; // Written to, but never read. u8 filler[22]; u8 field_2F8[1024]; u8 field_6F8; - u8 field_6F9; + u8 field_6F9; // Written to, but never read. u8 field_6FA; s8 field_6FB; u16 field_6FC[16]; @@ -160,14 +160,14 @@ struct PokemonStorageSystemData struct Sprite *field_728[2]; struct Sprite *field_730[2]; u32 field_738; - u8 field_73C[80]; - u16 field_78C; + u8 field_73C[80]; // Unused + u16 field_78C; // Written to, but never read. s16 wallpaperSetId; s16 wallpaperId; u16 field_792[360]; u8 wallpaperChangeState; u8 field_A63; - u8 field_A64; + u8 boxScrollDestination; s8 field_A65; u8 *wallpaperTiles; struct Sprite *movingMonSprite; @@ -189,12 +189,12 @@ struct PokemonStorageSystemData u8 field_C68; s8 field_C69; u8 field_C6A; - u8 field_C6B; + u8 field_C6B; // Written to, but never read. struct WindowTemplate menuWindow; struct StorageMenu menuItems[7]; u8 menuItemsCount; u8 menuWidth; - u8 field_CAE; + u8 field_CAE; // Written to, but never read. u16 field_CB0; struct Sprite *field_CB4; struct Sprite *field_CB8; @@ -247,7 +247,7 @@ struct PokemonStorageSystemData u16 field_2176[8]; u8 field_2186; u8 field_2187; - u8 field_2188; + u8 pokemonSummaryScreenMode; union { struct Pokemon *mon; @@ -262,13 +262,13 @@ struct PokemonStorageSystemData struct UnkStorageStruct field_2204[3]; u16 movingItem; u16 field_2236; - u8 field_2238; + u8 field_2238; // Unused u16 field_223A; u16 *field_223C; struct Sprite *cursorMonSprite; u16 field_2244[0x40]; u8 field_22C4[0x800]; - u8 field_2AC4[0x1800]; + u8 field_2AC4[0x1800]; // Unused u8 field_42C4[0x800]; u8 field_4AC4[0x1000]; u8 field_5AC4[0x800]; @@ -658,7 +658,7 @@ static void SetBoxSpeciesAndPersonalities(u8 boxId); static void sub_80CB9D0(struct Sprite *sprite, u16 partyId); static void sub_80CC370(u8 taskId); static void sub_80CCB50(u8 boxId); -static s8 sub_80CC644(u8 boxId); +static s8 DetermineBoxScrollDirection(u8 boxId); static void sub_80CCA3C(const void *tilemap, s8 direction, u8 arg2); static s16 sub_80CD00C(const u8 *string); static bool8 MonPlaceChange_Shift(void); @@ -2146,7 +2146,7 @@ static void VblankCb_PSS(void) static void Cb2_PSS(void) { RunTasks(); - do_scheduled_bg_tilemap_copies_to_vram(); + DoScheduledBgTilemapCopiesToVram(); ScrollBackground(); sub_80CAA14(); AnimateSprites(); @@ -2157,7 +2157,7 @@ static void Cb2_EnterPSS(u8 boxOption) { ResetTasks(); sCurrentBoxOption = boxOption; - sPSSData = Alloc(sizeof(*sPSSData)); + sPSSData = Alloc(sizeof(struct PokemonStorageSystemData)); if (sPSSData == NULL) { SetMainCallback2(Cb2_ExitPSS); @@ -2177,7 +2177,7 @@ static void Cb2_EnterPSS(u8 boxOption) static void Cb2_ReturnToPSS(void) { ResetTasks(); - sPSSData = Alloc(sizeof(*sPSSData)); + sPSSData = Alloc(sizeof(struct PokemonStorageSystemData)); if (sPSSData == NULL) { SetMainCallback2(Cb2_ExitPSS); @@ -2214,7 +2214,7 @@ static void sub_80C7E98(void) gReservedSpriteTileCount = 0x280; sub_80D2A90(&sPSSData->unk_0020, sPSSData->unk_0028, 8); gKeyRepeatStartDelay = 20; - clear_scheduled_bg_copies_to_vram(); + ClearScheduledBgCopiesToVram(); sub_80D259C(3); sub_80D2644(0, 1, gUnknown_0857239C, 8, 4); sub_80D2770(0, 1, 0); @@ -2360,11 +2360,11 @@ static void Cb_ShowPSS(u8 taskId) { case 0: PlaySE(SE_PC_LOGIN); - sub_80F9BCC(0x14, 0, 1); + ComputerScreenOpenEffect(20, 0, 1); sPSSData->state++; break; case 1: - if (!sub_80F9C1C()) + if (!IsComputerScreenOpenEffectActive()) SetPSSCallback(Cb_MainPSS); break; } @@ -2576,7 +2576,7 @@ static void Cb_MainPSS(u8 taskId) sPSSData->state = 7; break; case 24: - PlaySE(SE_HAZURE); + PlaySE(SE_FAILURE); break; } break; @@ -2622,12 +2622,12 @@ static void Cb_MainPSS(u8 taskId) } break; case 4: - PlaySE(SE_HAZURE); + PlaySE(SE_FAILURE); PrintStorageActionText(PC_TEXT_LAST_POKE); sPSSData->state = 6; break; case 5: - PlaySE(SE_HAZURE); + PlaySE(SE_FAILURE); PrintStorageActionText(PC_TEXT_PLEASE_REMOVE_MAIL); sPSSData->state = 6; break; @@ -2843,17 +2843,17 @@ static void Cb_OnSelectedMon(u8 taskId) } break; case 3: - PlaySE(SE_HAZURE); + PlaySE(SE_FAILURE); PrintStorageActionText(PC_TEXT_LAST_POKE); sPSSData->state = 6; break; case 5: - PlaySE(SE_HAZURE); + PlaySE(SE_FAILURE); PrintStorageActionText(PC_TEXT_CANT_RELEASE_EGG); sPSSData->state = 6; break; case 4: - PlaySE(SE_HAZURE); + PlaySE(SE_FAILURE); PrintStorageActionText(PC_TEXT_PLEASE_REMOVE_MAIL); sPSSData->state = 6; break; @@ -3277,7 +3277,7 @@ static void Cb_ItemToBag(u8 taskId) case 0: if (!AddBagItem(sPSSData->cursorMonItem, 1)) { - PlaySE(SE_HAZURE); + PlaySE(SE_FAILURE); PrintStorageActionText(PC_TEXT_BAG_FULL); sPSSData->state = 3; } @@ -3742,7 +3742,7 @@ static void Cb_OnCloseBoxPressed(u8 taskId) case 0: if (IsMonBeingMoved()) { - PlaySE(SE_HAZURE); + PlaySE(SE_FAILURE); PrintStorageActionText(PC_TEXT_HOLDING_POKE); sPSSData->state = 1; } @@ -3781,11 +3781,11 @@ static void Cb_OnCloseBoxPressed(u8 taskId) } break; case 3: - sub_80F9BF4(0x14, 0, 1); + ComputerScreenCloseEffect(20, 0, 1); sPSSData->state++; break; case 4: - if (!sub_80F9C30()) + if (!IsComputerScreenCloseEffectActive()) { sub_80CABE0(); gPlayerPartyCount = CalculatePlayerPartyCount(); @@ -3803,7 +3803,7 @@ static void Cb_OnBPressed(u8 taskId) case 0: if (IsMonBeingMoved()) { - PlaySE(SE_HAZURE); + PlaySE(SE_FAILURE); PrintStorageActionText(PC_TEXT_HOLDING_POKE); sPSSData->state = 1; } @@ -3842,11 +3842,11 @@ static void Cb_OnBPressed(u8 taskId) } break; case 3: - sub_80F9BF4(0x14, 0, 0); + ComputerScreenCloseEffect(20, 0, 0); sPSSData->state++; break; case 4: - if (!sub_80F9C30()) + if (!IsComputerScreenCloseEffectActive()) { sub_80CABE0(); gPlayerPartyCount = CalculatePlayerPartyCount(); @@ -3879,7 +3879,7 @@ static void Cb_ChangeScreen(u8 taskId) boxMons = sPSSData->field_218C.box; monIndex = sPSSData->field_2187; maxMonIndex = sPSSData->field_2186; - mode = sPSSData->field_2188; + mode = sPSSData->pokemonSummaryScreenMode; FreePSSData(); if (mode == PSS_MODE_NORMAL && boxMons == &gUnknown_02039D14.box) ShowPokemonSummaryScreenSet40EF(mode, boxMons, monIndex, maxMonIndex, Cb2_ReturnToPSS); @@ -3892,7 +3892,7 @@ static void Cb_ChangeScreen(u8 taskId) break; case SCREEN_CHANGE_ITEM_FROM_BAG: FreePSSData(); - GoToBagMenu(11, 0, Cb2_ReturnToPSS); + GoToBagMenu(ITEMMENULOCATION_PCBOX, 0, Cb2_ReturnToPSS); break; } @@ -3944,7 +3944,7 @@ static void LoadPSSMenuGfx(void) LZ77UnCompWram(gUnknown_085722A0, sPSSData->field_5AC4); SetBgTilemapBuffer(1, sPSSData->field_5AC4); ShowBg(1); - schedule_bg_copy_tilemap_to_vram(1); + ScheduleBgCopyTilemapToVram(1); } static bool8 InitPSSWindows(void) @@ -4010,7 +4010,7 @@ static void RefreshCursorMonData(void) LoadCursorMonGfx(sPSSData->cursorMonSpecies, sPSSData->cursorMonPersonality); PrintCursorMonInfo(); sub_80CA65C(); - schedule_bg_copy_tilemap_to_vram(0); + ScheduleBgCopyTilemapToVram(0); } static void BoxSetMosaic(void) @@ -4154,7 +4154,7 @@ static void sub_80CA65C(void) } sub_80D2918(0); - schedule_bg_copy_tilemap_to_vram(1); + ScheduleBgCopyTilemapToVram(1); } static void sub_80CA704(void) @@ -4181,7 +4181,7 @@ static void sub_80CA704(void) sub_80D2918(2); } - schedule_bg_copy_tilemap_to_vram(1); + ScheduleBgCopyTilemapToVram(1); sPSSData->unk_02C7 = 0; } @@ -4202,7 +4202,7 @@ static bool8 ShowPartyMenu(void) sPSSData->field_2C2++; sub_80D27F4(1, 3, 1); sub_80D2918(1); - schedule_bg_copy_tilemap_to_vram(1); + ScheduleBgCopyTilemapToVram(1); sub_80CBAF0(8); if (++sPSSData->field_2C5 == 20) { @@ -4236,7 +4236,7 @@ static bool8 HidePartyMenu(void) sub_80CBAF0(-8); if (++sPSSData->field_2C5 != 20) { - schedule_bg_copy_tilemap_to_vram(1); + ScheduleBgCopyTilemapToVram(1); return TRUE; } else @@ -4246,7 +4246,7 @@ static bool8 HidePartyMenu(void) CompactPartySlots(); sub_80D27AC(2, 0, 0, 9, 2); sub_80D2918(2); - schedule_bg_copy_tilemap_to_vram(1); + ScheduleBgCopyTilemapToVram(1); return FALSE; } } @@ -4262,7 +4262,7 @@ static void sub_80CA984(bool8 arg0) sub_80D27AC(2, 0, 2, 9, 2); sub_80D2918(2); - schedule_bg_copy_tilemap_to_vram(1); + ScheduleBgCopyTilemapToVram(1); } static void sub_80CA9C0(void) @@ -4331,7 +4331,7 @@ static void sub_80CAB20(void) sub_80CAA74(); sub_80D27AC(1, 0, 0, 12, 22); sub_80D2918(1); - schedule_bg_copy_tilemap_to_vram(1); + ScheduleBgCopyTilemapToVram(1); } static void SetUpDoShowPartyMenu(void) @@ -4422,7 +4422,7 @@ static void PrintStorageActionText(u8 id) DrawTextBorderOuter(1, 2, 14); PutWindowTilemap(1); CopyWindowToVram(1, 2); - schedule_bg_copy_tilemap_to_vram(0); + ScheduleBgCopyTilemapToVram(0); } static void ShowYesNoWindow(s8 cursorPos) @@ -4434,7 +4434,7 @@ static void ShowYesNoWindow(s8 cursorPos) static void ClearBottomWindow(void) { ClearStdWindowAndFrameToTransparent(1, FALSE); - schedule_bg_copy_tilemap_to_vram(0); + ScheduleBgCopyTilemapToVram(0); } static void AddWallpaperSetsMenu(void) @@ -5276,9 +5276,9 @@ static void sub_80CC370(u8 taskId) static void SetUpScrollToBox(u8 boxId) { - s8 direction = sub_80CC644(boxId); + s8 direction = DetermineBoxScrollDirection(boxId); - sPSSData->field_2CE = (direction > 0) ? 6 : -6; + sPSSData->wallpaperScrollSpeed = (direction > 0) ? 6 : -6; sPSSData->field_2D3 = (direction > 0) ? 1 : 2; sPSSData->field_2D0 = 32; sPSSData->field_2D4 = boxId; @@ -5288,7 +5288,7 @@ static void SetUpScrollToBox(u8 boxId) sPSSData->field_2DC = (direction <= 0) ? 5 : 0; sPSSData->field_2DE = 0; sPSSData->field_2E0 = 2; - sPSSData->field_A64 = boxId; + sPSSData->boxScrollDestination = boxId; sPSSData->field_A65 = direction; sPSSData->field_A63 = 0; } @@ -5300,21 +5300,21 @@ static bool8 ScrollToBox(void) switch (sPSSData->field_A63) { case 0: - LoadWallpaperGfx(sPSSData->field_A64, sPSSData->field_A65); + LoadWallpaperGfx(sPSSData->boxScrollDestination, sPSSData->field_A65); sPSSData->field_A63++; case 1: if (!WaitForWallpaperGfxLoad()) return TRUE; - sub_80CB4CC(sPSSData->field_A64, sPSSData->field_A65); - sub_80CCCFC(sPSSData->field_A64, sPSSData->field_A65); + sub_80CB4CC(sPSSData->boxScrollDestination, sPSSData->field_A65); + sub_80CCCFC(sPSSData->boxScrollDestination, sPSSData->field_A65); sub_80CD0B8(sPSSData->field_A65); break; case 2: var = sub_80CB584(); if (sPSSData->field_2D0 != 0) { - sPSSData->bg2_X += sPSSData->field_2CE; + sPSSData->bg2_X += sPSSData->wallpaperScrollSpeed; if (--sPSSData->field_2D0 != 0) return TRUE; sub_80CCEE0(); @@ -5327,7 +5327,7 @@ static bool8 ScrollToBox(void) return TRUE; } -static s8 sub_80CC644(u8 boxId) +static s8 DetermineBoxScrollDirection(u8 boxId) { u8 i; u8 currentBox = StorageGetCurrentBox(); @@ -5735,7 +5735,7 @@ static void sub_80CD210(struct Sprite *sprite) sprite->data[0] = 3; break; case 3: - sprite->pos1.x -= sPSSData->field_2CE; + sprite->pos1.x -= sPSSData->wallpaperScrollSpeed; if (sprite->pos1.x < 73 || sprite->pos1.x > 247) sprite->invisible = TRUE; if (--sprite->data[1] == 0) @@ -5746,7 +5746,7 @@ static void sub_80CD210(struct Sprite *sprite) } break; case 4: - sprite->pos1.x -= sPSSData->field_2CE; + sprite->pos1.x -= sPSSData->wallpaperScrollSpeed; break; } } @@ -6632,21 +6632,21 @@ static void sub_80CE7E8(void) sPSSData->field_218C.mon = &gUnknown_02039D14; sPSSData->field_2187 = 0; sPSSData->field_2186 = 0; - sPSSData->field_2188 = 0; + sPSSData->pokemonSummaryScreenMode = PSS_MODE_NORMAL; } else if (sBoxCursorArea == CURSOR_AREA_IN_PARTY) { sPSSData->field_218C.mon = gPlayerParty; sPSSData->field_2187 = sBoxCursorPosition; sPSSData->field_2186 = CountPartyMons() - 1; - sPSSData->field_2188 = 0; + sPSSData->pokemonSummaryScreenMode = PSS_MODE_NORMAL; } else { sPSSData->field_218C.box = GetBoxedMonPtr(StorageGetCurrentBox(), 0); sPSSData->field_2187 = sBoxCursorPosition; sPSSData->field_2186 = IN_BOX_COUNT - 1; - sPSSData->field_2188 = 2; + sPSSData->pokemonSummaryScreenMode = PSS_MODE_BOX; } } @@ -6869,36 +6869,36 @@ static void SetCursorMonData(void *pokemon, u8 mode) txtPtr = sPSSData->cursorMonGenderLvlText; *(txtPtr)++ = EXT_CTRL_CODE_BEGIN; - *(txtPtr)++ = 4; + *(txtPtr)++ = EXT_CTRL_CODE_COLOR_HIGHLIGHT_SHADOW; switch (gender) { case MON_MALE: - *(txtPtr)++ = 4; - *(txtPtr)++ = 1; - *(txtPtr)++ = 5; + *(txtPtr)++ = TEXT_COLOR_RED; + *(txtPtr)++ = TEXT_COLOR_WHITE; + *(txtPtr)++ = TEXT_COLOR_LIGHT_RED; *(txtPtr)++ = CHAR_MALE; break; case MON_FEMALE: - *(txtPtr)++ = 6; - *(txtPtr)++ = 1; - *(txtPtr)++ = 7; + *(txtPtr)++ = TEXT_COLOR_GREEN; + *(txtPtr)++ = TEXT_COLOR_WHITE; + *(txtPtr)++ = TEXT_COLOR_LIGHT_GREEN; *(txtPtr)++ = CHAR_FEMALE; break; default: - *(txtPtr)++ = 2; - *(txtPtr)++ = 1; - *(txtPtr)++ = 3; - *(txtPtr)++ = 0x77; + *(txtPtr)++ = TEXT_COLOR_DARK_GREY; + *(txtPtr)++ = TEXT_COLOR_WHITE; + *(txtPtr)++ = TEXT_COLOR_LIGHT_GREY; + *(txtPtr)++ = CHAR_UNK_SPACER; break; } *(txtPtr++) = EXT_CTRL_CODE_BEGIN; - *(txtPtr++) = 4; - *(txtPtr++) = 2; - *(txtPtr++) = 1; - *(txtPtr++) = 3; - *(txtPtr++) = 0; - *(txtPtr++) = CHAR_SPECIAL_F9; + *(txtPtr++) = EXT_CTRL_CODE_COLOR_HIGHLIGHT_SHADOW; + *(txtPtr++) = TEXT_COLOR_DARK_GREY; + *(txtPtr++) = TEXT_COLOR_WHITE; + *(txtPtr++) = TEXT_COLOR_LIGHT_GREY; + *(txtPtr++) = CHAR_SPACE; + *(txtPtr++) = CHAR_EXTRA_SYMBOL; *(txtPtr++) = CHAR_LV_2; txtPtr = ConvertIntToDecimalStringN(txtPtr, sPSSData->cursorMonLevel, STR_CONV_MODE_LEFT_ALIGN, 3); @@ -6926,21 +6926,20 @@ static u8 HandleInput_InBox(void) } } -// This group of four functions handling input simply CANNOT be matched. -// GF must have written them in a really weird way, a way not a sane person could dream to reproduce. -#ifdef NONMATCHING static u8 InBoxInput_Normal(void) { u8 retVal; - s8 cursorArea = sBoxCursorArea; - s8 cursorPosition = sBoxCursorPosition; - - sPSSData->field_CD2 = 0; - sPSSData->field_CD3 = 0; - sPSSData->field_CD7 = 0; + s8 cursorArea; + s8 cursorPosition; do { + cursorArea = sBoxCursorArea; + cursorPosition = sBoxCursorPosition; + sPSSData->field_CD2 = 0; + sPSSData->field_CD3 = 0; + sPSSData->field_CD7 = 0; + if (gMain.newAndRepeatedKeys & DPAD_UP) { retVal = TRUE; @@ -7065,310 +7064,6 @@ static u8 InBoxInput_Normal(void) return retVal; } -#else -NAKED -static u8 InBoxInput_Normal(void) -{ - asm_unified("\n\ - push {r4-r7,lr}\n\ - mov r7, r10\n\ - mov r6, r9\n\ - mov r5, r8\n\ - push {r5-r7}\n\ - ldr r0, =sBoxCursorArea\n\ - ldrb r0, [r0]\n\ - mov r8, r0\n\ - ldr r2, =sBoxCursorPosition\n\ - ldrb r4, [r2]\n\ - ldr r5, =sPSSData\n\ - ldr r0, [r5]\n\ - ldr r1, =0x00000cd2\n\ - mov r10, r1\n\ - add r0, r10\n\ - movs r1, 0\n\ - strb r1, [r0]\n\ - ldr r0, [r5]\n\ - ldr r7, =0x00000cd3\n\ - adds r0, r7\n\ - strb r1, [r0]\n\ - ldr r0, [r5]\n\ - ldr r3, =0x00000cd7\n\ - mov r9, r3\n\ - add r0, r9\n\ - strb r1, [r0]\n\ - ldr r6, =gMain\n\ - ldrh r1, [r6, 0x30]\n\ - movs r0, 0x40\n\ - ands r0, r1\n\ - adds r3, r2, 0\n\ - cmp r0, 0\n\ - beq _080CF14C\n\ - b _080CF33C\n\ -_080CF14C:\n\ - movs r0, 0x80\n\ - ands r0, r1\n\ - cmp r0, 0\n\ - beq _080CF1A8\n\ - movs r6, 0x1\n\ - lsls r0, r4, 24\n\ - movs r1, 0xC0\n\ - lsls r1, 19\n\ - adds r0, r1\n\ - lsrs r4, r0, 24\n\ - asrs r0, 24\n\ - cmp r0, 0x1D\n\ - bgt _080CF168\n\ - b _080CF358\n\ -_080CF168:\n\ - movs r2, 0x3\n\ - mov r8, r2\n\ - subs r0, 0x1E\n\ - lsls r0, 24\n\ - asrs r0, 24\n\ - movs r1, 0x3\n\ - bl __divsi3\n\ - lsls r0, 24\n\ - lsrs r4, r0, 24\n\ - ldr r0, [r5]\n\ - add r0, r10\n\ - strb r6, [r0]\n\ - ldr r0, [r5]\n\ - add r0, r9\n\ - strb r6, [r0]\n\ - b _080CF358\n\ - .pool\n\ -_080CF1A8:\n\ - movs r0, 0x20\n\ - ands r0, r1\n\ - cmp r0, 0\n\ - beq _080CF1DE\n\ - movs r6, 0x1\n\ - movs r0, 0\n\ - ldrsb r0, [r3, r0]\n\ - movs r1, 0x6\n\ - bl __modsi3\n\ - lsls r0, 24\n\ - cmp r0, 0\n\ - beq _080CF1CA\n\ - lsls r0, r4, 24\n\ - movs r3, 0xFF\n\ - lsls r3, 24\n\ - b _080CF34C\n\ -_080CF1CA:\n\ - ldr r0, [r5]\n\ - adds r0, r7\n\ - movs r1, 0xFF\n\ - strb r1, [r0]\n\ - lsls r0, r4, 24\n\ - movs r1, 0xA0\n\ - lsls r1, 19\n\ - adds r0, r1\n\ - lsrs r4, r0, 24\n\ - b _080CF358\n\ -_080CF1DE:\n\ - movs r0, 0x10\n\ - ands r0, r1\n\ - cmp r0, 0\n\ - beq _080CF212\n\ - movs r6, 0x1\n\ - movs r0, 0\n\ - ldrsb r0, [r3, r0]\n\ - adds r0, 0x1\n\ - movs r1, 0x6\n\ - bl __modsi3\n\ - cmp r0, 0\n\ - beq _080CF204\n\ - lsls r0, r4, 24\n\ - movs r2, 0x80\n\ - lsls r2, 17\n\ - adds r0, r2\n\ - lsrs r4, r0, 24\n\ - b _080CF358\n\ -_080CF204:\n\ - ldr r0, [r5]\n\ - adds r0, r7\n\ - strb r6, [r0]\n\ - lsls r0, r4, 24\n\ - movs r3, 0xFB\n\ - lsls r3, 24\n\ - b _080CF34C\n\ -_080CF212:\n\ - ldrh r1, [r6, 0x2E]\n\ - movs r0, 0x8\n\ - ands r0, r1\n\ - cmp r0, 0\n\ - beq _080CF220\n\ - movs r6, 0x1\n\ - b _080CF352\n\ -_080CF220:\n\ - movs r4, 0x1\n\ - movs r0, 0x1\n\ - ands r0, r1\n\ - cmp r0, 0\n\ - beq _080CF2E4\n\ - bl sub_80CFA5C\n\ - lsls r0, 24\n\ - cmp r0, 0\n\ - beq _080CF2E4\n\ - ldr r0, =sCanOnlyMove\n\ - ldrb r0, [r0]\n\ - cmp r0, 0\n\ - bne _080CF244\n\ - movs r0, 0x8\n\ - b _080CF366\n\ - .pool\n\ -_080CF244:\n\ - ldr r1, [r5]\n\ - ldrb r0, [r1, 0x1]\n\ - cmp r0, 0x2\n\ - bne _080CF254\n\ - ldr r0, =sIsMonBeingMoved\n\ - ldrb r0, [r0]\n\ - cmp r0, 0x1\n\ - bne _080CF2D4\n\ -_080CF254:\n\ - movs r0, 0\n\ - bl sub_80CFF98\n\ - subs r0, 0x1\n\ - lsls r0, 24\n\ - asrs r0, 24\n\ - cmp r0, 0xE\n\ - bhi _080CF2E4\n\ - lsls r0, 2\n\ - ldr r1, =_080CF278\n\ - adds r0, r1\n\ - ldr r0, [r0]\n\ - mov pc, r0\n\ - .pool\n\ - .align 2, 0\n\ -_080CF278:\n\ - .4byte _080CF2B4\n\ - .4byte _080CF2B8\n\ - .4byte _080CF2BC\n\ - .4byte _080CF2C0\n\ - .4byte _080CF2C4\n\ - .4byte _080CF2E4\n\ - .4byte _080CF2E4\n\ - .4byte _080CF2E4\n\ - .4byte _080CF2E4\n\ - .4byte _080CF2E4\n\ - .4byte _080CF2E4\n\ - .4byte _080CF2C8\n\ - .4byte _080CF2CC\n\ - .4byte _080CF2E4\n\ - .4byte _080CF2D0\n\ -_080CF2B4:\n\ - movs r0, 0xB\n\ - b _080CF366\n\ -_080CF2B8:\n\ - movs r0, 0xC\n\ - b _080CF366\n\ -_080CF2BC:\n\ - movs r0, 0xD\n\ - b _080CF366\n\ -_080CF2C0:\n\ - movs r0, 0xE\n\ - b _080CF366\n\ -_080CF2C4:\n\ - movs r0, 0xF\n\ - b _080CF366\n\ -_080CF2C8:\n\ - movs r0, 0x10\n\ - b _080CF366\n\ -_080CF2CC:\n\ - movs r0, 0x11\n\ - b _080CF366\n\ -_080CF2D0:\n\ - movs r0, 0x12\n\ - b _080CF366\n\ -_080CF2D4:\n\ - ldr r2, =0x000021ff\n\ - adds r0, r1, r2\n\ - strb r4, [r0]\n\ - movs r0, 0x14\n\ - b _080CF366\n\ - .pool\n\ -_080CF2E4:\n\ - ldr r2, =gMain\n\ - ldrh r1, [r2, 0x2E]\n\ - movs r0, 0x2\n\ - ands r0, r1\n\ - cmp r0, 0\n\ - beq _080CF2F8\n\ - movs r0, 0x13\n\ - b _080CF366\n\ - .pool\n\ -_080CF2F8:\n\ - ldr r0, =gSaveBlock2Ptr\n\ - ldr r0, [r0]\n\ - ldrb r0, [r0, 0x13]\n\ - cmp r0, 0x1\n\ - bne _080CF326\n\ - ldrh r1, [r2, 0x2C]\n\ - movs r0, 0x80\n\ - lsls r0, 2\n\ - ands r0, r1\n\ - cmp r0, 0\n\ - beq _080CF318\n\ - movs r0, 0xA\n\ - b _080CF366\n\ - .pool\n\ -_080CF318:\n\ - movs r0, 0x80\n\ - lsls r0, 1\n\ - ands r0, r1\n\ - cmp r0, 0\n\ - beq _080CF326\n\ - movs r0, 0x9\n\ - b _080CF366\n\ -_080CF326:\n\ - ldrh r1, [r2, 0x2E]\n\ - movs r0, 0x4\n\ - ands r0, r1\n\ - cmp r0, 0\n\ - beq _080CF338\n\ - bl sub_80CFDC4\n\ - movs r0, 0\n\ - b _080CF366\n\ -_080CF338:\n\ - movs r6, 0\n\ - b _080CF364\n\ -_080CF33C:\n\ - movs r6, 0x1\n\ - movs r0, 0\n\ - ldrsb r0, [r2, r0]\n\ - cmp r0, 0x5\n\ - ble _080CF352\n\ - lsls r0, r4, 24\n\ - movs r3, 0xFA\n\ - lsls r3, 24\n\ -_080CF34C:\n\ - adds r0, r3\n\ - lsrs r4, r0, 24\n\ - b _080CF358\n\ -_080CF352:\n\ - movs r0, 0x2\n\ - mov r8, r0\n\ - movs r4, 0\n\ -_080CF358:\n\ - cmp r6, 0\n\ - beq _080CF364\n\ - mov r0, r8\n\ - adds r1, r4, 0\n\ - bl sub_80CD894\n\ -_080CF364:\n\ - adds r0, r6, 0\n\ -_080CF366:\n\ - pop {r3-r5}\n\ - mov r8, r3\n\ - mov r9, r4\n\ - mov r10, r5\n\ - pop {r4-r7}\n\ - pop {r1}\n\ - bx r1\n\ - "); -} -#endif static u8 InBoxInput_GrabbingMultiple(void) { @@ -7526,22 +7221,23 @@ static u8 InBoxInput_MovingMultiple(void) } } -#ifdef NONMATCHING static u8 HandleInput_InParty(void) { u8 retVal; bool8 gotoBox; - s8 cursorArea = sBoxCursorArea; - s8 cursorPosition = sBoxCursorPosition; - - sPSSData->field_CD3 = 0; - sPSSData->field_CD2 = 0; - sPSSData->field_CD7 = 0; - gotoBox = FALSE; - retVal = 0; + s8 cursorArea; + s8 cursorPosition; do { + cursorArea = sBoxCursorArea; + cursorPosition = sBoxCursorPosition; + sPSSData->field_CD3 = 0; + sPSSData->field_CD2 = 0; + sPSSData->field_CD7 = 0; + gotoBox = FALSE; + retVal = 0; + if (gMain.newAndRepeatedKeys & DPAD_UP) { if (--cursorPosition < 0) @@ -7647,290 +7343,19 @@ static u8 HandleInput_InParty(void) return retVal; } -#else -NAKED -static u8 HandleInput_InParty(void) -{ - asm_unified("\n\ - push {r4-r7,lr}\n\ - mov r7, r9\n\ - mov r6, r8\n\ - push {r6,r7}\n\ - ldr r0, =sBoxCursorArea\n\ - ldrb r0, [r0]\n\ - mov r9, r0\n\ - ldr r6, =sBoxCursorPosition\n\ - ldrb r4, [r6]\n\ - ldr r2, =sPSSData\n\ - ldr r0, [r2]\n\ - ldr r1, =0x00000cd3\n\ - adds r0, r1\n\ - movs r1, 0\n\ - strb r1, [r0]\n\ - ldr r0, [r2]\n\ - ldr r3, =0x00000cd2\n\ - adds r0, r3\n\ - strb r1, [r0]\n\ - ldr r0, [r2]\n\ - adds r3, 0x5\n\ - adds r0, r3\n\ - strb r1, [r0]\n\ - mov r8, r1\n\ - movs r7, 0\n\ - ldr r1, =gMain\n\ - ldrh r3, [r1, 0x30]\n\ - movs r0, 0x40\n\ - ands r0, r3\n\ - adds r5, r6, 0\n\ - mov r12, r1\n\ - cmp r0, 0\n\ - beq _080CF608\n\ - b _080CF7A8\n\ -_080CF608:\n\ - movs r0, 0x80\n\ - ands r0, r3\n\ - cmp r0, 0\n\ - beq _080CF64C\n\ - lsls r0, r4, 24\n\ - movs r1, 0x80\n\ - lsls r1, 17\n\ - adds r0, r1\n\ - lsrs r4, r0, 24\n\ - asrs r0, 24\n\ - cmp r0, 0x6\n\ - ble _080CF622\n\ - movs r4, 0\n\ -_080CF622:\n\ - lsls r0, r4, 24\n\ - asrs r0, 24\n\ - movs r1, 0\n\ - ldrsb r1, [r5, r1]\n\ - cmp r0, r1\n\ - bne _080CF630\n\ - b _080CF7C6\n\ -_080CF630:\n\ - movs r7, 0x1\n\ - b _080CF7CA\n\ - .pool\n\ -_080CF64C:\n\ - movs r0, 0x20\n\ - ands r0, r3\n\ - cmp r0, 0\n\ - beq _080CF670\n\ - ldrb r1, [r5]\n\ - movs r0, 0\n\ - ldrsb r0, [r5, r0]\n\ - cmp r0, 0\n\ - beq _080CF670\n\ - movs r7, 0x1\n\ - ldr r0, [r2]\n\ - ldr r2, =0x00000cd6\n\ - adds r0, r2\n\ - strb r1, [r0]\n\ - movs r4, 0\n\ - b _080CF7C6\n\ - .pool\n\ -_080CF670:\n\ - mov r3, r12\n\ - ldrh r1, [r3, 0x30]\n\ - movs r0, 0x10\n\ - ands r0, r1\n\ - cmp r0, 0\n\ - beq _080CF69E\n\ - movs r0, 0\n\ - ldrsb r0, [r5, r0]\n\ - cmp r0, 0\n\ - bne _080CF694\n\ - movs r7, 0x1\n\ - ldr r0, [r2]\n\ - ldr r1, =0x00000cd6\n\ - adds r0, r1\n\ - ldrb r4, [r0]\n\ - b _080CF7C6\n\ - .pool\n\ -_080CF694:\n\ - movs r7, 0x6\n\ - movs r2, 0\n\ - mov r9, r2\n\ - movs r4, 0\n\ - b _080CF7C6\n\ -_080CF69E:\n\ - mov r3, r12\n\ - ldrh r1, [r3, 0x2E]\n\ - movs r0, 0x1\n\ - ands r0, r1\n\ - cmp r0, 0\n\ - beq _080CF75C\n\ - movs r0, 0\n\ - ldrsb r0, [r5, r0]\n\ - cmp r0, 0x6\n\ - bne _080CF6C4\n\ - ldr r0, [r2]\n\ - ldrb r0, [r0, 0x1]\n\ - cmp r0, 0x1\n\ - bne _080CF6BE\n\ - movs r0, 0x4\n\ - b _080CF7D8\n\ -_080CF6BE:\n\ - movs r0, 0x1\n\ - mov r8, r0\n\ - b _080CF75C\n\ -_080CF6C4:\n\ - bl sub_80CFA5C\n\ - lsls r0, 24\n\ - cmp r0, 0\n\ - beq _080CF75C\n\ - ldr r0, =sCanOnlyMove\n\ - ldrb r0, [r0]\n\ - cmp r0, 0\n\ - bne _080CF6E0\n\ - movs r0, 0x8\n\ - b _080CF7D8\n\ - .pool\n\ -_080CF6E0:\n\ - movs r0, 0\n\ - bl sub_80CFF98\n\ - subs r0, 0x1\n\ - lsls r0, 24\n\ - asrs r0, 24\n\ - cmp r0, 0xE\n\ - bhi _080CF75C\n\ - lsls r0, 2\n\ - ldr r1, =_080CF700\n\ - adds r0, r1\n\ - ldr r0, [r0]\n\ - mov pc, r0\n\ - .pool\n\ - .align 2, 0\n\ -_080CF700:\n\ - .4byte _080CF73C\n\ - .4byte _080CF740\n\ - .4byte _080CF744\n\ - .4byte _080CF748\n\ - .4byte _080CF74C\n\ - .4byte _080CF75C\n\ - .4byte _080CF75C\n\ - .4byte _080CF75C\n\ - .4byte _080CF75C\n\ - .4byte _080CF75C\n\ - .4byte _080CF75C\n\ - .4byte _080CF750\n\ - .4byte _080CF754\n\ - .4byte _080CF75C\n\ - .4byte _080CF758\n\ -_080CF73C:\n\ - movs r0, 0xB\n\ - b _080CF7D8\n\ -_080CF740:\n\ - movs r0, 0xC\n\ - b _080CF7D8\n\ -_080CF744:\n\ - movs r0, 0xD\n\ - b _080CF7D8\n\ -_080CF748:\n\ - movs r0, 0xE\n\ - b _080CF7D8\n\ -_080CF74C:\n\ - movs r0, 0xF\n\ - b _080CF7D8\n\ -_080CF750:\n\ - movs r0, 0x10\n\ - b _080CF7D8\n\ -_080CF754:\n\ - movs r0, 0x11\n\ - b _080CF7D8\n\ -_080CF758:\n\ - movs r0, 0x12\n\ - b _080CF7D8\n\ -_080CF75C:\n\ - ldr r2, =gMain\n\ - ldrh r1, [r2, 0x2E]\n\ - movs r0, 0x2\n\ - ands r0, r1\n\ - mov r12, r2\n\ - cmp r0, 0\n\ - beq _080CF784\n\ - ldr r0, =sPSSData\n\ - ldr r0, [r0]\n\ - ldrb r0, [r0, 0x1]\n\ - cmp r0, 0x1\n\ - bne _080CF780\n\ - movs r0, 0x13\n\ - b _080CF7D8\n\ - .pool\n\ -_080CF780:\n\ - movs r1, 0x1\n\ - mov r8, r1\n\ -_080CF784:\n\ - mov r2, r8\n\ - cmp r2, 0\n\ - beq _080CF794\n\ - movs r7, 0x6\n\ - movs r3, 0\n\ - mov r9, r3\n\ - movs r4, 0\n\ - b _080CF7C6\n\ -_080CF794:\n\ - mov r0, r12\n\ - ldrh r1, [r0, 0x2E]\n\ - movs r0, 0x4\n\ - ands r0, r1\n\ - cmp r0, 0\n\ - beq _080CF7C6\n\ - bl sub_80CFDC4\n\ - movs r0, 0\n\ - b _080CF7D8\n\ -_080CF7A8:\n\ - lsls r0, r4, 24\n\ - movs r1, 0xFF\n\ - lsls r1, 24\n\ - adds r0, r1\n\ - lsrs r4, r0, 24\n\ - cmp r0, 0\n\ - bge _080CF7B8\n\ - movs r4, 0x6\n\ -_080CF7B8:\n\ - lsls r0, r4, 24\n\ - asrs r0, 24\n\ - movs r1, 0\n\ - ldrsb r1, [r6, r1]\n\ - cmp r0, r1\n\ - beq _080CF7C6\n\ - movs r7, 0x1\n\ -_080CF7C6:\n\ - cmp r7, 0\n\ - beq _080CF7D6\n\ -_080CF7CA:\n\ - cmp r7, 0x6\n\ - beq _080CF7D6\n\ - mov r0, r9\n\ - adds r1, r4, 0\n\ - bl sub_80CD894\n\ -_080CF7D6:\n\ - adds r0, r7, 0\n\ -_080CF7D8:\n\ - pop {r3,r4}\n\ - mov r8, r3\n\ - mov r9, r4\n\ - pop {r4-r7}\n\ - pop {r1}\n\ - bx r1"); -} -#endif - -#ifdef NONMATCHING + static u8 HandleInput_OnBox(void) { u8 retVal; s8 cursorArea; s8 cursorPosition; - sPSSData->field_CD3 = 0; - sPSSData->field_CD2 = 0; - sPSSData->field_CD7 = 0; - do { + sPSSData->field_CD3 = 0; + sPSSData->field_CD2 = 0; + sPSSData->field_CD7 = 0; + if (gMain.newAndRepeatedKeys & DPAD_UP) { retVal = 1; @@ -7989,152 +7414,30 @@ static u8 HandleInput_OnBox(void) return retVal; } -#else -NAKED -static u8 HandleInput_OnBox(void) -{ - asm_unified("\n\ - push {r4-r6,lr}\n\ - ldr r3, =sPSSData\n\ - ldr r0, [r3]\n\ - ldr r1, =0x00000cd3\n\ - adds r0, r1\n\ - movs r1, 0\n\ - strb r1, [r0]\n\ - ldr r0, [r3]\n\ - ldr r2, =0x00000cd2\n\ - adds r0, r2\n\ - strb r1, [r0]\n\ - ldr r0, [r3]\n\ - ldr r5, =0x00000cd7\n\ - adds r0, r5\n\ - strb r1, [r0]\n\ - ldr r1, =gMain\n\ - ldrh r2, [r1, 0x30]\n\ - movs r0, 0x40\n\ - ands r0, r2\n\ - cmp r0, 0\n\ - bne _080CF8AA\n\ - movs r0, 0x80\n\ - ands r0, r2\n\ - cmp r0, 0\n\ - beq _080CF834\n\ - movs r4, 0x1\n\ - movs r1, 0\n\ - movs r6, 0x2\n\ - b _080CF8B6\n\ - .pool\n\ -_080CF834:\n\ - ldrh r2, [r1, 0x2C]\n\ - movs r0, 0x20\n\ - ands r0, r2\n\ - cmp r0, 0\n\ - bne _080CF85A\n\ - movs r0, 0x10\n\ - ands r0, r2\n\ - cmp r0, 0\n\ - bne _080CF86E\n\ - ldr r0, =gSaveBlock2Ptr\n\ - ldr r0, [r0]\n\ - ldrb r0, [r0, 0x13]\n\ - cmp r0, 0x1\n\ - bne _080CF872\n\ - movs r0, 0x80\n\ - lsls r0, 2\n\ - ands r0, r2\n\ - cmp r0, 0\n\ - beq _080CF864\n\ -_080CF85A:\n\ - movs r0, 0xA\n\ - b _080CF8D2\n\ - .pool\n\ -_080CF864:\n\ - movs r0, 0x80\n\ - lsls r0, 1\n\ - ands r0, r2\n\ - cmp r0, 0\n\ - beq _080CF872\n\ -_080CF86E:\n\ - movs r0, 0x9\n\ - b _080CF8D2\n\ -_080CF872:\n\ - ldrh r1, [r1, 0x2E]\n\ - movs r0, 0x1\n\ - ands r0, r1\n\ - cmp r0, 0\n\ - beq _080CF88A\n\ - movs r0, 0\n\ - bl sub_80CD1A8\n\ - bl AddBoxMenu\n\ - movs r0, 0x7\n\ - b _080CF8D2\n\ -_080CF88A:\n\ - movs r0, 0x2\n\ - ands r0, r1\n\ - cmp r0, 0\n\ - beq _080CF896\n\ - movs r0, 0x13\n\ - b _080CF8D2\n\ -_080CF896:\n\ - movs r0, 0x4\n\ - ands r0, r1\n\ - cmp r0, 0\n\ - beq _080CF8A6\n\ - bl sub_80CFDC4\n\ - movs r0, 0\n\ - b _080CF8D2\n\ -_080CF8A6:\n\ - movs r4, 0\n\ - b _080CF8D0\n\ -_080CF8AA:\n\ - movs r4, 0x1\n\ - movs r1, 0x3\n\ - movs r6, 0\n\ - ldr r0, [r3]\n\ - adds r0, r5\n\ - strb r4, [r0]\n\ -_080CF8B6:\n\ - cmp r4, 0\n\ - beq _080CF8D0\n\ - lsls r5, r1, 24\n\ - cmp r1, 0x2\n\ - beq _080CF8C6\n\ - movs r0, 0\n\ - bl sub_80CD1A8\n\ -_080CF8C6:\n\ - lsrs r0, r5, 24\n\ - lsls r1, r6, 24\n\ - lsrs r1, 24\n\ - bl sub_80CD894\n\ -_080CF8D0:\n\ - adds r0, r4, 0\n\ -_080CF8D2:\n\ - pop {r4-r6}\n\ - pop {r1}\n\ - bx r1\n\ - "); -} -#endif - -#ifdef NONMATCHING + static u8 HandleInput_OnButtons(void) { u8 retVal; - s8 cursorArea = sBoxCursorArea; - s8 cursorPosition = sBoxCursorPosition; - - sPSSData->field_CD3 = 0; - sPSSData->field_CD2 = 0; - sPSSData->field_CD7 = 0; + s8 cursorArea; + s8 cursorPosition; do { + cursorArea = sBoxCursorArea; + cursorPosition = sBoxCursorPosition; + sPSSData->field_CD3 = 0; + sPSSData->field_CD2 = 0; + sPSSData->field_CD7 = 0; + if (gMain.newAndRepeatedKeys & DPAD_UP) { retVal = 1; cursorArea = CURSOR_AREA_IN_BOX; sPSSData->field_CD2 = -1; - cursorPosition = (sBoxCursorPosition == 0) ? IN_BOX_COUNT - 1 - 5 : IN_BOX_COUNT - 1; + if (sBoxCursorPosition == 0) + cursorPosition = IN_BOX_COUNT - 1 - 5; + else + cursorPosition = IN_BOX_COUNT - 1; sPSSData->field_CD7 = 1; break; } @@ -8181,148 +7484,6 @@ static u8 HandleInput_OnButtons(void) return retVal; } -#else -NAKED -static u8 HandleInput_OnButtons(void) -{ - asm_unified("\n\ - push {r4-r7,lr}\n\ - mov r7, r8\n\ - push {r7}\n\ - ldr r0, =sBoxCursorArea\n\ - ldrb r0, [r0]\n\ - mov r8, r0\n\ - ldr r0, =sBoxCursorPosition\n\ - mov r12, r0\n\ - ldrb r2, [r0]\n\ - ldr r3, =sPSSData\n\ - ldr r0, [r3]\n\ - ldr r1, =0x00000cd3\n\ - adds r0, r1\n\ - movs r1, 0\n\ - strb r1, [r0]\n\ - ldr r0, [r3]\n\ - ldr r6, =0x00000cd2\n\ - adds r0, r6\n\ - strb r1, [r0]\n\ - ldr r0, [r3]\n\ - ldr r5, =0x00000cd7\n\ - adds r0, r5\n\ - strb r1, [r0]\n\ - ldr r7, =gMain\n\ - ldrh r1, [r7, 0x30]\n\ - movs r0, 0x40\n\ - ands r0, r1\n\ - adds r4, r3, 0\n\ - cmp r0, 0\n\ - bne _080CF9B2\n\ - movs r0, 0x88\n\ - ands r0, r1\n\ - cmp r0, 0\n\ - beq _080CF944\n\ - movs r7, 0x1\n\ - movs r0, 0x2\n\ - mov r8, r0\n\ - movs r2, 0\n\ - ldr r0, [r4]\n\ - b _080CF9D0\n\ - .pool\n\ -_080CF944:\n\ - movs r0, 0x20\n\ - ands r0, r1\n\ - cmp r0, 0\n\ - beq _080CF960\n\ - movs r7, 0x1\n\ - lsls r0, r2, 24\n\ - movs r1, 0xFF\n\ - lsls r1, 24\n\ - adds r0, r1\n\ - lsrs r2, r0, 24\n\ - cmp r0, 0\n\ - bge _080CF9D4\n\ - movs r2, 0x1\n\ - b _080CF9D4\n\ -_080CF960:\n\ - movs r0, 0x10\n\ - ands r0, r1\n\ - cmp r0, 0\n\ - beq _080CF97E\n\ - movs r7, 0x1\n\ - lsls r0, r2, 24\n\ - movs r1, 0x80\n\ - lsls r1, 17\n\ - adds r0, r1\n\ - lsrs r2, r0, 24\n\ - asrs r0, 24\n\ - cmp r0, 0x1\n\ - ble _080CF9D4\n\ - movs r2, 0\n\ - b _080CF9D4\n\ -_080CF97E:\n\ - ldrh r1, [r7, 0x2E]\n\ - movs r0, 0x1\n\ - ands r0, r1\n\ - cmp r0, 0\n\ - beq _080CF992\n\ - movs r0, 0x4\n\ - cmp r2, 0\n\ - bne _080CF9E2\n\ - movs r0, 0x5\n\ - b _080CF9E2\n\ -_080CF992:\n\ - movs r0, 0x2\n\ - ands r0, r1\n\ - cmp r0, 0\n\ - beq _080CF99E\n\ - movs r0, 0x13\n\ - b _080CF9E2\n\ -_080CF99E:\n\ - movs r0, 0x4\n\ - ands r0, r1\n\ - cmp r0, 0\n\ - beq _080CF9AE\n\ - bl sub_80CFDC4\n\ - movs r0, 0\n\ - b _080CF9E2\n\ -_080CF9AE:\n\ - movs r7, 0\n\ - b _080CF9E0\n\ -_080CF9B2:\n\ - movs r7, 0x1\n\ - movs r0, 0\n\ - mov r8, r0\n\ - ldr r0, [r3]\n\ - adds r0, r6\n\ - movs r1, 0xFF\n\ - strb r1, [r0]\n\ - mov r1, r12\n\ - movs r0, 0\n\ - ldrsb r0, [r1, r0]\n\ - movs r2, 0x1D\n\ - cmp r0, 0\n\ - bne _080CF9CE\n\ - movs r2, 0x18\n\ -_080CF9CE:\n\ - ldr r0, [r3]\n\ -_080CF9D0:\n\ - adds r0, r5\n\ - strb r7, [r0]\n\ -_080CF9D4:\n\ - cmp r7, 0\n\ - beq _080CF9E0\n\ - mov r0, r8\n\ - adds r1, r2, 0\n\ - bl sub_80CD894\n\ -_080CF9E0:\n\ - adds r0, r7, 0\n\ -_080CF9E2:\n\ - pop {r3}\n\ - mov r8, r3\n\ - pop {r4-r7}\n\ - pop {r1}\n\ - bx r1"); -} -#endif static u8 HandleInput(void) { @@ -8743,7 +7904,7 @@ static void AddMenu(void) DrawStdFrameWithCustomTileAndPalette(sPSSData->field_CB0, FALSE, 11, 14); PrintMenuTable(sPSSData->field_CB0, sPSSData->menuItemsCount, (void*)sPSSData->menuItems); InitMenuInUpperLeftCornerPlaySoundWhenAPressed(sPSSData->field_CB0, sPSSData->menuItemsCount, 0); - schedule_bg_copy_tilemap_to_vram(0); + ScheduleBgCopyTilemapToVram(0); sPSSData->field_CAE = 0; } @@ -8936,7 +8097,7 @@ static bool8 sub_80D0344(void) if (!IsDma3ManagerBusyWithBgCopy()) { sub_80CFE84(); - LoadPalette(stdpal_get(3), 0xD0, 0x20); + LoadPalette(GetTextWindowPalette(3), 0xD0, 0x20); ShowBg(0); return FALSE; } @@ -9042,7 +8203,7 @@ static bool8 sub_80D04C8(void) case 3: if (!IsDma3ManagerBusyWithBgCopy()) { - LoadPalette(stdpal_get(3), 0xD0, 0x20); + LoadPalette(GetTextWindowPalette(3), 0xD0, 0x20); sub_80CFE84(); ShowBg(0); return FALSE; @@ -9966,7 +9127,7 @@ static bool8 sub_80D18E4(void) sub_80D19B4(var); FillBgTilemapBufferRect(0, 0, var + 1, 12, 1, 9, 0x11); - schedule_bg_copy_tilemap_to_vram(0); + ScheduleBgCopyTilemapToVram(0); return TRUE; } @@ -9980,7 +9141,7 @@ static void sub_80D19B4(u32 arg0) FillBgTilemapBufferRect(0, 0x13B, arg0, 0xD, 1, 7, 0xFu); FillBgTilemapBufferRect(0, 0x13C, arg0, 0xC, 1, 1, 0xFu); FillBgTilemapBufferRect(0, 0x13D, arg0, 0x14, 1, 1, 0xFu); - schedule_bg_copy_tilemap_to_vram(0); + ScheduleBgCopyTilemapToVram(0); } static void sub_80D1A48(struct Sprite *sprite) |