summaryrefslogtreecommitdiff
path: root/scoregens
diff options
context:
space:
mode:
authorFelipe Sateler <fsateler@gmail.com>2008-05-30 14:06:50 -0400
committerFelipe Sateler <fsateler@gmail.com>2008-05-30 14:06:50 -0400
commitda33d1a13eb652567c154e1fc007c27a5f75d8a0 (patch)
treea0ab37abb6728f446d5d96112a7366a91cefc550 /scoregens
parent2af72543872544f18b7e3812cb64d9fe5886c47b (diff)
Imported Upstream version 5.09~cvs20080529
Diffstat (limited to 'scoregens')
-rw-r--r--scoregens/f.xml18
-rw-r--r--scoregens/topXO.xml291
2 files changed, 308 insertions, 1 deletions
diff --git a/scoregens/f.xml b/scoregens/f.xml
index ff9c7cf..f746e72 100644
--- a/scoregens/f.xml
+++ b/scoregens/f.xml
@@ -71,7 +71,23 @@
</para>
<para>
- An <emphasis>f 0 statement</emphasis> (zero p1, positive p2) may be used to create an action time with no associated action. Such time markers are useful for padding out a score section (see <link linkend="s"><citetitle>s statement</citetitle></link>).
+ An <emphasis>f 0 statement</emphasis> (zero p1, positive p2) may be used to create an action time with no associated action. Such time markers are useful for padding out a score section (see <link linkend="s"><citetitle>s statement</citetitle></link>) and for letting csound run from realtime events only (e.g. using only MIDI input without score events).
+
+ <para>
+ The simplest way to fill a table (f1) with 0's is:
+ <literallayout>f1 0 xx 2 0</literallayout>
+ where xx = table size.
+ </para>
+
+ <para>
+ The simplest way to fill a table (f1) with *any* single value is:
+ <literallayout>f1 0 xx -7 yy xx yy</literallayout>
+ where xx = table size and yy = any single value
+ </para>
+
+ <para>
+ In both of the above examples, table size (p3) must be a power of 2 or power-of-2 plus 1.
+ </para>
</para>
</refsect2>
</refsect1>
diff --git a/scoregens/topXO.xml b/scoregens/topXO.xml
new file mode 100644
index 0000000..d8fefc7
--- /dev/null
+++ b/scoregens/topXO.xml
@@ -0,0 +1,291 @@
+
+<chapter id="ScoregensTop">
+ <title>Score Statements and GEN Routines</title>
+
+ <section id="ScoreStatementsRef">
+ <title>Score Statements</title>
+ <para>
+ The statements used in scores are:
+ <itemizedlist>
+ <listitem><para>
+ <link linkend="a"><citetitle>a</citetitle></link> - Advance score time by a specified amount
+ </para></listitem>
+ <listitem><para>
+ <link linkend="b"><citetitle>b</citetitle></link> - Resets the clock
+ </para></listitem>
+ <listitem><para>
+ <link linkend="e"><citetitle>e</citetitle></link> - Marks the end of the last section of the score
+ </para></listitem>
+ <listitem><para>
+ <link linkend="f"><citetitle>f</citetitle></link> - Causes a <link linkend="ScoreGenRef"><citetitle>GEN subroutine</citetitle></link> to place values in a stored function table
+ </para></listitem>
+ <listitem><para>
+ <link linkend="i"><citetitle>i</citetitle></link> - Makes an instrument active at a specific time and for a certain duration
+ </para></listitem>
+ <listitem><para>
+ <link linkend="m"><citetitle>m</citetitle></link> - Sets a named mark in the score
+ </para></listitem>
+ <listitem><para>
+ <link linkend="n"><citetitle>n</citetitle></link> - Repeats a marked section
+ </para></listitem>
+ <listitem><para>
+ <link linkend="q"><citetitle>q</citetitle></link> - Used to quiet an instrument
+ </para></listitem>
+ <listitem><para>
+ <link linkend="r"><citetitle>r</citetitle></link> - Starts a repeated section
+ </para></listitem>
+ <listitem><para>
+ <link linkend="s"><citetitle>s</citetitle></link> - Marks the end of a section
+ </para></listitem>
+ <listitem><para>
+ <link linkend="t"><citetitle>t</citetitle></link> - Sets the tempo
+ </para></listitem>
+ <listitem><para>
+ <link linkend="v"><citetitle>v</citetitle></link> - Provides for locally variable time warping of score events
+ </para></listitem>
+ <listitem><para>
+ <link linkend="x"><citetitle>x</citetitle></link> - Skip the rest of the current section
+ </para></listitem>
+ <listitem><para>
+ <link linkend="leftbrace"><citetitle>{</citetitle></link> - Begins a non-sectional, nestable loop
+ </para></listitem>
+ <listitem><para>
+ <link linkend="rightbrace"><citetitle>}</citetitle></link> - Ends a non-sectional, nestable loop
+ </para></listitem>
+ </itemizedlist>
+ </para>
+
+ </section>
+ &scoregensa;
+ &scoregensb;
+ &scoregense;
+ &scoregensf;
+ &scoregensi;
+ &scoregensm;
+ &scoregensn;
+ &scoregensq;
+ &scoregensr;
+ &scoregenss;
+ &scoregenst;
+ &scoregensv;
+ &scoregensx;
+ &scoregensleftbrace;
+ &scoregensrightbrace;
+
+ <section id="ScoreGenRef">
+ <title>GEN Routines</title>
+ <para>GEN routines are used as data generators for function tables. When a function table is created using the <link linkend="f"><citetitle>f score statement</citetitle></link> the GEN function is given as its fourth argument. A negative GEN number implies that the function is not rescaled, and maintains its original values.</para>
+
+ <bridgehead>Sine/Cosine Generators: </bridgehead>
+ <itemizedlist>
+ <listitem>
+ <simpara><link linkend="GEN09"><citetitle>GEN09</citetitle></link> - Composite waveforms made up of weighted sums of simple sinusoids.</simpara>
+ </listitem>
+ <listitem>
+ <simpara><link linkend="GEN10"><citetitle>GEN10</citetitle></link> - Composite waveforms made up of weighted sums of simple sinusoids.</simpara>
+ </listitem>
+ <listitem>
+ <simpara><link linkend="GEN11"><citetitle>GEN11</citetitle></link> - Additive set of cosine partials.</simpara>
+ </listitem>
+ <listitem>
+ <simpara><link linkend="GEN19"><citetitle>GEN19</citetitle></link> - Composite waveforms made up of weighted sums of simple sinusoids.</simpara>
+ </listitem>
+ <listitem>
+ <simpara><link linkend="GEN30"><citetitle>GEN30</citetitle></link> - Generates harmonic partials by analyzing an existing table.</simpara>
+ </listitem>
+ <listitem>
+ <simpara><link linkend="GEN33"><citetitle>GEN33</citetitle></link> - Generate composite waveforms by mixing simple sinusoids.</simpara>
+ </listitem>
+ <listitem>
+ <simpara><link linkend="GEN34"><citetitle>GEN34</citetitle></link> - Generate composite waveforms by mixing simple sinusoids.</simpara>
+ </listitem>
+ </itemizedlist>
+
+ <bridgehead>
+ Line/Exponential Segment Generators:
+ </bridgehead>
+ <itemizedlist>
+ <listitem>
+ <simpara><link linkend="GEN05"><citetitle>GEN05</citetitle></link> - Constructs functions from segments of exponential curves.</simpara>
+ </listitem>
+ <listitem>
+ <simpara><link linkend="GEN06"><citetitle>GEN06</citetitle></link> - Generates a function comprised of segments of cubic polynomials.</simpara>
+ </listitem>
+ <listitem>
+ <simpara><link linkend="GEN07"><citetitle>GEN07</citetitle></link> - Constructs functions from segments of straight lines.</simpara>
+ </listitem>
+ <listitem>
+ <simpara><link linkend="GEN08"><citetitle>GEN08</citetitle></link> - Generate a piecewise cubic spline curve.</simpara>
+ </listitem>
+ <listitem>
+ <simpara><link linkend="GEN16"><citetitle>GEN16</citetitle></link> - Creates a table from a starting value to an ending value.</simpara>
+ </listitem>
+ <listitem>
+ <simpara><link linkend="GEN25"><citetitle>GEN25</citetitle></link> - Construct functions from segments of exponential curves in breakpoint fashion.</simpara>
+ </listitem>
+ <listitem>
+ <simpara><link linkend="GEN27"><citetitle>GEN27</citetitle></link> - Construct functions from segments of straight lines in breakpoint fashion.</simpara>
+ </listitem>
+ </itemizedlist>
+
+
+
+ <bridgehead>
+ File Access GEN Routines:
+ </bridgehead>
+ <itemizedlist>
+ <listitem>
+ <simpara><link linkend="GEN01"><citetitle>GEN01</citetitle></link> - Transfers data from a soundfile into a function table.</simpara>
+ </listitem>
+ <listitem>
+ <simpara><link linkend="GEN23"><citetitle>GEN23</citetitle></link> - Reads numeric values from a text file.</simpara>
+ </listitem>
+ <listitem>
+ <simpara><link linkend="GEN28"><citetitle>GEN28</citetitle></link> - Reads a text file which contains a time-tagged trajectory.</simpara>
+ </listitem>
+ </itemizedlist>
+
+ <bridgehead>
+ Numeric Value Access GEN Routines
+ </bridgehead>
+ <itemizedlist>
+ <listitem>
+ <simpara><link linkend="GEN02"><citetitle>GEN02</citetitle></link> - Transfers data from immediate pfields into a function table.</simpara>
+ </listitem>
+ <listitem>
+ <simpara><link linkend="GEN17"><citetitle>GEN17</citetitle></link> - Creates a step function from given x-y pairs.</simpara>
+ </listitem>
+ <listitem>
+ <simpara><link linkend="GEN52"><citetitle>GEN52</citetitle></link> - Creates an interleaved multichannel table from the specified source tables, in the format expected by the <emphasis>ftconv</emphasis> opcode.</simpara>
+ </listitem>
+ </itemizedlist>
+
+ <bridgehead>
+ Window Function GEN Routines
+ </bridgehead>
+ <itemizedlist>
+ <listitem>
+ <simpara><link linkend="GEN20"><citetitle>GEN20</citetitle></link> - Generates functions of different windows.</simpara>
+ </listitem>
+ </itemizedlist>
+
+
+
+ <bridgehead>
+ Random Function GEN Routines
+ </bridgehead>
+ <itemizedlist>
+ <listitem>
+ <simpara><link linkend="GEN21"><citetitle>GEN21</citetitle></link> - Generates tables of different random distributions.</simpara>
+ </listitem>
+ <listitem>
+ <simpara><link linkend="GEN40"><citetitle>GEN40</citetitle></link> - Generates a random distribution using a distribution histogram.</simpara>
+ </listitem>
+ <listitem>
+ <simpara><link linkend="GEN41"><citetitle>GEN41</citetitle></link> - Generates a random list of numerical pairs.</simpara>
+ </listitem>
+ <listitem>
+ <simpara><link linkend="GEN42"><citetitle>GEN42</citetitle></link> - Generates a random distribution of discrete ranges of values.</simpara>
+ </listitem>
+ <listitem>
+ <simpara><link linkend="GEN43"><citetitle>GEN43</citetitle></link> - Loads a PVOCEX file containing a PV analysis.</simpara>
+ </listitem>
+ </itemizedlist>
+
+ <bridgehead>
+ Waveshaping GEN Routines
+ </bridgehead>
+ <itemizedlist>
+ <listitem>
+ <simpara><link linkend="GEN03"><citetitle>GEN03</citetitle></link> - Generates a stored function table by evaluating a polynomial.</simpara>
+ </listitem>
+ <listitem>
+ <simpara><link linkend="GEN13"><citetitle>GEN13</citetitle></link> - Stores a polynomial whose coefficients derive from the Chebyshev polynomials of the first kind.</simpara>
+ </listitem>
+ <listitem>
+ <simpara><link linkend="GEN14"><citetitle>GEN14</citetitle></link> - Stores a polynomial whose coefficients derive from Chebyshevs of the second kind.</simpara>
+ </listitem>
+ <listitem>
+ <simpara><link linkend="GEN15"><citetitle>GEN15</citetitle></link> - Creates two tables of stored polynomial functions.</simpara>
+ </listitem>
+ </itemizedlist>
+
+ <bridgehead>
+ Amplitude Scaling GEN Routines
+ </bridgehead>
+ <itemizedlist>
+ <listitem>
+ <simpara><link linkend="GEN04"><citetitle>GEN04</citetitle></link> - Generates a normalizing function.</simpara>
+ </listitem>
+ <listitem>
+ <simpara><link linkend="GEN12"><citetitle>GEN12</citetitle></link> - Generates the log of a modified Bessel function of the second kind.</simpara>
+ </listitem>
+ <listitem>
+ <simpara><link linkend="GEN24"><citetitle>GEN24</citetitle></link> - Reads numeric values from another allocated function-table and rescales them.</simpara>
+ </listitem>
+ </itemizedlist>
+
+ <bridgehead>
+ Mixing GEN Routines
+ </bridgehead>
+ <itemizedlist>
+ <listitem>
+ <simpara><link linkend="GEN18"><citetitle>GEN18</citetitle></link> - Writes composite waveforms made up of pre-existing waveforms.</simpara>
+ </listitem>
+ <listitem>
+ <simpara><link linkend="GEN31"><citetitle>GEN31</citetitle></link> - Mixes any waveform specified in an existing table.</simpara>
+ </listitem>
+ <listitem>
+ <simpara><link linkend="GEN32"><citetitle>GEN32</citetitle></link> - Mixes any waveform, resampled with either FFT or linear interpolation.</simpara>
+ </listitem>
+ </itemizedlist>
+
+ <bridgehead>
+ Pitch and Tuning GEN Routines
+ </bridgehead>
+ <itemizedlist>
+ <listitem>
+ <simpara><link linkend="GEN51"><citetitle>GEN51</citetitle></link> - fills a table with a fully customized micro-tuning scale, in the manner of Csound opcodes <emphasis>cpstun</emphasis>, <emphasis>cpstuni</emphasis> and <emphasis>cpstmid</emphasis>.</simpara>
+ </listitem>
+ </itemizedlist>
+ </section>
+ &scoregensgen01;
+ &scoregensgen02;
+ &scoregensgen03;
+ &scoregensgen04;
+ &scoregensgen05;
+ &scoregensgen06;
+ &scoregensgen07;
+ &scoregensgen08;
+ &scoregensgen09;
+ &scoregensgen10;
+ &scoregensgen11;
+ &scoregensgen12;
+ &scoregensgen13;
+ &scoregensgen14;
+ &scoregensgen15;
+ &scoregensgen16;
+ &scoregensgen17;
+ &scoregensgen18;
+ &scoregensgen19;
+ &scoregensgen20;
+ &scoregensgen21;
+<!-- &scoregensgen22; -->
+ &scoregensgen23;
+ &scoregensgen24;
+ &scoregensgen25;
+ &scoregensgen27;
+ &scoregensgen28;
+ &scoregensgen30;
+ &scoregensgen31;
+ &scoregensgen32;
+ &scoregensgen33;
+ &scoregensgen34;
+ &scoregensgen40;
+ &scoregensgen41;
+ &scoregensgen42;
+ &scoregensgen43;
+ &scoregensgen51;
+ &scoregensgen52;
+
+</chapter>