@@ -167,7 +167,7 @@ void umpProcessor::processUMP(uint32_t UMP){
167
167
case CC: // CC
168
168
mess.index = val1;
169
169
mess.value = umpMess[1 ];
170
- if (channelVoiceMessage != nullptr ) channelVoiceMessage (mess);
170
+ channelVoiceMessage (mess);
171
171
break ;
172
172
173
173
case RPN: // RPN
@@ -177,20 +177,20 @@ void umpProcessor::processUMP(uint32_t UMP){
177
177
mess.bank = val1;
178
178
mess.index = val2;
179
179
mess.value = umpMess[1 ];
180
- if (channelVoiceMessage != nullptr ) channelVoiceMessage (mess);
180
+ channelVoiceMessage (mess);
181
181
break ;
182
182
183
183
case PROGRAM_CHANGE: // Program Change Message
184
184
mess.value = umpMess[1 ] >> 24 ;
185
185
mess.flag1 = umpMess[0 ] & 1 ;
186
186
mess.bank = (umpMess[1 ] >> 8 ) & 0x7f ;
187
187
mess.index = umpMess[1 ] & 0x7f ;
188
- if (channelVoiceMessage != nullptr ) channelVoiceMessage (mess);
188
+ channelVoiceMessage (mess);
189
189
break ;
190
190
191
191
case PITCH_BEND: // PitchBend
192
192
mess.value = umpMess[1 ];
193
- if (channelVoiceMessage != nullptr ) channelVoiceMessage (mess);
193
+ channelVoiceMessage (mess);
194
194
break ;
195
195
196
196
case NRPN_PERNOTE: // Assignable Per-Note Controller 1
@@ -199,14 +199,14 @@ void umpProcessor::processUMP(uint32_t UMP){
199
199
mess.note = val1;
200
200
mess.index = val2;
201
201
mess.value = umpMess[1 ];
202
- if (channelVoiceMessage != nullptr ) channelVoiceMessage (mess);
202
+ channelVoiceMessage (mess);
203
203
break ;
204
204
case PERNOTE_MANAGE: // Per-Note Management Message
205
205
206
206
mess.note = val1;
207
207
mess.flag1 =(bool )(val2 & 2 );
208
208
mess.flag2 = (bool )(val2 & 1 );
209
- if (channelVoiceMessage != nullptr ) channelVoiceMessage (mess);
209
+ channelVoiceMessage (mess);
210
210
break ;
211
211
default :
212
212
if (unknownUMPMessage)unknownUMPMessage (umpMess, 2 );
@@ -287,16 +287,16 @@ void umpProcessor::processUMP(uint32_t UMP){
287
287
break ;
288
288
}
289
289
290
- case MIDIENDPOINT_PROTOCOL_REQUEST : // JR Protocol Req
291
- if (midiEndpointJRProtocolReq != nullptr )
292
- midiEndpointJRProtocolReq ((uint8_t ) (umpMess[0 ] >> 8 ),
290
+ case MIDIENDPOINT_STREAMCONFIG_REQUEST : // JR Protocol Req
291
+ if (midiEndpointStreamConfigReq != nullptr )
292
+ midiEndpointStreamConfigReq ((uint8_t ) (umpMess[0 ] >> 8 ),
293
293
(umpMess[0 ] >> 1 ) & 1 ,
294
294
umpMess[0 ] & 1
295
295
);
296
296
break ;
297
- case MIDIENDPOINT_PROTOCOL_NOTIFICATION : // JR Protocol Req
298
- if (midiEndpointJRProtocolNotify != nullptr )
299
- midiEndpointJRProtocolNotify ((uint8_t ) (umpMess[0 ] >> 8 ),
297
+ case MIDIENDPOINT_STREAMCONFIG_NOTIFICATION : // JR Protocol Req
298
+ if (midiEndpointStreamConfigNotify != nullptr )
299
+ midiEndpointStreamConfigNotify ((uint8_t ) (umpMess[0 ] >> 8 ),
300
300
(umpMess[0 ] >> 1 ) & 1 ,
301
301
umpMess[0 ] & 1
302
302
);
@@ -453,6 +453,7 @@ void umpProcessor::processUMP(uint32_t UMP){
453
453
switch (mess.status ){
454
454
case FLEXDATA_COMMON_TEMPO: { // Set Tempo Message
455
455
if (flexTempo != nullptr ) flexTempo (mess, umpMess[1 ]);
456
+ else if (flexData != nullptr ) flexData (mess);
456
457
break ;
457
458
}
458
459
case FLEXDATA_COMMON_TIMESIG: { // Set Time Signature Message
@@ -461,6 +462,7 @@ void umpProcessor::processUMP(uint32_t UMP){
461
462
(umpMess[1 ] >> 16 ) & 0xFF ,
462
463
(umpMess[1 ] >> 8 ) & 0xFF
463
464
);
465
+ else if (flexData != nullptr ) flexData (mess);
464
466
break ;
465
467
}
466
468
case FLEXDATA_COMMON_METRONOME: { // Set Metronome Message
@@ -472,13 +474,15 @@ void umpProcessor::processUMP(uint32_t UMP){
472
474
(umpMess[2 ] >> 24 ) & 0xFF ,
473
475
(umpMess[2 ] >> 16 ) & 0xFF
474
476
);
477
+ else if (flexData != nullptr ) flexData (mess);
475
478
break ;
476
479
}
477
480
case FLEXDATA_COMMON_KEYSIG: { // Set Key Signature Message
478
481
if (flexKeySig != nullptr ) flexKeySig (mess,
479
482
(umpMess[1 ] >> 24 ) & 0xFF ,
480
483
(umpMess[1 ] >> 16 ) & 0xFF
481
484
);
485
+ else if (flexData != nullptr ) flexData (mess);
482
486
break ;
483
487
}
484
488
case FLEXDATA_COMMON_CHORD: { // Set Chord Message
@@ -502,6 +506,7 @@ void umpProcessor::processUMP(uint32_t UMP){
502
506
(umpMess[3 ] >> 4 ) & 0xF ,// baAlt2Type
503
507
umpMess[1 ] & 0xF // baAlt2Deg
504
508
);
509
+ else if (flexData != nullptr ) flexData (mess);
505
510
break ;
506
511
}
507
512
default :
@@ -514,7 +519,6 @@ void umpProcessor::processUMP(uint32_t UMP){
514
519
}
515
520
case FLEXDATA_PERFORMANCE: // Performance Events
516
521
case FLEXDATA_LYRIC:{ // Lyric Events
517
-
518
522
uint8_t dataLength = 0 ;
519
523
uint8_t text[12 ];
520
524
@@ -528,9 +532,9 @@ void umpProcessor::processUMP(uint32_t UMP){
528
532
}
529
533
530
534
if (mess.statusBank == FLEXDATA_LYRIC && flexLyric != nullptr ) flexLyric (mess, text,dataLength);
531
- if (mess.statusBank == FLEXDATA_PERFORMANCE && flexPerformance != nullptr ) flexPerformance (mess,text,dataLength);
535
+ else if (mess.statusBank == FLEXDATA_PERFORMANCE && flexPerformance != nullptr ) flexPerformance (mess,text,dataLength);
536
+ else if (flexData != nullptr ) flexData (mess);
532
537
break ;
533
-
534
538
}
535
539
default :
536
540
if (flexData != nullptr ) {
@@ -546,9 +550,3 @@ void umpProcessor::processUMP(uint32_t UMP){
546
550
messPos++;
547
551
}
548
552
}
549
-
550
-
551
-
552
-
553
-
554
-
0 commit comments