Denny, The readme file lists two ways to handle the bootloader with CCS as seen below. Did you try both? Also, I know you probably know this but there is a 16F87XA and a 16F87X version. That has messed some people up. In the past I had a little trouble that bootloader in an earlier version. I went back and downloaded the version one level prior and that fixed it for me. Then when a new version came out I downloaded that and the problem was fixed. I basically leap-frogged the troubled version. Here is the link to the old versions: http://www.microchipc.com/PIC16bootload/PIC_bootloader_old_versions.htm CCS C: add *only one* of the next two statements, depending on the micro: #ORG 0x0700,0x07FF {} //for the 2k 16F870/1/2 #ORG 0x0F00,0x0FFF {} //for the 4k 16F873/4 #ORG 0x1F00,0x1FFF {} //for the 8k 16F876/7 For some versions of CCS C, use the following: #org 0x0700, 0x07FF void loader16F872(void) {} //for the 2k 16F870/1/2 #org 0x0F00, 0x0FFF void loader16F874(void) {} //for the 4k 16F873/4 #org 0x1F00, 0x1FFF void loader16F877(void) {} //for the 8k 16F876/7 --- Denny Esterline wrote: > For the benifit of those whom don't have the original posts.... > > Here are the details: > CCS version 3.073 > > The complete C source code: > #if defined(__PCM__) > #include <16f876.h> > #fuses XT,NOWDT,NOPROTECT > #use delay(clock=4000000) > #use standard_io(B) > #endif > > #org 0x1F00, 0x1FFF void loader16F876(void) {} file://as specified on > MicrochipC - reserves the top memory for the boot loader > > void main() > { > while(1) > { > output_bit(PIN_B0,1); > delay_ms(400); > output_bit(PIN_B0,0); > delay_ms(400); > } > } > ------------------------End of source code > > > The complete hex file as produced by the compiler: > :1000000000308A00192800002230840000080319FB > :1000100018280130F800F701F70B0C28F80B0B2813 > :100020004A30F700F70B122800000000800B092867 > :10003000003484011F30830583169F018312061448 > :100040008316061002308312A100C830A2000420DB > :10005000A10B252806108316061002308312A1007A > :0E006000C830A2000420A10B30281F28630026 > :083E000000108A110A120028CB > :02400E00F93F78 > :00000001FF > ;PIC16F876 > > --------------- End of hex file > > > ----- Original Message ----- > From: David Huisman > To: > Sent: Monday, August 04, 2003 10:18 PM > Subject: Re: [PIC]: Bootloader confusion > > > Denny, > > I do not have copies of your original posting. What Compiler are you > using ? > > You mention the issue may be relocation of your code start. > > I use Hi-Tech C and either add psect statement with appropriate > relocation > code at start of the source file to relocate the start or I use the > compiler > relocation switch MPLAB. Project Build Options -> Compiler set -Axxxx > for the code start. > > If you READ the code from the micro when the bootloader is programmed > into > it, > you should see the jump at reset vector to the bootloader and the > bootloader > code residing in the high memory locations. > > You then compile your user code with the -Axxxx and upload it to the > micro. > Now if you read the micro contents back, you should see the reset > vector > jump > to bootloader code still there and also your user code starting at > location > xxx > (as defined in the -Axxx compiler line option). > > Kind Regards > > David Huisman > > -- > http://www.piclist.com hint: To leave the PICList > mailto:piclist-unsubscribe-request@mitvma.mit.edu > > -- > http://www.piclist.com hint: To leave the PICList > mailto:piclist-unsubscribe-request@mitvma.mit.edu ===== Chuck Hellebuyck Electronic Products chuck@elproducts.com **** Home of the BasicBoard Development Platform********* Great for learning, teaching and developing electronic, programmable robotics and other embedded applications. Starter packages from $149.95. http://www.elproducts.com __________________________________ Do you Yahoo!? Yahoo! SiteBuilder - Free, easy-to-use web site design software http://sitebuilder.yahoo.com -- http://www.piclist.com hint: PICList Posts must start with ONE topic: [PIC]:,[SX]:,[AVR]: ->uP ONLY! [EE]:,[OT]: ->Other [BUY]:,[AD]: ->Ads