Download Shareware and Freeware Software for Windows, Linux, Macintosh, PDA

line Home  |  About Us  |  Link To Us  |  FAQ  |  Contact

Serving Software Downloads in 976 Categories, Downloaded 32.389.160 Times

DSP5600x disassembly library 1.1

  Date Added: October 07, 2010  |  Visits: 813

DSP5600x disassembly library

Report Broken Link
Printer Friendly Version

Product Homepage
Download (74 downloads)

lib5600x is a library implementing Motorola DSP5600x disassembler. Its an ANSI C link library that should be useful for people writing debuggers, memory monitors etc for DSP5600x chips. Usage 1. First you call two initialization functions in the library. This step is mandatory: make_masks(); make_masks2(); You pass nothing and check for no results -- these functions are guaranteed to succeed. 2. Now you have to allocate memory for a structure that will be used for passing data to/from the library. You may do that on the stack struct disasm_data dis, *d = &dis; Yes, the pointer will be useful, too. The disasm_data structure is defined in 5600x_disasm.h file. Lets take a closer look: #define LINE_SIZE 256 struct disasm_data { unsigned char *memory; char line_buf[LINE_SIZE]; char *line_ptr; char words; }; First member -- "memory" -- should point to the opcode you want disassembled. IMPORTANT! The library expects it to be a 24-bit word, so if your assembler creates 32-bit words, youll have to make a simple conversion. Take a look at test.c to see how it is done. Whats more, the library may wish to evaluate two words at a time, so you have to account for that -- this is also demonstrated in the example source. 3. After properly setting up disasm_data struct (i.e. "memory" pointer), you call following function: int disassemble_opcode(struct disasm_data *); This function takes pointer to the struct youve just prepared as an argument. When it returns, disasm_data structs "line_buf" member contains the disassembled opcode as a string of ASCII characters. "line_ptr" should be of no interest to you (it is merely a internal variable) and "words" holds the number of 24-bit words you should advance your memory pointer by. This variable is also available as a return value of above function. Again, I shall refer you to the example source. 4. Repeat step 3 until you run out of code to disassemble. Testing First, check out the makefile and make sure it contains proper flags and defines for your architecture. Big endian users should add -DBIGENDIAN to CFLAGS (Id appreciate if someone created Autoconf script to avoid such tricks). Following that, type make ./test example_dsp_binary and compare the output (visually) with example.a56 which is a source code I used to create example_dsp_binary and which contains all instructions and addressing modes described in DSP56000/DSP56001 Digital Signal Processor Users Manual. You can also diff your output and supplied example.out file to check if there are any differences (there should be none).. Get DSP5600x disassembly library at Fast, secure and free downloads from the largest Open Source applications and software directory. lib5600x is a library implementing Motorola DSP5600x disassembler. It's an ANSI C link library that should be useful for people writing debuggers, memory monitors etc for DSP5600x chips.

Requirements: No special requirements
Platforms: Linux
Keyword: Data Disasm Disassemblers Disassembly Library Line Memory Programming
Users rating: 0/10

License: Freeware Size: 12.29 KB
More Reviews or Write Review

