FV-1拆卸器
disfv1的Python项目详细描述
DISFv1
自旋半FV-1拆卸器
版权所有(c)2019 Nathan Fraser
一种简单的自旋半导体fv-1dsp反汇编程序。这个 反汇编程序将把fv-1二进制程序文件转换为strict fv-1汇编语句,适合与asfv1和 旋转IDE。
要求
- Python>;2.6
安装
$ pip install disfv1
用法
$ disfv1 input.bin output.asm
$ disfv1 -h
usage: disfv1 [-h] [-v] [-q] [-r] [-s] [-p {0,1,2,3,4,5,6,7}] infile [outfile]
Disassemble a single FV-1 DSP program.
positional arguments:
infile binary program file
outfile assembly program output file
optional arguments:
-h, --help show this help message and exit
-v, --version print version
-q, --quiet suppress warnings
-r, --relative use relative skip targets
-s, --suppressraw convert invalid/raw statements into nop
-p {0,1,2,3,4,5,6,7} program number
概述
DISFv1基于FV-1数据表和AN0001“基础”中的信息 FV-1”中的LFO。它将fv-1机器代码分解成严格的 与ASFv1兼容的汇编程序。
这个反汇编程序转换一个128指令的dsp程序二进制 并输出相应的程序集表示。
跳过偏移将自动替换为标签。抑制标签的步骤 而是获取偏移量,使用命令行选项-r(-relative)。
默认情况下,假定源是单个程序。抵消 在银行文件中,使用命令行选项-p(-program)来 选择备用程序。
无效指令被反汇编为“原始”指令,以 用'nop'替换它们使用命令行选项-s(--suppressraw)。
示例
$ disfv1 example.bin
info: Reading input from example.bin
info: Read 9 instructions.
skp RUN,addr03 ; flags:0x10 offset:0x02
ldax POT0 ; reg:0x10
wrax REG0,0.0 ; reg:0x20 k:0x0000
addr03: ldax ADCL ; reg:0x14
mulx REG0 ; reg:0x20
wra 0,0.0 ; del:0x0000 k:0x000
rda 9830,0.5 ; del:0x2666 k:0x100
rda 19660,0.5 ; del:0x4ccc k:0x100
wrax DACL,0.0 ; reg:0x16 k:0x0000
链接
- fv-1汇编程序:https://github.com/ndf-zz/asfv1
- 自旋fv-1网站:http://spinsemi.com/products.html
- 产品介绍:http://spinsemi.com/Products/datasheets/spn1001/FV-1.pdf
- an0001:http://spinsemi.com/Products/appnotes/spn1001/AN-0001.pdf