Compare commits

..

No commits in common. "2ebf7fac1cb8a47db8124a114dd913fedd0013ec" and "ad7b7f440561c3eee4cc8ec0b44373b320a0f56e" have entirely different histories.

6 changed files with 21 additions and 29 deletions

View File

@ -23,15 +23,6 @@
#define DISTRHO_PLUGIN_NAME "peacock-8" #define DISTRHO_PLUGIN_NAME "peacock-8"
#define DISTRHO_PLUGIN_URI "https://gjcp.net/plugins/peacock" #define DISTRHO_PLUGIN_URI "https://gjcp.net/plugins/peacock"
#define DISTRHO_PLUGIN_CLAP_ID "net.gjcp.peacock"
#define DISTRHO_PLUGIN_CLAP_FEATURES "instrument","synthesizer","stereo"
#define DISTRHO_PLUGIN_BRAND_ID GJCP
#define DISTRHO_PLUGIN_UNIQUE_ID Pfau
#define DISTRHO_PLUGIN_LV2_CATEGORY "lv2:InstrumentPlugin"
#define DISTRHO_PLUGIN_VST_CATEGORY "Fx|Instrument"
#define DISTRHO_PLUGIN_NUM_INPUTS 0 #define DISTRHO_PLUGIN_NUM_INPUTS 0
#define DISTRHO_PLUGIN_NUM_OUTPUTS 2 #define DISTRHO_PLUGIN_NUM_OUTPUTS 2
#define DISTRHO_PLUGIN_IS_SYNTH 1 #define DISTRHO_PLUGIN_IS_SYNTH 1

View File

@ -34,7 +34,7 @@ include ../dpf/Makefile.plugins.mk
SKIP_NATIVE_AUDIO_FALLBACK = true SKIP_NATIVE_AUDIO_FALLBACK = true
TARGETS += jack lv2_sep vst3 clap TARGETS += jack lv2_sep
all: $(TARGETS) all: $(TARGETS)

View File

@ -21,7 +21,6 @@
#include <math.h> #include <math.h>
#include <string.h> #include <string.h>
#include <stdio.h>
Chorus::Chorus() { Chorus::Chorus() {
lpfOut1 = new float[bufferSize]; lpfOut1 = new float[bufferSize];
lpfOut2 = new float[bufferSize]; lpfOut2 = new float[bufferSize];
@ -103,7 +102,6 @@ void Chorus::run(float* input, float** outputs, uint32_t frames) {
delayptr++; delayptr++;
delayptr &= 0x3ff; delayptr &= 0x3ff;
} }
//printf("dly1 = %f\n", dly1);
postFilter1l->runSVF(lpfOut1, lpfOut1, frames); postFilter1l->runSVF(lpfOut1, lpfOut1, frames);
postFilter2l->runSVF(lpfOut1, lpfOut1, frames); postFilter2l->runSVF(lpfOut1, lpfOut1, frames);
@ -154,11 +152,11 @@ void Chorus::setChorus(uint8_t mode) {
break; break;
case 0x40: case 0x40:
gain = 1.2; gain = 1.2;
lfoSpeed = 6.283 * 0.3 / sampleRate; lfoSpeed = 6.283 * 0.5 / sampleRate;
break; break;
case 0x00: case 0x00:
gain = 1.2; gain = 1.2;
lfoSpeed = 6.283 * 0.5 / sampleRate; lfoSpeed = 6.283 * 0.9 / sampleRate;
break; break;
} }
} }

View File

@ -96,24 +96,24 @@ class Module {
*/ */
struct { struct {
uint8_t lfoRate = 0x00; uint8_t lfoRate = 0x58;
uint8_t lfoDelay = 0x00; uint8_t lfoDelay = 0x00;
uint8_t vcoLfo = 0x00; uint8_t vcoLfo = 0x00;
uint8_t pwmLfo = 0x3c; uint8_t pwmLfo = 0x00;
uint8_t noise = 0x00; uint8_t noise = 0x00;
uint8_t vcfFreq = 0x25; // 1c; // 0x3f80 uint8_t vcfFreq = 0x00; // 1c; // 0x3f80
uint8_t vcfReso = 0x1d; uint8_t vcfReso = 0x7f;
uint8_t vcfEnv = 0x1c; // 4e; uint8_t vcfEnv = 0x7f; // 4e;
uint8_t vcfLfo = 0x00; uint8_t vcfLfo = 0x00;
uint8_t vcfKey = 0x2b; // 47; uint8_t vcfKey = 0x00; // 47;
uint8_t vca = 0x5c; uint8_t vca = 0x20;
uint8_t env_a = 0x00; uint8_t env_a = 0x00;
uint8_t env_d = 0x2a; uint8_t env_d = 0x5c;
uint8_t env_s = 0x23; // 0x3f80 uint8_t env_s = 0x00; // 0x3f80
uint8_t env_r = 0x00; uint8_t env_r = 0x3c;
uint8_t sub = 0x40; uint8_t sub = 0x7f;
uint8_t switch1 = 0x19; uint8_t switch1 = 0x3a;
uint8_t switch2 = 0x18; uint8_t switch2 = 0x19;
} patchRam; } patchRam;
Chorus* chorus; Chorus* chorus;

View File

@ -60,6 +60,7 @@ void Peacock::initParameter(uint32_t index, Parameter& parameter) {
enumValues[2].label = "4'"; enumValues[2].label = "4'";
parameter.enumValues.values = enumValues; parameter.enumValues.values = enumValues;
} }
break; break;
case pLFODepth: case pLFODepth:
@ -309,6 +310,7 @@ void Peacock::initParameter(uint32_t index, Parameter& parameter) {
enumValues[2].label = "Fast"; enumValues[2].label = "Fast";
parameter.enumValues.values = enumValues; parameter.enumValues.values = enumValues;
} }
/* /*
case pModWheel: case pModWheel:
parameter.hints = kParameterIsAutomatable | kParameterIsHidden; parameter.hints = kParameterIsAutomatable | kParameterIsHidden;
@ -401,6 +403,7 @@ void Peacock::setParameterValue(uint32_t index, float value) {
case pChorusMode: case pChorusMode:
m->patchRam.switch1 &= 0x9f; m->patchRam.switch1 &= 0x9f;
switch ((int)value) { switch ((int)value) {
case 0: case 0:
m->patchRam.switch1 |= 0x60; // both off m->patchRam.switch1 |= 0x60; // both off
@ -526,6 +529,7 @@ float Peacock::getParameterValue(uint32_t index) const {
return m->patchRam.vca; return m->patchRam.vca;
break; break;
case pChorusMode: case pChorusMode:
switch (m->patchRam.switch1 & 0x60) { switch (m->patchRam.switch1 & 0x60) {
case 0x60: case 0x60:
return 0; return 0;

View File

@ -258,7 +258,6 @@ void DistrhoUIPeacock::parameterChanged(uint32_t index, float value) {
sw1 &= 0xf8; // mask sw1 &= 0xf8; // mask
if (value > 2) value = 2; if (value > 2) value = 2;
sw1 |= (1 << (int)value); sw1 |= (1 << (int)value);
xBtn16ft->repaint(); // will repaint all the panel
break; break;
case pSqr: case pSqr:
sw1 &= 0xf7; sw1 &= 0xf7;