[sci.electronics] 8051 cross-assemblers

ronj@datacom.ee.ubc.ca (Ron Jeffery) (08/16/88)

I need an 8051 cross-assembler.  Does anyone have a public domain or
shareware one that they could mail to me?  I can also anon. ftp.  It
should run under MS-DOS (preferably) or UNIX.  Thanks.

Ron Jeffery 

ronj@datacom.ee.ubc.ca  or
uunet!ubc-cs!ubc-datacom!ronj

john@jetson.UPMA.MD.US (John Owens) (08/18/88)

In article <253@coho.UUCP>, ronj@datacom.ee.ubc.ca (Ron Jeffery) writes:
> I need an 8051 cross-assembler.  [....]  It
> should run under MS-DOS (preferably) or UNIX.

In the August BYTE, Ciarcia's Circuit Cellar has the first of a series
of articles on developing systems using the 8051 family.  He mentions
a cross assembler:

	The shareware Pseudo-SAM 8031 cross assembler is available on
	the Circuit Cellar BBS [ 203-871-1988 300/1200/2400 24 hrs]
	under the name PS51A123.ARC.  It has most of the useful
	features, few frills, and is quite serviceable.  A newer
	version is available from PseudoCode, P.O. Box 1423, Newport
	News, VA  23601, BBS phone (804) 898-7493.

A commercial one is also mentioned.

Good luck!
-- 
John Owens		john@jetson.UPMA.MD.US
SMART HOUSE L.P.	uunet!jetson!john		(old uucp)
+1 301 249 6000		john%jetson.uucp@uunet.uu.net	(old internet)

ronj@datacom.ee.ubc.ca (Ron Jeffery) (08/24/88)

A while ago I posted a request for a public domain cross-assembler for
the intel 8051 microcontroller.  I would like to thank all the people
who replied.  Also, enough people asked for me to relay my findings
that I feel it would be worthwhile posting what I've found out.

I have obtained two shareware assemblers, PsuedoSam 51 by PsuedoCode
and TASM by Thomas Anderson at Speech Technology Incorporated.  Both
are available from Steve Ciarcia's Circuit Cellar Bulletin Board ((203)
871-1988).  TASM is in a file called TASM.ARC in the /IBM/UTILITIES
directory and PusedoSam 51 is available as 8051.ARC in the
/IBM/UTILITIES directory and as PS51A123.ARC in the /PROJECTS
directory.  PsuedoSam 51 (and PsuedoSam assemblers for all sorts of
other processors) are reportedly available from SIMTEL20 but it has
been down.

The major problem with these assemblers is that they are not compatible
with the intel assembler or with each other.  However, they are both
quite usable.  PsuedoSam uses a somewhat unusual syntax (.equ ONE, 1
instead of ONE equ 1).  TASM is a table driven assembler.  The .ARC
file includes tables for the 8048, 8051 and 6502.  The format of these
files is documented for people wishing to create their own tables.
TASM also includes a C like preprocessor with #define, #if, #include,
etc.  I think this is a good idea, but some problems came to light when
I tried to use this feature.  In particular the implementation of
#define works on characters rather than tokens, therefore the following
code does not work as expected:

#define LATE            R3
#define LATEPORT        0x50
        MOV     R0, #LATEPORT

Both of these assemblers produce listings and intel hex format object
files.  After briefly trying both products I chose to use PsuedoSam 51.
-- 
Ron Jeffery                     | Internet: ronj@datacom.ee.ubc.ca
Communications Research Lab     |     UUCP: ubc-cs!ubc-datacom!ronj