1 /* ------------------------------------------------------------------------ */
3 /* extract.c -- extrcat from archive */
5 /* Modified Nobutaka Watazaki */
7 /* Ver. 1.14 Source All chagned 1995.01.14 N.Watazaki */
8 /* ------------------------------------------------------------------------ */
12 decode_lzhuf(infp, outfp, original_size, packed_size, name, method)
20 interface.method = method;
21 interface.dicbit = 13; /* method + 8; -lh5- */
22 interface.infile = infp;
23 interface.outfile = outfp;
24 interface.original = original_size;
25 interface.packed = packed_size;
28 case LZHUFF0_METHOD_NUM:
29 case LARC4_METHOD_NUM:
30 start_indicator(name, original_size
31 ,verify_mode ? "Testing " : "Melting ", 2048);
32 copyfile(infp, (verify_mode ? NULL : outfp), original_size, 2);
34 case LARC_METHOD_NUM: /* -lzs- */
35 interface.dicbit = 11;
36 start_indicator(name, original_size
37 ,verify_mode ? "Testing " : "Melting "
38 ,1 << interface.dicbit);
41 case LZHUFF1_METHOD_NUM: /* -lh1- */
42 case LZHUFF4_METHOD_NUM: /* -lh4- */
43 case LARC5_METHOD_NUM: /* -lz5- */
44 interface.dicbit = 12;
45 start_indicator(name, original_size
46 ,verify_mode ? "Testing " : "Melting "
47 ,1 << interface.dicbit);
50 case LZHUFF6_METHOD_NUM: /* -lh6- */ /* Added N.Watazaki (^_^) */
52 case LZHUFF7_METHOD_NUM: /* -lh7- */
54 interface.dicbit = (method - LZHUFF6_METHOD_NUM) + 15;
57 start_indicator(name, original_size
58 ,verify_mode ? "Testing " : "Melting "
59 ,1 << interface.dicbit);
62 finish_indicator(name, verify_mode ? "Tested " : "Melted ");
67 /* Local Variables: */
71 /* vi: set tabstop=4: */