mirror of https://github.com/wwarthen/RomWBW.git
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
213 lines
11 KiB
213 lines
11 KiB
TASM RELEASE NOTES [September 2001]
|
|
|
|
RELEASE DATE/VERSION DESCRIPTION
|
|
-----------------------------------------------------------------------
|
|
10/01/85 Version 2.0 First version with external table def files.
|
|
|
|
01/01/86 Version 2.1 Added '*=' and '=' directives as
|
|
alternatives to .ORG and .EQU (for
|
|
more complete MOS Technology compatibility).
|
|
Enhanced parsing algorithm so it can
|
|
deal with more than one variable expression.
|
|
Added -d option
|
|
|
|
02/14/86 Version 2.2 Modified so instruction set definition
|
|
tables don't need to be compiled in.
|
|
Added 8051 tables.
|
|
Increased the number of labels allowed.
|
|
|
|
03/31/87 Version 2.3 Fixed bug that prevented location 0xffff
|
|
from being used and written to object file.
|
|
Most changes in wrtobj() and pr_hextab().
|
|
|
|
05/01/87 Version 2.4 Added multiple byte opcode support.
|
|
Added shift/or operation capability to
|
|
args from instruction set definition table.
|
|
Converted to MS C version 3.0
|
|
Added hashing to instruction set table
|
|
lookups to speed up.
|
|
|
|
11/01/87 Version 2.5 Added DB and DW directives.
|
|
Added escape capability in TEXT strings.
|
|
Fixed inst_lookup function to treat the
|
|
multiple wild card case a little better
|
|
Added 8080/8085 and Z80 tables.
|
|
Added sorting on label table.
|
|
Increased size of read buffer.
|
|
Speed enhancements.
|
|
Added DEFCONT (macro continuation) directive.
|
|
Converted to Microsoft C 5.0 compiler.
|
|
Added 6805 table (and related modops).
|
|
Added Z80 bit modop.
|
|
Minor speed up.
|
|
Fixed bug that enters infinite loop
|
|
when a macro invocation has no closing paren.
|
|
Added some three arg MODOPs.
|
|
|
|
8/15/88 Version 2.6.1 Added CODES/NOCODES directives
|
|
Fixed bug preventing directives in multiple
|
|
statement lines.
|
|
2.6.2 Added COMB_NIBBLE and COMB_NIBBLE_SWAP MODOPS
|
|
|
|
2/1/89 Version 2.7 Removed ad hoc heap and now use malloc()
|
|
Added MSFIRST and LSFIRST directives.
|
|
Added EXPORT directive.
|
|
Added symbol table file (-s flag).
|
|
Added NSEG/CSEG/BSEG/DSEG/XSEG directives
|
|
and the SYM/AVSYM directives to support
|
|
the Avocet avsim51 simulator.
|
|
Added support for TMS320.
|
|
Added -r flag to set read buffer size.
|
|
Converted expression evaluation from
|
|
signed 16 bit to signed 32 bit (enabling
|
|
apparent ability to use signed or unsigned
|
|
16 bit values).
|
|
|
|
4/20/89 Version 2.7.1 Return 0x20000 for undefined labels so that
|
|
(label+x) type stuff won't confuse zero
|
|
page addressing.
|
|
Added duplicate label error message on pass 1.
|
|
|
|
6/20/89 Version 2.7.2 Improved macro expansion capability.
|
|
No expansion in comments.
|
|
Context sensitive identifiers.
|
|
Revised exit codes.
|
|
|
|
6/27/89 Version 2.7.3 Added -a flag for strict error checking:
|
|
(1) No outer parens around expressions.
|
|
(2) Error message if unused argbytes remain
|
|
(3) Duplicate labels
|
|
Fixed so ']' can terminate expressions.
|
|
Removed parse() from tasm.c
|
|
|
|
8/19/89 Version 2.7.4 Added Motorola hex object format.
|
|
Fixed bug that complained when \ immediately
|
|
followed a opcode with no args.
|
|
Slightly improved error reporting (Errorbuf).
|
|
|
|
10/31/89 Version 2.7.5 Added TMS7000 support.
|
|
Fixed argv[] bug (only dimensioned to 10 in pass1.
|
|
|
|
12/23/89 Version 2.7.6 Improved handling of % (modulo vs binary
|
|
prefix ambiguity).
|
|
Fixed list so lines with more than
|
|
6 bytes go on second line.
|
|
|
|
03/04/90 Version 2.7.7 Fixed bug that left off 2 bytes if ORG
|
|
went backwards and all 64K was used.
|
|
Added a command line option to ignore
|
|
case on labels.
|
|
Added a couple MODOP rules for TMS9900.
|
|
Allow double quoted text strings for BYTE.
|
|
|
|
04/15/90 Version 2.7.8 Fixed expression evaluator bug (paren popping)
|
|
and changed expression evaluator to a more
|
|
conventional left to right evaluation order.
|
|
Added TURBOC ifdef's (from Lance Jump).
|
|
|
|
08/20/90 Version 2.8 Primarily a documentation update.
|
|
Added error check for AJMP/ACALL off of
|
|
current 2K block (8051).
|
|
|
|
10/15/90 Version 2.8.1 Minor speed up in label searching.
|
|
Fixed word addressing for TMS320
|
|
Version 2.8.2 Local labels.
|
|
More label table format options (long form
|
|
suppress local labels).
|
|
|
|
11/30/90 Version 2.8.3 Turbo C conversion.
|
|
DS directive added.
|
|
|
|
12/27/90 Version 2.8.4 Added COMMENTCHAR directive to change the
|
|
comment indicator in the first column.
|
|
This was done to support the assembly
|
|
files from the small C compiler (sc11)
|
|
for the 68CH11.
|
|
|
|
02/14/91 Version 2.8.5 Added LOCALLABELCHAR directive to
|
|
override the default "_" as the
|
|
prefix for local labels.
|
|
|
|
03/18/91 Version 2.8.6 Added some MODOPs in support of TMS320C25
|
|
|
|
04/20/91 Version 2.8.7 Fixed sign extend bug in CSWAP modop.
|
|
Increased MAXLABS to 10000 for big version.
|
|
|
|
05/05/91 Version 2.8.8 Fixed pointer bug in debug output in sort_labels().
|
|
|
|
05/20/91 Version 2.9 TMS320C25 table along with some MODOP enhancements
|
|
for it.
|
|
TASMTABS.DOC updated (but not TASM.DOC)
|
|
|
|
08/09/91 Version 2.9.1 Nested conditionals.
|
|
|
|
04/01/92 Version 2.9.2 Fixed long label clobber problem in
|
|
find_label() and save_label. Syntax
|
|
errors could result in a comment line
|
|
after an instruction being lumped together
|
|
with a label resulting in a long label.
|
|
The label functions were not testing for
|
|
labels that exceed the specified size.
|
|
Added CHK directive.
|
|
Added REL3 MODOD to support uPD75xxx.
|
|
Delinting and more ANSIfication.
|
|
Modifications due to feedback from B Provo:
|
|
Added FILL directive.
|
|
Allow multiple labels for EXPORT directive.
|
|
Allow address with END directive.
|
|
TASM.DOC update
|
|
|
|
11/25/92 Version 2.9.3 Improved error reporting for mismatched quotes.
|
|
Disallow the single quote character constants.
|
|
Convert to BCC++ 3.1
|
|
Provide filename,linenum on all error messages.
|
|
Modify format of error messages for compatibility
|
|
with the Brief editor.
|
|
Added ECHO directive to send output to console.
|
|
Performance improvements in macro processing.
|
|
"Type Safe" conversion (compatible with C++).
|
|
Improved error reporting for imbalanced ifdefs.
|
|
|
|
|
|
01/29/93 Version 2.9.4 Added rules for 8096 (I1,I2,I3,I4,I5,I6).
|
|
Generate error message on forward reference
|
|
in EQUate statements.
|
|
Eliminated -a option for enabling the detection
|
|
of branches of 2K page for 8051. This
|
|
is now built into the table.
|
|
Allow white space in double quotes for BYTE
|
|
directive. This previously worked for TEXT,
|
|
but not BYTE.
|
|
Fixed defect with Z80 4 byte indexed instructions.
|
|
Fixed macro defect. If the macro definition has
|
|
args but the invocation does not some garbage
|
|
gets expanded into the source line.
|
|
Z80 OTDR opcode was incorrect.
|
|
Z80 IN0/OUT0/INA instructions did not require
|
|
the parens around the args.
|
|
Some experimental support for windows verson of TASM.
|
|
|
|
10/24/93 Version 3.0 Documentation update. TASM.DOC, TASMTABS.DOC
|
|
and RELNOTES.DOC updated, but the functionality
|
|
remains unchanged from version 2.9.4.
|
|
|
|
06/16/94 Version 3.0.1 Multiple macros on the same line.
|
|
Fixed problem with -c with >8000h bytes used goes bonkers
|
|
Corrected word addressing problem for BLOCK/DS directives.
|
|
Allow escaped quotes in TEXT strings.
|
|
|
|
11/30/97 Version 3.1 LINUX support.
|
|
Protect mode version (tasmp) with better memory
|
|
management (more labels allowed, etc.)
|
|
Added an 8096 table.
|
|
Added Logical NOT unary operator.
|
|
Added an object file format with word address
|
|
|
|
09/01/01 version 3.2 Increased LINESIZ to 512 to enable use of longer macros.
|
|
Eliminated -r command line option (to set
|
|
read buffer size - Now obsolete.)
|
|
Improved list() function to put a max of
|
|
six bytes per line to avoid problems with
|
|
directives that generate large blocks of
|
|
object code (i.e. .FILL).
|
|
Built as a 32 bit version using MS C++ 6.0
|
|
|