⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 release.130

📁 一份51的编译程序,dos版本的. 英文名字MCS-51 Microcontroller Family Macro Assembler
💻 130
📖 第 1 页 / 共 2 页
字号:

                           *********************
                           *                   *
                           *   A S E M - 5 1   *
                           *                   *
                           *********************


                         R E L E A S E - N O T E S
                         =========================

                             December 31, 2002



                Copyright (c) 1994, 1996, 2002 by W.W. Heinz

                            All rights reserved.




Version 1.3, Dec 31, 2002:
==========================
The following changes have been made to the ASEM-51 package, since
version 1.3b3 (V1.3 Beta 3):


I. Bug Fixes
------------
ASEM V1.3b3 flagged the following instructions

        ADD A, direct
        ADDC A, direct
        SUBB A, direct
        ANL A, direct
        ORL A, direct
        XRL A, direct
        MOV A, direct
        XCH A, direct

with the error message @@@@@ illegal operand @@@@@, if the direct
expression started with a '('. The bug is fixed in ASEM V1.3.

When asem 1.3b3 tried to write to a busy character device under
Linux, it aborted with an unspecific error message, e.g.

  @@@@@ fatal I/O error 16: /dev/lp0 @@@@@

This is fixed in V1.3. The new runtime error message is looking like

  @@@@@ device or resource busy: /dev/lp0 @@@@@


II. Support of 8051 Derivatives
-------------------------------
With this version, new and updated processor definition files are provided:

        File   Status   Manufacturer   Derivatives covered
----------------------------------------------------------------------------
    C505.MCU   n        Infineon       C505-2R, C505-L
   C505C.MCU   n        Infineon       C505C-2R, C505C-L
   C505A.MCU   n        Infineon       C505A-4E, C505A-L
  C505CA.MCU   n        Infineon       C505CA-4E, C505CA-L
   C505L.MCU   n        Infineon       C505L
    C508.MCU   n        Infineon       C508-4R, C508-4E
    C868.MCU   n        Infineon       C868-1R, C868-1S
 80C32X2.MCU   n        Philips        80C31X2, 80C32X2,
                                       80C51X2, 80C52X2, 80C54X2, 80C58X2,
                                       87C51X2, 87C52X2, 87C54X2, 87C58X2,
                                       89C51X2, 89C52X2, 89C54X2, 89C58X2
----------------------------------------------------------------------------
               Status: n=new, r=renamed, m=modified, c=commented

Credits:  Michael R. has sent me 80C32X2.MCU.



Version 1.3b3, June 25, 2002:
=============================
These are the longest release notes I have ever written for an ASEM-51
version. It seems that I had always some spare time to support, maintain,
change, extend, improve and port it over and over for many years, but
never to publish an official new release.
The release notes would become even more lengthy (and boring), if I only
tried to explain the reasons I still remember. Let's say, ASEM-51 and its
author simply are victims of circumstances!  :-)


I. New Features
---------------
Version 1.3 is a release of extensions indeed!
That's why the new features are discussed first.


I.1 Host Platforms
------------------
Version 1.3 is the first ASEM-51 release which is available for multiple
host platforms. There are executables for MS-DOS, Win32 and Linux.
ASEM-51 V1.3 is distributed in two separate packages: one containing all
the DOS/Windows stuff, and a second containing the Linux implementation.

MS-DOS and Windows:
Besides the proven real-mode assembler ASEM.EXE, version 1.3 contains the
new protected-mode assembler ASEMX.EXE! ASEMX is functionally identical
to ASEM, but it can use up to 64 MB of XMS memory to assemble even huge
programs. ASEMX is accompanied by Borland's DPMI server DPMI16BI.OVL and
runtime manager RTM.EXE. It requires a 286 CPU (or better), and at least
512 kB of free XMS memory (1 MB recommended)!
For Windows 9x/NT systems, the new Win32 console-mode assembler ASEMW.EXE
is provided. ASEMW is functionally identical to ASEM, but it can handle long
file names and benefits of the Win32 memory management. ASEMW is accompanied
by a corresponding Win32 binary-to-hex converter HEXBINW.EXE.

