diff --git a/.gitmodules b/.gitmodules index 4784971..2365e80 100644 --- a/.gitmodules +++ b/.gitmodules @@ -142,3 +142,6 @@ [submodule "plugins/Axioma"] path = plugins/Axioma url = https://github.com/kauewerner/Axioma.git +[submodule "plugins/Dintree"] + path = plugins/Dintree + url = https://github.com/hires/Dintree-Virtual.git diff --git a/README.md b/README.md index 67c78fa..5bad258 100644 --- a/README.md +++ b/README.md @@ -116,6 +116,7 @@ At the moment the following 3rd-party modules are provided: - Bogaudio - cf - ChowDSP +- Dintree Virtual - DrumKit - E-Series - ExpertSleepers Encoders diff --git a/docs/LICENSES.md b/docs/LICENSES.md index 1b78018..99a0439 100644 --- a/docs/LICENSES.md +++ b/docs/LICENSES.md @@ -27,6 +27,7 @@ Bellow follows a list of all code licenses used in Cardinal and linked submodule | Bogaudio | GPL-3.0-or-later | | | 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 | | @@ -106,6 +107,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 a08a6b3..4d4f1f8 100644 --- a/plugins/Makefile +++ b/plugins/Makefile @@ -434,6 +434,13 @@ PLUGIN_FILES += $(wildcard ChowDSP/lib/r8lib/*.cpp) 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 @@ -1202,6 +1209,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 ac968a0..8f07ca8 100644 --- a/plugins/plugins.cpp +++ b/plugins/plugins.cpp @@ -276,6 +276,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(); @@ -582,6 +585,7 @@ Plugin* pluginInstance__Bidoo; Plugin* pluginInstance__BogaudioModules; Plugin* pluginInstance__cf; Plugin* pluginInstance__ChowDSP; +Plugin* pluginInstance__Dintree; extern Plugin* pluginInstance__DrumKit; Plugin* pluginInstance__ESeries; Plugin* pluginInstance__ExpertSleepersEncoders; @@ -1287,6 +1291,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; @@ -2054,6 +2078,7 @@ void initStaticPlugins() initStatic__BogaudioModules(); initStatic__cf(); initStatic__ChowDSP(); + initStatic__Dintree(); initStatic__DrumKit(); initStatic__ESeries(); initStatic__ExpertSleepersEncoders();