[HTC Rezound] con247:
Edit: PULLED

Some other stuff is WIP and this is just gonna add to the confusion having these zips in user's hands. There are a couple possibilities of future tools that are superior to this. This was also more of a POC more than anything.

Video Demo:

http://www.youtube.com/watch?v=XXcl_QgQEDU

THIS IS NOT S-OFF. IT NEVER WILL BE AND THIS DOESN'T CLAIM TO GIVE YOU S-OFF. IT JUST ALLOWS FOR ROMS TO BE INSTALLED AS IF WE HAD S-OFF WITH ONE EXTRA STEP.

IF YOU ARE ONLY A

USER

THERE REALLY ISN'T MUCH YOU CAN DO THIS THIS RIGHT NOW. GO AHEAD AND READ THE THREAD, ASK QUESTIONS, ETC, BUT DON'T FLASH ANYTHING UNLESS YOU UNDERSTAND WHAT IS GOING TO HAPPEN.

Background:

htcdev.com unlock allows us to modify /system from recovery. However, /recovery, /system, and /boot are writable when the system is booted into the OS. This is because htcdev.com unlock allows things booted from the boot partition to flash this stuff. So?

Why is this useful? We can flash recovery to /boot. This will cause the phone to boot into recovery, but since it is loaded from the boot partition, we have write access to /boot, /system, and /recovery. If recovery, such as amonra, is booted from /boot, we can flash boot images like we could in the past with other phones as if the device was S-OFF. When the new boot image is installed, it overwrites the recovery that was installed to /boot and the device will operate normally again.

How this works:

User flashes a PH98IMG.zip in hboot. This will flash amonra to /boot. When the user is asked to press power to reboot, the device will reboot into recovery with full permissions as if the device was S-OFF. Then, whatever rom they flash will be able to flash the boot image the rom needs within recovery.

Why is this better than just flashing the boot image with a PH98IMG.zip?

ROM Devs don't need to worry about mainver issues anymore. The only mainver issue will be the initial PH98IMG.zip that needs to be flashed. But, this PH98IMG.zip will be the same for every rom distributed no matter what, the user can just download the one they need for their mainver and use that one forever. No longer will you need to manually alter android-info.txt for every rom you flash. Plus, the PH98IMG.zip can just be left on the memory card forever because it will just take you to recovery if you flash it. So you can just leave it on your card and forget it. When you want to flash a rom, boot to hboot and the PH98IMG.zip will get loaded up, taking you to a full permission-ed recovery.

How to implement this:

Drop PH98IMG.zip on your SD card that is assigned to your mainver. This is the last time the mainver needs to be worried about until a new OTA comes out. When this is flashed, it will take you to the unprotected recovery so you can flash a new rom. Need to flash a new rom? Just run the PH98IMG.zip again and it will take you to unprotected recovery.

Devs, just add a boot image flashing line to your updater-scripts. No need to pack in PH98IMG.zips and the scripts that deal with them anymore.. The Rezound can now take "normal" roms despite S-ON.

Current Drawbacks

1. zImage Kernels still can't be flashed with this? Why? When they dump the boot image, they will actually be dumping the recovery image that the device is currently booted into. I am still thinking of a workaround for this. I have a few ideas, but I would like to do some testing to see what is the most simplistic for both kernel devs and the end user

2. If you use this to boot into recovery but don't flash a boot image your device will be stuck booting into recovery until a boot image is flashed. Still working on a workaround for this. It will likely be similar to the zImage workaround.

*Even with the drawbacks, this will work well for full roms.*

Attachments: PH98IMG.zips that will fire up recovery. Named [Mainver]PH98IMG.zip.

So the user just flashes the PH98IMG.zip, that will boot them into recovery, which then your rom+boot image can be flashed without worrying about Mainver. The dev can then make S-OFF like roms for the Rezound.

This thread: http://www.xda-developers.com/android/liberate-your-unlocked-sensation-or-evo-3d-with-dumlock/ got me thinking about this. Unfortunately we don't have TWRP, so we can't use their implementation. But this is almost as good :)