TI-Nspire CX non-casモデルにCAS機能を導入する

## はじめに
そもそも、Ti-nspireのモデルごとのシステムについて理解しておきましょう。
すべてのバージョンについて説明していると果てしなく時間がかかるので、今回対象のモデルのみ紹介します。

>**TI-Nspire CX** / ~~TI-Nspire CX CAS~~
販売開始：2011年2月25日
CPU：ARM系 132 MHz / 150 MHz(正確にどちら分かっていない)
ディスプレイ：カラー液晶(65536色) 320×240画素（対角3.2インチ）
NAND型フラッシュメモリ：100MB
SDRAM：64 MB
外部入出力：mini USB、ワイヤレスモジュール用端子、充電用端子
電源：充電式バッテリー(1060 mAh → 1200 mAh)、ACアダプター（2013年あたりのモデルから変更）
重量：242 g
寸法：191 mm × 86 mm × 15 mm
*[Wikipedia:Ti-nspire_series](https://ja.wikipedia.org/wiki/TI-Nspire%E3%82%B7%E3%83%AA%E3%83%BC%E3%82%BA)*

まず、今回改造の対象となっているのは、上記で述べられた**Ti-nspire CX**です。
ですが、この改造は**すべてのTi-nspire CX**に適用されるわけではありません。

この次の章では以下のことについて説明していきます。
~~~
・あなたが所持しているものが、改造可能かどうか。
・もし、改造可能でない場合はどのようにしてCAS機能を利用すればよいのか。
~~~
また、どのような手順をたどればよいかを以下のチェックリストで分類していきましょう。

## 改造可能かどうかの確認
今回の改造では、Ti-nspire CX内のNANDフラッシュ自体を書き換えることによって、CAS非搭載であるこのモデルに無理やり搭載する方法を用います。そのために、もし、改造可能でないTi-nspire cxでこの手順を行った場合、再起動すら不可能になる場合があることを承知してください。また、その際の一切の責任を本記事の作者は請け負わないことをここに宣言させていただきます。

### 分類
***注意***：以下に出てくる「**TI-Nspire CX**」の表記はすべて**あなたが所持している**Ti-nspire cxのことを指します。

---
- [ ] **TI-Nspire CX**の背面に書いてあるハードウェアリビジョンが「P-xxxxA」から「P-xxxxI」までである。
- [ ] **TI-Nspire CX**のOSの現在のバージョンが3.9.xxx以下である。
- [ ] **TI-Nspire CX**に現在使用中のデータがあり、それをすべてバックアップしている。
---
これらをすべて満たしていた場合は、手順２へと進んでください。
もし、ハードウェアリビジョンを満たさない場合はこのページの一番最後へと進んでください。
もし、バージョンを満たさない場合は手順1へと進んでください。

## 実際の改造

---

****！！！！必読！！！！****
必ずテキサスインスツルメンツ社のファイル転送ソフト「Ti-Nspire Computer Link」を用いるか、それに準じた機能を持つソフトを使ってください。（Student Software や Teacher Softwareなど）
このソフトのダウンロードは[このリンクから](https://education.ti.com/en/products/computer-software/ti-nspire-computer-link)ダウンロードできます。
各自展開して利用できるようにしてください。

---

### 手順１　「OSのバージョンを3.9.0xxまで下げよう」
もちろん、**TI-Nspire CX**はテキサスインスツルメンツによりダウングレード保護をかけられているため、簡単にはダウングレードできません。
まずやるべきことは、バージョンを**3.9.0.xx**まで下げていくことです。

#### 1. Ndlessをインストールする
[Ndless for Ti-Nspire](http://ndless.me/)より、**TI-Nspire CX**のバージョンにあったNdlessをインストールしてください。
多くの場合は、画面に表示されたとおりにすれば、インストールが可能なはずです。
>Ndlessとは海外の有志によって作成された「Ti-nspire」シリーズ用脱獄ソフトウェアです。ただし、これはスタンドアロン型の動作をします。そのため、改造の危険性が低いことから、多くのユーザーが使用しています。

Ndlessぐらいはネットに記事がたくさん載ってるので、もしわからなくなれば検索してください。
筆者が参考にした記事は[こちら](https://ushirotaro.hatenablog.com/entry/2019/06/01/222318)です。珍しく日本語記事で助かります。（これ以降すべて英語です）

#### 2. nsNandMgrを利用できるようにしよう
[nsNandMgr](https://tiplanet.org/forum/archives_voir.php?id=10080)をダウンロードしてください。思いっきり海外のフォーラムですが、ダウンロードは非常にわかりやすいはずです。

次にダウンロードしたファイルを解凍して、「**nsNandMgr.tns**」というファイルを解凍したファイルの中から探してください。
このファイルが**nsNandMgr**を利用するための中心となるデータです。

次に、**TI-Nspire CX**を**Ti-Nspire Computer Link**を用いて電卓をPCに接続してください。
そうして、**TI-Nspire CX**の /MyDocment/ フォルダの中に直接コピーしてください。（ /MyDocment/ の直下にファイルがあることが重要）


>この先、「何かの機能を利用できるようにしましょう」という表記が出てきたら、すべて.tnsファイルを**TI-Nspire CX**に送信するものと思ってください。

#### 3. nsNandMgrでダウングレード保護を解除しよう
この先は、書かれたとおりに作業を行ってください。

まず、**Ndless**を本体にインストールします。（ファイルをクリックして開く）
次に、**nsNandMgr**を起動しましょう。
起動して、様々なNANDの情報が画面に表示されたら、次のボタンを押してください。
~~~
・物理キーボードの「５」を押してください。（Boot2DataOptionに入る）
・物理キーボードの「７」を押してください。（remove the downgrade protectionを実行する）
~~~
すべての処理が完了したのを確認したら物理キーボードの「**esc**」を2回押して**nsNandMgr**を終了してください。

#### 4. 実際に3.9.1.xxのファイルを書き込んでいこう
[このサイト](https://tiplanet.org/forum/archives_list.php?cat=OS+Nspire)より「OS Ti-Nspire CX 3.9.1.38」をダウンロードしてください。
そうしてダウンロードできたファイルを解凍してください。
次に、**TI-Nspire CX**を起動して**Ti-Nspire Computer Link**と接続してください。
そうして、解凍後に出てきたファイルを**Ti-Nspire Computer Link**を用いてOSアップデートと同じ手順で**TI-Nspire CX**にインストールしてください。

#### 5. 3.9.0.xxにダウングレードしよう
4.の操作が完了して、**TI-Nspire CX**を再セットアップできたら、もう一度3.の操作を行ってダウングレード保護を解除してください。そうしたら、[先ほどと同じサイト](https://tiplanet.org/forum/archives_list.php?cat=OS+Nspire)より、「OS Ti-Nspire CX 3.9.0.463」をダウンロードして解凍してください。
後は4.の操作と同じように、**TI-Nspire CX**へとOSを書き込んでください。

#### 6. 実際にダウングレードされたかどうか確認しよう
**TI-Nspire CX**のHome 画面から・・・
~~~
・物理キーボードの「５」を押してください。（Settingsに入る）
・物理キーボードの「４」を押してください。（Statusに入る）
~~~
バージョンの欄がインストールしたものになっていたら成功です。

### 手順２　「OSのバージョンを3.6.xxx」まで下げよう
#### 1. downgradefix39を利用できるようにしよう。
[このサイト](https://tiplanet.org/forum/archives_voir.php?id=105677)から、**downgradefix39**をダウンロードしてください。そして、ダウンロードしたファイルを解凍してください。
そして、**Ndless**や**nsNandMgr**をインストールした時と同様に、/MyDocment/のカレントディレクトリに、解凍したファイルの中の、「**downgradefix390cx.tns**」を配置してください。

#### 2. 3.6.0.550のOSファイルをダウンロードしよう
これまでと同じように[このサイト](https://tiplanet.org/forum/archives_list.php?cat=OS+Nspire)から「**TI_NspireCX_3.6.0.550**」のファイルをダウンロードして解凍しておこう。

#### 3. **TI-Nspire CX**でdownrodefix390.tnsを実行しよう
これまでと同じように、ファイルを実行してください。
そうすると、アニメーションとともに、Ti-nspire cxの画像が表示されるはずです。その画像が表示されたら、一度PCと接続していたケーブルを切断してください。
そうして、画面に「**Downgrade Protection disable**」と青バックに白文字で表示されたら、もう一度接続してください。

#### 4. OSをインストールしよう
3.の作業を終えた後で、これまでと同じように、3.6.0.555のOSファイルをインストールしてください。

#### 5. 実際にダウングレードされたかどうか確認しよう
**TI-Nspire CX**のHome 画面から・・・
~~~
・物理キーボードの「５」を押してください。（Settingsに入る）
・物理キーボードの「４」を押してください。（Statusに入る）
~~~
バージョンの欄がインストールしたものになっていたら成功です。

### 手順３　「実際にCAS用のOSをインストールしていこう」

#### 1．必要なファイルをダウンロードしよう
まず、[このサイト](https://tiplanet.org/forum/archives_voir.php?id=35310)から「**nLaunchy 3.2/3.6 スイッチング パック**」をダウンロードして解凍しておこう。

#### ２．**TI-Nspire CX**の中にあるファイルを削除しよう
これまでの、**Ndless**ファイルや、**nsNandMgr**のファイルを**TI-Nspire CX**の中からすべて削除してください。

#### ３．**TI-Nspire CX**の中にファイルを転送しよう
解凍してできた「**NL_3.2-3.6_switchpack**」の中にある「**TI-Nspire CX**」を開き、その中の「**ndless**」フォルダをすべて**TI-Nspire CX**に転送してください。

#### 4．**ndless**を実行しよう
**TI-Nspire CX**の中から**ndless_installer.tns**を実行してください。そして・・・
~~~
・物理キーボードの「menu」を押してください。（ndlessのインストール）
~~~
すると、**nsNandMgr**が自動で起動するので・・・
~~~
・物理キーボードの「y」を押してください。（決定ボタン）
~~~

#### 5．最後の警告
この先の工程で、NAND2に書き込まれた標準のBOOTイメージをフラッシュします。これを行ってしまった場合、対応していないハードウェアリビジョンの**TI-Nspire CX**では、修復不可能な致命的な欠陥を発生させてしまう可能性があります。それでもいいですか？（筆者は一切の責任を負いません。自己責任でよろしくお願いします。）

#### 6．nsNandMgrでNANDをフラッシュしよう
~~~
・物理キーボードの「２」をクリックしよう。（Boot2のメニューに入る）
・物理キーボードの「２」をクリックしよう。（Boot2のフラッシュを書き換える）
・物理キーボードの「０」をクリックしよう。（nsNandMgrの終了）
~~~
#### 7．nLaunchyをインストールしよう
1.で解凍したフォルダの中の「**CAS**」フォルダの「**nLaunchy**」フォルダに移動して下さい。そしてその中の「**phoenix.tns**」を削除してください。
そして、「**phoenix.old.tns**」を「**phoenix.tns**」にリネームしてください。
できたら、この**nLaunchy**フォルダをそのまま**TI-Nspire CX**の/MyDocument/のカレントディレクトリに転送してください。
これで、すべての準備は完了です。

#### 8．最後の工程を遂行しましょう
**TI-Nspire CX**の背面にあるリセットボタンを押しましょう。
そうして、**TI-Nspire CX**の画面に「**Operating system not found**」と表示されたら、成功です。

#### 9．CAS用のOSをインストールしましょう。
「**NL_3.2-3.6_switchpack**」の中の「**TI-Nspire CX**」の中にある、「nlaunch.tco」がそのOSのファイルです。
これをこれまでOSをインストールしてきた手順と同じように、**Ti-Nspire Computer Link**を用いてインストールしてください。
「**Loading Operating System**」と表示されればそのまま起動してしまいましょう！！
もし以下の異常が**TI-Nspire CX**に認められた場合、リセットボタンを再度押して「**Loading Operating System**」と表示されるまで待ちましょう。
* カラースクリーンが激しく点滅したり、表示が乱れる
* 一分以上フリーズしてしまう
* 画面左上のデバッグコード「**PP123**」がFの文字で終わっている
* 「**Operating system not found**」が表示された状態に戻ってしまう

#### 10. 実際にOSがインストールされたかどうか確認しよう
**TI-Nspire CX**のHome 画面から・・・
~~~
・物理キーボードの「５」を押してください。（Settingsに入る）
・物理キーボードの「４」を押してください。（Statusに入る）
・物理クリックパットの「左」を押して「About」を選択し、クリックしてください。
~~~
名称の欄が「**TI-Nspire CX**」から「**TI-Nspire CX　CAS**」に代わっていたら成功です。:)


## ハードウェアリビジョンを満たさない場合、どうしたらCASが使えるのか
実はNdlessさえインストールできてしまえば、使えるCASエンジンがあります。それが「KhiCAS」です。
これは、ヒューレットパッカード社の関数電卓にも採用されている「Giac」という代数演算エンジンをそのまま、TI-Nspireシリーズ向けに改造したものです。
ただし、純正のCASとは異なり、メモリエラーで処理落ちしてしまうことが多くあります。
筆者の環境でも、簡単な定積分である・・・
~~~math
\int_{0}^{\pi}sin(x)dx
~~~
を実行しただけで処理落ちしてしまったこともあったぐらいでした。
Giacの高機能を64MBで再現することは至難の業だったようです。
それでも、非常に手軽に代数演算が行えるので、魅力的かと思います。
（ハードウェアリビジョンを満たさない場合は、現在はこの方法でしか、代数演算を行えない）

### インストールの手順
#### 1. Ndlessをインストールする
[Ndless for Ti-Nspire](http://ndless.me/)より、**TI-Nspire CX**のバージョンにあったNdlessをインストールしてください。
多くの場合は、画面に表示されたとおりにすれば、インストールが可能なはずです。
>Ndlessとは海外の有志によって作成された「Ti-nspire」シリーズ用脱獄ソフトウェアです。ただし、これはスタンドアロン型の動作をします。そのため、改造の危険性が低いことから、多くのユーザーが使用しています。

#### ２．KhiCasをインストールする
[このページ](https://tiplanet.org/forum/archives_voir.php?id=79135)からKhiCasが入ってるファイルをダウンロードして解凍してください。
そして、中にある「**khicas.tns**」と「**khicaslua.tns**」と、「**luagiac.luax.tns**」を**TI-Nspire CX**の/MyDocument/のカレントディレクトリに転送してください。

#### 3．KhiCasの起動
後は**TI-Nspire CX**上から起動してください。


## まとめ
いざ実行してみると、とてもめんどくさいですが、そもそも日本国内であれば、「CAS」モデルも「non-CAS」モデルも両方とても希少なので、どちらか手に入った場合でもCAS機能が使えるというのはとても魅力的であると感じました。
ただ、海外のReditなどでも、モデレータに削除された記事（本記事と同じような内容）もあったため、脱獄の時点でかなりタブーな方法であるのだろうなとは感じました。でも、絶対いますよね。CAS機能使えると思って買ってみたら、使えなかったっていう人。
何はともあれ、追加料金なしで手に入ったのはとても大きな収穫ですね！！

成功した人もくれぐれも悪用はしないように。

***本記事の内容を用いた改造により発生したいかなる問題に対しても、筆者は責任を負いかねますことをご承知ください。***

### 参考にしたサイト
[後ろ向き太郎の後ろ向き日記](https://ushirotaro.hatenablog.com/entry/2019/06/01/222318)
[omnimaga](https://www.omnimaga.org/ti-calculator-programming-and-support/downgrade-from-4-0-3-to-3-9-or-lower/msg404424/#msg404424)
[ndless-apps](https://ndless-apps.org/)
[ndless](http://ndless.me/)
[TI-Nspire OS](https://tiplanet.org/forum/archives_list.php?cat=OS+Nspire)
[downgradefix39](https://tiplanet.org/forum/archives_voir.php?id=105677)
[tiplanet](https://tiplanet.org/forum/viewtopic.php?f=57&t=14102&lang=en)
[I have made a tutorial for adding CAS functionality to CAS-capable Nspire calculators sold without that functionality.)](https://tiplanet.org/forum/viewtopic.php?f=57&t=11019)
[Ti-Nspireシリーズ](https://ja.wikipedia.org/wiki/TI-Nspire%E3%82%B7%E3%83%AA%E3%83%BC%E3%82%BA)
[TexasInstruments](https://education.ti.com/en)

もっとありますが、もうどれがどれかわかりません・・・