[MOD] MultiROM for Xperia SP

Search This thread

AdrianDC

Recognized Developer
Dec 22, 2009
2,206
12,975
Île-de-France
adriandc.github.io
vh3puLb.png
Introduction

MultiROM is one-of-a-kind multi-boot mod. 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 USB drive connected to the device via OTG cable. 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 left image below and in gallery. 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 USB drive attached via OTG cable

You can also watch a video which shows it in action.



Warning!

It _is_ dangerous. 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 and you will have to flash factory images again. Make backups. Always.



Installation
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.

MultiROM has 2 parts you need to install + one optional (deprecated) :
  • MultiROM (multirom-YYYYMMDD-v33x-device.zip) - download the ZIP file from second post and flash it in recovery.
  • Modified recovery (multirom-YYYYMMDD-recovery-fota-device.zip) - download the ZIP file from second post and use a recovery
    to flash it into the FOTA partition (see TWRP 3 thread for more informations).
  • DEPRECATED: Patched kernel - You can use those kernels on most Marshmallow and Lollipop based primary ROMs to add kexec boot support.
    Be aware that those patchers will be updated when possible after kernel sources updates
    Kexec support no longer required thanks to the no-kexec workaround by nkk71.
    For convenience reasons, I enabled the workaround by default if kexec is not found.
You current rom will not be erased by the installation.
Download links are in the second post.



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

Recommended values are :
  • Cache : Keep default value
  • Data : Minimum 4000
  • System : 1000 is enough for most installs


Using USB drive
During installation, recovery lets you select install location. Plug in the USB drive, wait a while and press "refresh" so that it shows partitions on the USB drive. 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 USB drives takes a bit longer, because the flash drive is (usually) slower and it needs to create the images, so installation of Android to 4Gb image on a pretty fast USB drive takes about 20 minutes maximum.
Enumerating USB drive can take a while in MultiROM menu, so when you press the "USB" button in MultiROM, wait a while (max. 30-45s) until it searches the USB drive. It does it by itself, no need to press something, just wait.​



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.
  • OPTIONAL: Reflash the kernel patcher to add kexec support
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
- List ROMs - list installed ROMs and manage them
- Inject boot.img file - When you download for example kernel, which is distrubuted as whole boot.img (eg. franco kernel), you have to use this option on it, otherwise you would lose MultiROM.
- 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 this ROM, this is more like developer option.
- Re-patch init - this is available only for ubuntu. Use it when ubuntu cannot find root partition, ie. after apt-get upgrade which changed the init script.​


Source code


MultiROM available for Huashan also thanks to :
- [MENTION]Tasssadar[/MENTION]
- The XperiaMultiROM team
- The MultiROM HTC team
- [MENTION]Arvind7352[/MENTION]
- [MENTION]nkk71[/MENTION]​

XDA:DevDB Information
MultiROM for Xperia SP, Tool/Utility for the Sony Xperia SP

Contributors
Adrian DC
Source Code: http://forum.xda-developers.com/google-nexus-5/orig-development/mod-multirom-v24-t2571011


Version Information
Status: Stable

Created 2016-04-03
Last Updated 2017-06-07
 
Last edited:

AdrianDC

Recognized Developer
Dec 22, 2009
2,206
12,975
Île-de-France
adriandc.github.io
Reserved

Downloads

1. Main downloads

Xperia SP (Huashan): https://mega.nz/#F!mpMATaJa!gGshpOwYueKdK0bu6YSNUg

MultiROM: multirom-2017MMDD-v33x-device.zip
Modified recovery (based on TWRP 3): multirom-2017MMDD-recovery-fota-device.zip

OPTIONAL: Kernel w/ kexec-hardboot patch (msm8960t Marshmallow based): kernel-2016MMDD-device.zip
If used, kernel with kexec-hardboot patched needs to be only in your primary ROM!
No longer required thanks to the no-kexec workaround.

OPTIONAL: MultiROM installed as a secondary "ROM": multirom-2016MMDD-recovery-secondary-device.zip
Mostly meant to be used for Stock ROMs users and devs. Only use as secondary ROM to flash.​



2. Third-party kernels with kexec-hardboot patch
* None, and do not use any that would have it until the kernel is ready

