# MI_UnpackBits

## C Specification

  `#include <nitro/mi.h>`
  `void MI_UnpackBits( const void* srcp, void* destp, MIUnpackBitsParam *paramp );`

## Arguments

srcp | Source address where compressed data is stored.
destp | Destination address for decompression.
paramp | MIUnpackBitsParam socket address.

## Return Values

None.

## Description

This function decompresses data that is been pared back 0 fixed bits. The destination address must be aligned to a 4-byte boundary.
This is the `MI_UnpackBitsParam` structure. The number of source data bytes `u16`.
The number of bits in one source data `(u16:8)`.
The number of bits in one destination data `(u16:8)`.
The offset that is to be added to the source data `(u32:31)`.
A flag that indicates whether to add an offset to 0 data `(u32:1)`.

## Internal Operation

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

## See Also

`MI_UncompressLZ, MI_UncompressHuffman, MI_UncompressRL, SVC_UnpackBits`

## Revision History

`MI_UnpackBitsPram` is changed to `MIUnpackBitsParam`.
05/28/2004 Fixed description in Internal Operation.
02/10/2004 Initial version.