I tried editing the menu.lst file in order to dual-boot with Windows 7. I simply uncommented the Windows entry and added
map (hd0) (hd1)
man (hd1) (hd0)
according to the Arch Linux wiki. I rebooted and had a Grub menu with 3 options: Arch Linux, Arch Linux Recovery, Windows 7. Exactly as it should be. I selected Windows 7 and nothing happened. I hit Ctrl-Alt-Del and rebooted. Instead of grub, I got "Missing Operating System".
Using the Arch Live USB flash drive, I mounted the /boot/ partition (/dev/sda1) and discovered that I couldn't even get into the grub directory to look at or fix things. The output of cd /mnt/boot and ls -l is:
EXT2-fs (sda1): error: ext2_get_inode: unable to read inode block - inode=10041, block=41221
ls: cannot access grub: Input/output error
total 13667
d????????? ? ? ? ? ? grub
-rw-r--r-- 1 root root 8411722 May 2 19:37 kernel26-fallback.img
-rw-r--r-- 1 root root 1764873 May 2 19:37 kernel26.img
drwx------ 2 root root 12288 May 2 19:12 lost+found
-rw-r--r-- 1 root root 1545080 Apr 22 18:32 System.map26
-rw-r--r-- 1 root root 2198640 Apr 22 18:32 vmlinuz26
So something about trying to boot to Windows seems to have destroyed grub, after things were going so well. (NB: With the 2nd (Windows) drive attached but not represented in menu.lst, Arch worked fine, booted properly, could mount and read partitions on the other drive.)
I can't show you the menu.lst file because I can't see it. It had not been changed from the default except to uncomment the Windows entry and add the two lines given above.
Out put of fdisk -l:
Disk /dev/sdb: 1000.2 GB...
...
Device Boot Start End Blocks Id System
/dev/sdb1 1 5 40131 de Dell Utility
/dev/sdb2 6 1327 10614784 7 HPFS/NTFS
/dev/sdb3 * 1327 63517 499537920 7 HPFS/NTFS
/dev/sdb4 63517 121602 466567168 f W95 Ext'd (LBA)
/dev/sdb5 63517 121602 466566144 7 HPFS/NTFS
Warning: invalid flag 0x0000 of partition table 5 will be corrected by w(rite)
Disk /dev/sda: 1000.2 GB...
...
Device Boot Start End Blocks Id System
/dev/sda1 1 5 40131 6 FAT16
/dev/sda2 6 1327 10614784 7 HPFS/NTFS
/dev/sdb3 * 1327 63517 499537920 7 HPFS/NTFS
/dev/sdb4 63517 121602 466567168 f W95 Ext'd (LBA)
I notice that the partition information for sda1-4 are exactly the same as sdb1-4, which they should not be.
Also, I can't seem to mount anything from sda except /dev/sda1/, which contains the boot files and the unresponsive grub directory. If I do, I'm told mount: you must specify the filesystem type. If I specify -t ntfs, it fails and says it doesn't have a valid NTFS. If I specify -t ext4 (which is what it should be), it says it's the wrong fs type.
I can't think of any other details to include.