Write an Assembler program that translates programs written in the symbolic Hack assembly language into binary code that can execute on the Hack hardware platform built in the previous projects.
To run this program execute the shell script make.sh from the command line. This will generate all the necessary .hack files from .asm files using a python script (Assembler.py)
Once this has been completed open up the Assembler.sh and load up the .asm and corresponding hack files and compare their output.
A Masm compatible assembler for software development. Runs under Windows, Linux, DOS, OS/2 ( and probably other OSes as well ).
For Windows, use file Msvc.mak/Msvc64.mak if Visual C++ is to be used to create a 32-/64-bit version of JWasm. OWWin32.mak will create a 32-bit binary using Open Watcom.
For Linux, use GccUnix.mak to produce JWasm with gcc or CLUnix.mak to use CLang instead.
For DOS, Open Watcom may be the best choice. It even allows to create a 16-bit (limited) version of JWasm that runs on a 8088 cpu. Old versions of Visual C++ are also possible, although you probably need the HX development files then.
For OS/2, OWOS2.mak (Open Watcom) is supplied.
There are a bunch of other makefiles in the main directory, intended for other compilers. Some of them might be a bit outdated.
customasm is an assembler that allows you to provide your own custom instruction sets to assemble your source files! It can be useful, for example, if you're trying to test the bytecode of a new virtual machine, or if you're eager to write programs for that new microprocessor architecture you just implemented in an FPGA chip!
You can install directly from crates.io by running cargo install customasm. Then the customasm application should automatically become available in your command-line environment.
A list of all of the interrupts in the 32-bit x86 CPU architecture.
A disassembler for Windows. One of the best in the field, and v2.0 just went beta. It's shareware, though it doesn't appear to lack any functionality if you haven't purchased it yet.
An open source modular macro assembler that supports a number of CPU architectures out of the box and makes it easy to add new ones.