前排提醒:文章部分の執筆には機械(Microsoft Word の文章チェッカー)/AI(Grok 3-DeeperSearch,WPS AI prompt: この文章をリライトしてください)を使用している可能性があります。機械生成コンテンツに敏感な方は、すぐにページを退出してください。
同時に、この記事はブログだけでなく、私の网易云音乐专栏、微信公众号、B 站专栏、酷安にも掲載されています。ぜひお越しください。
Just Wii#
Wii の成功は任天堂を 2000 年代に名声をもたらしましたが、その欠点も同時に現れました。
携帯型と家庭用、前世代と「近代」の比較、出典:任天堂公式1
同世代のゲーム機の解像度
同世代のゲーム機の解像度と比較すると、当時の Wii は非常に小さく見えました。
このような状況を見て、任天堂は Wii を改良し、次世代ゲーム機(強化版 Wii)を発表しました。
2011 年の E3 で、当時の任天堂北米社長レジーが次世代機の「登場」を発表しました。
出典:Gamespot youtube2
また、当時の E3 展示会で新しい「Wii U」を体験してもらいました。
E3 2011 Wii U ゲームパッドキオスク版3、Wii U を体験した人は何が違うか気づくはず
2012 年の正式発売まで、人々はこの巨大なタブレットゲームパッドの姿を確定しました。
任天堂 Wii U 公式サイト4
しかし、これだけで終わりなのでしょうか?次に Wii U の他のバージョンを見てみましょう。
特別な機種#
2010 年末から 2011 年初頭にかけて、任天堂は最初の Wii U プロトタイプ開発機を作り始めました。
残念ながら画像はありませんが、ここに NDEV(Wii 初代開発機)の画像を貼ります5(おそらく NDev と同様に、専用のゲームパッドはなく、Wii のクラシックコントローラーを使用して操作します)。
聡さんとチームが任天堂の大陸6を開発しているときに、ゲームパッドの概念が生まれました。
最初のバージョンは、どこから来たのかわからない画面を Wii の光線銃に取り付けたものでした
第二版の原始ゲームパッドは、鶏の脚のジョイスティック部分を取り付け、その後 Wii のストレートハンドルに接続しました
2011 年中頃(E3 は 6 月)に、任天堂の第二版プロトタイプ開発機 [7] が登場しました。この時、ゲームパッドが付属しました。
ゲームパッドの背面の様子
その後、任天堂はキオスク(小亭、Wii U ステーションとも呼ばれる、体験版ゲームを提供する場所)の Wii U8と DRC を作成しました。
しばらくして、任天堂は第三版の Wii U 開発機 [9] を作成しました。この時、第二版に比べて大きな進歩がありました。なぜなら、機械が白く塗装され、以前よりもずっと清潔になり、有線ネットワークポートと 300G のハードディスクが追加され、独立してシステムを実行できるようになったからです。
さらに時間が経つと、最後の V(Ver)形の第四世代テスト機が登場しました [10]。RAM の読み書きと CPU がより速くなりました。
これにより V 型開発機は幕を閉じ、次はサードパーティ開発者向けの開発機 [11](MP 型)になります。
Wii U が発売された後、この重い鉄の箱は徐々に開発者に提供されなくなり、代わりに Development Kit の開発機(コードネームはすべて CAT-R)が提供されました。主機の外観は通常の小売 Wii U と同じですが、ゲームパッドと主機にはそれぞれいくつかのバージョンがあります。
2013 年、任天堂北米はブラジルの Anatel 機関に数台の異なる Wii U をアップロードして許可を取得しました(私たちの入網許可に似ています)。しかし、最大の注目は、これまでに登場したことのない機械 [12] があることです。主機の前面パネルとゲームパッドの裏蓋は明るい SYNC 色、つまりローズピンク色?(何色で表現すればいいのかわかりませんが、主機の SYNC ボタンより少し明るい色です)。
しかし残念ながら、このローズピンクの Wii U は Anatel の文書の中でしか見られず、黒、白、緑の前面パネルの機械以外では唯一のものであり、RF 無線周波数がない Wii U の唯一の開発機でもあります。
2014 年、任天堂は緑の前面パネルの開発機を提供し始めました。
画像出典:rare gaming dump13
開発機の上部にはジャンパーがあり、DRC にも主機のスイッチが接続されています
出典:任天堂公式開発文書
開発機のメニューを表示13、下の画像は通常の小売版のメニューとの比較
開発機の中には DUMMY(システム設定)というアプリがあり、このアプリはキオスク8でも登場しました。
いくつかの高度な内容を設定するために使用されます。
ここで Wii U の機種紹介は終わりますが、まだまだ多くのことがあります。
ハードウェア#
公式サイトの仕様14
しかし実際には、主機をハックし、システムを逆アセンブルして詳細情報を見ると、この組み合わせは非常に奇妙であることがわかります。
PU#
「Espresso」蒸留コーヒーには、3 つの「ブロードウェイ」(Wii の CPU コア)コアがあり、IBM PowerPC 7XX CPU + AMD/ATi Radeon R700「ラテ」GPU があります。
メモリ#
この部分は非常に興味深いです。3 つの部分に分かれています。一部は 2G の 512m DDR3L-1600*4 で、この 2G メモリのうち 1G は IOS(Internal OS、内部システム、Wii から Wii U まで内部システムが動作する、カーネルに似たもの)に割り当てられ、残りの 1G は自由に配分されます。第二の部分は 32M の特殊ビデオメモリで、最後の部分は GPU とメモリ間の接続を強化するための 3M の SRAM です。
原画像出典:ifixit、第二版の記事を Copetti の紹介画像に変更15
メモリの最も興味深い点は、Wii モードを起動するとき、Wii U の IOS が 2G のメモリを隠し、32M のメモリと 3M の SRAM を残し、自身の 3 つの「ブロードウェイ」を 1 つだけにし、再起動して Wii の IOS とシステムに入ることです。
この時、Wii U は本当の Wii に変わりますが、Gamepad を使用して画面を表示し、操作することができます(DRC カメラの両側には光センサーがあります。ちなみに、この機能は Wii U の IOS でもデフォルトで有効になっており、DRC の光センサーを使用するゲームはほとんどなく、無駄に電力を消費しています)。
fumofumo
しかし、Gamepad を操作することはできませんが、ストレートハンドルを使用することができます。
退出するのも非常に簡単です。メニューの Wii U マークを指して退出するか、主機の電源ボタンを押すだけです(固化されていない、または安定した脱獄ではありません)。Wii U は再起動し、Wii U の IOS に戻ります。
FuMo
GPU#
1080P 出力をサポートしています。GPU はおそらく Wii と同じですが、メーカー(ATi➡AMD)と技術が異なります。
まず、TeraScale アーキテクチャに基づいており、「最も顕著な特徴は、統一シェーダーモデルを使用し、頂点とピクセルユニットを 1 つのユニットに集中させることです。現在は SIMD ユニットと呼ばれています。」と Copetti から引用します。
任天堂は、GPU が使用できるレンダリング API を GX2 と呼び、OpenGL GLSL 3.3 と OpenGL ESSL をサポートし、新たに追加された H.264 ハードウェアデコーディングにより、この GPU は当時のグラフィックカードよりも優れたビデオレンダリング能力を持っています(これは Gamepad にゲーム画面をストリーミングするために使用されます)。
この wiiuwiiu を誰が補ってくれるのか
さらに、Wii U の GPU には、Wii モードでのみ使用されるいくつかのチップが封入されています。たとえば、Wii の GPU(このチップは Wii モードで 3M のメモリを独占してビデオメモリとして使用します)や、HDMI 信号を強制的に出力するチップです。
音声#
任天堂は音声チャンネルを極めており、元々のテレビのステレオ 2 チャンネルに加えて、4 つのストレートハンドルを基に、テレビと新しい大型ハンドルをさらにアップグレードしました。
テレビで 5.1 サラウンドサウンドを実現
ゲームパッドでは擬似サラウンドサウンドを実現
なぜ「擬似」と言うのか、具体的には ifixit の Wii U の分解を見てください。その中でもゲームパッドについて言及されています。
これは DRC の分解ですが、スピーカーは 2 つしかありません16
テレビと比較すると、DRC の音声はあまり良くありませんが、Wii U 全体のシステムは素晴らしい組み合わせです。特に、公式のソフトウェアやゲームでは非常に優れたパフォーマンスを発揮します。
任天堂の大陸 dump のゲームでは dspad... と dspad... なしのバージョンが見られます
より明確な(聞こえも良い)例は、機械に内蔵されている Mii maker です。



