diff --git a/.gitmodules b/.gitmodules index 50ea878..384a28a 100644 --- a/.gitmodules +++ b/.gitmodules @@ -215,3 +215,6 @@ [submodule "plugins/h4n4-modules"] path = plugins/h4n4-modules url = https://github.com/hannakoppelaar/h4n4-modules.git +[submodule "plugins/dBiz"] + path = plugins/dBiz + url = https://github.com/dBiz/dBiz.git diff --git a/README.md b/README.md index f2efdea..065d705 100644 --- a/README.md +++ b/README.md @@ -125,6 +125,7 @@ At the moment the following 3rd-party modules are provided: - Catro/Modulo - cf - ChowDSP +- dBiz - DrumKit - E-Series - ExpertSleepers Encoders diff --git a/docs/LICENSES.md b/docs/LICENSES.md index b2f9157..898afb5 100644 --- a/docs/LICENSES.md +++ b/docs/LICENSES.md @@ -33,6 +33,7 @@ Bellow follows a list of all code licenses used in Cardinal and linked submodule | Catro/Modulo | BSD-3-Clause | | | cf | BSD-3-Clause | | | ChowDSP | GPL-3.0-or-later | | +| dBiz | GPL-3.0-or-later | | | DrumKit | CC0-1.0 | | | E-Series | GPL-3.0-or-later | | | ExpertSleepers Encoders | MIT | | @@ -143,6 +144,9 @@ Below is a list of artwork licenses from plugins | cf/VT323-Regular.ttf | OFL-1.1-no-RFN | | | ChowDSP/* | GPL-3.0-or-later | Same license as source code | | ChowDSP/fonts/RobotoCondensed-*.ttf | Apache-2.0 | | +| dBiz/* | CC-BY-NC-ND-4.0 | | +| dBiz/DejaVuSansMono.ttf | Bitstream-Vera | | +| dBiz/ShareTechMono-Regular.ttf | OFL-1.1 | | | DrumKit/* | CC0-1.0 | | | DrumKit/component/NovaMono.ttf | OFL-1.1-RFN | | | E-Series/* | Custom | Copyright © Synthesis Technology, [used and distributed with permission](LICENSE-PERMISSIONS.md#eseries-paul-schreiber--synthtech) | diff --git a/plugins/Makefile b/plugins/Makefile index 246697c..34bbb74 100644 --- a/plugins/Makefile +++ b/plugins/Makefile @@ -393,6 +393,14 @@ PLUGIN_FILES += AS/freeverb/revmodel.cpp AS_CUSTOM = ADSR BpmDisplayWidget LabelDisplayWidget LedLight LowFrequencyOscillator SigDisplayWidget VCA WaveShaper YellowRedLight allpass comb revmodel AS_CUSTOM_PER_FILE = NumberDisplayWidget +# -------------------------------------------------------------- +# dBiz + +PLUGIN_FILES += $(filter-out dBiz/src/plugin.cpp,$(wildcard dBiz/src/*.cpp)) + +# modules/types which are present in other plugins +DBIZ_CUSTOM = Chord DarkDefaultItem Divider OrangeLight VCA4 darkPanelID lightPanelID + # -------------------------------------------------------------- # AudibleInstruments @@ -1595,6 +1603,14 @@ $(BUILD_DIR)/ChowDSP/%.cpp.o: ChowDSP/%.cpp -IChowDSP/lib/chowdsp_utils/modules/chowdsp_dsp/WDF \ -Wno-deprecated-copy + +$(BUILD_DIR)/dBiz/src/%.cpp.o: dBiz/src/%.cpp + -@mkdir -p "$(shell dirname $(BUILD_DIR)/$<)" + @echo "Compiling $<" + $(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) -c -o $@ \ + $(foreach m,$(DBIZ_CUSTOM),$(call custom_module_names,$(m),dBiz)) \ + -DpluginInstance=pluginInstance__dBiz + $(BUILD_DIR)/DrumKit/%.cpp.o: DrumKit/%.cpp -@mkdir -p "$(shell dirname $(BUILD_DIR)/$<)" @echo "Compiling $<" diff --git a/plugins/dBiz b/plugins/dBiz new file mode 160000 index 0000000..88f1bd6 --- /dev/null +++ b/plugins/dBiz @@ -0,0 +1 @@ +Subproject commit 88f1bd64cff6e96a1a48566a1692de86b9a7de2a diff --git a/plugins/plugins.cpp b/plugins/plugins.cpp index c5b8f91..9c624aa 100644 --- a/plugins/plugins.cpp +++ b/plugins/plugins.cpp @@ -320,6 +320,23 @@ extern Model* modelTestVCF; #include "DrumKit/src/DrumKit.hpp" void setupSamples(); +// dBiz +#define darkPanelID dBizdarkPanelID +#define DarkDefaultItem dBizDarkDefaultItem +#define lightPanelID dBizlightPanelID +#define OrangeLight dBizOrangeLight +#define modelChord modeldBizChord +#define modelVCA4 modeldBizVCA4 +#define modelDivider modeldBizDivider +#include "dBiz/src/plugin.hpp" +#undef darkPanelID +#undef DarkDefaultItem +#undef lightPanelID +#undef OrangeLight +#undef modelChord +#undef modelVCA4 +#undef modelDivider + // ESeries #include "ESeries/src/plugin.hpp" @@ -719,6 +736,7 @@ std::vector hostTerminalModels; // stuff that reads config files, we dont want that int loadConsoleType() { return 0; } +bool loadDarkAsDefault() { return 1; } int loadDirectOutMode() { return 0; } void saveConsoleType(int) {} void saveDarkAsDefault(bool) {} @@ -750,6 +768,7 @@ Plugin* pluginInstance__BogaudioModules; Plugin* pluginInstance__CatroModulo; Plugin* pluginInstance__cf; Plugin* pluginInstance__ChowDSP; +Plugin* pluginInstance__dBiz; extern Plugin* pluginInstance__DrumKit; Plugin* pluginInstance__ESeries; Plugin* pluginInstance__ExpertSleepersEncoders; @@ -1709,6 +1728,56 @@ static void initStatic__ChowDSP() } } +static void initStatic__dBiz() +{ + Plugin* const p = new Plugin; + pluginInstance__dBiz = p; + + const StaticPluginLoader spl(p, "dBiz"); + if (spl.ok()) + { +#define modelChord modeldBizChord +#define modelVCA4 modeldBizVCA4 +#define modelDivider modeldBizDivider + p->addModel(modelNavControl); + p->addModel(modelBench); + p->addModel(modelContorno); + //p->addModel(modelContornoMK2); + p->addModel(modelTranspose); + p->addModel(modelUtility); + p->addModel(modelChord); + p->addModel(modelBene); + p->addModel(modelBenePads); + p->addModel(modelPerfMixer); + p->addModel(modelDrMix); + p->addModel(modelPerfMixer4); + p->addModel(modelVCA4); + p->addModel(modelVCA530); + p->addModel(modelRemix); + p->addModel(modelSmixer); + p->addModel(modelVerbo); + p->addModel(modelDVCO); + p->addModel(modelDAOSC); + p->addModel(modelTROSC); + p->addModel(modelTROSCMK2); + p->addModel(modelSuHa); + p->addModel(modelSuHaMK2); + p->addModel(modelFourSeq); + p->addModel(modelDivider); + p->addModel(modelUtil2); + p->addModel(modelSmorph); + p->addModel(modelBigSmorph); + p->addModel(modelSPan); + p->addModel(modelQuePasa); + p->addModel(modelDualFilter); + p->addModel(modelOrder); + p->addModel(modelDualMatrix); +#undef modelChord +#undef modelVCA4 +#undef modelDivider + } +} + static void initStatic__DrumKit() { Plugin* const p = new Plugin; @@ -2793,6 +2862,7 @@ void initStaticPlugins() initStatic__CatroModulo(); initStatic__cf(); initStatic__ChowDSP(); + initStatic__dBiz(); initStatic__DrumKit(); initStatic__ESeries(); initStatic__ExpertSleepersEncoders();