gpsim is an open sourced simulator for Microchip's PIC microcontrollers. It supports all three families of PICs: 12-bit, 14-bit, and 16-bit cores. See also gputils http://gputils.sourceforge.net/
This is a very simple simulator for the Microchip PIC16C71. I've used it for various small projects. It has an option video display feature to simulate a software-generated video output, which I used to debug PIC-Pong.