• Introducing XDA Computing: Discussion zones for Hardware, Software, and more!    Check it out!

[Project][Kernel][Rom][WIP]Dual Boot HTC Explorer [Dualboot App Added] [17/08/13]

Search This thread

kirmaniarslan

Inactive Recognized Developer
Mar 6, 2013
1,204
3,412
Rawalpindi
#THIS GUIDE IS ONLY FOR ADVANCED USERS, WHO KNOW HOW TO COMPILE AND MAKE MODIFICATIONS TO KERNEL AND MODIFYING VARIOUS PARAMETERS IN RAMDISK IN THE RAMDISK LEVEL #

Hey Folks this guide will tell you how to add pll2 Oc by cute_prince for Dual booting On Both Primary and Secondary.

YOU MUST USE ATLEAST CLASS 6 OR ABOVE SDCARD WITH MINIMUM 8GB CAPACITY

First you need 3 EXT4 partitions on SD-card, using Minitool partition wizard :

Partition Order :

  • Around 700 MB - SD-EXT / SD-SYSTEM (ext4 format)
    Note : For Roms Like Sense 4.1 , Sense 4 lite , and Miui 5 which supports Sd-EXT Should Make 2 Gb SD-EXT
  • Around 1 GB (or can be less) - SD-DATA (ext4 format),
  • Around 1 GB (can be less) SD-CACHE (ext4 format)

All partitions should be Primary




Now making kernel level Changes :
------------------------------------------------


Step 1- open the defconfig of your kernel source and make this change in it
Enable LBDAF (for multiple partitions to work)


Code:
CONFIG_LBDAF=y
Now compile the kernel.


For Primary Rom :
---------------------------


Ramdisk level changes:

Step 2- Now edit Init.rc in a kernel :

# System Partition

Code:
mount yaffs2 [email protected] /system
mount yaffs2 [email protected] /system rw remount

# For Sense 4.1 or Sense 4 lite or any rom which Support SD-EXT


Code:
[COLOR="RoyalBlue"]# Mount SD-EXT
    wait /dev/block/mmcblk0p2
    wait /dev/block/mmcblk0p2
    wait /dev/block/mmcblk0p2
    wait /dev/block/mmcblk0p2
    mount ext4 /dev/block/mmcblk0p2 /sd-ext nosuid nodev noatime nodiratime barrier=0 data=ordered commit=15 noauto_da_alloc nouser_xattr errors=continue[/COLOR]


# For /data :

find this line :

Code:
mount yaffs2 [email protected] /data nosuid nodev

Now replace it with :

Code:
[COLOR="RoyalBlue"]# Mount SD-DATA
    wait /dev/block/mmcblk0p3
    wait /dev/block/mmcblk0p3
    wait /dev/block/mmcblk0p3
    wait /dev/block/mmcblk0p3
    mount ext4 /dev/block/mmcblk0p3 /data nosuid nodev noatime nodiratime barrier=0 data=ordered commit=15 noauto_da_alloc nouser_xattr    errors=continue[/COLOR]

# For /Cache

Find this line :

Code:
mount yaffs2 [email protected] /cache nosuid nodev

Replace it with :

Code:
[COLOR="RoyalBlue"]# Mount SD-CACHE
    wait /dev/block/mmcblk0p4
    wait /dev/block/mmcblk0p4
    wait /dev/block/mmcblk0p4
    wait /dev/block/mmcblk0p4
    mount ext4 /dev/block/mmcblk0p4 /cache nosuid nodev noatime nodiratime barrier=0 data=ordered commit=15 noauto_da_alloc nouser_xattr errors=continue[/COLOR]


That's it now pack the ramdisk with the kernel you made earlier.


For Secondary Rom :
-----------------------------


Ramdisk level changes:

All modifications are performed on init.rc file.
Step 1- Search for this line :
Code:
mount yaffs2 [email protected] /system
mount yaffs2 [email protected] /system ro remount

# For System

Replace it with this :
Code:
[COLOR="Navy"]# Mount SD-SYSTEM
    wait /dev/block/mmcblk0p2
    wait /dev/block/mmcblk0p2
    wait /dev/block/mmcblk0p2
    wait /dev/block/mmcblk0p2
