                            APPENDIX C
                          ERROR MESSAGES


INTRODUCTION

This Appendix describes error messages that can occur when using ASMHC11.
These messages appear in the following format:

                            ** ERROR nnn

where nnn is a 3-digit message number.

It should also be noted that the cross assembler will output an error
pointer ( ) whenever possible. This pointer attemps to indicate where on the
source line the error actually occured. In general, the source of the error
will be at or to the left of the pointer.

ERROR MESSAGES

        Syntax (200 - 209)

200     Illegal character in context - Inspect the indicated instruction or
        directive for an invalid character, especially non-printable
        characters.

202     Syntax error - Check instruction or directive format for a missing
        delimiter, bracket or parenthesis.

204     Label required - This directive does not have a label (EQU or SET).

205     END directive missing - An end-of-file has been found on the input
        device before the END directive was encountered.

        Operand/Address Mode (210 - 229)

212     Improper termination of operand field.

213     Illegal addressing mode for this operand - Check proper addressing
        mode for the indicated instruction.

214     Illegal forward reference - Certain directives such as EQU and SET
        will not allow forward references.

223     Invalid addressing mode for target microprocessors.

        Symbol Definition (230 - 249)

234     Redefined symbol - A symbol (label) already used has been given to
        represent another item in the same class.

235     Undefined symbol - The indicated symbol has not been used in the
        label field.

238     Undefined operation - Review the instruction or directive formats
        for proper format, syntax, and operands.

320     Error Table overflow (maximum = 100)

321     Symbol Table overflow (maximum entries = 800)



        Data Size Restrictions (250 - 259)

250     Displacement size error - The computed displacement is too large to
        fit in the instruction. Most often a branch is out of range.

251     Value out of range - The computer value for the expression is too large
        for the instruction.

252     Address too large for forced direct - Computed value falls outside
        legal addressing range for direct addressing mode.

255     Division by zero.

        Macros (260 - 269)

260     Misplaced MACR, MEXIT, or ENDM - Check the macro definition, terminator
        and MEXIT directive (if any).

261     MACR definitions may not be nested - Separate macro definitions and
        be sure each one has a MACR and ENDM.

266     Reference preceedes MACR definition - A macro must be defined before
        it is invoked by the assembler.

267     Overflow of input buffer during macro text expansion - While
        substituting arguments during macro expansion, the line length exceeded
        80 characters.

268     Parenthesised argument unbalanced - Check operand field for a missing
        left or right parenthesis.

        Internal (400 - 499)

        Reserved - If any error messages in the range of 400 - 499 are
        encountered, please contact Motorola Field Service.



