diff --git a/.gitmodules b/.gitmodules index a6b17b0..01152bc 100644 --- a/.gitmodules +++ b/.gitmodules @@ -136,3 +136,6 @@ [submodule "deps/QuickJS"] path = deps/QuickJS url = https://github.com/JerrySievert/QuickJS.git +[submodule "plugins/Autinn"] + path = plugins/Autinn + url = https://github.com/NikolaiVChr/Autinn.git diff --git a/README.md b/README.md index 2cdd6b2..c3140cc 100644 --- a/README.md +++ b/README.md @@ -81,6 +81,7 @@ At the moment the following 3rd-party modules are provided: - Amalgamated Harmonics - Animated Circuits - Aria Salvatrice +- Autinn - Bacon Music - Bogaudio - cf diff --git a/doc/LICENSES.md b/doc/LICENSES.md index 9a9ac9d..8d46aa1 100644 --- a/doc/LICENSES.md +++ b/doc/LICENSES.md @@ -17,6 +17,7 @@ Bellow follows a list of all code licenses used in Cardinal and linked submodule | Amalgamated Harmonics | BSD-3-Clause | | | Animated Circuits | GPL-3.0-or-later | | | Aria Salvatrice | GPL-3.0-or-later | | +| Autinn | GPL-3.0-or-later | | | Bacon Music | GPL-3.0-or-later | | | Bogaudio | GPL-3.0-or-later | | | cf | BSD-3-Clause | | @@ -86,6 +87,7 @@ Below is a list of artwork licenses from plugins | AriaModules/lcd/Fixed_v01/* | Custom | See [LICENSE.txt](../plugins/AriaModules/res/lcd/Fixed_v01/LICENSE.txt) | | AriaModules/lcd/piano/* | WTFPL | | | AriaModules/signature/* | Custom | Removal required if modifying other files without author's permission | +| Autinn/* | GPL-3.0-or-later | No artwork specific license provided | | BaconPlugs/* | GPL-3.0-or-later | No artwork specific license provided | | BaconPlugs/midi/* | CC-BY-SA-3.0-DE | | | BaconPlugs/midi/beeth/* | ??? | Taken from http://www.jsbach.net/ | diff --git a/plugins/Autinn b/plugins/Autinn new file mode 160000 index 0000000..bc880d9 --- /dev/null +++ b/plugins/Autinn @@ -0,0 +1 @@ +Subproject commit bc880d9d8fb59016de61e3253aff2b543d7bb665 diff --git a/plugins/Makefile b/plugins/Makefile index 654fdb2..6c5fb8a 100644 --- a/plugins/Makefile +++ b/plugins/Makefile @@ -361,6 +361,13 @@ ARIA_CUSTOM = Blank # PLUGIN_FILES += AudibleInstruments/eurorack/streams/vactrol.cc # PLUGIN_FILES += AudibleInstruments/eurorack/streams/compressor.cc +# -------------------------------------------------------------- +# Autinn + +PLUGIN_FILES += $(wildcard Autinn/src/*.cpp) + +AUTINN_CUSTOM = Chord Vibrato + # -------------------------------------------------------------- # BaconPlugs @@ -977,6 +984,14 @@ $(BUILD_DIR)/AudibleInstruments/%.o: AudibleInstruments/% -Wno-class-memaccess \ -Wno-unused-local-typedefs +$(BUILD_DIR)/Autinn/%.cpp.o: Autinn/%.cpp + -@mkdir -p "$(shell dirname $(BUILD_DIR)/$<)" + @echo "Compiling $<" + $(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) -c -o $@ \ + $(foreach m,$(AUTINN_CUSTOM),$(call custom_module_names,$(m),Autinn)) \ + -DpluginInstance=pluginInstance__Autinn \ + -Dinit=init__Autinn + $(BUILD_DIR)/BaconPlugs/%.cpp.o: BaconPlugs/%.cpp -@mkdir -p "$(shell dirname $(BUILD_DIR)/$<)" @echo "Compiling $<" diff --git a/plugins/plugins.cpp b/plugins/plugins.cpp index e09b36a..85baf93 100644 --- a/plugins/plugins.cpp +++ b/plugins/plugins.cpp @@ -81,6 +81,39 @@ extern Model* modelBlank; #include "AudibleInstruments/src/plugin.hpp" */ +// Autinn +/* NOTE too much noise in original include, do this a different way +// #include "Autinn/src/Autinn.hpp" +*/ +#define modelChord modelAutinnChord +#define modelVibrato modelAutinnVibrato +extern Model* modelJette; +extern Model* modelFlora; +extern Model* modelOxcart; +extern Model* modelDeadband; +extern Model* modelDigi; +extern Model* modelFlopper; +extern Model* modelAmp; +extern Model* modelDC; +extern Model* modelSjip; +extern Model* modelBass; +extern Model* modelSquare; +extern Model* modelSaw; +extern Model* modelBoomerang; +extern Model* modelVibrato; +extern Model* modelVectorDriver; //deprecated +extern Model* modelCVConverter; +extern Model* modelZod; +extern Model* modelTriBand; +extern Model* modelMixer6; +extern Model* modelNon; +extern Model* modelFil; +extern Model* modelNap; +extern Model* modelMelody; +extern Model* modelChord; +#undef modelChord +#undef modelVibrato + // BaconPlugs #define INCLUDE_COMPONENTS_HPP #include "BaconPlugs/src/BaconPlugs.hpp" @@ -524,6 +557,7 @@ Plugin* pluginInstance__Aria; // Plugin* pluginInstance__AS; // Plugin* pluginInstance__Atelier; // Plugin* pluginInstance__AudibleInstruments; +extern Plugin* pluginInstance__Autinn; Plugin* pluginInstance__Bacon; // Plugin* pluginInstance__Befaco; // Plugin* pluginInstance__Bidoo; @@ -915,6 +949,45 @@ static void initStatic__AudibleInstruments() } */ +static void initStatic__Autinn() +{ + Plugin* const p = new Plugin; + pluginInstance__Autinn = p; + + const StaticPluginLoader spl(p, "Autinn"); + if (spl.ok()) + { +#define modelChord modelAutinnChord +#define modelVibrato modelAutinnVibrato + p->addModel(modelAmp); + p->addModel(modelDeadband); + p->addModel(modelBass); + p->addModel(modelCVConverter); + p->addModel(modelDC); + p->addModel(modelDigi); + p->addModel(modelFlopper); + p->addModel(modelFlora); + p->addModel(modelJette); + p->addModel(modelBoomerang); + p->addModel(modelOxcart); + p->addModel(modelSaw); + p->addModel(modelSjip); + p->addModel(modelSquare); + p->addModel(modelVibrato); + p->addModel(modelVectorDriver); + p->addModel(modelZod); + p->addModel(modelTriBand); + p->addModel(modelMixer6); + p->addModel(modelNon); + p->addModel(modelFil); + p->addModel(modelNap); + p->addModel(modelMelody); + p->addModel(modelChord); +#undef modelChord +#undef modelVibrato + } +} + static void initStatic__Bacon() { Plugin* const p = new Plugin; @@ -1942,6 +2015,7 @@ void initStaticPlugins() // initStatic__AS(); // initStatic__Atelier(); // initStatic__AudibleInstruments(); + initStatic__Autinn(); initStatic__Bacon(); // initStatic__Befaco(); // initStatic__Bidoo(); diff --git a/plugins/res/Autinn b/plugins/res/Autinn new file mode 120000 index 0000000..01ee28c --- /dev/null +++ b/plugins/res/Autinn @@ -0,0 +1 @@ +../Autinn/res \ No newline at end of file