1 /* dkbad.h 4.3 81/05/10 */ 2 3 /* 4 * Definitions needed to perform bad sector 5 * revectoring ala DEC STD 144. 6 * 7 * The bad sector information is located in the 8 * first 5 even numbered sectors of the last 9 * track of the disk pack. There are five 10 * identical copies of the information, described 11 * by the dkbad structure. 12 * 13 * Replacement sectors are allocated starting with 14 * the first sector before the bad sector information 15 * and working backwards towards the beginning of 16 * the disk. A maximum of 126 bad sectors are supported. 17 * The position of the bad sector in the bad sector table 18 * determines which replacement sector it corresponds to. 19 * 20 * The bad sector information and replacement sectors 21 * are conventionally only accessible through the 22 * 'c' file system partition of the disk. If that 23 * partition is used for a file system, the user is 24 * responsible for making sure that it does not overlap 25 * the bad sector information or any replacement sector.s 26 */ 27 28 struct dkbad { 29 long bt_csn; /* cartridge serial number */ 30 u_short bt_mbz; /* unused; should be 0 */ 31 u_short bt_flag; /* -1 => alignment cartridge */ 32 struct bt_bad { 33 u_short bt_cyl; /* cylinder number of bad sector */ 34 u_short bt_trksec; /* track and sector number */ 35 } bt_bad[126]; 36 }; 37 38 #define ECC 0 39 #define SSE 1 40 #define BSE 2 41 #define CONT 3 42