[HD2 Android SD Development] Pop45398:
Documentation and Screenshots

RunDroid app v2.3.2 for HTC HD2 by Pop45398 (@ XDA Developers)

This app can start Android on an SD card automatically on boot-up or with a single tap, thus allowing for an easy dual boot to Android or Windows Mobile, and should be compatible with all versions run with CLRCAD/HaRET. It features a setup menu which allows for user customization including setting the timeout before the default OS is started, thus allowing time to access the setup menu or select a non-default OS. It is actually a MortScript and corresponding MortRunner with a custom icon. It may work on other WM6 devices.

CHANGES:

Version 2.3.2 added a new subroutine to rename the Android folder back to its original name when “Enable Builds” is selected if RunDroid had renamed the folder to Android. This eliminates the folder being renamed to Android[1]. (Thanks to crazycranky!)

Version 2.3.1 features language/text customization. By editing RunDroid.ini with a text editor the user can now change all text for desired content and language (with exception of button text, i.e. Ok/Cancel, Yes/No). There is no longer a need to edit the script for non-English ROMs where the SD card is not called “Storage Card”, a directory tree will appear for the user to locate the SD card’s root.

Version 2.2.1 features some minor changes over v2.1.1. A StartUp shortcut is no longer used for auto-launching at boot-up, instead it is launched during the init process before StartUp programs, hence the elimination of creating and deleting shortcuts from the Setup Menu. A new option to Enable Sense has been added so that Sense can be easily re-enabled if somehow not properly re-enabled during script execution. A setup.dll is now used to run Install and Uninstall scripts.

Version 2.1.1 represents a major overhaul from version 1 and features the ability to boot to a basically unlimited number of Android builds and a guided setup that walks through the setup process on initial running. It will scan all folders in the SD card's root for Android builds, indicated by the presence of HaRET.exe. It asks whether to use each build then asks if it requires renaming the folder to Android in order to run (some builds don't require being in the Android folder). A .cab file is used for installation which is now in the RunDroid folder in the root of the device. The folder name is used for displaying the build's name in RunDroid, with one caveat: if there is more than one build and one of them is named Android, that folder will be renamed to Android[1] so that the selected build folder can be renamed to Android (which is renamed back to original when another build is selected), hence descriptive folder names should be used.

INSTALLATION:

Simply copy the .cab file to the SD card and run it with a file explorer to install. Version 2.3.1 MUST be installed to the device due to hard coded addresses required for auto-launching. This also eliminates the occasional possibility of the SD card not being initialized before RunDroid is started during boot-up. If during installation the SD card is not found by the default name “Storage Card” (usually due to a non-English ROM) a directory tree will appear for choosing the correct SD card root, not Android folder (see screenshots below for an example).

OPERATION:

Start RunDroid with the Start Menu icon. On initial running, a guided setup will walk through the settings. Menus are self-explanatory (see screenshots). Selection is done by double-tapping an entry or tapping once then tapping OK. Only the main (Boot Selection) menu is timed for auto-selecting. If auto-running at boot-up is NOT desired, select “Disable AutoStart” during initial setup or later from the Setup Menu. The Timeout Delay may be adjusted to suit the user and system (see ISSUES section below). Whenever another build is added or deleted, one is no longer desired to be run, or a folder name changed, Enable Builds must be selected from the setup menu which will once again walk through the setup of builds and default OS selection (but not other settings). Builds are displayed in alphabetical order and can only be rearranged by renaming folders, like by adding a number at the beginning of folder names.

ISSUES:

Startup programs, including HTC Sense and Notifications, etc, can briefly interfere with the ability to make selections, causing the default OS to be started before menu selections can be made. To combat this, if enabled and not already started, Sense is disabled then re-enabled on app exit. The Timeout can be adjusted to help with this. If the Timeout is set too low and selecting the Setup Menu or Boot to Windows is not possible, simply re-install the .cab. If unable to boot to Windows because Android starts before the menu appears, power off the device, remove the SD card, then power on the device; if not already at the menu, start RunDroid and go to the Setup Menu and adjust the Timeout to allow more time to access the menu, then power down and re-insert the SD card.

CUSTOMIZATION:

The user interface can be customized for text size, font type, language, and size of menu selection entries by editing RunDroid.ini with a (pure text) editor such as Notepad. Once RunDroid is installed, locate the .ini file in the RunDroid folder in the root of the device (not SD card) and open or copy to PC then open.

The following variables control the font and size of menu entries:

FontSize=23

EntryScale=1.3

FontType=Tahoma

Increase or decrease FontSize to make menu selection text larger or smaller. EntryScale controls the size of menu selections, larger size makes selections easier to make. The scale is in percentage of the font size, i.e. 1.3 equals 130% of the font size. To use a different FontType than Tahoma, the desired font must be installed on the device.

In addition to descriptive variable names, to make RunDroid.ini easier for editing text content and language certain conventions are used:

Variables containing “Sel” are for menu selection entries.

......WMsystemSel=Windows Mobile

Variables Containing “Hint” are for the text that appears in the upper portion. Note that “Setup Menu” is preceded by a period and several spaces. The spaces are to center the text; the period is required because leading spaces will otherwise be ignored and the text will begin on the left instead of centered.

......SetupMenuHint=. Setup Menu

Variables containing “Txt” are for messages and questions which pop-up in new windows.

......NoBuildsMessTxt=There were no Android builds using HaRET.exe found on this SD card.

Do not change the actual variable names, for example “TimeoutMessHint=”, only the text following the “=” sign as these names are hard coded into the script and the new text will not appear.

Editing prior to completing the initial setup is preferred. Once editing is complete, copy the modified file to \RunDroid, overwriting the original. A copy of the modified RunDroid.ini file should be saved somewhere besides \RunDroid because if RunDroid is reinstalled or a newer version installed the entire folder will be deleted along with the modified file. Once reinstalled, copy the modified file to \RunDroid before completing the initial setup.