Linux:
For 386-based Linux systems, the native ELF executables asem, hexbin,
customiz, and reset51 are provided. These programs are Linux ports of the
corresponding MS-DOS versions. Especially asem, hexbin, and reset51 had to
be adapted to the Linux environment and its conventions.
The rest of the ASEM-51 distribution has been made Linux-ready as good as
possible. The Linux distribution is available in tar and rpm format.


I.2 Assembler
-------------
With only five new keywords (MACRO, REPT, ENDM, EXITM, LOCAL) and some
additional control characters, ASEM-51 version 1.3 introduces a full-blown
macro processing! It is possible to define named and repeated macro blocks.
Substitution of formal parameters is implemented as well as local symbols.
Macro calls and definitions can be nested to any depth.
Conditional assembly has been extended with the new IFN, IFB, IFNB, ELSEIF,
ELSEIFN, ELSEIFDEF, ELSEIFNDEF, ELSEIFB, and ELSEIFNB meta instructions.
The new control statements $GEN, $NOGEN, $GENONLY, $COND, $NOCOND, $CONDONLY,
$SAVE, and $RESTORE allow refined listing options for macro expansion and
conditional assembly. $MACRO and $NOMACRO allow or suppress macro expansion.

The /OMF-51 command line option has been introduced for the DOS and Windows
implementations, to generate absolute OMF-51 modules instead of Intel-HEX
files. The Linux implementation recognizes the --omf-51 (or -o) option
respectively. It is also possible to include debug information with the
$DEBUG assembler control.

The environment variable ASEM51INC has been introduced on all platforms, to
specify a search path for include files.

The new $NOBUILTIN control suppresses predefined symbols (SFR) in the symbol
table or cross-reference listing, while user-defined symbols are still listed.

The new $ERROR and $WARNING controls allow a more secure configuration
management of application programs.

For identification of the assembler and its version number, the following
predefined symbols of the type NUMBER have been introduced:

        ??ASEM_51  =  8051H         ASEM-51
        ??VERSION  =  0130H         version 1.3

To improve compatibility with the Intel assembler, more than one assembler
control is allowed in a control line now, e.g.:

$ NOMOD51 INCLUDE(80C517.MCU)

Include files may now be nested to any depth!

EQU and SET can now be used, to define symbols not only for numerical
constants, but also for registers A and R0 thru R7.


I.3 MS-DOS Implementation
-------------------------
A batch file INSTALL.BAT has been provided, to install or update the
ASEM-51 package under MS-DOS or Windows.
The batch file KILLASEM.BAT deletes an existing ASEM-51 installation.

Due to a new parser concept and assembly language optimizations in lexical
analysis and symbol table, ASEM.EXE is now running up to 20% faster.

ASEM and HEXBIN can now also read ASCII files in UNIX format!

The obsolete field separator '=' for ASEM and HEXBIN command line options
is no longer accepted under MS-DOS. From version 1.3 only ':' is allowed.

The former RESET program has been renamed to RESET51, due to name conflicts.
It can now also form a reset pulse by dropping the DTR signal of a serial
port. BOOT51.DOC has been updated accordingly.


I.4 Support of 8051 Derivatives
-------------------------------
With this version, new and updated processor definition files are provided:

        File   Status   Manufacturer   Derivatives covered
