There are a number of alternatives, each with proponents and detractors. Brothers have come to blows and declared Sword-in-hand that one compiler will always be better than another compiler based on obscure ANSI compatibility issues or how many bugs the compiler had in June of 1982. I have been told that arguments over compilers was actually what ignited the Hundred Years' War. You will never regret moving from Assembler to C. To get the basics, study C with any C compiler you can get your hands on (skip C++, the "++" stands for Added Headaches and doesn't look much like C) such as Power C from Mix Software ($19.95) http://www.mixsoftware.com/root.htm HOWEVER, there are two compilers for PICs that have a lot of people using them: Hitech and CCS. I have both, I use both, I cuss both. CCS will cost you $99 plus $99 a year maintenance fee for upgrades. They have a different package for 12 bit cores (PIC12CXXX etc) , 14 bit cores (PIC16Cxx and PIC16Fxx) and I think they have something for the 18Fxx parts. Each of these modules costs $99. Over time, CCS can add up to a lot of money if you need to upgrade to get new parts, but you can get in the door pretty cheap. CCS is a bit easier to use than Hitech, IMHO, as it comes with some canned functions that accomplish a number of things not included in the basic Hitech package. However, that comes at the price of greater complexity and greater chance for compiler error . I have switched projects back and forth between the two compilers by changing a dozen lines of code, so I really can't see what all this bloodshed is about. http://www.ccsinfo.com/aboutccs.shtml Hitech's fees are a bit steeper, ($850) although they have a demo version which works on a limited but useful array of parts. Hitech is used by most of the Microchip field appliacations engineers. You know all that tedious assembly code they have on their website? Most of it, according to my FAE, was written in Hitech C, compiled, and used verbatim. (why don't they just post the C code? I asked him) Hitech is called "a real compiler" by it's proponents, also called a "real PITA" by it's detractors. Hitech is basic, stable, and bare-bones. You add any fancy features. Hitech can be frustrating, as you have to add in code for basic stuff such as serial communications. The serial routine I have doesn't support an 18 MHz crystal, or 300 baud, for instance, and I have been scratching my head to get it to do these things, which are no-brainers within CCS C. However, as I am straining away to get this thing to work, I can be proud that it is 100% ANSI compliant, a fact which does me little good but seems to be a gigantic issue for other people on the list. OTOH, Hitech produces compilers for a number of other processors, which could allow you to port code to them, and ANSI compatibility means you should be able to port code to someone else's compiler easily. Hitech is known as a very stable compiler, with good tech support, few bugs, and good beta test before new releases. There is a lot of code for Hitech compilers out on the web, there is an active message board, and there is the PIClist with Hitech fanatics aching to help you with your code. http://www.htsoft.com/ Oh yeah, this question is asked once a month. -- Lawrence Lile Damien Cahill Sent by: pic microcontroller discussion list 09/16/2003 07:58 AM Please respond to pic microcontroller discussion list To: PICLIST@MITVMA.MIT.EDU cc: Subject: [PIC:] Moving from Assembly to C Howdy, I have a fair bit of experience in microchip assembly, having just completed an engineering thesis based on a PIC18F452, but I have a new project which will require a lot more sophistication than can easily be achieved using assembly alone. My question, which is probably a recurrent one on this list, is which of the several C compilers should I be looking at. My criteria are inter-operability with mplab, quality and quantity of libraries and of course cost. Any advice would be greatly appreciated. Cheers Damien Cahill -- http://www.piclist.com hint: The PICList is archived three different ways. See http://www.piclist.com/#archives for details. -- http://www.piclist.com hint: The PICList is archived three different ways. See http://www.piclist.com/#archives for details.