Forum Replies Created
-
AuthorPosts
-
Hi!
Unfortunately I have not made any progress lately.
If you are interested in helping me out in any way we could perhaps discuss how to proceed.
BR
/PascalThanks to you both for providing quick feedback.
The boot sequence of the panel has lately changed a lot and hence what you see are some child deseases from that change.
I will look into the issue based on the logs you provided, Dashie.
I’ll get back to you with a new version when it’s ready.
BR
/PascalHi again!
Here is the latest version of the panel.
You have to press RPLIST in order to load the programs of the sampler before you begin.
You should then be able to switch and edit programs.
This is a very complex panel and I haven’t worked much on the performance yet so switching programs is very slow.
Br
/PascalAttachments:
You must be logged in to view attached files.Hi Symphincsamples!
Sorry for the late response. I have made quite a lot of updates actually. But then I have not touched the panel for a while..
I opened it up today and realized that there are some bugs I have to fix before I pass it to you as it does not work currently.
I will try do so that during this week and then I can upload the panel in the thread.
It would be great if you could test it on your sampler!
BR
/PascalI’ve posted the build issue there now.
Thanks!
/PascalThanks Atom,
If I manage to create anything valuable I will push it to my fork.
BR
/PascalHi,
Thanks for your suggestions but I would actually like to modify the source code of the core parts of Ctrlr. Not only a panel. So I need to rebuild Ctrlr from the sources.
BR
/PascalHi again,
After some more help from Stackoverflow I now have the two following algorithms:
function float2nibbles(value) local nibbles = MemoryBlock(4, true) local n = math.floor(math.abs(value) * 256 + 0.13) n = value < 0 and 0x10000 - n or n for pos = 0, 3 do nibbles:setByte(pos, n % 16) n = math.floor(n / 16) end return nibbles end function nibbles2float(memBlock, offset) local bi = BigInteger(0) bi:setBitRangeAsInt(0, 4, memBlock:getByte(offset)) bi:setBitRangeAsInt(4, 4, memBlock:getByte(offset + 1)) bi:setBitRangeAsInt(8, 4, memBlock:getByte(offset + 2)) bi:setBitRangeAsInt(12, 4, memBlock:getByte(offset + 3)) local n = 0 for i = 0, 15 do local factor = math.pow(2, i - 8) n = n + bi:getBitRangeAsInt(i, 1) * factor end return memBlock:getByte(offset + 3) >= 0x8 and n - 256 or n end
For more information you can read this thread on SO: http://stackoverflow.com/questions/38912827/convert-floating-point-values-to-hexadecimal
Atom, Thanks! I have submitted an issue on Github now.
Goodweather, I had tried your suggested SO code but obviously not thoroughly enough. I’ll take a new look at it now. BTW, which panels have you made? I would like to have a look at them as reference.
BR
/PascalHi,
I agree with the comment above about connecting your devices in a star topology. You rule out a lot of potential problems this way.
Have you verified the SYSEX INFO AVAIL setting?
Have you verified that the TX7 uses the correct MIDI channel for sysex communication (it should be channel 0)
Does the synth display any info on the LCD?
If nothing else works, have you tried the DX7 panel instead?If you open the MIDI log in Ctrlr, what does it send for Sysex messages to the TX7?
BR
/PascalI think this thread should continue here: http://ctrlr.org/forums/topic/akai-s2000/
I think this thread shoudl continue here: http://ctrlr.org/forums/topic/akai-s2000/
Hi Devo,
I saw your message now. Have you already started the work on your panels or do you still want me to export the data from jSynthlib?
BR
/PascalHi,
What is the status of this panel? I recently bought an S2000 and am currently thinking of creating a panel for it.
I would be happy to contribute to the work you have done so far and help out in finalizing this panel.
BR
/PascalHi,
Here’s my version of the panel. It is based on the driver in jSynthlib, another midi synth controller.
BR
/PascalAttachments:
You must be logged in to view attached files.Hi,
I have started working on this panel as well. It is pretty much done except that the GUI isn’t that beautiful.
Would you be interested in cooperating around this panel?
You can find my version here: https://github.com/locurasoft/Panels/tree/master/pascalc
BR
/PascalI finally released an alpha version of this panel now: http://ctrlr.org/roland-d50-alpha-version-released
BR
/PascalHi,
I haven’t published the panel yet but it is done except that it crashes on Mac OSX.
You can find the panel here: https://github.com/locurasoft/Panels/tree/master/pascalc
BR
/PascalThanks,
This is the output of the program when I add the line you suggested right after the for line, before the if statement:
LUA>> Object type [MemoryBlock] ----------------------------------------------------------------- Members: getData: function setBitRange: function getByte: function loadFromHexString: function toHexString: function insertIntoTable: function setSize: function fillWith: function insert: function setByte: function getSize: function getRange: function removeSection: function createFromTable: function swapWith: function ensureSize: function getBitRange: function copyTo: function replaceWith: function __init: function copyFrom: function toString: function append: function fromBase64Encoding: function toBase64Encoding: function toLuaTable: function Attributes: ----------------------------------------------------------------- LUA>> Object type [MemoryBlock] ----------------------------------------------------------------- Members: getData: function setBitRange: function getByte: function loadFromHexString: function toHexString: function insertIntoTable: function setSize: function fillWith: function insert: function setByte: function getSize: function getRange: function removeSection: function createFromTable: function swapWith: function ensureSize: function getBitRange: function copyTo: function replaceWith: function __init: function copyFrom: function toString: function append: function fromBase64Encoding: function toBase64Encoding: function toLuaTable: function Attributes: ----------------------------------------------------------------- At line [-1]: [C] What: C Namewhat: method Name: getData Error message: std::runtime_error: 'Trying to use unregistered class'
The weird thing is that I get two printouts (there are a lot more elements in the table)
The debugger!
Great tool.
Thanks
/Pascal -
AuthorPosts