mount ext4 /dev/block/mmcblk0p2 /system
mount ext4 /dev/block/mmcblk0p2 /system ro remount[/COLOR]
Step 2 - find this line :
Code:
mount yaffs2 [email protected] /data nosuid nodev

# For /Data :

Now replace it with :
Code:
[COLOR="navy"]# Mount SD-DATA
    wait /dev/block/mmcblk0p4
    wait /dev/block/mmcblk0p4
    wait /dev/block/mmcblk0p4
    wait /dev/block/mmcblk0p4
    mount ext4 /dev/block/mmcblk0p4 /data nosuid nodev noatime nodiratime barrier=0 data=ordered commit=15 noauto_da_alloc nouser_xattr errors=continue[/COLOR]

# For Cache :

Step 3- Find this line :
Code:
mount yaffs2 [email protected] /cache nosuid nodev
Replace it with :
Code:
[COLOR="navy"]# Mount SD-CACHE
    wait /dev/block/mmcblk0p3
    wait /dev/block/mmcblk0p3
    wait /dev/block/mmcblk0p3
    wait /dev/block/mmcblk0p3
    mount ext4 /dev/block/mmcblk0p3 /cache nosuid nodev noatime nodiratime barrier=0 data=ordered commit=15 noauto_da_alloc nouser_xattr errors=continue[/COLOR]
That's it now pack the ramdisk with the kernel you made earlier


Now the Updater-script changes

Step 1- one the updater-script of the ROM find these lines :
Code:
format("yaffs2", "MTD", "system", "0", "/system");
mount("yaffs2", "MTD", "system", "/system");
package_extract_dir("system", "/system");

Replace them with these:
Code:
[COLOR="navy"]run_program("/sbin/busybox", "mount", "-t", "auto", "/dev/block/mmcblk0p2", "/system");
run_program("/sbin/busybox", "rm", "-rf", "/system/*");
package_extract_dir("system", "/system");[/COLOR]

That's it you've Successfully added support for pll2 Oc on both Primary and Secondary Rom ..!!



NOTE : THIS MAY WORK OR MAY NOT WORK I AM NOT RESPONSIBLE FOR ANY DAMAGE

Hitting Thanks Will Take 1 Sec Of Your Life
 

<JohnCarter>

Senior Member
Jun 1, 2012
761
1,770
Ranchi
#THIS GUIDE IS ONLY FOR ADVANCED USERS, WHO KNOW HOW TO COMPILE AND MAKE MODIFICATIONS TO KERNEL AND MODIFYING VARIOUS PARAMETERS IN RAMDISK IN THE RAMDISK LEVEL #

Hey Folks this guide will tell you how to add pll2 Oc by cute_prince for Dual booting On Both Primary and Secondary.

YOU MUST USE ATLEAST CLASS 6 OR ABOVE SDCARD WITH MINIMUM 8GB CAPACITY

First you need 3 EXT4 partitions on SD-card, using Minitool partition wizard :

Partition Order :

  • Around 700 MB - SD-EXT / SD-SYSTEM (ext4 format)
    Note : For Roms Like Sense 4.1 , Sense 4 lite , and Miui 5 which supports Sd-EXT Should Make 2 Gb SD-EXT
  • Around 1 GB (or can be less) - SD-DATA (ext4 format),
  • Around 1 GB (can be less) SD-CACHE (ext4 format)

All partitions should be Primary




Now making kernel level Changes :
------------------------------------------------


Step 1- open the defconfig of your kernel source and make this change in it
Enable LBDAF (for multiple partitions to work)


Code:
CONFIG_LBDAF=y
Now compile the kernel.


For Primary Rom :
---------------------------


Ramdisk level changes:

Step 2- Now edit Init.rc in a kernel :

# System Partition

Code:
mount yaffs2 [email protected] /system
mount yaffs2 [email protected] /system rw remount

# For Sense 4.1 or Sense 4 lite or any rom which Support SD-EXT


