Yonderboy@cup.portal.com (Christopher Lee Russell) (12/11/90)
I am very interested in programming in C on my new (used) Atari ST. I am curious what PD C compilers might be available and if they are any good. I got Lattice C version 3.03 with my Atari.. Is it possible to get an upgrade to this? (Is the company still supporting Atari).. Also what are considered the best C compilers that are not PD... Thanks ahead of time.. ....Yonderboy@cup.portal.com
boyd@mailer.cc.fsu.edu (Mickey Boyd) (12/12/90)
In article <36774@cup.portal.com>, Yonderboy@cup.portal.com (Christopher Lee Russell) writes: >I am very interested in programming in C on my new (used) Atari ST. I am >curious what PD C compilers might be available and if they are any good. I >got Lattice C version 3.03 with my Atari.. Is it possible to get an upgrade >to this? (Is the company still supporting Atari).. Also what are considered >the best C compilers that are not PD... Thanks ahead of time.. > ....Yonderboy@cup.portal.com I believe Lattice is still supported in Britain, and that they have come out with a recent upgrade that is quite nice. I think it does not receive much attention in the US because of Mark Williams C and Laser C (both in-country products). In the PD realm, the two biggies the I have heard of are Sozobon and GCC. GCC is superb, but you need at least 2 megs to compile large programs (4 would be a better idea). It is worth it to ftp GCC just for the docs, lots of good info there. Sozobon seems to be solid, but I believe there are some documented bugs. Another compiler that I am impressed with is Prospero C. This is another British product that optionally supports the ANSI standard, and is rock solid. The Prospero company also produces both FORTRAN and Pascal, and one can cross-link the object files from any of the three with any of the three (does that make sense?). All of the Prospero compilers have great documentation (>1000 pages), and are well supported. They also produce a source level debugger, and provide .ttp versions for use under a shell. The programming environment is the same in all three compilers, which is nice if you have to switch between them. As always, this is IMHO. -- Mickey R. Boyd | "God is a comedian playing to an FSU Computer Science | audience too afraid to laugh." Technical Support Group | email: boyd@fsucs.cs.fsu.edu | - Voltaire
sstreep@next.com (Sam Streeper) (12/12/90)
In article <36774@cup.portal.com> Yonderboy@cup.portal.com (Christopher Lee Russell) writes: >I am very interested in programming in C on my new (used) Atari ST. I am >curious what PD C compilers might be available and if they are any good. I >got Lattice C version 3.03 with my Atari.. Is it possible to get an upgrade >to this? (Is the company still supporting Atari).. Also what are considered >the best C compilers that are not PD... Thanks ahead of time.. > ....Yonderboy@cup.portal.com Well, I'll sum up my experience with C compilers... Megamax C (commercial, probably not available anymore) I used to use this compiler from a ramdisk on my old 520 ST. My impression is that this is the best C compiler for someone without a hard disk because it will all fit on a ramdisk and it's very fast. It has a few bugs (not too bad, though) and some irritating quirks due to its one pass nature, but that's the price you pay for a small, fast compiler... Its not suitable for large projects because it only uses relative addressing, but for small projects it can generate smaller, faster code than anything else I've used. Laser C (commercial) This is my compiler of choice. (I now have a mega 2 and hard disk, not really necessary with this system, but any development is unnecessarily painful without a hard disk) This compiler is super fast, the source level debugger is great, and it can produce great code if you know how to write for it. It also allows inline assembly with full access (by name) to all variables, which I need. Its a one pass compiler which means its more finicky about the code it will accept than most 2-3 pass compilers; porting unix code is almost always a pain. Mark Williams C (commercial) A good solid compiler, but too slow for my patience level; a hard drive is all but required. Accepts more C flavors than Laser C, much better for porting (non-ansi) unix code. Both have good documentation. The assembler is painfully non-standard. Generated code is bigger than Laser C. Prospero C (commercial) The only Ansi compiler in this group. This compiler works well, but I don't really like it. The linker is not smart, so all executables tend to be quite large. This is the only compiler listed that will not let you change the run-time start up module, which I think is unacceptable (to me, anyway) Some of the Gem bindings have different names than the other compilers, which makes porting Atari programs harder than necessary. It also compiles fairly slowly, even on a hard disk. On the plus side, this compiler also works together with the prospero assembler, fortran, and pascal compilers (all of which are sold separately). The docs are good, the support is actually quite good. Sozobon C (public domain or freeware) A good compiler, generates good code. When you have trouble, though, you're in for a fight because this compiler has the worst documentation in the group. What do you expect for the price? I think language documentation is very necessary. Once you figure out the compiler and your libraries of choice, though, this product works well. Comes with source code, which is great and very interesting. If your time is worth very much, I would get a commercial compiler with documentation and a source level debugger... So there's my opinions, for what they're worth. I haven't used Turbo C, Lattice C, Aztec (manx) C, or the atari GNU C compiler, so other's might wish to add something on these. Note that my emphasis has always been on writing code for the Atari, so Laser C is my choice. Anyone porting from a unix box would almost certainly find another compiler better... -sam (sam_s@NeXT.com) "life is what happens to you while you're busy making other plans" -JL