Se connecter
Se connecter

ou
Créer un compte

ou

Charger les extensions via sysex

Par alex.d. le 29/01/2021 - (Tout public)

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