| jpff@codemist.co.uk wrote:
> I have done a search over the entry[12].c against the manual and the
> following are not obviously accounted for
>
> cggoto
> cogoto
Internal opcodes to which some specific uses of if..then expand.
cggoto evaluates the boolean expression both at init and perf time,
and jumps to the label if the condition is true. cogoto jumps at
i-time if the condition is not true, and always jumps at performance
time.
Not sure if these should actually be documented.
> goto
Well, I would have assumed this one to be already documented !
> loop_g
> loop_ge
> loop_l
> loop_le
Were discussed on the lists a few times, and a copy of an earlier
message explaining the syntax of these and some other new opcodes
is included below.
> mod
This is an internal opcode that implements the % operator, and
should not necessarily be documented.
> nlalp Is this not subject to a patent???
If I recall correctly, this opcode was removed at some point in time,
but was added again as part of a group of opcodes ported from CsoundAV
by Andres Cabrera this year.
> printf
> printf_i
Also documented below.
> soundouts
Same as soundout, but stereo:
soundouts a1, a2, ifilcod, iformat
> sprintfk
> strcatk
> strcmpk
> strcpyk
These are already documented as sprintf, strcat, strcmp, and
strcpy, respectively, and the "k" versions that are mentioned
in the manual differ only in running both at i- and k-rate,
as opposed to running at i-rate only.
> and the following are probably OK but it was not obvious
>
> !=
> $label
> &&
> :a
> :i
> :k
> <
> <=
> =
> ==
>
>>=
>
> a
> add
> div
> k
> mul
> sub
> ||
Most of the above are either well known and already documented
basic arithmetic, logical, and relational operators, or their
internal representation which is probably best to keep undocumented.
For example, the following expression
ifoo * ibar
is expanded by the parser to something like
#i0 mul.ii ifoo, ibar
-------------------------------------------------------------------
jpff@codemist.co.uk wrote:
> Istvan> ftfree ifno, iwhen
Deletes function table "ifno", at init time if iwhen is zero,
otherwise registers the table number for being deleted at note
deactivation.
> Istvan> ftgentmp ifno, ip2dummy, ilength, igen, iarg1, ...
The correct syntax is:
ifno ftgentmp ip1, ip2dummy, ilength, igen, iarg1, ...
This opcode is the generally the same as ftgen, but if an automatic
table number is requested with ip1=0, the table will be deleted at
note deactivation.
> Istvan> loop_g indx, idecr, imin, label
Is equivalent to, but is shorter and faster than:
indx = indx - idecr
if (indx > imin) igoto label
> Istvan> loop_g kndx, kdecr, kmin, label
kndx = kndx - kdecr
if (kndx > kmin) kgoto label
> Istvan> loop_ge indx, idecr, imin, label
indx = indx - idecr
if (indx >= imin) igoto label
> Istvan> loop_ge kndx, kdecr, kmin, label
kndx = kndx - kdecr
if (kndx >= kmin) kgoto label
> Istvan> loop_l indx, iincr, imax, label
indx = indx + iincr
if (indx < imax) igoto label
> Istvan> loop_l kndx, kincr, kmax, label
kndx = kndx + kincr
if (kndx < kmax) kgoto label
> Istvan> loop_le indx, iincr, imax, label
indx = indx + iincr
if (indx <= imax) igoto label
> Istvan> loop_le kndx, kincr, kmax, label
kndx = kndx + kincr
if (kndx <= kmax) kgoto label
> Istvan> printf Sformat, ktrig, ...
Prints at control rate whenever ktrig is both greater than zero and
different from the previous value which is assumed to be zero at note
initialization. The format string and argument list are similar to
the C function.
> Istvan> printf_i Sformat, itrig, ...
Prints at i-time if itrig is greater than zero.
> Istvan> In addition, the sources include the new LADSPA/DSSI plugin host
> Istvan> opcodes by Andres Cabrera.
>
> Are these all described in the manual?
I did not write those opcodes, but I think they are not finished yet,
and some functionality is not implemented.
-------------------------------------------------------
This SF.Net email is sponsored by:
Power Architecture Resource Center: Free content, downloads, discussions,
and more. http://solutions.newsforge.com/ibmarch.tmpl
_______________________________________________
Csound-devel mailing list
Csound-devel@lists.sourceforge.net |