I am really having a hard time getting ATmega328s to survive parallel port programming. I bought a couple a year ago and using the barest ppp, MOSI, SCLK and MISO tied directly to the parallel port thru 1k resistors, and they both failed with MISO, the chip output, going bad. I went back to PICs, I've NEVER had one fail even using the simplest of Tait type programmers on the parallel port. Well I decided to try Atmel and Arduino again and built the PPPD programmer from this web site http://www.aplomb.nl/TechStuff/PPPD/PPPD English.html
Which uses a 74HC244 buffer (I used an LS device since I have them and the 328 is spec'ed to supply up to 40 ma and LS TTL draws less than 10ma and the LED/1k resistor draws just over 3ma on pin 13). Since I am nearly broke, my job went to China, I bought three ATmega328s since three chips were cheaper than any one Arduino board.
I first just used avr-gcc to create a simple output pin square wave and set the fuses for low power oscillator and 16 Mhz crystal, 22 pf caps, etc. It worked fine. The I tried running the Blink example sketch and never got it to run. This is what I was trying to trouble shoot and the problem is posted in the Installation and Troubleshooting forum.
But, then avdude complained about not finding a chip and sure enough the oscilloscope showed no activity on the MISO line it just stays high. If you disconnect the MISO line from the programmer it drops to gnd and when avrdude is executed you do see pulses as it tries to reply, but they are less then 250mv in amplitude.