March 16th, 2013, 7:42
wd_read_pchs: reading track -1 with head 0, starting sector 1 number of sectors 10.
send_wd_cmd() (command=000C)(p1=0001)(p2=FFFF) (p3=FFFF) (p4=0000) (p5=0001) (p6=000A)
wd_rw_buffer_cmd() 0xA cylinders
wd_rw_buffer_cmd: OK
wd_read_pchs: operation successful!March 16th, 2013, 16:12
Spildit wrote:So, are you able to read SA modules/tracks on your ebay drive with the damaged drive pcb without any ROM flashing ?
Spildit wrote:Can you read your donor drive in that condition (with patient pcb) on a different head (not head 0) ?

So if my be stored on AS..you don't need them to read SA. You need the head map etc..which on the same model..should be the same.When heads flying above track in the middle of a platter, centers of reading and writing head will be above center of the same track and drive can read and write on the same track without moving heads. But if, for example, heads move toward OD, centers of reading and writing heads will not be above the same track, one of the heads will be far offtrack (sometimes several tracks aside). Such a difference between centers of reading and writing heads called MR Offset. MR Offset is not a constant it varies from track to track; it also can be negative (for ID) and positive (for OD). MR Offset depends of track location and track width. Another parameter called PLO Delay or Read-Write Delay. It shows difference between Read Gate and Write Gate appearances. On different tracks PLO Delay will be different for Write Gate. As we know each head has unique parameters and MR Offset and PLO Delay also will be unique for each head. Drive stores averaged MR Offset and PLO Delay for each head at least for each zone in special tables called Adaptive tables or just Adaptives (adaptives also include some other critical parameters). Adaptives may be stored of the platters in special area called System Area or SA.
Spildit wrote:And on the damaged drive with ebay pcb, did you try to read using a different head ? And with modified head map on RAM ?
March 16th, 2013, 16:30
When heads flying above track in the middle of a platter, centers of reading and writing head will be above center of the same track and drive can read and write on the same track without moving heads.
March 16th, 2013, 17:31
March 18th, 2013, 7:29
March 19th, 2013, 12:23
*************************************************************************************
* WDT ver 0.2 alpha - a tool for western digital HDD firmware
*************************************************************************************
usage: wdt.exe [-scan] [-dumprom <dev>] [...] [-v]
-scan : scan for IDE/ATA compliant devices on default ports 0x1F0, 0x170
-dumprom <dev> [t] : dump device firmware; dev = 00 first number = channel, second 0=master, 1=slave; t=2 128k 3=196k
-dumpctp <dev> <nr> : dump config table page; dev = 00 etc; nr= config page number (dec)
-dumpmem <dev> <s><l> : dump MCU's RAM memory, dev =00 etc, <s>=start ex. 0xffff000 <l>=lenght (hex)
-dumpmod <dev> <nr> : dump a resident module; dev = 00 etc; <nr>= mod number (hex)
-bkall <dev> [t] : backup the rom firmware and Service Area modules; rom type t=2 128k 3=196k etc
-vstat <dev> : vendor specific status for a wd hard disk drive
-v : verbose output
-h : print this helpMarch 20th, 2013, 4:11
March 21st, 2013, 7:58
PUIS Jumper Controlled (see PM2 jumper on drive) ->you plug the jumper..it will start in PUIS. unplug and reset...it will run fine.
Enable PUIS, PM2 jumper ignored ->here you get stacked if you enable this because OS won't know how to strat the hdd
Disable PUIS, PM2 jumper ignored -> usually default factory setting. doesn't allow users to control the PUIS state.
Enable PATA PUIS, PM2 jumper ignoredPUIS requires corresponding BIOS support. If PM2 is enabled on the drive but not supported by the BIOS, the drive will not be detected by the system or detected as zero in size. PUIS is typically only supported on RAID Controllers
app\Debug>wdt.exe -scan
Scanning Controller 0 at Port: 0x1F0: Type : 0 (Master)
Warning: Device is identifying as Powered Up in Stand By!
==>Hard Disk [0:0]: (0/0/0 - 0 sectors) LBA:NO - DMA:NO -> here should be my HDD..but it responds with empty struct...only 2 bytes of data
Scanning Controller 0 at Port: 0x1F0: Type : 1 (Slave)
Nothing found
Scanning Controller 1 at Port: 0x170: Type : 0 (Master)
Nothing found
Scanning Controller 1 at Port: 0x170: Type : 1 (Slave)
Nothing found
March 21st, 2013, 9:05
app\Debug>wdt.exe -test
wd_servo_spin_DOWN
wd_servo_spin_UP
wd_servo_init
wd_servo_parkwd_servo_init
send_wd_cmd: error register is on. aborting...
VSC error code not decoded for : 0x4340
wd_servo_init: send_wd_cmd failed, abortingMarch 21st, 2013, 11:10
March 21st, 2013, 14:08
>C.:.\.W.i.n.d.o.w
0x002F4E51 00 73 00 5c 00 53 00 59 00 53 00 54 00 45 00 4d 00 33 00 32 00 5c 00 77 00 .s.\.S.Y.S.T.E.M.3.2.\.w.
0x002F4E6A 6f 00 77 00 36 00 34 00 77 00 69 00 6e 00 2e 00 64 00 6c 00 6c 00 00 00 ab o.w.6.4.w.i.n...d.l.l...«March 21st, 2013, 17:17
March 22nd, 2013, 0:39
March 22nd, 2013, 13:08
chksum2 -32 *.MOD > MOD_chk.log
Don't be surprised if a few of them don't sum correctly. I don't know why, but this seems to happen even on good drives.
You may find that some MODs contain a "NOT INIT" text string. I believe that this means that these have not been initialised at the factory, and are therefore not used.
app\Debug>wdt.exe -test rom.bin
Checking block ID 0x5A
Header CRC OK
Block CRC OK
Checking block ID 0x01
Header CRC OK
Block CRC OK
Checking block ID 0x02
Header CRC OK
Block CRC OK
Checking block ID 0x03
Header CRC OK
Block CRC OK
Checking block ID 0x04
Header CRC OK
Block CRC OK
Checking block ID 0x05
Header CRC OK
Block CRC OK
Checking block ID 0x06
Header CRC OK
Block CRC OK
Checking block ID 0x07
Header CRC OK
Block CRC OK
Checking block ID 0x08
Header CRC OK
Block CRC OK
Reached the table end.
ROYL mod traced mode name: 0x000D
ROYL mod traced mode name: 0x0047
ROYL mod traced mode name: 0x004F
ROYL mod traced mode name: 0x0030
ROYL mod traced mode name: 0x000B
ROM dir module traced...
ROYL mod traced mode name: 0x000A
Performing CRC on Flash Module 0x000A
CRC OK.
Performing CRC on Flash Module 0x000B
CRC OK.
Performing CRC on Flash Module 0x0030
CRC OK.
Performing CRC on Flash Module 0x0047
CRC OK.
Performing CRC on Flash Module 0x000D
CRC OK.
Performing CRC on Flash Module 0x004F
CRC OK.firmware, I don't see a method for checking the internal mods.March 23rd, 2013, 11:47
louis wrote:it sucks.
well, since I have formatted the hdd, now it's seen by wingoz. this is a big deal because it tries to access it and f. it. the device must be disabled from device manager, otherwise it will screw your operations!
as I said, the wdr demo or not reports ok on heads tests read...write etc. look in the image at the dos window...my app reporting head 1 down + the error. I'm 100% that the head is dead. I see it during debugging... the error and nothing came up in the read buffer.
more..wdr back-ups the files to a drive and unfortunately it was exactly the one I was working on, the donor. suddenly windows started throwing errors that cannot access that dir created by wdr. to play around..I did a head depop for head 1 and did a reset. then the entire modules list (except mod1) went red..with the error FM...bla bla...like on the other thread. while windows continuing popping messages with "cannot access ...blabla". I did a pc reboot this time, popped back the head and now the SA modules are fine. only that the hdd identifies as something elsewhile it was WDC WD2000JD now it became WDC WD1200LB . at inspection the rom firmware is heavy changed in mod 47 (SA adaptives), so really I don't understand from where such large modifications and what was touched inside that mod.
March 23rd, 2013, 14:56
March 24th, 2013, 12:32
March 25th, 2013, 2:22
March 25th, 2013, 7:17
Powered by phpBB © phpBB Group.