#include <nitro/os/common/systemCall.h>
void SVC_UncompressRL8( const void* srcp, void* destp );
s32 SVC_UncompressRL16FromDevice( const void* srcp,
void* destp,
const void* paramp,
ReadStreamCallbacks *callbacks
);
srcp | The source address where run length compressed data is stored. |
destp | Destination address for decompression. |
paramp | Parameter address that is handed to the initStream function of the MIReadStreamCallBacks structure. |
callbacks | Address of the MIReadStreamCallbacks socket. |
There is no return value for SVC_UncompressRL8()
.
If the return value for SVC_UncompressRL16FromDevice()
is greater than 0
, it is the decompressed size. If it is less than 0
, it is an error.
This function decompresses run length compressed data and writes the data to the specified region of memory. Match the source address src
to the 4-byte boundary. If the size of the compressed data is not a multiple of 4
, make adjustments by paring the size back using 0
.
The SVC_UncompressRL8()
function can be written in 8-bit units. You cannot decompress directly to VRAM().
The SVC_UncompressRL16FromDevice()
function can be written in 16-bit units. Compressed data on devices that are not memory mapped can be decompressed directly without using a temporary buffer.
MI_UncompressRL*, SVC_UncompressLZ*, SVC_UncompressHuffmanFromDevice
2004/07/22 Initial version.
CONFIDENTIAL