grub will not always see the drives in the same order as the BIOS -particularly if the BIOS has the option to change the boot-order. fdisk will almost never see the drives in the right order -blkid may do better... There is also the 'fbinst' utility for installing grub/grub4dos which may provide useful (but also sometimes misleading) info. Also, the grub *CLI program* will not alway see the drives in the same order as the stage1 (or grldr) sees them. Quite commonly, the grub program will see drives which the stage1 cannot see -since the program has access to the linux kernels' view of the hard-drives and the kernel is able to see things which the BIOS does *not*.
In short, there seems to be *no* way of accurately determining the BIOS boot-order.
I recently ran across a utility developed for ubuntu called boot_info_script which does a pretty complete analysis of all MBR'S found and even points out the location of the menu.lst and stage2 of any stage1 found. I've been hacking on it -or better said, incorporating some of the tricks into a similar script I've been working on for a long while.