[comp.sys.cbm] C compilers

ins_abg@jhunix.UUCP (02/23/87)

I am looking for a good C compiler for the C-64.  I have heard that C-Power
is good but have also seen quite a few others advertised including Super C 
Compiler and a few others.  What is the BEST?
	Also what is the story with RAM expansion for the C64. I have been 
looking for 2 months since I heard it was to be released soon and have
been unable to find it
					Thank you,
				Brandon Goldfedder @jhunix

-- 
Life is a dirty joke, and I'm waiting for the punchline.

rickc@pogo.UUCP (02/26/87)

In article <4468@jhunix.UUCP> ins_abg@jhunix.UUCP (Brandon Goldfedder) writes:
>I am looking for a good C compiler for the C-64.  I have heard that C-Power
>is good but have also seen quite a few others advertised including Super C 
>Compiler and a few others.  What is the BEST?

Summary:
Super-C is worth the $60-$80.  

I have not used C-Power.  I have used Super-C on the C-64 and the C-128
version.  Super-C supports standard K&R C (except for bit fields).  It
supports a resonable set of standard I/O functions.   It supports the type
double.  I have heard an other compiler only supports float.

Problems: 
1) alloc and dealloc functions are stack oriented.
2) Initializing an array (pointer to char) it is possible to overflow the
compiler's stack.  The old version generated a descriptive error
message.  The new version generates "exception error" (description:
"This normally does not occur").  
3) Can not declare procedure of class static (only global).

jw@xenon.UUCP (Jeff A. Williams) (05/13/88)

I am considering buying a C compiler for my C64, and have a few questions:

	1)  I only know of Abacus' "Super C", and another one called "Power
	    C".  Are there others?

	2)  I have Abacus' "Super Pascal" compiler, and their "Assembler/
	    Monitor 64".  I am not too pleased with either one -- compiler
	    must run under their environment, compiles to pseudo-code which
	    must be run with their interpreter, ASM monitor uses undocumented
	    memory locations, etc.  Is their C compiler any better?

	3)  Does any compiler compile directly to 6510 machine code?

	4)  Do they support object modules/linking?

	5)  Are they incredibly slow (> 5 minutes to compile and link
	    "main() { printf ("Hello world.\n"); } is incredibly slow :-)

	6)  Are they compatible with the GEOS operating system.

Any information concerning C compilers for the C64 would be greatly
appreciated.

-- 
Jeff A. Williams	uunet!ingr!b11!xenon!jw
			uunet!ingr!b11!chetju!jw

Disclaimer:  These opinions be just mine only.

backstro@silver.bacs.indiana.edu (05/16/88)

/* Written  4:29 pm  May 12, 1988 by jw@xenon in silver:comp.sys.cbm */

>I am considering buying a C compiler for my C64, and have a few questions:
>
>	1)  I only know of Abacus' "Super C", and another one called "Power
>	    C".  Are there others?

As far as I know these are the two main ones.

>	2)  I have Abacus' "Super Pascal" compiler, and their "Assembler/
            [....]

Yes I fully agree.  Abacus's language development programs are all poorly
written and don't function worth a hoot.

>	3)  Does any compiler compile directly to 6510 machine code?

I believe that Power C does.  As to Abacus see no. 2...

>	4)  Do they support object modules/linking?

Yes, Power C does.

>	5)  Are they incredibly slow (> 5 minutes to compile and link
>	    "main() { printf ("Hello world.\n"); } is incredibly slow :-)

I can't tell you for sure, but I've heard Power C is pretty quick.

>	6)  Are they compatible with the GEOS operating system.

My guess is someone has developed a set of overlays, libraries, and some sort 
of linker for the creation of GEOS programs.  If not it wouldn't be all that
difficult.

>Any information concerning C compilers for the C64 would be greatly
>appreciated.
>
>-- 
>Jeff A. Williams	uunet!ingr!b11!xenon!jw
>			uunet!ingr!b11!chetju!jw
>
>Disclaimer:  These opinions be just mine only.

I've programmed GEOS in assembly before.  Nicely set up pseudo-kernal.
Although I've now switched to programming the Amiga lately I think my
thoughts about the ease of creating a library-type module for a C
compiler is correct.  After learning C, I personally think that GEOS
and C would be the best way to go.

About the compilers, Power C contains two versions of the program.  One
for the 64 and one for the 128.  (I think they still do...)  Also the
128 version supportFAST (2 Mhz)) mode compiling and use of the 128K
and 512K RAM expanders.

Hope this helps...

 +----------------------------------------------------------------------------+
 | James Colyer | #define LIFE (?) | AMIGA!  //// |  Running his 1 Meg Amiga  |
 |---------------------------------|        ////  |   1000 from a Lobby (!)   |
 | ARPA: backstro@silver.bacs.     |       ////   |---------------------------|
 |       indiana.edu               |      ////    | "There is no dark side on |
 | USSnail: 4755 N. Kinser Pike,   | \\\\////     |  the moon, really. Matter |
 |          Bloomington, IN, 47401 |  \\XX//      |  of fact it's all dark."  |
 |----------------------------------------------------------------------------|
 | The opinions expressed are those of a sick and deranged maniac.  Poor sod. |
 +----------------------------------------------------------------------------+

