120120903 smbolton
2
3* Luke Andrew added three new filter modes: 2-pole high-pass, 4-pole
4    high-pass, and band-reject (plus he did some nice code
5    refactoring.)
6
720120729 smbolton
8
9* Removed all code enabled by '--enable-developer', except for the
10    option to write patch files as 'C' code.  Under-development
11    functions are now contained in git branches.
12
13* Promoted Wavecycle Chorus to regular (non-developer-only)
14    oscillator mode.
15
16* Promoted resonz to regular (non-developer-only) filter mode.
17
18* Fixed a click that occurred with several oscillator modes (Wave
19    Cycle, PADsynth, and FM) when using portamento in a monophonic
20    mode, due to the oscillator phase being reset spuriously.
21
22* Added icon (32x32 only for now, not installing).
23
24* Added some new patches to the default set, including several
25    contributed by Ken Restivo.
26
27* Fixed configure.ac for FreeBSD (thanks, downstream.)
28
29* Removed developer-only filters resonr (unneeded) and Neosweep
30    (unremarkable; license unclear). Removed ESQ-1 patch import
31    code, which never really worked anyway.
32
3320100922 smbolton
34
35* Added minBLEP oscillator waveform: clipped saw (thanks to Gordon
36    JC Pearce for the inspiration).
37
38* Added effect: Sean Costello's reverbsc from Csound.
39
40* Added a few new patches to the default set, including a
41    contribution from Idiomdrottning.
42
43* Cleaned up effect common memory allocation and dirty buffer
44    silencing (somewhat).
45
46* Use new cairo-rendered knobs, when cairo is available (requires
47    GTK+ >= 2.8; old knobs will be used if < 2.8 is found).
48
49* Seriously: two consecutive copies of an inlined function that are
50    not in cache can take longer to execute than two subroutine
51    calls to the function's non-inlined version.  Re-thought
52    WhySynth inlining.
53
54* Debastardization of the GUI combo boxes (or, the death of
55    popmenu).
56
57* Reworked the minBLEP code for more even processor usage over
58    successive process cycles.
59
60* Consolidated some voice buffers for better cache utilization.
61
62* On Mac OS X only (since it doesn't have a working mlockall()),
63    added code at startup to page each wavetable into memory (and
64    thus hopefully minimize page faults later.)
65
66* Doh. Thread-safe, user-friendly locale flexibility.
67
6820090531 smbolton
69
70* Fix patchfile load and save to be locale-neutral (thanks to Martin
71    Tarenskeen for the bug report.)
72
7320090403 smbolton
74
75* Silently ignore 'sample-rate' method.
76
77* Fixed GtkSpinButton adjustments to avoid page_size warning with
78    GTK+ >=2.14.
79
80* configure.ac: added check for ladspa.h, removed some obsolete
81    macros.
82
8320080411 smbolton
84
85* Use GtkFileChooserWidget instead of GtkFileSelection. Requires
86    GTK+ >= 2.4.0.
87
88* Fixed a bug in the XSynth-DSSI patch import.
89
9020080204 smbolton
91
92* Added extra/COPYING-patches and fixed README and
93    src/patch_tables.c to clearly declare patches as being in the
94    public domain.
95
96* Added config.h.ac, doc/voice_block_diagram.png, and
97    extra/COPYING-patches to Makefile.am EXTRA_DIST.  The first two
98    have been inadvertently omitted from previous distributions, and
99    the block diagram at least shouldn't have been.
100
10120070418 smbolton
102
103* Added 'FM Wave->LF Sine' and 'Phase Distortion' oscillator types.
104
105* Enhanced the GUI by replacing all the mode selection spinbuttons
106    with popup menu buttons.
107
108* Improved the envelope generator code so that already-playing notes
109    will respond to parameter changes to envelope segments that have
110    not yet begun.
111
112* Added a 75% partial width scaling setting to the PADsynth
113    parameters.
114
115* Added a few new patches to the default set, including a
116    contribution from Ken Restivo.
117
118* Made several GCC 4 fixes, including more sane inlining.
119
12020060122 smbolton
121
122* Added 'Copy' and 'Paste' buttons for the filters and effect.
123
124* Changed the autotools setup to keep the plugin and GUI libraries
125    separate (since the plugin doesn't need liblo and the GUI
126    doesn't need FFTW.)
127
128* Added a non-realtime worker thread and 'PADsynth' oscillator type.
129
13020051231 smbolton
131
132* Recreated the wavetables, without the boneheaded bandlimiting
133    error that was causing several of the the tables to alias badly
134    over portions of their key range.  Added several new waveforms,
135    including some missing SQ-80 ones, and the Bristol 'jagged-edged
136    ramp'.
137
138* Added the 'Dual Delay' effect.
139
140* Incorporated the 4-pole lowpass filter from amSynth.
141
142* Added a persistent comment field to the patches.
143
144* Updated the default patches, with a number of new native patches
145    (including contributions from Nigel Henry and Garett Shulman),
146    and redid the K4 interpretations after fixing some bugs in the
147    import code. Included in the extra/ directory are the WhySynth
148    20051005 default patches, in case anyone needs them for
149    backwards compatibility, and 454 new K4 interpretations.
150
151* A new Configuration option, 'Cancel Notes On Program Change',
152    controls whether WhySynth will stop any playing notes before it
153    performs a program change, which can prevent nasty surprises if
154    the previous and new patches are not compatible.  Defaults to
155    'On'.
156
157* WhySynth now uses gcc/glibc 'constructor' and 'destructor'
158    attributes instead of the deprecated _init() and _fini()
159    functions (needed for OS X 10.4 'Tiger').
160
161* WhySynth_gtk no longer echos host-initiated control changes back
162    to the host.
163
164* DSSI 'hide' now hides the patch edit window, too.
165
16620051005 smbolton
167* First release.
168
16920050710 smbolton
170* On this dark and stormy night, Xsynth-DSSI began a series of
171    profound and rapid mutations, acquired K4-ish wavetable
172    oscillators, and was reborn as WhySynth.
173
174