Top > Is01 > RomBurning
Table of Contents

ということで、自分のための覚え書きということで、やりながら書き留めてゆきますが、 もちろん失敗したとこは端折ります。

とりあえず弄れるIS01は2台あるので、一方はDonutのまま使い心地の改善をめざし、 もう一方はFroyo or Gingerbreadにしてみるところまでやりたいと思います。

前提

  • IS01 Rooterでroot権限取得済み。
  • BB09またはBB07

バックアップ

バックアップして意味のあるパーティションは全てバックアップする。

パーティション一覧はこちら。

cat /proc/mtd

ddでバックアップするパーティション

boot, recovery, splash, iplの各パーティションはddでバックアップ。

 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でバックアップするパーティション

/systemと/sqlite_journalsと/dataはすべてtarでバックアップする。

  • 圧縮方法はお好みで。bzip2は高圧縮だが遅い、lzmaは低圧縮だが速い、gzipはその中間。
  • /sqlite_journalsと/dataは可変なのでファイル名に日時を入れておく。
  • /systemもrwにして弄れば変化するが、ここでとるのはシステムデフォルトのバックアップなので日時は付けない。
     tar -jcf /sdcard/is01rom/system.tar.bz2 -C /system --exclude ./logphy_mapping.bin .
     tar -jcf /sdcard/is01rom/sqlite_journals-YYYYMMDD_MMSS.tar.bz2 -C /sqlite_journals .
     tar -jcf /sdcard/is01rom/data-YYYYMMDD_MMSS.tar.bz2 -C /data .

(2011-03-07)

リカバリ領域に焼く

下記で使うflash_imageは、デフォルトで入っているものを最初は使っていたが、 後にNVさんのflash_image(改)を使うようにした。

Recovery_kitをリカバリ領域に焼いてみる

 flash_image recovery_wr recovery_kit.img

HOME+電源 でリカバリメニューは出るがトラックボールもショートカットキーも効かない。これではRecovery_kitをブート領域に焼けない。ちょっと困った。

(2011-03-13)

そこで、ブート領域はデフォルトのままで、リカバリ領域にいろいろ焼いてみることにした(イメージファイルのファイル名は私が勝手に付けたものです)。

BB09のbootイメージをリカバリ領域に焼く

 flash_image recovery_wr bootBB09.img

起動時のロゴ表示は通常と同じ(あたりまえ)。 普通に起動してrootもとれた。 設定 > 端末情報 > ベースバンド は01.00.07のまま。

marijuanaさんのBB09のbootイメージをリカバリ領域に焼く

 flash_image recovery_wr bootBB09mari.img

起動時のロゴ表示は通常と同じ(あたりまえ)。 普通に起動してrootもとれた。 設定 > 端末情報 > ベースバンド は01.00.07のまま。

NVさんのv4_2カーネルイメージ(だけ)をリカバリ領域に焼く

 flash_image recovery_wr froyo_bootNV4.2.img

ISロゴのあとに、通常のANDROIDロゴでなく、文字列「A N D R O I D _」(アンダーバー点滅)が表示されて その状態から動かず。それでもイメージが確かに焼かれていることは分かったわけだ。

そしてしばらく放っておいたら点滅していたアンダーバーが消えた。

(2011-03-15)

再びRecovery_kitをリカバリ領域に焼く

 flash_image recovery_wr recovery_kit.img

最初と同じことをやっているのだが、2chの書き込みを参考にして、 リカバリキットメニューが出てすぐにトラックボールを動かすようにしたら、 やれ嬉しや! トラックボールもショートカットキーも効くようになった。 どうやらメニューが表示されている間は常に入力が有効だ、 というわけではないようだ。

リカバリキットメニューが表示されたらできるだけ早くトラックボールに触ることが コツのようだ。

adbの有効化

リカバリキットメニューから、

  • Start adbd recovery

を一度実行しただけでは、PCで

 adb devices

をしても認識されなかった。

  • Enable QXDM

  • Start adbd recovery

を何度か繰り返すことで認識されるようになった。

(2011-03-16)

追記: "Start adbd recovery"の実行からadb devicesで表示されるようになるまでには、 数十秒から数分の時間がかかるようだ。待てば良いようだ。

追記2: 別のIS01で試したところ、 "Start adbd recovery"をせず、"Enable QXDM"をして2分くらい待つと、 母艦PCに「デバイスドライバは正しくインストールされませんでした」と出る。 これを合図に、以後adb devicesで表示されるようになった。 そして、二度目以降は、リカバリキットメニューがでたあと何もしなくても、 2分くらい待つと母艦PCの通知領域に「デバイスの安全な取り外し」アイコンがでて、 それ以後はadb devicesで表示されるようになった。 (この段落2011-03-20追記)

ブート領域に焼く

リカバリ領域に焼いて動くことが確認できたので、ブート領域に焼くことにした。

Recovery_kitをブート領域に焼く

 flash_image recovery_wr recovery_kit.img

ののち、PCから

 adb reboot

で、Recovery_kitは問題なく起動したし、adbdもきちんと動いているようだ。

改変カーネルを焼く

IS01用の改変された(Donut)ブートイメージとしては

などがある。 今回はこのうち、ポピュラーなNVさんのを焼くことにした。 それで可能になるいろいろなことどもを実際にやってみた記録はまた別稿で。

(2011-03-17)

Tag: au IS01 ROM焼き