There have been a few threads going back to 2001 where an AVRProg error says that at such and such address it expected 0x940c but got so and so. The number ox940c just happens to be the number at the first address location of the bootloader, but these folks aren't trying to download the bootloader. This pops up in the Butterfly a lot, but other threads have it on the ATmega16 and 32.
One definite cause is trying to download code larger than the space available so AVRProg attempts to write to the bootloader section which doesn't happen and when it goes to verfiy the write it sees that 0x940c where it expected whatever it was trying to write there.
But there are some folks who are getting this error when they are writing small programs which makes me suspect --
1. They have set something so that the AVRProg thinks it's got a larger program and trys to overwrite the boot section.
2. They have done something that makes their small program very large so the AVRProg is doing what it is told.
3. They have set something that tells AVRProg to alias the code start section of 0x0000 to the bootloader start section address of ?0x1c00? (I don't remember that address)
So they could be setting something wrong in the makefile or they could be setting something wrong in the compiler setup or it could be something simple that we are all missing.
Any other possibilities?
Any ideas of avenues to explore?