CM4IS01 のインストール

IS01 Froyo カスタム ROM である CM4IS01 110927 をインストールしてみた。
その作業メモ。

CM4IS01 のイメージは【unstable ROM】 #CM4IS01 更新 110927で公開されている。
https://dl.dropbox.com/s/li7dfpxi9moejdf/system-110927.tar.gz?dl=1 から
CM4IS01 110927 をダウンロードしておく。

バックアップ

まずはバックアップ。
http://f.orzando.net/pukiwiki-plus/index.php?Is01%2FRomBurning を参考にした。

# cat /proc/mtd
dev: size erasesize name
mtd0: 00b00000 00020000 "boot"
mtd1: 00500000 00020000 "cache"
mtd2: 00b00000 00020000 "recovery"
mtd3: 00180000 00020000 "splash"
mtd4: 00b40000 00020000 "ipl"
mtd5: 10000000 00020000 "system"
mtd6: 00300000 00020000 "log"
mtd7: 06420000 00020000 "userdata"
# mkdir /sdcard/is01rom
# dd if=/dev/mtd/mtd0 of=/sdcard/is01rom/boot.img
# dd if=/dev/mtd/mtd2 of=/sdcard/is01rom/recovery.img
# dd if=/dev/mtd/mtd3 of=/sdcard/is01rom/splash.img
# dd if=/dev/mtd/mtd4 of=/sdcard/is01rom/ipl.img
# tar czf /sdcard/is01rom/system.tar.gz -C /system --exclude ./logphy_mapping.bin .
# tar czf /sdcard/is01rom/sqlite_journals-20120211.tar.gz -C /sqlite_journals .

NAND ロック解除

https://docs.google.com/open?id=0B8LDObFOpzZqNTFiMmZlZmYtOWZiMS00YWE5LThiNDMtZTM2MjVjOTYwNzdm
から ae2break をダウンロードする。

$ adb push ae2break /data/local/
$ adb shell chmod 555 /data/local/ae2break

ae2break を使って NAND ロックを解除する。

$ adb shell
$ au
# stop mediayamaha
# kill -9 `pidof mediayamahaserver`
# /data/local/ae2break
f=3
f2=3
ret=0
#

CM4IS01 のインストール

PC で以下のコマンドを実行する。

$ adb push system-110927.tar.gz /sdcard/
$ adb shell
$ au
# mkdir /data/cm4is01
# cd /data/cm4is01
# gunzip -cd /sdcard/system-110927.tar.gz | tar -xvf - -C /data/cm4is01
# mv system system.bac
# mv system-110927 system
# mkdir data cache

ここで、ブートイメージを recovery パーティションに焼く。
NAND ロック解除をしていないとできない。

http://ubuntuone.com/2FsdEPfrkNCMu5eYMHWbxA から
ブートイメージ froyo_bootv3.img をダウンロードする。

$ adb push froyo_bootv3.img /sdcard/
$ adb shell
$ au
# flash_image recovery /sdcard/froyo_bootv3.img
# sync
# sync
# sync
# reboot recovery

初回起動は長いとのこと。
しかし、ここで 10 分以上待っても HOME 画面表示にならなかったので、一旦バッテリ
を抜いて再起動し、再度 reboot recovery した。すると HOME 画面が表示された。

IS01 (Froyo) の Terminal Emulator で fix_permissions を実行する。

$ su
# fix_permissions
# reboot recovery

IS01 Froyo で adb が認識しない場合 Terminal Emulator で以下のコマンドを
実行すれば adb が有効になる。

# echo 1 > /sys/devices/platform/msm_hsusb_periphera/qxdm_enable

以上で完了。

注意点として CM4IS01 をインストールした後はオールリセットしてはいけない。
recovery を書き換えた状態でオールリセットすると文鎮化するらしい。

インストール後

「LYNX SH-10B(IS01) Android2.2(Froyo)デュアルブート化2」を参考に
パフォーマンスのチューニングをすると快適になるだろう。

「パッチを書いてみた」

  • LockScreen を無効化
  • ポートレートでソフトキーが出てこない問題を修正
  • 端末を開くだけで画面が on に

なパッチがあるので、これを適用する。

まず http://ubuntuone.com/5v8H8IsvcWp6jNEYUngb8X から
android.policy.jar をダウンロードする。
そして、 IS01 (Donut) に対して以下のコマンドを実行する。

$ adb push android.policy.jar /sdcard/
$ adb shell
$ su
# cp /sdcard/android.policy.jar /data/cm4is01/system/framework/
# chmod 755 /data/cm4is01/system/framework/android.policy.jar
# exit
$ exit

IS01 (Froyo) を起動する。