Nicely ask your kernel developer to merge kexec-hardboot patch.​



3. Uninstaller

MultiROM uninstaller: Unavailable due to the already considerable SONY ELF format port
Reflash a ROM or a boot.img without injection (or the v33x zip) to remove MultiROM bootimage from your device.
Then delete the "multirom..." folders from internal & external storages.
If you don't want MultiROM menus in recovery, re-flash a normal TWRP, but it is not needed,
those menus don't do anything if MultiROM is not installed.



How to install for the first time

  • Flash the 2 MultiROM zips as explained
  • Reboot to the FOTA Recovery (Volume +)
  • In MultiROM TWRP, Add a ROM, set everything properly
  • Wait for the ROM to be installed (can take a while)
  • In MultiROM screen, choose the ROM location
  • For the concerned ROM, "Flash zip" for wished zips (GApps, SuperSU, Addons...)
  • Reboot the phone



Changelog
Code:
MultiROM v33x - TWRP 3.2.1 - 21/01/2018
=========================================
* Merged TWRP 3.2.1 updates into MultiROM TWRP
* Improvements for Android 8.1 support
* Improvements [URL="https://www.xda-developers.com/rest-in-peace-xda-recognized-developer-nkk71-has-passed-away/"]made with nkk71, RIP[/URL] >> [URL=https://www.xda-developers.com/rest-in-peace-xda-recognized-developer-nkk71-has-passed-away/#comment-3719128510]Comment[/URL]

MultiROM v33x - TWRP 3.1.1 - 01/11/2017
=========================================
* Improvements for Android 8.0 support
* Improvements for SDCardFS support
* Improvements from secondary ROMs handling
* Changes on the boot UI's Android ROM icons

MultiROM v33x - TWRP 3.1.1 - 07/06/2017
=========================================
* New implementation to handle external boot
   on Ext4 / F2FS MicroSD or USB Drive in order
   to allow access to the external storage for media,
   through the storage 'external_multirom' path

MultiROM v33x - TWRP 3.1.1 - 17/05/2017
=========================================
* Include all recent improvements from TWRP 3.1.1

MultiROM v33x - TWRP 3.1.0 - 03/05/2017
=========================================
* Upstream updates from recovery and sources
* Fix for the offline charger detection mode

MultiROM v33x - TWRP 3.1.0 - 12/03/2017
=========================================
* Include all recent improvements from TWRP 3.1.0

MultiROM v33x - TWRP 3.0.3 - 05/03/2017
=========================================
* Built in a clean new tree of Android 7.1.1 (replaces 6.0)
* Multiple fixes to support 7.1 changes
* Include all recent improvements from TWRP 3.0.3
* Fix the 7.1 busybox cpio corruption, needed for MultiROM

MultiROM v33x - 18/12/2016
======================================
* Minor improvements of MultiROM
* Improved versioning with header showing build date
* libbootimg changes from my recent updates

MultiROM v33x - 17/10/2016
======================================
* Improve autobooting to external ROM (MicroSD / USB)

MultiROM v33x - 18/09/2016 - 24/09/2016
======================================
* Updated to no-kexec workaround v4 by nkk71
* Autoboot accessible for external / MicroSD

MultiROM v33x - 16/08/2016
======================================
* Add support for the new ramdisk structure with init.real

MultiROM v33x - 14/06/2016 - 15/07/2016
======================================
* Support for hardware keys (Volume +/- & Power)

MultiROM v33x - 06/06/2016
======================================
* Support for Stock SONY ROMs added

MultiROM v33x - 23/05/2016
======================================
* MultiROM UI dimensions completely fixed
* Access to MultiROM color themes and Shutdown

MultiROM v33x - 11/05/2016
======================================
* Support for no-kexec workaround to boot ROMs

MultiROM v33x - 15/04/2016 - 09/05/2016
======================================
* Improved UI with unified Internal / External ROMs in one tab

MultiROM v33x - 03/04/2016
======================================
* Initial release with full SONY ELF port and dual ramdisk support


Kernel patchers :
Code:
23/04/2016 - 06/06/2016
==========================
* Updated to latest sources, standalone kernel without modules
* Deprecated, releases abandoned.

06/04/2016 - 15/04/2016
==========================
* Updated to latest CM-13.0 & CM-12.1 stable kernel status

03/04/2016
==========================
* Initial huashan release, unstable kernel for the moment


Recent ROMs tested so far :
Code:
LineageOS 14.1 : OK (Primary & Second)
AOSP 7.1 : OK (Primary & Second)

AOSP 7.0 : OK (Primary & Second)
CyanogenMod 12.1 : OK (Primary & Second)
CyanogenMod 13.0 : OK (Primary & Second)
CyanogenMod 14.1 : OK (Primary & Second)
AICP Marshmallow : OK (Primary & Second)

AOSP-CAF Marshmallow : OK (Primary & Second)
AOSP-OMS Marshmallow : OK (Primary & Second)
AOSP-RRO Marshmallow : OK (Primary & Second)

Sony 4.3 based ROMs : Normally OK (Primary & Second)
eXistenZ Ultra 4.0.0 : OK (Primary & Second)

Warning : If using old ROMs as secondary, primary ROM
should not have F2FS filesystems for Data and Cache

Other ROMs : To confirm & report here
 

Attachments

  • 1.png
    1.png
    43 KB · Views: 1,074
  • 2.png
    2.png
    36.6 KB · Views: 1,067
  • 3.png
    3.png
    37 KB · Views: 1,062
Last edited:

AdrianDC

Recognized Developer
Dec 22, 2009
2,206
12,975
Île-de-France
adriandc.github.io
Reserved

FAQ and other notes
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.​

Why is my USB connection to computer not detected ?
Uncheck the "Enable ADB" option in MultiROM Settings.​

How many ROMs can I have?/Where are the ROMs stored?
You can have as many ROMs as you can fit in your /sdcard. All the ROMs are stored in /sdcard/multirom/roms or on an USB drive./external SD card. This folder is 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.

Can I have different versions of Android working alongside
Yes.​

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.​



The installation fails with "trampoline not found -1"
Often the issue appears because the ROM zip has a nested zip for rooting methods.
Best solution is to remove the root zip from the ROM and flash it separately later.​


Something wrong happened, I lost something or it's really laggy
You have been warned about making backups & the fact this is more experimental than stable.
You alone will be responsible for loosing data or having an usable ROM when you really needed it.

Everyone in this thread will try to help you, but we can't do backups of your data ourselves.
Thanks for your understanding, remember to read the previous comments and please try to help each other.

Current local manifest of the MultiROM build
Code:
<!-- https://github.com/AdrianDC/multirom_development_sony -->
 
Last edited:

LWWSaint

Senior Member
Mar 21, 2014
103
48
Pune
Clicking on that link for patched kernel, opens a google search page which shows links for AK kernel, is that what we're supposed to use??

STUPID QUESTION. NEVERMIND.
 
Last edited:

alitavas

Senior Member
Mar 18, 2013
126
59
Tehran
Primary: CM12.1 unofficial works great
CM13 Works great too
CM11 bugyusz didn't boot (because it use stock kernel)
AICP Works great

Sent from my Xperia SP
 
  • Like
Reactions: Alvichone

desalt

Member
Apr 7, 2016
10
0
I installed cm13 and then wanted to flash AICP10 by twrp 3.0.1 r6, but encountered these errors (see the attached pix please)
 

Attachments

  • Screenshot_2016-04-07-06-14-19.png
    Screenshot_2016-04-07-06-14-19.png
    92.3 KB · Views: 384
  • Screenshot_2016-04-07-06-16-34.png
    Screenshot_2016-04-07-06-16-34.png
    63.1 KB · Views: 387

desalt

Member
Apr 7, 2016
10
0
The rom is successfully installed. Nothing to worry about. I had also some days ago that error but the roms booted without a problem.

Sent from my A0001 using Tapatalk

tanx, but the Multirom menu doesn't appear and I have no choice to select AICP, moreover in the recovery there isn't any secondary ROM.
 

desalt

Member
Apr 7, 2016
10
0
would you please see the following attached pix? do you see anything wrong?
the first one, says something (in mount menu) after failure in flashing the second rom.
and from the 2nd one, I guess my SD card is locked.
.
 

Attachments

  • Screenshot_2016-04-07-07-23-21.png
    Screenshot_2016-04-07-07-23-21.png
    84.4 KB · Views: 297
  • Screenshot_2016-04-07-11-12-14.png
    Screenshot_2016-04-07-11-12-14.png
    57 KB · Views: 299
Last edited:

AdrianDC

Recognized Developer
Dec 22, 2009
2,206
12,975
Île-de-France
adriandc.github.io
would you please see the following attached pix? do you see anything wrong?

First : Accept & set it to never ask again, it's ok.
Second : No. All storage devices are "block" based, doesn't mean anything related to the MicroSD being locked.

About old ROMs : No yet support nor known to work one day,
I'll get back to it soon enough but nothing sure yet.

Finally about latest CM12.1 / CM13 Beta releases : The newest MultiROM kernel patcher
can freely be used to test both ROMs as it has been updated to the same state.
 

desalt

Member
Apr 7, 2016
10
0
I installed the proper Gapps for both cm12 and cm 13 without any problem when they were single Roms on my phone. but when I try to install each of them beside the other one as a secondary Rom , face to an error and installation process fails.
 
Last edited:

Top Liked Posts

  • There are no posts matching your filters.
  • 52
    vh3puLb.png
    Introduction

    MultiROM is one-of-a-kind multi-boot mod. 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 USB drive connected to the device via OTG cable. 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 left image below and in gallery. 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 USB drive attached via OTG cable

    You can also watch a video which shows it in action.



    Warning!

    It _is_ dangerous. 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 and you will have to flash factory images again. Make backups. Always.



    Installation
    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.

    MultiROM has 2 parts you need to install + one optional (deprecated) :
    • MultiROM (multirom-YYYYMMDD-v33x-device.zip) - download the ZIP file from second post and flash it in recovery.
    • Modified recovery (multirom-YYYYMMDD-recovery-fota-device.zip) - download the ZIP file from second post and use a recovery
      to flash it into the FOTA partition (see TWRP 3 thread for more informations).
    • DEPRECATED: Patched kernel - You can use those kernels on most Marshmallow and Lollipop based primary ROMs to add kexec boot support.
      Be aware that those patchers will be updated when possible after kernel sources updates
      Kexec support no longer required thanks to the no-kexec workaround by nkk71.
      For convenience reasons, I enabled the workaround by default if kexec is not found.
    You current rom will not be erased by the installation.
    Download links are in the second post.



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

    Recommended values are :
    • Cache : Keep default value
    • Data : Minimum 4000
    • System : 1000 is enough for most installs


    Using USB drive
    During installation, recovery lets you select install location. Plug in the USB drive, wait a while and press "refresh" so that it shows partitions on the USB drive. 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 USB drives takes a bit longer, because the flash drive is (usually) slower and it needs to create the images, so installation of Android to 4Gb image on a pretty fast USB drive takes about 20 minutes maximum.
    Enumerating USB drive can take a while in MultiROM menu, so when you press the "USB" button in MultiROM, wait a while (max. 30-45s) until it searches the USB drive. It does it by itself, no need to press something, just wait.​



    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.
    • OPTIONAL: Reflash the kernel patcher to add kexec support
    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
    - List ROMs - list installed ROMs and manage them
    - Inject boot.img file - When you download for example kernel, which is distrubuted as whole boot.img (eg. franco kernel), you have to use this option on it, otherwise you would lose MultiROM.
    - 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 this ROM, this is more like developer option.
    - Re-patch init - this is available only for ubuntu. Use it when ubuntu cannot find root partition, ie. after apt-get upgrade which changed the init script.​


    Source code


    MultiROM available for Huashan also thanks to :
    - [MENTION]Tasssadar[/MENTION]
    - The XperiaMultiROM team
    - The MultiROM HTC team
    - [MENTION]Arvind7352[/MENTION]
    - [MENTION]nkk71[/MENTION]​

    XDA:DevDB Information
    MultiROM for Xperia SP, Tool/Utility for the Sony Xperia SP

    Contributors
    Adrian DC
    Source Code: http://forum.xda-developers.com/google-nexus-5/orig-development/mod-multirom-v24-t2571011


    Version Information
    Status: Stable

    Created 2016-04-03
    Last Updated 2017-06-07
    44
    Reserved

    Downloads

    1. Main downloads

    Xperia SP (Huashan): https://mega.nz/#F!mpMATaJa!gGshpOwYueKdK0bu6YSNUg

    MultiROM: multirom-2017MMDD-v33x-device.zip
    Modified recovery (based on TWRP 3): multirom-2017MMDD-recovery-fota-device.zip

    OPTIONAL: Kernel w/ kexec-hardboot patch (msm8960t Marshmallow based): kernel-2016MMDD-device.zip
    If used, kernel with kexec-hardboot patched needs to be only in your primary ROM!
    No longer required thanks to the no-kexec workaround.

    OPTIONAL: MultiROM installed as a secondary "ROM": multirom-2016MMDD-recovery-secondary-device.zip
    Mostly meant to be used for Stock ROMs users and devs. Only use as secondary ROM to flash.​



    2. Third-party kernels with kexec-hardboot patch
    * None, and do not use any that would have it until the kernel is ready

    Nicely ask your kernel developer to merge kexec-hardboot patch.​



    3. Uninstaller

    MultiROM uninstaller: Unavailable due to the already considerable SONY ELF format port
    Reflash a ROM or a boot.img without injection (or the v33x zip) to remove MultiROM bootimage from your device.
    Then delete the "multirom..." folders from internal & external storages.
    If you don't want MultiROM menus in recovery, re-flash a normal TWRP, but it is not needed,
    those menus don't do anything if MultiROM is not installed.



    How to install for the first time

    • Flash the 2 MultiROM zips as explained
    • Reboot to the FOTA Recovery (Volume +)
    • In MultiROM TWRP, Add a ROM, set everything properly
    • Wait for the ROM to be installed (can take a while)
    • In MultiROM screen, choose the ROM location
    • For the concerned ROM, "Flash zip" for wished zips (GApps, SuperSU, Addons...)
    • Reboot the phone



    Changelog
    Code:
    MultiROM v33x - TWRP 3.2.1 - 21/01/2018
    =========================================
    * Merged TWRP 3.2.1 updates into MultiROM TWRP
    * Improvements for Android 8.1 support
    * Improvements [URL="https://www.xda-developers.com/rest-in-peace-xda-recognized-developer-nkk71-has-passed-away/"]made with nkk71, RIP[/URL] >> [URL=https://www.xda-developers.com/rest-in-peace-xda-recognized-developer-nkk71-has-passed-away/#comment-3719128510]Comment[/URL]
    
    MultiROM v33x - TWRP 3.1.1 - 01/11/2017
    =========================================
    * Improvements for Android 8.0 support
    * Improvements for SDCardFS support
    * Improvements from secondary ROMs handling
    * Changes on the boot UI's Android ROM icons
    
    MultiROM v33x - TWRP 3.1.1 - 07/06/2017
    =========================================
    * New implementation to handle external boot
       on Ext4 / F2FS MicroSD or USB Drive in order
       to allow access to the external storage for media,
       through the storage 'external_multirom' path
    
    MultiROM v33x - TWRP 3.1.1 - 17/05/2017
    =========================================
    * Include all recent improvements from TWRP 3.1.1
    
    MultiROM v33x - TWRP 3.1.0 - 03/05/2017
    =========================================
    * Upstream updates from recovery and sources
    * Fix for the offline charger detection mode
    
    MultiROM v33x - TWRP 3.1.0 - 12/03/2017
    =========================================
    * Include all recent improvements from TWRP 3.1.0
    
    MultiROM v33x - TWRP 3.0.3 - 05/03/2017
    =========================================
    * Built in a clean new tree of Android 7.1.1 (replaces 6.0)
    * Multiple fixes to support 7.1 changes
    * Include all recent improvements from TWRP 3.0.3
    * Fix the 7.1 busybox cpio corruption, needed for MultiROM
    
    MultiROM v33x - 18/12/2016
    ======================================
    * Minor improvements of MultiROM
    * Improved versioning with header showing build date
    * libbootimg changes from my recent updates
    
    MultiROM v33x - 17/10/2016
    ======================================
    * Improve autobooting to external ROM (MicroSD / USB)
    
    MultiROM v33x - 18/09/2016 - 24/09/2016
    ======================================
    * Updated to no-kexec workaround v4 by nkk71
    * Autoboot accessible for external / MicroSD
    
    MultiROM v33x - 16/08/2016
    ======================================
    * Add support for the new ramdisk structure with init.real
    
    MultiROM v33x - 14/06/2016 - 15/07/2016
    ======================================
    * Support for hardware keys (Volume +/- & Power)
    
    MultiROM v33x - 06/06/2016
    ======================================
    * Support for Stock SONY ROMs added
    
    MultiROM v33x - 23/05/2016
    ======================================
    * MultiROM UI dimensions completely fixed
    * Access to MultiROM color themes and Shutdown
    
    MultiROM v33x - 11/05/2016
    ======================================
    * Support for no-kexec workaround to boot ROMs
    
    MultiROM v33x - 15/04/2016 - 09/05/2016
    ======================================
    * Improved UI with unified Internal / External ROMs in one tab
    
    MultiROM v33x - 03/04/2016
    ======================================
    * Initial release with full SONY ELF port and dual ramdisk support


    Kernel patchers :
    Code:
    23/04/2016 - 06/06/2016
    ==========================
    * Updated to latest sources, standalone kernel without modules
    * Deprecated, releases abandoned.
    
    06/04/2016 - 15/04/2016
    ==========================
    * Updated to latest CM-13.0 & CM-12.1 stable kernel status
    
    03/04/2016
    ==========================
    * Initial huashan release, unstable kernel for the moment


    Recent ROMs tested so far :
    Code:
    LineageOS 14.1 : OK (Primary & Second)
    AOSP 7.1 : OK (Primary & Second)
    
    AOSP 7.0 : OK (Primary & Second)
    CyanogenMod 12.1 : OK (Primary & Second)
    CyanogenMod 13.0 : OK (Primary & Second)
    CyanogenMod 14.1 : OK (Primary & Second)
    AICP Marshmallow : OK (Primary & Second)
    
    AOSP-CAF Marshmallow : OK (Primary & Second)
    AOSP-OMS Marshmallow : OK (Primary & Second)
    AOSP-RRO Marshmallow : OK (Primary & Second)
    
    Sony 4.3 based ROMs : Normally OK (Primary & Second)
    eXistenZ Ultra 4.0.0 : OK (Primary & Second)
    
    Warning : If using old ROMs as secondary, primary ROM
    should not have F2FS filesystems for Data and Cache
    
    Other ROMs : To confirm & report here
    40
    Reserved

    FAQ and other notes
    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.​

    Why is my USB connection to computer not detected ?
    Uncheck the "Enable ADB" option in MultiROM Settings.​

    How many ROMs can I have?/Where are the ROMs stored?
    You can have as many ROMs as you can fit in your /sdcard. All the ROMs are stored in /sdcard/multirom/roms or on an USB drive./external SD card. This folder is 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.

    Can I have different versions of Android working alongside
    Yes.​

    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.​



    The installation fails with "trampoline not found -1"
    Often the issue appears because the ROM zip has a nested zip for rooting methods.
    Best solution is to remove the root zip from the ROM and flash it separately later.​


    Something wrong happened, I lost something or it's really laggy
    You have been warned about making backups & the fact this is more experimental than stable.
    You alone will be responsible for loosing data or having an usable ROM when you really needed it.

    Everyone in this thread will try to help you, but we can't do backups of your data ourselves.
    Thanks for your understanding, remember to read the previous comments and please try to help each other.

    Current local manifest of the MultiROM build
    Code:
    <!-- https://github.com/AdrianDC/multirom_development_sony -->
    16
    And no, this is not an april fools joke. ;)
    13
    MultiROM released with new TWRP UI & full no-kexec workaround support by nkk71, read more about it here.
    Patching the kernel is therefore no longer required, MultiROM is now fully autonomous.


    It means you can flash a ROM with the Install Zip menu, check "Inject MultiROM...", and that's all you have to do.

    Important : In Recoveries or anywhere else, if for any reason on reboot the device stays on,
    you can try plug in/out the USB cable, if not, you can use the new KeyReset implementation I added to the kernel :
    Pressing both Volume + and Power about 5 seconds will properly reboot the device directly.