The Amsterdam Compiler Kit is a fully-featured retargetable compiler toolchain. It will cross-compile ANSI C, K&R C, Pascal, Modula-2, Occam, Fortran and Basic for a number of architectures including, but not limited to, the 6500, 68000, Z80, i80, i86, i386, and PDP-11. It provides a complete development environment including preprocessors, compilers, assemblers, linkers, librarian tools, and target download tools.
Aasm is an advanced modular assembler designed to support several target architectures. It has been designed to be easily extended. Its global architecture takes advantages of dynamic libraries to provide input, assembler and output modules. 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. Advanced features include symbol scopes, an expressions engine, big integer support, macro capability, and numerous and accurate warning messages (over 300).
KMD is a multi-processor debugger. It can debug with hardware boards over serial ports or with software emulators (ARM and MIPS emulators are included in the project). Using the pipe option you can debug over the network or any other communication medium. It can load many executable formats such as ELF, and display and follow the original source even from multiple source file programs. There is support for breakpoints and watchpoints which can trap on specific data (such as loading or executing specific instructions). Support for other features such as FPGA's is also available, allowing loading or any control required to drive a specific hardware device. The project uses chump to allow disassembly and line assembly. Chump also allows new architectures to be easily added without the need to recompile the system. Communication with the backend is done using two pipes/fifos using a simple set of codes. Back end communication program can be created using very little memory on the target device.
Chump is a table-driven assembler and dissembler with a very fast new architecture input format. Both the assembler and disassembler are created using a single description. It comes with descriptions for ARM, MIPS, Stump, and 6809. It is intended for use as a library compiled with other programs to allow line assembly and disassembly.
The Amazing Awk Assembler (aaa) is a primitive assembler written entirely in awk and sed. It is quite slow, the input syntax is eccentric and rather restricted, and error checking is virtually nonexistent, but it does work. Furthermore it's very easy to adapt to a new machine, provided the machine falls into the generic "8-bit-micro" category.
The Perl Dev Kit (PDK) provides essential tools for building and deploying Perl applications. PDK features cross-platform wrapping and application builders for various operating systems, plus a suite of tools to speed development time and improve code quality and consistency across teams.
h2incn tries to directly convert C/C++ headers to Nasm-style include files, and can be used in a makefile. It is useful if you want to use the same structures or external variable declarations in C and assembler code, and you don't want to use two separate files and update both each time you change something. It is written in a mix of C and C++ code. It currently works for simple files.