1 /*---------------------------------------------------------------------------
2 
3   VMSmunch_private.h
4 
5   Contents of three header files from Joe
6   Meadows' FILE program.  Used by VMSmunch
7 
8 	06-Apr-1994	Jamie Hanrahan	jeh@cmkrnl.com
9 			Moved "contents of three header files" from
10 			vmsmunch.h to vmsmunch_private.h .
11   ---------------------------------------------------------------------------*/
12 
13 /*---------------------------------------------------------------------------
14     fatdef.h
15   ---------------------------------------------------------------------------*/
16 
17 /* This header file was created by Joe Meadows, and is not copyrighted
18    in any way. No guarantee is made as to the accuracy of the contents
19    of this header file. This header file was last modified on Sep. 22th,
20    1987. (Modified to include this statement) */
21 #define FAT$K_LENGTH 32
22 #define FAT$C_LENGTH 32
23 #define FAT$S_FATDEF 32
24 
25 struct fatdef {
26   union  {
27     unsigned char fat$b_rtype;
28     struct  {
29       unsigned fat$v_rtype : 4;
30       unsigned fat$v_fileorg : 4;
31     } fat$r_rtype_bits;
32   } fat$r_rtype_overlay;
33 # define FAT$S_RTYPE 4
34 # define FAT$V_RTYPE 0
35 #   define FAT$C_UNDEFINED 0
36 #   define FAT$C_FIXED 1
37 #   define FAT$C_VARIABLE 2
38 #   define FAT$C_VFC 3
39 #   define FAT$C_STREAM 4
40 #   define FAT$C_STREAMLF 5
41 #   define FAT$C_STREAMCR 6
42 # define FAT$S_FILEORG 4
43 # define FAT$V_FILEORG 4
44 #   define FAT$C_SEQUENTIAL 0
45 #   define FAT$C_RELATIVE 1
46 #   define FAT$C_INDEXED 2
47 #   define FAT$C_DIRECT 3
48   union  {
49     unsigned char fat$b_rattrib;
50     struct  {
51       unsigned fat$v_fortrancc : 1;
52       unsigned fat$v_impliedcc : 1;
53       unsigned fat$v_printcc : 1;
54       unsigned fat$v_nospan : 1;
55     } fat$r_rattrib_bits;
56   } fat$r_rattrib_overlay;
57 #   define FAT$V_FORTRANCC 0
58 #   define FAT$M_FORTRANCC 1
59 #   define FAT$V_IMPLIEDCC 1
60 #   define FAT$M_IMPLIEDCC 2
61 #   define FAT$V_PRINTCC 2
62 #   define FAT$M_PRINTCC 4
63 #   define FAT$V_NOSPAN 3
64 #   define FAT$M_NOSPAN 8
65   unsigned short int fat$w_rsize;
66   union
67   {
68     unsigned long int fat$l_hiblk;
69     struct
70     {
71       unsigned short int fat$w_hiblkh;
72       unsigned short int fat$w_hiblkl;
73     } fat$r_hiblk_fields;
74   } fat$r_hiblk_overlay;
75   union
76   {
77     unsigned long int fat$l_efblk;
78     struct
79     {
80       unsigned short int fat$w_efblkh;
81       unsigned short int fat$w_efblkl;
82     } fat$r_efblk_fields;
83   } fat$r_efblk_overlay;
84   unsigned short int fat$w_ffbyte;
85   unsigned char fat$b_bktsize;
86   unsigned char fat$b_vfcsize;
87   unsigned short int fat$w_maxrec;
88   unsigned short int fat$w_defext;
89   unsigned short int fat$w_gbc;
90   char fat$fill[8];
91   unsigned short int fat$w_versions;
92 };
93 
94 /*---------------------------------------------------------------------------
95     fchdef.h
96   ---------------------------------------------------------------------------*/
97 
98 /* This header file was created by Joe Meadows, and is not copyrighted
99    in any way. No guarantee is made as to the accuracy of the contents
100    of this header file. This header file was last modified on Sep. 22th,
101    1987. (Modified to include this statement) */
102 
103 #define FCH$V_BADACL 0x00B
104 #define FCH$M_BADACL (1 << FCH$V_ACL)
105 #define FCH$V_BADBLOCK 0x00E
106 #define FCH$M_BADBLOCK (1 << FCH$V_BADBLOCK)
107 #define FCH$V_CONTIG 0x007
108 #define FCH$M_CONTIG (1 << FCH$V_CONTIG)
109 #define FCH$V_CONTIGB 0x005
110 #define FCH$M_CONTIGB (1 << FCH$V_CONTIGB)
111 #define FCH$V_DIRECTORY 0x00D
112 #define FCH$M_DIRECTORY (1 << FCH$V_DIRECTORY)
113 #define FCH$V_ERASE 0x011
114 #define FCH$M_ERASE (1 << FCH$V_ERASE)
115 #define FCH$V_LOCKED 0x006
116 #define FCH$M_LOCKED (1 << FCH$V_LOCKED)
117 #define FCH$V_MARKDEL 0x00F
118 #define FCH$M_MARKDEL (1 << FCH$V_MARKDEL)
119 #define FCH$V_NOBACKUP 0x001
120 #define FCH$M_NOBACKUP (1 << FCH$V_NOBACKUP)
121 #define FCH$V_NOCHARGE 0x010
122 #define FCH$M_NOCHARGE (1 << FCH$V_NOCHARGE)
123 #define FCH$V_READCHECK 0x003
124 #define FCH$M_READCHECK (1 << FCH$V_READCHECK)
125 #define FCH$V_SPOOL 0x00C
126 #define FCH$M_SPOOL (1 << FCH$V_SPOOL)
127 #define FCH$V_WRITCHECK 0x004
128 #define FCH$M_WRITCHECK (1 << FCH$V_WRITCHECK)
129 #define FCH$V_WRITEBACK 0x002
130 #define FCH$M_WRITEBACK (1 << FCH$V_WRITEBACK)
131 
132 struct fchdef  {
133   unsigned : 1;
134   unsigned fch$v_nobackup : 1 ;
135   unsigned fch$v_writeback : 1;
136   unsigned fch$v_readcheck : 1;
137   unsigned fch$v_writcheck : 1;
138   unsigned fch$v_contigb : 1;
139   unsigned fch$v_locked : 1;
140   unsigned fch$v_contig : 1;
141   unsigned : 3;
142   unsigned fch$v_badacl : 1;
143   unsigned fch$v_spool : 1;
144   unsigned fch$v_directory : 1;
145   unsigned fch$v_badblock : 1;
146   unsigned fch$v_markdel : 1;
147   unsigned fch$v_nocharge : 1;
148   unsigned fch$v_erase : 1;
149 };
150 
151 /*---------------------------------------------------------------------------
152     fjndef.h
153   ---------------------------------------------------------------------------*/
154 
155 /* This header file was created by Joe Meadows, and is not copyrighted
156    in any way. No guarantee is made as to the accuracy of the contents
157    of this header file. This header file was last modified on Sep. 22th,
158    1987. (Modified to include this statement) */
159 
160 #define FJN$M_ONLY_RU 1
161 #define FJN$M_RUJNL 2
162 #define FJN$M_BIJNL 4
163 #define FJN$M_AIJNL 8
164 #define FJN$M_ATJNL 16
165 #define FJN$M_NEVER_RU 32
166 #define FJN$M_JOURNAL_FILE 64
167 #define FJN$S_FJNDEF 1
168 struct fjndef  {
169   unsigned fjn$v_only_ru : 1;
170   unsigned fjn$v_rujnl : 1;
171   unsigned fjn$v_bijnl : 1;
172   unsigned fjn$v_aijnl : 1;
173   unsigned fjn$v_atjnl : 1;
174   unsigned fjn$v_never_ru : 1;
175   unsigned fjn$v_journal_file:1;
176 } ;
177