David Huisman wrote: > > Tony, > > Thanks for the reply, congrats for safe arrival of Amy. Thankyou :-) > To summarize, are you saying... > > 1) Bootloader initially gets programmed into high memory using ICSP and > PICSTART. Yes. > 2) User code is downloaded at powerup by responding to "BL" from micro > bootloader program. And the source can be normal C code located from vector > 0x00 -> As with any bootloader system, the user code is programmed into the chip using the pre-programmed bootloader code and the interface software that is provided by the bootloader designer, which in this case is ROMzap.exe Another example would be Wouters WLoader software which must be used with his bootloader HEX code. ROMzap produces open source code for it's bootloader, so there is no reason that you cannot create your own PC transfer software and incorporate it into your own design. This means discecting the bootloader code and creating your own interface. Alternately, and it may take the same amount of time, you can dispense with pre-designed bootloaders altogether and create and integrate your own bootloader system which should give you better control of your final product. > 3) Further upgrades of user code can be handled by user code menu option. > ie. An upload command can be processed by > #asm > goto 0x1fff > #endasm This just causes the bootloader to begin monitoring for commands from the serial interface which will only be compatable with ROMzap.exe. > 4) If user code fails, bootloader is re-programmed via ISCP If user code fails, it can be reprogrammed by a bootloader. ROMzap can actually overwrite it's bootloader code with a new file, but if the boot code has failed totally then it must be reprogrammed either by ICSP or by a dedicated programmer. If you need any extra help on ROMzap, it may be better offlist. -- Best regards Tony mICros http://www.bubblesoftonline.com mailto:sales@bubblesoftonline.com -- http://www.piclist.com hint: To leave the PICList mailto:piclist-unsubscribe-request@mitvma.mit.edu