Rendering graphics on the TI-Nspire in C/C++ with Ndless as never be so easy!

hoffa’s SDL port nSDL and totorigolo’s nRGBlib were already available.

Now Levak brings nGC to the Ndless SDK. The “TI-Nspire Graphic Context” is a standard TI-Nspire API inspired by Java’s Graphics2D and based on Nucleus GRAFIX functions. If you have already developed Lua programs for the TI-Nspire the API will look very familiar to you.




Get Ndless and Ndless SDK >= r903,  #include <ngc.h>, have a look at the API documentation, run the sample program in _samples/ngc/ and start to write your own colorful native programs now!

I added a while ago support for GDB debugging to nspire_emu’s fork Ncubate. Ncubate has now become out-of-date and the  feature broke in Ndless several revisions ago.

Thanks to the efforts of Lionel Debroux and nspire_emu’s author Goplat of merging the feature back into nspire_emu, I’m excited to announce the availability of graphical debugging for ARM, C and C++ Ndless-based programs through the scite-debug plugin!


Get the latest Ndless SDK r848.

Update your emulated OS to the latest Ndless revision r848.

Follow the tutorial for GDB debugging with Ndless.

Happy debugging!


My TI-Nspire, one of the earliest production model of the blue Clickpad TI-Nspire is getting old… Mid-2007 I started to work with Romain Liévin on the reverse engineering of the USB protocol that made the TI-calc linking program TiLP able to talk to the TI-Nspire.

Today I’m proud to see Ndless and Luna power Lua, ARM, C and C++ programs each one more exciting than the last. This free software was possible thanks to community collaboration but also donations.

As Jim Bauwens sends me a TI-Nspire CX CAS that will make testing on real hardware easier for me, I want to thank you, from Switzerland to Mexico for your contributions, including Benoît Garrone, Mark Mäkinen, Rodrigo Carrillo, Sebastian Wolf and Marcel Maeder.

tangrs contributed many months ago to the support of C++ for Ndless with a bFLT loader and patches for the toolchain. Unfortunately the vanilla elf2flt couldn’t handle all the relocations produced by the latest GCC for ARM, including those required when linking with nSDL, hoffa’s port of the Simple DirectMedia Layer library. I’m today excited to announce:

C++ and nSDL now offers interesting opportunities to bring nice software to the TI-Nspire calculator. I have personally tried a quick and dirty port of GDO’s Advanced Tetris: atetris Porting a simple graphical program means remapping the keys, relaying out the display and other straightforward minor adjustments. Source code is provided for the curious. Get Advanced Tetris for the TI-Nspire!

A port of Ndless to the TI-Nspire Chinese model CM-C has been available for a few months through Levak‘s fork.

Support for the CM-C and CM-C CAS has now been officially integrated, and opens the emulators, extensionsplayersUSB drivers and a hundred other programs to the Chinese community: get Ndless 3.1 r786 or higher!

(Thanks to Adriweb for the tests and video)

Since both the keyboard and mouse drivers have now reached the minimal stability and OS integration for a public release, here is the first alpha version!

Please keep it mind this is an early version with basic support and several limitations.

Get Ndless r765. This update is required for the drivers to work.

Get HIDn, the USB HID drivers.

Get the Ndless SDK r765 if you want to write your own USB drivers. Note that only basic interrupt transfer support has been tested.

Discuss about it on Omnimaga.

(many thanks to Rhombicuboctahedron for the video)

Personal events left me nearly no time to make any progress on my ongoing projects, but I hopefully recently got the opportunity to improve the early experiments of USB mouse support to integrate it with the standard OS events.

The USB driver stills has major glitches and my old blue brick doesn’t let me know how it would look like on TI-Nspire CX, but here is a preview of this new way to interact with the UI parts of the OS:

In case you missed it, tangrs has been working hard for the past few months to get Linux ported to the TI-Nspire calculator.

The port is not yet fully stabilized nor quite ready for broad consumption and requires some user-level knowledge of Linux systems, but is definitely worth a try. It basically looks like a Ndless-based TI-Nspire specific loader configured to run a Linux kernel image with a RAM disk .

Experimental support for root filesystem installed on USB mass storage is being worked on, so that Datalight’s proprietary Flash FX/Reliance filesystem used by TI’s OS isn’t a limit anymore. This also means that the native TI-Nspire OS image is not replaced by the Linux system, and Linux can been booted on demand.

Support for USB keyboardX server, directFB, Wi-Fi (with the help of a powered USB hub) and text-based Internet browsing  is progressively being added and tested (thanks to Vogtinator for the build and demo).

Linux for the TI-Nspire also means instant compatibility with hundreds programs (although cross-compilation to ARM is necessary),  including command line tools, script engines, mathematical and scientific utilities and games, as long as the constrained RAM size and CPU speed are not an issue for them.

The project is under active development, tangrs is looking for contributors to make Linux become a strong alternative to the stock OS.

I have received several requests about the current status of the support for USB host transfers with Ndless.

With too many ongoing projects the work was suspended, but I have been recently able to integrate the *BSD USBI API to the Ndless trunk and clean up and improve the USB keyboard driver. This may remind you of the TI-Keyboard that Texas Instruments released a few years ago for the previous calculator series and discontinued… but it’s now compatible with any USB keyboard and an $1 USB adapter :)

Here is a quick preview, I hope to make it public with the whole API within a month (YouTube seems to hate my camera’s video format and destroyed much of it, sorry for the poor quality :()

The 100 Ndless-based project milestone have finally been reached according to compu’s TI-Nspire Native Programming Statistics.

Long live the growing community!



Get every new post delivered to your Inbox.

Join 286 other followers