PlayStation Vitaでは、CMA(コンテンツ管理アシスタント)経由でしかPCとアクセスできません。一方で主にAndroid端末向けに用意されているPSM(Playstation Mobile)というプラットフォームもPS Vitaに対応しています。
PS VitaとAndroid端末の共通項の一つにPSMが挙げられますが、その他にもPS VitaのCPU(ARM Cortex-A9)はAndroidにも採用されていたりします。もしかするとPS VitaでもAndroidが動くんじゃないだろうかと試行錯誤して試してみたところ、まともに動きはしませんが、インストールしてHOME画面表示するところまでは行くことができましたのでご報告します。
普通にPCへPS Vitaを繋ぐだけではもちろんAndroidのインストールなどできるはずがありません。結論から言うと、PCにAndroid SDKをインストールし、PS VitaをSONY Tablet Sだと無理矢理認識させることでICS(Ice Cream Sandwich: Android 4.0のコードネーム)をインストールすることができました。
一度Windows環境でやってみましたが、WindowsだとAndroid SDKが起動していてもコンテンツ管理アシスタントが先にPS Vitaを認識してしまうため上手く行きません。そのためすべて今回はMacOSX環境で行いました。
ICSは、IS01/SH-10B LYNXにインストールする、下記のものと同じものを使います。
4.0.4_r1.2 tablet build: reducing reserved memory and cpu overclocking. #is01 http://t.co/Nq0MLb1K
— Karma Chameleon (@karma1501) July 5, 2012
これはICSonIS01というau IS01/NTT DoCoMo SH-10B LYNX向けのカスタムROMです。Androidのバージョンは4.0.4になります。他のバージョンでもいけるかもしれませんが、試していないので分かりません。
では、そのようにPS VitaにICSをインストールしたのか、その手順を説明します。
まず、Google Android SDKの下記情報に従い、SDKのインストール、およびUSB設定を行ってください。既にインストール済みの場合は不要です。
MacOSXでターミナルを起動し、下記のように入力してHOMEディレクトリの「.android/adb_usb.ini」に「0x54c」を追加します。
echo “0x54c” >> $HOME/.android/adb_usb.ini
0x54cはソニーのベンダーIDで、この書き換えによりPS VitaをSONY Tablet Sだと偽装します。
ベンダーIDを追加したadb_usb.iniは、以下のようになります。
# ANDROID 3RD PARTY USB VENDOR ID LIST -- DO NOT EDIT.
# USE 'android update adb' TO GENERATE.
# 1 USB VENDOR ID PER LINE.
0x54c
Androidに詳しい方ならご存知のことと思いますが、Android端末とPCをADB接続するにはデバイス側で「USBデバッグ」をONにしなければなりません。
当然PS Vitaにはそのような機能はありませんので、PC側で偽装プログラムをバックグラウンドで起動させ、PS VitaがUSBデバッグモードになっているように偽装させます。
Androidシーンでは著名なXDA Developersから、偽装プログラムをダウンロードしてインストールします。
fake_vita_usbdebugを起動しておくとコンテンツ管理アシスタント側のドライバが起動せずAndroid SDK側のドライバがPS Vitaを認識してPCとPS VitaがUSBデバッグモードで接続されます。
試しにPC側でPS Vitaのディレクトリ構造を見てみたら以下のようなディレクトリ構成になっていました。
vs0:vsh/
vs0:debug/
vs0:app/
vs0:emu/
vs0:mmc/
vs0:core/
vs0:system/
vs0:data/
vs0:cache/
vs0:mnt/
このvs0:system/ というフォルダは実は空で、不可視ファイルすら入っていませんでした。まるでAndroid OSをインストールするがために存在するような印象です。実はこれに気が付いた時点でAndroidのインストールを試してみようと思ったわけです。しかも何気にsuコマンドを打ってみたらコマンドプロンプトが#に変わりました。
$ su
#
何のロックもなくrootユーザーになってしまったのです。ソニーは一体何をやっているんでしょうか。おかげで失敗しても消すだけで元に戻せるのでbrickの心配がほとんどありません。
あとは
ICSonIS01_20120705.tar.gz
を/systemにpushしてやるだけでインストールは完了です。
ICSをPS Vitaで起動するには、Rトリガーを押しながら電源を投入すると、一瞬電源が入った後にしばらく画面がブラックアウトしますが、そのまま待っているとAndroidの起動画面が立ち上がります。
最初に述べた通り、HOME画面は起動しますが、それ以上は動いていないように見えます。実際にはプロセスは動いているような素振りはみせていますが、そもそもIS01のカスタムROMですのでまともに動かすにはかなりのチューニングが必要だと思われます。
is01用ですかぁー夢が膨らみますね