1
Fork 0

Add MockbaModular

Signed-off-by: falkTX <falktx@falktx.com>
This commit is contained in:
falkTX 2022-02-22 21:31:08 +00:00
parent cfd51c6b8f
commit 2aa8f085dd
No known key found for this signature in database
GPG Key ID: CDBAA37ABC74FBA0
6 changed files with 100 additions and 2 deletions

3
.gitmodules vendored
View File

@ -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

View File

@ -130,6 +130,7 @@ At the moment the following 3rd-party modules are provided:
- Lomas Modules
- Lyrae Modules
- MindMeld
- Mockba Modular
- Mog
- mscHack
- Prism

View File

@ -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 | |

View File

@ -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 $<"

1
plugins/MockbaModular Submodule

@ -0,0 +1 @@
Subproject commit 479d2c8007b2087cdf557a491df25c5b85784a96

View File

@ -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();