Unable to program ATmega128 - 16AU using USBasp
Pin 1 (nPEN) is supposed to be held low during power-on, so the SPI programming is possible. 

nPEN has internal pull-up, so grounding this pin during power-on is a must, otherwise you cannot program it with the USBasp. 

"PEN is a programming enable pin for the SPI Serial 
Programming mode, and is internally pulled
high . By holding this pin low during a Power-on
Reset, the device will enter the SPI Serial Programming mode. PEN
has no function during normal operation.
"

So you will need to remove the grounding on Pin 1 for normal start up behavior. 


You will also need to use the pins PE0 as MOSI, PE1 as MISO, and SCK as SCK. This is all described in the SPI Serial Programming section on page 300 in the datasheet for ATmega128.