diff --git a/src/Dexed.ttl b/src/Dexed.ttl index 5df1ac9..ba95648 100644 --- a/src/Dexed.ttl +++ b/src/Dexed.ttl @@ -59,7 +59,7 @@ lv2:portProperty pprops:logarithmic ; lv2:default 1.000000 ; lv2:minimum 0.1 ; - lv2:maximum 2.0 ; + lv2:maximum 10.0 ; ] , [ a lv2:InputPort, lv2:ControlPort ; diff --git a/src/Makefile b/src/Makefile index a2d4b77..c8b7971 100644 --- a/src/Makefile +++ b/src/Makefile @@ -40,9 +40,14 @@ ifneq ($(findstring arm,$(ARCH)),) endif ifeq ($(DEBUG), 1) - CXXFLAGS += -DDEBUG $(CFLAGS) + ifeq ($(FILETRACE), 1) + CXXFLAGS += -DDEBUG -DFILETRACE $(CFLAGS) -D PATCH_DEBUG + else + CXXFLAGS += -DDEBUG $(CFLAGS) + endif else - CXXFLAGS += -Ofast $(CFLAGS) $(CPU) $(FPU) + #CXXFLAGS += -Ofast $(CFLAGS) $(CPU) $(FPU) + CXXFLAGS += $(CFLAGS) -O3 -mcpu=cortex-a7 -mtune=cortex-a7 -mfpu=neon-vfpv4 -mfloat-abi=hard -mvectorize-with-neon-quad endif all: $(BUNDLE) Makefile diff --git a/src/dexed.cpp b/src/dexed.cpp index 0050ca0..7c3a317 100644 --- a/src/dexed.cpp +++ b/src/dexed.cpp @@ -64,7 +64,8 @@ Dexed::Dexed(double rate) : lvtk::Synth(p_n_ports, p_midi_in) engineType=0xff; setEngineType(DEXED_ENGINE_MARKI); - //add_voices(new DexedVoice(rate)); + add_voices(new DexedVoice(rate)); + add_audio_outputs(p_audio_out); TRACE("Bye"); @@ -315,6 +316,8 @@ void Dexed::run (uint32_t sample_count) float* output = p(p_audio_out); uint32_t last_frame = 0, num_this_time = 0; + Plugin::run(sample_count); + if(++_param_counter==16) { set_params(); // pre_process: copy actual voice params diff --git a/src/dexed_ttl.h b/src/dexed_ttl.h index d3aa83b..ff97a96 100644 --- a/src/dexed_ttl.h +++ b/src/dexed_ttl.h @@ -179,7 +179,7 @@ static const peg_data_t p_ports[] = { { -3.40282e+38, 3.40282e+38, -3.40282e+38, 0, 0, 0 }, { 0, 1, 1, 0, 0, 0 }, { 0, 1, 0, 0, 0, 0 }, - { 0.1, 2, 1, 0, 0, 1 }, + { 0.1, 10, 1, 0, 0, 1 }, { 0, 2, 1, 0, 1, 0 }, { 0, 1, 0, 1, 1, 0 }, { 1, 32, 5, 0, 1, 0 }, diff --git a/src/msfa/dx7note.cc b/src/msfa/dx7note.cc index 7605d82..174be51 100644 --- a/src/msfa/dx7note.cc +++ b/src/msfa/dx7note.cc @@ -136,7 +136,8 @@ Dx7Note::Dx7Note() { } } -void Dx7Note::init(const uint8_t patch[156], int midinote, int velocity, int fb_depth) { +//void Dx7Note::init(const uint8_t patch[156], int midinote, int velocity, int fb_depth) { +void Dx7Note::init(uint8_t patch[156], int midinote, int velocity, int fb_depth) { int rates[4]; int levels[4]; for (int op = 0; op < 6; op++) { diff --git a/src/msfa/dx7note.h b/src/msfa/dx7note.h index 45fea2d..77c5e48 100644 --- a/src/msfa/dx7note.h +++ b/src/msfa/dx7note.h @@ -36,7 +36,8 @@ struct VoiceStatus { class Dx7Note { public: Dx7Note(); - void init(const uint8_t patch[156], int midinote, int velocity, int fb_depth); + //void init(const uint8_t patch[156], int midinote, int velocity, int fb_depth); + void init(uint8_t patch[156], int midinote, int velocity, int fb_depth); // Note: this _adds_ to the buffer. Interesting question whether it's // worth it... diff --git a/src/trace.c b/src/trace.c index 5998d7c..9be5e01 100644 --- a/src/trace.c +++ b/src/trace.c @@ -2,11 +2,21 @@ #include #include void _trace(const char *source, const char *fmt, ...) { - char output[4096]; + char output[1024]; va_list argptr; va_start(argptr, fmt); - vsnprintf(output, 4095, fmt, argptr); + vsnprintf(output, 1023, fmt, argptr); va_end(argptr); +#ifdef FILETRACE + FILE *fp; + fp=fopen("/tmp/dexed.log", "a"); + fputs(source, fp); + fputs(": ", fp); + fputs(output, fp); + fputs("\n", fp); + fclose(fp); +#else printf("%s: %s\n",source,output); +#endif } #endif