VI. Support of 8051 Derivatives
===============================
Today a large number of 8051 derivatives is available that grows almost
monthly! They all use the same instruction set of the MCS-51 processor core,
but are different in peripheral components, to cover a wide range of
applications. The difference for the assembly language programmer is mainly
the varying set of special function registers and interrupt addresses.
It is always good practice to use the same SFR names in a microcontroller
application program that the manufacturer of the derivative used has defined.
For this the processor definition files *.MCU are provided. They all are
include files with the special function register definitions of a particular
8051 derivative. However, the predefined symbols of ASEM-51 must be switched
off prior to including the SFR definitions of another derivative as shown
below:
              $NOMOD51
              $INCLUDE (80C515.MCU)

This would switch off the predefined symbols of the 8051 and include the
register definitions of the 80C515 or 80C535 respectively.
Hence it is easy for the user to adapt ASEM-51 to a brandnew 8051 derivative!
All what he has to do is to write a corresponding include file with the SFR
definitions derived from the manufacturer's data sheet.
The name of every processor definition file is corresponding to the ROM
version of a particular derivative. Of course it also applies to the EPROM,
EEPROM, flash, and ROM-less versions (if any) of that derivative.
By the way, the file 8051.MCU provided contains exactly the predefined
symbols of ASEM-51, because its internal symbol table has been generated
from it!
To switch ASEM-51 to the reduced instruction set of the Philips P83C75x
family of microcontrollers, the $PHILIPS control can be used.
The $WINBOND control enables the extended instruction set of the Winbond
W77xxxx family of microcontrollers with Turbo-51 core.

