Home Forums General Panels, Components, Macros Emu Morpheus Panel?

This topic contains 24 replies, has 6 voices, and was last updated by  human fly 5 days, 1 hour ago.

Viewing 5 posts - 21 through 25 (of 25 total)
  • Author
  • #81881



    I already have the panel in a working state, now it´s time to fix some minor issues.

    1. I have no idea how to create “negative” values. I understand, that there is nothing in MIDI which could be a negative value, but I have some sysex formulas, which manage a range from -127 to 127, for example the LFO 1 amount.
    My sysex string for this parameter is:
    – F0 18 0C 01 03 61 40 LS MS F7.
    and obviously only works with positive values:

    Any idea how to fix this?

    2. How can I receive preset data from Morpheus in such a way, that the synthesis parameters are correctly shown in my CTRLR panel?
    For the moment I can create sounds from scratch, but without receiving preset data there is no comfortable way to adjust existing presets.

    Thanks in advance for your help.



    there are a few ways how you can transmit negative values. You have to look in the sysex implementation chart of the Morpheus how emu did it. E.g. there is the “signed values” method. That means that the upper range is representing negative values. E.g. 0 to 63, positive values / 192 to 255, negative values (-1 to -63).

    In Ctrlr displaying custom values is done with fixedSlider or with listBoxes. Look at my first post in this thread:



    Hello Possemo!

    I just figured it out (well, with some help from you and another program).
    First of all, the FixedSlider is the perfect tool for that, thank you very much for the hint.

    One question: Do you possess a Morpheus?

    Here comes the explanation:
    For negative values there is an offset of 16384.

    Example: Pan PRIMARY VOICE (range from -7 to +7)
    formula: F0 18 0C 01 03 54 41 LS MS F7 (from manual)

    Turns out, that the MSB starts with negative values at 7E and will be wrapped to 00, once it arrives at full MSB. I just had to multiply 7E as MSB, then adding 120 (= -7 in Panning), and so on.

    -7=16377 = LSB 121, MSB 7E
    -6=16378 = LSB 122, MSB 7E
    -5=16379 = LSB 123, MSB 7E
    0=0 = LSB 00, MSB 00
    1=1 = LSB 01, MSB 01 etc.

    Thanks a lot for your help. I really appreciate it.
    All the best.



    yes this is the method filling the range from the top with negative values. I forgot, it is called “signed magnitude representation”. You can look at the most significant bytes (upper MSB) like being the -/+ signs. If they are 1 this means -, 0 means +. Btw Wiki shows some other methods:

    No, I don’t own a Morpheus.


    human fly

    yes that sounds familiar: i have an emu orbit v1,
    and i think it does the same thing.

Viewing 5 posts - 21 through 25 (of 25 total)

You must be logged in to reply to this topic.

Comments are closed.