Competing with "Free" Software

Tough Survivors

As I said in the last blog entry, independent embedded C/C++ compiler companies are becoming rare birds. Of the independent companies that support multiple platforms, besides us ImageCraft, there are Green Hills (US), IAR (SE), Cosmic (FR), Rowley (UK), and… um, I think that’s it. Since being bought up, Hiware/Metrowerks primarily target Freescale chips; Hi-Tech clearly will concentrate only on Microchip’s PIC; Keil, despite being an “ARM company,” still sell tools for the 8051, C166 etc. probably because the money is good, but who knows how long that will last?… Most  if not all compiler companies were started by compiler gearheads (who else would be crazy enough to start a compiler company?) a while ago. In fact Cosmic and ImageCraft are tangentially related through our lineage with Whitsemiths. With the different product pricing and the vast number of embedded devices, most of us in fact do not compete directly with each other per se. However, there is …

The GCC Equation 

(dun dun duuuuunnnn…..)

Different embedded compiler companies “die” for different reasons, most likely financially related, and in 2009, the GCC equation must be a factor directly or indirectly. (Click on …more… to continue)


eMOS for AVR Released


The zip file is the demo version. You are limited to up to 5 tasks. Currently you will need to unzip the content in a temporary directory and then copy the files:

copy *.h c:\iccv7avr\include
copy lib*.a c:\iccv7avr\lib

When we release the next AVR compiler demo update, the files will be incorporated directly.

We really feel that eMOS is a very useful tool. The core features of preemptive multitasking and message passing are nice, but we also carefully added additional features such as stack checking, virtual watchdog, and system call error checking, which can save you significantly amount of debugging time. Please check out the documentation or the demo and see for yourselve.

Our next port is probably either the MSP430 (the system idle task hook is ideal for low power systems) or ARM. Let me know if you have interest in either port.

Posted in new product. Tags: , , . 1 Comment »

Being the Target

We don’t talk about our competitors much, if at all, because we believe any potential users can make the best decisions by us providing fully functional demo and they can see how well our tools fit their needs. Our dinosaur logo was something we did on a whim back in 1994. It’s whimisical and it drives right to the heart of our initial rationale for starting the company: we can make a living selling inexpensive compilers. Over the years, our products get more full features so it’s really about “Professional tools that don’t break your bank.”

Back to competitors. We must be doing something right, as we seem to be the targets of every company in competition with us. There is a well known 3-letter company who provided customers with benchmark data comparing their 5 year old compiler release with our then not yet released beta MSP430 compiler (have they no shame?). The guy who makes the cheap AVR compiler from Eastern Europe loves to use us in their release notes and forum postings, and how about that Aussie company who says their PRO M8C compiler is so much better than ours? It’s like we have a bull’s eye as our logo. Why mention all these now? Well, wouldn’t you know it, a seller of GCC ARM compiler with their own IDE now beating us on a 10 lines code fragment saying, see, GCC is really quite good.

Well OK, may be we can improve code generation in this case and that case, but I have expected better behavior from the last author. I have been in communication with him over the years, and I thought that he was a nice chap. While I don’t expect him not to publish whatever he likes, it would have been cordial to bring the matter to me? Oh well…

BTW, all these competitors neglect to mention that in terms of price performance, they can’t touch us. Also, we don’t exactly stand still as we improve our products all the time. Our customers use our $249 compilers to make commercial products everyday. Raw performance isn’t the only thing, usability, support, price performance all go into the equations.

BTW, eMOS has gone into beta testing. A full preemptive robust RTOS that doesn’t break your bank. Hmmm… wonder where I got the idea from? :-)

Guitar Hero and the ImageCraft AVR C Compiler

One of the hottest console games currently is Guitar Hero. It’s hugely entertaining and you get to enjoy some good music. On the downside, it doesn’t have anything to do with playing real guitar per se as the primary task is to push the right buttons as shown on the screen. To address these shortcomings, Zivix has developed a guitar with an Atmel ATMega168. The designer, Dan Sullivan,  says

We have been using the Imagecraft C compiler for the Atmel AVR for many years, and it has been a great workhorse for code development. We use an Atmel MEGA168, so having efficient code is important to squeeze in the many functions into the small memory space available.

I am very glad that we can be a part of Dan’s ingenious solution. In Zivix’s guitar, since the game requires “chords” on one string, Zivix has patent-pending sensors integrated into the fretboard. This makes the guitar act as a bridge between game playing and learning a real musical instrument. Instead of pressing colored buttons on a simulated plastic guitar, the user places their fingers on the frets, and instead of using a plastic paddle switch, a string must be picked using a conventional pick or finger. In this way a game player can learn to fret and pick strings on a real guitar, and this provides a first step to learning to play it. The guitar can then be disconnected from the game, plugged into a normal guitar amplifier, and used to learn the real songs.

For more information, please visit their web site,