Attend XDA's Second Annual Developer Conference, XDA:DevCon 2014!
5,770,471 Members 41,601 Now Online
XDA Developers Android and Mobile Development Forum
Announcement from alvinhochun: Testers required (see thread)

[MOD][2014-01-19][Pre-Alpha Test] Use multiple ROMs: MultiROM Xperia M

Tip us?
 
alvinhochun
Old
#1  
alvinhochun's Avatar
Senior Member - OP
Thanks Meter 178
Posts: 160
Join Date: Oct 2010
Default [MOD][2014-01-19][Pre-Alpha Test] Use multiple ROMs: MultiROM Xperia M

Disclaimer
I (alvinhochun) am NOT responsible for events including but not limited to bricking any electronic or non-electronic devices, losing data, fever, heart attack, thermonuclear war, or the cooling down of the Sun, either caused by or not caused by downloading or installing this mod.

You are expected to back up all your data by your own means before installing this mod.

You should always only follow tested instructions and install only tested ROMs with a tested setup, or else you should have extended knowledge in the inner workings of Android, Linux and MultiROM Xperia.
Notice
This is an unofficial port of MultiROM.

Before anything else, I would like to say thanks to @Tasssadar who developed the original MultiROM (thread for Nexus 7). Without him, this mod wouldn't be here.

Unless otherwise specified, anything that is designed for just "MultiROM" (without "Xperia" after it) will not work for this because there are some operational differences between "MultiROM" (original) and "MultiROM Xperia" (this mod).
Introduction
Perhaps you want to try the new CyanogenMod 11 ROM, but don't want to erase your phone to flash it because you need to keep your stock ROM and all your data, and don't want to bother backing up and restoring every single time? Don't worry! MultiROM Xperia can help you.

MultiROM Xperia is a mod which lets you install alternative Android ROMs to your internal memory, microSD cards or USB storage connected via OTG and boot them. Together with a kernel with kexec-hardboot patch, you can even boot ROMs with kernels different from the one you've installed!

The idea is that you can install ROMs to external storage spaces via a modified TWRP recovery, but it is not ready yet.

This mod is mostly ready for testing, but since the installer is not ready yet, I've uploaded the boot image (to be flashed with `fastboot flash boot`) and the files of unofficial CM11 Beta 1 (Thanks to @PecanCM) to be placed on the microSD card or USB device in the form of a zip archive. At the time being, they can only be used when you have stock 15.1.C.2.8 firmware (Android 4.1.2) installed.
Warning
This mod is basically one giant hack. Neither the ROMs nor the device itself is designed with multiboot in mind so there is no absolute guarantee that it will work properly. Technically, installing it only modifies the boot partition (sometimes casually called the kernel) which is the same thing that custom kernel is installed to, and in the worse case you only need to (re-)flash a stock or custom kernel or flash an ftf to remove MultiROM Xperia, but the MultiROM booting mechanism is hacky and is not guaranteed to always work.

Always make backup, frequently, like you should do even if not using MultiROM Xperia.
Features
  • Boot any number of alternative Android ROMs installed onto microSD cards and USB storage
  • Support alternative "internal storages": For every ROMs (including internal ROM), you can have multiple separated "profiles", which is represented by an entire "emulated" /data partition. Technically, the profiles can also support encryption.
Installation
This instruction is reviewed on 2014-01-09.

Prerequisite: You need to unlock your bootloader and be on stock 15.1.C.2.8 firmware (Android 4.1.2),
  1. Download multirom-boot-********-c1905-test.img and multirom-cm11beta1-********-c1905-test.zip.
  2. Use fastboot to flash the boot image:
    Code:
    fastboot flash boot multirom-boot-********-c1905-test.img
  3. Extract multirom-cm11beta1-********-c1905-test.zip directly to the root of a microSD Card or USB flash drive.
    Currently, these filesystem formats are supported: vfat (FAT16/FAT32), ext2, ext3, ext4.
******** represents the date of the release.
Usage
To boot a ROM (including internal stock ROM), insert the microSD card or connect the USB flash drive and switch on the phone, then select the corresponding ROM and press "boot". (Note, the first boot of an external ROM may take very long depending on the speed of the storage device.)

