From 9d89f16e54eea34aa5d63fa9b6120564571c7da8 Mon Sep 17 00:00:00 2001 From: falkTX Date: Mon, 4 Apr 2022 17:31:15 +0100 Subject: [PATCH] Refresh default template, add fx and synth variants of those Signed-off-by: falkTX --- src/CardinalPlugin.cpp | 14 ++- src/Makefile.cardinal.mk | 4 +- src/template-fx.vcv | 161 ++++++++++++++++++++++++++ src/template-synth.vcv | 238 +++++++++++++++++++++++++++++++++++++++ src/template.vcv | 90 ++++++++++++--- 5 files changed, 485 insertions(+), 22 deletions(-) create mode 100644 src/template-fx.vcv create mode 100644 src/template-synth.vcv diff --git a/src/CardinalPlugin.cpp b/src/CardinalPlugin.cpp index 730aef4..060af58 100644 --- a/src/CardinalPlugin.cpp +++ b/src/CardinalPlugin.cpp @@ -57,6 +57,14 @@ static const constexpr uint kCardinalStateCount = 4; // patch, screenshot, comme static const constexpr uint kCardinalStateCount = 3; // patch, screenshot, comment #endif +#if CARDINAL_VARIANT_FX +# define CARDINAL_TEMPLATE_NAME "template-fx.vcv" +#elif CARDINAL_VARIANT_SYNTH +# define CARDINAL_TEMPLATE_NAME "template-synth.vcv" +#else +# define CARDINAL_TEMPLATE_NAME "template.vcv" +#endif + namespace rack { namespace plugin { void initStaticPlugins(); @@ -134,7 +142,7 @@ struct Initializer { asset::bundlePath = system::join(resourcePath, "PluginManifests"); asset::systemDir = resourcePath; - templatePath = system::join(asset::systemDir, "template.vcv"); + templatePath = system::join(asset::systemDir, CARDINAL_TEMPLATE_NAME); } } @@ -146,7 +154,7 @@ struct Initializer if (system::exists(system::join(asset::systemDir, "res"))) { - templatePath = CARDINAL_PLUGIN_SOURCE_DIR DISTRHO_OS_SEP_STR "template.vcv"; + templatePath = CARDINAL_PLUGIN_SOURCE_DIR DISTRHO_OS_SEP_STR CARDINAL_TEMPLATE_NAME; } // If source code dir does not exist use install target prefix as system dir else @@ -165,7 +173,7 @@ struct Initializer if (! asset::systemDir.empty()) { asset::bundlePath = system::join(asset::systemDir, "PluginManifests"); - templatePath = system::join(asset::systemDir, "template.vcv"); + templatePath = system::join(asset::systemDir, CARDINAL_TEMPLATE_NAME); } } } diff --git a/src/Makefile.cardinal.mk b/src/Makefile.cardinal.mk index 5756bbd..fd42c24 100644 --- a/src/Makefile.cardinal.mk +++ b/src/Makefile.cardinal.mk @@ -272,7 +272,9 @@ all: lv2 vst2 vst3 static endif CORE_RESOURCES = $(subst ../Rack/res/,,$(wildcard ../Rack/res/ComponentLibrary/*.svg ../Rack/res/fonts/*.ttf)) -CORE_RESOURCES += template.vcv +CORE_RESOURCES += $(subst ../,,$(wildcard ../template*.vcv)) + +$(error $(CORE_RESOURCES)) LV2_RESOURCES = $(CORE_RESOURCES:%=$(TARGET_DIR)/$(NAME).lv2/resources/%) VST3_RESOURCES = $(CORE_RESOURCES:%=$(TARGET_DIR)/$(NAME).vst3/Contents/Resources/%) diff --git a/src/template-fx.vcv b/src/template-fx.vcv new file mode 100644 index 0000000..ee13a7a --- /dev/null +++ b/src/template-fx.vcv @@ -0,0 +1,161 @@ +{ + "version": "2.1", + "path": "/Shared/Personal/FOSS/GIT/DISTRHO/DISTRHO_Cardinal/src/template-fx.vcv", + "unsaved": true, + "zoom": 1.0, + "modules": [ + { + "id": 8712245256622475, + "plugin": "Cardinal", + "model": "TextEditor", + "version": "2.0", + "params": [], + "leftModuleId": 4, + "data": { + "filepath": "", + "lang": "None", + "etext": "Welcome to Cardinal!\n\nThis is the FX variant\nIt has 2 audio ports, plus MIDI\n\nAudio and MIDI is pass-through in\nthe default patch\n\n", + "width": 19 + }, + "pos": [ + 34, + 0 + ] + }, + { + "id": 1, + "plugin": "Cardinal", + "model": "HostAudio2", + "version": "2.0", + "params": [ + { + "value": 1.0, + "id": 0 + } + ], + "rightModuleId": 2, + "data": { + "dcFilter": true + }, + "pos": [ + 0, + 0 + ] + }, + { + "id": 2, + "plugin": "Cardinal", + "model": "HostMIDI", + "version": "2.0", + "params": [], + "leftModuleId": 1, + "rightModuleId": 3, + "data": { + "pwRange": 0.0, + "smooth": false, + "channels": 1, + "polyMode": 0, + "lastPitch": 8192, + "lastMod": 0, + "inputChannel": 0, + "outputChannel": 0 + }, + "pos": [ + 8, + 0 + ] + }, + { + "id": 3, + "plugin": "Cardinal", + "model": "HostTime", + "version": "2.0", + "params": [], + "leftModuleId": 2, + "rightModuleId": 4, + "pos": [ + 17, + 0 + ] + }, + { + "id": 4, + "plugin": "Cardinal", + "model": "HostParameters", + "version": "2.0", + "params": [], + "leftModuleId": 3, + "rightModuleId": 8712245256622475, + "pos": [ + 25, + 0 + ] + } + ], + "cables": [ + { + "id": 4678253779474352, + "outputModuleId": 2, + "outputId": 0, + "inputModuleId": 2, + "inputId": 0, + "color": "#ff5252" + }, + { + "id": 7683580154025470, + "outputModuleId": 2, + "outputId": 1, + "inputModuleId": 2, + "inputId": 1, + "color": "#ff9352" + }, + { + "id": 8430980435213069, + "outputModuleId": 2, + "outputId": 2, + "inputModuleId": 2, + "inputId": 2, + "color": "#ffd452" + }, + { + "id": 4583111412242866, + "outputModuleId": 2, + "outputId": 3, + "inputModuleId": 2, + "inputId": 3, + "color": "#e8ff52" + }, + { + "id": 4427623524544856, + "outputModuleId": 2, + "outputId": 4, + "inputModuleId": 2, + "inputId": 4, + "color": "#a8ff52" + }, + { + "id": 6950452937672903, + "outputModuleId": 2, + "outputId": 5, + "inputModuleId": 2, + "inputId": 5, + "color": "#67ff52" + }, + { + "id": 3491422883476882, + "outputModuleId": 1, + "outputId": 0, + "inputModuleId": 1, + "inputId": 0, + "color": "#52beff" + }, + { + "id": 4569757452962581, + "outputModuleId": 1, + "outputId": 1, + "inputModuleId": 1, + "inputId": 1, + "color": "#527dff" + } + ] +} diff --git a/src/template-synth.vcv b/src/template-synth.vcv new file mode 100644 index 0000000..a83399c --- /dev/null +++ b/src/template-synth.vcv @@ -0,0 +1,238 @@ +{ + "version": "2.1", + "path": "/Shared/Personal/FOSS/GIT/DISTRHO/DISTRHO_Cardinal/src/template-fx.vcv", + "unsaved": true, + "zoom": 1.0, + "modules": [ + { + "id": 8712245256622475, + "plugin": "Cardinal", + "model": "TextEditor", + "version": "2.0", + "params": [], + "leftModuleId": 4, + "data": { + "filepath": "", + "lang": "None", + "etext": "Welcome to Cardinal!\n\nThis is the Synth variant\nIt has 2 audio outputs, plus MIDI\n\nA basic VCO + ADSR + VCA is\nthe default patch\n\n", + "width": 19 + }, + "pos": [ + 43, + 0 + ] + }, + { + "id": 674529428127255, + "plugin": "Bogaudio", + "model": "Bogaudio-ADSR", + "version": "2.0", + "params": [ + { + "value": 0.069131895899772644, + "id": 0 + }, + { + "value": 0.31622999906539917, + "id": 1 + }, + { + "value": 1.0, + "id": 2 + }, + { + "value": 0.31622999906539917, + "id": 3 + }, + { + "value": 0.0, + "id": 4 + } + ], + "leftModuleId": 331777374771466, + "rightModuleId": 3281475959768191, + "data": { + "invert": 1.0 + }, + "pos": [ + 12, + 0 + ] + }, + { + "id": 3281475959768191, + "plugin": "Bogaudio", + "model": "Bogaudio-VCAmp", + "version": "2.0", + "params": [ + { + "value": 0.83333331346511841, + "id": 0 + } + ], + "leftModuleId": 674529428127255, + "rightModuleId": 1, + "data": {}, + "pos": [ + 15, + 0 + ] + }, + { + "id": 331777374771466, + "plugin": "Bogaudio", + "model": "Bogaudio-LVCO", + "version": "2.0", + "params": [ + { + "value": 0.0, + "id": 0 + }, + { + "value": 0.0, + "id": 1 + }, + { + "value": 0.0, + "id": 2 + }, + { + "value": 0.02500000037252903, + "id": 3 + } + ], + "leftModuleId": 2, + "rightModuleId": 674529428127255, + "data": { + "poly_input": 0, + "dc_correction": true, + "fm_mode": false, + "linear_mode": false, + "reset_on_wave_change": false + }, + "pos": [ + 9, + 0 + ] + }, + { + "id": 1, + "plugin": "Cardinal", + "model": "HostAudio2", + "version": "2.0", + "params": [ + { + "value": 1.0, + "id": 0 + } + ], + "leftModuleId": 3281475959768191, + "rightModuleId": 3, + "data": { + "dcFilter": true + }, + "pos": [ + 18, + 0 + ] + }, + { + "id": 2, + "plugin": "Cardinal", + "model": "HostMIDI", + "version": "2.0", + "params": [], + "rightModuleId": 331777374771466, + "data": { + "pwRange": 0.0, + "smooth": false, + "channels": 1, + "polyMode": 0, + "lastPitch": 8192, + "lastMod": 0, + "inputChannel": 0, + "outputChannel": 0 + }, + "pos": [ + 0, + 0 + ] + }, + { + "id": 3, + "plugin": "Cardinal", + "model": "HostTime", + "version": "2.0", + "params": [], + "leftModuleId": 1, + "rightModuleId": 4, + "pos": [ + 26, + 0 + ] + }, + { + "id": 4, + "plugin": "Cardinal", + "model": "HostParameters", + "version": "2.0", + "params": [], + "leftModuleId": 3, + "rightModuleId": 8712245256622475, + "pos": [ + 34, + 0 + ] + } + ], + "cables": [ + { + "id": 4819926075235968, + "outputModuleId": 2, + "outputId": 0, + "inputModuleId": 331777374771466, + "inputId": 0, + "color": "#ff5252" + }, + { + "id": 2420818759782995, + "outputModuleId": 331777374771466, + "outputId": 0, + "inputModuleId": 3281475959768191, + "inputId": 1, + "color": "#67ff52" + }, + { + "id": 5329555665685235, + "outputModuleId": 674529428127255, + "outputId": 0, + "inputModuleId": 3281475959768191, + "inputId": 0, + "color": "#52ffff" + }, + { + "id": 4079786865533706, + "outputModuleId": 2, + "outputId": 1, + "inputModuleId": 674529428127255, + "inputId": 0, + "color": "#ff9352" + }, + { + "id": 3101737648049587, + "outputModuleId": 3281475959768191, + "outputId": 0, + "inputModuleId": 1, + "inputId": 0, + "color": "#52beff" + }, + { + "id": 537659689081948, + "outputModuleId": 2, + "outputId": 2, + "inputModuleId": 331777374771466, + "inputId": 1, + "color": "#ffd452" + } + ] +} diff --git a/src/template.vcv b/src/template.vcv index 0ddaf29..91bf456 100644 --- a/src/template.vcv +++ b/src/template.vcv @@ -1,24 +1,23 @@ { - "version": "2.0", + "version": "2.1", + "unsaved": true, "zoom": 1.0, "modules": [ { - "id": 1, + "id": 2799203590388841, "plugin": "Cardinal", - "model": "HostAudio2", + "model": "TextEditor", "version": "2.0", - "params": [ - { - "value": 1.0, - "id": 0 - } - ], - "rightModuleId": 2, + "params": [], + "leftModuleId": 4, "data": { - "dcFilter": true + "filepath": "", + "lang": "None", + "etext": "Welcome to Cardinal!\n\nThis is the main variant\nIt has 8 audio ports, 10 CV ports, plus MIDI\n\nThe most relevant modules for host\nintegration are in this default patch\n\nHave fun!\n\n", + "width": 23 }, "pos": [ - 0, + 42, 0 ] }, @@ -28,10 +27,20 @@ "model": "HostMIDI", "version": "2.0", "params": [], - "leftModuleId": 1, + "leftModuleId": 7249509538355161, "rightModuleId": 3, + "data": { + "pwRange": 0.0, + "smooth": false, + "channels": 1, + "polyMode": 0, + "lastPitch": 8192, + "lastMod": 0, + "inputChannel": 0, + "outputChannel": 0 + }, "pos": [ - 8, + 16, 0 ] }, @@ -44,7 +53,7 @@ "leftModuleId": 2, "rightModuleId": 4, "pos": [ - 17, + 25, 0 ] }, @@ -55,12 +64,57 @@ "version": "2.0", "params": [], "leftModuleId": 3, + "rightModuleId": 2799203590388841, "pos": [ - 25, + 33, + 0 + ] + }, + { + "id": 7249509538355161, + "plugin": "Cardinal", + "model": "HostCV", + "version": "2.0", + "params": [ + { + "value": 0.0, + "id": 0 + }, + { + "value": 0.0, + "id": 1 + }, + { + "value": 0.0, + "id": 2 + }, + { + "value": 0.0, + "id": 3 + } + ], + "leftModuleId": 3606136179759592, + "rightModuleId": 2, + "pos": [ + 8, + 0 + ] + }, + { + "id": 3606136179759592, + "plugin": "Cardinal", + "model": "HostAudio8", + "version": "2.0", + "params": [], + "rightModuleId": 7249509538355161, + "data": { + "dcFilter": false + }, + "pos": [ + 0, 0 ] } ], - "cables": [], - "masterModuleId": 1 + "cables": [] }