The Universal MicroCode (UMC) Loader is a bootloader that supports 16F(A) and 18F(K, J) series PIC microcontrollers. Full *.asm source code is provided, so it's very easy to roll your own loader solution. Don't worry if you feel uncomfortable using assembler - the UMC loader also includes a UMC Builder application, which automates the assembly process. Just edit "umcbuild.ini", like this
; source code files... [TEMPLATE] PIC16=..\src\16F\umc_loader.asm PIC18=..\src\18F\umc_loader.asm ; device name and OSC... [MCU] Device=18F452 OSC=20000000 ; device configuration settings... [CONFIG] config OSC = HS config PWRT = OFF config WDT = OFF config LVP = OFF config DEBUG = OFF ; optional user define control code [USERCODE]
an then just double click "umcbuild.exe" - your loader file will then be automatically built and assembled.
Here is some additional information which you may find useful.