atmega328p bootloading error: Starting Program Mode - Failed, result = 0x0 tip

Hi,
just thought i'd share this finding. If encountering this error "Starting Program Mode - Failed, result = 0x0" when trying to run through the instructions at:
http://3g1l.com/blog-burn-bootloader-blank-atmega328atmega328p-arduino-uno

just add add a 16mhz crystal or 8mhz crystal to pins 7 & 8 of the atmega328p. for some reason it worked with 16mhz on first try to burn a bootloader, but on second try i was getting that error message. thats when i tried an 8mhz crystal and to my surprise worked out fine.

below serial msg from using 8mhz crystal:
OptiLoader Bootstrap programmer.
2011 by Bill Westfield (WestfW)

Target power on! ...
Starting Program Mode [OK]

Reading signature:950F
Searching for image...
Found "optiboot_atmega328.hex" for atmega328P
Start address at 7E00
Total bytes read: 502

Setting fuses for programming
Lock: 3F ABE000 Low: FF ABA000 High: DE ABA800 Ext: 5 ABA400

Programming bootloader: 512 bytes at 0x3F00
Commit Page: 3F00:4C3F00
Commit Page: 3F40:4C3F40
Commit Page: 3F80:4C3F80
Commit Page: 3FC0:4C3FC0

Restoring normal fuses
Lock: 2F ABE000

Target power OFF!

Type 'G' or hit RESET for next chip

What voltage is the ATmega328 running at? It might be that the voltage isn't high enough to reliably run on the 16MHz crystal.

atmega328p was connected to 5v from arduino uno board.