[MOD][29 October] MultiROM v32b - the ultimate multiboot method! [EOL]

Are you interested more to boot ROMs from MicroSD Card or USB-OTG drive?


  • Total voters
    109
  • Poll closed .
Search This thread

AntaresOne

Recognized Developer
Sep 30, 2013
2,161
17,509
30
Chieti, Italy
www.antaresone.eu
aop0rp.png


MultiROM for the Samsung Galaxy S4 (Qualcomm variants)
Brought to you by AntaresOne


2vacmip.png

Code:
#include <std_disclaimer.h>

/*
 * Your warranty is now void.
 *
 * I'm not responsible for bricked devices, dead SD cards,
 * thermonuclear war, or you getting fired because the alarm app failed. Please
 * do some research if you have any concerns about features included in this ROM
 * before flashing it! YOU are choosing to make these modifications, and if
 * you point the finger at me for messing up your device, I will laugh at you.
 *
 */

Introduction
MultiROM is one-of-a-kind multi-boot mod for Galaxy S4. It can boot any Android ROM as well as other systems like Ubuntu Touch, once they are ported to that device. Besides booting from device's internal memory, MultiROM can boot from external SD card. The main part of MultiROM is a boot manager, which appears every time your device starts and lets you choose ROM to boot. You can see how it looks on the image above. ROMs are installed and managed via modified TWRP recovery. You can use standard ZIP files to install secondary Android ROMs and MultiROM even has its own installer system, which can be used to ship other Linux-based systems.

Features:
* Multiboot any number of Android ROMs
* Restore nandroid backup as secondary ROM
* Boot from Internal memory and MicroSD Card



Warning!
This whole thing is basically one giant hack - none of these systems are made with multibooting in mind. It is no longer messing with data partition or boot sector, but it is possible that something goes wrong (even if never happened until now) and you will have to flash stock firmware with Odin. Make backups. Always.


Installation
1. Via MultiROM Manager app
This is the easiest way to install everything MultiROM needs. Install the app and select MultiROM and recovery on the Install/Update card. If the Status card says Kernel: doesn't have kexec-hardboot patch! in red letters, you have to install also patched kernel - either select one on the Install/Update card or get some 3rd-party kernel here on XDA. You are choosing kernel for your primary ROM, not any of your (future) secondary ROMs, so select the version accordingly.
Press "Install" on the Install/Update card to start the installation.

2. Manual installation
Firstly, there are videos on youtube. If you want, just search for "MultiROM installation" on youtube and watch those, big thanks to all who made them. There is also an awesome article on Linux Journal.

Note 1: Your device must not be encrypted (hint: if you don't know what it is, then it is not encrypted).

MultiROM has 3 parts you need to install:
  • MultiROM - download the ZIP file and flash it in recovery.
  • Modified recovery - download the ZIP file and flash it in recovery or Mobile Odin app to flash the recovery.img contained inside ZIP.
  • Patched kernel - Download the ZIP file and flash it in recovery or keep stock kernel (only for CM11-based ROMs after 6 August 2014 & CM12-based ROMs)

You current rom will not be erased by the installation.
Download links are in the third post.



Adding ROMs
1. Android
Go to recovery, select Advanced -> MultiROM -> Add ROM. Select the ROM's zip file and confirm.

3. Other systems (once ported to device)
Firefox OS and Sailfish OS are just another Android ROM under MultiROM's point of view, so add them as if it were Android.


Using MicroSD Card

During installation, recovery lets you select install location. You just select the location (extX, NTFS and FAT32 partitions are supported) and proceed with the installation.
If you wanna use other than default FAT32 partition, just format it in PC. If you don't know how/don't know where to find out how, you probably should not try installing MultiROM.
If you are installing to NTFS or FAT32 partition, recovery asks you to set image size for all the partitions - this cannot be easilly changed afterward, so choose carefully. FAT32 is limited to maximum of 4095MB per image - it is limitation of the filesystem, I can do nothing about that.
Installation to MicroSD Card takes a bit more, because the external memory is (usually) slower and it needs to create the images. Also boot process is longer, highly depends on card's class. You can find ROMs installed on SD card in the "External" tab in boot menu.


Updating/changing ROMs
1. Primary ROM (Internal)
  • Flash ROM's ZIP file as usual, do factory reset if needed (it won't erase secondary ROMs)
  • Go to Advanced -> MultiROM in recovery and do Inject curr. boot sector.

