mirror of https://github.com/zeldaret/tmc.git
merge dma funcs
This commit is contained in:
parent
92146289ad
commit
ccb6ec4a9c
|
|
@ -315,9 +315,7 @@ SECTIONS {
|
||||||
asm/drawHealth.o(.text);
|
asm/drawHealth.o(.text);
|
||||||
asm/sub_0801C824.o(.text);
|
asm/sub_0801C824.o(.text);
|
||||||
asm/code_0801C85C.o(.text);
|
asm/code_0801C85C.o(.text);
|
||||||
src/_dmaFill16.o(.text);
|
src/dma.o(.text);
|
||||||
src/_dmaFill32.o(.text);
|
|
||||||
src/_dmaZero.o(.text);
|
|
||||||
asm/sub_0801D66C.o(.text);
|
asm/sub_0801D66C.o(.text);
|
||||||
src/input.o(.text);
|
src/input.o(.text);
|
||||||
asm/code_0801D714.o(.text);
|
asm/code_0801D714.o(.text);
|
||||||
|
|
|
||||||
|
|
@ -1,4 +0,0 @@
|
||||||
#include "global.h"
|
|
||||||
void _DmaFill16(u32 a1, u32 a2, u32 a3) {
|
|
||||||
DmaFill16(3, a1, a2, a3);
|
|
||||||
}
|
|
||||||
|
|
@ -1,5 +0,0 @@
|
||||||
#include "global.h"
|
|
||||||
|
|
||||||
void _DmaFill32(u32 a1, u32 a2, u32 a3) {
|
|
||||||
DmaFill32(3, a1, a2, a3);
|
|
||||||
}
|
|
||||||
|
|
@ -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);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
@ -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);
|
||||||
|
}
|
||||||
|
}
|
||||||
Loading…
Reference in New Issue