Hi,
You could try to mount the vmdk file (C: so to speak) to another VM as secondary vmdk (SCSI0:1). Then boot (or rescan disks if hot-added) the other VM. Now you should see your "failing" boot drive as secondary disk on the other VM. You could investigate if the filesystem on that disk seems fine. That should hopefully give you some answer.
Furthermore, you can try to create a new VM, mimicking the failing VM, but you do not create a new disk, but use the "failing" disk instead. Try to boot that new VM. That should rule out any weird errors in the VM's config.
Visit my blog at http://www.vmdamentals.com