This is the readme for Stephen Duffy's 8086 Assembler.

A long time ago in a galaxy which is pretty much the same galaxy you are in just
now probably, there was an operating system called DOS. You have likely heard
of an '.exe' file. Well a '.com' file was something like a '.exe' file except
they were designed to work in less that 64kb of memory. Most early dos programs
were .com files.

You will probably need a dos emulator like dosbox to get this program to work.

You just type "asm source.asm" and asm.com will start up reading in whatever is
in the file source.asm. It has to 8086 machine code or it wont work. There is no
support for floating point unit instructions like the 8087 but you can of course
use DB (define byte) instructions to even cause MMX and Crypto functions of the
latest AMD and Intel processors to run ... if you know what you are doing.

The source code has to be less than 64K in size and you cant generate binary
files of greater than 64K in size. The original source code was hugely commented
but the comments had to be stripped away so that the asm.com file could compile
its own source code, which had to be 64k or less in size.

It was designed to be easy to convert for use in any operating system. DOS
function calls are restricted to the file system. It runs on DOS but if you
want to convert it for use in a linux system, then you may want to find the
places where INT 21H calles are made and replace them with appropriate code
for the INT 60H functions of linux.

The first compilation of this was done a long time ago using a shareware
assembler called the A86 assembler which was probably written in a high level
language like C or COBOL. My assembler is unlike any most other offerings in
that it not only assembles 8086 machine code, it is also written in 8086 machine
code without the use of a high level language so it works with very efficiently.

It is released with a GPL2.0 license so feel free to use, abuse, modify, copy,
and blah blah blah, just leave me a mention somewhere in the documentation for
what you come up with.

Stephen Duffy