Comment dma3 methods and create DMA3_*BIT macros
This commit is contained in:
+4
-4
@@ -2257,8 +2257,8 @@ void MoveBattlerSpriteToBG(u8 battlerId, bool8 toBG_2)
|
||||
if (!toBG_2)
|
||||
{
|
||||
|
||||
RequestDma3Fill(0, (void*)(BG_SCREEN_ADDR(8)), 0x2000, 1);
|
||||
RequestDma3Fill(0, (void*)(BG_SCREEN_ADDR(28)), 0x1000, 1);
|
||||
RequestDma3Fill(0, (void*)(BG_SCREEN_ADDR(8)), 0x2000, DMA3_32BIT);
|
||||
RequestDma3Fill(0, (void*)(BG_SCREEN_ADDR(28)), 0x1000, DMA3_32BIT);
|
||||
sub_80752A0(&animBg);
|
||||
CpuFill16(toBG_2, animBg.bgTiles, 0x1000);
|
||||
CpuFill16(toBG_2, animBg.bgTilemap, 0x800);
|
||||
@@ -2282,8 +2282,8 @@ void MoveBattlerSpriteToBG(u8 battlerId, bool8 toBG_2)
|
||||
}
|
||||
else
|
||||
{
|
||||
RequestDma3Fill(0, (void*)(BG_SCREEN_ADDR(12)), 0x2000, 1);
|
||||
RequestDma3Fill(0, (void*)(BG_SCREEN_ADDR(30)), 0x1000, 1);
|
||||
RequestDma3Fill(0, (void*)(BG_SCREEN_ADDR(12)), 0x2000, DMA3_32BIT);
|
||||
RequestDma3Fill(0, (void*)(BG_SCREEN_ADDR(30)), 0x1000, DMA3_32BIT);
|
||||
sub_80752C8(&animBg, 2);
|
||||
CpuFill16(0, animBg.bgTiles + 0x1000, 0x1000);
|
||||
CpuFill16(0, animBg.bgTilemap + 0x400, 0x800);
|
||||
|
||||
@@ -2027,7 +2027,7 @@ void sub_80F15C8(u8 taskId)
|
||||
break;
|
||||
case 2:
|
||||
spriteId = gBattlerSpriteIds[gBattleAnimAttacker];
|
||||
RequestDma3Fill(0, (void *)OBJ_VRAM0 + gSprites[spriteId].oam.tileNum * TILE_SIZE_4BPP, 0x800, 1);
|
||||
RequestDma3Fill(0, (void *)OBJ_VRAM0 + gSprites[spriteId].oam.tileNum * TILE_SIZE_4BPP, 0x800, DMA3_32BIT);
|
||||
ClearBehindSubstituteBit(gBattleAnimAttacker);
|
||||
DestroyAnimVisualTask(taskId);
|
||||
break;
|
||||
|
||||
@@ -180,7 +180,7 @@ u8 LoadBgVram(u8 bg, const void *src, u16 size, u16 destOffset, u8 mode)
|
||||
|
||||
offset = destOffset + offset;
|
||||
|
||||
cursor = RequestDma3Copy(src, (void*)(offset + BG_VRAM), size, 0);
|
||||
cursor = RequestDma3Copy(src, (void*)(offset + BG_VRAM), size, DMA3_16BIT);
|
||||
|
||||
if (cursor == -1)
|
||||
{
|
||||
@@ -472,7 +472,7 @@ u16 Unused_LoadBgPalette(u8 bg, const void *src, u16 size, u16 destOffset)
|
||||
if (IsInvalidBg32(bg) == FALSE)
|
||||
{
|
||||
paletteOffset = (sGpuBgConfigs2[bg].basePalette * 0x20) + (destOffset * 2);
|
||||
cursor = RequestDma3Copy(src, (void*)(paletteOffset + BG_PLTT), size, 0);
|
||||
cursor = RequestDma3Copy(src, (void*)(paletteOffset + BG_PLTT), size, DMA3_16BIT);
|
||||
|
||||
if (cursor == -1)
|
||||
{
|
||||
@@ -500,7 +500,7 @@ bool8 IsDma3ManagerBusyWithBgCopy(void)
|
||||
|
||||
if ((sDmaBusyBitfield[div] & (1 << mod)))
|
||||
{
|
||||
s8 reqSpace = CheckForSpaceForDma3Request(i);
|
||||
s8 reqSpace = WaitDma3Request(i);
|
||||
if (reqSpace == -1)
|
||||
return TRUE;
|
||||
sDmaBusyBitfield[div] &= ~(1 << mod);
|
||||
|
||||
+9
-14
@@ -3,12 +3,7 @@
|
||||
|
||||
#define MAX_DMA_REQUESTS 128
|
||||
|
||||
#define DMA_REQUEST_COPY32 1
|
||||
#define DMA_REQUEST_FILL32 2
|
||||
#define DMA_REQUEST_COPY16 3
|
||||
#define DMA_REQUEST_FILL16 4
|
||||
|
||||
static /*IWRAM_DATA*/ struct {
|
||||
static struct {
|
||||
/* 0x00 */ const u8 *src;
|
||||
/* 0x04 */ u8 *dest;
|
||||
/* 0x08 */ u16 size;
|
||||
@@ -26,7 +21,7 @@ void ClearDma3Requests(void)
|
||||
gDma3ManagerLocked = TRUE;
|
||||
gDma3RequestCursor = 0;
|
||||
|
||||
for(i = 0; i < (u8)ARRAY_COUNT(gDma3Requests); i++)
|
||||
for(i = 0; i < (u8)NELEMS(gDma3Requests); i++)
|
||||
{
|
||||
gDma3Requests[i].size = 0;
|
||||
gDma3Requests[i].src = 0;
|
||||
@@ -108,10 +103,10 @@ s16 RequestDma3Copy(const void *src, void *dest, u16 size, u8 mode)
|
||||
gDma3Requests[cursor].dest = dest;
|
||||
gDma3Requests[cursor].size = size;
|
||||
|
||||
if(mode == 1)
|
||||
gDma3Requests[cursor].mode = mode;
|
||||
if(mode == DMA3_32BIT)
|
||||
gDma3Requests[cursor].mode = DMA_REQUEST_COPY32;
|
||||
else
|
||||
gDma3Requests[cursor].mode = 3;
|
||||
gDma3Requests[cursor].mode = DMA_REQUEST_COPY16;
|
||||
|
||||
gDma3ManagerLocked = FALSE;
|
||||
return (s16)cursor;
|
||||
@@ -146,10 +141,10 @@ s16 RequestDma3Fill(s32 value, void *dest, u16 size, u8 mode)
|
||||
gDma3Requests[cursor].mode = mode;
|
||||
gDma3Requests[cursor].value = value;
|
||||
|
||||
if(mode == 1)
|
||||
gDma3Requests[cursor].mode = 2;
|
||||
if(mode == DMA3_32BIT)
|
||||
gDma3Requests[cursor].mode = DMA_REQUEST_FILL32;
|
||||
else
|
||||
gDma3Requests[cursor].mode = 4;
|
||||
gDma3Requests[cursor].mode = DMA_REQUEST_FILL16;
|
||||
|
||||
gDma3ManagerLocked = FALSE;
|
||||
return (s16)cursor;
|
||||
@@ -167,7 +162,7 @@ s16 RequestDma3Fill(s32 value, void *dest, u16 size, u8 mode)
|
||||
return -1;
|
||||
}
|
||||
|
||||
s16 CheckForSpaceForDma3Request(s16 index)
|
||||
s16 WaitDma3Request(s16 index)
|
||||
{
|
||||
int current = 0;
|
||||
|
||||
|
||||
+6
-6
@@ -74,9 +74,9 @@ u8 RunHelpSystemCallback(void)
|
||||
sVideoState.state = 2;
|
||||
break;
|
||||
case 2:
|
||||
RequestDma3Fill(0, (void *)BG_CHAR_ADDR(3), BG_CHAR_SIZE, 0);
|
||||
RequestDma3Copy(sPals, (void *)PLTT, sizeof(sPals), 0);
|
||||
RequestDma3Copy(sTiles, gDecompressionBuffer + 0x3EE0, sizeof(sTiles), 0);
|
||||
RequestDma3Fill(0, (void *)BG_CHAR_ADDR(3), BG_CHAR_SIZE, DMA3_16BIT);
|
||||
RequestDma3Copy(sPals, (void *)PLTT, sizeof(sPals), DMA3_16BIT);
|
||||
RequestDma3Copy(sTiles, gDecompressionBuffer + 0x3EE0, sizeof(sTiles), DMA3_16BIT);
|
||||
sVideoState.state = 3;
|
||||
break;
|
||||
case 3:
|
||||
@@ -160,7 +160,7 @@ void SaveMapGPURegs(void)
|
||||
|
||||
void SaveMapTiles(void)
|
||||
{
|
||||
RequestDma3Copy((void *)BG_CHAR_ADDR(3), sMapTilesBackup, BG_CHAR_SIZE, 0);
|
||||
RequestDma3Copy((void *)BG_CHAR_ADDR(3), sMapTilesBackup, BG_CHAR_SIZE, DMA3_16BIT);
|
||||
}
|
||||
|
||||
void SaveMapTextColors(void)
|
||||
@@ -189,7 +189,7 @@ void RestoreGPURegs(void)
|
||||
|
||||
void RestoreMapTiles(void)
|
||||
{
|
||||
RequestDma3Copy(sMapTilesBackup, (void *)BG_CHAR_ADDR(3), BG_CHAR_SIZE, 0);
|
||||
RequestDma3Copy(sMapTilesBackup, (void *)BG_CHAR_ADDR(3), BG_CHAR_SIZE, DMA3_16BIT);
|
||||
}
|
||||
|
||||
void RestoreMapTextColors(void)
|
||||
@@ -203,7 +203,7 @@ void RestoreMapTextColors(void)
|
||||
|
||||
void CommitTilemap(void)
|
||||
{
|
||||
RequestDma3Copy(gDecompressionBuffer, (void *)BG_CHAR_ADDR(3), BG_CHAR_SIZE, 0);
|
||||
RequestDma3Copy(gDecompressionBuffer, (void *)BG_CHAR_ADDR(3), BG_CHAR_SIZE, DMA3_16BIT);
|
||||
}
|
||||
|
||||
void HS_DrawBgTilemapRect(u16 baseTile, u8 left, u8 top, u8 width, u8 height, u16 increment)
|
||||
|
||||
+1
-1
@@ -392,7 +392,7 @@ static void Task_PrintMainMenuText(u8 taskId)
|
||||
|
||||
static void Task_WaitDma3AndFadeIn(u8 taskId)
|
||||
{
|
||||
if (CheckForSpaceForDma3Request(-1) != -1)
|
||||
if (WaitDma3Request(-1) != -1)
|
||||
{
|
||||
gTasks[taskId].func = Task_UpdateVisualSelection;
|
||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 16, 0, 0xFFFF);
|
||||
|
||||
+2
-2
@@ -507,8 +507,8 @@ static struct Sprite * CreateMonMarkingSprite(u16 tileTag, u16 paletteTag, const
|
||||
return NULL;
|
||||
}
|
||||
|
||||
void sub_80BEBD0(u8 markings, void * dest)
|
||||
void RequestDma3LoadMonMarking(u8 markings, void * dest)
|
||||
{
|
||||
RequestDma3Copy(&sMonMarkingsTiles[64 * markings], dest, 0x80, 1);
|
||||
RequestDma3Copy(&sMonMarkingsTiles[64 * markings], dest, 0x80, DMA3_32BIT);
|
||||
}
|
||||
|
||||
|
||||
@@ -299,7 +299,7 @@ void DecompressAndLoadBgGfxUsingHeap2(u8 bgId, const void *src, u32 size, u16 of
|
||||
|
||||
static void TaskFreeBufAfterCopyingTileDataToVram(u8 taskId)
|
||||
{
|
||||
if (!CheckForSpaceForDma3Request(gTasks[taskId].data[0]))
|
||||
if (!WaitDma3Request(gTasks[taskId].data[0]))
|
||||
{
|
||||
Free((void *)GetWordTaskArg(taskId, 1));
|
||||
DestroyTask(taskId);
|
||||
|
||||
@@ -336,7 +336,7 @@ void InitPokemonSpecialAnimScene(struct PokemonSpecialAnimScene * buffer, u16 an
|
||||
ChangeBgY(3, 0, 0);
|
||||
SetBgTilemapBuffer(0, buffer->field_0914);
|
||||
SetBgTilemapBuffer(3, buffer->field_1914);
|
||||
RequestDma3Fill(0, (void *)BG_VRAM, 0x20, TRUE);
|
||||
RequestDma3Fill(0, (void *)BG_VRAM, 0x20, DMA3_32BIT);
|
||||
FillBgTilemapBufferRect_Palette0(0, 0x000, 0, 0, 32, 32);
|
||||
LoadBgGfxByAnimType(animType);
|
||||
FillWindowPixelBuffer(0, PIXEL_FILL(0));
|
||||
|
||||
@@ -74,8 +74,8 @@ static void LoadPSSMenuGfx(void);
|
||||
static bool8 InitPSSWindows(void);
|
||||
static void LoadWaveformSpritePalette(void);
|
||||
static void sub_808F078(void);
|
||||
static void sub_808F0F4(void);
|
||||
static void sub_808F164(void);
|
||||
static void PSS_CreateMonMarkingSprite(void);
|
||||
static void CreateWaveformSprites(void);
|
||||
static void RefreshCursorMonData(void);
|
||||
static void BoxSetMosaic(void);
|
||||
static void SpriteCB_CursorMon_Mosaic(struct Sprite * sprite);
|
||||
@@ -2158,22 +2158,22 @@ static void sub_808F078(void)
|
||||
|
||||
SetGpuReg(REG_OFFSET_BG1CNT, BGCNT_PRIORITY(1) | BGCNT_CHARBASE(1) | BGCNT_16COLOR | BGCNT_SCREENBASE(30));
|
||||
LoadCursorMonSprite();
|
||||
sub_808F0F4();
|
||||
sub_808F164();
|
||||
PSS_CreateMonMarkingSprite();
|
||||
CreateWaveformSprites();
|
||||
RefreshCursorMonData();
|
||||
}
|
||||
|
||||
static void sub_808F0F4(void)
|
||||
static void PSS_CreateMonMarkingSprite(void)
|
||||
{
|
||||
gPSSData->field_D94 = CreateMonMarkingSprite_AllOff(TAG_TILE_10, TAG_PAL_DAC8, NULL);
|
||||
gPSSData->field_D94->oam.priority = 1;
|
||||
gPSSData->field_D94->subpriority = 1;
|
||||
gPSSData->field_D94->pos1.x = 40;
|
||||
gPSSData->field_D94->pos1.y = 150;
|
||||
gPSSData->field_DA0 = (void *)OBJ_VRAM0 + 32 * GetSpriteTileStartByTag(TAG_TILE_10);
|
||||
gPSSData->monMarkingSprite = CreateMonMarkingSprite_AllOff(TAG_TILE_10, TAG_PAL_DAC8, NULL);
|
||||
gPSSData->monMarkingSprite->oam.priority = 1;
|
||||
gPSSData->monMarkingSprite->subpriority = 1;
|
||||
gPSSData->monMarkingSprite->pos1.x = 40;
|
||||
gPSSData->monMarkingSprite->pos1.y = 150;
|
||||
gPSSData->monMarkingSpriteTileStart = (void *)OBJ_VRAM0 + 32 * GetSpriteTileStartByTag(TAG_TILE_10);
|
||||
}
|
||||
|
||||
static void sub_808F164(void)
|
||||
static void CreateWaveformSprites(void)
|
||||
{
|
||||
u16 i;
|
||||
struct SpriteSheet sheet = sWaveformSpriteSheet;
|
||||
@@ -2312,12 +2312,12 @@ static void PrintCursorMonInfo(void)
|
||||
CopyWindowToVram(0, 2);
|
||||
if (gPSSData->cursorMonSpecies != SPECIES_NONE)
|
||||
{
|
||||
sub_80BEBD0(gPSSData->cursorMonMarkings, gPSSData->field_DA0);
|
||||
gPSSData->field_D94->invisible = FALSE;
|
||||
RequestDma3LoadMonMarking(gPSSData->cursorMonMarkings, gPSSData->monMarkingSpriteTileStart);
|
||||
gPSSData->monMarkingSprite->invisible = FALSE;
|
||||
}
|
||||
else
|
||||
{
|
||||
gPSSData->field_D94->invisible = TRUE;
|
||||
gPSSData->monMarkingSprite->invisible = TRUE;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -996,10 +996,10 @@ static void sub_8091420(u8 taskId)
|
||||
case 0:
|
||||
gPSSData->field_2D2 = 0;
|
||||
gPSSData->bg2_X = 0;
|
||||
task->data[1] = RequestDma3Fill(0, gPSSData->field_4AC4, 0x1000, 1);
|
||||
task->data[1] = RequestDma3Fill(0, gPSSData->field_4AC4, 0x1000, DMA3_32BIT);
|
||||
break;
|
||||
case 1:
|
||||
if (CheckForSpaceForDma3Request(task->data[1]) == -1)
|
||||
if (WaitDma3Request(task->data[1]) == -1)
|
||||
return;
|
||||
|
||||
SetBgTilemapBuffer(2, gPSSData->field_4AC4);
|
||||
|
||||
@@ -53,8 +53,8 @@ bool32 RunSaveFailedScreen(void)
|
||||
sSaveFailedScreenState = 2;
|
||||
break;
|
||||
case 2:
|
||||
RequestDma3Fill(0, (void *)BG_CHAR_ADDR(3), BG_CHAR_SIZE, 0);
|
||||
RequestDma3Copy(sSaveFailedScreenPals, (void *)PLTT, 0x20, 0);
|
||||
RequestDma3Fill(0, (void *)BG_CHAR_ADDR(3), BG_CHAR_SIZE, DMA3_16BIT);
|
||||
RequestDma3Copy(sSaveFailedScreenPals, (void *)PLTT, 0x20, DMA3_16BIT);
|
||||
sSaveFailedScreenState = 3;
|
||||
break;
|
||||
case 3:
|
||||
@@ -118,12 +118,12 @@ static void BlankPalettes(void)
|
||||
|
||||
static void RequestDmaCopyFromScreenBuffer(void)
|
||||
{
|
||||
RequestDma3Copy(gDecompressionBuffer + 0x3800, (void *)BG_SCREEN_ADDR(31), 0x500, 0);
|
||||
RequestDma3Copy(gDecompressionBuffer + 0x3800, (void *)BG_SCREEN_ADDR(31), 0x500, DMA3_16BIT);
|
||||
}
|
||||
|
||||
static void RequestDmaCopyFromCharBuffer(void)
|
||||
{
|
||||
RequestDma3Copy(gDecompressionBuffer + 0x020, (void *)BG_CHAR_ADDR(3) + 0x20, 0x2300, 0);
|
||||
RequestDma3Copy(gDecompressionBuffer + 0x020, (void *)BG_CHAR_ADDR(3) + 0x20, 0x2300, DMA3_16BIT);
|
||||
}
|
||||
|
||||
static void FillBgMapBufferRect(u16 baseBlock, u8 left, u8 top, u8 width, u8 height, u16 blockOffset)
|
||||
|
||||
+3
-3
@@ -1952,9 +1952,9 @@ static bool8 SlotsTask_GraphicsInit(u8 * state, struct SlotMachineSetupTaskData
|
||||
SetVBlankCallback(NULL);
|
||||
ResetSpriteData();
|
||||
FreeAllSpritePalettes();
|
||||
RequestDma3Fill(0, (void *)OAM, OAM_SIZE, 1);
|
||||
RequestDma3Fill(0, (void *)VRAM, 0x20, 1);
|
||||
RequestDma3Fill(0, (void *)(VRAM + 0xC000), 0x20, 1);
|
||||
RequestDma3Fill(0, (void *)OAM, OAM_SIZE, DMA3_32BIT);
|
||||
RequestDma3Fill(0, (void *)VRAM, 0x20, DMA3_32BIT);
|
||||
RequestDma3Fill(0, (void *)(VRAM + 0xC000), 0x20, DMA3_32BIT);
|
||||
SetGpuReg(REG_OFFSET_DISPCNT, 0);
|
||||
ResetBgPositions();
|
||||
ResetBgsAndClearDma3BusyFlags(FALSE);
|
||||
|
||||
+5
-5
@@ -23,11 +23,11 @@ EWRAM_DATA struct MusicPlayerInfo* gMPlay_PokemonCry = NULL;
|
||||
EWRAM_DATA u8 gPokemonCryBGMDuckingCounter = 0;
|
||||
|
||||
// iwram bss
|
||||
/*IWRAM_DATA*/ static u16 sCurrentMapMusic;
|
||||
/*IWRAM_DATA*/ static u16 sNextMapMusic;
|
||||
/*IWRAM_DATA*/ static u8 sMapMusicState;
|
||||
/*IWRAM_DATA*/ static u8 sMapMusicFadeInSpeed;
|
||||
/*IWRAM_DATA*/ static u16 sFanfareCounter;
|
||||
static u16 sCurrentMapMusic;
|
||||
static u16 sNextMapMusic;
|
||||
static u8 sMapMusicState;
|
||||
static u8 sMapMusicFadeInSpeed;
|
||||
static u16 sFanfareCounter;
|
||||
|
||||
// iwram common
|
||||
bool8 gDisableMusic;
|
||||
|
||||
@@ -1252,7 +1252,7 @@ static void SetBgTilemapWorkBuffers(void)
|
||||
|
||||
static void ClearBg0(void)
|
||||
{
|
||||
RequestDma3Fill(0, (void *)BG_CHAR_ADDR(0), 0x20, 1);
|
||||
RequestDma3Fill(0, (void *)BG_CHAR_ADDR(0), 0x20, DMA3_32BIT);
|
||||
FillBgTilemapBufferRect_Palette0(0, 0, 0, 0, 32, 32);
|
||||
CopyBgTilemapBufferToVram(0);
|
||||
}
|
||||
@@ -1279,7 +1279,7 @@ static void LoadLinkMiscMenuGfx(void)
|
||||
static void LoadBg1Pal8(void)
|
||||
{
|
||||
LoadPalette(sBg1Pal8, 0x80, 0x20);
|
||||
RequestDma3Fill(0, (void *)BG_CHAR_ADDR(1) + 0x20, 0x20, 1);
|
||||
RequestDma3Fill(0, (void *)BG_CHAR_ADDR(1) + 0x20, 0x20, DMA3_32BIT);
|
||||
}
|
||||
|
||||
static void LoadWin0(void)
|
||||
|
||||
Reference in New Issue
Block a user