Switch to full style
Data recovery and disk repair questions and discussions related to old-fashioned SATA, SAS, SCSI, IDE, MFM hard drives - any type of storage device that has moving parts
Post a reply

Bad Sector Reading

June 18th, 2006, 20:00

Hi,

I have a general question concerning the practice of reading a failed sector that I hope someone can help shed some light on. Hopefully it's not a stupid question... :oops:

Programs such as Spinrite claim to be capable of reading a failed sector, and with some effort, are capable of determining most (if not all) of a sectors contents. Spinrite in this example utilizes disk access through the BIOS.

In another example, MediaTools offers both BIOS and direct drive access, the latter of which offers the ability to "read long" and accept a failed sector contents as is. The former (BIOS) will yield only "0" when viewed under a hex editor for that sector while the latter produces some, if compromised, results.

So the question is, can a program read a failed sector, at least to a degree, while using BIOS control or does the drive simply report "0" to the program trying to access it? I know that Sprinrite works for floppy media and MFM drives, but I am unsure of today's IDE drives giving the same results.


Thank you for any info,
dellyfry

Re: Bad Sector Reading

June 19th, 2006, 18:30

dellyfry wrote:Hi,

I have a general question concerning the practice of reading a failed sector that I hope someone can help shed some light on. Hopefully it's not a stupid question... :oops:

Programs such as Spinrite claim to be capable of reading a failed sector, and with some effort, are capable of determining most (if not all) of a sectors contents. Spinrite in this example utilizes disk access through the BIOS.

In another example, MediaTools offers both BIOS and direct drive access, the latter of which offers the ability to "read long" and accept a failed sector contents as is. The former (BIOS) will yield only "0" when viewed under a hex editor for that sector while the latter produces some, if compromised, results.

So the question is, can a program read a failed sector, at least to a degree, while using BIOS control or does the drive simply report "0" to the program trying to access it? I know that Sprinrite works for floppy media and MFM drives, but I am unsure of today's IDE drives giving the same results.


Thank you for any info,
dellyfry




Read and enjoy :lol:

http://en.wikipedia.org/wiki/BIOS_call# ... From_Drive

Bad Sector Reading

June 19th, 2006, 22:01

hddguru,

Thank you kindly for the reply and information. Following the link you provided and additional research answered my question.

I appreciate it.

dellyfry

June 20th, 2006, 18:35

Hi,

If U write prog to read bypassing bios (direct port access), U will find that if U use command 0x20 (read with retry), most of the drives will set DRQ together with ERR (in Status reg). That means U can read out the content of a bad sector without re-reading it with a Read Long command.
This only makes sense if the error was UNC, ie. the sector was read but the errors could not be corrected using ECC.
if the sector could not even be found (AMNF, ABRT...), the returned data has no relation to the original of course.
AFAIK, Quantum, Maxtor, IBM drives work this way, while Seagates do not set DRQ uppon an error, so u have to use an extra Read Long command.
Other brands I have no information, or I don't remember.
I hope it helps.

regards,
pepe

Re: Bad Sector Reading

June 20th, 2006, 22:26

Hi pepe,

Thank you for the information, it helped provide an additional bit of clarity and an excellent spring board for more indepth research .

I appreciate everyones input and professionalism on this forum



take care,
dellyfry
Post a reply