summaryrefslogtreecommitdiff
path: root/include/gba/macro.h
blob: 5578f90baad905bafe7717e1992d26de9f22d561 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#ifndef GUARD_GBA_MACRO_H
#define GUARD_GBA_MACRO_H

#define CPU_FILL(dest, value, size, bit)                                          \
do {                                                                              \
    vu##bit tmp = (vu##bit)(value);                                               \
    CpuSet((void *)&tmp,                                                          \
           dest,                                                                  \
           CPU_SET_##bit##BIT | CPU_SET_SRC_FIXED | ((size)/(bit/8) & 0x1FFFFF)); \
} while (0)

#define CpuFill16(dest, value, size) CPU_FILL(dest, value, size, 16)
#define CpuFill32(dest, value, size) CPU_FILL(dest, value, size, 32)

#endif // GUARD_GBA_MACRO_H