Scroll to navigation

MACRO1(1) General Commands Manual MACRO1(1)

NAME

macro1 - PDP8 macro assembler

SYNOPSIS

macro1 [OPTIONS] INPUTFILE ...

DESCRIPTION

This is a cross-assembler to for PDP-1 assembly language programs. It will produce an output file in rim format only. A listing file is always produced and with an optional symbol table and/or a symbol cross-reference (concordance). The permanent symbol table can be output in a form that may be read back in so a customized permanent symbol table can be produced. Any detected errors are output to a separate file giving the filename in which they were detected along with the line number, column number and error message as well as marking the error in the listing file.

The following file name extensions are used:

.mac
source code (input)
.lst
assembly listing (output)
.rim
assembly output in DEC's rim format (output)
.prm
permanent symbol table in form suitable for reading after the EXPUNGE pseudo-op
.sym
"symbol punch" tape (for DDT, or reloading into macro)

OPTIONS

-d
Dump the symbol table at end of assembly.
-p
Generate a file with the permanent symbols in it. (To get the current symbol table, assemble a file than has only START in it.)
-x
Generate a cross-reference (concordance) of user symbols.
-r
Output a tape using only RIM format (else output block loader).
-s
Output a symbol dump tape (loader + loader blocks).
-S FILE
Read a symbol tape back in.

DIAGNOSTICS

Assembler error diagnostics are output to an error file and inserted in the listing file. Each line in the error file has the form


<filename>(<line>:<col>) : error:  <message> at Loc = <loc>


An example error message is:


bintst.mac(17:9) : error:  undefined symbol "UNDEF" at Loc = 07616


The error diagnostics put in the listing start with a two character error code (if appropriate) and a short message. A carat '^' is placed under the item in error if appropriate.

An example error message is:


17 07616 3000          DCA     UNDEF
UD undefined                   ^
18 07617 1777          TAD  I  DUMMY


Undefined symbols are marked in the symbol table listing by prepending a '?' to the symbol. Redefined symbols are marked in the symbol table listing by prepending a '#' to the symbol. Examples are:


#REDEF   04567
 SWITCH  07612
?UNDEF   00000


Refer to the (source) code for the diagnostic messages generated.

AUTHOR

macro1 is based on the palbart assembler by Gary A. Messenbrink and the MACRO1 modifications are by Bob Supnik.

This manual page was written by Vince Mulhollon, for the Debian GNU/Linux system (but may be used by others).

SEE ALSO

macro7(1), macro8x(1)
2017-10-15 simtools