It could be the HDD, if the HDD fails to spin up or be at a certain temp on boot it will not play ball. Once it reaches the correct speed/temp it will boot as nml. Which may be why once you have left the pc on for a while and hit reset that it boots. Have you got another pc that you swop bits around with?