Efectivamente puedes crear tu bootloader.
Sin importar el lenguaje de programación que gustes todos usan el mismo principio.. Intentare buscar un archivo de Microchip sobre el cual explican como se deben hacer los bootloader, mientras, date una pasada por el foro que ya han hablado de ello.