This section describes the assembly and linking of a moderately complex program. (The project is a multi-channel high voltage control system for the stabilization of nuclear radiation detection equipment.)
... Assembly
... Linking
... Go to Documentation Index
... Assembly
the project files included eleven .asm modules and
four .def include files:
phs.asm system.def
acia.asm area.def
acq.asm define.def
hvctrl.asm data.def
termio.asm
select.asm
status.asm
histos.asm
help.asm
aiconv.asm
phsmon.asm
Each of the modules was assembled individually. This was done
by creating a command file containing the assembly command lines:
as6809 -gloaxzsff phs
as6809 -gloaxzsff acia
as6809 -gloaxzsff acq
as6809 -gloaxzsff hvctrl
as6809 -gloaxzsff termio
as6809 -gloaxzsff select
as6809 -gloaxzsff status
as6809 -gloaxzsff histos
as6809 -gloaxzsff help
as6809 -gloaxzsff aiconv
as6809 -gloaxzsff phsmon
the assembly process produced an object (.rel) file (-s), a listing
(.lst) file (-l), and a symbol (.sym) file (-s) for each individual
.asm file. the assembly process made all undefined labels
global (-g), all internal labels global (-a), the output in HEX
format (-x), and the listing files to have relocations flagged (-ff).
This project required the case sensitive option, -z.
... Linking
The program was linked using a file (PHS.LNK) containing the following
command lines:
-mxsuz
phs
acia
acq
hvctrl
termio
select
status
histos
help
aiconv
phsmon
-b WORKPG = 0x0F00
-b BUFSAV = bufsav
-b PGMSAV = pgmsav
-b IRQVEC = irqvec
-e
and was invoked by the command line:
aslink -f phs
The linking process produced a map (.map) file (-m) in HEX format (-x)
and a Motorola (.s19) loader file (-s). The -b options specify the
memory addresses for certain program sections as defined in the
assembled modules. The file input was terminated by the -e option.