mirror of
https://github.com/2003scape/deep-c-rsc.git
synced 2024-03-22 05:49:51 -04:00
1036 lines
27 KiB
C
1036 lines
27 KiB
C
/* DO NOT EDIT THIS FILE - it is machine generated (JCGO_116) */
|
|
|
|
#ifdef JCGO_SEPARATED
|
|
#define JCGO_116
|
|
#include "jcgortl.h"
|
|
#include "Main.h"
|
|
#endif
|
|
|
|
#ifdef JCGO_116
|
|
|
|
#ifdef CHKALL_BZLib
|
|
#include "jcgobchk.h"
|
|
#endif
|
|
|
|
JCGO_NOSEP_INLINE jbyte CFASTCALL
|
|
package_BZLib__getUchar__L0h0mx( package_BZState state )
|
|
{
|
|
{
|
|
return (jbyte)(package_BZLib__getBits__IL0h0mx(
|
|
state, (jint)8));
|
|
}
|
|
}
|
|
|
|
JCGO_NOSEP_INLINE jbyte CFASTCALL
|
|
package_BZLib__getBit__L0h0mx( package_BZState state )
|
|
{
|
|
{
|
|
return (jbyte)(package_BZLib__getBits__IL0h0mx(
|
|
state, (jint)1));
|
|
}
|
|
}
|
|
|
|
JCGO_NOSEP_INLINE void CFASTCALL
|
|
package_BZLib__makeMaps__L0h0mx( package_BZState state )
|
|
{
|
|
{
|
|
JCGO_FIELD_ACCESS(package_BZState, state, nInUse)= 0;
|
|
{
|
|
jint i;
|
|
i= 0;
|
|
for (; i < (jint)256; i++)
|
|
{
|
|
if (JCGO_ARRAY_ZACCESS(JCGO_FIELD_NZACCESS(state, inUse), i))
|
|
{
|
|
JCGO_ARRAY_BACCESS(JCGO_FIELD_NZACCESS(state, setToUnseq), JCGO_FIELD_NZACCESS(state,
|
|
nInUse))= ((jbyte)i);
|
|
JCGO_FIELD_NZACCESS(state, nInUse)++;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
JCGO_NOSEP_INLINE void CFASTCALL
|
|
package_BZLib__createDecodeTables__IAIAIABAIII( jintArr limit, jintArr
|
|
base, jintArr perm, jbyteArr length, jint minLen, jint maxLen, jint
|
|
alphaSize )
|
|
{
|
|
{
|
|
jint pp;
|
|
jint vec;
|
|
pp= 0;
|
|
{
|
|
jint i;
|
|
i= minLen;
|
|
for (; i <= maxLen; i++)
|
|
{
|
|
{
|
|
jint j;
|
|
j= 0;
|
|
for (; j < alphaSize; j++)
|
|
{
|
|
if (JCGO_ARRAY_BACCESS(length, j) == i)
|
|
{
|
|
JCGO_ARRAY_IACCESS(perm, pp)= j;
|
|
pp++;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
{
|
|
jint i;
|
|
i= 0;
|
|
for (; i < (jint)23; i++)
|
|
{
|
|
JCGO_ARRAY_IACCESS(base, i)= 0;
|
|
}
|
|
}
|
|
{
|
|
jint i;
|
|
i= 0;
|
|
for (; i < alphaSize; i++)
|
|
{
|
|
(JCGO_ARRAY_IACCESS(base, JCGO_ARRAY_BACCESS(length, i) + (jint)1))++;
|
|
}
|
|
}
|
|
{
|
|
jint i;
|
|
i= (jint)1;
|
|
for (; i < (jint)23; i++)
|
|
{
|
|
jObject jcgo_rcvrL1;
|
|
(jcgo_rcvrL1= (void*)&JCGO_ARRAY_IACCESS(base, i), *(jint*)jcgo_rcvrL1+=
|
|
JCGO_ARRAY_IACCESS(base, i - (jint)1));
|
|
}
|
|
}
|
|
{
|
|
jint i;
|
|
i= 0;
|
|
for (; i < (jint)23; i++)
|
|
{
|
|
JCGO_ARRAY_IACCESS(limit, i)= 0;
|
|
}
|
|
}
|
|
vec= 0;
|
|
{
|
|
jint i;
|
|
i= minLen;
|
|
for (; i <= maxLen; i++)
|
|
{
|
|
jint jcgo_rcvrI1;
|
|
vec+= (jcgo_rcvrI1= JCGO_ARRAY_IACCESS(base, i + (jint)1), jcgo_rcvrI1 -
|
|
JCGO_ARRAY_IACCESS(base, i));
|
|
JCGO_ARRAY_IACCESS(limit, i)= (vec - (jint)1);
|
|
vec= JCGO_SHL_F(vec, (jint)1);
|
|
}
|
|
}
|
|
{
|
|
jint i;
|
|
i= minLen + (jint)1;
|
|
for (; i <= maxLen; i++)
|
|
{
|
|
jint jcgo_rcvrI1;
|
|
jint jcgo_rcvrI2;
|
|
(jcgo_rcvrI1= (jcgo_rcvrI2= JCGO_SHL_F(JCGO_ARRAY_IACCESS(limit,
|
|
i - (jint)1) + (jint)1, (jint)1), jcgo_rcvrI2 - JCGO_ARRAY_IACCESS(base,
|
|
i)), JCGO_ARRAY_IACCESS(base, i)= jcgo_rcvrI1);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
JCGO_NOSEP_INLINE void CFASTCALL
|
|
package_BZLib__nextHeader__L0h0mx( package_BZState state )
|
|
{
|
|
{
|
|
jintArr cTt;
|
|
jbyteArr output;
|
|
jint cStateOutLen;
|
|
jint cNblockUsed;
|
|
jint cK0;
|
|
jint cTpos;
|
|
jint csNextOut;
|
|
jint csAvailOut;
|
|
jint asdasdasd;
|
|
jint sSaveNblockPP;
|
|
jint i2;
|
|
jbyte cStateOutCh;
|
|
cStateOutCh= JCGO_FIELD_ACCESS(package_BZState, state, stateOutCh);
|
|
cStateOutLen= JCGO_FIELD_NZACCESS(state, stateOutLen);
|
|
cNblockUsed= JCGO_FIELD_NZACCESS(state, nblockUsed);
|
|
cK0= JCGO_FIELD_NZACCESS(state, k0);
|
|
cTt= JCGO_FIELD_NZACCESS(state, tt);
|
|
cTpos= JCGO_FIELD_NZACCESS(state, tpos);
|
|
output= JCGO_FIELD_NZACCESS(state, output);
|
|
csNextOut= JCGO_FIELD_NZACCESS(state, availOut);
|
|
csAvailOut= JCGO_FIELD_NZACCESS(state, decompressedSize);
|
|
asdasdasd= csAvailOut;
|
|
sSaveNblockPP= JCGO_FIELD_NZACCESS(state, saveNblock) + (jint)1;
|
|
do
|
|
{
|
|
jbyte k2;
|
|
jboolean flag;
|
|
if (cStateOutLen > 0)
|
|
{
|
|
do
|
|
{
|
|
if (csAvailOut == 0)
|
|
{
|
|
goto jcgo_break1;
|
|
}
|
|
if (cStateOutLen == (jint)1)
|
|
{
|
|
break;
|
|
}
|
|
JCGO_ARRAY_BACCESS(output, csNextOut)= cStateOutCh;
|
|
cStateOutLen--;
|
|
csNextOut++;
|
|
csAvailOut--;
|
|
}
|
|
while (jtrue);
|
|
if (csAvailOut == 0)
|
|
{
|
|
cStateOutLen= (jint)1;
|
|
break;
|
|
}
|
|
JCGO_ARRAY_BACCESS(output, csNextOut)= cStateOutCh;
|
|
csNextOut++;
|
|
csAvailOut--;
|
|
}
|
|
flag= jtrue;
|
|
while (flag)
|
|
{
|
|
jbyte k1;
|
|
flag= (jboolean)jfalse;
|
|
if (cNblockUsed == sSaveNblockPP)
|
|
{
|
|
cStateOutLen= 0;
|
|
goto jcgo_break1;
|
|
}
|
|
cStateOutCh= (jbyte)cK0;
|
|
cTpos= JCGO_ARRAY_IACCESS(cTt, cTpos);
|
|
k1= (jbyte)(cTpos & (jint)255);
|
|
cTpos= JCGO_SHR_F(cTpos, (jint)8);
|
|
cNblockUsed++;
|
|
if (k1 != cK0)
|
|
{
|
|
cK0= (jint)k1;
|
|
if (csAvailOut == 0)
|
|
{
|
|
cStateOutLen= (jint)1;
|
|
}
|
|
else
|
|
{
|
|
JCGO_ARRAY_BACCESS(output, csNextOut)= cStateOutCh;
|
|
csNextOut++;
|
|
csAvailOut--;
|
|
flag= (jboolean)jtrue;
|
|
continue;
|
|
}
|
|
goto jcgo_break1;
|
|
}
|
|
if (cNblockUsed != sSaveNblockPP)
|
|
{
|
|
continue;
|
|
}
|
|
if (csAvailOut == 0)
|
|
{
|
|
cStateOutLen= (jint)1;
|
|
goto jcgo_break1;
|
|
}
|
|
JCGO_ARRAY_BACCESS(output, csNextOut)= cStateOutCh;
|
|
csNextOut++;
|
|
csAvailOut--;
|
|
flag= (jboolean)jtrue;
|
|
}
|
|
cStateOutLen= (jint)2;
|
|
cTpos= JCGO_ARRAY_IACCESS(cTt, cTpos);
|
|
k2= (jbyte)(cTpos & (jint)255);
|
|
cTpos= JCGO_SHR_F(cTpos, (jint)8);
|
|
if (++cNblockUsed != sSaveNblockPP)
|
|
{
|
|
if (k2 != cK0)
|
|
{
|
|
cK0= (jint)k2;
|
|
}
|
|
else
|
|
{
|
|
jbyte k3;
|
|
cStateOutLen= (jint)3;
|
|
cTpos= JCGO_ARRAY_NZIACCESS(cTt, cTpos);
|
|
k3= (jbyte)(cTpos & (jint)255);
|
|
cTpos= JCGO_SHR_F(cTpos, (jint)8);
|
|
if (++cNblockUsed != sSaveNblockPP)
|
|
{
|
|
if (k3 != cK0)
|
|
{
|
|
cK0= (jint)k3;
|
|
}
|
|
else
|
|
{
|
|
jbyte byte3;
|
|
cTpos= JCGO_ARRAY_NZIACCESS(cTt, cTpos);
|
|
byte3= (jbyte)(cTpos & (jint)255);
|
|
cTpos= JCGO_SHR_F(cTpos, (jint)8);
|
|
cNblockUsed++;
|
|
cStateOutLen= ((jint)((unsigned char)byte3)) + (jint)4;
|
|
cTpos= JCGO_ARRAY_NZIACCESS(cTt, cTpos);
|
|
cK0= (jint)((jbyte)(cTpos & (jint)255));
|
|
cTpos= JCGO_SHR_F(cTpos, (jint)8);
|
|
cNblockUsed++;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
while (jtrue);
|
|
jcgo_break1:;
|
|
i2= JCGO_FIELD_NZACCESS(state, totalOutLo32);
|
|
JCGO_FIELD_NZACCESS(state, totalOutLo32)+= asdasdasd - csAvailOut;
|
|
if (JCGO_FIELD_NZACCESS(state, totalOutLo32) < i2)
|
|
{
|
|
JCGO_FIELD_NZACCESS(state, totalOutHi32)++;
|
|
}
|
|
JCGO_FIELD_NZACCESS(state, stateOutCh)= cStateOutCh;
|
|
JCGO_FIELD_NZACCESS(state, stateOutLen)= cStateOutLen;
|
|
JCGO_FIELD_NZACCESS(state, nblockUsed)= cNblockUsed;
|
|
JCGO_FIELD_NZACCESS(state, k0)= cK0;
|
|
JCGO_FIELD_NZACCESS(state, tt)= cTt;
|
|
JCGO_FIELD_NZACCESS(state, tpos)= cTpos;
|
|
JCGO_FIELD_NZACCESS(state, output)= output;
|
|
JCGO_FIELD_NZACCESS(state, availOut)= csNextOut;
|
|
JCGO_FIELD_NZACCESS(state, decompressedSize)= csAvailOut;
|
|
}
|
|
}
|
|
|
|
JCGO_NOSEP_INLINE void CFASTCALL
|
|
package_BZLib__decompress__L0h0mx( package_BZState state )
|
|
{
|
|
{
|
|
jintArr gLimit;
|
|
jintArr gBase;
|
|
jintArr gPerm;
|
|
jint gMinLen;
|
|
jboolean goingandshit;
|
|
gMinLen= 0;
|
|
gLimit= (jintArr)jnull;
|
|
gBase= (jintArr)jnull;
|
|
gPerm= (jintArr)jnull;
|
|
JCGO_FIELD_ACCESS(package_BZState, state, blocksize100k)= (jint)1;
|
|
if (JCGO_FIELD_NZACCESS(state, tt) == jnull)
|
|
{
|
|
JCGO_FIELD_NZACCESS(state, tt)= (jintArr)jcgo_newArray(JCGO_CORECLASS_FOR(OBJT_jint),
|
|
0, JCGO_FIELD_NZACCESS(state, blocksize100k) * (jint)100000L);
|
|
}
|
|
goingandshit= jtrue;
|
|
while (goingandshit)
|
|
{
|
|
jbyteArr pos;
|
|
jint alphaSize;
|
|
jint nGroups;
|
|
jint nSelectors;
|
|
jint eob;
|
|
jint nblockMax;
|
|
jint groupNo;
|
|
jint groupPos;
|
|
jint kk;
|
|
jint nblock;
|
|
jint zn;
|
|
jint zvec;
|
|
jbyte uc;
|
|
jbyte zj;
|
|
jcgo_arrtype2_BZLib jcgo_stackobj1;
|
|
uc= (package_BZLib__getUchar__L0h0mx(
|
|
state));
|
|
if (uc == (jint)23)
|
|
{
|
|
return;
|
|
}
|
|
uc= (package_BZLib__getUchar__L0h0mx(
|
|
state));
|
|
uc= (package_BZLib__getUchar__L0h0mx(
|
|
state));
|
|
uc= (package_BZLib__getUchar__L0h0mx(
|
|
state));
|
|
uc= (package_BZLib__getUchar__L0h0mx(
|
|
state));
|
|
uc= (package_BZLib__getUchar__L0h0mx(
|
|
state));
|
|
JCGO_FIELD_NZACCESS(state, blockNo)++;
|
|
uc= (package_BZLib__getUchar__L0h0mx(
|
|
state));
|
|
uc= (package_BZLib__getUchar__L0h0mx(
|
|
state));
|
|
uc= (package_BZLib__getUchar__L0h0mx(
|
|
state));
|
|
uc= (package_BZLib__getUchar__L0h0mx(
|
|
state));
|
|
uc= (package_BZLib__getBit__L0h0mx(
|
|
state));
|
|
JCGO_FIELD_NZACCESS(state, blockRandomised)= (jboolean)(uc != 0);
|
|
if (JCGO_FIELD_NZACCESS(state, blockRandomised))
|
|
{
|
|
(java_io_PrintStream__println__Ls(
|
|
JCGO_CLINIT_VARACC(java_lang_System__class, java_lang_System__out),
|
|
JCGO_STRREF_OF(jcgo_string3_BZLib)));
|
|
}
|
|
JCGO_FIELD_NZACCESS(state, origPtr)= 0;
|
|
uc= (package_BZLib__getUchar__L0h0mx(
|
|
state));
|
|
JCGO_FIELD_NZACCESS(state, origPtr)= JCGO_SHL_F(JCGO_FIELD_NZACCESS(state,
|
|
origPtr), (jint)8) | ((jint)((unsigned char)uc));
|
|
uc= (package_BZLib__getUchar__L0h0mx(
|
|
state));
|
|
JCGO_FIELD_NZACCESS(state, origPtr)= JCGO_SHL_F(JCGO_FIELD_NZACCESS(state,
|
|
origPtr), (jint)8) | ((jint)((unsigned char)uc));
|
|
uc= (package_BZLib__getUchar__L0h0mx(
|
|
state));
|
|
JCGO_FIELD_NZACCESS(state, origPtr)= JCGO_SHL_F(JCGO_FIELD_NZACCESS(state,
|
|
origPtr), (jint)8) | ((jint)((unsigned char)uc));
|
|
{
|
|
jint i;
|
|
i= 0;
|
|
for (; i < (jint)16; i++)
|
|
{
|
|
uc= (package_BZLib__getBit__L0h0mx(
|
|
state));
|
|
JCGO_ARRAY_ZACCESS(JCGO_FIELD_NZACCESS(state, inUse_16), i)= (jboolean)(uc ==
|
|
(jint)1);
|
|
}
|
|
}
|
|
{
|
|
jint i;
|
|
i= 0;
|
|
for (; i < (jint)256; i++)
|
|
{
|
|
JCGO_ARRAY_ZACCESS(JCGO_FIELD_NZACCESS(state, inUse), i)= (jboolean)jfalse;
|
|
}
|
|
}
|
|
{
|
|
jint i;
|
|
i= 0;
|
|
for (; i < (jint)16; i++)
|
|
{
|
|
if (JCGO_ARRAY_ZACCESS(JCGO_FIELD_NZACCESS(state, inUse_16), i))
|
|
{
|
|
{
|
|
jint j;
|
|
j= 0;
|
|
for (; j < (jint)16; j++)
|
|
{
|
|
uc= (package_BZLib__getBit__L0h0mx(
|
|
state));
|
|
if (uc == (jint)1)
|
|
{
|
|
JCGO_ARRAY_ZACCESS(JCGO_FIELD_NZACCESS(state, inUse), i *
|
|
(jint)16 + j)= (jboolean)jtrue;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
(package_BZLib__makeMaps__L0h0mx(
|
|
state));
|
|
alphaSize= JCGO_FIELD_NZACCESS(state, nInUse) + (jint)2;
|
|
nGroups= (package_BZLib__getBits__IL0h0mx(
|
|
state, (jint)3));
|
|
nSelectors= (package_BZLib__getBits__IL0h0mx(
|
|
state, (jint)15));
|
|
{
|
|
jint i;
|
|
i= 0;
|
|
for (; i < nSelectors; i++)
|
|
{
|
|
jint j;
|
|
j= 0;
|
|
do
|
|
{
|
|
uc= (package_BZLib__getBit__L0h0mx(
|
|
state));
|
|
if (uc == 0)
|
|
{
|
|
break;
|
|
}
|
|
j++;
|
|
}
|
|
while (jtrue);
|
|
JCGO_ARRAY_BACCESS(JCGO_FIELD_NZACCESS(state, selectorMtf), i)=
|
|
((jbyte)j);
|
|
}
|
|
}
|
|
pos= (jbyteArr)JCGO_STACKOBJ_PRIMARRNEW(jcgo_stackobj1, jbyteArr_methods,
|
|
6);
|
|
{
|
|
jbyte v;
|
|
v= (jbyte)0;
|
|
for (; v < nGroups; v++)
|
|
{
|
|
JCGO_ARRAY_NZBACCESS(pos, v)= v;
|
|
}
|
|
}
|
|
{
|
|
jint i;
|
|
i= 0;
|
|
for (; i < nSelectors; i++)
|
|
{
|
|
jbyte v;
|
|
jbyte tmp;
|
|
v= JCGO_ARRAY_BACCESS(JCGO_FIELD_NZACCESS(state, selectorMtf),
|
|
i);
|
|
tmp= JCGO_ARRAY_NZBACCESS(pos, v);
|
|
for (; v > 0; v--)
|
|
{
|
|
jbyte jcgo_rcvrB1;
|
|
(jcgo_rcvrB1= JCGO_ARRAY_NZBACCESS(pos, v - (jint)1), JCGO_ARRAY_NZBACCESS(pos,
|
|
v)= jcgo_rcvrB1);
|
|
}
|
|
JCGO_ARRAY_NZBACCESS(pos, 0)= tmp;
|
|
JCGO_ARRAY_BACCESS(JCGO_FIELD_NZACCESS(state, selector), i)= tmp;
|
|
}
|
|
}
|
|
{
|
|
jint t;
|
|
t= 0;
|
|
for (; t < nGroups; t++)
|
|
{
|
|
jint curr;
|
|
curr= (package_BZLib__getBits__IL0h0mx(
|
|
state, (jint)5));
|
|
{
|
|
jint i;
|
|
i= 0;
|
|
for (; i < alphaSize; i++)
|
|
{
|
|
do
|
|
{
|
|
uc= (package_BZLib__getBit__L0h0mx(
|
|
state));
|
|
if (uc == 0)
|
|
{
|
|
break;
|
|
}
|
|
uc= (package_BZLib__getBit__L0h0mx(
|
|
state));
|
|
if (uc == 0)
|
|
{
|
|
curr++;
|
|
}
|
|
else
|
|
{
|
|
curr--;
|
|
}
|
|
}
|
|
while (jtrue);
|
|
JCGO_ARRAY_BACCESS(((jbyteArr)JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(state,
|
|
len), t)), i)= ((jbyte)curr);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
{
|
|
jint t;
|
|
t= 0;
|
|
for (; t < nGroups; t++)
|
|
{
|
|
jint maxLen;
|
|
jbyte minLen;
|
|
jObject jcgo_rcvrL1;
|
|
jObject jcgo_rcvrL2;
|
|
jObject jcgo_rcvrL3;
|
|
minLen= (jbyte)(jint)32;
|
|
maxLen= 0;
|
|
{
|
|
jint l1;
|
|
l1= 0;
|
|
for (; l1 < alphaSize; l1++)
|
|
{
|
|
if (JCGO_ARRAY_BACCESS(((jbyteArr)JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(state,
|
|
len), t)), l1) > maxLen)
|
|
{
|
|
maxLen= (jint)(JCGO_ARRAY_BACCESS(((jbyteArr)JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(state,
|
|
len), t)), l1));
|
|
}
|
|
if (JCGO_ARRAY_BACCESS(((jbyteArr)JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(state,
|
|
len), t)), l1) < minLen)
|
|
{
|
|
minLen= JCGO_ARRAY_BACCESS(((jbyteArr)JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(state,
|
|
len), t)), l1);
|
|
}
|
|
}
|
|
}
|
|
(jcgo_rcvrL1= (jObject)((jintArr)JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(state,
|
|
limit), t)), jcgo_rcvrL2= (jObject)((jintArr)JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(state,
|
|
base), t)), jcgo_rcvrL3= (jObject)((jintArr)JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(state,
|
|
perm), t)), package_BZLib__createDecodeTables__IAIAIABAIII(
|
|
(jintArr)jcgo_rcvrL1, (jintArr)jcgo_rcvrL2, (jintArr)jcgo_rcvrL3,
|
|
((jbyteArr)JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(state, len),
|
|
t)), minLen, maxLen, alphaSize));
|
|
JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(state, minLens), t)= (jint)minLen;
|
|
}
|
|
}
|
|
eob= JCGO_FIELD_NZACCESS(state, nInUse) + (jint)1;
|
|
nblockMax= JCGO_FIELD_NZACCESS(state, blocksize100k) * (jint)100000L;
|
|
groupNo= (-(jint)1);
|
|
groupPos= 0;
|
|
{
|
|
jint i;
|
|
i= 0;
|
|
for (; i <= (jint)255; i++)
|
|
{
|
|
JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(state, unzftab), i)= 0;
|
|
}
|
|
}
|
|
kk= (jint)4095;
|
|
{
|
|
jint ii;
|
|
ii= (jint)15;
|
|
for (; ii >= 0; ii--)
|
|
{
|
|
{
|
|
jint jj;
|
|
jj= (jint)15;
|
|
for (; jj >= 0; jj--)
|
|
{
|
|
JCGO_ARRAY_BACCESS(JCGO_FIELD_NZACCESS(state, mtfa), kk)= ((jbyte)(ii *
|
|
(jint)16 + jj));
|
|
kk--;
|
|
}
|
|
}
|
|
JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(state, mtfbase), ii)= (kk +
|
|
(jint)1);
|
|
}
|
|
}
|
|
nblock= 0;
|
|
if (groupPos == 0)
|
|
{
|
|
jbyte gSel;
|
|
groupNo++;
|
|
groupPos= (jint)50;
|
|
gSel= JCGO_ARRAY_BACCESS(JCGO_FIELD_NZACCESS(state, selector),
|
|
groupNo);
|
|
gMinLen= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(state, minLens),
|
|
gSel);
|
|
gLimit= ((jintArr)JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(state,
|
|
limit), gSel));
|
|
gPerm= ((jintArr)JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(state,
|
|
perm), gSel));
|
|
gBase= ((jintArr)JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(state,
|
|
base), gSel));
|
|
}
|
|
groupPos--;
|
|
zn= gMinLen;
|
|
for (zvec= (package_BZLib__getBits__IL0h0mx(
|
|
state, zn)); zvec > JCGO_ARRAY_IACCESS(gLimit, zn); zvec= JCGO_SHL_F(zvec,
|
|
(jint)1) | zj)
|
|
{
|
|
zn++;
|
|
zj= (package_BZLib__getBit__L0h0mx(
|
|
state));
|
|
}
|
|
{
|
|
jint nextSym;
|
|
nextSym= JCGO_ARRAY_IACCESS(gPerm, zvec - JCGO_ARRAY_IACCESS(gBase,
|
|
zn));
|
|
for (; nextSym != eob;)
|
|
{
|
|
if (nextSym == 0 || nextSym == (jint)1)
|
|
{
|
|
jint es;
|
|
jint N;
|
|
es= (-(jint)1);
|
|
N= (jint)1;
|
|
do
|
|
{
|
|
jint zn_2;
|
|
jint zvec_2;
|
|
jbyte zj_2;
|
|
if (nextSym == 0)
|
|
{
|
|
es+= N;
|
|
}
|
|
else
|
|
{
|
|
if (nextSym == (jint)1)
|
|
{
|
|
es+= N * (jint)2;
|
|
}
|
|
}
|
|
N*= (jint)2;
|
|
if (groupPos == 0)
|
|
{
|
|
jbyte gSel;
|
|
groupNo++;
|
|
groupPos= (jint)50;
|
|
gSel= JCGO_ARRAY_BACCESS(JCGO_FIELD_NZACCESS(state, selector),
|
|
groupNo);
|
|
gMinLen= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(state, minLens),
|
|
gSel);
|
|
gLimit= ((jintArr)JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(state,
|
|
limit), gSel));
|
|
gPerm= ((jintArr)JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(state,
|
|
perm), gSel));
|
|
gBase= ((jintArr)JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(state,
|
|
base), gSel));
|
|
}
|
|
groupPos--;
|
|
zn_2= gMinLen;
|
|
for (zvec_2= (package_BZLib__getBits__IL0h0mx(
|
|
state, zn_2)); zvec_2 > JCGO_ARRAY_IACCESS(gLimit, zn_2); zvec_2=
|
|
JCGO_SHL_F(zvec_2, (jint)1) | zj_2)
|
|
{
|
|
zn_2++;
|
|
zj_2= (package_BZLib__getBit__L0h0mx(
|
|
state));
|
|
}
|
|
nextSym= JCGO_ARRAY_IACCESS(gPerm, zvec_2 - JCGO_ARRAY_IACCESS(gBase,
|
|
zn_2));
|
|
}
|
|
while (nextSym == 0 || nextSym == (jint)1);
|
|
es++;
|
|
uc= JCGO_ARRAY_BACCESS(JCGO_FIELD_NZACCESS(state, setToUnseq),
|
|
(jint)((unsigned char)(JCGO_ARRAY_BACCESS(JCGO_FIELD_NZACCESS(state,
|
|
mtfa), JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(state, mtfbase),
|
|
0)))));
|
|
JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(state, unzftab), (jint)((unsigned char)uc))+=
|
|
es;
|
|
for (; es > 0; es--)
|
|
{
|
|
JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(state, tt), nblock)=
|
|
((jint)((unsigned char)uc));
|
|
nblock++;
|
|
}
|
|
}
|
|
else
|
|
{
|
|
jint nn;
|
|
jint zn_2;
|
|
jint zvec_2;
|
|
jbyte zj_2;
|
|
jint jcgo_rcvrI1;
|
|
nn= nextSym - (jint)1;
|
|
if (nn < (jint)16)
|
|
{
|
|
jint pp;
|
|
pp= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(state, mtfbase),
|
|
0);
|
|
uc= JCGO_ARRAY_BACCESS(JCGO_FIELD_NZACCESS(state, mtfa), pp +
|
|
nn);
|
|
for (; nn > (jint)3; nn-= (jint)4)
|
|
{
|
|
jint z;
|
|
jbyte jcgo_rcvrB1;
|
|
z= pp + nn;
|
|
(jcgo_rcvrB1= JCGO_ARRAY_BACCESS(JCGO_FIELD_NZACCESS(state,
|
|
mtfa), z - (jint)1), JCGO_ARRAY_BACCESS(JCGO_FIELD_NZACCESS(state,
|
|
mtfa), z)= jcgo_rcvrB1);
|
|
(jcgo_rcvrB1= JCGO_ARRAY_BACCESS(JCGO_FIELD_NZACCESS(state,
|
|
mtfa), z - (jint)2), JCGO_ARRAY_BACCESS(JCGO_FIELD_NZACCESS(state,
|
|
mtfa), z - (jint)1)= jcgo_rcvrB1);
|
|
(jcgo_rcvrB1= JCGO_ARRAY_BACCESS(JCGO_FIELD_NZACCESS(state,
|
|
mtfa), z - (jint)3), JCGO_ARRAY_BACCESS(JCGO_FIELD_NZACCESS(state,
|
|
mtfa), z - (jint)2)= jcgo_rcvrB1);
|
|
(jcgo_rcvrB1= JCGO_ARRAY_BACCESS(JCGO_FIELD_NZACCESS(state,
|
|
mtfa), z - (jint)4), JCGO_ARRAY_BACCESS(JCGO_FIELD_NZACCESS(state,
|
|
mtfa), z - (jint)3)= jcgo_rcvrB1);
|
|
}
|
|
for (; nn > 0; nn--)
|
|
{
|
|
jbyte jcgo_rcvrB1;
|
|
(jcgo_rcvrB1= JCGO_ARRAY_BACCESS(JCGO_FIELD_NZACCESS(state,
|
|
mtfa), (pp + nn) - (jint)1), JCGO_ARRAY_BACCESS(JCGO_FIELD_NZACCESS(state,
|
|
mtfa), pp + nn)= jcgo_rcvrB1);
|
|
}
|
|
JCGO_ARRAY_BACCESS(JCGO_FIELD_NZACCESS(state, mtfa), pp)= uc;
|
|
}
|
|
else
|
|
{
|
|
jint lno;
|
|
jint off;
|
|
jint pp;
|
|
lno= nn / (jint)16;
|
|
off= nn % (jint)16;
|
|
pp= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(state, mtfbase),
|
|
lno) + off;
|
|
uc= JCGO_ARRAY_BACCESS(JCGO_FIELD_NZACCESS(state, mtfa), pp);
|
|
for (; pp > JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(state, mtfbase),
|
|
lno); pp--)
|
|
{
|
|
jbyte jcgo_rcvrB1;
|
|
(jcgo_rcvrB1= JCGO_ARRAY_BACCESS(JCGO_FIELD_NZACCESS(state,
|
|
mtfa), pp - (jint)1), JCGO_ARRAY_BACCESS(JCGO_FIELD_NZACCESS(state,
|
|
mtfa), pp)= jcgo_rcvrB1);
|
|
}
|
|
(JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(state, mtfbase), lno))++;
|
|
for (; lno > 0; lno--)
|
|
{
|
|
jbyte jcgo_rcvrB1;
|
|
(JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(state, mtfbase), lno))--;
|
|
(jcgo_rcvrB1= JCGO_ARRAY_BACCESS(JCGO_FIELD_NZACCESS(state,
|
|
mtfa), (JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(state, mtfbase),
|
|
lno - (jint)1) + (jint)16) - (jint)1), JCGO_ARRAY_BACCESS(JCGO_FIELD_NZACCESS(state,
|
|
mtfa), JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(state, mtfbase),
|
|
lno))= jcgo_rcvrB1);
|
|
}
|
|
(JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(state, mtfbase), 0))--;
|
|
JCGO_ARRAY_BACCESS(JCGO_FIELD_NZACCESS(state, mtfa), JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(state,
|
|
mtfbase), 0))= uc;
|
|
if (JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(state, mtfbase),
|
|
0) == 0)
|
|
{
|
|
kk= (jint)4095;
|
|
{
|
|
jint ii;
|
|
ii= (jint)15;
|
|
for (; ii >= 0; ii--)
|
|
{
|
|
{
|
|
jint jj;
|
|
jj= (jint)15;
|
|
for (; jj >= 0; jj--)
|
|
{
|
|
jbyte jcgo_rcvrB1;
|
|
(jcgo_rcvrB1= JCGO_ARRAY_BACCESS(JCGO_FIELD_NZACCESS(state,
|
|
mtfa), JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(state, mtfbase),
|
|
ii) + jj), JCGO_ARRAY_BACCESS(JCGO_FIELD_NZACCESS(state,
|
|
mtfa), kk)= jcgo_rcvrB1);
|
|
kk--;
|
|
}
|
|
}
|
|
JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(state, mtfbase), ii)=
|
|
(kk + (jint)1);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
(JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(state, unzftab), (jint)((unsigned char)(JCGO_ARRAY_BACCESS(JCGO_FIELD_NZACCESS(state,
|
|
setToUnseq), (jint)((unsigned char)uc))))))++;
|
|
(jcgo_rcvrI1= (jint)((unsigned char)(JCGO_ARRAY_BACCESS(JCGO_FIELD_NZACCESS(state,
|
|
setToUnseq), (jint)((unsigned char)uc)))), JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(state,
|
|
tt), nblock)= jcgo_rcvrI1);
|
|
nblock++;
|
|
if (groupPos == 0)
|
|
{
|
|
jbyte gSel;
|
|
groupNo++;
|
|
groupPos= (jint)50;
|
|
gSel= JCGO_ARRAY_BACCESS(JCGO_FIELD_NZACCESS(state, selector),
|
|
groupNo);
|
|
gMinLen= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(state, minLens),
|
|
gSel);
|
|
gLimit= ((jintArr)JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(state,
|
|
limit), gSel));
|
|
gPerm= ((jintArr)JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(state,
|
|
perm), gSel));
|
|
gBase= ((jintArr)JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(state,
|
|
base), gSel));
|
|
}
|
|
groupPos--;
|
|
zn_2= gMinLen;
|
|
for (zvec_2= (package_BZLib__getBits__IL0h0mx(
|
|
state, zn_2)); zvec_2 > JCGO_ARRAY_IACCESS(gLimit, zn_2); zvec_2=
|
|
JCGO_SHL_F(zvec_2, (jint)1) | zj_2)
|
|
{
|
|
zn_2++;
|
|
zj_2= (package_BZLib__getBit__L0h0mx(
|
|
state));
|
|
}
|
|
nextSym= JCGO_ARRAY_IACCESS(gPerm, zvec_2 - JCGO_ARRAY_IACCESS(gBase,
|
|
zn_2));
|
|
}
|
|
}
|
|
}
|
|
JCGO_FIELD_NZACCESS(state, stateOutLen)= 0;
|
|
JCGO_FIELD_NZACCESS(state, stateOutCh)= (jbyte)0;
|
|
JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(state, cftab), 0)= 0;
|
|
{
|
|
jint i;
|
|
i= (jint)1;
|
|
for (; i <= (jint)256; i++)
|
|
{
|
|
jint jcgo_rcvrI1;
|
|
(jcgo_rcvrI1= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(state, unzftab),
|
|
i - (jint)1), JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(state, cftab),
|
|
i)= jcgo_rcvrI1);
|
|
}
|
|
}
|
|
{
|
|
jint i;
|
|
i= (jint)1;
|
|
for (; i <= (jint)256; i++)
|
|
{
|
|
jObject jcgo_rcvrL1;
|
|
(jcgo_rcvrL1= (void*)&JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(state,
|
|
cftab), i), *(jint*)jcgo_rcvrL1+= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(state,
|
|
cftab), i - (jint)1));
|
|
}
|
|
}
|
|
{
|
|
jint i;
|
|
i= 0;
|
|
for (; i < nblock; i++)
|
|
{
|
|
uc= (jbyte)(JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(state, tt),
|
|
i) & (jint)255);
|
|
JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(state, tt), JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(state,
|
|
cftab), (jint)((unsigned char)uc)))|= JCGO_SHL_F(i, (jint)8);
|
|
(JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(state, cftab), (jint)((unsigned char)uc)))++;
|
|
}
|
|
}
|
|
JCGO_FIELD_NZACCESS(state, tpos)= JCGO_SHR_F(JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(state,
|
|
tt), JCGO_FIELD_NZACCESS(state, origPtr)), (jint)8);
|
|
JCGO_FIELD_NZACCESS(state, nblockUsed)= 0;
|
|
JCGO_FIELD_NZACCESS(state, tpos)= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(state,
|
|
tt), JCGO_FIELD_NZACCESS(state, tpos));
|
|
JCGO_FIELD_NZACCESS(state, k0)= (jint)((jbyte)(JCGO_FIELD_NZACCESS(state,
|
|
tpos) & (jint)255));
|
|
JCGO_FIELD_NZACCESS(state, tpos)= JCGO_SHR_F(JCGO_FIELD_NZACCESS(state,
|
|
tpos), (jint)8);
|
|
JCGO_FIELD_NZACCESS(state, nblockUsed)++;
|
|
JCGO_FIELD_NZACCESS(state, saveNblock)= nblock;
|
|
(package_BZLib__nextHeader__L0h0mx(
|
|
state));
|
|
goingandshit= (jboolean)(JCGO_FIELD_NZACCESS(state, nblockUsed) ==
|
|
JCGO_FIELD_NZACCESS(state, saveNblock) + (jint)1 && JCGO_FIELD_NZACCESS(state,
|
|
stateOutLen) == 0);
|
|
}
|
|
}
|
|
}
|
|
|
|
JCGO_NOSEP_STATIC jint CFASTCALL
|
|
package_BZLib__decompress__BAIBAII( jbyteArr out, jbyteArr in, jint
|
|
outSize, jint inSize, jint offset )
|
|
{
|
|
{
|
|
package_BZState block;
|
|
struct package_BZState_s jcgo_stackobj1;
|
|
block= package_BZState__this__(
|
|
JCGO_STACKOBJ_NEW(jcgo_stackobj1, package_BZState_methods));
|
|
JCGO_FIELD_NZACCESS(block, input)= in;
|
|
JCGO_FIELD_NZACCESS(block, nextIn)= offset;
|
|
JCGO_FIELD_NZACCESS(block, output)= out;
|
|
JCGO_FIELD_NZACCESS(block, availOut)= 0;
|
|
JCGO_FIELD_NZACCESS(block, availIn)= inSize;
|
|
JCGO_FIELD_NZACCESS(block, decompressedSize)= outSize;
|
|
JCGO_FIELD_NZACCESS(block, bsLive)= 0;
|
|
JCGO_FIELD_NZACCESS(block, bsBuff)= 0;
|
|
JCGO_FIELD_NZACCESS(block, totalInLo32)= 0;
|
|
JCGO_FIELD_NZACCESS(block, totalInHi32)= 0;
|
|
JCGO_FIELD_NZACCESS(block, totalOutLo32)= 0;
|
|
JCGO_FIELD_NZACCESS(block, totalOutHi32)= 0;
|
|
JCGO_FIELD_NZACCESS(block, blockNo)= 0;
|
|
(package_BZLib__decompress__L0h0mx(
|
|
block));
|
|
outSize-= JCGO_FIELD_NZACCESS(block, decompressedSize);
|
|
return outSize;
|
|
}
|
|
}
|
|
|
|
JCGO_NOSEP_STATIC jint CFASTCALL
|
|
package_BZLib__getBits__IL0h0mx( package_BZState state, jint i )
|
|
{
|
|
{
|
|
jint vvv;
|
|
do
|
|
{
|
|
if (JCGO_FIELD_ACCESS(package_BZState, state, bsLive) >= i)
|
|
{
|
|
jint v;
|
|
v= JCGO_SHR_F(JCGO_FIELD_NZACCESS(state, bsBuff), JCGO_FIELD_NZACCESS(state,
|
|
bsLive) - i) & (JCGO_SHL_F((jint)1, i) - (jint)1);
|
|
JCGO_FIELD_NZACCESS(state, bsLive)-= i;
|
|
vvv= v;
|
|
break;
|
|
}
|
|
JCGO_FIELD_NZACCESS(state, bsBuff)= JCGO_SHL_F(JCGO_FIELD_NZACCESS(state,
|
|
bsBuff), (jint)8) | ((jint)((unsigned char)(JCGO_ARRAY_BACCESS(JCGO_FIELD_NZACCESS(state,
|
|
input), JCGO_FIELD_NZACCESS(state, nextIn)))));
|
|
JCGO_FIELD_NZACCESS(state, bsLive)+= (jint)8;
|
|
JCGO_FIELD_NZACCESS(state, nextIn)++;
|
|
JCGO_FIELD_NZACCESS(state, availIn)--;
|
|
JCGO_FIELD_NZACCESS(state, totalInLo32)++;
|
|
if (JCGO_FIELD_NZACCESS(state, totalInLo32) == 0)
|
|
{
|
|
JCGO_FIELD_NZACCESS(state, totalInHi32)++;
|
|
}
|
|
}
|
|
while (jtrue);
|
|
return vvv;
|
|
}
|
|
}
|
|
|
|
JCGO_NOSEP_STATIC package_BZLib CFASTCALL
|
|
package_BZLib__this__( package_BZLib This )
|
|
{
|
|
{
|
|
;
|
|
}
|
|
return This;
|
|
}
|
|
|
|
JCGO_NOSEP_DATA CONST struct package_BZLib_methods_s package_BZLib_methods=
|
|
{
|
|
JCGO_CLASSREF_OF(package_BZLib__class),
|
|
JCGO_GCJDESCR_ZEROINIT
|
|
OBJT_package_BZLib,
|
|
-(JCGO_OBJSIZE_T)sizeof(struct package_BZLib_s),
|
|
NULL,
|
|
JCGO_CLINIT_INIT(0)
|
|
package_BZLib__this__,
|
|
java_lang_Object__equals__Lo,
|
|
java_lang_Object__hashCode__,
|
|
java_lang_Object__toString__,
|
|
java_lang_Object__finalize__
|
|
};
|
|
|
|
JCGO_NOSEP_DATA JCGO_NOTHR_CONST struct package_BZLib_class_s package_BZLib__class
|
|
JCGO_THRD_ATTRNONGC=
|
|
{
|
|
{
|
|
&java_lang_Class_methods,
|
|
JCGO_MON_INIT
|
|
JCGO_OBJREF_OF(*(java_lang_Object)&package_BZLib_methods),
|
|
JCGO_STRREF_OF(jcgo_string1_BZLib),
|
|
JCGO_CLASSREF_OF(java_lang_Object__class),
|
|
((jObjectArr)JCGO_OBJREF_OF(jcgo_array3_Object)),
|
|
0x1
|
|
}
|
|
};
|
|
|
|
JCGO_NOSEP_DATA CONST jcgo_arrtype30_Object jcgo_array4_BZLib=
|
|
{
|
|
(jvtable)&jbyteArr_methods,
|
|
JCGO_MON_INIT
|
|
5,
|
|
{
|
|
(jbyte)(jchar)66/*'B'*/, (jbyte)(jchar)90/*'Z'*/, (jbyte)(jchar)76/*'L'*/,
|
|
(jbyte)(jchar)105/*'i'*/, (jbyte)(jchar)98/*'b'*/
|
|
}
|
|
};
|
|
|
|
JCGO_NOSEP_DATA JCGO_NOTHR_CONST struct java_lang_String_s jcgo_string1_BZLib
|
|
JCGO_THRD_ATTRNONGC=
|
|
{
|
|
&java_lang_String_methods,
|
|
JCGO_MON_INIT
|
|
(java_lang_Object)JCGO_OBJREF_OF(jcgo_array4_BZLib),
|
|
0, 5, (jint)0x3cc230dL
|
|
};
|
|
|
|
JCGO_NOSEP_DATA JCGO_NOTHR_CONST struct java_lang_String_s jcgo_string3_BZLib
|
|
JCGO_THRD_ATTRNONGC=
|
|
{
|
|
&java_lang_String_methods,
|
|
JCGO_MON_INIT
|
|
(java_lang_Object)JCGO_OBJREF_OF(jcgo_array463_VMSstmPr),
|
|
0, 24, (jint)0x90172b72L
|
|
};
|
|
|
|
#ifdef CHKALL_BZLib
|
|
#include "jcgochke.h"
|
|
#endif
|
|
|
|
#endif
|