After doing a little digging it seems the FM/S version is a specific OEM board made for Fujitsu Siemens. The board is very different to the VM version in both layout and content.
The first difference that I notice is that they both use a different chipset. The FM/S uses the SiS 649DX/SiS 966 chipset, whereas the VM version uses the SIS 672+SIS 968
Even though the chipsets are the same make, and the model numbers are not far off, it's still safe to say that there will be differences internally within them that would make using the wrong BIOS a bad idea.
Another difference is in the audio chipset - same make (Realtek) but different chip numebrs.
So, don't let the similarity of the motherboard models fool you - these two boards are very different.
So that begs the question "Where do I go from here?"
Well, we need to start diagnosing the actual cause of the disk read/write failures. We know already that the disks are OK - that has been proved by running them in a difference computer. So that leaves either the cables or the motherboard.
The BIOS is only instrumental in controlling the hard drives until the operating system has loaded the SATA drivers. So what we can do is to try an operating system that runs off, for example, a CD-ROM and loads SATA drivers to try and see if the disk is still playing up.
I would personally recomment trying Ubuntu as it has all the drivers you need built in and has a handy fully featured live filesystem on the CD.
Just download the Ubuntu image from here and burn it to CD. Boot off the CD on the suspect system, and when it gives you the option, select the "Try Ubuntu" icon.
You will now have a fully functioning Linux desktop system for testing your hard drive.
First, open a Terminal window (Ubuntu menu, System tools, Terminal) and try a non-destructive read test of the hard drive:
$ dd if=/dev/sda of=/dev/zero
That will read the entire hard drive and tell you if there are any read errors (You don't get any progress displayed, and it will take a while - you might want to do this on a small drive)
If that gives you errors then we know that there must be a hardware fault. If it doesn't, then we need to take it a step further.
$ sudo mount -t ntfs /dev/sda1 /mnt
$ dd if=/dev/random of=/mnt/garbage.dat
That will fill the spare space on the hard drive up with garbage (in one big file called garbage.dat)
Again, it will not tell you how far it has got - it will just keep going until the disk is full, or it encounters an error.
If this passes cleanly then your original supposition that there may be a fault in the BIOS is now a possibility, but highly unlikely.
If it throws up errors (other than disk full) then again we know there is a hardware fault.
So, if it's not the disk and it's not the BIOS, but there is a definate fault there, what can we do?
Well, if you don't want to replace the motherboard, you could try adding a separate SATA controller to the motherboard in one of the PCI slots. Just a basic one (as long as it's bootable) is all you'd need.