summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorDizzyEggg <jajkodizzy@wp.pl>2019-07-29 21:09:05 +0200
committerDizzyEggg <jajkodizzy@wp.pl>2019-07-29 21:09:05 +0200
commitff2dcf541317ffd7267e4d283b79cf3f758a18e1 (patch)
treef664616f2390519c577a23e4e5dc7a784eeefdfc /src
parenta4a382a004f1ba95c0db4c8cdb993a02e215e0db (diff)
Two fakematches out
Diffstat (limited to 'src')
-rw-r--r--src/battle_controllers.c33
-rw-r--r--src/battle_gfx_sfx_util.c22
2 files changed, 22 insertions, 33 deletions
diff --git a/src/battle_controllers.c b/src/battle_controllers.c
index 29272c19a..4b5bb7a8a 100644
--- a/src/battle_controllers.c
+++ b/src/battle_controllers.c
@@ -819,15 +819,11 @@ static void Task_HandleSendLinkBuffersData(u8 taskId)
}
}
-// fix me
void sub_8033648(void)
{
u8 i;
s32 j;
- u16 r6;
u8 *recvBuffer;
- u8 *dest;
- u8 *src;
if (gReceivedRemoteLinkPlayers != 0 && (gBattleTypeFlags & BATTLE_TYPE_20))
{
@@ -838,25 +834,24 @@ void sub_8033648(void)
{
ResetBlockReceivedFlag(i);
recvBuffer = (u8 *)gBlockRecvBuffer[i];
- #ifndef NONMATCHING
- asm("");
- recvBuffer = (u8 *)&gBlockRecvBuffer[i];
- #endif
- r6 = gBlockRecvBuffer[i][2];
-
- if (gTasks[sLinkReceiveTaskId].data[14] + 9 + r6 > 0x1000)
{
- gTasks[sLinkReceiveTaskId].data[12] = gTasks[sLinkReceiveTaskId].data[14];
- gTasks[sLinkReceiveTaskId].data[14] = 0;
- }
+ u8 *dest, *src;
+ u16 r6 = gBlockRecvBuffer[i][2];
+
+ if (gTasks[sLinkReceiveTaskId].data[14] + 9 + r6 > 0x1000)
+ {
+ gTasks[sLinkReceiveTaskId].data[12] = gTasks[sLinkReceiveTaskId].data[14];
+ gTasks[sLinkReceiveTaskId].data[14] = 0;
+ }
- dest = &gLinkBattleRecvBuffer[gTasks[sLinkReceiveTaskId].data[14]];
- src = recvBuffer;
+ dest = &gLinkBattleRecvBuffer[gTasks[sLinkReceiveTaskId].data[14]];
+ src = recvBuffer;
- for (j = 0; j < r6 + 8; j++)
- dest[j] = src[j];
+ for (j = 0; j < r6 + 8; j++)
+ dest[j] = src[j];
- gTasks[sLinkReceiveTaskId].data[14] = gTasks[sLinkReceiveTaskId].data[14] + r6 + 8;
+ gTasks[sLinkReceiveTaskId].data[14] = gTasks[sLinkReceiveTaskId].data[14] + r6 + 8;
+ }
}
}
}
diff --git a/src/battle_gfx_sfx_util.c b/src/battle_gfx_sfx_util.c
index c98713fc3..cdd7e8158 100644
--- a/src/battle_gfx_sfx_util.c
+++ b/src/battle_gfx_sfx_util.c
@@ -945,10 +945,7 @@ void HandleSpeciesGfxDataChange(u8 battlerAtk, u8 battlerDef, bool8 notTransform
void BattleLoadSubstituteOrMonSpriteGfx(u8 battlerId, bool8 loadMonSprite)
{
- u8 position;
- s32 i;
- u32 var;
- const void *substitutePal;
+ s32 i, position, palOffset;
if (!loadMonSprite)
{
@@ -964,19 +961,16 @@ void BattleLoadSubstituteOrMonSpriteGfx(u8 battlerId, bool8 loadMonSprite)
else
LZDecompressVram(gSubstituteDollTilemap, gMonSpritesGfxPtr->sprites[position]);
- i = 1;
- var = battlerId * 16;
- substitutePal = gSubstituteDollPal;
- for (; i < 4; i++)
+ for (i = 1; i < 4; i++)
{
- register void *dmaSrc asm("r0") = gMonSpritesGfxPtr->sprites[position];
- void *dmaDst = (i * 0x800) + dmaSrc;
- u32 dmaSize = 0x800;
- DmaCopy32(3, dmaSrc, dmaDst, dmaSize);
- i++;i--;
+ u8 (*ptr)[4][0x800] = gMonSpritesGfxPtr->sprites[position];
+ ptr++;ptr--; // Needed to match.
+
+ DmaCopy32Defvars(3, (*ptr)[0], (*ptr)[i], 0x800);
}
- LoadCompressedPalette(substitutePal, 0x100 + var, 32);
+ palOffset = (battlerId * 16) + 0x100;
+ LoadCompressedPalette(gSubstituteDollPal, palOffset, 32);
}
else
{