CAUTION!! By upgrading HBOOT to 1.00+ you loose the ability to S-OFF your Legend!!!
Preface
Because there are too many ppl without any knowledge spreading false findings and statements I decided to write this HOWTO.
Audience
This HOWTO is primarily ment for those who already have rooted Legends but they recently experienced problems flashing CM's or new Vodafone FroYo boot.img.
Background
HBOOT is like a BIOS in our PCs and to cut a long story short it also contains partition table for phone's internal storage. That means it has info on where exactly certain partition starts and how big it is.
At HTC they decided to partition Legend's internal storage this way:
I think that HTC also recognized that Legend's boot partition was kinda small so they rearanged partition table in HBOOT 1.00 a bit making boot partition bigger (now it is 3 MB) by shrinking recovery partition a little.
So now we know that some of us actually need HBOOT 1.00 in order to flash FroYo's boot.img without a problem. But how do we keep root then?
Prerequirements
Rerequirements
Instructions
I will split instructions into two parts... for already rooted phones and phones that were already updated with Vodafone OTA thus they lost root.
Already OTA updated with HBOOT 1.00
That one is relatively easy. You could also follow Paul's guide but I like my approach better
Connect your phone to your PC. Second you have to install VISIONary r13 into your phone and do the "temproot" procedure. After a successful "temproot" you should be able to adb shell and then su. Fire up command prompt and issue:
...you should have root privileges now (showing #). Next thing is backing up misc partition and replacing it with one from hack4legend-v5.zip. Extract this zip somewhere and fire another command promt there. Now you should upload flash_image binary and misc1-2.img:
...switch back to 1st command prompt and change permission of flash_image_binary:
...and backup your current misc partition:
Now flash misc1-2.img:
...and you are set to downgrade retaining HBOOT 1.00.
Unzip r4-legend-root.zip and find testimage.zip in it. Put it on your phone's sdcard renaming it to LEGEIMG.zip. You can then reboot into bootloader issuing:
...from command prompt. Phone will reboot and find LEGEIMG.zip on your sdcard, copy it into RAM and check it. If you get CID error at this point, then you don't have goldcard. Make your sdcard gold and try again. After successful flash and reboot you may remove LEGEIMG.zip from sdcard. Next step is upgrading of rooted FroYo ROM. Put FroYo update ROM zip to your sdcard and install it via ClockworkMod recovery. You may also flash backed up misc partition after that. Still in recovery mode and hooked with your PC switch to command prompt and restore it back:
...and reboot.
Rooted Eclair Voda FroYo or CM with HBOOT 0.43
Since you have already rooted phone we can prepare everything before we start. Hook your phone to your PC. Put FroYo ROM update zip to phone's sdcard. Put also misc1-2.img and flash_image from hack4legend-v5.zip and testimage.zip from r4-legend-root there. Extract Vodafone FroYo OTA and put firmware.zip to your phone's sdcard renaming it to LEGEIMG.zip. Reboot into bootloader from command prompt:
...bootloader will find LEGEIMG.zip extract it into RAM and check its integrity. If you get CID error at this point you don't have gold card. Make your sdcard gold and retry the procedure.
After successfull flashing of LEGEIMG.zip (firmware.zip from FroYo OTA) you have HBOOT 1.00, new (unrooted) recovery, new (unrooted) boot but old and intact system with superuser.apk and su. Reboot. When system is available, tick "USB debugging" in Settings->Applications->Development. After that you will be able to adb shell into your phone. Fire up some command prompt and issue:
...while phone screen is still on. Superuser will pop-up. Grant it. Now make a backup of misc partition:
...now copy flash_image from sdcard to internal storage, change its permissions, and flash misc1-2.img:
...rename LEGEIMG.zip to firmware.zip and testimage.zip to LEGEIMG.zip:
...exit from adb shell and reboot into bootloader:
Phone will reboot, find LEGEIMG.zip and flash it over. You will end up with HBOOT 1.00 and downgraded and rooted recovery. Boot into ClockworkMod recovery and flash Voda FroYo custom update of your choice from your sdcard. You may also want to restore backed up misc partition after updating is done:
...and reboot.
Preface
Because there are too many ppl without any knowledge spreading false findings and statements I decided to write this HOWTO.
Audience
This HOWTO is primarily ment for those who already have rooted Legends but they recently experienced problems flashing CM's or new Vodafone FroYo boot.img.
Background
HBOOT is like a BIOS in our PCs and to cut a long story short it also contains partition table for phone's internal storage. That means it has info on where exactly certain partition starts and how big it is.
At HTC they decided to partition Legend's internal storage this way:
- misc 640 kB
- recovery 4,375 MB
- boot 2,5 MB
- system 240 MB
- cache 40 MB
- data 185 MB
I think that HTC also recognized that Legend's boot partition was kinda small so they rearanged partition table in HBOOT 1.00 a bit making boot partition bigger (now it is 3 MB) by shrinking recovery partition a little.
So now we know that some of us actually need HBOOT 1.00 in order to flash FroYo's boot.img without a problem. But how do we keep root then?
Prerequirements
- Android SDK (primarily adb)
- working USB drivers (for adb to work)
- goldcard (in case you are trying to flash ROMs with different CID than your phone has)
- ClockWorkMod recovery (if your Legend is already rooted)
Rerequirements
- Vodafone FroYo OTA update (actually just firmware.zip from OTA)
- Legend rooting tools (just testimage.zip)
- Hack 4 Legend v5(just misc1-2.img and flash_image)
- VISIONary r13(r14 is out also but i haven't tested it yet)
Instructions
I will split instructions into two parts... for already rooted phones and phones that were already updated with Vodafone OTA thus they lost root.
Already OTA updated with HBOOT 1.00
That one is relatively easy. You could also follow Paul's guide but I like my approach better
Connect your phone to your PC. Second you have to install VISIONary r13 into your phone and do the "temproot" procedure. After a successful "temproot" you should be able to adb shell and then su. Fire up command prompt and issue:
Code:
adb shell
su
Code:
adb push flash_image /data/local/
adb push misc1-2.img /data/local/
Code:
chmod 755 /data/local/flash_image
Code:
cat /dev/mtd/mtd0 > /sdcard/misc_backup.img
Code:
/data/local/flash_image misc /data/local/misc1-2.img
exit
Unzip r4-legend-root.zip and find testimage.zip in it. Put it on your phone's sdcard renaming it to LEGEIMG.zip. You can then reboot into bootloader issuing:
Code:
adb reboot bootloader
Code:
adb shell
flash_image misc /sdcard/misc_backup.img
exit
Rooted Eclair Voda FroYo or CM with HBOOT 0.43
Since you have already rooted phone we can prepare everything before we start. Hook your phone to your PC. Put FroYo ROM update zip to phone's sdcard. Put also misc1-2.img and flash_image from hack4legend-v5.zip and testimage.zip from r4-legend-root there. Extract Vodafone FroYo OTA and put firmware.zip to your phone's sdcard renaming it to LEGEIMG.zip. Reboot into bootloader from command prompt:
Code:
adb reboot bootloader
After successfull flashing of LEGEIMG.zip (firmware.zip from FroYo OTA) you have HBOOT 1.00, new (unrooted) recovery, new (unrooted) boot but old and intact system with superuser.apk and su. Reboot. When system is available, tick "USB debugging" in Settings->Applications->Development. After that you will be able to adb shell into your phone. Fire up some command prompt and issue:
Code:
adb shell
su
Code:
cat /dev/mtd/mtd0 > /sdcard/misc_backup.img
Code:
cp /sdcard/flash_image /data/local/
chmod 755 /data/local/flash_image
/data/local/flash_image misc /sdcard/misc1-2.img
Code:
mv /sdcard/LEGEIMG.zip /sdcard/firmware.zip
mv /sdcard/testimage.zip /sdcard/LEGEIMG.zip
Code:
exit
adb reboot bootloader
Code:
adb shell
flash_image misc /sdcard/misc_backup.img
exit
Last edited: