[APP][2.2+] DriveDroid - host ISO/IMG files to boot your PC from

Search This thread

FrozenCow

Senior Member
Aug 31, 2009
472
927
softwarebakery.com
@jpeg725 how did you make the kernel-only package like you did for smdk4412? I know how to build the full rom, but not to only include the kernel. Have you just deleted files from the zip?

That's what I did now. If that works, it should be compatible with latest nightly roms of CyanogenMod 10.1, so first install one of those and after that install this package.
http://softwarebakery.com/apps/drivedroid/files/kernel-with-cd-emulation_cm-10.1-20130630-d2.zip

Here's the full rom package: cm-10.1-20130630-UNOFFICIAL-d2att.zip (156.3 MB)
https://mega.co.nz/#!d0YXyYob!PMnPyD1_6ft0LZ2FOmcZKBwBBsthBHBVB0ak-RVAwfc
 
Last edited:
  • Like
Reactions: FlanjeUK

jpeg725

Senior Member
Oct 30, 2011
577
359
@jpeg725 how did you make the kernel-only package like you did for smdk4412? I know how to build the full rom, but not to only include the kernel. Have you just deleted files from the zip?

Your kernel only zip will delete the rom. It looks to me like you left the right files in, that is boot.img and system/lib/modules. But you left the updater-script as it was. You won't want the backup stuff nor the formatting stuff and the symlinking stuff isn't needed. The permissions stuff only needs doing on the modules directory. Something like this should do.

Code:
assert(getprop("ro.product.device") == "d2att" || getprop("ro.build.product") == "d2att");
assert(getprop("ro.bootloader") == "I747UCDLK3" ||
       getprop("ro.bootloader") == "I747MVLDLK4" ||
       getprop("ro.bootloader") == "I747MUMBLK3" ||
       getprop("ro.bootloader") == "I747MUMBLL1");
mount("ext4", "EMMC", "/dev/block/mmcblk0p14", "/system");
package_extract_dir("system", "/system");
set_perm_recursive(0, 0, 0755, 0644, "/system/lib/modules");
package_extract_file("boot.img", "/dev/block/mmcblk0p7");
unmount("/system");


---------- Post added at 05:46 PM ---------- Previous post was at 05:37 PM ----------

Oh and as for building, I built the full rom every time. But I didn't often make clean. I think the build system is clever enough to rebuild the bits whose source code has changed.

However to be sure, I did browse through the out/target directory and delete anything that looked like it had anything to do with the kernel. obj/KERNEL_OBJ, zImage, boot.img and stuff like that.

That way it rebuilds the bits it can't find and packages everything up again - much faster than building the whole caboodle. If you do that the build date won't change even if the repo has been synced, but that doesn't really matter.
 

FrozenCow

Senior Member
Aug 31, 2009
472
927
softwarebakery.com
Your kernel only zip will delete the rom. It looks to me like you left the right files in, that is boot.img and system/lib/modules. But you left the updater-script as it was. You won't want the backup stuff nor the formatting stuff and the symlinking stuff isn't needed. The permissions stuff only needs doing on the modules directory. Something like this should do.

Code:
assert(getprop("ro.product.device") == "d2att" || getprop("ro.build.product") == "d2att");
assert(getprop("ro.bootloader") == "I747UCDLK3" ||
       getprop("ro.bootloader") == "I747MVLDLK4" ||
       getprop("ro.bootloader") == "I747MUMBLK3" ||
       getprop("ro.bootloader") == "I747MUMBLL1");
mount("ext4", "EMMC", "/dev/block/mmcblk0p14", "/system");
package_extract_dir("system", "/system");
set_perm_recursive(0, 0, 0755, 0644, "/system/lib/modules");
package_extract_file("boot.img", "/dev/block/mmcblk0p7");
unmount("/system");


---------- Post added at 05:46 PM ---------- Previous post was at 05:37 PM ----------

Oh and as for building, I built the full rom every time. But I didn't often make clean. I think the build system is clever enough to rebuild the bits whose source code has changed.

However to be sure, I did browse through the out/target directory and delete anything that looked like it had anything to do with the kernel. obj/KERNEL_OBJ, zImage, boot.img and stuff like that.

That way it rebuilds the bits it can't find and packages everything up again - much faster than building the whole caboodle. If you do that the build date won't change even if the repo has been synced, but that doesn't really matter.

Thanks! It's now updated and should be good. Also added the other d2 devices in the assert like the updater-script in your zip had.
I was hoping there was a command/script in CM that would build the kernel and create such a package, like brunch. I had a script for my phone to just compile the kernel, but that was without packaging.
In any case I think I understand how the zip works now, pretty cool.