To enter CWM recovery, switch on the phone, select "Misc" tab and press "Recovery". Alternatively, you can execute `adb reboot recovery`. The included CWM recovery is the same as the one in unofficial CM11 Alpha 2 (Thanks to @PecanCM).
Note: Do NOT attempt to use any existing recovery to flash any ROMs unless you don't want to keep MultiROM Xperia and your existing data![/LIST]
Downloads
2013-01-08 / 2013-01-19
multirom-boot-20140107-c1905-test.img (10 MiB)
multirom-boot-20140108-c1905-test.img (10 MiB)
multirom-cm11alpha2-20140107-c1905-test.zip (173 MiB, 1 GiB extracted)
multirom-cm11beta1-20140119-c1905-test.zip (202 MiB, 1.2 GiB extracted)
Screenshots
See Screenshots
Source code
MultiROM Xperia:
https://github.com/alvinhochun/multirom-nicki
Device tree (used to build MultiROM Xperia):
https://github.com/alvinhochun/cyano.../tree/multirom
Kexec-hardboot patch:
See http://forum.xda-developers.com/show....php?t=2568151
Stock kernel with kexec-hardboot patch:
https://github.com/alvinhochun/sony-xperia-m-kernel
CM11 kernel:
See original unofficial CM11 Beta 1 thread
XDA:DevDB Information
MultiROM Xperia M, a Tool/Utility for the Sony Xperia M

Contributors
alvinhochun, Tasssadar

Version Information
Status: Testing

Created 2014-01-06
Last Updated 2014-01-19
Attached Thumbnails
Click image for larger version

Name:	multirom-1.png
Views:	2221
Size:	2.4 KB
ID:	2503907   Click image for larger version

Name:	multirom-2.png
Views:	2110
Size:	3.0 KB
ID:	2503908   Click image for larger version

Name:	multirom-3.png
Views:	2118
Size:	2.8 KB
ID:	2503909  
The Following 17 Users Say Thank You to alvinhochun For This Useful Post: [ Click to Expand ]
 
alvinhochun
Old
(Last edited by alvinhochun; 15th January 2014 at 04:42 AM.)
#2  
alvinhochun's Avatar
Senior Member - OP
Thanks Meter 178
Posts: 160
Join Date: Oct 2010
Default Changelog and technical information

Changelog
2014-01-08
  • Added option to update/rescan for ROMs

2014-01-07
  • First public test release
Technical information
It works by extracting the boot ramdisk to root and patching init.rc files after boot selection.
More to be added
Changes from the original MultiROM
This port is based on the original MultiROM by @Tasssadar, which is available for multiple devices including the Nexus 4, 5 and 7. However, since his original port did not account for supporting external SD cards, and also didn't handle most Xperia devices without a recovery partition, I've rewritten some part of his original MultiROM to handle these things.

Differences include:
  • All binaries are placed in the ramdisk altogether instead of the internal storage.
  • MultiROM Xperia does not mount the partitions before starting the real Android init. Instead, it generates a script and patches some files (including init.rc) to trick the target system to mount filesystem images (loop mounting loop devices).
  • One ROM can contain multiple user profiles (i.e. data, cache and persist).
  • The code to boot generic (non-Android) Linux ROMs is removed due to heavy rewrite of parts from the original MultiROM.
  • It currently only support using partition filesystem images, neither symlink nor bind mount is supported.
Current device: Xperia M (C1905) - MultiROM Xperia M

Past devices: Xperia Neo V, iPAQ 212
The Following 12 Users Say Thank You to alvinhochun For This Useful Post: [ Click to Expand ]
 
alvinhochun
Old
#3  
alvinhochun's Avatar
Senior Member - OP
Thanks Meter 178
Posts: 160
Join Date: Oct 2010
Default Reserved

The Following 3 Users Say Thank You to alvinhochun For This Useful Post: [ Click to Expand ]
 
aweosomeabhijeet
Old
(Last edited by aweosomeabhijeet; 8th January 2014 at 08:28 AM.)
#4  
aweosomeabhijeet's Avatar
Senior Member
Thanks Meter 887
Posts: 785
Join Date: Oct 2012
Location: Jaipur

 
DONATE TO ME
Working perfectly.
Booting time(from sdcard) is okay I would say.
Now we just need the modified TWRP. Hope you could get it for us too.