Code:
[COLOR="RoyalBlue"]# Mount SD-EXT
    wait /dev/block/mmcblk0p2
    wait /dev/block/mmcblk0p2
    wait /dev/block/mmcblk0p2
    wait /dev/block/mmcblk0p2
    mount ext4 /dev/block/mmcblk0p2 /sd-ext nosuid nodev noatime nodiratime barrier=0 data=ordered commit=15 noauto_da_alloc nouser_xattr errors=continue[/COLOR]


# For /data :

find this line :

Code:
mount yaffs2 [email protected] /data nosuid nodev

Now replace it with :

Code:
[COLOR="RoyalBlue"]# Mount SD-DATA
    wait /dev/block/mmcblk0p3
    wait /dev/block/mmcblk0p3
    wait /dev/block/mmcblk0p3
    wait /dev/block/mmcblk0p3
    mount ext4 /dev/block/mmcblk0p3 /data nosuid nodev noatime nodiratime barrier=0 data=ordered commit=15 noauto_da_alloc nouser_xattr    errors=continue[/COLOR]

# For /Cache

Find this line :

Code:
mount yaffs2 [email protected] /cache nosuid nodev

Replace it with :

Code:
[COLOR="RoyalBlue"]# Mount SD-CACHE
    wait /dev/block/mmcblk0p4
    wait /dev/block/mmcblk0p4
    wait /dev/block/mmcblk0p4
    wait /dev/block/mmcblk0p4
    mount ext4 /dev/block/mmcblk0p4 /cache nosuid nodev noatime nodiratime barrier=0 data=ordered commit=15 noauto_da_alloc nouser_xattr errors=continue[/COLOR]


That's it now pack the ramdisk with the kernel you made earlier.


For Secondary Rom :
-----------------------------


Ramdisk level changes:

All modifications are performed on init.rc file.
Step 1- Search for this line :
Code:
mount yaffs2 [email protected] /system
mount yaffs2 [email protected] /system ro remount

# For System

Replace it with this :
Code:
[COLOR="Navy"]# Mount SD-SYSTEM
    wait /dev/block/mmcblk0p2
    wait /dev/block/mmcblk0p2
    wait /dev/block/mmcblk0p2
    wait /dev/block/mmcblk0p2
mount ext4 /dev/block/mmcblk0p2 /system
mount ext4 /dev/block/mmcblk0p2 /system ro remount[/COLOR]
Step 2 - find this line :
Code:
mount yaffs2 [email protected] /data nosuid nodev

# For /Data :

Now replace it with :
Code:
[COLOR="navy"]# Mount SD-DATA
    wait /dev/block/mmcblk0p4
    wait /dev/block/mmcblk0p4
    wait /dev/block/mmcblk0p4
    wait /dev/block/mmcblk0p4
    mount ext4 /dev/block/mmcblk0p4 /data nosuid nodev noatime nodiratime barrier=0 data=ordered commit=15 noauto_da_alloc nouser_xattr errors=continue[/COLOR]

# For Cache :

Step 3- Find this line :
Code:
mount yaffs2 [email protected] /cache nosuid nodev
Replace it with :
Code:
[COLOR="navy"]# Mount SD-CACHE
    wait /dev/block/mmcblk0p3
    wait /dev/block/mmcblk0p3
    wait /dev/block/mmcblk0p3
    wait /dev/block/mmcblk0p3
    mount ext4 /dev/block/mmcblk0p3 /cache nosuid nodev noatime nodiratime barrier=0 data=ordered commit=15 noauto_da_alloc nouser_xattr errors=continue[/COLOR]
That's it now pack the ramdisk with the kernel you made earlier


Now the Updater-script changes

Step 1- one the updater-script of the ROM find these lines :
Code:
format("yaffs2", "MTD", "system", "0", "/system");
mount("yaffs2", "MTD", "system", "/system");
package_extract_dir("system", "/system");

Replace them with these:
Code:
[COLOR="navy"]run_program("/sbin/busybox", "mount", "-t", "auto", "/dev/block/mmcblk0p2", "/system");
run_program("/sbin/busybox", "rm", "-rf", "/system/*");
package_extract_dir("system", "/system");[/COLOR]

That's it you've Successfully added support for pll2 Oc on both Primary and Secondary Rom ..!!