The zip can be found at the same location: http://softwarebakery.com/apps/drive...0130630-d2.zip
 
Last edited:
  • Like
Reactions: FlanjeUK

FrozenCow

Senior Member
Aug 31, 2009
472
927
softwarebakery.com
Do not know if we can request but it would be great if http://www.ultimatebootcd.com/download.html could be made compatible and a download link provided? I do not have rom support so it need to be in a format like .img or the iso format that is supported without any cd support. Thanks.

You can convert syslinux based ISOs with isohybrid if you're using Linux:

Code:
$ isohybrid ubcd525.iso

I've done this with ubcd525.iso and I'm uploading the result. Uploading takes quite a bit, but it should be up in an hour or so.
EDIT: Here you go:
ubcd525.iso (522.0 MB)
https://mega.co.nz/#!o9ZjQSgY!X2ChbGyehQwAcsZo0egTjnTXhj9hyvJjIHih67qlSQ8
 
Last edited:
  • Like
Reactions: FlanjeUK

jpeg725

Senior Member
Oct 30, 2011
577
359
isohybrid.arm

For what it is worth, here is an arm build of isohybrid. I couldn't figure out how to cross-compile the uuid library so I commented out all the efi and mac stuff in there. I also pulled in the mbr data from the relevant file to have just one simple file to compile.

I don't know what level of arm support it needs but it works for me on my S2. In the zip you will find the sources and the compiled file.
 

Attachments

  • isohybrid.zip
    318.9 KB · Views: 23

FrozenCow

Senior Member
Aug 31, 2009
472
927
softwarebakery.com
For what it is worth, here is an arm build of isohybrid. I couldn't figure out how to cross-compile the uuid library so I commented out all the efi and mac stuff in there. I also pulled in the mbr data from the relevant file to have just one simple file to compile.

I don't know what level of arm support it needs but it works for me on my S2. In the zip you will find the sources and the compiled file.

Oh nice! It works here too. I was always under the impression isohybrid was written in perl. I wonder when they changed that. Now I can integrate it nicely into DriveDroid... in a context-menu or automatically after downloading.

EDIT: Ok, since I wanted to build it myself and to have Mac support, I tried to use the original source code to build isohybrid. This is the result: https://github.com/FrozenCow/isohybrid-android
 
Last edited:
  • Like
Reactions: FlanjeUK

xda163fm

Senior Member
Nov 22, 2010
85
21
You can convert syslinux based ISOs with isohybrid if you're using Linux:

Code:
$ isohybrid ubcd525.iso

I've done this with ubcd525.iso and I'm uploading the result. Uploading takes quite a bit, but it should be up in an hour or so.
EDIT: Here you go:
ubcd525.iso (522.0 MB)
https://mega.co.nz/#!o9ZjQSgY!X2ChbGyehQwAcsZo0egTjnTXhj9hyvJjIHih67qlSQ8

Thanks it boots to the ubcd menu but the few items i have tried cause kernel panics. Must be my old machine or is anyone else having trouble after it is has been converted?
 

FrozenCow

Senior Member
Aug 31, 2009
472
927
softwarebakery.com
Thanks it boots to the ubcd menu but the few items i have tried cause kernel panics. Must be my old machine or is anyone else having trouble after it is has been converted?

Hmm indeed some tools do not work. I only tried to boot freedos and memtest86+ from it, since I knew those would work on my laptop. I guess to make everything work you'd have to follow their guide on how to make a ubcd memory stick: http://www.ultimatebootcd.com/customize.html
 

jpeg725

Senior Member
Oct 30, 2011
577
359
Thanks it boots to the ubcd menu but the few items i have tried cause kernel panics. Must be my old machine or is anyone else having trouble after it is has been converted?

I did have similar problems with Hirens boot cd on an old hp laptop, luckily they propose an alternative Grub4Dos boot menu which worked for me.
 

FrozenCow

Senior Member
Aug 31, 2009
472
927
softwarebakery.com
None of the tools work for me =D, did u read my support email?
Yes, I replied 4 days ago, but maybe you're refering to another email?

I did have similar problems with Hirens boot cd on an old hp laptop, luckily they propose an alternative Grub4Dos boot menu which worked for me.
Yes, I can imagine keeping all those different tools looking at the same USB disk (instead of a CD) can be a challenge. Strangly enough my laptop works quite alright with it (FreeDOS and MiniXP).

---

