@@ -133,3 +133,6 @@ | |||
[submodule "plugins/substation-opensource"] | |||
path = plugins/substation-opensource | |||
url = https://gitlab.com/falktx/substation-opensource.git | |||
[submodule "plugins/MockbaModular"] | |||
path = plugins/MockbaModular | |||
url = https://github.com/MockbaTheBorg/MockbaModular.git |
@@ -130,6 +130,7 @@ At the moment the following 3rd-party modules are provided: | |||
- Lomas Modules | |||
- Lyrae Modules | |||
- MindMeld | |||
- Mockba Modular | |||
- Mog | |||
- mscHack | |||
- Prism | |||
@@ -41,6 +41,7 @@ Bellow follows a list of all code licenses used in Cardinal and linked submodule | |||
| Lomas Modules | GPL-3.0-or-later | | | |||
| Lyrae Modules | GPL-3.0-or-later | | | |||
| MindMeld | GPL-3.0-or-later | | | |||
| Mockba Modular | MIT | | | |||
| Mog | CC0-1.0 | | | |||
| mscHack | BSD-3-Clause | | | |||
| Prism | BSD-3-Clause | | | |||
@@ -126,6 +127,7 @@ Below is a list of artwork licenses from plugins | |||
| LyraeModules/* | CC-BY-NC-SA-4.0 | | | |||
| MindMeld/* | CC-BY-NC-ND-4.0 | | | |||
| MindMeld/fonts/RobotoCondensed-*.ttf | Apache-2.0 | | | |||
| MockbaModular/* | MIT | No artwork specific license provided | | |||
| Mog/* | CC0-1.0 | | | |||
| Mog/components/* | CC-BY-NC-4.0 | | | |||
| Mog/Exo2-BoldItalic.ttf | OFL-1.1-RFN | | | |||
@@ -134,7 +136,7 @@ Below is a list of artwork licenses from plugins | |||
| Prism/RobotoCondensed-Regular.ttf | Apache-2.0 | | | |||
| Rackwindows/* | MIT | [Same license as source code](https://github.com/n0jo/rackwindows/issues/15) | | |||
| repelzen/* | CC-BY-SA-4.0 | | | |||
| Substation Opensource | BSD-3-Clause-Attribution | No artwork specific license provided | | |||
| substation-opensource/* | BSD-3-Clause-Attribution | No artwork specific license provided | | |||
| sonusmodular/* | GPL-3.0-or-later | [Same license as source code](https://gitlab.com/sonusdept/sonusmodular/-/issues/14) | | |||
| ValleyAudio/* | GPL-3.0-or-later | [Same license as source code](https://github.com/ValleyAudio/ValleyRackFree/issues/73) | | |||
| ValleyAudio/din1451alt.ttf | CC-BY-3.0-DE | | | |||
@@ -581,6 +581,14 @@ PLUGIN_FILES += $(wildcard MindMeldModular/src/Utilities/*.cpp) | |||
# modules/types which are present in other plugins | |||
MINDMELD_CUSTOM = printNote | |||
# -------------------------------------------------------------- | |||
# MockbaModular | |||
PLUGIN_FILES += $(filter-out MockbaModular/src/plugin.cpp MockbaModular/src/MockbaModular.cpp MockbaModular/src/UDPClockMaster.cpp MockbaModular/src/UDPClockSlave.cpp,$(wildcard MockbaModular/src/*.cpp)) | |||
# modules/types which are present in other plugins | |||
MOCKBAMODULAR_CUSTOM = Blank Comparator | |||
# -------------------------------------------------------------- | |||
# Mog | |||
@@ -598,7 +606,7 @@ MSCHACK_CUSTOM_PER_FILE = MAIN_SYNC_CLOCK FILTER_STRUCT FILTER_PARAM_STRUCT OSC_ | |||
# -------------------------------------------------------------- | |||
# Prism | |||
PLUGIN_FILES += $(filter-out Prism/src/plugin.cpp, $(wildcard Prism/src/*.cpp)) | |||
PLUGIN_FILES += $(filter-out Prism/src/plugin.cpp,$(wildcard Prism/src/*.cpp)) | |||
PLUGIN_FILES += $(wildcard Prism/src/scales/*.cpp) | |||
# modules/types which are present in other plugins | |||
@@ -1357,6 +1365,13 @@ $(BUILD_DIR)/MindMeldModular/%.cpp.o: MindMeldModular/%.cpp | |||
$(foreach m,$(MINDMELD_CUSTOM),$(call custom_module_names,$(m),MindMeld)) \ | |||
-DpluginInstance=pluginInstance__MindMeld | |||
$(BUILD_DIR)/MockbaModular/%.cpp.o: MockbaModular/%.cpp | |||
-@mkdir -p "$(shell dirname $(BUILD_DIR)/$<)" | |||
@echo "Compiling $<" | |||
$(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) -c -o $@ \ | |||
$(foreach m,$(MOCKBAMODULAR_CUSTOM),$(call custom_module_names,$(m),MockbaModular)) \ | |||
-DpluginInstance=pluginInstance__MockbaModular | |||
$(BUILD_DIR)/Mog/%.cpp.o: Mog/%.cpp | |||
-@mkdir -p "$(shell dirname $(BUILD_DIR)/$<)" | |||
@echo "Compiling $<" | |||
@@ -0,0 +1 @@ | |||
Subproject commit 479d2c8007b2087cdf557a491df25c5b85784a96 |
@@ -446,6 +446,21 @@ extern Model* modelBassMaster; | |||
extern Model* modelBassMasterJr; | |||
extern Model* modelShapeMaster; | |||
// MockbaModular | |||
#define modelBlank modelMockbaModularBlank | |||
#define modelComparator modelMockbaModularComparator | |||
#include "MockbaModular/src/plugin.hpp" | |||
#undef modelBlank | |||
#undef modelComparator | |||
#include "MockbaModular/src/MockbaModular.hpp" | |||
#undef min | |||
#define saveBack ignoreMockbaModular1 | |||
#define loadBack ignoreMockbaModular2 | |||
#include "MockbaModular/src/MockbaModular.cpp" | |||
#undef saveBack | |||
#undef loadBack | |||
std::string loadBack(int) { return "res/Empty_dark.svg"; } | |||
// Mog | |||
#include "Mog/src/plugin.hpp" | |||
@@ -577,6 +592,7 @@ Plugin* pluginInstance__LittleUtils; | |||
Plugin* pluginInstance__Lomas; | |||
Plugin* pluginInstance__Lyrae; | |||
extern Plugin* pluginInstance__MindMeld; | |||
Plugin* pluginInstance__MockbaModular; | |||
Plugin* pluginInstance__Mog; | |||
extern Plugin* pluginInstance__mscHack; | |||
Plugin* pluginInstance__Prism; | |||
@@ -1703,6 +1719,65 @@ static void initStatic__Mog() | |||
} | |||
} | |||
static void initStatic__MockbaModular() | |||
{ | |||
Plugin* const p = new Plugin; | |||
pluginInstance__MockbaModular = p; | |||
const StaticPluginLoader spl(p, "MockbaModular"); | |||
if (spl.ok()) | |||
{ | |||
#define modelBlank modelMockbaModularBlank | |||
#define modelComparator modelMockbaModularComparator | |||
p->addModel(modelBlank); | |||
p->addModel(modelFeidah); | |||
p->addModel(modelFeidahS); | |||
p->addModel(modelFiltah); | |||
p->addModel(modelMixah); | |||
p->addModel(modelMixah3); | |||
p->addModel(modelDividah); | |||
p->addModel(modelCountah); | |||
p->addModel(modelSelectah); | |||
p->addModel(modelShapah); | |||
p->addModel(modelHoldah); | |||
p->addModel(modelPannah); | |||
p->addModel(modelReVoltah); | |||
p->addModel(modelCZSaw); | |||
p->addModel(modelCZSquare); | |||
p->addModel(modelCZPulse); | |||
p->addModel(modelCZDblSine); | |||
p->addModel(modelCZSawPulse); | |||
p->addModel(modelCZReso1); | |||
p->addModel(modelCZReso2); | |||
p->addModel(modelCZReso3); | |||
p->addModel(modelCZOsc); | |||
p->addModel(modelMaugTriangle); | |||
p->addModel(modelMaugShark); | |||
p->addModel(modelMaugSaw); | |||
p->addModel(modelMaugSaw2); | |||
p->addModel(modelMaugSquare); | |||
p->addModel(modelMaugSquare2); | |||
p->addModel(modelMaugSquare3); | |||
p->addModel(modelMaugOsc); | |||
p->addModel(modelComparator); | |||
p->addModel(modelDualBUFFER); | |||
p->addModel(modelDualNOT); | |||
p->addModel(modelDualOR); | |||
p->addModel(modelDualNOR); | |||
p->addModel(modelDualAND); | |||
p->addModel(modelDualNAND); | |||
p->addModel(modelDualXOR); | |||
p->addModel(modelDualXNOR); | |||
p->addModel(modelPSelectah); | |||
// require input files to work | |||
spl.removeModule("UDPClockMaster"); | |||
spl.removeModule("UDPClockSlave"); | |||
#undef modelBlank | |||
#undef modelComparator | |||
} | |||
} | |||
static void initStatic__mscHack() | |||
{ | |||
Plugin* const p = new Plugin; | |||
@@ -1960,6 +2035,7 @@ void initStaticPlugins() | |||
initStatic__Lomas(); | |||
initStatic__Lyrae(); | |||
initStatic__MindMeld(); | |||
initStatic__MockbaModular(); | |||
initStatic__Mog(); | |||
initStatic__mscHack(); | |||
initStatic__Prism(); | |||