![]() | [Previous] [Main] [Next] |
Two binary operators in a row indicate a missing value.
|
An instruction is attempting to branch to a location not within the current 2K byte page.
|
An instruction is attempting to branch to a location not within the current 256 byte page.
|
Insufficient memory to store more labels. See LIMITATIONS.
|
The label for the current line has already been assigned a value. Duplicate label checks are optionally enabled by the -a option.
|
A file name on the command line is fewer than 3 characters. A two character file name may be valid, of course, but it is detected as an error to prevent a garbled option flag from being taken as a source file, which in turn can result in the true source file being taken as the object file. Since the object file is truncated at startup time, the source file could be clobbered.
|
An EQU directive is using a label on the right hand side that has not yet been defined.
|
TASM was unable to allocate memory to store the label.
|
An end-of-file was encountered at which time the level of descent in conditional directives was different from when the file was entered. Conditional directives include IF, IFDEF, and IFNDEF.
|
An object file type was requested by the -g command line option that is not valid. See section on Option g - Object File Format.
|
No indirection for this instruction. The first character of an operand was a left parenthesis for an instruction that does not explicitly specify that as the format. Some micros use the parenthesis as an indicator of indirection, but putting a layer of parenthesis around an expression is always a valid thing to do (as far as the expression evaluator is concerned). The test for this case is only done if the -a4 option is selected. See section on ASSEMBLY CONTROL.
|
Two binary operators in a row are not allowed.
|
Labels are limited to 31 characters.
|
The value of a label appears to have a different value on the second pass then it was computed to have on the first pass. This is generally due to Zero Page Addressing mode problems with the 6502 version of TASM. Labels that are used in operands for statements that could utilize Zero Page addressing mode should always be defined before used as an operand.
|
A label used in an expression was not found in the current label table.
|
The SET directive can only be applied to an existing label.
|
To many labels have been encountered.
|
TASM was not able to open the specified list file.
|
The expansion of a macro resulted in a line that exceeded the maximum length.
|
Too many levels of IF, IFDEF, or IFNDEF.
|
Too many macro arguments.
|
Too many macros (DEFINEs) have been encountered.
|
The source file did not have an END directive in it. This is not fatal, but may cause the last object file record to be lost.
|
TASM was invoked with no source file specified.
|
A SET directive was encountered for a label not yet defined. The value of labels that are modified by the SET directive must already exist.
|
A double quote was used at the start of a a text string but was not used at the end of the string.
|
A parenthesis was found around the operand expression. This may indicate an attempt to use indirection where it is inappropriate.
|
A binary operator (such as '*') was found at the beginning of an expression. Some micros use '*' as an indirection operator. Since it is also a legitimate operator in an expression, some ambiguity can arise. If a particular instruction/addressing mode does not allow indirection, and a '*' is placed in front of the associated expression, the assembler will assume this error. See the -a8 option of ASSEMBLY CONTROL.
|
TASM was not able to open the specified object file.
|
The value of an argument exceeds the valid range for the current instruction and addressing mode.
|
A branch instruction exceeds the maximum range.
|
TASM was not able to open the specified source file.
|
A statement starting with a '.' or '#' has a mnemonic that is not defined as a directive.
|
A statement has an opcode mnemonic that is not defined.
|
A statement has an operand format that is not defined.
|
Unexpected characters were encountered while parsing an expression.
|
An instruction or directive used the least significant byte of an argument and left the most significant byte unused, but it was non-zero.
|
Invalid option flag has been specified on the command line. invoke TASM with nothing on the command line to see a list of valid options.
|