From 5bf13c7f48fe91c7902ce50250bc1a5a2398a2ae Mon Sep 17 00:00:00 2001 From: red031000 Date: Fri, 23 Jul 2021 01:11:15 +0100 Subject: separate out libs to libc, libnns and NitroSDK --- arm9/lib/NitroSDK/include/MI_memory.h | 68 +++++++++++++++++++++++++++++++++++ 1 file changed, 68 insertions(+) create mode 100644 arm9/lib/NitroSDK/include/MI_memory.h (limited to 'arm9/lib/NitroSDK/include/MI_memory.h') diff --git a/arm9/lib/NitroSDK/include/MI_memory.h b/arm9/lib/NitroSDK/include/MI_memory.h new file mode 100644 index 00000000..4e5722bb --- /dev/null +++ b/arm9/lib/NitroSDK/include/MI_memory.h @@ -0,0 +1,68 @@ +#ifndef POKEDIAMOND_ARM9_MI_MEMORY_H +#define POKEDIAMOND_ARM9_MI_MEMORY_H + +#include "nitro/types.h" + +void MIi_CpuClear16(register u16 data, register void *destp, register u32 size); +void MIi_CpuCopy16(register const void *srcp, register void *destp, register u32 size); +void MIi_CpuClear32(register u32 data, register void *destp, register u32 size); +void MIi_CpuCopy32(register const void *srcp, register void *destp, register u32 size); +void MIi_CpuSend32(register const void *srcp, volatile void *destp, u32 size); +void MIi_CpuClearFast(register u32 data, register void *destp, register u32 size); +void MIi_CpuCopyFast(register const void *srcp, register void *destp, register u32 size); +void MI_Copy32B(register const void *pSrc, register void *pDest); +void MI_Copy36B(register const void *pSrc, register void *pDest); +void MI_Copy48B(register const void *pSrc, register void *pDest); +void MI_Copy64B(register const void *pSrc, register void *pDest); +void MI_CpuFill8(register void *dstp, register u8 data, register u32 size); +void MI_CpuCopy8(register const void *srcp, register void *dstp, register u32 size); +void MI_Zero36B(register void *pDest); + +static inline void MI_CpuClearFast(void *destp, u32 size) { + MIi_CpuClearFast(0, destp, size); +} +static inline void MI_CpuClear8(void *dest, u32 size) { + MI_CpuFill8(dest, 0, size); +} + +static inline void MI_CpuFill16(void *dest, u16 data, u32 size) +{ + MIi_CpuClear16(data, dest, size); +} + +static inline void MI_CpuClear16(void * destp, u32 size) +{ + MIi_CpuClear16(0, destp, size); +} + +static inline void MI_CpuFill32(void *dest, u32 data, u32 size) +{ + MIi_CpuClear32(data, dest, size); +} + +static inline void MI_CpuClear32(void *dest, u32 size) +{ + MI_CpuFill32(dest, 0, size); +} + +static inline void MI_CpuCopy16(const void *src, void *dest, u32 size) +{ + MIi_CpuCopy16(src, dest, size); +} + +static inline void MI_CpuCopy32(const void *src, void *dest, u32 size) +{ + MIi_CpuCopy32(src, dest, size); +} + +static inline void MI_CpuFillFast(void *dest, u32 data, u32 size) +{ + MIi_CpuClearFast(data, dest, size); +} + +static inline void MI_CpuCopyFast(const void *src, void *dest, u32 size) +{ + MIi_CpuCopyFast(src, dest, size); +} + +#endif //POKEDIAMOND_ARM9_MI_MEMORY_H -- cgit v1.2.3