Main > Free Download Search >

Free assembler software for linux

assembler

Sponsored Links
Sponsored Links
Secleted [ 0 ] software to compare
Results 1 - 15 of about 90
B::Assembler 5.8.8

B::Assembler 5.8.8


B::Assembler is a Perl module created to assemble Perl bytecode. more>>
B::Assembler is a Perl module created to assemble Perl bytecode.

SYNOPSIS

use B::Assembler qw(newasm endasm assemble);
newasm(&printsub); # sets up for assembly
assemble($buf); # assembles one line
endasm(); # closes down

use B::Assembler qw(assemble_fh);
assemble_fh($fh, &printsub); # assemble everything in $fh

<<less
Download (12.2MB)
Added: 2007-06-25 License: GPL (GNU General Public License) Price:
851 downloads
P65 Assembler 0.7.2

P65 Assembler 0.7.2


P65 Assembler is a Portable 6502 cross-assembler. more>>
The P65 assemblers are assemblers for the 6502 microprocessor (such as is used in the Commodore 64, Apple II, and Nintendo Entertainment System).
They are designed to be able to support a wide variety of output formats, both to support multiple target platforms and to produce code for emulators.
The eventual goal of P65 is to be as expressive as the more powerful assemblers of the late 80s, such as DASM. Its not there yet, but its getting there.
Main features:
- Highly portable - All versions of P65 are written in portable scripting languages. The original releases were done in Perl. While P65-Perl 1.1 is stable and reasonably powerful, it lacks some major features, such as modules and macros. P65-Ophis, the Python port, will run on slightly fewer architectures, but will still run on all current major systems.
- Flexible output format - P65 allows for very flexible control over data and assemble points. Output file formats are completely independent of the final memory maps.
- Multiple file support - libraries may be kept as seperate files and included seperately, facilitating code reuse.
- Temporary label support - source may contain "anonymous labels" that help decrease namespace pollution. P65-Ophis also supports named temporary labels that only exist within a well-defined scope.
- Assemble-time expressions - P65-Ophis supports High-byte/low-byte computations along with bitmasking and traditional arithmetic operations in code and data statements. Access to the current PC is also supported. P65-Perls expressions are more limited but are generally sufficient.
- Symbol table management - Allows for creating labels and data constants outside of the code, and for allocating RAM symbolically. This includes full support for segments.
- Optimal instruction selection - Compresses as many instructions as possible into zero page format. If this compression permits other instructions to become zero page instructions, it will compress those as well.
<<less
Download (0.02MB)
Added: 2005-04-22 License: BSD License Price:
926 downloads
MiniDV Assembler 0.96

MiniDV Assembler 0.96


MiniDV Assembler application is particularly useful for owners of digital MiniDV cameras. more>>
MiniDV Assembler application is particularly useful for owners of digital MiniDV cameras and others who use the Sony MiniDV format for high quality video production.

MiniDV Assembler allows you to append multiple MiniDV files with nice looking transition effects for both audio and video. Multiple transition effects are supported, like cross-fade, zoom, blur and a flash effect.

I created MiniDV Assembler because there are no easy to use video editing applications for Linux yet. Yes, Kino is promising, but its user interface is still a mess and development is slow.

MiniDV Assembler only touches the head and tail parts of the original video files that are needed to create the transition effects. The rest of the video is left untouched, which means zero quality loss.

MiniDV Assembler can also be used to generate video editing scripts that can be run without KDE and Kommander.

<<less
Download (0.024MB)
Added: 2006-06-10 License: GPL (GNU General Public License) Price:
1232 downloads
Gif Assembler beta .96

Gif Assembler beta .96


