28#define _ISOC99_SOURCE 1
57 unsigned char key,
unsigned char velocity)
73 if (
synth->held_keys[0] >= 0) {
126 for (
i = 0;
i < 7;
i++) {
139 }
else if (!
_ON(voice)) {
166 for (
i = 7;
i >= 0;
i--) {
174 synth->held_keys[7] = -1;
183 unsigned char key,
unsigned char rvelocity)
185 unsigned char previous_top_key;
192 previous_top_key =
synth->held_keys[0];
197 if (
synth->held_keys[0] >= 0) {
201 if (
synth->held_keys[0] != previous_top_key) {
SYNTH_T * synth
Definition LocalZynAddSubFx.cpp:47
register unsigned i
Definition inflate.c:1575
#define XDB_MESSAGE(type, fmt...)
Definition nekobee.h:66
#define XDB_NOTE
Definition nekobee.h:32
#define XSYNTH_GLIDE_MODE_OFF
Definition nekobee_synth.h:43
#define XSYNTH_GLIDE_MODE_INITIAL
Definition nekobee_synth.h:40
#define XSYNTH_SYNTH_SUSTAINED(_s)
Definition nekobee_synth.h:130
#define XSYNTH_MONO_MODE_ON
Definition nekobee_synth.h:35
#define XSYNTH_MONO_MODE_BOTH
Definition nekobee_synth.h:37
struct _nekobee_synth_t nekobee_synth_t
Definition nekobee_types.h:26
struct _nekobee_voice_t nekobee_voice_t
Definition nekobee_types.h:27
nekobee_voice_t * nekobee_voice_new()
Definition nekobee_voice.c:41
void nekobee_voice_release_note(nekobee_synth_t *synth, nekobee_voice_t *voice)
Definition nekobee_voice.c:244
void nekobee_voice_note_on(nekobee_synth_t *synth, nekobee_voice_t *voice, unsigned char key, unsigned char velocity)
Definition nekobee_voice.c:56
static void nekobee_voice_set_release_phase(nekobee_voice_t *voice)
Definition nekobee_voice.c:150
void nekobee_voice_note_off(nekobee_synth_t *synth, nekobee_voice_t *voice, unsigned char key, unsigned char rvelocity)
Definition nekobee_voice.c:182
void nekobee_voice_remove_held_key(nekobee_synth_t *synth, unsigned char key)
Definition nekobee_voice.c:160
@ XSYNTH_VOICE_RELEASED
Definition nekobee_voice.h:70
@ XSYNTH_VOICE_SUSTAINED
Definition nekobee_voice.h:69
@ XSYNTH_VOICE_ON
Definition nekobee_voice.h:68
@ XSYNTH_VOICE_OFF
Definition nekobee_voice.h:67
float nekobee_pitch[128]
Definition nekobee_voice_render.c:25
#define _PLAYING(voice)
Definition nekobee_voice.h:118
#define _ON(voice)
Definition nekobee_voice.h:119
#define _RELEASED(voice)
Definition nekobee_voice.h:121
static void nekobee_voice_start_voice(nekobee_voice_t *voice)
Definition nekobee_voice.h:177
#define _SUSTAINED(voice)
Definition nekobee_voice.h:120
float prev_pitch
Definition nekobee_voice.h:98
float delay3
Definition nekobee_voice.h:107
unsigned char status
Definition nekobee_voice.h:89
unsigned char key
Definition nekobee_voice.h:90
float vcf_eg
Definition nekobee_voice.h:103
struct blosc osc1
Definition nekobee_voice.h:101
float delay1
Definition nekobee_voice.h:105
unsigned char vca_eg_phase
Definition nekobee_voice.h:110
unsigned char vcf_eg_phase
Definition nekobee_voice.h:111
unsigned char rvelocity
Definition nekobee_voice.h:92
float c5
Definition nekobee_voice.h:109
float delay2
Definition nekobee_voice.h:106
int osc_index
Definition nekobee_voice.h:112
float target_pitch
Definition nekobee_voice.h:99
unsigned char velocity
Definition nekobee_voice.h:91
float vca_eg
Definition nekobee_voice.h:102
float delay4
Definition nekobee_voice.h:108
float lfo_pos
Definition nekobee_voice.h:100
float pos
Definition nekobee_voice.h:78
int last_waveform
Definition nekobee_voice.h:75
ZCONST char * key
Definition crypt.c:587
#define void
Definition unzip.h:396