Libraries  -  Memory Structures Library 4.0
Memory Structures Library (MemSL) is a complete data structures/collection classes library with memory tracing, memory debugging, entry/exit tracing, exception handling, definable memory handlers, built-in thread support, and much more. The...
839.68 KB  
Programming  -  pymsasid 0.3.1
Pym's is a pure python disassembly library. It is merely a port of udis86 to python. At the moment it is a one shot project. But I'll do a some support.
30.72 KB  
Libraries  -  Aapl C++ Template Library 2.14
Aapl is a C++ template library for generic programming. Aapl supports different generic programming paradigms by providing variations of standard data structures. For example, a by-value linked list template may be used to store a user supplied...
122.88 KB  
Libraries  -  Sunrise Data Dictionary 1.00
Sunrise Data Dictionary is a library for hashtable storage of arbitrary data objects with built-in reference counting and guaranteed order iteration for the C programming language. Sunrise Data Dictionary library can participate in external...
174.08 KB  
Libraries  -  Erwin Data Structures 2.1.58633
Erwin Data Structures is a library that is meant to be the ultimate data structure library for mixed usage of C and C++. Arbitrary key and value types are implemented by template files that dont use C++ templates, but are instantiated by a Perl...
686.08 KB  
Libraries  -  libnetfilter_conntrack 0.0.30
libnetfilter_conntrack is a userspace library providing a programming interface (API) to the in-kernel connection tracking state table. libnetfilter_conntrack has been previously known as libnfnetlink_conntrack and libctnetlink....
215.04 KB  
Audio Tools  -  DVD Library Manager
DVD Library Manager for Vista Media Center (VMC) is a free Windows program which allows you to edit the DVD information (meta data) used by DVD Library in Vista Media Center (VMC). It can download additional movie information from and...
Backup Utilities  -  potrero 1.0
Potrero is an open source Java library that streamlines programming by automatically managing data. Because Potrero decides where to store data and what to call it, it frees developers to focus on their applications, not storage management.
737.65 KB  
Utilities  -  pyFLTK 0.4
JNI++ is a set of two code generating utilities and a core C++ library that simplify programming to the Java Native Interface (JNI) with C++. The first of these utilities is used to generate C++ "proxy" classes given a Java class or interface, and...
1.38 MB  
Programming  -  Xtirer 1.0
Xtirer is a lightweight, easy to deploy solution to get formatted output from MYSQL Database by only defining the objects, their data source and optional data manipulation without writing a line of code.
29.93 KB  
Linux Software  -  wpCache® WordPress HTTP Cache 1.9
wpCache® is a high-performance, distributed object, caching system application, generic in nature, but intended for use in speeding up dynamic web applications, by decreasing database load time. wpCache® decreases dramatically the page...
3.51 MB  
Linux Software  -  Polling Autodialer Software 3.4
ICTBroadcast Auto Dialer software has a survey campaign for telephone surveys and polls. This auto dialer software automatically dials a list of numbers and asks them a set of questions that they can respond to, by using their telephone keypad....
488 B  
Linux Software  -  Total Video Converter Mac Free 3.5.5
Total Video Converter Mac Free developed by EffectMatrix Ltd is the official legal version of Total Video Converter which was a globally recognized brand since 2006. Total Video Converter Mac Free is a free but powerful all-in-one video...
17.7 MB  
Linux Software  -  Skeith mod_log_sql Analyzer 2.10beta2
Skeith is a php based front end for analyzing logs for Apache using mod_log_sql.
47.5 KB  
Linux Software  -  SLAX 6.0+
Slax is a modern, portable, small and fast Linux operating system with a modular approach and outstanding design. Despite its small size, Slax provides a wide collection of pre-installed software for daily use, including a well organized graphical...
190 KB  
Programming  -  Cedalion for Linux 0.2.6
Cedalion is a programming language that allows its users to add new abstractions and define (and use) internal DSLs. Its innovation is in the fact that it uses projectional editing to allow the new abstractions to have no syntactic limitations.
471.04 KB  
Programming  -  Math::GMPf 0.29
Math::GMPf - perl interface to the GMP library's floating point (mpf) functions.
30.72 KB  
Programming  -  Net::Wire10 1.08
Net::Wire10 is a Pure Perl connector that talks to Sphinx, MySQL and Drizzle servers. Net::Wire10 implements the low-level network protocol, alias the MySQL wire protocol version 10, necessary for talking to one of the aforementioned...
30.72 KB  
Programming  -  logilab-common 0.56.2
a bunch of modules providing low level functionnalities shared among some python projects devel Please note that some of the modules have some extra dependencies. For instance, logilab.common.db will require a db-api 2.0 compliant...
174.08 KB  
Programming  -  OpenSSL for linux 1.0.0a
The OpenSSL Project is a collaborative effort to develop a robust, commercial-grade, full-featured, and Open Source toolkit implementing the Secure Sockets Layer (SSL v2/v3) and Transport Layer Security (TLS v1) protocols as well as a...
3.83 MB