Tweaking OS 3.0

Considering the release of TI-Nspire OS 3.0.2 I have both good and bad news:

  • The upcoming Ndless v3.0, compatible with OS 3.0, is under development, and I was hoping to share an alpha version soon
  • TI sadly took with OS 3.0.2 the decision  to block third-party Lua development, preferring to force developers to wait for an official release of their SDK. Fortunately Lua scripts can still be saved on OS 3.0.1 and transferred back to OS 3.0.2 to run them.
  • Some of the most active contributors to the unofficial Lua runtime documentation unfortunately accepted to beta-test the upcoming TI SDK, probably under NDA, and now may have difficulties to contribute on both sides
  • The forthcoming v3.0 of Ndless depends on Lua for its installation

The “D” compression method of TNS documents introduced in the latest OS versions that prevents third-party tools to TNS files was by-passed by LUA2TNS and the other (now blocked) Lua converters. I have looked a bit closer at it this morning, and it appears that an XML file  (document or problem) included in a TNS file this way is first XML-compressed with a patented methodinflated with zlib, then probably encrypted.

So what does this mean for us? Implementing a third-party converter which includes the XML compression required by OS 3.0.2 is impossible without being exposed to legal action. Compressing XML is surely a bright idea to optimize storage space, but there were many open binary XML encoding methods available that did not require TI to invest (probably specifically for the TI-Nspire) in a new one. Unless they want to wrap the device with fiddle-proof legal tape.

I’m now considering extending Ncubate, the enhanced nspire_emu, with a Lua script conversion feature.


7 thoughts on “Tweaking OS 3.0

  1. If you open a file with 3.0.1 computer software, go to file, save to handheld, and you can save an unencoded lua file to handheald os 3.0.2.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s