Gif Assembler is a Web-based frontend for Gifsicle which allows users to create GIF animations from existing GIF images. more>>
Gif Assembler is a Web-based frontend for Gifsicle which allows users to create GIF animations from existing GIF images.
With Gif Assembler you can upload up to 99 GIF images as the frames for the animation.
Enhancements:
- Changes some syntax for better path detection, changes default optimisation, and adds an ImageMagick option.
- Minor bugfixes.
<<less
Download (0.004MB)
Added: 2005-11-29 License: Other/Proprietary License with Source Price:
1439 downloads
Flat Assembler 1.67.21

Flat Assembler 1.67.21


Flat Assembler is an extremely fast and efficient x86 assembler. more>>
The flat assembler is a fast and efficient self-assembling 80x86 assembler for DOS, Windows, and Linux operating systems. Currently, it supports all 8086-80486/Pentium instructions with MMX, SSE, SSE2, SSE3, and 3DNow! extensions.
It can produce output in binary, MZ, PE, COFF, or ELF format. Flat Assembler includes the powerful but easy-to-use macroinstruction support, and does multiple passes to optimize the instruction codes for size. The flat assembler is entirely written in assembly language.
Enhancements:
- 32-bit relocations are now allowed in PE64 output format.
- EIP-relative addressing was added.
- The PLT operator was added for the ELF output format.
- SSSE3 (Supplemental SSE3) instructions were added.
- Some Win64 headers and examples were provided in the Windows package.
- The SYSRETQ mnemonic was added, and RDMSRQ/WRMSRQ/SYSEXITQ mnemonics were added for the 64-bit variants of respective instructions.
- R8L-R15L (Intel-style) aliases were added for R8B-R15B registers. Support for the AMD SVM technology instructions was added. Numerous bugs were fixed.
<<less
Download (0.17MB)
Added: 2007-03-20 License: BSD License Price:
958 downloads
DV Video Assembler 0.93

DV Video Assembler 0.93


DV Video Assembler allows you to append multiple Sony DV files. more>>
This application is particularly useful for owners of digital DV video cameras and other people who use the Sony DV video format for high quality video production.

DV Assembler allows you to append multiple Sony DV files with nice looking transition effects for both audio and video. Multiple transition effects are supported, like cross-fade, zoom, blur and a flash effect.

I created DV Assembler because there are no user friendly video editing applications for Linux. Yes, Kino is promising, but its user interface is still a mess and development is slow.

DV Assembler only touches the head and tail parts of the original video files that are needed to create the transition effects. The rest of the video is left untouched, which means zero quality loss.

DV Assembler can also be used to generate video editing scripts that can be run without KDE and Kommander.

<<less
Download (0.023MB)
Added: 2005-09-21 License: GPL (GNU General Public License) Price:
1498 downloads
Advanced Assembler 0.9.0

Advanced Assembler 0.9.0


Advanced Assembler is a multi-platform and modular assembler. more>>
Aasm is an advanced assembler designed to support several target architectures. It has been designed to be easily extended and, should be considered as a good alternative to monolithic assembler development for each new target CPUs and binary file formats.

Aasm should make assembly programming easier for developer, by providing a set of advanced features including symbol scopes, an expressions engine, big integer support, macro capability, numerous and accurate warning messages.

Its dynamic modular architecture enables Aasm to extend its set of features with plug-ins by taking advantages of dynamic libraries.

The input module supports Intel syntax (like nasm, tasm, masm, etc.). The x86 assembler module supports all opcodes up to P6 including MMX, SSE and 3DNow! extensions.

F-CPU and SPARC assembler modules are under development. Several output modules are available for ELF, COFF, IntelHex, and raw binary formats.
<<less
Download (0.03MB)
Added: 2005-04-22 License: GPL (GNU General Public License) Price:
1648 downloads
Rational PIC Assembler 2.0

Rational PIC Assembler 2.0


