|
|
1.1 ! root 1: /* ! 2: * Definitions needed to perform bad sector ! 3: * revectoring ala DEC STD 144. ! 4: * ! 5: * The bad sector information is located in the ! 6: * first 5 even numbered sectors of the last ! 7: * track of the disk pack. There are five ! 8: * identical copies of the information, described ! 9: * by the bad144 structure. ! 10: * ! 11: * Replacement sectors are allocated starting with ! 12: * the first sector before the bad sector information ! 13: * and working backwards towards the beginning of ! 14: * the disk. A maximum of 126 bad sectors are supported. ! 15: * The position of the bad sector in the bad sector table ! 16: * determines which replacement sector it corresponds to. ! 17: * ! 18: * The bad sector information and replacement sectors ! 19: * are conventionally only accessible through the ! 20: * 'c' file system partition of the disk. If that ! 21: * partition is used for a file system, the user is ! 22: * responsible for making sure that it does not overlap ! 23: * the bad sector information or any replacement sector.s ! 24: */ ! 25: ! 26: #define NBADDESC 126 ! 27: ! 28: /* ! 29: * known to be 512 bytes long ! 30: */ ! 31: struct bad144 { ! 32: long bt_csn; /* cartridge serial number */ ! 33: unsigned short bt_mbz; /* unused; should be 0 */ ! 34: unsigned short bt_flag; /* -1 => alignment cartridge */ ! 35: struct bt_bad { ! 36: unsigned short bt_cyl; /* cylinder number of bad sector */ ! 37: unsigned short bt_trksec; /* track and sector number */ ! 38: } bt_bad[126]; ! 39: }; ! 40: ! 41: #if KERNEL ! 42: int bad144rep(); ! 43: #endif
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.