assembly program + avrdude gui + duemilanove

Ok, "don't trust" may have been overly strong language. I don't like GUI's like this because you can't see what they're doing. When the OP said "it uploads fine from Arduino, but not with the avrdude GUI", my immediate reaction is compare the command used by arduino (as shown by setting the "verbose" option in preferences) with the command used the avrdude standalone. Which is DOEN'T SHOW YOU. grr.

The beauty of using the commandline is that there is nothing hidden.

That's a better way of putting it!