The goal of this assembler is to eventually not be simply an M68K
assembler, but to be relatively easily retargetable. Also, this
assembler should be callable from other CL applications, as well as
executable as a stand-alone program.
The code's not so clean right now, maybe, but I've been using it for
various Atari ST projects for a little while now to great personal
satisfaction.
The a.out object format supported here and by st-linker is not really
quite exactly a.out. It's close, though.
To build this from scratch, you'll need to do something like:
(in the m68k-asm directory)
CL-USER> (asdf:oos 'asdf:load-op :lalr-parser-generator)
CL-USER> (load "m68k-grammar")
CL-USER> (with-open-file (stream "parser.lisp" :direction :output)
(lalr:make-parser m68k-asm::*m68k-asm-grammar*
:package (find-package "M68K-ASSEMBLER")
:stream stream))
I'm going to make that a bit cleaner at some point.