Currently the following processor definition files are provided with ASEM-51:


      Name        Manufacturer    Versions
    ---------------------------------------------------------------------
      8051.MCU    Intel           8051, 8031, 8751BH
                  (and others)    8051AH, 8031AH, 8751H, 8051AHP, 8751H-8
                                  80C51BH, 80C31BH, 87C51, 80C51BHP
                  Atmel           89C51, 89LV51, 87LV51, 80F51, 87F51
      8052.MCU    Intel           8052AH, 8032AH, 8752BH
                  SIEMENS         80513, 8352-5
                  Winbond         W78C32C, W78L32
     80C52.MCU    Intel           80C52, 80C32, 87C52,
                                  80C54, 87C54, 80C58, 87C58
   83C51FX.MCU    Intel           83C51FA, 80C51FA, 87C51FA
                                  83C51FB, 87C51FB, 83C51FC, 87C51FC
    83C51R.MCU    Intel           83C51RA, 80C51RA, 87C51RA,
                                  83C51RB, 87C51RB, 83C51RC, 87C51RC
   83C51KB.MCU    Intel           83C51KB
   83C51GB.MCU    Intel           83C51GB, 80C51GB, 87C51GB
    83C151.MCU    Intel           83C151SB, 87C151SB, 80C151SB
                                  83C151SA, 87C151SA
    83C152.MCU    Intel           80C152JA, 83C152JA, 80C152JB
                                  80C152JC, 83C152JC, 80C152JD
    83C452.MCU    Intel           83C452, 80C452
      8044.MCU    Intel           8044AH, 8344AH, 8744AH
   83931HA.MCU    Intel           83931HA, 80931HA
   83931AA.MCU    Intel           83931AA, 80931AA
     80512.MCU    SIEMENS         80512, 80532
     80515.MCU    SIEMENS         80515, 80535, 80515K, 83515-4
    80C515.MCU    SIEMENS         80C515, 80C535, 83C515H
   83C515A.MCU    SIEMENS         83C515A-5, 80C515A
    80C517.MCU    SIEMENS         80C517, 80C537
      C501.MCU    Infineon        C501-1R, C501-L
      C502.MCU    Infineon        C502-2R, C502-L
      C503.MCU    Infineon        C503-1R, C503-L
      C504.MCU    Infineon        C504-2R, C504-L
      C505.MCU    Infineon        C505-2R, C505-L
     C505C.MCU    Infineon        C505C-2R, C505C-L
     C505A.MCU    Infineon        C505A-4E, C505A-L
    C505CA.MCU    Infineon        C505CA-4E, C505CA-L
     C505L.MCU    Infineon        C505L
      C508.MCU    Infineon        C508-4R, C508-4E
      C509.MCU    Infineon        C509-L
      C511.MCU    Infineon        C511, C511A
      C513.MCU    Infineon        C513, C513A, C513A-H
    C513AO.MCU    Infineon        C513AO
      C515.MCU    Infineon        C515-L, C515-1R
     C515A.MCU    Infineon        C515A-L, C515A-4R
     C515C.MCU    Infineon        C515C-8R
     C517A.MCU    Infineon        C517A-L, C517A-4R, 83C517A-5, 80C517A
     C540U.MCU    Infineon        C540U
     C541U.MCU    Infineon        C541U
      C868.MCU    Infineon        C868-1R, C868-1S
    83C451.MCU    Philips         83C451, 80C451, 87C451
    83C528.MCU    Philips         83C528, 80C528, 87C528, 83C524, 87C524
                                  83CE528, 80CE528, 89CE528
    83C550.MCU    Philips         83C550, 80C550, 87C550
    83C552.MCU    Philips         83C552, 80C552, 87C552
    83C562.MCU    Philips         83C562, 80C562
    83C652.MCU    Philips         83C652, 80C652, 87C652
                                  83C654, 87C654, 83CE654, 80CE654
    83C750.MCU    Philips         83C750, 87C750
    83C751.MCU    Philips         83C751, 87C751
    83C752.MCU    Philips         83C752, 87C752
    83C754.MCU    Philips         83C754, 87C754
    83C851.MCU    Philips         83C851, 80C851
    83C852.MCU    Philips         83C852
  87LPC760.MCU    Philips         87LPC760
  87LPC761.MCU    Philips         87LPC761
  87LPC762.MCU    Philips         87LPC762, 87LPC764
  87LPC767.MCU    Philips         87LPC767
  87LPC768.MCU    Philips         87LPC768, 87LPC778
  87LPC769.MCU    Philips         87LPC769
    89C660.MCU    Philips         89C660, 89C662, 89C664, 89C668
  89LPC901.MCU    Philips         89LPC901
  89LPC902.MCU    Philips         89LPC902
  89LPC903.MCU    Philips         89LPC903
  89LPC904.MCU    Philips         89LPC904
  89LPC906.MCU    Philips         89LPC906
  89LPC907.MCU    Philips         89LPC907
  89LPC908.MCU    Philips         89LPC908
  89LPC912.MCU    Philips         89LPC912
  89LPC913.MCU    Philips         89LPC913
  89LPC914.MCU    Philips         89LPC914
  89LPC915.MCU    Philips         89LPC915
  89LPC916.MCU    Philips         89LPC916
  89LPC917.MCU    Philips         89LPC917
  89LPC920.MCU    Philips         89LPC920, 89LPC921, 89LPC922
  89LPC930.MCU    Philips         89LPC930, 89LPC931
  89LPC932.MCU    Philips         89LPC932, 89LPC932A1
  89LPC933.MCU    Philips         89LPC933, 89LPC934
  89LPC935.MCU    Philips         89LPC935
  89C51RX2.MCU    Philips         89C51RA2, 89C51RB2, 89C51RC2, 89C51RD2,
                                  87C51RA2, 87C51RB2, 87C51RC2, 87C51RD2
  89V51RD2.MCU    Philips         89V51RD2, 89LV51RD2
   80C32X2.MCU    Philips         80C31X2, 80C32X2,
                                  80C51X2, 80C52X2, 80C54X2, 80C58X2,
                                  87C51X2, 87C52X2, 87C54X2, 87C58X2,
                                  89C51X2, 89C52X2, 89C54X2, 89C58X2
   89C60X2.MCU    Philips         89C60X2, 89C61X2
  83C654X2.MCU    Philips         83C654X2, 87C654X2
  83C660X2.MCU    Philips         83C660X2, 87C660X2
  83C661X2.MCU    Philips         83C661X2, 87C661X2
    80C521.MCU    AMD             80C521, 80C541, 87C521, 87C541, 80C321
    80C324.MCU    AMD             80C324
    83C154.MCU    OKI             83C154, 80C154, 85C154VS
   83C154S.MCU    OKI             83C154S, 80C154S, 85C154HVS
    80C310.MCU    DALLAS          80C310
    80C320.MCU    DALLAS          80C320, 87C320, 80C323, 87C323
    80C390.MCU    DALLAS          80C390
    87C520.MCU    DALLAS          87C520, 83C520
    87C530.MCU    DALLAS          87C530, 83C530
    87C550.MCU    DALLAS          87C550
    89C420.MCU    DALLAS          89C420, 89C430, 89C440, 89C450
    DS5000.MCU    DALLAS          5000FP, 5000, 5000T, 2250, 2250T
    DS5001.MCU    DALLAS          5001FP, 5002FP, 5002FPM, 2251T, 2252T
   MAX7651.MCU    Maxim           MAX7651, MAX7652
  COM20051.MCU    SMC             COM20051
     89C52.MCU    Atmel           89C52, 89C55, 89LV52, 89LV55, 87LV52,
                                  80F52, 87F52
   87F51RC.MCU    Atmel           87F51RC, 87F55, 87LV55
   89C1051.MCU    Atmel           89C1051
   89C2051.MCU    Atmel           89C2051, 89C4051, 89C1051U, 89C2051x2
   89S8252.MCU    Atmel           89S8252, 89LS8252
   89S8253.MCU    Atmel           89S8253
     89S51.MCU    Atmel           89S51
     89S52.MCU    Atmel           89S52, 89LS52
     89S53.MCU    Atmel           89S53, 89LS53
   89S4D12.MCU    Atmel           89S4D12
   83C5101.MCU    Atmel           T83C5101, T87C5101, T83C5102
   83C5103.MCU    Atmel           83C5103, 87C5103
   83C5111.MCU    Atmel           83C5111, 87C5111
   83C5112.MCU    Atmel           83C5112, 87C5112, 80C5112
   89C5115.MCU    Atmel           T89C5115
   73M2910.MCU    TDK             73M2910, 73M2910A
    AN2131.MCU    Cypress         AN2121, AN2122, AN2125, AN2126,
                                  AN2131, AN2135, AN2136
  EZUSBFX2.MCU    Cypress         CY7C68013
   W78C33B.MCU    Winbond         W78C33B, W78L33
   W78E51B.MCU    Winbond         W78E51B, W78C51D, W78L51, W78LE51
   W78E52B.MCU    Winbond         W78E52B, W78C52D, W78E54B, W78L52, W78L54,
                                  W78LE52, W78LE54, W78IE52, W78IE54
   W78E58B.MCU    Winbond         W78E58B, W78E516B, W78LE58, W78LE516
   W78E365.MCU    Winbond         W78E365, W78LE365
    W78C54.MCU    Winbond         W78C54, W78C58, W78E58
   W78L801.MCU    Winbond         W78L801, W78C801
  W78LE812.MCU    Winbond         W78LE812
   W78E858.MCU    Winbond         W78E858
  W78C438C.MCU    Winbond         W78C438C
   W78E378.MCU    Winbond         W78E378, W78C378, W78C374
   W78E354.MCU    Winbond         W78E354, W78C354
   W79E532.MCU    Winbond         W79E532
    W77E58.MCU    Winbond         W77E58, W77C58, W77C516, W77C32,
                                  W77LE58, W77L32, W77IE58, W77IC32
   W77E516.MCU    Winbond         W77E516
   W77E532.MCU    Winbond         W77E532
  W77LE516.MCU    Winbond         W77LE516
  W77LE532.MCU    Winbond         W77LE532
   W77E468.MCU    Winbond         W77E468
  W925E625.MCU    Winbond         W925E625, W925C625
  W925E240.MCU    Winbond         W925E240, W925C240
   ADUC812.MCU    ADI             ADuC812
   ADUC814.MCU    ADI             ADuC814
   ADUC816.MCU    ADI             ADuC816
   ADUC824.MCU    ADI             ADuC824
   ADUC831.MCU    ADI             ADuC831
   ADUC832.MCU    ADI             ADuC832
   ADUC834.MCU    ADI             ADuC834
   ADUC836.MCU    ADI             ADuC836
   PAGEONE.MCU    Winedge         WE52PO128, WE52PO512
   ULTRA51.MCU    Winedge         U51F128S, U51F64S
    CC1010.MCU    Chipcon         CC1010

