| Age | Commit message (Collapse) | Author | 
|---|
|  |  | 
|  | List of waveforms:
0=sin
1=abssin
2=half_sin
3=pulse-sin
4=square
5=sawtooth
6=pyramid
7=white noise | 
|  | plus some tiny bugfixes:
  - in Envelope (get_sustain now returns orig_sustain)
  - parser now uses isnum instead of isfloat where appropriate | 
|  |  | 
|  |  | 
|  | Many commands are now available, like changing program, controllers,
panicking, killing single programs, setting pedals, setting voice limit
etc...
Also, added Channel::set_portamento_time_sec(float sec) | 
|  |  | 
|  |  | 
|  |  | 
|  |  | 
|  | Controller 67 aka soft-pedal now can reduce the note's volume by half
TODO:
  - let the user set the percentage for the volume, either per
    controller (per channel) or per CLI (global) | 
|  | The synthesizer is now able to load and use compiled, optimized shared
objects of programs. There's also a note-compiler which creates the code
for such objects.
TODO:
  - let the note-compiler automatically compile OR rename it to
    code-emitter | 
|  |  | 
|  |  | 
|  | The following has been changed
  - Note::set_param now sets orig-values and does an apply_pfactor()
  - Note::reattack now also reattacks the filter's envelope
  - oscval[i]=0 has been removed as it's unneccessary in Note::get_sample()
  - in Note::get_sample: fm- and out-sums are calculated in 2SCALE now
    and scaled down (via >>SCALE) afterwards (instead of while every
    single add-operation)
  - the filter-envelope is now inited with the shorter constructor
  - todo-list updated | 
|  |  |