1 /* compact.h 4.6 84/08/25 */ 2 3 #if defined(vax) || defined(sun) 4 typedef int longint; 5 #else 6 typedef long longint; 7 #endif 8 9 #include <sys/param.h> 10 #include <sys/stat.h> 11 #include <sys/dir.h> 12 #include <stdio.h> 13 14 #define COMPACTED 017777 15 #define PACKED 017437 16 17 struct charac { 18 #if defined(vax) || defined(pdp11) 19 char lob, hib; 20 #else 21 char hib, lob; 22 #endif 23 }; 24 25 union cio { 26 struct charac chars; 27 short integ; 28 }; 29 30 #define LLEAF 010 31 #define RLEAF 04 32 #define SEEN 02 33 #define FBIT 01 34 35 #define EF 0400 36 #define NC 0401 37 38 #define NF (NC+1) 39 40 struct fpoint { 41 struct node *fp; 42 int flags; 43 } in[NF]; 44 45 struct index { 46 struct node *pt; 47 struct index *next; 48 } dir[2*NF], *head, *flist, *dirp, *dirq; 49 50 #define NEW flist; flist = flist->next 51 52 union treep { 53 struct node *p; 54 int ch; 55 }; 56 57 struct node { 58 struct fpoint fath; 59 struct son { 60 union treep sp; 61 struct index *top; 62 longint count; 63 } sons[2]; 64 #define LEFT 0 65 #define RIGHT 1 66 } dict[NF], *bottom; 67 68 FILE *cfp; 69 FILE *uncfp; 70