Dual-booting has been fairly common in computing technology, where a computer system is been installed with two different operating systems, and user can choose which OS to start on system boot up. But dual-boot has never been a possible scenario for smartphone or mobile phone, where OS is tightly integrated with firmware in ROM, until a developer named yozgatg released Gen.Y DualBOOT, the dual boot solution for Windows Mobile devices with XDANDROID.

With Gen.Y DualBOOT, mobile devices can be easily booted into both Windows Mobile (WM or WinMo) or Android. Gen.Y DualBOOT works by launching itself at boot by creating and setting a registry key in [HKEY_LOCAL_MACHINE\init] that been triggered after shell gets initialized.

For Gen.Y DualBOOT to work correctly, the Windows Mobile PPC (Pocket PC) phone device must already installed with custom-built Android OS ROM (XDAndroid) at the root of the storage card (e.g. \Internal Storage\haret.exe or \Storage Card\haret.exe), where Haret is an emulation software purposely developed to run Android from within Windows Mobile. It also means that, if the mobile devices do not have a custom Android ROM with Haret from xda-developers, the dual-boot feature is not available. Besides, the dual-booting app must be installed on phone’s internal memory in order for autoboot to work. Installing the app on internal storage or storage card will cause the app does not launch at boot.

Follow the step-by-step hacking instructions below to get a dual-boot phone with Windows Mobile and Android:

  1. Download custom Android ROM cab files with Haret for supported WinMo device. Here’s a few xda-developers.com links for popular Windows Mobile devices where the CAB files and installation instructions can be found:

    Google Android for Topaz (Download links at post 4 for HTC Touch Diamond2 or AT&T Pure)
    Rhodium Android Port (Download links at post 3 for HTC Touch Pro2 or AT&T Tilt 2)
    Android Eclair 2.0.1 On Blackstone (HTC Touch HD)
    Android Eclair 2.0.1 for Raphael GSM (HTC Touch Pro, AT&T Fuze, XDA Serra or MDA Vario IV)
    Linux and Android for CDMA Diamond (DIAM500)

  2. Install the XDANDROID package by extracting the CAB or ZIP files to phone’s SD card or memory card, then run Haret to boot the Android.
  3. Download Gen.Y DualBOOT CAB file.
  4. Install Gen.Y DualBOOT to main memory.

    Note: There are various version of the app for QVGA, VGA and WVGA screen resolution. So make sure to select the correct file to install.

  5. Reboot the mobile device. A bootloader screen will be displayed on the device startup. There will be a delay of a few seconds, as the bootloader will only be loaded after core Windows Mobile files are loaded.

    If Gen.Y DualBOOT fails to load, manually run the app by going to /Program Files/Gen.Y folder, and launch dualBOOT.

On bootloader screen, Gen.Y DualBOOT provides several options such as AutoBoot, where enabling this mode will automatically boot the OS of your choice after a 10 second countdown (disabling autoboot will remove the countdown completely), and FastBoot where enabling this mode will automatically boot the OS of your choice after a 3 second countdown (requires AutoBoot to be enabled first). Of course, user can directly press on the Windows Mobile or Google Android manual launch button to override autoboot and launch Windows Mobile or Android.

Here’s a demo video by pocketnow.com showing how to install Gen.Y DualBOOT and how the dual-booting of Windows Mobile and Android works.