summaryrefslogtreecommitdiff
path: root/muse/synti/zynaddsubfx/main.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'muse/synti/zynaddsubfx/main.cpp')
-rw-r--r--muse/synti/zynaddsubfx/main.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/muse/synti/zynaddsubfx/main.cpp b/muse/synti/zynaddsubfx/main.cpp
index 2d53ca0d..4f7f8820 100644
--- a/muse/synti/zynaddsubfx/main.cpp
+++ b/muse/synti/zynaddsubfx/main.cpp
@@ -102,6 +102,8 @@ Zynadd::Zynadd() : Mess(2)
vmaster = new Master();
vmaster->swaplr = swaplr;
+ vmaster->bank.rescanforbanks();
+ vmaster->defaults();
pthread_create(&thr, NULL, guiThread, this);
}
@@ -224,6 +226,10 @@ bool Zynadd::processEvent(const MidiEvent& e)
{
int bank = (e.dataB() >> 8) + 1;
if (bank != currentBank) {
+ if (vmaster->bank.banks[bank].dir == 0) {
+ printf("Zynaddsubfx: empty bank %d\n", bank);
+ return false;
+ }
vmaster->bank.loadbank(vmaster->bank.banks[bank].dir);
currentBank = bank;
}