La configuration du bootloader, dont hérite le firmware-application, impose certaines conditions, les voici.
Le bootloader nécessite (pour le codage XTEA) l'utilisation des instructions étendues. Votre firmware-application va donc hériter de cette configuration, il est donc nécessaire de l'indiquer au compilateur de votre projet. Vous devrez, comme pour le bootloader, configurer ce mode de compilation dans MPLAB (Project / Build Options / Project / MPASM C17 C18), l'indiquer dans votre code au niveau des bits de configuration, et si vous programmer en C18 adapter votre fichier .lkr tel que (notez les suffixes "_e") :
FILES c018i_e.o FILES clib_e.lib FILES p18f4455_e.lib
Ne pas oublier que c'est le bootloader qui est logé à l'adresse 0x00.
D'après les paramètres renseignés dans la config du firmware-bootloader (voir le fichier boot.inc, lignes 27, 28 et 29) votre code du firmware-application doit être conçu pour démarrer en l'adresse 0x0800, et vos vecteurs d'interruption en 0x0808 (High) et 0x0818 (Low).
Rien de très particulier ici, sachez que si vous souhaitez pouvoir redémarrer le PIC en mode bootloader, et si vous avez fait les réglages précédemments décrits, il suffit dans votre code d'écrire la marque attendue en EEPROM et de lancer un reset.
C'est tout, passons maintenant au cryptage et transfert de votre firmware-application...