----------------------------------------------------------------------------
  80C310.MCU   n        Dallas         DS80C310
  80C390.MCU   n        Dallas         DS80C390
  87C520.MCU   n        Dallas         DS87C520, DS83C520
  87C530.MCU   n        Dallas         DS87C530, DS83C530
  87C550.MCU   n        Dallas         DS87C550
  89C420.MCU   n        Dallas         DS89C420
  DS5000.MCU   n        Dallas         DS5000FP, DS5000, DS5000T,
                                       DS2250, DS2250T
  DS5001.MCU   n        Dallas         DS5001FP, DS5002FP, DS5002FPM,
                                       DS2251T, DS2252T
 MAX7651.MCU   n        Maxim          MAX7651, MAX7652
   89C52.MCU   n        Atmel          AT89C52, AT89C55, AT89LV52, AT89LV55,
                                       AT87LV52, AT80F52, AT87F52
 89C1051.MCU   n        Atmel          AT89C1051
 89C2051.MCU   r        Atmel          AT89C2051, AT89C4051, AT89C1051U
 89S8252.MCU   n        Atmel          AT89S8252, AT89LS8252
   89S51.MCU   n        Atmel          AT89S51
   89S52.MCU   n        Atmel          AT89S52, AT89LS52
   89S53.MCU   n        Atmel          AT89S53, AT89LS53
 89S4D12.MCU   n        Atmel          AT89S4D12
 87F51RC.MCU   n        Atmel          AT87F51RC, AT87F55, AT87LV55
  83C51R.MCU   n        Intel          83C51RA, 80C51RA, 87C51RA,
                                       83C51RB, 87C51RB, 83C51RC, 87C51RC
 83C51FX.MCU   r,m,c    Intel          83C51FA, 80C51FA, 87C51FA,
                                       83C51FB, 87C51FB, 83C51FC, 87C51FC
 83C51KB.MCU   n        Intel          83C51KB
 83C51GB.MCU   n        Intel          83C51GB, 80C51GB, 87C51GB
  83C151.MCU   n        Intel          83C151SB, 87C151SB, 80C151SB
                                       83C151SA, 87C151SA
 83931HA.MCU   n        Intel          83931HA, 80931HA
 83931AA.MCU   n        Intel          83931AA, 80931AA
  83C750.MCU   m        Philips        83C750, 87C750
  83C754.MCU   n        Philips        83C754, 87C754
87LPC762.MCU   n        Philips        87LPC762
87LPC768.MCU   n        Philips        87LPC768
 83C515A.MCU   m        SIEMENS        83C515A-5, 80C515A
    C504.MCU   n,c      SIEMENS        C504-2R, C504-L
    C509.MCU   n,c      SIEMENS        C509-L
  C513AO.MCU   n        SIEMENS        C513AO
    C515.MCU   n        SIEMENS        C515-L, C515-1R
   C515A.MCU   n        SIEMENS        C515A-L, C515A-4R
   C515C.MCU   n,c      SIEMENS        C515C-8R
   C517A.MCU   r,m      SIEMENS        C517A-L, C517A-4R, 83C517A-5, 80C517A
   C540U.MCU   n        SIEMENS        C540U
   C541U.MCU   n        SIEMENS        C541U
 83C154S.MCU   n        OKI            83C154S, 80C154S, 85C154HVS
 73M2910.MCU   n        TDK            73M2910, 73M2910A
  AN2131.MCU   n        Cypress        AN2121, AN2122, AN2125, AN2126,
                                       AN2131, AN2135, AN2136
----------------------------------------------------------------------------
               Status: n=new, r=renamed, m=modified, c=commented

File 83C51F.MCU has been renamed to 83C51FX.MCU and completed with the
"mysterious IPH register" and related commentary.
The SFR symbol definitions in file 83C750.MCU have been changed according
to manufacturer specifications.
The BIT symbols for P1.0 thru P1.3 in file 83C515A.MCU have been changed
according to their equivalents in the new file C515C.MCU.
File C517A.MCU replaces 83C517A.MCU, because the C517A is functionally
identical (with some slight differences in naming conventions only).
Note that all SIEMENS derivatives are now manufactured and sold by Infineon!

Credits:
Axel Kielhorn has written the file DS5000.MCU.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -