[Nook Color Android Development] rookie1:
[This method is now obsolete. I've created flashable zips for setting up dual boot. And flashable dual boot Nookie Froyo and Honeycomb ROMs. See my other post.]

I've successfully dual boot B&N stock eclair and nookie froyo, both from internal eMMC. Here are the steps to use my script,

1. Download attached dualboot.zip. Create a folder called 'dualboot' on your NC's SD card. Unzip dualboot.zip into this folder.

2. Download Nookie Froyo 5.9 base image from http://edencomputing.com/nookcolor/nookie-froyo-base-0.5.9.tar.gz and copy into the same 'dualboot' folder on SD.

3. Check you have these 3 files in SD's 'dualboot' folder,

dual-boot-files.tar.gz

dual-boot.sh

nookie-froyo-base-0.5.9.tar.gz

4. Make sure /sdcard and /media are mounted in NC. If they are visible on your host PC, umount if you are running Linux, or 'safely remove' if you are on Windows, or 'eject' in Mac.

5. From your host PC, run 'adb shell' to go into your NC.

6. At adb shell, run the following commands.

cd /sdcard/dualboot

busybox sh dual-boot.sh

7. After a few minutes and a lot of messages scrolling by, you should see a message says ">>>>>>>>>>>>>>>>>>>>Done". At this point, you can reboot the NC. Normal boot will go to stock eclair. Hold 'n' button during boot to go to froyo.

p.s. I've also modified the recovery boot keycombo (stock is Power + n) in u-boot.bin. Hold both Vol+ and Vol- during boot to go into recovery. Keep holding them till you are in recovery, no need to worry about how long to hold.

If you want to remove dual boot

1. follow steps in this post http://xdaforums.com/showpost.php?p=11001928&postcount=66 to restore media partition to stock configuration. Note you need to make your own backup of media partition before trying this.

2. follow steps in this post http://xdaforums.com/showpost.php?p=11014734&postcount=88 to restore stock u-boot.

Original steps kept below if you are interested to know what the script does

Here is how I have done it,

1. In stock rom partition 8 of internal eMMC is mounted as media. We can use a partition tool to shrink this partition to make enough room to create 2 more partitions, 1 for froyo system partition (mmcblk0p9) and 1 for froyo data partition (mmcblk0p10). The partition tool I used is GNU parted which comes with Koush's clockwork mod. You can download a pre-compiled copy from his git tree. It can be run on the NC itself.

2. Copy all files from nookie froyo's system partition into mmcblk0p9, and data into mmcblk0p10.

2. Copy nookie froyo's uImage into mmcblk0p1. The file name should be changed to uFImg, so that it can co-exist with stock eclair's uImage on the same partition.

3. Modify nookie froyo's init.rc in the ramdisk, to mount mmcblk0p9 as system, and mmcblk0p10 as data. Pack the ramdisk image, and copy into mmcblk0p1 as uFRam. Again we use a different name so it can co-exist with stock eclair's uRamdisk.

4. I've modified B&N's u-boot tool to detect whether 'N' button is pressed during boot. If it's pressed, boot using uFImg and uFRam. Otherwise boot using stock uImage and uRamdisk. Attached is my modified u-boot. Copy the u-boot.bin into mmcblk0p1 to overwrite stock u-boot.bin.

With this setup, if no button is touched during boot, NC will boot into stock eclair. If you hold 'N' button during boot, it will boot into nookie froyo.

One problem I've found is with the modified partition layout, when booting into stock eclair, media partition does not get automatically mounted. But I'm able to manually mount it.

Played around with the partition layout a bit. It seems if media (partition 8) is at the end of eMMC, it will be automounted in stock eclair. So my final partition layout looks like this,

Model: MMC SEM08G (sd/mmc)
Disk /dev/block/mmcblk0: 7944MB
Sector size (logical/physical): 512B/512B
Partition Table: msdos

Number Start End Size Type File system Flags
1 32.3kB 74.0MB 74.0MB primary fat32 boot, lba
2 74.0MB 148MB 74.0MB primary fat32 lba
3 148MB 461MB 313MB primary ext2
4 461MB 7691MB 7230MB extended
5 461MB 938MB 477MB logical ext2
6 938MB 1941MB 1003MB logical ext3
7 1941MB 2311MB 370MB logical ext3
9 2311MB 2681MB 370MB logical ext2
10 2681MB 3692MB 1011MB logical ext3
8 3692MB 7691MB 3999MB logical fat32 lba

< standard disclaimers - I'm not responsible for whatever damage you did to your NC >