Thanks
Never be satisfied with what you get .
Devices :
Xperia M
XT530
 
ansebovi
Old
#5  
ansebovi's Avatar
Senior Member
Thanks Meter 790
Posts: 1,071
Join Date: Dec 2012
Location: Chennai
Quote:
Originally Posted by aweosomeabhijeet View Post
Working perfectly.
Booting time(from sdcard) is okay I would say.
Now we just need the modified TWRP. Hope you could get it for us too.

Thanks
how did u get it work?
which model c1904 or c1905?
which sdcard?
MODEL-Xperia M Dual C2005

My second sign below
 


 
alvinhochun
Old
#6  
alvinhochun's Avatar
Senior Member - OP
Thanks Meter 178
Posts: 160
Join Date: Oct 2010
Till now I've discovered a few bugs in this test release:
  1. Sometimes, microSD card is not detected because the initialization is too long.
    This varies between cards. A theory is that SDHC might take a longer time to initialize, which happens after MultiROM has scanned for partitions.
    You can try rebooting a few times and if, by any chance, the card initialized right in time, you will be able to boot the external ROM.
    I have a few possible solutions for this, and I will update to you when I've implemented a working solution.
  2. USB OTG storage devices may not be detected properly. Needs investigation...

Thanks to @ansebovi for testing and informing about these.
Current device: Xperia M (C1905) - MultiROM Xperia M

Past devices: Xperia Neo V, iPAQ 212
The Following User Says Thank You to alvinhochun For This Useful Post: [ Click to Expand ]
 
GedeWK
Old
(Last edited by GedeWK; 8th January 2014 at 11:07 AM.)
#7  
GedeWK's Avatar
Member
Thanks Meter 10
Posts: 43
Join Date: Oct 2012
Location: Denpasar, Bali
i followed all the instructions, flashing the boot.img (i renamed the boot file to multirom.img) and move the files to my sdcard, why when i reboot, its just rebooting normally (no rom select screen) ?

EDIT: Rebooted again and it worked.
EDIT AGAIN: Is there any way to flash gapps? or just flash normally with cwm?
The Following User Says Thank You to GedeWK For This Useful Post: [ Click to Expand ]
 
aweosomeabhijeet
Old
#8  
aweosomeabhijeet's Avatar
Senior Member
Thanks Meter 887
Posts: 785
Join Date: Oct 2012
Location: Jaipur

 
DONATE TO ME
Quote:
Originally Posted by ansebovi View Post
how did u get it work?
which model c1904 or c1905?
which sdcard?
Flashed boot.img using fastboot.
Extracted ROM in the root of sdcard.
Rebooted. Selected sdcard>cm11>boot. And it booted
Model C1904
SanDisk micro sd 8GiB class4

Sent from my C1904 using xda app-developers app
Never be satisfied with what you get .
Devices :
Xperia M
XT530
The Following User Says Thank You to aweosomeabhijeet For This Useful Post: [ Click to Expand ]
 
alvinhochun
Old
#9  
alvinhochun's Avatar
Senior Member - OP
Thanks Meter 178
Posts: 160
Join Date: Oct 2010
I've added an option in the "Misc" tab to rescan for ROMs as a temporary measure. Flash the new boot image to get it. Please refer to the first post for download.

Sent from my Sony Xperia M (C1905)
Current device: Xperia M (C1905) - MultiROM Xperia M

Past devices: Xperia Neo V, iPAQ 212
The Following 5 Users Say Thank You to alvinhochun For This Useful Post: [ Click to Expand ]
 
GedeWK
Old
#10  
GedeWK's Avatar
Member
Thanks Meter 10
Posts: 43
Join Date: Oct 2012
Location: Denpasar, Bali
Quote:
Originally Posted by GedeWK View Post
i followed all the instructions, flashing the boot.img (i renamed the boot file to multirom.img) and move the files to my sdcard, why when i reboot, its just rebooting normally (no rom select screen) ?

EDIT: Rebooted again and it worked.
EDIT AGAIN: Is there any way to flash gapps? or just flash normally with cwm?
Well, how to install gapps to the ROM? I need the play store

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes