Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ masm(CP) — System V/386 Software Development System 3.2.2b

Media Vault

Software Library

Restoration Projects

Artifacts Sought

     Name
          masm - invokes the assembler

     Syntax
          masm [ options ] sourcefile

     Description
          masm  is the 8086/286/386 assembler.  It reads and assembles
          8086/80286/80386 assembly language instructions from the
          source file named sourcefile.  It then creates a linkable
          object file name sourcefile.o, or an executable program
          named a.out.

          The extension .s is recommended but not required. If this
          extension is not given, masm displays a warning and
          continues processing.

          There are the following options:

          - a       This options puts the assembled output segments in
                    alphabetic order before copying them to the object
                    file.

          - c       Outputs cross reference data for each assembled
                    file to filename.crf.

          - C       Outputs cross reference data for a set of
                    assembled file.  The cross reference data is
                    written to files with the same names as the input
                    files, with the filename extension ``.erf.''

          - d       Adds a pass 1 listing to the assembly listing file
                    filename.lst.

          - Dsym    Defines the symbol appended to the -D flag as a
                    null TEXTMACRO.

          - e       Generates floating point code to emulate the 8087
                    or 287 coprocessor.  Programs created with this
                    option must be linked with an appropriate math
                    library before being executed.

          - I       path Defines the path appended to the -I flag as
                    the search path for include files.  Up to 10
                    include paths are allowed in one invocation of
                    masm.

          -l        [listfile] Creates an assembly listing file with
                    the same basename as the sourcefile or, if the
                    listfile parameter is given, with that name but
                    with a ``.lst'' extension. The file lists the
                    source instructions, the assembled (binary code)
                    for each instruction and any assembly errors.  If
                    filename is ``-,'' the listing is written to
                    stdout.

          - Mx      This option directs masm to preserve lower case
                    letters in public and external names only when
                    copying these names to the object file. For all
                    other purposes, masm converts the lower case to
                    upper case.

          - Mu      Disables case sensitivity. Upper case is now
                    treated as identical to lower case.

          - Ml      Leave case of symbols alone.

          - n       This option generates information about the
                    symbols used in the assembled programs.  The -l
                    option must also be used for this option to take
                    effect.

          - oobjfile
                    Copies the assembled instructions in octal to the
                    file named objfile. This file is executable only
                    if no errors occurred during the assembly. This
                    option overrides the default object file name.

          - Oobjfile
                    Copies the assembled instructions in binary to the
                    file named objfile.

          - r       Generates floating point code that can only be
                    executed by an 8087 or 287 coprocessor.

          - v       Prints verbose error statistics on console.  If
                    not selected, only error counts are displayed.

          - x       displays error messages on the standard error
                    channel, in addition to the messages generated in
                    the listing file.

          - X       Copies to the assembly listing all statements
                    forming the body of an IF directive whose
                    expression (or condition) evaluates to false.

     Files
          /bin/masm

     See Also
          a.out(F), cc(CP), ld(CP)
          Macro Assembler User's Guide

     Notes
          The default options are -Ml and -e which enable case
          sensitivity and allow emulation of a floating point
          processor.  The options are flags with the following default
          settings:

          Flag        Default          Meaning of TRUE condition

              a       FALSE            Outputs segments alphabetically
              c       FALSE            Outputs cross reference data
              C       FALSE            Outputs cross reference data
              d       FALSE            Adds pass 1 listing to filename.lst
            Dsym      NULL             No meaning if not defined
              e       FALSE            Floating Point emulation
           I path     NULL             No meaning if not defined
          llistfile   sourcefile.lst   Sourcefile is the default filename
              M       l                Leave symbol case alone
              n       TRUE             Outputs symbols if -l selected
              o       TRUE             Assembled output in binary
              O       FALSE            Assembled output in octal
              r       TRUE             Real 8087 instead of emulated format
              v       FALSE            Prints verbose error statistics
              x       TRUE             Displays errors on console
              X       FALSE            Toggle setting of conditional flag

     Return Value
          The masm exit codes have the following meanings:

               Code Meaning

                    0         No error
                    1         Argument error
                    2         Unable to open input file
                    3         Unable to open listing file
                    4         Unable to open object file
                    5         Unable to open cross reference file
                    6         Unable to open include file
                    7         Assembly errors.  If fatal, the object
                                file is deleted.
                    8         Memory allocation error
                    9         Real number input not allowed
                                in this version.

     Value Added
          masm is an extension of AT&T System V provided by the Santa
          Cruz Operation.

                                                (printed 6/18/89)



Typewritten Software • bear@typewritten.org • Edmonds, WA 98026