I was upgrading to Fedora 16 on my Dell Dimension E520, originally loaded with XP, and all manners of problems occurred with Grub2. The machine is set to dual boot Linux and Windows XP and has worked fine in this capacity while testing and using a number of Linux distributions including Fedora 14 and Fedora 15.
After upgrading, it began by requiring that grub2-install needed to be run everytime I rebooted. By the time I really had a chance to look at it, updates rendered it foobar.
The error contained your core.img is unusually large, it won’t fit in the embedding area and is readily found here.
The Dell has a RAID controller and although the disk is not using it, Bugzilla #737508 applies. Essentially Grub2’s core image exceeds the 32KiB partition that was originally created. Maddening as it is trivialized in the bug report as unlikely to happen, although if you haven’t repartitioned the entire disk to get a more popular 1MiB BIOS boot partition, it will happen. The fix is straightforward, reduce the size of the following partition without sliding it forward, GParted on SystemRescueCD worked fine, and a larger BIOS boot partition will be allowed. Grub2 installs with no issues
NOTE: if you delete the next partition, and Windows follows it, you will not be able to boot Windows, nor load the Recovery CD, the boot.ini references a partition table that no longer matches and Windows drops the blue screen of death from a CD boot. The confusing %windows%/system32.hal.dll errors is provided off a hard disk boot. Simply add back a small EXT2 partition (assuming what you found was the small VFAT partition DELL installs with the machine) which has a smaller allowed size and everything will run just great.