summaryrefslogtreecommitdiff
path: root/libs/midi++2/midnam_patch.cc
diff options
context:
space:
mode:
Diffstat (limited to 'libs/midi++2/midnam_patch.cc')
-rw-r--r--libs/midi++2/midnam_patch.cc9
1 files changed, 5 insertions, 4 deletions
diff --git a/libs/midi++2/midnam_patch.cc b/libs/midi++2/midnam_patch.cc
index 86edc7504e..66d3219310 100644
--- a/libs/midi++2/midnam_patch.cc
+++ b/libs/midi++2/midnam_patch.cc
@@ -78,10 +78,12 @@ int initialize_primary_key_from_commands (PatchPrimaryKey& id, const XMLNode* no
string value = node->property("Value")->value();
assert(value != "");
+ id.bank_number = 0;
+
if (control == "0") {
- id.msb = PBD::atoi(value);
+ id.bank_number |= (PBD::atoi (value)<<7);
} else if (control == "32") {
- id.lsb = PBD::atoi(value);
+ id.bank_number |= PBD::atoi (value);
}
} else if (node->name() == "ProgramChange") {
string number = node->property("Number")->value();
@@ -135,8 +137,7 @@ Patch::use_bank_info (PatchBank* bank)
{
if (bank) {
if (bank->patch_primary_key() ) {
- _id.msb = bank->patch_primary_key()->msb;
- _id.lsb = bank->patch_primary_key()->lsb;
+ _id.bank_number = bank->patch_primary_key()->bank_number;
} else {
return -1;
}