DRC または TV を単独で再生すると、単調に感じられます。
オペレーティングシステム#
Wii U 内部では 4 つの異なるシステムが動作しています。
最初のものは IOSU(コードネーム:スターバックス、内部システム Wii U)で、Wii の IOS のアップグレード版です。性能だけでなく、「安全性」も向上しています(Wii が初めてハックされたのは、ここにある物理メモリのバグを利用したためです。2 つのメモリがシステムを保存しており、一つは暗号化され、もう一つは暗号化されていません。ハッカーは外部ハードウェアを使ってハンダ付けし、結果としてメモリの暗号化が逆転したことが発覚しましたが、メモリの内容は同じままでした。最終的に合体して Wii の初めてのハックが実現しました)。
2 つ目は「エスプレッソ」の真の OS(カフェ OS とも呼ばれます)で、起動時に表示される Wii U のロゴはカフェ OS によって生成されます。その後、「任天堂ネットワークに接続中」のシステムメニューがカフェ OS 起動後に最初に行うことです。これにより、その柔軟性が示され、また「先進的」なシステム理念を持っています(ゲーム機のシステムはファームウェアではなく、実際のシステムであり、システムがゲームをサービスし、ハードウェアが直接ゲームをサービスするのではありません)。
これにより、Wii U は機械のように、壊れた部分があっても動作します
(余談ですが、2 台の機械は重要なファイルをバックアップしています。もし Wii U のメニューが本当に壊れた場合、再度ダウンロードして復元することができます。全 MLC バックアップですが、あるシステムアプリがどうしてもバックアップできず、壊れている可能性があります)。
しかし、柔軟性がもたらす結果は、メモリ使用量の急増です。元々2G のメモリがカフェ OS によって 1G を消費した後、開発者に残されたのは 1G です。
3 つ目と 4 つ目のシステムは Wii との互換性のために用意されています。一つは上記の「メモリ」部分で述べた冷起動 Wii、もう一つはホットスタート Wii で、Eshop で購入した Wii ゲームのシステムです。Wii ゲームを直接起動します。
起動とハック#
Copetti からの引用です。ありがとう(そのうち電子書籍を買ってサポートします)15。
「スターバックスが起動し、…
リセットベクター(vector)に見つかったコード(0xFFFF0000)を実行し、マスク ROM を指します(最初の起動段階は boot0 です)。最初のルーチンは、スターバックスが boot0 をスターバックスの SRAM にコピーし、より速く実行できるようにします。
boot0 は、OTP メモリと SEEPROM 上のフラグを読み取ることで、一部の I/O と近くのブロックを初期化します。その後、NAND から次のブートステップ(boot1)を取得します。
boot1 は暗号化され、署名されているため、スターバックスはまずその署名(RSA タイプ)と内容の整合性(SHA-1 ハッシュチェックを比較)を確認し、その後、解読を開始します(AES を使用)。必要なすべてのキーと証明書は OTP メモリから抽出されます。
さらに多くの I/O の初期化が完了した後、SEEPROM と一部の OTP は再度アクセスできないようにロックされます。最後に、boot1 部分の初期化が一段落します。
boot1 はさらに多くの I/O を初期化し、MEM2 と MEM0 を使用する準備をします。その後、NAND から IOSU ファームウェアを MEM1 に読み込み、同じ検証と解読プロセスを実行します。すべてが順調に進めば、スターバックスは使用済みの OTP メモリを無効にし、機密データを完全に消去します。最後に、IOSU ファームウェアに移行します。
IOSU ファームウェアは一連のプログラムの集合です。最初に起動するのは IOSU Loader で、残りの他のファームウェア(IOSU のような)を特定のメモリ位置(SRAM と MEM0)にロードします。その後、MEM1 から自分自身を消去し、IOSU カーネルで待機している SRAM にジャンプします。
IOSU カーネルは最初に MEM1 のチェックを迅速に行い、完了するとスターバックスは IOSU で実行されます。正常に機能するために、IOSU の関連モジュールは MEM0 にあります。
エスプレッソが次に来るので、IOSU はカフェ OS(暗号化形式)を MEM2 にコピーし、エスプレッソを起動します。
エスプレッソの最初のコアが起動すると…
リセットベクター(vector)はアドレス 0x00000100 にあり、ここは Boot ROM が占有しているため、そこで実行を開始します。
MMU、L1/L2 キャッシュとレジスタがクリアされます。その後、エスプレッソは「翻訳モード」に切り替え(仮想メモリを有効化)、ロックされた L1 キャッシュと空のメモリ書き込みを改ざんし、BootROM を L1 にコピーします(より速く実行するために)、外部 RAM には到達しません。
リセットベクター(reset vector)は無限ループに変わり(CPU のリセットを試みるのを防ぐため)、OTP の AES キーが L1 にコピーされます。その後、OTP は無効化されます。
カフェ OS カーネルのヘッダーが L1 にコピーされ、その署名は保存されたキーを使用して検証されます。
カフェ OS カーネルのデータは、DMA を使用してデータをハッシュ化し、ブロック単位で L1 キャッシュに往復送信されます。
現在、未暗号化のカフェ OS カーネルが RAM にマッピングされ、実行の準備が整いました。L1 と L2 はフラッシュされ、起動 ROM は無効化されました。最後に、カフェ OS カーネルの実行にジャンプします。
エスプレッソはカフェ OS カーネルを実行し、システムメニューアプリを起動するための設定ファイルを確認します。
システムメニューは NAND から MEM2 に移動し、他の暗号化されたプログラムと同様に処理されます。すべてが正常であれば、システムメニューが起動します。
ユーザーは今、主機を制御できるようになります!
」
Wii モードのフロー#
「エスプレッソを再起動します。
エスプレッソのクロックを下げ、2 つの追加コアを無効にします。
DMCU ビデオエンコーダーのファームウェアをアップロードします。
古いフォント(ゲームキューブのフォント)を MEM1 の領域にアップロードし、EXI インターフェースからアクセスできるようにします(古い EXI ルーティングを作成するために)。
AHCI インターフェースの互換モードを有効にし(つまり、SATA 光ディスクドライブに接続されたインターフェース)、古い光ディスクインターフェース(DI)プロトコルを使用して命令を出せるようにします。
OTP メモリ内のキーを内蔵 SRAM にコピーします。vWii は内部 SRAM を従来の SEEPROM と見なします。
Wii U 専用の I/O を無効にしますが、GamePad は除外します(ユーザーまたはゲームによって無効にされない限り)。
IOS を起動します。IOS スロットの選択は、どの vWii モードを使用するかによって異なります。HAI モードの場合はゲームによって異なります。
vWii 向けに設計された IOS ソフトウェアパッケージは若干変更されており、いくつかのモジュールが追加されています。これには、光ディスクドライブをシミュレートする DI2SD と、GamePad からの入力を Bluetooth コマンドに変換する OHCI1 が含まれます(これにより Wii コントローラーを使用できます)。
Wii システムメニューまたは NAND ブートプログラム(Wii アイコンのバイナリファイル)を MEM2 にアップロードします。選択は使用する vWii モードによって異なります。
エスプレッソはブート ROM から起動するため、Wii U のセキュリティモデルを使用してバイナリを受信できます。そのため、Wii に関連するプログラムは互換性を持つように変更されています。
エスプレッソを起動し、指定されたバイナリを処理して実行させます。
ユーザーは再び主機を制御できるようになります!
」
ハック#
ハックに関しては、皆さんはゲームをプレイしたり、署名を免除したいと思っているでしょう。そして、これを実現するためにはカフェ OS と IOSU が必要です(もう一つの余談ですが、主機をリセットすると、元の外付けハードドライブのゲームは主機のシステムがリセットされ、新しいシステムのキーとハードドライブが一致しなくなり、ハードドライブのゲームが完全に無効になり、再インストールするしかありません。セーブデータも同様です)。
普通の状況では Wii U 主機をリセットしないでください。ハードドライブにもセーブデータが保存されています
本題に戻りますが、Wii U のハックは現在主にブラウザから行われており、最初のハックもブラウザから始まりました。
任天堂は Wii の経験を活かさず、ハードウェアのバグを封じ込めませんでした。Wii モードの下で BootROM を抽出し、BootROM を分析して AES 暗号化キーを取得し、ブラウザはオープンソースであり、すでに脆弱性が発見されていました。ブラウザを使用して Wii U の IOSU でバグを実行しようとした結果、成功しました。
現在、任天堂は上記のソフトウェアの脆弱性を封じ込めましたが、新しい方法はハードウェアの脆弱性を利用しています(GPU が共有ビデオメモリ部分にアクセスでき、その部分がほとんどの IOSU の制限を回避できるためです)。
固化#
ハックが完了した後、固化を行う必要があります。
ハックが完了しても、電源を切ったり、シャットダウンしたりすると、ハック環境が消えてしまいます。この時、固化が必要で、システムを自動的にハックするために固化が必要です。
ハックはシステム内に寄生する必要があり、毎回ハックの手順を踏むのを防ぐために、IOSU の起動手順が大いに役立ちます(すべてのものがカフェ OS 上で実行され、IOSU が起動するとカフェ OS が呼び出され、「Wii U メニュー」という【チャンネル】が起動します)。誰もが Wii U 公式の DS エミュレーターが ROM を読み取る際に任意のコードを実行できることを知っているわけではありません。そのため、数年前に非常に人気のあった脳トレ(ほとんどの DS ゲームが可能ですが、唯一この脳トレが eshop で最も安い)を使用した固化ハックが生まれました。
脳トレをインストールすると、それは Wii U のチャンネルとなり、カフェ OS が起動したときに事前に設定された「Wii U メニュー」を置き換えることができることを意味します。これにより、ハックの固化が完了します。
しかし、無料と杞人の心配が固化の発展を促進しました。
任天堂北米の公告17
2023 年以降、Wii U の eshop ではもはや商品を購入できなくなり、DS の脳トレも含まれます。そのため、Mii Maker(または Wii U メニュー)+ カスタムファームウェアが作成されました。
SD カード内の fw.img がカスタムファームウェアです
ハックにとって、これは大きな成功です。Linux が自分の config を設定できるように、カーネルに何が必要かを設定し、SD カードにコピーしてロードするだけで済みます。
現在のハックは、SD カードに神秘的なファイル fw.img と他のものを入れ、ブラウザを開くだけで完了します。
最後に評価
Wii U は 2012 年 11 月に出荷され、2017 年 1 月 31 日に生産を終了しました。
対応するサービス
2015 年 8 月 11 日、Nintendo TVii が終了しました。
2017 年 11 月 8 日、Miiverse が終了しました。
2024 年 4 月 9 日、任天堂ネットワークと古い eshop が完全に終了します。
2024 年 7 月 3 日、公式のアクセサリーがなくなり、Wii U は完全に生産終了となります。
任天堂ネットワークについては、B 站で下の画像の動画を検索してみてください。とても面白いです。
個人的な見解#
Wii U は確かに「猪を装った虎」のような素晴らしいゲーム機です。非常に重く、サードパーティの良いゲームはほとんどありません。
しかし、それでも素晴らしいゲーム機です(多くの新しいコンセプト、任天堂が当時手放せなかったデュアルスクリーン、ワイヤレスストリーミング、2012 年の NFC、ビデオ通話)であり、真の「任天堂」ゲーム機です。not only Wii but also U
最後に聡さんの言葉でこの 2 ヶ月近く書いてきた記事を締めくくります。
「私の名刺には、私は任天堂の社長と書かれていますが、私の頭の中では、私はゲーム開発者であり、私の心の奥深くでは、私はプレイヤーです。」
感謝と引用#
Copetti の『Wii U アーキテクチャ』に感謝します。先人が木を植え、後人が涼を享受します。この文章がなければ、私は後の部分を書くことができませんでした。
Consolevariations と GaryOderNichts が作成した WiiUIdent に感謝します。主機の敏感でない情報をデータベースにアップロードし、人々が Wii U の実際の機種を見られるようにしています(Wii U 版ルーマスター)。
また、Rare Gaming Dump 組織と Luckless Heaven にも感謝します。彼らは面白いものを保存しています。