mat@emcard.UUCP (Mat Waites) (05/17/88)

Power-c is the only choice for compiling any language that I have tried on
the 64. Super C is copy protected and thus disables any fast-load type
cartidges.  I tried their pascal too, and couldn't live with the "custom"
file system.

Power C has a real compiler (no P code), and a REAL linker. They
even allow you to build libraries of routines. This is a contrast to
the Abacus products which have all of the system routines in a big hunk.

The system is reasonably fast on compiles if you have two disk drives and
get the Spinnaker Turbo load cartridge. One of the stacks used by the
system is in the cassette buffer, and this kills most other fast-load
cartridges (like FastLoad).

ProLine has a bbs with some source code and stuff (they originally distributed)
but its in Canada and too expensive for me to call more than once in a lifetime.

Good Luck

mat




-- 
  W Mat Waites                     |  PHONE:  (404) 727-7197
  Emory Univ Cardiac Data Bank     |  UUCP:   ...!gatech!emcard!mat
  Atlanta, GA 30322                |

John_-_DeBert@cup.portal.com (05/17/88)

(Please bear with me, as my terminal cannot 
include quotes.)
Someone writes about C compilers, the Abacus Super C and the Power C.

As far as I can tell, those are the only two compilers presently available
but there might also be a PD version out there somewhere.

Abacus' Super C is from Data Becker, in Dusseldorf, West Germany. Abacus is
merely an agent selling Data Becker software in North America.

I have Super C and I'm not too happy with it. It is difficult to understand
the manual and I've been unable to copy the allegedly un-copy-protected files
to a 'use' or work disk.(I had to buy a backup copy for ten dollars.) This 
product is definitely NOT for novices.

Is the 'Super Pascal Compiler' actually an interpreter?!? I've seen the package
but haven't bought it yet. IF it is an interpreter, I won't.


John_-_DeBert@cup.portal.com
         CIS: 75530,347
       

rob@selenium.cchem.berkeley.edu (Robert Oyung) (05/18/88)

I have been using the Abacus Super C package for a while now and have tried
both the C64 and C128 versions.  The C128 version is much better because of
the implementation of a RAM disk which makes compiling and linking blazingly
fast.

Super C does not support as close an implementation of C as Power-C does
in that some "textbook" programs do not compile if you type them in straight.
This is a problem if you are just learning C.  Super C does support graphics
but not sound.

Although this package is copy-protected, you can make back-ups with
"Fast Hack 'em".

It produces machine code that is not as fast as Power-C but it is not
noticably sluggish.

Good Luck!

--------------------------------------------------------------------------------
Robert Oyung                                  rob@selenium.cchem.berkeley.edu

rickc@pogo.TEK.COM (Rick Clements) (05/19/88)

In article <5490@emcard.UUCP> mat@emcard.UUCP (Mat Waites) writes:

>Power-c is the only choice for compiling any language that I have tried on
>the 64. Super C is copy protected and thus disables any fast-load type
>cartidges.  I tried their pascal too, and couldn't live with the "custom"
>file system.

Super-C is copy portected.  It does have a built-in fast loader.  The biggest
problem is you cann't move any thing to the RAM disk.

>Power C has a real compiler (no P code), and a REAL linker. They
>even allow you to build libraries of routines. This is a contrast to
>the Abacus products which have all of the system routines in a big hunk.

You can build library routines in Super-C, but it loads the whole thing.
That is one of the reasons I am going to buy Power-C.  The other is there
source format is not standard; this makes it hard to download source code.

BTW, Spinnaker doesn't seam to be pushing Power-C very much.  I had not seen
it in any of the stores here.  So, I ask about ordering it.  They had to look
in four catalogs and call two distributors before the could find out about it.

leblanc@godzilla.ele.toronto.edu (Marcel LeBlanc) (05/20/88)

In article <3505@pasteur.Berkeley.Edu> rob@selenium.cchem.berkeley.edu.UUCP (Robert Oyung) writes:
>I have been using the Abacus Super C package for a while now and have tried
>both the C64 and C128 versions.  The C128 version is much better because of
>the implementation of a RAM disk which makes compiling and linking blazingly
>fast.
 ...
>It produces machine code that is not as fast as Power-C but it is not
>noticably sluggish.

Super C allows for integers that are 16 or 32 bits.  I was under the
impression that Power-C only allows 8 or 16 bit integers.  If this is the
case, then this would explain a lot of the differences in speed and size
between the two compilers.  My biggest gripe about Super C is that I can't
copy the compiler to the RAM disk, or to my 1581 drive.

