ジャンル不定の日記です。

ISW12HTのboot.img

TWRPでバックアップしてたISW12HTのboot領域をアンパックしようとしたのだが、

$ abootimg -x boot.emmc.win
boot.emmc.win: no Android Magic Value boot.emmc.win: not a valid Android Boot Image.
アンパックできなかった。

TWRPのバックアップイメージは生イメージぽいのだが、TWRPがおかしいのかとも思って、
また一時rootしてddでバックアップした。

$ adb shell cat /proc/emmc
でパーティションが確認でき、bootは /dev/block/mmcblk0p21 になっている。
$ adb shell dd if=/dev/block/mmcblk0p21 of=/data/mmcblk0p21.img bs=1M
SDカード装着するのもめんどいので /data にイメージを作ってpullした。

結果はTWRPのイメージと同じだった。
調べたが、どうもHTCのbootイメージは先頭256byteにシグネチャがあって切り取らないとabootimgでアンパックできないみたい。
$ dd if=mmcblk0p21.img of=boot.img skip=256 bs=1
で先頭256byteを省略したboot.imgを作成したらabootimgでアンパックできた。
bsを256にしてskipを1にした方が速かったかも。

flashは試していないが、fastboot bootで256byte削除したboot.imgをbootできた。
S-OFFかブートローダーアンロックしてないとダメだと思う。