推 荐 广 告

您现在的位置: 厦门科力电脑上门维修医院 >> 电脑文章中心 >> 维修文章 >> 文章正文
您想找的是:

不用3K也能修复4D040H2的通病

作者:佚名    文章来源:不详    点击数:    更新时间:2007-8-23    文章录入:aygd    责任编辑:aygd 

 

    先按正常模式接一个好盘,进入MHDD,执行指令“STOP”。这时硬盘停转,热交换到坏盘上。执行指令“i”这时硬盘启动。退出MHDD,运行HDDL,选择写入LDR。指定相应的LDR文件,按空格取消选项。选确定,有出错的提示,硬盘会停转。热启动电脑发现硬盘可以认了,进MHDD扫描一切正常。
文章中所有的汇编代码都来自希捷的硬盘RAM中,也可以参考ROM,但ROM中是偏移的地址,不知道起始的地址所以看起来不方便,RAM中就不同了,RAM中的寻址都是实际的地址,用指令可以读出RAM。


RAM中有这样一段代码:
00005E60: 5E D9 39 00 54 66 9E 01 31 5F 14 02 32 10 32 03 | ................
>                  ^^^^^       ^^^^^       ^^^^^       ^^
00005E70: 33 10 34 04 34 10 36 05 35 60 B7 06 36 65 66 07 | ................
>         ^^       ^^^^^       ^^^^^       ^^^^^       ^^
00005E80: 37 10 38 FF C4 17 CA 40 E7 17 EC 0D ED 18 4F 39 | ................
>         ^^       ^^


看代码中带标记的部分不难看出,是一个表格,看第一个,54就是T,669E就是T的地址,如果工作在T的级别就可以跳到这个地址。后面是工作在/1/2/3/4/5/6/7的工作模式。


下面是669E地址的代码:
00006690: 01 ED 41 27 07 8D C1 26 03 FF 04 3D 4F 39 66 A0 | _эA'_Н-&___=O9fа
>                                                   ^^^^^


在660E的地方又跳到另一个地址是66A0。这里我就不懂了,不知道为什么又有一个跳转。
下面是66A0地址的代码:


000066A0: 44 66 E3 45 C9 C5 46 68 79 48 68 2F 4A C9 C5 4E | DfуE++FhyHh/J++N
>         ^^       ^^       ^^       ^^       ^^       ^^
000066B0: 68 47 59 68 59 53 69 AF 54 68 F9 56 99 AA 57 F9 | hGYhYSiпTh?VЩкW?
>               ^^       ^^       ^^


这里就看的很清楚了,带标记的代码就是指令,就是我们在键盘敲入的键,分别是D,E,F,H,J,N,Y。紧跟后面的两位代码就是执行指令需要跳转的地址。
本文只提到了Y指令的用法,Y指令是更改硬盘型号和容量的指令。下面是6859的地址反汇编后的程序。


seg000:6859  -----------------------------------------------------------
seg000:6859  
seg000:6859 Y_ON_0:                              DATA XREF: seg000:66B3
seg000:6859                 pshb                    ;压栈  
seg000:685A                 jsr     IsHermoValid     条件语句,判断指令是否符合运行条件。
seg000:685D                 tstb                & nbsp;     
seg000:685E                 bne     loc_0_6866       跳到6866
seg000:6860                 pulb                      
seg000:6861                 ldd     #aInvalidEntry   "Invalid entry\r" 提示出错的信息。
seg000:6864                 bra     locret_0_6878    退出
seg000:6866  -----------------------------------------------------------
seg000:6866  
seg000:6866 loc_0_6866:     ;                      CODE XREF: seg000:685E
seg000:6866                 stab    word_0_49E
seg000:6869                 stx     word_0_49B
seg000:686C                 sty     word_0_4A0
seg000:6870                 pulb  
seg000:6871                 stab    word_0_802+1     执行指令
seg000:6874              &nb sp;  jsr     W_ON_0
seg000:6877                 clra  
seg000:6878  
seg000:6878 locret_0_6878:                       CODE XREF: seg000:6864
seg000:6878                 rts  
seg000:6879  ----------------------------------------------------------
seg000:6879  
seg000:6879 F_ON_0:                              DATA XREF: seg000:66A7
seg000:6879                 ldx     #$805



厦门上门电脑维修/厦门电脑上门维护/系统维护重装 电话:0592-7532492 5289397