cham_810 发表于 2009-1-3 11:36:06

ST_MEM常规应用

STMEM一直比较低调。其实在俄罗斯,很多高手用它弄盘。功能是很强的。大家一起来研究一下它的应用吧。很多功能,很实用。

STUFF_NAME        VAL1/ VAL2   等同ASCII1B指令
      VAL1硬盘型号    VAL2出现的结果是否在屏幕上[ 0,1 ]
例:STUFF_NAME/ST340014A/1


STUFF_SIZE        VAL1/ VAL2   等同ASCII83指令       
      VAL1-硬盘LBA数(十进制)   VAL2- VAL2出现的结果是否在屏幕上[ 0,1 ]
例:STUFF_SIZE/155000000/1

SPEED    VAL1/ VAL2/VAL3        端口速度设置批处理 HDD+COM 端口
VAL1需要设置的速度 [ 9600,19200,57600 ... 硬盘需该支持该速度!
VAL2发送命令到硬盘驱动器[ B0096 , B0115 ...]
VAL3出现的结果是否在屏幕上[ 0,1 ]
例:SPEED/115200/B0115


R_SECTORS          VAL1/ VAL2/ VAL3/ VAL4/ VAL5/ VAL6/VAL7/VAL8   读取扇区到文件       
VAL1 =扇区所在磁道
VAL2 =磁头
VAL3 =缓存区大小(如果要求自动或空的,这是自动计算)
VAL4 =起始扇区
VAL5 = 要读取的扇区数量
VAL6 文件名称
VAL7 如果档案存在则覆盖
VAL8 执行结果(详细报告) 。如果您输入0 ,它不会显示。输入1,最详细的报告。 2将显示每2阅读区, 3 -每三,等等
先查看ZONE表,看看SYS=.....,这个是固件区位置和范围。用/2下的x可查看。具体偏移要查看ST说明书。每个系列的偏移位置不一样。要灵活运用。

如图当中的位置,我们备份ATA扇区方法如下:
R_SECTORS/E5DA/0/200/0/240/OVL.BIN/1/1
             磁道 磁头 缓冲大小 起始扇区 要读的扇区大小 文件名   覆盖   最详细报告
               E5DA 0   200      0          240    OVL.BIN   1(是)   1(是)   
依此类推:
按照说明书,找到CERT CERT TABLEVEN 所在偏移,用SYS=后的起始磁道,加上各自偏移得到各各位置。之后备份所需大小即可。
一般来说:
ATA 是280APP是180CERT是240TABLE是40
如果不知道多大,那么干脆你可以备份完280个扇区。哈哈,保险。如果你看到SPT=280,那么你备份完280扇区,就是直接备份了整个磁道了。
SPT意思就是每个磁道的扇区数。


写OVERLAY
例:
SPEED/115200/B0115
STR/e0,0/0
SLEEP/4000
SEND_FILE/512/ovl.bin/<0/<280
         缓冲大小 文件名   起始写入写入大小
         512   OVL.BIN   0      280
以此类推;

写CERT
SPEED/115200/B0115
STR/d400,2,0/0
SLEEP/4000
SEND_FILE/2048/cert.bin/<0/<280
BAUDRATE/9600

写APP
SPEED/115200/b0115
STR/d80,1/0
SLEEP/4000
SEND_FILE/1024/app.bin/<0/<180
SPEED/9600/b0096
STR/j,,1
STR/U

写CERT TABLE
SPEED/115200
STR/h11/0
SLEEP/4000
SEND_FILE/512/tabl.bin/<0/<40
SLEEP/4000
SPEED/9600

写VENDOR
方法1:
SPEED/115200
STR/d80,2/0
SLEEP/4000
SEND_FILE/2048/Vendor.trk/<0/<48/1

方法2:
SPEED/115200
S_BUF/260/Vendor.trk/0/48/1
LEVEL/2
STR/s0Ea47,0
STR/w,0,48

常用的就是上面的这些了。

下面这些是从俄文网站上看到的。具体意思,看一下也很容易明白。只有大家多多测试了。
有些参数是可有可无。有些参数是必要的。大家看看能看得懂的。也是根据上面我说的那些来考虑就行了。
SPEED/57600
LEVEL/1
STR/F
W_SECTORS/E834/0/210/0/240/CERT.BIN/0/1
SPEED/9600


F >R1
F >R2
F >j,,1
T >w4


Interface task reset
1024k x 16 buffer detected
ALPINE - 1_Disk    M.1401-16-03 11:51
Head Mask 000F - Switch to full int.
            Spin Ready
Error Reading Application Code
(
F>


потом лью апп по скрипту

STR/b576/0///0/0
BAUDRATE/57600
STR/d80,2/0
SLEEP/4000
SEND_FILE/2048/app.bin/<0/<280
STR/j,,1
SPEED/9600



SPEED/57600/
STR/d,2/0
SLEEP/4000
SEND_FILE/2048/cert.bin/<0/<280
BAUDRATE/9600/


Interface task reset1024k x 16 buffer detected
ALPINE - 1_Disk    M.1401-16-03 11:51
Head Mask 0000 - Switch to full int.
            Spin Ready
3.0610-21-03 15:53
(P)PATA Reset

Stuff Was Unreadable(
T>
СкоростьCOM/HDD=115200 / B0115

T>

пауза 4000 м.сек.

Послали файл Vendor_EA17_288.trk блоками по 2048 байт

И всё.
Вот команда
SPEED/115200
STR/d80,2/0
SLEEP/4000
SEND_FILE/2048/Vendor_EA17_288.trk/<0/<48/1


SPEED/115200
S_BUF/260/Vendor_EA17_288.trk/0/48/1
LEVEL/2
STR/s0Ea47,0
STR/w,0,48



SPEED/57600
W_SECTORS/E6C7/0/210/0/12/vendor.bin/0/1
SPEED/9600



SPEED/57600/b576
STR/d80,1/0
SLEEP/4000/1
SEND_FILE/1024/SDLD\APP\3.06\APP.bin/<0/<180
SPEED/57600/b576
STR/j,,22/0


SPEED/57600/B576
STR/dx,1/0
SLEEP/4000/1
SEND_FILE/1024/xxx.bin/<0/<240
SPEED/57600/B576
STR/w1

SPEED/57600/b576
STR/d80,1/0
SLEEP/4000/1
SEND_FILE/1024/SDLD\APP\3.06\APP.bin/<0/<180
SPEED/9600/b096(винт и порт надо вернуть на родную скорость)
STR/j,,22/0




SPEED/57600
LEVEL/2
//App code
R_TRACKS/dir/3/400/15FB0/15FB0/2C9/1
//CERT tables
R_TRACKS/dir/3/400/15EE7/15EE7/2C9/1
//CERT code
R_TRACKS/dir/3/400/15F18/15F18/2C9/1
//Overlay
R_TRACKS/dir/3/400/15F1C/15F1C/2C9/1
//VENDOR
R_TRACKS/dir/3/400/15F20/15F20/2C9/1

每一段的命令,都可以存到文本后,后缀改成.CMD后,放入STMEM的文件夹里,就可以方便STMEM调用了。
大家也可以自己编写自己喜欢和常用的命令来方便修盘。

[ 本帖最后由 cham_810 于 2009-1-3 11:56 编辑 ]

zzx 发表于 2009-1-3 12:57:00

没用过
呵呵
可以学学

1981zhaoyun 发表于 2009-1-3 17:47:10

多谢指教 学习中 谢谢

cham_810 发表于 2009-1-3 22:40:31

进来看的人不多,郁闷了。

0830 发表于 2009-1-4 10:24:09

写的不错, 可以用以上代码写一个自己修盘的软件了。。。。

兄弟还有代码吗。。。



正考虑写个st的软件。。。。

tywjh 发表于 2009-1-4 11:14:09

原帖由 0830 于 2009-1-4 10:24 发表 http://bbs.intohard.com/images/common/back.gif
写的不错, 可以用以上代码写一个自己修盘的软件了。。。。

兄弟还有代码吗。。。



正考虑写个st的软件。。。。
写好后送我一个,先谢了!(49: (49: (49:

cham_810 发表于 2009-1-4 11:24:42

原帖由 0830 于 2009-1-4 10:24 发表 http://bbs.intohard.com/images/common/back.gif
写的不错, 可以用以上代码写一个自己修盘的软件了。。。。

兄弟还有代码吗。。。



正考虑写个st的软件。。。。



STMEM还有些命令的说明,如果您需要,我发给你。

hdd521 发表于 2009-1-4 11:30:25

楼主的帖子真好,很有价值!

syzdq 发表于 2009-1-4 13:19:36

我还是比较习惯用指令,只把它当终端(如查看SF进度)用时最好改下连接速率,回显时会快很多:
T>B1(先看下盘支持哪些速率)
=1228
=0921
=0625
=0614
=0460
=0230
=0115
=0576
=0192
=0096
T>B0115(这里我改成了115200,具体速率根据大家的硬件稳定性而不同,USB转的可再快点,回车后那个Baud rate的下拉窗口也要自己手工改成相应的115200)

它的命令我还是不会用,我单独用它的SPEED/115200/b0115命令后程序就死了,这句在写APP功能等里面运行就是对的,不知怎么回事。

cham_810 发表于 2009-1-4 14:19:48

主要是现在我们用的都是免费版,好不容易才找到了个可以写固件的。如果能找到STMEM的完全版,那功能更是强大了。
页: [1] 2 3 4 5 6 7
查看完整版本: ST_MEM常规应用