Wikipedia
Gpsim
gpsim is a full system simulator for Microchip PIC microcontrollers originally written by Scotte Dattalo. It is distributed under the GNU General Public License.
gpsim has been designed for accuracy including the entire PIC - from the core to the I/O pins and including ALL of the internal peripherals. This makes it possible to create stimuli and tie them to the I/O pins and test the PIC the same way you would in the real world.
The software can run natively in Windows using gpsimWin32, a port to Windows created by Borut Ražem.