SDCC AS and LINK history

From SDCC wiki
Jump to: navigation, search

The mcs51 (asx8051, aslink), z80 (as-z80, link-z80), gbz80 (as-gbz80, link-gbz80) and hc08 (as-hc08, link-hc08) assemblers and linkers, which are part of SDCC source tree, are derived from ASXXXX, written by Alan Baldwin: mcs51 (asx8051, aslink) and hc08 (as-hc08, link-hc08) are derivates of version 1.70, z80 (as-z80, link-z80), gbz80 (as-gbz80, link-gbz80) are derivates of version 1.75.

The ASXXXX home page is at
The original ASXXXX V 1.70 and V 1.75 can be downloaded from

This may also be interesting:

License issues

ASXXXX V 1.70 and V 1.75 were issued with the following statement in file ASXXXX/ASXDOC/ASMLNK.DOC:

    The  ASxxxx  assemblers  and the ASLINK relocating linker are
placed in the Public Domain.  Publication  or  distribution  of
these programs for non-commercial use is hereby granted with the
stipulation that the  copyright  notice  be  included  with  all


       E N D   U S E R   L I C E N S E   A G R E E M E N T

   This software is FREEWARE which means it is NOT public domain
but  fully  copyrighted  material  that  is  distributed  freely
without  money.   Its  electronic distribution through BBSs, the
Internet, or other such means is encouraged provided no money is
requested in return.

   It is forbidden to distribute this software should this file,
or any of the remaining files, change in any way or  be  omitted
from the archive.

   If you would like to include this software together with your
own work you MUST include it only as the original  complete  un-
modified archive in which I distribute it and not as independent
files.   If  uncertain,  simply  point  others   or   link   to:

   Please note that although I have done my best to ensure there
is no potentially dangerous code  (or  accidental  virus  infec-
tions),  the  nature of programming is such that it forces me to
provide absolutely no warranty, express or  implied,  with  this
version  of the software, and I bear no responsibility for what-
ever damages, direct or consequential, you may suffer  from  its
use.   I definitely do not warrant this software for suitability
for any particular purpose, either.  It is  also  possible  that
the instructions, the extra utilities, or the examples that come
with the software contain errors,  none  of  which  were  inten-

The statement:

It is forbidden to distribute this software should this file, 
or any of the remaining files, change in any way or be omitted
from the archive.

makes impossible to merge ASXXXX version V 4.00 or higher with the SDCC version, unless Alan Baldwin changes the license or makes an exception for use with SDCC :-(

NOTE: I wrote this only using the informations I found in SDCC svn repository and on ASXXXX home page. I didn't contact the ASXXXX author Alan Baldwin or Michael Hope [user:michaelh], who (at least what I can see from the svn history) added ASXXXX sources to the SDCC repository on 2000-01-17. My interpretation of the licensing can be wrong too.


History of the Z80/GBZ80 assembler

The z80/gbz80 assembler came from the pre-SDCC version of the Gameboy Development Kit (GBDK) which had been extended to the gbz80 by Pascal Felber. When I Michael started on SDCC I imported the assembler in as a separate fork to the existing mcs51 assembler. I looked at unifying the two assemblers and updating to a later version of ASXXXX at the same time but there proved to be too many changes in the forks and too much of a difference with the then-available 2.x version of ASXXXX.

-- Michael

To be continued

You can see continuation of the story at


Personal tools