Browse Source

Feature/add aaron static (#179)

* preliminary Aaron Static work

* build fix (override, needs work); color invert

* put color exception somewhere else
tags/22.03
dreamer GitHub 3 years ago
parent
commit
1c7e2f4386
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
7 changed files with 51 additions and 0 deletions
  1. +3
    -0
      .gitmodules
  2. +1
    -0
      README.md
  3. +3
    -0
      docs/LICENSES.md
  4. +1
    -0
      plugins/AaronStatic
  5. +13
    -0
      plugins/Makefile
  6. +24
    -0
      plugins/plugins.cpp
  7. +6
    -0
      src/custom/dep.cpp

+ 3
- 0
.gitmodules View File

@@ -175,3 +175,6 @@
[submodule "plugins/Algoritmarte"]
path = plugins/Algoritmarte
url = https://github.com/algoritmarte/AlgoritmarteVCVPlugin.git
[submodule "plugins/AaronStatic"]
path = plugins/AaronStatic
url = https://github.com/aaronstatic/AaronStatic_modules.git

+ 1
- 0
README.md View File

@@ -104,6 +104,7 @@ At the moment the following 3rd-party modules are provided:

- 21kHz
- 8Mode
- Aaron Static
- AlgoritmArte
- Amalgamated Harmonics
- Animated Circuits


+ 3
- 0
docs/LICENSES.md View File

@@ -15,6 +15,7 @@ Bellow follows a list of all code licenses used in Cardinal and linked submodule
| Rack | GPL-3.0-or-later | The actual Rack code, internal dependencies are compatible with GPLv3+ |
| 21kHz | MIT | |
| 8Mode | BSD-3-Clause | |
| Aaron Static | MIT | |
| AlgoritmArte | GPL-3.0-or-later | |
| Amalgamated Harmonics | BSD-3-Clause | |
| Animated Circuits | GPL-3.0-or-later | |
@@ -84,6 +85,8 @@ Below is a list of artwork licenses from plugins
|-----------------------------------------|------------------|------------------|
| 21kHz | MIT | No artwork specific license provided |
| 8Mode | BSD-3-Clause | No artwork specific license provided |
| AaronStatic/* | MIT | No artwork specific license provided |
| AaronStatic/fonts/PixelOperator.ttf | CC0-1.0 | |
| Algoritmarte/* | GPL-3.0-or-later | No artwork specific license provided |
| Algoritmarte/LEDSliderGreenHandle.svg | CC-BY-NC-4.0 | |
| AmalgamatedHarmonics/* | BSD-3-Clause | No artwork specific license provided |


+ 1
- 0
plugins/AaronStatic

@@ -0,0 +1 @@
Subproject commit 4ace0a1789c577ee4eb12dc03da5271f80598d62

+ 13
- 0
plugins/Makefile View File

@@ -238,6 +238,11 @@ PLUGIN_FILES += $(filter-out 8Mode/src/plugin.cpp,$(wildcard 8Mode/src/*.cpp))

PLUGIN_FILES += $(filter-out Algoritmarte/src/plugin.cpp,$(wildcard Algoritmarte/src/*.cpp))

# --------------------------------------------------------------
# Aaron Static

PLUGIN_FILES += $(wildcard AaronStatic/src/*.cpp)

# --------------------------------------------------------------
# AmalgamatedHarmonics

@@ -1151,6 +1156,14 @@ $(BUILD_DIR)/8Mode/%.cpp.o: 8Mode/%.cpp
$(foreach m,$(8MODE_CUSTOM),$(call custom_module_names,$(m),8Mode)) \
-DpluginInstance=pluginInstance__8Mode

$(BUILD_DIR)/AaronStatic/%.cpp.o: AaronStatic/%.cpp
-@mkdir -p "$(shell dirname $(BUILD_DIR)/$<)"
@echo "Compiling $<"
$(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) -c -o $@ \
$(foreach m,$(AARONSTATIC_CUSTOM),$(call custom_module_names,$(m),AaronStatic)) \
-DpluginInstance=pluginInstance__AaronStatic \
-Dinit=init__AaronStatic

$(BUILD_DIR)/Algoritmarte/%.cpp.o: Algoritmarte/%.cpp
-@mkdir -p "$(shell dirname $(BUILD_DIR)/$<)"
@echo "Compiling $<"


+ 24
- 0
plugins/plugins.cpp View File

@@ -30,6 +30,13 @@
// 8Mode
#include "8Mode/src/8mode.hpp"

// Aaron Static
#include "AaronStatic/src/plugin.hpp"
// Nasty override of this required function for now:
NVGcolor prepareDisplay(NVGcontext *vg, Rect *box, int fontSize) {
return nvgRGB(0xaf, 0xd2, 0x2c);
}

// Algoritmarte
#include "Algoritmarte/src/plugin.hpp"

@@ -646,6 +653,7 @@ Plugin* pluginInstance__Cardinal;
#ifndef NOPLUGINS
Plugin* pluginInstance__21kHz;
Plugin* pluginInstance__8Mode;
Plugin* pluginInstance__AaronStatic;
Plugin* pluginInstance__Algoritmarte;
Plugin* pluginInstance__AmalgamatedHarmonics;
Plugin* pluginInstance__AnimatedCircuits;
@@ -867,6 +875,21 @@ static void initStatic__8Mode()
}
}

static void initStatic__AaronStatic()
{
Plugin* const p = new Plugin;
pluginInstance__AaronStatic = p;

const StaticPluginLoader spl(p, "AaronStatic");
if (spl.ok())
{
p->addModel(modelChordCV);
p->addModel(modelScaleCV);
p->addModel(modelRandomNoteCV);
p->addModel(modelDiatonicCV);
}
}

static void initStatic__Algoritmarte()
{
Plugin* const p = new Plugin;
@@ -2340,6 +2363,7 @@ void initStaticPlugins()
#ifndef NOPLUGINS
initStatic__21kHz();
initStatic__8Mode();
initStatic__AaronStatic();
initStatic__Algoritmarte();
initStatic__AmalgamatedHarmonics();
initStatic__AnimatedCircuits();


+ 6
- 0
src/custom/dep.cpp View File

@@ -56,6 +56,11 @@ static const struct {
{ "/21kHz/res/Panels/D_Inf.svg", {}, -1 },
{ "/21kHz/res/Panels/PalmLoop.svg", {}, -1 },
{ "/21kHz/res/Panels/TachyonEntangler.svg", {}, -1 },
// MIT
{"/AaronStatic/res/ChordCV.svg", {}, -1 },
{"/AaronStatic/res/DiatonicCV.svg", {}, -1 },
{"/AaronStatic/res/RandomNoteCV.svg", {}, -1 },
{"/AaronStatic/res/ScaleCV.svg", {}, -1 },
// GPL3.0-or-later
{ "/Algoritmarte/res/Clockkky.svg", {}, -1 },
{ "/Algoritmarte/res/CyclicCA.svg", {}, -1 },
@@ -442,6 +447,7 @@ static inline bool invertPaint(NSVGshape* const shape, NSVGpaint& paint, const c
case 0xff0095fe:
case 0xff4d9a4d:
case 0xff4d4d9a:
case 0xff0187fc:
return false;
// pure black (convert to not quite pure white)
case 0xff000000:


Loading…
Cancel
Save