1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2<html>
3
4<head>
5<META http-equiv="Content-Type" content="text/html; charset=windows-1252">
6<META name="GENERATOR" content="IBM WebSphere Studio Homepage Builder Version 7.0.0.0 for Windows">
7<META http-equiv="Content-Style-Type" content="text/css">
8<title>SVC_UncompressLZ*</title>
9<LINK rel="stylesheet" href="../css/nitro.css" type="text/css">
10</head>
11
12<body>
13
14<h1 align="left">SVC_UncompressLZ* <IMG src="../image/NTR.gif" align="middle"><IMG src="../image/TWL.gif" align="middle"></h1>
15<h2>Syntax</h2>
16
17<dl>
18  <dd>
19<PRE>
20<CODE>#include &lt;nitro/os/common/systemCall.h&gt;
21
22void SVC_UncompressLZ8( const void* srcp, void* destp );
23
24s32 SVC_UncompressLZ16FromDevice( const void* srcp,
25                                  void* destp,
26                                  const void* paramp,
27                                  const MIReadStreamCallbacks *callbacks);
28</CODE></PRE>
29</dd>
30</dl>
31<h2>Arguments</h2>
32<TABLE border="1" width="100%">
33  <TBODY>
34    <TR>
35      <TD width="13%"><EM><STRONG>srcp</STRONG></EM></TD>
36      <TD width="87%">Source address where the LZ77 compressed data is stored.</TD>
37    </TR>
38    <TR>
39      <TD width="13%"><EM><STRONG>destp</STRONG></EM></TD>
40      <TD width="87%">Destination address for decompression.</TD>
41    </TR>
42    <TR>
43      <TD><EM><STRONG>paramp</STRONG></EM></TD>
44      <TD>Parameter address that is handed to the <code>initStream</code> function of the MIReadStreamCallBacks structure.</TD>
45    </TR>
46    <TR>
47      <TD><EM><STRONG>callbacks</STRONG></EM></TD>
48      <TD>Address of the <code>MIReadStreamCallbacks</code> socket.</TD>
49    </TR>
50  </TBODY>
51</TABLE>
52
53<h2>Return Values</h2>
54<p>There is no return value for <code>SVC_UncompressLZ8()</code>.<BR> If the return value for <code>SVC_UncompressLZ16FromDevice()</code> is 0 or greater, it will be the decompressed size. If it is less than <code>0</code>, this indicates an error.</p>
55
56<H2>Description</H2>
57<P>This function decompresses LZ77 compressed data and writes the data to the specified region of memory.</P>
58
59<P>Decompresses compressed data that is specified by <B><I>srcp</I></B>, and stores the result in the area specified in <B><I>destp</I></B>.</P>
60<P><B>SVC_UncompressLZ8</B><BR> The <CODE>SVC_UncompressLZ8</CODE> function can write in 8-bit units. It cannot access VRAM directly.</P>
61<P><B>SVC_UncompressLZ16FromDevice</B><BR> The <CODE>SVC_UncompressLZ16FromDevice</CODE> function can write in 16-bit units. Compressed data on devices that are not memory-mapped can be decompressed directly without using a temporary buffer. It is possible to decompress data into RAM that cannot be byte-accessed, but the speed is slower than <code>SVC_UncompressedLZ8()</code>.</P>
62<P>The data specified by <B><I>srcp</I></B> should be data that was compressed using the command &quot;<CODE><A href="../tools/ntrcomp.html">ntrcomp</A> -l 2</CODE>&quot;. The boundary restrictions of <B><I>srcp</I></B> depend on the implementation of the <CODE>initStream</CODE> callback.</P>
63<h2>See Also</h2>
64<p><code><a href="../mi/uncompress/MI_UncompressLZ.html">MI_UncompressLZ*</a>, <a href="SVC_UncompressHuffmanFromDevice.html">SVC_UncompressHuffmanFromDevice</a>, <a href="SVC_UncompressRL.html">SVC_UncompressRL*</a></code></p>
65
66<H2>Revision History</H2>
67<P>2004/07/22 Initial version.</P>
68<hr><p>CONFIDENTIAL</p></body>
69</html>
70