Well whaddaya know, the HTC Desire has taken on a new amazing feat; it can now dual boot ROMs. While I sit here in jealousy I must ask, how is this possible? I mean is it device specific? I'd love to dual boot on myTouch, I have 3 SD Cards just laying around chilling, and they would be really useful for this.
http://forum.xda-developers.com/showthread.php?t=1173309
We're always missing out on some, this is on many htc devices I've noticed, including things like the Cwm4 recovery. I wish I could help get those things on our phones.
Sent from my HTC Glacier using XDA App
What is dual boot?
Sent from my HTC Glacier using XDA App
Google: What is dual boot? ANSWER: A dual boot system is a computer system in which two operating systems are installed on the same hard drive, allowing either operating system to be loaded and given control. When you turn the computer on, a boot manager program displays a menu, allowing you to choose the operating system you wish to use.
Click to expand...
Click to collapse
In our case it would be the device your using is partitioned for two seperate areas in which two independent Roms are installed, when you first power on the device you get a boot manager that gives you a choice to boot into one or the other.
The issue with doing this with a phone is the two Roms you choose would have to be able to run on the same Kernel. So if your running a Sense Rom and you decided to install an AOSP requiring a different kernel on the other partition you would run into some real issues.
This is completely doable on our device, the question is how important is it for anyone to have and would you mind giving up battery time for the feature, YES this will cause you to drink up some power which is something most Devs work hard on to keep consumption down.
EDIT: You can follow the same instructions here but there maybe a few things you need to do in C for this to work properly I didn't look to far into it, Also I would upgrade the SD Card as your going to have to have 3 partitions so an 8gb will get real crowded quick if you try to do this. The least I would try this with is a 16gb considering all of the files you may have already on your sd card that apps need for cache, pics, storage, ect.
I'll see what I can do with it after I pick up a 32gb sd card but it shouldn't be too hard.
Orical said:
In our case it would be the device your using is partitioned for two seperate areas in which two independent Roms are installed, when you first power on the device you get a boot manager that gives you a choice to boot into one or the other.
The issue with doing this with a phone is the two Roms you choose would have to be able to run on the same Kernel. So if your running a Sense Rom and you decided to install an AOSP requiring a different kernel on the other partition you would run into some real issues.
This is completely doable on our device, the question is how important is it for anyone to have and would you mind giving up battery time for the feature, YES this will cause you to drink up some power which is something most Devs work hard on to keep consumption down.
EDIT: You can follow the same instructions here but there maybe a few things you need to do in C for this to work properly I didn't look to far into it, Also I would upgrade the SD Card as your going to have to have 3 partitions so an 8gb will get real crowded quick if you try to do this. The least I would try this with is a 16gb considering all of the files you may have already on your sd card that apps need for cache, pics, storage, ect.
I'll see what I can do with it after I pick up a 32gb sd card but it shouldn't be too hard.
Click to expand...
Click to collapse
That was mentioned in the Desire HD thread. They say if you want to use a Sense and an AOSP ROM, you're going to have to use the Sense kernel and deal with the problems that may occur, like no bluetooth. Additionally, it seems to break Wifi for almost everyone who use it. Nevertheless its freaking awesome, and something I'd love to do.
There's not much to this and it can be implemented easily. I did it a different way, but the way the guy on that desire HD thread works much more elegant than my way did (although my way allowed for two different kernels).
To understand how this works, you first have to understand the boot process. When you turn on the phone, the bios starts the radio and then the radio starts the SPL which contains the information for partitioning, location of boot on nand, etc.
Unless you interrupt normal spl boot (which would take you to the other two boot options, spl and recovery), the spl looks for the "init" program in the specified boot partition.
This init program can be anything. From a basic linux perspective, it could be a simple script to set-up devices and then just toss user control to a command line (for basic linux usage) or, in Android's case, it runs the init scripts (device.init.rc and init.rc) and has the kernel run the whole Android stack.
What this guy did was make his own init program (I haven't looked at the thing since I'm at work) which, from what I read, is just a small binary, which possibly relies on two different init scripts to boot either from nand (mmcblk0p25) or sdcard (mmcblk1pX [depending on your partitioning]).
The disadvantage to this is that, as he stated, you can only use one kernel, since boot is still starting as normal and the spl is booting to the boot partition which only contains one kernel (you can toss in more, but only one will be started by the spl) and then his init program takes care of the rest of the bring-up.
The way I did it was having two boot images for two different builds, my regular nand rom (which would boot when booting normally) and my SD build (which would boot instead of recovery). All this requires is flashing a boot.img to recovery and then modifying the init.rc to boot from SD (mmcblk1pX) instead of nand. The clear disadvantage, ofcourse, is the loss of recovery, but by using this guy's method, I could have a menu on the SD boot to boot either the SD build or a recovery (means a modified recovery rather than a regular boot.img).
Both options are easily doable on any rooted device. The one thing lacking currently is a recovery that will allow to update.zip install to sdcard (I'd suggest using partitions 4 for system and 5 for data, since 2 and 3 are historically been used for sd-ext and swap).
So you guys can just find a recovery dev, point him to this thread, and show him my post to see if he can make such a recovery (should be easy) and it could become mainstream feature of rooted androids.
Bump. This would be amazing to port over. This would be donation worthy.
Sent from my HTC Glacier using XDA Premium App
im trying to get madmaxx to compile the mt4g into that amazing 4ext recovery he made. It's like amon_ra recovery but better!
Sent from my HTC Glacier using XDA Premium App
You can dual boot on the MT4G with Boot Manager,available in the Android Market, though it cost 2.99 but it does allow you to run two separate ROMs.
I got BootManager but i need to set everything manually and i dont know them can someone help me with these?
What is your sdcard block?
What is your system's size in mb?
What is your data's size in mb?
What is your cache's size in mb?
I have MIUI DemonSpeed 1.29 and the 8gb sdcard that comes with the mytouch
harei84 said:
You can dual boot on the MT4G with Boot Manager,available in the Android Market, though it cost 2.99 but it does allow you to run two separate ROMs.
Click to expand...
Click to collapse
is it officially supported? I have a fear of it writing to the wrong partition and fμck up the device.
GazaIan said:
is it officially supported? I have a fear of it writing to the wrong partition and fμck up the device.
Click to expand...
Click to collapse
its not supported it asks the questions i posted in the first page <
I really know nothing about the app just saw a feature about it on Lifehacker.com
It works on myTouch 4G. It is supported, but support is weird. Im beta testing one that works and for the most part everything works as it should, but the app recognizes the phone on Virtuous Unity and doesn't recognize it in MIUI. I'm triple booted at the moment (I can install 2 more ROMs, but I don't want to) and MIUI is on the SD Card and doesn't recognize my phone.
Bottom line is, it works, try it. It's definitely worth the $2.99.
Doesnt work
Sent from my HTC Glacier using XDA Premium App
I take that back it does running VI 1.31 double shot and miui
Sent from my HTC Glacier using XDA Premium App
Related
Hi, I am a relative newbie to ROM flashing and the like. Additionally I dont have a very deep computer knowledge base. I have rooted my Samsung Captivate and have flashed a ROM (which flashed properly, but didn't quite work). I have three questions about ROM usage and such:
1. I know kernels basically add aspects to the ROM you are running, but when should you flash these? How do you flash them (same process as with ROMs? do you just do it over-top of the Rom you currently have loaded? etc...)
2. If a newer version of the ROM you have running comes out, do you have to start over and completely wipe the device over again and do the whole process from start, or can you load a newer version of your current ROM over the one you have?
3. I have been hearing/reading about some problems with the Android Market disappearing on certain ROMs when the market updates, how can i avoid this/fix this?
Thanks. Sorry the basic/stupid questions.
1. Yes
2. There are WIPE versions and NO WIPE version. Usually you can use the NO WIPE version and keep everything. But sometimes if the roms are too different you get problems and errors, then it is recommended to flash a WIPE version.
3. Hm did not experience this yet, but there are fixes somewhere .
Whats up... No question is a stupid one buddy.... (Sometimes )
To answer your first question about kernels. Flashing kernels aren't a must. You don't have to flash them really, unless there is a need. Kernels for the most part can often change the way Android handles stuff like memory management, battery resources and even multitasking. They change (tweak) the way the Android OS itself interacts with the phones hardware. That's all a kernel is really. So read up on them before flashing them because each has their advantages and disadvantages. For example, the kernel I use gives me a good RAM boost and much better battery life but it suffers on the multitasking side and I have to do other stuff to compensate for that. That's how it is. As far as flashing them is concerned. That depends. Usually, you just flash them through recovery (Like a ROM) but I would suggest you follow the instructions they give you (if it exists).
Your second question is simple. Just follow the instructions they give you for installation. Some ROMS require a full wipe and others don't. It just depends on the ROM. When in doubt, follow the instructions (again if it exists).
Your third question is a weird one, I've never heard about that really. BUT.... Some ROMS may or may not include the GAPPS applications (Google Apps).
If the ROM you flash doesn't have Google Apps built in, it would literally be missing. You would have to flash it separately. Usually in those cases though, at the download location for that ROM, they would also provide links for GAPPS zip files to flash separately so you can have the option to go with Android Market, Gmail and such OR you can use an alternative. Short of that..... never heard of that issue before..... If the issue is happening after the Market app updates, in that case it might be some type of ROM issue, you'll probably have to somehow get the updated Vending.apk (Android Market) remove/backup the original and reinstall it manually (the way you would a regular apk). I'm guessing though....
Don't you just love research........
Thanks. And now, inevitably, answers lead to more questions.
With regards to kernels, how do I know which one's do what, are compatible with which ROMs etc. I feel like its the kinda thing that needs a giant database for them, but i know there isn't.
Also, is the process for flashing other .zip files the same (though either Rom manager or a built in Recovery option). For example, a bootanimation.zip?
Ultimately I hate the idea of asking overly simply questions, but I just don't know what I dont know, nor what is supposedly implied. Thanks.
Don't sweat it...... I'm in the same boat so I have no hangups....
I think I know what you mean when it comes to kernels. Ultimately, learning about kernels requires a lot of reading in many forums (Just like this one)... Why?.... Because in many instances the persons posting the kernels might not always give you an exact breakdown on exactly what it does..... so I understand. Your best bet would be scanning XDA. I've found all sorts of really excellent kernels lying around and the devs here love documentation so there is a good chance you'll know what it does...
You could also try DroidBasement: http://droidbasement.com/db-blog/
They actually have just what you wanted, a database....kind of. They have a very large variety of kernels for different devices so its a good place to start as well.
They also tend to do a breakdown of what each kernel is capable of, the device it should be used on and so on.
About flashing zip files. Generally speaking, most zip files are flashed through recovery but its not written in stone. Following the instructions concerning said zip files are always very important. Always look for instructions before you do so at least at first. In the case of bootanimation.zip.... They are not always flashable. But if it is flashable, you can flash it through recovery which would be the best method....
If you want though, you can replace the original bootanimation.zip file with the new one manually, once you have root and some type of root explorer (for example RootExplorer for Android).
Generally, the boot animation directory is usually, /System/Media so you can check to see if its there and if it is, just backup the original and replace it with the new one.... That should work... Always nandroid before doing so though.... before doing anything really....
Thanks. I actually had a question about nandroid but forgot. Basically, what is it. I realize contextually that it's a backup program and apparently works through the recovery menus. I read a ROM flashing step-by-step that mentioned it but couldnt figure out where to get it (not in the market unlike Ti-bu which i use currently).
Nandroid is a backup program that basically creates a flash image of your phone... If you've ever heard of "Ghosting" or "Imaging" a Hard Drive, its exactly the same thing.
Its really as good as it gets as far as data backup is concerned. Its also a low level backup, so even file structures would be recorded.. In other words, you can completely screw up your phone (file partitions everything!!!!) but once you can boot to recovery, your phone can be restored. That's why its so important because its your safety net....
Its not something that you can install like an apk, so its not in the market.
You would have to flash a custom recovery. If you have one already, it should be located in one of the menus (It changes depending on the type (brand) of recovery).
If you don't see the option in your recovery then its probably not custom and you're going to have to do some digging on these forums and maybe a bit of googling for instructions on exactly how to do so. Because it could change from device to device.
Nandroid also allows you to backup your sd-ext partition as well, so if you switch cards, you can restore to another card.... Its really incredibly handy and I wouldn't suggest you do anything until you can create nandroid backups....
Now, I'm having an interesting problem I posted this same thing in general Captivate forums but maybe someone who is looking at this/answering me knows. here's what i posted there:
have a Captivate that I recently flashed Di11i's 7.1.1 to, before that I had flashed my first ROM which was Serendipity 6.2. Both times I have found that I don't get incoming calls. People calling me get 2-3 rings, and then a traditional "busy signal" sound. On my end, either the phone vibrates once but the screen doesnt change from whatever screen I'm on. Or, The screen goes black like its going to the incoming call screen, but the black screens only flashes and goes away, as does a force close message box that goes away quickly without me clicking it.
Everything else on my phone works as far as I can tell, I've been running my current ROM for about 5 days without issues other than this one. This same exact problem also happened when I flashed Serendipity 6.2 (which I only kept for like a day because of this problem)
Ok....I currently use a G1 and most of my experience has been on HTC Devices. I'm not sure of how to reply to this as I have never really modded Samsung devices before. So I'm not really familiar with software and hardware differences (Like Bootloader, Recoveries, Radios and such). But based on what you're describing.... It sounds like a ROM or maybe a radio issue. Maybe its an issue with the phone app itself. If the app is somehow buggy then thats exactly what would happen. When the phone rings the phone app would try to run but then force close....
I'm guessing here, but it could also be a radio issue because you're getting a busy tone as well which is not good. Maybe the ROM requires a specific Radio version BEFORE its flashed.... Check the source of the download and determine if it requires a specific Radio version.
In my experience though, if the correct radio version isn't used for a ROM that requires it, the phone just won't boot..... but then again, I don't know what would happen on a Samsung Captivate.... Not sure if I can help on this one because I don't have any info on that type of hardware. I don't own one you see.....
What about if you found out a new kernel isn't as good as the old kernel, how would you go on to take away the new kernel to replace it with the old kernel? Is it the same process or even harder?
vlen22 said:
What about if you found out a new kernel isn't as good as the old kernel, how would you go on to take away the new kernel to replace it with the old kernel? Is it the same process or even harder?
Click to expand...
Click to collapse
NOW THIS IS ANNOYING..
u have to flash ur rom again..
but fortunately u dont need to do and wiping data or partitioning sd card.. jus flash rom..
Its not something that you can install like an apk, so its not in the market.
zeemar007 said:
NOW THIS IS ANNOYING..
u have to flash ur rom again..
but fortunately u dont need to do and wiping data or partitioning sd card.. jus flash rom..
Click to expand...
Click to collapse
The rom kernel that I downloaded, or flashing clockwork recovery mod? Like adrenylyne's kernel for the thunderbolt.
EDIT: Never mind, I found out. I didn't mean any harm if MY POST was annoying.
If you have two kernels, in a flashable zip, you can just flash them over each other to exchange them (turn off any modification the kernel did befor though, like lagfix).
New question, I had an app (quick office) that came on my captivate. Now that I've flashed di11i's 7.1 I don't have it anymore. This is particularly peculiar because all the other native apps are still here:samsungs media player from example. How do I go about getting this missing app back on my phone. I have all the backup files on my computer so I should have the .apk (although I'm not entirely sure how to install those properly) thanks
Sent from my SAMSUNG-SGH-I897 using XDA App
Dual Boot Support
DualBoot Helper APP is now on the market! (See bottom of this post for more info)
DISCLAIMER: I am not responsible for anything, ever. It is not my fault if you do not read. I do not explain things because I enjoy banging on the keyboard. If you do not read this entire post before jumping in then do not expect me or anyone else to be much help. By following this guide and any links YOU assume all responsibility for your device and anything that happens with it.
What is it?
Dual booting allows you to run two separate roms on your device at one time. It is done by intercepting the mount points during the startup of the device. This is accomplished by checking the sdcard for a specifically named file when the kernel first loads and uses the appropriate files to boot with the correct partitions. Reading from the sdcard is slower than reading from the internal memory of the phone so the speed of your sdcard will drastically determine the speed any rom runs. On the same note a rom flashed to the sdcard will take longer than usual on the first boot.
What does it do for me?
Running two separate roms has many uses for just about everyone. Users can use dual booting to try different roms, themes, apps, modifications, or anything while keeping their existing installation intact. The uses are just about endless. Besides testing different roms, this allows the user try these things and make sure they are compatible and stable before pushing the changes to their internal memory. Rom developers have all of the above options plus a few. Rom developers can additionally use dual booting to test builds of their roms without fear of soft bricking their device. For advanced users, you can mount the partitions of the other rom (be it sdcard or internal) and fix bad apk files or messed up files. The options really are limitless!
What do I need?
Sdcard 2GB or larger
Dual boot compatible kernel
Other things I should know...
*The kernel MUST support BOTH roms you flash. Unfortunately this means you can NOT mix froyo and gingerbread roms. Make sure you know what the kernel supports before you flash anything!
*If you compare roms, benchmarks will hold no value due to the sdcard being so much slower than internal memory.
*Faster sdcards will perform better than slower ones. Note: the stock 16GB sdcard is a class 2 which simply classifies it's minimum speed. A higher class sdcard will more than likely perform faster but the class rating is a minimum and not a maximum. It is entirely possible that a certain class 2 card can out perform a different class 6 card. Keep this in mind when researching to buy a new faster sdcard. More info in this post.
*First boot takes longer than usual. Up to 15 minutes! Please wait until the rom boots and the initial media scanner is done before you judge usability.
*Using a rom from the sdcard will cause the sdcard to wear faster. This is due to many more reads and writes of data than normal. The Epic simply does not have the internal capacity to run dual roms on the NAND. That being said the sdcard is our next option. While it may reduce the over all life of the sdcard keep in mind there are other android devices like the Nook Color and the other Galaxy S phones that have internal sdcards running the Android operating system. My personal opinion with is with other devices running off internal sdcards and with the price of sdcards getting cheaper and cheaper it was worth it to explore this option for the Epic.
Ok ok, so how do I get started?
I am going to break the steps down into sections. Please read everything to ensure you understand what all is involved in getting everything working. I recommend making a backup in Clockwork Mod and saving it to your PC before you even get started.
Section 1 - Setting up the environment
Step 1. Flash a compatible kernel (Kernel developers, PM me if you add my dual boot support to your kernel and I will update the list below) Remember you can NOT mix a eclair, froyo, or gingerbread roms and the kernel MUST support both roms!
Currently compatible kernels:
Genocide 2.0 Supported Roms: EC05, EB13, and DK28
Section 2 - Preparing sdcard
Important information!!!! This will destroy ALL data on your sdcard so if you lose pictures of your dog, cwm backups, nudies of your spouse, etc then you can't blame me. BACKUP YOUR SDCARD!
The easy way:
Reboot into recovery mode with a program like Rom Manager, Quick Boot, or type 'reboot recovery' from a terminal. (NOT 3-finger boot to recovery...this will NOT work)
The easy way WILL erase your sdcard with NO confirmation....you have been warned!
Choose one of the following flashable zips to automatically partition your sdcard
DualBoot_Partition_RFS.zip
DualBoot_Partition_EXT4.zip
The manual way:
Reboot into recovery mode with a program like Rom Manager, Quick Boot, or type 'adb reboot recovery' from a command line. (adb commands assume you have a working install of the Android SDK)
While in recovery issue the following commands:
Code:
adb shell
cd /sbin
./dbpart.sh --help
I put many hours into the partitioning script to make it as simple to use as possible. Simply follow program usage instructions.
Section 3 - Preparing a rom
Since we have blank partitions on the sdcard we need to populate them with data. There are multiple ways to accomplish this and you can choose which solution best suits your needs. I am not going to cover ALL methods here but enough to suffice any likely scenario needed.
The dd method will clone your current setup to the sdcard (these commands may take up to 15 minutes)
The easy way:
Flash this dd script: DualBoot_Clone_to_sdcard.zip
The manual way:
Code:
adb shell
dd if=/dev/block/stl9 of=/dev/block/mmcblk0p2
dd if=/dev/block/stl10 of=/dev/block/mmcblk0p3
dd if=/dev/block/stl11 of=/dev/block/mmcblk0p4
Preparation is complete. Please skip down to booting from sdcard.
The flash method is for flashing a new rom to the sdcard.
The easy way:
There is no sure fire easy way just yet. Stay tuned though.
The manual way:
This method is not that difficult so there is no need to be intimidated by it. It requires editing a few lines of the script that Clockwork Mod executes when flashing a rom or addon. For this example I am going to use a file named epicrom.zip but you can use any name you wish.
Step 1. On your PC, open epicrom.zip (I recommend using a program like 7zip)
Step 2. Navigate to the META_INF\com\google\android\ folder.
Step 3. Drag the file updater-script out of the zip to your desktop.
Step 4. Open the updater-script file with a text editor such as notepad (I recommend notepad++ or textpad)
Step 5. Change every instance of /dev/block/stl9 to /dev/block/mmcblk0p2
Step 6. Change every instance of /dev/block/stl10 to /dev/block/mmcblk0p3
Step 7. Change every instance of /dev/block/stl11 to /dev/block/mmcblk0p4
Step 8. Delete the entire line for any lines that contain /dev/block/bml7 or /dev/block/stl7 to disable flashing another kernel and breaking dual boot support.
Step 9. Save the file and drag and drop it back into epicrom.zip and let it replace the old one.
Note: If you get a status 6 or some other error when trying to flash it is likely you made a typo or your text editor did no save the updater-script file correctly. Recommended action is to correct the typo and/or use one of the recommended text editors note in Step 4.
Section 4 - Flashing to sdcard
Flashing a rom from this point is the same as you usually do. Put the modified rom on your sdcard and flash with Clockwork Mod like usual. I recommend doing a backup in Clockwork Mod BEFORE you flash in case you messed anything up by accident and end up flashing over internal memory when you meant to flash to the sdcard.
Section 5 - Booting sdcard
To boot from the sdcard place a file in the root of your sdcard called 'bootsdcard'. If you named it correctly upon reboot, the kernel will load the rom from the sdcard and not internal memory.
To boot back into internal memory simply remove this file from your sdcard and reboot.
You can switch back and forth using this method. If the file is there it boots sdcard, if the file is not there it boots normally. Pretty simple right?
Section 6 - Other flashables (not roms)
Themes, addons, and anything else that is flashable with Clockwork Mod must be modified in the same fashion as the rom. Use the same procedure documented in Section 3, The flash method.
Kernel Developers:
If you would like to add dual boot support to your kernel please refer to this commit: https://github.com/Rodderik/Genocide-Kernel/commit/a5dfd9f369ae4f2c90c1e7fc7d8995f88f72bd01
I will update this section if I push any specific changes to dual booting.
Now with an APP!
DualBoot Helper
VenumX coded up an APK to work with Clockwork Mod to run the scripts.
http://forum.xda-developers.com/showthread.php?p=15486144#post15486144
Questions, concerns, gripes, or complaints can be left in this thread. If you need to report any problems please be as detailed as possible.
woot
Thats my boy!!!! Make me proud!!!!!!!!!!
w00t! go man go!
Holy ****! This is huge! Thanks!
Sent from my SPH-D700 using Tapatalk
OMFG this is way amazing ;P
Thr genious once again with another first
Sent from my SPH-D700 using XDA Premium App
Edit
nevermind...
good work!!!!!!!!!!!!
davidrules7778 said:
I got a question...
Would i be able to run dual versions of android
Ex 2.1 and 2.2
or 2.2 and 2.3
if the kernal is compatible?
Click to expand...
Click to collapse
if the kernEl was compatible yes...but none of them are...and likely won't be
Good damn job bro.. Let's keep the dev community developing
Rodderik said:
if the kernEl was compatible yes...but none of them are...and likely won't be
Click to expand...
Click to collapse
what if u made one of the eclair kernal compatible or gingerbread whenever we get custom kernals for it?
Or is it not possible to make eclair kernals compatible?
i think i could make a GB kernel now.. but you wouldnt be able to mix gb with froyo or eclair, because a GB kernel wont boot those builds..
Awesome work bro! Amazing...simply amazing!
chris41g said:
i think i could make a GB kernel now.. but you wouldnt be able to mix gb with froyo or eclair, because a GB kernel wont boot those builds..
Click to expand...
Click to collapse
yup i'm going to help chris41g put together a gb kernel for you guys
as far as eclair...honestly who still uses eclair? and why?
Rodderik said:
as far as eclair...honestly who still uses eclair? and why?
Click to expand...
Click to collapse
Just what I was thinking.
Tested on EC05 just now. I uhh... likey? =)
to bad no multi android versions though =(
why cant the kernel read off the sdcard? do you need drivers from samsung once again?
Shoulon said:
Tested on EC05 just now. I uhh... likey? =)
to bad no multi android versions though =(
why cant the kernel read off the sdcard? do you need drivers from samsung once again?
Click to expand...
Click to collapse
well the kernel is stored in bml7 and called by sbl/param during boot so unless we can get a bootloader to intercept the initial loading of the kernel and pass it off we are stuck with one kernel at a time
Very Nice Work !!!
Hey rodd... I think you should work on an aosp gingerbread kernel ... this is a great advancement in devlopment man... right when it was slowing again
Sent from my SPH-D700 using XDA App
this is amazing, thanks for this!!
You cannot make a cross OS kernel. We cannot integrate this into GB yet because there is no GB source, no GB source, no custom kernel. This is Froyo only, and well, someone else can make an eclair only kernel, but that is stupid.
Hola peoples!!! Ok so I just thought I'd create my own thread on this matter. Mustangtim started one in apps and themes (and here is the link to that thread) but since I'm taking over this project it was brought to our attention that this should be in the dev section as its no longer just an app.. I am actually tearing .imgs apart trying to figure out what the deuce.
FIRST OFF THIS IS A WORK IN PROGRESS, WE ARE NOT YET FULLY SUPPORTED. HOWERVER I'M DOING MY BEST TO CHANGE THAT.
Secondly if you want to help get this started please visit the market and grab the app here. Its a $3 dollar app for unlimited amount of roms, based on your SD card storage capacity anyway. And speaking of which you need AT LEAST a class 4 or better SD card to make this run smoothly.
Also feel free to visit the forums at http://forum.init2winitapps.com/
Ok so here it is, Boot Manager Pro. Its been a long time coming for the g2x to dual boot. First off let me say long story short, I currently have a bootable SD Rom, known as ROM1. I have yet to be able to recreate my findings tho. But it works and it doesnt brick at all. However it is a bit laggy on my class 4 SD card. Luckily I've already done my research on this project as there are many threads of such awesome info so I'm just going to be lazy about it and quote the good people of xda versus re-writing it based off of their info.
ChrisDDD said:
So here's a very basic description of how it works... It doesn't partition your SD card, it just creates a folder of its own, and then sub-folders to hold the different roms you install. When you install a rom, it basically creates images of the usual Android partitions - system, data, cache, & boot. These are standard .img files, just like the ones Clockwork creates when you do a backup. After the images are created and wiped (formatted, which you should do initially) it installs your rom into these essentially the same way as Clockwork installs a rom to your phone's actual partitions. I assume it modifies the kernel that comes with each rom to mount the image files on the SD card instead of the phone's partitions.
When you want to boot a rom, it just replaces your current boot image with the modified one and restarts the phone. With the modified boot image, the system, data and cache images on the SD card are mounted to the correct locations and Android starts up none the wiser. The rom will initially run a little slow, because the SD card is slower than the internal memory, but after things get cached it speed up considerably.
When you want to reboot to another rom, or back to the phone's rom, Boot Manager again swaps boot images that mount the desired rom's partitions (in the case of the phone's rom) or files (in the case of an SD card installed rom).
When you first run Boot Manager, it makes a Clockwork flash able backup of your current boot image, which you can flash if a rom hangs or loops on startup. Alternatively, you can also simply boot into recovery and do an advanced restore, choosing just the boot image to restore from a backup. It accomplishes the exact same thing.
It can be a little hit or miss, with some roms just plain refusing to start through Boot Manager, but it does work and when it does, it's pretty amazing given what it's actually doing.
Click to expand...
Click to collapse
So basically upon installing the app you need to setup your phone so that way you can properly install a ROM, follow these steps:
1. Go into the supersu(or superuser app) and then go to settings then disable logging or click none.
2. Then go into the BMP app and press the menu button on your phone, not the app, and go to settings. Once in settings put a check mark in force large boot.img, screen on during install, and then go into variables, leave tegra alone but change the sdcard block to show mmcblk1p1. Then press finish and let the app restart. By the way I didnt change any of the sizes of the .imgs but feel free to do so. But be warned do not decrease the size of the system.img only increase it, if desired.
3.Then after you've done the above you need to setup the phone rom. Click on 'Setup Phone' under phone rom and follow that process to setup your phone rom.
4. Once your phone rom is setup you may begin to install a zip to rom1 or rom2 or whatever slot you want. This is the tricky part. I have done tons of reading and most people say that if your using CWM, which us g2x'ers do, then you will probably have a better chance of getting a bootable rom by restoring from a nandroid backup you did versus installing new.
5. So after you decide which path you will take, nandroid backup or fresh rom install, choose install. If you choose a fresh rom, wipe system, data, and cache right away. If nandroid, then wipe after the install.
6. Now once you have clicked install put your phone down, DONT MESS WITH YOUR PHONE AT ALL! PUT IT DOWN AND WALK AWAY OR SOMETHING! Don’t mess with it, text from it, xda from it, dont even use the screen as a mirror!!!! lol seriously the app is picky and while under the .img creation process you want nothing to mess that up or you will not get it booted. You may however drag down the notifications bar to follow the progress of the install.
7. Once its complete, tap the install complete notification in the notification bar and let the app do its thing to finalize the install and get you back to your rom selection screen. Now if you did a nandroid back up here is where you click 'manage slot' and then factory reset the backup you did. Just do it, dont ask why.
7.1 Also so if you desire to install gapps and/or possibly a different kernel, now would be the time to do so while your here. I have read mixed reviews of doing this process right after the rom installs. However when I set up my rom1, I booted into it first all happily then realized I had no gapps. So I had to reinstall BMP on rom1 then boot back to phone rom and then I installed GB gapps and had no issues booting back into rom1.
8. Once the above steps are done if your feelin lucky go ahead and tap on boot the rom you installed, and if all goes well it will boot up.
9. If it boots up you need to post confirmation here!!! Provided info such as phone rom and the info on the sd rom you used and slot number and such.
Hopefully it will just work for you. I have done all the above steps using HFP 2.1 as my phone rom and only been able to get 1 bootable rom. Being it was for testing I used HFP as my phone rom and as well as my rom1.
So if the above steps dont wortk out for you and your boot lopped or what ever, then turn your phone off and reboot into cwm. You have 2 options to resolve the boot issue you just created. 1, you may go to restore then advanced restore then restore your boot. Or 2. select install a zip and nav to the bootmanager folder then phone rom then flash the update zip there.. then reboot and you should be back at your phone rom.
Here is a basic run down of everything that I have done so far:
When I first started working on this project I wasn’t doing any dev'ing to change any of the stuff in the boot.img. I just changed settings in the app per all the research I did. So when all was said and done I restored HFP 2.1 to ROM1 and it actually booted!! And it works lovely btw.. I can still boot into this rom today. I then decided to pass the word and ways that I created the working rom1, well I nor anyone else I passed the info to was able to get it working. Only one other person was able to confirm that rom1 works but only after I copied all my rom1 info and sent it to him for testing.. and he was able to boot into my created rom1… As I see it, it was a blue moon event that I have yet to repeat. So I thought eff it lets do some dev'in so I unpacked the boot.img from rom1 then compared that to the unpacked boot.img from rom2 that I created in my trial and error experiences. So in doing so I noticed 4 differences; 1, the mount points obviously, 2, in the sbin folder had a ueventd file from the working rom1 was a text file viewable by gedit in ubuntu. In rom2 it was just a non-readable file. 3, in the init.rc file was also missing a chmod command for system, (the command is in rom1 but not rom2) and 4, there was a ueventd.tegra file that was in rom1 that wasn’t in rom2, but everything else is the same. So I decided to plug and play with the differences to see if she boots and no go. I don’t understand why its boot looping because I am using the same rom as phone rom as for rom1 and rom2. So it boot looped. So I had to restore my boot.img many times in cwm.
So then I said eff it lets do some more research, then I noticed in the .zips folder plus the individual rom folder there are .zips that will let you flash via cwm if you get boot loops and 'should' get you booting to your desired sdrom. I then tried that way and no go.. so then I opened up the zip and had a look at the internals.. first there is the moveboot.sh file that the app runs in cwm flash the given boot.img. I then checked out the meta-inf and opened up the updater-script thinking that the app wasn’t actually flashing the boot.img which is why it loops... Well I think im half way right. However the script itself is lil dodgy... first thing I noticed was at the end of the script they have a command to cp the log from /tmp to /sdcard/bootmanager well the command was wrong so it never copied the log. So I fixed that. I also saw that the assert command was pointing to ‘boot’ instead of mmcblk0p5, so I changed that too. Then I decided to do away with the assert command and the moveboot.sh file they have going on to utilize the same functions that the kernel zips use, which is a kernel folder that holds the boot.img and a run_program that dd's the boot.img to 0p5. plus I even updated the update-binary that the file uses. I used the one from the g2x nullifier as I know that one was made for our phone and should have no issues.. plus there was a noticeable difference in the sizes of the provided binary to that replaced binary. So with the updated.zip file I then rebooted into cwm to flash that being that I was using a different command to flash the boot.img as well as the other changed stuff and still it boot looped. So as of now the only thing I don’t think ive done was grab the boot.img from rom1 then change the mount points, only change that, and then use that for rom2 and see if it boots. I don’t think I’ve done that yet. But every dam process I do I get boot loops. So basically I have came to the conclusion that it’s now NOT a boot.img issue being that I have done everything to change the boot.img and to make sure it flashes, which it does indeed and now creates the log too… I think maybe it has issues with the system.img as that’s what comes next in the boot process. But that’s just my hypothesis. I won’t be able to confirm this till I liberate rom1’s boot.img then change the mount points to point to rom2 and then see if it boots.. if it don’t work then that would mean to me that there is an issue with system.img created. But that’s just my hypothesis…
What I don’t understand is why the eff when I didnt hack the app I got a working sd-rom, but when I do change some stuff with it still don’t work!!???!! I guess maybe ill just edit/hack the apk to see what’s up.. This is getting way more complicated than it needs to be, since it worked prior to all my major changes to the script its using for flashing and the boot.img and what not. Anyone have any ideas feel free to add them.
My next steps are to edit rom1 boot.img one last time to change the mount points to point to rom2 and then if that’s a no go then it’s got to be the system.img that’s getting created. By the way this whole process I have only been restoring my nandroid backup for HFP 2.1. I have not attempted to flash new as with thru my research more times than not people would get a bootable rom via restoring versus flashing new.. so if anyone wishes to experience an sd rom let me know, ill send you a link to download my rom1 to get it going. Mind you that its not perfect and you need a class 4 or better sdcard. Everything works but it just takes a bit longer to load things and get things cached as its on the sdcard and not nand. Also if you have any input or are wishing to help pm me I need more heads to get this sorted as I can’t be the only one who knows how to edit scripts and unpack imgs and such. Either way I will continue to do this until I get it right damit!!! Oh and I just ordered a class 10 sdcard to help with this process…
That was copied from the other thread that mustangtim started. Last night when I went home the first thing I did was change the mount points on rom1 to reflect rom2, I changed nada else, then I tried to boot it... it boot looped. So maybe its a permissions issue or the system.img.
So just as a proof of concept and before anyone calls bs on my work/findings Here is the link to my rom1 that boots and is HFP2.1. *Update, 'm just going to
leave it on my DB for now till I find something better I guess. xda wont let me attach the file since its 233MB. Oh well here is the link :
Code:
[URL="http://db.tt/eBZwrOrs"][U][B]Here it is, my Rom1 HFP 2.1[/B][/U][/URL].
I have also attached my updated script file to flash back to rom1, for now.
The boot.img points to rom1 instead of phone rom, ill add to phone rom
as well, just not the now. :) Feel free to flash this via cwm versus
restoring...
Also this is part of the this: the ‘.zips’ folder you need to replace the file in
that folder as well. It’s an update file for rom1 to flash the boot.img.
..
If you’re going to use this you need install a random rom to rom1 then replace those created files in rom1 with these files in the 7z file..
So I am doing this new thread to get the devs or people with know how to help me out with my findings. I have edited the boot.img so much I could pretty much re-write everything in there by now including using magic to create to my own kernel eff!! lol jk but seriously I need people with knowhow to provide confirmation of go or no go. Basically I have people whom have helped out but It seems that I'm the only one who has dug this far into this app(unless i've been misinformed) and I have no one on my level to talk with except the init2winit devs. Which are very helpful btw.
And lastly:
Conap said:
Guys if it's failing to make the boot.img first make sure your using the market version....others have released cracked versions of our app which they broke...if your using the actual market version just send me a pm or email [email protected] and send your log.txt from BootManager folder on sdcard and we'll get it straightened out. Thanks.
Click to expand...
Click to collapse
or post here or PM me, I'm always down to help out.
Also thanks go to the init2win team, Gflam and Conap as they started this app. and as well to Mustangtim as he brought me into the light of BMP.
So you got all that???!!!??? Now lets get this party started and get full support for dual booting. I will not rest until I get this working. Thanks for your time and possible assistance.
Ok so since I have a book above I thought this is a good place for links and such...
So just incase anyone is curious, here is the Official Boot Manager Manual
Here is a nice link for Tips and Tricks while Installing ROM's that so far has good info to help you watch via adb what the BMP is doing in its creation process.
Some FAQs:
When should I set up my phone ROM?
Set up your phone ROM EVERYTIME you install a new ROM to your phone so you can get back to your phone ROM and won't get stuck on your SD ROM.
My SD ROM seems to lag how can I fix this?
SD ROM lagging may be due to a few things which all have easy fixes. First fix is that most of you have class 2 cards which are what usually come with your phones. These have a much lower read/write then cards of a higher class, we recommend a class 6 card or above. Another easy solution is overclocking merely install a better kernel and use CPU Boost (or any other overclock app) to overclock your phone.
Can I nandroid my SD ROM slots?
Yes and no you can't nandroid them in the traditional sense of the word using recovery but this app works as a recovery for your SD ROM slots and you can back up your ROM slots within the app in the Manage Installed ROMs section which works as a nandroid for your slots by fully backing up your slots to your sdcard which can later be restored.
What if I want to change the sizes of my images, how may I determine the individual sizes easily?
Easiest way is to open up terminal emulator in your app drawer. Type 'su', then grant permissions if need be, then type 'df -h' and it will display such information. You may also use adb in the same fashion. Connect via usb, open up command prompt/terminal and get adb connected and then type 'df - h' again and the same info will show. I will say this again just because, do not decrease the size of your system.img ever! Unless you want mad issues!
Here is the changlog link and just for heck of it the info based on that link:
Code:
V3.2.6
Fixed DroidX/Droid2 Install issue
Fixed UI theme issues
Fixed issue with spaces in name of pic when selecting photo for screen shot
V3.2.5
Fix to allow continue of install if no boot.img is found.
V3.2.4
Added support for HTC Rezound
Added support for rom's with multiple boot.img's
Added support for rom's made for multiple phones
AutoDetect sdcard for usb mounting
Fix for installing ICS gapps
Optimized SDRom Install process
Added support for Motorola RAZR
Added install queue
V3.2.3
Fixed issues with rom's not showing when on emmc on Droid Incredible
Fixed issues with not showing correct booted rom in app
More improvements to sms sync(all rom's will need updated app for changes to apply)
Fix issues with loader
Fixed issue with switching to backup server when main server goes down
Fixed 1x1 widget to show unlimited rom slots
Added 2x2 widget that works with unlimited rom slots
V3.2.2
Fixed force close for img's over 1Gb when resizing
Fixed current booted rom displaying correctly on gnex
Fixed issue with wrong busybox downloading on gnex which should fix alot of install/boot issues
V3.2.1
Fix for errors causing installs to fail.
Fix for some of the licensing stuff.
Removed sdbooster prefs from Galaxy Nexus(Since they don't have sdcard).
V3.2
Changed 4 sd slots to infinite slots!
Galaxy Nexus Support
Sms and Call Log synced between ROMs (you choose what ones too also requries updating boot manager in all slots)
License Check extended to a week
ROMs do not need market installed for boot manager to run (requires updating boot manager in all slots)
Hide su toasts (superuser elite only)
Fix for force close when setting screen shot in MIUI rom's
Thunderbolt defaulted to force large boot.img
Fixed unsupported device using a key
Manually setting variables only accepts numbers
V3.1.1
Fix for various force closes in rom installs and Nand restores
V3.1
Added su binary check
User selectable colors for everything
Better navigation (press title for quick action)
Added compatability for new twrp backups
Better compatiblitlity with memory tweak scripts(i.e. supercharger script and liquids default scripts)
Fix for install process being killed by android
Fix for some themes erasing img's
Fix more force closes during install
Force smaller boot.img option in settings(Fix for some phone's who's boot.img won't fit on the phone after BootManager edit's it)
Improved gapps checker
Improved security
Boot Manager now accepts keys pay for by paypal (see http://init2winitapps.com/stories/BootManager.html)
Added Evo 3d GSM Support
Added notifcation sound/vibrate for finished install (turn on in settings)
Improved data check
V3.0.3
Fix some force closes
V3.0.2
Added backup server (Sorry our server dropped out)
Fixed some force closes
2nd init fixes for Liquid's ROMs
V3.0.1
Last minute UI fixes
V3.0
UI Completely redone
Includes screen shot of each slot
Custom Info
Custom Dialogs
Custom Animations
Custom everything!
Bug Fixes
Added Droid 2 Global support
Screen shot with long press of search
V2.2.1
Bug fixes in file browsers
File browsers only show relevent files
Kernel installer fix
Droid 2 bug fix
V2.2
New security (more advanced and requires data only once a day)
Installs no longer require data
Added Italian translation thanks Black-Ice
Droid X support
Droid 2 support
Fixed status bar notifications
Fixed phone rom rebooter if gapps aren't installed
Bug fixes
V2.1
Restore android_secure to sd from nandroids
Added TWRP nandroid support
Added CWM tar nandroid support
Added Spanish translation
Made widgets easier to use
SD Booster added (Change SD read cache for better preformance)
Added current settings to manually set variables.
Added option to keep screen on during install in settings
Fixed usb layout
Updated Security
Bug Fixes
V2.0
Install now runs from the foreground (status bar)
Restore Nandroids to slots also in the foreground
User can cancel installs as they run
4 new themes added including one by apophis9283
Some phones such as tb moved to new install code (Fix for some sense rom's)
V1.3
Added third theme to app (Red Theme)
Added 4x1 widget and new widget styling
Fixed in app messenger
Added support for Htc Evo 3D
Added support for Htc Sensation
Added Support for Htc Incredible 2
Added Support for Htc Incredible S
Added Support for Htc Desire S
Added support for LG Ally
V1.2
Added option to reboot to phone rom to install gapps in license check dialog
Better error checking and error logging
Automatically install's ext2 libs if not present
Moved Set Names to Manage rom's
Fix for add-on's not installing correctly
Better compatiblility for rom's that use data2ext or apps2sd(user must set larger img's in manual variables)
Trash cleaner added to extras
Better Fix for WiFi issues on Droid 1
Added display to show what rom you are booted into
Fix for updater-script not found errors
Added support for Htc NexusOne
Added support for Htc MyTouch4G
More compatiblity for ext4 support
V1.1
Fix WiFi issues on Droid 1
Fix bug in rom installer for setting permissions correctly
Fix bug for cache size not setting correctly in setting variables manually
Fix for decimals entered into partition sizes causing force close
Fix force close in widget
Fix force closes in installer
Added Wipe data/Factory reset to Manage Rom's section
Added code to show what file's are being unzipped in dialog
Added support for rom's that extract files to sdcard so the files actually end up on your sdcard
Added support for Htc Desire (apps2sd and data2sd rom's support is experimental. Please email if you test it and it works/doesn't work)
Added support for Htc Inspire4g
Added support for Htc DesireHD
Added option to use ext4 filesystem if rom's support it-Experimental Won't work with all rom's.
Added log.txt file to sdcard to log errors during install
V1.0
Initial Release
YEZZZ
glad to finally see this here!
jookdakang23 said:
glad to finally see this here!
Click to expand...
Click to collapse
indeed... hopefully it wont be before too long that I get this app fully supported for us!
This app will be extremely useful for G2X owners and makes the G2X more versatile and desirable.
da-pharoah said:
indeed... hopefully it wont be before too long that I get this app fully supported for us!
Click to expand...
Click to collapse
idk how you get it booted. lol i keep getting bootloops
jookdakang23 said:
idk how you get it booted. lol i keep getting bootloops
Click to expand...
Click to collapse
Are you using the files I supplied or the ones that BMP created for you?
Woo hoo good job bud
Sent from my LG-P999 using xda premium
x0xhellx0x said:
Woo hoo good job bud
Sent from my LG-P999 using xda premium
Click to expand...
Click to collapse
LOL thanks bro.... Go Team Hellfire!!!!
da-pharoah said:
Are you using the files I supplied or the ones that BMP created for you?
Click to expand...
Click to collapse
i remember requesting the files but think you ever sent them
jookdakang23 said:
i remember requesting the files but think you ever sent them
Click to expand...
Click to collapse
no we had a miscommunication due to our avail times and GB's lacking ability to utilize two accounts on gtalk.... I have posted those files in the op however...
First, I want to thank everyone who has helped with us on this app. Second, I know I picked the right man for the job, did you see that OP! All kidding aside, a lot of you know I write for ACS under screen name artifintel. I just had too much on my plate to give this project the attention and direction it needs. The right guy is in charge, he's a stand up person and very knowledgeable with this app. Good luck everyone!
[email protected]
I tried installing CM9, it didnt work, stuck on first boot screen after the LG logo.
I'm using rooted stock 2.3.4
Rafase282 said:
I tried installing CM9, it didnt work, stuck on first boot screen after the LG logo.
I'm using rooted stock 2.3.4
Click to expand...
Click to collapse
what rom are using as phone rom? and you installed to rom1?
da-pharoah said:
what rom are using as phone rom? and you installed to rom1?
Click to expand...
Click to collapse
As phone rom i;m using rooted stock 2.3.4 v21y
The to rom1 I installed CM9 kang from oiwan with gapps and harsh kernel
Rafase282 said:
As phone rom i;m using rooted stock 2.3.4 v21y
The to rom1 I installed CM9 kang from oiwan with gapps and harsh kernel
Click to expand...
Click to collapse
and no bootloop you say?? well then it may be the stock rom your using... The app is very picky and if you get a bootloop, I feel that those can get booted with tweaks... but stuck on lg screen is just no bueno.. Try a different rom... maybe one that has its partitions at ext3 format just to try it.. I think owains rom uses ext4, but I could be wrong. I havent fully researched his rom yet..
hands down, a badass app...
SiL3nTKiLL said:
hands down, a badass app...
Click to expand...
Click to collapse
lol +1 for sure!
da-pharoah said:
I think owains rom uses ext4, but I could be wrong. I havent fully researched his rom yet..
Click to expand...
Click to collapse
positive on ext4
Introduction
The DreamServer ROM makes the T-Mobile G1 (HTC Dream) a low-powered headless Linux server. The DreamServer ROM provides only the essential services and libraries required in order to start ADB and Wi-Fi. There is no Dalvik (and thus no Android user interface), which maximizes the resources available for server use.
WARNING
The DreamServer ROM is only intended for use by those comfortable with Linux. Once the DreamServer ROM is installed you will no longer have an Android GUI or user interface of any kind, and you will not be able to run standard Android applications or even USB-mount the SD card. The only device interaction you'll get is via ADB (and of course your custom recovery image).
Download
dreamserver-1.0.0-build.tar.gz (11.6 MB)
Revision History
1.0.0, 2013-02-02, dreamserver-1.0.0-build.tar.gz (11.6 MB), http://kidsquid.com/files/dream/dreamserver-1.0.0-build.tar.gz
Initial release
Prerequisites
Rooted T-Mobile G1 (HTC Dream) with custom recovery image that has the ability to restore nandroid backups.
Verified working adb connection via USB cable.
SD with a FAT file system (not ext2). The DreamServer ROM uses fsck_msdos to check the SD card before mounting it.
Wi-Fi access point.
Familiarity with Linux and shell scripts.
Installation
Meet all the prerequisites in the previous section.
Perform a nandroid backup and make sure you also have an update.zip on the SD card for whatever boot ROM you are currently using. Due to the extremely limited nature of the DreamServer ROM (see the WARNING above), you'll want to formulate your escape route now.
Under your existing rom, go to the Wi-Fi settings and forget any networks that you will not be using. Verify that Wi-Fi connects to your desired network.
Copy /data/misc/wifi/wpa_supplicant.conf from the phone to the root of the SD card as wpa_supplicant.conf. You'll need this in order to connect to Wi-Fi.
Copy the dreamserver-x.x.x.zip to an SD card, and install the ROM via your custom recovery as normal. No wiping of the internal DATA or CACHE partitions are necessary, as these are not mounted by the DreamServer ROM.
Reboot the phone.
When the device boots, it will turn off the backlight during init so you know that it did not hang. Wait for a while (around 30 seconds) and access the device with adb shell.
Customize the installation by adding init.sh and cleanup.sh scripts to the root of the SD card. See the "Run-time Configuration Files" section in the README file.
When you want to reboot, use the reboot command. Note that /system/bin/reboot is a shell script that runs cleanup tasks prior to rebooting. If fifosh is running, you can also reboot cleanly from within a chroot jail: killall -USR1 fifosh
Please see the README included in the tarball for additional information (key locations and files, how-to's, rebuilding the ROM, etc).
The tarball also contains example configuration files for a Debian chroot environment that sets the time with NTP and starts sshd and lighttpd.
Credits and Copyright
DreamServer was created by Jeffry Johnston, 2012.
This ROM was originally based on a 1.6 (Donut) ROM by dwang that I found to be reliable. My filesystem modifications are extensive, but the
kernel and busybox from that ROM are used unmodified. Source:
Thread: http://forum.xda-developers.com/showthread.php?t=567023
Title: [ROM][32B/Dream][Dec23][Dwang][Donut][Speed and Stability][v1.17.1]
Filename: dwang-v1.17.1.zip
Download: http://files.androidspin.com/downloads.php?dir=dwang/ROM/
Existing programs and files are copyright their respective owners. Any customizations that I have made are released to the public domain, except for the tools programs I wrote, which are released under GPLv2.
Hey cool! I doubt I wold use this, just currently don't have a reason, but its awesome to know its here! I'll test it out though as I'm curious what all could be done here, thanks!
Sent from my Nexus 7 using xda premium
demkantor said:
Hey cool! I doubt I wold use this, just currently don't have a reason, but its awesome to know its here! I'll test it out though as I'm curious what all could be done here, thanks!
Sent from my Nexus 7 using xda premium
Click to expand...
Click to collapse
Thanks for trying it out! I expected the audience might be pretty small for this, but it gave my old phone a new lease on life, and I decided it was worth sharing. I often do a lot of small-time serving of web pages, IRC bots, and such. Nothing that requires a powerful machine or much bandwidth, so I didn't want to leave my main system on all the time. With this I have a completely silent server that uses a minimum of power. And of course it was fun learning more about my favorite Android device.
Thank! I was looking for something like your rom for my little log-what-and-where-my-car-does-with-obd2-and-gps-project Downloading right now You've just made my day
How was this done?
This is a very interesting project, how would one go about making this? like what files to mess with to remove JIT and other things?
Good Job @calamari
Wow. I just have to tear this thing apart and examine its innards.
I've used a HTC mytouch as a server before, but didn't take the time to rip dalvik out. Seemed like too much work that would lead to replacing a lot of functionality with shell scripts, and saying my coding skills are sub-par is an extreme understatement
Sent from my Evo V 4G using Tapatalk 2
Wow this sounds pretty awesome. Would you by chance be able to make a guide so I can do this with my heroc?
Sent from my HTC One V using xda app-developers app
Really great thing!
Just one questions:
Is it possible to access the camera?
I think about setting up a little wireless ip cam.
dadoc
KShion619 said:
This is a very interesting project, how would one go about making this? like what files to mess with to remove JIT and other things?
Good Job @calamari
Click to expand...
Click to collapse
whoshotjr2006 said:
Wow this sounds pretty awesome. Would you by chance be able to make a guide so I can do this with my heroc?
Sent from my HTC One V using xda app-developers app
Click to expand...
Click to collapse
I don't remember the full process (lots of trial and error and learning). However, you can download dwang's original ROM and compare his files against mine to determine the changes made. Full sources are included for any of my custom additions.
dadoc said:
Really great thing!
Just one questions:
Is it possible to access the camera?
I think about setting up a little wireless ip cam.
dadoc
Click to expand...
Click to collapse
I would assume so, but I haven't attempted it. There are several files in /dev that seem camera related: /dev/pmem_camera and /dev/msm_camera/*. Under Dalvik, you could try writing a program that replaces those and saves the I/O to files for analysis.
Alright, noob here. Since I cannot post in the PACMAN development thread (http://forum.xda-developers.com/showthread.php?t=2164406) I will put this here.
- Problems installing PACMAN ROM
- After receiving "Errors Flashing", failures, downgraded recovery to TWRP 2.3.3.0
- 2.3.3.0 displayed "Error 7"
- Searching on error 7 led me down the path of the assert checks
- updater-script assert command in PACMAN ROM package is checking for model "ville".
- My HTC One S Special edition returns "villeplus" from "adb shell getprop ro.product.device"
My understanding is that the North American S4 and the Special Edition share identical hardware, only differing in drive size (16 vs. 64GB), so I am assuming any ROM designed for the ville will work on my phone.
Assuming it will I should be able to edit the "updater-script" file, but when I extract it windows is telling me that 23 files are duplicates. I'm not sure if this is because its windows vs. Linux that I'm extracting it on?? In any case, I don't seem to be able to modify the file without adversely affecting the integrity of the archive. Also would assume replacing the file will affect the MD5 hash which I believe TWRP checks when loading the ROM?
So first off, can someone confirm that this ROM will be compatible with my phone and 2, any suggestions on modifying the updater-script file within the archive?
Update
I was able to modify the updater-script file tonight using file X-Plore and text edit, so now the script is looking for "villeplus" rather than ville. My phone is S-OFF which I read means that it does not do signature checks... however, I'm not sure if that also means it bypasses MD5 checksums - I suspect not since I'm pretty sure I saw it verifying MD5 previously. So, since I tampered with the ZIP it still may not work.
My real question now that remains is even if it will work, do I want to flash a ROM built for the ville to my villeplus. The more I read about custom ROMs the more it appears that they are extremely specific to models.
I am still extremely curious to try it... rumor has it that curiosity didn't work out so well for the cat though. :-/
merovingian_a51 said:
I was able to modify the updater-script file tonight using file X-Plore and text edit, so now the script is looking for "villeplus" rather than ville. My phone is S-OFF which I read means that it does not do signature checks... however, I'm not sure if that also means it bypasses MD5 checksums - I suspect not since I'm pretty sure I saw it verifying MD5 previously. So, since I tampered with the ZIP it still may not work.
My real question now that remains is even if it will work, do I want to flash a ROM built for the ville to my villeplus. The more I read about custom ROMs the more it appears that they are extremely specific to models.
I am still extremely curious to try it... rumor has it that curiosity didn't work out so well for the cat though. :-/
Click to expand...
Click to collapse
Unfortunately, i have to fully disappoint you.
The villeplus is having the exact same hardware as the ville. Theoretically ideal. Unfortunately, HTC decided to make it a "/data/media" device unlike its brother, the ville.
Explained: the Ville has a partition for the SDCard and its mounted with its own mountpoint, /sdcard.
The Villeplus has a partition for the SDCard too, but its mounted inside the /Data partition as /data/media. This means a lot of problems from every imaginable aspect.
I spend a week together with Torxx from ViperOneS to get Viper to run on it and we found out that a.) the Kernel needs to be adjusted and b.) some libs and etc. which is real dev work and which no dev in the OneS section has time for.
Later i spent another two weeks with Philz and mdmower trying to at least get recovery to mount the sh.it thing as USB, which turned out to be impossible at this time as it is only possible through the MTP protocoll, which no recovery supports as of yet.
Since i am a n00b myself i did not entirely understand the nature of the problem, but it seems to be very complex.
At some point i suggested to actually rewrite the partitions on the phones so they would work the same way as on the ville. I even tried myself and flashed a Ville RUU to my Villeplus (it works, doesnt break anything) but with the same effect as custom roms: my SD was then in Data/media and the internal apps memory and RAM were shifted to somewhere else with not enough space so the phone kept running out of space and crashed often. Also all system components trying to access stuff on the SD failed to find their stuff and crashed.
Since we don't actually have means to change the chip controller programming so it offers the partitions differently to the ROM we cannot go that way either (Zarboz tried to explain it to me but i failed understanding it, somehow the device pathes are put into the actual chip and not part of any RUU, so to change them one would need to have some special software tool like we could have done on the HD2 back then).
The only viable way would be to adjust ROM modules and Kernel to this structure, which won't happen as no dev has this device and there are like maybe 5 active users here.
You are out of luck my friend. Sorry. I too was full of hope and gave it up when all devs i contacted signalled that there is no benefit for them and they wouldn't waste their time basically.
Sneakyghost said:
Unfortunately, i have to fully disappoint you.
The villeplus is having the exact same hardware as the ville. Theoretically ideal. Unfortunately, HTC decided to make it a "/data/media" device unlike its brother, the ville.
Explained: the Ville has a partition for the SDCard and its mounted with its own mountpoint, /sdcard.
The Villeplus has a partition for the SDCard too, but its mounted inside the /Data partition as /data/media. This means a lot of problems from every imaginable aspect.
I spend a week together with Torxx from ViperOneS to get Viper to run on it and we found out that a.) the Kernel needs to be adjusted and b.) some libs and etc. which is real dev work and which no dev in the OneS section has time for.
Later i spent another two weeks with Philz and mdmower trying to at least get recovery to mount the sh.it thing as USB, which turned out to be impossible at this time as it is only possible through the MTP protocoll, which no recovery supports as of yet.
Since i am a n00b myself i did not entirely understand the nature of the problem, but it seems to be very complex.
At some point i suggested to actually rewrite the partitions on the phones so they would work the same way as on the ville. I even tried myself and flashed a Ville RUU to my Villeplus (it works, doesnt break anything) but with the same effect as custom roms: my SD was then in Data/media and the internal apps memory and RAM were shifted to somewhere else with not enough space so the phone kept running out of space and crashed often. Also all system components trying to access stuff on the SD failed to find their stuff and crashed.
Since we don't actually have means to change the chip controller programming so it offers the partitions differently to the ROM we cannot go that way either (Zarboz tried to explain it to me but i failed understanding it, somehow the device pathes are put into the actual chip and not part of any RUU, so to change them one would need to have some special software tool like we could have done on the HD2 back then).
The only viable way would be to adjust ROM modules and Kernel to this structure, which won't happen as no dev has this device and there are like maybe 5 active users here.
You are out of luck my friend. Sorry. I too was full of hope and gave it up when all devs i contacted signalled that there is no benefit for them and they wouldn't waste their time basically.
Click to expand...
Click to collapse
Wow, Sneakyghost, I can't thank you enough for your prompt (I just PM'd him last night folks) and very thorough response.
I'm wondering why HTC did this - thinking maybe to prevent/protect users from tampering with the device - perhaps other ROMs wouldn't run on it in a stable fashion.. or they just don't want people messing with custom ROMs. Perhaps this was a new architecture for them (wondering if the One and One X followed this same design?).
In any case, looks like I'll be sticking to looking at launchers and custom widgets. I'm actually quite happy with 4.1.1 and Sense (maybe because I'm new to Android, not sure), I mainly wanted to try experiment with custom ROMs, and learn about how all this stuff works. At least till the M4 comes out anyways..
Thanks again so much for your response, it is much appreciated and well explained.
Sneakyghost said:
... Unfortunately, HTC decided to make it a "/data/media" device unlike its brother, the ville.
Click to expand...
Click to collapse
Oh the irony, the (unreleased) 4.2 update for ville actually reformats partitions for data media. I don't think the update will ever be officially available to US users, but it is funny nonetheless.
This, my friend, is indeed ironic, if not even sad.
Considering what it means, I come to understand that porting ROM's from Ville to Villeplus would have gotten much easier then. Only that it is too late.
Torxx and I gave up due to the amount of work attached to the previous system structures, but if the Ville turns into a datamedia device with that update, many ROM devs and chefs would have to deal with it plus HTC would have done the most difficult part already anyway...
What a shame that this comes so late now and doesn't even get released probably...
mobile post