Rational PIC Assembler is a mid-range PIC assembler with Intel style syntax. more>>
Rational PIC Assembler is an assembler for the mid-range microcontrollers from Microchip. The project uses Intel style mnemonics and target-first operand ordering. Designed to feel comfortable to PC assembly programmers.
This assembler generates code compatible with Microchips midline microcontrollers but is incompatible with their assembler. It should feel familiar to any PC assembly programmer. The instruction mnemonics and operand order are Intel style ( i.e. right, as opposed to wrong ).
Command Line Syntax
pic-asm [ -c ] [ -l filename ] [ -o filename ] input_file
-c -- console mode
an assembly source is accepted from stdin. binary code is
output on stdout. errors are output to stderr
-l filename -- specify listing file
-o filename -- specify object file
Input
The input is a sequence of line each of which contains one or more of the following fields
label instruction operands ; comment
The label and comment are optional. The operands required depend on the instruction.
The assembler is case sensitive, even for instructions.
Constants
Hex values can be specified with C-style 0x[:xdigit:]+. Binary values can be specified with 0b[01]+. Decimal values require no prefix as decimal is the default base.
Character constants are specified by enclosing a single character or escaped character within single quotes. String constants are specified by enclosing zero or more characters and escaped characters within double quotes. String constants generate one character constant for each character in the string. There is no trailing zero stored. For example:
db "Hello worldn", 0, a, b, r, n, t
Labels
A label is a sequence of alphanumeric characters ( including underbar ) that starts a line. Labels do not have colons. Labels local to the last nonlocal label can be defined by prefixing the name with a dot. For instance
; example from example-1.asm
foo call .1
.1 jmp .2
.2 jmp .1
bar call .1
.1 jmp .2
.2 jmp .1
In this example, the labels defined are foo, foo.1, foo.2, bar, bar.1, and bar.2. The first call branches to foo.1. The second call branches to bar.1. The labels local to foo can not be referenced before foo has been declared nor after bar has been declared.
Directives
Data can be declared. The declarator takes the place of the instruction and is followed by one or more expressions separated by commas. Each expression corresponds to one word in the output code regardless of the declarator type.
db - each operand is AND-ed with 0xff before being stored
dw - full 14 bit word definition
dt - each operand is AND-ed with 0xff and OR-ed with 0x3400 ( the return-with-value opcode ). This allows generation of case tables. You can add the accumulator ( w ) to the offset of the table. The processor will branch to the location in the table and return with an eight bit result
For instance:
db 1,2,3
dw 0x3fff, 0x3ff * 16 + 15, -1
dt 0b001, 0b010, 0b100
Equates are a named sequence of tokens. They can be defined with equ. For instance:
led_1 equ 0x100 | 1
led_2 equ 0x100 | 2
combo equ ( led_1 ) | ( led_2 )
The org position can be changed with org. For instance
org 0x10o
Enhancements:
- This release adds support for sophisticated macros, include files, conditional compilation, and compatibility with Microchip headers.
<<less
Download (0.040MB)
Added: 2006-10-31 License: GPL (GNU General Public License) Price:
1090 downloads
Vertex 3D Model Assembler 0.1.15

Vertex 3D Model Assembler 0.1.15


Vertex 3D Model Assembler project is a polygon-based live-end modeller. more>>
Vertex 3D Model Assembler project is a polygon-based live-end modeller.

The Vertex 3D Model Assembler is a 3D modeller geared towards making high performance models for games and other live-end requirements.

It uses the V3D format to maximize efficiency with OpenGL rendering, and can view/edit any V3D hybrid data.

<<less
Download (1.1MB)
Added: 2006-11-06 License: GPL (GNU General Public License) Price:
1102 downloads
NASM - The Netwide Assembler 0.99.00

NASM - The Netwide Assembler 0.99.00


