... Building ASxxxx and ASlink
... Building an Assembler
... Building ASlink
... Go to Documentation Index
The assemblers and linker have been tested using Linux, DJGPP, Cygwin, Symantec C/C++ V6.1/V7.2, and VC6 with MS-DOS/Windows 3.x/9x/NT/2000/XP. Complete source code and do- cumentation for the assemblers and linker is included with the distribution. Additionally, test code for each assembler and several microprocessor monitors ( ASSIST05 for the 6805, MONDEB and ASSIST09 for the 6809, and BUFFALO 2.5 for the 6811) are included as working examples of use of these assemblers. The assemblers and linker have been successfully compiled us- ing Linux, Cygwin, DJGPP (GCC 2.8.2), Symantec C/C++ V6.1/V7.2, and VC6. A Linux makefile, Cygwin makefile, DJGPP makefile, Symantec project files, and VC6 project files are available to build all the assemblers and the linker.
... Building an Assembler
The building of a typical assembler (6809 for example) re-
quires the following files:
1. m6809.h
2. m09ext.c
3. m09mch.c
4. m09adr.c
5. m09pst.c
6. asxxxx.h
7. asmain.c
8. asdbg.c
9. aslex.c
10. assym.c
11. assubr.c
12. asexpr.c
13. asdata.c
14. aslist.c
15. asout.c
The first five files are the 6809 processor dependent sec-
tions which contain the following:
1. m6809.h - header file containing the machine specific
definitions of constants, variables, structures, and
types
2. m09ext - device description, byte order, and file ex-
tension information
3. m09pst - a table of the assembler general directives,
special device directives, and assembler mnemonics with
associated operation codes
4. m09mch / m09adr - machine specific code for processing
the device mnemonics, addressing modes, and special
directives
The remaining nine files provide the device independent sec-
tions which handle the details of file input/output, symbol
table generation, program/data areas, expression analysis, and
assembler directive processing.
... Building ASlink
The building of the linker requires the following files:
1. aslink.h
2. lkmain.c
3. lklex.c
4. lkarea.c
5. lkbank.c
6. lkhead.c
7. lksym.c
8. lkeval.c
9. lkdata.c
10. lklist.c
11. lkrloc.c
12. lkrloc3.c
13. lkrloc4.c
14. lklibr.c
15. lknoice.c
16. lksdcdb.c
17. lkout.c