i'll explain the issues as i see them, on by one, before suggesting anything further.
first, the drive letter assignment is a bit funny - sda should be (hd0) in grub-speak, sdb should be (hd1) and so on. your device.map file is making it the reverse of how it should be (i.e. device.map should be normal, and your menu.lst should use hd0 throughout). that's the first "weird" bit
next is the partition table. ms-dos partition tables allow 4 partition tables: up to 4 primary partitions, and up to 1 extended partition, to a total of 4. inside the extended, you can have up to 12 logical partitions. one characteristic of the layout, is that it should be all primaries, THEN the extended. like this: P,P,P,E(L,L,L,L,L). yours is odd, because it's like this: P,E(L),P,P. it's possible the windows boot loader ntldr is getting confused by it. for example, here's my partition table:
The first partition is primary (NTFS), the second one is extended, then all the rest are logical - where logical partitions count from 5 onwards (the first 4 are the reserved numbers for the 4 primary).Code:/dev/sda1 * 1 3824 30716248+ 7 HPFS/NTFS /dev/sda2 3825 19457 125572072+ 5 Extended /dev/sda5 3825 3857 265041 83 Linux /dev/sda6 3858 4131 2200873+ 82 Linux swap / Solaris /dev/sda7 4132 19457 123106063+ 83 Linux
finally, your error message. if everything you've detailed is true, then the grub assignment for your windows drive SHOULD be, as it stands, (hd1,4) - this ought to correspond to /dev/sda5. See the message you get when grub tries to load it? "Filesystem type unknown, partition type 0x7"? that's not normal. grub is normally happy to use unrecognised file systems, as long as you don't ask it to read any files. for example, from mine:
No error, even though it's NTFS and unknown:Code:grub> root (hd0,0) root (hd0,0)
so far, the best suggestions we have as to why it's erroring are a dodgy partition (i.e. a disk resize went wonky), or SUSE has a weird modified version of grub which behaves in abnormal ways.Code:Partition num: 0, Filesystem type unknown, partition type 0x7
so. now what? i'd like one more command's output, before giving you instructions on getting a windows-only boot going again (which means you can try fixing grub again at a later date). open a terminal, switch to the root user using "su", then run "grub". if that gives an error, try "/usr/sbin/grub". you should get that command prompt you talked about earlier - here, type "geometry (hd1)". it should tell you what GRUB thinks your partition table looks like, not linux.