From 219b2f7f68f37201b83053ed61c5f37662362ed8 Mon Sep 17 00:00:00 2001 From: dingodoppelt <62596379+dingodoppelt@users.noreply.github.com> Date: Wed, 13 Sep 2023 13:15:29 +0200 Subject: [PATCH] add NB_modules --- .github/workflows/build.yml | 5 ++++- .github/workflows/irc.yml | 21 ------------------ .gitmodules | 4 ++++ .../NB_-_Breathcontroller-RandomRotator.vcv | Bin 0 -> 1928 bytes ...B_-_Breathcontroller_RandomRotator-Arp.vcv | Bin 0 -> 2950 bytes patches/examples/NB_-_PitchCV-HoldSax.vcv | Bin 0 -> 2444 bytes plugins/Makefile | 12 ++++++++++ plugins/NB | 1 + plugins/plugins.cpp | 20 +++++++++++++++++ 9 files changed, 41 insertions(+), 22 deletions(-) delete mode 100644 .github/workflows/irc.yml create mode 100644 patches/examples/NB_-_Breathcontroller-RandomRotator.vcv create mode 100644 patches/examples/NB_-_Breathcontroller_RandomRotator-Arp.vcv create mode 100644 patches/examples/NB_-_PitchCV-HoldSax.vcv create mode 160000 plugins/NB diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 5429fcf0..7d5ea8de 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -1,6 +1,9 @@ name: build -on: [push, pull_request] +on: + push: + tags: + - 'build_*' env: CACHE_VERSION: 4 diff --git a/.github/workflows/irc.yml b/.github/workflows/irc.yml deleted file mode 100644 index 3be06fea..00000000 --- a/.github/workflows/irc.yml +++ /dev/null @@ -1,21 +0,0 @@ -name: irc - -on: [push, pull_request] - -jobs: - notification: - runs-on: ubuntu-latest - name: IRC notification - steps: - - name: Format message - run: | - echo commitmessage=$(echo "${{ github.event.commits[0].message }}" | head -n 1) >> $GITHUB_ENV - - name: Format message - run: | - echo message="${{ github.actor }} pushed ${{ env.commitmessage }} ${{ github.event.commits[0].url }}" >> $GITHUB_ENV - - name: IRC notification - uses: Gottox/irc-message-action@v2 - with: - channel: '#cardinal' - nickname: github-event-bot - message: ${{ env.message }} diff --git a/.gitmodules b/.gitmodules index 7ea5657d..0079fe39 100644 --- a/.gitmodules +++ b/.gitmodules @@ -233,3 +233,7 @@ [submodule "plugins/EnigmaCurry"] path = plugins/EnigmaCurry url = https://github.com/EnigmaCurry/EnigmaCurry-vcv-pack.git +[submodule "plugins/NB"] + path = plugins/NB + url = https://github.com/dingodoppelt/NB.git + branch = release diff --git a/patches/examples/NB_-_Breathcontroller-RandomRotator.vcv b/patches/examples/NB_-_Breathcontroller-RandomRotator.vcv new file mode 100644 index 0000000000000000000000000000000000000000..540c079c9ea0cdcc9c54ac74789a51c9fb47ad9a GIT binary patch literal 1928 zcmV;32Y2`=wJ-euNc}qinq^QBClGHU2MqQ{gAQb2un|TC1^X)L9X-CeUY9gj~XYjKuRN-2e4keKJOL={UZ z#NmNb2pjXKcQ@mwT`ufFDWwnxzRgW!ZdH68m#H2I?Ab@xj$XOi900?PfB*q~DITVja z0)m+!rs5$XA^;&h4g|qeL=1?flEs*m#!?D#Sh%cVJU@RFx9}DcbV3x z%x2aAMN)(XV`5So5DRNCYj7x&^k`Vs(3@?htZmH}Q%_lg+HNyzfLH{n5OZUHzGP-* z@3*@)?&IdPWn^1e!+9pACXy5pHCfevlQR=Jukn)g*6{4q4Es!(_a2Y6KYLX(4^jEN ze|=k%)z&k#O4i~m#Wg$B=Tx^_UPT)$jvJ)(a;Hgr96-qkb=1Y7`1CCd>#(FEi` z&N}dDOpnMe?OgZw9TydXGBG`(hk+o4F<^Q$AZLjpCP{ggQs*jJjETvSm?Y&<$zql$ z!om|ZmP(fNFc73LCKOOOK;S@xtwNaTaSBW<9y!Y+!0&H=ALp@gG7rb3lEs*!s6vt) z%*0eE4n<;;A_KRuQ^{f|AjPqiVx&iDRI(h(6Ez&@v6Nb#h_OIQ1?Fi~IFd9u5Tu5A z6m!PbKi@Nc-3JURS<0j=3ehyozdmHkOm(|63e2I9Huh`|i7GnoS+|+!|dQfA2JPd)YP_Jri}&PR;gSUhP9xTwR(*?eMoTwQbov z+tTjU89Dhe**H%TjlYxKP!*Bse>Ba+XVcC<`}Si+J>AQuaRqm+H}_v({ZR9tm$^^d z&HF8J^IEaZ7SR)1&vn5yv)9c}_iSF@ft{$4wITol0000ZBM3;*1ppXg7;{Gh5@1jW zAQ;JW2*W@OgK!K)05CYn1cVr3i~$$|xnU3he)Z!(2z;#-T$e7YXu2cR5mZw>101k!25IP9&oeW9hdK3^<-89o5 zFwxe7RCS$C4FE``uP9U30e*$d!0=x+@&7&nDmz(=H6+$>P3BHET?X}DH(gj7nf!c7~&= z7AYtPIVfeok8uwFGF~R4Sa3j&<;@>769+!DT=xj4=>ezfcGe>D9|IMsE65G8Xze1$c@A!v3^W z%5v=~7#8==VA*(RqXdT6__{EPl8q?MRaI~xeV5VNxF;Sgb|==sk@vH2o{yWNU9XU0 z_dIZeL8E6wk^ba}uFO%6(?Oxl#zTC?Jrp+d99Zt9CCgzWeK zr$^cDT808)fFd2!oKo~Txqp%HZ3wIt!b)ItEZfnAf73Qgi3se_YgC+w^yTXygw4rm zF5-sRk#lF=`MM^OV|hOBW?%=5s40#?Xw;ecBJ*`o{k=H+u#3<{B3 zl<3@55!~R5I4c-==0Ec=8$r+MR?yV_wF6K{`IG-xu%}U&Cz?r1d&xhS^8K8`#-1<*r%>xV z5Ap(dfbynxt@ExT5l#g_u$L$^0vl6CNfQ-Sm$oK#Ww7M@0CIFbhX+GM_mf0}w|z*3 OJ)k3)vtF6I?+Y{gl#Xuz literal 0 HcmV?d00001 diff --git a/patches/examples/NB_-_Breathcontroller_RandomRotator-Arp.vcv b/patches/examples/NB_-_Breathcontroller_RandomRotator-Arp.vcv new file mode 100644 index 0000000000000000000000000000000000000000..4cc28fffa2a5dc9521d74ffdadfddc70cfef02d9 GIT binary patch literal 2950 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 KQEK{qPhkh^5sE4R literal 0 HcmV?d00001 diff --git a/plugins/Makefile b/plugins/Makefile index b1ab7db2..3c669161 100644 --- a/plugins/Makefile +++ b/plugins/Makefile @@ -906,6 +906,11 @@ MSM_CUSTOM = ADSR BlankPanel Delay LFO LowFrequencyOscillator Mult Noise OP VCA PLUGIN_FILES += $(filter-out myth-modules/src/plugin.cpp,$(wildcard myth-modules/src/*.cpp)) +# -------------------------------------------------------------- +# NB + +PLUGIN_FILES += $(filter-out NB/src/plugin.cpp,$(wildcard NB/src/*.cpp)) + # -------------------------------------------------------------- # Nonlinear Circuits @@ -2517,6 +2522,13 @@ $(BUILD_DIR)/myth-modules/%.cpp.o: myth-modules/%.cpp $(foreach m,$(MYTH_MODULES_CUSTOM),$(call custom_module_names,$(m),myth_modules)) \ -DpluginInstance=pluginInstance__myth_modules +$(BUILD_DIR)/NB/%.cpp.o: NB/%.cpp + -@mkdir -p "$(shell dirname $(BUILD_DIR)/$<)" + @echo "Compiling $<" + $(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) -c -o $@ \ + $(foreach m,$(NB_CUSTOM),$(call custom_module_names,$(m),NB)) \ + -DpluginInstance=pluginInstance__NB + $(BUILD_DIR)/nonlinearcircuits/%.cpp.o: nonlinearcircuits/%.cpp -@mkdir -p "$(shell dirname $(BUILD_DIR)/$<)" @echo "Compiling $<" diff --git a/plugins/NB b/plugins/NB new file mode 160000 index 00000000..f1ec6187 --- /dev/null +++ b/plugins/NB @@ -0,0 +1 @@ +Subproject commit f1ec61879916f3fe55dd3b22d9d833fb5184acb2 diff --git a/plugins/plugins.cpp b/plugins/plugins.cpp index 962d34ec..40a1c8fb 100644 --- a/plugins/plugins.cpp +++ b/plugins/plugins.cpp @@ -678,6 +678,9 @@ extern Model* modelBlankPanel; // myth-modules #include "myth-modules/src/plugin.hpp" +// NB +#include "NB/src/plugin.hpp" + // Nonlinear Circuits #include "nonlinearcircuits/src/NLC.hpp" @@ -850,6 +853,7 @@ Plugin* pluginInstance__Mog; extern Plugin* pluginInstance__mscHack; Plugin* pluginInstance__MSM; Plugin* pluginInstance__myth_modules; +Plugin* pluginInstance__NB; Plugin* pluginInstance__nonlinearcircuits; Plugin* pluginInstance__Orbits; Plugin* pluginInstance__ParableInstruments; @@ -2588,6 +2592,21 @@ static void initStatic__myth_modules() } } +static void initStatic__NB() +{ + Plugin* const p = new Plugin; + pluginInstance__NB = p; + + const StaticPluginLoader spl(p, "NB"); + if (spl.ok()) + { + p->addModel(modelSoftclip); + p->addModel(modelMoggle); + p->addModel(modelPolyfotz); + p->addModel(modelVarTriSaw); + } +} + static void initStatic__nonlinearcircuits() { Plugin* const p = new Plugin; @@ -3130,6 +3149,7 @@ void initStaticPlugins() initStatic__mscHack(); initStatic__MSM(); initStatic__myth_modules(); + initStatic__NB(); initStatic__nonlinearcircuits(); initStatic__Orbits(); initStatic__ParableInstruments();