For information on JumpStart C for Cortex-M ("V8"), please click here.

JumpStart C++ for Cortex with GCC Compiler

ImageCraft’s new release (“V9”) of the JumpStart compiler addresses one of the most glaring problems with JumpStart C for Cortex-M (”V8”): how do we ensure that we can build all the third party and open source stacks, as well as examples both from silicon vendors and those found on the web? The solution is obvious: we are moving to adopt GCC as the underlying compiler in the new JumpStart C++ for Cortex product. With GCC’s dominance in the Linux and other Open Source projects, GCC is now the standard third party compiler that most (if not all) silicon vendors support in their example and library releases.

From our users’ point of view, ImageCraft’s core competencies have not changed:

  1. Support: ImageCraft has been in business supporting embedded development since 1994. Our customers range from consulting engineers, to higher institution classes, and to Fortune 500 companies. ImageCraft understands the importance of products that work “out of the box”, and when the customers have an issue or questions, timely support is of utmost importance. These do not change with the compiler choice.
  2. Professional features: the IDE (Integrated Development Environment) has all the features you would expect: code-aware editor, code browsing, workspace and project management with multiple target support, plus compiler and debugging integration.
  3. Ease of use: we have tuned and continue to enhance the CodeBlocks IDE to offer user-friendly features, such as generating the compiler/linker commands automatically by allowing a user to select the target device by name.
  4. World-class debugging: integrated with the IDE, our from-the-ground-up visual debugger works with industry standard backends and debug pods. Features such as I/O register view, instruction trace etc. are highly valuable in difficult debug situations.
  5. Sensible licensing policy and pricing: commercial embedded tools tend to be expensive. Indeed, ImageCraft pioneered the “low cost professional embedded tools” back in 1994 with a $100 HC11 compiler at a time when the norm was $1200-$2500. Unlike companies that charge $7000+ for the initial license and $1000+ for annual support maintenance, our licensing is much lower than that. It is only $249 for ImageCraft’s STD (Standard) license, with an annual maintenance of just $125 . We even have very low cost option for students and hobbyists. Maintenance is only needed for support and upgrade to latest version, but otherwise your license remains valid and the product will remain fully functional.

    NOTE: Prices subject to change

Third Party Libraries

And now, with adopting GCC, we are adding one more major feature: the ability to use all the open source libraries and the third party stacks provided by the silicon vendors. We will implement simple-to-use-and-install schemes for downloading and building popular third party stacks, so that the users do not have to collect bits and pieces from all over the place. In addition, JumpStart C++ can import projects created by ST’s graphical CubeMX tools. We expect to support other vendors’ GUI tools in a similar fashion.

C Support Is Still Here

Of course, moving to C++ is a major step. Fortunately, GCC supports pure C, including the ISO C99 Standard and the 0x Standard, and since JumpStart C for Cortex-M (“V8”) uses our Standard C90/C99 compiler, your source code can be recompiled with minimal effort. We even include a V8 project importer command in the V9 IDE, so that you can convert your existing projects effortlessly. You can continue to write entirely in C if you wish.

Optionally, you can start with the simplest but most useful C++ enhancements such as objects for encapsulation, variable length array, literal structures etc. that are helpful for simplifying your C code, without using the more complex aspects of C++.

Footnote: AVR Compiler Support

Given the limited memory available in the Atmel AVR, and since our customers have a large number of existing projects written in our ICCAVR/JumpStart C for AVR, we do not feel it necessary to switch to GCC for the AVR product at this time. The only advantage might be to be able to compile some of Atmel’s latest software releases in their “walled garden” environment. However, the tradeoffs do not currently seem worth doing so. Therefore, JumpStart C for AVR remains our current AVR release.

Major Features of JumpStart C++ Tools

  • Professional IDE with workspace/project management, syntax aware features, code browsing etc.
  • Import CubeMX projects.
  • No need to write linker command files. Select target device by name and our tools do the rest.
  • Full set of GCC compiler tools including C compiler, assembler, linker and library file manager. Industry compatibility and industry leading performance.
  • Native visual debugger, integrated with the IDE.
  • Seamless integration with Segger JLINK, SAM-ICE, and ST-LINK/V2 debug pods.
  • Support Cortex-M0, Cortex-M3, M4, and M7 series from all major vendors.
  • Easy to use JumpStart API. Get started in Cortex-M programming in minutes, not days or months.
  • Built-in flash downloader.

JumpStart Tools Come in Two Different Editions

  • STD (Standard) - for basic commercial development. 
  • NC (Non-Commercial) - for students and hobbyists. Non-commercial use only.

More comments from a customer Patrick Cowan:

Your business model is awesome, and I think it has huge potential to sell your software by making it very easy to use and basically idiot-proof. I don't know much about software, but I was able to learn how to use an Arduino fairly easily. The idea of your software being that same level of simple/easy, but working on other processors is very appealing. In fact we found your company existed because I told [my partner] that someone HAD TO be making software like this. After doing some google searching we found you guys! 

CodeBlocks IDE

ImageCraft enhanced the Open Source CodeBlocks IDE to add user friendly features such as selecting target device via point-and-click, instead of writing complicated linker files. We integrated it with our own JumpStart Debugger including the ability to see the MCU's IO register content. More information and screenshots here.

JumpStart Debugger

The integrated debugger is described here. It requires a separate license purchase to enable all of its features.


Purchase Online