[net.micro.atari16] Program Development on the ST

oyster@uwmacc.UUCP (Vicious Oyster) (03/05/86)

*** REPLACE THIS LINE WITH YOUR MUSHROOMS ***

  Well, I don't (yet!) have my ST, but I want to be able to plug it in and
start programming immediately (1/2 :-), so I'm going to be ordering software
soon.  Here's a very short summary of what I've seen here so far on the 
subject of languages:

TDI Modula-2: Exciting, but has a bizarre object file format

OSS Personal Pascal: Great! Impressive! Nifty!

DRI C: Slow and lacking

Megamax C: It exists

Lattice C: Real Soon Now

  Is that all anybody knows about?!  I'd rather program in C than Pascal, but
so far I'm leaning toward the TDI Modula-2 compiler.  Is there any other C
out there?  What about assemblers?
  Since the language and compiler themselves make up only a part of a
development system, I'm also very interested in the less heralded things,
like editor (if there is one), edit-compile-link cycle (speed, ease,...),
documentation, library routines, etc.  (The OSS Pascal and TDI Modula-2
reviews have been really good about that; thanks, to those of you who've
posted).  Any information would be appreciated (post things of general
interest; send obnoxious comments and flames by E-mail).

My personal view of the developer's kit:
It may have been the only game in town at one point, but that's not true 
anymore.  From the reports on the compiler and documentation, it's not
worth the $300 price.  Are there any plans to either reduce the price, 
tidy it up, or unbundle the components?  Also, both myself and another
couple of people I've talked to see an attitude on the part of Atari
of "if you didn't pay us $300 to be conferred the title of Developer
we won't play with you."  Is this a warped perception?  [This one 
should probably be answered by E-mail!]

 - Joel Plutchak
   {allegra,ihnp4,seismo}!uwvax!uwmacc!oyster

Can you say "opinion"?  I *knew* you could!

franco@iuvax.UUCP (03/08/86)

I don't think the DRI C supplied with the dev kit is slow - in fact it may
be the fastest game in town.  I estimate that it is at least 3 times faster
than OSS Pascal based on running some simple fibonacci programs (actually,
the fibonacci result difference was greater than 3 times - but to be
conservative I used the factor 3).  However, the time to compile is long and
compiling is awkward (as supplied by Atari).  One quickly learns, however to
overcome these defects: Get TOS in ROM, upgrade to 1MEG and install a 650K
RAMDISK - then pare down the libraries a bit, create the appropriate batch
files, put everything into the RAMDISK and go to town.  There is one serious
defect with the DRI C compiler, however: some C like functions (e.g. fgetc..)
do not work the way they are supposed to.  So, for example, i/o is done a bit
differently with DRI C than with other C variants.  My colleague next door has
begun taking the drastic step of changing many of these functions so they look
like C functions.  

One other comment: the dev kit has indeed lost its value - the reason is that
almost everything in it is now in the Public Domain in one form or another
(except, perhaps, the Compiler (Gee - I wonder why?)).  It was a bargain when
it was first introduced, though.

franco@iuvax.UUCP (03/08/86)

One more thing - I have found that the people at atari bend over backwards
to help you whether or not you are a developer.  Most people do not have this
impression, though.  The reason, I think, is that Atari is a "small" company
doing big business and many of us have fallen through the cracks from time to
time just because they don't have the personell to take care of everthing.
I think that neil and dyer coming to the net are an example of this: it took
them a long time to make it to the net (exasperating many of us) but they
did make it and are now doing a very fine job of keeping us informed and 
giving individual help when asked (I had a few special favors to ask and these
were granted before I knew what happened - I am too ashamed to tell you what
those favors were because they involved privileges that almost no one else
has at this time).  

disclaimer: I have fallen through the cracks many times myself, yet I have
   great respect for the people at Atari (like neil and dyer and frick) who
   have always answered my questions WITHOUT first asking whether I was
   a developer.  Above all, I love my ST and I could tolerate a whole lot
   more mistreatment before even entertaining the thought of giving it up.
   I am not connected with Atari in any way.

dag@apr.UUCP (Daniel A. Glasser) (03/11/86)

<Eat this line and call me in the morning>

I've purchased and am now using the Lattice-C compiler for the ST...
What follows is a brief review:

Product:    Lattice-C compiler

