DjMmix ·
hello ,
I have a problem with SynthMaker, apparently it can make conditional jump but I see that the writing in black and it does not compile this how its done?
and how to create your label for the program points to it?
From the original SynthMaker forum (2004–2014), with its members’ names and dates.
DjMmix ·
hello ,
I have a problem with SynthMaker, apparently it can make conditional jump but I see that the writing in black and it does not compile this how its done?
and how to create your label for the program points to it?
trogluddite ·
The syntax error is on the previous line...
cmpps xmm0,1;
CMPSS requires three parameters - A register for the first value (also the destination for the result); the value to compare with (which must be a variable or another register); and an integer to set the type of comparison. For example...
cmpss xmm0,xmm1,0;
Tests whether xmm0 == xmm1, leaving the result in xmm0 - the final zero is the code for an equals comparison. There are code for all the usual tests (e.g. >, <, >=, != etc.) - not at my music machine right now to post you the full list, but if you Google for 'CMPSS', you will find it easily.
Note that it is always the first argument where the result ends up - so 'movaps i,xmm0' moves from register to variable, which I'm guessing is the opposite to what you want to acheive.
You are also mixing SSE instruction (e.g. movaps i,xmm0 - nearly always 'ps' or 'ss' at the end of the instruction name) with x86 instructions (e.g. inc i) - this also will not work, to add one to 'i', you need to define a variable with the '1' value, then increment 'i' using only SSE opcodes, like this...
float one=1; //Define constant ... ... movaps xmm0,i; addps xmm0,one; movaps i,xmm0;
MyCo ·
there are also other errors. A Label is written like this: label: and not: :label
jnz doesn't work with SSE code, it only works with the standard x86 instruction set (where you have to use eax,ebx,ecx... Registers instead of xmm0, xmm1,..)
Wrote something here? To have a post removed or your name hidden, write to [email protected].