纪念arm-axd 的批命令

; ---------------------------------------------------------------------------
Author: hjjdebug
Time:   2009-8-5 10:35
Filename: 纪念arm-axd 的批命令.txt
; ---------------------------------------------------------------------------

问题的提出:
    有一段二进制程序,我需要调试它的一个函数。这个函数有一个参数是buffer 数据。
    它的输出还是这个buffer, 不过数据会改掉。
    要调试这个函数,我们需要设置buffer数据,设置堆栈值和设置pc 指针指向这个函数。
    好了,这是主要的要求。
   
问题分析:
    arm axd 是一个强大的调试环境,它有命令行shell可以实现调试控制,更有批命令使我们解脱
    频繁敲击相同命令的烦恼。 是啊! 批命令,I love it.

下面给出这个问题的解决方案。
编写批命令文件,存为ecm.txt
cat ecm.txt
    loadbinary D:/mywork/TaiXin_NoCard/zhangwj/ecmEncrypt.bin 0x0
    setreg r0 0
    setreg r13 0x2000
    fmem 0x1d64 0x1da4 0
    com setreg r1 0x1000
    setpc 0xcd420   
   
; ---------------------------------------------------------------------------
下面给出命令行注释。
; ---------------------------------------------------------------------------
    loadbinary D:/mywork/Encrypt.bin 0x0  //初始化数据区
    setreg r0 0                              //设置第一参数指针
    setreg r13 0x2000                      // 设置函数堆栈
    fmem 0x1d64 0x1da4 0                  // 清空一段数据区(初始化),方便观察
    com setreg r1 0x1000                  // comment 注释语句,哎! 该script 就是这样注释的。
    setpc 0xcd420                          // 设定pc 指针。
下面,就是你的调试了。   

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值