La question m'ayant été posée dans un forum anglais ou j'ai répondu d'une façon assez brouillonne.
Je vais redonner mon explication ici de façon plus claire.
La documentation du Montage/Modx indique comment sélectionner un 'slot' dans le LiveSet courant par changement de programme (page 191 de la Datalist du Modx, page 195 de la Datalist du Montage).
La question est comment sélectionner un 'slot' dans un Liveset autre que le Liveset courant.
Pour ce faire il faut envoyer au Montage/Modx un SysEx dit de 'parameter change' (section 3-5-3-1 page 188:Modx 192:Montage de la Datalist)
Un SysEx de 'parameter change' est de la forme suivante (toutes les valeurs suivantes sont en hexadécimal):
F0.43.10.7F.1C.02.hh.mm.ll.dd.F7 pour le Montage et
F0.43.10.7F.1C.07.hh.mm.ll.dd.F7 pour le Modx, ou hh.mm.ll est l'adresse mémoire du paramètre et dd la valeur du paramètre que l'on veut changer.
Pour changer de Liveset l'adresse est 09.00.00 et la valeur doit être dans l'intervalle 0 à 8. 0 représentant le Liveset Preset et les valeurs 1 à 8 les LiveSet utilisateur 1 à 8
Par exemple pour sélectionner le Liveset utilisateur 1 on enverra le sysex:
F0.43.10.7F.1C.02.09.00.00.01.F7 pour le Montage et
F0.43.10.7F.1C.07.09.00.00.01.F7 pour le Modx
Ensuite on enverra une commande de changement de programme (MSB.LSB.PC) tel que décrite aux pages 191/195 pour sélectionner un 'slot' dans le Liveset.
Pour les programmeurs:
Pour recevoir (bulk dump) le Liveset courant il faut envoyer un syex de 'dump request' (section 3-5-5 page 188/192) à l'adresse 0E.51.00 (page 193/197).
Donc pour recevoir tous les Liveset il faut sélectionner le Liveset avec la commande 09.00.00, qui copie le Liveset sélectionné dans la mémoire tampon (buffer) puis envoyer le 'dump request' pour recevoir ce buffer.
Pour écrire les Liveset dans la mémoire du Montage/Modx la méthode est un peu particulière :
1) On sélectionne le Liveset que l'on veut écrire avec la commande 09.00.00 ( la valeur est ici dans l'intervalle 1 à 8 puisque l'on ne peut pas écrire le Liveset 0:Preset qui est en ROM).
Ce qui copie donc le Liveset sélectionné dans le buffer.
2) On envoie son Liveset dans le buffer à l'aide de plusieurs Sysex 'parameter change' comme décrit aux pages 196/200 de la Datalist
3) On transfert le contenu du buffer dans la mémoire de Liveset précédemment sélectionnée avec la commande 09.00.01 valeur 0 soit:
F0.43.10.7F.1C.02.09.00.01.00.F7 pour le Montage et
F0.43.10.7F.1C.07.09.00.01.00.F7 pour le Modx
Commentaire