Emulare is an arduino emulator.
It allows you to run arduino programs in emulation. It has full support for all the devices on the Arduino Duemilanove. It has a GDB interface for debugging. It has a complete graphical interface to aid in testing.
very easy to use
I just located this tool today, a prayer was answer! This is one great tool and really would be nice if there were more External Components..
Great project -- some people do not understand how valuable this project is. They answer "just buy the hardware" -- Here it is not because the hardware is cheap. It is because this could be useful for all sorts of activities and working with other people all over the world. Being able to mimic your setup helps the others help you. Also the powerful (and free) debugging facilities really helps getting those nasty, complex bugs squashed. The hardware is not limited to just the Arduino (or other ATMega-based boards) but also to all the peripherals around it. Now I wish this was running faster, a delay(1000) -- takes a lot of seconds to run on my machine and makes even the simplest "blink" program to "crawl". But eventually this might get optimized.