Gen.Y DualBOOT: Dual boot solution for Windows Mobile devices with XDANDROID
Before I start, I wanted to give my props to all android developers that made android possible on our devices: please support these guys: XDANDROID team (Diamond/Raphael/Blackstone..), Topaz Android Team & others that I might have missed
*Just to clear things up, this is only a bootlauncher app, u still need to install android for yourself on your device
Android on WM devices is getting more and more popular, especially with the latest developments, and it's almost ready for daily use. I wanted to have an app so we could easily boot into both WM & Android, and Gen.Y DualBOOT was the solution. This release is made for VGA devices, and supports booting Android both from Internal Storage (moviNAND, e.g. Touch Diamond) & Storage Card (SDMemory, e.g. Touch Pro). WVGA version and QVGA version is also ready. This app has been tested on WM6.1, but will work perfectly on WM6.5.x as well.
Keep in mind that your android setup must be installed already at the root of your storage card in order for this app to work correctly (e.g. \Internal Storage\haret.exe or \Storage Card\haret.exe respectively)
Here's a quick User Guide, showing the interface and what the buttons are for:
This app is launched by a registry key created in [HKEY_LOCAL_MACHINE\init], so it launches directly at boot after shell gets initialized.
Chefs: If u are going to cook this app into your ROM, make sure that this key gets added DURING your customization procedure (and not before!)
There are 2 checkboxes, enabling automatic boot:
AutoBoot: enabling this mode will automatically boot the OS of your choice after a 10 second countdown
> disabling autoboot will remove the countdown completely
FastBoot: enabling this mode will automatically boot the OS of your choice after a 3 second countdown (requires AutoBoot to be enabled first)
Now apart from these 2 checkboxes, u have 2 radiobuttons, which allow u to choose which OS gets automatically booted.
And last but not least, u have the 2 manual launch buttons. Pressing these buttons will directly launch (overriding autoboot) Windows Mobile or Android.
Gen.Y DualBOOT checks for 5 registry keys, which allow some form of customiation. Apart from the last key (StorageBootMode), all keys can be modified utilizing the radio & check buttons in the GUI. All of these keys can be found in:
Here's quick list describing what the keys are for
- "AutoBootEnabled"=dword:1 (1: enable autoboot | 0: disable autoboot)
- "FastBootEnabled"=dword:0 (1: enable fastboot | 0: disable fastboot)
- "AutoBootAndroid"=dword:1 (1: boot Android | 0: boot Windows)
- "StorageBootMode"=dword:0 (1: boot from Storage Card (SDMemory) | 0: boot from Internal Storage (moviNAND))
- v22.214.171.124 and newer: "AndroidBootFolder"="string" ("": boot from root of storage (e.g. \Storage Card\haret.exe)| "andboot": boot from \Storage Card\Andboot\haret.exe, string can be edited in registry)
- v126.96.36.199 and older: "AndroidBootFolder"=dword:0 (1: boot from \Android\ folder on storage (e.g. \Storage Card\Android\haret.exe)| 0: boot from root of storage)
The example values are the ones that are in the CAB for Internal Storage devices.
- Complete boot processes control
- Slight GUI redesign
- Config app in WM & Android
v188.8.131.52 - Added flexible android boot folder option > Set boot folder by entering the desired folder string to the "AndroidBootFolder" key in the registry v184.108.40.206 - Minor code adjustments > No longer requires seperate .MUI file - Added program icon (+ WM6.5 png icon) - Added shortcut to Start Menu > Programs v220.127.116.11 - Re-checked code, now working perfectly v1.04 - Fixed bug with autoboot being disabled on boot if android was missing - Fixed bug with manual Android launch only working if AutoBoot set to Android v1.03 - Added new registry key to allow booting from \Android\ folder on memory card - Added checking for haret.exe before enabling the android boot option > if the android button is disabled, u can re-enable it (after disabling usb mass storage mode, or inserting the sd card that contains the android setup) simply by pressing the disabled android icon - QVGA layout fixed v1.02 - Signed .exe file with SDKCerts - Fixed boot problems by moving genyboot to Launch62 in HKLM\init > Now boots even on stock ROMs! v1.01 - Fixed registry issues v1.00 - Initial Release
The source of Gen.Y DualBOOT (and also DualSWITCH, a tool to switch between AT&T and normal Touch Pro keyboards in android) has been released.
This is for developers only. The source has been compiled in Basic4ppc.
Gen.Y DualBOOT Source
Download the attached cabs or simply click the link below to download all resolutions in one zip package
There are 5 versions available:
- QVGA, boot from Storage Card (e.g. Vogue, Kaiser,..)
- WQVGA, boot from Storage Card
- VGA, boot from Internal Storage (e.g. Diamond)
- VGA, boot from Storage Card (e.g. Raphael)
- WVGA, boot from Storage Card (e.g. Blackstone, Topaz, Xperia,..)
Gen.Y DualBOOT v18.104.22.168 CABs (QVGA|WQVGA|VGA|WVGA)
Gen.Y DualBOOT v22.214.171.124 VisualKitchen EXT packages for Chefs (QVGA|WQVGA|VGA|WVGA)
This app MUST be installed on your internal memory in order for autoboot to work. (installing on internal storage/storage card will cause the app not to launch on boot)
Also make sure that all registry entries are correct, since an incorrect/missing registry key can cause errors (v126.96.36.199: make sure the AndroidBootFolder key is a STRING (not dword!)
For chefs: if u are also cooking in RunCC, cooking this app to the \Windows folder is recommended to save storage space (since the progress image are the same)
For chefs: u can make Gen.Y DualBOOT start faster by moving editing the following (be aware, this will not work in all roms!). Open mxipupdate_xdandroid-genyboot_100.provxml, and change "Launch62" to "Launch52" in the following line:
<parm name="Launch62" value="genyboot.exe" datatype="string"/>
GT inspired Skins by sk8inmonk
ElCondor has made a nice Android Theme for Gen.Y DualBOOT, you can find it in this thread
I would like to express my thanks to all of you who have provided me with feedback, bug reports and donations.
This app wouldn't have been the same without you.