# MI_UnfilterDiff*

## C Specification

  `#include <nitro/mi.h>`
  `void MI_UnfilterDiff8( const void* srcp, void* destp );`
  `void MI_UnfilterDiff16( const void* srcp, void* destp );`

## Arguments

srcp | The source address where difference filtered-data is stored.
destp | The destination address where the data is expanded. Can be the same region as the source address.

## Return Values

None.

## Description

This function expands the data to which the difference filter was applied and writes it to 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 4, adjust by paring it back using zeros. The pointers to the source and destination addresses may point to the same region.

`MI_UnfilterDiff8` writes in 8-bit units. You cannot decompress directly to VRAM().
`MI_UnfilterDiff16` writes in 16-bit units. Although you can expand the data in DTCM or main memory, this function is slower than `MI_UnfilterDiff8`.

## Internal Operation

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

## See Also

`MI_UncompressHuffman, MI_UncompressRL*, SVC_UncompressLZ*`

## Revision History

11/15/2004 Initial version.

CONFIDENTIAL