ASxxxx Cross Assemblers, Version 1.7, November 1995 Submitted by Alan R. Baldwin, Kent State University, Kent, Ohio Operating System: TSX+, RT-11, MS/DOS, PDOS or other supporting K&R C. Source Langauge: C Abstract: The ASxxxx assemblers are a series of microprocessor assem- blers written in the C programming language. This collection contains cross assemblers for the 6800(6802/6808), 6801(hd6303), 6804, 6805, 68HC08, 6809, 6811, 68HC16, 8085(8080), z80(hd64180), H8/3xx, and 6500 series microprocessors. Each as- sembler has a device specific section which includes: (1) device description, byte order, and file extension information, (2) a table of assembler general directives, special directives, assembler mnemonics and associated operation codes, (3) machine specific code for processing the device mnemonics, addressing modes, and special directives. The assemblers have a common device independent section which handles the details of file input/output, symbol table genera- tion, program/data areas, expression analysis, and assembler directive processing. The assemblers provide the following features: (1) alpha- betized, formatted symbol table listings, (2) relocatable object modules, (3) global symbols for linking object modules, (4) con- ditional assembly directives, (5) reusable local symbols, and (6) include-file processing. The companion program ASLINK is a relocating linker perform- ing the following functions: (1) bind multiple object modules into a single memory image, (2) resolve inter-module symbol references, (3) resolve undefined symbols from specified librarys of object modules, (4) process absolute, relative, con- catenated, and overlay attributes in data and program sections, (5) perform byte and word program-counter relative (pc or pcr) addressing calculations, (6) define absolute symbol values at link time, (7) define absolute area base address values at link time, (8) produce Intel Hex or Motorola S19 output file, (9) produce a map of the linked memory image, and (10) update the ASxxxx assembler listing files with the absolute linked ad- dresses and data. The assemblers and linker have been tested using DECUS C under TSX+ and RT-11, PDOS C V5.4b, and Symantec C/C++ V6.1/V7.0 under DOS/Windows 3.x. Complete source code and documentation for the assemblers and linker is included with the distribution. Additionally, test code for each assembler and several micropro- cessor 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.