System information

The command
ASM X.ABX
indicates that the source file is to be taken from disk A, the hex file is to be placed on disk B, and
the listing file is to be sent to the console. The command
ASM X.BZZ
takes the source file from disk B and skips the generation of the hex and print files. This
command is useful for fast execution of the assembler to check program syntax.
The source program format is compatible with the Intel 8080 assembler. Macros are not
implemented in ASM; see the optional MAC macro assembler. There are certain extensions in
the CP/M assembler that make it somewhat easier to use. These extensions are described below.
3.2 Program Format
An assembly-language program acceptable as input to the assembler consists of a sequence of
statements of the form
line# label operation operand ;comment
where any or all of the fields may be present in a particular instance. Each assemblylanguage
statement is terminated with a carriage return and line-feed (the line-feed is inserted
automatically by the ED program), or with the character !, which is treated as an end-of-line by
the assembler. Thus, multiple assembly-language statements can be written on the same physical
line if separated by exclamation point symbols.
The line# is an optional decimal integer value representing the source program line number, and
ASM ignores this field if present.
The label field takes either of the following forms:
identifier
identifier:
The label field is optional, except where noted in particular statement types. The identifier is a
sequence of alphanumeric characters where the first character is alphabetic. Identifiers can be
freely used by the programmer to label elements such as program steps and assembler directives,
but cannot exceed 16 characters in length. All characters are significant in an identifier, except
for the embedded dollar symbol $, which can be used to improve readability of the name.
Further, all lower-case alphabetics are treated as upper-case. The following are all valid instances
of labels:
3.1 Introduction CP/M Operating System Manual
3-3