#include <nitro/mi.h>
void MI_CpuClear8( void* dest, u32 size);
void MI_CpuClear16( void* dest, u32 size);
void MI_CpuClear32( void* dest, u32 size);
void MI_CpuClearFast( void* dest, u32 size);
dest | The address of the clear destination |
size | Clear size |
None.
This function uses the CPU to zero clear memory.
MI_CpuClear8()
selects the most efficient memory access based on the transfer destination address, and appropriately fills the memory with zeroes in 16-bit and 32-bit units. The alignment of the clear destination address does not need to be considered.
MI_CpuClear16()
fills the memory with zeros in 16-bit units. The clear destination address must be 2-byte aligned.
MI_CpuClear32()
fills the memory with zeros in 32-bit units. The clear destination address must be 4-byte aligned.
MI_CpuClearFast()
fills with zeros at high speed in 32-byte units. The clear destination address must be 4-byte aligned. The clear size must be an integral multiple of 4 bytes. (It does not have to be a multiple of 32.).
This processes with the CPU only and does not use the DMA controller. It does not use a system call. MI_CpuClear8
copies in units of 16/32 bits, so accessing VRAM directly will not cause problems.
MI_CpuCopy*, MI_CpuFill*, MI_CpuSend*, MI_DmaClear*
2005/07/07 Added description of clear size of MI_CpuClearFast
.
04/29/2004 Added description of MI_CpuClear8
.
03/29/2004 Added statement about not using system calls.
12/01/2003 Initial version
CONFIDENTIAL