ALors je réponds
(dsl j’ai eu ton mail mais j’ai été débordé ces dernier jours).
La programmation du PIC fonctionne de cette facon :
tout d’abord tu brule dans le pic le bootstrap loader, avec le programmateur JDM. Le bootstrap loader est un petit programme qui est tout au début de la mémoire de programme du PIC, et qui donc s’execute en premier lorsque que tu met la midibox sous tension. SOn role est d’attendre 2s, à chaque démarage, un message sysex pour l’upload eventuel de MIOS. Si après ces 2s aucun message est recu, il execute alors MIOS (si celui-ci a été préalablement uploader).
MIOS (MIdibox Operating System) est en fait un ensemble de fonctions qui permetent de gérer les différentes fonction d’une midibox, comme le lcd, les switchs, les leds etc… Ces fonctions étant nécéssaire a toute les applications, il est plus judicieux de procédé ainsi, du coup quand tu veux écrire un firmware, ben tu utilise les fonctions proposé par MIOS 
Une fois que MIOS a été uploader, tu peut alors uploader (toujours par sysex), quand tu le souhaite, une application pour MIOS (meme si tu execute une autre application).
donc les chose sont cartographié comme ce-ci !
Bootstrap
MIOS
Application
…
Tu peux naturelement mettre à jour MIOS quand tu le veux, en l’uploadant lors du démarage du PIC (pendant les 2s d’attente du bootstrap).
Les uploads se font par midi, car la série 18f des pic permet à un programme d’écrire dans la mémoire de programme de celui ci, ce qui était impossible avec les autre modèles.
Quandtu télécharge MIOS, tu doit télécharger un fichier zip contenant un fichier mios_v1_*.syx. C’est ce fichier qu’il faut uploader par sysex. Le code source est auddi dispo, mais je doute que tu en es besoin.
Pour les application tu télécharge un gros zip contenant le code source + un fichier syx (généralemet main.syx), que précompiler que tu peux uploader. SI tu veux customiser l’application il faudra la recompiler.
voila 