Developer:  MetaComCo plc
	    26 Portland Square
	    Bristol, BS2 8RZ
	    England

	    5353 Scotts Valley Dr.
	    Scotts Valley, CA	95060

List Price: $149.00

Included:   Compiler  (Two files -- Seperate passes)
(Brief)	    Driver Program  (Short-hand, runs the two passes together)
	    Editor -- screen with command mode
	    Linker  (GST)
	    C Library  (Both GST and LINK68 formats)
	    GEM interface library  (Both GST and LINK68 formats)
	    GEM interface library source  (MetaComCo Macro Assembler format)
	    Manual -- Paperback (270 or so pages)
	    3.5" SS/DD Disk
	    Bookshelf case
	    Warranty/Registration card

Compiler:   The compiler is a fairly complete implementation including
	    bitfields, floating point, unsigned char, and the like.
	    Preprocessor is a little limited (No good expression
	    processing using defined symbols in #if lines.)  The code
	    generated seems to run quite well, but the linked program
	    is slightly larger than the same code compiled with the
	    Alcyon (DRI) C compiler and the library supplied with the
	    toolkit.  For MicroEmacs (my version) the difference is
	    about 3K (36000bytes vs 33000bytes), but the library with
	    Lattice C seems to be more robust.  The compiler has options
	    to generate DRI format files, to specify A6 or A5 for frame
	    pointers, and position-independent code.

Library:    Not the fullest library, but adequate.  The memory allocation
	    routines have a weirdness about them -- By default, the program
	    snarfs up all but 4K of the available space on the system,
	    but you can specify, either at compile/link or run time,
	    just how much space you want available for malloc.  This
	    is not bad if you don't want to execute child processes
	    or are not going to use an undetermined amount of dynamic
	    memory -- This switch would be nice if you could specify how
	    much memory to leave available to the system rather than
	    requiring you to specify the amount of pool to allocate.
	    Anyway -- There is no realloc(), getenv(), or access to the
	    "Line A" interface.  There are extensive, and useful, string
	    functions including pattern search.  The GEM library is
	    complete, so far as I can tell.  The libraries are provided
	    in both GST and DRI format.  Source for the GEM interface
	    library is included.

Linker:	    Does what it says.  This is the GST linker.  Uses command
	    files which are easy to understand.  Well documented.
	    Produces link map files (can be supressed.)  Allows definition
	    of globals at link time including simple arithmetic using
	    globals from object modules.  Reasonably fast.

Documents:  Clear, concise and well layed out.  Seems to be hastily put
	    together, though, lacking good examples.  Appendix D,
	    the function index, is from the MS-DOS Version for the 8086.
	    Would be more convenient in loose-leaf form.

Summary:    For the price (I got it for about $105.00) this seems to be
	    a good choice.  It compiles faster and produces more robust
	    code than the Alcyon compiler.  If you intend to use GEM from
	    a program, a GEM programmers manual would be useful.


Disclaimer:	Other than being a customer, I've no association with
		ATARI, MetaComCo, Digital Research, or anybody else
		with any clout.  Everything is a registered trademark
		of someone or another -- Don't blame me -- I didn't do
		it, I just look guilty.

-- 
				Daniel Glasser
				(One of those things that goes "BUMP (Ouch!)"
				 in the night.)

	Path: ...!cbosgd!apr!dag  ( Daniel Glasser at APR -- Formerly at
				    DEC ...!decvax!sultan!dag )

rodrique@hplabs.UUCP (Mike Rodriquez) (03/12/86)

> ...(I had a few special favors to ask and these
> were granted before I knew what happened - I am too ashamed to tell you what
> those favors were because they involved privileges that almost no one else
> has at this time).  
> 
	You ought to be ashamed for mentioning it, then. THe
fact that you got "special" favors, hush-hush, and then mentioned
them will probably ensure that you not receive such favors in the
future.  Having admitted that you got them, now why don't you
let the rest of us know what they are???
Mike "another ST-lover" Rodriquez

jhs@MITRE-BEDFORD.ARPA (03/13/86)

That's it, Mike, play on his guilt and insecurity until WE get the special
favors too!

						-John S.
						jhs @ MITRE-Bedford.arpa
						<path>!ihnp4!linus!mbunix!jhs

franco@iuvax.UUCP (03/14/86)

If you want special favors and can show a legitimate need then simply ask!
I am sure the staff at Atari will be glad to help you!  And I won't mind one
bit.