1 #ifndef VOICE_H_INCLUDED 
    2 #define VOICE_H_INCLUDED 1 
    7 #define UNIT   0x100000000LL 
   10 #define BIGGER ((uint64_t) (1.5819767 * UNIT)) 
   22         if (a < 0.01) a = 0.01;
 
   25         attack = (uint32_t) (
DT * 
UNIT / a);
 
   28         if (d < 0.01) d = 0.01;
 
   29         decay = (uint32_t)(
UNIT * exp(-
DT / d));
 
   32         sustain = (uint32_t) (
UNIT * s);
 
   35         if (r < 0.01) r = 0.01;
 
   36         release = (uint32_t)(
UNIT * exp(-
DT / r));
 
   56             x = ((uint64_t) _value) + 
attack;
 
   65         else if (_state == 2) {
 
   69             gap = (x * 
decay) >> 32;
 
   71         else if (_state == 0) {
 
   74             if (_value < (1 << 18))
 
  109             return x - 0x80000000;
 
  113             if (phase >= 0x80000000) {
 
  118             return (x << 1) - 0x80000000;
 
  122             if (phase >= 0x80000000) {
 
  168 #endif     // VOICE_H_INCLUDED 
void keydown(uint32_t down)
void setwaveform(int32_t x)
int32_t mult_unsigned_signed(uint32_t x, int32_t y)
void keydown(uint32_t down)