Skip to content

Commit eb1f825

Browse files
committed
Implement second layer of the performance pads
1 parent 7731080 commit eb1f825

2 files changed

Lines changed: 189 additions & 18 deletions

File tree

res/controllers/Numark-Party-Mix-MKII.midi.xml

Lines changed: 181 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -370,6 +370,43 @@
370370
</options>
371371
</control>
372372
<!-- Pad modes (press) -->
373+
<!-- Shift button -->
374+
<control>
375+
<group>[Channel1]</group>
376+
<key>NumarkPartyMix.deck[0].padSection.shiftButtonPress</key>
377+
<status>0x9F</status>
378+
<midino>0x32</midino>
379+
<options>
380+
<script-binding />
381+
</options>
382+
</control>
383+
<control>
384+
<group>[Channel1]</group>
385+
<key>NumarkPartyMix.deck[0].padSection.shiftButtonPress</key>
386+
<status>0x8F</status>
387+
<midino>0x32</midino>
388+
<options>
389+
<script-binding />
390+
</options>
391+
</control>
392+
<control>
393+
<group>[Channel2]</group>
394+
<key>NumarkPartyMix.deck[1].padSection.shiftButtonPress</key>
395+
<status>0x9F</status>
396+
<midino>0x32</midino>
397+
<options>
398+
<script-binding />
399+
</options>
400+
</control>
401+
<control>
402+
<group>[Channel2]</group>
403+
<key>NumarkPartyMix.deck[1].padSection.shiftButtonPress</key>
404+
<status>0x8F</status>
405+
<midino>0x32</midino>
406+
<options>
407+
<script-binding />
408+
</options>
409+
</control>
373410
<!-- Hotcue -->
374411
<control>
375412
<group>[Channel1]</group>
@@ -456,6 +493,15 @@
456493
<script-binding />
457494
</options>
458495
</control>
496+
<control>
497+
<group>[Channel1]</group>
498+
<key>NumarkPartyMix.deck[0].padSection.padPress</key>
499+
<status>0x94</status>
500+
<midino>0x1C</midino>
501+
<options>
502+
<script-binding />
503+
</options>
504+
</control>
459505
<control>
460506
<group>[Channel2]</group>
461507
<key>NumarkPartyMix.deck[1].padSection.padPress</key>
@@ -465,6 +511,15 @@
465511
<script-binding />
466512
</options>
467513
</control>
514+
<control>
515+
<group>[Channel2]</group>
516+
<key>NumarkPartyMix.deck[1].padSection.padPress</key>
517+
<status>0x95</status>
518+
<midino>0x1C</midino>
519+
<options>
520+
<script-binding />
521+
</options>
522+
</control>
468523
<control>
469524
<group>[Channel1]</group>
470525
<key>NumarkPartyMix.deck[0].padSection.padPress</key>
@@ -474,6 +529,15 @@
474529
<script-binding />
475530
</options>
476531
</control>
532+
<control>
533+
<group>[Channel1]</group>
534+
<key>NumarkPartyMix.deck[0].padSection.padPress</key>
535+
<status>0x94</status>
536+
<midino>0x1D</midino>
537+
<options>
538+
<script-binding />
539+
</options>
540+
</control>
477541
<control>
478542
<group>[Channel2]</group>
479543
<key>NumarkPartyMix.deck[1].padSection.padPress</key>
@@ -483,6 +547,15 @@
483547
<script-binding />
484548
</options>
485549
</control>
550+
<control>
551+
<group>[Channel2]</group>
552+
<key>NumarkPartyMix.deck[1].padSection.padPress</key>
553+
<status>0x95</status>
554+
<midino>0x1D</midino>
555+
<options>
556+
<script-binding />
557+
</options>
558+
</control>
486559
<control>
487560
<group>[Channel1]</group>
488561
<key>NumarkPartyMix.deck[0].padSection.padPress</key>
@@ -492,6 +565,15 @@
492565
<script-binding />
493566
</options>
494567
</control>
568+
<control>
569+
<group>[Channel1]</group>
570+
<key>NumarkPartyMix.deck[0].padSection.padPress</key>
571+
<status>0x94</status>
572+
<midino>0x1E</midino>
573+
<options>
574+
<script-binding />
575+
</options>
576+
</control>
495577
<control>
496578
<group>[Channel2]</group>
497579
<key>NumarkPartyMix.deck[1].padSection.padPress</key>
@@ -501,6 +583,15 @@
501583
<script-binding />
502584
</options>
503585
</control>
586+
<control>
587+
<group>[Channel2]</group>
588+
<key>NumarkPartyMix.deck[1].padSection.padPress</key>
589+
<status>0x95</status>
590+
<midino>0x1E</midino>
591+
<options>
592+
<script-binding />
593+
</options>
594+
</control>
504595
<control>
505596
<group>[Channel1]</group>
506597
<key>NumarkPartyMix.deck[0].padSection.padPress</key>
@@ -510,6 +601,15 @@
510601
<script-binding />
511602
</options>
512603
</control>
604+
<control>
605+
<group>[Channel1]</group>
606+
<key>NumarkPartyMix.deck[0].padSection.padPress</key>
607+
<status>0x94</status>
608+
<midino>0x1F</midino>
609+
<options>
610+
<script-binding />
611+
</options>
612+
</control>
513613
<control>
514614
<group>[Channel2]</group>
515615
<key>NumarkPartyMix.deck[1].padSection.padPress</key>
@@ -519,6 +619,15 @@
519619
<script-binding />
520620
</options>
521621
</control>
622+
<control>
623+
<group>[Channel2]</group>
624+
<key>NumarkPartyMix.deck[1].padSection.padPress</key>
625+
<status>0x95</status>
626+
<midino>0x1F</midino>
627+
<options>
628+
<script-binding />
629+
</options>
630+
</control>
522631
<!-- Pads (release) -->
523632
<control>
524633
<group>[Channel1]</group>
@@ -529,6 +638,15 @@
529638
<script-binding />
530639
</options>
531640
</control>
641+
<control>
642+
<group>[Channel1]</group>
643+
<key>NumarkPartyMix.deck[0].padSection.padPress</key>
644+
<status>0x84</status>
645+
<midino>0x1C</midino>
646+
<options>
647+
<script-binding />
648+
</options>
649+
</control>
532650
<control>
533651
<group>[Channel2]</group>
534652
<key>NumarkPartyMix.deck[1].padSection.padPress</key>
@@ -538,6 +656,15 @@
538656
<script-binding />
539657
</options>
540658
</control>
659+
<control>
660+
<group>[Channel2]</group>
661+
<key>NumarkPartyMix.deck[1].padSection.padPress</key>
662+
<status>0x85</status>
663+
<midino>0x1C</midino>
664+
<options>
665+
<script-binding />
666+
</options>
667+
</control>
541668
<control>
542669
<group>[Channel1]</group>
543670
<key>NumarkPartyMix.deck[0].padSection.padPress</key>
@@ -547,6 +674,15 @@
547674
<script-binding />
548675
</options>
549676
</control>
677+
<control>
678+
<group>[Channel1]</group>
679+
<key>NumarkPartyMix.deck[0].padSection.padPress</key>
680+
<status>0x84</status>
681+
<midino>0x1D</midino>
682+
<options>
683+
<script-binding />
684+
</options>
685+
</control>
550686
<control>
551687
<group>[Channel2]</group>
552688
<key>NumarkPartyMix.deck[1].padSection.padPress</key>
@@ -556,6 +692,15 @@
556692
<script-binding />
557693
</options>
558694
</control>
695+
<control>
696+
<group>[Channel2]</group>
697+
<key>NumarkPartyMix.deck[1].padSection.padPress</key>
698+
<status>0x85</status>
699+
<midino>0x1D</midino>
700+
<options>
701+
<script-binding />
702+
</options>
703+
</control>
559704
<control>
560705
<group>[Channel1]</group>
561706
<key>NumarkPartyMix.deck[0].padSection.padPress</key>
@@ -565,6 +710,15 @@
565710
<script-binding />
566711
</options>
567712
</control>
713+
<control>
714+
<group>[Channel1]</group>
715+
<key>NumarkPartyMix.deck[0].padSection.padPress</key>
716+
<status>0x84</status>
717+
<midino>0x1E</midino>
718+
<options>
719+
<script-binding />
720+
</options>
721+
</control>
568722
<control>
569723
<group>[Channel2]</group>
570724
<key>NumarkPartyMix.deck[1].padSection.padPress</key>
@@ -574,6 +728,15 @@
574728
<script-binding />
575729
</options>
576730
</control>
731+
<control>
732+
<group>[Channel2]</group>
733+
<key>NumarkPartyMix.deck[1].padSection.padPress</key>
734+
<status>0x85</status>
735+
<midino>0x1E</midino>
736+
<options>
737+
<script-binding />
738+
</options>
739+
</control>
577740
<control>
578741
<group>[Channel1]</group>
579742
<key>NumarkPartyMix.deck[0].padSection.padPress</key>
@@ -583,6 +746,15 @@
583746
<script-binding />
584747
</options>
585748
</control>
749+
<control>
750+
<group>[Channel1]</group>
751+
<key>NumarkPartyMix.deck[0].padSection.padPress</key>
752+
<status>0x84</status>
753+
<midino>0x1F</midino>
754+
<options>
755+
<script-binding />
756+
</options>
757+
</control>
586758
<control>
587759
<group>[Channel2]</group>
588760
<key>NumarkPartyMix.deck[1].padSection.padPress</key>
@@ -592,6 +764,15 @@
592764
<script-binding />
593765
</options>
594766
</control>
767+
<control>
768+
<group>[Channel2]</group>
769+
<key>NumarkPartyMix.deck[1].padSection.padPress</key>
770+
<status>0x85</status>
771+
<midino>0x1F</midino>
772+
<options>
773+
<script-binding />
774+
</options>
775+
</control>
595776
<!-- Begin Library Controls -->
596777
<control>
597778
<group>[Library]</group>

