# MI_UncompressRL*

## C Specification

      #include <nitro/mi.h>

      void MI_UncompressRL8(
          const void*    srcp,
                void*    destp );

      void MI_UncompressRL16(
          const void*    srcp,
                void*    destp );

## Description

This function expands run length compressed data, and writes it in the specified memory region. The source address must be aligned to a 4-byte boundary.

When the size of the compressed data is not a multiple of four, the data size must be adjusted by padding the size with zeros.

`MI_UncompressRL8` writes in 8-bit units. You cannot expand directly in VRAM.

`MI_UncompressRL16` writes in 16-bit units. Although you can expand in DTCM or main memory, this function is slower than `MI_UncompressRL8`.

## Internal Operation

These processes with the CPU without using a system call or DMA.

## Arguments

`srcp` | The source address where run length compressed data is stored.
`destp` | The destination address for expansion.

## Return Values

None.

## See Also

`MI_UncompressLZ*, MI_UncompressHuffman*, MI_UnfilterDiff*, SVC_UncompressRL*`

## Revision History

05/28/2004 Fixed description in Internal Operation.
01/30/2004 Initial version.