1 /* ------------------------------------------------------------------------ */
3 /* larc.c -- extra *.lzs */
5 /* Modified Nobutaka Watazaki */
7 /* Ver. 1.14 Source All chagned 1995.01.14 N.Watazaki */
8 /* ------------------------------------------------------------------------ */
11 /* ------------------------------------------------------------------------ */
12 static int flag, flagcnt, matchpos;
13 /* ------------------------------------------------------------------------ */
15 decode_c_lzs( /*void*/ )
21 matchpos = getbits(11);
22 return getbits(4) + 0x100;
26 /* ------------------------------------------------------------------------ */
28 decode_p_lzs( /*void*/ )
30 return (loc - matchpos - MAGIC0) & 0x7ff;
33 /* ------------------------------------------------------------------------ */
35 decode_start_lzs( /*void*/ )
40 /* ------------------------------------------------------------------------ */
42 decode_c_lz5( /*void*/ )
52 if ((flag & 1) == 0) {
55 matchpos += (c & 0xf0) << 4;
63 /* ------------------------------------------------------------------------ */
65 decode_p_lz5( /*void*/ )
67 return (loc - matchpos - MAGIC5) & 0xfff;
70 /* ------------------------------------------------------------------------ */
72 decode_start_lz5( /*void*/ )
77 for (i = 0; i < 256; i++)
78 memset(&text[i * 13 + 18], i, 13);
79 for (i = 0; i < 256; i++)
80 text[256 * 13 + 18 + i] = i;
81 for (i = 0; i < 256; i++)
82 text[256 * 13 + 256 + 18 + i] = 255 - i;
83 memset(&text[256 * 13 + 512 + 18], 0, 128);
84 memset(&text[256 * 13 + 512 + 128 + 18], ' ', 128 - 18);