Operating System

From Hackspire
Revision as of 21:24, 6 August 2007 by ExtendeD (talk | contribs) (→‎Upgrading the OS: OS file Validation)
Jump to navigation Jump to search

This article currently contains notes and ideas jotted down, but may be splitted and reorganized in the future as knowledge becomes more structured and comprehensive.

Booting and resetting

There is no documented key combo to reset the TI-Nspire, as can be found on TI-68k. The small reset button on the underside which can be pressed with a paper clip or a ball point pen only works when the TI-Nspire is switched on.

  • In TI-Nspire mode, it shows a popup telling that the documents and folders have been deleted. The document "Getting started" is also deleted. The OS is not rebooted. The system settings are set to the factory settings.
  • In TI-84 Plus mode, a TI-Nspire (not TI-84 Plus) menu ask to validate the reset. The RAM and the archive memory of the emulated TI-84 Plus will be cleared, and the TI-84 Plus will be reset.

Booting happens when:

  • all the batteries are removed and put back
  • after a crash of the TI-Nspire OS
  • when the keypad is changed

There is no backup battery as we can find on previous calculator models, so removing at least one AA battery for a few seconds make the RAM lose its content. In TI-Nspire mode removing, and putting back the same keypad doesn't make it boot. In TI-84 Plus mode, removing the keypad automatically stores the RAM image to the flash memory (we can see it process for one second in TI-84 Plus mode when removing the keypad while the calculator is still on). If the TI-84 Plus keypad is put back within a few seconds, the TI-84 Plus will immediately start as after a shutdown. If the keypad is removed for more than a few seconds, the TI-Nspire OS will boot, and the RAM and archive memory of the TI-84 Plus will be restored at its last state. Whether booting in TI-Nspire mode or in TI-84 Plus mode, a progress bar is displayed with the 2 sequencial messages: "Preparing file system, please wait..." and "Loading Operating System...". The supposed memory setup during this phase is described in Memory layout. It seems that the exception handler of the TI-Nspire OS systematically forces a reboot: you won't see anything like illegal instruction in a black bar on the screen as there is on TI-68k.

Upgrading the OS

At least as much free space as the OS file size needs to be available for the reception to be able to start. The OS file is recevied first in background as documents (.tns) would be received, then installed. During the reception, we can see the "Space Used" value of the "Handheld status" screen grow as it does when receiving documents. When the transfer is interrupted by unplugging the USB cable, the partly received OS file seems to be kept in memory for ~10 seconds because the "Space Used" value doesn't change during this short time. The validity of the OS file is checked only after it has been entirely received. During the installation (~30 seconds), a progress bar is displayed. The OS is rebooted after a dialog box indicating the successful installation.

During the few seconds when the OS file is kept in memory after an aborted transfer, making the OS reboot by snapping the TI-84 Plus keypad, then the TI-Nspire keypad, or by replacing a battery restores the "Spaced Used" value to its initial state.

Note that it is not clear whether the OS file is first kept in RAM or in flash memory. If it is only kept in RAM, this calls into question the meaning of the "Spaced Used" value displayed described in Memory layout.

Third-party components

The About screen reports that the following third-party components are integrated to the TI-Nspire OS:

  • Graph & Geometry developed in conjunction with Cabrilog SAS
  • Nucleus Real-Time Operating System by Mentor Graphics Corp.. Note that the source code of the OS is provided to licensees, so it could have been customized by Texas Instruments. Nucleus RTOS is also a modular OS, it is currently not clear which modules are included.
  • Software by Datalight Inc.. It could be the flash memory driver FlashFX, which does work on Nucleus RTOS, and/or the OneBoot file system.
  • The compression library zlib
  • The XML parser eXpat

Document management

  • The size of a document (.tns) that can be received is only limited by the amount of free space available.
  • Deleting a 20MB document takes between 5 and 10 seconds.
  • Invalid documents can be sent. The Computer Link Software only checks the file extension, and the TI-Nspire doesn't check anything: the PK-Zipped archive can be corruped, or it can contain invalid files (wrong name, XML format, ...). The TI-Nspire only checks the format when opening the document: then it may display an error, but also crash.

Noteworthy characteristics

  • As mentioned in the official guidebooks and as it appears in the resource files of the OS images, the Operating System cannot be downgraded, that is only a version of the OS greater than the current one can be flashed to the TI-Nspire. When a new version of the OS will be available, think twice before sending it: flaws which could have been exploited by our hackers may be fixed... forever.

We need your help

  • Find out how to reinitialize completely the TI-Nspire, i.e. how to make the OS reinstall the TI-84 Plus flash applications, and display the configuration wizard you meet when you starts your TI-Nspire for the first time.