res/controllers/Numark-Party-Mix-MKII.scripts.js

Lines changed: 8 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -148,6 +148,14 @@ NumarkPartyMix.PadSection = function(deckNumber) {
148148
this.setMode(control);
149149
};
150150

151+
this.shiftButtonPress = function(channel, control, value, status) {
152+
if (status === 0x8F) {
153+
this.currentMode.unshift();
154+
} else {
155+
this.currentMode.shift();
156+
}
157+
};
158+
151159
this.padPress = function(channel, control, value, status, group) {
152160
const i = (control - 0x14) % 8;
153161
this.currentMode.connections[i].input(channel, control, value, status, group);
@@ -208,9 +216,6 @@ NumarkPartyMix.ModeLoop = function(deckNumber) {
208216
};
209217
NumarkPartyMix.ModeLoop.prototype = Object.create(components.ComponentContainer.prototype);
210218

211-
// this device doesn't have a shift button,
212-
// therefore we do not want it to depend on
213-
// a shift switch to stop a sample
214219
// Deck1: samplers 1-4
215220
// Deck2: samplers 5-8
216221
NumarkPartyMix.ModeSampler = function(deckNumber) {
@@ -223,21 +228,6 @@ NumarkPartyMix.ModeSampler = function(deckNumber) {
223228
midi: [0x93 + deckNumber, 0x14 + i],
224229
number: 1 + i + sampleoffset,
225230
outConnect: false,
226-
unshift: null,
227-
outKey: "play_indicator",
228-
input: function(channel, control, value, status, _group) {
229-
if (this.isPress(channel, control, value, status)) {
230-
if (engine.getValue(this.group, "track_loaded") === 0) {
231-
engine.setValue(this.group, "LoadSelectedTrack", 1);
232-
} else {
233-
if (engine.getValue(this.group, "play") === 1) {
234-
engine.setValue(this.group, "start_stop", 1);
235-
} else {
236-
engine.setValue(this.group, "start_play", 1);
237-
}
238-
}
239-
}
240-
}
241231
});
242232
}
243233
};

0 commit comments

Comments
 (0)