"So, David, my advice is stick with assembly. If you have to learn something, let it be something that can expand on what you already know and practice. However, the ultimate decision is up to you." ------------- I own a copy of Mikro Pascal and an ancient copy of CCS C. I am embarassed to say that in over 30+ years of development, not even ONCE was the commercial firmware written in a HLL. That does NOT mean I didn't try. I just didn't feel that the commercial HLL was "stable enough". As hard as assembler is to write, HLL is rarely better or faster overall, but you can "whip up" something in short order. But I always want to know, CLEARLY, how each routine actually worked. Sometimes it seemed pretty odd how the result was derived. Just because you are using an HLL does NOT mean that you are magically doing everything right. You may have misunderstood the firmware specs and already have a mess, regardless of the language. Or, maybe you have still installed a small bug somewhere; it STILL has to be rooted out aqnd killed. If I were starting over, I'd do the same thing: learn the hardware in assembly, then, later, move to C. --Bob -- http://www.piclist.com PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist