Csound Csound-dev Csound-tekno Search About

Version 3.491

Date1998-11-05 13:20
Fromjpff@maths.bath.ac.uk
SubjectVersion 3.491
Message written at 5 Nov 1998 10:32:24 +0000

All being well I will have transferred files for Bath version 3.491 to
the server, for Windows, Console mode, and DOS, as well as sources in
ZIP and tar.gz formats.  I hope also to build an Irix5.3 binary (I
have an Irix4.0 but it seems that I am the only person in the world
still using that system).  Solaris binaries will follow.  It also runs
on my Linux machine.

The release notes are below.  You will see that this is a minor change.
==John ffitch


Release Notes for 3.491
=======================

These are the release notes for version 3.491, which will eventually
becone 3.50

Language Changes
----------------

hetro had a wrong constant which would give rise to a little noise.

Opcode Fixes
------------

sndwarp had bugs on Linux


New Opcodes 
-----------

schedule -- schedule an instrument event
schedwhen -- conditional scheduling

lfo -- Low Frequency Oscilator with 6 shapes


------------------------------------------------------------------------
==John ff
  1998 Nov 1
========================================================================

schedule, schedwhen

	schedule	inst, iwhen, idur, ....
	schedwhen	ktrigger, kinst, kwhen, kdur, ....

PERFORMANCE

schedule adds a new score event.  The arguments are the same as in a
score.  The when time (p2) is measured from the time of this event.

If the duration is zero or negative the new event is of MIDI type, and
inherits the release sub-event from the scheduling instruction.

In the case of schedwhen the event is only scheduled when the krate
value ktrigger is first non-zero.

[These functions incorporate ideas and code from G.Maldonado]

Examples:

;; Double hit and 1sec separation
instr 1
      schedule	2,  1, 0.5, p4, p5
a1    shaker	p4, 60, 0.999, 0, 100, 0
      out	a1
endin

instr 2
a1    marimba   p4, cpspch(p5), p6, p7, 2, 6.0, 0.05, 1, 0.1
      out       a1
endin 

instr 3 
kr    table	kr, 1
      schedwhen	kr, 1, 0.25, 1, p4, p5
endin
------------------------------------------------------------------------

lfo

kr	lfo		kamp, kcps[, itype]
ar	lfo		kamp, kcps[, itype]

DESCRIPTION

A LFO of various shapes

INITALIZATION

itype -- determine the form of the oscilator
  (default) 0:	sine
            1:  triangles
	    2:  square (biplar)
	    3:  square (unipolar)
	    4:  saw-tooth
	    5:  saw-tooth(down)

The sine wave is implemented as a 4096 table and linear
interpolation.  The others are calculated.

PERFORMANCE

ar, kr - output signal
kamp - amplitude
kcps - frequency of oscilator

Example:
instr 1
kp    lfo	10, 5, 4
ar    oscil	p4, p5+kp, 1
      out	ar
endin
------------------------------------------------------------------------

Date1998-11-06 17:36
FromEd Hall
SubjectRe: Version 3.491
It looks like my Alpha patches made it into this version as well.  Great!
One important note: there is a wrapper script for GCC that needs to be used
on Alpha that maps "long" variables into "int" (by far the biggest issue for
an Alpha port) and "%ld" formats into "%d".  I'll supply it in a private
message.  (This script is based on GCC and GNU BASH and SED, so it's entirely
possible that it will work on DEC Unix or Alpha NT after appropriate tools are
installed.)

Also, I'll be happy to supply Alpha Linux binaries (for glibc-based systems
like RedHat 5.x) to anyone who needs them--based on either your or the Linux
group's sources.  These are current at the moment, but I can't guarantee that
I'll be able to make new binaries for each release.

		-Ed

Date1998-11-06 19:46
FromAnders Andersson
SubjectLFO opcode
>instr 1
>kp    lfo    10, 5, 4
>ar    oscil  p4, p5+kp, 1
>      out    ar
>endin

Can anyone tell me what the difference is between the
'lfo' opcode and the (i assume) oldest and most usefull
of them all: 'oscil'?
To me, they seem to perform the exactly same thing,
except for 'oscil' being much more flexible.


.--- -- -  -
| Anders "Pipe/Nature" Andersson, pipe@algonet.se
: