I am having dificulty programming an AT90S1200A using the ISP header on the STK500. Target is a surface mount chip on a separate board with an ISP header on it. I have analyzed the clock and data signals and noticed that the clock and data change at the same time. According to the Atmel spec data is clocked in on the rising edge of the clock, yet I clearly see the data changing on the same rising edge. It appears that there is a bug in the firmware on the STK500.
Note: chip can be successfully programmed using an older STK200 parallel port dongle.