Embedded trace32-将多个地址范围的内存转储到单个二进制文件

Embedded trace32-将多个地址范围的内存转储到单个二进制文件,embedded,trace32,lauterbach,Embedded,Trace32,Lauterbach,我正在使用Lauterbach调试器从不同的内存段转储到二进制文件。到目前为止,我已经使用 data.save.binary output1.txt var.Range(sDummyArray[startRange1..endRange1]) data.save.binary output2.txt var.Range(sDummyArray[startRange2..endRange2]) ... 是否有一种方法可以将多个二进制(内存转储)文件“缝合”在一起,生成一个二进制文件,或者使

我正在使用Lauterbach调试器从不同的内存段转储到二进制文件。到目前为止,我已经使用

data.save.binary output1.txt var.Range(sDummyArray[startRange1..endRange1])

data.save.binary output2.txt var.Range(sDummyArray[startRange2..endRange2]) 

...

是否有一种方法可以将多个二进制(内存转储)文件“缝合”在一起,生成一个二进制文件,或者使用我错过的trace32命令将每个内存转储附加到一个文件?

要将多个地址范围从目标内存保存到同一个二进制文件,请使用命令
Data.save.binary
及其选项“/append”。该选项将新数据追加到给定文件的末尾

例如:


对于TRACE32旧版本63378,您可以使用调试器的虚拟内存(如果不用于其他用途),如下所示:

PRIVATE &size1 &size2   
&size1=Var.VALUE((sDummyArray+endRange1)-(sDummyArray+startRange1))
&size2=Var.VALUE((sDummyArray+endRange2)-(sDummyArray+startRange2))
Data.COPY Var.RANGE(sDummyArray[startRange1..endRange1]) VM:0
Data.COPY Var.RANGE(sDummyArray[startRange2..endRange2]) VM:&size1
Data.SAVE.Binary output1.txt VM:0++(&size1+&size2-1)

因此,这里的想法是通过
数据收集所有数据。将
复制到虚拟内存中,并将其保存到二进制文件中。

data.save.binary在2015年9月之前发布的TRACE32版本中没有/Append选项

我可以使用

OS.Command copy /b output1.txt + output2.txt output.txt

什么版本的trace32?在我的“2015年2月发布”(64位)版本中没有看到此选项。对于/Append选项,您需要TRACE32 build 63378。这是2015年9月发布(或更新版本)。最好使用
OS.Area
而不是
OS.Command
,因为OS.Command没有阻塞,而
OS.Area
将暂停练习脚本的执行,直到shell命令完成。
OS.Command copy /b output1.txt + output2.txt output.txt