Home › Forums › General › Panels, Components, Macros › Korg Z1 – Negative Values
- This topic has 7 replies, 4 voices, and was last updated 9 years, 7 months ago by valsolo.
-
AuthorPosts
-
January 30, 2014 at 8:18 pm #18674
Hi!
I am new to the forum, but I have been working with some CTRLR panels for the Waldorf Pulse (easy) and now I wanted to make one for my Korg Z1.
I decided to use the Korg Prophecy panel as a template due to the architecture being very similar or nearly identical. And I managed to make it work for things like the filter, oscillator type etc. A lot of work to do still.
But of course I arrived to some parameter with negative and positive values. I read some expression examples and have been trying and trying but I always manage to get my negative values a bit off from what I really need. I spent a lot of hours and I did not manage to make it work properly, so I guess it is down to some serious misunderstanding of how large numbers are expressed in HEX with MSB and LSB.
Here are the values that I need to obtain:
OSC 1 SEMItone Sysex Formula: [f0 42 30 46 41 01 30 01 MS LS f7] MS LS 0c 00 12 0b 00 11 0a 00 10 09 00 9 08 00 8 07 00 7 06 00 6 05 00 5 04 00 4 03 00 3 02 00 2 01 01 1 00 00 0 7f 7f -1 7e 7f -2 7d 7f -3 7c 7f -4 7b 7f -5 7a 7f -6 79 7f -7 78 7f -8 77 7f -9 76 7f -10 75 7f -11 74 7f -12
I would really appreciate if you could help me out as solving this would mean I can work again in building the much needed Korg Z1 panel. I think that beast with a proper panel would be fantastic.
Thank you in advance
January 31, 2014 at 1:30 pm #18725enter these values in your modulator’s value contents box
-12=16372
-11=16373
-10=16374
-09=16375
-08=16376
-07=16377
-06=16378
-05=16379
-04=16380
-03=16381
-02=16382
-01=16383
+0=0
+01=1
+02=2
+03=3
+04=4
+05=5
+06=6
+07=7
+08=8
+09=9
+10=10
+11=11
+12=12- This reply was modified 10 years, 2 months ago by layzer.
February 1, 2014 at 2:02 pm #18767Thank you Layzer! I did not use your list, but you pointed me in the right direction. The actual SYSEX formula that works for negatives values in the Korg Z1 is
lt (modulatorValue, 0, 16383 - (abs(modulatorValue)), modulatorValue)
Somehow I did not understand properly how the large numbers are translated to MSB and LSB… I would be grateful if you could explain a bit how you obtained the 16383 value.
Regards and thanx again! Now i am flying with the panel.
February 1, 2014 at 7:21 pm #18786simple, the 7f 7f msb,lsb pair is 16129 in decimal. but 80h*80h is what = 16384
you would think 16129 would be the value that worked, huh?all the korg Z1 is doing is starting with the 7f 7f value and decreasing the msb by one for every negative increment. go figure!
also, the list i gave would work if you swapped the lsb msb in your sysex string like so…..
Sysex Formula: [f0 42 30 46 41 01 30 00 LS MS f7
either way, glad u figured it out!
- This reply was modified 10 years, 2 months ago by layzer.
February 3, 2014 at 8:02 pm #18864Excellent! I made one mistake, I took 7f7f as a whole in its decimal value (32639) which obviously is wrong. I need to understand a bit better the conversion of hex pairs to decimal.
But now the posted formula above works for all parameters, -12/12, -50/50 or even -99/99.
Thank you again!
February 3, 2014 at 8:05 pm #18865Ok I get it now, you multiply the MSB and LSB values!
May 4, 2014 at 10:01 pm #22896Hi, I was trying to create a function based on the midivalue, but just for the hardware control, then I needed the inverse function of modulatorValue.
Here it is!lt (midiValue, 128, midiValue, midiValue – 16384)
Thanks!!!
MVXSynths
R3 / MOX6 / Electribe2 / Electribe R MkII / Electribe MX / K4R / BCR2000 / XStation61 / XStation25 / Virus Rack / Chameleon / Proteus 2500 / RM1X / KN2600September 9, 2014 at 12:30 pm #28697Hi!
How’s it going with the Z1, love to see it as I’ve got a Z1 just lying in a corner unused 🙂 -
AuthorPosts
- The forum ‘Panels, Components, Macros’ is closed to new topics and replies.