Csound Csound-dev Csound-tekno Search About

Re: Manual formats

Date1997-02-12 23:35
FromDave Phillips
SubjectRe: Manual formats
My vote's in for ASCII and HTML, I can read both in Linux. Does anyone
know of a reader for RTF that works under Linux ? I'd like to read the
article Dr Boulanger sent recently...

== Dave Phillips

   http://www.bright.net/~dlphilp/index.html

Date1997-02-13 13:46
FromSimon Kagedal
SubjectRe: Manual formats
> My vote's in for ASCII and HTML, I can read both in Linux. Does anyone
> know of a reader for RTF that works under Linux ? I'd like to read the
> article Dr Boulanger sent recently...

You can convert RTF to HTML (using rtftohtml, http://www.sunpack.com/RTF/)
for online reading, or to LaTeX (using rtf2latex) for printing (or
viewing with ghostview or something).

I just have to say this on the manual issue: the question isn't what
format is most portable, it's what format is best convertable to
most other formats. Because csound is used on so many different
systems. The manual would be written in one language/format and then
converted and uploaded by the distributor in ASCII, HTML, RTF, info and
what else is wanted.

I'd give my vote for something like SGML.

-- 
/simon




Received: from stork2.maths.bath.ac.uk by omphalos.maths.Bath.AC.UK id aa17617;
          13 Feb 97 14:18 GMT
Received: from goggins.bath.ac.uk by stork.maths.Bath.AC.UK id aa20999;
          13 Feb 97 14:19 GMT
Received: from hermes.ex.ac.uk by goggins.bath.ac.uk with SMTP (PP);
          Thu, 13 Feb 1997 14:18:52 +0000
Received: from noether [144.173.8.10] by hermes via SMTP (OAA04208);
          Thu, 13 Feb 1997 14:11:10 GMT
Received: from hermes.ex.ac.uk by noether.maths.exeter.ac.uk;
          Thu, 13 Feb 97 14:10:57 GMT
Received: from www.sdf.se [194.218.219.11] by hermes via ESMTP (OAA04142);
          Thu, 13 Feb 1997 14:10:35 GMT
Received: from what.sdf.se (simon@what [192.168.1.15])	by www.sdf.se (8.8.5/8.8.5) 
          with ESMTP id PAA28227	for ;
          Thu, 13 Feb 1997 15:09:45 +0100 (MET)
Received: (from simon@localhost)	by what.sdf.se (8.8.5/8.8.5) 
          id PAA04798	for csound@maths.ex.ac.uk;
          Thu, 13 Feb 1997 15:07:43 +0100 (MET)
From: Simon Kagedal 
Message-Id: <199702131407.PAA04798@what.sdf.se>
Subject: Re: prettyness of code (was Re: hidden MIDI functions)
To: csound@maths.ex.ac.uk
Date: Thu, 13 Feb 1997 15:07:41 +0100 (MET)
In-Reply-To:  from "Bradley James Lindseth" at Feb 12, 97 10:42:49 pm
X-Mailer: ELM [version 2.4 PL24 ME7]
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 7bit
Sender: owner-csound-outgoing@maths.ex.ac.uk
Precedence: bulk

Brad wrote:

> use of GNU configure would be nice for the user and the code reader.

Agreed, a lot... Also, speeking about the distribution: 

* it would be nice if all those *.c and *.h files that lays in 
  the top directory were moved to something like src/. 

* IMHO, the package should called something like Csound_3.45.tar.gz.
  So you know what you get..

Greetz,

-- 
/simon




Received: from stork2.maths.bath.ac.uk by omphalos.maths.Bath.AC.UK id aa17668;
          13 Feb 97 14:38 GMT
Received: from goggins.bath.ac.uk by stork.maths.Bath.AC.UK id aa21618;
          13 Feb 97 14:39 GMT
Received: from big.fishnet.net by goggins.bath.ac.uk with SMTP (PP);
          Thu, 13 Feb 1997 14:39:14 +0000
Received: from sinewave (port022.vta.fishnet.net [205.216.133.171]) 
          by big.fishnet.net (8.7.5/8.6.9) with SMTP id GAA08209;
          Thu, 13 Feb 1997 06:46:57 -0800
Sender: toby@big.fishnet.net
Message-ID: <3303280E.170CDAA8@rcsreg.com>
Date: Thu, 13 Feb 1997 06:41:18 -0800
From: Toby 
X-Mailer: Mozilla 3.01Gold (X11; I; Linux 2.0.27 i486)
MIME-Version: 1.0
To: jpff@maths.bath.ac.uk
CC: csound@noether.ex.AC.UK
Subject: Re: Manual....
References: <199702131207.MAA18868@hermes>
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit

> What is wrong with ASCII?  Readable on nearly everything.
> Unconfusing, does not rely on some uncontrolled browser.  It has stood
> the test of time, is well understood, easy to fix when corrupted.
> Printers understand it.  Editors understand it.
> 
> ==John

Yes.  Certainly, at the least, ASCII formats of
the manual should be available along-side of any
other chosen format.

grep '[Gg]lobal [Rr]everb' manual > revkeys

Let us not be so quick to severe our roots.


Received: from stork2.maths.bath.ac.uk by omphalos.maths.Bath.AC.UK id aa17702;
          13 Feb 97 14:46 GMT
Received: from goggins.bath.ac.uk by stork.maths.Bath.AC.UK id ab21910;
          13 Feb 97 14:47 GMT
Received: from hermes.ex.ac.uk by goggins.bath.ac.uk with SMTP (PP);
          Thu, 13 Feb 1997 14:46:51 +0000
Received: from noether [144.173.8.10] by hermes via SMTP (OAA07531);
          Thu, 13 Feb 1997 14:39:42 GMT
Received: from hermes.ex.ac.uk by noether.maths.exeter.ac.uk;
          Thu, 13 Feb 97 14:39:28 GMT
Received: from root@big.fishnet.net [205.216.133.3] by hermes 
          via ESMTP (OAA07508); Thu, 13 Feb 1997 14:39:24 GMT
Received: from sinewave (port022.vta.fishnet.net [205.216.133.171]) 
          by big.fishnet.net (8.7.5/8.6.9) with SMTP id GAA08209;
          Thu, 13 Feb 1997 06:46:57 -0800
Message-Id: <3303280E.170CDAA8@rcsreg.com>
Date: Thu, 13 Feb 1997 06:41:18 -0800
From: Toby 
X-Mailer: Mozilla 3.01Gold (X11; I; Linux 2.0.27 i486)
Mime-Version: 1.0
To: jpff@maths.bath.ac.uk
Cc: csound@maths.ex.ac.uk
Subject: Re: Manual....
References: <199702131207.MAA18868@hermes>
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Sender: owner-csound-outgoing@maths.ex.ac.uk
Precedence: bulk

> What is wrong with ASCII?  Readable on nearly everything.
> Unconfusing, does not rely on some uncontrolled browser.  It has stood
> the test of time, is well understood, easy to fix when corrupted.
> Printers understand it.  Editors understand it.
> 
> ==John

Yes.  Certainly, at the least, ASCII formats of
the manual should be available along-side of any
other chosen format.

grep '[Gg]lobal [Rr]everb' manual > revkeys

Let us not be so quick to severe our roots.



Received: from stork2.maths.bath.ac.uk by omphalos.maths.Bath.AC.UK id aa17702;
          13 Feb 97 14:46 GMT
Received: from goggins.bath.ac.uk by stork.maths.Bath.AC.UK id ab21910;
          13 Feb 97 14:47 GMT
Received: from hermes.ex.ac.uk by goggins.bath.ac.uk with SMTP (PP);
          Thu, 13 Feb 1997 14:46:51 +0000
Received: from noether [144.173.8.10] by hermes via SMTP (OAA07531);
          Thu, 13 Feb 1997 14:39:42 GMT
Received: from hermes.ex.ac.uk by noether.maths.exeter.ac.uk;
          Thu, 13 Feb 97 14:39:28 GMT
Received: from root@big.fishnet.net [205.216.133.3] by hermes 
          via ESMTP (OAA07508); Thu, 13 Feb 1997 14:39:24 GMT
Received: from sinewave (port022.vta.fishnet.net [205.216.133.171]) 
          by big.fishnet.net (8.7.5/8.6.9) with SMTP id GAA08209;
          Thu, 13 Feb 1997 06:46:57 -0800
Message-Id: <3303280E.170CDAA8@rcsreg.com>
Date: Thu, 13 Feb 1997 06:41:18 -0800
From: Toby 
X-Mailer: Mozilla 3.01Gold (X11; I; Linux 2.0.27 i486)
Mime-Version: 1.0
To: jpff@maths.bath.ac.uk
Cc: csound@maths.ex.ac.uk
Subject: Re: Manual....
References: <199702131207.MAA18868@hermes>
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Sender: owner-csound-outgoing@maths.ex.ac.uk
Precedence: bulk

> What is wrong with ASCII?  Readable on nearly everything.
> Unconfusing, does not rely on some uncontrolled browser.  It has stood
> the test of time, is well understood, easy to fix when corrupted.
> Printers understand it.  Editors understand it.
> 
> ==John

Yes.  Certainly, at the least, ASCII formats of
the manual should be available along-side of any
other chosen format.

grep '[Gg]lobal [Rr]everb' manual > revkeys

Let us not be so quick to severe our roots.



Received: from stork2.maths.bath.ac.uk by omphalos.maths.Bath.AC.UK id aa18155;
          13 Feb 97 16:47 GMT
Received: from goggins.bath.ac.uk by stork.maths.Bath.AC.UK id aa26245;
          13 Feb 97 16:48 GMT
Received: from hermes.ex.ac.uk by goggins.bath.ac.uk with SMTP (PP);
          Thu, 13 Feb 1997 16:48:27 +0000
Received: from noether [144.173.8.10] by hermes via SMTP (QAA22617);
          Thu, 13 Feb 1997 16:39:52 GMT
Received: from hermes.ex.ac.uk by noether.maths.exeter.ac.uk;
          Thu, 13 Feb 97 16:39:35 GMT
Received: from mailbox.swip.net [193.12.122.1] by hermes via ESMTP (QAA22572);
          Thu, 13 Feb 1997 16:39:32 GMT
Received: from rasmus (dialup75-5-13.swipnet.se [130.244.75.113])           
          by mailbox.swip.net (8.7.6swip/8.7.3) with SMTP           
          id RAA18885 for ;
          Thu, 13 Feb 1997 17:39:10 +0100 (MET)
Message-Id: <33034509.221A@hexagon.se>
Date: Thu, 13 Feb 1997 17:44:57 +0100
From: rasmus ekman 
X-Mailer: Mozilla 3.0 (Win95; I)
Mime-Version: 1.0
To: csound@maths.ex.ac.uk
Subject: Re: Manual....
References: <199702131207.MAA18868@hermes> <3303280E.170CDAA8@rcsreg.com>
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Sender: owner-csound-outgoing@maths.ex.ac.uk
Precedence: bulk

Toby wrote:
> 
> > What is wrong with ASCII?  Readable on nearly everything.
> >
> > ==John
> 
> Yes.  Certainly, at the least, ASCII formats of
> the manual should be available along-side of any
> other chosen format.
> 
> Let us not be so quick to severe our roots.

Well, I refuse to read text that is not hardcoded into
Java ticker tape applets. 
And there will be no other format, so you'll just have to cope.

	re

-----
"Nothing is portable. Everything is convertible."

   - Hassan i Sabbah-Gates



Received: from stork2.maths.bath.ac.uk by omphalos.maths.Bath.AC.UK id aa18341;
          13 Feb 97 17:43 GMT
Received: from goggins.bath.ac.uk by stork.maths.Bath.AC.UK id aa01297;
          13 Feb 97 17:44 GMT
Received: from hermes.ex.ac.uk by goggins.bath.ac.uk with SMTP (PP);
          Thu, 13 Feb 1997 17:44:28 +0000
Received: from noether [144.173.8.10] by hermes via SMTP (RAA28760);
          Thu, 13 Feb 1997 17:34:25 GMT
Received: from hermes.ex.ac.uk by noether.maths.exeter.ac.uk;
          Thu, 13 Feb 97 17:34:12 GMT
Received: from mail1.themall.net [204.80.99.30] by hermes via ESMTP (RAA28102);
          Thu, 13 Feb 1997 17:27:24 GMT
Received: from default (Cust83.Max31.Atlanta.GA.MS.UU.NET [153.35.56.83]) 
          by mail.themall.net (8.8.5/8.8.2/IIAM 1.0 (DCH)) with ESMTP 
          id JAA16824 for ;
          Thu, 13 Feb 1997 09:27:13 -0800 (PST)
Message-Id: <199702131727.JAA16824@mail.themall.net>
From: John C 
To: CSound mailing list 
Subject: Followup to various Csound bugs
Date: Fri, 13 Jun 1997 11:18:43 -0500
X-Msmail-Priority: Normal
X-Priority: 3
X-Mailer: Microsoft Internet Mail 4.70.1160
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 7bit
Sender: owner-csound-outgoing@maths.ex.ac.uk
Precedence: bulk

Hello Csound mailing list members,

So far, I have written two letters to the mailing list, but posted no
solutions.  Now, it's time for me to give back a little.  My first letter
had to do with Csound examples using the MIDI features.  Without examples,
the manual is pretty opaque.  Someone suggested the big Csound distribution
at Keyboard Magazine.  I didn't find any examples of MIDI rendering based
on .WAV or .AIFF files in the files Keyboard added, but wandering around
later, I came across examples in a file entitled "csound_tar.gz".  The
files are titled things like "pastoral", "123" and "strings" with ".mf",
".orc" and ".sco".  I think it is a version 2.x distribution.  Oddly, I
don't see these files in the csound95.exe distribution, or the
"csound_src.zip" file, but the samples these examples use are still up on
the MIT FTP server.  The problem with these examples is that they won't
run, as is.  They are missing a parameter in the ".sco" files which is not
documented in the HTML Manual Version 2, but IS documented in the
"csound.hlp" windows help file, which is less complete.

The next letter I wrote concerned a big problem I was having determining
the sign of a function at a-rate.  Somebody on the mailing list emailed me
directly with the solution.  That's great, because I don't want the full
mailing list feed, so I haven't subscribed.  I believe my benefactor's name
is Mike Pocino.  The statements which I finally wound up with, and which
work, are:

inum		=1/1e10					;ie9 too small, 1e15 too big
asignl	table al* inum +.5, 3,1,0.5
asignr	table ar* inum +.5, 3,1,0.5

in the .orc file, and:

f3 0 2 -2 -1 1

in the .sco file.  I work with some really big numbers in power
calculations for doing two pans of stereo instruments.

I have more information about the Csound95 3.44 division bug, and a new one
as well.  Apparently, this bug affects any divisions made at a-rate.  The
results are often right, but periodically wrong.  Notice that I multiply by
the ivar set to 1/1e10, instead of dividing by 1e10.  If I try to do this,
I get erratic results.

I believe I have found another "bug", but if it works as designed, it was
designed poorly.  It is sometimes necessary to assign a constant to a
variable of a suitable type in order to utilize it.  The "table" definition
with an a-rate result is:

ar	table		andx, ifn[, ixmode][, ixoff][, iwrap]

and I had one problem in a test case where it did not work using a constant
for andx, but did when using a variable.  Uncharacteristically, I have not
tested this bug extensively before reporting it, but have seen examples of
code assigning constants to variables before use.  There is no need for
this sort of behavior by the interpreter, since the constant could be
assigned to a suitable temporary variable hidden by Csound, and executed. 
As it is, if this is indeed the case, then the interpreter provides no
warning that this is illegal syntax, and thus new programmers are
constantly spend hours debugging a construct that looks like it should
work.

A few more ways Csound needs to be extended in order to make it a decent
language:  exp() raises to an exponent of the natural constant e, but log
finds the exponent for the mantissa of 10.  These two functions are
incompatible, and must be interconverted to use both.  If an interpreter
supplies exp(), it should supply ln().  If it supplies log(), it should
also provide for exponents such as 10**x, or supply a exp10() function
perhaps.

Csound needs block IF's, ELSE's, and ELSE IF statements.  This helps make
programming more readable.  I also think that if you have an IF ... {} or
IF ... THEN type construct, then the interpreter could choose goto, igoto
or kgoto depending on the type of the resulting expression.  I have spent
some time finding such a bug where I had the wrong type of goto myself,
because I had cut and pasted some code, and missed one.  Also, functions
with replacable parameters and a typed result would be useful.

Csound is a beautiful concept: a sound processing language that is fast
enough that it can even work in some realtime applications, and is platform
independent.  Working with it, however, doesn't give one the impression of
the type of language design we were taught about in computer science
classes, where the language is constructed in a way to minimize coding
errors and maximize flexibility.  Rather, it is somewhat like my experience
working with dBase III+, where all types of constructs which look like they
logically should work, don't, due to quirks in the implementation of the
language.  You just have to spend unnecessary hours upon hours debugging,
until you can create a construct in the language which does work.  Or you
have to spend hours developing complicated workarounds, because a simple
flag or function wasn't implemented in an obvious omission.  With better
language design, all this could be avoided.

By the way, another bug I have in the Csound95 implementation: the kdump
statement seems broken.  If I use that statement, it creates the file, but
keeps on generating an error like, Can't open file "kdump.txt".  Also, how
about an adump statement?  Wouldn't that be a logical addition?

Guess I may have to gain access to Visual C++ 4.2 and build the thing
myself eventually, but I really don't want to.  My job is making music now,
not software.  Sigh.

Jackee Criswell
TheSilverSurfer@themall.net





Received: from stork2.maths.bath.ac.uk by omphalos.maths.Bath.AC.UK id aa18369;
          13 Feb 97 17:51 GMT
Received: from goggins.bath.ac.uk by stork.maths.Bath.AC.UK id ab01462;
          13 Feb 97 17:52 GMT
Received: from hermes.ex.ac.uk by goggins.bath.ac.uk with SMTP (PP);
          Thu, 13 Feb 1997 17:52:05 +0000
Received: from noether [144.173.8.10] by hermes via SMTP (RAA29364);
          Thu, 13 Feb 1997 17:39:51 GMT
Received: from hermes.ex.ac.uk by noether.maths.exeter.ac.uk;
          Thu, 13 Feb 97 17:39:39 GMT
Received: from ella.mills.edu [144.91.3.20] by hermes via ESMTP (RAA29328);
          Thu, 13 Feb 1997 17:39:30 GMT
Received: by ella.mills.edu (940816.SGI.8.6.9/930416.SGI)	 id JAA25409;
          Thu, 13 Feb 1997 09:38:11 -0800
Date: Thu, 13 Feb 1997 09:38:11 -0800
From: "Matt J. Ingalls" 
Message-Id: <199702131738.JAA25409@ella.mills.edu>
To: csound@maths.ex.ac.uk, rasmus ekman 
Subject: Re: Manual....
References: <199702131207.MAA18868@hermes>    <3303280E.170CDAA8@rcsreg.com>
Sender: owner-csound-outgoing@maths.ex.ac.uk
Precedence: bulk


i think the problem here is not which format to use (no doubt there will be many), but that the manual gets UPDATED COMPLETELY --- which i would assume is being done by someone(?) for the CD-ROM textbook.

-matt




Received: from stork2.maths.bath.ac.uk by omphalos.maths.Bath.AC.UK id aa18426;
          13 Feb 97 18:06 GMT
Received: from goggins.bath.ac.uk by stork.maths.Bath.AC.UK id aa01980;
          13 Feb 97 18:07 GMT
Received: from hermes.ex.ac.uk by goggins.bath.ac.uk with SMTP (PP);
          Thu, 13 Feb 1997 18:06:54 +0000
Received: from noether [144.173.8.10] by hermes via SMTP (RAA00961);
          Thu, 13 Feb 1997 17:56:49 GMT
Received: from hermes.ex.ac.uk by noether.maths.exeter.ac.uk;
          Thu, 13 Feb 97 17:56:38 GMT
Received: from ip-pdx15-29.teleport.com [206.163.124.222] by hermes 
          via ESMTP (RAA00940); Thu, 13 Feb 1997 17:56:33 GMT
Received: (from vulture@localhost) by buzzards.nest (8.7.4/8.7.3) id JAA00279;
          Thu, 13 Feb 1997 09:54:38 -0800
Date: Thu, 13 Feb 1997 09:54:38 -0800 (PST)
From: Terry Ellis 
X-Sender: vulture@localhost
To: rasmus ekman 
Cc: csound@maths.ex.ac.uk
Subject: Re: Manual....
In-Reply-To: <33034509.221A@hexagon.se>
Message-Id: 
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
Sender: owner-csound-outgoing@maths.ex.ac.uk
Precedence: bulk

On Thu, 13 Feb 1997, rasmus ekman wrote:

> Toby wrote:
> > 
> > > What is wrong with ASCII?  Readable on nearly everything.
> > >
> 
> Well, I refuse to read text that is not hardcoded into
> Java ticker tape applets. 

This will get very fascinating when we start discussing the contents of the
manual....

Someone mentioned EBCIDIC.  I vote for it since only two letters are
unplayable...

Terry

vulture at teleport dot com



Received: from stork2.maths.bath.ac.uk by omphalos.maths.Bath.AC.UK id aa19427;
          14 Feb 97 0:55 GMT
Received: from goggins.bath.ac.uk by stork.maths.Bath.AC.UK id aa10347;
          14 Feb 97 0:57 GMT
Received: from hermes.ex.ac.uk by goggins.bath.ac.uk with SMTP (PP);
          Fri, 14 Feb 1997 00:57:07 +0000
Received: from noether [144.173.8.10] by hermes via SMTP (AAA21881);
          Fri, 14 Feb 1997 00:51:32 GMT
Received: from hermes.ex.ac.uk by noether.maths.exeter.ac.uk;
          Fri, 14 Feb 97 00:51:23 GMT
Received: from mailrelay1.cc.columbia.edu [128.59.35.143] by hermes 
          via ESMTP (AAA21875); Fri, 14 Feb 1997 00:51:18 GMT
Received: from dogma.columbia.edu (dialup-17-13.cc.columbia.edu [128.59.36.153])	by mailrelay1.cc.columbia.edu (8.8.5/8.8.5) 
          with SMTP id TAA18025	for ;
          Thu, 13 Feb 1997 19:51:20 -0500 (EST)
Message-Id: <3303B704.7BC4@columbia.edu>
Date: Thu, 13 Feb 1997 19:51:16 -0500
From: Gregory Boduch 
Reply-To: gb141@columbia.edu
Organization: columbia.edu
X-Mailer: Mozilla 3.0Gold (Win95; I)
Mime-Version: 1.0
To: csound@maths.ex.ac.uk
Subject: Decimal precision
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Sender: owner-csound-outgoing@maths.ex.ac.uk
Precedence: bulk

Hello,

Csound seems to ignore decimal places after 3. If I define a constant
such as 0.0000000001 it seems to think it's 0.000  . I'm trying
to code a sones-to-dB conversion formula in an insturment. It
involves 10^-12. Is there a way to perform calculations involving more
than 3 decimal places or exponential notation in Csound orchestra file?


Thanks.
Gregory Boduch
gb141@columbia.edu



Received: from stork2.maths.bath.ac.uk by omphalos.maths.Bath.AC.UK id aa20068;
          14 Feb 97 4:30 GMT
Received: from goggins.bath.ac.uk by stork.maths.Bath.AC.UK id aa14825;
          14 Feb 97 4:32 GMT
Received: from hermes.ex.ac.uk by goggins.bath.ac.uk with SMTP (PP);
          Fri, 14 Feb 1997 04:31:13 +0000
Received: from noether [144.173.8.10] by hermes via SMTP (EAA27540);
          Fri, 14 Feb 1997 04:23:53 GMT
Received: from hermes.ex.ac.uk by noether.maths.exeter.ac.uk;
          Fri, 14 Feb 97 04:23:42 GMT
Received: from root@discover-net.net [208.134.196.20] by hermes 
          via ESMTP (EAA27531); Fri, 14 Feb 1997 04:23:36 GMT
Received: from PC_hljmm.discover-net.net (max1-207.discover-net.net [208.134.205.207]) 
          by discover.discover-net.net (8.7.3/8.7.3) with SMTP id WAA00676 
          for ; Thu, 13 Feb 1997 22:21:27 -0600 (CST)
Message-Id: 
Priority: Normal
To: Csound Mailing List 
Mime-Version: 1.0
From: Hans Mikelson 
Subject: Tone wheel organ with rotating speaker instrument
Date: Thu, 13 Feb 97 22:19:18 PST
Content-Type: text/plain; charset=US-ASCII; X-MAPIextension=".TXT"
Content-Transfer-Encoding: 7bit
Sender: owner-csound-outgoing@maths.ex.ac.uk
Precedence: bulk

Hi all,

Here is a tone wheel organ with a rotating speaker effect I have 
been working on.  It is starting to sound good so I'm posting it 
here for comments and suggestions.

I am wondering about the actual shape of the tone wheels.  They 
claim to approximate sine waves but I suspect they are more 
complex.  I read that the lower octave on a Hammond B3 used more 
of a square wave.

I just made up the distortion table.  I wonder if anyone has 
better numbers for simulating tube distortion.  I think I remember 
seeing some discussion on distortion in the archives a while back 
but I was not thinking about distortion at the time and it is 
expired now.

Some fairly easy to implement improvements would be to make the 
ramp up and down time constant and have the woofer ramp more 
slowly than the tweeter.

I chose arbitrary numbers for my filter envelopes to give the 
impression of the sound sweeping past.  More realistic filter 
envelope curves might help if I knew what numbers to use for 
determining directionality of sound as a function of frequency.

I also had to create a separate instrument for every note of 
polyphony in order to get it to pass sounds to the rotating 
speaker effect using globals.  This seemed awkward but I could not 
get it to work another way.

It seems like everything I try to implement I have to set kr=sr!

Thanks for any comments,
Hans Mikelson


;***************************************************
; Tone Wheel Organ with Rotating Speaker
;***************************************************

sr = 44100
kr  =  44100
ksmps =1
nchnls = 2

instr 1   ; Tone Wheel Organ

  idur  = p3
  iamp  = p4 
  ifqc  = cpspch(p5)

  asrc    oscili    iamp,ifqc,2                     ; Organ source
  kenv    linseg   0, .01, 1, idur-.02, 1, .01, 0   ; envelope
  gasig1 = asrc*kenv

endin

instr 2   ; Tone Wheel Organ

  idur  = p3
  iamp  = p4 
  ifqc  = cpspch(p5)

  asrc    oscili    iamp,ifqc,2                      ; Organ 
source
  kenv    linseg   0, .01, 1, idur-.02, 1, .01, 0   ; envelope
  gasig2 = asrc*kenv

endin

instr 3   ; Tone Wheel Organ

  idur  = p3
  iamp  = p4 
  ifqc  = cpspch(p5)

  asrc    oscili    iamp,ifqc,2                      ; Organ 
source
  kenv    linseg   0, .01, 1, idur-.02, 1, .01, 0   ; envelope
  gasig3 = asrc*kenv

endin

;Rotating Speaker
instr 4

  isep = .2

  asig = gasig1 +gasig2 + gasig3

; Distortion effect
  asig = asig/40000
  aclip tablei asig, 5, 1, .5
  aclip = aclip*30000

  aleslie delayr .02, 1
          delayw aclip

; Acceleration
  kenv linseg p4, p3+.02, p5

; Doppler Effect
  koscl oscil 1, kenv, 1, 0
  koscr oscil 1, kenv, 1, isep
  kdopl = .01-koscl*.0002
  kdopr = .012-koscr*.0002
  aleft deltapi kdopl
  aright deltapi kdopr

; Filter Effect
; Divide into three frequency ranges for directional sound.

;  High Pass
  alfhi  atone aleft,   8000
  arfhi  atone aright,  8000
  alfhi  tone  alfhi,  12000
  arfhi  tone  arfhi,  12000

;  Band Pass
  alfmid atone aleft,   4000
  arfmid atone aright,  4000
  alfmid  tone alfmid,  8000
  arfmid  tone arfmid,  8000

;  Low Pass
  alflow  tone aleft,   4000
  arflow  tone aright,  4000

  kflohi  oscil 1, kenv, 3, 0
  kfrohi  oscil 1, kenv, 3, isep
  kflomid oscil 1, kenv, 4, 0
  kfromid oscil 1, kenv, 4, isep
  
; Amplitude Effect
  kalosc = koscl * .1 + 1
  karosc = koscr * .1 + 1


  outs     alfhi*kflohi+alfmid*kflomid+alflow*kalosc, 
arfhi*kfrohi+arfmid*kfromid+arflow*karosc

endin

; ***********************************************
; Tone Wheel Organ with Rotating Speaker
; by Hans Mikelson 2/12/97
; ***********************************************


; GEN functions *********************************
; sinus
f1  0   1024  10   1

;Tone Wheel Organ     Drawbars
;                  SubFund    Fund   Sub 3rd  2nd Harm     3rd 
Harm    4th Harm    5th Harm   6th Harm       8th Harm
f2   0   8192   10    8        8        8        4      0      5  
   0    3      0    0     0    0     0 0 0    8

; Lelie Filter Envelopes
f3   0    256   7  0   110 .3 18 1 18 .3 110 0
f4   0    256   7  0    80 .5 16 1 64 1   16 .5 80 0  

; Distortion Table
f5 0 1024   8 -.8 42 -.78 100 -.7 740 .7 100 .78 42 .8

; score 
******************************************************************

t 0 600

;  Tone Wheel Organ
;  Start Dur   Amp   Pitch
i1   0   18    6000   7.04
i2   0   18    6000   7.11
i3   0   18    6000   8.02
i1   18   3    6000   7.04
i2   18   3    6000   7.09
i3   18   3    6000   8.01
i1   21   3    6000   7.04
i2   21   3    6000   7.11
i3   21   3    6000   8.02
i1   24   3    6000   7.04
i2   24   3    6000   7.09
i3   24   3    6000   8.01
i1   27  24    6000   7.04
i2   27  24    6000   7.08
i3   27  24    6000   7.11

;   Rotating Speaker
;   Start  Dur     Speedi Speedf
i4    0   18         .8     8
i4    +    9         8      .8
i4    .   24.1       .8     8



Received: from stork2.maths.bath.ac.uk by omphalos.maths.Bath.AC.UK id aa20300;
          14 Feb 97 5:57 GMT
Received: from goggins.bath.ac.uk by stork.maths.Bath.AC.UK id aa16433;
          14 Feb 97 5:59 GMT
Received: from hermes.ex.ac.uk by goggins.bath.ac.uk with SMTP (PP);
          Fri, 14 Feb 1997 05:58:14 +0000
Received: from noether [144.173.8.10] by hermes via SMTP (FAA29550);
          Fri, 14 Feb 1997 05:55:52 GMT
Received: from hermes.ex.ac.uk by noether.maths.exeter.ac.uk;
          Fri, 14 Feb 97 05:55:41 GMT
Received: from tpone.telepac.pt [194.65.3.20] by hermes via ESMTP (FAA29546);
          Fri, 14 Feb 1997 05:55:41 GMT
Received: from mail.telepac.pt (netpac.telepac.pt [194.65.3.35]) 
          by tpone.telepac.pt (8.6.12/1.0) with ESMTP id FAA03385 
          for ; Fri, 14 Feb 1997 05:54:08 GMT
Received: from mouat (cai1_p16.telepac.pt [194.65.11.194]) 
          by mail.telepac.pt (8.8.4/0.0) with SMTP id FAA15248 
          for ; Fri, 14 Feb 1997 05:54:03 GMT
Message-Id: <3303EF75.2E5E@mail.telepac.pt>
Date: Fri, 14 Feb 1997 05:52:05 +0100
From: Paulo Mouat 
X-Mailer: Mozilla 3.0Gold (Win95; I)
Mime-Version: 1.0
To: csound@maths.ex.ac.uk
Subject: Manual -- offering
References:  <199702130050.LAA16967@garner.research.canon.com.au>
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Sender: owner-csound-outgoing@maths.ex.ac.uk
Precedence: bulk

I just wanted to say that I offer myself to the task of maintaining a
few versions of the CSound manual.

Unfortunately, though, it will not be possible to maintain every
possible format of the documentation, but I can deal with the following:

ASCII
RTF
PostScript
DVI
HTML
MS-Word

and possibly others, but I think these will suffice (I assume that these
formats are easily convertible, should they not be portable).  My 
machine is a PC, and so RTF is the format coming out of MS-Word 7 and 
ASCII has CR-LF pairs.

Now, should I be appointed to this task, I would like to ask for the
help of others in pointing me to every possible source of information
that would be considered as useful in the manual--particularly as new
features are added or corrections made.  Although I can spare the time
to collate and compile the info, I do not have the opportunity to roam
the web to search for and get miriads of files.

I would ask then that these bits of info should be emailed to me.  I
will take care of the rest.

Also, regarding graphics and figures, I have the appropriate software to
deal with a great variety of formats, so should any be included with the
documentation, there is no foreseeable trouble in converting from one 
format to another.

To sum up:  I will produce the final form of the documentation provided 
any of you fellow CSound users care to send me the diverse and scattered 
bits of information that you think should be included in the main 
manual.

Best!
-- 
  __|__
___\_/___
   ___      Paulo Mouat,
  |___|  mouat@mail.telepac.pt
  |___|




Received: from stork2.maths.bath.ac.uk by omphalos.maths.Bath.AC.UK id aa20814;
          14 Feb 97 7:51 GMT
Received: from goggins.bath.ac.uk by stork.maths.Bath.AC.UK id aa18428;
          14 Feb 97 7:53 GMT
Received: from hermes.ex.ac.uk by goggins.bath.ac.uk with SMTP (PP);
          Fri, 14 Feb 1997 07:53:08 +0000
Received: from noether [144.173.8.10] by hermes via SMTP (HAA02484);
          Fri, 14 Feb 1997 07:50:32 GMT
Received: from hermes.ex.ac.uk by noether.maths.exeter.ac.uk;
          Fri, 14 Feb 97 07:50:21 GMT
Received: from ip-pdx10-27.teleport.com [206.163.124.60] by hermes 
          via ESMTP (HAA02460); Fri, 14 Feb 1997 07:50:17 GMT
Received: (from vulture@localhost) by buzzards.nest (8.7.4/8.7.3) id XAA00436;
          Thu, 13 Feb 1997 23:48:37 -0800
Date: Thu, 13 Feb 1997 23:48:37 -0800 (PST)
From: Terry Ellis 
X-Sender: vulture@localhost
To: Hans Mikelson 
Cc: Csound Mailing List 
Subject: Re: Tone wheel organ with rotating speaker instrument
In-Reply-To: 
Message-Id: 
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
Sender: owner-csound-outgoing@maths.ex.ac.uk
Precedence: bulk

On Thu, 13 Feb 1997, Hans Mikelson wrote:

> Hi all,
> 
> Here is a tone wheel organ with a rotating speaker effect I have 
> been working on.  It is starting to sound good so I'm posting it 
> here for comments and suggestions.
> 
> I am wondering about the actual shape of the tone wheels.  They 
> claim to approximate sine waves but I suspect they are more 
> complex.  I read that the lower octave on a Hammond B3 used more 
> of a square wave.
> 
One thing to remember is that the tone wheels are equal tempered.  The
"odd" harmonics (those not a power of 2, or of fractional footage to use the
original pipe organ term) are not in perfect tune as represented by a GEN10
wave.  This gives a bit of extra vibrato in addition to the Leslie or the
six position vibrato switch.  This rendition sounds to precise. 
  
There are several other features that are harder to simulate:

Hammond Percussion: works on the 2nd or third harmonic only if no
keys are depressed.  The decay overrides the setting of the drawbar.

The higher harmonics drop an octave for the top octave of the keyboard. 
This is particularly offensive in the M-3 spinet where there are not enough
keys. 

Terry

vulture at teleport dot com



Received: from stork2.maths.bath.ac.uk by omphalos.maths.Bath.AC.UK id aa20936;
          14 Feb 97 8:05 GMT
Received: from goggins.bath.ac.uk by stork.maths.Bath.AC.UK id aa18715;
          14 Feb 97 8:06 GMT
Received: from hermes.ex.ac.uk by goggins.bath.ac.uk with SMTP (PP);
          Fri, 14 Feb 1997 08:06:36 +0000
Received: from noether [144.173.8.10] by hermes via SMTP (IAA02848);
          Fri, 14 Feb 1997 08:04:06 GMT
Received: from hermes.ex.ac.uk by noether.maths.exeter.ac.uk;
          Fri, 14 Feb 97 08:03:56 GMT
Received: from pp@goggins.bath.ac.uk [138.38.32.13] by hermes 
          via ESMTP (IAA02840); Fri, 14 Feb 1997 08:03:55 GMT
From: jpff@maths.bath.ac.uk
Message-Id: <199702140803.IAA02840@hermes>
Received: from maths.Bath.AC.UK (actually host omphalos.maths.bath.ac.uk)           
          by goggins.bath.ac.uk with SMTP (PP); Fri, 14 Feb 1997 08:03:48 +0000
Date:     Fri, 14 Feb 97 8:02:06 GMT
Subject:  Re: prettyness of code (was Re: hidden MIDI functions)
To: csound@maths.ex.ac.uk
Sender: owner-csound-outgoing@maths.ex.ac.uk
Precedence: bulk

Message written at 13 Feb 1997 22:11:13 +0000
In-reply-to: 
	(message from Bradley James Lindseth on Wed, 12 Feb 1997 22:42:49
	-0600 (CST))

Larry writes...

>                                          I'm assuming that very platform
> that CSound is running on has a C++ compiler - if not, I'd be surprised.
> Now watch someone surprise me :-)

