55 #define HASHING_SHIFT (BITS-8)
56 #define MAX_VALUE ((1<<BITS)-1)
57 #define MAX_CODE (MAX_VALUE-1)
60 #define TABLE_SIZE 99991
63 #define TABLE_SIZE 18041
66 #define TABLE_SIZE 9029
69 #define TABLE_SIZE 5021
125 (void)
SHOW_ERROR(
"Fatal error during code expansion.\n");
139 static n_c_int input_bit_count=0;
140 static n_byte4 input_bit_buffer=0L;
141 while (input_bit_count<=24)
146 input_bit_buffer |= ((
unsigned long) byte_character) << (24-input_bit_count);
149 return_value = input_bit_buffer>>(32-
BITS);
150 input_bit_buffer<<=
BITS;
151 input_bit_count-=
BITS;
157 static n_c_int output_bit_count=0;
158 static n_byte4 output_bit_buffer=0L;
159 output_bit_buffer|=(
n_byte4) code << (32-
BITS-output_bit_count);
160 output_bit_count +=
BITS;
161 while (output_bit_count>=8)
167 output_bit_buffer<<=8;
190 string_code = byte_character;
199 n_byte4 character = byte_character;
201 index = find_match(string_code, character);
215 string_code=character;
236 n_byte decode_stack[4000];
250 if (new_code >= next_code)
252 *decode_stack = (
n_byte)character;
253 string = decode_string(decode_stack+1,old_code);
260 string = decode_string(decode_stack, new_code);
263 while(
string >= decode_stack)