In-depth technology research: finding new ways to recover data, accessing firmware, writing programs, reading bits off the platter, recovering data from dust.
Forum rules
Please
do not post questions about data recovery cases here (use
this forum instead). This forum is for topics on finding new ways to recover data. Accessing firmware, writing programs, reading bits off the platter, recovering data from dust...
July 18th, 2017, 4:43
Hi guru's ,
could you tell me how to read Self-Test EXT Error Log ?
B0 command doesn't work.
July 18th, 2017, 4:49
Drive's vendor, model, family?
July 18th, 2017, 10:44
Martin wrote:Drive's vendor, model, family?
Is it a VSC ?
HGST HDS722020ALA330
July 18th, 2017, 16:19
Deskstar 7K2000 and Ultrastar A7K2000 Specification v1.0:
https://www.hgst.com/sites/default/files/resources/USA7K2000_DS7K2000_OEMSpec_r1.4.pdfThe SMART Read Log Sector (Subcommand D5h) is documented on page 207.
Note: Log addresses 03h and 07h are used by the Read Log Ext and Write Log Ext commands. If these log addresses are used with the SMART Read Log Sector command, the device shall return command aborted.
The Read Log Ext (2Fh) command is documented on page 144.
July 19th, 2017, 4:14
fzabkar wrote:The Read Log Ext (2Fh) command is documented on page 144.
Yes, but very obscured...
I don't get it. Do you?
July 19th, 2017, 4:47
2Fh is a 48-bit command.
FR = xxxxh (log specific, reserved by ATA standard, maybe set to 0000 ???)
SC = nnnnh (number of sectors to be read from log)
SN = 07h
CL = ssssh (first sector/page of log to be read, 0000 is first sector)
CH = don't care
DH = A0h or B0h (master/slave)
CR = 2Fh
July 19th, 2017, 7:58
fzabkar wrote:FR = xxxxh (log specific, reserved by ATA standard, maybe set to 0000 ???)
Maybe "brute force" is needed?
July 19th, 2017, 16:43
Read the ATA standard. If that doesn't help, then you could examine the relevant code in the open source smartmontools project.
Otherwise you could try the following MHDD script (untested).
- Code:
; read first sector of Self-Test EXT Error Log 07h
; cycle through values of 0000 - 0x00FF for Features Register
reset
waitnbsy
; get first page
%fr = -1
@loop:
%fr = %fr + 1
if %fr = 256 @end
waitnbsy
regs = $00 $00 $00 $00
waitnbsy
regs = %fr $01 $07 $00 $00 $a0 $2f
waitnbsy
%error = iserror
if %error = 1 @loop
checkdrq
sectorsto = logpages\%fr.bin
goto @loop
@end:
Powered by phpBB © phpBB Group.