1 /* cpmio.h 1.4 83/05/13 */ 2 #define INTSIZE 32 /* number of bits per integer on this particular machine */ 3 extern int fid; 4 extern struct directory { 5 char status; /* status of this entry; equals 0xe5 if */ 6 /* free to use, otherwise contains the */ 7 /* user number (owner) (0 - 15) */ 8 char name[8]; /* File name, padded with blanks */ 9 char ext[3]; /* file name extension, padded with blanks */ 10 char extno; /* extent number */ 11 char notused[2]; /* unused */ 12 char blkcnt; /* record count, number of 128 byte records */ 13 /* in this extent */ 14 char pointers[16]; /* pointers to the individual blocks */ 15 } *dirbuf; 16 17 #define CPMSECSIZ 128 /* number of bytes per sector in CP/M terms */ 18 19 #define blockno(i) (use16bitptrs? \ 20 (0xff & (int)fptr->c_dirp->pointers[2*(i)]) + \ 21 ((0xff & (int)fptr->c_dirp->pointers[2*(i)+1]) << 8): \ 22 0xff & (int)fptr->c_dirp->pointers[i]) 23 24 extern int dflag, cflag, iflag, tflag; 25 extern int blksiz; 26 extern int tracks; 27 extern int maxdir; 28 29 extern int seclth; 30 extern int sectrk; 31 extern int skew; 32 extern int restrk; /* reserved tracks (for system) */ 33 34 extern int *bitmap, *skewtab; 35 extern int bm_size; 36 extern int use16bitptrs; 37