2014/01/06

dynabook AZ: CyanobenMod 10.1 Unofficial Port

AZnyanことdynabook AZはしばらくUbuntuで運用してたけど、Ubuntuな環境は家で使われなくなったVPC-W119XJ(VAIO W)で改めて構築したので、ここしばらくお蔵入り状態だった。
し ばらく前にCyanogenModがポートされたって話を横目で見ながらどーしたもんかなーって状態だったんだけど、KitKat(4.4)がリリースさ れて「メモリ512MBでも快適に動くよ!」みたいな話が出て来たので、CM11がAZnyanにポートされることを期待して、とりあえず前哨戦的に CM10.1を入れてみた。

Unofficial CyanogenMod port to Toshiba AC100/Dynabook AZ

とりあえず基本的な情報は上に集約されている。とてもありがたい。
まぁ、ROM的には10.2もポートされてはいるんだけど、上のページに書いてある通り確かにちょっと不安定な感じ。まぁ、かといって10.1がそれほどいいかっていうとそうでもないけどね。
さて、ここからは上のページの「Install Guide」に従ってセットアップを進めるワケだけど・・・結構めんどいね。ま、ある程度やってしまえば後は・・・って感じもあるけど。

○必要なファイルとかの準備
まずここか らROM本体とリカバリイメージを落としてくる。今回は10.1を試すワケなので、cm_ac100-ota-10.1-xxxxxxxx- UNOFFICIAL.zipとrecovery-10.1-xxxxxxxx.imgを落としてくる("xxxxxxxx"のところはリリースされた日 付)。基本的に本体とリカバリは同じバージョンのもの(本体が 10.1ならリカバリも10.1)を使わないといけないらしい。
次に同じところからsos-uboot-*.binを落としてくる。これは今回見た限りではひとつしか置いてなかった。
あとここからgappsを落としておく。
で、cm_ac100-ota-10.1-xxxxxxxx-UNOFFICIAL.zip、recovery-10.1-xxxxxxxx.img、gapps-non-neon.zipの3つをVFAT/FAT32でフォーマットしたSDカードに入れておく。

○母艦側の準備
母艦側に"tegrarcm"か"nvflash"を入れておく。まぁ、これまでカスタムROM系を入れたりしてた人はnvflashをすでに用意してある だろうから、そのままそれ使えばいいんじゃないかな。上で準備したファイルのうちsos-uboot-*.binを、nvflashコマンドにPathが 通ってなければnvflashと同じフォルダ、通ってれば、まぁ、どっかてきとーなところに置いておく。

○AZnyanの準備
まずロム本体、リカバリイメージ、gappsを入れたSDカードを挿しておく。んでもって母艦にUSBケーブルで接続して、例によってCTRL+ESC+電源ボタンで起動する。電源LEDは点いてて、でも画面が表示されないってのはいつもどーり。

