Welcome

ASxxxx Cross Assemblers

ASxxxx Cross Assemblers, Version 3.10, November 2001 

Submitted by Alan R.  Baldwin, 
Kent State University, Kent, Ohio 

Operating System:  MS-DOS, Windows, Linux 
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,  68HC11,  68HC12,   68HC16,   8051,
8085(8080),  z80(hd64180),  GameBoy(Z80),  H8/3xx,  DS8xCxxx and
6500  series  microprocessors.   Each  assembler  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  pro-
cessing  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 S  record  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 GCC 2.7.2
with LINUX, Symantec C/C++ V6.1/V7.2, DJGPP (GCC 2.8.1) and  VC6
with  MS-DOS/Windows  3.x/95/98.   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.  

... View documentation for the ASxxxx Assemblers and Linker

... Recent updates to the ASxxxx Assemblers and Linker

... Get the "ASxxxx Cross Assemblers"

... Reported Bugs / Fixes / ...

... About the Author

... Home Page