NASM - The Netwide Assembler is 80x86 assembler designed for portability and modularity. more>>
NASM is an 80x86 assembler designed for portability and modularity. The project supports a range of object file formats including Linux a.out and ELF, COFF, Microsoft 16-bit OBJ and Win32. It will also output plain binary files.
Its syntax is designed to be simple and easy to understand, similar to Intels but less complex. It supports Pentium, P6, MMX, 3DNow! and SSE opcodes, and has macro capability. It includes a disassembler as well.
The Netwide Assembler grew out of an idea on comp.lang.asm.x86 (or possibly alt.lang.asm - I forget which), which was essentially that there didnt seem to be a good free x86-series assembler around, and that maybe someone ought to write one.
- a86 is good, but not free, and in particular you dont get any 32-bit capability until you pay. Its DOS only, too.
- gas is free, and ports over DOS and Unix, but its not very good, since its designed to be a back end to gcc, which always feeds it correct code. So its error checking is minimal. Also, its syntax is horrible, from the point of view of anyone trying to actually write anything in it. Plus you cant write 16-bit code in it (properly).
- as86 is Minix- and Linux-specific, and (my version at least) doesnt seem to have much (or any) documentation.
- MASM isnt very good, and its (was) expensive, and it runs only under DOS.
- TASM is better, but still strives for MASM compatibility, which means millions of directives and tons of red tape. And its syntax is essentially MASMs, with the contradictions and quirks that entails (although it sorts out some of those by means of Ideal mode). Its expensive too. And its DOS-only.
So here, for your coding pleasure, is NASM. At present its still in prototype stage - we dont promise that it can outperform any of these assemblers. But please, please send us bug reports, fixes, helpful information, and anything else you can get your hands on (and thanks to the many people whove done this already! You all know who you are), and well improve it out of all recognition. Again.
Installing NASM under Unix
Once youve obtained the Unix source archive for NASM, nasm-X.XX.tar.gz (where X.XX denotes the version number of NASM contained in the archive), unpack it into a directory such as /usr/local/src. The archive, when unpacked, will create its own subdirectory nasm-X.XX.
NASM is an auto-configuring package: once youve unpacked it, cd to the directory its been unpacked into and type ./configure. This shell script will find the best C compiler to use for building NASM and set up Makefiles accordingly.
Once NASM has auto-configured, you can type make to build the nasm and ndisasm binaries, and then make install to install them in /usr/local/bin and install the man pages nasm.1 and ndisasm.1 in /usr/local/man/man1. Alternatively, you can give options such as --prefix to the configure script (see the file INSTALL for more details), or install the programs yourself.
NASM also comes with a set of utilities for handling the RDOFF custom object-file format, which are in the rdoff subdirectory of the NASM archive. You can build these with make rdf and install them with make rdf_install, if you want them.
If NASM fails to auto-configure, you may still be able to make it compile by using the fall-back Unix makefile Makefile.unx. Copy or rename that file to Makefile and try typing make. There is also a Makefile.unx file in the rdoff subdirectory.
Enhancements:
- adds 64-bit support "-f macho" output format "265th extern" bug in "-f obj" fixed(?)
<<less
Download (MB)
Added: 2007-05-24 License: GMGPL (GNAT Modified GPL) Price:
921 downloads
libdisassemble

libdisassemble


libdisassemble is a Python library that will disassemble X86. more>>
libdisassemble is a Python library that will disassemble X86.

A disassembler is a computer program which translates machine language into assembly language, performing the inverse operation to that of an assembler. A dissasembler differs from a decompiler, which targets a high level language rather than assembly language. Disassembly, the output of a disassembler, is often formatted for human-readability rather than suitability for input to an assembler, making it principly a reverse-engineering tool.

Assembly language source code generally permits the use of symbolic constants and programmer comments. These are usually removed from the final machine code by the assembler. If so, a disassembler operating on the machine code would produce disassembly lacking these constants and comments; the dissassembled output becomes more difficult for a human to interpret than the original annotated source code.

Some disassemblers can infer useful names and comments; however, interactive disassemblers are able to successfully disassemble more programs than fully-automated disassemblers because human insight applied to the disassembly process parallels human creativity in the code writing process.

There can never be a completely automated disassembly tool which always outputs correct source code because the disassembly process reduces to the impossible-to-solve halting problem.
<<less
Download (0.023MB)
Added: 2006-03-10 License: GPL (GNU General Public License) Price:
1325 downloads
AsmFile 0.9.15