>--------------------------------------------------------------------------------
>Robert Oyung                                  rob@selenium.cchem.berkeley.edu


  Marcel A. LeBlanc
  University of Toronto -- Toronto, Canada
  also: LMS Technologies Ltd, Fredericton, NB, Canada

CSNET:	leblanc@godzilla.ele.toronto.edu   CDNNET: <...>.toronto.cdn
UUCP:	{decvax,ihnp4,linus,utzoo,uw-beaver}!utcsri!godzilla.ele!leblanc
ARPA:	leblanc%godzilla.ele.toronto.edu@relay.cs.net
BITNET:	leblanc@godzilla.ele.utoronto (may not work from all sites)

klehr@sun.soe.clarkson.edu (Tom Klehr) (07/19/89)

	I'm looking for a C compiler for the C-128.
	Anybody have any suggestions as to which one I should use??


		Thanks.

joe@pnet51.cts.com (Jim Henderson) (07/24/89)

Abacus has a fairly good compiler called "Super C-128" which is 128 specific. 
I've used the 64 version, and know somebody who has done mainframe development
with it - no compatability problems; it's ANSI C!

   Jim Henderson, joe@pnet51.cts.com
  "Don't ask me how it works or I'll start to whimper."  - Arthur Dent
  DISCLAIMER:  "I speak for myself, and only for myself."  (Except where noted.)

sekora-jay@CS.YALE.EDU (Jay Sekora) (07/24/89)

In article <808@orbit.UUCP> joe@pnet51.cts.com (Jim Henderson) writes:
>Abacus has a fairly good compiler called "Super C-128" which is 128 specific. 
>I've used the 64 version, and know somebody who has done mainframe development
>with it - no compatability problems; it's ANSI C!

do they have a new version out?  i have super-c 128, and it's pretty good,
but it's certainly NOT ansii c.  quibbles i have with it include:
	* stdio.h doesn't even try to be standard.  (e.g., getc returns
	  char, so you can't check its return value for EOF--this is one
	  of the smaller divergences.)
	* struct and union names conflict with other names, so common things
	  like struct name1 { blah, blah } name1 fail.
	* no real dynamic memory allocation.  there is an alloc function,
	  but if you want to free things you have to keep track of all the
	  size and position information yourself, and cross your fingers.
like i said, it's really pretty good, but the version i have is not standard
in any meaningful sense of the term, although the language itself (ignoring
libraries and system calls) is fairly close to first-edition C ("C Clas-
sic" :-) .  if they've come out with an ANSII version i'd be interested in
hearing about it.
-j.

____________________________________________________________________________
DISCLAIMER:  Everything I say is the|			sekora-jay@yale.UUCP
absolute and utter truth, but Yale  |		  {backbone}!yale!sekora-jay
doesn't necessarily know this.	    |		       sekjaya@yalevm.BITNET
				    | 6455 Yale Station, New Haven, CT 06520

GAJ103@PSUVM.BITNET (12/05/89)

I have read many postings about C compilers for the C=64, mainly Power-C
and Super C.  When I read about Power-C, I decided that this was the
compiler that I would buy.  Now, I have been reading more about Super C
from Abacus.

I would like to know which complier is better for learning the C language
on the Commodore 64?  Which compiler resembles standard ANSI C?  How easy
is it to port code from these compilers to other computers (i.e. Turbo-C
on an IBM PC)?  How simple is the editing/compiling/linking process?

Any suggestions/comments on these two compilers (or others) would be
greatly appreciated!


Gordon Jenness             [ What is the numerical relationship between ]
Penn State University      [ Halloween and Christmas?                   ]
GAJ103@PSUVM.BITNET        [ OCT 31 = DEC 25                            ]

mamiller@rodan.acs.syr.edu (Mark A. Miller) (04/24/91)

**********************************************************

About a year ago, I bought the Abacus Super-C for the C-128 for dynamic
simulation programming.  After getting weird results, I traced the
problem to the ATN (arctangent) function. It gave values that were
about 10% off in some parameter range (I think it was around 1.0).
Kind of disappointing.

Speaking of compilers, anybody know where I can get a good FORTRAN
compiler for my 128?  Does Abacus still sell a 64 version?

     Mark Miller
     mamiller@rodan.acs.syr.edu

************************************************************

MSGARLAN@MTUS5.BITNET (04/29/91)

What are the better C compilers for the 64?  I can get some used from someone,
but I want to know which ones are the best.  He has ABACUS's Compiler and a
couple others.  And how are the compilers setup?  Are there Commodore include
files, libraries, etc.?  Just wondering... and thanks in advance.


    ------------------------------------------------------------------
    Michael Garland   Frsh CS at MTU |    // | "You can't have
    Bitnet:msgarlan@mtus5            |   //  |  everything... where
    Internet:msgarlan@mtu.edu        | X/   |  would you put it?"
    ------------------------------------------------------------------