西数硬盘维修软件TREX指令使用教学
TREX支持电路板主芯片为88i开头的全系列家族。指令字母不分大小写。
自检(SF)流程意义解释:
流水号 功能名词 正常指向 失败指向
重要的有第3步的C4,全盘口径校正,调红绿块的。(卡住不动的话换电源再,不行再分析 第0e步的d1(某些此处显示是da,功能是一样的)。卡住不动的话换固件重新做 第16步d2,是跑P表记录,如果p表值太高,则会失败.流程指向18
第1b步的b9,内部格式化.P表高的会导致这步失败,P表没有记录的话也会失败。 第1c步的ba,硬盘全盘扫描并自动加表.如果p表值太高或G表溢出.都会引起失败。 第20步.自检正常完成.这时可根据G和P表的记录为估计是否正确.当然.扫描是最好了。
SF启动正常完成后是有P表记录的。
基本操作指令:
Scan 端口扫描,扫描出让trex软件控制硬盘的通讯端口,有时候需要重复执行两次或多次才能扫描出端口。但选择完端口后无需再次执行此命令直到重新打开T软件。
Dut X 选择被控制端的端口序号,一般来0或1,视当前主板端口数值而变化。 Did 显示硬盘基本信息(通常用于检查硬盘状态,固件版本)
Idp 显示硬盘高级信息(通常用于查看硬盘电机转速,固件版本日期) Reset 硬盘软复位,不带断电功能,只是重置一下对固件区的读取。 Ireset 硬盘硬复位(带断电重启功能的复位指令)。
Ipath “X” 指定固件输入路径,X参数为路径的详细地址,如:”E:\\royl\\11” Log x.txt 生成以X参数命名的文本文件,记录操作详情。 Showpaths 查看当前输入和输出的路径地址信息。
Fmtunit 格式化硬盘,回车后出现选项.0为带P表的内部格式化;3为不带GP表的内部格式化。
Fmt 不带GP表的格式化硬盘的简写指令,一般用于格式化一小段测试效果,比如这个盘调好了适配和TPI段位等,启动自校前评估下磁头的性能状态。
Clrlog 复位smart表,清空G表.自检流程。
Edit 编辑硬盘型号和容量,执行后首先出现的是型号编辑,再回车键后是容量编辑,比如500G 1T 1.5T Edsn 编辑硬盘SN码
Vscon 执行某些指令前必须的辅助指令。例如选择TPI或段位。
Recal 用于敲停转的硬盘重启测试磁头,如果这个盘的电路板是配对的.ROM也是写了同家族号其它兼容的,执行此指令后硬盘不敲,起转有寻道声,证明就是固件引起的敲盘,还是敲的话证明有磁头损坏。 Hdtest X 使用X参数所指定的磁头执行SA区读写测试由此判断磁头好坏。 Ldata 加载ATA模块(1640板或以上须加载了AtA模块认盘了才能写模块)
Pickall 从轨道提取模块,一般用于1640板以下不认盘的,写外部兼容ROM以后就绪了,再加载ATA模块,再用这个指令来提取,用winhex软件打开C9模块抄录原盘TPI和段位。 Clrpwd 清除密码。 固件操作指令:
从外部写入模块或内部编辑模块内容后.要断电复位才生效。全写固件(整套固件换掉)后要清零32号,36号,6F号,极少数系列硬盘没有
6F号模块。
C5模块包含家族号信息,c9模块包含出厂时的TPI和段位值,8005模块包含该盘原始型号,03模块包含该硬盘当前所使用的TPI和段位值,E0至E5和F0 F1模块是每个磁头的自校过程中产生的坏道记录。2050至2057模块是每个磁头的调适配记录。 Dir 显示硬盘固件区的模块列表。(01号存在的所有模块信息)
Ca 检查硬盘所有模块好坏,执行后硬盘会自动检测SA区.模块为顺序显示出来,一个模块有两份内容相同的拷贝,名称为copy0和copy1,模块是好的显示GOOD,坏的会显示错误信息。模块是good的一般内容也是正确的,但不是绝对。 Ck X 检查硬盘单个模块好坏,X参数为所要检查的模块名。比如ck 032h就是检查32号模块。 Rdfl X 从内部固件区读取指定的模块到读缓存,X参数为所要读取的模块名。 Edit 编辑读缓存模块的内容
Wd 保存读缓存模块的内容到硬盘固件区。
Rf X 备份单个模块,X参数为所要备份的模块名, 输入命令后回车会提示要保存到的文件夹路径。 Wf X 从外部写入单个模块,X参数为所要写入的模块名
Rfall 备份所有固件区模块, 输入命令后回车会提示要保存到的文件夹路径。
Wfall 从外部写入所有固件区模块,全写固件区模块顺序是先写01号模块,断电复位再执行全写指令。 Fmtrsvd 格式化固件区(前提条件是固件区存在01和35号模块并且内容正确) Zrcyls 用于L板系列清零固件区所有轨道 Zrcyls_vdt 用于三角板系列清零固件区所有轨道 Clrfile X 清零X参数指定的模块。 坏道表操作指令:
Lba X 输入lba地址,X参数为lba值,一般是通过mhdd扫描得到(这个指令通常配合xlt指令一起使用,以查看当前所输入的lba值所处在的磁头号)
Xlt 将输入的lba值转换为cyl物理地址
Addtrk x,z 将之前用xlt指令得到的磁道添加到P表,x参数为所要添加的cyl值,z参数为所要添加cly值所在的磁头号。
Plist 显示p表坏道记录 Glist 显示G表坏道记录
Gtop 将G表记录添加到P表记录,操作后须重建译码表。
Track 将P表记录合并为磁道,指令回车后要输入参数,UDMA的默认值是5 Zonelist X 显示X磁头的坏道列表,X号为逻辑磁头号
Addplist 将扫描出来的坏道表添加到P表,须配合手工编辑T软件文件夹中的plist脚本文件操作。(配合word软件打开编辑
mhdd扫描记录用)
Clrglist 清空G表坏道记录
Clrfile 033h 清空P表坏道记录。33号模块是P表记录。
Delhd X 删除X磁头号所属的所有P表记录,X参数为所要删除的磁头号。
Rdplist 备份P表,一般砍段之前建议备份,万一砍乱了p表记录,以能回写。
ROM相关操作指令:
Rom文件的大小(多少kb)可单读出109号模块,查看109大小得知。192和256kb的rom文件须用不同的指令来写。或使用flashr 0,40000可执行的话代表为256kb,flashr 0,30000代表为192kb
Romdir 显示构成rom的模块列表,一般用来查看是否存在4F,20b模块。 Romfw 从固件区提取rom模块内容并回写到rom
Mkrom 从固件区109号模块生成rom文件,生成rom并回写后,须配合romfw回写rom文件的其它信息。三角板系列能用。 Romwf 从外部的模块提取rom模块内容并回写到rom
Rombk 备份rom
Romwr 回写rom
Romback 备份256kb大小的rom
Romwrite 回写256 kb大小的rom
自检相关操作指令:
Sf 启动自检
Msf 0 监控自检检状态
Plog 自动清除自检失败记录,并在当前流程步骤开始做自检(用于流程失败后再次启动) Setpstmode 1 开启自检状态(用于之前没有失败,或许只是不小心中断了再次启动
Tp X 指定从?参数指定的流程步骤开始做自检,须配合plog或setpstmode 1指令一起使用。 Dpst 显示老款家族系列(如L板)的自检流程 Dseq 显示新款家族系列的自检流程 Wsf 回写自检流程(回写28号模块)
启动自检后卡在C4不过的,一般是有磁头坏或某段坏造成,可强行跑da或d1流程,完成查看E0等模块记录确定那个磁头的坏道记录多来判断,L板一般不超过1W,701499一般不超过3W,三角板一般不超过3W或正常。
C4的自检过程记录在2000至2007模块,如果c4失败可查看这些模块有没有内容记录来判断停在那个磁头。 自检停在d1流程的,一般要换固件重新做。
某些L板的320G硬盘需要在Sf指令后断电前回写28号模块,再tp 03h,再setpstmode 1后才能断电启动。 2060-771642板跑自检卡在b9的.手动停了后重建译码表再用Plog启动即可。
自检失败指向21流水号的,可尝试的启动后断电前改28模块坐标014c位置的46为4A,再挂电。
砍头相关操作指令:
Map 显示rom物理磁头映射列表
Kill 1,X 屏蔽X参数指定的逻辑磁头,并自动修改磁头模块内容,用后须再配合k指令使用屏蔽对应的物理磁头。 K X 屏蔽X参数指定的物理磁头 Nk X 释放X参数指定的物理磁头
Depophd 1,X 自动屏蔽?参数指定的逻辑磁头号并自动修改好所有相关模块内容
砍掉磁头后还只存在一个磁头的,要改0b模块8F位置为01代表只使用一个磁头。1640板或以上的,或许是使用20b模块,要改动的位置也不一样。
1640板砍头操作前,须先扫行Fmtselect_Set_Target_capacity X指令把容量类型更改为1或2
本盘2.5寸的1499板硬盘,砍0头有时需要用kill指令,修改好固件后先备份所有的模块出来,再用k指令砍掉0头..以免造成只读。
降容量相关操作指令:
Getdrvfmt 显示当前使用的容量类型
Setdrvfmt X L板系列降容指令,X参数为降容类型 Fmtselect_get_current 显示当前使用的段位适配信息 Fmtselect_get_TPI 显示该盘的TPI信息 Fmtselect_get_Capacity 显示段位容量信息
Fmtselect_Set_Target_capacity X 自动选择段位容量 X参数为容量类型 Fmtselect_Set_TPI A,B,C,D,E,F,G,H 手动指定TPI值,字母参数为0-7头 Fmtselect_Set_capacity A,B,C,D,E,F,G,H 手动指定段位容量, 字母参数为0-7头
Settpi X 单个磁头,由低向高位顺序提升TPI值,X参数为所要调整的磁头号,执行此指令的前提是已经把所有磁头的TPI值都设定过了。
砍段相关操作指令:
Zonelist X 显示X号参数选定的磁头段位表信息(用于三角板)
lzonelist X 显示X号参数选定的磁头段位表信息X参数是要查看的逻辑磁头(用于L板) Diszone 显示该盘的总段位表信息
ldelzone x,z 删除段位缺陷(X参数是逻辑磁头,z是段位)
Cutzone X 三角板砍段并自动删除段位缺陷,此X参数数值来自diszone指令后得到。执行后断电前须清空32号,改正型号和容量。L板如不能成功删除对应缺陷的,则要用ldelzone删除
砍段之后要重建译码表,重建后一般再从b9流程跑起,至完成。砍段后不能重建译码表的,尝试清空G表,断电后再重建,如果还不能成功一般是P表过高或p表错乱造成,可尝试再砍掉其它SPT或坏道缺陷高的段位,还有就是重新按03号模块记录的TPI值再手动选择次TPI