○作業開始
  1. 以下のコマンドでBootLoaderを起動する。
    $ nvflash --bl ./sos-uboot.bin --go
  2. BootLoaderが起動したら、"Boot Kernel"を選択してEnter
  3. "/ #"みたいなプロンプトが出てくるので、"./switch-to-uboot [ENTER]"でスクリプトを起動
  4. スクリプトの質問に"yes"と答えると再びプロンプトが表示される。
  5. こっからパーティションを組み直す。マルチブートとかしないんで、フルで10.1に割り当てられるようにする。
    # parted /dev/mmcblk1 rm 7 rm 6 rm 5 rm 4 rm 3 rm 2 rm 1
    #
    parted /dev/mmcblk1 mklabel gpt
    # parted
    /dev/mmcblk1 -s mkpart primary 7168s 132168s
    # parted /dev/mmcblk1 -s mkpart primary 132169s 257169s
    # parted /dev/mmcblk1 -s mkpart primary 257170s 1257170s
    # parted /dev/mmcblk1 -s mkpart primary 1257171s 2257171s
    # parted /dev/mmcblk1 -s mkpart primary 2257172s 2261078s
    # parted /dev/mmcblk1 -s mkpart primary 2261079s 15513695s
    # parted /dev/mmcblk1 -s name 1 SOS name 2 LNX name 3 APP name 4 CAC name 5 MSC name 6 UDA

  6. 各パーティションをフォーマットする。
    # mkfs.ext2 /dev/mmcblk1p1
    # mkfs.ext2 /dev/mmcblk1p2
    # mkfs.ext4 /dev/mmcblk1p3
    # mkfs.ext4 /dev/mmcblk1p4
    # mkfs.ext4 /dev/mmcblk1p6
    # mkfs.ext4 /dev/mmcblk1p7
     
  7. p1にリカバリイメージを書き込む。# mkdir /tmp/sd
    # mkdir /tmp/p1
    # mount /dev/mmcblk0p1 /tmp/sd
    # mount /dev/mmcblk1p1 /tmp/p1
    # mkdir /tmp/p1/boot
    # unzip /tmp/sd/recovery-10.1-xxxxxxxx.img -d /tmp/p1/boot/
    # sync
    # umount /tmp/sd
    # umount /tmp/p1
  8. この状態ではrebootコマンドは効かないらしいので、電源ボタン長押しで強制的に電源を落として再起動する。
  9. 起動メニューが出てくるので「Boot SOS CM-10.1」を選択
  10. いわゆるフツーのClockWorkModなリカバリなので、いつも通り(?)の操作で10.1のイメージとgappsを焼く。
  11. システムを再起動すると、9.の時の起動メニューが出てくるので、今度は「Boot LNX CM-10.1」を選択する。

これでCM10.1が起動する。

○あとは・・・
まぁ、そこそこフツーに使える。ヌルサクスムーズとはいかないけど、それなりに動く。まぁ、使える。が、大きな問題が一つ。キーボード。キーマップがどうもうまくない。JellyBeanはハードキーのキーマップを選択・変更できるんだけど、日本語キーボードはデフォルトでは選択肢に含まれてない。基本的には以前のエントリで書いた下のサイトから「kb109jp.apk」を入手してインストールするとほぼ使えるようになるんだけど、AZnyanのキーマップはちょい特殊なのでUbuntuの時と同じくバックスペースの隣とひらがなの「ろ」のところのキーが効かず、\とか_が入力できない。

y-log.net:Android 4.1で日本語物理キーボードを使う

で、apkの中身を少々いじってみる。「res/raw/kb109jp.kcm」の冒頭部を以下のように変更する。

変更前:
3|  map key 124 YEN
4|  map key 26 AT
5|  map key 27 LEFT_BRACKET
6|  map key 89 BACKSLASH
7|  map key 43 RIGHT_BRACKET


変更後:
3|  map key 73 YEN
4|  map key 26 AT
5|  map key 27 LEFT_BRACKET
6|  map key 76 BACKSLASH
7|  map key 43 RIGHT_BRACKET

3行めと7行めのキーコードを、それぞれ「124→73」「89→76」に変更する。これで再パッケージングしてあげればOK。

画面の解像度はイマイチなワケだけど、フルキーボードなワケだし、そんなに悪くない。ちょっと動きがアレだけど、ATOK含めハードキーに対応したIMEならばちゃんと使える。「半角/全角」キーでトグルして、かな漢字変換もバッチリ。この辺りが、FroYoとかの2系とは一味違うところだよね。

まぁ、そもそもそこまでサクサク動く感じでもないし、CM10.1自体がサスペンドに対応してなかったりする(持ち歩くのであれば、毎回電源落とす必要が出てくる)ワケだけどね・・・
puffin使えば艦これとかも動くし、なんか使い道があるかもしれん。(ぉぃ
とりあえずKitKatが出たら入れてみたい感じはするけど、まぁ、もう「活用」とかってことはあまり考えない方がいいんだろうなぁ・・・残念だけど。
でも、当分新しい端末は買えそうにないから、このあたりでちと遊んでみることにしよう(ぇ

0 件のコメント: