Vsys/Macintosh/ASM/

Up to parent directory

Manual

../doc/AAmanual.e

Source

The Ann Arbor Macro Assembler (AAma) needs relatively few IO functions and does not use the standard IO modules. IO code for the various systems is contained in Vmain.a.
Vmain.a Main program. Initial comments summarize calling sequence options.
Vassm.a Block assembler.
Ctable.a
Instr.a
Emul.a Floating point emulation.
Finals.a
Backw.a Disassembler.
Amacro.e Storage and machine parameter includes.
Aobject.e Included by Backw.a.

Command Files

These scripts build the assembler. Those that produce an executable give it a different name, to keep it from being found as AAma in the execution path, and to help keep track of cross builds. Some scripts that are instructive but less relevant to this distribution have been moved to originals. Some scripts produce a nonexcutable block object file AAma.y, which can be used with the debugger Ldo. Some assemble the software floating point emulation module Emul.a and/or link with Emul.y, which implements the .EMUL assembler directive for systems without hardware floating point.

Those scripts that take a command line argument, or several in case of NAYP.s, need k=#, where # specifies the system. See the comments in Amacro.e about MACHINE=.Key. Making a special assembler (one that assembles the assembler) requires an extra 100 in that option, for example k=114 for the Macintosh or k=115 for the NeXT.
AA14.s AAma14 for Macintosh, with Emul.a.
AA14c.s
AA15c.s


AAma#c cross builds for Macintosh and NeXT, with Emul.a.
Linky.s Link preassembled block object files to produce AAma.y, with Emul.a.
NAS.s AAman for the Minimum, without Emul.a.
NAY.s AAma.y for the specified system, with Emul.a.
NAYP.s Like NAY.s, but with reassembly of a subset of source files.

Examples

The following short examples illustrate some basic AAma features and concepts. See the comments in the .a source files for more explanation. The accompanying .s command files build only Macintosh executables (no cross building). They are much the same up to file names, but with a twist in Argu.s.
hello.a
hello.s


Command line standard IO, basic pseudo's, subroutine and startup stack arguments, argument addresses, etc.
hello1.a
hello1.s


A version of hello.a that loads IOst.a and explicitly jumps to its entry code.
hello2.a
hello2.s


A version of hello.a whose executable is position independent when linked with IOst.a.
hello3.a
hello3.s


Another version of hello.a which is position independent in the same sense as hello2.a.
Argu.a
Argu.s


Display command line arguments, accessed by direct manipulation of the stack instead of through formal subroutine arguments as in hello.a.

Notes

asm_var.e Assembler variables.
Notes.e Miscellaneous.

Up to Vsys/