[net.micro.cbm] C64 C compiler

jow@unccvax.UUCP (Jim Wiley) (03/29/85)

I have a Commodore 64 and am looking for a C compiler for it.  If
anyone out there has a C compiler I would like to hear from you.
My basic questions follow not necessarily in order of importance.

1)  What sort of editor does it use?  Does it come with the compiler
or do I need to get an editor too?

2)  Does it come with an assembler?  If not what assembler are you
using.  Can you compile down to the assembly level and stop there?

3)  Can you link modules together?  How does it handle files when
linking?

4)  How much does it let you get away with?  For example, can you
do the following:

int	row,col,c;
char	*ptr;
ptr=1024;		/*  screen  */
ptr[col][row]=c;

5)  Does it come with any utilities like printf, getchar, etc?  Does
it have a math library for trig and other functions?  Does it use
the kernel routines?  Does it handle floats?

6)  How much does it cost?  Who makes it?  Was it worth the price?

7)  What do you like/dislike about it?

8)  Are there any shortcomings or quirks I should know about before I
buy?

Send mail or post to the net.  If there is enough interest I will 
summarize responses for th net.  Thanks in advance!

Jim Wiley

bahilchie@water.UUCP (Brian Hilchie) (04/04/85)

> I have a Commodore 64 and am looking for a C compiler for it.  If
> anyone out there has a C compiler I would like to hear from you.

Pro-Line's C compiler is now available.

> My basic questions follow not necessarily in order of importance.

> 1)  What sort of editor does it use?  Does it come with the compiler
> or do I need to get an editor too?

The package comes with a full-screen editor. It scrolls in four directions,
has cut and paste, search and search and replace, and other features.
Also included are a linker and a "shell" which supports command-line
arguments and I/O redirection.

> 2)  Does it come with an assembler?  If not what assembler are you
> using.  Can you compile down to the assembly level and stop there?

The compiler does not come with an assembler, nor does it compile to
assembler. It produces an intermediate code which is tranlsated to
machine code. However there is a library function which allows 
machine language subroutines to be called.

> 3)  Can you link modules together?  How does it handle files when
> linking?

The compiler produces an object file for each source file. Several object
files may be linked to create one executable file. The linker will
automatically link in all the library functions required.

> 4)  How much does it let you get away with?  For example, can you
> do the following:

> int	row,col,c;
> char	*ptr;
> ptr=1024;		/*  screen  */
> ptr[col][row]=c;

No, but try this:

#define WIDTH 40
#define SCREEN  ((char *) 1024)
#define plot(row, col, c)   SCREEN [ (col) + (row) * WIDTH ] = (c)

int row, col, c;
plot (row, col, c);

> 5)  Does it come with any utilities like printf, getchar, etc?  Does
> it have a math library for trig and other functions?  Does it use
> the kernel routines?  Does it handle floats?

Yes, yes, yes, and yes. The library contains about 80 functions.

> 6)  How much does it cost?  Who makes it? 

$100 U.S.  
Pro-Line Software, Mississauga, Ontario.    (416) 273-6350

> 8)  Are there any shortcomings or quirks I should know about before I
> buy?

Bit-fields are not implemented, and there are a few restrictions on
initializers (e.g. structs can't be initialized).


Brian Hilchie
{decvax,utzoo,ihnp4,allegra,clyde}!watmath!water!bahilchie