The primary goal of the Spiffy PIC Programmer is to program flash ROM PICs under the control of a human usable, platform independent, RS-232 interface. Additional goals are to implement a robust programming algorithm, make the programmer usable from regular terminal programs, and to optionally provide support for production quality programming. The command protocol and error handling are designed to support a simple ASCII file transfer or clipboard paste of the contents of a hex file to the programmer from a terminal program.


For the scope of this document, a few terms have been defined to make communication easier.
The Spiffy PIC Programmer hardware and firmware.
Hex file
A file containing PIC software in binary form. The format used here is always an Intel 8-bit Hex file.
Host computer
The computer running terminal software used to communicate with the programmer.
Target PIC
The PIC microcontroller that is connected to the programmer for programming.

Feature set