I do love this dry sense of humour.  Let me give you some platforms
which do not run C++.  
Archimedes; Atari; Orion; my SGI Indigo (the main machine used for
Csound maintenence in Bath); my 386.

If you guys want to move to C++, I am out of this area; suppose I
could go back to astronomy

Brad Lindseth made some comments about GNU configure.  I must be thick
today, but I cannot think what it woudl do for me (or anyone else).
Cpould someone explain?

==John ff



Received: from stork2.maths.bath.ac.uk by omphalos.maths.Bath.AC.UK id aa21584;
          14 Feb 97 11:47 GMT
Received: from goggins.bath.ac.uk by stork.maths.Bath.AC.UK id aa01917;
          14 Feb 97 11:49 GMT
Received: from hermes.ex.ac.uk by goggins.bath.ac.uk with SMTP (PP);
          Fri, 14 Feb 1997 11:49:05 +0000
Received: from noether [144.173.8.10] by hermes via SMTP (LAA26657);
          Fri, 14 Feb 1997 11:41:40 GMT
Received: from zeno by noether.maths.exeter.ac.uk; Fri, 14 Feb 97 11:41:23 GMT
From: james@maths.ex.ac.uk
Message-Id: <26404.199702141141@zeno.maths.exeter.ac.uk>
Subject: Re: Manual formats
To: csound@maths.ex.ac.uk
Date: Fri, 14 Feb 1997 11:41:22 +0000 (GMT)
In-Reply-To: <199702130241.NAA03468@oznet07.ozemail.com.au> from "Graeme Gerrard" at Feb 13, 97 01:44:18 pm
X-Mailer: ELM [version 2.4 PL25]
Mime-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit
Content-Length: 1047      
Sender: owner-csound-outgoing@maths.ex.ac.uk
Precedence: bulk

Graeme Gerrard wrote
>
>>Just one question: Is there ANY format compatible with ALL the platforms?
>>Is the TXT format (plain text or ASCII) compatible with ANY text editor?
>>Excuse my bothering question. Hope somebody answer them. ;))
>>Pablo Sotuyo
>
>Even plain old text files aren't compat.  On Win you get CR+LF, on Mac 
>you just get CR - also on Unix too as I recall.

most modern ftp systems get round this quite fine.

I dont understand the terms under which is discussion is being conducted.
Surely if the manual is maintained by someone ( rather than noone ) it will
live in their favourite editor program and they will be able to do a plain
ascii and a postscript version easily and other types depending on the
software, platform, phases of the moon etc etc.

Obviously something like SGML would be the ideal solution as that
easily generates almost any format of document but that depends on the
person maintaining it as not everyone has a SGML system.

-- 
James Andrews, Computer Development Officer, Exeter University Maths Dept