September 1st, 2020, 6:33
September 1st, 2020, 8:35
September 1st, 2020, 10:26
September 1st, 2020, 11:34
September 2nd, 2020, 4:33
colanco wrote:Can you upload the file with the content of the original rom?
September 2nd, 2020, 11:53
September 2nd, 2020, 13:51
colanco wrote:The original rom code is corrupted. At least the header.
September 2nd, 2020, 14:11
Analysing backup.rom.DONADOR.bin ...
Searching for LDSCs and verifying PCMBlocks ...
LDSC LDSC Att PCMBlock RAM size PCMBlk CS
Start ID CS Start - End address RAM / ROM Exp/Act
---------------------------------------------------------------------------
0 5A 40 04 120 - 151C 18AC0 13FC 13FC 06 06 OK
20 01 64 01 151D - A5D1 0 c B7E8 90B4 E5 E5 OK
40 02 51 01 A5D2 - FC2A E464 c 7AB0 5658 24 24 OK
60 03 26 01 FC2B - 103BB 16208 c 950 790 95 95 OK
80 04 87 03 103BC - 1061C 4000080 c 36C 260 8C 8C OK
A0 05 82 03 1061D - 10E1D 4003DEC c C04 800 97 97 OK
C0 06 57 03 10E1E - 114FA 24000008 c C1C 6DC B7 B7 OK
E0 07 FF 01 114FB - 2A79B 2401D000 c 20978 192A0 85 85 OK
100 08 7B 01 2A79C - 32E50 24048800 c AC50 86B4 19 19 OK
LDSC = PM Loader Config String (32 bytes)
ID = ID byte of LDSC (byte #0)
CS = Checksum byte or word
Att = Attributes
PCMBlk = Program Code Memory Block
Exp = Expected checksum for PCMBLock
Act = Actual checksum for PCMBLock
c = compressed PCMBlock
size = size of decompressed (in RAM) and compressed (in ROM) PCMBlock in bytes
ROYL directory module 0x000B found at 0x3FEE1
Active directory flag = 0x00
Identifying SA regions ...
Reg# Reg size Reg loc
----------------------------
0x00 0x00031C80 0x00000000
0x01 0x00031C80 0x00042600
0x02 0x00031C80 0x00084C00
0x03 0x00031C80 0x000C7200
Verifying ROYL modules ...
ID Size (bytes) Address Checksum
dir hdr dir hdr
-----------------------------------------------------
000A OK 0000003E 00000200 0003FFB2 00000000 OK
000B OK 000000D1 00000200 0003FEE1 00000000 OK
0030 OK 00000400 OK 0003FAE1 00000000 OK
0047 OK 00000400 OK 0003F000 00000000 OK
000D OK 0000008C 00000200 0003EF74 00000000 OK
004F OK 00000400 OK 0003F400 00000000 OK
dir - Module ID/Size as reported in directory module (0x20B or 0x0B)
hdr - Module ID/Size as reported in module's header
N/A - Not Applicable
BAD - Module has invalid checksum. This may be due to non-existent module.
ROM modules saved to Flash_00\000Bmods and Flash_00\020Bmods
Active directory is 0x0B -- directory 0x20B not present
Analysing active 0x0A module ...
Head map checksum (Expected / Actual) = 0x0000 / 0x0000 - OK
Number of heads (physical / in use) = 4/4
Head map #1 = 0x0F / 0b00001111
Head map #2 = 0x00 / 0b00000000
DCM = | B | E S G S D 1 O
: : : : : : : : : :
: : : : : : : : : unknown
: : : : : : : : top VCM
: : : : : : : ACA
: : : : : : bottom VCM
: : : : : HSA
: : : : media
: : : preamp
: : latch
: base
spindle motor
Analysing active 0x0D module ...
Firmware Version = 01.01A01
World Wide Name = 50014EE6AB446C20
Model Number = WDC WD6400BEVT-22A0RT0
Serial Number =
Analysing active 0x4F module ...
ROM version = 0014003R
Analysing active 0x47 module ...
Preamp values
-----------
0 083BC422
1 0931D315
2 0937B31D
3 0835C322
4 02200200
5 02200200
Microjogs
-------
0 0B77
1 0AFD
2 0B21
3 0ACC
4 0A0A
5 0A0A
Head/Media DCM = GSAnalysing backup.rom.orginal.bin ...
Searching for LDSCs and verifying PCMBlocks ...
LDSC LDSC Att PCMBlock RAM size PCMBlk CS
Start ID CS Start - End address RAM / ROM Exp/Act
---------------------------------------------------------------------------
100 08 88 01 2A43C - 32B18 24048800 c AC70 86DC AC AC OK
LDSC = PM Loader Config String (32 bytes)
ID = ID byte of LDSC (byte #0)
CS = Checksum byte or word
Att = Attributes
PCMBlk = Program Code Memory Block
Exp = Expected checksum for PCMBLock
Act = Actual checksum for PCMBLock
c = compressed PCMBlock
size = size of decompressed (in RAM) and compressed (in ROM) PCMBlock in bytes
ROYL directory module 0x000B found at 0x3FEE1
Active directory flag = 0x00
Identifying SA regions ...
Reg# Reg size Reg loc
----------------------------
0x00 0x0001A333 0x00000000
0x01 0x0001A333 0x00037500
Verifying ROYL modules ...
ID Size (bytes) Address Checksum
dir hdr dir hdr
-----------------------------------------------------
000A OK 0000003E 00000200 0003FFB2 00000000 OK
000B OK 000000D1 00000200 0003FEE1 00000000 OK
0030 OK 00000400 OK 0003FAE1 00000000 OK
0047 OK 00000400 OK 0003F000 00000000 OK
000D OK 0000008C 00000200 0003EF74 00000000 OK
004F OK 00000400 OK 0003F400 00000000 OK
dir - Module ID/Size as reported in directory module (0x20B or 0x0B)
hdr - Module ID/Size as reported in module's header
N/A - Not Applicable
BAD - Module has invalid checksum. This may be due to non-existent module.
ROM modules saved to Flash_01\000Bmods and Flash_01\020Bmods
Active directory is 0x0B -- directory 0x20B not present
Analysing active 0x0A module ...
Head map checksum (Expected / Actual) = 0x0000 / 0x0000 - OK
Number of heads (physical / in use) = 2/2
Head map #1 = 0x03 / 0b00000011
Head map #2 = 0x00 / 0b00000000
DCM = | B | N S G R H N V
: : : : : : : : : :
: : : : : : : : : unknown
: : : : : : : : top VCM
: : : : : : : ACA
: : : : : : bottom VCM
: : : : : HSA
: : : : media
: : : preamp
: : latch
: base
spindle motor
Analysing active 0x0D module ...
Firmware Version = 01.01A01
World Wide Name = 50014EE25A35CE66
Model Number =
Serial Number =
Analysing active 0x4F module ...
ROM version = 0014003V
Analysing active 0x47 module ...
Preamp values
-----------
0 083BA329
1 0639C513
2 02200200
3 02200200
4 02200200
5 02200200
Microjogs
-------
0 0C20
1 0B66
2 0A0A
3 0A0A
4 0A0A
5 0A0A
Head/Media DCM = GSSeptember 2nd, 2020, 15:44
colanco wrote:The original rom code is corrupted. At least the header.
fzabkar wrote:The first 0x100 bytes are garbage. I have extracted the ROYL modules.
- Code:
Analysing backup.rom.DONADOR.bin ...
Searching for LDSCs and verifying PCMBlocks ...
LDSC LDSC Att PCMBlock RAM size PCMBlk CS
Start ID CS Start - End address RAM / ROM Exp/Act
---------------------------------------------------------------------------
0 5A 40 04 120 - 151C 18AC0 13FC 13FC 06 06 OK
20 01 64 01 151D - A5D1 0 c B7E8 90B4 E5 E5 OK
40 02 51 01 A5D2 - FC2A E464 c 7AB0 5658 24 24 OK
60 03 26 01 FC2B - 103BB 16208 c 950 790 95 95 OK
80 04 87 03 103BC - 1061C 4000080 c 36C 260 8C 8C OK
A0 05 82 03 1061D - 10E1D 4003DEC c C04 800 97 97 OK
C0 06 57 03 10E1E - 114FA 24000008 c C1C 6DC B7 B7 OK
E0 07 FF 01 114FB - 2A79B 2401D000 c 20978 192A0 85 85 OK
100 08 7B 01 2A79C - 32E50 24048800 c AC50 86B4 19 19 OK
LDSC = PM Loader Config String (32 bytes)
ID = ID byte of LDSC (byte #0)
CS = Checksum byte or word
Att = Attributes
PCMBlk = Program Code Memory Block
Exp = Expected checksum for PCMBLock
Act = Actual checksum for PCMBLock
c = compressed PCMBlock
size = size of decompressed (in RAM) and compressed (in ROM) PCMBlock in bytes
ROYL directory module 0x000B found at 0x3FEE1
Active directory flag = 0x00
Identifying SA regions ...
Reg# Reg size Reg loc
----------------------------
0x00 0x00031C80 0x00000000
0x01 0x00031C80 0x00042600
0x02 0x00031C80 0x00084C00
0x03 0x00031C80 0x000C7200
Verifying ROYL modules ...
ID Size (bytes) Address Checksum
dir hdr dir hdr
-----------------------------------------------------
000A OK 0000003E 00000200 0003FFB2 00000000 OK
000B OK 000000D1 00000200 0003FEE1 00000000 OK
0030 OK 00000400 OK 0003FAE1 00000000 OK
0047 OK 00000400 OK 0003F000 00000000 OK
000D OK 0000008C 00000200 0003EF74 00000000 OK
004F OK 00000400 OK 0003F400 00000000 OK
dir - Module ID/Size as reported in directory module (0x20B or 0x0B)
hdr - Module ID/Size as reported in module's header
N/A - Not Applicable
BAD - Module has invalid checksum. This may be due to non-existent module.
ROM modules saved to Flash_00\000Bmods and Flash_00\020Bmods
Active directory is 0x0B -- directory 0x20B not present
Analysing active 0x0A module ...
Head map checksum (Expected / Actual) = 0x0000 / 0x0000 - OK
Number of heads (physical / in use) = 4/4
Head map #1 = 0x0F / 0b00001111
Head map #2 = 0x00 / 0b00000000
DCM = | B | E S G S D 1 O
: : : : : : : : : :
: : : : : : : : : unknown
: : : : : : : : top VCM
: : : : : : : ACA
: : : : : : bottom VCM
: : : : : HSA
: : : : media
: : : preamp
: : latch
: base
spindle motor
Analysing active 0x0D module ...
Firmware Version = 01.01A01
World Wide Name = 50014EE6AB446C20
Model Number = WDC WD6400BEVT-22A0RT0
Serial Number =
Analysing active 0x4F module ...
ROM version = 0014003R
Analysing active 0x47 module ...
Preamp values
-----------
0 083BC422
1 0931D315
2 0937B31D
3 0835C322
4 02200200
5 02200200
Microjogs
-------
0 0B77
1 0AFD
2 0B21
3 0ACC
4 0A0A
5 0A0A
Head/Media DCM = GS
- Code:
Analysing backup.rom.orginal.bin ...
Searching for LDSCs and verifying PCMBlocks ...
LDSC LDSC Att PCMBlock RAM size PCMBlk CS
Start ID CS Start - End address RAM / ROM Exp/Act
---------------------------------------------------------------------------
100 08 88 01 2A43C - 32B18 24048800 c AC70 86DC AC AC OK
LDSC = PM Loader Config String (32 bytes)
ID = ID byte of LDSC (byte #0)
CS = Checksum byte or word
Att = Attributes
PCMBlk = Program Code Memory Block
Exp = Expected checksum for PCMBLock
Act = Actual checksum for PCMBLock
c = compressed PCMBlock
size = size of decompressed (in RAM) and compressed (in ROM) PCMBlock in bytes
ROYL directory module 0x000B found at 0x3FEE1
Active directory flag = 0x00
Identifying SA regions ...
Reg# Reg size Reg loc
----------------------------
0x00 0x0001A333 0x00000000
0x01 0x0001A333 0x00037500
Verifying ROYL modules ...
ID Size (bytes) Address Checksum
dir hdr dir hdr
-----------------------------------------------------
000A OK 0000003E 00000200 0003FFB2 00000000 OK
000B OK 000000D1 00000200 0003FEE1 00000000 OK
0030 OK 00000400 OK 0003FAE1 00000000 OK
0047 OK 00000400 OK 0003F000 00000000 OK
000D OK 0000008C 00000200 0003EF74 00000000 OK
004F OK 00000400 OK 0003F400 00000000 OK
dir - Module ID/Size as reported in directory module (0x20B or 0x0B)
hdr - Module ID/Size as reported in module's header
N/A - Not Applicable
BAD - Module has invalid checksum. This may be due to non-existent module.
ROM modules saved to Flash_01\000Bmods and Flash_01\020Bmods
Active directory is 0x0B -- directory 0x20B not present
Analysing active 0x0A module ...
Head map checksum (Expected / Actual) = 0x0000 / 0x0000 - OK
Number of heads (physical / in use) = 2/2
Head map #1 = 0x03 / 0b00000011
Head map #2 = 0x00 / 0b00000000
DCM = | B | N S G R H N V
: : : : : : : : : :
: : : : : : : : : unknown
: : : : : : : : top VCM
: : : : : : : ACA
: : : : : : bottom VCM
: : : : : HSA
: : : : media
: : : preamp
: : latch
: base
spindle motor
Analysing active 0x0D module ...
Firmware Version = 01.01A01
World Wide Name = 50014EE25A35CE66
Model Number =
Serial Number =
Analysing active 0x4F module ...
ROM version = 0014003V
Analysing active 0x47 module ...
Preamp values
-----------
0 083BA329
1 0639C513
2 02200200
3 02200200
4 02200200
5 02200200
Microjogs
-------
0 0C20
1 0B66
2 0A0A
3 0A0A
4 0A0A
5 0A0A
Head/Media DCM = GS
September 2nd, 2020, 18:03
September 2nd, 2020, 19:08
fzabkar wrote:The donor and patient have different ROM versions (according to mod 4F) -- 0014003V versus 0014003R. I'm not a DR pro, so others would need to tell you whether these are compatible.
Otherwise you could look for ROM version 0014003V and then use it to rebuild the code section.
September 2nd, 2020, 23:42
September 3rd, 2020, 2:49
September 3rd, 2020, 5:59
BGman wrote:Model Number = WDC WD6400BEVT-22A0RT0
Donor PCB is from Mariner 640GB with 4 heads , FW 143R
The original is Jamaica 250GB with 2 heads, FW 143V
By Hex Editor you should thansfer mod 0A, 0B, 30, 0D, 47, 4F from the original ROM to ROM of drive with FW 143V (Jamaica or Mariner)
September 4th, 2020, 3:05
September 4th, 2020, 6:03
BGman wrote:Maybe you should pay somebody that knows how to do it.
September 4th, 2020, 11:06
DeVlL wrote:I have the MRT tool. Could the ROM be generated from it from the modules?
September 4th, 2020, 14:58
September 4th, 2020, 15:28
September 4th, 2020, 18:26
colanco wrote:One question...what did you buy MRT for?
That model has a copy of the modules/ROM in SA....
Analysing WDCWD2~1.BIN ...
Searching for LDSCs and verifying PCMBlocks ...
LDSC LDSC Att PCMBlock RAM size PCMBlk CS
Start ID CS Start - End address RAM / ROM Exp/Act
---------------------------------------------------------------------------
0 5A 40 04 120 - 151C 18AC0 13FC 13FC C5 C5 OK
20 01 80 01 151D - A591 0 c B784 9074 05 05 OK
40 02 10 01 A592 - FB9A E464 c 7950 5608 EE EE OK
60 03 9D 01 FB9B - 1032B 16208 c 958 790 B4 B4 OK
80 04 F7 03 1032C - 1058C 4000080 c 36C 260 13 13 OK
A0 05 F4 03 1058D - 10C1D 4003DEC c BEC 690 CC CC OK
C0 06 6E 03 10C1E - 111FA 24000008 c B38 5DC D0 D0 OK
E0 07 ED 01 111FB - 29DAF 2401D000 c 20058 18BB4 2C 2C OK
100 08 51 01 29DB0 - 32324 24048800 c AAA0 8574 C8 C8 OK
LDSC = PM Loader Config String (32 bytes)
ID = ID byte of LDSC (byte #0)
CS = Checksum byte or word
Att = Attributes
PCMBlk = Program Code Memory Block
Exp = Expected checksum for PCMBLock
Act = Actual checksum for PCMBLock
c = compressed PCMBlock
size = size of decompressed (in RAM) and compressed (in ROM) PCMBlock in bytes
ROYL directory module 0x000B found at 0x3FEE1
Active directory flag = 0x00
Identifying SA regions ...
Reg# Reg size Reg loc
----------------------------
0x00 0x0001A333 0x00000000
0x01 0x0001A333 0x00037500
Verifying ROYL modules ...
ID Size (bytes) Address Checksum
dir hdr dir hdr
-----------------------------------------------------
000A OK 0000003E 00000200 0003FFB2 00000000 OK
000B OK 000000D1 00000200 0003FEE1 00000000 OK
0030 OK 00000400 OK 0003FAE1 00000001 BAD
0047 OK 00000400 OK 0003F000 00000000 OK
000D OK 0000008C 00000200 0003EF74 00000000 OK
004F OK 00000400 OK 0003F400 00000000 OK
dir - Module ID/Size as reported in directory module (0x20B or 0x0B)
hdr - Module ID/Size as reported in module's header
N/A - Not Applicable
BAD - Module has invalid checksum. This may be due to non-existent module.
ROM modules saved to Flash_00\000Bmods and Flash_00\020Bmods
Active directory is 0x0B -- directory 0x20B not present
Analysing active 0x0A module ...
Head map checksum (Expected / Actual) = 0x0000 / 0x0000 - OK
Number of heads (physical / in use) = 2/2
Head map #1 = 0x03 / 0b00000011
Head map #2 = 0x00 / 0b00000000
DCM = | B | N S G R H N V
: : : : : : : : : :
: : : : : : : : : unknown
: : : : : : : : top VCM
: : : : : : : ACA
: : : : : : bottom VCM
: : : : : HSA
: : : : media
: : : preamp
: : latch
: base
spindle motor
Analysing active 0x0D module ...
Firmware Version = 01.01A01
World Wide Name = 50014EE25A35CE66
Model Number =
Serial Number =
Analysing active 0x4F module ...
ROM version = 0014003V
Analysing active 0x47 module ...
Preamp values
-----------
0 083BA329
1 0639C513
2 02200200
3 02200200
4 02200200
5 02200200
Microjogs
-------
0 0C20
1 0B66
2 0A0A
3 0A0A
4 0A0A
5 0A0A
Head/Media DCM = GSPowered by phpBB © phpBB Group.