Re: polyphonic-portamento another bug(!?)
Posted: Thu Dec 31, 2015 10:02 pm
try checking 3xosc porta or also checking exos porta on guru site.
DSP Robotics and FlowStone Graphical Programming Software Support and Forums
https://dsprobotics.com/support/
I'm afraid I have to postpone any tests. I'm currently having a very serious issue with my pc that leads to a complete halt of the system. It seems to be no virus (scans all negative), but I couldn't locate the cause. First I thought it could be the network driver, because it appeared a lot with the browser open. But while testing the issue with Reaper I had this severe system break two times in a short period of time. I then suspected ASIO4ALL, but I was working several hours with Reason, and the issue did not occur. Now I'm testing by letting the computer run for days and only avoiding Reaper. I shortly udpated Reaper, maybe there's something it doesn't like on my PC. To be honest, I would be glad if it is Reaper and not the age of the pc.Father wrote:Yes but try doing it in your DAW. Its easier because you can paint two or more notes at exact time and hear it.tulamide wrote:If it is what you are talking about, then I don't understand why it is working for me, but not for you.
Maybe a pattern like this:
D note => C chord => C chord
You can't easily notice on the first time because the slide is happening, but the second time instead of a C chord (c+e+g) you only hear a louder c note.
Code: Select all
//Read
mov eax,temp[0];
movaps xmm0,[eax];
movaps out,xmm0;Code: Select all
//Read
mov eax,temp[0];
fld [eax] ;fstp Out[0];
fld [eax] ;fstp Out[1];
fld [eax] ;fstp Out[2];
fld [eax] ;fstp Out[3];Nearly thereFather wrote:This solves the read problem:But still all the channels are the same. Is it the read or we're not writing correctly...Code: Select all
//Read mov eax,temp[0]; fld [eax] ;fstp Out[0]; fld [eax] ;fstp Out[1]; fld [eax] ;fstp Out[2]; fld [eax] ;fstp Out[3];
I did a quick test and that seemed to work. The very short read code was a 'clever' optimization, seemed to work fine when playing via a keyboard but doesn't seem to work with the piano roll when all the start times will be exactly the same.mov eax,temp[0];
fld [eax] ; fstp Out[0];
mov eax,temp[1];
fld [eax] ; fstp Out[1];
mov eax,temp[2];
fld [eax] ; fstp Out[2];
mov eax,temp[3];
fld [eax] ; fstp Out[3];
Thats exactly what i did! In theory it should've fixed it but I have no idea why didn't work. Still all the outs are the same, which is the last channel played.Exo wrote: Try this...
I did a quick test and that seemed to work. The very short read code was a 'clever' optimization, seemed to work fine when playing via a keyboard but doesn't seem to work with the piano roll when all the start times will be exactly the same.mov eax,temp[0];
fld [eax] ; fstp Out[0];
mov eax,temp[1];
fld [eax] ; fstp Out[1];
mov eax,temp[2];
fld [eax] ; fstp Out[2];
mov eax,temp[3];
fld [eax] ; fstp Out[3];
Code: Select all
polyintin addr;
streamin data;
streamboolin write;
streamout Out;
int temp = 0;
movaps xmm0,addr;
movaps temp,xmm0;
//Read
mov eax,temp[0];
fld [eax] ;fstp Out[0];
mov eax,temp[1];
fld [eax] ;fstp Out[1];
mov eax,temp[2];
fld [eax] ;fstp Out[2];
mov eax,temp[3];
fld [eax] ;fstp Out[3];
//Write
mov eax,write[0];
cmp eax,0;
jz skip0;
mov eax, temp[0];
fld data[0]; fstp [eax];
skip0:
mov eax,write[1];
cmp eax,0;
jz skip1;
mov eax, temp[1];
fld data[1]; fstp [eax];
skip1:
mov eax,write[2];
cmp eax,0;
jz skip2;
mov eax, temp[2];
fld data[2]; fstp [eax];
skip2:
mov eax,write[3];
cmp eax,0;
jz skip3;
mov eax, temp[3];
fld data[3]; fstp [eax];
skip3:
bypass: