summaryrefslogtreecommitdiff
path: root/include/gba/macro.h
diff options
context:
space:
mode:
authorPikalaxALT <pikalaxalt@gmail.com>2017-12-20 17:51:17 -0500
committerPikalaxALT <pikalaxalt@gmail.com>2017-12-20 17:51:17 -0500
commitf0957176bc96aef3bac673ac520ba55832957ba8 (patch)
tree5fca528b246357c916e6bb39ff9ba4e90ec5d16e /include/gba/macro.h
parent8fd3100fb491c22bb90d1a86f2f1b0fd3b090ac4 (diff)
through sub_8101AE0
Diffstat (limited to 'include/gba/macro.h')
-rw-r--r--include/gba/macro.h30
1 files changed, 17 insertions, 13 deletions
diff --git a/include/gba/macro.h b/include/gba/macro.h
index a0edf2a49..945ba4885 100644
--- a/include/gba/macro.h
+++ b/include/gba/macro.h
@@ -104,25 +104,29 @@
}
#define DmaClearLarge(dmaNum, dest, size, block, bit) \
-{ \
- u32 _size = size; \
- while (1) \
- { \
- DmaFill##bit(dmaNum, 0, dest, (block)); \
- dest += (block); \
- _size -= (block); \
- if (_size <= (block)) \
- { \
- DmaFill##bit(dmaNum, 0, dest, _size); \
- break; \
- } \
- } \
+{ \
+ void *_dest = dest; \
+ u32 _size = size; \
+ while (1) \
+ { \
+ DmaFill##bit(dmaNum, 0, _dest, (block)); \
+ _dest += (block); \
+ _size -= (block); \
+ if (_size <= (block)) \
+ { \
+ DmaFill##bit(dmaNum, 0, _dest, _size); \
+ break; \
+ } \
+ } \
}
#define DmaCopyLarge16(dmaNum, src, dest, size, block) DmaCopyLarge(dmaNum, src, dest, size, block, 16)
#define DmaCopyLarge32(dmaNum, src, dest, size, block) DmaCopyLarge(dmaNum, src, dest, size, block, 32)
+# define DmaClearLarge16(dmaNum, dest, size, block) DmaClearLarge(dmaNum, dest, size, block, 16)
+# define DmaClearLarge32(dmaNum, dest, size, block) DmaClearLarge(dmaNum, dest, size, block, 32)
+
#define DmaCopyDefvars(dmaNum, src, dest, size, bit) \
{ \
const void *_src = src; \