home *** CD-ROM | disk | FTP | other *** search
/ Power-Programmierung / CD1.mdf / magazine / drdobbs / ddjcompr / urban / init.c < prev    next >
Text File  |  1991-04-30  |  775b  |  50 lines

  1. init() {
  2.   unsigned int i,z,o,z1,s1;
  3.   unsigned int c,d;
  4.   cin=0;
  5.   cut=0x01;
  6.   for(i=16;i>0;--i) shift_bits();
  7.   at=to=0;
  8.   for(i=0;i<HKSIZE;++i) {
  9.     h[i].v=0;
  10.     h[i].z=0;
  11.     h[i].o=0;
  12.   }
  13.   for(z=0;z<MAXCOUNT;++z)
  14.     for(o=0;o<MAXCOUNT;++o) {
  15.       z1=z;s1=z+o;
  16.       if(z==0) {
  17.     z1=1;
  18.     s1=2;
  19.     for(i=o;i>0;--i) {
  20.       s1=2*s1-1;
  21.       if(s1>1000) break;
  22.     }
  23.       } else if (o==0) {
  24.     z1=2;
  25.     for(i=z;i>0;--i) {
  26.       z1=2*z1-1;
  27.       if(z1>1000) break;
  28.     }
  29.     s1=z1--;
  30.       }
  31.       for(d=0;d<TSIZE;++d) {
  32.     zt[d][z][o].z=z1;
  33.     zt[d][z][o].s=s1;
  34.       }
  35.     }
  36.   for (c=0;c<256;++c) {
  37.     hk=c;
  38.     hv=c;
  39.     hash();
  40.     for(i=1;i<=TSIZE;++i) {
  41.       hd[i%TSIZE][c].k=hk;
  42.       hd[i%TSIZE][c].v=hv;
  43.       hk=(AK*hk)%HKSIZE;
  44.       hv=(AV*hv)%HVSIZE;
  45.     }
  46.   }
  47.   hk=hv=0;
  48.   hks=HKSIZE;
  49. }
  50.