[SWITCH] ReiNX v1.0 がリリース

2018/08/05 18:10 Switch 0
GitHubでReisyukaku氏が、SwitchのCFWである ReiNX v1.0 をリリースしていました。
https://github.com/Reisyukaku/ReiNX/releases

ReiNXはブートローダーの役割を果たすhekateやSwitchのCFWとして開発が進められているAtmosphereのシステムモジュールを
ベースにReisyukaku氏(というよりRei氏と書いた方が良いかな…今後そう書こう…)が開発を進めるCFWです。
"microSD:ReiNX/" がReiNXのフォルダとなっており、sysmodulesフォルダにはhekateで扱う事も可能なKIPファイルが配置され、
(hekateはiniファイルでKIPのパスを指定しますが、ReiNXはsysmodules内のKIPを全て読み込みます)
patchesフォルダはNSPファイルをインストールする際やその起動時に存在するチケットの署名チェックを回避するパッチが入っています。
(RajNXではそれをipsパッチとして実装していますが、ReiNXではrxpというRei氏オリジナル?の形式です。)
splash.binはReiNXのペイロードであるReiNX.binを実行した際に表示される画像のファイルです。
StevenMattera氏がSwitchBladeで使っていたImage Converterと互換性があるので自分の好きな画像を表示させる事も可能です。


exefsのリダイレクトは当然サポートされており、romfsをリダイレクトするLayeredFSもサポートされています。
"microSD:ReiNX/titles/タイトルID/" のようにしてAtmosphereやAtmosphereをパクったSX OSと同等の働きをします。



さて、いろいろと話題になっていたシグネチャパッチ(署名パッチ、signature patch、sig patch等と呼ばれる)は、実際、複数存在します。
というのも、この話題で真っ先に挙がるXecuterが最初に実現したのはNSPの非署名チケットのインストール及び起動を実現するパッチです。
対してシーンの開発者が口にするsig patchというと基本的にはNCAの署名の回避で、非署名なNCAを起動するためのパッチです。
それはMODや今後実現するであろうホーム画面からのHomebrew起動に繋がります。エンドユーザーには現状ほとんど関係ありません。
チケットに関するパッチというのはシステムモジュールの1つであるesに対して行われますが、XecuterはそれをSX OSに組み込んでいます。
で、Rei氏が最初に実現したのはexefsのリダイレクトによるes sysmoduleのパッチです。改変したesを過去に配布されていました。
シーン(というか主に著作権に煩いGBAtempの住民)の中にはこれを非難する人もいたため、今のパッチ形式になったというわけです。
rajkosto氏はRajNXでAtmosphereがサポートするipsパッチを利用していますが、Rei氏はrxpという形式のパッチを採用されています。
NCAの署名の回避は、最初はそれ用のKIP、次にrajkosto氏がパッチをhekateに実装されました。(source)
これによって、hekateを通せばNCAの署名を回避するsig patchというのは適用される事になります。
ReiNXにもそのNCAの署名を回避するパッチは実装されています。(hekateの場合はiniのオプション)
このNCAの署名に関するパッチはFS.kipへのパッチのためFSパッチと呼ばれ、対してチケットの方のパッチはESパッチと呼ばれます。

FSパッチにはNCAの事だけではなくもう1つ機能が存在します。それはカートリッジリーダーのFWのアップデート回避です。
私は面倒だったので記事にはしていませんが、rajkosto氏がヒューズを焼かず任意のFWへアップデートする方法を公開されています。
その手法ではNANDのバックアップを取っておけば、アップデートしてもヒューズを焼いていないので元のFWに戻る事が可能です。
しかしながらFW4.0.0以上ではカートリッジリーダーのFWにアップデートが入ったらしく、そのアプデを当てた状態で
元のFW(FW4.0.0未満)に戻るとそのFWではカートリッジが読み込めない、という残念な問題が存在します。
そのアプデはそのFWでの初回起動時に発生するらしく、そのアプデを回避するパッチが nogc という名称で公開されました。
これはhekateやReiNXに実装されており、カートリッジリーダーを機能しないようにする(=アプデ回避)という事をやっています。
カートリッジリーダーが動作しなければアプデは適用されない、という認識で良いと思われます。
カートリッジリーダーが機能しないためカートリッジを挿してもエラーが出るか認識されません。
hekateではiniのオプションですが、ReiNXではReiNXフォルダにnogcというファイルを作成するというオプションとなっています。



あ、この記事はここで終わろうと思っていましたが、ちょっと…。

SX OSのクラックというのがちょっと前からシーンで話題になっていますが、今はそれを信じないでください。
嘘、とは言いませんが、正確ではありません。クラックという語を使うなら、あれはSX OSから抜き出したメニューのクラックです。
内容としてはSX OSのboot.datを展開してSX OSのメニューを取り出し、SX OSのライセンスチェックやSX Proドングルのステータスチェック等に
パッチを当てて普通にHomebrewとして起動出来るようにした、という物です。
それをやった人及び配布した人はRei氏と、あとはPRAGMA氏です。Darth Meteos氏があれとReiNXをセットにしたのを公開したもんで、
ReiNXはSX OSを取り込んだと思った人もいるようですが、そんな事はありません。
ReiNXはSX OSのコードを利用しているという話も聞きますが、それ込みでも現状ReiNXとSX OSは切り離してください。

あのメニューはTinfoilベースのnspインストーラーやHomebrewを起動するhbmenuが統合されており、クラック版はそれを使う事は可能ですが、
XCIを扱う事は現状不可能です。XCIを選択するとSwitchがクラッシュします。なぜそうなるかと言うと、XCI関連のコードは別だからです。
SX OSはAtmosphereのシステムモジュールがベースになっている事が既に判明しており、それに関連する部分にXCI関連のコードが存在します。
XCIの起動は過去にhexyz氏が言っていたような事(XCIの解析,復号,FS sysmoduleへの受け渡し,source)が実現しなければ無理です。
XCIを選択した際のクラッシュ問題に関しては、確かRei氏はAtmosphereのローダーのコード云々と言っていたような…。

XCI起動を実現するかもしれない希望の光は現状Rei氏のみです。Atmosphereのリリースプランには載って無いので…
RajNXに関してはrajkosto氏がどういう動きを見せるのか不明なのでXCIの希望云々は何も言えない。


▼コメント




▼コメントを投稿












※「英数字90%以上」のコメントを規制中です。コメントを投稿する際は日本語でお願いします。
※確認ボタンを押すと投稿確認フォームに移ります。投稿確認フォームの送信ボタンを押してください。
※確認フォームにある「メールアドレス」に入力された内容は管理人のみ確認可能です。空欄で構いません。
※確認フォームにある「タイトル」「パスワード」は当ブログでは使用していません。空欄で構いません。
※確認フォームにある「URL」は名前のリンクとして機能します。空欄で構いません。
※確認フォームには非公開コメントのチェック項目がありますが、非公開コメントは受け付けていません。
メールフォームより連絡頂ければメールにてお返事致します。