2. Secondary Android ROMs
If you want to change the ROM, delete it and add new one. To update ROM, follow these steps:

  • Go to Advanced -> MultiROM -> List ROMs and select the ROM you want to update.
  • Select "Flash ZIP" and flash ROM's ZIP file.


Explanation of recovery menus
Main menu
- Add ROM - Add ROM to boot manager
- List ROMs - List installed ROMs and manage them
- Inject curr. boot sector - Use this option if MultiROM does not show up on boot, for example after kernel installation.
- Settings - Well, settings

Manage ROM
- Rename, delete - I believe these are obvious
- Flash ZIP (only Android ROMs) - Flash ZIP to the ROM, for example GApps
- Add/replace boot.img - Replaces boot.img used by the ROM, this is more like developer option.


Source Code
MultiROM - https://github.com/Tasssadar/multirom/tree/master (branch master)
Modified TWRP - https://github.com/Tasssadar/Team-Win-Recovery-Project (branch master)
Alucard Kernel w/ kexec-hardboot patch - https://github.com/Alucard24/Alucard-Kernel-jfltexx
Googy-Max3 kernel w/ kexec-hardboot patch - https://github.com/googyanas/Googy-Max3-Kernel
Hulk kernel w/ kexec-hardboot patch - https://github.com/Tkkg1994/Hulk-Kernel
Imperium kernel w/ kexec-hardboot patch - https://github.com/Slim80/Imperium_Kernel_TW_4.4.2
KT kernel w/ kexec-hardboot patch - https://github.com/ktoonsez/KT-SGS4
CM11 stock kernel w/ kexec-hardboot patch - https://github.com/CyanogenMod/android_kernel_samsung_jf/tree/cm-11.0
CM12 stock kernel w/ kexec-hardboot patch - https://github.com/CyanogenMod/android_kernel_samsung_jf/tree/cm-12.0
CM12.1 stock kernel w/ kexec-hardboot patch - https://github.com/CyanogenMod/android_kernel_samsung_jf/tree/cm-12.1
MultiROM device tree - https://github.com/AntaresOne/multirom_device_samsung_jflte


Big thanks to Tasssadar for this awesome utility.

Thanks a lot to @daveyannihilation for the S4 template.


XDA:DevDB Information
MultiROM, multiboot for Galaxy S4 (Qualcomm variants) (GRUB-like), Tool/Utility for the Samsung Galaxy S4

Contributors
AntaresOne

Version Information
Status: No Longer Updated
Current Stable Version: 20151029-v32b
Stable Release Date: 2014-09-01

Created 2014-09-01
Last Updated 2017-05-19
 
Last edited:

AntaresOne

Recognized Developer
Sep 30, 2013
2,161
17,509
30
Chieti, Italy
www.antaresone.eu
Changelog

15/6/2015 - v32a
  • Update after 6 months!! :) read post #669
  • Modified TWRP:
    • Base updated to 2.8.6.0
    • Sacrificed crypto and embedded SuperSU installer to get an image that fits 10.5MB recovery partition size
    • Detailed changes here
  • MultiROM:
    • Base update to v32
    • Added support for 5.1.x Lollipop ROMs
    • Better support for 5.0.x Lollipop ROMs
    • Detailed changes here

16/12/2014 - v30c
  • Modified TWRP:
    • Base updated to 2.8.2.0
    • Better support for primary/secondary Lollipop ROMs install/update
  • MultiROM:
    • Better support for Lollipop-based ROMs
    • Fixed the ghost update found in previous build

26/11/2014 - v30

12/11/2014
  • Modified TWRP:
    • Build an updated image without event logging

4/11/2014
  • Modified TWRP:
    • Add back "Share kernel" option (same behavior can be obtained by pressing "Remove boot.img" under MultiROM>List ROMs>*rom name*)

30/10/2014

25/10/2014 - v29
  • MultiROM:
  • Modified TWRP:
  • Uninstaller ZIP:
    • Add support for other jf variants

2/10/2014

1/10/2014 - v28c

