muuuy facil
pero antes de nada un poco de clase:
un disco duro para arrancar necesita el Sector de arranque, en el cual se escribe el sistema operativo q contiene el disco y donde, y aparte tiene q tener la opcion de "arrancable" un modo esencial para que la bios intente leer el disco a la hora de iniciar.
tu duda:
porque te arranca con el megabootcd bien y sin el (osea con el disco duro) no?
pues porque al arrancar, tu le dices desde donde quieres q arranque, en tu caso desde el cd, y como este cd tiene su propio sector de arranque con sus propias instrucciones te arranca, y como te reconoce la instalacion de windows, si le dices q arranque el windows, te lo hace sin problemas.
solucion?
claro, recuperar el mbr con windows xp, no es dificil, arranca con el megacd ese, seleciona windows, googlea un poquito q hay comandos como fixmbr y derivados q te arreglan el sector de arranque.
porque no te doy los comandos aqui?
1- porque no me acuerdo de cuales son
2- porque yo uso Linux, y no me da la gana de dar soporte a windows gratis.
en conclusion, espero q tu duda se haya quedado solucionada.