|
|
1.1 ! root 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;
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.