From 43f374e64e6c0ee10bc38af9c064a3411ba88c85 Mon Sep 17 00:00:00 2001 From: camthesaxman Date: Sun, 2 Oct 2016 16:15:12 -0500 Subject: add DmaClear macro (#50) --- include/gba/macro.h | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'include') diff --git a/include/gba/macro.h b/include/gba/macro.h index 21e6ea22e..c8139eb97 100644 --- a/include/gba/macro.h +++ b/include/gba/macro.h @@ -49,6 +49,16 @@ #define DmaFill16(dmaNum, value, dest, size) DMA_FILL(dmaNum, value, dest, size, 16) #define DmaFill32(dmaNum, value, dest, size) DMA_FILL(dmaNum, value, dest, size, 32) +#define DMA_CLEAR(dmaNum, dest, size, bit) \ +{ \ + vu##bit *_dest = (vu##bit *)(dest); \ + u32 _size = size; \ + DmaFill##bit(dmaNum, 0, _dest, _size); \ +} + +#define DmaClear16(dmaNum, dest, size) DMA_CLEAR(dmaNum, dest, size, 16) +#define DmaClear32(dmaNum, dest, size) DMA_CLEAR(dmaNum, dest, size, 32) + #define DMA_COPY(dmaNum, src, dest, size, bit) \ DmaSet(dmaNum, \ src, \ -- cgit v1.2.3