summaryrefslogtreecommitdiff
path: root/include/gba/macro.h
diff options
context:
space:
mode:
authorcamthesaxman <cameronghall@cox.net>2016-10-02 16:15:12 -0500
committerYamaArashi <YamaArashi@users.noreply.github.com>2016-10-02 14:15:12 -0700
commit43f374e64e6c0ee10bc38af9c064a3411ba88c85 (patch)
tree61cb1d1488ce0a77ff9474dec8540634b5238589 /include/gba/macro.h
parent6ce4ed25d6565aa359d94442f47fa3c20f7bf356 (diff)
add DmaClear macro (#50)
Diffstat (limited to 'include/gba/macro.h')
-rw-r--r--include/gba/macro.h10
1 files changed, 10 insertions, 0 deletions
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, \