I am not convinced it is a hardware problem. It is possible say if you chainload a newer version of Grub by an older version of it, or the other way round, Grub could misbehave. Also if Grub has not been installed properly or corrupted then this type of error can occur.
In your case the information confirms that there are indeed two menu.lst, one in (hd0,5) and the other in (hd0,8). This is evidence that there are two Linux installations with Grub as their boot loader.
I suggest you boot the system in (hd0,8) as follow
(1) While in the Grub prompt ask Grub to display the menu.lst in (hd0,8)
Code:
root (hd0,8)
cat /boot/grub/menu.lst
(2) You then read the "kernel" and "initrd" statements and type them, one line at a time, at the terminal. Forget the inird statement if there isn't one as the latest Ubuntu may have done away with the initrd.
(3) When done add this command to fire it up
If the same error persists you can boot the system up with another Grub sourced say using a Live CD from here.
Let us know your progress. Also report any line Grub doesn't like.