The Sorry Tale of the PIC Programmer

Several years ago (almost exactly three, as I write this in early '97) I released a utility to program PIC 16C84 microcontrollers using a simple adapter connected to the parallel port of a PC running Linux or NetBSD. I had to write my own since all of the existing software I could find ran only under DOS and Windows.

I named the release "version 0.9" with the idea that I would release a version 1.0 after fixing any remaining bugs. You can find the release on, or here (README and prog84-0.9.tar.gz). (This version is not current any more — please read the note below about Frank Damgaard's improvements.)

During the three-year beta-test period, a few bugs were reported. Unfortunately, in that time, I lost access to the NetBSD box I was using, as well as the patched source code (it was on the disk of my other machine when it was stolen) and the programming adapter (which went with the machine). This set my development cycle, already lethargic in the extreme, back even more.

Two of the reported errors were in the documentation, which I have fixed: you can retrieve an updated copy of here (or as PDF for the PostScript-impaired). The third error involves programming the PIC's ID locations, which are not used by very many hobbyists, so it's not a big problem, although it can be confusing if you're using the ID locations to test whether your programmer is working. I haven't fixed that one because I don't have a programmer any more.

As soon as I buy a new computer and build a new adapter I will probably release a version 1.0 of prog84, followed by a new version with a number of new features (and new bugs, heh heh). My current wishlist for new features is:

A note on naming: there aren't very many obvious names for a 16C84 programmer. I called mine "prog84", but there are a few other programs out there with the same name, and different requirements and abilities.

New as of April 1998: Steve Wahl has sent me a patch to prog84 which adds the ability to read Intel hex format files in addition to the oddball PICTOOLS format, as well as a few other small changes.
New: (January 1999) Frank Damgaard has been developing prog84 further, adding more features (more Intel Hex support, support for some Microchip serial EEPROMs, etc.) as well as bumping the version number to 2.x. See his PIC programming utilities page for details and source code.

Other PIC resources

There seems to be a lot more PIC-related activity now than there was in 1994. Here are a few useful pages for people who are interested in experimenting with this chip. The list is not complete and not in any sort of order:

Other resources in general

Here is some low level information on the PC parallel port; if you're mucking around with LPT-based PIC programmers this can help you understand what's going on.

Last modified: 29th January, 1999. Wim Lewis <> (My home page)