[转载] ST_MEM常规应用

[复制链接]
  • TA的每日心情
    开心
    2014-10-29 09:53
  • 签到天数: 226 天

    [LV.7]四品道员

    93

    主题

    1312

    回帖

    2万

    积分

    Intohard Team

    Rank: 7Rank: 7Rank: 7

    积分
    22407
    QQ
    发表于 2011-1-21 11:51:22 | 显示全部楼层 |阅读模式
    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说明书。每个系列的偏移位置不一样。要灵活运用。
       1.JPG (55.06 KB)

    2009-1-3 11:36
    如图当中的位置,我们备份ATA扇区方法如下:
    R_SECTORS/E5DA/0/200/0/240/OVL.BIN/1/1
                 磁道 磁头 缓冲大小 起始扇区 要读的扇区大小 文件名   覆盖   最详细报告
                   E5DA 0   200      0          240    OVL.BIN   1(是)   1(是)   
    依此类推:
    按照说明书,找到CERT CERT TABLE VEN 所在偏移,用SYS=后的起始磁道,加上各自偏移得到各各位置。之后备份所需大小即可。
    一般来说:
    ATA 是280 APP是180 CERT是240 TABLE是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.14 01-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.14 01-16-03 11:51
    Head Mask 0000 - Switch to full int.
                  Spin Ready
    3.06 10-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调用了。
    大家也可以自己编写自己喜欢和常用的命令来方便修盘。

    该用户从未签到

    21

    主题

    63

    回帖

    1129

    积分

    [INTOHARD]营长

    Rank: 6Rank: 6

    积分
    1129
    发表于 2011-3-1 00:57:53 | 显示全部楼层
    非常感谢楼主,能不能详细解释一下回写脚本的那几个参数
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    1

    主题

    1894

    回帖

    7059

    积分

    [INTOHARD]团长

    Rank: 8Rank: 8

    积分
    7059
    QQ
    发表于 2011-6-28 18:51:30 | 显示全部楼层
    thanks[s:18][s:18]
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2014-1-1 10:33
  • 签到天数: 1 天

    [LV.1]布衣百姓

    37

    主题

    155

    回帖

    3778

    积分

    [INTOHARD]团长

    Rank: 8Rank: 8

    积分
    3778
    发表于 2012-3-11 12:05:28 | 显示全部楼层
    免费版的ST_mem能实现这些功能吗
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    快速回复 返回顶部 返回列表