Can't upload, "programmer is not responding"

I just tried uploading a new sketch to my Arduino, and I got the errors:

Binary sketch size: 5138 bytes (of a 14336 byte maximum)
hardware/tools/avrdude -Chardware/tools/avrdude.conf -v -v -v -v -pm168 -cstk500v1 -P/dev/ttyS0 -b19200 -D -Uflash:w:/home/alex/arduino/morse_code/applet/morse_code.hex:i 


avrdude: Version 5.4-arduino, compiled on Oct 22 2007 at 13:15:12
         Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/

         System wide configuration file is "hardware/tools/avrdude.conf"
         User configuration file is "/home/alex/.avrduderc"
         User configuration file does not exist or is not a regular file, skipping

         Using Port            : /dev/ttyS0
         Using Programmer      : stk500v1
         Overriding Baud Rate  : 19200
avrdude: Send: 0 [30]   [20] 
avrdude: Send: 0 [30]   [20] 
avrdude: Send: 0 [30]   [20] 
avrdude: ser_recv(): programmer is not responding
avrdude: stk500_recv(): programmer is not responding
avrdude: Send: Q [51]   [20] 
avrdude: ser_recv(): programmer is not responding
avrdude: stk500_recv(): programmer is not responding

Neither the TX or RX LEDs light up, but the pin 13 LED does blink once (which indicates the bootloader staring, right?), and the power LED is on. It's not touching anything that could conduct electricity, and the proper port is selected in the IDE. There isn't anything plugged into it (other than the USB). It's a Diecimila, and I'm running Arch Linux. Right before this happened the Arduino was reading stuff from Serial.read(), then outputting stuff with Serial.println ().

Can anyone tell me what's up?

e: Also, when I first plug it in the TX and RX LEDs flicker for a moment. I'm trying it on another computer now, I'll let you know what happens.

e2: I just tried it on another computer running Windows XP and I got these errors:

Binary sketch size: 1096 bytes (of a 14336 byte maximum)

C:\arduino-0011\hardware/tools/avr/bin/avrdude -CC:\arduino-0011\hardware/tools/avr/etc/avrdude.conf -v -v -v -v -pm168 -cstk500v1 -P\\.\COM4 -b19200 -D -Uflash:w:C:\arduino-0011\examples\Digital\Blink\applet\Blink.hex:i 



avrdude: Version 5.4-arduino, compiled on Oct 11 2007 at 19:12:32
         Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/

         System wide configuration file is "C:\arduino-0011\hardware/tools/avr/etc/avrdude.conf"

         Using Port            : \\.\COM4
         Using Programmer      : stk500v1
         Overriding Baud Rate  : 19200
avrdude: ser_open(): setting dtr
avrdude: Send: 0 [30]   [20] 
avrdude: Send: 0 [30]   [20] 
avrdude: Send: 0 [30]   [20] 
avrdude: Recv: 
avrdude: stk500_getsync(): not in sync: resp=0x30
avrdude: Send: Q [51]   [20] 
avrdude: Recv: 
avrdude: stk500_disable(): protocol error, expect=0x14, resp=0x51

avrdude done.  Thank you.

Thanks.

It looks like the Arduino isn't replying at all. When you tried it on Windows did the RX or TX LEDs blink when you pressed upload? Have you gotten other Arduino boards to work on that Windows machine?

On Linux, is your board supposed to be on /dev/ttyS0? (I have the impression that's usually used for actual serial ports, but I'm guessing that's not the case here.)

Does the previous program you uploaded still seem to be running?

The program didn't do anything without input from the Serial monitor in the IDE, and so I don't know if there's a problem communicating with the Arduino and the program is running fine or if the program also isn't running.

Wait, it's working! I don't know what happened, but when I went where the board was under Tools -> Serial Port, /dev/ttyUSB0 was unchecked. I checked it and tried uploading the sketch again, and it worked!

FYI, after it worked /dev/ttyS0 was added to Tools -> Serial Port. That doesn't work, I get the same error that I originally had.

Thank you!!!