2012-02-09  john ffitch  <jpff@codemist.co.uk>

	* Opcodes/ugsc.c (hilbertset): Remove unnecessary arrays

2012-02-06  john ffitch  <jpff@codemist.co.uk>

	* H/version.h: VERSION 5.16.1

2011-11-30  john ffitch  <jpff@codemist.co.uk>

	* Opcodes/pitch.c (impulse): If next is negative time, make it
	absolute value

2011-10-28  john ffitch  <jpff@codemist.co.uk>

	* Opcodes/socksend.c (send_send, send_sendS): Added optional
	format message as INT16_LE and remove MTFU check

2011-10-14  John ff  <jpff@cs.bath.ac.uk>

	* Opcodes/tabvars.c (ftab2tab):
	(tab2ftab):  New opcodes

2011-10-12 John ff 
	* VERSION 5.14

2011-06-21  john ffitch  <jpff@codemist.co.uk>

	* Opcodes/wiimote.c (wii_data_init): Return value missing
	(wii_data_inits): Ditto

2011-05-25  John ff  <jpff@cs.bath.ac.uk>

	* Engine/fgens.c (nextval): Ensure c moves on if not a number

2011-05-19  john ffitch  <jpff@codemist.co.uk>

	* OOps/cmath.c (exprndiset, kexprndi, aexprndi): New code for
	exprandi opcode; also cauchyi

2011-05-05  john ffitch  <jpff@codemist.co.uk>

	* SConstruct (optionsFilename): Try to check that the custom.py exists

2011-04-10  john ffitch  <jpff@codemist.co.uk>

	* OOps/aops.c (is_NaN, is_NaNa): New function
	(is_inf, is_infa): New function

2011-03-17  john ffitch  <jpff@codemist.co.uk>

	* Engine/csound_orc_expressions.c (csound_orc_expand_expressions):
	Generate kgoto rather than goto.  Not totally sure this is right yet

2011-02-09  john ffitch  <jpff@codemist.co.uk>

	* util1/csd_util/makecsd.c (main): new options for MIDI files and
	score processing; licence control as well

	* util1/csd_util/base64.c (encode_file): Added extra arg to select tags

2011-01-20  john ffitch  <jpff@codemist.co.uk>

	* Opcodes/mp3in.c (mp3len): New code

	* SConstruct: Add building of fareyseq/fareygen which got lost

2011-01-17  john ffitch  <jpff@codemist.co.uk>

	* H/version.h: VERSION 5.13

2011-01-13  john ffitch  <jpff@codemist.co.uk>

	* OOps/ugens2.c (ko1set): ensure that the increment cannot be zero

2011-01-10  john ffitch  <jpff@codemist.co.uk>

	* Engine/fgens.c (gen49): Use csound->FileOpen2 rather than open
	to get searching
	(gen49): buffer used was in wrong units (chars v shorts)

2010-12-28  john ffitch  <jpff@codemist.co.uk>

	* Engine/symbtab.c (add_token): remove message if Opcode/Function
	confusion

2010-12-18  john ffitch  <jpff@codemist.co.uk>

	* Opcodes/gab/tabmorph.c (atabmorphia): Fixed editing error that
	would have caused opcode to scribble over memory

2010-12-17  John ff  <jpff@cs.bath.ac.uk>

	* Opcodes/gab/vectorial.c: Lots of optimisations and corrections

2010-12-10  john ffitch  <jpff@codemist.co.uk>

	* Opcodes/gab/gab.c (isChanged_set): Initialise p->old_inargs

2010-12-05  john ffitch  <jpff@codemist.co.uk>

	* H/aops.h (struct INCH): Rewritten

	* OOps/aops.c (inch_opcode): Rewritten

	* Engine/entry1.c: Allow multiple args in inch

	* Engine/csound_orc.l (do_at): New code to support @ and @@ operators

2010-11-28  john ffitch  <jpff@codemist.co.uk>

	* Engine/symbtab.c: Added cent as function

2010-11-27  john ffitch  <jpff@codemist.co.uk>

	* OOps/ugens3.c (adsyn): check that ktogo is never zero

2010-11-16  John ff  <jpff@cs.bath.ac.uk>

	* Top/main.c (csoundCompile): and call macro inits

	* Engine/csound_orc.l: Add standard macro initialisation code to lexer

2010-11-12  John ff  <jpff@cs.bath.ac.uk>

	* Engine/csound_orc_semantics.c (handle_polymorphic_opcode):
	Calculating c before switch can lead to following a null
	pointer.  Moved calculation to where it is needed.

2010-11-05  John ff  <jpff@cs.bath.ac.uk>

	* OOps/ugens4.c (riset, rndset, rhset): Use Warning rather than Message

2010-11-04  John ff  <jpff@cs.bath.ac.uk>

	* Opcodes/pvsbasic.c (MAXOUTS): Extend upto 16 outputs
	(localops): Use F format in pvstanal

2010-10-12  john ffitch  <jpff@codemist.co.uk>

	* Engine/csound_orc.y: Allow labels in exprlists

2010-10-08  John ff  <jpff@cs.bath.ac.uk>

	* OOps/cmath.c (ipow, apow): If normalisation is zero make it 1;
	Needed in new parser as optional arg not  handled

	* csound_orc.l: Many changes in macros and stack of inputs

2010-09-23  john ffitch  <jpff@codemist.co.uk>

	* Opcodes/fout.c (sprints): Attempt to fix %%->% problem

2010-09-18  john ffitch  <jpff@codemist.co.uk>

	* Engine/csound_orc_expressions.c (create_expression): Unary minus
	should use i rate if it can

2010-09-17  john ffitch  <jpff@codemist.co.uk>

	* SConstruct: 
	* Top/csound.c: Make new parser default

2010-09-02  Michael Gogins <michael.gogins@gmail.com>

	* Corrected signature of fluidAllOut opcode, and fencepost error
	in that opcode.

	* Fixed order of processing in CsoundVST audio output callbacks.

2010-09-02  Michael Gogins <michael.gogins@gmail.com>

	* Migrated Windows compiler to MinGW GCC 4.4.0 from Qt for all
	third party and Csound executables. This compiler generates dw2
	exception handling code.

	* Fixed up examples to execute in their own directories.

	* Changed csoundSetMessageCallback to reset the callback to
	csoundDefaultMessageCallback if the user sets the callback to
	null, in order to prevent segment faults.

2010-09-01  john ffitch  <jpff@codemist.co.uk>

	* Opcodes/gab/gab.c (adsynt2): Phase not handled correctly

2010-08-31  john ffitch  <jpff@codemist.co.uk>

	* Engine/csound_orc_expressions.c: Many changes to make if_then
	etc work

2010-08-28  Michael Gogins <michael.gogins@gmail.com>

        * Replaced csound-build.tex with
	How_to_Build_Csound_on_Windows.doc, in Microsoft Word format,
	which should be more accessible to users.

        * Changed multi-threading in the head branch to use OpenMP instead
	of PThreads, for greater clarity and maintainability.

2010-08-26  john ffitch  <jpff@codemist.co.uk>

	* Engine/csound_orc_expressions.c (create_cond_expression): New
	code to deal with (a?b:c) variant
	(is_expression_node): Added S_Q to expression operators
	(create_expression): Call create_cond_expression

2010-08-25  John ff  <jpff@cs.bath.ac.uk>

	* Engine/insert.c (insert): In pset case no not zero excess opcodes

2010-08-10  Michael Gogins <michael.gogins@gmail.com>

	* Engine/typetabl.h: Supplied missing type mask for 'J' type code,
	i.e. k-rate scalar defaulting to -1, used in "STK" opcodes and others.

	* Opcodes/stk/STKOpcodes.cpp: Changed threading from 5 to 3,
	changed MIDI controller number and value parameters to 'J' type.

	* Updated environment, build, and installer scripts for new Windows
	version built on new Core i7, Windows 7 computer.

2010-08-09  john ffitch  <jpff@codemist.co.uk>

	* InOut/libsnd.c (sfopenin): Correct warning message

	* Top/csound.c ("C"): Default value of inchnls is now -1

	* Engine/otran.c (oload): Set inchnls to nchnls if not explicit

2010-08-03  john ffitch  <jpff@codemist.co.uk>

	* Engine/csound_orc.y (ifac): Typo -- used S_MOD rather than S_DIV

2010-08-01  john ffitch  <jpff@codemist.co.uk>

	* Top/csound.c (csoundAddSpinSample): Needs to use nchnls_i

2010-07-31  john ffitch  <jpff@codemist.co.uk>

	* Engine/csound_orc_semantics.c (handle_optional_args):
	* Engine/rdorch.c (getoptxt): Added J arg type

2010-07-28  John ff  <jpff@cs.bath.ac.uk>

	* Opcodes/urandom.c (urand_run, urand_init, urand_deinit): New
	code (LINUX ONLY)

2010-07-27  john ffitch  <jpff@codemist.co.uk>

	* Top/csmodule.c (csoundCheckOpcodeDeny): Complete function vis
	CS_OMIT_LIBS environment

2010-07-26  john ffitch  <jpff@codemist.co.uk>

	* Top/csmodule.c (csoundCheckOpcodeDeny): New function (INCOMPLETE)
	(csoundLoadModules): Check to see if library denied

2010-07-20  john ffitch  <jpff@codemist.co.uk>

	* Engine/sort.c (ordering): Fixed stupidity of using int where
	MYFLT was needed

	* Opcodes/grain.c (ags): Added check that kglen is strictly positive

2010-07-19  john ffitch  <jpff@codemist.co.uk>

	* Engine/sort.c (ordering): take account of negative p3

2010-07-14  john ffitch  <jpff@codemist.co.uk>

	* Opcodes/mp3in.c (mp3in): Deal with case of end of data

2010-07-13  john ffitch  <jpff@codemist.co.uk>

	* Engine/fgens.c (gen23): Typo in check for extra numbers removed

2010-07-08  john ffitch  <jpff@codemist.co.uk>

	* OOps/sndinfUG.c (filevalid):
	* Engine/entry1.c:
	* H/entry1.h: Added filevalid opcode

	* H/sndinfUG.h (struct): Added FILEVALID structure

2010-07-04  john ffitch  <jpff@codemist.co.uk>

	* Engine/musmon.c (process_midi_event):

	* Engine/insert.c (insert, MIDIinsert, insert_event):

	* Engine/auxfd.c (auxchprint): Print name of instrument if available
	(fdchprint): ditto

2010-07-03  john ffitch  <jpff@codemist.co.uk>

	* Engine/sort.c (ordering): Rewrote to make clearer and complete

	* H/sort.h (srtblk): Changed order of fields to avoid overwrite

	* Engine/extract.c: Added lineo field to dummy events

2010-06-28  john ffitch  <jpff@codemist.co.uk>

	* Opcodes/pitch0.c  (maxalloc, cpuperc, instcount) Allow named
	instruments

2010-06-24  john ffitch  <jpff@codemist.co.uk>

	* Engine/sort.c (ordering): Added ordering on line number if all
	else fails

	* H/csoundCore.h (EVTBLK): Added array of chars for strings

2010-05-26  john ffitch  <jpff@codemist.co.uk>

	* Opcodes/ftgen.c (ftgen): Need to deal with fp[5] in named gen case

2010-05-23  john ffitch  <jpff@codemist.co.uk>

	* Engine/fgens.c (hfgens): Check was against GENMAX rather than
	csound->genmax

	* Opcodes/ftgen.c (ftgen): Allow for named GENs

	* Top/csound.c (csoundGetNamedGens): New API function

	* Opcodes/fareyseq.c (tableshuffle): New code for two opcodes

2010-05-16  john ffitch  <jpff@codemist.co.uk>

	* Opcodes/pitch.c (medfiltset):
	(medfilt):  New code

2010-05-10  john ffitch  <jpff@codemist.co.uk>

	* Opcodes/fareygen.c:
	* Opcodes/fareyseq.c: New code

	* SConstruct: Added farey sequence GEN and opcodes

2010-05-09  john ffitch  <jpff@codemist.co.uk>

	* install.py: Added atsa to binaries

2010-05-03  john ffitch  <jpff@codemist.co.uk>

	* OOps/ugens6.c (delay1): use memmove rather than a loop

2010-04-25  john ffitch  <jpff@codemist.co.uk>

	* Opcodes/uggab.c (lineto): Some changes -- seems better

	* OOps/ugens3.c (adsyn): Sorted out confusion over int32 and MYFLT

	* OOps/ugens5.c (atonex): Fix bug; it was repeating the filter to
	the input rather than cascading
	(resonx):
	(tonex): Same error as atonex

	* Opcodes/gab/gab.c (adsynt2_set): Brought into line with
	adsynt_set, and revised
	(adsynt2_set): Initialisation of amp and frequency table was
	totally wrong

2010-04-10  john ffitch  <jpff@codemist.co.uk>

	* Engine/fgens.c (gen41): Added check for positive probability

2010-04-05  john ffitch  <jpff@codemist.co.uk>

	* Opcodes/sndwarp.c (sndwarp): The attempt to give only one
	warning message was wrong.  Think OK now??

2010-03-24  john ffitch  <jpff@codemist.co.uk>

	* Top/main.c (csoundCompile): Removed spurious BETA check

2010-03-23  jpff  <jpff@cs.bath.ac.uk>

	* Engine/sread.c (sget1): Remove repeats free

2010-03-22  john ffitch  <jpff@codemist.co.uk>

	* Engine/fgens.c (gen28): Typo -- freed x rather than y

2010-03-16  john ffitch  <jpff@codemist.co.uk>

	* Engine/sort.c: Code replaced with smoothsort code

2010-03-13  john ffitch  <jpff@codemist.co.uk>

	* Engine/smoothsort.c (sort): Deal with case of no e event

2010-03-12  jpff  <jpff@cs.bath.ac.uk>

	* SConstruct: Added smoothSort option to control building

	* Engine/smoothsort.c: New drop-in replacement for sort.c using a
	fancier sort algorithm

2010-02-28  john ffitch  <jpff@codemist.co.uk>

	* OOps/ugrw1.c (sprints): A format with a % but no arg would cause
	a crash

2010-02-25  john ffitch  <jpff@codemist.co.uk>

	* Opcodes/gab/gab.c: Added range checks to the fast table opcodes

2010-02-21  john ffitch  <jpff@codemist.co.uk>

	* OOps/aops.c (aassign): Correct typo in arguments

	* Engine/rdorch.c (splitline): Rework \ inside strings

2010-02-15  jpff  <jpff@cs.bath.ac.uk>

	* Engine/typetabl.h (]): Need to add p to I case

	* Engine/rdorch.c (rdorchfile): Do not increment lincnt in line
	continuation mode

2010-02-13  john ffitch  <jpff@codemist.co.uk>

	* OOps/aops.c (minit): Ensure a,b=b,a works

2010-02-12  john ffitch  <jpff@codemist.co.uk>

	* OOps/aops.c (minit, mainit): new code for multiple init

	* Engine/entry1.c: Changed init to multiple version

2010-01-24  john ffitch  <jpff@codemist.co.uk>

	* Engine/sread.c (init_smacros): Define INF macro in scores as well
	(getscochar): Read 'z' as infinity

	* Engine/rdorch.c (init_math_constants_macros): Added INF macro
	for infinity in orchestra

2010-01-17  john ffitch  <jpff@codemist.co.uk>

	* VERSION 5.12

a2010-01-16  john ffitch  <jpff@codemist.co.uk>

	* Engine/otran.c (oload): Need to check the first 6 variables, up
	from 5 due to input channel code

2010-01-11  john ffitch  <jpff@codemist.co.uk>

 	* Engine/fgens.c (gen28, gen31, gen32, gen33, gen34): Used
	malloc/free for local memory

	* InOut/widgets.cpp (fl_callbackExecButton): Freed memory
	allocated in Windows case

2010-01-08  mantaraya36  <mantaraya36@gmail.com>

	*  Engine/insert.c: Allow turning off non-indefinite instruments from negative score events. By John ffitch.

2010-01-08  john ffitch  <jpff@codemist.co.uk>

	* Engine/musmon.c (musmon): Corrected csound->inchnls to csound->nchnls

	* Engine/csound_orc.y (param): Alter precedence of ? operator

2010-01-06  jpff  <jpff@cardew.codemist.co.uk>

	* Opcodes/fout.c (fprintf_set): Set line buffering

2010-01-02  john ffitch  <jpff@codemist.co.uk>

	* Opcodes/uggab.c (loopxseg): Fixed bug on shape

2009-12-28  john ffitch  <jpff@codemist.co.uk>

	* Engine/linevent.c (sensLine):
	* Engine/musmon.c (insert_score_event_at_sample): Allow too few
	arguments in f -x case

2009-12-27  john ffitch  <jpff@codemist.co.uk>

	* Opcodes/uggab.c (loopxseg): New code for loopxseg opcode

2009-12-26  john ffitch  <jpff@codemist.co.uk>

	* Opcodes/uggab.c (nterpol_init): Check to stop division by zero

2009-12-25  john ffitch  <jpff@codemist.co.uk> for Francois Pinot

	* Opcodes/crossfm.h:
	* Opcodes/crossfm.c: New code

2009-12-23  john ffitch  <jpff@codemist.co.uk>

	* Opcodes/sfont.c: Set pitches on module creation rather than on
	every load.

2009-12-22  john ffitch  <jpff@codemist.co.uk>

	* Opcodes/sfont.c (SfLoad): Added check to see if too many sound
	fonts are loaded.

	* Opcodes/pitch.c (trnsetr, trnset): Check argument count is 1mod3

2009-12-20  john ffitch  <jpff@codemist.co.uk>

	* Engine/csound_orc_semantics.c (handle_optional_args): If there
	are no arguments yet we still need to add optionals

2009-12-13  john ffitch  <jpff@codemist.co.uk>

	* Opcodes/nlfilt.c (pinit): New code to implement passign opcode

2009-12-11  john ffitch  <jpff@codemist.co.uk>

	* Engine/rdorch.c (splitline): Allow \" in strings

	* Top/one_file.c (readOptions): Reset linecount after reading .csoundrc

2009-11-29  john ffitch  <jpff@codemist.co.uk>

	* Opcodes/cross2.c (getmag): If magnitude is zero do not scale!

2009-11-28  john ffitch  <jpff@codemist.co.uk>

	* Opcodes/pitch.c (clockon, clockoff): Reading the clock should be
	incremental. (correcting bug introduced by Istvan)

2009-11-24  jpff  <jpff@cs.bath.ac.uk>

	* Engine/musmon.c (gettempo): Fixed stupid error

2009-11-09  john ffitch  <jpff@codemist.co.uk>

	* Opcodes/pan2.c (pan2run): Fixed editing error in type 3 (thanks
	to Sigurd Saue)

2009-11-03  john ffitch  <jpff@codemist.co.uk>

	* Opcodes/p5glove.c (p5glove_find): Use thread to read the USB glove.

2009-10-16  jpff  <jpff@cs.bath.ac.uk>

	* Opcodes/pvsbasic.c (pvsshiftset): Change MYFLT to float in memset

2009-10-02  jpff  <jpff@codemist.co.uk>

	* Opcodes/pitch.c (trnsetr, ktrnsegr, trnsegr): New code

	* Opcodes/spectra.c: declare transegr

2009-09-22  jpff  <jpff@codemist.co.uk>

	* H/version.h:  VERSION 5.11.1

	* Opcodes/bilbar.c (bar_run): Fix typo in right end type 1
	(bar_run): Loop needs to be one more for right end

2009-09-14  jpff  <jpff@codemist.co.uk>

	* Engine/fgens.c (gen32): And allow extended here as well, via aux
	function

2009-09-10  jpff  <jpff@codemist.co.uk>

	* Engine/fgens.c (gen52, gen51): Added extended arg support

2009-08-27  jpff  <jpff@codemist.co.uk>

	* H/csoundCore.h (PMAX): Reduced by 2
	(EVTBLK): Added c.extra field to EVTBLK

	* Engine/fgens.c: LOTS of changes to allow extension of arguments uses.

	* Engine/sread.c (ifa): removed limit of PMAX arguments to events

	* Engine/rdscor.c (rdscor): Allow reading of more than PMAX fields

	* Engine/fgens.c (gen23): Total rewrite

2009-08-19  jpff  <jpff@codemist.co.uk>

	* Engine/fgens.c (hfgens): Correct error string to 1, 23 or 28 for
	deferred size.

2009-08-12  jpff  <jpff@codemist.co.uk>

	* Engine/fgens.c (hfgens): Do not extend table of ftables
	unnecessarily; it used to always extend even if spare slots
	existed.

2009-08-10  jpff  <jpff@codemist.co.uk>

	* Opcodes/tabsum.c (tabsum): Fixed silly error that made it all
	wrong.

2009-07-25  Michael Gogins  <michael.gogins@gmail.com>

	* The Windows installer now provides the user with options for
	core, custom, or complete installation. Custom options include
	independent installation of C/C++, Lua, Python, Java, and Lisp
	interfaces;  independent installation of csnd and
	CsoundAC; and independent installation of front ends and
	various other options.

2009-07-21    <jpff@codemist.co.uk>

	* OOps/cmath.c (seedrand): if positive would still seed from time

2009-07-20  jpff  <jpff@codemist.co.uk>

	* OOps/ugrw1.c (printsset): Set string[0] to null as otherwise
	sprints does wrong thing on empty string

2009-07-18  Michael Gogins  <michael.gogins@gmail.com>

	* SConstruct now builds completely independent shared libraries
	for Python, Lua, and Java wrappers.

	* Reorganized examples directory to put all examples for C, C++,
	Python, Lua, Java, and Lisp wrappers in separate subdirectories.
	Opcode demos also go into a separate subdirectory. The root examples
	directory should now contain only complete pieces or tutorial pieces.

2009-07-05  jpff  <jpff@codemist.co.uk>

	* Opcodes/spectra.c (mute opcode): Should be type T to accept
	string or number.

	* SConstruct (cf): Check that libintl.h exists in the GETTEXT version

2009-06-10  jpff  <jpff@codemist.co.uk>

	* Engine/csound_orc.l: Corrected continuation line pattern

2009-06-05  jpff  <jpff@codemist.co.uk>

	* Engine/csound_orc.y (ident): Added unary +

	* H/version.h: Marked as 5.10.90 and 5.11rc1

2009-06-04  jpff  <jpff@codemist.co.uk>

	* Engine/csound_orc_expressions.c (create_goto_token)
	(get_boolean_arg, create_boolean_expression)
	(create_synthetic_ident, csound_orc_expand_expressions):
	Create and use Boolean variables with either k or i type as required

2009-05-05  jpff  <jpff@cs.bath.ac.uk>

	* Engine/csound_orc.l: Deal with \+NL

2009-05-01  jpff  <jpff@codemist.co.uk>

	* Engine/csound_orc.y (if, ifthen, elsif): Removed requirement for
	brackets round condition.

2009-04-30  jpff  <jpff@codemist.co.uk>

	* Engine/csound_orc.y: Remove two globals to the CSOUND structure
	and start numbered instruments.

2009-04-29 Victor Lazzarini <Victor.Lazzarini@nuim.ie>
	* InOut/FL_graph.cpp: fixed the redrawing of graphs so that only
	selected ones get redrawn.

2009-04-28  jpff  <jpff@codemist.co.uk>

	* H/csoundCore.h ("C"): Declare
	* Top/csound.c ("C"): Initialise floatsize

	* Engine/musmon.c (musmon): Set csound->floatsize

2009-04-27 Victor Lazzarini <Victor.Lazzarini@nuim.ie>
	* Opcodes/pvsbasic.c: added rounding bin code to pvsscale
	* Opcodes/ftgen.c: added NP2 support for ftload and ftsave
	* Engine/fgen.c: moved a PerfError to a Warning when tables are
	resized to enable ftload to resize deferred-allocation tables.
	* OOps/ugens5.c: experimental LPC read opcode
	* H/ugens.h: as above
	* Engine/oentry1.c: as above

2009-04-24  Anthony Kozar  <akozar@users.sourceforge.net>

	* SConstruct: Define WORDS_BIGENDIAN for hrtfnew opcodes when appropriate.

	* H/prototyp.h:
	* H/csoundCore.h:
	* Top/csound.c:
	* Engine/memfiles.c: New API function pointer ldmemfile2withCB() which is
	a version of ldmemfile() allowing a callback to be set and called exactly
	once to process the MEMFIL buffer after it is loaded.

	* H/version.h: Increased API version to 2.1.

	* Engine/memfiles.c (Load_File_):
	* Opcodes/hrtfopcodes.c: Moved byteswapping code for HRTF opcodes to
	hrtfnew module utilizing ldmemfile2withCB().

	* H/csound.h: Removed file type CSFTYPE_FLOATS_BINARY_SW

2009-04-19  jpff  <jpff@codemist.co.uk>

	* Opcodes/p5glove.c: New code to controlP5 Glove directly

	* Engine/csound_orc_semantics.c (handle_polymorphic_opcode): Added
	polymorphic type 0xfffd

2009-04-17  jpff  <jpff@codemist.co.uk>

	* Engine/memfiles.c (Load_File_): Add option for byteswap from
	LITTLE- to BIG-ENDIAN if necessary (CSFTYPE_FLOATS_BINARY_SW)

	* H/csound.h: New file type CSFTYPE_FLOATS_BINARY_SW

2009-04-08  Michael Gogins <michael.gogins@gmail.com>

	* Opcodes/mixer.cpp:
	Added MixerSetLevel_i, an init-time only version of MixerSetLevel,
	so that it is possible to set the levels of mixer sends in the
	orchestra header.

2009-03-30  jpff  <jpff@codemist.co.uk>

	* OOps/diskin.c (diskin_read_buffer): Typo corrected

2009-03-24  Michael Gogins <michael.gogins@gmail.com>

	* frontends/CsoundAC/Score.cpp:
	* interfaces/CsoundFile.cpp:
	Implemented importation of MusicXML v2 files into the CsoundAC Score class
	and the csnd CsoundFile class, using the Grame MusicXML library.

2009-03-22  jpff  <jpff@codemist.co.uk>

	* OOps/oscils.c (tablexkt): Line adding to ar removed as wrong

2009-03-18  Anthony Kozar  <akozar@users.sourceforge.net>

	* SConstruct:
	* Opcodes/syncgrain.c: Added config test for values.h.

	* frontends/cscore/cscoremain.c:
	* frontends/cscore/cscoremain_MacOS9.c:
	* util1/scot/scot_main.c:  Changed Scot and Cscore to take an optional
	second commandline argument specifying the output file.

2009-03-16  jpff  <jpff@codemist.co.uk>

	* InOut/rtalsa.c (set_device_params): Change to
	snd_pcm_hw_params_set_rate_near rather than exact samplerate from "Pete G."

2009-03-15  jpff  <jpff@codemist.co.uk>

	* Top/one_file.c (createExScore): Added new facility to have score
	generated by external code
	(read_unified_file): and call it

2009-03-14  jpff  <jpff@codemist.co.uk>

	* util/lpc_export.c (lpc_export): Fix from Martin Rocamora on line 83
	* util/lpcx_main.c (main): Fix from Martin Rocamora on line 82

2009-03-04  jpff  <jpff@codemist.co.uk>

	* Opcodes/wiimote.c: New code (still experimental) to use wiimote
	in Csound (Linux only at present)

2009-03-01  jpff  <jpff@codemist.co.uk>

	* Opcodes/mp3in.c: New code to read MP3 files (still experimental)

2009-02-28  Anthony Kozar  <akozar@users.sourceforge.net>

	* H/ugens5.h:
	* OOps/ugens5.c (lprdset, lpread): Fixed bad assumptions in doubles
	build when skipping over the LPC file header.

2009-02-23  jpff  <jpff@codemist.co.uk>

	* Engine/fgens.c (gen49): New gen to read MP3 files using mpadec
	library

2009-02-07  jpff  <jpff@codemist.co.uk>

	* Engine/rdorch.c (rdorchfile):
	* Engine/sread.c (sget1): Mane mname grow rather than being fixed size

2009-02-06  jpff  <jpff@codemist.co.uk>

	* H/csoundCore.h ("C"): Added GetChannelLock to API

	* OOps/bus.c (csoundGetChannelLock): New function, deployed as
	well all over this file

	* H/csound.h ("C"): Added csoundGetChannelLock

2008-12-19  jpff  <jpff@codemist.co.uk>

	* H/version.h: VERSION 5.10.1

2008-12-18  jpff  <jpff@codemist.co.uk>

	* Opcodes/pitch.c (hsboscset): Bug whereby two internal variables may
	be unititialised fixed.

2008-12-17  Anthony Kozar  <akozar@users.sourceforge.net>

	* SConstruct:  Add libintl on OS X when useGettext=1.  Commented out
	-fno-rtti option on OS X.  Revised Python detection logic so that it
	works on multiple versions of OS X.

2008-12-15  jpff  <jpff@codemist.co.uk>

	* H/version.h (CS_APIVERSION): Upped version to 2/0

	* H/csoundCore.h: Cleaned up unused fields in struct CSOUND_ and
	added some expansions.  Tidied timing counters as well.  Involved
	a number of small changes elsewhere

2008-12-04  mantaraya36  <mantaraya36@gmail.com>

	* Opcodes/pmidi.c : Added option to listen on all MIDI ports
        using 'a' instead of a device number.

2008-12-04  jpff  <jpff@cs.bath.ac.uk>

	* Opcodes/midiops3.c (islider32bit14): I think it should have 32
	as arg to ISLIDER14

2008-12-02  jpff  <jpff@codemist.co.uk>

	* Engine/insert.c:
	* Engine/linevent.c:
	* Engine/musmon.c:
	* Engine/otran.c:
	* H/csoundCore.h:
	* H/prototyp.h:
	* InOut/libsnd.c:
	* InOut/midisend.c:
	* OOps/schedule.c:
	* OOps/ugrw1.c:
	* Opcodes/OSC.c:
	* Top/csound.c:	Change curTime to integer and work in samples
	rather than seconds.  Same for beatTime

2008-11-30  jpff  <jpff@codemist.co.uk>

	* Engine/fgens.c (csoundFTAlloc): Make size change with active
	instruments a PerfError

2008-11-21  jpff  <jpff@codemist.co.uk>

	* Opcodes/filter.c (izfilter): Loop went 1 too many for
	coeffs->dcoeffs

2008-11-01  jpff  <jpff@codemist.co.uk>

	* Opcodes/pitch.c (pitchamdf): Arrange that if peri is zero not to
	return NaN or Inf values. Suggests some algorithmic error
	(pitchamdfset): Initialise rmsmedian buffer -- it was undefined.
	No idea how it ever could work.

2008-10-31  jpff  <jpff@codemist.co.uk>

	* Engine/otran.c (otran): Experimentally set locale to C numeric
	before parsing orchestra.

2008-10-27  jpff  <jpff@codemist.co.uk>

	* OOps/aops.c (outo): Channel 6 was wrong,
	(outh): also here.

2008-10-18  jpff  <jpff@codemist.co.uk>

	* InOut/rtwinmm.c (open_device): Dither only if requested.

	* H/csoundCore.h ("C"): Move dither to visible.

	* InOut/rtpa.c (set_device_params): Dither only if requested.
	(paBlockingReadWriteOpen): Ditto.

	* InOut/rtalsa.c (set_format): Dither only if requested.
	(MYFLT_to_short_no_dither): New function.

2008-10-09 Victor Lazzarini <Victor.Lazzarini@nuim.ie>
	* Engine/fgens.c: added an optional parameter
	  for GEN20 (type 6, Gaussian), to set the variance
	  (default = 1.0).

2008-09-29  jpff  <jpff@codemist.co.uk>

	* OOps/diskin.c (diskin_read_buffer): mea culpa; zeros written to
	wrong place.

2008-09-13 Michael Gogins  <gogins@pipeline.com>

	* H/csound.h: Added Doxygen "mainpage" introductory section at top
	of file; switched to HTML format for API documentation (replacing
	LaTeX/PDF format).

2008-09-17  jpff  <jpff@codemist.co.uk>

	* RELEASE VERSION 5.09

2008-09-13 Michael Gogins  <michael.gogins@gmail.com>

	* frontends/CsoundAC/Score.cpp: Implemented importation of
	MusicXML v2 files into the CsoundAC Score class, using the
	Grame MusicXML library.

2008-09-13 Michael Gogins  <gogins@pipeline.com>

	* custom-mingw.py: Updated for more recent third party packages.

	* frontends/fltk_gui/CsoundGUIMain.cpp: Score editor works properly now.

	* examples: Updated CsoundAC.csd and CsoundAC-midi.csd,
	removed some obsolete precursors of them, added Drone.py Tk GUI example.

	* csound-build.tex: Detailed instructions for building
	the Windows installers.

	* Top/csound.c, H/csoundCore.h: Corrected spinlocks for thread-safe
	access to spin and spout buffers, added to dummy slots of the CSOUND
	structure to preserve backwards API compatibility.

2008-09-10  jpff  <jpff@cs.bath.ac.uk>

	* Opcodes/scoreline.c (localops): Wrong structure named in entry
	-- probably benign

	* H/version.h (CS_PACKAGE_STRING): VERSION 5.09

2008-09-09  Anthony Kozar  <akozar@users.sourceforge.net>

	* H/csound.h (csoundSpinLock, csoundSpinUnLock): Removed attempt at
	printing warnings when spinlocks are not implemented.

	* Opcodes/sfont.c (SfPlayMono): More declaration before code fixes.

	* Opcodes/shape.c (PDHalfX): Fixed unitialized variable.

	* Engine/rdorch.c (skiporccomment):
	* Opcodes/Vosim.c (vosimset): Added missing return values.

2008-09-08  Anthony Kozar  <akozar@users.sourceforge.net>

	* Top/threads.c (csoundRunCommand, csoundSleep): Consolidated dummy
	versions to avoid multiple definitions.

2008-09-08  jpff  <jpff@codemist.co.uk>

	* Top/csound.c ("C"): Do not load pthreads in mac_clasic

	* Top/threads.c (csoundRunCommand, csoundSleep): Added mac_classic
	dummy versions

	* OOps/aops.c (outs): Declarations before code in C

2008-09-02  jpff  <jpff@codemist.co.uk>

	* H/ugrw1.h:
	* OOps/ugrw1.c (printkset, printk, printksset, printks): Check
	that opcode is initialised

2008-08-31  jpff  <jpff@codemist.co.uk>

	* H/version.h: 5.08.99

2008-08-14  jpff  <jpff@codemist.co.uk>

	* Engine/csound_orc.l: Added #include and macros (currently
	without arguments)

2008-08-12  jpff  <jpff@cs.bath.ac.uk>

	* Opcodes/uggab.c (poscaa, poscka): Ensure frequency is not
	overwritten if variable is shared

2008-07-26  jpff  <jpff@codemist.co.uk>

	* Engine/rdorch.c (skiporccomment): Correct stupid error in
	multiple * characters

2008-07-23  jpff  <jpff@codemist.co.uk>

	* Engine/fgens.c (gen23): Allow scientific notation (as was in csound4!)

2008-07-05  jpff  <jpff@codemist.co.uk>

	* Opcodes/ambicode1.c: Added new file with Furse/Wiggins decoders

2008-06-30  Steven Yi   <stevenyi@gmail.com>

	* Engine/musmon.c: reverted sensevents to set EVTBLK to outside of
	while loop; caused bug where using event opcode with "e" would
	cause a segfault and hang csound

2008-06-26  jpff  <jpff@cs.bath.ac.uk>

	* SConstruct: Allow selectable version if TCL and TK (needed for
	OpenSuSE11.0)

2008-06-12  jpff  <jpff@codemist.co.uk>

	* Engine/memalloc.c (mfree):
	(mrealloc):  Improvements to coding

2008-05-28  Michael Gogins  <gogins@pipeline.com>

	* Top/threads.c:
	For the Csound threading API, on the Windows platform, I removed
	the native Windows threading implementation and replaced it with the
	POSIX threads implementation already used for Linux and OS X. This
	is to facilitate development of multi-threading in Csound, and to
	simplify the maintenance of Csound.

2008-05-28  jpff  <jpff@codemist.co.uk>

	* Opcodes/ugens7.c (harmon): Make constant totally 64bit safe

	* Opcodes/vbap.c: Change argument types to akOO from akoo etc

2008-05-18  Michael Gogins  <gogins@pipeline.com>

	* Opcodes/chua/ChuaOscillator.cpp:
	Csound opcode implementation of Chua's Oscillator,
	a nonlinear dynamical system capable of many kinds of periodic and chaotic
	behavior, including multiple simultaneous attractors. See the
	reference manual entry for "chuap" for documentation. See
	examples/chuap.csd and examples/chuas_oscillator/ChuasOscillatorApp.py for
	sample Csound usage.

	* Opcodes/linear_algebra.cpp:
	Csound i-rate and k-rate opcodes for much standard linear algebra over
	real and complex vectors and matrices: elementwise arithmetic, norms,
	transpose and conjugate, inner products, matrix inverse, LU decomposition,
	QR decomposition, and QR-based eigenvalue decomposition. Includes
	copying vectors to and from a-rate signals, function tables, and f-signals.
	See the source code for preliminary documentation and tests/test24.csd for
	sample Csound usage.

2008-05-17  jpff  <jpff@codemist.co.uk>

	* util/lpanal.c: Removed static variables to a structure

2008-05-08  jpff  <jpff@codemist.co.uk>

	* util/envext.c:
	* util/het_export.c:
	* util/het_import.c:
	* util/heti_main.c:
	* util/lpc_export.c:
	* util/lpc_import.c:
	* util/lpci_main.c:
	* util/lpcx_main.c:
	* util/mixer.c:
	* util/pv_export.c:
	* util/pv_import.c:
	* util/scale.c:
	* util/srconv.c:
	* util/xtrct.c:
	* util1/sortex/smain.c:
	* util1/sortex/xmain.c:	Corrected licence to LGPL


2008-05-06  jpff  <jpff@codemist.co.uk>

	* Engine/rdorch.c (skiporccomment): New function to handle /* .. */
	(rdorchfile): Call it

	* Engine/sread.c (sget1): Do not expand macros in /* .. */ context

2008-04-30  jpff  <jpff@codemist.co.uk>

	* H/sysdep.h: Introduce macros for MYFLT versions of functions
	* OOps/aops.c: Use macro for exp/expf etc all over

2008-04-28  jpff  <jpff@codemist.co.uk>

	* OOps/ugens4.c (buzz): Restructured for speed
	(gbuzz): Ditto

2008-04-24  jpff  <jpff@codemist.co.uk>

	* Top/argdecode.c (argdecode): OLPC now have dummy R,N and H options

2008-04-15  jpff  <jpff@codemist.co.uk>

	* OOps/diskin.c (sndo1set): Deprecate soundout in favour of fout

2008-03-23  jpff  <jpff@codemist.co.uk>

	* Top/argdecode.c (decode_long): Change incorrect %n to %d (shades
	of BCPL)

2008-03-18  jpff  <jpff@codemist.co.uk>

	* Opcodes/Vosim.c: New file and opcode

2008-02-27  jpff  <jpff@codemist.co.uk>

	* Opcodes/vbap.c (localops): Changed vbap* to gave a k-rate last
	required arg.

2008-03-16  jpff  <jpff@codemist.co.uk>

	* H/version.h: 5.08.2

2008-03-08  Anthony Kozar  <akozar@users.sourceforge.net>

	* H/prototyp.h:
	* Top/argdecode.c:
	* Top/main.c:
	* Top/one_file.c (readOptions, read_unified_file): readOptions() only
	prints "missing </CsOptions>" message when reading from CSD file.

2008-03-02  Michael Gogins  <gogins@pipeline.com>

	* SConstruct, csoundd.nsi:
	Many changes to enable building and installing Csound built
	with MSVC 2008 or MinGW 4.2.1

	* CsoundAC:
	Build as static library to try to work around problem with
	MSVC corrupting data in C++ classes exported but based
	on non-exported STL classes.

	* API Reference:
	Updated to reflect recent changes.

2008-02-23  Michael Gogins  <gogins@pipeline.com>

	* InOut/widgets.cpp:
	Fixed a major bug in which the Csound memory manager (C style) was
	allocating and deallocating a C++ structure (WIDGETS_GLOBALS).
	If new is not called for WIDGETS_GLOBALS, the constructors of its
	std::vector collections are not called. Then in the widget
	csoundDestroyModule function, invalid vectors are iterated,
	causing an access violation. Fixed by using standard C++
	new and delete for the structure to ensure proper creation of its
	vector members. This is OK because by calling csoundModuleInit
	and csoundModuleDestroy, Csound is permitting the module to
	manage its own memory.

	The code accessed FLTK flags as a value when the flags had not been
	initialized as a global variable. This caused an access violation
	in csoundModuleDestroy. The code has been changed to get the flags
	as a pointer, and only dereference the pointer if it is not null.

	* Opcodes/vst4cs/src/vst4cs.cpp:
	Cleaned up csoundModuleDestroy code for Windows MSVC build,
	which was causing an access violation.

2008-02-22  Michael Gogins  <gogins@pipeline.com>

	* SConstruct:
	Many changes to enable all features of Csound to build with
	Microsoft Visual C++ 2008 (MSVC). Also changes to enable
	build with MinGW 3.4.5/MSys 1.0.11/SCons 0.97.

	* custom-mingw.py, custom-msvc.py:
	Rationalized locations of third-party libraries in
	network mounted "U:/" drive root directory.

	* Frontends/CsoundAC/Counterpoint.cpp:
	Many changes to enable MSVC compilation.

	* CsoundVST:
	Renamed CsoundVST.exe to CsoundVstShell.exe to
	enable MSVC build.
	Exported new RunCsoundVST function to enable CsoundVstShell to run
	with MSVC build.

	* Engine/sread.c (nested_repeat, do_repeat, sread, etc.):
	Renamed struct in_stack_s to avoid debugging conflict with rdorch.c.
	Fixed some endless loops caused by the 'm' and 'n' statements.
	Prevented 'm' and 'n' statements from eating next line.
	Fixed line counts when using 'm' and 'n'.
	nested_repeat() does not need to change event opcode to 's'.
	Fixed 'r' repeats to work with optional p1 of 's' and 'e' statements.
	'{' statement should not reset clock_base, warp_factor, or prvp2.

2008-02-01  Anthony Kozar  <anthonykozar@sbcglobal.net>

	* H/version.h (CS_APISUBVER): Increased to 6 for Csound 5.08.

	* Top/getstring.c: Added stub for csoundSetLanguage().

2008-01-31  Anthony Kozar  <anthonykozar@sbcglobal.net>

	* H/csound.h (CSOUND_FILETYPES): Added CSFTYPE_IMAGE_PNG.

	* Opcodes/imageOpcodes.c (__doOpenImage, __doSaveImage): Use FileOpen2()
	and FileClose() instead of fopen() and fclose().  Other minor fixes.

2008-01-30  jpff  <jpff@codemist.co.uk>

	* retagged  5.08b

2008-01-29 veplaini <Victor.Lazzarini@nuim.ie>
       * Opcodes/hrtfopcodes.c: New HRTF opcodes by Brian Carty
       * Opcodes/syncgrain.c: fixed bug in period counter preventing
	                      accurate tuning of grain frequency
       * SConstruct: added token NOGETTEXT to useGettext=0 option

2008-01-29  jpff  <jpff@codemist.co.uk>

	* H/dumpf.h: Commented out the interpolation argument as not
	implemented.

2008-01-29  Anthony Kozar  <anthonykozar@sbcglobal.net>

	* Top/one_file.c (readOptions, checkVersion, etc.): Fixed version checks;
	prevented crashes in readOptions(), and improved error reporting for CSD.

2008-01-27  Anthony Kozar  <anthonykozar@sbcglobal.net>

	* Top/one_file.c (read_unified_file, checkLicence): Added <CsLicense> as
	an acceptable alternate spelling of <CsLicence>.

2008-01-27  jpff  <jpff@codemist.co.uk>

	* version 5.08Beta

	* installer/linux/installer.fl:
	* installer/linux/new_install.cxx: Added support for installing locales

2008-01-22  Anthony Kozar  <anthonykozar@sbcglobal.net>

	* Top/argdecode.c (decode_long): Added --csd-line-nums= option.

2008-01-21  Anthony Kozar  <anthonykozar@sbcglobal.net>

	* Engine/sread.c (scorerr, sreaderr, getscochar, sread, getpfld, etc.):
	Major changes to score error reporting; now accurately reports the line
	numbers for the chain of inputs for most errors.  Many error messages
	were changed to avoid redundancy and for clarity.

2008-01-20  Anthony Kozar  <anthonykozar@sbcglobal.net>

	* H/csoundCore.h (CSOUND):
	* Top/csound.c:
	* Top/main.c (csoundCompile): Save the original CSD file name.

	* Engine/sread.c (scorerr, sget1): Fixed backtrace of score includes in
	scorerr() and a possible crash when a #include file is not found.

2008-01-19  Anthony Kozar  <anthonykozar@sbcglobal.net>

	* H/csoundCore.h (CSOUND):
	* Top/csound.c:
	* Top/one_file.c (read_unified_file, etc.):
	* Engine/rdorch.c (synterr): Count lines while reading a CSD and save the
	offsets of the orchestra and score; add offset to line numbers reported
	with errors in the orchestra.  (Score yet to be done).

2008-01-13  jpff  <jpff@codemist.co.uk>

	* Opcodes/pan2.c (pan2): Corrected so it agrees with documentation

2008-01-06  jpff  <jpff@codemist.co.uk>

	* H/version.h (CS_PATCHLEVEL): If subversion goes
	up,patchlevelneeds to be reset.

2007-12-27  jpff  <jpff@codemist.co.uk>

	* Opcodes/imageOpcodes.h:
	* Opcodes/imageOpcodes.c: New code

2007-12-25  jpff  <jpff@codemist.co.uk>

	* po/french.po:
	* po/american.po: Translations

	* po/csound.po: New; gettext template

	* Top/getstring.c (init_getstring): Alternative version for GNU
	gettext version

	* InOut/widgets.cpp: Correct double negatives in error messages

2007-12-17    <jpff@cs.bath.ac.uk>

	* H/csoundCore.h (CSOUND): added fields delayederrormessages and
	printerrormessagesflag and reduced number of dummies

	* Top/csmodule.c (csoundLoadExternal): Store messages about
	non-modules

	* Top/csound.c (csoundPreCompile): Print delayed messages at end
	if any and in API version

	* Top/main.c (csoundCompile): If delayed messages print after arg
	decode

2007-12-15  jpff  <jpff@codemist.co.uk>

	* Opcodes/pvsband.c (pvsbrej): New opcode for band reject

2007-12-14  Anthony Kozar  <anthonykozar@sbcglobal.net>

	* Opcodes/shape.c: Added unipolar option to pdclip, pdhalf, and pdhalfy,
	making it the default.

2007-12-11  Anthony Kozar  <anthonykozar@sbcglobal.net>

	* Engine/sread.c (ifa, getpfld): New "no-carry" operator (!) for score
	language that prevents implicit carrying of p-fields in i-statements.
	(eg.  i 2 1 1 4.0 ! will only have 4 p-fields regardless of whether
	previous i2 statements had more).

2007-12-11  jpff  <jpff@codemist.co.uk>

	* H/version.h (CS_PATCHLEVEL): 3

	* Opcodes/pvsband.c: New code

	* Opcodes/pvs_ops.c (csoundModuleInit): Initialise pvsband

2007-12-06  Anthony Kozar  <anthonykozar@sbcglobal.net>

	* SConstruct:
	* Opcodes/shape.c: New opcodes powershape, polynomial, chebyshevpoly,
	pdclip, pdhalf, pdhalfy, and syncphasor.

2007-12-03  Anthony Kozar  <anthonykozar@sbcglobal.net>

	* Engine/sread.c (sread, flushlin, getpfld): Improved line counts for
	error reporting (still much to do though).  Fixed some potential buffer
	overflows.  Fixed {} repeat opcodes and improved their parameter reading
	(similarly to previous changes for 'r' statement).  Now flushing rest of
	line after finding an illegal character in getpfld().

2007-11-30  jpff  <jpff@codemist.co.uk>

	* Opcodes/pvsbasic.c (pvsscale): Improved algorithm for SDFT case
	so no ampltitude variation

2007-11-29  Anthony Kozar  <anthonykozar@sbcglobal.net>

	* Top/argdecode.c (argdecode, decode_long):
	* Top/main.c (csoundCompile):
	* Top/csound.c (const cenviron_):
	* Engine/otran.c (otran):
	* H/csoundCore.h (struct OPARMS):
	Added --check-syntax-only commandline flag (exclusive with --i-only).
	otran() and csoundCompile() return early when just checking syntax.
	--i-only sets --nosound same as -I
	Added initial value for numThreads to OPARMS.

	* Top/one_file.c (read_unified_file): CSD read should fail when no
	<CsoundSynthesizer> tag found so that performance is aborted.

	* Ops/str_ops.c (getcfg_opcode): Added mac_classic case for host OS name.

2007-11-21  Anthony Kozar  <anthonykozar@sbcglobal.net>

	* Opcodes/sfont.c: Corrected code for C89 (all declarations at top).

2007-11-07  Felipe Sateler <fsateler@gmail.com>

	* H/csound.h,frontends/csladspa/csladspa.cpp,interfaces/CsoundFile.hpp,
	interfaces/filebuilding.h

	* SConstruct (CheckGcc4): Added stuff to limit visibility of symbols

2007-10-01  jpff  <jpff@codemist.co.uk>

	* VERSION 5.07

2007-09-30  jpff  <jpff@codemist.co.uk>

	* OOps/goto_ops.c (turnoff2): Patch from Jonathan Murphy in mode4 case

	* OOps/pstream.c (pvscross): SDFT support

2007-09-29  jpff  <jpff@codemist.co.uk>

	* OOps/ugens1.c (xsgset2, xsgset): Allow negative amd zero length
	segments

2007-10-03  Michael Gogins <gogins@pipeline.com>

	* Updated Windows installers to current versions: libsndfile,
	PortAudio, Fluidsynth, Synthesis Toolkit in C++.

	* Restored Synthesis Toolkit in C++ Csound opcode wrappers
	for native STK C++ code, as STK now has BSD-type license.

	* Convenience wrappers in high-level CsoundAC.Composition
	class for Csound.Score.arrange(), csnd.CppSound.setOrchestra(),
	and csnd.CppSound.setScoreHeader(), for more intuitive use
	of CsoundAC with Csound.

	* Updated Csound API documentation to reflect splitup between
	CsoundAC and CsoundVST.


2007-09-28  jpff  <jpff@codemist.co.uk>

	* Opcodes/pan2.c: New code

	* Opcodes/pvsbasic.c (pvsoscprocess): Added SDFT support

2007-09-21  jpff  <jpff@codemist.co.uk>

	* Opcodes/pvsbasic.c: Added tests all over to warn if the same
	f-signal is used as in and out in the same opcode

2007-09-20  jpff  <jpff@codemist.co.uk>

	* Opcodes/pvsbasic.c (pvsblurset, pvsblur): Added SDFT support

2007-09-19  jpff  <jpff@codemist.co.uk>

	* Opcodes/pvsbasic.c (pvsfilterset, pvsfilter): Added SDFT support

2007-09-18  jpff  <jpff@codemist.co.uk>

	* Opcodes/pvsbasic.c (pvsmix): Added SDFT support

2007-09-17  jpff  <jpff@codemist.co.uk>

	* Opcodes/pvsbasic.c (pvsmoothprocess): Added SDFT support; also
	a-rate parameters is wanted

2007-09-09  jpff  <jpff@codemist.co.uk>

	* Made SDFT dependent of SDFT macro and adjust SConstruct to set
	it

	* Opcodes/pvsbasic.c (pvsshift, pvsscale): Added SDFT support

2007-09-08  jpff  <jpff@codemist.co.uk>

	* Opcodes/pvsbasic.h (_pvsfreez): Remove unused lastfreq

2007-08-28  Steven Yi   <stevenyi@gmail.com>

	* InOut/rtwinmm.c: midi_in_close had incorrect check causing
	device not to be closed properly

2007-09-06  jpff  <jpff@codemist.co.uk>

	* Opcodes/pvsdemix.c (pvsdemix_init): Added (under BETA) support
	for streamed SDFT.

	* Opcodes/pvsbasic.h (_pvsfreez): Added field in SDFT case

	* Opcodes/pvsbuffer.c (pvsbufreadset, pvsbufferset): Added (under
	BETA) support for streamed SDFT.

	* Opcodes/pvscent.c (pvscentset, pvscent, pvsscent)
	(pvspitch_init): Added (under BETA) support for
	streamed SDFT.  Includes a-rate opcode for pvscent

	* Opcodes/pvsbasic.c (pvsinit, pvsfwriteset, pvsdiskinset)
	(pvsfreezeset, pvssfreezeprocess, pvsfreezeprocess, pvsoscset)
	(pvsbinprocess, pvsbinprocessa, pvsmoothset, pvsmixset, pvsmix)
	(pvsfilterset, pvsscaleset, pvsshiftset, pvsshift, pvsblurset)
	(pvstencilset, pvstencil): Added (under BETA) support for
	streamed SDFT.  Includes a-rate opcode for pvsbinprocess

	* OOps/pvsanal.c (pvssanalset, pvsanalset, pvssanal, pvsanal)
	(pvsynthset, pvssynth, pvsynth): Added (under BETA) support for
	streamed SDFT

	* H/pstream.h: Added (under BETA) support for streamed SDFT.
	Changes to PVSDAT and PVSANAL

2007-08-31  Anthony Kozar  <anthonykozar@sbcglobal.net>

	* OOps/aops.c:
	* Engine/entry1.c:
	* H/entry1.h: Added new value conversion functions to convert from Midi
	note number to Csound's three pitch formats (cpsmidinn, pchmidinn,
	and octmidinn).

2007-08-28  Steven Yi   <stevenyi@gmail.com>

	* Opcodes/fluidOpcodes/fluidOpcodes.c: modified fluidEngine opcode
	to take optional number of channels (range 16-256, default to 256)
	and polyphony (range 16-4096, default to 4096) to use.

2007-08-21  Steven Yi   <stevenyi@gmail.com>

	* Opcodes/fluidOpcodes/fluidOpcodes.c: added new
	fluidSetInterpMethod opcode that wraps fluidSynth's
	fluid_set_interp_method API method; allows user to choose
	interpolation method from 0 (none), 1 (Linear), 4 (4th order,
	default), and 7 (7th order, highest quality) on a per channel
	basis

2007-08-21    <Victor.Lazzarini@nuim.ie>

	* Opcodes/sfont.c: removed all global static variables

2007-08-16    <jpff@cs.bath.ac.uk>

	* SConstruct: Separate Word64 (for PIC) and Lib64 for library name

2007-08-14    <jpff@cs.bath.ac.uk>

	* SConstruct: Use .Program rather than .Command in cseditor

2007-07-24  Michael Gogins <gogins@pipeline.com>

	* Folded all NSIS windows installer scripts into one script,
	csoundd.nsi. See the top of this script for command-line options
	to build float sample or double sample versions of Csound,
	or to omit or include non-free software components. The script
	automatically detects Python, and can install Python if it is
	not available; if Python is not available, copies Python features
	of Csound to a backup directory.

	* Renamed some example .csd files for greater clarity.

	* Improved GUI for CsoundVST.

	* Updated the Csound reference manual for the new installer script,
	CsoundAC, and changes in CsoundVST.

2007-07-28  jpff  <jpff@codemist.co.uk>

	* Engine/musmon.c (tempset): Cannot set tempo if beatmode not in force

2007-07-24  Michael Gogins <gogins@pipeline.com>

	* Removed CsoundVST, vst4cs, and stk.dll (the C++ version of the
	STK opcodes) from the default Windows installers, in order to bring
	the Windows installers into line with SourceForge licensing guidelines.

	* Moved the "Silence" algorithmic composition classes out of
	the CsoundVST shared library and into a new shared library, Python
	extension module, and CVS directory, CsoundAC (for "Csound
	algorithmic composition").

	* Created new NSIS installer scripts that do include CsoundVST,
	vst4cs, and the STK opcodes as a convenience for those who will
	build these components from source code.

	* Speeded up the CsoundAC.Voicelead, CsoundAC.VoiceleadingNode,
	and CsoundAC.Score class methods that work with chord voicings
	by using a new algorithm to iterate through all voicings of a chord
	in a specified by range by adding octaves to the lowest and
	most compact voicing, instead of building a set of all voicings
	in memory (which would get much too large for complex chords).

2007-07-13    <jpff@cs.bath.ac.uk>

	* util/atsa.c (init_sound): Check to see if no partials (ie
	silence) and stop

2007-07-12    <jpff@cs.bath.ac.uk>

	* Opcodes/ugnorman.c: Added scaling by 0dbfs and some code tidying

2007-07-06    <jpff@cs.bath.ac.uk>

	* InOut/rtwinmm.c (csoundModuleCreate): Quieten startup message in
	line with other modules

	* Opcodes/ugnorman.c (atsaddnzset): Complain about a negative
	number of bands

2007-07-05  Michael Gogins <gogins@pipeline.com>

	* Opcodes/vst4cs: Fixed a bug in the vstnote opcode whereby NOTE
	OFF messages were scheduled, but not always dispatched. NOTE OFF
	messages are now both scheduled and dispatched.

2007-07-05  jpff  <jpff@codemist.co.uk>

	* Opcodes/ambicode.c: Used P type for gains in bformenc.  Added
	negative setup to give "controlled opposites" rather than
	spherical harmonics.  Tidied code to make kbeta explicit in
	encoding.  Other code reworking.

	* Engine/entry1.c:
	* Engine/rdorch.c (getoptxt):
	* Engine/csound_orc_semantics.c (handle_polymorphic_opcode): Added
	P as k-rate defaulting to 1

2007-06-30  jpff  <jpff@codemist.co.uk>

	* OOps/goto_ops.c (turnoff2): ip->nxtact can be overwritten in
	mode 0 so need to remember the value before calling deact

2007-06-24  jpff  <jpff@codemist.co.uk>

	* OOps/ugens2.c (koscl3): The amplitude was being ignored.
	Multiply by *p->xamp to fix

2007-06-08  jpff  <jpff@codemist.co.uk>

	* Opcodes/ugsc.h:
	* Opcodes/ugsc.c: Make filters work in doubles internally

2007-06-04  jpff  <jpff@codemist.co.uk>

	* VERSION 5.06

	* interfaces/cs_glue.h: Removed as it was empty

	* Opcodes/grain4.c (grainsetv4): Supress messages if no warnings

	* H/soundio.h (SF2TYPE): Masked off top nibble with SF_FORMAT_TYPEMASK

2007-06-03  Anthony Kozar  <anthonykozar@sbcglobal.net>

	* Top/cscorfns.c (cscoreRESET & cscoreFileOpen):  Fixed deallocation of
	SPACE blocks.  Clarified some error messages.  Searches in INCDIR now
	when opening extra score files and calls csoundNotifyFileOpened().

2007-06-02  Anthony Kozar  <anthonykozar@sbcglobal.net>

	* util/dnoise.c:
	* util/hetro.c:
	* util/sndinfo.c:
	* util/srconv.c: Added calls to csound->NotifyFileOpened() as needed.

	* Opcodes/fout.c (fout_open_file): Changed FileOpen() to FileOpen2(),
	but the result is not ideal yet because we cannot always know the
	correct file type for files opened with the fiopen opcode.

	* H/csoundCore.h:
	* H/csound.h:  Added sftype2csfiletype() function pointer to CSOUND.

	* Opcodes/py/pythonopcodes.c (exec_file_in_given_context):
	* Opcodes/py/pyx-gen.py:
	* Opcodes/py/pyx.auto.c: Replaced fopen() call with FileOpen2() in
	exec_file_in_given_context(), adding a CSOUND* to the function arguments,
	and updating the pyexec* opcode routines to pass it.

	* InOut/virtual_keyboard/KeyboardMapping.cpp:

	* Top/main.c (csoundCompile): Call csoundNotifyFileOpened() if a dummy
	score file is created.

	* InOut/libsnd.c (sfopenin & sfopenout): Call csoundNotifyFileOpened()
	for the primary input and output soundfiles.

2007-06-01  jpff  <jpff@codemist.co.uk>

	* OOps/diskin2.c (diskin2_init):
	* OOps/diskin.c (newsndinset): Supress warning messages when no
	warnings requested

	* Top/csound.c (kperf): Restore other way of running chain. Unsafe
	in presence of delete but needed in turnoff

2007-06-01  Anthony Kozar  <anthonykozar@sbcglobal.net>

	* Engine/envvar.c (csoundFileOpenWithType): When opening a sound file
	for reading, replace CSFTYPE_UNKNOWN_AUDIO with actual file type.

	* InOut/libsnd_u.c (sftype2csfiletype): Ignore endian bits of format.

	* OOps/sndinfUG.c (getsndinfo): Fixed a small bug in yesterday's changes
	and worked around opening of PVOC files being reported twice.

2007-05-31  Anthony Kozar  <anthonykozar@sbcglobal.net>

	* H/csoundCore.h:
	* H/csound.h:  Moved CSOUND_FILETYPES enum to csound.h for host and
	plugin access.  Added more file type constants.

	* InOut/libsnd_u.c:
	* OOps/diskin.c
	* util/mixer.c:
	* util/scale.c:
	* util/xtrct.c: type2csfiletype() now does more audio formats and uses
	sample-encoding information to distinguish between AIFF and AIFC.

	* H/csound.h:
	* H/csoundCore.h:
	* H/prototyp.h:
	* Engine/memfiles.c:
	* Top/csound.c:
	* OOps/ugens3.c:
	* OOps/ugens5.c:
	* Opcodes/hrtferX.c:
	* Opcodes/scansynx.c:
	* Opcodes/ugens9.c:
	* Opcodes/ugnorman.c:
	* util/het_export.c: New API function pointer ldmemfile2() to replace
	ldmemfile().  Takes an additional parameter for the type of file being
	opened. Updated all calls to ldmemfile() to use ldmemfile2() instead.
	New API function pointer NotifyFileOpened() that calls the
	FileOpenCallback when set.

	* InOut/winEPS.c:
	* Opcodes/ftgen.c:
	* Opcodes/sfont.c:  Replaced fopen() calls with FileOpen2().

	* Top/main.c:
	* Top/one_file.c
	* Engine/musmon.c:
	* Engine/rdorch.c:
	* OOps/sndinfUG.c:
	* Opcodes/Loris/lorisgens5.C:
	* Opcodes/fluidOpcodes/fluidOpcodes.c: Added calls to
	csoundNotifyFileOpened() after uses of fopen() within Csound.  Added
	csound->NotifyFileOpened() to fluidLoad and lorisread. lorisread now
	looks in SADIR for input files.  Tracks whether orc and sco files are
	temporary files.

	* Top/cscore_internal.c:
	* Top/csound.c:
	* H/prototyp.h: Rename internal cscore function to cscore_() to avoid
	linker warnings for duplicate symbol with standalone cscore programs.

2007-05-30  jpff  <jpff@codemist.co.uk>

	* Top/argdecode.c (decode_long): Correct string length count in
	--m-warnings and a few others

2007-05-27  jpff  <jpff@codemist.co.uk>

	* OOps/aops.c (MOD): Changed to non-integer values can be returned
	-- reverting to pre Feb2007 version but better code

2007-05-17  Andrés Cabrera  <andres@geminiflux.com>
	* InOut/widgets.cpp, InOut/widgets.h: Added FlslidBnk2,
	FlvslidBnk, FlvslidBnk2, by Gabriel Maldonado

2007-05-14  Andrés Cabrera  <andres@geminiflux.com>
	* InOut/widgets.cpp, InOut/widgets.h, Opcodes/gab/hvs.c,
	Opcodes/gab/newgabopc.c, Opcodes/gab/sliderTable.c,
	Opcodes/gab/tabmorph.c: Added new opcodes from CsoundAV by Gabriel
	Maldonado: hvs1, hvs2, hvs3, vphaseseg, inrg, outrg, lposcila,
	lposcilsa, lposcilsa2, tabmorph, tabmorpha, tabmorphak, tabmorphi,
	trandom, vtable1k, slider8table, slider16table, slider32table,
	slider64table, slider8tablef, slider16tablef, slider32tablef,
	slider64tablef, sliderKawai and an a-rate version of ctrl7.

	* Opcodes/gab/vectorial.c,Opcodes/gab/vectorial.c: Added new
	optional isize argument to vrandh and vrandi for more similarity
	with randh and randi

2007-05-02  Michael Gogins <gogins@pipeline.com>

	* ScoreGen.dll can now act as a MIDI effect as well as a VST
	plugin that can send MIDI events to the host. I.e., ScoreGen can
	act as a Python-programmable score generator in VST hosts.  As a
	MIDI effect, ScoreGen can "freeze" generated events into a MIDI
	part for manual editing or notation, using Cubase's "Free MIDI
	Modifiers" command.

	* A number of serious bugs were fixed in ScoreGen's VST event
	processing. It will now properly play generated scores.

2007-05-07  jpff  <jpff@codemist.co.uk>

	* Opcodes/pitch.c (pitchset): Do not change parameters!
	* Opcodes/partikkel.h:
	* Opcodes/partikkel.c: Remove failed attempt at
	aliasing-prevention that might result in segfaults or hangs when
	using kdist. Small optimisations. Some cosmetic stuff.

2007-05-04    <jpff@cs.bath.ac.uk>

	* util/het_export.c (het_export): Improved error checks as suggest
	in bug report

2007-05-02  Michael Gogins <gogins@pipeline.com>

	* Updated the csnd and CsoundVST Python extension modules to be
	compatible with Python version 2.5.
	* Split all SWIG-generated Python stub code off into shared
	libraries _csnd.pyd and _CsoundVST.pyd.
	* All remaining code from the old _csnd.dll and _CsoundVST.dll is
	now in csnd.dll and CsoundVST.dll.
	* Many classes and functions in CsoundVST are now exported so that
	they can dynamically link with _CsoundVST.pyd.
	* "Glue" code for message buffers, etc. has been moved into the
	csound.h and csound.c files.

2007-04-29  Anthony Kozar  <anthonykozar@sbcglobal.net>

	* Engine/envvar.c, Engine/fgens.c, Engine/memfiles.c,
	* Engine/new_orc_parser.c, Engine/rdorch.c, Engine/sread.c, H/csound.h,
	* H/csoundCore.h, H/envvar.h, H/prototyp.h, H/soundio.h, InOut/libsnd_u.c,
	* InOut/midifile.c, InOut/midisend.c, OOps/diskin.c, OOps/diskin2.c,
	* OOps/dumpf.c, OOps/pvfileio.c, OOps/sndinfUG.c, Top/argdecode.c,
	* Top/csound.c, Top/main.c, Top/one_file.c, util/atsa.c, util/cvanal.c,
	* util/hetro.c, util/lpanal.c, util/mixer.c, util/pvanal.c, util/scale.c,
	* util/xtrct.c:
	  New API function pointer FileOpen2() to replace FileOpen().  Takes
	additional parameters for the type of file being opened and whether it
	is a temp file. This information (along with filename, etc.) is passed
	to a new host callback that can be set with csoundSetFileOpenCallback().
	Updated most uses of FileOpen() to use FileOpen2() instead.

2007-04-28  Anthony Kozar  <anthonykozar@sbcglobal.net>

	* Opcodes/ampmidid.cpp: #include "OpcodeBase.hpp", not  <OpcodeBase.hpp>.

	* Top/csound.c (kperfThread):
	* Top/main.c:
	* Opcodes/gab/vectorial.c (vrand*): Move declarations before other code
	and kperfThread() should return unsigned long instead of int.

2007-04-22  Michael Gogins <gogins@pipeline.com>

	* Corrected the logic in the CsoundVST ImageToScore class.
	* Added support for PNG and JPEG formats to the ImageToScore class.

2007-04-19  jpff  <jpff@codemist.co.uk>

	* Opcodes/partikkel.h:
	* Opcodes/partikkel.c: New code from Oeyvind

2007-03-24  jpff  <jpff@codemist.co.uk>

	* H/version.h (CS_APISUBVER): Increase

	* Top/csound.c:
	* Top/argdecode.c:
	* H/csoundCore.h: Rearrange code on sr/kr override

2007-03-19  Andrés Cabrera  <andres@geminiflux.com>
	* Fixed vrandh and vrandi scaling problems and added optional
	idstoffset, iseed and ioffset arguments

2007-03-12  Andrés Cabrera  <andres@geminiflux.com>
	* Added preliminary support for vst4cs on linux

2007-03-12  jpff  <jpff@codemist.co.uk>

	* Opcodes/system_call.c (localops): system was not called at k-rate

2007-03-11  Andrés Cabrera  <andres@geminiflux.com>
	* Added Plastic look for FLslider, FlslidBnk, FLbutton and FLbutBnk

2007-03-07  jpff  <jpff@codemist.co.uk>

	* VERSION 5.05

2007-03-04 	Steven Yi	<stevenyi@gmail.com>
	* Engine/sread.c: Applied patch from John McCullough from SourceForge bug
	1666632 "Heap Overflow in Marker Parsing"

2007-02-18 	Steven Yi	<stevenyi@gmail.com>
	* Opcodes/dam.{c.h}: Moved initialization code of power buffer to
	performance time function as it depends on krate var (kthreshold)

2007-02-17  jpff  <jpff@codemist.co.uk>

	* OOps/aops.c (MOD): Attempt to fix bad code in MOD

2007-02-14  jpff  <jpff@codemist.co.uk>

	* Top/cscore.c:
	  Top/cscormai.c:	Removed old code

2007-02-13  Anthony Kozar  <anthonykozar@sbcglobal.net>

	* Top/cscorfns.c: cscoreCopyEvent() was writing past the end of the EVENT
	struct.  Also added new static atEOF to fix an infinite loop caused by
	a change in the behavior of rdscor().

	* Top/cscormai.c:
	* Top/cscore.c:   Moved to frontends/cscore/

	* examples/cscore/: Added a number of examples of using Cscore.

	* util1/cscore/: Removing this directory as it is obsolete.

2007-02-13  jpff  <jpff@codemist.co.uk>

	* Opcodes/fm4op.h (TwoPole): Not used

2007-02-02  jpff  <jpff@codemist.co.uk>

	* Opcodes/pitch.c (trnset): Fixed bug in allocation

2007-01-26  jpff  <jpff@codemist.co.uk>

	* Opcodes/gab/vectorial.c (vexpv_i): Aparent typo used
	uninitialied variable

2007-01-25  jpff  <jpff@codemist.co.uk>

	* Opcodes/butter.c: Optimisations and accuracy improvements.  Also
	deleted butter.h and incorporated into source

2007-01-16  Steven Yi  <stevenyi@gmail.com>
	* InOut/widgets.cpp (csoundModuleDestroy): wrapped deinit code
	with a check to see if widgetGlobals is not NULL (was causing
	segfault when running "csound" or "csound --help")

2007-01-15  Steven Yi  <stevenyi@gmail.com>
	* Manually merged in work from New Parser branch; to compile, must
	enable in build using buildNewParser=1; to use at runtime, use
	--new-parser flag; notes added to To-fix-and-do file; added tests
	directory for use with testing new parser (python scripts)

2007-01-15  jpff  <jpff@codemist.co.uk>

	* Opcodes/wave-terrain.c (wtinit): No need to copy tables

	* Opcodes/scansyn.c (scsnu_initw): Initialise x2 and x3 as in
	scansynx

2007-01-07  Anthony Kozar  <anthonykozar@sbcglobal.net>

	* OOps/remote.c (remoteport): Stub version for platforms without sockets.

	* SConstruct: Use sys.byteorder to set flags for sfonts and STK opcodes.

2007-01-07  Steven Yi  <stevenyi@gmail.com>
	* Engine/envvar.c (csoundGetDirectoryForPath): added call to
	csoundConvertPathname at top of function to fix bug on Windows
	where path's with forward slashes were causing segfaults
	(Recommended by Anthony Kozar on Dev list)

2007-01-07  jpff  <jpff@codemist.co.uk>

	* Engine/entry1.c: Allow printf and printf_i not have zero
	arguments after trigger (reverted as causes other problems)

	* Opcodes/system_call.c: new code

2006-12-02  Michael Gogins <gogins@pipeline.com>

	* Completed implementation of algorithmic composition
	helper classes for voice-leading and chord progression in
	CsoundVST: Voicelead, VoiceleadingNode, Conversions, and Score.
	These implement orthogonal arithmetical operations for
	changing interval structure ('prime chord' or P),
	chord transposition ('transposition' or T), and voicing or
	inversion within a range ('voicing' or V), as well as
	arithmetic upon pitch-class set numerals ('Mason number' or M).
	These operations can be used both to generate scores, and to
	filter existing scores.

2006-12-23  jpff  <jpff@codemist.co.uk>

	* InOut/widgets.cpp (save_snap): fl_ask() is depricated so replace
	by fl_choice()

2006-12-14  jpff  <jpff@codemist.co.uk>

	* Opcodes/pitch0.c (pfun): Commented out printing

2006-12-02  Michael Gogins <gogins@pipeline.com>

	* Added CppSound::getInstrumentNames() to return a map of
	instrument numbers to names for a loaded Csound orchestra.
	* Added ampmidid opcodes, which map MIDI velocity variable
	to peak amplitude using the method of Dannenberg (ICMC 2006),
	according to a user-specified dynamic range in dB.

2006-11-28  Steven Yi  <stevenyi@gmail.com>
	* InOut/virtual_keyboard: Modified FLvkeybd to take in width and height,
	make keyboard resizable

2006-11-26  Steven Yi  <stevenyi@gmail.com>

	* InOut/virtual_keyboard: Added FLvkeybd opcode to embed virtual keyboard
	into FLTK Widget panel; only one allowed per project; useful for demo
	versions of MIDI orchestras

2006-11-25  Steven Yi  <stevenyi@gmail.com>

	* InOut/widgets.cpp: Added FLcloseButton and FLexecButton opcodes;
	closeButton closes the window panel it is a member of, while execButton
	runs a command given to it

2006-11-16  jpff  <jpff@codemist.co.uk>

	* OOps/diskin.c: (and many others)
	* OOps/remote.c: Use InitError correctly

2006-11-15  Steven Yi  <stevenyi@gmail.com>

	* InOut/virtual_keyboard: Added 10 MIDI Sliders to virtual keyboard

2006-11-13  jpff  <jpff@codemist.co.uk>

	* OOps/remote.c (remoteport): New opcode to set remote port

	* install.py: Added cseditor to package system

2006-11-09  jpff  <jpff@codemist.co.uk>

	* VERSION 5.04

2006-10-29  Simon Schampijer  <simon@schampijer.de>

	* OOps/remote.c: Added the patch from Dan Williams which:
	1) Fixes detection of the IP address by correctly converting the uint32
	to a string format using inet_ntoa() on Linux.  There was something
	wrong with the manual conversion code that was there which caused only
	the last octet to be recognized, which meant the remote plugin was
	mismatching the IP addresses and playing everything locally.  I have no
	idea why it worked before, but my patch is clearly correct (to me at
	least!)

	2) fixes up error handling on plugin init; If the machine runs out of
	memory while starting the remote plugin, it should return an error in
	callox() so that CSound is alerted to the error as well.  Furthermore,
	if detection of the local IP address fails for any reason, the plugin
	should fail to initialize.

2006-10-27  David Akbari  <dakbari@gmail.com>

	* frontends/cseditor/*:
	* SConstruct: Added build options and targets for basic Csound syntax
        highlighting text editor that uses FLTK.

2006-10-27  Anthony Kozar  <anthonykozar@sbcglobal.net>

	* H/sysdep.h:  #define for inline with Metrowerks CodeWarrior compiler.
	* OOps/remote.c:  Removed troublesome inline declarations.

2006-10-27 	Steven Yi 	<stevenyi@gmail.com>
	* InOut/virtual_keyboard/*:
	* SConstruct: Added new FLTK virtual keyboard MIDI driver; enable use by
	using "-+rtmidi=virtual -M0"; sends MIDI notes in the same way as any
	real MIDI device; useful for testing and in situations without MIDI gear;
	still needs a little work

2006-10-26  Anthony Kozar  <anthonykozar@sbcglobal.net>

	* SConstruct:  Check for socket-related headers and define HAVE_SOCKETS
	if they are found.

	* Top/main.c:
	* Engine/musmon.c:
	* H/remote.h:
	* OOps/remote.c:  #ifdefed remove events based on HAVE_SOCKETS. Created
	stub functions for when they are not available.  Expanded musmon.c
	interface to remote.c so that no internal knowledge of remote globals
	is necessary.  Remote opcodes still exist on non-socket builds but print
	a warning message that remove events are not available.

2006-10-26  Anthony Kozar  <anthonykozar@sbcglobal.net>

	* Top/main.c:
	* Engine/namedins.c:
	* Engine/envvar.c:  Couple more fixes for concatenating paths.

2006-10-25  jpff  <jpff@codemist.co.uk>

	* OOps/midiops.c (pgmin): Added optional channel parameter to
	restrict watch

2006-10-25    Steven Yi  <stevenyi@gmail.com>

	* H/csoundCore.h (OPARMS):
	* Top/argdecode(decode_long):
	* Top/main.c (csoundCompile): added command line flags
	--no-default-paths and --default-paths to disable and reenable
	using path(s) of CSD/ORC/SCO as part of search paths

2006-10-24    Steven Yi  <stevenyi@gmail.com>

	* Top/main.c (csoundCompile): changed CSD/ORC/SCO directory to
	append instead of prepending search paths

2006-10-24  Anthony Kozar  <anthonykozar@sbcglobal.net>

	* Top/main.c:
	* Engine/rdorch.c:
	* Engine/envvar.c:
	* H/envvar.h: Many changes & improvements to file searching.
	  - New internal interface for X-platform path manipulation.
	  - CSD/ORC/SCO directory prepended to environment variables
	    instead of appended (so that they are searched later).
	  - Relative paths beginning with "./" or "../" now work when
	    specifying filenames in ORC and SCO.
	  - Many bug fixes to MacOS 9 path manipultion.

2006-10-23  jpff  <jpff@codemist.co.uk>

	* OOps/midiops.c (pgmin): Make program changes in range 1-128
	rather than 0-127

	* OOps/remote.c (insremot): Need to check csound->remoteGlobals
	before access

2006-10-22  jpff  <jpff@codemist.co.uk>

	* OOps/midiops.c: Added pgmchn opcode

	* Engine/entry1.c: Midiin was not being initialised; also added
	pgmchn opcode

2006-10-21  jpff  <jpff@codemist.co.uk>

	* Opcodes/harmon.c: New code from Barry Vercoe

2006-10-19    Steven Yi  <stevenyi@gmail.com>

	* Top/main.c (csoundCompile): now adds directory of CSD, or ORC
	and SCO to INCDIR, SADIR, SSDIR, and MFDIR; SCO path's are
	currently added before ORC path

	* Engine/envvar.c (csoundGetDirectoryForPath): New function added to find
	absolute path given a path as string

2006-10-19  jpff  <jpff@codemist.co.uk>

	* frontends/winsound/main.cxx (cs_compile_run): If orchname starts
	with / or \\ change directory to location

2006-10-19  Anthony Kozar  <anthonykozar@sbcglobal.net>

	* H/cscore.h: Fixed Cscore includes.
	* Top/csmodule.c: Now searches for & auto-loads plugins on MacOS 9.

2006-10-18    Steven Yi  <stevenyi@gmail.com>

	* Engine/musmon.c (process_rt_event): Fixed to check if remoteGlobals is
	initialized when processing MIDI events

2006-10-17    <jpff@cs.bath.ac.uk>

	* util/pv_import.c (pv_import): Chancge exits to returns and
	replaced printing to stderr by calls to csound->Message

2006-10-16  Anthony Kozar  <anthonykozar@sbcglobal.net>

	* H/csound.h:
	* H/cscore.h:
	* H/cvgvar.h: Added Mac pragmas to export PUBLIC functions.

	* util/pv_import.c: Fixed check for failure to open output file.

2006-10-12  Michael Gogins <gogins@pipeline.com>

	* Added Voicelead class to the Silence system in CsoundVST.
	It finds the closest voice-leadings first by smoothness,
	then by parsimony, optionally avoiding parallel fifths,
	between two sets of pitches.
	* Added methods to the Score class in the Silence system
	for identifying the prime chord, transposition of prime chord,
	and voicing index for segments of scores; setting the same
	properties in segments of scores; and voice-leading between
	segments of scores.

2006-10-12  jpff  <jpff@codemist.co.uk>

	* OOps/remote.c:
	* H/remote.h:	New code for remote performance (OLPC)

	* Engine/entry1.c: Add opcodes insremot, midremot, insglobal and
	midglobal

	* Engine/musmon.c: New code for this

	* H/csoundCore.h: New fields for remote

	* InOut/midirecv.c: minor chjange for remote

2006-10-12  Steven Yi  <stevenyi@gmail.com>

	* Top/one_file.c (readOptions): fixed parsing of quoted strings

2006-09-24  jpff  <jpff@codemist.co.uk>

	* Engine/musmon.c (print_maxamp): Allow coloured numbers in raw
	context as well as dB

2006-09-21  Steven Yi  <stevenyi@gmail.com>

	* Opcodes/biquad.c (mode): added mode opcode, a translation of François
	Blanc's mode UDO to C

2006-09-20  jpff  <jpff@codemist.co.uk>

	* Opcodes/sfont.c (SfLoad): Allow string or number and strset code
	for file

2006-09-18  Steven Yi  <stevenyi@gmail.com>

	* Opcodes/flanger.c (wguide2set): fixed wguide2, code was looking at wrong
	arguments for xincod values, also check for comparison between the two
	xincod's was incorrect

2006-09-16  Michael Gogins <gogins@pipeline.com>

	* Added plugin SDK to Windows installers.

2006-09-15  jpff  <jpff@codemist.co.uk>

	* util/lpcx_main.c:
	* util/lpci_main.c:
	* util/heti_main.c: Simpler versions that do not depend on all
	of csound for stand-alone versions

2006-09-12  jpff  <jpff@codemist.co.uk>

	* Engine/sread.c (sread): isdigit is faster than strchr

	* Engine/insert.c (xinset): strings as arguments
	(xoutset): Ditto

	* Engine/otran.c (parse_opcode_args): Tracking strings as UDO
	arguments

2006-09-12  Steven Yi  <stevenyi@gmail.com>

	* Renamed Opcodes/avarops.c to Opcodes/vaops.c, renamed avar_get and
	avar_set opcodes to vaget and vaset (as requested on Csound list)

2006-09-09  Michael Gogins <gogins@pipeline.com>

	* Removed Loris from Windows installers as new versions do not run on Windows,
	and ATS opcodes are similar.
	* Upgraded LuaJIT to version 1.1.0 for Windows installer.
	* Upgraded libsndfile to version 1.0.17 for Windows installer.
	* Added information on Csound syntax coloring for SciTE to tutorial.
	* Added high-resolution versions of trapped.csd and xanadu.csd.

2006-09-08  Steven Yi  <stevenyi@gmail.com>

	* Engine/rdorch.c (rdorchfile, init_math_constants_macros): added math
	constants found in math.h as a default set of macros (M_PI is $M_PI, etc.)

2006-09-04  Steven Yi  <stevenyi@gmail.com>

	* Opcodes/avarops.c: added avar_get and avar_set opcodes to read from and
	write values to a-rate variables at k-rate

2006-08-28  jpff  <jpff@codemist.co.uk>

	* Opcodes/newfils.c (moogladder_process): Minor optimisation (loop
	invariant)

2006-08-25  jpff  <jpff@codemist.co.uk>

	* Engine/insert.c (delete_instr): Allowed named instruments as well

2006-08-23 veplaini <Victor.Lazzarini@nuim.ie>

	* frontends/tclcsound/commands.c, tclcsound.h: added
	pvs bus channel interface to tclcsound. Not tested yet.
	Manual pages for all new opcodes have also been added.

2006-08-23  jpff  <jpff@codemist.co.uk>

	* Opcodes/biquad.c (tbvcf): Use doubles inside filter

	* util/atsa.c: All over removed compiler warnings -- mainly
	missing casts and inappropriate use of floor

2006-08-23 veplaini <Victor.Lazzarini@nuim.ie>
	* csoundCore.h, csound.h, bus.h, bus.c, csound.c, entry1.c :
	  pvs bus now called pvsin/pvsout.
	* csound.hpp: added a user-friendly interface to pvsin/out
	* disprep.*, entry1.c: added pvsdisp opcode
	* pvsbasic.*: added pvsbin, pvsosc and pvsfwrite opcodes
	* pvscent.c: added pvspitch opcode by Alan OCinneide
	  Manual pages to follow

2006-08-22  jpff  <jpff@codemist.co.uk>

	* Opcodes/biquad.c (moogvcf, rezzy): Minor optimisations

2006-08-21  jpff  <jpff@codemist.co.uk>

	* util/lpanal.c (polyzero): Replace pow(..,2.0) by direct
	calculation twice

	* SConstruct (stdutilSources): Added build of pv_import/export utilities

	* Engine/insert.c: Include delete in non-Beta version

	* util/pvi_main.c, util/pvx_main.c: New code

2006-08-20 veplaini <Victor.Lazzarini@nuim.ie>
	* csoundCore.h, csound.h, bus.h, bus.c, csound.c, entry1.c :
	  added fsig to chani/chano bus interface (now called pvsin/pvsout).
	* csoundCore.h: commented out redefinition of printf to
	  eliminate warnings (on OLPC build)

2006-08-17  jpff  <jpff@codemist.co.uk>

	* Top/csmodule.c (csoundLoadExternal): Even if not BETA display
	the reason that a module failed to load rather than -1

2006-08-15  jpff  <jpff@codemist.co.uk>

	* Version 5.03 released

2006-08-11  Andres Cabrera  <andres@geminiflux.com>

	* opcodes/Gab/vectorial.c: Added kverbose optional argument and
	other bug fixes.

2006-08-07  Andres Cabrera  <andres@geminiflux.com>

	* opcodes/Gab/vectorial.c: Added optional arguments isrcoffset
	and idstoffset to most vectorial opcodes.
	* opcodes/Gab/vectorial.c: Added i-rate versions of most
	vectorial opcodes.

2006-07-30  jpff  <jpff@codemist.co.uk>

	* util/cvanal.c (cvanal): Added termination message

2006-07-27  jpff  <jpff@codemist.co.uk>

	* Opcodes/biquad.c (moogvcfset): Corrected mind error (divide and
	divide).  Thanks to IV

2006-07-26  jpff  <jpff@codemist.co.uk>

	* Opcodes/biquad.c (moogvcfset, moogvcf): Allow for scaling to
	0dbfs and improve accuracy of filter by using doubles.
	(rezzyset, rezzy, bqrezset, bqrez): Use doubles in filter

2006-07-21  Michael Gogins <gogins@pipeline.com>

	* Added new long options for routing MIDI note on message key and velocity
	numbers to specified pfields: --midi-key=<pfield>, --midi-key-cps=<pfield>,
	--midi-key-oct=<pfield>, --midi-key-pch=<pfield>, --midi-velocity=<pfield>,
	--midi-velocity-amp=<pfield>.
	* Added tutorial LaTeX file tutorial/tutorial.tex.

2006-07-19  Victor  Lazzarini <victor.lazzarini@nuim.ie>

	* Opcodes/sndloop.c: added flooper2 opcode
	* Opcodes/syncgrain.*: added syncloop opcode
	Manual pages also added to cvs
	* frontends/tclcsound/commands.c: removed -d flag,
	added csPlayAll command, fixed csCompilelist bug.

2006-07-18  jpff  <jpff@codemist.co.uk>

	* frontends/csound/sched.c (set_rt_priority): Comment out the
	check to see if running as root.  Will fail later perhaps if
	cannot set priority.

2006-07-16  jpff  <jpff@codemist.co.uk>

	* Top/one_file.c (readOptions): Remove trailing spaces in input

2006-07-12  jpff  <jpff@codemist.co.uk>

	* Opcodes/nlfilt.c (pcount, pvalue): New opodes after IV suggestion
	* Opcodes/pitch.c (pitchset): Moved some filter coeffieients to
	double

2006-07-08  jpff  <jpff@codemist.co.uk>

	* H/csoundCore.h: Removed unused macros and typedefs
	* Opcodes/physmod.c (make_DLineA):
	* Opcodes/physutil.c (make_DLineL): No need to zero allocated array
	* Opcodes/vst4cs/src/vst4cs.cpp: **EXPERIMENTAL** try to make
	programs 1-16
	* Opcodes/osc-sock.c (osc_send_set, oscInitUDP): Use memset rather
	than deprecated bzero

2006-07-07      Istvan Varga    <via JPff>

        * Engine/entry1.c: corrected opcode data size for inh and ino
        * Opcodes/bilbar.c (play_pp): use fabs() instead of abs()
        * Opcodes/biquad.c (nestedapset): do not assume sizeof(MYFLT) ==
	sizeof(long)

2006-06-30  jpff  <jpff@codemist.co.uk>

	* OOps/midiops.c:
	* OOps/ugrw1.c:
	* Opcodes/oscbnk.c:
	* Opcodes/physmod.c:
	* Opcodes/uggab.c:
	* Opcodes/wave-terrain.c: Similar changes to previous

2006-06-30  Istvan Varga  <via jpff@codemist.co.uk>

	* Opcodes/vbap_*.c (vbap_*): Replace 1/ksmps by the precomputed value

2006-06-28  jpff  <jpff@codemist.co.uk>

	* Opcodes/vst4cs/src/: Many changes bringing code closer to
	Istvan's fork

2006-06-27  jpff  <jpff@codemist.co.uk>

	* OOps/cmath.c (exprand):
	(biexprand): Restored safety checks for negative argument

2006-06-26  jpff  <jpff@codemist.co.uk>

	* util/pv_import.c: Inverse of pv_export
	* util/pv_export.c: Code to convert .pvx file to comma-separated
	text, as a utility

2006-06-23  Istvan Varga	<ivarga@csounds.com>

	* Opcodes/loscilx.c: experimental new opcodes: loscilx, sndload

2006-06-23  jpff  <jpff@codemist.co.uk>

	* OOps/disprep.c (tempest): If we are in a mask situation retain
	previous best estimate of tempo

2006-06-18  Istvan Varga	<ivarga@csounds.com>

	* OOps/sndinfUG.c: filelen, filenchnls, filesr opcodes: allow for
	  getting parameters of convolve and PVOC files unless the "enable
	  raw files" flag is zero

2006-06-17  Istvan Varga	<ivarga@csounds.com>

	* OOps/ugens2.c: allow inconsistent table index and output type in
	  table read opcodes if ksmps is 1, but print a warning message

2006-06-16  Istvan Varga	<ivarga@csounds.com>

	* Engine/rdorch.c:
	  experimental implementation of nested #ifdef/#ifndef and #else

2006-06-15  jpff  <jpff@codemist.co.uk>

	* util/hetro.c (init_het): skip was not initialised

2006-06-15  Istvan Varga	<ivarga@csounds.com>

	* Engine/rdorch.c: added #ifndef
	* InOut/libsnd_u.c: more quietening of messages

2006-06-14  Istvan Varga	<ivarga@csounds.com>

	* Made messages less verbose in soundin, diskin, diskin2, and
	  sfpassign.
	* Engine/otran.c:
	  fixed (hopefully) incorrect offset calculation of string variables

2006-06-13  Istvan Varga	<ivarga@csounds.com>

	* New API functions: csoundSetCallback(), csoundRemoveCallback()
	* OOps/bus.c: sensekey opcode: use new callback interface
	* H/version.h: updated API version to 1.02
	* InOut/widgets.cpp:
	  experimental implementation of sensekey using FLTK (activated with
	  a new optional argument to FLpanel; only one window can receive
	  keyboard events)

2006-06-12  jpff  <jpff@codemist.co.uk>

	* InOut/midifile.c (csoundMIDIFileOpen): Added MFDIR

2006-06-11  Istvan Varga	<ivarga@csounds.com>

	* Updated version to 5.03.0 beta.
	* Opcodes/midiops2.c: new opcode:  ipgm  midipgm  [ichn]

2006-06-10
	* Csound 5.02.1 release

2006-06-10  Istvan Varga	<ivarga@csounds.com>

	* Engine/sread.c:
	  fixed parsing of score expressions
	* OOps/aops.c:
	  fixed memory access errors and string channels with numeric
	  channel ID in invalue and outvalue
	* frontends/winsound/main.cxx, frontends/CsoundVST/CsoundVST.cpp:
	  minor fixes
	* frontends/fltk_gui/CsoundPerformance.cpp:
	  fixed bug related to display callbacks

2006-06-09  Istvan Varga	<ivarga@csounds.com>

	* OOps/bus.c:
	  Added new optional output argument to sensekey opcode.
	* Engine/rdorch.c:
	  Made excess number of output arguments a syntax error, rather
	  than silently ignoring them.

2006-06-04  Michael Gogins	<gogins@pipeline.com>

	* Changed the MIDI interoperability opcodes (OOps/midiinterop.c)
	midinoteoncps, midinoteonoct, midinoteonpch to leave key and
	velocity unchanged for score-driven performance.

2006-06-04
	* Csound 5.02 release

2006-06-04  Istvan Varga	<ivarga@csounds.com>

	* Engine/otran.c:
	  work around constndx() not being compiled correctly

2006-06-03  Istvan Varga	<ivarga@csounds.com>

	* Engine/fgens.c, InOut/libsnd_u.c, OOps/diskin.c, OOps/diskin2.c:
	  GEN01, diskin, diskin2, soundin: with an iformat value of -1,
	  reject headerless files, rather than assuming the same format
	  as the one specified on the command line
	  GEN01: added format codes 7 (8 bit unsigned), 8 (24 bit), and
	  9 (doubles)
	* Engine/entry1.c, H/sndinfUG.h, OOps/sndinfUG.c:
	  filelen, filenchnls, filesr: added optional i-time argument that
	  defaults to 1, and if zero, will make the opcodes return zero on
	  headerless files rather than some possibly incorrect defaults
	* Opcodes/fout.c:
	  fixed bug in fini opcode (negative numbers were read incorrectly)
	* Engine/sread.c, Engine/swrite.c, Engine/twarp.c:
	  fixes to reading numbers in [] score expressions
	  fixed 's' and 'e' score opcodes with time parameter

2006-06-02  Istvan Varga	<ivarga@csounds.com>

	* New string opcodes:
	  Sdst    strsub      Ssrc[, istart[, iend]]
	  Sdst    strsubk     Ssrc, kstart, kend
	  ichr    strchar     Sstr[, ipos]
	  kchr    strchark    Sstr[, kpos]
	  ilen    strlen      Sstr
	  klen    strlenk     Sstr
	  Sdst    strupper    Ssrc
	  Sdst    strupperk   Ssrc
	  Sdst    strlower    Ssrc
	  Sdst    strlowerk   Ssrc
	  Sval    getcfg      iopt
	  ipos    strindex    Sstr1, Sstr2
	  kpos    strindexk   Sstr1, Sstr2
	  ipos    strrindex   Sstr1, Sstr2
	  kpos    strrindexk  Sstr1, Sstr2
	* Engine/express.c, Engine/otran.c:
	  fixed parsing of numbers in exponential notation
	  also some parser fixes related to 0dbfs

2006-06-01  Istvan Varga	<ivarga@csounds.com>

	* Added callback interface to the software bus with named channels,
	  using new opcodes chnrecv and chnsend. The callback function can
	  be set with csoundSetChannelIOCallback().

2006-05-31  jpff  <jpff@codemist.co.uk>

	* util/sndinfo.c: Added option to print looping information etc.

2006-05-31  Istvan Varga	<ivarga@csounds.com>

	* InOut/widgets.cpp:
	  FLbutton type 1 callback now sets the output to "ion"

2006-05-30  Istvan Varga	<ivarga@csounds.com>

	* Opcodes/fout.c: new opcode: ficlose

2006-05-30  ma++ ingalls	<matt@sonomatics.com>

	* aops.c, aops.h, csound.h:
	  invalue/outvalue updates as per Istvan's comments
	* csound.c: changed "early return" comments to debug only
	* hetro.c: added pollevents inside processing loop
	* lpanal.c: added warning message with -g flag
	* sockrecv.c: took out usleep() declaration - was causing compile error

2006-05-28  ma++ ingalls	<matt@sonomatics.com>

	* frontends/CsoundX: added to cvs
	* aops.c, entry1.c, entry1.h, csound.h:
	  added hack to invalue/outvalue to support strings

2006-05-27  Istvan Varga	<ivarga@csounds.com>

	* Added ATS analysis utility.

2006-05-26  ma++ ingalls	<matt@sonomatics.com>

	* frontends/CsoundVST/AEffect.h:
	  commented out 2 PRAGMAS causing compile error on mac
	* Opcodes/vst4cs/vsthost.c:
	  added plug-in loading for MACH-O mac.
	  commented out #includes that caused compile error on mac
	* Opcodes/vst4cs/vsthost.h:
	  commented out #includes that caused compile error on mac
	* Opcodes/vst4cs/fxbank.h:
	  commented out #includes that caused compile error on mac
	* OOps/aops.c:
	  added i-rate support to invalue/outvalue

2006-05-24  Istvan Varga	<ivarga@csounds.com>

	* InOut/rtalsa.c: changed default device from "default" to "plughw"
	* InOut/rtjack.c: list available device names for -i adc or -o dac
	  if an invalid device is specified

2006-05-23  Istvan Varga	<ivarga@csounds.com>

	* Opcodes/ugnorman.c: fixed "not initialised" bug in ATSbufread

2006-05-22  Istvan Varga	<ivarga@csounds.com>

	* OOps/midiops.c:
	  massign(): interpret channel number <= 0 as all channels
	* H/csoundCore.h, Top/csound.c:
	  added new function GetCurrentThreadID() to CSOUND structure

2006-05-21  Michael Gogins	<gogins@pipeline.com>

	* New API function: csoundGetCurrentThreadId()

2006-05-20  Istvan Varga	<ivarga@csounds.com>

	* Opcodes/stackops.c: added new stack opcodes (stack, push, pop,
	  push_f, pop_f); also moved monitor opcode here.
	* Reworked user defined opcodes to allow for up to 256 input/output
	  arguments.
	* Opcodes/bilbar.c: removed use of C++ style comments.

2006-05-16  jpff  <jpff@codemist.co.uk>

	* Engine/entry1.c: Change args of xin to match OPCODENUMOUTS

2006-05-15  Anthony Kozar	<anthonykozar@sbcglobal.net>

	* Top/cscormai.c:  Fixed #includes.
	* interfaces/CsoundFile.cpp:  isspace() is in <cctype> and supposed
	  to be in std namespace
	* H/csoundCore.h:  Increased OPCODENUMOUTS to 64 as requested.

2006-05-15  Istvan Varga	<ivarga@csounds.com>

	* Opcodes/monitor.c:
	  added new opcode: monitor

2006-05-14  jpff  <jpff@codemist.co.uk>

	* util/pvlook.c (pvlook): Rewritten for .pvx format

2006-05-13  jpff  <jpff@codemist.co.uk>

	* util/pvanal.c: Added -B # argument to give a beta to the Kaiser
	window; still defaults to 6.8

2006-05-12  Istvan Varga	<ivarga@csounds.com>

	* frontends/csound/csound_main.c:
	  overwrite old log files, rather than appending messages

2006-05-08  Istvan Varga	<ivarga@csounds.com>

	* New API functions:
	  csoundCreateMutex, csoundLockMutex, csoundLockMutexNoWait,
	  csoundUnlockMutex, csoundDestroyMutex, csoundRunCommand

2006-05-04  Istvan Varga	<ivarga@csounds.com>

	* InOut/rtalsa.c:
	  added new "devfile" MIDI driver that uses device files in /dev,
	  based on code from Csound 4.23 mididevice.c

2006-05-03  Istvan Varga	<ivarga@csounds.com>

	* InOut/FL_graph.cpp, InOut/widgets.cpp:
	* InOut/winFLTK.c, InOut/winFLTK.h:
	  added more FLTK flags (see winFLTK.h)

2006-05-02  Istvan Varga	<ivarga@csounds.com>

	* InOut/widgets.cpp, InOut/winFLTK.c, InOut/winFLTK.h:
	  disable threads by default if graphs are used
	* OOps/sndinfUG.c:
	  filepeak opcode now uses PEAK chunks with libsndfile >= 1.0.16

2006-04-30  Istvan Varga	<ivarga@csounds.com>

	* Attempt to fix thread locks on MacOS X.
	* util/srconv.c:
	  fixed output amplitude when downsampling
	  allow utility to be stopped by yield callback
	* install.py, installer/misc/mkpackage.py:
	  install TclCsound command documentation

2006-04-29  Istvan Varga	<ivarga@csounds.com>

	* Made it possible to control the behavior of the FLTK plugin
	  from the host application. This can be done with the following
	  code between calling csoundPreCompile() and csoundCompile():
	    CSOUND *csound;
	    ...
	    csoundCreateGlobalVariable(csound, "FLTK_Flags", sizeof(int));
	    *((int*) csoundQueryGlobalVariable(csound, "FLTK_Flags")) = flags;
	  where 'flags' can be the sum of any of the following values:
	    1: disable widget opcodes
	    2: disable FLTK graphs
	    4: disable the use of a separate thread for widget opcodes
	    8: disable the use of Fl::lock() and Fl::unlock()
	   16: disable the use of Fl::awake()
	  additionally, after calling csoundCompile(), the same variable
	  can be checked to find out if graphs or widget opcodes are used:
	   32: FLrun opcode was called
	   64: callbacks for FLTK graphs are set
	* Top/main.c:
	  fixed crash on registering opcodes from the host application
	* frontends/fltk_gui:
	  new GUI frontend that uses the Csound 5 API and FLTK

2006-04-19  Michael Gogins	<gogins@pipeline.com>

	* Updated Lua to version 5.1 (current version),
	changed lua_example.lua to use Class:method calls.

2006-04-17  John ffitch	<jpff@codemist.co.uk>

	* Opcodes/bilbar.c: Added prepared piano string model

	* H/entry1.h:
	* Engine/entry1.c: Added remove opcode.  Probably should be an API
	function rather than opcode

	* Engine/insert.c (delete_instr): New code to delete non-active
	instruments.  Still needs to be checked as it may leave structures
	dangling.

2006-04-15  Istvan Varga	<ivarga@csounds.com>

	* Engine/namedins.c, Engine/otran.c:
	  optimizations in orchestra parser
	* interfaces/lua_interface.i:
	  wrap cs_glue.hpp and csPerfThread.hpp

2006-04-09  Istvan Varga	<ivarga@csounds.com>

	* Engine/envvar.c:
	  csoundFileOpen(): check for files with .sd2 extension, and use
	  sf_open() in this case if sf_open_fd() fails
	* InOut/FL_graph.cpp:
	  wait for the window to be closed by the user at end of performance
	* InOut/libsnd.c:
	  fixes in enabling peak chunks and dithering
	* InOut/libsnd_u.c:
	  type2string(): added SD2 to file types
	* InOut/rtpa.c:
	  print warning if the buffer size (-b) is not an integer multiple
	  of ksmps in full-duplex mode
	* InOut/window.c:
	  moved deferred loading of widgets plugin from main.c to make graphs
	  work in utilities
	* Opcodes/compress.c:
	  made rms levels relative to 0dBFS in distort opcode
	* H/csoundCore.h, Top/csound.c:
	  added dispinit() function pointer to CSOUND structure,
	  for use by utilities
	* H/version.h:
	  updated API version to 1.01 to reflect change to CSOUND structure
	* util/pvanal.c:
	  implemented graph displays (limited to 30 frames at this time)
	* util/sndinfo.c:
	  clear SF_INFO structure before calling sf_open()

2006-04-08  Istvan Varga	<ivarga@csounds.com>

	* OOps/sndinfUG.c:
	  restored filepeak opcode

2006-04-07  Istvan Varga	<ivarga@csounds.com>

	* H/version.h:
	  updated version number to 5.02.0 to reflect addition of new opcodes
	* Opcodes/compress.c:
	  fixed a few minor errors

2006-04-04  Michael Gogins	<gogins@pipeline.com>

	* Changed FluidSynth opcodes slightly, with
	    fluidEngine iChorusOn, iReverbOn
	  pfields, defaulting to "on"; this can reduce noise in low frequencies
	  in SoundFont rendering.
	* Updated Windows FluidSynth opcodes to use latest FluidSynth sources.

2006-03-28  jpff  <jpff@codemist.co.uk>

	* Opcodes/compress.c: New code for distort and compress/expander
	from Barry Vercoe

2006-03-25  Istvan Varga	<ivarga@csounds.com>

	* Engine/entry1.c, H/aops.h, H/entry1.h, OOps/bus.c, opcodes.dir,
	  Opcodes/pitch.c, Opcodes/pitch.h, Opcodes/spectra.c, Top/csound.c:
	  fixes in sensekey opcode

2006-03-22  Michael Gogins	<gogins@pipeline.com>

	* Added ScoreGeneratorVST, a VST plugin for generating scores in VST
	  hosts using Python.
	* Updated Windows installer for new targets, including Winsound.

2006-03-22  Istvan Varga	<ivarga@csounds.com>

	* interfaces/cs_glue.cpp:
	* interfaces/cs_glue.hpp:
	  - added new classes to wrap MIDI I/O:
	      CsoundMidiInputStream     sends MIDI input messages
	      CsoundMidiOutputStream    polls MIDI output messages
	  - added MIDI I/O callbacks to CsoundCallbackWrapper
	  - made it possible to use the message buffer in multiple threads,
	    to allow for redirecting the message output of a
	    CsoundPerformanceThread

2006-03-21  Istvan Varga	<ivarga@csounds.com>

	* SConstruct, Makefile-win32:
	  renamed Csound library to csound{32,64}.dll.5.1 on Windows
	* SConstruct:
	  attempts to fix install target (still needs a lot of work)
	* Engine/namedins.c, OOps/bus.c:
	  fixed a-rate channel allocation in user defined opcode with
	  local ksmps
	* Engine/linevent.c:
	  various minor fixes and code improvements

2006-03-16  Istvan Varga	<ivarga@csounds.com>

	* Updated version number to 5.01.1 beta.
	* Opcodes/sftype.h: check for MacOS 9 or PowerPC, and define
	  WORDS_BIGENDIAN on those platforms.

2006-03-13  Anthony Kozar	<anthonykozar@sbcglobal.net>

	* Top/main.c:  Made TYP_AIFF the default for MacOS 9.
	* Engine/entry1.c:  Removed duplicate OENTRYs.

2006-03-12  jpff  <jpff@codemist.co.uk>

	* Opcodes/bilbar.c (bar_run): Corrected boundary condition

2006-03-11  Istvan Varga	<ivarga@csounds.com>

	* Engine/express.c:
	  fixes in extending tokenstring buffer

2006-03-10  Anthony Kozar	<anthonykozar@sbcglobal.net>

	* Opcodes/minmax.c:
	* SConstruct:
	  Added new 'minmax' plugin library with opcodes for finding minimum
	  and maximum values among several signals.

2006-03-10  Michael Gogins  <gogins@pipeline.com>

	* CSD style command lines in CsoundVST are now translated
	  to orc/sco style before performance in order to save having to edit
	  the command line after loading some CSD files.

2006-03-08  Istvan Varga	<ivarga@csounds.com>

	* Made it possible to load opcode plugins only when the opcode is
	  actually used.

2006-03-07  jpff  <jpff@codemist.co.uk>

	* Engine/otran.c: Removed DTYPE and lclnxtdcnt as not used

2006-02-25  Michael Gogins  <gogins@pipeline.com>

	* Updated SConstruct, custom.py, and Windows
	  installer to build and install PortMidi.

2006-02-24  Istvan Varga	<ivarga@csounds.com>

	* InOut/rtjack.c:
	  Use thread locks instead of calling usleep() in a loop to
	  implement blocking I/O; the -+jack_sleep_time option is now
	  deprecated and ignored.
	  Allow non power of two values for -B.
	  Setting -b to the same value as the JACK buffer size is no
	  longer required.
	* Engine/insert.c:
	* Engine/musmon.c:
	  Alternate fix to problems on very short (less than 1/2 control
	  period) notes; the previous fix introduced a new bug that
	  resulted in early termination of the score in some cases.
	* H/version.h:
	* installer/misc/csound.spec.in:
	  Updated version number from 5.00.1 to 5.01.0 to reflect the
	  addition of new opcodes.

2006-02-24      Victor Lazzarini <Victor.Lazzarini@nuim.ie>

	* Opcodes/psynth.c
	  new track processing opcodes (also added manual pages):
	  trscale, trshift, trsplit, trmix, trfilter, trcross,
	  trhighest, trlowest, binit.

2006-02-15  Istvan Varga	<ivarga@csounds.com>

	* InOut/widgets.h:
	  moved file from H/
	* InOut/widgets.cpp:
	  bug fixes in FLsetVal and FLsetVal_i
	  allow buttons and button banks in FLsetVal
	  fixed handle output of FLbutBank (not sure if this is safe)
	  implemented cursor size parameter for FLknob

2006-02-13  Istvan Varga	<ivarga@csounds.com>

	* OOps/ugrw1.c: fixed bugs in i-rate ZAK opcodes

2006-02-09  Istvan Varga	<ivarga@csounds.com>

	* Engine/rdorch.c:
	  splitline(): made checking for invalid characters stricter
	  fixed labels before else/endif
	  allow bitwise NOT operator in UTF-8 format

2006-02-06  Istvan Varga	<ivarga@csounds.com>

	* Engine/entry1.c:
	  cogoto requires an i-rate conditional
	* Engine/musmon.c:
	  fixed hang on very short note before end of score or section
	* Engine/rdorch.c:
	  added hacks to fix the problem of the else branch of an if/then/else
	  always being executed at i-time.
	  Fixed crash on 'then' or 'goto' in variable names in conditional
	  expression for if/elseif (still does not work if there are no
	  parentheses around the conditional expression).

2006-02-03  Istvan Varga	<ivarga@csounds.com>

	* Engine/rdorch.c:
	  fixed crash on extra ) in expressions
	* Engine/rdorch.c:
	  fixed crash on missing whitespace between if/elseif and (
	  this needs more testing

2006-01-25  Istvan Varga	<ivarga@csounds.com>

		Anthony Kozar	<anthonykozar@sbcglobal.net>

	* Opcodes/mixer.cpp: "OpcodeBase.hpp", not <OpcodeBase.hpp>

	* Opcodes/py/pythonopcodes.c: Added support for MacOS 9 Python quirks.
	* H/sysdep.h: MacOS 9 changes so that Python stuff will compile.

2006-01-11  Istvan Varga	<ivarga@csounds.com>

	* fixed temporary file bug on Windows (do not try to remove extension)
	* new opcodes:
	    chnmix    asig, Schn    (mixes to audio output channel)
	    chnclear  Schn          (clears audio output channel at perf time)
	* allow dot in channel names (but not as first character)

2006-01-04  Michael Gogins	<gogins@pipeline.com>

	* Updated Windows installer script to be compatible with
  Istvan Varga's zip file layout; also includes vst4cs, csoundapi~,
	FluidSynth opcodes, CsoundVST, tclcsound, Loris opcodes, STK C++
	opcodes. Also includes manual and API reference. Now uses
	Python 2.4.

2006-01-04  Istvan Varga	<ivarga@csounds.com>

	* changed default output file type to AIFF on MacOS X
	* added support for writing MIDI output to a file
	  (--midioutfile=FNAME); not really useful, so may be removed later
	* various fixes related to creating temporary files

2006-01-03  Istvan Varga	<ivarga@csounds.com>

	* added new optional argument to massign (defaults to 1), which,
	  if zero, skips resetting of MIDI controllers
	* fixed bugs in pan opcode
	* added support for named instruments to turnon opcode

2005-12-28  jpff  <jpff@codemist.co.uk>

	* Engine/fgens.c (gen01raw): Restore looping stuff, which requires
	libsndfile 1.0.13pre3 or later, so protected by BETA still

2005-12-19  John ffitch  <jpff@codemist.co.uk>

	* SConstruct (else): Added -fPIC again for 64bit machines
	(else): Fix path for python for 64bit machines

	* Opcodes/fluidOpcodes/fluidOpcodes.cpp (fluidLoadIopadr): Cast to
	int to avoid error
	(csoundModuleDestroy): Ditto

2005-11-12  Michael Gogins	<gogins@pipeline.com>

	* Removed csoundThrowMessage APIs as redundant with csoundMessage,
	and not used.
	* Removed strdup and boost from all but CsoundVST.
	* Fixes in interfaces and frontends/CsoundVST so that CsoundVST
	works again.

2005-11-03  Istvan Varga	<ivarga@csounds.com>

	* Changed csoundInitialize() to return a positive value if it was
	  already called earlier.

2005-11-01  Istvan Varga	<ivarga@csounds.com>

	* Removed support for Cygwin.
	* Fixes in Python opcodes. Also implemented a temporary hack
	  in Top/csmodule.c to fix importing modules from Python opcodes
	  on Linux.
	* installer/linux/csound.spec.in:
	* installer/linux/makespec.sh:
	* installer/linux/mkpackage.py:
	  preliminary tools for creating Linux packages

2005-10-31  Michael Gogins	<gogins@pipeline.com>

	* Moved external language interfaces from frontends/CsoundVST
	into interfaces directory.
	* Created interfaces for Python, Java, Lua (all "csnd" module).
	Wraps H/csound.h, H/cfgvar.h, H/csound.hpp, interfaces/CsoundFile.hpp,
	interfaces/CppSound.hpp.
	* Moved CLisp interface to interfaces directory. Wraps
	H/csound.h (csound.lisp) and interfaces/filebuilding.h
	(filebuilding.lisp).
	* Modified CsoundVST to work with "csnd" Python module.
	* Removed Java interface from CsoundVST.
	* The Java interface in csnd.jar has a rudimentary GUI front end:
	run with "java -jar csnd.jar".
	* Other interfaces have test scripts in interfaces directory.

2005-10-25  John ff  <jpff@codemist.co.uk>

	* SConstruct: Make building interfaces optional

2005-10-05 Victor Lazzarini <victor.lazzarini@nuim.ie>

	* Added Tcl/TK frontends (cstclsh and cswish)

2005-10-15  Michael Gogins	<gogins@pipeline.com>

	* Fixed SConstruct to build CsoundVST using Csound as a
	  shared library.
	* Added csound.lisp FFI for CLisp (experimental).

2005-10-15  Anthony Kozar	<anthonykozar@sbcglobal.net>

	* Top/csmodule.c:  Implemented csoundOpenLibrary, csoundCloseLibrary,
	  and csoundGetLibrarySymbol for platform (mac_classic).

2005-10-13  John ff  <jpff@codemist.co.uk>

	* InOut/OSCrecv.c: Many changes to allow listening on multiple
	ports.  Uses same patterns though.

2005-10-12  Anthony Kozar	<anthonykozar@sbcglobal.net>

	* Top/cscorfns.c:
	  cscoreGetEvent(): Check for file closed to avoid loop.
	  csoundInitializeCscore(): Set next->op = '\0'.
	* Top/one_file.c:
	  createOrchestra(), createScore(): Make messages debug only.
	* Opcodes/gab/vectorial.c:
	  Fixed small bugs in checking table size.

2005-10-11  Anthony Kozar	<anthonykozar@sbcglobal.net>

	* H/cscore.h, Top/cscorfns.c, Top/cscore_internal.c:
	  Renamed all Cscore functions that are to be exported in the
	  "Cscore API".  Made all of these take a CSOUND* argument if they
	  did not yet.  Added some glue for cscoreListPlay() (not done yet
	  though).
	* H/csound.h, H/prototyp.h, Engine/musmon.c:
	  Added new API function csoundInitializeCscore() to replace internal
	  cscorinit() call.  It sets up the input/output files for Cscore and
	  allows a host to function in "standalone Cscore" mode.
	* Top/cscormai.c:
	  Transformed this main() stub for standalone Cscore processing into
	  a client of the API.  (Still needs more work!)

2005-10-09  John ff  <jpff@codemist.co.uk>

	* Opcodes/psynth.c (psynth2_init, psynth_init): Added cast to
	unsigned to avoid compiler warnings.  Also change && to || as I
	think that is more likely correct.

2005-10-07  Anthony Kozar	<anthonykozar@sbcglobal.net>

	* H/csound.h, H/csoundCore.h, Top/csound.c, Engine/musmon.c:
	  Added new API function csoundSetCscoreCallback() for using an
	  external cscore routine.
	* SDIF/sdif-mem.h:  Changed #include "H/sdif.h" to "sdif.h".

2005-10-02  Istvan Varga	<ivarga@csounds.com>

	* restored Tcl/Tk control opcodes
	* xyin fixes

2005-09-30  Istvan Varga	<ivarga@csounds.com>

	* new API functions for random numbers:
	  csoundRand31(), csoundSeedRandMT(), csoundRandMT()
	* removed all uses of rand(), csoundRandMT() is used instead in
	  the "x-class" random opcodes and GEN21, and csoundRand31()
	  in all other opcodes that previously used rand()
	* attempts to get xyin working

2005-09-25  Istvan Varga	<ivarga@csounds.com>

	* frontends/CsoundVST/CppSound.cpp, frontends/CsoundVST/CppSound.hpp:
	* frontends/CsoundVST/CsoundVST.cpp:
	* flcsound/synthesizer.cpp:
	* H/csoundCore.h, H/csound.h, Top/csound.c:
	  removed the following API functions:
	    csoundSetFLTKThreadLocking()    (FLTK moved out of libcsound)
	    csoundGetFLTKThreadLocking()    (FLTK moved out of libcsound)
	    csoundGetProgress()             (was unimplemented)
	    csoundGetProfile()              (was unimplemented)
	    csoundGetCpuUsage()             (was unimplemented)
	* InOut/FL_graph.cpp, InOut/widgets.cpp, InOut/winFLTK.c:
	* InOut/window.c, Makefile-win32, SConstruct:
	  moved FLTK display code from libcsound to the widgets plugin

2005-09-22  Istvan Varga	<ivarga@csounds.com>

	* frontends/csound/csound_main.c:
	  allow logging to file (-O NAME or --logfile=NAME)
	* frontends/csound/sched.c:
	  --sched can be used in the format --sched=P,C,T now, where
	  the parameters are:
	    P: priority (-20 to -1: nice, 0: normal, 1 to 99: SCHED_RR)
	    C: maximum allowed CPU usage (1 to 99 percents)
	    T: time interval to check CPU usage (1 to 60 seconds)

2005-09-18  Istvan Varga	<ivarga@csounds.com>

	* Engine/namedins.c, H/csound.h:
	  more complete implementation of bus interface (may still need
	  some changes)
	* Engine/entry2.c, H/str_ops.h, OOps/str_ops.c:
	  new opcodes

2005-09-17  Istvan Varga	<ivarga@csounds.com>

	* Engine/namedins.c:
	  started to implement bus with named channels; this is not
	  complete yet
	* Engine/oload.c, Engine/otran.c, Top/csound.c:
	  moved some parts of oload.c to otran.c while others to csound.c
	  removed oload.c
	* H/csound.h, H/csoundCore.h:
	  new API functions, and variables in CSOUND structure
	* Engine/otran.c, Top/csmodule.c, Top/csound.c, Top/utility.c:
	  improved warning message for undefined OPCODEDIR/OPCODEDIR64
	* Top/csound.c, Top/one_file.c:
	  new command line flag (-+ignore_csopts) to disable the use of
	  options specified in a CSD file
	  one_file.c: minor fixes in parsing CSD files

2005-09-01  Michael Gogins	<gogins@pipeline.com>

	* Added CsoundVST.Soundfile wrapper class for Python access
	to libsndfile.

2005-09-01  Istvan Varga	<ivarga@csounds.com>

	* Top/csmodule.c:
	  revised code for loading plugin libraries
	  new function: csoundModuleInfo() can be used in plugin libraries to
	  allow for checking API version and MYFLT type
	* Top/dl_opcodes.c:
	  merged into csmodule.c; removed file
	* Engine/oload.c, H/csoundCore.h, OOps/ugens3.c, OOps/ugens5.c:
	  removed static variables from ugens3.c and ugens5.c
	* Top/csound.c:
	  removed adsyn/lpc RESET routines that are no longer needed
	* Opcodes/hrtferX, Opcodes/natben.c, Top/natben.c, SConstruct:
	  removed unused endianness conversion code
	* SConstruct:
	  fixed bug that broke building libcsound as a shared library

2005-08-30  Istvan Varga	<ivarga@csounds.com>

	* Opcodes/ugnorman.c:
	  renamed opcodes from ats* to ATS* to avoid namespace pollution

2005-08-28  Istvan Varga	<ivarga@csounds.com>

	* Opcodes/ugnorman.c, Opcodes/ugnorman.h: new opcodes

2005-08-22  Istvan Varga	<ivarga@csounds.com>

	* Engine/musmon.c, H/csound.h, InOut/libsnd.c, Top/csound.c:
	  new API function: csoundSetHostImplementedAudioIO()
	  allows the host application to implement sound I/O with
	  direct access to the spin/spout buffers (or, with a non-zero
	  buffer size parameter and using csoundPerformBuffer(), the
	  input/output buffers), ignoring any -i, -o, -b, and -B options
	* H/csound.h, H/csoundCore.h, Top/threads.c:
	  added return value to csoundWaitThreadLock(); non-zero if
	  the function returns on timeout instead of the lock being notified

2005-08-20  Istvan Varga	<ivarga@csounds.com>

	* Engine/oload.c, H/csound.h, H/csoundCore.h, Top/threads.c:
	  new API function: csoundWaitThreadLockNoTimeout()
	  similar to csoundWaitThreadLock(), but with infinite timeout,
	  allowing for a possibly more efficient implementation
	* Top/threads.c:
	  csoundWaitThreadLock(): implemented timeout for Linux
	* H/csoundCore.h, H/envvar.h, SConstruct:
	  removed envvar.h from installation

2005-08-19  Istvan Varga	<ivarga@csounds.com>

	* Engine/namedins.c, Engine/otran.c, Engine/rdorch.c:
	* Opcodes/fout.c, Opcodes/oscbnk.c:
	  removed unneeded/redundant RESET code
	* H/csound.h, H/csoundCore.h, Top/threads.c:
	* InOut/rtpa.c, InOut/widgets.cpp, InOut/OSCrecv.c, Opcodes/OSC.c:
	  attempts to clean up thread interface
	* H/prototyp.h:
	  moved declaration of csoundYield() here from csound.h
	* examples/fl_controller/fl_controller.cpp:
	  fixed a few minor errors

2005-08-18  Istvan Varga	<ivarga@csounds.com>

	* Engine/namedins.c:
	* Top/csound.c:
	* Top/main.c:
	  changes to allow host applications to register opcodes with
	  csoundAppendOpcode(); should be called between csoundPreCompile()
	  and csoundCompile()
	* Engine/oload.c:
	* H/csound.h:
	* H/csoundCore.h:
	  removed csoundLoadExternal() and csoundLoadExternals() from public
	  interface
	* H/opcode.h:
	  removed file
	* Top/opcode.c:
	  implemented csoundNewOpcodeList() and csoundDisposeOpcodeList()
	  currently, the opcodes can only be listed after loading an orchestra
	  with csoundCompile()

2005-08-12  Istvan Varga	<ivarga@csounds.com>

	* renamed struct ENVIRON_ to struct CSOUND_, and ENVIRON to CSOUND
	* replaced uses of void* Csound instance pointers with CSOUND*
	* changes to header files to clean up the API; more need to be done
	* attempts to fix CsoundVST build - still not quite right

2005-08-03  Steven Yi	<stevenyi@gmail.com>

	* Engine/Entry1.c, Engine/fgens.c, H/ftgen.h:
	  New ftfree opcode, takes in table number and free time arg,
	  if zero frees at opcode init time, otherwise at opcode deinit time

2005-08-01  Istvan Varga	<ivarga@csounds.com>

	* Minor fixes in DSSI opcodes (still have problems)
	* Engine/rdorch.c, Engine/entry1.c, Opcodes/uggab.c:
	  minor parser changes, including the addition of a new code (fffb)
	  for selecting opcode name based on the first input argument (i-, k-,
	  and a-rate, but not constant)
	* Engine/insert.c:
	  fixes related to re-initialisation of user defined opcodes
	* Engine/Entry2.c, H/str_ops.h, OOps/str_ops.c:
	  new opcodes: printf, printf_i
	* Engine/Entry2.c, H/insert.h, OOps/goto_ops.c:
	  new opcodes: loop_l, loop_le, loop_g, loop_ge

2005-07-31  John ff  <jpff@codemist.co.uk>

	* SConstruct (opts): Added buildDSSI option

2005-07-23  John ff  <jpff@codemist.co.uk>

	* Opcodes/bowedbar.c (bowedbarset): ADSR not initialised
	correctly.  Still has over hash attack.  Also adjust gain.

2005-07-17  Istvan Varga	<ivarga@csounds.com>

	* Engine/rdorch.c: fixed crash on missing endin
	* Engine/rdorch.c, Engine/sread.c: fixed error message on $ without
	  macro name
	* H/diskin.h, OOps/diskin.c: fixed soundout crash on Win32 with doubles

2005-07-15  Istvan Varga	<ivarga@csounds.com>

	* removed use of cs.h; replaced with csoundCore.h
	* util1/sortex/smain.c, util1/sortex/xmain.c: fixed compiler warnings
	* OOps/diskin2.c: minor fixes in soundin and diskin2
	* Engine/entry1.c: added soundouts; diskin extended to 24 channels
	* H/diskin.h, OOps/diskin.h:
	  replaced diskin with new implementation based on diskin2 (should
	  fix many problems, and allows up to 24 channels instead of the
	  original limit of 4)
	  fixed bug in soundout that resulted in not writing the last buffer
	  to disk
	  implemented soundouts opcode (stereo soundout)
	* Engine/fgens.c: fixed memory error in GEN20
	* Engine/rdorch.c: minor fix in parsing of comments

2005-07-13  Istvan Varga	<ivarga@csounds.com>

	* InOut/midirecv.c: reset controllers 7-11 to 0 in raw controller mode

2005-06-25 Victor  Lazzarini <Victor.Lazzarini@nuim.ie>

	* Added Opcodes/partials.c and Opcodes/psynth.c, streaming
	  spectral partial track  analysis/synthesis opcodes.

2005-06-23  Victor Lazzarini <Victor.Lazzarini@nuim.ie>

	* Improvements/Fixes to rtcoreaudio.c, addition of non-interleaved
	audio support
	* Added Opcodes/ifd.c, Instantaneous Frequency Distribution
	spectral streaming opcode.

2005-06-23  John ffitch  <jpff@codemist.co.uk>

	* Engine/sread.c (sread): Do not attempt to read a name in r if at
	end of line

2005-06-21  John ffitch  <jpff@codemist.co.uk>

	* Opcodes/biquad.c (biquada, biquad, biquadset):
	* OOps/ugens5.c (porset, port, tonset, tone, tonsetx, tonex,
	atone, atonex, rsnset, reson, rsnsetx, resonx, areson): Work in
	doubles internally

2005-06-20  John ffitch  <jpff@codemist.co.uk>

	* InOut/OSCrecv.c (OSC_listdeinit): Fixed a typo

2005-06-15  John ff  <jpff@codemist.co.uk>

	* InOut/OSCrecv.c: New file for OSC listening

2005-06-15  John ffitch  <jpff@codemist.co.uk>

	* SConstruct: Fixed TAGS so it looks at C files as well

2005-06-13  Victor Lazzarini <victor.lazzarini@nuim.ie>

	* Top/dl_opcodes.c: commented out old code that was causing conflict
	                    on OSX 10.4

2005-06-09  Victor Lazzarini <victor.lazzarini@nuim.ie>

	* InOut/rtcoreaudio.c : further improvements to coreaudio RT IO

2005-06-03  Istvan Varga	<istvan@csounds.com>

	* Engine/oload.c:
	* H/csoundCore.h:
	  added (some) PVOC related functions to API
	* OOps/pvfileio.c:
	  extensively revised code (needs testing): use ANSI C functions
	  for file I/O, removed dependencies on sizeof(long)==4 and endianness,
	  removed limit on number of files
	* util/pvanal.c:
	  allow the use of PVOC-EX format again (still no displays though)

2005-06-03  Victor Lazzarini <Victor.Lazzarini@nuim.ie>

	* OOps/pvfileio.c: removed statics and added csound* to functions;
	 changed all relevant function calls elsewhere in the code to
	 match the new prototypes

2005-06-01  Victor Lazzarini <Victor.Lazzarini@nuim.ie>

	* Opcodes/pvsbasic.c pvsbasic.h added opcode pvsinit for fsig
	initialisation

2005-05-31  Istvan Varga	<istvan@csounds.com>

	* Engine/otran.c:
	  allow global f-signals
	  code changes for faster name lookup in global/local pools
	* Engine/rdorch.c:
	  store line numbers in variables of type 'int' rather than 'short'
	  TODO: clean up file reading (correct handling of EOL characters,
		use csoundFileOpen(), do not depend on being able to call
		ungetc() multiple times)
		probaly the same needs to be done in sread.c as well
	* H/oload.h:
	  removed many unused typedefs and macros
	* OOps/fftlib.c:
	  fixed crash on 64 bit platforms
	  minor code changes

2005-05-30  Istvan Varga	<istvan@csounds.com>

	* New API functions:
	    csoundAppendOpcodes():
	      appends a list of opcodes (OENTRY*)
	    csoundRegisterResetCallback():
	      adds a function to be called by csoundReset()
	* Top/dl_opcodes.c:
	  unload plugin opcodes (called from csoundReset())
	* Top/dl_opcodes.c, Top/main.c:
	  use API functions for adding opcodes, rather than changing
	  opcodlst directly

2005-05-30  Michael Gogins <gogins@pipeline.com>

	* CsoundVST now supports multiple instantiation of VST plugins;
	it is not completely stable yet.
	* The Mixer opcodes now support multiple instantiation of Csound.
	* OpcodeBase.hpp now works with the new OENTRY structure.
	The OpcodeBase class now automatically registers a deinit callback,
	which by default does nothing.
	* The C++ STK opcodes now use RegisterDeinitCallback
	and the csoundModule* initialization and deinitialization routines.

2005-05-27  Steven Yi  <stevenyi@gmail.com>

	* Opcodes/fluidOpcodes/fluidOpcodes.cpp: modified fluidNote to use
	RegisterDeinitCallback, removed krate function call

2005-05-27  Istvan Varga	<istvan@csounds.com>

	* Added new API functions:
	    csoundListUtilities():
	      returns alphabetically sorted list of registered utilities
	    csoundSetUtilitiyDescription():
	      sets description text for an utility
	    csoundGetUtilitiyDescription():
	      returns description text of an utility
	    csoundRegisterDeinitCallback():
	      registers a function to be called at note deactivation
	    csoundLoadSoundFIle():
	      loads an entire sound file into memory (similar to ldmemfile())
	* Removed OENTRY.dopadr, and all related code, as it is not really
	  needed now (can use csoundModuleDestroy and RegisterDeinitCallback
	  instead).

2005-05-25  Istvan Varga	<istvan@csounds.com>

	* Engine/insert.c: fixed bug in ihold opcode
	* Engine/rdorch.c: attempts at fixing else and endif bugs
	* Added new macros (MYFLT2LONG and MYFLT2LRND) for converting
	  floating point values to integers.

2005-05-24 Victor Lazzarini <victor.lazzarini@nuim.ie>

	* changes to rtcoreaudio.c to enable channel independence

2005-05-23 Victor Lazzarini <victor.lazzarini@nuim.ie>

	* late entry to the log: added InOut/rtcoreaudio.c
	* late entry to the log: added Opcodes/sndloop.c (sndloop,
	flooper, pvsarp, pvsvoc)
	* late entry to the log: fixed globals in rtpa.c
	* late entry to the log: added full-duplex support to the portaudio module
	 (rtpa.c pa_blocking.c), aimed primarily at coreaudio

2005-05-23  Steven Yi  <stevenyi@gmail.com>

	* Engine/rdorch.c (splitline): Ported over ithen check from Csound4 source,
	added ithen to IFLABEL struct accordingly


2005-05-17  John ffitch  <jpff@codemist.co.uk>

	* Engine/swrite.c (swrite): Charge to expand "s #" and "e #" to
	"f0 #\ns"

2005-05-16  Anthony Kozar  <anthonykozar@sbcglobal.net>

	* Top/argdecode.c:
	* Top/csound.c:
	* Top/main.c:
	* Engine/filopen.c:
	* Engine/insert.c:
	* Engine/linevent.c:
	* Engine/musmon.c:  Converted mills_macintosh to mac_classic or MAC as
	  appropriate or removed code if dependent on Mills globals.

2005-05-15  Anthony Kozar  <anthonykozar@sbcglobal.net>

	* Top/getstring.c: #include "cs.h", not <cs.h>

	* Top/threads.c: Added stubs for csound*ThreadLock functions.
	* Engine/envvar.c: Fixes for MacOS pathnames (more may be needed).

2005-05-15  John ffitch  <jpff@codemist.co.uk>

	* Top/main.c: Prototype for mytmpnam

2005-05-14  John ffitch  <jpff@codemist.co.uk>

	* Top/argdecode.c (decode_long): Allow definition of macros

	* Engine/sread.c (init_smacros):
	* Engine/rdorch.c (init_omacros): New functions to define macros

2005-05-11  John ffitch  <jpff@codemist.co.uk>

	* Opcodes/ugmoss.c (valpass): Added cache of p->maxlpt to avoid
	overwriting arguments

2005-05-08  Michael Gogins <gogins@pipeline.com>

	* Added examples/Orbifold.py, an interactive display of the
	3-dimensional orbifold of all close voice-leadings between
	3-tone chords (based on the work of Professor Dmitri Tymoczko
	of Princeton). Also demonstrates controlling Csound from Python
	for real-time performance, and the use of 3-dimensional graphics
	for constructing graphical user interfaces.

2005-05-07  Istvan Varga	<istvan@csounds.com>

	* Opcodes/biquad.c:
	* Opcodes/biquad.h:
	  added new optional argument to distort1 opcode (defaults to zero),
	  to select amplitude scaling mode (0: default, compatible with
	  original version; 1: relative to 0dBFS, same as mode 0 if 0dbfs is
	  32768; 2: unscaled)
	  code changes to improve performance of some opcodes: biquad, vco,
	  pareq, and distort1
	  improved vco opcode for more accurate output
	* Engine/rdorch.c:
	* OOps/aops.c:
	  '=.a' opcode is automatically replaced with 'upsamp' if input is
	  not a-rate, the actual a-rate version has been simplified, and '=' is
	  removed by the parser if the output argument is the same as the input
	* OOps/ugens6.c:
	  deltapx/deltapxw revised for speed

2005-05-06  Istvan Varga	<istvan@csounds.com>

	* H/msg_attr.h:
	* Top/csound.c:
	  new message attributes: CSOUNDMSG_WARNING, CSOUNDMSG_FG_UNDERLINE
	* Engine/entry2.c:
	* H/ugens6.h:
	* OOps/ugens6.c:
	  added new optional argument to delayr and all deltap opcodes,
	  to allow delay taps to read from any of the nested delayr/delayw
	  pairs, not just the last (from Csound 4.23.4.1)

2005-05-05  Istvan Varga	<istvan@csounds.com>

	* Engine/entry1.c:
	* Engine/express.c:
	  added k() function for converting i-rate values to k-rate

2005-05-01  Istvan Varga	<istvan@csounds.com>

	* H/csound.h:
	* Top/threads.c:
	  new functions: csoundLock(), csoundUnLock()
	* Top/argdecode.c:
	  added ENVIRON* argument to usage() and dieu()
	* Top/csound.c:
	* Top/main.c:
	  - maintain a global list of allocated Csound instances, delete
	  all on exit or fatal signal
	  - new interface function: csoundInitialize(), for global
	  initialisation of Csound library; if not done yet, the first
	  call of csoundCreate() will also call csoundInitialize()
	  - moved signal handler from main.c to csound.c (still not quite
	  right, should really be done by host application)
	  - removed some unused/useless static variables

2005-04-30  Istvan Varga	<istvan@csounds.com>

	* removed global variable O - use csound->oparms instead
	* Top/csound.c:
	  - dynamically allocate and destroy Csound instances, rather than
	  using cenviron. Some old code still uses cenviron (and is thus now
	  broken), and should be revised.
	  - made calls to deprecated functions csoundPrintf() (#defined as
	  printf()) and err_printf() fatal errors.

2005-04-29  Istvan Varga	<istvan@csounds.com>

	* removed all static variables from Engine/sread.c

2005-04-30  Michael Gogins <gogins@pipeline.com>

	* Disabled GUI options for Python mode and for auto-play
	when in VST plugin mode, to prevent side effects.
	* Improved version of CsoundVST.csd orchestra for VST plugin use,
	using the Csound mixer and some effects.
	* Updated CsoundVST for removal of various static variables
	in Csound.

2005-04-24  John ffitch  <jpff@codemist.co.uk>

	* Top/one_file.c (read_unified_file): Added licence top level field

2005-04-23  John ffitch  <jpff@codemist.co.uk>

	* SConstruct (guiProgramEnvironment): Need dl and pthreads even
	without FLTK

2005-04-14  Michael Gogins <gogins@pipeline.com>

	* Added (very) basic Java GUI front end for Csound.
	It is the main class in CsoundVST.jar. To be extended.
	The purpose of this work is to embed Csound5 in Kandid,
	an interactive graphics program for evolving pictures, and
	adapt Kandid for evolving pieces.

2005-04-18  Istvan Varga	<istvan@csounds.com>

	* Top/utility.c, H/cs_util.h:
	  new files for dynamically loading utilities
	* cvanal.c, dnoise.c, hetro.c, lpanal.c, pvanal.c, pvlook.c, sndinfo.c:
	  moved from Top/ to util/
	  utilities converted to plugin libraries (not done yet for hetro,
	  lpanal, and pvlook; also pvanal is limited to old format for now)
	* H/pvoc.h, OOps/pvoc.c:
	  moved functions only used by pvanal to pvanal.c
	* H/prototyp.h:
	  removed prototypes for utilities
	* Engine/oload.c, H/csoundCore.h, Top/argdecode.c:
	  ENVIRON: API functions for adding and running utilities
	  changed command line parser for new utility API

2005-04-16  John ffitch  <jpff@codemist.co.uk>

	* InOut/libsnd.c (sfopenin): Changed in and out channel mismatch
	to a warning.  Trest with care!

2005-04-14  Michael Gogins <gogins@pipeline.com>

	* Changed CsoundVST to print log messages to stderr (used to be
	stdout) by default.
	* Added option to CsoundVST to automatically open the output
	soundfile for editing or listening at end of performance.
	* Upgraded Windows installer to set OPCODEDIR, RAWWAVE_PATH,
	PYTHONPATH, and PATH environment variables
	(uninstall does not work for PYTHONPATH).

2005-04-12  John ffitch  <jpff@codemist.co.uk>

	* Opcodes/wave-terrain.c (wtPerf): Improved phase accumulation problem

2005-04-10  Michael Gogins <gogins@pipeline.com>

	* Updated the STK opcodes to take from 0 to 4 optional
	krate controller-value pairs.

2005-04-10  John ff  <jpff@codemist.co.uk>

	* OOps/ugens2.c (itabl3): Missing return

2005-04-09  Michael Gogins <gogins@pipeline.com>

	* Added "STKName" (e.g. "STKBowed") opcodes for all Perry Cook's
	Synthesis Toolkit in C++ (STK) 4.2.0 instruments in
	his "demo" program, using Cook's original C++ code
	with minimal wrapping (about 25 opcodes, varying in quality
	from mediocre to very good). To build the opcodes,
	copy the STK sources into the csound5/Opcodes/stk
	directory, as instructed in SConstruct. All opcodes
	have the same signature:
	asignal STKName ifrequency iloudness {kcontroller kvalue}
	The RAWWAVE_PATH environment variable must be set to
	point to the directory containing the "rawwaves" samples.

2005-04-09  John ffitch  <jpff@codemist.co.uk>

	* InOut/libsnd.c (sndinset):
	* H/soundio.h:
	* InOut/libsnd_u.c (sndgetset): Fix skipinit for soundin

2005-04-06  Istvan Varga	<istvan@csounds.com>

	* Engine/fgens.c:
	  use csound->Message() instead of printf()
	  added ENVIRON* pointer and variable arg list to fterror()
	  replaced use of deprecated FFT functions with csound->RealFFT()
	  limited line length to 80 characters
	* Engine/oload.c:
	* H/cs.h:
	* H/csoundCore.h:
	  removed deprecated functions from ENVIRON:
	    err_printf, IsPowerOfTwo, FFT2torlpacked, FFT2realpacked, cxmult,
	    csoundPrintf
	* H/fft.h, H/ugens9.h, OOps/disprep.c, OOps/dsputil.c, OOps/fft.c:
	* OOps/pvinterp.c, OOps/pvread.c, OOps/ugens8.c, OOps/ugens9.c:
	* OOps/vpvoc.c, Opcodes/oscbnk.c, SConstruct, Top/cvanal.c:
	* Top/pvanal.c:
	  removed deprecated FFT functions; use fftlib.c interface instead
	* H/prototyp.h:
	  declare err_printf and csoundPrintf here (deprecated functions)
	* InOut/widgets.cpp:
	  use csound->Message() instead of csound->Printf()
	* Top/csound.c:
	  deprecated functions: err_printf, csoundPrintf
	* Top/main.c:
	  do not call fftRESET() (this function was removed)
	  err_printf moved to Top/csound.c

2005-04-05  Istvan Varga	<istvan@csounds.com>

	* Engine/sread.c:
	* H/sort.h:
	  attempts to fix bugs in reading large score files
	* Engine/namedins.c, Engine/oload.c, H/csdl.h, H/cs.h, H/csoundCore.h:
	* H/namedins.h, H/OpcodeBase.hpp, H/prototyp.h, H/sftype.h, H/ugrw1.h:
	* OOps/ugens9.c, OOps/ugrw1.c, Opcodes/babo.h, Opcodes/biquad.h:
	* Opcodes/brass.h, Opcodes/dam.h:
	* Opcodes/fluidOpcodes/fluidOpcodes.cpp, Opcodes/Loris/lorisgens5.h:
	* Opcodes/pitch0.c, Opcodes/py/csoundmodule.c, Opcodes/spat3d.h:
	* Opcodes/vst4cs/src/vst4cs.h, Opcodes/vst4cs/src/vsthost.h:
	* Opcodes/wave-terrain.h:
	  minor header changes
	  removed some macros
	* H/csoundCore.h:
	* OOps/aops.c:
	  fixed crash in cpsoct() and similar functions on out of range arg

2005-04-03	Steven Yi		<stevenyi@gmail.com>

	* SConstruct: added arch and cpu commandline options to fine tune gcc3opt
	  flags for -march and -mcpu

2005-04-03  Istvan Varga	<istvan@csounds.com>

	* removed macro definitions for ksmps, esr, ekr, and some others;
	  use csound->Message() instead of printf() and err_printf();
	  (large number of changes in many files)
	* Engine/namedins.c:
	* Engine/express.c:
	  removed static and global variables

2005-03-31  Istvan Varga	<istvan@csounds.com>

	* Engine/entry1.c:
	* OOps/aops.c:
	  added a-rate int() and frac(), and round(), floor(), and ceil()
	* Engine/express.c:
	* Engine/rdorch.c:
	* Top/main.c:
	* H/prototyp.h:
	  added << and >> operators, fixed order of precedence
	  express(), expRESET(): use ENVIRON *csound pointer
	  use less obvious label names for if...then
	* Engine/oload.c:
	* H/csoundCore.h:
	* Top/csound.c:
	  moved static invalue/outvalue function pointers to ENVIRON
	* Opcodes/ugmoss.c:
	  implemented << and >> shift operators
	  fixed bitwise OR at k- and a-rate

2005-03-31  John ffitch  <jpff@codemist.co.uk>

	* Engine/express.c: Removed statics to environment structure

2005-03-30  Istvan Varga	<istvan@csounds.com>

	* Engine/oload.c:
	* Engine/twarp.c:
	* H/csoundCore.h:
	* InOut/libsnd_u.c:
	* OOps/fftlib.c:
	* OOps/fout.c:
	* OOps/sdif.c:
	* Top/csound.c:
	  minor fixes; removed a few more static variables
	* Engine/express.c:
	* Engine/rdorch.c:
	* Opcodes/ugmoss.c:
	  fixed binary operators
	* OOps/ugrw1.c:
	  fixed printk2 opcode

2005-03-30  John ff  <jpff@codemist.co.uk>

	* Engine/swrite.c: Remove statics from swrite.c

	* Engine/oload.c:
	* Engine/twarp.c: Removed statics from file twarp.c

2005-03-29  Istvan Varga	<istvan@csounds.com>

	* more API changes (affecting a large number of files)
	* Opcodes/newfils.c:
	  fixed statevar bug

2005-03-28  Istvan Varga	<istvan@csounds.com>

	* Engine/auxfd.c, Engine/fgens.c, Engine/insert.c, Engine/oload.c:
	* H/csdl.h, H/csoundCore.h, H/prototyp.h, InOut/pa_blocking.c:
	* InOut/rtpa_new.c, InOut/widgets.cpp, OOps/aops.c, OOps/diskin2.c:
	* OOps/disprep.c, OOps/midiops.c, OOps/pstream.c, OOps/pvadd.c:
	* OOps/pvinterp.c, OOps/pvread.c, OOps/pvsanal.c, OOps/schedule.c:
	* OOps/ugens1.c, OOps/ugens2.c, OOps/ugens3.c, OOps/ugens4.c:
	* OOps/ugens5.c, OOps/ugens6.c, OOps/ugens8.c, OOps/ugens9.c:
	* OOps/ugrw1.c, OOps/vbap_eight.c, OOps/vbap_four.c:
	* OOps/vbap_sixteen.c, OOps/vbap_zak.c, OOps/vdelay.c, OOps/vpvoc.c:
	* Opcodes/babo.c, Opcodes/bbcut.c, Opcodes/biquad.c:
	* Opcodes/bowedbar.c, Opcodes/cross2.c, Opcodes/filter.c:
	* Opcodes/flanger.c, Opcodes/fm4op.c, Opcodes/freeverb.c:
	* Opcodes/ftconv.c, Opcodes/gab/gab.c, Opcodes/gab/vectorial.c:
	* Opcodes/grain4.c, Opcodes/grain.c, Opcodes/locsig.c:
	* Opcodes/mandolin.c, Opcodes/metro.c, Opcodes/midiops2.c:
	* Opcodes/midiops3.c, Opcodes/modal4.c, Opcodes/moog1.c:
	* Opcodes/nlfilt.c, Opcodes/oscbnk.c, Opcodes/physmod.c:
	* Opcodes/physutil.c, Opcodes/pitch.c, Opcodes/pluck.c:
	* Opcodes/pvsbasic.c, Opcodes/pvsdemix.c, Opcodes/repluck.c:
	* Opcodes/reverbsc.c, Opcodes/scansyn.c, Opcodes/scansynx.c:
	* Opcodes/seqtime.c, Opcodes/sfont.c, Opcodes/singwave.c:
	* Opcodes/sndwarp.c, Opcodes/space.c, Opcodes/spat3d.c:
	* Opcodes/spectra.c, Opcodes/syncgrain.c, Opcodes/ugens7.c:
	* Opcodes/ugensa.c, Opcodes/uggab.c, Opcodes/ugmoss.c, Opcodes/ugsc.c:
	* Opcodes/vdelayk.c, Opcodes/wave-terrain.c, Top/csound.c:
	  API changes
	* OOps/diskin2.c:
	  minor optimization in init routine
	* Opcodes/ugens6.c:
	* util2/mixer/extract.c:
	  removed unused files

2005-03-27  Istvan Varga	<istvan@csounds.com>

	* SConstruct:
	* InOut/libsnd.c:
	* InOut/rtpa_new.c:
	  new PortAudio plugin (enabled by useOldPortAudioPlugin=0)
	* Engine/entry2.c:
	* Engine/insert.c:
	* H/insert.h:
	  new opcode: turnoff2 (can turn off other instruments)

2005-03-25  Istvan Varga	<istvan@csounds.com>

	* InOut/midirecv.c:
	* Engine/express.c:
	* Engine/fgens.c:
	  fixed compiler warnings
	* OOps/diskin.c:
	* Engine/entry1.c:
	  use diskin2 functions to emulate diskin
	* Opcodes/hrtferX.c, Top/dnoise.c, Top/cvanal.c, Opcodes/oscbnk.c:
	* Engine/fgens.c, OOps/ugens9.c, H/ugens8.h, H/pvinterp.h:
	* H/vpvoc.h, H/disprep.h, Top/pvanal.c, OOps/ugens8.c:
	* OOps/vpvoc.c, OOps/pvinterp.c, OOps/disprep.c, Engine/oload.c:
	* H/csdl.h, H/fft.h, OOps/fft.c, H/csoundCore.h:
	  removed redundant (and often slow) FFT code
	* Top/dnoise.c:
	  fixed sound file output
	* InOut/libsnd.c:
	  print message correctly when closing output file
	* H/diskin.h:
	* OOps/dnfft.c:
	  removed files

2005-03-23  Istvan Varga	<istvan@csounds.com>

	* OOps/ugens2.c:
	* Opcodes/biquad.c:
	* Opcodes/lowpassr.c:
	* Top/one_file.c:
	  minor fixes

2005-03-22  Istvan Varga	<istvan@csounds.com>

	* H/diskin2.h:
	* OOps/diskin2.c:
	  various minor code changes
	* Top/one_file.c:
	  fixed CsFileB tag
	* util1/csd_util/base64.c:
	* util1/csd_util/cs.c:
	* util1/csd_util/csb64enc.c:
	* util1/csd_util/makecsd.c:
	  new utilities

2005-03-21  Istvan Varga	<istvan@csounds.com>

	* Engine/entry1.c:
	* H/diskin2.h:
	* OOps/diskin2.c:
	  new opcode
	* InOut/libsnd_u.c:
	* OOps/sndinfUG.c:
	  bug fixes in opening sound files
	* OOps/diskin.c:
	  fixed (partly) clicks in multichannel input; still some bugs
	* H/soundio.h:
	  fixed soundin crash (was actually caused by unused SOUNDIN.kfrqratio)

2005-03-21  John ffitch  <jpff@codemist.co.uk>

	* Engine/sread.c (MARGIN): Increase to 600, but needs to be
	rethought

2005-03-18  Istvan Varga	<istvan@csounds.com>

	* Engine/oload.c:
	* H/csoundCore.h:
	* H/fftlib.h:
	* OOps/fftlib.c:
	  minor code changes related to FFT functions
	* Opcodes/ftconv.c:
	  removed use of direct convolution due to patent issues
	* H/csdl.h:
	  removed some unused macros (fewer is better)
	* Engine/fgens.c:
	  minor GEN52 fix

2005-03-15  Michael Gogins <gogins@pipeline.com>

	* The Loris opcodes now work.
	* Removed pyrun.dll and -lswigpy from SConstruct,
	as SWIG 1.3.24 (current stable version) does not use it.
	* The Java wrappers are now built as a jar containing
	the CsoundVST package.
	* Added option to not build Java wrappers; as a result,
	CsoundVST builds on Linux again.
	* Removed documentation from the Windows installer.

2005-03-15  John ffitch  <jpff@cs.bath.ac.uk>

	* H/soundio.h (SOUNDIN):
	* InOut/libsnd.c (sndinset):
	* OOps/diskin.c (newsndinset):
	* H/diskin.h (SOUNDINEW): Added skipinit argument to diskin and soundin

2005-03-14  John ffitch  <jpff@codemist.co.uk>

	* Opcodes/modal4.c (marimbaset): Make zero valid probability for
	multiple strikes

2005-03-14  Istvan Varga	<istvan@csounds.com>

	* SConstruct:
	* Engine/oload.c:
	* H/csound.h:
	* H/csoundCore.h:
	* H/fftlib.h:
	* OOps/fftlib.c:
	  added new FFT code (faster than functions in fft.c)
	  new API functions:
	    csoundComplexFFT(), csoundInverseComplexFFT(),
	    csoundRealFFT(), csoundInverseRealFFT(),
	    csoundRSpectProd()
	  TODO: make allocation of tables safe with reentrant operation and
	        multiple instances (currently uses statics which is ugly)
	* Opcodes/ftconv.c:
	  use new FFT functions; opcode is faster now

2005-03-13  Istvan Varga	<istvan@csounds.com>

	* SConstruct:
	* Opcodes/ftconv.c:
	  new opcode (zero delay multichannel convolve, reads IR from ftable)
	  not fully tested yet
	* Engine/fgens.c:
	  added GEN52: creates interleaved multichannel table from other tables
	* Opcodes/spat3d.c:
	  fixed spat3dt slowdown at end of table
	  made it possible to run spat3dt from the orchestra header (instr 0)

2005-03-13  John ffitch  <jpff@codemist.co.uk>

	* SConstruct (opts): make installation optional

2005-03-13  Istvan Varga	<istvan@csounds.com>

	* Engine/fgens.c:
	* H/ftgen.h:
	  added GEN51
	* Opcodes/reverbsc.c:
	  minor code improvements

2005-03-13  John ffitch  <jpff@codemist.co.uk>

	* Opcodes/ftest.c (gentune): Added Gabriel's gen to the loadable
	gens under the name gentune

2005-03-12  Istvan Varga	<istvan@csounds.com>

	* SConstruct:
	* Opcodes/screverb.c:
	  new opcode (Sean Costello's waveguide reverb)

2005-03-11  Istvan Varga	<istvan@csounds.com>

	* InOut/widgets.cpp:
	* Top/csound.c:
	* Top/pvanal.c:
	  fixed calls of csoundYield() with NULL pointer
	* Engine/entry1.c:
	  fixed rtclock opcode (should be 0xffff, not 0xfffd)

2005-03-10  Istvan Varga	<istvan@csounds.com>

	* Engine/entry2.c:
	  run miditempo opcode both at init and performance time
	* Engine/musmon.c:
	  check for extra MIDI note-offs also when sustaining
	* Opcodes/freeverb.c:
	  attempts to correct high frequency attenuation for sample rate
	* Top/argdecode.c:
	  load external modules before printing opcode list

2005-03-09  Istvan Varga	<istvan@csounds.com>

	* Engine/insert.c:
	* OOps/schedule.c:
	  fixes in schedule opcodes
	* SConstruct:
	  removed checks for some unused headers
	* H/sysdep.h:
	  set DIRSEP to '\\' on Windows
	* Engine/envvar.c:
	  try_file_open(): do not test for directory on Windows (breaks WINE)
	* H/csdl.h:
	  removed macro definiton for AppendOpcode
	* InOut/libsnd.c:
	* OOps/diskin.c:
	  fixed soundin and diskin amplitude
	* Opcodes/freeverb.c:
	  new opcode

2005-03-08  Istvan Varga	<istvan@csounds.com>

	* Engine/insert.c:
	  MIDIinsert(): allow muting instrument by 'q' score opcode
	* Engine/linevent.c:
	  fixes in RTclose(); do not use atexit() to call this function
	  allow use of 'q' score opcode
	* Engine/musmon.c:
	  cleanup(): call RTclose() to close line input (-L)
	* InOut/libsnd.c:
	  do not close line input here; this is done by RTclose()
	* Top/argdecode.c:
	  allow use of -L stdin on Windows (mills_macintosh still disabled)
	* Top/csound.c:
	  csoundScoreEvent(): add p2 to current time, not section start time

2005-03-08  Istvan Varga	<istvan@csounds.com>

	* Engine/entry2.c:
	  added "event_i" opcode (same as "event" but runs at i-time)
	* Engine/fgens.c, Engine/memalloc.c, Engine/memfiles.c:
	* Engine/musmon.c, H/prototyp.h:
	* OOps/pstream.c, OOps/pvadd.c, OOps/pvread.c:
	* OOps/ugens3.c, OOps/ugens5.c, OOps/ugens8.c, OOps/ugens9.c:
	* OOps/vpvoc.c, Opcodes/hrtferX.c, Opcodes/scansynx.c:
	  major changes to memfile functions
	  added ENVIRON* argument to allow for multiple instances
	  prototypes in prototyp.h rather than all around in various .c files
	* Engine/linevent.c:
	  rewritten event opcode to use insert_score_event()
	  added eventOpcodeI() (i-time version of eventOpcode())
	* Engine/musmon.c:
	  removed unused #includes and declarations
	  improvements and fixes in sensevents() and insert_score_event()
	* Engine/oload.c:
	* H/csoundCore.h:
	  ENVIRON:
	    cosmetic change: moved mrealloc pointer to after mcalloc
	    ldmemfile prototype changed, and also renamed to ldmemfile_
	    added MEMFIL* pointers memfiles and rwd_memfiles
	  changed SSTRCOD to less trivial value
	* examples/trapped.csd:
	* examples/trappedrt.csd:
	  fixed bug in instr 13 that caused various stability problems
	* H/csdl.h, Opcodes/clfilt.c, Opcodes/follow.c:
	* Opcodes/hrtferX.c, Opcodes/modal4.c, Opcodes/sndwarp.c:
	  removed "oparm" macro (there are still way too many macros)
	* H/csoundCore.h:
	* H/csound.h:
	* Top/csound.c:
	  return type of csoundScoreEvent() changed to int (zero on success)
	* H/foo.h:
	  removed file: was unused
	* H/linevent.h:
	  new file: defines LINEVENT (why was it in schedule.h ?)
	* H/schedule.h:
	* OOps/schedule.c:
	  removed sensOrcEvent(); this is now a simple macro in musmon.c
	* InOut/libsnd.c:
	  print message correctly
	* Opcodes/py/csoundmodule.c:
	  use insert_score_event(), but file is unused anyway (remove ?)
	* Opcodes/ugens9.c:
	  removed file: was unused (and redundant as well, also found in OOps)
	* util2/exports/het_export.c:
	  call csoundCreate() and csoundPreCompile() - needed to fix crash
	  added &cenviron to ldmemfile() call

2005-03-07  Michael Gogins <gogins@pipeline.com>

	* Added CsoundVST, Loris, and the Csound API headers and libraries
	to the install target in SConstruct.
	* Added the Csound manual and the API documentation to the Windows
	installer.
	* Updated Loris with v1.2 sources from Loris CVS.
	Note: lorismorph doesn't work and is awaiting fixes from Kelly Fitz.
	Other loris opcodes may be broken as well. However, the Loris Python
	extension module built here does seem to work.

2005-03-07  Istvan Varga	<istvan@csounds.com>

	* Engine/entry2.c:
	  removed event_set; no longer needed
	* Engine/insert.c:
	  made deact and schedofftim static
	  xturnoff: always remove instance from schedofftim chain
	  minor fixes
	* Engine/linevent.c:
	  removed event_set; no longer needed
	  eventOpcode: rewritten to use new insert_score_event() function
	  newevent: removed this function
	* Engine/musmon.c:
	  new function: insert_score_event
	  made it sure that -B is always greater than and is an integer
	  multiple of -b if real time audio is used
	  various fixes, removed unused prototypes, etc.
	* Engine/oload.c:
	* H/csoundCore.h:
	  replaced EVTNODE OrcTrigEvts_ with EVTNODE *OrcTrigEvts in ENVIRON
	  set initial value of dbfs_to_float to 1/DFLT_DBFS
	* frontends/CsoundVST/CppSound.cpp:
	  removed unused declarations
	* H/csdl.h:
	* H/cs.h:
	  removed macro definitons for OrcTrigEvts
	* H/csoundCore.h:
	* Opcodes/oscbnk.c:
	  removed EVTBLK.offtim (was not used anywhere)
	  changed EVTNODE for use with insert_score_event and related code
	* H/oload.h:
	  removed TRNON
	* H/prototyp.h:
	  removed prototypes for undefined functions newevent and
	  csoundDefaultMidiOpen
	  added int insert_score_event(ENVIRON*, EVTBLK*, double, int);
	* H/schedule.h:
	* OOps/schedule.c:
	  added ENVIRON* argument to sensOrcEvent()
	* InOut/midirecv.c:
	* OOps/schedule.c:
	  removed unused function prototypes
	* InOut/widgets.cpp:
	  rewritten ButtonSched to use insert_score_event
	  cleanup() prototype was wrong
	* OOps/schedule.c:
	* Top/csound.c:
	  changes for using insert_score_event() to schedule events

2005-03-06  Istvan Varga	<istvan@csounds.com>

	* Engine/insert.c:
	* Engine/musmon.c:
	* InOut/midirecv.c:
	  started to rework event processing code (sensevents() and other
	  functions); still a long way to go, and bugs may heve been
	  introduced
	* Engine/oload.c:
	  cenviron_: removed sensType, added evt_poll_cnt and evt_poll_maxcnt
	* csound/csound_main.c:
	  do not call csoundYield() in main loop, kperf() will call it
	  frequently enough; improves performance
	* H/cs.h:
	* H/csdl.h:
	  removed macro definitions for sensType
	* H/csoundCore.h:
	  changes in INSDS, sensEvents_t, and ENVIRON for new event
	  processing code
	  removed MCHNBLK.ksusptr[] and ENVIRON.sensType_
	* H/prototyp.h:
	  added prototypes for xturnoff() and xturnoff_now()
	* InOut/midifile.c:
	  changed miditempo opcode to print score tempo when MIDI file
	  is not available
	* OOps/schedule.c:
	  minor cosmetic changes (removed old commented out code etc.)
	* Top/csound.c:
	* Top/main.c:
	  removed frsturnon
	* Top/opcode.c:
	  minor fix: print opcodes like oscil.kk correctly

2005-03-03  Istvan Varga	<istvan@csounds.com>

	* Engine/envvar.c:
	* H/envvar.h:
	  added SNAPDIR to environment variable list (used by widget opcodes)
	  new API functions: csoundFindInputFile() and csoundFindOutputFile()
	* Engine/filopen.c:
	  sssfinit(), openin(), openout(), fopenin(): rewritten to use new
	  file search interface
	  isfullpath(), catpath(): removed functions
	* Engine/memfiles.c:
	* Engine/rdorch.c:
	* InOut/widgets.cpp:
	* InOut/winEPS.c:
	* OOps/diskin.c:
	* OOps/pvfileio.c:
	* OOps/sndinfUG.c:
	* Opcodes/sfont.c:
	  use new file search functions defined in Engine/envvar.c
	* Engine/oload.c:
	* H/csdl.h:
	* H/cs.h:
	* H/csoundCore.h:
	* H/prototyp.h:
	* Opcodes/fluidOpcodes/fluidOpcodes.cpp:
	  new API functions: csoundFindInputFile() and csoundFindOutputFile()
	  removed isfullpath(), catpath(), sadirpath, sfdirpath, and ssdirpath
	* OOps/pvfileio.c:
	  use mmalloc() instead of malloc()
	* Top/argdecode.c:
	* Top/main.c:
	* Top/one_file.c:
	  removed unused 'envoutyp' argument from argdecode() and decode_long()
	* Top/main.c:
	  check SFOUTYP after reading all options, but only if no file type
	  option was specified

2005-03-02  Michael Gogins <gogins@pipeline.com>

	* Added rule for SConstruct to build Java wrappers for CsoundVST
	if jni.h is present.

2005-03-02  Istvan Varga	<istvan@csounds.com>

	* anal/adsyn/het_main.c:
	* anal/convol/cvl_main.c:
	* anal/lpc/lpc_main.c:
	* anal/pvoc/pvc_main.c:
	* util1/cscore/cscore_main.c:
	* util1/sortex/smain.c:
	* util1/sortex/xmain.c:
	* util2/dnoise.dir/dnoise_main.c:
	* util2/dnoise.dir/srconv.c:
	* util2/envext/envext.c:
	* util2/exports/lpc_import.c:
	* util2/exports/pv_export.c:
	* util2/mixer/mixer.c:
	* util2/mixer/xtrct.c:
	* util2/pvlook.dir/pvl_main.c:
	* util2/scale.dir/scale.c:
	  removed ustub library, attempts to fix standalone utilities
	* Engine/envvar.c:
	* H/envvar.h:
	  new files for dealing with environment variables
	* Engine/filopen.c:
	* Engine/rdorch.c:
	* InOut/winEPS.c:
	* InOut/winFLTK.c:
	* InOut/winX11.c:
	* Opcodes/fluidOpcodes/fluidOpcodes.cpp:
	* Top/csmodule.c:
	* Top/csound.c:
	* Top/dl_opcodes.c:
	* Top/dnoise.c:
	* Top/main.c:
	* Top/one_file.c:
	  use new environment variable functions
	* Engine/musmon.c:
	* frontends/csound/csound_main.c:
	  print benchmark information in cleanup() instead of main()
	* Engine/oload.c:
	* H/csoundCore.h:
	  ENVIRON: removed (*SetEnv)(), added envVarDB
	  added csound instance pointer to (*GetEnv)()
	* H/csdl.h:
	  define macro for GetEnv, but not for SetEnv
	* H/csound.h:
	* Top/csound.c:
	  removed csoundGetEnv() and csoundSetEnv() (now in envvar.c)
	* H/ustub.h:
	* Top/ustub.c:
	* util2/mixer/extract.c:
	  removed files
	* SConstruct:
	  allow building dynamic Csound library (static is still the default)
	  ustub library is no longer built
	* Top/argdecode.c:
	  new command line option: --env (sets/appends to environment variable)
	  removed empty function argdecodeRESET()
	* H/soundio.h:
	  added prototypes for type2sf() and sf2type()
	* OOps/sndinfUG.c:
	  fixes in filelen, filenchnls, and filesr (filepeak is still broken)
	* Top/csound.c:
	  removed use of CSRTAUDIO environment variable
	* sndinfo/sndinfo_main.c:
	  fixed crash

2005-03-01  Michael Gogins <gogins@pipeline.com>

	* Updated CsoundVST code to use Istvan Varga's MIDI driver system,
	so that CsoundVST works again as a VST plugin, at least in
	"Csound classic" mode.

2005-03-01  Istvan Varga	<istvan@csounds.com>

	* Opcodes/gab/gab.c:
	  fixes in Maldonado opcodes
	* Top/dl_opcodes.c:
	  fixed -v crash
	* Engine/memalloc.c:
	  print function names correctly
	* Engine/entry2.c:
	  allow opcode names like FLpanel_end, FLgroup_end, etc.
	* InOut/midirecv.c:
	  restored original algorithm for assignment of default instr numbers
	* InOut/libsnd_u.c:
	* OOps/pvxanal.c:
	* OOps/ugens8.c:
	* Top/pvanal.c:
	  bug fixes in sound I/O, pvanal, and pvoc

2005-02-28  Istvan Varga	<istvan@csounds.com>

	* cleanup.sh:
	  new script to remove files generated during compilation
	* OOps/fout.c:
	* Opcodes/fluidOpcodes/fluidOpcodes.cpp:
	* Opcodes/OSC-Kit/OSC-priority-queue.c:
	* Opcodes/OSC-Kit/OSC-timetag.c:
	* util2/mixer/xtrct.c:
	  fixed compiler warnings
	* American.xmg:
	* English.xmg:
	* csound.pdf:
	* csound.xmg:
	  removed files from repository

2005-02-27	Steven Yi <stevenyi@csounds.com>

	* frontends/CsoundVST/CppSound.hpp: changed #include of cs.h to
	csoundCore.h

2005-02-27  Michael Gogins <gogins@pipeline.com>

	* Changed fluid* opcodes: removed Gogins version, merged
	option to print presets to fluidLoad and added fluidControl opcode
	from Gogins version, added new fluidAllOut opcode to collect
	all audio from all Fluidsynth engines in a performance.
	* Removed Opcodes/fluid directory (Opcodes/fluidOpcodes now
	implements all features formerly found there).
	* Updated H/OpcodeBase.hpp to work properly with new SUBR signature.
	* Updated examples/Koch.py to use fluidOpcodes.

2005-02-27  Istvan Varga	<istvan@csounds.com>

	* Engine/entry2.c:
	* H/midiops.h:
	* OOps/midiops.c:
	  added optional i-time parameter (defaults to 0) to pgmassign,
	  selects MIDI channel (zero means all channels)
	* Engine/musmon.c:
	  fixed terminating on end of MIDI file (-T flag)
	* H/csoundCore.h:
	  moved pgm2ins[] from MGLOBAL to MCHNBLK to allow setting per channel
	  other changes in MCHNBLK and MGLOBAL
	* H/midiops.h:
	* InOut/midirecv.c:
	  do not use MIDI controllers (<128) for storing Csound internal data
	  Roland NRPNS (VIB_RATE etc.) moved to controllers 128-135
	  removed MOD_VOLUME
	  removed BENDSENS (replaced with MYFLT MCHNBLK.pbensens)
	  removed DATENABL (replaced with int MCHNBLK.datenabl)
	* InOut/midifile.c:
	  reduced memory usage of event list
	  do not print any text meta events when message level is zero
	  allow muting tracks with -+mute_tracks option (for example,
	  -+mute_tracks=0010001 will mute the third and seventh tracks;
	  tempo events are still used even if a track is muted)
	* InOut/midirecv.c:
	  allow setting program change to instrument routing per channel
	  implemented "raw" controller mode (-+raw_controller_mode=yes),
	  which means all control changes are simply stored without handling
	  e.g. RPNs or sustain pedal changes in a special way
	  do not "pollute" controller space with Csound internal data
	  cleaned up code
	* OOps/midiops.c:
	  cpsmidib and similar opcodes now use bend range RPN information
	  cleaned up code
	* Top/csound.c:
	  do not initialise pgm2ins[] here (now done by m_chn_init_all())
	  new command line option: -+mute_tracks=STRING
	  new command line option: -+raw_controller_mode=BOOLEAN

2005-02-26  Istvan Varga	<istvan@csounds.com>

	* InOut/libsnd_u.c:
	  fixed bug in sndgetset(): sfinfo structure was uninitialised
	* InOut/midirecv.c:
	  fixed bug in reading MIDI device and file at the same time

2005-02-25  Istvan Varga	<istvan@csounds.com>

	* Engine/entry2.c:
	  added miditempo opcode (returns current tempo of MIDI file
	  at control rate)
	* Engine/insert.c:
	  allow muting MIDI channels (massign to 0) in MIDIinsert()
	* Engine/musmon.c:
	  initialise all MIDI channels before oload()
	  merged MIDI device and file input code (removed sensFMidi)
	  made use of MCHNBLK.insno and MCHNBLK.pgmno more consistent
	* H/csoundCore.h:
	* Top/csound.c:
	  increased MIDI input buffer size
	  changes in MGLOBAL for new MIDI file code
	* H/midifile.h:
	* InOut/midifile.c:
	  new implementation for reading MIDI files (supports multiple tracks)
	  miditempo opcode
	* InOut/midirecv.c:
	  changes for using new MIDI file input
	  removed sensFMidi (both device and file input is done by sensMidi)
	  removed FMidiOpen, vlendatum, Fnxtdeltim, fsexdata, and Rnxtdeltim
	  made use of MCHNBLK.insno and MCHNBLK.pgmno more consistent
	  m_chinsno: allow massign to <= 0 (mutes channel)
	  m_chn_init_all: new function
	  m_getchnl: no longer need to check if channel exists
	* InOut/midisend.c:
	* InOut/pmidi.c:
	  allow sending simple system messages (clock etc.)
	* OOps/midiops.c:
	  allow massign to <= 0 (mutes channel)
	* SConstruct:
	  compile InOut/midifile.c

2005-02-24  Istvan Varga	<istvan@csounds.com>

	* Engine/oload.c:
	* H/csdl.h:
	* H/cs.h:
	* H/csoundCore.h:
	  removed unused or redundant variables (dbfs_to_short,
	  short_to_dbfs, float_to_dbfs, dbfs_to_long, long_to_dbfs)
	* H/soundio.h:
	  removed some unused macros and typedefs
	  moved #defines of sf_read_MYFLT and sf_write_MYFLT here
	  set buffer size defaults more usable for real time audio
	* InOut/libsnd.c:
	  moved #defines of sf_read_MYFLT and sf_write_MYFLT to soundio.h
	  replaced uses of redundant variable float_to_dbfs with e0dbfs
	* InOut/libsnd_u.c:
	* OOps/diskin.c:
	  moved #defines of sf_read_MYFLT and sf_write_MYFLT to soundio.h
	  bug fixes (hopefully) in opening and reading sound files
	  removed unused or redundant variables (dbfs_to_short etc.)
	  soundout opcode fixes (clip non-float formats, do not scale)
	  minor cosmetic changes (line length etc.)
	* OOps/fout.c:
	  moved #defines of sf_read_MYFLT and sf_write_MYFLT to soundio.h
	* OOps/ugens2.c:
	* OOps/ugrw1.c:
	  minor tweaks in tabli()
	  made use of FLOOR() macro with negative integer argument safer
	* Top/cvanal.c:
	  always scale input (actually to revert dbfs scaling done in
	  getsndin(); FFT always expects data in the range 0 to 1)
	  minor cosmetic changes (line length etc.)

2005-02-24  John ffitch  <jpff@codemist.co.uk>

	* OOps/ugens2.c: Added FLOOR macro to speed up floor throughout
	and other speedups

	* OOps/ugrw1.c: Added FLOOR macro to speed up floor
	Changed a couple of longs to ints as there is no need for values
	beyond 2

2005-02-23  John ffitch  <jpff@codemist.co.uk>

	* OOps/ugens2.c (tabli): Unwrap the two case so tests outside loop

2005-02-23  Istvan Varga	<istvan@csounds.com>

	* InOut/midisend.c:
	* OOps/midiout.c:
	  Fixed 2 byte messages (program change and channel pressure).

2005-02-22  Istvan Varga	<istvan@csounds.com>

	* Engine/musmon.c:
	* Engine/oload.c:
	* H/csdl.h:
	* H/cs.h:
	* H/csoundCore.h:
	* H/csound.h:
	* H/midiops2.h:
	* H/midiops.h:
	* H/prototyp.h:
	* InOut/midirecv.c:
	* InOut/midisend.c:
	* InOut/pmidi.c:
	* OOps/midiops.c:
	* OOps/midiout.c:
	* Opcodes/midiops2.c:
	* SConstruct:
	* Top/argdecode.c:
	* Top/csound.c:
	* Top/main.c:
	  MIDI changes: added support for real time MIDI modules (there is
	  only one currently, pmidi.c); implemented both MIDI in and out
	  using PortMIDI in pmidi.c; removed many static variables from
	  MIDI code
	* InOut/libsnd.c: clip integer format sound files, fixed sfcloseout()
	* InOut/widgets.cpp: fixed ButtonSched() crash
	* OOps/diskin.c: fixed soundout opcode
	* SConstruct: made useJack=1 and useALSA=1 the default again
	* H/sysdep.h: added integer types

2005-02-22  John ff  <jpff@codemist.co.uk>

	* SConstruct: Added Word64 as an option.  This could be done
	automatically but one needs to select 64 or 32 bit on a 64 bit
	machine.

2005-02-20  Istvan Varga	<istvan@csounds.com>

	* Top/argdecode.c:
	* Top/main.c:
	  allow orc/sco names in CSD (may be broken), but not in .csoundrc
	* InOut/mididevice.c:
	* InOut/midirecv.c:
	  moved files here from OOps
	* InOut/fmidi.c:
	  removed file, all platform independent MIDI code is in midirecv.c now
	* InOut/mididevice.c:
	* InOut/midirecv.c:
	* InOut/pmidi.c:
	  started to clean up MIDI code; still a long way to go
	  file input and PortMIDI work, but mididevice.c is currently a stub
	* Engine/oload.c:
	  reset rtaudio function pointers in oloadRESET()
	* H/csoundCore.h:
	  removed PortMIDI specific function prototypes
	* H/midiops.h:
	  define MBUFSIZ here
	* OOps/midiops.c:
	  added function prototypes (should be in midiops.h too ?)
	* Top/csound.c:
	  removed PortMIDI specific function definitions

2005-02-20  Michael Gogins <gogins@pipeline.com>

	* Added '--help' to short usage list.
	* Permit .orc and .sco filenames in .csd files.
	* Added Sequence node in CsoundVST:
	child nodes of a Sequence node follow each other
	in strict temporal order, in the same order that
	the child nodes were added to the Sequence;
	the duration of each node is the total duration
	of all notes that it produces.

2005-02-19  Istvan Varga	<istvan@csounds.com>

	* Engine/musmon.c:
	  fixed orcompact bug (takes a Csound instance pointer)
	* Engine/oload.c:
	* H/csoundCore.h:
	* H/csdl.h:
	* H/cs.h:
	  removed variables from ENVIRON (midi_out and oplibs)
	* frontends/csound/csound_main.c:
	  check for the case when csoundCompile() aborts but there is
	  no error (--help or -U utilname)
	* H/csdl.h:
	  define Str() for plugin libraries
	* H/csoundCore.h:
	  define return value for longjmp() to report success:
	    CSOUND_EXITJMP_SUCCESS
	  OPARMS.Midioutname on all platforms, not only BeOS
	* OOps/midisend.c:
	  Linux midiout writes to device file in non-blocking mode instead
	  of using OSS /dev/sequencer
	* Top/argdecode.c:
	  replaced redundant definitions of short option list with a single one
	  exit (longjmp) with success after --help, -z, and utility call (-U)
	  various changes to make argdecode safe to call multiple times
	  accumulate rather than overwrite --opcode-lib list
	  minor fixes, removed static variable, etc.
	* Top/csmodule.c:
	  search OPCODEDIR64 first if MYFLT=double
	* Top/csound.c:
	  on systems other than WIN32 and mills_macintosh, print messages
	  to stderr instead of stdout so that -o stdout does not get corrupted
	* Top/cvanal.c:
	  removed exit() call
	  return value is zero on success, -1 on error (other utilities may
	  need similar changes)
	* Top/dl_opcodes.c:
	  search OPCODEDIR64 first if MYFLT=double
	  load redundant (specified multiple times) opcode libraries only once
	  fixes in opcode library loading
	* Top/main.c:
	  return value from setjmp() on failure (forced to negative sign)
	  replaced some uses of '&cenviron' with 'csound'
	  removed useless format option warning/errors
	  run a second pass of argdecode after reading a CSD so that options
	  will be overridden correctly
	  moved some code from argdecode here to make multiple calls to
	  argdecode safe
	  call MidiClose() earlier
	* Engine/oload.c:
	  fixed memory leak (overwrite of ENVIRON.memalloc_db by oloadRESET())

2005-02-18  Istvan Varga	<istvan@csounds.com>

	* Engine/auxfd.c, Engine/express.c, Engine/fgens.c, Engine/insert.c:
	* Engine/linevent.c, Engine/memalloc.c, Engine/memfiles.c:
	* Engine/musmon.c, Engine/namedins.c, Engine/oload.c, Engine/otran.c:
	* Engine/rdorch.c, Engine/rdscor.c, Engine/sread.c, Engine/twarp.c:
	* H/csoundCore.h, H/prototyp.h:
	* InOut/fmidi.c, InOut/libsnd.c, InOut/libsnd_u.c, InOut/pa_blocking.c:
	* InOut/pmidi.c, InOut/widgets.cpp, InOut/winX11.c, InOut/winascii.c:
	* OOps/aops.c, OOps/disprep.c, OOps/fft.c, OOps/fout.c:
	* OOps/lptrkfns.c, OOps/midiops.c, OOps/midirecv.c, OOps/mxfft.c:
	* OOps/pstream.c, OOps/pvadd.c, OOps/pvinterp.c, OOps/pvoc.c:
	* OOps/pvread.c, OOps/pvsanal.c, OOps/schedule.c, OOps/sndinfUG.c:
	* OOps/ugens1.c, OOps/ugens3.c, OOps/ugens4.c, OOps/ugens5.c:
	* OOps/ugens6.c, OOps/ugens8.c, OOps/ugens9.c, OOps/ugrw1.c:
	* OOps/vbap_eight.c, OOps/vbap_four.c, OOps/vbap_sixteen.c:
	* OOps/vbap_zak.c, OOps/vdelay.c, OOps/vpvoc.c:
	* Opcodes/babo.c, Opcodes/bbcut.c, Opcodes/biquad.c:
	* Opcodes/bowedbar.c, Opcodes/cross2.c, Opcodes/filter.c:
	* Opcodes/flanger.c, Opcodes/grain.c, Opcodes/locsig.c:
	* Opcodes/nlfilt.c, Opcodes/oscbnk.c, Opcodes/physmod.c:
	* Opcodes/physutil.c, Opcodes/pitch.c, Opcodes/pluck.c:
	* Opcodes/pvsbasic.c, Opcodes/pvsdemix.c, Opcodes/repluck.c:
	* Opcodes/scansyn.c, Opcodes/scansynx.c, Opcodes/sndwarp.c:
	* Opcodes/space.c, Opcodes/spat3d.c, Opcodes/spectra.c:
	* Opcodes/syncgrain.c, Opcodes/ugens6.c, Opcodes/ugens7.c:
	* Opcodes/ugens9.c, Opcodes/ugensa.c, Opcodes/uggab.c:
	* Opcodes/ugmoss.c, Opcodes/ugsc.c, Opcodes/vdelayk.c:
	* Opcodes/wave-terrain.c, Opcodes/gab/gab.c, Opcodes/gab/vectorial.c:
	* Opcodes/py/csoundmodule.c:
	* Top/argdecode.c, Top/cscorfns.c, Top/csound.c, Top/cvanal.c:
	* Top/dl_opcodes.c, Top/dnoise.c, Top/hetro.c, Top/lpanal.c:
	* Top/main.c, Top/one_file.c, Top/opcode.c, Top/threads.c:
	* util2/dnoise.dir/srconv.c, util2/envext/envext.c:
	* util2/exports/pv_export.c, util2/mixer/extract.c:
	* util2/mixer/mixer.c, util2/mixer/xtrct.c, util2/scale.dir/scale.c:
	  added Csound instance pointer to mmalloc(), mcalloc(), mrealloc(),
	  mfree(), memRESET(), auxalloc(), and auxchfree()
	  nbytes argument of mmalloc(), mcalloc(), and mrealloc() was changed
	  from long to size_t
	* Top/main.c:
	  read .csoundrc both from HOME directory and from current directory

2005-02-17  Istvan Varga	<istvan@csounds.com>

	* Top/csound.c:
	  the CSRTAUDIO environment variable can be used to set default
	  for -+rtaudio
	* Engine/cfgvar.h:
	* Engine/cfgvar.c:
	  added documentation for interface functions
	* Top/main.c:
	  fixed opening .csoundrc
	* H/csoundCore.h:
	* Top/argdecode.c:
	  removed unused O.Volume and -V option
	* Top/argdecode.c:
	* Top/main.c:
	* Top/one_file.c:
	  fixes in parsing string options such as file names

2005-02-16  Istvan Varga	<istvan@csounds.com>

	* InOut/libsnd.c:
	  print correct audio block sizes
	  audrecv/rtrecord returns the number of bytes read
	* InOut/rtjack.c:
	  do not connect to JACK server if real time audio is not used
	* InOut/rtpa.c:
	  audrecv/rtrecord returns the number of bytes read
	* Opcodes/deps:
	  removed unused file
	* Opcodes/oscbnk.c:
	* Opcodes/oscbnk.h:
	  added new opcodes from 4.24.1 (denorm, delayk, vdel_k, and rbjeq)
	  a-rate rnd31 was made faster
	  improved seeding from time
	  removed all static variables (hopefully did not break anything...)
	* Top/argdecode.c:
	  fixed output to raw sound files (set O.filetyp = TYP_RAW)
	* Top/csound.c:
	  print newline at end of various "early return" error messages
	  more error checking in dummy rtaudio functions; allow -+rtaudio=null
	  audrecv/rtrecord returns the number of bytes read
	  fixed return value in csoundAppendOpcode (should be zero on success)

2005-02-13  John ffitch  <jpff@codemist.co.uk>

	* Opcodes/uggab.c (lpshold, loopseg, loopseg_set): Changed to
	agree with csoundAV

2005-02-11  John ffitch  <jpff@codemist.co.uk>

	* Opcodes/pvsdemix.[ch]: New files from Victor Lazzarini

	* SConstruct: Added pvsdemic

2005-02-10  Istvan Varga	<istvan@csounds.com>

	* frontends/csound/csound_main.c
	* Top/argdecode.c:
	  Improved --sched option, now accepts a priority value (--sched=N).
	  Priority settings in the range 1 to 99 request the use of SCHED_RR,
	  zero is SCHED_OTHER (not real-time but still locks memory), and
	  -20 to -1 for setting nice level.
	* Opcodes/gab/vectorial.c:
	  Fixed sequence point warnings.

2005-02-10  Istvan Varga	<istvan@csounds.com>

	* InOut/rtjack:
	  Implemented JACK real time audio plugin (experimental).
	* InOut/libsnd.c:
	  Do not call audrecv() after opening sound input in sfopenin().
	* Engine/musmon.c:
	  Print correct maxamp info in cleanup(), even if performance is
	  terminated (e.g. by ^C) rather than finished normally.
	* SConstruct:
	  Added new options noDebug (do not add -g and -gstabs to CCFLAGS),
	  gcc3opt (add optimisation flags for gcc 3.3.x and later), and
	  useGprof (compile and link with -pg). All are disabled by default.
	  Changes to allow compilng JACK plugin.
	* Top/main.c:
	  Terminate (call longjmp()) if initialisation of modules has
	  failed for some reason.
	* Top/csound.c:
	  playopen_dummy() and recopen_dummy() now fail if --sched is used,
	  to avoid locking up the machine.
	  Expanded tabs to spaces.
	* Engine/oload.c:
	* H/csoundCore.h:
	* InOut/libsnd.c:
	* Top/argdecode.c:
	* Top/csound.c:
	  Use csoundGlobalVariable and csoundConfigurationVariable system
	  for new sound file ID tag options added by Michael Gogins, rather
	  than changing OPARMS, oload.c, argdecode.c, etc.
	  The options are now:
	    -+id_title
	    -+id_copyright
	    -+id_software
	    -+id_artist
	    -+id_comment
	    -+id_date
	  argdecode.c: expanded tabs to spaces

2005-02-09  Michael Gogins <gogins@pipeline.com>

	* Add long options to set ID tags in output soundfile:
	--id-title=TITLE        Title tag in output soundfile (no spaces)
	--id-copyright=COPY     Copyright tag in output soundfile (no spaces)
	--id-software=SOFTWARE  Software tag in output soundfile (no spaces)
	--id-artist=ARTIST      Artist tag in output soundfile (no spaces)
	--id-comment=COMMENT    Comment tag in output soundfile (no spaces)
	--id-date=DATE          Date tag in output soundfile (no spaces)

2005-02-07  Istvan Varga	<istvan@csounds.com>

	* Engine/insert.c:
	  Fixed uses of INSDS.xtratim where it was assumed to be short.
	* Engine/musmon.c:
	  Use ENVIRON.sensEvents_state instead of csoundGlobalVariables,
	  to reduce CPU usage of sensevents().
	* Engine/oload.c:
	* H/csoundCore.h:
	  Added GetRtRecordUserData(), GetRtPlayUserData(),
	  sensEvents_state, rtRecord_userdata, and rtPlay_userdata to
	  ENVIRON. In csoundCore.h: new structure type sensEvents_t.
	* H/csound.h:
	* Top/csound.c:
	  New functions void **csoundGetRtRecordUserData(void *csound)
	  and void **csoundGetRtPlayUserData(void *csound).
	* InOut/rtalsa.c:
	  Use user data pointers instead of csoundGlobalVariables to store
	  device instance data; reduces CPU usage.

2005-02-06  Istvan Varga	<istvan@csounds.com>

	* Engine/sread.c:
	  Fixed memory corruption bugs that were caused by mixed use of
	  mmalloc and realloc.
	* Top/main.c:
	  Fixed bug in setting cenviron.exitjmp_.
	* frontends/csound/csound_main.c:
	  Better checking for real time audio in set_rt_priority().
	* Engine/memalloc.c:
	  Rewritten functions mmalloc, mrealloc, etc.

2005-02-05  Istvan Varga	<istvan@csounds.com>

	* Engine/insert.c:
	  Reworked kperf() so that it always performs one k-period, and
	  does not check for real-time events (that is now done by
	  sensevents()).
	  beatexpire() and timexpire() take double argument instead of
	  MYFLT.
	* Engine/musmon.c:
	  Call orcompact() in cleanup().
	  Set real-time audio buffer sizes to more usable defaults.
	  Replaced sensevents() with new version that always senses
	  events for one k-period, and also handles real-time events;
	  this new implementation of sensevents is also not as prone
	  to drop notes as the original, but may still need some
	  tweaking.
	  playevents now simply calls sensevents() and kperf() in
	  a loop, to eliminate redundant code.
	  Misc. changes related to new kperf/sensevents.
	* H/csound.h:
	* Top/csound.c:
	* Top/main.c:
	  Fixes to re-entrancy bugs reported by Michael Gogins.
	  New API function: int csoundPreCompile(void *csound),
	  is optionally called before csoundCompile
	* H/prototyp.h:
	* InOut/FL_graph.cpp:
	  Changed kperf prototype to 'void kperf(ENVIRON *csound)'.
	  Global variable 'kcnt' has been removed.
	* InOut/rtpa.c:
	  Fixed bug in module selection (incorrect use of strcmp).

2005-02-03  Istvan Varga	<istvan@csounds.com>

	* SConstruct:
	  Fixed (hopefully) the PortMIDI compile error.
	* Engine/musmon.c:
	  Made it sure that cleanup() is done only once, no matter how
	  many times it is called; fixed closing sound I/O (still not
	  sure if it is correct); remove temporary files in cleanup().
	* H/prototyp.h:
	* Top/main.c:
	* Top/one_file.c:
	  add_tmpfile() and remove_tmpfiles() now take a void *csound
	  pointer to remove the temporary files of a particular Csound
	  instance. Also removed the static global variable 'toremove'.
	  In main.c, cleanup() is called instead of rtclose to close sound
	  output (cleanup is more useful as it will also close files,
	  remove temporaries, etc.).
	* InOut/libsnd.c:
	* InOut/pa_blocking.c:
	* InOut/rtalsa.c:
	* InOut/rtpa.c:
	  Incrementing ENVIRON.nrecs_ is now done in libsnd.c, and not in
	  the plugins. Closing line input was also moved to libsnd.c.
	  Fixed memory access problem in rtalsa.c (allocated space was too
	  small in some cases) that caused crashes and odd errors.
	  Attempts were made to make the closing of sound I/O more reliable;
	  this is still not perfect in the case of PortAudio, but ALSA is
	  better now.

2005-02-02  Istvan Varga	<istvan@csounds.com>

	* Top/main.c:
	* frontends/csound/csound_main.c:
	  Moved set_rt_priority() and calling of init_getstring() from main.c
	  to csound_main.c.
	  Various changes to use new interfaces.
	* H/csmodule.h:
	* Top/csmodule.c:
	  New plugin interface to be used by non-opcode libraries (e.g.
	  real time audio).
	* H/csoundCore.h:
	  Added new API functions to ENVIRON.
	* H/csound.h:
	* H/csoundCore.h:
	* Top/csound.c:
	* H/pa_blocking.h:
	* InOut/libsnd.c:
	* InOut/pa_blocking.c:
	* InOut/rtalsa.c:
	* InOut/rtpa.c:
	* SConstruct:
	  Code related to real time audio has been revised to allow for
	  loadable modules and multiple instances.
	* H/cfgvar.h:
	* Engine/cfgvar.c:
	  New files that implement an interface that allows dynamic creation
	  of options.
	* Engine/oload.c:
	  Added new function pointers to cenviron_.
	* Engine/namedins.c:
	  Made the table non-static so that it can be accessed from other
	  files (also renamed it to use a less trivial name). Fixed bug in
	  csoundDestroyGlobalVariable().
	* Engine/insert.c:
	* Engine/musmon.c:
	* Engine/otran.c:
	  Changes to use new plugin based audio I/O interface. Some functions
	  now take void *csound as the first argument. These include spinrecv(),
	  spoutran(), nzerotran(), spoutsf(), and other related functions.
	* H/new_opts.h:
	* Top/new_opts.c:
	  New files for parsing options dynamically created by functions
	  in cfgvar.c.
	* H/prototyp.h:
	* Top/argdecode.c:
	* Top/one_file.c:
	  The functions argdecode(), readOptions(), and read_unified_file()
	  now take 'void *csound' as the first argument.
	  In argdecode.c: use functions from Top/new_opts.c.
	* H/ustub.h:
	* Top/ustub.c:
	  Removed old unused prototypes.
	* install.sh:
	  Install script for Linux.

2005-02-01  John ffitch  <jpff@codemist.co.uk>

	* frontends/csound/csound_main.c (main): Corrected incorrect C

2005-01-29  Istvan Varga	<istvan@csounds.com>

	* SConstruct:
	* InOut/rtalsa.c:
	  added ALSA real-time audio; disabled by default, as it is
	  currently quite limited (no device selection, only float samples
	  are supported).

2005-01-29  Istvan Varga	<istvan@csounds.com>

	* H/csound.h, H/csoundCore.h:
	* Engine/namedins.c, Engine/oload.c, Top/csound.c:
	  new function: csoundQueryGlobalVariableNoCheck()
	  functions moved from csound.c to namedins.c
	* OOps/aops.c: use csoundQueryGlobalVariableNoCheck()

2005-01-28  Istvan Varga	<istvan@csounds.com>

	* H/csoundCore.h, Engine/oload.c:
	  added void **namedGlobals, int namedGlobalsCurrLimit, and
	  int namedGlobalsMaxLimit to ENVIRON
	* Top/main.c, frontends/csound/csound_main.c:
	  print compile times (real and CPU) if bit 7 of O.msglevel is set
	* H/csound.h, Top/csound.c:
	  implemented functions for creating named global "variables"
	* OOps/aops.c: rtclock opcode uses new timer functions
	* Top/main.c:
	  print_benchmark_info(): new function (activated by O.msglevel & 128)
	  call csoundDeleteAllGlobalVariables() on RESET
	  create global timer struct that counts from Csound instance start-up;
	  use these calls to get the current real/CPU time in seconds (return
	  value is double):
	   timers_get_real_time(csoundQueryGlobalVariable(csound, "csRtClock"))
	   timers_get_CPU_time(csoundQueryGlobalVariable(csound, "csRtClock"))

2005-01-27  Istvan Varga	<istvan@csounds.com>

	* Engine/express.c, Engine/oload.c, Engine/rdorch.c, H/csoundCore.h:
	* Top/argdecode.c:
	  implemented --expression-opt

2005-01-27  Istvan Varga	<istvan@csounds.com>

	* Engine/entry1.c:
	* Engine/entry2.c:
	* Engine/express.c:
	* Engine/otran.c:
	* Engine/rdorch.c:
	  use '.' instead of '_' in internal opcode names (e.g. osc.kk
	  instead of osc_kk); this allows the use of the underscore
	  character in real opcode names. Many files in Opcodes/ were
	  also changed.
	* strings/makedb.c:
	* strings/all_strings, strings/english-strings, strings/french-strings:
	* H/text.h:
	* Top/getstring.c:
	  new implementation for localized messages. Uses Str("...")
	  instead of Str(X_nnnn,"..."). This also needed replacement
	  of Str() in a large number of files.
	* Engine/oload.c, Engine/otran.c, H/csoundCore.h:
	  use 'int' type for variable indexes instead of 'short';
	  needs some testing
	* Engine/oload.c, Top/main.c, Top/one_file.c:
	  removed API function prototypes, use csound.h instead
	* Top/csound.c, H/csound.h, Engine/oload.c, Engine/otran.c:
	  incorporated some changes from the 'unofficial' 4.24.1 version,
	  including timer functions, better checking of sr/kr/ksmps, and
	  some fixes
	* Engine/memalloc.c: removed references to free_strings()
	* H/csdl.h: use csoundLocalizeString() instead of getstring()
	* InOut/widgets.cpp:
	  include <sstream> instead of <strstream>, and use stringstream
	  instead of strstream
	* Opcodes/midiops3.c: fixed undefined order of operations
	* SConstruct: added /usr/X11R6/include to include paths on Linux

2005-01-25	Steven Yi	<stevenyi@csounds.com>

	* frontends/csound/csound_main.c: set stdout to not buffer if
	csound output not going to terminal

2005-01-25  John ffitch  <jpff@codemist.co.uk>

	* InOut/widgets.cpp (FL_run): Need to pass argument to threads in
	Linux/Mach cases

2005-01-22  Michael Gogins <gogins@pipeline.com>

	* Added csoundSetFLTKThreadLocking and csoundGetFLTKThreadLocking
	calls to the Csound API. This controls whether or not the FLTK
	widget thread calls Fl::lock and Fl::unlock (the default), or not.
	Programs with their own performance thread or FLTK thread may
	wish to disable Csound's FLTK thread locking.

2005-01-20  Michael Gogins <gogins@pipeline.com>

	* Created a working NSIS installer for Windows -- does not
	install source code.

2005-01-18  John ffitch  <jpff@codemist.co.uk>

	* Opcodes/newfils.c: New code
	* Opcodes/syncgrain.c: New code

	* InOut/widgets.cpp (fl_joystick): Change to way up of joystick

005-01-16  John ffitch  <jpff@codemist.co.uk>

	* InOut/pa_blocking.c (paBlockingWriteStreamCallback): Fixed
	incorrect declaration

2005-01-12  Michael Gogins <gogins@pipeline.com>

	* Call Pa_Terminate after Pa_AbortStream calls in rtclose_.
	This helps with restarting Csound and CsoundVST.

22005-01-06  John ffitch  <jpff@codemist.co.uk>

	* All over added first arg to opcodes of the ENVIRON structure

2004-12-23  John ffitch  <jpff@codemist.co.uk>

	* InOut/pmidi.c (GetMIDIData): Read to wrong place!

2004-12-20  John ffitch  <jpff@codemist.co.uk>

	* OOps/mididevice.c:
	* Top/main.c (signal_handler, csoundCompile):
	* InOut/widgets.cpp (SNAPSHOT):
	* H/sysdep.h:
	* H/csoundCore.h: Added code to allow MSVC compilation

2004-12-19  Michael Gogins <gogins@pipeline.com>

	* Added Java wrapper for the Csound API via CppSound.
	CsoundVST and Python support do not currently work, but it is now
	possible to run Csound natively from Java. This is designed
	mostly for using Csound in Mathematica through J/Link.

2004-12-19  John ff  <jpff@codemist.co.uk>

	* InOut/pmidi.c (sensMidi): major rehack for PortMIDI structure.
	Not verified yet.

2004-12-18  John ffitch  <jpff@codemist.co.uk>

	* Engine/fgens.c (hfgens): Ensure gensub array is initialised

2004-12-14  John ffitch  <jpff@codemist.co.uk>

	* SConstruct: All over use strings for options rather than
	numbers.  Seems to work but take care!

2004-12-12  Michael Gogins <gogins@pipeline.com>

	* Updated to FLTK 1.1.6, libsndfile 1.1.11, CVS PortAudio,
	CVS Loris for Windows pre-built binaries.

	* Added Loris API documentation to Csound reference manual.

2004-12-10  John ffitch  <jpff@codemist.co.uk>

	* InOut/libsnd.c: and code

	* OOps/sndinfUG.c (getsndinfo): Removed unused called to readheader

2004-12-03  Michael Gogins <gogins@pipeline.com>

	* Tried to remove most remaining compiler warnings: mostly returning
	int from main, sscanf for %lf with USE_DOUBLE, type casting, etc.

2004-12-02  John ffitch  <jpff@codemist.co.uk>

	* SConstruct (else): Added PortMIDI build option to aid experimentation.

2004-11-30  John ffitch  <jpff@codemist.co.uk>

	* Top/main.c (signal_handler): Move message to after check for alarm

2004-11-25  Michael Gogins <gogins@pipeline.com>

	* Initial implementation of CounterpointNode --
	generates species 1, 2, or 3 counterpoint for cantus firmi
	selected from notes generated by child nodes.
	Based on code from Bill Schottstaedt's species counterpoint generator
	(thanks, Bill!).

	* Optimized the build for boost::ublas matrix code
	in CsoundVST Node classes.

2004-11-28  John ffitch  <jpff@codemist.co.uk>

	* OOps/pvfileio.c (write_pvocdata, pvoc_readfmt): Use a union
	rather than dubious casts.

2004-11-23  John ffitch  <jpff@codemist.co.uk>

	* OOps/midirecv.c (m_chanmsg): Removed initial values for
	volume/balance/pan/expressions/bend/mastvol

2004-11-16  John ffitch  <jpff@codemist.co.uk>

	* OOps/ugens2.c (itable, itabli, itabl3): Need to check OK rather
	than assume true=OK

	* Engine/fgens.c: All over removed statics into the environment or
	into arguments.  Make ftfind etc take extra argument.  Should
	assist with reentrance.

2004-11-14  John ffitch  <jpff@codemist.co.uk>

	* util2/exports/het_import.c (main): Open output as binary stream

	* Top/main.c (mainRESET): ftRESET takes environment argument

	* Engine/fgens.c: Move many statics into a single static.  Adjust
	args to gens to reflect this -- statics almost unnecessary

2004-11-11  Michael Gogins <gogins@pipeline.com>

	* Changed the Python interface to CsoundVST to allow Python
	programmers to derive new classes in Python from CsoundVST.Node,
	and these new classes will function as C++ Node * objects in the
	CsoundVST C++ internals. This enables Python-derived Nodes to
	function just like regular C++ Nodes in music graphs.

2004-11-11  John ffitch  <jpff@codemist.co.uk>

	* Engine/fgens.c: Removed static variables ftp and nargs and used
	arguments instead.  Simplifications all over

2004-11-10  John ffitch  <jpff@codemist.co.uk>

	* H/csdl.h (FLINKAGE): defined

	* Top/dl_opcodes.c: Allow definitions of fgens

	* H/csoundCore.h: Added NGFENS structure

2004-11-09  John ffitch  <jpff@codemist.co.uk>

	* Engine/fgens.c (fgens): Started named fgens
	(fterror): Allow named gens in error messages
	(allocgen): New function to allocate new names

2004-10-24  Michael Gogins <gogins@pipeline.com>

	* Fixes to rtpa.c and pa_callback.c for duplex audio, and
	libsnd_u.c forsoundfile input, by Victor Lazzarini.

	* CsoundVST changes directory to that of loaded files.

2004-11-07  John ffitch  <jpff@codemist.co.uk>

	* H/ftgen.h (GENMAX): set to 43 (really part is fgens below)

2004-11-06  John ffitch  <jpff@codemist.co.uk>

	* Engine/musmon.c (sensevents): Need to reset nxtim and nxtbt at
	end of section (not needed in playevents model)

2004-11-05  John ffitch  <jpff@codemist.co.uk>

	* Opcodes/pvsbasic.c: New file and opcodes

	* Engine/fgens.c: Added gen43

2004-11-02  John Fitch  <jpff@eriboll.local.>

	* Top/threads.c: OSX threads like Linux

	* InOut/rtpa.c: Use callback stuff for OSX

2004-10-24  Michael Gogins <gogins@pipeline.com>

	* Renamed libsndfile.dll.0.0.19.

	* Updated documentation to provide improved directions for extending
	Csound with builtin or plugin opcodes.

	* Fixed badly formatted tables in documentation.

	* Improved API documentation with simple examples.

2004-10-26  John ffitch  <jpff@codemist.co.uk>

	* OOps/ugrw1.c: Simplified some of the error reporting

	* H/ugrw1.h (zkwm): and remove value from domix

2004-10-25  John ffitch  <jpff@codemist.co.uk>

	* OOps/ugens6.c (cmbset): Round rather than truncate

2004-10-24  Michael Gogins <gogins@pipeline.com>

	* Updated build system for gcc 3.4.2 (candidate), changed some
	flags to avoid DLL relocation errors on Windows that caused
	problems with restarting CsoundVST, and with debugging.

	* First draft of complete Csound 5 manual with Kevin Conder
	documentation included.  There are as yet many errors with tables
	and graphics, but all (or almost all) of the text appears to be
	good.

2004-10-21  John ffitch  <jpff@codemist.co.uk>

	* OOps/ugens6.c (delset, delrset): Round not truncate
	(deltap): Round not truncate

2004-10-20  John ffitch  <jpff@codemist.co.uk>

	* OOps/ugens6.c (delrset): NULL list of delays for safety,

2004-09-12  Michael Gogins <gogins@pipeline.com>

	* Added csound::Score::getCsoundScore method in CsoundVST for
	easier use of algorithmic composition classes in other
	Csound-based systems.

	* Updated csound.pdf with API documentation.

	* Restored real-time audio code to more functional version.

2004-10-16  John ffitch  <jpff@codemist.co.uk>

	* Opcodes/sfont.c (Sfplist, filter_string): Removed static array
	to local in caller

2004-10-07 	Steven Yi	<stevenyi@csounds.com>

	* Top/dl_opcodes.c (csoundOpenLibrary): Fixed to work with cygwin

	* Top/thread.s : Fixed to work with cygwin

2004-09-17  John ffitch  <jpff@codemist.co.uk>

	* util2/exports/pv_export.c (main): Free malloced space

2004-09-12  Michael Gogins <gogins@pipeline.com>

	* Restored PortAudio to ASIO only, re-ordered 'notify' and 'wait' for
	better logic and performance.

	* Improved PortAudio stop/restart by returning PaAbort from callbacks.

	* Moved Windows DLLs to csound5 root directory.

	* Added SIGINT to Windows signals handled.

	* Improved order of directives and comments in custom.py.

	* Updated csound.pdf to reflect the above.

2004-09-11  Steven Yi  <stevenyi@csounds.com>

	* SConstruct: Changed to use prefix directory from command line
	argument, defaults to /usr/local

	* SConstruct: Changed install-opcodes to install to
	"prefix + /lib/csound/opcodes"

2004-09-11  Steven Yi  <stevenyi@csounds.com>

	* SConstruct: Added install, install-executables, and install-opcodes
	targets

2004-09-08  John ffitch  <jpff@codemist.co.uk>

	* SConstruct (ustub): Added bus.c

	* Opcodes/bus.c: New code for IO bus

	* Engine/oload.c: Initialise below

	* H/csoundCore.h (ENVIRON_): Added busik_, busia_, busok_, busia_

	* H/csdl.h (busik, busia, busok, busia): Added macros

2004-08-22  John ffitch  <jpff@codemist.co.uk>

	* Opcodes/biquad.h:
	* Opcodes/biquad.c (vcoset, bqrezset, pareqset, tbvcfset): Skip
	initialisation option

2004-08-21  John ffitch  <jpff@codemist.co.uk>

	* Opcodes/biquad.c (moogvcfset, rezzyset): Added iskip to avoid
	initialisation

	* Opcodes/biquad.h: Added iskip options to moogvcf abd rezzy

2004-08-18  John ffitch  <jpff@codemist.co.uk>

	* Engine/fgens.c (gen20): Corrected sinc window

2004-08-12  Michael Gogins <gogins@pipeline.com>

	* Re-arranged sections in csound.pdf to be more helpful for beginners.

	* Updated csound.pdf to reflect availability of ASIO on Windows.

2004-08-10  Michael Gogins <gogins@pipeline.com>

	* Implemented threads and mutexes in the Csound API for Windows and Linux,
	in Top/threads.c.

	* Implemented low-latency PortAudio with a blocking wrapper that
	uses mutexes for asynchronus ASIO on MinGW/Windows, in
	InOut/pa_blocking.c and H/pa_blocking.h.

	* Fixed Top/threads.c so it compiles on Linux.

2004-08-05  Michael Gogins <gogins@pipeline.com>

	* Rewrote fluid opcode to break it up into fluidload, fluidcontrol, and
	fluidout. Added documentation html file.

2004-07-31  Michael Gogins <gogins@pipeline.com>

	* Removed many warnings, especially by using %lf in sscanf for USE_DOUBLE
	and re-ordering ctor lists.

	* Added section to build Loris from sources if present.

	* SWIG-generated .py files now generated in root directory.

2004-07-25  Michael Gogins <gogins@pipeline.com>

	* Added csoundTableLength, csoundTableGet, csoundTableSet to API.

	* Added pyinit opcode.

2004-07-24  Michael Gogins <gogins@pipeline.com>

	* Python opcodes: imported Maurizio Umberto Puxeddu's Python opcodes for
	Csound 4 from Gabriel Maldonado's CsoundAV sources, updated for Csound 5 with
	opcode error status return values. Currently these opcodes only work in
	CsoundVST, but I may add a pyinit opcode to make them work in command-line
	csound.

2004-07-23  Michael Gogins <gogins@pipeline.com>

	* Loris: added sources (for Csound 5 opcode ONLY) and prebuilt
	  binaries (for MinGW/Windows with USE_DOUBLE ONLY) for _loris.dll,
	  which is both a plugin Csound 5 opcode and a Python extension module.

	* Modified dl_opcodes.c to print debugging info off the -v option,
	  and made the messages clearer.

2004-07-21  Michael Gogins <gogins@pipeline.com>

	* vst4cs: implemented sample-accurate timing for NOTE ON and NOTE OFF.
	Renamed opcodes for greater intelligiblity.

2004-07-19  Michael Gogins <gogins@pipeline.com>

	* Andres Cabrera suggested a global vst audio output opcode, so I added
	vstplugg to do that. I changed the documentation to reflect it.

2004-07-18  Steven Yi <stevenyi@csounds.com>

	* Engine/oload.c (oload): Moved call to sssfinit to above init0 as
	recommended by Matt Ingalls, instr 0 opcodes that use fopenin() now
	function correctly

2004-07-18  John ffitch  <jpff@codemist.co.uk>

	* OOps/vpvoc.c (vpvset): Ditto

	* OOps/ugens8.c (pvset): Ditto

	* OOps/midiops.c (pgmassign): Ditto

	* OOps/aops.c (invalset,outvalset ): Allow score strings

2004-07-17  Michael Gogins <gogins@pipeline.com>

	* Andres Cabrera added bank loading to vst4cs. I added plugin
	editor dialogs and program setting, also refined log message
	levels and made VST opcode diagnostic messages more informative.

2004-07-17  John ffitch  <jpff@codemist.co.uk>

	* OOps/dumpf.c (krdset): Allow strings from score
	and in kdmpset (4 cases each)

	* OOps/ugens9.c (pconvset): New code
	(pconvolve): New code

2004-07-13  John Fitch  <jpff@eriboll.local.>

	* InOut/widgets.cpp: Various changes to make __MACH__ machines be
	line Linux.
	(save_snap): Use fl_ask

2004-07-11  Michael Gogins <gogins@pipeline.com>

	* Added vst4cs plugin opcode by Andres Cabrera for hosting VST plugins
	  in Csound. Made a number of bug fixes and changes. More changes coming.
	  This is alpha code. Currently building only on mingw.

2004-07-09  John ffitch  <jpff@codemist.co.uk>

	* Engine/musmon.c (playevents): matt's suggestion to avoid missing
	events due to rounding.

	* OOps/ugrw1.c (itablew): Wrong result returned and elsewhere

	* Engine/otran.c (otran): Move initialisation of pool to start of
	otran so strings work!
	(constndx): from here

2004-07-05  Anthony Kozar <anthony.kozar@utoledo.edu>

	* Top/argdecode.c (argdecode): don't keep tmp files on Mac

	* Engine/sread.c (ifa): Rest of ^+ bug fix from csound module.

2004-07-04  John ffitch  <jpff@codemist.co.uk>

	* strings/all_strings: Added string 226

2004-07-04  Anthony Kozar <anthony.kozar@utoledo.edu>

	* Engine/sread.c (ifa): fixed bugs and improved error reporting in ^+
	and ^- code.

2004-06-27  Michael Gogins <gogins@pipeline.com>

	* Fixed (and simplified) real-time audio input.

2004-06-25  Michael Gogins <gogins@pipeline.com>

	* The CsoundVST Python module now prints Csound messages to Python
	sys.stdout when running in IDLE.

2004-06-25  Anthony Kozar <anthony.kozar@utoledo.edu>

	* These are all changes to allow compilation on MacOS 9

	* Top/csound.c:  In declaration of csoundExternalMidiRead(), made mbuf
	 unsigned char* to match other calls.

	* OOps/diskin.c: (newsndinset) changed if (sinfd > 0) to
	if (sinfd != NULL).

	* Top/dl_opcodes.c: added #else case for platforms without shared
	libraries.

	* InOut/libsnd.c: added #include "MacTransport.h" for Mac builds.

	* Top/main.c: commented out conditional exclusion of err_printf() for Mac.

	* OOps/sdif-mem.c:
	* SDIF/sdif-mem.c:
	* H/sdif-mem.h:
	* SDIF/sdif-mem.h:
	* OOps/sdif.c:
	* SDIF/sdif.c: changed #include <H/sdif-mem.h> to #include
	"H/sdif-mem.h" and <H/sdif.h> to "H/sdif.h".

	* H/sftype.h: #defined PACKED for mac_classic

	* H/sysdep.h: undefined mills_macintosh (now defined in Prefix.h) and
	temporarily undefined RTAUDIO for Mac build until PortAudio working.

2004-06-15  John ffitch  <jpff@codemist.co.uk>

	* OOps/aops.c (outo): Skipped +6 case!

2004-06-12  John ffitch  <jpff@codemist.co.uk>

	* OOps/ugens2.c (ftkrchk):
	* OOps/ugrw1.c: Results of some opcodes were reporting errors
	incorrectly

2004-06-07  Michael Gogins <gogins@pipeline.com>

	* Changed the CsoundVST module to create a global csound instance of
	CsoundVST.CppSound that will work both in CsoundVST and in the
	standalone Python interpreter.

2004-06-02  Michael Gogins <gogins@pipeline.com>

	* CsoundVST now opens the Python or csd file given on the command line.

2004-05-31  John ffitch  <jpff@codemist.co.uk>

	* OOps/midirecv.c: declare csoundIsExternalMidiEnabled,
	csoundExternalMidiDeviceOpen, csoundExternalMidiDeviceClose and
	OpenMIDIDevice external

	* Engine/auxfd.c (fdchclose): fd should have been curchp->fd

	* InOut/libsnd_u.c (SAsndgetset): Return a SNDFILE* rather than an int

2004-05-27  John ffitch  <jpff@codemist.co.uk>

	* InOut/widgets.cpp (fl_setWidgetValue_set, fl_setWidgetValue):
	New code stolen from CsoundAV and changed to Csound5 format

	* Engine/entry2.c: Change entry for FLsetVal

	* InOut/widgets.cpp: SNAPSHOT::get returns error state
	(get_snap): and used

2004-05-16  Michael Gogins <gogins@pipeline.com>

	* Amended SConstruct to keep a list of all dependencies to make
	sure that zipfiles get built at the very end.

	* Updated csound.pdf with information about -odac:xxx on ALSA.

2004-05-20  John ffitch  <jpff@codemist.co.uk>

	* InOut/rtpa.c (playopen_): Decode dac:xxx rather than environment
	variable

	* InOut/libsnd.c (sfopenin, sfopenout): Decode dac:xxx style device

	* H/csoundCore.h (ENVIRON_): type in instance was wrong (missing *)

	* H/csoundCore.h (ENVIRON_):
	* H/cs.h (rtin_devs, rtout_devs):
	* H/csdl.h (rtin_devs, rtout_devs):
	* Engine/oload.c: Added rtin_devs and rtout_devs for device names
	rather than just numbers

2004-05-19  John ffitch  <jpff@codemist.co.uk>

	* Engine/entry1.c: Added "tablew" as a 0xfffe opcode

	* SConstruct (customSHLINKFLAGS): Darwin seems to need -dynamic

	* Top/dl_opcodes.c (dlsymIntern): SLOOKUPSYMBOLINIMAGE_OPTION_BIND
	-> NSLOOKUPSYMBOLINIMAGE_OPTION_BIND

2004-05-18  John ffitch  <jpff@codemist.co.uk>

	* Opcodes/vdelayk.c (partial_maximum): Added maxk opcode

2004-05-17  John  <jpff@cage.codemist.co.uk>

	* SConstruct: Use -Wl,-Bdynamic as it is  linker option

	* strings/makedb.c (main): Correct format in printf twice for
	longs

	* Top/main.c (install_signal_handler): Restore signal handling

2004-05-17  John ffitch  <jpff@codemist.co.uk>

	* InOut/rtpa.c (playopen_): Allow selection of ALSA device via
	environment variable

	* Engine/entry1.c: Restored tablekt and tableikt

2004-05-16  Michael Gogins <gogins@pipeline.com>

	* frontends/CsoundVST/CsoundVstFltk.cpp: fixed problem
	with linefeeds in message lines.

2004-05-12  John ffitch  <jpff@codemist.co.uk>

	* SConstruct: Set makeDynamic=1 for linux

2004-05-09  Michael Gogins <gogins@pipeline.com>

	* Added high-level "C" API for CsoundVST
	(frontends/CsoundVST/csoundvst_api.h and .c).

	* Fixed random number generator bug in CsoundVST::StrangeAttractor.

2004-05-07  Michael Gogins <gogins@pipeline.com>

	* Fixed some bugs in rtpa.c to enable lower-latency
	real-time audio.

2004-05-05  Michael Gogins <gogins@pipeline.com>

	* Fixed Fl_graph.cpp and widgets.cpp event handling with thread
	protection. FLTK widgets work now (at least on Windows).

2004-05-05  John ffitch  <jpff@codemist.co.uk>

	* strings/all_strings:
	* strings/english-strings: Heavily revised

	* Top/pvanal.c (pvanal): 1781->1771

	* Engine/oload.c (oload): 1711->1704 as overuse

	* OOps/pvfileio.c (pvoc_readfmt): Minor typo in string
	(pvoc_readheader): 1555 instead of 1635
	(pvoc_putframes): 1527 instead of 1657

	* OOps/pvxanal.c (pvxanal): Minor typo in string

	* Opcodes/scansynx.c Many string renumering for uniqueness

	* OOps/fout.c (outfile_set): 1463->1451 as overuse

	* Opcodes/uggab.c (rsnsety): 1453->1453 as overuse

	* Top/dnoise.c (dnoise): 1198->1199 as overuse
	(dnoise): Minor type in string

	* OOps/diskin.c (newsndinset): Minor string correction

	* OOps/ugrw1.c (printksset): 1136->1135 as overuse

	* Top/dnoise.c (dnoise): Changed 1052 to 1016 as overuse

	* Opcodes/ugmoss.c (vcombset): Unified string 668

	* OOps/cmath.c (seedrand): String 458 made same as other uses

	* Top/argdecode.c (longusage): Typo in 425

	* Opcodes/uggab.c (kDiscreteUserRand, aDiscreteUserRand)
	(kContinuousUserRand, aContinuousUserRand): Inconsidtent use of
	String 315

	* Opcodes/ugsc.c (phaser2set): String 243 double used -- changed
	to 245

	* OOps/mididevice.c (OpenMIDIDevice): Typo in string 210

	* Top/argdecode.c (decode_long): String 95 was repeated; changed
	to 97 which was free

	* OOps/pvread.c (pvreadset, pvocex_loadfile):
	* OOps/pvinterp.c (pvbufreadset, pvinterpset, pvcrossset):
	* OOps/pvadd.c (pvaddset):
	* OOps/pstream.c (pvx_loadfile): String 63
	* Top/dnoise.c (dnoise): String 61
	* OOps/diskin.c (sngetset): Typing error in string 58

	* Engine/insert.c (insert_event): Format string had naked %

2004-05-04  Michael Gogins <gogins@pipeline.com>

	* Added more Fl::lock and ::unlock calls to CsoundVstFltk.cpp, to
	protect against Xlib: unexpected async operation errors. CsoundVST
	now actually works on Linux.

2004-05-03  Michael Gogins <gogins@pipeline.com>

	* Fixed midiinterop opcodes that were broken when moved to csound5.

2004-05-01  Michael Gogins <gogins@pipeline.com>

	* Added a new csoundPerformKsmpsAbsolute API function for calling
	kperf without a score.

	* Restored external MIDI interface callbacks to working
	order. Renamed the Open and Close callbacks to DeviceOpen and
	DeviceClose to clarify their actual function.

	* Many fixes in CsoundVST to get it working for Csound 5.

2004-04-29  Michael Gogins <gogins@pipeline.com>

	* Made inbuf and outbuf MYFLT * throughout the sources.

	* Moved "extern" function and data declarations from csound.c to
	prototyp.h  as much as possible, in order to prevent
	inconsistencies from spreading.

2004-04-27  John ffitch  <jpff@codemist.co.uk>

	* Engine/oload.c: Initialise file_opened_

	* H/csoundCore.h (ENVIRON_): Added file_opened_ to environment

2004-04-26  Michael Gogins <gogins@pipeline.com>

	* Added scoreRESET to enable multiple renderings with one Csound
	API instance.

2004-04-08  John ffitch  <jpff@codemist.co.uk>

	* InOut/widgets.cpp (fl_knob): Added retuirn to initerror call
	(fl_button):

2004-04-06  John ffitch  <jpff@codemist.co.uk>

	* InOut/FL_graph.cpp (draw): Initialise win_h

2004-04-05  John ffitch  <jpff@codemist.co.uk>

	* H/csound.h: rtplay__ needs to have void* argument

	* OOps/midirecv.c (csoundDefaultMidiOpen): Needs void* argument

	* Top/csound.c: mainRESET needs an argument

	* Engine/linevent.c (newevent): needs csound argument

2004-03-14  John ffitch  <jpff@codemist.co.uk>

	* OOps/fout.c (infile_act): renamed from infile to avoid name
	clash with linsndfile support

2004-03-11  John ffitch  <jpff@codemist.co.uk>

	* InOut/libsnd.c (sfopenout): Added test.au as a default name

2004-03-03  John ffitch  <jpff@codemist.co.uk>

	* Engine/scxtract.c (scxtract): Added call to sread_init() as suggested
	by Anthony Kozar

2004-02-29	Steven Yi	<stevenyi@csounds.com>

	* InOut/rtpa.c: modifed code to use PortAudio device 1 by default if
	none given.  Messages are now given to user if defaulting to device 1
	or what device user has selected.

	* Top/main.c: changed strcmp to strncmp when looking for dac or
	devaudio to allow use of --sched when using on linux and selecting
	PortAudio devices (i.e. dac1, devaudio3)


2004-02-28	Steven Yi	<stevenyi@csounds.com>

	* Engine/entry2.c: Added reverbx_set and reverbx back in as well as
	opcode entries for nreverb/reverb2


2004-02-28  John D. Ramsdell  <ramsdell@mitre.org>

	* Makefile.am: Removed _SOURCES vars from conditionals and made
	plugins libs begin with "lib" so that this automake file works
	with older version of automake.

	* configure.ac: Removed AC_PROG_RANLIB and added $srcdir to
	include so that VPATH works.

2004-02-25  Michael Gogins <gogins@pipeline.com>

	Modified sources to #ifdef for HAVE_LIBSNDFILE as defined by configure.ac,
	not _SNDFILE_.

	Removed jpff_glue.c as its function is now performed by csound.c.

	Deleted load_opcodes.c after merging it with dl_opcodes.c.


2004-02-22  Michael Gogins <gogins@pipeline.com>

	New configure.ac, which is a modified version of John Ramsdell's
	configure.ac. Thanks to John for providing a framework, implementing the
	required tests, and enabling me to understand the online documentation.

	All new Makefile.am, which puts all source configuration in one file for all
	targets.

	Renamed some "main.c" files to prevent naming conflicts caused by having a
	single Makefile.am.

	Moved some opcodes from Opcodes back to OOps due to tangled dependencies.

	Plugin opcodes are loaded from the directory pointed to by the OPCODEDIR
	environment variable. The --shared-lib flag is still effective.

	Enabled PortAudio in Csound 5 together with libsndfile, and changed
	PortAudio support from v18 to v19.

	Renamed libanal.a to libustub.a and moved as much code as possible
	from analysis and utility program "main" files to ustub.c.

2004-02-20  John ffitch  <jpff@codemist.co.uk>

	* Opcodes/grain.c (ags): Use memcpy rather than a loop to copy back

2004-01-29  John ffitch  <jpff@codemist.co.uk>

	* Engine/insert.c (ingoto): Check that we are in i-rate case

2004-01-13  John ffitch  <jpff@cs.bath.ac.uk>

	* Opcodes/sfont.c: casts in many debug statements

	* Opcodes/mandolin.c (mandolin, mandolinset): Use ENVIRON*
	argument to Delayline functions

2004-01-01  John ffitch  <jpff@codemist.co.uk>

	* Opcodes/pluck.c (filter3Set): Need to initialise ->x1 and ->x2
	to zero

	* Opcodes/flanger.c (wguide2, wguide1): Avoid frequencies below 5Hz

2003-11-30	Steven Yi	<stevenyi@csounds.com>

	* Engine/insert.c (orcompact): Added calls to deinitialize i-time opcodes

2003-11-29	Steven Yi 	<stevenyi@csounds.com>

	* H/cs.h: all thing except compability macros moved out to csoundCore.h

	* H/csoundCore.h: contains everything except compability macros

	* Top/csound.c: edited to use ENVIRON, #include csoundCore.h instead of
	cs.h (macros were getting in the way of compiling), still needs to be
	reconciled with main.c::csoundCompile before being usable

2003-11-25  John ffitch  <jpff@codemist.co.uk>

	* OOps/vbap_zak.c (vbap_zak_moving_init): Fix zastart/zkstart

	* Opcodes/bowedbar.c (make_DLineN): Envionment as argument

	* Opcodes/scansynx.c (listget): Added environment as argument and
	in calls

	* H/csdl.h (perferror): Point via p->h.insdshead->csound-> and
	name changes

	* H/cs.h (GLOBALS_): Added _ to names in many places

	* Top/dl_opcodes.c (csoundLoadExternals): resetter function needs
	environment as argument

	* Top/jpff_glue.c (csoundReset): Added argument of environment

2003-11-22  John ffitch  <jpff@codemist.co.uk>

	* Opcodes/grain.c (ags): Check gcount against 1 rather than 0.1

2003-11-07  John D. Ramsdell  <ramsdell@mitre.org>

	* Top/getstring.c (init_getstring): The default location for the
	csound.xmg file is passed in by defining XMGDIR to be a directory
	string.

2003-11-05  John  <jpff@codemist.co.uk>

	* util2/sndinfo/main.c (main):
	* util2/dnoise.dir/srconv.c (main):
	* util2/dnoise.dir/dnoise.c (main): Initialise e0dbfs in main as
	it is now in O structure

2003-11-05  John ffitch  <jpff@codemist.co.uk>

	* Opcodes/ugens6.c: reverb was not declared in opcode table

2003-11-04  John D. Ramsdell  <ramsdell@mitre.org>

	* configure.in: Added AM_INIT_AUTOMAKE, AM_PROG_CC_STDC, and code
	that adds -Wall when using GCC.

2003-11-02  John D. Ramsdell  <ramsdell@mitre.org>

	* AUTHORS, INSTALL, NEWS: Added empty files to be filled in when
	we comply with the GNU Coding Standards.

2003-11-1	Steven Y. Yi	<stevenyi@csounds.com>

	* rdorch.c: fixed printf statement in synterr() to use %c instead of %f

2003-10-29  John D. Ramsdell  <ramsdell@mitre.org>

	* csound.spec.in: Added an RPM spec for Csound.

2003-10-16  John ffitch  <jpff@codemist.co.uk>

	* H/csdl.h (getstring):
	* Engine/oload.c: and initialise

	* H/cs.h (GLOBALS_): Added auxalloc and getstring

2003-10-14  John ffitch  <jpff@codemist.co.uk>

	* Top/main.c (mainRESET): Cannot call rtclose if no rtaudio

2003-10-13  John D. Ramsdell  <ramsdell@mitre.org>

	* uggab.c (anterpol): Made loop expression unambiguous.

	* ugens4.c: Int constants changed to unsigned long, as they do not
	fit as ints.

2003-07-24  John ffitch  <jpff@codemist.co.uk>

	* widgets.cpp (fl_slider_bank): Remove extern decl of zkstart/zklast

	* H/csdl.h:
	* H/cs.h:
	* Engine/oload.c:
	* Opcodes/ugrw1.c: Moved zkstart/zklast to gloal structure

2003-06-18  John ffitch  <jpff@cs.bath.ac.uk>

	* H/ugens6.h: Added revlpsum and revlpsiz fields

	* Opcodes/ugens6.c (rvbset): Make reverbinit called internally to
	reverb to avoiud static array.

2003-06-16  John ffitch  <jpff@codemist.co.uk>

	* dl_opcodes.c (csoundLoadExternals): Added support for RESET
	function in modules.

2003-06-04  John ffitch  <jpff@codemist.co.uk>

	* wave.c (wavWriteHdr): peakdata.chunkDataSize needs lenlong call

2003-05-20  John ffitch  <jpff@codemist.co.uk>

	* biquad.c (bqrez): Make mode positive integer

2003-05-12  John ffitch  <jpff@cs.bath.ac.uk>

	* Added Copyright/LGPL to all files

2003-05-06  John ffitch  <jpff@cs.bath.ac.uk>

	* entry2.c: schedwhen should have arguments kSkkm (first two were
	inverted)

2003-04-13  John ffitch  <jpff@codemist.co.uk>

	* vpvoc.c (vpvset): Fixed typo of <- instead of <=

2003-03-12  John  <jpff@codemist.co.uk>

	* diskin.h (struct): inbuf array needs to be longest of
	SNDINEWBUFSIZ and SNDINEWBUFSIZ_24

2003-03-08  John ffitch  <jpff@codemist.co.uk>

	* modal4.c (agogobel): Need to set amp/freq in performance part as
	well as init
	(vibraphn): Amplitude of vibraophone needs setting at perf time.
	(marimba): ditto

	* marimba.h:
	vibraphn.h: Added first field

	* fgens.c (hfgens): In allocating table numbers do not overwrite
	any existing table

2003-03-04  John ffitch  <jpff@codemist.co.uk>

	* one_file.c (readOptions): Ignore white space before tags
	(createScore, createOrchestra, createMIDI, createMIDI2)
	(createSample, createFile, read_unified_file):

2003-02-27  John ffitch  <jpff@cs.bath.ac.uk>

	* pstream.c (adsyn_frame): The memset should be 64bit

2003-02-19  John ffitch  <jpff@codemist.co.uk>

	* version.h (VERSION): 4.23f02

	* sread.c (getpfld): Reconstruct extending of curmem, especially
	so as to correct the frstbp chain pointers

2003-02-16  John  <jpff@codemist.co.uk>

	* version.h (VERSION): 4.23f01

	* sread.c (sread_init): new function to separate include files
	from sections
	(sread): Removed resetting of str and the unwinding after section
	ends

	* scsort.c (scsort): Call sread-init

2003-02-02  John  <jpff@codemist.co.uk>

	* cs.h: Changed types of xtratim to int and of relesing and actflg
	to char

2003-01-27  John ffitch  <jpff@codemist.co.uk>

	* dcblockr.c (dcblockrset): Check that filter is stable

2002-12-21  John  <jpff@codemist.co.uk>

	* VERSION 4.23

	* biquad.c (bqrez): Replaced to do other cases

2002-12-18  John ffitch  <jpff@codemist.co.uk>

	* widgets.cpp: Windows needs strstrea rather than strstream

2002-12-16  John ffitch  <jpff@xenakis.codemist.co.uk>

	* entry1.c: Added fprints fprintks and prints opcodes

	* aops.c:
	* entry2.c: removed "ink" and "outk"

	* biquad.c (vco): Changed parameter range of pw to 0-1

	* midiops2.h (MIDIINBUFMAX): Upped buffer size, and simplified code

	* insert.c (subinstrset): Code moved so "too many p-fields"
	initerror call does not result in a crash or other errors.

2002-12-15  John ffitch  <jpff@xenakis.codemist.co.uk>

	* otran.c (otran): Fencepost error in nulling extension of
	instrtxtp array

2002-12-07  John  <jpff@cage.codemist.co.uk>

	* winsound.rc: Added dither box to Extras (seems to have got lost
	somewhere)

	* ugens1.c (adsrset1): Need to test <=0 for length rather than
	zero (fixes madsr)

2002-12-04  John ffitch  <jpff@xenakis.codemist.co.uk>

	* musmon.c (gettempo): Result should be 60/betsiz rather than betsiz

2002-12-03  John ffitch  <jpff@xenakis.codemist.co.uk>

	* fgens.c (ftgen): Allow negative fcodes in string case (1,23,28)

	* insert.c (insert_event): insert here

	* schedule.c: Removed insert_event

	* midiops2.c (midiin): Replaced
	(initc7,initc14,initc21): Check that channel exists

	* namedins.c (strsav_create, strsav_string, strsav_destroy): New
	code

	* linevent.c (sensLine): Check that there is a Linefd
	(event_set): revised to fix some bugs, including crashes that
	occur when real-time audio, or schedule opcodes are used

2002-11-30  John  <jpff@codemist.co.uk>

	* biquad.c (bqrezset, bqrez): New filter

2002-11-24  John ffitch  <jpff@codemist.co.uk>

	* insert.c (deact): revised
	(beatexpire, timexpire): use revised deact
	(subinstrset, subinstr, xinset, xoutset) rewritten

	* insert.h: structure OPCOD_IOBUFS

	* cs.h: New structure INSTRNAME (Istvan)

	* rtlinux.c: replaced dspfd with dspfd_in and dspfd_out in various places.
	This might allow full-duplex operation on some cards (Istvan)

	* cs.h (rtin_dev, rtout_dev): define

	* oload.c: Initialise rtin_dev and rtout_dev

2002-11-21  John ffitch  <jpff@codemist.co.uk>

	* oscbnk.c (vco2init): replaced to fix bugs in setting default parameters

	* express.c: Use printf rather than putstrg

	* otran.c: Removed putstrg from here as not used

	* mididevice.c: new code from Istvan for real-time MIDI input under Win32

	* rtalsa.c: New code from Istvan

2002-11-16  John  <jpff@xenakis>

	* util2/mixer/xtrct.c (ExtractSound): removed incorrect
	declaration of samples which stopped extraction except from start
	(main): Called init-getstring

2002-11-14  John ffitch  <jpff@cage>

	* modal4.c (agogobelset1):
	* midiout.c (kvar_out_on_set1): removed deprecated code

	* argdecode.c (usage): Corrected typo in message 425

2002-11-13  John ffitch  <jpff@xenakis>

	* flanger.c (wguide2set): Should have checked arg1 and looked at arg2

	* vdelay.c:
	* ugsc.c:
	* ugmoss.c:
	* ugens7.c:
	* ugens4.c:
	* ugens3.c:
	* sndwarp.c:
	* pitch.c:
	* oscils.c:
	* oscbnk.c
	* grain.c:
	* flanger.c:
	* biquad.c: Use macros all over

	* cs.h (XINARG1, XINARG2, XINARG3, XINARG4): New macros to look at
	x flags for first 4 arguments (so we can straighten this out)

2002-11-06  John  <jpff@codemist.co.uk>

	* jpff_glue.c: Only declare/use playopen_ etc if RTAUDIO is defined

2002-11-04  John ffitch  <jpff@cage>

	* sdif2adsyn.c (main): Minor changes to variables and
	initialisation

2002-11-02  John ffitch  <jpff@cage>

	* soundin.c (soundin): Code changed system address, so need a
	local array for r.

2002-10-30  John ffitch  <jpff@xenakis>

	* lowpassr.c (lowprx): Use k field, fixing bug
	(lowpr_setx): Initialise k and also okr/okf which were not
	(lowpr, lowpr_set): Same

	* lowpassr.h: Added k as field to LOWPRX and LOWPR

	* fgens.c (gen08): Minor fixes to stop compiler warnings
	(gen01raw): return after error
	(gen18): ditto

	* midirecv.c (m_chanmsg): Deal with case when  msb=1 and lsb is
	not known

2002-10-28  John  <jpff@cage>

	* fgens.c (gen01raw, gen01): Same

	* oscbnk.c (oscbnk_flen_setup): Moved function so will compile on 68000

	* sfont.c (SfPlay_set, SfPlayMono_set, SfInstrPlay_set)
	(SfInstrPlayMono_set): use ioffset and other minor changes

	* sfont.h:
	* entry1.c: Added additional option arg to sfont opcodes

	* sfont.c (SfPlay_set): Changes from Steven Yi to bring in line
	with SfPlayMono

2002-10-28  John ffitch  <jpff@xenakis>

	* fgens.c (ftRESET): fence post error in freeing flist

	* cwin.cpp (cwin_exit): Call csoundReset

	* main.c (mainRESET): Changed order of resets

	* memalloc.c (all_free): Reset apsize as well

2002-10-20  John  <jpff@cage>

	* control.c (readvalues): removed \n from the read from the Tcl/Tk
	process

2002-10-15  John ffitch  <jpff@cage>

	* VERSION 4.22

	* soundio.c (floatran_noscl): New code
	(floatrecv_noscl): ditto
	(iotranset): Use it
	(iotranset): twice

2002-10-14  John ffitch  <jpff@xenakis>

	* uggab.c (resony): Use the local buffer so as not to overwrite
	(rsnsety): Initialise buffer

	* uggab.h: Added buffer field to RESONY

2002-10-14  John ffitch  <jpff@xenakis>

	* ugens5.c (areson): Ensure areson can use same answer variable as
	input

2002-10-13  John  <jpff@codemist.co.uk>

	* swrite.c (swrite):
	* sort.c (sort):
	* sread.c (sread, getop):
	* musmon.c (playevents): Add q score event

	* entry2.c: Added mute opcode

	* pitch.c (mute_inst): New function

	* pitch.h: Added MUTE structure

	* otran.c (tranRESET): Free instrumentName structure

	* cs.h: Added muted field to INSTRTXT which is a short and aids
	padding!
	(GLOBALS_): Added instrumentName to globals

2002-10-12  John  <jpff@codemist.co.uk>

	* insert.c (insert): Added code to pad parameters with zero if too
	few provided.

2002-10-09  John  <jpff@codemist.co.uk>

	* uggab.c (posckk, poscaa, poscka, poscak): replace poscil

	* entry1.c: Added poscil as _kk, _ka, _ak, _aa opcode

	* fgens.c (fgens): Allow non power-of-two table sizes (negative lenth)
	(gen10): use rem rather than mask so allows non-power-of-two

	* memalloc.c (all_free): call rlsmemfiles

	* diskin.c (newsndinset): Set length right at beginnin
	(sreadinew): Add WAV to list of types with known header info

2002-10-08  John ffitch  <jpff@codemist.co.uk>

	* wave.c (wavReWriteHdr):
	* soundio.c (sfopenout):
	* sndinfo.c (sndinfo):
	* diskin.c (newsndinset, soundinew):
	* aiff.c (is_aiff_formtype):
	* aifc.c (aifcReWriteHdr): Changed non-ANSI tell to call to lseek
	for completeness
	(aifcReadHeader): Ditto
	(is_aifc_formtype): Ditto
	(aifcReWriteHdr): Use SEEK_SET instead of 0 which could be wrong

	* FL_graph.cpp: and the rest of the winFLTK support.  May merge
	later.

	* winFLTK.c: New code to replace winX11.c using FLTK rather than
	raw X

2002-10-07  John ffitch  <jpff@codemist.co.uk>

	* memalloc.c (all_free): and here
	* memfiles.c (rlsmemfiles): Add nulling of memfiles for reentrance

	* oscbnk.c:  many changes in vco2 (and related) code (Istvan)

	* oscbnk.h:  similarly to oscbnk.c, all vco2 stuff was replaced by
	new version

	* entry2.c: replaced entry for "vco2init"

2002-10-06  John  <jpff@codemist.co.uk>

	* soundin.c (sndinset): Patch from RWD to reopen input; still
	looks wrong

2002-10-03  John  <jpff@codemist.co.uk>

	* rtcoreaudio.c:
	* mw_menu.c:
	* midirecv.c:
	* cscore_main.c: Improved deprecated declarations

2002-09-28  John  <jpff@codemist.co.uk>

	* insert.h: Added 8 to args in XOUT (Istvan)

	* fgens.c (ftRESET): call vco2_tables_destroy()

	* oscbnk.c:   added vco2 and related opcodes (Istvan)

	* oscbnk.h: New structures for vco2 (Istvan)

	* diskin.c (newsndinset): Fix related to skip time going beyond
	file end

	* ugmoss.c (vcomb): Changes from Pete Moss
	(valpass): Ditto

2002-09-26  John  <jpff@codemist.co.uk>

	* butter.c (butter_filter): Deal with underflow on pentiums which
	gets seriously lost (RWD's idea)

2002-09-25  John  <jpff@codemist.co.uk>

	* uggab.c (loopseg): Wrap segments
	(lpshold): Ditto and other fixes

2002-09-22  Istvan Varga  <jpff@codemist.co.uk>

	* linevent.c: Added global_kcounter instead of kcounter

2002-09-21  John ffitch  <jpff@codemist.co.uk>

	* cs.h (GLOBALS_): Added global forms of ksmps etc

	* oload.c: Added initialisation

	* insert.h: New typedef INSTRNAME, OPCOD_IOBUFS, UOPCODE, XIN,
	XOUT, SETKSMPS

	* jpff_glue.c (csoundMessageS): New function like csoundMessageV
	but to stdout

	* main.c (install_signal_handler): Leave SIGALRM
	alone if FLTK in use
	(dribble_printf): Make it dribble, and use csoundMessageS to use
	stdout

2002-09-21  Istvan Varga  <jpff@codemist.co.uk>

	* cs.h (OPCODE, ENDOP): Added these and renumber

	* disprep.c (printv): print (int) p1 instead of insno (works
	better with user defined opcodes)

	* entry2.c: Added oscilikt, osciliktp and oscilikts

	* jpff_glue.c (MakeXYin): Arguments should be MYFLT

	* oscbnk.h: Added OSCKT and OSCKTP structures

	* oscbnk.c: various optimisations in oscbnk, grain2, and grain3
	minor bug fix in oscbnk
	new opcodes oscilikt, oscilikts, and osciliktp
	 bug fix in error checking code of all oscilikt opcodes

2002-09-20  John ffitch  <jpff@codemist.co.uk>

	* soundin.c (soundin): Generalise to <24 channels

	* soundio.h: Change r1 to r[0] etc in SOUNDIN

2002-09-18  John ffitch  <jpff@codemist.co.uk>

	* fgens.c (ftRESET): Free table space as well

	* rdorch.c (splitline): Generation of temporary labels was wrong in
	then/else

2002-09-17  John ffitch  <jpff@codemist.co.uk>

	* musmon.c (cleanup): Only close scfp if not already closed

	* express.c (express): Need to treat a(k) as a special case as
	well as i(k)

2002-09-16  John ffitch  <jpff@codemist.co.uk>

	* cwin.cpp (CArg::OnOrchestra): Promote use of unified files

2002-09-08  John  <jpff@codemist.co.uk>

	* express.c (express): Silly error of && replaced by || in
	precedence of | and #

	* ugmoss.c: Rounded conversions in and/or/xor/not

2002-08-30  John  <jpff@codemist.co.uk>

	* cwin.cpp (Run): Set O and cglob from O_ and cglob_

	* soundio.c: recopen and playopen changed to use float rather than
	MYFLT
	(sfopenin): Cast sr to (float) in call of recopen
	(sfopenout): and in recplay

2002-08-25  John  <jpff@codemist.co.uk>

	* soundin.c (soundin): Use an array for outputs rather than case
	statement.  Generalises but possibly slower

2002-08-24  John  <jpff@codemist.co.uk>

	* pvsanal.c (pvsynthset): Check size of buffers as well as existence
	(pvsanalset): Ditto

2002-08-21  John ffitch  <jpff@codemist.co.uk>

	* VERSION 4.21

	* cmath.c (ipow): Added normalisation and check for NaN
	(kpow): Check
	(apow): Check more complex here

2002-08-20  John ffitch  <jpff@codemist.co.uk>

	* fgens.c: Code for ftload, ftloadk, ftsave and ftsavek

	* entry2.c: Added ftload and ftsave

2002-07-21  John  <jpff@codemist.co.uk>

	* aops.c: added ink, outk, invalue, and outvalue opcodes

	* rdorch.c: added 'z' output type

2002-07-18  John  <jpff@codemist.co.uk>

	* Incorporated the API code which meant minor changes in ustub.h,
	winX11.c, oload.c, one_file.c, cs.h, cwindow.h, rt*.c, and other
	places.  main.c in all anal directory modified.

2002-07-18  John ffitch  <jpff@xenakis.codemist.co.uk>

	* rdorch.c:
	* otran.c:
	* insert.c (ingoto, kngoto, subinstrset,subinstr): New code from matt

	* insert.h (SUBINSR): new structure

	* soundio.c (longtran): fixed RWD bug that could result in
	overflows in some cases with positive out of range samples)

	* cs.h: removed definitions of "dv32768" variable that is no longer needed

	* cvanal.c (takeFFT):
	* hrtferX.c (hrtferxk):
	* grain4.c (grand, grainsetv4): bug in random code with incorrect scaling

	* oload.c (oload): removed code related to dv32768

	* pvanal.c (takeFFTs):
	* ugens3.c (adsyn): use dbfs_to_float instead of dv32768

	* ugens4.c: removed declaration of short_to_dbfs as it is not needed(Istvan)
	  (plukset, krand, arand, rhset, randh, riset, randi): fixed a
	  large number of RWD bugs, all related to 0dbfs scaling of 16 bit
	  random numbers (completely wrong); replaced all occurrences of
	  dv32768 with DV32768, and removed all DBFS code

2002-07-14  John  <jpff@xenakis.codemist.co.uk>

	* midiops.c (mctlset, maftset): fixed bugs in initialisation code (Istvan)


2002-07-13  John  <jpff@cage.codemist.co.uk>

	* soundin.c (dbfs_init): printing to stderr so as not to confuse
	-o stdout

2002-07-12  John  <jpff@cage.codemist.co.uk>

	* musmon.c: Printing of amplitudes done with new function
	print_maxamp including colour printing.. (Istvan)

	* ugens2.c (tabli): Fixed bug in no-wrap case
	(tabl3): Ditto

	* ugensa.c (newpulse, fogset): Ditto

	* ugens7.c (newpulse): Newpulse only if not iskip
	(fofset0): Skip lots of initialisation if iskip

	* ugensa.h (struct):
	* ugens7.h: Added iskip argument to FOFS and FOGS

	* pvoc.c:
	* midisend.c:
	* main.c (set_rt_priority):
	* dpwelib.h: FreeBSD case

	* aops.c (rtclock): Include <unistd.h> in Linux case

	* LINUXaudio.c (setsndparms): FreeBSD code

2002-07-10  John  <jpff@cage.codemist.co.uk>

	* oload.c (oload): Fencepost error in when to enlarge
	strsets vector

	* anal/convol/makef:
	* anal/convol/main.c: New files

	* anal/makef (cvl): Include compilation of cvanal stand-alone

2002-07-09  John  <jpff@cage.codemist.co.uk>

	* soundio.c (audwrt4): #ifdef'ed out as not used

2002-07-04  John ffitch  <jpff@xenakis.codemist.co.uk>

	* sread.c (sget1): Make failure to include an include file into a
	hard error using scorerr

	* rdorch.c (rdorchfile, rdorchfile): Allow {{ }} long strings
	(splitline):

	* sread.c (getscochar): Trap $ without a name (thanks to Maurizio)

	* ugens5.c: Make lprdadr flexible rather than 20 long
	(lpcRESET, lprdset, lpslotset, lpitpset):

2002-07-03  John  <jpff@cage.codemist.co.uk>

	* ugens6.c (a_k_set): New function

2002-07-02  John  <jpff@cage.codemist.co.uk>

	* dl_opcodes.c (csoundLoadAllOpcodes): Early exit if no libraries
	to load

2002-06-29  John  <jpff@cage.codemist.co.uk>

	* util2/envext/envext.c (main):

	* util2/mixer/extract.c (main):

	* util2/mixer/xtrct.c (main):

	* util2/mixer/mixer.c (main):

	* util2/scale.dir/scale.c (main):

	* util2/dnoise.dir/dnoise.c (main):

	* util2/dnoise.dir/srconv.c (main): Initialise dbfs stuff

2002-06-28  John  <jpff@cage.codemist.co.uk>

	* windin.c (xyinset):

	* wave-terrain.c (scanhinit, scantinit):

	* ugsc.c (resonzset):

	* ugrw2.c (krsnset): Return after initerror

	* ugrw1.c (zir): initerror->warning

	* uggab.c (rsnsety):

	* ugens5.c (rsnset, rsnsetx):

	* ugens1.c (evxset):

	* spectra.c (spdspset, spfilset):

	* schedule.c (lfoset):

	* scansynx.c (scsnux_init, scsnux_init, scsnsx_init):

	* scansyn.c (scsnu_init, scsns_init):

	* pitch.c (pinkset):

	* midiops.c (cpstmid, chctlset):

	* midiops2.c (midic7set): Return after initerror

	* follow.c (flwset): initerror replaced by warning as it can carry
	on here

	* disprep.c (fftset): Return after initerror

2002-06-27  John  <jpff@codemist.co.uk>

	* dumpf.c (kdmpset, kdmp2set, kdmp3set, kdmp4set, krdset)
	(krd2set, krd3set, krd4set): Return after initerror

2002-06-24  John  <jpff@cs.bath.ac.uk>

	* entry1.c: Changes arguments of vco to "xxikppovo"

2002-06-22  John  <jpff@cage.codemist.co.uk>

	* ustub.h (perferror): Added dummy definition

	* vpvoc.c (ktableseg, ktablexseg, voscili):

	* vdelay.c (vdelay, vdelay3, vdelayxw, vdelayxs, vdelayxws)
	(vdelayxq, vdelayxwq):

	* ugmoss.c (vcomb, valpass):

	* uggab.c (vibrato, vibr):

	* ugens9.c (convolve):

	* ugens8.c (pvoc):

	* ugens7.c (fof):

	* ugens6.c (delay, delayr, delayw, deltap, deltapi, deltapn)
	(deltap3, deltapx, deltapxw, comb, alpass, reverb, pan):

	* ugens4.c (buzz, gbuzz, pluck):

	* ugens3.c (foscil, foscili, adsyn):

	* ugens2.c (ktable, tablefn, ktabli, ktabl3, tabli, tabl3, kosc1)
	(kosc1i, osciln, koscil, osckk, oscka, oscak, oscaa, koscli)
	(osckki, osckai, oscaki, oscaai, koscl3, osckk3, oscka3, oscak3)
	(oscaa3):

	* spectra.c (noctdft, specdisp, specptrk, specsum, specaddm)
	(specdiff, specscal, spechist, specfilt):

	* spat3s.c (spat3d, spat3di):

	* spat3d.c (spat3d, spat3di):

	* space.c (space, spdist):

	* soundin.c (soundin):

	* sndwarp.c (sndwarp, sndwarpst):

	* pvinterp.c (pvbufread, pvinterp, pvcross):

	* pvadd.c (pvadd):

	* pitch.c (pitch, adsynt, hsboscil, pitchamdf, kphsorbnk)
	(phsorbnk, Fosckk, Foscak, Foscka, Foscaa, trnseg):

	* oscils.c (tablexkt):

	* oscbnk.c (oscbnk, grain2, grain3, rnd31k, rnd31a):

	* nlfilt.c (nlfilt):

	* hrtferX.c (hrtferxk):

	* grain.c (ags):

	* grain4.c (graingenv4):

	* disprep.c (kdsplay, kdspfft, tempest):

	* biquad.c (vco): initerror->perferror
	(nestedap): Ditto

2002-06-20  John ffitch  <jpff@xenakis.codemist.co.uk>

	* ugens1.c (linseg, kxpseg, expseg, knvlpx, envlpx): Should use
	perferror rather than initerror, and return

2002-06-17  John  <jpff@cage.codemist.co.uk>

	* Removed tabs and trailing spaces throughout (again)

2002-06-15  John  <jpff@cage.codemist.co.uk>

	* csdl.h: New file to be used in dynamic libraries

	* dl_opcodes.c (csoundLoadAllOpcodes): New code for Linux to load
	dynamic libraries.

	* main.c (create_opcodlst): Call csoundLoadAllOpcodes in any case

	* argdecode.c (decode_long): make static, and add opcode-lib= option

2002-06-13    <jpff@cs.bath.ac.uk>

	* scansynx.c (scsnsmapx): New code

2002-06-10  John  <jpff@cage.codemist.co.uk>

	* oload.c: Initialisation of tran_0dbfs was in wrong place

	* window.c: Initialise exitFn to NULL
	(dispexit): More checking -- to deal with case when no exitFn

	* one_file.c (deleteOrch): make global

	* main.c (remove_plname): make global (was static)
	(remove_scnam): ditto

	* entry2.c: Initialisation method for linevent

2002-06-01  John  <jpff@cage.codemist.co.uk>

	* VERSION 4.20

	* midiops.c (pchmidib): Same for pitchbend_value expansion

	* linevent.c (RTLineset): Local copy of Linepine to avoid OSX
	compiler bug

	* rdscor.c (flushline): Get local copy of scfp as mac OSX compiler
	has a bug in getc/macro expansion
	(scanflt): Ditto
	(dumpline): Ditto
	(rdscor): Ditto

	* wave.c (write_wavpeak): different scale if 0DBFS

	* vpvoc.c (vpvset): different scale if 0DBFS

	* ugens8.c (pvset): different scale if 0DBFS

	* ugens4.c: (arand, krandh, randh, krandi, randi): different scale
	if 0DBFS

	* ugens3.c (adsyn, adsyn): different scale if 0DBFS

	* soundio.c:
	(shortran, longtran, floatran, int24ptran, shortrecv, longrecv)
	(floatrecv): different scale if 0DBFS

	* soundin.c: (getsndin, soundin): different scale if 0DBFS

	* rdorch.c (argtyp, argtyp): different scale if 0DBFS

	* pvxanal.c (chan_split): different scale if 0DBFS

	* pvinterp.c (pvinterpset, pvcrossset): different scale if 0DBFS

	* pvanal.c (pvanal): different scale if 0DBFS

	* pstream.c (pvx_loadfile): different scale if 0DBFS

	* pitch.c: different scale if 0DBFS

	* otran.c (tranRESET, otran, plgndx): different scale if 0DBFS

	* oload.c: (oloadRESET, oload): different scale if 0DBFS

	* main.c: (MAIN): different scale if 0DBFS

	* lpanal.c (lpanal): different scale if 0DBFS

	* hrtferX.c (hrtferxk): different scale if 0DBFS

	* hetro.c (hetro, writesdif): different scale if 0DBFS

	* grain4.c (grainsetv4, grand): different scale if 0DBFS

	* diskin.c: (sreadinew, sndwrt1, sndwrtu)
	(sndwrt2rev, sndwrt2, sndwrt3, sndwrt3rev, sndwrt4rev, sndwrt4):
	different scale if 0DBFS

	* cvanal.c (takeFFT): different scale if 0DBFS

	* aops.c (dbfsamp): different scale if 0DBFS
	(ampdbfs, aampdbfs):

	* aiff.c (write_aiffpeak): scale peak chunk

	* physutil.h: dbfs_to_float

	* cs.h: Declare e0dbfs, dbfs_to_float
	tran_0dbfs in cglob

2002-05-30  John  <jpff@cage.codemist.co.uk>

	* linevent.c: Changes from matt

	* opcode.h: new file

	* opcode.c: Internal reorganisation from matt

	* entry2.c: New opcodes midinoteoff, midinoteonkey, midinoteoncps,
	midinoteonoct, midinoteonpch, midipolyaftertouch, midicontrolchange,
	midiprogramchange, midichannelaftertouch, midipitchbend, mididefault

	* midiinterop.c:
	* midiinterop.h: New code, from Michael Gogins with some changes

2002-05-21  John  <jpff@cage.codemist.co.uk>

	* midirecv.c (m_chanmsg): reset aftertouch
	(m_chanmsg): Use mapping array
	(FMidiOpen): Additional check for null channel

	* midiops.c (midichn, pgmassign): New code

	* entry2.c: new opcodes midichn, pgmassign, scantable, scanhammer

	* wave-terrain.c (scanhinit): New code
	(scantinit, scantPerf): Also new code

2002-05-21  John ffitch  <jpff@xenakis.codemist.co.uk>

	* filopen.c (catpath): use characters rather than strings

	* pvfileio.c (pvoc_openfile): added search of SADIR if not a full
	path and not in current directory

2002-05-17  John ffitch  <jpff@xensakis.codemist.co.uk>

	* oscils.c (tablexkt): Function corrected in cubic interpolation
	case, and strings updated

	* midirecv.c (m_chinsno): Missing argument in printf added
	(FMidiOpen): Allow Format 1 with single track

2002-05-15  John ffitch  <jpff@cage.codemist.co.uk>

	* clfilt.c: New version with more cases

2002-05-05  John  <jpff@codemist.co.uk>

	* physmod.c (clarinset): p->v_time should be initialised
	(clarinset): amp is not know at init time so do it all on first
	cycle


2002-04-30  John  <jpff@codemist.co.uk>

	* entry2.c: Added clfilt opcode

	* fft.c (fftRESET): New function to clear lroot

	* disprep.c (disprepRESET): New function to clear fftcoefs

2002-04-28  John  <jpff@codemist.co.uk>

	* entry2.c: Added xscanmap opcode

	* scansynx.h (struct PSCSNMAPX): New struct

	* scansynx.c (scsnmapx_init, scsnmapx): New code for xscanmap
	(scsnux_hammer): Add XALL and correct code

2002-04-27  John  <jpff@codemist.co.uk>

	* argdecode.c (argdecodeRESET): New function to reset static
	stdinassgn

	* main.c (mainRESET): Added argdecodeRESET

	* fgens.c (gen30): Replaced with new version from Istvan

2002-04-21  John  <jpff@codemist.co.uk>

	* sndinfUG.c (filepeak): Ensure channel is properly rounded

	* pvfileio.c (pvoc_getframes): Add setting of rc to nframes in
	bytereverse case

	* midiout.c (release_set): No need to check MIDIoutDone

	* main.c (MAIN): Check for null scorename or empty string

	* dnoise.c (dnoise): various changes to mill_macintosh stuff

	* argdecode.c: Message 1704 was wrong in source

	* aifc.c:
	* aiff.h: Change name of ApplicationSpecificChunk to
	AIFFAppSpecificChunk (avoiding mac problems

2002-04-17  John ffitch  <jpff@codemist.co.uk>

	* otran.c (insprep): Assignment to ngotos was unnecessary

2002-04-04  John  <jpff@codemist.co.uk>

	* diskin.c (sndwrtf): 32/64 float problem fixed (Istvan)
	(sndwrtfrev): Ditto

2002-04-01  John  <jpff@codemist.co.uk>

	* pitch.c (Fosckk, Foscak, Foscka, Foscaa): New experimental code
	for oscil without power-of-two

2002-03-31  John  <jpff@codemist.co.uk>

	* everywhere: glob -> cglob as it clashes on MacOSX

2002-03-29  John  <jpff@codemist.co.uk>

	* sread.c (sget1): Must not call flushlin after #include

2002-03-28  John  <jpff@codemist.co.uk>

	* VERSION 4.19

	* midirecv.c (m_chanmsg): Removed code relating to non-functioning
	sysex

2002-03-26  John  <jpff@codemist.co.uk>

	* soundin.c (getsndin): Various incorrect MYFLT changed to float
	(getsndin): twice

2002-03-24  John  <jpff@codemist.co.uk>

	* biquad.c (vcoset): Changes from Hans
	(vco):

	* vbap_sixteen.c (vbap_SIXTEEN): removed references to p->counter
	as never given a value

	* vbap_four.c (vbap_FOUR_moving): Correct typo

2002-03-23  John  <jpff@codemist.co.uk>

	* oscbnk.c (grain2): Whole function replaced (istvan)

2002-03-19  John  <jpff@codemist.co.uk>

	* fgens.c (gen33,gen34): New gens

2002-03-18  John  <jpff@codemist.co.uk>

	* entry2.c: Make second argument of vcomb and valpass an x-rate

	* fgens.c: Interpolation in gen18

	* ugmoss.c: Revised code from pete moss

2002-03-13  John  <jpff@codemist.co.uk>

	* entry2.c: Added terrain opcode

	* wave-terrain.h:
	* wave-terrain.c: New file

2002-03-12  John  <jpff@codemist.co.uk>

	* midiops2.c (midic7):
	* insert.c (turnoff): rename curip to lcurip to avoid macro problems

	* cmath.c: holdrand moved to glob structure

	* ugens3.c: All over loscal -> LOSCAL

	* cs.h (LOSCAL): Defined as a constant

2002-03-11  John  <jpff@codemist.co.uk>

	* argdecode.c (longusage): New function
	(decode_long): Complete all options

2002-03-10  John  <jpff@codemist.co.uk>

	* pitch.c (isense): Now works in unix case

	* vbap_zak.c (vbap_zak_moving, vbap_zak): Off by one?
	(vbap_zak_init): Initialisation of gains vectors was wrong

	* vbap_eight.c (vbap_EIGHT_init): Change malloc to auxalloc, and
	adjust structure.  Also use 'natural' output addresses
	(vbap_EIGHT_moving_init): Ditto

	* Ditto for vbap_four and vbap_sixteen

2002-03-09  John  <jpff@codemist.co.uk>

	* cs.h: Define GLOBALS
	(onept, log10d20): made macros

	* main.c: Deploy a globals structure

2002-02-26  John ffitch  <jpff@weir>

	* rdorch.c (getoptxt): Another fix in z,y,Z type arguments which
	affected event opcode (matt)

	* musmon.c (musmon): Correct editing error in ~MacClassic case

2002-02-21  John ffitch  <jpff@cs.bath.ac.uk>

	* sfont.c (fill_SfPointers): Add a skip for unknown chunks

2002-02-19  John  <jpff@codemist.co.uk>

	* argdecode.c (argdecode): Changed -- to -O and started to add
	--long options

2002-02-17  John  <jpff@codemist.co.uk>

	* sread.c (getscochar, sread): Adjust str if inputs changes

	* argdecode.c (argdecode): ignore --sched option
	* main.c (set_rt_priority): New code for Linux scheduling (Istvan)

2002-02-16  John  <jpff@codemist.co.uk>

	* rdorch.c (getoptxt): Allow name translation on answerless opcodes

	* musmon.c (musmon):
	* main.c (MAIN): Added BETA message if appropriate

	* rdorch.c (getoptxt): Allow more x-rate arguments (why not?)

	* soundio.c (sfopenout): Typo in->out in PIPE code, and added
	modification of AIFC type to IRCAM

2002-02-15  John  <jpff@codemist.co.uk>

	* fgens.c (gen12): Change name from gen22 at Gabriel's request

	* ugens4.c (pluck): Wrong error message (X_1478->X_1480)

	* sfheader.c (readheader): Clear the hdr structure before use

	* cwin.cpp (cwin_exit): Call _exit rather than exit

	* musmon.c (musmon): Change to setting of O.inbufsamps, now from
	O.oMaxLag

2002-02-14  John  <jpff@codemist.co.uk>

	* VERSION 4.18

	* cwin.cpp (OnMIDI): Added dialog and new class to deal with MIDI
	Not yet complete

	* ugmoss.c (dconv): i was not initialised

	* rdorch.c (splitline): C-comment fails if */ is at beginning of
	a line

2002-02-13  John  <jpff@codemist.co.uk>

	* rtwin32.c: Fixes from RWD to separate in and out devices

	* rdorch.c (rdorchfile):
	* sread.c (sread): Changes so nesting of #include is unlimited

2002-02-12  John  <jpff@codemist.co.uk>

	* pvdlg.cpp (DoDataExchange): Remove incorrect frame-size test

	* ugens4.c (riset): Typo (p->rand<1) should be (p->rand<<1)
	(riset): Also an else missing
	(riset): Rewrite clock/old initialisation

2002-01-31    <jpff@codemist.co.uk>

	* sfont.c (ChangeByteOrder): reverse bytes in MACOSX, and a number
	of bugs fixed in this one function

	* entry2.c: Added oscils, lphasor, tablexkt  opcodes

	* oscils.c, oscils.h: new files

2002-01-30    <jpff@codemist.co.uk>

	* oscbnk.c: small changes all over

	* oscbnk.h: Some fields removed

	* spat3d.c (spat3d_init_wall): Revisions from Istvan
	(spat3d_wall_perf):  and many others

	* spat3d.h: New fields

2002-01-26    <jpff@codemist.co.uk>

	* cs.h (PMAX): Increased to 1000, which will waste some space.....

	* oload.h (GVBAS): Redefine as VBAS + PMAX as in comment

	* fgens.c (FTPMAX): Increased to 150

	* insert.c (orcompact): Call doadr if exixts

	* cscrorfns.c, express.c, fgens.c, insert.c, main.c, memalloc.c,
	musmon.c, oload.c, otran.c, rdorch.c, soundin.c, ugens3.c,
	ugens5.c, ugrw1.c: Made RESET code into mainstream

	* sfont.c (SoundFontLoad): Arcane bug fix in threaded activity

	* window.c (dispkill): Protect against no kill fn

	* getstring.c (init_getstring): SSOUND fix

	* argdecode.c (usage): In reentrant case do not die

	* musmon.c (musmon): External MIDI again
	Make kcnt externally visible

	* midirecv.c (csoundDefaultMidiOpen): New code for SSOUND
	(sensMidi): Allow user-defined MIDI input in SSOUND

	* memalloc.c (mfree): Check is all is NULL first (Michael)

	* main.c: Main main into MAIN and define macros for it to simplify
	going around

	* filopen.c (die): IN SSOUND case throw message

	* fgens.c (ftRESET): Revised for SSOUND (Michael)
	(gen22): Renamed from gen18 as that was misleading!

	* cscorfns.c (cscoreRESET): Fixes from Michael Gogins

	* cs.h: Added deinit field to OPDS and OENTRY

2002-01-22    <jpff@codemist.co.uk>

	* filopen.c: undef tell macro before using <unix.h> on mac

	* sndinfUG.c (filelen): Use aydsize field of p
	(getsndinfo): and set this field
	(getsndinfo): New code to look at -i file on command line

	* sndinfUG.h (struct): Added audsize to structures

	* sysdep.h (SYS5): Define in macintosh case

	* soundio.c (iotranset): Added check for rtplay in AE_FLOAT case

	* main.c (main):  mill_macintosh -> mac_classic

	* linevent.c (RTLineset): mac_classic case needs setvbuf call
	(RTclose): similar

	* cs.h (POLL_EVENTS): Corrected mac optional stuff

2002-01-20    <jpff@codemist.co.uk>

	* sread.c (operate): Added bitwise operations
	(getscochar): Added bit operations to [], possibly wrong precedence?

	* gets.r: Added new strings and corrections

	* rdorch.c (getoptxt): Decoding or y z and Z arguments changed
	(intyperr): Additional argument for expected type

2002-01-13    <jpff@codemist.co.uk>

	* ugmoss.c (not_k, not_a): New code

	* fgens.c (hfgens):
	(fgens): Remove message about increasing number of tables

	* scansynx.c (scsnux_init): Add range check

2002-01-11    <jpff@codemist.co.uk>

	* ugens6.c (cmbset): Initialise p->coef to zero

2002-01-08    <jpff@codemist.co.uk>

	* entry2.c: Added opcode vcomb, valpass and ftmorf

	* ugmoss.h: New structures for new code

	* ugmoss.c (dconv): Code revised and optimised (Pete)
	(and_kk, and_kk, and_aa, and_ak, and_ka, or_kk, or_aa, or_ak)
	(or_ka, xor_kk, xor_aa, xor_ak, xor_ka): New functions for bit
	arithmetic
	(vcombset, vcomb, valpass, ftmorfset, ftmorf):  New code

	* fgens.c (gen18): New GEN from Pete Moss

2002-01-06    <jpff@codemist.co.uk>

	* VERSION 4.17

	* fgens.c (ftRESET): clear ftevt as well
	(ftgen): Allow gens 23 and 28 in ftgen opcode with strings

	* util2/mixer/extract.c (main):
	* util2/mixer/xtrct.c (main):
	* util2/mixer/mixer.c (main):
	* sysdep.h:
	* dpwelib.h:
	* pvoc.c:
	* pvanal.c (pvanal):
	* musmon.c (musmon):
	* main.c (main):
	* lpanal.c:
	* linevent.c:
	* filopen.c (isfullpath):
	* dsputil.c:
	* midirecv.c: Removed ZPC options

2002-01-05    <jpff@codemist.co.uk>

	* rdorch.c (getoptxt): Gabriel's (?) typo corrected

	* aops.c (ftchnls): added code for same
	* entry1.c: added opcode ftchnls

2002-01-01    <jpff@codemist.co.uk>

	* aops.c (cpsoctinit):
	* fgens.c (gen11):
	* physmod.c (BowTabl_lookup):
	* ugens7.c (newpulse):
	* ugensa.c (newpulse):
	* ugsc.c (phaser2): Use intpow function

	* ugens4.c (buzz): Minor optimisation
	(gbuzz): also minor optimisations
	(gbuzz): Use version of pow for integers, as should be faster

2001-12-31    <jpff@codemist.co.uk>

	* insert.c (infoff): Revised code from Gabriel for delaying off
	event during release

	* fgens.c (gen32): New gen (Istvan)

2001-12-27    <jpff@codemist.co.uk>

	* schedule.c (ktriginstr): From re to make initialisation in
	score order

2001-12-25    <jpff@codemist.co.uk>

	* scansyn.c: pinterp was plain wrong

2001-12-22    <jpff@codemist.co.uk>

	* entry2.c: Added k-rate active opcode

	* scansyn.c (scsnu_init): Space was wrong size in PHASE_INTERP !=
	3 case.

	* entry2.c: Added event opcode (is it needed?)

	* linevent.c (eventOpcode): New code from matt

	* musmon.c (playevents): Revised code from rasmus

2001-12-21    <jpff@codemist.co.uk>

	* musmon.c (playevents): Fixed another memory leak (re)
	(playevents): and reorganisation
	(sensevents): Same fixes

2001-12-19    <jpff@codemist.co.uk>

	* entry1.c: parsing of tablew was wrong in that it failed to check
	k- and a-rate versions.  Same for tablewkt

	* main.c: Include <string.h>

	* scansyn.c (listadd): The list of instances was not used properly.

2001-12-16    <jpff@codemist.co.uk>

	* spat3d.c (spat3di): Check for depth should be against maxdep not
	mindep

	* otran.c (otran): Reworked default sr/kr/ksmps code

	* oload.c: Initialise esr etc from trans_sr etc so defaults work

2001-12-14    <jpff@codemist.co.uk>

	* pvanal.c (pvanal):
	* lpanal.c (lpanal):
	* hetro.c (filedump, writesdif):
	* fout.c (outfile_set, koutfile_set, fiopen, kinfile_set)
	(i_infile):
	* sfont.c (SoundFontLoad): Removed code which changed access
	options for sfont files and others as it seems totally wrong
	to me.

2001-12-12    <jpff@codemist.co.uk>

	* musmon.c (sensevents): Free memory in schedule case
	(playevents): Ditto

2001-12-11    <jpff@codemist.co.uk>

	* sfont.c (SoundFontLoad): In access stuff after looking in SSDIR
	and SFDIR the check should be on pathnam.  Still not sure why it
	does this!

2001-12-09    <jpff@codemist.co.uk>

	* VERSION 4.16

2001-12-08    <jpff@codemist.co.uk>

	* main.c (signal_to_string): Not for OSX

2001-12-07    <jpff@codemist.co.uk>

	* fgens.c (besseli): #define out
	* pvxanal.c (besseli): use this version

2001-12-06    <jpff@cs.bath.ac.uk>

	* musmon.c (fillbuffer): Fix to allow scheduled events (matt)

2001-12-05    <jpff@codemist.co.uk>

	* fgens.c (besseli): Do all calculation in doubles as the MYFLTs
	were a delusion.

	* pvxanal.c (pvxanal): Check for all versions of .pvx wrt case

	* ugens1.c (klnseg): Rewrite to avoid rounding error, but at a
	cost

2001-12-04    <jpff@cs.bath.ac.uk>

	* cwin.cpp (cwin_args): Remove zapping of O.outformat

	* ugens8.c: corrected reading of pvocex files for multiple notes
	(RWD)

	* soundio.c: Added floating noscasler and better checking

2001-12-01    <jpff@codemist.co.uk>

	* sread.c (sread): Added x to score language

	* ugens1.c (xdsrset): Make last segment very long

	* pvlook.c (pvlook): Added calls to POLL_EVENTS

	* vpvoc.c (vpvoc): initerror should be perferror

	* ugrw1.c (zkr): Call warning rather than perferror

	* uggab.c (trig):
	* ugensa.c (fog):
	* ugens7.c (fof): return needed after perferror

	* ugens5.c (lpread): initerror should be perferror
	(lpinterpol): initerror should be perferror
	(lpread): return needed after perferror

	* singwave.c (make_Modulatr, make_SingWave):  Returns
	after perferror and also make make_Modulatr return a 1 if it failed

	* ugens4.c (pluck):
	* ugens1.c (knvlpx):
	* pitch.c (macset):
	* physmod.c (clarinset, fluteset, bowedset, brassset):
	* modal4.c (make_Modal4, marimbaset, vibraphnset, agogobelset):
	* mandolin.c (mandolinset): return needed after perferror

	* fm4op.c (make_FM4Op, FM4Op_loadWaves, tubebellset, rhodeset)
	(wurleyset, heavymetset, b3set, FMVoiceset, percfluteset): Returns
	after perferror and also make FM4Op_loadWaves return a 1 if it failed.

	* aops.c (cpstun_i, cpstun, inz): return needed after perferror

	* ugens1.c (adsrset1): Change test for empty segment to <= 0 from <

2001-11-21    <jpff@codemist.co.uk>

	* winEPS.c: Minor fix for Irix6.5

	* musmon.c: Reorganisation from matt to allow external calling

2001-11-20    <jpff@codemist.co.uk>

	* soundio.c: Arg to open should not have b option

2001-11-19    <jpff@codemist.co.uk>

	* fgens.c: New gens 30 and 31 (Istvan)

	* soundin.c (sndgetset): Count was off-by-one in skipping

	* cvanal.c (takeFFT): Do not normalise raw or IRCAM formats

2001-11-18    <jpff@codemist.co.uk>

	* oscbnk.c (grain2set): New code
	(grain2, grain3set, grain3, rnd31set, rnd31i, rnd31k): New code (Istvan)

	* ugens6.c (deltap3): As below

	* vdelay.c (vdelay3): Optimisations from Istvan

	* *ALL OVER* introduce mac_classic and mills_macintosh macros

	* winEPS.c (PS_MakeGraph): Deal file file directory separator

	* soundio.c (sfopenout): Simplify last case

	* rtmacintosh.c (rtclose): Remove code marked HACK

	* pvoc.c: Use sysdep.h rather than special code

	* pvfileio.c: change write(files[ofd]->fd,(const char*)&... to
	write(files[ofd]->fd,(char*)&.... to compile on Mac

	* getstring.c (getstring): More cautious test for strings

2001-11-16  John ffitch  <jpff@weir>

	* ugsc.c (svf): if provided Q is too small force to 1
	(svf): Optimise code

2001-11-14  John ffitch  <jpff@weir>

	* soundio.c (sfopenout): Added IRCAM format to 3:2000 case

2001-11-11    <jpff@codemist.co.uk>

	* sfont.c (SoundFontLoad): Extensive rewrite so it looks in
	multiple directories.

	* filopen.c: make ssdirpath and sfdirpath external

2001-11-10  John ffitch  <jpff@weir>

	* biquad.c (moogvcf): check max is acceptable; if zero make 1

2001-11-07    <jpff@codemist.co.uk>

	* ugrw1.c (zakRESET): New function (Gabriel)

	* main.c (mainRESET): Added zakRESET

	* sfont.c: Corrected various constants

	* ugsc.c (resonr): Improved speed by using immediate variables
	rather than indirect.
	(resonz): ditto

2001-11-04    <jpff@codemist.co.uk>

	* sread.c (sread): Remove call to extend_nxp after label again as
	it was wrong.  Allow salcblk to do this safely

2001-10-29    <jpff@codemist.co.uk>

	* biquad.c (rezzy): Protect filter if rez is zero

	* sread.c (getpfld): if ( = ) should have been if ( == )
	(getpfld): twice

2001-10-22    <jpff@codemist.co.uk>

	* sread.c (sget1): Apparent off-by-one error in macro args fixed
	(expand_nxp): Should be mcalloc rather than mmalloc
	(salcinit): Ditto

2001-10-20    <jpff@codemist.co.uk>

	* sfont.c (SoundFontLoad): Improved error message when failing to open

2001-10-13    <jpff@codemist.co.uk>

	* pvfileio.c (pvoc_updateheader): Change variable pos to signed

2001-10-07    <jpff@codemist.co.uk>

	* cwin.cpp: Added BUTTON_DAC and supporting functions

	* oscbnk.h (OSCBNK_PHS2INT): Revised definition to improve phase
	calc (Ivan)

2001-10-06    <jpff@codemist.co.uk>

	* fgens.c: Extend fgen table to 42
	(gen24, gen40, gen41, gen42): New code

	* uggab.c (ikRangeRand, aRangeRand, randomi_set, krandomi)
	(randomi, randomh_set, krandomh, randomh, random3_set, random3)
	(random3a): New Code

	* entry2.c: Added opcode cuserrnd and function urd

	* uggab.c (ikDiscreteUserRand, aDiscreteUserRand)
	(ikContinuousUserRand, aContinuousUserRand): New code

2001-10-01    <jpff@codemist.co.uk>

	* uggab.c (jitters_set, jitter_set, jitter2_set): Added
	initialisation of p->phs

	* pvread.c (pvreadset):
	* ugens8.c (pvset): Added additional checks (RWD)

2001-09-29    <jpff@codemist.co.uk>

	* VERSION 4.15

	* getstring.c (getstring): Added a second argument to be the
	default string
	(init_getstring): Allow null db

	* aops.c (cpstun_i, cpstun): New functions

	* oscbnk.h:
	* oscbnk.c: New code

	* entry2.c: Added oscbnk

	* spat3d.c (spat3d): Corrected mindep to maxdep (Istvan)

	* uggab.c (jitter2_set, jitter2, jitter_set, jitter, jitters_set)
	(jitters, jittersa): New code from Gabriel

	* uggab.h: Added JITTER, JITTER2 and JITTERS

	* cmath.c (seedrand): Added holdrand to remember last random
	number (for vibrato)

	* entry2.c: Added vibrato and vibr; jitter, jitter2, jspline

	* uggab.c (vibrato_set, vibrato, vibr_set, vibr): New code from Gabriel

	* uggab.h: Added VIBRATO and VIBR

2001-09-02    <jpff@codemist.co.uk>

	* schedule.c (triginset): Added code from re to enable proper
	i-time operation
	(ktriginstr): and enable deferred-action instrument turnoff

2001-08-31  John ffitch  <jpff@weir>

	* biquad.c (biquada): New code

	* entry1.c: Added biquada opcode

2001-08-26    <jpff@codemist.co.uk>

	* cwin.rc: Correct layout

	* ugens1.c (adsrset1): Clear out space if not skipping init

	* musmon.c (gettempo): New function
	* midiops.h (struct GTEMPO):
	* entry2.c: Add tempoval opcode

2001-08-25    <jpff@codemist.co.uk>

	* pvanal.c (pvanal): Allow .pvx, .Pvx etc

	* soundio.c (int24ptran): Need to output 0/1/2 or 1/2/3 depending
	on endianness

	* argdecode.c: Add declaration of readOptions

	* vdelay.c (reverbx_set): The division by esr was not assigned

	* entry1.c: Entry for soundin had 4 too few m's

2001-08-20    <jpff@codemist.co.uk>

	* pvxanal.c (pvxanal): Add total_sampsread

	* main.c (main): Call init_pvsys to be sure

2001-08-19    <jpff@codemist.co.uk>

	* VERSION 4.13 (yes i know should have been 4.14)

	* uggab.c (lpshold, loopseg, loopseg_set): New code

	* mxfft.c:
	* pvxanal.c:
	* pvsanal.c:
	* pstream.c
	* pvfileio.c: New code

	* memalloc.c: changes to avoid potential memory leaks

	* memfiles.c (find_memfile): New function
	(add_memfil): new function

	* sndinfUG.c (filelen): Handle pvoxex files
	(filepeak): Handle peak-chunks in all formats
	(anal_filelen): New function

	* ugens8.h: Added fields frInc and chans to PVOC structure

	* ugens8.c: Support for pvocex
	(pvset): Ditto
	(pvoc): Concern about memory leak
	(pvx_loadfile): New function

	* pvread.c (pvocex_loadfile): New function
	Support for pvocex files
	(pvreadset): Ditto

	* pvanal.c: Added pvstream stuff

	* entry2.c: Added opcodes =_f, pvsanal, pvsynth, pvsadsyn,
	pvscross, pvsfread, pvsmaska, pvsftw, pvsftr, pvsinfo

	* rdorch.c (argtyp): Allow f type, and simplify code
	(getoptxt): Ditto
	(intyperr): Ditto

	* otran.c: Added pvstreaming; include pstream.h, new variables
	lclpcnt and lclnxtpcnt
	(otran): Initialise lblnxtpcnt
	(otran): set in ip structure
	(insprep): Initialise lplnxtcpcnt
	(lclnamset): Recognise f variables
	(lcloffndx): ditto

	* cs.h: filename array larger in MEMFIL
	new field lblpcnt in INSTRTXT

2001-08-17    <jpff@codemist.co.uk>

	* soundio.c:
	* midirecv.c:
	* linevent.c: Added MACOSX case

2001-08-14    <jpff@codemist.co.uk>

	* entry1.c: Added deltapx and deltapxw opcodes

	* ugens6.h: Structures for deltap

	* ugens6.c (tapxset, deltapx, deltapxw): New functions

	* vdelay.c: patches from Istvan

	* entry2.c: Added spat3d. spat3di and spat3dt

	* spat3d.h:
	* spat3d.c: New code

2001-08-13    <jpff@codemist.co.uk>

	* bbcut.h:
	* bbcut.c: New code

	* entry2.c: Added bbcut opcodes

2001-08-08  J P Fitch  <jpff@maths.bath.ac.uk>

	* midirecv.c (sensMidi): Stupid typing error lost MIDI on Mac
	(Thanks to matt pointing this out)

2001-08-01    <jpff@codemist.co.uk>

	* oload.c (oload): Changed test for integer overflow to unsigned short

	* express.c:
	* otran.c: Removed (commented out) various messages about
	extending pools etc

2001-07-14  John ffitch  <jpff@weir>

	* ugens4.h: New field in GBUZZ to remember last

	* ugens4.c (gbuzz): Remember last value to get sign of small denom
	case right
	(gbzset): Initial last to +1

2001-07-01    <jpff@codemist.co.uk>

	* makedb.c:
	* getstring.c:
	* Makefile: Changed extension from .txt to .xmg to avoid
	confusions

2001-06-18    <jpff@codemist.co.uk>

	* soundin.c (sndgetset):
	(sndinset): Use the field

	* soundio.h: Added a datapos field to SOUNDIN

	* lowpassr.h: Added data for recalculation avoidance

	* lowpassr.c (lowpr): Recalculate coefficients only if there has
	been a change
	(lowprx): Ditto

2001-06-14    <jpff@cage.codemist.co.uk>

	* wave.c:
	* soundio.h:
	* soundio.c:
	* soundin.c (getstrformat, getsizformat, bytrev3, sndgetset)
	* sndinfUG.c (filelen, getsndinfo):
	* sfheader.c (readheader): 24bit support

	* diskin.c (sngetset, newsndinset, soundinew, sndwrt3)
	(sndwrt3rev, sndwrtfrev, sndo1set, sndo1set): 24bit support and
	bug fixes

	* cwin.cpp (class CArg, OnInitDialog):
	* cvanal.c (takeFFT):
	* argdecode.c (argdecode):
	* aiff.c (aiffReadHeader): Added 24bit support
	(write_aiffpeak): Ditto

2001-06-06  J P Fitch  <jpff@maths.bath.ac.uk>

	* fout.c (infile_set): Bug fix from Gabriel

2001-05-26    <jpff@cage.codemist.co.uk>

	* ugens8.c (pvset): Remember value of mfp which seemed to be
	missing

2001-05-24    <jpff@cage.codemist.co.uk>

	* soundin.c: Add n-channel support message, and change t0 input
	from upto 24 channels.

	* soundio.h: Changes to SOUNDIN structure to match

	* english-strings: new string 1556

2001-05-20    <jpff@cage.codemist.co.uk>

	* vpvoc.c (vpvset):
	* ugens9.c (cvset):
	* ugens5.c (lprdset):
	* ugens3.c (adset):
	* soundin.c (sndgetset):
	* sndinfUG.c (getsndinfo):
	* pvread.c (pvreadset):
	* pvinterp.c (pvbufreadset, pvinterpset):
	* pvadd.c (pvaddset):
	* diskin.c (newsndinset, sndo1set):
	* OSC-sock.c (osc_send_set):
	* ugens8.c (pvset): Fence post.  Need to check <= to use strset.

2001-05-18    <jpff@cage.codemist.co.uk>

	* fgens.c (gen01raw): No need to check p->channel greater than
	ALLCHNLS with new value of that variable

	* cs.h (ALLCHNLS): redefined as 0x7fff which is maximum positive

2001-05-15    <jpff@cage.codemist.co.uk>

	* dnoise.c: Merge back macintosh changes

	* babo.c (bround): changed name to avoid macintosh problems

2001-05-12    <jpff@broom.codemist.co.uk>

	* perf.c (InitSioux): Make title string a Pascal string

2001-05-09    <jpff@cage.codemist.co.uk>

	* pvanal.c (pvanal): Added -H option to control window type
	(Hamming/hanning)
	(takeFFTs): Use window type from variable WindowType

2001-05-05    <jpff@cage.codemist.co.uk>

	* VERSION 4.13

	* dnoise on macintosh fixed etc

	* argdecode.c (argdecode): Added -@ option to read command line
	from a file, using readOptions from csd format

2001-05-04    <jpff@cage.codemist.co.uk>

	* linevent.c (sensLine): read may have got more than one line.
	Fix due to Timo Thomas

2001-05-03    <jpff@cage.codemist.co.uk>

	* memfiles.c (LoadFile): Remove unused argument foo
	(ldmemfile): and in call

	* pvoc.c (PVReadFile): Remove function as seems unused

2001-05-01    <jpff@cage.codemist.co.uk>

	* soundio.c (sfopenout): Added /dev/dsp as a synonym for dac on
	GNU/Linux

2001-04-18    <jpff@cage.codemist.co.uk>

	* vdelay.c (vdelay): Ensure delay line is 1 longer for safety

2001-04-14    <jpff@cage.codemist.co.uk>

	* pitch.h (struct PFUN): and structure

	* pitch.c (pfun): New function

	* entry2.c: Added p() function

2001-04-08    <jpff@cage.codemist.co.uk>

	* insert.c: Declaration of opcodlst was wrong; make OENTRY*

	* vdelay.c (reverbx_set): Rewrote memory allocation to avoid
	nested auxch as that does not work
	(reverbx): and change usage in here

2001-04-07    <jpff@cage.codemist.co.uk>

	* vdelay.c (reverbx_set): Increase size of auxalloc call as it was
	too small.

2001-04-03    <jpff@cage.codemist.co.uk>

	* one_file.c (readOptions): Move the argv++ to after the tracing;
	and then remove totally as it is wrong

2001-03-25    <jpff@cage.codemist.co.uk>

	* VERSION 4.12

	* hetro.c (hetro): Need %lf in case 'M' as it is double (thanks to
	Jim Croson)

2001-03-20  J P Fitch  <jpff@maths.bath.ac.uk>

	* vdelay.c (vdelayxw,vdelayxws,vdelayxwq): Modifications from Ivan

2001-03-18    <jpff@cage.codemist.co.uk>

	* rtwin32.c (recopen): Typing error (OUT instead of IN) corrected
	(thanks to Bobby McNulty Junior)

2001-03-06    <jpff@cage.codemist.co.uk>

	* vdelay.c: Added opcodes

	* entry1.c: Added opcodes vdelayxwq, vdelayxws, vdelayxw,
	vdelayxq, vdelayxs and vdelayx

	* soundio.h:
	* sfheader.h: Ircam format should be float (not MYFLT)

2001-03-04    <jpff@cage.codemist.co.uk>

	* uggab.c (mirror): A return added in xlow >= xhigh case

2001-02-28    <jpff@cage.codemist.co.uk>

	* midiops.c (imidiaft, maftset, midiaft): New code for polyaft opcode

	* entry1.c: Added polyaft opcode

	* ugmoss.c: New file
	* ugmoss.h: New file

	* entry2.c: Added dconv opcode

2001-02-24    <jpff@cage.codemist.co.uk>

	* pitch.c (maca): Ensure that it can be used with overlapping
	answer and argument variable
	(mac): Ditto

	* sread.c (expand_nxp): New function to expand space, and called
	from a number of places some new.

	* vdelay.c (reverbx_set): Correct level problem in reverb2

	* uggab.c (sum): Ensure that it can be used with overlapping
	answer and argument variable
	(product): Ditto

2001-02-21  John ffitch  <jpff@weir>

	* rdorch.c (rdorchfile):
	* sread.c (sget1): Allow escaped # in macro body

2001-02-18    <jpff@cage.codemist.co.uk>

	* swrite.c: Allow sign after exponential (thanks to Paul Isaacson)

2001-02-17    <jpff@cage.codemist.co.uk>

	* ugens6.c (delay): Allow input signal to be the same as output signal
	(log001): Make a #define constant rather than a variable

2001-02-14    <jpff@cage.codemist.co.uk>

	* vdelay.c (reverbx): Copy the input into the temp buffer for the
	combs so input and output variables can be the same.

2001-02-13    <jpff@cage.codemist.tc>

	* main.c (signal_to_string): Renamed sig2str as signal_to_string
	to avoid possible name clashes

2001-02-13    <jpff@wol.codemist.tc>

	* one_file.c: Define L_tmpnam in Windows case as was too small.
	Also put the extensions back

2001-02-07    <jpff@cage.codemist.tc>

	* one_file.c: Changed calls to tmpnam so they do not add the .orc
	or other extension as that seems to kill Windows2K

2001-02-06    <jpff@cage.codemist.tc>

	* one_file.c (blank_buffer): Failed to increment i!!  Thanks
	Gabriel.

2001-02-04    <jpff@cage.codemist.tc>

	* VERSION 4.11

	* pitch.h (struct): New field noinsert

	* pitch.c (waveset): Correct case when pointers meet

2001-02-03    <jpff@cage.codemist.tc>

	* main.c (main): and use it

	* one_file.c (read_unified_file): Change argument to be char **

2001-01-31    <jpff@cage.codemist.tc>

	* pitch.c (wavesetset): Make length test for <=1 incase of MIDI use

2001-01-27    <jpff@cage.codemist.tc>

	* util2/dnoise.dir/dnoise.c (main): Some messages corrected

2001-01-26    <jpff@cage.codemist.tc>

	* one_file.c (read_unified_file): remove strcpy as there was no
	guarantee of sufficient space

2001-01-21    <jpff@cage.codemist.tc>

	* lpanal.c (gauss): Removed false code based on assumption of pivot.

2001-01-20    <jpff@cage.codemist.tc>

	* entry2.c: Added barriage opcode

	* pitch.c (wavesetset): New function
	(waveset): New function and opcode

2001-01-12  John ffitch  <jpff@weir>

	* aifc.c (aifcReadHeader): General confusions fixed I hope (thanks
	RWD and Jim Crosson)

	* cwin.cpp (DisplayText): New function for flashtext

2001-01-11  John ffitch  <jpff@weir>

	* soundio.c (sfopenin, sfopenout): "devaudio" has 8 characters not 7!

	* entry1.c: rtclock_i should not have had an argument
	but ftlen_i should

2001-01-06    <jpff@cage.codemist.tc>

	* nsliders.tk (settext): New code to display text boxes
	(deltext): and to delete them

	* control.c (textflash): New function to display text windows

	* control.h (struct): New TXTWIN structure

2001-01-05    <jpff@cage.codemist.tc>

	* VERSION 4.10

	* soundio.c (sfopenout): Allow devaudio# and dac# as realtime
	players.

2001-01-02    <jpff@cage.codemist.tc>

	* physmod.c: Comment out DLineA_clear as not used

	* hrtferX.c (hrtferxk): Make crossfade unused as it created clicks

	* express.c (copystring): New function -- like strdup but uses
	mmalloc
	(express): use copystring rather than fixed size arguments

2000-12-31    <jpff@cage.codemist.tc>

	* util2/mixer/mixer.c (main): make default output have .wav or
	.aif tag as in main system

2000-12-30    <jpff@cage.codemist.tc>

	* util2/dnoise.dir/: new utility to remove noise from
	samples

	* entry1.c: Added tbvcf opcode

	* biquad.c (tbvcfset, tbvcf): New code from Hans

2000-12-29    <jpff@cage.codemist.tc>

	* entry2.c: Change name of opcode to "sensekey"

	* entry1.c: Change vco to have optional arguments

	* rdorch.c (splitline): A little more cautious in /* ... */
	comments wrt newlines.
	(splitline): and fix some unclear bug by rewriting

2000-12-23    <jpff@cage.codemist.tc>

	* entry2.c: Added keyhit as an opcode

	* entry1.c: rtclock opcode as _i and _k

	* aops.c (rtclock): Support for reading rt-clock

	* ugens4.c (rndset): Allow seed from clock is >1
	(rhset, riset): Ditto

	* entry2.c: Entry for sense was wrong (needs 2 rather than 3 as no init)

2000-12-20    <jpff@cage.codemist.tc>

	* entry1.c: Added additional optional argument to comb and alpass

	* ugens6.c (cmbset): Allow delay in samples for comb and alpass

	* ugens6.h (COMB): Add insmps optional argument to COMB

2000-12-18    <jpff@cage.codemist.tc>

	* vbap_zak.c (vbap_zak_control, vbap_zak_moving_control):
	* vbap_sixteen.c (vbap_SIXTEEN_control)
	(vbap_SIXTEEN_moving_control):
	* vbap_eight.c (vbap_EIGHT_control, vbap_EIGHT_moving_control):
	* vbap_four.c (vbap_FOUR_control, vbap_FOUR_moving_control):
	It was possible for these to overwrite; loop now starts at 1

	* sfheader.c (writeheader):
	* midirecv.c:
	* linevent.c (RTLineset): Minor preprocessing error

	* cs.h: Set _macintosh when necessary

2000-12-17    <jpff@cage>

	* entry2.c: New opcode lpf18

	* pitch.h (struct LPF18):
	* pitch.c (lpf18set, lpf18db): New code for LPF with 18dB falloff.

2000-12-15    <jpff@cage>

	* swrite.c: Replaced fltout by fprintf -- still not sure about this!

	* pitch.c (ksense): Added use of _kbhit and _getch for Windows/DOS

	* pvdlg.cpp (DoDataExchange): Two cases were plain wrong!

2000-12-14    <jpff@cage>

	* lpanal.c: Some general code tidying

2000-12-11    <jpff@cage>

	* many files: standardise on _macintosh flag

2000-12-08    <jpff@cage>

	* argdecode.c (argdecode): Set utility title in mac

	* soundio.c (audwrt4): Skip code for now
	(audwrtrev4): Ditto

	* soundin.c (getsndin): from matt -- only set gain if positive

2000-12-08  J P Fitch  <jpff@maths.bath.ac.uk>

	* aops.c (dbfsamp):
	(ampdbfs):
	(aampdbfs): New code for full scale dB

2000-12-08    <jpff@cage>

	* argdecode.c (argdecode): Added call to create_opcodlst to ensure
	opcode list is made.

	* main.c (create_opcodlst): Cannot be static as needed elsewhere,
	like opcodes

2000-12-07    <jpff@cage>

	* sfont.c (fill_SfPointers): Added check for sfont format, and new
	X_1555

2000-12-06    <jpff@cage>

	* entry2.c: Added varicol opcode

	* pitch.c (varicolset):
	(varicol): New code for variable coloured noise.

	* pitch.h (struct): New structure for variable coloured noise

2000-12-05    <jpff@wol>

	* Cwin.cpp (OnSliders): Display sliders 1 rather than zero

2000-12-03    <jpff@cage>

	* VERSION 4.09: released

	* pluck.c:
	* wavegde.c: Rewrite significant parts; in particular remove
	general filter for 3 point FIR which is all that is used

2000-11-27    <jpff@cage>

	* aiff.c (aiffReadHeader): Str X_65 had arguments in wrong order
	in printf

2000-11-26    <jpff@cage>

	* pluck.c (pluckExcite): Move pickup point from here
	(pluckGetSamps): To here

2000-11-25    <jpff@cage>

	* wavegde.c (error): String 259 was wrong

	* pluck.c (pluckPluck): Change spurious floating point constants
	to FL() or integer.

2000-11-24    <jpff@cage>

	* uggab.c (lposc_set): Change from Gabriel/Rasmus

	* ugens3.c (loscil3): Added check for exact end of loop
	(loscil):
	(loscil):
	(loscil3): on advice from Hedman

2000-11-21    <jpff@cage>

	* fgens.c: Declare gen16 and add to table
	(gen16): New function

2000-11-19    <jpff@cage>

	* sftype.h:
	* sf.h: Corrected MSVC pack command

	* pitch.h: NSEG and TRANSEG structures

	* pitch.c (trnset, trnseg, ktrnseg): New code for transeg opcode

	* entry2.c: transeg opcode

2000-11-18    <jpff@cage>

	* ugens1.c (xsgset): Fixed potential bug in xsgset with reusing vector

	* sf.h: Added pack(1) for macintosh

2000-11-12    <jpff@cage>

	* sfont.c (filter_string): new function to remove unprintable
	characters which kill xterms etc

2000-11-06    <jpff@cage>

	* sfheader.c (readheader): Inadvertent change of
	AUDIO_ENCODING_FLOAT to AUDIO_ENCODING_MYFLT
	(writeheader): and again

2000-10-25    <jpff@cage>

	* entry2.c: setctrl allowed string argument

	* nsliders.tk: New function, setlab

	* control.c (ocontrol): Added case 4 to set label to slider

2000-10-16    <jpff@cage>

	* one_file.c (checkVersion): New function to allow version
	checking in .csd files
	(read_unified_file): And call it

2000-10-14    <jpff@cage>

	* ugens4.c (BIPOLAR): New constant
	(krand):
	(arand):
	(krandh):
	(randh):
	(krandi):
	(randi): Make 31-bit PRNG give bipolar results.

	* entry2.c: Added babo opcode

	* babo.c:
	* babo.h: New code [Note special copyright terms] from Nicola

	* ustub.h: Add peakchunks

	* oload.c (instance):
	* otran.c (insprep):
	* oload.h (LABELIM): Changed MINSHORT to MIN_SHORT to avoid silly
	problems

2000-10-11    <jpff@cage>

	* aiff.c (aiffWriteHdr):
	(aiffReWriteHdr):
	* wave.c (wavWriteHdr): Do not write PEAK if not wanted
	(wavReWriteHdr): Ditto

	* argdecode.c (argdecode): Case K for peak chunks

	* main.c (main): Add peakchunk variable

2000-10-08    <jpff@cage>

	* BeAudio.c:
	* Makefile.be:
	* argdecode.c:
	* cs.h:
	* main.c:
	* midirecv.c:
	* midisend.c:
	* rtBe.c:
	* sysdep.h:
	* vbap.c:
	* winBe.c: BeOS patches from Jens Kilian

2000-10-01    <jpff@cage>

	* one_file.c (readOptions): Added // and /* */ comments

	* rtlinux.c: Changed some floats to MYFLT (thanks to Nicola Bernardini)

2000-09-30    <jpff@cage>

	* vdelay.c: Simplified constants for cc_time and ca_time; comment
	out the original nreverb code

	* entry2.c: Made reverbx the nreverb code as it is a strict superset

2000-09-27    <jpff@cage>

	* vdelay.c (reverbx_set):
	(reverbx): New code, replacing vreverb code.

	* entry2.c: Added reverbx from re (replacing vreverb)

2000-09-25  J P Fitch  <jpff@maths.bath.ac.uk>

	* wave.c (wavReWriteHdr): One case of MYFLOAT should have been
	float (Nicola B.)

2000-09-24    <jpff@cage>

	* entry2.c: Added vreverb opcode

	* vdelay.c (vreverb_set): New code
	(vreverb): New code

	* vdelay.h (VREV): new struct

	* pitch.c (ksense): New code to read keyboard input

	* main.c (create_opcodlst): New function to create entry table
	from bits.
	(main): and use it

	* rdorch.c: Changed opcodlst to * from []
	* oload.c:
	* otran.c:
	* opcode.c:
	* schedule.c

	* oload.c: Add declarations of opcodlst and oplstend as really
	here

	* entry1.c:
	* entry2.c: Replace entry.c

2000-09-22    <jpff@cage>

	* pitch.c (ksense): Added CWIN version of keysensing

2000-09-21  John Fitch  <jpff@lansky>

	* VERSION 4.08

	* musmon.c (musmon):
	* main.c (main): Change banner to indicate 64bit version

2000-09-19  John Fitch  <jpff@wol>

	* CSliders.cpp: New code for buttons and checks

	* CSliders.h: Ditto

	* Cwin.cpp: and the same

	* control.c (check_set):
	(check):
	(button_set):
	(button): Added for Windows

2000-09-17    <jpff@cage>

	* dumpf.c (nkread): Reading needs to take account of MYFLT

	* entry.c: Added button and checkbox opcodes

	* control.c (check_set):
	(check):
	(button_set):
	(button): New functions; also reorganise code for starting and reading

	* nsliders.tk: Added title. and pack -after for sliders.  Should
	allow placement of buttons

	* pitch.c (impulse,impulse_set): Code for mpulse opcode

2000-09-16    <jpff@cage.codemist.tc>

	* entry.c: Added impulse opcode (mpulse)

2000-08-27  John ffitch  <jpff@weir>

	* phisem.c (bambooset): Shake_damp needs to be set; maybe on
	others as well?
	(wuterset): Ditto
	(sleighset): Ditto
	(guiroset): Ditto
	(tambourset): Ditto

2000-08-18    <jpff@cage>

	* Rename window.h to cwindow.h to avoid Windows problem.  Change
	in many files including makefiles

	* ALL:  FLOAT -> MYFLT to avoid problems with Windows

	* hetro.c:
	* soundio.c:
	* pitch.c:
	* aifc.c:
	* aiff.c:
	* aops.c:
	* argdecode.c:
	* biquad.c:
	* bowedbar.c:
	* butter.c:
	* cmath.c:
	* cross2.c:
	* cs.h:
	* cscorfns.c:
	* cvanal.c:
	* dam.c:
	* dcblockr.c:
	* diskin.c:
	* disprep.c:
	* dsputil.c:
	* dsputil.h:
	* dumpf.c:
	* extract.c:
	* fft.c:
	* fgens.c:
	* flanger.c:
	* fm4op.c:
	* follow.c:
	* fout.c:
	* grain.c:
	* grain4.c:
	* hrtferX.c:
	* insert.c:
	* interpol.c:
	* linevent.c:
	* locsig.c:
	* lowpassr.c:
	* lpanal.c:
	* lptrkfns.c:
	* mandolin.c:
	* midiops.c:
	* midiops2.c:
	* midiops3.c:
	* midiout.c:
	* midirecv.c:
	* modal4.c:
	* moog1.c:
	* moog1.h:
	* musmon.c:
	* musmon.c:
	* nlfilt.c:
	* oload.c:
	* otran.c:
	* phisem.c:
	* physmod.c:
	* physutil.h:
	* pluck.c:
	* ptrigtbl.h:
	* pvadd.c:
	* pvanal.c:
	* pvinterp.c:
	* pvocext.c:
	* pvread.c:
	* rdscor.c:
	* repluck.c:
	* revsets.h:
	* scansyn.c:
	* schedule.c:
	* sfont.c:
	* shaker.c:
	* singwave.c:
	* sndinfo.c:
	* sndwarp.c:
	* soundin.c:
	* soundio.h:
	* space.c:
	* spectra.c:
	* sread.c:
	* sysdep.h:
	* twarp.c:
	* ugens1.c:
	* ugens2.c:
	* ugens3.c:
	* ugens4.c:
	* ugens5.c:
	* ugens6.c:
	* ugens7.c:
	* ugens8.c:
	* ugens9.c:
	* ugensa.c:
	* uggab.c:
	* ugrw1.c:
	* ugrw2.c:
	* ugsc.c:
	* vbap.c:
	* vbap.h:
	* vbap_eight.c:
	* vbap_four.c:
	* vbap_sixteen.c:
	* vbap_zak.c:
	* vdelay.c:
	* vpvoc.c:
	* wavegde.c:
	* winEPS.c:
	* wincwin.c:
	* windin.c:
	* window.c: Deal with floating constants and in a few places
	corrected confusions between float and FLOAT

	***** SPELL-CHECKED TO HERE *****

2000-08-17    <jpff@cage>

	* soundio.c: flinbufp and floutbufp shoudl be float (not FLOAT)

	* pitch.c (GardnerPink_init): Variable float -> FLOAT

	* fout.c (infile_float): Sort out confusion between float and
	FLOAT

	* ugens1.h (struct EXPSEG2): float -> FLOAT

2000-08-15    <jpff@cage>

	* anal/adsyn/makef (OBJS): Include sdif code

	* sdif-mem.c:
	* sdif.c:
	* sdif.h:
	* sdif-mem.h: New file (SDIF again)

	* text.h (X_MAXNUM): Increase to 1551

	* Hetro.c: added SDIF stuff

2000-08-14    <jpff@cage>

	* midisend.c: Added FreeBSD code for soundcard

	* argdecode.c (usage): Error message number changed for dithering
	to 1537.

2000-08-13    <jpff@cage>

	* entry.c: Add optinal argument to guiro -- a bug fix

	* sread.c (sget1): Typing error ommits c== in c=='_', twice

2000-08-07    <jpff@cage>

	* VERSION 4.07

	* midiops.c (mctlset): Change default value to lo setting

2000-08-06    <jpff@cage>

	* entry.c: Added opcodes cabasa, "crunch", "sekere", "sandpaper",
	"stix", "guiro", "tambourine", "bamboo", "waterdrip", "sleighbells"

	* phisem.c:
	* phisem.h: New files for phisem instruments from STK 3.1

2000-08-05    <jpff@cage>

	* vbap.c (choose_ls_triplets): Move array connections to malloced
	space as rather too big for some architectures.

	* vdelay.c (nreverb): Set time to 0.001 instead of zero which
	gives inf values.  Also test for <=0 rather than just negative.
	Also change error message 356
	(reverb2_play): Ditto

2000-08-02    <jpff@cage>

	* main.c (install_signal_handler): Added support for OS/2

2000-07-30    <jpff@cage>

	* soundin.c (sreadin): Added WAV to code for AIFF/AIFC

2000-07-25    <jpff@cage>

	* swrite.c (fpnum): Allow E and e format in numbers

2000-07-22    <jpff@cage>

	* bowedbar.c: File file from STK3.1
	* bowedbar.h: File file from STK3.1
	* entry.c: Added wgbowedbar opcode

2000-07-17    <jpff@cage>

	* modal4.c (vibraphnset): Strike position was not set at all
	(agogobelset): Strike position now used, and modified gains

	* fm4op.c: All over changed ADSR parameters to STK3.1 values

2000-07-16    <jpff@cage>

	* physutil.c (ADSR_setAllTimes): New function to keep in step with STK3.1

	* modal4.c (agogobelset): Change filter gains to value in STK3.1
	(marimbaset): Ditto

2000-07-14    <jpff@cage>

	* aiff.c (aiffReadHeader): Added missing argument to message

2000-07-13    <jpff@cage>

	* filopen.c (sssfinit): Editing error corrected ## -> #

	* physmod.c (bowedset): Instantiated teh length/2 code as in later STK

2000-07-02  John Fitch  <jpff@wol>

	* pvlook.c: Added code to log output from Windows

	* pvlookdlg.cpp: Added dialog info for output

2000-07-01  John Fitch  <jpff@lansky>

	* pvdlg.cpp (DoDataExchange): Check for illegal hopsize was backwards

2000-07-01    <jpff@cage>

	* sread.c (getscochar):
	* rdorch.c (rdorchfile): Patch (in part) from Istvan Varga for _
	in macro names more safely

2000-06-26    <jpff@cage>

	* entry.c: Added clip opcode

	* one_file.c (createSample): New function to read base64 encoded
	samples
	(read_base64): New function to allow multiple use
	(deleteSamp): Delete samples created
	(read_unified_file): Added <CsSampleB filename=%d> option
	and <CsFileB filename=%s>

	(createFile): Create file locally if safe from Base64

2000-06-23    <jpff@cage>

	* util1/sortex/xmain.c (fopen_path):
	* util1/sortex/smain.c (fopen_path): $s should be %s twice

2000-06-19    <jpff@cage>

	* rdorch.c (rdorchfile):
	* sread.c (sget1): Allow _ as a part of a macro name

	* one_file.c (createMIDI2): Added Base64 encoded MIDI files
	(read_unified_file): and direct to it

2000-05-28    <jpff@cage>

	* VERSION 4.06

	* entry.c: Added trigseq and seqtime opcodes

2000-05-26    <jpff@cage>

	* pitch.c: Added pinkish code.

	* pitch.h (struct): Added PINKISH structure

	* entry.c: Added pinkish opcode (re)

2000-05-25    <jpff@cage>

	* entry.c: Added opcodes sfplay3, sfplay3m, sfinstr3, sfinstr3m

	* sfont.c etc: many changes.  Lots of ANSI corrections and layout

2000-05-14    <jpff@cage>

	* entry.c: control and setctrl for Tcl/Tk and renamed for CWin

	* sliders.tk: New file (needs serch paths?)

	* control.c: Added Tcl/Tk version of sliders

2000-05-13    <jpff@cage>

	* getstring.c (init_getstring): Removed unnecessary new name
	variable, as also wrong!

2000-05-10    <jpff@cage>

	* aops.c (inall): Change to read a single numbered channel only

2000-05-09    <jpff@cage>

	* vbap.h: Added zak opcoes, increased channels to 64

	* vbap_zak.c: New file

	* entry.c: Added vbap_zak opcodes

2000-05-08    <jpff@cage>

	* schedule.c: Change to triggering on negative triggers etc

	* midirecv.c:
	(MidiOpen):
	(MidiOpen): Added OS2 support

	* main.c (main): Added OS2 support

2000-05-07    <jpff@cage>

	* soundio.c (audwrite_norm):
	(audwrite): Make Heartbeat==3 use title bar in CWIN case

	* fgens.c (gen23): Use fopenin rather than fopen
	(gen28): Ditto

	* filopen.c (fopenin): Like openin, but also looks in INCDIR

	* vpvoc.c: Check that there is a segment table

	* aops.c (outz): New opcode to link XAK to output
	(inz): and input to zak

	* cs.h (MAXCHNLS): Change max number of channels to larger number 256

	* aops.c (inn): New function for below
	(in16):
	(in32):
	(inall): New opcodes for larger numbers of channels

	* entry.c: Added opcodes inx, in32 and inc

2000-05-02    <jpff@cage>

	* makefile (CSRCH): Added vbap.c vbap_four.c vbap_eight.c vbap_sixteen.c

	* vbap.c:
	* vbap_four.c:
	* vbap_eight.c:
	* vbap_sixteen.c:
	* vbap.h: New files for VBAP opcodes

	* entry.c: Added vbap opcodes

2000-04-26    <jpff@cage>

	* entry.c: Change madsr to call madsrset as below

	* ugens1.c (adsrset1): Only set xtra time if in MIDI
	context. Rename function from adsrset
	(adsrset): New function to use above
	(madsrset): Ditto

2000-04-23    <jpff@cage>

	* rdorch.c (getoptxt): Decode out->outx/outX

	* aops.c (outn): new function to handle multi-channel outouts
	(outx):
	(outX): Use for 16 and 32
	(outch): New code to write to numbered channel
	(outall): Write all channels of any number

	* aops.h: New structures OUTX and OUTCH

	* entry.c: New opcodes outx, out32 and outch

2000-04-22    <jpff@cage>

	* sread.c (getpfld): Check for curmem overflow in the loops
	(yeak!)

2000-04-21    <jpff@cage>

	* sftype.h:
	* sf.h: Added PACKED and pack() attributes

2000-04-16    <jpff@cage>

	* entry.c: Added additional argument to scans

	* scansyn.c (scsns_init): Made oscil_interp a selectable variable,
	defaulting to 4
	(scsns_play): And at play time

	* scansyn.h (struct): Added variables to select interpolation scheme

2000-04-10  John Fitch  <jpff@cage>

	* VERSION 4.05 released

	* fout.c (outfile_int_head):
	(close_files):
	* soundio.c (sfcloseout):
	(audwrite_norm):
	(audwrite):
	* wave.c (write_wavpeak):
	(wavReWriteHdr):
	* aifc.c (aifcReWriteHdr):
	* aiff.c (aiffReWriteHdr): Added verbose argument to control peak
	message

2000-04-04    <jpff@cage>

	* winX11.c (DrawGraph): Patch to deal with large graphs (David
	Ogborn)

2000-04-04  J P Fitch  <jpff@maths.bath.ac.uk>

	* fgens.c (gen23): Corrected deferred case

2000-04-03    <jpff@cage>

	* fgens.c: patched from David Ogborn

2000-04-03  J P Fitch  <jpff@maths.bath.ac.uk>

	* diskin.c (sreadinew): More peak stuff
	(sngetset): Ditto

2000-04-03    <jpff@cage>

	* util1/sortex/xmain.c (dies): Define this function
	* util1/sortex/smain.c (dies): Define this function

2000-04-02    <jpff@cage>

	* musmon.c (playevents): remove calls to write peak chunk as done
	elsewhere

	* soundio.c (audwrite_norm): Added normalisation stuff for WAVE floats
	(audwrtrev4): Same here
	(audwrt4): Abd fir none bytereversing version
	(sfopenout): FLOATS and LONGS now similar
	Call non-reversing fixups correctly

2000-03-31    <jpff@cage>

	* soundin.c: Changes all over to take account of gain stuff

	* sndinfo.c (sndinfo): Small change in case no data

	* sread.c (sread): Check can open file

	* one_file.c (read_unified_file): Check file was opned OK
	(createScore): Ditto

	* wave.c (wavWriteHdr): many changes to set correct variable-header
	length etc (RWD)
	(wavReWriteHdr): Ditto

	* aiff.c (aiffWriteHdr): Incorporate Peak chunk fully
	(aiffReWriteHdr): ditto
	(aiffReadHeader): ditto
	(aiffReadHeader): ditto
	(write_aiffpeak): Correct code (all RWD)

	* aifc.c: Extensive incorporation of Peak chuncks and other such
	(RWD)

2000-03-26  John ffitch  <jpff@maths.bath.ac.uk>

	* entry.c: Added opcodes scsnu,scsns, sfload, sfpreset, sfplay,
	sfplaym, sfplist, sfilist, sfpassign, sfinstrm, sfinstr

	* sf.h, sftype.h sfenum.h:
	* sfont.c: New files

2000-03-26  John  <jpff@cage>

	* midiops3.c:
	* midiops3.h: Change char to unsigned char throughout

2000-03-25  John  <jpff@cage>

	* scansyn.[ch]: New file implementing scanned synthesis

	* rdorch.c (lblfound): realloc forgot to multiply by
	sizeof(LBLREQ)
	(lblrequest): Did not extend in this case.

	* main.c (main): Added general signal handler to call exit so can
	do temporary clean-up

2000-03-22  John  <jpff@cage>

	* musmon.c (musmon): Remove extraneous fclose(scfp)

2000-03-21  John ffitch  <jpff@maths.bath.ac.uk>

	* soundio.c (bytetran): Add optional dithering of output

	* main.c: Added declaration of dither_output

	* argdecode.c: Added -Z option, and new string 1485

2000-03-17  John ffitch  <jpff@maths.bath.ac.uk>

	* VERSION 4.04 (Linux only: no notes)

	* ugens5.c (atone): output could destroy input before it was used.
	(atonex):  Ditto

2000-02-22  John ffitch  <jpff@maths.bath.ac.uk>

	* otran.c (otran): Calculation of tran_kr was wrong

2000-02-20  John ffitch  <jpff@montague>

	* VERSION 4.03

	* ugens4.c (krand): Added support for a base value
	(arand):
	(krandh):
	(randh):
	(krandi):
	(randi):

	* aiff.c (aiffReadHeader): If no loop in sample, pretend loops
	whole sample (experimental at present)

	* sfheader.c: Move definition of maxpos etc to this file

	* sndinfo.c: Change size of arrays to MAXCHNLS

2000-02-15  John ffitch  <jpff@montague>

	* soundio.h: New structures for peaks

	* wave.c (write_wavpeak):
	* aiff.c (write_aiffpeak): New function

	* musmon.c (playevents): Call functions to write peak chunk

	* grain.c (agsset): Clear buffer if reusing

2000-02-13  John ffitch  <jpff@montague>

	* wave.c (wavReadHeader): Started support for WAV loops

	* wave.h: Added smpl and SampleLoop structures

	* schedule.c (lfoa): Calculation of inc was wrong

2000-02-12  John ffitch  <jpff@montague>

	* ugens3.c (losset): Default base freq to middle C if missing

	* entry.c: follow2 opcode

	* follow.c (envset):
	(envext): New code

	* follow.h (struct ENV): New structure

2000-02-07  John Fitch  <jpff@wol>

	* one_file.c (mytmpnam): New function in WIN32 case

	* cs.h: Use mytmpnam of WIN32 systems

2000-02-06  John Fitch  <jpff@lansky>

	* util2/scale.dir/scale.c (main): Added code for M and P options
	(FindAndReportMax): Make return a value of maximum

2000-02-04  J P Fitch  <jpff@maths.bath.ac.uk>

	* util2/pvlook/pvl_main.c: Add #include for <stdio.h>

2000-02-03  John ffitch  <jpff@montague>

	* pvanal.c (pvanal): Set trfil to stdout in code rather than in
	initialisation.

	* midirecv.c (FMidiOpen): Set mfp to stdin in the open code rather
	than in initialisation.

	* getstring.c (init_getstring): #endif was one wrong line which
	broke CSTRINGS mechanism

2000-01-29  John ffitch  <jpff@montague>

	* VERSION 4.02

	* sread.c (ifa): Need tp set prvp2 in . and + cases, as well a ^

2000-01-13  John ffitch  <jpff@weir>

	* diskin.c, insert.c, memfiles.c, midirecv.c, pvanal.c
	* rtaudio.c, rtdirectX.c, rtwin32.c, wincwin.c, window.c, winwat.c
	Change IGNORE to IGN to please Windows

2000-01-07  John ffitch  <jpff@weir>

	* musmon.c (musmon): Close the scfp file (sorted score) so it can
	be deleted.

2000-01-06  John ffitch  <jpff@weir>

	* insert.c (kperf): Removed check for interaction in instr loop

2000-01-05  John ffitch  <jpff@weir>

	* rtwin32.c: Change type of indev to HWAVEIN as it should have been

	* schedule.c (queue_event): Added cast to float for insno

	* cwin.cpp (OnHScroll): Incorrect & changed to &&
	(AfterSizeChange): Ditto

	* cs.h (POLL_EVENTS): Error in cwin case?

	* ugrw1.c (tablew): Incorrect & changed to &&
	(ktablew): Ditto

1999-12-05  John ffitch  <jpff@montague>

	* fgens.c (gen23): Allow for negative numbers in reading, and
	initilaise p in open case.

	* insert.c (kperf): On Windows and Mac/BeOs silences were too
	long, possibly upto 127 cycles too long.

1999-11-27  John ffitch  <jpff@montague>

	* midiops3.c: Throughout slider code ensure min++ is obeyed after
	the assignment (undefined in ANSI C)

1999-11-23    <jpff@wol>

	* Cwin.cpp (cwin_exit): Use special code rather than AwaitInput,
	using wait_for_char variable
	(cwin_exit): Ditto
	(OnChar): Set  wait_for_char every time

1999-11-21  John ffitch  <jpff@montague>

	* VERSION 4.01

	* uggab.c (resony): Read flag field for log or linear separation

	* uggab.h: New field in RESONY structure

	* entry.c: Change in arguments to resony

	* schedule.c (queue_event): New function to schedule score events
	into future
	(schedule): Call insert_event or queue_event depending on when;
	note midi will only work on now events
	(kschedule): Same fix.

1999-11-20  John Fitch  <jpff@wol>

	* wincwin.c (DrawGraph): Add call to cwin_paint back

	* cwin.cpp (cwin_show): If picture in ontop do not redraw

1999-11-20  John ffitch  <jpff@montague>

	* all_strings, english-strings: Make version number print in x.xx
	format (237)

	* space.c (space): Use local variables rather than p->ch1 etc (RK)

1999-11-18  John ffitch  <jpff@montague>

	* pvinterp.c (pvbufreadset):
	* pvread.c (pvreadset): Change test to less than 128 for small
	frame size (RK)

1999-11-18  John Fitch  <jpff@montague>

	* argdecode.c (usage): Added message for -t0 and also error string
	425

1999-11-07  John ffitch  <jpff@montague>

	* VERSION 4.00 -- Version for CD-ROM

	* midirecv.c: Added AMIGA loading of <sgtty.h>

	* musmon.c (musmon): Only complain about no score if also no line
	events.

	* main.c (main): In normal use use a temporary for scorename and
	playscore; if -t0 use score.srt

	* argdecode.c (argdecode): usurp -t0 to mean keep tempraries

1999-11-02  John ffitch  <jpff@montague>

	* flanger.c (wguide2): Separate a- and k- rate cases, for speed
	against mixing
	(wguide1): Ditto

	* english-strings: Added error message 424

1999-10-31  John ffitch  <jpff@montague>

	* VERSION 3.591

	* shaker.c (shakerset): Do not crash is number of beans is zero

	* fgens.c (gen21): Ensure a scale of zero is make 1 if argument is
	missing

	* midirecv.c (MidiOpen): Misplaced #endif moved (<nicb@axnet.it>)

1999-10-25  John ffitch  <jpff@montague>

	* otran.c (insprep): Remove reassignment to nlabels, so it will
	act as a maximum.

1999-10-24  John ffitch  <jpff@montague>

	* rdorch.c (skiporchar): New function to skip to end of line,
	string or file

	* fgens.c (besseli): Make besseli a double->double function
	(gen20): rewrite kaiser case for effeciency and accuracy

	* cmath.h: Make besseli a double->double function

	* ugens6.c (delwset): Remove nulling of last_delayr
	(delrset): Check for first-delayr rather than last-delatr (Groh)

1999-10-16  John ffitch  <jpff@montague>

	* one_file.c (createScore):
	(createOrchestra): Use fputs rather than fprintf as should not
	interpret formats

1999-10-11  John ffitch  <jpff@montague>

	* VERSION 3.59

	* one_file.c (deleteScore): no longer static (same for sconame)

	* main.c (main): If no score given generate f0 86400 score, and
	arrange to delete at end

1999-10-10  John ffitch  <jpff@lansky>

	* main.c (main): Rearrange order of code to allow MIDI
	initialisation

	* one_file.c (my_fgets): New function to deal with PC/Unix/Mac
	files equally.

	* entry.c: Added ktableseg for tutorials

	* midiop2.c:
	* midiops3.h: Separate SLIDER* structs and code

	* entry.c: Correct structs for sliders

1999-10-09  John ffitch  <jpff@montague>

	* otran.c (constndx): Initial poolcount set to 1 for SSTRCOD

	* vpvoc.c (vpvset): If a table is given use it rather than
	remembered table[x]seg

	* vpvoc.h (struct): New field in VPVOC structure for optional
	argument to set table from f ops

	* one_file.c (createMIDI): Skip to newline after reading a MIDI file
	(read_unified_file): Set O.FMidiin if a MIDI file was given

1999-10-05  John ffitch  <jpff@montague>

	* linevent.c: If event is e no not complain about number of args

	* insert.c (MIDIinsert): Deal with pset in MIDI case
	(MIDIinsert): No error if psetdata set

	* one_file.c (read_unified_file): Only change Midi file if read
	(createMIDI): set flag

	* ugens1.h: Extra field xtra in LINSEG and EXPSEG

	* ugens1.c (mxdsrset): Added additional argument to length of release
	(lsgset): Set xtra to -1
	(adsrset): Deal with additional release
	(lsgrset): Set to -1
	(klnsegr):
	(linsegr):
	(xsgrset):
	(expsegr):
	(kxpsegr): More of same change

1999-10-02  John ffitch  <jpff@montague>

	* biquad.c:
	* entry.c: removed "nlalp" pending clarification of IPR

1999-09-26  John ffitch  <jpff@montague>

	* ugens5.c (tonset): Initialise constants more carefully
	(tonsetx): The same
	(tone): The same
	(tonex): The same
	(atone): The same
	(atonex): The same

	* ugens1.c (klnseg): Rewritten to be same as linseg wrt new
	segments

1999-09-25  John ffitch  <jpff@montague>

	* nlfilt.c (nlfilt): Protect L field

	* cross2.c (Xsynthset): Stop changing ovlp and take new field
	(Xsynth): Use new field

	* windin.c (xyinset): Protect a number of fields

	* grain.c (ags): Stop p->kglen being overwritten

	* vdelay.c (nreverb): Ensure p->hdif and p->time are not overwritten

	* repluck.c (wgpsetin): Ensure p->plk is not changed

	* otran.c (constndx): Removed attempt to have unique constants as
	it breaks otherthings, not understood

1999-09-22  John ffitch  <jpff@montague>

	* ugsc.c (phaser1set): Fix array limitations
	(phaser2set): Similar

1999-09-22  John ffitch  <jpff@montague>

	* entry.c: Added phaser1, phaser2 and lowpass2

	* ugsc.c (phaser1):
	(phaser2):
	(lp2): New code

1999-09-12  John ffitch  <jpff@montague>

	* entry.c: Adjust args to wguide1/wguid2

	* aops.c (powoftwoa): New function
	(logbasetwoa): New function

1999-09-09  John ffitch  <jpff@montague>

	* express.c (express): Added a^p case whicg was missing

	* entry.c: removed opcodes from entry as well

	* ugrw1.c: remove deprecated instime[sk]

	* dumpf.c: Remove depricated names

1999-09-08  John ffitch  <jpff@montague>

	* biquad.c (nlalp):
	(nlalp_set): New functions

	* biquad.h (struct NLALP): New structure

	* entry.c: Added nlalp

1999-09-07  John ffitch  <jpff@montague>

	* musmon.c (musmon): Change commented-out test to O.Linein

1999-09-05  John ffitch  <jpff@montague>

	* schedule.c: New code for schedkwhen

	* musmon.c (playevents):
	* insert.c (kperf): Look for orcevents as well

	* cs.h: Added OrcEvts field to OPARMS

	* entry.c: Add schedkwhen

	* ugens2.c (kphsor): Make phs a double, and consequent changes
	(phsor): phase and incr double, and consequents

	* ugens2.h: Make curphs double rather than FLOAT

	* uggab.c (posc):
	(kposc):
	(posc3):
	(kposc3):  Allow negative freq

	* cwin.cpp (cwin_args): Set FMidiin when teh profile has one

	* ugens4.c (pluck): Error check for kcps exceeding sample rate

	* fgens.c (fgens): Typing error == instead of =

1999-08-30  John ffitch  <jpff@montague>

	* otran.c (constndx): Sharing constants leads to problems so make
	each one unique

1999-08-29  John ffitch  <jpff@montague>

	* pitch.c (pitch): Slight code shifting (re)

	* pitch.c (phsorbnk): New code for new opcode

1999-08-27  John ffitch  <jpff@montague>

	* VERSION 3.58

	* entry.c: New opcode pitchamdf

	* pitch.c (pitchamdfset):
	(medianvalue):
	(pitchamdf): New functions

1999-08-25  John ffitch  <jpff@montague>

	* midiops.h: Removed MIDIVAL and MIDISCL as they are really MIDIKMB

	* midiops.c (midibset): Initialise prvbend as it was random
	(pitchbend_value): reinstate null check

	* entry.c: New opcodes adsynt and hsboscil

	* pitch.c (adsyntset):
	(adsynt):
	(hsboscset):
	(hsboscil): New functions

	* pitch.h (struct ADSYNT, HSBOSC): New structs

1999-08-23  John ffitch  <jpff@montague>

	* repluck.c (streson): Change sign of output sample

	* one_file.c (eat_to_eol): New function to handle comments in <>

	context.
	(readOptions): Alow empty lines

	* sread.c (ifa): in case3 with warpin check for i or f opcodes

1999-08-20  John ffitch  <jpff@montague>

	* ugensa.c (fogset):
	* ugens7.c (fofset0): Only allocate space if phs is positive; may
	allow legato

	* dumpf.c (krdset):
	(krd2set):
	(krd3set):
	(krd4set): openout shoudl have been openin

	* midisend.c: Define __RPCASYNC_H__ for VC++ v6 (Michael Gogins)

	* sread.c (sget1):
	* rdorch.c (rdorchfile): Deal with spaces in macro definitions (re)

	* one_file.c (read_unified_file): Close unf file before return

1999-08-05  John ffitch  <jpff@maths.bath.ac.uk>

	* wincwin.c (MakeXYin):
	(ReadXYin): Rewritten to use whole screen

1999-08-04  John ffitch  <jpff@maths.bath.ac.uk>

	* sread.c (sget1):
	* rdorch.c (rdorchfile): Make number of arguments flexible in macros

1999-08-02  John ffitch  <jpff@maths.bath.ac.uk>

	* VERSION 3.57

	* pitch.c (cpuperc): New function to set cpu load
	(maxalloc): Ditto
	(prealloc): Ditto

	* cs.h: Added cpuload field to INSTRTXT

1999-08-02  J P Fitch  <jpff@maths.bath.ac.uk>

	* argdecode.c (argdecode): variable outformch made static
	(argdecode): Make it a warning rather than an error to have two
	values

	* main.c (main): [rasmus ekman] the default sampel size was set
	before the .csd decode.  Now moved to after

1999-08-01  John Fitch  <jpff@lansky>

	* physmod.c (DLineA_tick): Test for wrapround was wrong

1999-08-01  John Fitch  <jpff@montague>

	* vdelay.h: Added nreverb header to this fiel and remove nreverb.h

	* modal4.c (marimbaset): multiple strikes controlled by optional
	arguments

	* entry.c: marimba gains two optional arguments

	* modal4.c (marimbaset): Triple strike could not happen; fixed.
	Also made messages look at message level

1999-07-31  John ffitch  <jpff@lansky>

	* argdecode.c (argdecode): Make utility decode table driven, and
	add pvlook

	* util2/pvlook/pvl_main.c: New file to call pvlook

	* pvlook.c: New file (from Richard Karpen) changed to utility

1999-07-30  John ffitch  <jpff@montague>

	* ugens6.c (delrset):
	(delwset):
	(tapset):  Added FIFO

	* ugens6.h: Added delay FIFO to DELAYR

1999-07-29  John Fitch  <jpff@lansky>

	* diskin.c: Reconstructed after matt

	* insert.c: Reworked all POLLEVENTS stuff after matt

	* sndinfUG.c: New file for interrogation of snd files

	* entry.c: Added filelen, filenchnls, filesr and filepeak opcodes

	* musmon.c (playevents): Simplification of calls to POLLEVENTS

	* fout.c: mark non ANSI stuff as not on macintosh

	* one_file.c (macgetstring): Renamed function from getstring

	* argdecode.c (argdecode): -P option for Macintosh

1999-07-26  John Fitch  <jpff@montague>

	* aops.c (init_powers):
	(init_logs):
	(powoftwo_set):
	(logbasetwo_set):
	(powoftwo):
	(logbasetwo): New functions for fast 2^ and log_2

	* sread.c (sget1): Change test to >MARGS rather than >=MARGS

	* cscormai.c (main): Call init_getstring

	* natben.c: New file (for cscormai.c really, but could be used
	elsewhere)

1999-07-26  John ffitch  <jpff@lansky>

	* fgens.c (gen23): Added deferred allocation by counting first
	(fgens): Admit gen23 for deferred
	(hfgens): Ditto

	* ugens1.c (xsgset2): New function
	(expseg2): New function

	* entry.c: Added expsega

1999-07-25  John Fitch  <jpff@lansky>

	* rdorch.c (getoptxt): DIVZ case was confused with peak case;
	changed tag to 0xfffc
	* entry.c: Ditto

	* insert.c (beatexpire): Count deallocation
	(timexpire): Ditto

1999-07-25  John ffitch  <jpff@weir>

	* entry: Added active opcode

	* pitch.c (instcount): New function to recover active count

	* insert.c (insert,MIDIinsert): Count new activation
	(deact): and uncount

	* cs.h: Added active filed to INSTRTXT

	* ugens4.c (buzz):
	(gbuzz): Take absolute value on khd and suppress warning

1999-07-20  John Fitch  <jpff@maths.bath.ac.uk>

	* rtwin32.c: Reworking by RWD after NT experience

1999-07-20  J P Fitch  <jpff@maths.bath.ac.uk>

	* pitch.c (clockset): Got clocks wrong in setup -- all mapped to
	clock 0

1999-07-19  John ffitch  <jpff@montague>

	* RELEASED VERSION 3.56

	* one_file.c (blank_buffer): new function to allow blank lines in
	gap

	* fout.c: New file
	* fout.h: New file

1999-07-18  John Fitch  <jpff@lansky>

	* winX11.c (ExitGraph): Ignore any errors

1999-07-18  John ffitch  <jpff@montague>

	* sread.c (getscochar): Allowed @ in arithmetic part, and @@ for
	guard.  Gives next power of 2 up, between 1 and 0x40000000
	Also corrected ~ case

1999-07-10  John ffitch  <jpff@montague>

	* uggab.c (fold): New function (after Gabriel, but optimised)
	(fold_set):

	* entry.c: Added resony, fold opcodes

	* uggab.c (rsnsety):
	(resony): New functions (after Gabriel to remove restriction)

	* uggab.h (struct): New structures for resony and fold

1999-07-08  John ffitch  <jpff@weir>

	* insert.c (insert): Added psetdata handling on insert

1999-06-27    <jpff@wol>

	* Cwin.cpp (class CSenv): Dialog to set SSDIR etc
	(CArg): Remember last env in registry, and reset in non-null

	* winsound.rc: New Dialog for setting environment

1999-06-26    <jpff@wol>

	* getstring.c (init_getstring): Ensure name is remembered in
	Winsound

	* Cwin.cpp (OnEditOrch): Change to NOWAIT spawn of editor
	(OnEditScore): Ditto
	(cwin_exit): Interrupt playing if character typed

1999-06-26  John Fitch  <jpff@lansky>

	* follow.c (follow): Read off end of input; change to post
	increment

1999-06-20  John ffitch  <jpff@montague>

	* VERSION 3.55 released

	* util1/scot/main.c (main):
	* util2/mixer/extract.c (main):
	* util2/mixer/mixer.c (main):
	* lpanal.c (lpanal):
	* sndinfo.c:
	* pvanal.c: Accept -j

	* getstring.c (init_getstring): Look for environment variable
	CSSTRNGS as well

	* argdecode.c (argdecode): Skip -j option

	* main.c (main): init_getstring needs arguments

	* getstring.c (init_getstring): Check for a -j command line
	parameter to change strings database.  Messy!

1999-06-15  J P Fitch  <jpff@maths.bath.ac.uk>

	* cwin.cpp (OnExtras): Set Beatmode as well as Cmdtempo when needed

1999-06-05  John ffitch  <montague>

	* aops.c: editting error, LIB1 rather than LIBA in asin to log10
	(thanks Nicola)

1999-06-04  John Fitch  <jpff@maths.bath.ac.uk>

	* getstring.c (init_getstring): Change error string

1999-05-30  John ffitch  <jpff@montague>

	* mandolin.c (mandolin): Rescale sound to get amplitude correct
	(infoTick): allDone was not initialised

	* mandolin.c (mandolinset): Added 50Hz as lowest frequency for Mandolin

1999-05-29  John Fitch  <jpff@lansky>

	* rdorch.c (getoptxt): Allow Z as an argument type for a list
	strating with a kvar, and alternating with avar

1999-05-29  John ffitch  <jpff@montague>

	* ugens3.c (loscil3): There was no multiply by the amplitude.

1999-05-28  John ffitch  <jpff@weir>

	* cwin.cpp (cwin_args): Do not add .wav/.aif if dac/devaudio

1999-05-27  John Fitch  <jpff@lansky>

	* text.h: New message

	* pitch.c (mac, macset): Added new opcode

	* ugsc.h:
	* ugsc.c: New files

	* entry.c: Added opcodes svfilter, hilbert, resonr, resonz. mac

1999-05-24  John Fitch  <jpff@lansky>

	* ugens4.c (buzz): Report knh <=0 once once per note
	(gbuzz): Same

	* ugens4.h: New field reported in BUZZ/GBUZZ to suppress excess messages

1999-05-20  J P Fitch  <jpff@maths.bath.ac.uk>

	* ugens1.c (linseg):
	(linsegr):
	(klnsegr):
	(kxpsegr):
	(expsegr):
	(klnseg):  Test for out of count was wrong -- replaced
	by <=

1999-05-17  J P Fitch  <jpff@maths.bath.ac.uk>

	* VERSION 3.54 released

	* getstring.c: New file

	* cs.h: #include text.h

	* makedb.c: New file  to build strings database

1999-05-10  John ffitch  <jpff@montague>

	* ALL FILES nearly: Added STR macro to strings in preparation for
	localisation.  Later changed to Str 'cos of Irix4

	* text.h: new file for localisation.

1999-04-27  John Fitch  <jpff@lansky>

	* uggab.c (product): New code

	* entry.c: New opcode product

1999-04-27  J P Fitch  <jpff@maths.bath.ac.uk>

	* entry.c: Rename nsamp to nsamp_i so it can be used!

1999-04-18  John ffitch  <jpff@wol>

	* main.c (main): Check for .csd and .CSD as DOS messes endings

1999-04-17  John ffitch  <jpff@weir>

	* biquad.c (biquad): Optimise by using local variables more
	(pareq): The same
	(rezzy): The same
	(moogvcf): Same

1999-04-10  John ffitch  <jpff@weir>

	* fgens.c (fgens): Added 0.5 to avoid rounding problems

	* musmon.c (playevents):
	* linevent.c: Accept e event

1999-04-09  John ffitch  <jpff@weir>

	* entry.c: Added sum opcode

	* uggab.c (sum): Added new function

	* biquad.c (pareq): Changes /2 to *0.5, and stopped recalculation
	of sqrt

1999-04-06  John ffitch  <jpff@weir>

	* rdorch.c (getoptxt): Gabriel changes for y and z argument types

1999-04-05  John ffitch  <jpff@weir>

	* fm4op.c (FM4Op_loadWaves): Initialise w_time array to zero

1999-04-02  John ffitch  <jpff@weir>

	* cwin.cpp (cwin_args): Add .wav or .aif if no . in name

	* soundio.c (sfopenout): Default name to test.wav test.aif or test
	depending on filetyp

	* rdorch.c (rdorchfile): Check for argument being too long

	* argdecode.c (argdecode): Section brackets neded in case 'o' due
	to #ifdef badly used.

1999-04-01  John ffitch  <jpff@weir>

	* pvread.c (pvreadset): Correct error mesage to say PVREAD rather
	than PVOC

1999-03-31  John ffitch  <jpff@weir>

	* biquad.c (vco):
	* vpvoc.c (voscili):
	* ugens7.c:
	* ugens4.c:
	* ugens3.c:
	* pvadd.c (pvadd):
	* spectra.c:
	* grain.c (ags):
	* disprep.c (tempeset):
	* ugensa.c:
	* ugens2.c: PMASK -> PHMASK for clarity, avoiding Solaris problem
	and consistency with Barry's sources.

1999-03-25  John ffitch  <jpff@montague>

	* soundio.c (sfopenout): Piped output must be raw or IRCAM
	format.  Force AIFF and WAv to IRCAM

1999-03-23  John ffitch  <jpff@montague>

	* cmath.c (irate randoms): All improved coding to minor effect

1999-03-21  John ffitch  <jpff@montague>

	* VERSION 3.53

	* sread.c (getscochar): Accept ~ to indicate a random number

	* entry.c: Added pitch opcode

	* pitch.h:
	* pitch.c: New file

	* physmod.c (flute): Code improvements to save reading variables
	inside nsmps loop.

1999-03-20  John ffitch  <jpff@montague>

	* sysdep.h (tell): Define tell is SYS5 case as it seems to be rare

1999-03-19  J P Fitch  <jpff@maths.bath.ac.uk>

	* entry.c: use 0xffd for peak opcode

	* rdorch.c (getoptxt): Use code 0xffd for discrimination on first
	argument (and not answer)

1999-03-19  John ffitch  <jpff@montague>

	* soundin.c (soundin):
	* diskin.c (soundinew): only do code after filend in ngoto is
	strictly positive

1999-03-14  John Fitch  <jpff@lansky>

	* midiops.c (cpsmidi): Remove pitchbend stuff from cpsmidi

	* entry.c: Size field in aftouch was wrong

1999-03-11  J P Fitch  <jpff@maths.bath.ac.uk>

	* sread.c (stof): NeXT fix confusing ramps

1999-03-11  John Fitch  <jpff@lansky>

	* physmod.c (clarinset):
	(fluteset):
	(bowedset):
	(brassset): Assume 50Hz lowest freq if not given

1999-03-10  John Fitch  <jpff@maths.bath.ac.uk>

	* physmod.c (fluteset): Assume intital amplitude is maximum to
	avoid a problem with zero.  Do not understand this yet, but
	something to do with ADSR AttackRate.

1999-03-09  John ffitch  <jpff@montague>

	* entry.c: opcode envlpxr had wrong structure, so could have
	crashed

1999-03-05  John Fitch  <jpff@lansky>

	* mandolin.c (mandolinset): Allow for skipping initialisation, and
	add error check.

	* shaker.h: File not transferred to PC leading to crashes

1999-02-21  John ffitch  <jpff@montague>

	* entry.c: Change names ondur/ondur2 to the more natural
	noteondur/noteondur2
	Also chanctrl base opcode was missing

	* aops.c (ftlen): Change to call ftnp2find so any deferred table
	is loaded before giving teh length.

1999-02-20  John Fitch  <jpff@lansky>

	* ustub.h: Added declaration of currevent

	* vdelay.c (vdelay3): Setting of v0 could be wrong (possibly?)

	* pvadd.c (pvaddset):
	* pvinterp.c (pvcrossset):
	(pvbufreadset):
	(pvinterpset):
	* ugens9.c (cvset):
	* ugens5.c (lprdset):
	* ugens3.c (adset):
	* soundin.c (sndgetset):
	* diskin.c (newsndinset): Added support for string arguments in
	score (GAB)

	* rtnext.c: New file

	* Makefile:
	* diskin.c:
	* entry.c:
	* linevent.c:
	* midirecv.c:
	* sfheader.c:
	* soundin.c:
	* soundio.c:
	* soundio.h:
	* sread.c:
	* ugens2.c: Added NeXT code


1999-02-18  J P Fitch  <jpff@maths.bath.ac.uk>

	* entry.c: The ftsr opcode got lost

	* biquad.c (nestedapset): New code
	(nestedap): New code
	(lorenzset): New code
	(lorenz): New code

	* biquad.h: Added NESTEDAP and LORENZ struct

1999-02-14  John ffitch  <jpff@montague>

	VERSION 3.52

	* dumpf.c: Added readk code

	* dumpf.h: Added KREAD structures

	* entry.c: Added readk, readk2, readk3 and readk4

	* ugens6.c (deltap): Safer test for tap point
	(deltapi): Ditto
	(deltapn): Ditto
	(deltap3): Ditto

	* swrite.c (pfout):
	(expramp):  Allow () as alternatives to {}

	* sread.c (operate): Added % and ^ to arithmetic operations
	(getscochar): Ditto

	* uggab.h: Add structs for poscil and lposcil

	* uggab.c: Add code for poscil and lposcil and cubic forms

	* entry.c: Added poscil and lposcil, poscil3 and lposcil3

	* follow.c (follow): Make it follow max abs value rather than max
	and min separately.  Recode for speed as well.
	(flwset): Recoding for speed later

1999-02-13  John Fitch  <jpff@montague>

	* sread.c (getscochar): Typing error strlen(b+1)=>strlen(b)+1

1999-02-13  John ffitch  <jpff@weir>

	* ugens5.c (rsnsetx): Test for new buffer was wrong
	(tonsetx): Ditto

1999-02-12  John ffitch  <jpff@montague>

	* ugrw1.c: Deprecated itable* opcodes

	* modal4.c: Added deprecated message to agogobel

	* entry.c: Changed all iout* to outi*, kout* to outk*
	ion/ioff -> noteon/noteoff.
	midic#/imidi# unified
	ctrl#/ictrl# unified
	itable* -> tablei* with deprecated version with message

1999-02-11  John ffitch  <jpff@montague>

	* entry.c: Changes islider# to slider#_i, similar for slider# and
	dummy entry.
	ilimit removed for limit_i etc, itableleng itimes/k

1999-02-09  John ffitch  <jpff@montague>

	* ugens5.c (tonsetx): Only create buffer of states if initialising
	and buffer not present.  Should remove some clicks.
	(rsnsetx): Same change

1999-02-08  J P Fitch  <jpff@maths.bath.ac.uk>

	* aiff.c (aiffReadHeader): Recognise Name, Author, Copyright and
	Annotation chunks

1999-02-07  John Fitch  <jpff@lansky>

	* oload.h: LABELIM needs to reference nlabels rather than NLABELS

	* otran.c (insprep): Ensure that goto list is long enough, not
	just expanded -- probably not necessary

	* rdorch.c (rdorchfile): Need to extend srclin array as well as
	linadr array when run out of lines.

1999-02-06  John ffitch  <jpff@montague>

	* entry.c: Change distort1 to appoo at HM's suggestion

1999-02-05  John ffitch  <jpff@montague>

	* aiff.c (aiffReadHeader): Skip unknown chunks

	* biquad.c (biquadset): If reinit field is not zero skip
	initialisation

	* entry.c: Added optional extra arg to biquad to control reinit

1999-01-31  John ffitch  <jpff@weir>

	* VERSION 3.511

	* rtaudio.c: split into platform specific bits, and Makefile
	changed for this.

	* midiops.c (pitchbend_value): Remove subtraction (and comment)
	as now handled in midirecv.c

	* entry.c: all 3 midip_k opcodes shoudl have thread of 3
	* distort1 should have thread of 4 not 5

	* physmod.c (fluteset): Length of deay line set wrong if optional
	last argument omitted

1999-01-27  J P Fitch  <jpff@maths.bath.ac.uk>

	* ugens1.c (adsrset): Length incorrectly set in MIDI subcase.

	* diskin.c (newsndinset): Function replaced from matt

1999-01-26  John ffitch  <jpff@weir>

	* sndwarp.c (sndwarp): New line from RK to handle rounding oddity
	(sndwarpst): Ditto

1999-01-26  J P Fitch  <jpff@maths.bath.ac.uk>

	* rdorch.c (fopen_path): Correct typing error of $s instead of %s

1999-01-26  J P Fitch  <jpff@lansky>

	* biquad.c
	* butter.c
	* cmath.c
	* dsputil.c
	* dsputil.h
	* filter.c
	* locsig.c
	* lpanal.c
	* modal4.c
	* oload.c
	* pvinterp.c
	* space.c
	* spectra.c
	* ugens8.c
	* vpvoc.c
	* wavegde.c
	* ugens3.c
	* fgens.c
	* prototype.h: Removed variable pi and twopi and used macros
	instead.  In places improved code (ie use TWOPI rather than
	2.0*pi) and in spectra.c corrected constants

1999-01-25  John ffitch  <jpff@weir>

	* express.c (express): Deal with ^ when second argument is c k or i

1999-01-24  John Fitch  <jpff@montague>

	* VERSION 3.51

	* rdorch.c (rdorchfile): Change treatment of \ line continuations

1999-01-24  John Fitch  <jpff@lansky>

	* main.c (main): If argdecode returns zero then exit as all done

1999-01-24  John ffitch  <jpff@weir>

	* one_file.c (readOptions): Lines starting ; or # treated as
	comments.  Also options starting ; or # end line

	* follow.c (follow): Improved coding, removing divison etc

1999-01-23  John ffitch  <jpff@montague>

	* entry.c: Added xadsr and mxadsr opcodes

	* ugens1.c (adsrset): Added release stuff for MIDI case
	(xdsrset): New function
	(mxdsrset): New function

1999-01-23  John ffitch  <jpff@weir>

	* one_file.c: Changed some printing to _DEBUG only

	* main.c (main): Check for empty score string as well as null in
	.csd case

	* ugens1.c (adsrset): Calculation of length remaining corrected

	* cwin.cpp (OnOrchestra): Look for .csd files as well

1999-01-22  J P Fitch  <jpff@montague>

	* one_file.c (readOptions): Check for \r as well as \n as terminator

1999-01-19  John ffitch  <jpff@montague>

	* sread.c (sget1): Allow /* */comments in scores

	* rdorch.c (splitline): Correct /* */ comments

	* ugens2.c (koscl3): Bug in reading table fixed

1999-01-17  John Fitch  <jpff@montague>

	* argdeccode.c: Take account of AE_24INT in part

	* soundio.h: Added AE_24INT

	* cmath.c (ipow, apow, kpow):
	* cmath.h: (POW) rename pow filed to powerOf to avoid Mac problem

	* physmod.c (bowed): All code for setting frequency and betaratio
	was wrong; re-writen.

1999-01-16  John ffitch  <jpff@montague>

	* entry.c: Added envlpxr opcode which was missing

1999-01-15  John ffitch  <jpff@montague>

	* physmod.c (bowed): Set slope field as was missing

1999-01-13  J P Fitch  <jpff@montague>

	* VERSION 3.50

	* otran.c (otran): Zeroing instrument table started in wrong place
	(insprep): Reset ngotos and nlabels at start of function

1999-01-12  John ffitch  <jpff@montague>

	* vdelay.c (deltapn): Added deltapn

1999-01-10  John ffitch  <jpff@montague>

	* biquad.c and biquad.h: Added pareq opcode

	* ugens6.c (deltap3): New function

	* ugens2.c: Cubic interpolating versions of foscl, loscil and table

	* entry.c: Change parameter of foscil(i) to xkxxkio

	* ugens3.h (FOSC): Added new fields for below

	* ugens3.c (foscili):
	(foscil): Make more parameters a-rate possibly

	* entry.c: Added p parameter to moodvcf

	* biquad.h (MOOGVCF): and max field

	* biquad.c (moogvcf): Added max scaling

1999-01-04  John Fitch  <jpff@lansky>

	* entry.c: slider (MIDI) opcodes added

	* midiops3.h:
	* midiops3.c: New files

	* entry.c: Added Gabriel Maldonado's slider opcodes

1999-01-04  John Fitch  <jpff@montague>

	* ugens2.c (koscl3):
	(osckk3):
	(oscka3):
	(oscak3):
	(oscaa3): New code for oscilators with cubic interpolation

	* entry.c: Added oscil3 family of opcodes

1998-12-29  John Fitch  <jpff@lansky>

	* ugens1.c (adsrset): Adjust ADSR for sustain too short etc

1998-12-25  John ffitch  <jpff@weir>

	* aops.c: Added mod?? functions

	* entry.c: Added mod?? opcodes

	* express.c (express): Added % operator as mod, somewhat odd as a
	float.

	* entry.c: octmidib had flag wrong (editing error I suspect)

	* midiops.c (icpsmidib_i):
	(octmidib_i):
	(pchmidib_i): New functions

	* entry.c: *midib in i context needs new functions so it is
	initialised

	* cs.h: Remove posbend field as not used now.

	* midirecv.c (m_chanmsg): Remove posbend field
	(m_chinsno): Send pchbend field

	* midiops.c (pitchbend_value): Use pchbend field rather than posbend

1998-12-20  John Fitch  <jpff@lansky>

	* version.h; VERSION 3.494

	* main.c (main): Decode .csoundrc file

	* argdecode.c: New file with argdecode funcion

	* main.c (main): Call argdecode rather than in line

	* one_file.c (readOptions): Implement reading of options, calling
	argdecode

	* schedule.c (lfok): Phase calculation for sine was wromg
	(schedule): Added code to kill stragglers on reinit
	(schedwatch): Clear list when done
	(kschedule): Ditto

1998-12-19  John Fitch  <jpff@lansky>

	* schedule.c (kschedule): Argument count in call to insert_event
	was wrong by one

1998-12-12  John Fitch  <jpff@lansky>

	* entry.c: New opcode streson

	* repluck.c (stresonset,streson): New functions

	* repluck.h: New structure STRES

1998-12-01  John ffitch  <jpff@weir>

	* rdorch.c (lexerr): Variable mm had incorrect initialisation (re)

1998-11-24  John ffitch  <jpff@montague>

	* physmod.c (bowedset): Set 'unknown state' values to -1 as the
	value of zero could be found in the product.

1998-11-21  John ffitch  <jpff@montague>

	* ugens4.c (arand): Correct a typing error which gave noise in
	short rand vresion.

1998-11-20  John Fitch  <jpff@lansky>

	* aiff.c, cvanal.c, filopen.c, hetro.c, insert.c, linevent.c:
	* lpanal.c, main.c, memalloc.c, memfiles.c, midirecv.c, midisend.c:
	* musmon.c, mw_menu.c, one_file.c, otran.c, pvanal.c, pvoc.c:
	* rdorch.c, rtaudio.c, sfheader.c, sndinfo.c, soundio.c, wave.c:
	* windin.c, dpwelib.h, scot.h, sysdep.h, cs.h:
	Changed __MWERKS__ for macintosh so as not to confuse the BeOS
	port

1998-11-18  John ffitch  <jpff@wol>

	* PVDLG.CPP (DoDataExchange): Confusion over hopsize and frame
	ince sorted out

	* Cwin.cpp (OnExtras): Move saving of profile into tested area so
	m_midiselector is valid (rasmus ekman)

1998-11-16  John ffitch  <jpff@montague>

	* express.c (express): Start to add ^ to expressions for pow

1998-11-14  John Fitch  <jpff@lansky>

	* VERSION 4.392

	* aiff.c (aiffReadHeader): Make message understand n-channels

	* wave.c (wavReadHeader): Added line giving file name as helps
	sndinfo.  Also extended to multi-channel

	* rdorch.c (getorchar): Ignore ^Z from a file so as not to upset
	MS-DOS files

	* ugens4.c: Incorporate new 31bit rand into old opcodes with
	selector

	* ugens4.h (struct): Added new field to RAND RANDI and RANDH to
	select which PRNG

1998-11-14  John ffitch  <jpff@montague>

	* rdorch.c (getoptxt): Use linopnum to check size as flag rather
	than many calls to strcmp
	(getoptxt): Change wrong out[sqho] to a warning and patch

	* entry.c: Added dummy pow (I had forgotten)

	* rdorch.c (getoptxt): Added pow to list of translation opcodes

1998-11-09  John Fitch  <jpff@lansky>

	* entry.c: Added opcodes rand2, rand2h and rand2i

	* ugens4.c: New set of random operators based on 31 bit Park
	Miller PRNG using Linus Schrage's method for a better version

1998-11-09  John ffitch  <jpff@montague>

	* midirecv.c: Many changes in LINUX code

1998-11-08  John ffitch  <jpff@weir>

	* rdorch.c (getoptxt): Added filter2, and fixed bug in intrpol
	(should be ntrpol).

	* dumpf.c (old_kdmpset, old_kdmp2set, old_kdmp3set, old_kdmp4set):
	New functions for kdmpset etc with warning

	* entry.c: New opcode midion (same as kon), and rename kon2 as
	midion2.  Added dump for kdump etc.  kfilter2 and filter2 as filter2_z

	* midiout.c (kvar_out_on_set1): New function, same as
	kvar_out_on_set except prints message asking to use midion.

1998-11-07  John ffitch  <jpff@montague>

	* midiout.h (struct): Many new structures

	* midiops2.h (MIDIIN): New struct

	* oload.h: New type PCTL_INIT

	* entry.c: Added opcodes pctrlinit and dpctrlinit (GAB)
	midiin, midiout kon2 nrpn cpstmid

	* oload.c (instance): Channel searching (GAB?)
	(ctlinit): New function

	* midisend.c: Changes to LINUX code

	* midiout.c (iout_on):
	(iout_off):
	(iout_on_dur_set):
	(moscil):
	(kvar_out_on):
	(out_controller):
	(out_aftertouch):
	(out_poly_aftertouch):
	(out_progchange):
	(out_controller14):
	(out_pitch_bend): Channel has 1 subtracted (GAB)

	* midiout.c (xtratim): Extend only more required

	* midiops.c (aftouch):
	(imidictl):
	(midictl):
	(pchmidib):
	(octmidib):
	(cpsmidi):
	(icpsmidib):
	(kcpsmidib):
	(ipchbend):
	(kpchbend):  Use MIDI_VALUE or pitchbend_value

	* midiops.c (massign): Additional code to check instr exists

	* midiops.c (MIDI_VALUE):
	(pitchbend_value): Added new macros to check null case

1998-11-03  John ffitch  <jpff@weir>

	* vdelay.c (vdelay): At last someone [Ed Hall] has sorted out this
	confused comparison
	(vdelay): and again

	* ugens6.c (comb): Alpha exponential problem [Ed Hall]

	* sread.c (salcblk):
	* otran.c (otran): Alpha alighment again [Ed Hall]

	* opcode.c (list_opcodes): Deal with setting n in a beter and
	portable way [Ed Hall]

	* oload.c (oload): On alpha need to ensure alignment [Ed Hall]

	* insert.c (showallocs): On Alpha print in %p format [Ed Hall]

	* soundio.c (audwrite_norm):
	* linevent.c:
	* aiff.c: Added LINUX to non-options (was MAC only) [Ed Hall)]

1998-11-02  John ffitch  <jpff@montague>

	* ugens1.c (adsrset): segsrem set one too high I think.

1998-11-01  John ffitch  <jpff@montague>

	* hetro.c (TWOPI): Correct constant from 6.28308530 to 6.28318530

1998-10-29  John ffitch  <jpff@montague>

	* linevent.c:
	* soundio.c:
	* rtaudio.c: pipe etc renaming for LINUX as well as SGI

1998-10-25  John ffitch  <jpff@wol>

	* schedule.h:
	* schedule.c: New files

1998-10-25  John ffitch  <jpff@weir>

	* insert.c: Make tieflag visible for schedule
	 (showallocs): Make visible externally

1998-10-22  John ffitch  <jpff@weir>

	* entry.c: Added schedule and schedwhen

1998-10-20  John ffitch  <jpff@lansky>

	* version.h: VERSION 3.49

1998-10-20  John ffitch  <jpff@wol>

	* entry.c: Added envlpr opcode

	* ugens1.c (evrset):
	(knvlpxr):
	(envlpxr): New functions

	* ugens1.h (struct ENVLPR): Replaced definition as was not used
	anyway

1998-10-19  John Fitch  <jpff@lansky>

	* entry.c: ntrpol incorrectly specified

	**************** Send to Matt and Dave **********************

1998-10-18  John ffitch  <jpff@weir>

	* entry.c: Added madsr opcode, uses linsegr and adsr code

1998-10-18 John ffitch   <jpff@wol>

	* sread.c (getpfld): Allow {} and ~ characters in scores
	(ifa): ^ refers to previous event of any instrument; needs new
	variable which is set to -1 and reinitialialed at sections etc

	* swrite.c (pfout): Added {} as calls to expramp and ~ to randramp
	(expramp): New function
	(randramp): New function

1998-10-17  John ffitch  <jpff@wol>

	* entry.c: Added opcodes biquad, moogvcf and rezzy

	* biquad.c:
	* biquad.h: New files

	* musmon.c (musmon): Change name CsMidiOpen to MacMidiOpen

	* midisend.c: Support for MAC

	* midirecv.c: MAC declaration of MacSensMidi
	(m_chanmsg): Now global
	(m_chn_init): Now global
	(sensMidi): Code for MAC

	* main.c (main): Minor changes for MWERKS
	(dribble_printf): New MAC version

	* aifc.c (aifcReadHeader): Changes for Matt

1998-10-13 John ffitch   <jpff@wol>

	* version.h: VERSION 3.49

1998-10-11 John ffitch   <jpff@wol>

	* entry.c: New opcode adsr

	* ugens1.c (adsrset): Added adsr opcode to link to linseg

1998-10-11  John ffitch  <jpff@weir>

	* swrite.c (swrite): Avoid extra space at end of score components

1998-10-11 John ffitch   <jpff@wol>

	* cs.h: Mke size field in OENTRY a short again!!

	* swrite.c (swrite): REemoved some extra code in Unix sources

	* Pvread.h (struct PVREAD): Make fftBuf of type AUXCH

	* Pvread.c (pvreadset): Fill in fftBuf as a dynamic structure with
	auxmalloc
	(pvread): And in its single place of use

1998-10-07  John ffitch  <jpff@weir>

	* ugens8.h (PVFRAMSIZE): Increased to 8196 and consequent changes

	* cs.h: Make size field in OENTRY an int

1998-10-06  John ffitch  <jpff@weir>

	* fgens.c (gen23): New table generator

	* entry.c: Added wguide1 and wguide2

	* aiff.h (Float32Name): Change at Matt's suggestion

	* main.c (main): Call fflush in case 'V'

	* soundin.c (sndgetset): Remember curr_func_sr in gen struct

	* fgens.c (gen01raw): Added memory of curr_func_sr

1998-10-05  John ffitch  <jpff@weir>

	* aops.c (ftsr): Put ftsr back!

	* entry.c: rename to ntrpol

1998-09-19    <jpff@wol>

	* entry.c: Added intrpol_X opcodes and trig

	* uggab.c:
	* uggab.h: New files

	* rdorch.c (getoptxt): Translate mirror and wrap in _i context

1998-09-16    <jpff@wol>

	* ugens5.c (tonsetx): New function after Maldonado
	(tonex): Ditto
	(atonex): Ditto
	(rsnsetx): Ditto
	(resonx): Ditto

	* entry.c: Added opcodes tonex atonex resonx

	* ugens5.h: Added TONEX and RESONX structures

1998-08-25  John ffitch  <jpff@weir>

	* musmon.c (musmon): Load orchestra before opening MIDI file

1998-08-24  John ffitch  <jpff@weir>

	* entry.c: Entry for specptrk not in agreement with manual
	specdisp shudl have last argument optional

1998-08-23  John ffitch  <jpff@weir>

	* oload.c (oload): NULL out new part of strsets when extending

1998-08-22  John ffitch  <jpff@weir>

	* ugens4.c (rhset): Correctiosn to older version
	(buzz): Change the error on knh<=0 to warning and assume 1

1998-08-21  John ffitch  <jpff@weir>

	* spectra.h:
	* spectra:c Added spectrum opcode

	* rdorch.c: Allow w op s,.. opcodes

	* fgens.c (GENUL): Added this function to stand for unknown gens

	* entry.c: Add spectrum opcode

1998-08-20  John ffitch  <jpff@weir>

	* entry.c: Rename kport -> portk etc

	* wincwin.c: Remove tracing

	* sread.c (sget1): Another attempt at the interaction between \
	and comments

	* entry.c: ktableseg and ktablexseg renamed as tableseg and
	tablexseg

	* midirecv.c (MidiOpen): Ensure m_chnbp array is NULLed
	and re-layout

	* soundio.c:
	* soundin.c:
	* sndinfo.c:
	* main.c:
	* diskin.c:
	* aifc.c: Change string AIFC to AIFF-C for consistency

	* midirecv.c (m_chanmsg): Add PROGRAM_TYPE case as was missing

	* opcode.c: In full case try to maintain better layout

	* lowpassr.c: Various adjustments

	* opcode.c: Change to 3 columns

1998-08-19  John ffitch  <jpff@weir>

	* sread.c (sread): Correct typing error od 1.1 to 1.0
	(ifa): Only warp p3 in i case

1998-08-18  John ffitch  <jpff@weir>

	* ugens5.c (reson): Save value of asig at end
	(areson): ditto

1998-08-15  John ffitch  <jpff@weir>

	* vpvoc.c (vpvset):
	* ugens9.c (cvset):
	* ugens8.c (pvset):
	* ugens5.c (lprdset):
	* ugens3.c (adset):
	* pvread.c (pvreadset):
	* pvinterp.c (pvbufreadset):
	* pvadd.c (pvaddset):
	* diskin.c (newsndinset): Allow strset in opening

	* oload.h (STRSMAX): Reduce this to 8 as it grows

	* oload.c (oload): Make strsmax a variable and expand table as
	required

1998-08-07  John ffitch  <jpff@weir>

	* lowpassr.h
	* lowpassr.c: New code

	* entry.c: Added opcodes lowres, lowresx and vlowres

	* oload.c (instance): Deal with strset and pset specially

	* otran.c: Make ngotos visible

	* soundin.c (sndgetset): Treat strsets in opening a file

	* soundio.c (sfopenout): Treat output null as /dev/null

	* sfheader.c (rewriteheader): Support for /dev/null selection

	* cwin.cpp (set_up_argv): Allocate 1 longer to argv as it was bust

1998-08-06  John ffitch  <jpff@weir>

	* otran.c: Make nlabel visible externally

	* oload.c (oload): Try copying string in STRSET
	(instance): Make nlabels into an extern and allocate lopds
	dynamically.

	* otran.c (otran): Deal with strset specially

1998-08-05  John ffitch  <jpff@weir>

	* musmon.c (beep): On CWIN use system function Beep

1998-08-04  John ffitch  <jpff@weir>

	* midirecv.c (m_chinsno): Check diasslowed instr 0

	* sread.c (getscochar):
	* rdorch.c (getorchar): Map '\r' to '\n'

	* midirecv.c (m_chanmsg): Chsange O.SusPThresh to non zero

	* cs.h: Remove O.SusPThresh field

	* cwin.cpp (class CSextras): Remove m_pedal and all references

1998-08-03  John ffitch  <jpff@weir>

	* rdorch.c (LENMAX): Reduce LENMAX to 100 as rather too generous

1998-08-02  John ffitch  <jpff@weir>

	* RELEASE VERSION 3.484

1998-08-01  John ffitch  <jpff@weir>

	* sread.c (sread): Introduce warp_factor for local time warping --
	multiple scales etc.  Defaults to 1.0, reset at section.  Uses v

	* rdorch.c (lexerr):
	* sread.c (scorerr): Initialise mm

	* soundio.c: Changes to reporting in sfopenin/out

	* aifc.c (aifcWriteHdr): Argument order in memcpy wrong

1998-07-31  John ffitch  <jpff@weir>

	* rdorch.c (splitline): Use realloc rather than alloc and copy for
	extending groups (twice)

1998-07-29  John ffitch  <jpff@weir>

	* entry.c: Change addxx to add_xx etc

	* express.c (express): Another place where ki should be i_k
	Also change tags to _xx

	* flanger.c (flanger): Fix a JPff error in flanger

1998-07-28  John ffitch  <jpff@weir>

	* entry.c: Last argument to flanger shoudl be v (optional 0.5 default)

	* sread.c (sget1): Use fopen_path function

	* rdorch.c (fopen_path): New function to use pathnames in include
	 -- and elsewhere perhaps
	 (rdorchfile): Use function

1998-07-26  John ffitch  <jpff@weir>

	* sread.c (scorerr): New function for score errors in macros etc
	(getscochar): Give it an argument to say if we are expanding $ and [

1998-07-25  John ffitch  <jpff@weir>

	* lpanal.c (alpol): Removed reclaration of arrays a and x from
	alpol as it was inside the loop!

	* cwin.cpp (cwin_ensure_screen): Make it into a int function for
	new POLL_EVENTS()

	* aifc.c: New File

	* aiff.c (is_aiff_formtype): New function

	* aiff.h: AIFC-32 float support (MWERK only??)

	* windin.c (xyin): MWERKS version

	* wave.c (wavResetFrameSize): New fn for MWERKS

	* soundio.c:
	* sfheader.c:
	* sndinfo.c: MWERKS and AIFC support

	* rtaudio.c: MWEKS support all over

	* main.c: MWERKS suport and changes for AIFC

	* wavegde.c:
	* sysdep.h:
	* pvinterp.c:
	* pvanal.c:
	* otran.c (insprep):
	* musmon.c:
	* midirecv.c:
	* memfiles.c:
	* memalloc.c (memdie):
	* lpanal.c (lpanal):
	* linevent.c:
	* insert.c (kperf):
	* hetro.c (hetro): Added MWERK support

	* fgens.c: fmax renamed maxfnum 'cos of MWERKS name conflict

	* ftgen.h (MAXFNUM): Chane of name from fmax

	* filopen.c:
	* DPWELIB.H: MWERKS support

	* cvanal.c (cvanal): Add MWEKS to SYMANTEC if defined

	* cs.h (POLL_EVENTS): Make -i in cases when not used

	* butter.c: Added MWERKS support

1998-07-24  John ffitch  <jpff@weir>

	* opcode.c (list_opcodes): Comparison stops at _ by copying
	strings

	* sread.c (sget1): heck #include file opened

	* rdorch.c: Use linepos rather than the broken atbol
	(rdorchfile): Check that #include file can be opened

1998-07-23  John ffitch  <jpff@weir>

	* rdorch.c:
	* sread.c: Allow digits in macro names in both definition and use,
	by isdigit when not first chararcter

1998-07-22  John ffitch  <jpff@weir>

	* soundin.c (sndgetset): Bug fix from Matt

1998-07-21  John ffitch  <jpff@weir>

	* rdorch.c (getoptxt): Translate to divz_..; and for oscil(i_..

	* entry.c: Put _ in divz opcodes and oscil(i)

1998-07-20  John ffitch  <jpff@weir>

	* entry.c: Make gauss etc using the translate flag

	* rdorch.c (getoptxt): Us a flag of 0xffff to indicate ned for
	name translation.  Move various midi ops to this syste

1998-07-19  John ffitch  <jpff@weir>

	* main.c: Removed all references to Scot

	* fgens.c: Changed GEN01 to GEN1 in error messages etc.
	(gen20): Replaced large declared arrays with mmalloc'ed space
	which extends.

	* physmod.c (JetTabl_lookup): Remove fictious JetTable class, as
	it did not use the provious value.
	(flute): Change arguements to JetTabl_looup

	* flute.h: Added lastJet field
	Remove JetTabl field as not used

	* physmod.c (flute): Reorganise flute, setting of frequency when
	changed only etc.  Sounds better.
	(fluteset): Minor initialisations of lastFreq and lastJet.

1998-07-18  John ffitch  <jpff@weir>

	* physmod.c (DLineA_setDelay): Check that it is initialised; also
	fix serious typo in initialisation skip.

	* otran.c (otran): I had missed changing string "r=" to "=_r"
	Also check string has second char of _ rather than first of r

	* sread.c: New variable (flushing) to indicate when not to deal
	with [] things in scores
	(getscochar): Use it
	(flushlin): And set it

1998-07-17  John ffitch  <jpff@weir>

	* physmod.c: For all physical models in theis file, if lowestfreq
	is negative, skip initialisation. (clarinet, flute, bowed, brass)

1998-07-13  John ffitch  <jpff@weir>

	* flanger.h:
	* flanger.c: New file

	* entry.c: Added flanger entry

	* fgens.c (fgens): It cleared new part of table one too soon
	(hfgens): Ditto twice [Thanks Matt]

1998-07-11  John ffitch  <jpff@weir>

	* otran.c (otran): It checked against MAXINSNO rather than
	maxinsno and so wiped out all instrs over 200!

	* fgens.c (gen01raw): Check against ALLCHNS-1 rather than 4 for
	channel count.
	(gen04): Suspected editing error as it went off end of the array.
	Moved an assignment outside loop.  Should check old code.

	* winsound.rc: Change OK button to Render

	* ugens4.c (rhset): If seed provided is greated that 1 use it
	directly rather than scaling.

	* entry.c: Many function renames from axxx -> xxx_a etc

	* express.c (express): Make functions have _k at end rather than k
	at start.  Fixes name polution problems.

1998-07-10  John ffitch  <jpff@weir>

	* sfheader.h: Remove readopensf macro as not used anywhere!

1998-06-27    <jpff@montague>

	* otran.c (otran): Mistype of MAXINSNO instead of maxinsno

1998-06-25  John ffitch  <jpff@wol>

	* entry.c: Removed voscili
	* vpvoc.c:

1998-06-24  John ffitch  <jpff@wol>

	* entry.c: Removed extra argument in shaker opcode

1998-06-24  J P Fitch  <jpff@maths.bath.ac.uk>

	* shaker.h: Removed numtimes from structure as not used.

1998-06-23  J P Fitch  <jpff@maths.bath.ac.uk>

	* version.h: VERSION 3.483

	* entry.c: Arguments for aftouch were wrong; made 2 optional

	* otran.c (otran): Allow STRSET in header blk

1998-06-15  J P Fitch  <jpff@maths.bath.ac.uk>

	* diskin.c (newsndinset): Bug fix from Matt

	* soundin.c (sndgetset): Bug fix from Matt

1998-06-02    <jpff@wol>

	* version.h: VERSION 3.482

1998-05-29    <jpff@wol>

	* Fgens.c (ftresdisp): Only call display if not already displayed
	displayed new variable.  Many tables were getting displayed
	twice.  May be better ways to do this though
	(fgens): Initialised this variable

1998-05-20  John ffitch  <jpff@weir>

	* linevent.c (sensLine): If n negative Linend was wrongly set

1998-05-17    <jpff@wol>

	* rdorch.c (rdorchfile): Make stray # into a warning rather than error
	(getorchar): Remember when at start of line
	(rdorchfile): Only check # when at beginning of line

1998-05-15  John ffitch  <jpff@wol>

	* sread.c (sread): Correct 'b' case of character in score which is
	unwanted.

	* wincwin.c (DrawGraph): Remove call to cwin_paint which was
	causing each graph to nbe drawn twice

1998-05-14  John ffitch  <jpff@wol>

	* Cwin.cpp (cwin_args): Set o.outbufsamps from oMaxLag from
	profile.
	(OnExtras): Set value to half m_buffer.

	* pvdlg.cpp (Cpvdlg): Editing errors had left LPC in the
	initialisations

	* ugens5.c (tone):
	(atone):
	(areson): Coding improvements

	* soundio.c: Remove incorrect sol support (actually elsewhere)

	* rtaudio.c: Added solaris support from Sweden

	* winX11.c: Added casrs to (Window) in various unnecssary places

	* solarisAudio.h:
	* solarisAudio.c: New files

	* cs.h (VARGMAX): Increase to 801 as I cannot see how to make
	dynmaic yet.

1998-05-11  John ffitch  <jpff@wol>

	* sread.c (getop): Include 'c' as valid score opcode

1998-05-09  John ffitch  <jpff@weir>

	* FLUTE.H: lastamp field defined

	* sread.c (sread): Introduce 'c' as score option to reset a clock
	base, declare variable, and add top2 fields

1998-05-08  John ffitch  <jpff@weir>

	* PHYSMOD.C (flute): Reset maxPressure aas a result of k-rate amp

1998-05-02    <jpff@wol>

	* rdorch.c: Changes to record names of files and macros and line
	numbers; new function lexerr to decode all this.

1998-04-28  John ffitch  <jpff@weir>

	* main.c (main): Allow SET SFOUTYP=IRCAM, and -J option to set
	it.

	* soundio.h (TYP_IRCAM): Define new constant

1998-04-27  J P Fitch  <jpff@maths.bath.ac.uk>

	* otran.c (otran): Need to NULL realloced proportion of instrtxtp
	array.

1998-04-22  J P Fitch  <jpff@maths.bath.ac.uk>

	* version.h: Version 3.481

	* dcblockr.h:
	* dcblockr.c: New file

	* entry.c: Added dcblock opcode

1998-04-21  John ffitch  <jpff@weir>

	* cross2.c (Xsynthset): The treatment of the base of the buffer
	would lead to problems with second use or memory recovery.  Do not
	change base.

1998-04-16  J P Fitch  <jpff@maths.bath.ac.uk>

	* rtaudio.c (rtclose): Use *pcurp2

	* musmon.c: Make new variable pcurp2 for WIN32 case.

	* ugensa.c (newpulse): Extra line setting ovp->formphs added at
	suggestion of rasmus.ekman

1998-04-15  John ffitch  <jpff@weir>

	* VERSION 3.48

Tue Apr 14 12:41:54 1998    <jpff@montague>

	* oload.c: Remove second declaration of gbloffbas as reduntant.

1998-04-12  John ffitch  <jpff@weir>

	* util1/sortex/xmain.c (synterr): Added definition

	* util1/sortex/smain.c (synterr): Added definition of synterr

	* shaker.h: New field, freq, for below.

	* shaker.c (shaker): Take acount of frequency argument by calling
	the filter.

	* soundio.c (audwrite_norm): Heartbeat formats 1 (as before), 2
	(string if .s) and 3 (time in output).
	(audwrite): The same

	* main.c (main): Accept a digit after -H for various styles of
	reporting

1998-04-12  John Fitch  <jpff@lansky>

	* space.h:
	* locsig.h:
	* locsig.c:
	* space.c: New files

	* entry.c: Added new opcodes for location/space

	* fgens.c: Added gen28 to tables
	(fgens): Defer allocation for gen28 as well
	(hfgens): Same

1998-04-10    <jpff@wol>

	* linevent.c (RTLineset): Allow pipes as input to -L

	* entry.c: Added printk2 opcode

	* ugrw1.c (printk2set):
	(printk2): New functions for new opcode

	* ugrw1.h (struct): PRINTK2 added

	* linevent.c (RTLineset): Set no buffering if no fcntl function
	case

	* rtaudio.c (rtplay): Coding changes to stop re-evaluations
	[Windows version]
	Many changes to record for Windows and closing

1998-04-08    <jpff@wol>

	* ugensa.c (newpulse): Change to *fund!=0 case [Ekman]

	* ugens7.c (fof): Treat fractions of grain properly in fof2 case
	[Ekman]

	* entry.c: asin, acos and atan renamed sininv, cosinv and taninv
	Also rename atan2 as taninv2

1998-04-05  John ffitch  <jpff@weir>

	* entry.c: Aded atan2 operations

	* aops.c: Added atan2 operations

1998-04-05    <jpff@wol>

	* sread.c (getscochar): Add /* */ comments in scores

	* rdorch.c (copy_arglist): New function to copy argument
	definition from fixed buffer to new space
	(getoptxt): Use fixed nxtarglist and copy
	(getoptxt): Optional arguments are special case

	* diskin.c (newsndinset): Round error fix from Matt.

1998-04-04    <jpff@wol>

	* rdorch.c (rdorchfile): Moved allocation of ARGSPACE to place
	where orchestra size is known.
	(rdorchfile): Extend ortext area as needed.

1998-04-03    <jpff@wol>

	* rdorch.c (getoptxt): Try to extend ARGSPACE array with realloc

	* cwin.cpp (OnMouseMove): Remember mouse position on movement

	* wincwin.c (MakeXYin): Implement
	(ReadXYin): Implement

1998-04-02    <jpff@wol>

	* sread.c: Many changes to add macros and repeats

1998-03-27    <jpff@wol>

	* pvadd.c: New file
	* pvadd.h: New file
	* entry.c: Add pvadd opcode

1998-03-26  J P Fitch  <jpff@maths.bath.ac.uk>

	* filopen.c (WR_OPTS): Correct order so Microsoft format is seen
	before WIN32 (which is really Watcom I guess)

1998-03-24    <jpff@wol>

	* rdorch.c (splitline): Added support for C-style comments

1998-03-23    <jpff@wol>

	* rdorch.c: Major changes to add macro facility, #include also

1998-03-16    <jpff@wol>

	* midirecv.c (m_chanmsg): Change insalloc to instrtxtp->instance

	* oload.c: Remove declaration of insalloc

	* insert.c (insdealloc): Removed reference to insalloc array as
	never initialised.  Use instance field of instrtxtp instead

1998-03-15    <jpff@wol>

	* physmod.c (bowed): DlineL_setDelat was not set if no vibrato

1998-03-14    <jpff@wol>

	* physutil.c (DLineL_setDelay): Add check for delay too big

	* physmod.c (fluteset): Remove calls to OnePole and DCBlock clear

	* physutil.c (DCBlock_clear):  remove
	(OnePole_clear): Remove

	* physutil.h: Remove lastOutput from OnePole and DCBlock

	* AIFF.C (aiffReadHeader): SEEK_CUR -> SEEK_SET
	(aiffReadHeader): twice

1998-03-13    <jpff@wol>

	* FILOPEN.C: Add WR_OPTS case for MSVC

1998-03-06    <jpff@wol>

	* Cwin.cpp (OnExtras): Set O.FMidiin when a midi file is
	specified
	(OnMidifile): Add *.mf midi files to types recognised

1998-03-04  J P Fitch  <jpff@maths.bath.ac.uk>

	* physmod.c (clarinset):
	(fluteset):
	(bowedset):
	(brassset): Cannot be sure frequency given, so reorganise
	initialisation of frequency, including moving code to the
	performance function

1998-03-01    <jpff@wol>

	* cwin.cpp (cwin_exit): Use cwin_full_program_name for repeat use
	rather than plain winsound; hence does not have to be in search
	path

	* otran.c (otran): and use argument

	* rdorch.c (getoptxt): Give function an argument for reinit

1998-02-27    <jpff@wol>

	* lptrkfns.c (TWOPI): Replace variables by #defines

	* cross2.c (getmag): max was not intitalised so could have
	random results.

	* vdelay.c (multitap_set): max was not intitalised so could have
	random results.

1998-02-25    <jpff@wol>

	* physmod.c (bowed): When checking to see if betaRatio has changed
	one needs to incorporate frequency.  Made lastbeta field into
	product of beta and freq
	(bowedset) Consequence of above

1998-02-22    <masjpf@WOL>

	* soundio.c (sfopenin): Added | syntax in -i files
	(sfopenout): and -o files
	(sfclosein): Deal with pipes in closing
	(sfcloseout): and the other kind

1998-02-21  John Fitch  <jpff@lansky>

	* soundin.c (sreadin): Denormalise floating WAV files

	* rtaudio.c (getWaveOutDevices): New Function
	(getWaveOutName): New Function
	(playopen): Allow menu selection if device

	* midisend.c (openMIDIout): Replace NULL be 0 twice for ignored
	arguments
	(openMIDIout): Firest argument to sscanf missing!

	* dpwelib.h: Add _MSC_VER as well as SYS5 for strchr etc

	* soundio.c (audwrite_norm): New function for normalised floats
	(sfopenout): And arrange to call it

	* hetro.c (hetro):
	* sndinfo.c (sndinfo): exit onlt for non-CWIN

	* lpanal.c (lpanal): Use return in CWIN rather than exit
	(lpanal): Again

	* pvanal.c (pvanal): Use exit if in CWIN variant

	* ugens3.c: Moved declaration of isintab to top

	* wave.c: Many changes for completing floating samples

	* memalloc.c (memreset): Correct typing error

1998-02-17  J P Fitch  <jpff@maths.bath.ac.uk>

	* entry.c: Added nreverb opcode, and make reverb2 the same

	* nreverb.h: New file

	* vdelay.c (nreverb): New function
	(nreverb_set): New function
	(reverb2_play):
	(reverb2_set): Removed (well #defined out)

1998-02-05  John Fitch  <jpff@lansky>

	* rdorch.c (getoptxt): Add 'h' case

1998-02-01  John Fitch  <jpff@lansky>

	* VERSION.H: 3.473

	* shaker.c (shaker): Change type of shake to float

	* shaker.h: Removed shake_times as not used.  Also change some
	longs to int.

1998-01-19  John Fitch  <jpff@lansky>

	* VERSION.H: 3.47

	* hetro.c: Make hmax a short so gets written correctly.

1998-01-07  John Fitch  <jpff@lansky>

	* fm4op.c (hammondB3): Only reset frequencies if there is a
	modulation, and do it inside main loop

1998-01-06  John Fitch  <jpff@lansky>

	* aops.c: Added tan, asin, acos, sinh, cosh, tanh, log10 support

	* entry.c: Added functions tan, asin, acos, sinh, cosh, tanh, log10

1998-01-02  John Fitch  <jpff@lansky>

	* entry.c: Added entries for tablekt and tableikt having found
	them in ugens2.c

1997-12-31  John Fitch  <jpff@lansky>

	* mandolin.c (mandolin): Arrange frequency is at k rate
	(mandolinset): If no lowest frequency need to multiply by 0.9
	-- minimum suggested detune.

	* mandolin.c: NEW FILE

	* physutil.c (ADSR_setReleaseRate):
	(ADSR_setDecayRate):
	(ADSR_setAttackRate):  Correction by NORM_RATE was missing.

	* fm4op.c (FM4Alg4_tick): Corrected mistaken use of wave[0] 4
	times.

	* shaker.h:
	* singwave.h:
	* moog1.h:
	* fm4op.h:
	* shaker.c:
	* singwave.c:
	* moog1.c:
	* fm40op.c: NEW FILE

1997-12-28  John Fitch  <jpff@lansky>

	* fgens.c (fgens): Apparent 'hole' at 300 tables.  Fix this?

	* filter.c (FPMAX): Change name from FMAX as that is used elsewhere

1997-12-26  John Fitch  <jpff@lansky>

	* ugensa.h: Make riphs field unsigned as Watcom gave false
	negative anser!

	* ugens2.c (kosc1): Will not compile with Symantec PowerC so
	remove optimisations
	(koscil): Ditto

1997-12-24  John Fitch  <jpff@lansky>

	* sread.c (getpfld): Allow E and e in numbers

1997-12-23  J P Fitch  <jpff@maths.bath.ac.uk>

	* entry.c: Added atan in three forms

	* aops.c: Added atan function.

1997-12-20  John Fitch  <jpff@lansky>

	* wincwin.c (MakeGraph): Remove caption and call to cwin_show
	(DrawGraph): Added call to cwin_show

	* cwin.cpp (class CGrapicsWindow): Add methods for Next and Prev
	Added vectors to remember old graphs
	(Clear): Copy old picture to the vectors if not already saved.
	(Next): Next function to cycle through graphs
	(Prev): And previous graph
	Altered menus etc to fit, and calls from main window

1997-12-19  John Fitch  <jpff@lansky>

	* rtaudio.c (playopen): Select win_dev in WIN32 if in range, else
	zero.
	Declare win_dev.

	* soundio.c (sfopenin): Accept devaudio# and adc# as valid RT
	audio in WIN32 situation.

1997-12-17  John Fitch  <jpff@lansky>

	* vibraphn.h:
	* marimba.h:
	* modal4.h:
	* modal4.c: New File, for marimba, vibraphone and agogobel

1997-12-15  John Fitch  <jpff@lansky>

	* fgens.c (gen01raw): Added check that length actually exceeded

1997-12-10  John Fitch  <jpff@lansky>

	* util2/exports/het_import.c (main): And again

	* util2/exports/het_export.c (main): Deal with header

Sat Dec 06 16:44:29 1997  John Fitch  <jpff@weir>

	* ugens3.c (adsyn): Get pointer to partials
	(adset): Read header and allocate space via aux

	* ugens3.h (ADSYN): Make ptlptrs into an aux structure

	* hetro.c (filedump): Write a header of number of partials

1997-11-24  John Fitch  <jpff@lansky>

	* sread.c (sget1): Deal with \ escapes

1997-11-23  John Fitch  <jpff@lansky>

	* soundin.c (sndgetset): Prepare for AIFC
	(newsndinset): Ditto
	(sndo1set): Ditto

	* soundio.c (sfcloseout): Add TYP_AIFC in preparation
	(sfopenin): Ditto
	(sfopenout): Ditto
	(sfopenout): Ditto

	* aiff.h: Added CommChunk3 definition

	* soundio.h (TYP_AIFC): Define new constant

	* cs.h: Added maxamps field to AIFFDAT structure

1997-11-20  J P Fitch  <jpff@maths.bath.ac.uk>

	* wave.c (wavReadHeader): Allow floats in input of WAV
	(wavWriteHdr): Allow floats in writing headers.

	* main.c (main): Allow WAV format floats

1997-11-18  John Fitch  <jpff@lansky>

	* fgens.c: Increased number of gens to 27; added gen25 and gen27.


1997-11-15  John Fitch  <jpff@lansky>

	* entry.c: Added opcode wgclar, wgflute, wgbow, wgbrass, marimba,
	vibes, agogobel, shaker, fmbell, fmrhode, fmwurlie, fmmetal, fmb3,
	fmvoice, fmpercfl

	* clarinet.h:
	* flute.h:
	* bowed.h:
	* brass.h:
	* physmod.c:
	* physutil.h:
	* physutil.c: New File

	* rdorch.c: Make lblreq into a dynamic object
	(rdorchfile): Alloc space to lblreq and initialise lblmax
	(lblrequest): Rewrite to use arrary access
	(lblfound): Rewrite to allow gro
	(lblchk): And again

1997-11-09  John Fitch  <jpff@lansky>

	* sread.c (ifa): Allow ^n in second field of score
	(getpfld): Admit ^ in scores

1997-11-01  John Fitch  <jpff@lansky>

	* makefile:
	* Makefile:
	* cross2.c:
	* all_files: Rename cross.c as cross2.c for consistency

1997-10-30  John Fitch  <jpff@lansky>

	* midisend.c: Further revision on LINUX version
	In SGI case ensure only one call to write (for 2 or 3 bytes) for
	each MIDI output call.

	* main.c: Added LINUX-specific forward declarations
	(main): -Q option in LINUX

1997-10-28  John Fitch  <jpff@lansky>

	* midisend.c: Various LINUX changes

	* ugens1.c (xsgrset): Setting of relestim was missing

1997-10-27  John Fitch  <jpff@lansky>

	* midiops2.c (TRUE): Protect definition in case already exists

1997-10-26  John Fitch  <jpff@lansky>

	* midisend.c: Added LINUX code

	* ugens1.c (lsgset): Allocation of segment space only checked for
	NULL and not being long enough (the common bug!) -- by inspection
	(lsgset): Wrote off end of SEG list.

	* SGIplay.c (play_on): Argument format to ANSI
	(play_set): Ditto ... and other functions

	* midiops2.c (initc7): Added void type
	(initc14): Ditto
	(initc21): Ditto

	* vpvoc.c (vpvset): Declaration of ldmemfil corrected

	* pvread.c (pvreadset): Declaration of ldmemfil corrected

	* pvinterp.c (pvbufreadset): Many %d -> %ld

	* scxtract.c (scxtract): Make functiomn type explicit

	* pvanal.c (takeFFTs): Correct format %d -> %ld

	* ugens7.c: Forward declaration of newpulse made ANSI

	* ugens4.c: Forward declarations of rand15 and rand16 made ANSI

	* ugens2.c (ptblchk): Added void type

	* ugens1.c (lsgset): Remopve variable d as not used

	* midirecv.c (m_chanmsg): Unwrapped ambiguous code

	* insert.c (MIDIinsert): Removed m_chnbp as not used

	* express.c (express): Added cast to char*

	* otran.c (constndx): Added cast to float* in case of C++ compiler

	* ugrw1.c (itablew): Declaration on ktablew
	(tableng): %f in format should be %p, or argument dereferenced
	(itableng): Ditto
	(tablegpw): Ditto
	(printksset): Remove false \c and \p cases
	(zawm): Unwrapped undefined code

	* fgens.c: Argument type in declaration of gen01raw

	* entry.c: Use sndwarpgetset

	* sndwarp.c (sndwarpset): Remove sndwarpset as not used

	* repluck.c (wgpsetin): Correct no-pluck case, and some code
	reorganisation to save space flapping

1997-10-15  John Fitch  <jpff@lansky>

	* aops.c (cps2pch): Corrected a rounding error in table case.
	(cpsxpch): Ditto

1997-10-12  John Fitch  <jpff@lansky>

	* ugens4.h:
	* ugens4.c:
	* ugens3.h:
	* ugens3.c:
	* entry.c: Remove doscil and poscil

1997-10-10  J P Fitch  <jpff@maths.bath.ac.uk>

	* aops.h (struct XENH): Correct argument order to fit documentation

	* cross.c (Xsynthset): Need to check that previous buffer is big
	enough (same bug as was in grain)
	(Xsynth): Re-construct due to JPff errors
	(Xsynth): Wrapping of n was at odd place??

1997-09-30  John Fitch  <jpff@lansky>

	* ugens2.c (itblchk): Replace NULL by 0 for types

Wed Sep 24 15:10:38 1997  J P ffitch  <jpff@maths.bath.ac.uk>

	* midirecv.c: Prototype for midNotesOff

	* musmon.c: Need a prototype for xturnon

	* zroots.c, laguer.c, nrutil.c: Removed,  Code moved into filter.c

Tue Sep 16 07:54:37 1997  John ffitch  <jpff@weir>

	* wavegde.c pluck.c filter.c zroots.c complex.c laguer.c
	nrutil.c: New files for plucked string and filter opcodes

	* cmath.c (seedrand): If seed of the random number is given as
	zero, seed from clock.

	* entry.c: Added new opcodes wgpluck, filter2, kfilter2, and zfilter2

	* repluck.c:
	* repluck.h (struct): Rename WGPLUCK to WGPLUCK2

	* entry.c: Renamed wgpluk to wgpluck2, and renamed structure

	* midirecv.c (m_chinsno): Remove test for maxinsno as there is no
	such thing really!

	* ugens2.c (ftkrchk): Moved return to end so all routes return a
	value.

	* rdorch.c (rdorchfile): Revise as MACRO now claimed by ADI

Thu Sep 11 16:31:41 1997  John ffitch  <jpff@weir>

	* cwin.cpp (OnGShow): Remove code related to backtrace as irrelevent
	(OnStop): Added stop and continue menu items as also as ^S-^Q
	These changes allow scrolling etc

Wed Sep 10 11:49:53 1997  John ffitch  <jpff@weir>

	* ugrw1.c (ftkrchkw): This function did not return any value in
	one case.  Make it return 1

	* otran.c (otran): Make sure ksmps is integer

	* ugrw1.c (timesr):
	(timesr):
	(instimes):
	(printkset):
	(printk):
	(printk):
	(printksset):
	(printks): Changed 1/ekr to onedkr to save division
	(zkset): Change value 0 for a float* to NULL as that is what is meant
	(zakinit): Do this twice more, (and for declarations)
	(zaset): Also for zastart

Mon Sep 08 20:12:58 1997  John ffitch  <jpff@weir>

	* ugens3.c: Prototype for turnoff

	* hrtferX.c: Removed function round as not used

Fri Sep 05 11:44:30 1997  John ffitch  <jpff@weir>

	* ugrw1.c (peakk): Changed abs to fabs which is clearly what is
	needed.  Use of abs changes to int and then back. (Whittle code)
	(peaka): Ditto

Thu Sep 04 11:54:26 1997  John ffitch  <jpff@weir>

	* ugrw1.c (printksset): Tidyup string decode to make it compatable
	with C wrt \ character.  Still needs work.

	* otran.c (otran): Allocate instrtxtp dynamically and allow to
	grow with mrealloc.  Removes restricton on largest instrument
	number.

	* musmon.c (playevents):
	* midirecv.c (m_chinsno):
	(m_chn_init):
	* oload.c (oload): New variable maxinsno replaces constant

Wed Sep 03 10:55:46 1997  John ffitch  <jpff@weir>

	* fgens.c (hfgens): If automatic numbering, it did not always
	allocate space in table

	* rdorch.c (getoptxt): Count 'm' in defaults section to remove
	error in ftgen

	* insert.c (MIDIinsert): Remove aging and overlap stuff

	* cs.h: Removed olap and age fields in INSDS

	* midiops.c: Removed midiolap and midiage

	* entry,c: Removed octdown and noctdft opcodes, also midiolap and
	midiage

	* spectra.c: Removed code for octdown as it is ADI proprietry


Fri Aug 29 15:25:59 1997  John ffitch  <jpff@weir>

	* util2/mixer/mixer.c (main):
	* cwin.cpp (class CArg):
	* wave.c (wavReadHeader):
	* soundio.c (iotranset):
	* soundin.c (sndo1set etc):
	* main.c (main):
	* LINUXaudio.c (setsndparms):
	* soundio.h (AE_UNCH): Renamed from AE_BYTE to AE_UNCH

Thu Aug 28 12:27:48 1997  John ffitch  <jpff@weir>

	* rtaudio.c (playopen): New variable ntmp as multiple use of ndev
	was causing problems.

	* dpwelib.h:
	* dsputil.c: Removed nested comments

	* repluck.c: New file

	* entry.c: Added wgpluck and repluck opcodes

Wed Aug 27 14:35:52 1997  John ffitch  <jpff@weir>

	* ugens5.c: Reorder code so RESET might work
	Declare DumpPoles instead of DumpPolesF, and comment out call!

Tue Aug 26 11:35:48 1997  John ffitch  <jpff@weir>

	* cross.c: Incorporated fhtfun.c into cross.c

	* fhtfun.c: REMOVE file

	* UTIL2/scale.dir/scale.c: Declarations of functions

	* midiops2.c: New file

	* entry.c: Added midicontroller message stuff

	* midiops2.h: New file

	* grain4.c (graingenv4): Code tidy on *xx++ type code
	(envv4): Change way of commenting out to #ifdef never


1997-08-20  John Fitch  <jpff@lansky>

	* midisend.c (send_midi_message):
	(note_on):
	(note_off):
	(control_change):
	(after_touch):
	(program_change):
	(pitch_bend):
	(poly_after_touch): Wrote WIN32 code for these as calls to
	midiOutShortMsg
	(openMIDIout): Open device 0 only for now

	* midioops.h (MD_CHANPRESS, etc): MIDI opcodes

	* midiout.c: Added calls to openMIDIout in each initialisation
	function.  May seem expensive but is minimal disturbance.

1997-08-18  John Fitch  <jpff@lansky>

	* SENT TO DAVE

	* midisend.c: Totally new file

1997-08-17  John Fitch  <jpff@lansky>

	* pvanal.c (pvanal):
	* lpanal.c (lpanal):
	* cvanal.c (cvanal):
	* hetro.c (filedump): Ensure analysis file is read-write.  Some
	systems seem to get this wrong

	* rtaudio.c (playopen): If more than 1 possible output in WIN32
	then allow user to choise which.  Also added some more checking
	(rtplay): Remove called to waveOutUnprepareHeader and
	waveOutPrepareHeader as they seem unnecessary (according to GAB)
	(rtclose): Change strategy for wrap-up

	* midiout.h: New file (Gabriel M)

	* midiout.c: New file (Gabriel M)

	* entry.c: Added MIDI output opcodes

1997-08-11  John Fitch  <jpff@lansky>

	* rdorch.c: Added type 'h' to argument type -- needed in MIDI

1997-08-06  John Fitch  <jpff@lansky>

	* ugens1.h: Define struct EXXPSEG

	* ugens1.c (xsgrset): Rewrite function

1997-08-05  John Fitch  <jpff@lansky>

	* otran.c: Remove txtcpy in favour of memcpy, and define macro

1997-08-01  John Fitch  <jpff@lansky>

	* dam.h: New file

	* dam.c: New file

	* makefile (dam.u): Added dam target

	* entry.c: Added dam opcode

1997-07-13  John Fitch  <jpff@lansky>

	* cross.c: New File

	* fhtfun.c: New File (support for cross)

	* ugens2.c (oscnset): New function
	(osciln): New function (for osciln opcode)

	* ugens2.h: New structure OSCILN

	* entry.c: Declarations for cross2 opcode
	Also osciln opcode

	* soundio.h (IOBUFSAMPS): Larger default buffers for Windows95

1997-07-07  John Fitch  <jpff@lansky>

	* ugens1.h: New fields in EXPSEG

	* entry.c: Added expsegr

	* ugens1.c (xsgrset):
	(kxpsegr):
	(expsegr): New functions

	* ugens3.h: New structure DOSC

	* oload.c (instance): Set chanel if MIDI

	* insert.c (insert): Add check for MIDI instruments from score

1997-07-05  John Fitch  <jpff@lansky>

	* ugens3.c (dosset, doscil): New functions

	* entry.c: Added doscil opcode

	* soundin.c (sndwrt1):
	(sndwrtu):
	(sndwrt2rev):
	(sndwrt2):
	(sndwrt4rev):
	(sndwrt4):
	(sndwrtf): New functions

	* soundio.h: New structs SNDCOM, SNDOUT and SNDOUTS

	* soundin.c (sndo1set): New function
	(soundout): New function
	(sndo2set):
	(soundouts): New but null functions

	* soundio.h (SNDOUTSMPS): New constant

	* midiops.c (ipchbend): New function
	(kbndset): New function
	(kpchbend): New function

	* entry.c: Added ipchbend and kpchbend, modify pchbend
	Added soundout.  Also soundouts but I think it is a failure

Sun Jun 22 11:54:43 1997  John Fitch  <jpff@lansky>

	* midirecv.c: Many changes and new functions for revised MIDI code

	* cs.h: New struct DPARM, DKLST and DPEXCL

	* ugens1.c (klnseg): Rewrite
	(lsgset): Rewrite
	(linseg): Rewrite

	* ugens1.h: Defien SEG type/struct

	* oload.c (oload): Define dvensmps

	* ugens1.h: Add new fields to LINSEG for releases

	* rdorch.c (rdorchfile): Added MACRo support

Tue Jun 17 15:48:29 1997  John Fitch  <jpff@maths.bath.ac.uk>

	* entry.c: Added linsegr opcode

Mon Jun 16 21:50:39 1997  John Fitch  <jpff@lansky>

	* rdorch.c (rdorchfile): Treat \ ... \n as ignorable

Fri Jun 13 21:34:01 1997  John Fitch  <jpff@lansky>

	* entry.c: Added turnon opcode

Tue Jun 10 09:02:58 1997  John Fitch  <jpff@lansky>

	* midiops.c (ichanctl):
	(chctlset):
	(chanctl): New functions

	* midiops.h: Added CHANCTL structure

	* entry.c: Added chanctrl opcodes

Mon Jun  9 21:43:27 1997  John Fitch  <jpff@lansky>

	* entry.c: Added extra optional argument to [ik]midictrl

	* midiops.c (mctlset): Added scaling

	* midiops.h: Changed MIDICTL to lo and hi from sc and base

	* midiops.c (imidictl):
	(midictl): Added scaling

	* midiops.h: Added MIDIMAP structure

	* entry.c: Added optonal arguments to veloc

	* midiops.c (veloc): Added scaling to veloc
	Removed f128 in favour of a constant

Sat Jun  7 20:06:53 1997  John Fitch  <jpff@lansky>

	* entry.c: Added ftlptim opcode

	* ugens4.c (posset): New function
	(poscil): New function

	* ugens4.h: POSC structure

	* entry.c: Added rnd and birnd in i and k formats
	Added poscil

	* aops.c (rnd1):
	(birnd1): New functions for direct use in orchestras

Fri Jun  6 09:20:31 1997  John Fitch  <jpff@lansky>

	* cs.h: Added posbend field to MCHNBLK

Thu Jun  5 21:48:00 1997  John Fitch  <jpff@lansky>

	* cs.h: Added mdepends field to INSTRTXT

Wed Jun  4 11:46:03 1997  John Fitch  <jpff@lansky>

	* aiff.c (aiffReadHeader): initialised markersp to NULL

Tue May 27 08:17:57 1997  John Fitch  <jpff@lansky>

	* cs.h: Added #defines for VSET etc

	* oload.h (struct): Lots of new structures for Vprogs and the like

	* midiops.h: Added MASSIGN and CTLINIT structures

Sun May 25 17:22:09 1997  John Fitch  <jpff@lansky>

	* ftgen.h: New file

	* entry.c: Entry for ftgen opcode

	* fgens.c (hfgens): New code
	(ftgen): New code; together for ftgen opcode

Sat May 24 18:36:41 1997  John Fitch  <jpff@lansky>

	* cs.h: Added fno to FUNC

Tue May 20 10:29:02 1997  John Fitch  <jpff@lansky>

	* ugens7.c (harmset): New function (BV)
	(harmon): Ditto

	* entry.c: Entry for harmon

	* ugens7.h (struct): Added HARMON struct

Mon May 19 21:51:31 1997  John Fitch  <jpff@lansky>

	* ugensa.c (newpulse): Changes abs to fabs as that is clearly what
	is needed.

Mon May 19 12:20:51 1997  John Fitch  <jpff@maths.bath.ac.uk>

	* winX11.c: Added include of <stdio.h>

Mon May 19 08:50:44 1997  John Fitch  <jpff@lansky>

	* rdscor.c (scanflt): treat comments when reading a number

Sat May 17 17:31:47 1997  John Fitch  <jpff@lansky>

	* cscormai.c (scfopen): Move this function from rdscor.c as only
	used in stand-alone cscore

	* rdscor.c: Delete scfopen function

Fri May 16 10:01:41 1997  John Fitch  <jpff@lansky>

	* memalloc.c (memdie): Made function void type

	* ugens5.c: Added int type to currentLPCSlot, and moved to top of
	file

	* midirecv.c: Added int type to sexcnt

	* winX11.c: Added int type for winstance

Sat May 10 23:44:12 1997  John Fitch  <jpff@lansky>

	* ugrw1.c: Change name of times function to timesr to avoid
	problems with Mac

	* entry.c: Change name of times function to timesr to avoid
	problems with Mac

Wed May  7 21:04:55 1997  John Fitch  <jpff@lansky>

	* butter.c (butter_filter): Changed declaration on n to long for
	consistency.

Sun May  4 08:58:44 1997  John Fitch  <jpff@lansky>

	* version.h: NEW VERSION 3.46

	* fgens.c (fgens): Expand the number of tables available
	dynamically.
	Declare fmax etc
	(gen04): (ftfind): (ftfindp): (ftnp2find): FMAX->fmax

	* rtaudio.c (RTwavclose): New function to close on early exit
	(playopen): Minor revisions to Win95, including CWIN->_WIN32
	(rtplay): Change _WIN32 way of playing buffers
	(rtclose): Change _WIN32 close down

	* prototyp.h: Add argument to getoptxt if RESET

	* soundin.c (soundinreset): New function protected by RESET
	(sndinset): Reset file position if already open
	(soundin): Check initialisation
	(soundinew): Check initialisation

	* sndwarp.c (sndwarp):
	(sndwarpst): Check initialisation

	* rdorch.c (orchreset): New function protected by RESET
	(getoptxt): Added argument if RESET and use it for reseting

	* memalloc.c (memreset): New function protected by RESET

	* fgens.c (ftreset): New function protected by RESET; code tidying

	* cscorfns.c (cscorereset): New function protected by RESET
	Also some code shuffling

Sat May  3 19:38:45 1997  John Fitch  <jpff@lansky>

	* spectra.c (koctdown): (octdown): (noctdft): (spdspset): (specdisp):
	(specptrk): (specsum): (specaddm): (spdifset): (specdiff):
	(spsclset): (specscal): (sphstset): (spechist): (spfilset):
	(specfilt): Check initialisations

	* musmon.c (musreset): New function protected by RESET

	* disprep.c (kdsplay): (kdspfft): (dspfft):
	(tempest): Check initialisation

	* otran.c (tranreset): New function protected by RESET

	* oload.c (oloadreset): New function protected by RESET

	* ugens3.c (foscil):
	(foscili): (adsyn): Check initialisations

	* ugens4.c (buzz): (gbuzz): (pluck): Check initialisation

	* ugens5.c (lpcreset): New function protected by RESET
	(lpinterpol): (lpread): Check initialisation

	* wave.c (wavReadHeader): Set hdrsize to include non-data chunks

	* grain4.c (graingenv4): Check initialisation

	* ugens9.c (convolve): Check initialisation

	* insert.c (insertreset): New function, protected by RESET
	(insert): Only print new alloc message if messages 2 set
	(initerror): Check there is an ids
	(perferror): and a pds

	* grain.c (ags): Check initialisation
	(ags): Check for zero density

	* express.c (expreset): New function, protected by RESET macro

	* hrtferX.c (hrtferxk): Check initialisation

	* ugens2.c (ktable): (table): (ktabli): (tabli): (kosc1):
	(kosc1i): (koscil): (osckk): (oscka): (oscak): (oscaa):
	(koscli): (osckki): (osckai): (oscaki):
	(oscaai): Check initialisation

	* ugens7.c (fof): Check initialisation

	* ugens6.c (delay): (delayr): (delayw): (deltap):
	(deltapi): (comb): (alpass): (reverb):
	(pan): Check initialisation

	* ugens8.c (pvoc): Check initialisation

	* sread.c (pcopy): Another place where fabs is needs in case of
	negative p3 in score.

	* nlfilt.c (nlfilt): Check initialisation

	* ugens1.c: Remove register declarations
	(klnseg): (linseg): (kxpseg): (expseg):
	(knvlpx): (envlpx): Check for initialisations

	* vdelay.c (vdelay):
	(multitap_play): (reverb2_play): Check for initialisation

	* pvinterp.c (pvbufread): (pvinterp):
	(pvcross): Check they are initialised

	* vpvoc.c (ktableseg):(ktablexseg): (voscili):
	(vpvoc): Check they are initialised

	* winX11.c (myXprintLines): ANSIfied function

	* pvoc.c:
	* dsputil.c: Removed FLOATARG as it is a mistaken idea

	* pvoc.h:
	* dsputil.h: Removed non ANSI stuff, and the horrid FLOATARG

	* aoscilx.c (aoscilxplay): Check opcode is initialised

	* follow.c (flwset): Check that length given is not zero (RWD
	suggestion but moved to init function)

Sun Apr 27 13:06:00 1997  John Fitch  <jpff@lansky>

	* cscormai.c (main): Added dribble initialisation
	(dribble_printf): New function
	(err_printf): New function

	* Makefile, makefile: Added new files

	* all_files: Added new files

	* ugensa.h: New file

	* ugensa.c: New file for FOG

	* entry.c: Add opcode fog

Sun Mar 23 18:08:01 1997  John Fitch  <jpff@lansky>

	* otran.c (otran): Revise check for consistent sr/kr=ksmps
	(otran): Check for finishing inside an instrument

Fri Mar 21 21:21:22 1997  John Fitch  <jpff@lansky>

	* entry.c: Added diskin opcode

	* soundin.c: New code for diskin opcode (Matt Ingalls)

	* diskin.h: New file

	* cs.h (DFLT_SR): Change to 44100
	(DFLT_KR): Change to 4410
	(DFLT_KSMPS): Remains 10 (!)

	* ugens2.c: Changes to table stuff (Whittle)

Thu Mar 20 22:17:00 1997  John Fitch  <jpff@lansky>

	* entry.c: Put Whittle opcodes back

	* fgens.c (ftfindp): New function (Whittle)

Wed Mar 19 13:25:43 1997  John Fitch  <jpff@lansky>

	* otran.c (otran): Set initial tran_{sr,kr,ksmps} to -1 and
	correct in otran.

Sun Mar 16 12:26:50 1997  John Fitch  <jpff@lansky>

	* ugens8.c (pvoc): Simplify initialisation when specwp greater
	than zero. (Richard Karpen)

Sat Mar  8 15:30:34 1997  John Fitch  <jpff@lansky>

	* hrtferX.c: Declaration of bytrevhost

	* main.c: Added #include <ctype.h> for isdigit

Fri Mar  7 13:16:37 1997  John Fitch  <jpff@maths.bath.ac.uk>

	* main.c (err_printf): Same error as before -- code in wrong
	order.  No idea how it got undone.

	* rtaudio.c (playopen): Comment out line about BitsPerSample on advice

Fri Mar  7 09:54:31 1997  John Fitch  <jpff@lansky>

	* opcode.c (list_opcodes): Use mmalloc/mfree rather than
	malloc/free
	(list_opcodes): Reorganize argument to mmalloc as well

Thu Mar  6 21:43:31 1997  John Fitch  <jpff@lansky>

	* entry.c: Added entry for soundin2

	* soundin.c (soundin2): New function, implements soundin2
	(sndinset): Initialisation for soundin2 added

	* soundio.h: Added new fields to SOUNDIN structure for soundin2

Wed Mar  5 10:59:32 1997  John Fitch  <jpff@lansky>

	* hrtferX.c (hrtferxkSet): Reverse bytes after reading HRTFcompact
	if necessary (as shown by byrevhost)

	* Makefile (CSRCS): CSRC7 was missing from CSRCS!
	* makefile (CSRCS): CSRC7 was missing from CSRCS!

Tue Mar  4 14:24:47 1997  John Fitch  <jpff@maths.bath.ac.uk>

	* opcode.c (list_opcodes): The malloc did not get enough memory --
	needed multiplication by the sizeof thingy

Tue Feb 25 10:33:22 1997  John Fitch  <jpff@lansky>

	* aops.c: Removed register declarations

	* wave.c: Removed various register declarations

	* swrite.c (fltout): Reinstated multiplication by precmult for
	LINUX only.  This is still wrong way to do it!

Tue Feb 18 08:57:08 1997  John Fitch  <jpff@lansky>

	* sread.c: Remove register declarations throughout
	(stof): Replace body by call to strtod for simplicity and shorter
	code. (Experimental I guess)

Sun Feb 16 15:49:57 1997  John Fitch  <jpff@lansky>

	* sread.c (ifa): Take absoulte value of previous p3 when reading a
	score, in order to deal with portamento etc

Fri Feb 14 21:49:51 1997  John Fitch  <jpff@lansky>

	* midirecv.c (m_chanmsg): Further midi chages to controllers from
	Mike Berry

Thu Feb 13 21:01:42 1997  John Fitch  <jpff@lansky>

	* midiops.h: sc and base fields in MIDICTRL
	and irange field in MIDIVAL

	* midiops.c (midibset): New function from Mike Berry
	(cpsmidib): Allow scaled pitchbend
	(octmidib): Ditto
	(pchmidib): Ditto
	(mctlset): Deal with controller 0

	* rdorch.c (getoptxt): Add code from Mile Berry to fix bug that
	prevented an opcode with only optional arguments from properly
	loading defaults

	* entry.c: Declared midisetb
	Added optional argument to ipchmidib, ioctmidib, icpsmidib,
	kpchmidib, koctmidib, kcpsmidib, imidictrl, kmidictrl.  Needed
	initialisation for some

Fri Feb  7 08:15:28 1997  John Fitch  <jpff@lansky>

	* ugens7.c (fof): In penultimate line removed * in *ar++ as it
	does not do anything, and I think it is spurious.  Also remove
	register declarayions all over

Wed Feb  5 17:53:54 1997  John Fitch  <jpff@lansky>

	* ugens7.c (newpulse): Corrected code (JPff mistake)

Mon Feb  3 09:48:32 1997  John Fitch  <jpff@lansky>

	* version.h (SUBVER): CHANGE VERSION NUMBER TO 3.45

	* swrite.c (fltout): Remove precmult as it does nothing and
	increase precision by one digit

	* sndwarp.c (sndwarpstgetset): New code from Richard Karpen
	(sndwarpstset): Ditto
	(sndwarpst): Ditto

	* fgens.c (ftfindp): Remove Whittle code

Sun Feb  2 12:22:01 1997  John Fitch  <jpff@lansky>

	* util2/mixer/mixer.c (main): Moved line assigning to O.filetyp to
	before AIFF/WAV sanity checks
	(MixSound): Second argument to audtran was size when shoudl have
	been length

Sat Feb  1 16:43:33 1997  John Fitch  <jpff@lansky>

	* swrite.c (fltout): Work in doubles internally (RK), but then
	replaced by fprintf anyway??

	* ugens2.c: Remove Whittle code

	* ugens2.h: Remove Whittle code

	* main.c (main): Add -z0 and -z1

	* Remove ugrw* from makefiles

	* entry.c: Remove Whittle opcodes

Tue Jan 28 07:54:58 1997  John Fitch  <jpff@lansky>

	* entry.c: Add fof2 opcode

	* ugens7.c (fofset0): Rename fofset and add argument to
	distinguish fof and fof2 initialisation ; also set fmtmod field in
	fof call only
	(fofset): Call fofset0 with true
	(fofset2): Call fofset0 with false
	(fof): fof and fof2 cases differ at start of loop
	(newpulse): Deal with fof2 case at end

	* ugens7.h: Add glissbas and sampct fields to OVRLAP
	and foftype field to FOFS

	* opcode.c: New file

	* prototyp.h: Added declaration of list_opcodes

	* main.c (main): Add -z option to list opcodes

Sun Jan 26 14:02:06 1997  John Fitch  <jpff@lansky>

	* cmath.c (auniform): Add new function for completeness
	(ikuniform): Ditto

	* ugens2.c: Changes to table stuff (Whittle)

	* ugens2.h: Added pfn field to TABLE for Whittle

	* ugrw1.c: New file (Whittle)

	* ugrw2.c: New file (Whittle)

	* prototyp.h: Added declaration of ftfindp

	* fgens.c (ftfindp): New function (Whittle)

	* ugens2.c: Remove register declarations

Fri Jan 24 18:52:01 1997  John Fitch  <jpff@lansky>

	* cmath.c: Removed register declarations throughout; also some
	improved layout of comments

Mon Jan 20 08:48:56 1997  John Fitch  <jpff@lansky>

	* lpanal.c (lpanal): Return after exit for compiler
	(lpanal): Only declare polyReal and polyImag if used

	* linevent.c (sensLine): Comment out unused variables

	* ieee80.c: Remove nested comment

	* hetro.c (hetro): Add a return after exit to keep compilers quiet

	* fft.c: Remove nested comments in 3 places, and a print
	statement

	* aiff.c (aiffReadHeader): Comment out unused vaiables

	* main.c (main): By use of %n arrange that a numeric argument can
	be follwed directly by another argument.

Wed Jan 15 20:39:12 1997  John Fitch  <jpff@lansky>

	* window.c (DummyRFn): Made it return zero rather than 1 as there
	does not seem to be an error here.  Thanks Marc!

Sat Jan 11 16:53:59 1997  John Fitch  <jpff@lansky>

	* vdelay.h: Added istod field to VDEL struct

	* entry.c: Add optional istod argument to vdelay

	* vdelay.c (vdelset): Skip initialisation if istod set

	* ugens6.c: Removed register declarations

	* vdelay.h (struct): Added istor field to STVB

	* vdelay.c (reverb2_set): Skip initialisation if istor set and
	have buffers.

	* entry.c: Added optional istor argument to reverb2

	* butter.c (bbutset):
	(butset):  Skip initialisation if istor non-zero

	* butter.h (struct): Added istor filed to BFIL and BBFIL

	* entry.c: Added optional extra argument to all butterworth
	filters

Tue Jan  7 10:32:09 1997  John Fitch  <jpff@lansky>

	* version.h (SUBVER): CHANGE VERSION NUMBER TO 3.44 in Windows

	* winsound.rc: Added postscript and Oldformat fields to DIALOG_1
	and DIALOG_LPC respectively.  Some reshuffling to make it fit

	* cwin.cpp (class CArg): Added m_postscript member
	(class CArg): and afx command
	(CArg): Set m_postscript from profile
	(OnInitDialog): Set initial value of Postscript
	(cwin_args): Set O.postscript after dialog

	* lpcdlg.cpp (class Clpcdlg): Added oldf to constructor, and
	m_oldf to the members.
	(class Clpcdlg): New afx OnOldFormat
	(Clpcdlg): Use oldf in constructor
	(lpanal_dialog): Oldf stuff

Mon Jan  6 10:25:31 1997  John Fitch  <jpff@lansky>

	* version.h (SUBVER): CHANGE VERSION NUMBER TO 3.44

	* aops.c (cpsxpch): Added table form of cpsxpch and cps2pch

	* lpanal.c (lpanal): Various fixes after new code.

Sun Jan  5 23:17:19 1997  John Fitch  <jpff@lansky>

	* ugens5.c (lpslotset): New function
	(lpitpset): New function
	(lpinterpol): New function
	: other changes throughout

	* ugens5.h: New field in LPREAD
	*  (struct): New structures

	* lpc.h (LP_MAGIC2): New definition

	* lpanal.c: Incorporated Marc Reseibois' alternative format.  Many
	changes all over

Sat Jan  4 19:25:23 1997  John Fitch  <jpff@lansky>

	* oload.c: Added postscript filed to initialisation of O structure

	* main.c (main): Remove O initialisation as in wrong place

Fri Jan  3 14:39:30 1997  John Fitch  <jpff@maths.bath.ac.uk>

	* Files sent to Mills College

Thu Jan  2 17:29:17 1997  John Fitch  <jpff@lansky>

	* main.c: Make scorename a global for winEPS
	Add initialisation of O fields

	* winEPS.c: New file for Encapsulated PostScript output

	* cs.h: Added postscript field

	* window.c (display):
	(dispexit):
	(dispset): Call Postscript stuff

	* main.c (main): Added -G option fopr Postscript printing

	* hrtferX.c: New code for 3D sound

	* entry.c: Added hrtfer opcode

Mon Dec 30 16:13:40 1996  John Fitch  <jpff@lansky>

	* entry.c: Added opcodes "sndwarp", "ktableseg", "ktablexseg",
	"voscili", "vpvoc", "pvread", "pvcross", "pvbufread", "pvinterp"

	* pvinterp.c:
	* pvread.c:
	* vpvoc.c:
	* sndwarp.c: New files added, from Richard Karpen, with some
	optimisations.

Sun Dec 29 13:15:57 1996  John Fitch  <jpff@lansky>

	* aops.c (cps2pch): New function for ET tuning
	(cpsxpch): Remove attempt at optional arguments

	* entry.c: Added cps2pch for ET tunings

	* linevent.c: (sensLine): Use strtod to read floating argument rather
	than use longs.  Untested!

Fri Dec 27 14:42:53 1996  John Fitch  <jpff@lansky>

	* util2/exports/het_export.c (err_printf): Define it
	(dribble_printf): Define it

	* util2/exports/pv_export.c (err_printf): Define it
	(mfree): Define it

Fri Dec 20 17:45:34 1996  John Fitch  <jpff@lansky>

	* rtaudio.c (rtclose): Modify close down for arbitrary buffers

	* ugens3.c (adset): Change length of filnam to MAXNAME

	* ugens5.c: Change length of lpfilnam to MAXNAME

	* ugens9.c (cvset): Change length of cvfilnam to MAXNAME

	* ugens8.c: Change length of pvfilnam to MAXNAME

	* cs.h (MAXNAME): Defined here

	* filopen.c (isfullpath): In PC case (and Atari) check for a: type
	names as well as /
	(MAXNAME): removed from this file

Mon Dec 02 15:23:53 1996    <jpff@maths.bath.ac.uk>

	* AOPS.c (cpsxpch): New function of equal temprament not 12/octave

	* AOPS.h (XENH): Structure for tuning

Fri Nov 27 14:49:00 1996  John Fitch  <jpff@ardindrean>

	* rdscor.c (rdscor): Added comments after 'e'

Tue Nov 26 16:40:26 1996    <jpff@maths.bath.ac.uk>

	* cwin.cpp: Added NONSTOP feature and a button to control it

Mon Nov 04 15:38:40 1996  John Fitch  <jpff@ardindrean>

	* FILOPEN.C (openin): If the file does not exist but SFDIR does it
	fails to notice a non-existent file.  Remove an else!

Mon Oct 28 10:13:55 1996  John Fitch  <jpff@ardindrean>

	* RDORCH.C (synterr): Remove register declarations; so new layout

Thu Oct 24 15:36:34 1996    <jpff@maths.bath.ac.uk>

	* VDELAY.c (vdelset): Only zero buffer if not new
	(multitap_set): Ditto
	(multitap_play): Remove division for assignment

Mon Oct 21 21:08:52 1996    <jpff@maths.bath.ac.uk>

	* version.h: (SUBVER): CHANGE VERSION NUMBER TO 3.43

	* rtaudio.c (playopen): Fixed allocation of buffer in CWIN case
	(rtplay): Use quadruple bufering correctly

Thu Oct 17 18:44:10 1996  John Fitch  <jpff@ardindrean>

	* VDELAY.c (multitap_set): Fixed the regular bug in allocation of
	buffer.

Thu Oct 17 17:34:15 1996    <jpff@maths.bath.ac.uk>

	* butter.c: New variable pidsr, set in both setters and used for
	pi/esr

Thu Oct 17 16:26:20 1996  John Fitch  <jpff@Ardindrean>

	* CMATH.c: Many code tidying operation -- all minor

Wed Oct 09 16:27:49 1996  John Fitch  <jpff@ardindrean>

	* rtaudio.c (playopen): Allocate each buffer with its own
	GlobalAlloc/GlobalLock

Tue Oct 08 16:10:24 1996  John Fitch  <jpff@ardindrean>

	* LPCDLG.CPP (class Clpcdlg): Added graphics selection -- most of
	code was there but not visible!

Tue Oct 08 15:29:09 1996  John Fitch  <jpff@ardindrean>

	* CWIN.CPP (OnOrchestra): Change title of dialog window and hide
	read-only button
	(OnScore): Change title of dialog window and hide read-only button
	(OnSoundfile): Change title of dialog window

Mon Sep 30 14:06:52 1996    <jpff@ardindrean>

	* grain4.c (graingenv4): Took array access out of loop with direct
	increments and similar use of local names

Fri Sep 13 10:45:09 1996  John Fitch  <jpff@lansky>

	* vdelay.c (vdelset): Bracket expression to get binding right
	(vdelset): Check size of buffer as well as existence (cf grain)
	(vdelay): Ensure max delay is at least 1
	(vdelset): Clear at least one slot

Thu Aug 15 05:36:11 1996  John Fitch  <jpff@lansky>

	* version.h (SUBVER): CHANGE VERSION NUMBER TO 3.42

	* memalloc.c (mcalloc): If calls for 0 bytes do not give an error

	* memalloc.c (memdie): Add argument to print size of failure
	(mfree): Use 0 argument for free
	(mrealloc): In CWIN set negative
	(mrealloc): Add argument in general case
	(mmalloc): Add argument in general case
	(mcalloc): Add argument in general case

Mon Jul 22 08:49:44 1996  John Fitch  <jpff@lansky>

	* fgens.c (gen21): Argument for Weibull ignore p6 so shuffle them
	down.
	(gen21): Check for at least 1 argument first, and treat the other
	two specials in the switch; saves code and very little cost.

	* cmath.c (exprand): I think algorithm was wrong in assuming
	lambda always 1.  Allowed range and lambda
	(biexprand): Code had lambda as always 1; make parameter 1/lambda
	(pcauchrand): Code was plain wrong

	* fgens.c (gen21): Add range to exponential distribution as well
	as spread.

	* cmath.h: Change prototype

	* cmath.c (unifrand): Add argument so as to give a range.

Sat Jul 20 18:55:39 1996  John Fitch  <jpff@lansky>

	* cmath.c (cauchrand): Limit answers to [-1,1]. Despite theory of
	99.9% I get some outside.
	(pcauchrand): The same range limiting.

	* fgens.c (gen21): For type 7 and 8 (Cauchy) it asked for an
	additional argument, and ignored the usual one.  As it was
	undocumented fixed to one argument

Tue Jul 16 09:29:48 1996  John Fitch  <jpff@lansky>

	* cwin.cpp (OnInitDialog): Format buttons started at _8 rather
	than _U8.

	* version.h (SUBVER): CHANGE VERSION NUMBER TO 3.41

	* rtaudio.c (rtplay): Triple buffering system
	(playopen): Create 3 buffers from one GlobalAlloc call
	(rtclose): Flush buffers before Reset. [All CWIN case]

Mon Jul 15 11:31:02 1996  John Fitch  <jpff@lansky>

	* rtaudio.c (rtplay): Remove the memcpy and cycle buffers.  Get
	WHDR_DONE correct and other simplifications.

Sun Jul 14 12:35:14 1996  John Fitch  <jpff@lansky>

	* rtaudio.c: Added draft Windows Multimedia support
	(playopen): Ditto
	(rtplay): Ditto
	(rtclose): Ditto

Tue Jul  9 21:25:27 1996  John Fitch  <jpff@lansky>

	* util2/mixer/xtrct.c: Change name of variable time to stime cos
	the Irix6.2 system complains.

Fri Jul  5 20:51:58 1996  John Fitch  <jpff@lansky>

	* all_files: SGIplay.c was missing

Sun Jun 16 20:58:01 1996  John Fitch  <jpff@lansky>

	* soundio.c (sfcloseout): Make datasize into unsigned long
	(especially for 68K)

Wed Jun 12 08:09:35 1996  John Fitch  <jpff@lansky>

	* wave.c (wavReadHeader): Add cast to (void*) 'cos Mac compiler
	complained

	* Transferred files to MAC

Mon Jun 10 08:59:57 1996  John Fitch  <jpff@lansky>

	* version.h (SUBVER): CHANGE VERSION NUMBER TO 3.40

	* wincwin.c: Include <string.h> and add variaous ignoring of
	arguments.
	(DrawGraph): Add cwin_paint() call

	* util2/exports/lpc_export.c:
	* util2/exports/het_import.c: Include <stdlib.h> which had been
	missed

	* ugens9.c:
	* ugens8.c: Move inclusion of <math.h> earlier to avoid an arcane
	VC problem

	* filopen.c: Add _WIN32 to definitions of RD_OPTS and WR_OPTS
	(openin): After open the test should be >=0

	* fgens.c (gen20): Remove register storage class from array as
	upsets VC and does no good anyway

	* pvanal.c (pvanal):
	* lpanal.c (lpanal):
	* hetro.c (hetro):
	* cvanal.c (cvanal):
	* fgens.c (gen01raw): Check on negative return from sndgetset as
	consequence of previous change

	* soundin.c (sndgetset): Change function to return -1 on failure
	instead of 0 as that does not rely on zero being in use for stdin
	(SAsndgetset): Also return -1 on failure

Sun Jun  9 16:31:48 1996  John Fitch  <jpff@lansky>

	* sysdep.h: Add _WIN32 support

	* pvoc.c: Add _WIN32 support

	* main.c (main): Add _WIN32
	(main): and again for SYS5

	* scot.c (efindword): Change type to void

	* scot.h: Change type of efindword to void

	* dsputil.c (hypot): Define hypot as _hypot for Visual C++

	* vdelay.c (reverb2_play): Change return type to void

	* midirecv.c (MidiOpen): Add _WIN32 to SYMANTEC
	Add _WIN32 to list of o/s which to not load ioctl.h
	(MidiOpen): Add _WIN32 to non SYS5 list
	(MidiOpen): Add _WIN32 to systems without ioctl

	* wave.c (wavReWriteHdr): Value check on result of lseek was wrong.
	(wavReadHeader): Add code to skip odd chunks in reading a header

	* dpwelib.h: Add _WIN32 to systems which include <stdlib.h>

	* linevent.c (RTclose): Add _WIN32 to list of systems which do not
	know about fcntl
	(RTLineset): Ditto

	* dumpf.c (kdmpset): Change test on openout to <0
	(kdmp2set): Ditto
	(kdmp3set): Ditto
	(kdmp4set): Ditto

Sat Jun  8 16:11:56 1996  John Fitch  <jpff@lansky>

	* cmath.c (gaussrand): Change floating value for n to an integer

Mon Jun  3 08:35:11 1996  John Fitch  <jpff@lansky>

	* lpanal.c (lpanal): Allocate coef and cc dynamically

	* hetdlg.cpp (DoDataExchange): Remove limit of 50 in number of
	harmonics

	* hetro.c (hetro): Allocate MAGS and FREQS dynamically
	(hetro): Allow more than HMAX harmonics
	(filedump): Allocate mags and freqs dynamically

Sun Jun  2 12:53:06 1996  John Fitch  <jpff@lansky>

	* cwin.cpp (cwin_almost_ensure_screen):
	(cwin_ensure_screen):
	(cwin_poll_window_manager):
	(CMainWindow): Change GetSystemTime -> GetLocalTime

	* memalloc.c (mfree): New function
	(all_free): Do not free NULL pointers

	* prototyp.h: Declare mfree

	* wguide.c (wgpset):
	* sread.c (sfree):
	* sndinfo.c (sndinfo):
	* rdorch.c (rdorchfile): (splitline):
	* pvoc.c (PVFree):
	* otran.c (otran): (insprep):
	* oload.c (oload):
	* memfiles.c (rlsmemfiles):
	* insert.c (orcompact):
	* hetro.c (hetro): (filedump):
	* fgens.c (fgens): (gn1314): (ftalloc):
	* cscorfns.c (filclose):
	* auxfd.c (auxalloc): (auxchfree):
	* aiff.c (aiffReadHeader):
		change free -> mfree

Thu May  2 21:37:23 1996  John Fitch  <jpff@lansky>

	* version.h (SUBVER): CHANGE VERSION NUMBER TO 3.39

	* butter.c (ROOT2): Define ROOTS as a macro rather than
	recalculate it for each k-rate

	* memalloc.c: CWIN only -- allow a flexible number of allocs by
	reallocing the array.

Thu Apr 18 11:00:11 1996  John Fitch  <jpff@lansky>

	* grain.c (ags): Optimisations in many places to save
	recalculation and memory fetches.  Moves some stuff out of inner
	loop.

	* grain.h (struct): Changed type of PGRA.pr to float

Thu Mar 28 08:35:43 1996  John Fitch  <jpff@lansky>

	* version.h (SUBVER): CHANGE VERSION NUMBER TO 3.38

	* main.c (main): Add date of compilation to banner

	* musmon.c (musmon): Add date of compilation to banner

	* musmon.c (musmon): Removed test for !O.RTevents as it seems to
	stop score tables being read in MIDI case.

Thu Mar 21 09:29:42 1996  John Fitch  <jpff@xenakis>

	* main.c (main): Add LATTICE to SYNANTEC to avoid a setlinebuf

	* midirecv.c: Add LATTICE to options with PC stuff

	* linevent.c (RTLineset): Add LATTICE to options when do not use
	fcntl etc

Tue Mar  5 23:13:51 1996  John Fitch  <jpff@lansky>

	* sread.c (copylin): Change EOF to EOL in structure.  Mends bug
	about bad characters.

Sat Feb 24 14:56:31 1996  John Fitch  <jpff@lansky>

	* otran.c (putop): Correct typing error of \t instead of \n

Sun Feb 18 11:37:15 1996  John Fitch  <jpff@lansky>

	* version.h (SUBVER): CHANGE VERSION NUMBER TO 3.37

	* rdscor.c (scanflt): Use fscanf rather than read floats character
	at a time.  Not sure that this is necessarily a good thing.

	* hetro.c (hetro): Added a check that -hn has n>=1 (David Whelan)

Sat Feb 17 11:53:57 1996  John Fitch  <jpff@lansky>

	* musmon.c (musmon): Close dribble file at end

	* auxfd.c (fdchprint):
	* express.c (putoklist) (putokens):
	* midirecv.c (sensFMidi):
	* musmon.c:
	* otran.c:
	* rdorch.c:
	* rdscor.c (dumpline):
	* winascii.c (DrawAscii): use putc to dribble file as well

	* version.h: NEW FILE to carry version numbers only

	* cs.h: include version.h

	* swrite.c:
	* sort.c:
	* pvoc.c:
	* ieee80.c: Include cs.h to declare dribble stuff

	* util2/scale.dir/scale.c:
	* util2/mixer/xtrct.c:
	* util2/mixer/mixer.c: Added -- option and change all
	printf/stderr printing to new style

	* cs.h: Add extern declaration of dribble

	* lpanal.c (lpanal):
	* pvanal.c (pvanal):
	* hetro.c (hetro): Added -- option to log

Fri Feb 16 07:37:55 1996  John Fitch  <jpff@lansky>

	* util2/sndinfo/main.c (main): ANSIfy and add dribble stuff

	* util2/mixer/xtrct.c:
	* util2/envext/envext.c:
	* util1/sortex/smain.c:
	* util1/sortex/xmain.c:
	* anal/pvoc/main.c:
	* anal/lpc/main.c:
	* anal/adsyn/main.c: Added functions dribble_printf and err_printf

Thu Feb 15 10:13:40 1996  John Fitch  <jpff@lansky>

	* DECaudio.c
	* DECplay.c
	* blaster.c
	* cvanal.c
	* hetro.c
	* ieee80.c
	* linevent.c
	* lpanal.c
	* main.c
	* memalloc.c
	* midirecv.c
	* musmon.c
	* otran.c
	* pvanal.c
	* pvoc.c
	* rdorch.c
	* rtaudio.c
	* sfheader.c
	* sort.c
	* spectra.c
	* sread.c
	* swrite.c
	* twarp.c
	* wave.c
	* winSGI.c
	* winbor.c
	* winfg.c
	* winwat.c: fprintf(stderr,...) -> err_printf(...)

	* main.c (dribble_printf): New function to write to stdout and
	dribble.
	(err_printf): dito for stderr.

	* cs.h: Macro printf to dribble_printf and declare it.

	* main.c (endif): Make -- option for a log/dribble file.  Declare
	dribble variable.

Mon Feb 12 08:53:29 1996  John Fitch  <jpff@lansky>

	* musmon.c (musmon): Added guard to opening O.playscore as at
	least Linux barfs (thabks to Richard Furse).

Thu Feb  1 09:41:00 1996  John Fitch  <jpff@lansky>

	* lpanal.c (gauss): Change all *(b+..) of b[...] for clarity
	(alpol): Calcular error at end more simply -- less arithmetic but
	some danger of overflow (but I think not)

Mon Jan 29 09:51:34 1996  John Fitch  <jpff@lansky>

	* lpanal.c (lpanal, alpol): Allocate array x once in lpanal rather
	than on every call of alpol.
	(gauss): Similar for aold

Sun Jan 28 15:50:00 1996  John Fitch  <jpff@lansky>

	* lpanal.c (alpol): Optimise a pow(..., 2.0) to a product

	* mw_menu.c (dlgUtilLpAnal): Set mark in box for Verbose and
	Graphics boxs
	(dlgUtilPvAnal): The same.
	(dlgFileOpen): Allow direct editing of orc and sco file names.
	Also requires change in Csound.rsrc
	(dlgUtilLpAnal): Added a Debug option and corrected verbose to
	give -v1

Mon Jan 22 08:53:45 1996  John Fitch  <jpff@lansky>

	* Csound.rsrc: (Mac only) added titles to dialogs and fixed
	mini-typo in dialog linking

Sun Jan 21 20:15:40 1996  John Fitch  <jpff@lansky>

	* musmon.c (musmon): Remove call to RTclose as atexit does it

	* linevent.c (RTLineset): Use atexit to arrange call to RTclose

Sun Jan 14 21:25:06 1996  John Fitch  <jpff@lansky>

	* sysdep.h:
	* soundio.c:
	* pvoc.c:
	* otran.c:
	* mw_menu.c:
	* midirecv.c:
	* memfiles.c:
	* main.c:
	* linevent.c:
	* filopen.c:
	* dpwelib.h:
	* cs.h: Changed THINK_C to SYMANTEC as need to modify their
	library as bug in I/O.

Sun Jan  7 14:49:44 1996  John Fitch  <jpff@lansky>

	* Change type of cscore to void for consistency

Thu Jan  4 08:15:53 1996  John Fitch  <jpff@lansky>

	* grain4.c (graingenv4): Changed a 1.0* to a float for speed

	* cs.h (SUBVER): CHANGE VERSION NUMBER TO 3.36

	* grain.c (agsset): Added a size check in the decision to get a
	new buffer.

Wed Jan  3 07:46:39 1996  John Fitch  <jpff@lansky>

	* winX11.c (ExitGraph): Added a check to the CSNOSTOP environment
	variable to avoid the final wait for click.

Mon Jan  1 18:56:08 1996  John Fitch  <jpff@lansky>

	* main.c (endif): Need an exit(0) after call to cvanal

Thu Dec 28 16:55:27 1995  John Fitch  <jpff@lansky>

	* util2/mixer/mixer.c (MixSound): In output buffer step by number
	of channels
	* util2/mixer/mixer.c: Added prototypes and includes

Wed Dec 27 21:16:29 1995  John Fitch  <jpff@lansky>

	* util2/mixer/mixer.c (InitScaleTable): Deal with same x values in
	table in different way.
	* util2/mixer/mixer.c (MixSound): Add code to handle stereo etc
	inputs correctly, with additional field in structure.

Mon Dec 25 14:38:20 1995  John Fitch  <jpff@lansky>

	* util2/mixer/mixer.c (main): Added AE_BYTE format
	(bytetran): New function

Fri Dec 22 10:14:06 1995  John Fitch  <jpff@lansky>

	* grain4.c (grainsetv4): Various spelling corrections and minor
	optimisations.  Also changes exit(1) to initerror calls and return.

Tue Dec 19 09:34:52 1995  John Fitch  <jpff@lansky>

	* cs.h: Upped VERSION to 3.35

	* grain4.c: NEW FILE for granular synthesis

	* entry.c: Added buthp, butlp, butbp, butbr as synonyms for
	butterXX, and convle and an abbreviation for convolve.
	Added grain4 operator

	* cs.h: Added a next field in MEMFIL to relax memfiles.c

	* memfiles.c (rlsmemfiles): Adjust to delete from the revised structure
	(ldmemfile): Follow list of MEMFILs while looking for file

Sat Dec 16 14:35:22 1995  John Fitch  <jpff@lansky>

	* mw_menu.c: Added utilities dialogs, and other stuff.

	* pvanal.c (takeFFTs): Added POLL_EVENTS at end of loop

	* lpanal.c (lpanal): Added call to POLL_EVENTS at end of loop for
	Mac and PC.

	* winsound.ico, dream.ico: Changed to have screen background

Sun Dec  3 09:35:05 1995  John Fitch  <jpff@lansky>

	* soundio.c (audwrite): For macintosh make heartbeat use the
	metronome cursor.

	* rdscor.c (rdscor): Close score file at EOF.

Sat Dec  2 18:04:03 1995  John Fitch  <jpff@lansky>

	* main.c (main): Correct the check for WAV+format and AIFF+format

Tue Nov 21 07:22:20 1995  John Fitch  <jpff@lansky>

	* soundio.h: (solaris) include <multimedia/audio_device.h>

	* soundio.c: (solaris) define audiofd variable
	(sfopenout): (solaris) write header specially

	* sfheader.c: Solaris support, include <unistd.h>

	(readheader): No need for ininfop, and do rewind (solaris)
	(writeheader): Solaris has different checks for devaudio when
	opening.

	* rtaudio.c: Add solaris support

	* rdorch.c: Include <unistd.h> for solaris

	* midirecv.c: Add Solaris support

	* makefile: Added Solaris2.4 library stuff

Mon Oct 30 07:16:41 1995  John Fitch  <jpff@lansky>

	* cwin.h: Remove referrences to Greek.

Sun Oct 29 10:27:53 1995  John Fitch  <jpff@lansky>

	* winsound.rc: Modified Dialog_1 for unsigned 8bit and reshape
	Made file names wider, and reposition on screen

	* cs.h (SUBVER): Increased to 34

	* wave.c (wavWriteHdr): Set len0 filed to databytes+36 as
	suggested by Mohr
	(wavReWriteHdr): Set len0 to 8 bytes less than end -- seems odd
	(wavReadHeader): Force BYTE format

	* soundio.c (iotranset): Set up BYTE format, twice
	(bytetran): New function for unsigned 8-bit samples
	(bzerotran): New function ditto
	(byterecv): New function ditto

	* soundin.c (getstrformat): Add AE_BYTE format
	(getsizformat): formatsiz longer for new format, and test against
	AE_LAST
	(sndgetset): Add AE_BYTE
	(getsndin): BYTE format again, in all and select channel forms
	(soundin): BYTE format

	* rtaudio.c: Includes and defines for LINUX
	(recopen): Open for LINUX
	(playopen): Open and set volume for LINUX
	(rtrecord): Get LINUX bytes
	(rtplay): Write LINUX bytes
	(rtclose): and LINUX close

	* midirecv.c: Add #defines for LINUX

	* makefile: Comment on options for LINUX

	* soundio.h (AE_BYTE): Defined for unsigned 8bit
	(AE_LAST): Defined for checking purposes

	* main.c (main): Added -8 option for unsigned 8bit samples.
	  (main):   In WAV format must be -8 or -s format
	  (main):   Add -V for volume option (LINUX only)
	  (usage):  and extend message tp reflect all this

	* cs.h: Added Volume field to OPARMS structure for LINUX only

Mon Oct 23 09:53:37 1995  John Fitch  <jpff@lansky>

	* cs.h (SUBVER): Up subversion number to 33

	* cwin.cpp (cwin_args): Set play_on_exit to false unless it is a
	WAV format.
	(CDialog): Add OnPlay method

	* dialogs.h: Add check box for play on exit

	* winsound.rc: Add Check box for play_on_exit

Sun Oct 22 21:31:06 1995  John Fitch  <jpff@lansky>

	* cwin.cpp (cwin_exit): Added code to play sound file on exit and
	a flag set.  No link to set flag yet.

Tue Oct 17 22:37:08 1995  John Fitch  <jpff@lansky>

	* main.c (main): Add printing of Version number at start; may
	revise this.

Mon Oct 16 21:07:23 1995  John Fitch  <jpff@lansky>

	* pvdlg.cpp (Cpvdlg::Cpvdlg): Initialise input and output from
	registry
	(pvanal_dialog): Write file names back to registry

	* lpcdlg.cpp (Clpcdlg::Clpcdlg): Initialise input and output from
	registry
	(lpanal_dialog): Write file names back to registry

	* hetdlg.cpp (Chetdlg::Chetdlg): Initialise input and output from
	registry
	(hetro_dialog): Write file names back to registry

	* cvdlg.cpp (Ccvdlg::Ccvdlg): Initialise input and output from
	registry
	(cvanal_dialog): Write file names back to registry

Mon Oct 16 06:06:57 1995  John Fitch  <jpff@lansky>

	* cwin.cpp: Remove declaration of CTheApp class

	* cwin.h: Move delaration of CTheApp class to C++ section and get
	external reference to theApp

	* cwin.cpp: Generally remove Symbol fonts and Greek
	(CArg::CArg): Initialise from the registry
	(cwin_args): Write values back to registry
	(CArg): Declare csound_section
	(CArg::OnExtras): Initialize and save in registry
	(CArg::OnInitDialog): Initialise butons as in registry
	(CSextras::DoDataExchange): Use DDX to initialise check boxes
	rather than methods

	* wave.c (wavWriteHdr): Improved comments

Sun Oct  1 16:43:18 1995  John Fitch  <jpff@lansky>

	* WINDOWS Version: Now can distribute cwin.cpp and associated
	files

Sun Sep 24 09:44:59 1995  John Fitch  <jpff@lansky>

	* DOS VERSION: Renames cspent.* to csound.* and change the project
	accordingly.

Wed Sep 20 21:33:40 1995  John Fitch  <jpff@lansky>

	* oload.c (oload): In test for inconsistent sr/kr!=ksmps add extra
	printing to look for possible MAC bug.

Sat Aug 12 15:38:36 1995  John Fitch  <jpff@maths.bath.ac.uk>

	* memfiles.c (RD_OPTS): Extra cases for DOSGCC, LATTICE and the rest
	(LoadFile): IGNORE foo argument, and use RD_OPTS as arg to open

Sun Jul 30 10:20:57 1995  John Fitch  <jpff@maths.bath.ac.uk>

	* oload.c (oload): Mac specific STasks -> POLL_EVENTS

	* winascii.c (MakeAscii): Add second (unused) argument so agrees
	with design
	(DrawAscii): POLL_EVENTS in the loop (not mac only STasks)

	* rdorch.c: For SUN computers need to define SEEK_SET etc as their
	compiler is not true ANSI
	(splitline): Mac specific STasks -> POLL_EVENTS

	* scsort.c: include cs.h for POLL_EVENTS
	(scsort): Now a void function, and Mac specific STasks -> POLL_EVENTS

	* otran.c (insprep): Remove unused variable newlabs
	(insprep): Remove unused variable newlarg
	(insprep): Mac only STasks -> POLL_EVENTS
	(constndx): Remove old (commented out) code to read numbers as the
	scanf version seems more secure.

	* insert.c (kperf): Layout
	(kperf): Changed Mac specific STasks to POLL_EVENTS for generality
	(rireturn): Explicit IGNORE of argument to keep compiler quiet
	(reinit): Add explicit cast to keep type system sweet

	* cs.h: Include <stdlib.h>

	: __ZTC__ -> __ZPC__ and WATCOMC support
	: LATTICE C support incorporated from Atari
	: Declare structures only if in C (not C++)
	Declare POLL_EVENTS as STasks in Mac, nothing in C, and leave in
	WINDOWS; for CWIN need to macro fprintf and printf to
	window-writing versions

Sat Jul 29 15:22:05 1995  John Fitch  <jpff@lansky>

	* soundio.h: ANSI only prototypes

	* filopen.c: Declare soundfile_pointer if on MetroWerks compiler
	(sssfinit): Add __MWERKS__ to THINK_C
	(isfullpath): Add __MWERKS__ to THINK_C
	(catpath): Add __MWERKS__ to THINK_C
	(unquote): Add __MWERKS__ to THINK_C
	: Definition of RD_OPTS and WR_OPTS for MetroWerks
	Define O_BINARY if not done already and use in teh RD/WR OPTS
	(openout): Not defined for MWERKS, and totally new version, and
	define tell

	* soundio.c (audwrite): POLL_EVENTS after heartbeat
	(sfopenout): For Mac direct output is in AE_SHORT format
	(sfopenout): Add Mac Headers and Creator (Mac only!)
	(chartran): Add cast to long as appropriate

	* sfheader.c (readheader): MetroWerks support (for powerPc)
	(readheader): Remove unused variable n
	(readheader): Tidy up #if...#elif... structure
	(readheader): Do a SEEK to end before closing file to get size,
	rather than use calculated value, and better general case
	(writeheader): Add casts in call to write
	(writeheader): Support fotr Mac file type moved elsewhere

Sat Jul 15 15:11:47 1995  John Fitch  <jpff@lansky>

	* pvanal.c: ANSI prototypes only
	__ZTC__ -> __ZPC__ so Mac compiles
	(pvanal): Now an int valued function, and calls dialog in WINDOWS
	case
	(pvanal): Added -V and -v options for tracing, and print PV data
	if verbose is set
	(quit): Change usage message for -v and -V
	(takeFFTs): IGNORE outputPVH argument
	(takeFFTs): Do not print simple messages is verbose is set
	(takeFFTs): but print it later in detail
	(PrintBuf): Print trace to the trace file

	* pvoc.c: __ZTC__ -> __ZPC__

	* ustub.h: __ZTC__ -> __ZPC__

	* musmon.c (musmon): __ZTC__ -> __ZPC__
	(musmon): Added calls to POLL_EVENTS all over the place
	(musmon): If LINEin in use call RTClose as part of clean up
	(playevents): Call POLL_EVENTS in the loop

	* lpanal.c: __ZTC__ -> __ZPC__
	(lpanal): Now a int valued function, returning non zero for success
	(lpanal): Remove unused variable nsamps
	(lpanal): Call dialog system for WINDOWS
	(lpanal): __ZTC__ -> __ZPC__
	(lpanal): Remove unused variable fp2

	* linevent.c: Declare stdmode to save old mode of tty
	(RTLineset): __ZTC__ -> __ZPC__
	(RTLineset): Remember old tty mode in stdmode (UNIX only)
	(RTclose): If output was to tty restore the mode in UNIX cases
	[Last two fix bug about disapprearing Xterms]
	(sensLine): ANSI header

	* sysdep.h: __ZTC__ -> __ZPC__

	* dsputil.c: Change  __ZTC__ to __ZPC_ and add support for WATCOMC
	(Rect2Polar): Remove unused variable pha
	(MakeHalfWin): Removed unused variable a,b and i

	* dpwelib.h: Change  __ZTC__ to __ZPC__ as it interferes with
	Macintosh compiler

	* midirecv.c: __ZTC__ -> __ZPC__
	(MidiOpen): IGNORE arg if not SGI
	(m_timcod_QF): IGNORE arguments
	(m_song_pos): IGNORE arguments
	(m_song_sel): IGNORE arguments

	* main.c: __ZTC__ -> __ZPC__
	: for Windows declare dialog functions, and rename main to cwin_main
	(main): add POLL_EVENTS and for Windows call cwin_atexit to free
	space; call dialog system
	(main): WATCOM C support
	(dialog_arguments): WINDOWS only call dialog for arguments

Tue Jun 11 11:30:15 1995  John Fitch  <jpff@maths.bath.ac.uk>

	* memalloc.c (all_free): WINDOWS only function to return all space
	controlled by at_exit; record up to 1024 blocks
	(mcalloc): Record space (WINDOWS only)
	(mmalloc): Record space (WINDOWS only)
	(mrealloc): Record space (WINDOWS only)

Sun Jul  9 16:51:13 1995  John Fitch  <jpff@lansky>

	* hetro.c (hetro): Make it a int function rather than void, and
	add dialog support for Windows
	(hetro): POLL_EVENTS() added, and also some debugging code

Thu Jun  8 08:49:11 1995  John Fitch  <jpff@lansky>

	* ugens9.c: Correct prototype for writeFromCircBuf

	* ugens3.c (losset): Proper ANSI prototype for ftnp2find

	* wave.c (wavReadHeader): IGNORE fname argument

	* winwat.c (my_term): IGNORE argument
	(MakeGraph): IGNORE arguments
	(DrawGraph): Remove unused variables ma,mi and c
	(DrawGraph): and nx and ny
	(KillGraph): IGNORE argument
	(MakeXYin): IGNORE arguments
	(ReadXYin): IGNORE argument

	* winfg.c (MakeGraph): Add some debugging as it sometimes get
	screen wrong

	* disprep.c (tempeset): Comment out unused variables coef and
	log001
	(tempest): Remove unused xscale variable

	* ugens8.c: Remove unused variables fzero and fone
	(pvset): Remove unused variables cp and pvp
	(pvoc): Remove unused variables nsmps and samp

	* vdelay.c (ESR): Extra brackets
	(reverb2_play): Remove unused variable temp, and shorten some
	warnings (for 286!)

Sun Jun  4 13:40:29 1995  John Fitch  <jpff@lansky>

	* scot.c: ANSIfied all declarations
	* scot.h: and the same

	* prototyp.h: Change hetro, lpanal, pvanal and cvanal into
	returning int so the dialogs can indicate success; declare macro
	IGNORE for general use, and for CWIN declare all_free function

	* ieee80.c (myUlongToDouble): Layout
	(myDoubleToUlong): Layout

	* window.c: ANSI prototypes
	(DummyFn2): IGNORE arguments
	(DummyFn1): IGNORE arguments
	(RdXYDummy): IGNORE arguments
	(dispinit): The functions assigned are now differentiated as their
	type differ
	(dispkill): ANSI format
	(display): ANSI format

	* fft.c (FFT2torlpacked): Removed unused variable mm
	(FFT2realpacked): Removed unused variable mm
	(FFT2rawpacked): Removed unused variable i

Sat Jun  3 17:29:39 1995  John Fitch  <jpff@lansky>

	* express.c (express): Remove unused variable p

Sun May 14 18:15:18 1995  John Fitch  <jpff@lansky>

	* dumpf.c (nkdump): Increase precision of output from %4.2 to %6.4
	in two places

Sat May 13 10:19:24 1995  John Fitch  <jpff@lansky>

	*  aiff.c:  various debugging statements added, all commented out.


Thu Apr 27 15:47:36 1995  John Fitch  <jpff@lansky>

	* sndinfo.c (sndinfo): Add POLL_EVENTS at the start of the
	function (not sure it is necessary?)

	* cvanal.c (cvanal): Added support for cvanal_dialog in Windows
	(quit): Return 1 rather than zero in exit.
	(takeFFT): Added call to POLL_EVENTS() twice
	(cvanal): Return 1 as value (true)

	* blaster.c: In dmaChannel structure use shorts instead of ints
	(SB_DMA2): Remove macro for DMA2 as now table driven
	(sb_wait): Count down check so to avoid a hang
	(sbplay): Mask Channel down to 2 bits (not necessary but clean)

Sun Feb 26  1995  John Fitch  <jpff@maths.bath.ac.uk>

	* winSGI.c (Graphable): ANSI void added
	(drawAxes): and again

	* window.h: ANSI format prototypes only

	* winX11.c: ANSI prototypes only
	(myXwinWait): ANSI declaration
	(myXwait): ANSI declaration
	(myXWaitForExpose): ANSI declaration
	(Graphable): ANSI declaration
	(MakeWindow): ANSI declaration
	(MakeGraph): ANSI declaration
	(MakeXYin): ANSI declaration
	(DrawGraph): ANSI declaration
	(ReadXYin): ANSI declaration
	(KillWin): ANSI declaration
	(KillGraph): ANSI declaration
	(KillXYin): ANSI declaration
	(ExitGraph): ANSI declarationoa
