Dan Moos wrote:
BDD, what assembler would you recommend that best adhered to the standard. I still haven't settled on an assembler yet.
Two assemblers I recommend are André Fachat's
xa65 cross-assembler (documentation
right here) and Andrew Jacobs'
Java-powered cross-assembler. Both assemblers support the MOS Technology assembly language syntax standard and generate code for NMOS 6502s, 65C02 and 65C816. They are free for the downloading.
André's assembler is very comprehensive and runs on 64 bit Linux (I've tested it on one of my Linux machines). I don't know if the source can be compiled on a Windows box but I do know André originally developed it on an Atari ST (MC68000 system) and was able to compile the source code as written on Linux.
Andrew's assembler should be able to run on any machine that has the Java run-time installed. He was able to assemble my Supermon 816 program on it, which means it fully understands the 65C816 in native mode.
Use your favorite text editor with either assembler (I use UltraEdit, which while not free as in free beer, is tailor-made for software development).
Quote:
As I learn, I'm discovering that maybe there isn't a hard standard...
The definitive form of the 6502 assembly language is that published by MOS Technology c. 1975. The WDC standard is the MOS Technology standard with additions to cover the 65C816/65C802, primarily in the areas of immediate mode addressing. So there really is a standard for the assembly language itself.
The one place where the standard does not apply is pseudo-operations (assembler directives), such as
.byte or
.word. Assembler developers are free to conjure whatever pseudo-ops they wish. However, most good assemblers use pseudo-ops that are or resemble those published by MOS Technology.