merge dma funcs

This commit is contained in:
theo3 2020-07-16 01:02:46 -07:00
parent 92146289ad
commit ccb6ec4a9c
5 changed files with 34 additions and 36 deletions

View File

@ -315,9 +315,7 @@ SECTIONS {
asm/drawHealth.o(.text);
asm/sub_0801C824.o(.text);
asm/code_0801C85C.o(.text);
src/_dmaFill16.o(.text);
src/_dmaFill32.o(.text);
src/_dmaZero.o(.text);
src/dma.o(.text);
asm/sub_0801D66C.o(.text);
src/input.o(.text);
asm/code_0801D714.o(.text);

View File

@ -1,4 +0,0 @@
#include "global.h"
void _DmaFill16(u32 a1, u32 a2, u32 a3) {
DmaFill16(3, a1, a2, a3);
}

View File

@ -1,5 +0,0 @@
#include "global.h"
void _DmaFill32(u32 a1, u32 a2, u32 a3) {
DmaFill32(3, a1, a2, a3);
}

View File

@ -1,24 +0,0 @@
#include "global.h"
void _DmaFill32(u32, void*, u32);
void _DmaFill16(u32, void*, u32);
void _DmaZero(u8 *src, u32 count)
{
u32 zero = 0;
switch (((u32)src | count) & 3) {
case 0:
_DmaFill32(0,src, count);
break;
case 2:
_DmaFill16(0, src, count);
break;
default:
do {
*src = zero;
src++;
count--;
} while (count != 0);
}
}

33
src/dma.c Normal file
View File

@ -0,0 +1,33 @@
#include "global.h"
#include "entity.h"
void _DmaFill32(u32, u8*, u32);
void _DmaFill16(u32, u8*, u32);
void _DmaFill16(u32 value, u8* dest, u32 size) {
DmaFill16(3, value, dest, size);
}
void _DmaFill32(u32 value, u8* dest, u32 size) {
DmaFill32(3, value, dest, size);
}
void _DmaZero(u8 *src, u32 size)
{
u32 zero = 0;
switch (((u32)src | size) & 3) {
case 0:
_DmaFill32(0,src, size);
break;
case 2:
_DmaFill16(0, src, size);
break;
default:
do {
*src = zero;
src++;
size--;
} while (size != 0);
}
}