Earliest C Compiler now on Github

The very first C compiler available “in the wild” written by Dennis Ritchie (“dmr”) is now on Github. Could be interesting to port it to compile under a modern compiler.

https://github.com/mortdeus/legacy-cc

Posted in Uncategorized | Leave a comment

Silicon Labs Acquires Energy Micro

Energy Micro is a fairly major ARM Cortex MCU player in Europe, and its line has just been acquired by Silicon Labs.

Posted in Uncategorized | Tagged | Leave a comment

The Ancient History o C

C was developed at Bell Labs on a PDP-11 by Dennis Ritchie. As soon as it was running on multiple (i.e. more than one) machines, then the nascent “document processing” OS named Unix was rewritten in C by Ken Thompson in a matter of months. Bell Lab released Version 6 Unix outside of Bell Lab and along with it, the influence of C grew.

Posted in Uncategorized | Tagged | Leave a comment

ICCAVR gets 64-bit double support in printf

(We are going to blog more often, catch us at http://imagecraft.com/blog https://www.facebook.com/imagecraft.inc and Twitter @imagecraftinc)

One common concession to C Standard on typical 8-bit embedded compilers is that double data type is 32 bits and not 64 bits as required by the standard. Since 8-bit CPU microcontrollers are usually limited by both memory size and clock speed, this is an acceptable tradeoff. However, some of these 8-bit micros are growing in size and speed, driven by the complexity of the firmware.

We added 64-bit double support a couple years back, and now we are adding full printf (e.g. %f, %g, %e”) support on the AVR compiler as well. As usual, this is optional and we even have different versions of the underlying conversion to string function depending on whether you want full range/precision support or faster execution.

Posted in Uncategorized | Tagged | Leave a comment

Exciting Times Ahead

We are about to release ICCAVR version 8.10.00, with support for CRC generation and production ELF file. The latter allows users to specify all the special control bytes (fuse, lockbits etc.) in the C source file and have a single output file for device programming. More convenient and less error prone than existing methods.

We are also working on some very exciting products. More details later when we can talk about them 🙂

Posted in new product | Leave a comment

2012 Year End Message

Dear customers of ImageCraft,

After starting to regain ground in 2010-2011, the Semiconductor sector seems to have stalled again in 2012. Nevertheless, some of our customers are now telling us that their clients are asking them to resume work on products that have not been touched in the last 5 years, so I do see that as a sign that recovery is happening. Lets hope 2013 is a more positive year for all.

ImageCraft’s big news is the release of our ARM Cortex-M and the integrated debugger. Our V8 IDE now has all the major features you would expect from a modern IDE. This puts us in a good position for 2013.

In 2013, our focus will be on increased ease of use, and broadening our middleware offerings.

In terms of ease of use and new features for the AVR compiler, we will be releasing CRC, production elf file generation for the AVR compiler in Jan 2013, and in H1 2013 we plan to release function inlining, and revamped 64-bit double support, plus 64-bit long long.

The Cortex compiler will be getting function inlining and 64-bit double support.

There is still potential in the CPU12 market. Unfortunately, due to lack of resources and the low Return of Investment on the XGATE improvements we made to the CPU12 compilers, until we see that potential grow, it’s unlikely that we will work on the CPU12 compiler in the immediate future.

As for middleware, the key market is clearly the Cortex-M. We have some ideas that we will be working on in H1 2013 that could potentially open up the market for us.

Lastly, we decided to change the AVR compiler editions and pricing to match those of the Cortex-M compiler: the compiler now comes in STD ($249) and PRO ($499). Most of the new features will only be made for the PRO edition. Existing ADV users are still supported as before with no change, but of course upgrading to PRO edition is encouraged.

As always, we wish you the best new year, and if you have comments and suggestions, please feel free to email us.

Happy 2013.

Posted in Uncategorized | Leave a comment

Another Milestone – We Now Have Our Own Debugger

Since establishing ImageCraft in 1994, we were one of the first, if not the first embedded compiler to include a Windows IDE. In 2009, our V8 release moved our IDE to the latest technological base when we adapted CodeBlocks. However, we still did not have our own debugger.

Until Now.

ICCV8 for Cortex V8.03.00 now includes an integrated debugger IDB. With a Segger Jlink unit, one click and the IDE will rebuild the project, flash download the program and start the debugger for you. All without writing linker command files or complicated debug pod configuration file.

IDB is fully functional under the PRO license and limited to one breakpoint and 64K program under -NC/STD/DEMO licenses.

We strive to provide the a combination of professional features, ease of use and cost benefits to our customers with our excellent technical support. With this release, we have moved the bar higher still.

The Press Release, also available here. Feel free to forward to anyone who may be interested.

Thank You.

****************

NEW C CROSS COMPILER AND DEBUGGER FOR ARM CORTEX M DEVICES
December 3, 2012
ImageCraft‘s ICCV8 for Cortex is a Windows-hosted C cross compiler for the ARM Cortex M devices. Built from the ground up, ICCV8 for Cortex includes a state-of-the-art IDE, C compiler tools and integrated debugger. In interfacing with the industry-standard Segger Jlink JTAG/SWD emulators, ICCV8 for Cortex provides seamless flash programming and debugging for all major Cortex M3 devices without complicated driver installation or trial-and-error configuration.

The C compiler accepts C89 Standard C with C99 extensions, and performs device-specific optimizations and function-level global optimizations. The ImageCraft Debugger (IDB) is likewise developed in-house, and is fully integrated with our compiler and IDE to provide the best out-of-the-box user experience.
The IDE is based on Open Source CodeBlocks with modern IDE features such as code folding, project management etc. With ImageCraft’s modifications, there is no need for any linker command file; the user needs only to select the target device by name.

Another ease-of-use IDE feature is flash programming capability and debugging with Segger Jlink units without installing unusual system software or writing complicated configuration files. A single button click causes the IDE to build the project (if necessary), download the code to the device, and start the debugger.
A 45-day fully functional demo is available on ImageCraft’s website. ICCV8 for Cortex is competitively priced at $249 for the STD edition / $499 for the PRO edition (includes IDB.)

Posted in new product | Leave a comment

ICCV8 for Cortex Released

ICCv8 for Cortex (V8.00.00) has now been officially released. You can download it from our website.

From the readme

[ FEATURES THAT STILL NEED TO BE IMPLEMENTED ]
– M0 Instruction Set not supported
– M4 Instruction Set not supported
– PRO optimizations not enabled
– Cortex-M Bitfield instructions not used
– Bitband memory alias
– Debugger

CHANGE LOGS:
8.00.00 August 24th, 2012
– Open c:\iccv8cortex\examples.

cortex\examples.workspace for some sample projects

– ARM CMSIS header files under c:\iccv8cortex\include\CMSIS, the compiler
driver automatically includes this directory (along with
c:\iccv8cortex\include\) in the search list.

– NXP header files under c:\iccv8cortex\include\<vendor name>\
You will have to explicitly add them to the Include Path, e.g.
$(TARGET_COMPILER_DIR)NXP\LPC17xx\

– No vendor CMSIS source files are included as they are rather large.
Please download them from the vendors’ sites.

– Please refer to the documentation, “Programming for Cortex-M” on what
steps to take to get a working project.

Posted in Uncategorized | Leave a comment

Cortex Compiler Alpha Review

The ImageCraft Cortex V8 compiler is now in good enough shape to show to the world. Please click on the “ARM Cortex Compiler Tools” button on our site http://imagecraft.com to visit the Cortex compiler page and to download the Alpha Review-1. The page will be updated with link to beta releases and production release later. Of course do expect rough edges everywhere.

V8 Cortex compiler is similar to the V8 AVR product. The installer is new and we will migrate the next V8 AVR (8.05.01) to use that as well.

With the exception of bitfields, structures, and floating point, the compiler toolchain works.

As we have not finished with the device startup code and other bootstrap support, the Alpha Preview is only good for checking out the look and feel of the product. You can also create projects and build and examine the .lst files.

We expect to support the NXP mBed platform initially at Beta so some user testing can be done at that time. We have tested the code generation extensively using our internal tools.

We are running a pre-production sales of 50% off for the Cortex licenses. If you think you will need the Cortex compiler in a few months, it’s a good way to save and to support us.

Please visit the Cortex page for more details.

**********

In another news, we have also just released 8.05.00 version of the AVR product. Notably, we have rewritten the mixed arithmetic type optimization and it is now more robust and effective. It’s definitely a worthwhile upgrade for everyone.

Posted in new product | Leave a comment

2011 Year End Message

Whoosh! — That’s the sound of 2011 flying by. 🙂 Here at ImageCraft, we would like to wish you all Happy Holidays and hopefully a very Prosperous New Year. May your code run correctly the first time, and your hardware designs perform without any faults.

AVR Compilers

In 2011, we released a new USB licensing dongle for the V8 AVR compiler. “Eating our own dog food”;  it contains an AVR board utilizing our own firmware. It does not require additional USB drivers, and is also much more flexible than the older V6/V7 dongles.

We have enhanced the AVR compiler code compression to work with M256x or larger devices. For those who are pushing the limits of 256K-bytes flash, this should generally give you another 10-15% more code space!

We added a subset of MISRA, as well as lint checking: both of which have proven to be quite useful to uncover latent bugs.

Internally, we have created a new version of the PRO compiler that more aggressively accomplishes 8-bit optimizations. We expect to release that in Feb 2012 or so. This should decrease code size requirements by a few percentage points.

Additionally, the V8 CodeBlocks IDE continues to acquire new features. In the next few months, we expect to have a new release based on the current CodeBlocks 10.5 codebase, and also to add direct support spaces in file paths without resorting to using the Windows ‘short file name’ mechanism. This will also make it easier for us to eventually port our compilers to Linux and Mac when we are ready.

Cypress PSoC1 Compilers

We continue to provide support for the STD compiler for the Cypress PSoC Designer environment. The PRO compiler, which you may purchase from our website, also received updates this year. We have a number of new optimizations that we expect to roll out in 2012.

ARM Cortex Compilers

ARM Cortex compiler development is proceeding nicely. We have a prototype IDE based on the 10.5 CodeBlocks code. We have now completed the basic compiler toolchain to the point where we can run some significant tests. By leveraging our own compiler instead of relying on GCC, we will have better control for providing the features that embedded engineers need.
Other big news: ImageCraft has decided to write our own Cortex debugger as well. Written from the ground up for embedded users, it will be fully integrated with the CodeBlocks IDE. Our main objective is to provide a hassle-free out of-the-box user experience for users of popular JTAG pods and Cortex M0/M3 devices, so having our own debugger is integral to the success of this plan.

In Closing

As the global economy emerges from the recession, and with the rise of Cortex dominance in the embedded market space, 2012 looks to be an exciting and productive year at ImageCraft.
Thank you all very much for your support!! 🙂

// richard

Posted in Uncategorized | Leave a comment