Summary of changes/additions to the ASxxxx Assemblers from Version 4.10 to Version 4.11. 1. Corrected coding errors that affected BANKS containing multiple ABS areas or mixed AREA types. 2. Corrected improper use of R_USGN in most addressing modes in AS6500. This caused unexpected 'a' errors in V4.xx because of the ASxxxx core change to 32-bit integers and arithmetic. 3. Corrected errors in the .local and .globl assembler directive processing routine that introduced unwanted side effects for variable and symbol definition files. These effects included improper definitions and incorrect error warnings. 4. The following new subdirectories and their files have been added to the asxtst directory: * areabank Area and Bank Processing Test This directory contains several test programs: ts.asm (single file - multiple areas), tm1.asm and tm2.asm (multiple file - multiple areas), and tbm.asm, tbm1.asm, and tbm2.asm ( multiple file - multiple areas within a bank) and several other files which verify the correct operation of the linker when used with a single linked file, multiple linked files having no banking, and multiple linked files with bank- ing. These reference files show in detail how the .area and .bank directives work together. * equtst Equate Processing Test This directory contains a test file for verify- ing the operation of the .globl, .local, .equ, .gblequ, and .lclequ directives and the =, ==, and =: equalities. * inctst Nested Include File Test * itst Include File Error Reporting Test 5. Added 10 undocumented 8085 instructions to the AS8085 assembler. Summary of changes/additions to the ASxxxx Assemblers from Version 4.00 to Version 4.10. 1. Added new assemblers for the Zilog EZ80, Zilog Z8, Sig- netics 2650, and Fujitsu F2MC8(L,FX) processors. 2. Added the processor cycle count option (-c) to all pro- cessors. 3. Several of the assemblers (ASZ80, ASRAB, AS6805, AS6808, AS6812, ASF2MC8, ...) now support subsets or supersets of their basic opcodes by the use of assem- bler specific directives. 4. Added .ifeq, .ifne, .iflt, .ifgt, .ifle, and .ifge con- ditional assembly directives. 5. Added support for the Tandy Color Computer Disc Basic binary file format to ASLINK. 6. Updated the assembler and linker source code to support 16-Bit and 32-Bit compilers. Tested with Borland Turbo C++ 3.0 and Symantec 7.2 C/C++ 16-Bit compilers, and with Visual C++ 6.0, Cygwin, DJGPP V02.03, and Linux 32-Bit compilers. 7. Problem: When an area size is equal to the 'address space size' the size parameter is reported as 0. (A normal condi- tion caused by address rollover to 0.) Aslink inter- preted this as a 0 size. Fix: A new area 'Output Code Flag' bit was defined to indi- cate when data is defined in an area. ASxxxx and Aslink have been updated to set and process this area flag bit. 8. Problem: The use of the .end assembler directive in an Asxxxx assembler would cause Aslink to output the optional start address in all output files. Fix: Updated Aslink to output the optional start address only in the output file associated with the area/bank containing the .end directive. 9. Problem: Aslink creates output files for banks with no output data. Fix: Aslink now deletes any created output file for banks with no data. 10. Incorporated the patches contained in p01400.zip for files t1802.asm and 1802pst.c to correct for an error in the opcodes generated for the BM, BL, and BNF mnemonics. 11. Incorporated the patches contained in p02400.zip for file ds8adr.c to correct for an error in the direct page addressing mode of AS8xCxxx. 12. Incorporated the patches contained in p03400.zip for file rabmch.c to correct for an error in the processing of the "ret cc" instruction. 13. Made many corrections to internal code comments.
... Exit the ASxxxx Documentation
Last Updated: June 2006