diff --git a/.gitmodules b/.gitmodules index 50e5980..3d47beb 100644 --- a/.gitmodules +++ b/.gitmodules @@ -169,3 +169,6 @@ [submodule "plugins/PathSet"] path = plugins/PathSet url = https://github.com/patheros/PathSetModules.git +[submodule "plugins/Dintree"] + path = plugins/Dintree + url = https://github.com/hires/Dintree-Virtual.git diff --git a/README.md b/README.md index 5c5af56..b977db0 100644 --- a/README.md +++ b/README.md @@ -117,6 +117,7 @@ At the moment the following 3rd-party modules are provided: - Catro/Modulo - cf - ChowDSP +- Dintree Virtual - DrumKit - E-Series - ExpertSleepers Encoders diff --git a/docs/LICENSES.md b/docs/LICENSES.md index 82582ab..2812ca0 100644 --- a/docs/LICENSES.md +++ b/docs/LICENSES.md @@ -28,6 +28,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 | | +| Dintree | GPL-3.0-or-later | | | DrumKit | CC0-1.0 | | | E-Series | GPL-3.0-or-later | | | ExpertSleepers Encoders | MIT | | @@ -117,6 +118,8 @@ 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 | | +| Dintree/* | GPL-3.0-or-later | No artwork specific license provided | +| Dintree/components/fixedsys.ttf | unknown | needs research | | 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/Dintree b/plugins/Dintree new file mode 160000 index 0000000..0fd807a --- /dev/null +++ b/plugins/Dintree @@ -0,0 +1 @@ +Subproject commit 0fd807a7a68ae6a7cab503dfbbc1f4c7c841d0fc diff --git a/plugins/Makefile b/plugins/Makefile index 1a91ce4..000ef62 100644 --- a/plugins/Makefile +++ b/plugins/Makefile @@ -442,6 +442,13 @@ CATROMODULO_CUSTOM = LowFrequencyOscillator NumDisplayWidget PLUGIN_FILES += $(filter-out cf/src/plugin.cpp,$(wildcard cf/src/*.cpp)) +# -------------------------------------------------------------- +# Dintree + +PLUGIN_FILES += $(wildcard Dintree/src/*.cpp) +PLUGIN_FILES += $(wildcard Dintree/src/components/*.cpp) +PLUGIN_FILES += $(wildcard Dintree/src/utils/*.cpp) + # -------------------------------------------------------------- # DrumKit @@ -1271,6 +1278,13 @@ $(BUILD_DIR)/ChowDSP/%.cpp.o: ChowDSP/%.cpp -IChowDSP/lib/chowdsp_utils/DSP/WDF \ -Wno-deprecated-copy +$(BUILD_DIR)/Dintree/%.cpp.o: Dintree/%.cpp + -@mkdir -p "$(shell dirname $(BUILD_DIR)/$<)" + @echo "Compiling $<" + $(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) -c -o $@ \ + $(foreach m,$(DINTREE_CUSTOM),$(call custom_module_names,$(m),Dintree)) \ + -DpluginInstance=pluginInstance__Dintree + $(BUILD_DIR)/DrumKit/%.cpp.o: DrumKit/%.cpp -@mkdir -p "$(shell dirname $(BUILD_DIR)/$<)" @echo "Compiling $<" diff --git a/plugins/plugins.cpp b/plugins/plugins.cpp index 5b00562..221ede4 100644 --- a/plugins/plugins.cpp +++ b/plugins/plugins.cpp @@ -279,6 +279,9 @@ extern Model* modelTestVCF; #include "ChowDSP/src/plugin.cpp" #undef init +// Dintree +#include "Dintree/src/plugin.hpp" + // DrumKit #include "DrumKit/src/DrumKit.hpp" void setupSamples(); @@ -653,6 +656,7 @@ Plugin* pluginInstance__BogaudioModules; Plugin* pluginInstance__CatroModulo; Plugin* pluginInstance__cf; Plugin* pluginInstance__ChowDSP; +Plugin* pluginInstance__Dintree; extern Plugin* pluginInstance__DrumKit; Plugin* pluginInstance__ESeries; Plugin* pluginInstance__ExpertSleepersEncoders; @@ -1387,6 +1391,26 @@ static void initStatic__ChowDSP() } } +static void initStatic__Dintree() +{ + Plugin* const p = new Plugin; + pluginInstance__Dintree = p; + + const StaticPluginLoader spl(p, "Dintree"); + if (spl.ok()) + { + p->addModel(modelV100_Scanner); + p->addModel(modelV101_Dual_Envelope); + p->addModel(modelV102_Output_Mixer); + p->addModel(modelV103_Reverb_Delay); + p->addModel(modelV104_Four_Vs); + p->addModel(modelV105_Quad_CV_Proc); + p->addModel(modelV107_Dual_Slew); + p->addModel(modelV201_Tri_Comparator); + p->addModel(modelV218_SH_Clock_Noise); + } +} + static void initStatic__DrumKit() { Plugin* const p = new Plugin; @@ -2307,6 +2331,7 @@ void initStaticPlugins() initStatic__CatroModulo(); initStatic__cf(); initStatic__ChowDSP(); + initStatic__Dintree(); initStatic__DrumKit(); initStatic__ESeries(); initStatic__ExpertSleepersEncoders();