NOTE : THIS MAY WORK OR MAY NOT WORK I AM NOT RESPONSIBLE FOR ANY DAMAGE

Hitting Thanks Will Take 1 Sec Of Your Life

Good work bro... nyc thinking ;)
btw won't the system on same partition cause problems ?
 

sakshamx

Senior Member
Feb 8, 2013
738
607
new delhi
sense 4.1 and CM10.2 dual boot and OC

First get ready you primary sense 4.1 rom using the files i provided here http://forum.xda-developers.com/showpost.php?p=44907237&postcount=53

now download the cm 10.2 and the oc kernel from herehttp://forum.xda-developers.com/showpost.php?p=45030377&postcount=91

NOW REPLACE BOOT.IMG FROM OC KERNEL TO THE ROM ZIP AND ALSO THE MODULES
NOW FLASH IN ANY ORDER & DUAL BOOT WITH OC IS READY!!:cool:

NOTE: CM10.2 BOOT TAKES TIME SO DON'T PULL UR BATTERY :)silly:)
 

RohAb

Member
Mar 1, 2013
40
2
plz reply

Bro need little help how to dual boot stock ROM(gamersab) primary and jb miui or cm10,10.1 as secondary
plZzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzZzzzAnd plz plz in little detail thanx:good::good::good::good::good:
 

sneakerspark

Senior Member
Jan 5, 2013
504
227
Islamabad
OnePlus 9
First get ready you primary sense 4.1 rom using the files i provided here http://forum.xda-developers.com/showpost.php?p=44907237&postcount=53

now download the cm 10.2 and the oc kernel from herehttp://forum.xda-developers.com/showpost.php?p=45030377&postcount=91

NOW REPLACE BOOT.IMG FROM OC KERNEL TO THE ROM ZIP AND ALSO THE MODULES
NOW FLASH IN ANY ORDER & DUAL BOOT WITH OC IS READY!!:cool:

NOTE: CM10.2 BOOT TAKES TIME SO DON'T PULL UR BATTERY :)silly:)
does sense 4.1 acts as primary? and i also want to use Xenon GB rom as secondary. Possible?
 

balajithegreat

Senior Member
Nov 14, 2012
198
35
24
Madurai
AOKP 4.2.2 updater-script (Rename it to updater-script)
http://www.mediafire.com/download/ap058ddnvt5kunx/aokp-updater-script

ThinkingBridge updater-script (Rename it to updater-script)
http://www.mediafire.com/download/veyggegax8vm1zi/TB-updater-script

Aries OC (878mhz) Dualboot supported kernel and modules
http://www.mediafire.com/download/5fzvibjqsqr4975/Not-A-FlashableZip.zip


I suggest everyone to use Yannous recovery only for dual booting!


I have a weak pico please provide a non oc kernel . the kernel from cm has many error ...
 

