/* * * Device information block definitions */ #ifndef _DIBDEF_H #define _DIBDEF_H #define DIB$K_LENGTH 116 /*length of total buffer */ #define DIB$C_LENGTH 116 struct dibdef { unsigned long dib$l_devchar; /*device characteristics */ unsigned char dib$b_devclass; /*device class */ unsigned char dib$b_devtype; /*device type */ unsigned short dib$w_devbufsiz; /*device buffer size */ union { unsigned long dib$l_devdepend; /*device dependent information */ struct { unsigned char dib$b_sectors; /*(disk only) sectors per track */ unsigned char dib$b_tracks; /* " tracks per cylinder */ unsigned short dib$w_cylinders; /* " number of cylinders */ } dib$r_devdepend_fields; } dib$r_devdepend_overlay; unsigned short dib$w_unit; /*device unit number */ unsigned short dib$w_devnamoff; /*offset to device name counted string */ unsigned long dib$l_pid; /*device owner process identification */ unsigned long dib$l_ownuic; /*device owner user identification code */ unsigned short dib$w_vprot; /*device protection mask */ unsigned short dib$w_errcnt; /*device error count */ unsigned long dib$l_opcnt; /*device operations count */ unsigned short dib$w_volnamoff; /*offset to volume label counted string */ unsigned short dib$w_recsiz; /*blocked record size */ char dib$t_devname[76]; /*space for devname and label (64+12) */ unsigned long dib$l_maxblock; /*disk volume size in blocks */ }; #endif /*_DIBDEF_H*/