On First boot:
* multirom installer zip(or modified TWRP) rename original init to main_init, copy trampoline, and reaname it to init
* trampoline, which was renamed to "init", try to find partitions from fstab. If mrom.fstab exists, find from it instead.
* If trampoline fails to find partitions from fstab, it just continues boot normally by running main_init. (This is why boot menu didn't show up on sense kitkat ROM)
* trampoline calls multirom. If Internal is selected, it just give controll to main_init. If secondary ROM is selected, load another kernel and try to boot from secondary ROM.
On Second boot:
* Multirom knows that this is second boot, so skip boot menu.
* Find partitions from fstab again, and mount rom's dirs as system/cache.
* To prevent main_init from mounting system/cache, multirom comments out lines of fstab telling where these partitions are. (This trick doesn't work with sense ROMs, as it doesn't read where system/cache partitions are from fstab. On sense ROMs you need to comment out lines of init.target.rc mounting system/cache.)
I have made modified zips to solve these problems easily:
multirom-20140125-v21-UNOFFICIAL-dlx_mods.zip
This zip will install multirom and inject current boot image. I just enabled use_mrom_fstab to make this work with sense ROMs.
mount-disabler-dlx-20140223.zip
This zip will install multirom trampoline to boot image, and disable mount of system/cache which is done by init.target.rc. Only secondary sense ROMs need this to be flashed.
I think these zips will, work on dlx, but please make backups as always and use at your own risk.
So what if I want sense as my main Rom and cm11 as my 2nd? How would I do that ?
Sent from my HTC6435LVW using Tapatalk