From my experience, this will be a difficult problem to resolve in a pleasant way and may have only one (unfortunate) solution. To cursively see if you have a hardware problem, try to boot from an emergency start-up disk (did you happen to make one? If not, you can easily make one from another...