AsmFile 0.9.15


AsmFile is a small and fast file manager written in assembler. more>>
AsmFile is a small and fast file manager written in assembler.

AsmFile project uses a two pane interface like "mc" and other file managers. AsmFile runs in a console or a terminal window.

Assembly has been ignored by much of the Unix/Linux community and is almost never found in desktop applications. Some of the reasons for this are historical and related to portability. Other reasons include negative images of assembly and lack of tools. Today a small niche exists for assembly on the desktop. This will be explored here along with the supporting tools.

The resources section provides links to more information and places to discuss assembler topics. Of special interest to the author is a section of predictions and history. A email list for programmers interested in Desktop assembly is described in the resources section.

The AsmIDE family of programs are currently underdevelopment and some have reached a useful state.
<<less
Download (0.32MB)
Added: 2005-12-30 License: GPL (GNU General Public License) Price:
1395 downloads
AsmXml 0.3

AsmXml 0.3


AsmXml is a very fast XML parser and decoder for x86 platforms. more>>
AsmXml is a very fast XML parser and decoder for x86 platforms. The project achieves high speed by using the following features:
- Written in pure assembler
- Optimized memory accesses
- Parsing and decoding at the same time
To give an idea of the relative speed of AsmXml, the fastest open source XML parsers process between 10 and 30 MBs of XML per seconds while AsmXml processes around 200 MBs per seconds (on an Athlon XP 1800+).
This parser is intended for applications that need intensive processing of XML. This project will likely appeal you if XML parsing is a bottleneck in your data-flow. For instance, it is well suited for bulk loads into databases.
This is not an all-purpose library, it is not designed to be used with DOM, SAX, XPath and so on. Here, XML is just considered as an interchange format, not as a working format. The aim of this library is to load quickly an XML document into a C structure.
Enhancements:
- This release adds support for mixed content, schema files implement more features, and elements can be now identified with an integer ID, allowing fast recognition using switch/case C statements.
- A very rudimentary Docbook-to-HTML converter has been added to show the use of the parser with mixed content.
- This release also includes the object file and makefiles for Mac OS X (intel).
<<less
Download (0.093MB)
Added: 2007-05-31 License: BSD License Price:
876 downloads
DSP5600x disassembly library 1.1

DSP5600x disassembly library 1.1


DSP5600x disassembly library is a code disassembly library for the Motorola DSP5600x. more>>
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).
<<less
Download (0.012MB)
Added: 2005-03-07 License: BSD License Price:
1693 downloads
Z80-ASM

Z80-ASM


Z80-ASM is a Z80 assembler and debugger. more>>
Z80-ASM is a compiler/assembler and monitor(including disassembler) for the Z80 CPU. It runs under Linux (probably also under other UNIX-flavours) and DO$ (DJGPP version 2.03 checked). Its written in C and source-code availible!
Each Z80-ASM package contains a compiler for the Z80 assembling language and a monitor including an interactive debugger. Compiler is a two-pass one, which knows all documented Z80 instructions. It has labels, comments and since 2.1 can even evaluate constant arithmetic expressions.
Debugger is interactive, it shows content of all registers, memory, stack, program. You can trace program, trace it step by step, modify program, registers and content of memory, load and save parts of memory.
Installation:
Everything you need to run the Z80-ASM is Linux or DO$ system (it should also work on other Unixes) and GCC/DJGPP compiler.
To install the Z80-ASM you must do following:
- download and unpack the archive
- cd to the just created z80-asm directory
- read the INSTALL file
- according to instructions youve read install the Z80-ASM :) but typically a make will do what you want.
<<less
Download (0.47MB)
Added: 2005-04-22 License: GPL (GNU General Public License) Price:
1664 downloads
Secleted [ 0 ] software to compare
  • Page: 1 of 5
  • 1
  • 2
  • 3
  • 4
  • 5