Microchip bootloaderi çok esnek bir yapıdadır ve sizden sadece belirli bir alana program yazmamanızı ister. O alan kendi yerleştiği alandır. Ayrıca yanlış hatırlamıyorsam program alanının ilk 2 kb lık kısmına yerleştiği için programınızı yazarken başlangıç adresini bu alanın sonrası olarak belirtmeniz gerekiyor.
Ben tiny bootloader kullandım. 16F serisi için 100 bayt alan, 18F serisi için 200 bayt alan kullanıyor ve mcunun en son kısmına yerleşiyor. Tek dezavantajı, bootloader kullanarak program yüklerken fuse ayarlarını değiştiremiyorsunuz. Ama onun kolay çözümü, tiny bootloader assembly kaynak kodunda istediğiniz fuse ayarlarını yapıp, bootloaderi yeniden derleyip pic e yüklediğinizde sorun kalmıyor. Program yazarken sanki bootloader kullanmıyorsunuz gibi rahatlıkla program yazabiliyorsunuz. Yeterki yazdığınız program boyutu mcu kapasiteninden 100 bayt veya 200 bayt daha kısa olsun.