Virtual Arduino?

I love my Arduino Duemilanove, but soon it will be turned into a gift for someone (It's going be awesome, but until it's done the project is a secret).

In lieu of an Arduino (It's my only one, and I won't be replacing it for a couple of months) has someone written a virtual Arduino to run code on? I think it could be a powerful tool.

I use virtual Androids for phone dev instead of using my Nexus One all the time, and it's very nice. I can even test previous versions of Android, without ever owning one of the phones.

Does Arduino have an equivelent?

I'm relatively new to Arduino dev so I apologize if this exists and is all too common.

Maybe: http://www.virtualbreadboard.com/

If you can build this one from source code: http://hewgill.com/journal/entries/507-emulino-arduino-cpu-emulator

emulare

toolduino - not really what you're after but interesting none the less.

Mowcius