Apart from that, I've submitted the CD-rom switching patch to CyanogenMods d2 kernel. You can find it here: http://review.cyanogenmod.org/#/c/45105/
Once it is accepted, it'll allow the following devices to switch between CD-rom and USB:
Samsung Galaxy S III (AT&T)
Samsung Galaxy S III (Cricket)
Samsung Galaxy S III (Metro PCS)
Samsung Galaxy S III (Sprint)
Samsung Galaxy S III (T-Mobile)
Samsung Galaxy S III (US Cellular)
Samsung Galaxy S III (Verizon)

CD-rom emulation should already be fixed on these devices, so I haven't applied the other patch.
 
Last edited:

k1llacanon

Senior Member
Jun 3, 2012
1,268
177
I'm talking about email, not XDA's private messages ;) They are replies to the support email you send through DriveDroid.

Oh god knows lol I checked my Gmail no message I don't know what email I sent it on lol anyway doesn't matter =)

Sent from my HTC One S using xda app-developers app
 

FrozenCow

Senior Member
Aug 31, 2009
472
927
softwarebakery.com
For anyone interested in installing Windows, UBCD, Hirens or whatever, I've found a new tool for Windows that works easy, fast and is opensource, called Rufus. I've written another tutorial on how to use it with DriveDroid (though it doesn't differ much from the other tutorials):
http://softwarebakery.com/using-rufus-to-create-bootable-usb-images
 
Last edited:

the_mentor

Senior Member
Jul 11, 2010
224
59

Zoot Allures

Senior Member
Jul 17, 2011
267
77
Hi Frozen Cow,

Thanks to the others keeping up the testing with you.

For anyone interested in installing Windows, UBCD, Hirens or whatever, I've found a new tool for Windows that works easy, fast and is opensource, called Rufus. I've written another tutorial on how to use it with DriveDroid (though it doesn't differ much from the other tutorials):
http://softwarebakery.com/using-rufus-to-create-bootable-usb-images
Since it has GPT support, Rufus could help macusers (official or hackintosh) too. I don't have an Apple rig anymore but it should work.

Last week, I was visiting a friend who own a 21.5" Intel iMac, I hopped it'd boot even on Hiren, no dice, needing place on my phone, I hadn't my Windows Seven disc image. Then, my GS4 LTE didn't even mount on the desktop, even back in MTP but we lacked time to investigate why.

I'll ask my friend's son to try later with my former GS3 I gave to him, leaving it with many links to XDA to deal with his new device. Since he's actually studying development, it can be helpful to everyone.
 

FrozenCow

Senior Member
Aug 31, 2009
472
927
softwarebakery.com
Hi Frozen Cow,

Thanks to the others keeping up the testing with you.


Since it has GPT support, Rufus could help macusers (official or hackintosh) too. I don't have an Apple rig anymore but it should work.

Last week, I was visiting a friend who own a 21.5" Intel iMac, I hopped it'd boot even on Hiren, no dice, needing place on my phone, I hadn't my Windows Seven disc image. Then, my GS4 LTE didn't even mount on the desktop, even back in MTP but we lacked time to investigate why.

I'll ask my friend's son to try later with my former GS3 I gave to him, leaving it with many links to XDA to deal with his new device. Since he's actually studying development, it can be helpful to everyone.

Since Mac OSX only supports UEFI booting, this might be of help. I switched to a new PC some months ago and wanted to use UEFI booting on it. My PC did not recognize most of the hybrid ISOs as UEFI-compatible disks. I needed to format the disk with MBR+FAT32 and copy all the files from the ISO to the FAT32 partition. GPT should've worked too, but MBR worked also fine.
I'm not entirely sure how different Mac OSX works in this regard. I tried a Macbook Pro a few days ago and the hybrid ISO of ArchLinux seemed to be recognized, other images that I tried were not recognized. I think the image of ArchLinux does not have a GPT layout (since it already has MBR *and* ISO format... I'm not sure how sane adding GPT on top of it is for them, seems like madness ;)). So, I think Mac OSX should also be able to recognize MBR with a FAT partition. Just be sure the FAT partition has a EFI directory in its root with an EFI file in it.

Anyway, I was working on the test-image of DriveDroid a few days ago and added EFI support (so that people using Mac OSX can also test whether their phone actually allows them to boot). I tried it in an emulator and that all seemed to work. My PC also seems to recognize the EFI stuff (it just seems to exit immediately when booting though). I'd like to know whether this image does actually work on Mac OSX machines. If you or anyone else can, it would be great this was tested on a actual Mac OSX machine. You can get the image here:
http://softwarebakery.com/apps/drivedroid/files/drivedroid.img
 

Top Liked Posts