[comp.sys.ibm.pc] MS/PC-DOS C compilers...

sean@ukecc.uky.csnet (Sean Casey) (12/16/86)

I am going to buy a C compiler for my PC at the beginning of the year.
Unfortunately, I don't have the $$$ to blow on something like Microsoft
or Lattice, but I still want a decent compiler.  My budget for the
purchase is $100 (yes, I know it isn't a lot) and from looking through
Byte, Computer Language, and Dr. Dobbs, I have found these compilers
for $100 or less:

	1) Datalight C
	2) MIX C
	3) C'Prime by Manx
	4) Let's C by Mark Williams
	5) ECO-C88 by Ecosoft

I have written these companies for more info about their products.  But I
am wondering if I have left out any compilers that are in this price range.
If anyone knows of any I have, please let me know.  If anyone has comments
about any of those listed above or any I have forgot, please let me know.
I plan to do a big summary after its all over, which I think would be good
for those of us who can't afford the more expensive products.

Thanks a bunch,

Keith

rde@ukc.ac.uk (R.D.Eager) (12/19/86)

In article <976@ukecc.uky.csnet> sean@ukecc.uky.csnet (Sean Casey) writes:
>
>I am going to buy a C compiler for my PC at the beginning of the year.
>Unfortunately, I don't have the $$$ to blow on something like Microsoft
>or Lattice, but I still want a decent compiler.  My budget for the
>purchase is $100 (yes, I know it isn't a lot) and from looking through
>Byte, Computer Language, and Dr. Dobbs, I have found these compilers
>.......

There is a compiler available in the  UK  which  I  think  is  excellent
value. Don't know if you can get it in the USA, but it would be about as
cheap to fly over here and buy it..-)

It  is  called  Zorland  C  (yes,  that's a Z), and it does small model,
Lattice compatible code for starters. It compiles 2 to 3 times the speed
of Lattice, generates tighter (and generally  faster)  code,  and  links
faster  due  to a tighter library. It comes with ZC (like CC, drives the
whole compilation including LINK and EXE2BIN if required), a good  MAKE,
TOUCH, and source to 7 small utilities (PR, WC, MORE, etc.)

Also  included is a tutorial with programs on disk. Language is K&R plus
const/volatile types, enumerated  types,  structure  assignment,  voids,
function prototyping and implicit casts.

All this is (sterling) 29.95.

If you want the other memory models, you must buy the Developers Upgrade
which  also  includes  full library source (yes, all of it including the
assembler bits). This is an extra 19.95.

Object files are normal .OBJ.

I have one, I've hammered it and I like it.

-- 
           Bob Eager

           rde@ukc.UUCP
           rde@ukc
           ...!mcvax!ukc!rde

           Phone: +44 227 66822 ext 7589

dlong@sdsu.UUCP (AI Humanoid Unit) (01/01/87)

I've got MIX C.  I wouldn't recommend it.  I bought the very first
version (1.0).  There were many bugs.  The code is slow.  I compared
code from MIX on my Leading Edge to the same code on a Z-80
machine running Aztec C.  Aztec on the Z-80 was twice as fast.  And
that was after "speeding up" the MIX version with a separate program,
which BTW almost doubles the size of the code.  Also interesting was
that Turbo Pascal blew them both away.
Libraries in MIX are uncompatitble with any others.
Code and Data can only reach 64K.
Ver. 1.0 said the linker had overlays, but it wasn't supported.
Some of the problems have been fixed in the new release.  I haven't
played with my update much, though.

Some good points:

- Has many BIOS/DOS call functions
  - direct I/O
  - cursor movement
  - text attributes
- Has library of string function.  The kind of strings where
  the length is stored stored at the beginning, like Turbo Pascal.
  I haven't used them, but looked like more than you'd need.
- Has source for most of the libaries (Except for the stuff they
  obviously had to write in assembler, like BIOS stuff).  The
  only problem is, if the functions with no source are wrong,
  you are out of luck.  One of them was indeed wrong in V1.0
  But there is a way that you can compile and include your
  own programs in the standard library.

More bad points:

- The libaries are stored in some kind of encrypted/pseudo/whatever.
  Anyway, you can't look at it with DEBUG and tell it is 8088 assembler.

- Requires a runtime library.  Make the minimum size of a file pretty
  big.  ( I think about 10K ).

- I don't recall an easy way to address memory outside of current
  Data Segment.

Overall, a slow compiler.  But at least it was only about $50.
I honestly wish I had Aztec C or something better.
-- 
Dean Long
San Diego State Univ.
sdcsvax!sdsu!dlong