Browse Source

Add MockbaModular

Signed-off-by: falkTX <falktx@falktx.com>
tags/22.03
falkTX 3 years ago
parent
commit
2aa8f085dd
Signed by: falkTX <falktx@falktx.com> GPG Key ID: CDBAA37ABC74FBA0
6 changed files with 100 additions and 2 deletions
  1. +3
    -0
      .gitmodules
  2. +1
    -0
      README.md
  3. +3
    -1
      docs/LICENSES.md
  4. +16
    -1
      plugins/Makefile
  5. +1
    -0
      plugins/MockbaModular
  6. +76
    -0
      plugins/plugins.cpp

+ 3
- 0
.gitmodules 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

+ 1
- 0
README.md 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


+ 3
- 1
docs/LICENSES.md 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 | |


+ 16
- 1
plugins/Makefile 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
- 0
plugins/MockbaModular

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

+ 76
- 0
plugins/plugins.cpp 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();


Loading…
Cancel
Save