Top Liked Posts

  • There are no posts matching your filters.
  • 71
    Hey guys, I have found out a method to dual boot two roms on our pico , this DOESN'T use the kexec method , what we used is 3 sd-ext partitions , this is just a step towards getting a real cool dual boot feature.

    DISCLAIMER :
    * Your warranty is now void.
    * I am not responsible for bricked devices, broken hearts, YOU are
    * choosing to make these modifications, and if you point the finger at me
    * for messing up your device, I will point that finger back at you and laugh.


    What is dual booting ?
    - Dual booting is the process through which you can switch between any two or more roms without the need of wiping data or making backups before flashing ,all you need to do is switch between the roms ,meanwhile all the apps you've insatlled remain intact in their specific rom.

    for ex- If you are using cm10 beta 6 and you have installed a lot of apps, and you want to test other rom ,but you don't want the fuss of backing up then flashing.. This dual booting method is for you !!​
    Here's a quick video showing Dual Boot on htc explorer in action (sorry for poor quality and extremely weird voice xD:

    In this method
    Primary Rom = The rom which is modded and remains on the Sd-ext partitons
    Secondary Rom = any rom you wish (any android version for ex- cm9 , cm10.1 and even stock !) [ make sure that the secondary rom doesn't use sd-ext partitions]​

    You can't use sense roms or any other rom that supports pll2 OC because they both use sd-ext partitions and as it will cause conflict while booting the rom.

    For now we have only edited CM 10 beta 6 , so you can flash any rom along with cm 10 beta 6 , without the need of making backups , and re installing the whole rom.
    Procedure:

    • Download the modded Primary ROM from the downloads section here or any other modded rom's updater-script.
    • Create 3 SD-EXT Partitions using minitool partition wizard 1) around 400 MB - SD-SYSTEM (ext4) 2) around 1 GB (or can be less) - SD-DATA(ext4 format), 3)around 75MB (can be less) SD-CACHE(ext4 format) (refer to the screenshot)
      dual_zps2a02cd36.jpg
    • Flash the modded primary rom you downloaded earlier.
    • now put the cm.img provided in the downloads section in the root of your SD-CARD (root of sdcard=not in any folder)
    • now flash any rom you want to use as secondary rom DO NOT WIPE DATA BEFORE FLASHING ( but make sure it doesn't use any SD-ext partition i.e. memory increasing script, or uses the pll2 OC method) .
    • take the boot img of your secondary rom , an put it in the root of your SD card.
    • now after the second rom has been booted install the terminal emulator app given in the downloads Section.
    • that's it you've successfully set up your Pico for Dual Booting ;)
    • If you want to change your secondary rom DO NOT WIPE DATA instead goto recovery -
      if in CWM or philz -go to mounts and storage and format system , data and cache
      If in TWRP goto wipe and format SYSTEM,DATA and CACHE only

    Switching ROMS :

    Download PICO DUAL BOOT APP by galaxy freak from here : http://forum.xda-developers.com/showpost.php?p=44769802&postcount=37

    BEFORE CONTINUING MAKE SURE BOOT.IMG OF PRIMARY ROM IS NAMED "cm.img" and THAT OF SECONDARY ROM NAMED "boot.img" AND BOTH ARE PLACED IN THE ROOT OF THE SDCARD

    • IF you are on primary rom open the pico dual boot app by galaxy freak.... click reboot automatically... then press boot secondary rom... a popup will appear click OK and after secs your pico will boot into secondary ROM..
    • if you are in secondary ROM ... open pico dual boot app.. click reboot automatically .. now press boot primary ROM.. A popup will appear click OK after few sec primary rom will boot now...

    All thanks for this app to galaxy freak for the app.. the app will look like this :
    2ni36nb.png


    we will be adding support for more roms as primary rom. And meanwhile i am in for trying make kexec work on pico.If you liked this dual boot method Please support us by hitting thanks,rating the thread 5 stars, posting reviews and/or if possible by Donating us

    As for now there is only two drawback of using this method for dual booting i.e. manually typing the flash_image part and that the secondary rom should not use SD-EXT partition i.e. you can't use pll2 OC or memory increasing script on the ROM.

    And this method is only recommended for people having SD cards of class 6 and above and over 8GB of storage( i've tested and used it on class 10 UHS 1 SD card)​


    Guide For Installing Sense 4.1 and sense 4.0 For dual booting : Roms available here : http://forum.xda-developers.com/showthread.php?t=2419609

    Guide For Partitions :
    =================

    Please Proceed If you have minimum Class 6 and 8gb Memory card​

    Ok Suppose U have Required Sdcard , Now make three Partitions as stated below :


    Partition Order

    SD-EXT ----- > You should have make it of 2 Gb because it contains half Sense 4.1 and Sense 4 lite
    SD-DATA ----- > You should have make it of 1Gb Or As u wish
    SD-CACHE ----- > You should have make it of 75 mb

    All Partitions Should Be Primary and Of ext4, Refer to the Screenshot :
    gf26.png


    How To Install :
    ===========

    Suppose You have made Partitions nOw Installation :
    Installion is noobie easy if u have mind
    First Install Yonnous Recovery (Not Tested with other recoveries )
    Now Put Roms in Sd-Card
    Now go into recovery mod
    Wipe data and Factory reset
    Now Format /boot and /
    First Flash Sense 4.1 because it is primary rom
    After Installation Reboot
    Complete Customization Setup of Sense 4.1 after booting
    Now again go into Recovery
    Now Flash Sense 4 lite without Wiping/formating any thing
    Now Reboot
    Enjoy

    Switching Roms :
    ============


    This method is via Fastboot :

    Download This Package :http://d-h.st/I45 it contains custom Kernels and Fastboot files extract it in C:

    For Switching Rom From Primary To Secondary i.e From Sense 4.1 to Sense 4 lite


    Code:
    Fastboot Flash boot boot.img


    For switching Rom From Secondary to Primary i.e From Sense 4 Lite to Sense 4.1


    Code:
    Fastboot Flash boot cm.img

    A kind request :​
    Guys we've put a lot of effort in it so if you don't like it please don't go on commenting "This is useless" , "i don't like it" ,etc. If you don't like it ,kindly leave.​
    Credits
    -
    Cyanogenmod 10 devs
    @adityalahiri13
    [email protected]
    @Galaxy Freak [for pico dual boot app]
    -if i missed any one please PM me ;)
    47
    Download Links

    Note
    1. For The secondary rom you CANNOT use scripts like int2ext, etc.
    2. Also you CANNOT use pll2 OC method in Secondary ROM
    3. The edited cm10beta 6 (primary rom) is clocked at 600mhz, so NO chances of burnt nand.
    4. You can choose ANY rom as secondary ROM provided it does not violate the first 2 clauses, that is, it should not use sd-ext partitions :)
    5. The process is only for people having class 6 or higher sd card.
    6. We have said it before and we are saying it again- This has taken a lot of effort and time so please don't go on commenting "This is useless" , "i don't like it" ,etc. If you don't like it, you are free to leave.​

    Here's a quick video showing Dual Boot on htc explorer in action (sorry for poor quality and extremely weird voice)


    Want to Thank us for our work?

    If you like this project, then you can support us by doing any of the following things if you can. It isn't compulsory at all, it's just if you want to contribute :)
    • Rate the thread 5 stars
    • Hit thanks for ayush and me
    • Donate us if possible. Donations are not always expected by always accepted :)
    • Post your reviews and suggestions :)
    19
    Upcoming app for switching ROMs and guide to mod primary ROM manually

    I made app to make switching ROMs easy. coming tomorrow.

    Also, limit of only CM10 as primary ROM is not very nice. We will release guide how to mod any ROM to use as primary, and also preserved modified updater-script and kernel for all ROMs (AOSP-based 4.0, 4.1,4.2 and Sense 4.0, 4.1) , to make process easier for less experienced users.
    13
    Here is an app for quick-switching ROMs


    2ni36nb.png
    iogcuu.png



    Download
    9
    [WIP]Sense 4.1 dual boot

    Hey guys i have made changes in updater-script and kernel to make sense 4.1 as primary in dual boot
    So lets start with the dual boot method

    Create 3 SD-EXT Partitions using minitool partition wizard
    1st sd- system 700mb(min)
    2nd sd-data (it will be your internal memory)
    3rd sd_cache(70mb)

    Download
    boot.img
    Media fire LINK- http://www.mediafire.com/download/03o1xw31bft7qsl/boot.img

    updater script - https://www.dropbox.com/s/lykr7rp7p2xm3a6/updater-script
    MF LINK - http://www.mediafire.com/view/80n94o3b3ite909/updater-script

    sense4.1 rom oc_edition boot.img - https://www.dropbox.com/s/1p25vvuwln83aao/boot_oc.img (rename it to boot and put in rom)
    MF LINK - http://www.mediafire.com/download/dadam6le4rcxn54/boot_oc.img

    use any zip file explorer (recommended winrar or 7zip)
    Put boot.img in sense 4.1 rom and
    updater script in rom_name\META-INF\com\google\android
    flash it and use any secondary rom:D

    NOTE
    dual boot app may not work in sense rom then u will have to flash it

    SWITCHING ROM BY RECOVERY -the easy way

    DOWNLOAD these file put primary boot.img in primary zip and secondary rom's boot.img in secondary zip flash the zip to change rom
    http://www.mediafire.com/?tr4cpnls625xu

    PRESSING THANKS ARE ALWAYS ACCPETED