On Thu, 2 Feb 1995, David Fenyes wrote: > Also, if optimization is not a problem, there is a "Tiny" C compiler > which is powerful enough to compile itself on comp.sources.unix > volume 5 (based on Ron Cain's original compiler). This has code > generators for 8080, 6502, 6809, etc. which would be good models > for PIC or other code generators, and would also be a good starting > point for a PD C compiler. This may be a better starting point than GCC. Concerning the limitations (or challenges :-) of the PIC as it relates to passing large amounts on parameters on the stack, having pointers and arrays and floating point math: I don't see it as an all or nothing proposition as some have suggested. Certain things like loops and conditionals can be implemented fairly efficiently and consistently, so that you can write readable code that has a better chance of working right the first (or second or third) time. If it seems more logical (or efficient) to write a bit of code in assembler, put it inline. To me, using a C compiler (or a subset-of-C-compiler) is is not a matter of laziness or a fear to learn the PIC instruction set (it is easy to learn) but an issue of convenience. And sometimes one may want to do multiple precision integer math or floating point. Then they would have to link in code that might consume a great deal of the PIC's resources, but if it is a simple application that just wants to meke a few floating point calcs, maybe it is appropriate, and I understand, not for everyone :-). Admittedly, there is no way to have a full implementation of C for a 16C84, like GCC on a Sun. Even printf("%d", 1); is probably out of reach. But I honestly believe a useful and simple subset of C can make a powerful and convenient compiler. IMO, the CCS compiler is 90% there, but alas, it would be nice to have source code and FREE software! Jason