30/9/2014 - v28b
  • MultiROM:
    • ROM boot from external SD (MicroSD card) is now supported
  • TWRP Recovery:
    • General update (branch master)
    • Removed "Share kernel" option
    • ROM Installation to external SD (MicroSD card) is now supported
  • Uninstaller ZIP added back and now working

16/9/2014

12/9/2014
  • TWRP Recovery:

6/9/2014

3/9/2014
  • Fixed installation on other jflte devices

1/9/2014 - v28
  • Device source:
    • add power button init (needed to reboot device when "an error occurred" and to exit from pong game, available by clicking on Miri)
 
Last edited:

AntaresOne

Recognized Developer
Sep 30, 2013
2,161
17,509
30
Chieti, Italy
www.antaresone.eu
Downloads

1. Main downloads

MultiROM EXT4 (20151029-v32b): https://www.androidfilehost.com/?fid=24052804347849558

MultiROM F2FS (20151029-v32b): https://www.androidfilehost.com/?fid=24052804347849563

Modified TWRP (20151029-v2.8.7.0): https://www.androidfilehost.com/?fid=24052804347849556

MultiROM Manager App: Google Play Store (by default it will install the EXT4 version!)

2. Kernels for primary ROM (Internal) based on Android 5.1.x Lollipop

Kernel with kexec-hardboot patch for AOSP/CM 5.1 ROMs:
  • AOSP 5.1 & Optimized CyanogenMod 12.1 from JDCTeam: Alucard is embedded and always up to date
  • Alucard AOSPv2 5.1 v1.3ba
  • Stock CM12.1 kernel (included in ROM's zip)

3. Kernels for primary ROM (Internal) based on Android 5.0.x Lollipop

Kernel with kexec-hardboot patch for AOSP/CM 5.0 ROMs:

Kernel with kexec-hardboot patch for Google Edition 5.0 ROMs:

Kernel with kexec-hardboot patch for TouchWiz 5.0.1 ROMs:

4. Kernels for primary ROM (Internal) based on Android 4.4.x KitKat

Kernel with kexec-hardboot patch for AOSP/CM 4.4 ROMs:
(builds up to 6 August, including CM11 M9)

(builds after 6 August, including CM11 M10)

Kernel with kexec-hardboot patch for Google Edition 4.4.x ROMs:

Kernel with kexec-hardboot patch for TouchWiz 4.4.4 ROMs:

Kernel with kexec-hardboot patch for TouchWiz 4.4.2 ROMs:

5. Uninstaller

MultiROM uninstaller ZIP: https://www.androidfilehost.com/?fid=95747613655050515

Just flash this to disable MultiROM and delete all secondary ROMs.


Alucard-PWR-CORE dev thread by @alucard_24: http://xdaforums.com/showthread.php?t=2590246

Googy-Max3 dev thread by @googy_anas: http://xdaforums.com/showthread.php?t=2741181

Hulk Kernel dev thread by @Tkkg1994: http://xdaforums.com/galaxy-s4/i9505-develop/kernel-hulk-kernel-v1-stweaks-based-t3050469

Imperium dev thread by @slim80: http://xdaforums.com/galaxy-s4/i9505-orig-develop/kernel-imperium-kernel-v1-0-t2910801

KT-SGS4 dev thread by @ktoonsez: http://xdaforums.com/showthread.php?t=2297379
 
Last edited:

AntaresOne

Recognized Developer
Sep 30, 2013
2,161
17,509
30
Chieti, Italy
www.antaresone.eu
Useful tips

About security
In order to make multi-booting possible, MultiROM has to sacrifice some security measures. Firstly, on secondary Android ROMs, /system is not mounted read-only. While there are other things preventing malicious software from messing with /system, this might potentialy make it easier for such software to attack that system.
Next, MultiROM doesn't work with /data encryption. Not many people who use custom ROMs also use encryption anyway, so that isn't much of a concern.​

What do the ROMs share?
All ROMs are separate, except /sdcard, which is shared between all Android ROMs.​

What storage for ROMs is supported?
Internal memory (/data/media-/sdcard) is supported as well as MicroSD card (/external_sd).​

How many ROMs can I have and where are stored?
You can have as many ROMs as you can fit in internal memory and MicroSD card. All the ROMs are stored in /data/media/0/multirom/roms (in case of internal memory) and /external_sd/multirom/roms (in case of MicroSD card) drive. These folders are unaccessible in Android, to prevent mediascanner from scanning it. You can either in recovery, or obtain root and go to /data/media/0/multirom/roms.​

I'm a F2FS user. Can I still enjoy MultiROM?
Yes, you can. Just flash F2FS version of MultiROM zip. NOTE: it is compatible only with full F2FS (so cache, data and system both at once), if you use a custom layout like F2FS for cache/data and EXT4 for system just edit the mrom.fstab file inside the MultiROM zip before flashing the first time or after with reflashing.​

Can I have different versions of Android working alongside?
Yes. As long as you select "Don't share kernel" when installing the secondary ROM, systems are separated.​

Can I flash TouchWiz-based ROMs as secondary ROMs?
You can, but it's strongly unrecommended and not all the TW ROMs work if installed as secondary, plus are very bigger than other ROMs. I suggest to flash them only as primary ROM.​

Can I configure boot menu to be showed only when I want?
You can. Boot in TWRP recovery, go under Advanced>MultiROM>Settings>Configure autoboot and set Keypress-based, then select a ROM to autoboot. In this way, if you power on your device boot menu isn't showed and the ROM you choose to autoboot is booted, but if you power on and rightly when you see "Samsung Galaxy S4" bootlogo you press and keep pressed Vol+ or Vol- button, boot menu is showed.​

The menu with all the ROMs won't show up during boot, how to fix it?
Either re-flash the MultiROM zip or go to recovery, Advanced -> MultiROM -> Inject curr. boot sector.

The reason for this is that something rewrote your boot.img, which happens for example when you flash a kernel. MultiROM's boot menu is part of the boot image, so it has to be added into it again.​
 
Last edited:

nds850

Senior Member
Jun 11, 2013
446
102
Stockholm
Hi!

I have been trying this out tonight with four different ROMs and unfortunetley I've only been able to get two of them working:
http://xdaforums.com/galaxy-s4/unified-development/rom-dirty-unicorns-t2863642

http://xdaforums.com/showthread.php?t=2582596


With these the phone just rebooted into recovery:
http://xdaforums.com/showthread.php?t=2544474

http://xdaforums.com/showthread.php?t=2304815


I'm using the Alucard kernel (with the patch) that you posted in the old thread and I chose not to share kernel when installing them.

Do you have any suggestions to why those two ROMs doesn't work for me?


Thank you for your work with this!
 

bdog2015

Senior Member
Feb 23, 2014
82
27
Hi!

I have been trying this out tonight with four different ROMs and unfortunetley I've only been able to get two of them working:
http://xdaforums.com/galaxy-s4/unified-development/rom-dirty-unicorns-t2863642

http://xdaforums.com/showthread.php?t=2582596


With these the phone just rebooted into recovery:
http://xdaforums.com/showthread.php?t=2544474

http://xdaforums.com/showthread.php?t=2304815


I'm using the Alucard kernel (with the patch) that you posted in the old thread and I chose not to share kernel when installing them.

Do you have any suggestions to why those two ROMs doesn't work for me?


Thank you for your work with this!
Alright I tried beanstalk like you mentioned and it rebooted into recovery the first time I tried booting in to it. It worked fine the 2nd time however. Currently have dirty unicorns, pa, and now bs. Sometimes when I click reboot on either one of these ROMs, it automatically reboots to recovery instead of multiboot. Don't know of this is a bug or not.
 

AntaresOne

Recognized Developer
Sep 30, 2013
2,161
17,509
30
Chieti, Italy
www.antaresone.eu
@bdog2015

No, it's not a bug.

RAM memory works in this way: temporary data is loaded inside, but when you reboot or shutdown the system, RAM content is lost (deleted).
Kexec hardboot patch born to let the first 256 MB of RAM (where the kernel is loaded) survive after a reboot. Since that memory portion it's still alive, if you load a ROM and reboot your device may happen that it goes in recovery because bootloader think that it should load recovery (you can see that when you load secondary ROMs you have "Recovery booting......."), so the best method to change ROM or reboot is to shutdown the device and wait 10 (symbolic, to surely get rid of this "problem") seconds for full RAM reset then power on again

Inviato dal mio GT-I9505
 
Last edited:
  • Like
Reactions: aarongillion63

bdog2015

Senior Member
Feb 23, 2014
82
27
@bdog2015

No, it's not a bug.

RAM memory works in this way: temporary data is loaded inside, but when you reboot or shutdown the system, RAM content is lost (deleted).
Kexec hardboot patch born to let the first 128 MB of RAM (where the kernel is loaded) survive after a reboot. Since that memory portion it's still alive, if you load a ROM and reboot your device may happen that it goes in recovery because bootloader think that it should load recovery (you can see that when you load secondary ROMs you have "Recovery booting......."), so the best method to change ROM or reboot is to shutdown the device and wait 10 (symbolic, to surely get rid of this "problem") seconds for full RAM reset then power on again

Inviato dal mio GT-I9505
Cool. Thanks for the explanation. This multiboot is really awesome
 

nds850

Senior Member
Jun 11, 2013
446
102
Stockholm
I'm not sure I understand how you mean. I completely shut the phone off and wait for the RAM to reset. I then start the phone and in the MultiROM menu choose the ROM I want to use. The phone restarts and load to recovery. Does the RAM need to be cleared after choosing the ROM? If that is the case how do I do that? :)
 

davidwilson83

Retired Forum Mod / Inactive RC & RT
Apr 20, 2012
4,155
12,714
40
Perth
Google Pixel 5
I have been trying to flash the MultiROM zip through TWRP Recovery and I keep getting the following errors:

Code:
assert failed: getprop("ro.product.device") == " jflte" | | getprop("ro.build.product") == " jflte "

But what's weird is that both the lines that script is looking for (ro.product.device & ro.build.product) both say jflte in my build.prop so I'm very confused. I'm running Alliance ROM v2.0 I9505XXUGNG2 with stock permissive kernel and TWRP 2.7.1.0

Any help/advice would be appreciated.
 
Last edited:

AntaresOne

Recognized Developer
Sep 30, 2013
2,161
17,509
30
Chieti, Italy
www.antaresone.eu
@daveyannihilation

What model number has your device?

Thanks for reporting, new build tomorrow with fixed assert for all jflte devices.

For now, open MultiROM zip through WinRAR, go under META-INF/com/google/android and open updater-script, delete:

Code:
assert(getprop("ro.product.device") == "jflte" || getprop("ro.build.product") == "jflte");

Then save the file and confirm modified file in WinRAR, now flash that zip

Inviato dal mio GT-I9505
 
  • Like
Reactions: davidwilson83

davidwilson83

Retired Forum Mod / Inactive RC & RT
Apr 20, 2012
4,155
12,714
40
Perth
Google Pixel 5
@daveyannihilation

What model number has your device?

Thanks for reporting, new build tomorrow with fixed assert for all jflte devices.

For now, open MultiROM zip through WinRAR, go under META-INF/com/google/android and open updater-script, delete:

Code:
assert(getprop("ro.product.device") == "jflte" || getprop("ro.build.product") == "jflte");

Then save the file and confirm modified file in WinRAR, now flash that zip

Inviato dal mio GT-I9505

Ok MultiROM is installed. After installing MultiROM I flash TWRP_multirom_jflte_20140901.zip through TWRP and then reboot recovery. When TWRP reboots, I don't have any options under Advanced for MultiROM. Recovery is now showing 2.7.1 in the top left whereas before it was showing as 2.7.1.0 so I know that the recovery has changed.

Have I done something wrong? When I reboot the phone I get the MultiROM boot screen coming up asking me to either let it boot into the internal ROM or touch to change, but when I boot into recovery I have no options for MultiROM. I am happy to upload any logs that might help to decipher the issue I am having.

Thanks for your help mate.
 

davidwilson83

Retired Forum Mod / Inactive RC & RT
Apr 20, 2012
4,155
12,714
40
Perth
Google Pixel 5
@daveyannihilation

Here no problem, do you read "MultiROM TWRP v2.7.1" on the left?

EDIT: New build available

Changes: Fixed installation on other jflte devices

Inviato dal mio GT-I9505
Dude... I'm just an idiot. I had twrp holofied which wasn't showing the menus and buttons. This mod is AMAZING!!! Dude I have been looking for this forever, you are a king. I'm definitely gonna be using this from now on, thank you so very very much! [emoji4]

Alliance I9505
 

Top Liked Posts

  • There are no posts matching your filters.
  • 84
    aop0rp.png


    MultiROM for the Samsung Galaxy S4 (Qualcomm variants)
    Brought to you by AntaresOne


    2vacmip.png

    Code:
    #include <std_disclaimer.h>
    
    /*
     * Your warranty is now void.
     *
     * I'm not responsible for bricked devices, dead SD cards,
     * thermonuclear war, or you getting fired because the alarm app failed. Please
     * do some research if you have any concerns about features included in this ROM
     * before flashing it! YOU are choosing to make these modifications, and if
     * you point the finger at me for messing up your device, I will laugh at you.
     *
     */

    Introduction
    MultiROM is one-of-a-kind multi-boot mod for Galaxy S4. It can boot any Android ROM as well as other systems like Ubuntu Touch, once they are ported to that device. Besides booting from device's internal memory, MultiROM can boot from external SD card. The main part of MultiROM is a boot manager, which appears every time your device starts and lets you choose ROM to boot. You can see how it looks on the image above. ROMs are installed and managed via modified TWRP recovery. You can use standard ZIP files to install secondary Android ROMs and MultiROM even has its own installer system, which can be used to ship other Linux-based systems.

    Features:
    * Multiboot any number of Android ROMs
    * Restore nandroid backup as secondary ROM
    * Boot from Internal memory and MicroSD Card



    Warning!
    This whole thing is basically one giant hack - none of these systems are made with multibooting in mind. It is no longer messing with data partition or boot sector, but it is possible that something goes wrong (even if never happened until now) and you will have to flash stock firmware with Odin. Make backups. Always.


    Installation
    1. Via MultiROM Manager app
    This is the easiest way to install everything MultiROM needs. Install the app and select MultiROM and recovery on the Install/Update card. If the Status card says Kernel: doesn't have kexec-hardboot patch! in red letters, you have to install also patched kernel - either select one on the Install/Update card or get some 3rd-party kernel here on XDA. You are choosing kernel for your primary ROM, not any of your (future) secondary ROMs, so select the version accordingly.
    Press "Install" on the Install/Update card to start the installation.

    2. Manual installation
    Firstly, there are videos on youtube. If you want, just search for "MultiROM installation" on youtube and watch those, big thanks to all who made them. There is also an awesome article on Linux Journal.

    Note 1: Your device must not be encrypted (hint: if you don't know what it is, then it is not encrypted).

    MultiROM has 3 parts you need to install:
    • MultiROM - download the ZIP file and flash it in recovery.
    • Modified recovery - download the ZIP file and flash it in recovery or Mobile Odin app to flash the recovery.img contained inside ZIP.
    • Patched kernel - Download the ZIP file and flash it in recovery or keep stock kernel (only for CM11-based ROMs after 6 August 2014 & CM12-based ROMs)

    You current rom will not be erased by the installation.
    Download links are in the third post.



    Adding ROMs
    1. Android
    Go to recovery, select Advanced -> MultiROM -> Add ROM. Select the ROM's zip file and confirm.

    3. Other systems (once ported to device)
    Firefox OS and Sailfish OS are just another Android ROM under MultiROM's point of view, so add them as if it were Android.


    Using MicroSD Card

    During installation, recovery lets you select install location. You just select the location (extX, NTFS and FAT32 partitions are supported) and proceed with the installation.
    If you wanna use other than default FAT32 partition, just format it in PC. If you don't know how/don't know where to find out how, you probably should not try installing MultiROM.
    If you are installing to NTFS or FAT32 partition, recovery asks you to set image size for all the partitions - this cannot be easilly changed afterward, so choose carefully. FAT32 is limited to maximum of 4095MB per image - it is limitation of the filesystem, I can do nothing about that.
    Installation to MicroSD Card takes a bit more, because the external memory is (usually) slower and it needs to create the images. Also boot process is longer, highly depends on card's class. You can find ROMs installed on SD card in the "External" tab in boot menu.


    Updating/changing ROMs
    1. Primary ROM (Internal)
    • Flash ROM's ZIP file as usual, do factory reset if needed (it won't erase secondary ROMs)
    • Go to Advanced -> MultiROM in recovery and do Inject curr. boot sector.

    2. Secondary Android ROMs
    If you want to change the ROM, delete it and add new one. To update ROM, follow these steps:

    • Go to Advanced -> MultiROM -> List ROMs and select the ROM you want to update.
    • Select "Flash ZIP" and flash ROM's ZIP file.


    Explanation of recovery menus
    Main menu
    - Add ROM - Add ROM to boot manager
    - List ROMs - List installed ROMs and manage them
    - Inject curr. boot sector - Use this option if MultiROM does not show up on boot, for example after kernel installation.
    - Settings - Well, settings

    Manage ROM
    - Rename, delete - I believe these are obvious
    - Flash ZIP (only Android ROMs) - Flash ZIP to the ROM, for example GApps
    - Add/replace boot.img - Replaces boot.img used by the ROM, this is more like developer option.


    Source Code
    MultiROM - https://github.com/Tasssadar/multirom/tree/master (branch master)
    Modified TWRP - https://github.com/Tasssadar/Team-Win-Recovery-Project (branch master)
    Alucard Kernel w/ kexec-hardboot patch - https://github.com/Alucard24/Alucard-Kernel-jfltexx
    Googy-Max3 kernel w/ kexec-hardboot patch - https://github.com/googyanas/Googy-Max3-Kernel
    Hulk kernel w/ kexec-hardboot patch - https://github.com/Tkkg1994/Hulk-Kernel
    Imperium kernel w/ kexec-hardboot patch - https://github.com/Slim80/Imperium_Kernel_TW_4.4.2
    KT kernel w/ kexec-hardboot patch - https://github.com/ktoonsez/KT-SGS4
    CM11 stock kernel w/ kexec-hardboot patch - https://github.com/CyanogenMod/android_kernel_samsung_jf/tree/cm-11.0
    CM12 stock kernel w/ kexec-hardboot patch - https://github.com/CyanogenMod/android_kernel_samsung_jf/tree/cm-12.0
    CM12.1 stock kernel w/ kexec-hardboot patch - https://github.com/CyanogenMod/android_kernel_samsung_jf/tree/cm-12.1
    MultiROM device tree - https://github.com/AntaresOne/multirom_device_samsung_jflte


    Big thanks to Tasssadar for this awesome utility.

    Thanks a lot to @daveyannihilation for the S4 template.


    XDA:DevDB Information
    MultiROM, multiboot for Galaxy S4 (Qualcomm variants) (GRUB-like), Tool/Utility for the Samsung Galaxy S4

    Contributors
    AntaresOne

    Version Information
    Status: No Longer Updated
    Current Stable Version: 20151029-v32b
    Stable Release Date: 2014-09-01

    Created 2014-09-01
    Last Updated 2017-05-19
    24
    Updates!

    Hi guys

    I have a news for you...

    Samsung made our recovery partition only 10.5MB big, while the new recovery is much bigger. Finally I succeeded into building the new recovery for our device, and to achieve this I had to sacrifice some things: crypto compatibility (the encrypted /data partitions can't be managed anymore, not that bad since MultiROM wasn't compatible with this. If you don't know what's Android encryption then your partition is not encrypted) and SuperSU installer (you can't root a ROM with integrated TWRP feature anymore, but you can still flash SuperSU zip)

    Now, let the game begin :cool:

    MultiROM v32 and MultiROM TWRP 2.8.6.0 are perfectly running on my device!!!!!!!

    Booted a Lollipop 5.1 ROM as secondary, everything fine

    Expect a public release very soon... :)
    23
    Changelog

    15/6/2015 - v32a
    • Update after 6 months!! :) read post #669
    • Modified TWRP:
      • Base updated to 2.8.6.0
      • Sacrificed crypto and embedded SuperSU installer to get an image that fits 10.5MB recovery partition size
      • Detailed changes here
    • MultiROM:
      • Base update to v32
      • Added support for 5.1.x Lollipop ROMs
      • Better support for 5.0.x Lollipop ROMs
      • Detailed changes here

    16/12/2014 - v30c
    • Modified TWRP:
      • Base updated to 2.8.2.0
      • Better support for primary/secondary Lollipop ROMs install/update
    • MultiROM:
      • Better support for Lollipop-based ROMs
      • Fixed the ghost update found in previous build

    26/11/2014 - v30

    12/11/2014
    • Modified TWRP:
      • Build an updated image without event logging

    4/11/2014
    • Modified TWRP:
      • Add back "Share kernel" option (same behavior can be obtained by pressing "Remove boot.img" under MultiROM>List ROMs>*rom name*)

    30/10/2014

    25/10/2014 - v29
    • MultiROM:
    • Modified TWRP:
    • Uninstaller ZIP:
      • Add support for other jf variants

    2/10/2014

    1/10/2014 - v28c

    30/9/2014 - v28b
    • MultiROM:
      • ROM boot from external SD (MicroSD card) is now supported
    • TWRP Recovery:
      • General update (branch master)
      • Removed "Share kernel" option
      • ROM Installation to external SD (MicroSD card) is now supported
    • Uninstaller ZIP added back and now working

    16/9/2014

    12/9/2014
    • TWRP Recovery:

    6/9/2014

    3/9/2014
    • Fixed installation on other jflte devices

    1/9/2014 - v28
    • Device source:
      • add power button init (needed to reboot device when "an error occurred" and to exit from pong game, available by clicking on Miri)
    23
    Downloads

    1. Main downloads

    MultiROM EXT4 (20151029-v32b): https://www.androidfilehost.com/?fid=24052804347849558

    MultiROM F2FS (20151029-v32b): https://www.androidfilehost.com/?fid=24052804347849563

    Modified TWRP (20151029-v2.8.7.0): https://www.androidfilehost.com/?fid=24052804347849556

    MultiROM Manager App: Google Play Store (by default it will install the EXT4 version!)

    2. Kernels for primary ROM (Internal) based on Android 5.1.x Lollipop

    Kernel with kexec-hardboot patch for AOSP/CM 5.1 ROMs:
    • AOSP 5.1 & Optimized CyanogenMod 12.1 from JDCTeam: Alucard is embedded and always up to date
    • Alucard AOSPv2 5.1 v1.3ba
    • Stock CM12.1 kernel (included in ROM's zip)

    3. Kernels for primary ROM (Internal) based on Android 5.0.x Lollipop

    Kernel with kexec-hardboot patch for AOSP/CM 5.0 ROMs:

    Kernel with kexec-hardboot patch for Google Edition 5.0 ROMs:

    Kernel with kexec-hardboot patch for TouchWiz 5.0.1 ROMs:

    4. Kernels for primary ROM (Internal) based on Android 4.4.x KitKat

    Kernel with kexec-hardboot patch for AOSP/CM 4.4 ROMs:
    (builds up to 6 August, including CM11 M9)

    (builds after 6 August, including CM11 M10)

    Kernel with kexec-hardboot patch for Google Edition 4.4.x ROMs:

    Kernel with kexec-hardboot patch for TouchWiz 4.4.4 ROMs:

    Kernel with kexec-hardboot patch for TouchWiz 4.4.2 ROMs:

    5. Uninstaller

    MultiROM uninstaller ZIP: https://www.androidfilehost.com/?fid=95747613655050515

    Just flash this to disable MultiROM and delete all secondary ROMs.


    Alucard-PWR-CORE dev thread by @alucard_24: http://xdaforums.com/showthread.php?t=2590246

    Googy-Max3 dev thread by @googy_anas: http://xdaforums.com/showthread.php?t=2741181

    Hulk Kernel dev thread by @Tkkg1994: http://xdaforums.com/galaxy-s4/i9505-develop/kernel-hulk-kernel-v1-stweaks-based-t3050469

    Imperium dev thread by @slim80: http://xdaforums.com/galaxy-s4/i9505-orig-develop/kernel-imperium-kernel-v1-0-t2910801

    KT-SGS4 dev thread by @ktoonsez: http://xdaforums.com/showthread.php?t=2297379
    19
    Primary ROM is Touchwiz 5.0.1 by Imperium
    Secondary should be Dirty Unicorn but it's bootlooping. I can't find a kernel for fixing that? Which one should I use?

    //Update: I tried with Alucard AOSP v1.0e and it worked. But after "setting up android" he reboots that rom again and again..

    I think there isn't aokp kernel what supports kexec hardboot even though it's based on aosp, is there?
    Kernel page is ancient, I must update it...

    By the way I have a great news!!!!

    I found a way for the new TWRP, expect a full update (MultiROM v32+MultiROM TWRP+MultiROM Manager kernel download+this thread) soon!

    Inviato dal mio GT-I9505