/* * * F11DEF - file header map/retrieval area, ODS level 1 [not in Starlet] */ #ifndef _FM1DEF_H #define _FM1DEF_H #define FM1$K_POINTERS 10 /* start of retrieval pointers */ #define FM1$C_POINTERS 10 #define FM1$K_LENGTH 10 /* length of map area */ #define FM1$C_LENGTH 10 #define FM1$S_FM1DEF 10 struct fm1def { unsigned char fm1$b_ex_segnum; /* extension segment number of this header */ unsigned char fm1$b_ex_rvn; /* extension relative volume number */ unsigned short fm1$w_ex_filnum; /* extension file number */ unsigned short fm1$w_ex_filseq; /* extension file sequence number */ unsigned char fm1$b_countsize; /* retrieval pointer count field size */ unsigned char fm1$b_lbnsize; /* retrieval pointer LBN field size */ unsigned char fm1$b_inuse; /* number of retrieval words in use */ unsigned char fm1$b_avail; /* number of retrieval words available */ }; /* retrieval pointer format */ #define FM1$S_FM1DEF1 4 struct fm1def1 { unsigned char fm1$b_highlbn; /* high order LBN */ unsigned char fm1$b_count; /* block count */ unsigned short fm1$w_lowlbn; /* low order LBN */ }; #define FM1$S_FM1DEF2 5 struct fm1def2 { /* origin has offset -12 */ unsigned char fm1$b_prevhlbn; unsigned char fm1$b_prevcount; unsigned short fm1$w_prevllbn; /* previous retrieval pointer */ unsigned : 8; }; #endif /*_FM1DEF_H*/