Match two minor functions in battle_tent and berry_crush

This commit is contained in:
Kaz
2020-09-12 21:51:16 -04:00
parent c0987169dd
commit d0fcb9168b
2 changed files with 8 additions and 18 deletions

View File

@@ -355,11 +355,7 @@ static void GenerateOpponentMons(void)
{ {
u16 trainerId; u16 trainerId;
s32 i, j, k; s32 i, j, k;
#ifndef NONMATCHING const u16 *monSet;
register const u16 *monSet asm("r9"); // Fix me. Compiler insists on moving that variable into stack.
#else
const u16 *monSet;
#endif
u16 species[FRONTIER_PARTY_SIZE]; u16 species[FRONTIER_PARTY_SIZE];
u16 heldItems[FRONTIER_PARTY_SIZE]; u16 heldItems[FRONTIER_PARTY_SIZE];
s32 monId = 0; s32 monId = 0;
@@ -380,7 +376,8 @@ static void GenerateOpponentMons(void)
} while (i != gSaveBlock2Ptr->frontier.curChallengeBattleNum); } while (i != gSaveBlock2Ptr->frontier.curChallengeBattleNum);
gTrainerBattleOpponent_A = trainerId; gTrainerBattleOpponent_A = trainerId;
while (gFacilityTrainers[gTrainerBattleOpponent_A].monSet[monId] != 0xFFFF) monSet = gFacilityTrainers[gTrainerBattleOpponent_A].monSet;
while (monSet[monId] != 0xFFFF)
monId++; monId++;
if (monId > 8) if (monId > 8)
break; break;

View File

@@ -1779,22 +1779,15 @@ void sub_8022600(struct BerryCrushGame *r6)
void sub_80226D0(struct BerryCrushGame *r6) void sub_80226D0(struct BerryCrushGame *r6)
{ {
u8 r5 = 0; u8 r5 = 0;
const u32 *r0 = gUnknown_08DE3FD4; u8 * r4;
#ifndef NONMATCHING // r4, r5, r6 register roulette
register u8 *r4 asm("r4") = gDecompressionBuffer;
register u32 r0_ asm("r0");
#else
u8 *r4 = gDecompressionBuffer;
u32 r0_;
#endif
LZ77UnCompWram(r0, r4); LZ77UnCompWram(gUnknown_08DE3FD4, gDecompressionBuffer); // required for matching
for (; r5 < r6->unk9; ++r5)
for (r4 = gDecompressionBuffer; r5 < r6->unk9; ++r5)
{ {
r0_ = r6->unk138.unkC[r5]->unk0;
CopyToBgTilemapBufferRect( CopyToBgTilemapBufferRect(
3, 3,
&r4[r0_ * 40], &r4[r6->unk138.unkC[r5]->unk0 * 40],
r6->unk138.unkC[r5]->unk1, r6->unk138.unkC[r5]->unk1,
r6->unk138.unkC[r5]->unk2, r6->unk138.unkC[r5]->unk2,
10, 10,