diff options
| author | Werner Schweer <ws.seh.de> | 2006-10-31 18:07:55 +0000 | 
|---|---|---|
| committer | Werner Schweer <ws.seh.de> | 2006-10-31 18:07:55 +0000 | 
| commit | 6cde69b0213447305ec68465f903f96923a9dbe6 (patch) | |
| tree | b3d887a198c2fd6bb7563e6b5182a1abb8e24b71 | |
| parent | cc4fafa6aa1a3f252e16946ee0e5c790798160eb (diff) | |
updates
| -rw-r--r-- | muse/muse/midichannel.cpp | 2 | ||||
| -rw-r--r-- | muse/muse/synth.cpp | 30 | ||||
| -rw-r--r-- | muse/synti/zynaddsubfx/main.cpp | 17 | 
3 files changed, 39 insertions, 10 deletions
| diff --git a/muse/muse/midichannel.cpp b/muse/muse/midichannel.cpp index 40294b2a..044c8a0a 100644 --- a/muse/muse/midichannel.cpp +++ b/muse/muse/midichannel.cpp @@ -51,6 +51,8 @@ MidiChannel::MidiChannel(MidiOut* p, int ch)        addMidiController(mi, CTRL_REVERB_SEND);        addMidiController(mi, CTRL_CHORUS_SEND);        addMidiController(mi, CTRL_VARIATION_SEND); + +      // TODO: setDefault Values        }  //--------------------------------------------------------- diff --git a/muse/muse/synth.cpp b/muse/muse/synth.cpp index a58a7736..ebdbc10f 100644 --- a/muse/muse/synth.cpp +++ b/muse/muse/synth.cpp @@ -373,6 +373,11 @@ void SynthI::write(Xml& xml) const        AudioTrack::writeProperties(xml);        xml.strTag("class", synth()->name()); +      for (int i = 0; i < MIDI_CHANNELS; ++i) { +            if (!_channel[i]->noInRoute()) +                  _channel[i]->write(xml); +            } +        //---------------------------------------------        // if soft synth is attached to a midi port,        // write out port number @@ -387,9 +392,9 @@ void SynthI::write(Xml& xml) const              if (h || w)                    xml.qrectTag("geometry", QRect(x, y, w, h));              } -        _sif->write(xml);        xml.etag("SynthI"); +        }  void MessSynthIF::write(Xml& xml) const @@ -432,25 +437,30 @@ void SynthI::read(QDomNode node)        bool startGui = false;        QRect r; -      while (!node.isNull()) { +      for (; !node.isNull(); node = node.nextSibling()) {              QDomElement e = node.toElement(); -            if (e.tagName() == "class") +            QString tag(e.tagName()); +            if (tag == "class")                    sclass = e.text(); -            else if (e.tagName() == "port") +            else if (tag == "port")                    port  = e.text().toInt(); -            else if (e.tagName() == "guiVisible") +            else if (tag == "guiVisible")                    startGui = e.text().toInt(); -            else if (e.tagName() == "midistate") +            else if (tag == "midistate")                    readMidiState(node.firstChild()); -            else if (e.tagName() == "param") { +            else if (tag == "param") {                    float val = e.text().toFloat();                    initParams.push_back(val);                    } -            else if (e.tagName() == "geometry") +            else if (tag == "geometry")                    r = AL::readGeometry(node); -            else if (AudioTrack::readProperties(node)) +            else if (tag == "MidiChannel") { +                  int idx = e.attribute("idx", "0").toInt(); +                  _channel[idx]->read(node.firstChild()); +                  } +            else if (AudioTrack::readProperties(node)) {                    printf("MusE:SynthI: unknown tag %s\n", e.tagName().toLatin1().data()); -            node = node.nextSibling(); +                  }              }        Synth* s = findSynth(sclass);        if (s == 0) diff --git a/muse/synti/zynaddsubfx/main.cpp b/muse/synti/zynaddsubfx/main.cpp index 7fd863d2..92612f45 100644 --- a/muse/synti/zynaddsubfx/main.cpp +++ b/muse/synti/zynaddsubfx/main.cpp @@ -208,6 +208,23 @@ struct ZynCtrl {        int max;        }; +// +//  NRPN +//    0x04 0     // System Effects +//    0x04 1 +//    0x04 2 +//    0x04 3 +// +//    0x08 0     // Insertion Effects +//    0x08 1 +//    0x08 2 +//    0x08 3 +//    0x08 4 +//    0x08 5 +//    0x08 6 +//    0x08 7 +//    0x08 8 +  int Zynadd::getControllerInfo(int i, const char** name, int* num, int* min, int* max)        {        static const ZynCtrl ctrl[] = { | 
