Se connecter
Se connecter

ou
Créer un compte

ou
Astuce
15 réactions

Charger les extensions via sysex

C'est pénible de devoir manuellement charger les extensions dans les slots manuellement en passant par les menus en façade.

Heureusement, il existe un sysex non-documenté pour automatiser ça :

F0 41 10 00 00 64 11 0F 00 30 00 aa bb cc dd xx F7

où aa, bb, cc, et dd sont les numéros des cartes d'extension

0x00 = OFF
0x01 = SRX-01
0x02 = SRX-02
...
0x09 = SRX-09
0x0A = SRX-10
0x0B = SRX-11
0x0C = SRX-12
0x0D = ExSN1
0x0E = ExSN2
0x0F = ExSN3
0x10 = ExSN4
0x11 = ExSN5
0x12 = ExSN6
0x13 = ExPCM

et xx est un checksum sysex, calculé comme indiqué dans le document "MIDI implementation" : on fait le total des octets d'adresse et de données (pas les en-têtes ni la commande), et on a xx = 0x80 - (tt % 0x80)

Par exemple, dans le cas présent, les octets d'adresse sont 0F 00 30 00.

Si on charge par exemple les ExSN1 à ExSN4 sur les slots de 1 à 4, on a aa=0x0D, bb=0x0E, cc=0x0F, et dd=0x10.

Avec une calculatrice hexadécimale, on fait le total des octets : 0x0F + 0x00 + 0x30 + 0x00 + 0x0D + 0x0E + 0x0F + 0x10 = 0x79

Et donc on obtient xx = 0x80 - (0x79 % 0x80) = 0x07

Essayons d'envoyer F0 41 10 00 00 64 11 0F 00 30 00 0D 0E 0F 10 07 F7.

Ça marche !

Attention, si on le fait en début de séquence, ça prend une bonne dizaine de secondes à charger.

Vous souhaitez réagir à cette astuce ?

Se connecter
Devenir membre