Instead of selecting safe mode, try using the 'Last known good configuration' selection.
I had exactly the same problem, but I can't boot from CD as the drive is duff (dropped laptop 4 feet). The last known good config got it back first time.
If this gets it to boot up, run chkdisf /f to run a full disk check, also try running sfc.exe /scannow
chkdisk reports and tries to fix disk corruption, sfc restores system files that may be corrupt or overwritten with a incompatible version. For sfc, you may be required to put in the windows cdrom, or have access to service pack files.