MI_CompressRL

Syntax

#include <nitro/mi.h>

u32 MI_CompressRL( const u8 *srcp, u32 size, u8 *dstp );

Arguments

srcp Source address where the data to compress is stored.
size Data size of the source to compress.
dstp Needs a pointer to the compression destination buffer and a region greater than the source data size. Needs a 4-byte alignment.

Return Values

Returns the size of the compressed data. If the data after compression is larger than the source file, no compression is performed, and 0 is returned.

Description

Performs RL-compression on the data and then writes it to a specified memory region. A region of the same size as the source data must be prepared in the compression destination buffer.

The function writes in 8-bit units, so for NITRO, an address in VRAM cannot be specified in dstp.
An address in VRAM can be specified in srcp for both NITRO and TWL.

Internal Operation

Processing takes place only on the CPU, without the use of a system call or DMA.

See Also

MI_UncompressRL*
MI_ReadUncompRL
MI_CompressLZ*
MI_CompressHuffman

Revision History

2008/12/05 Added TWL-related description.

2005/02/01 Initial version.


CONFIDENTIAL