Skip to content

Commit

Permalink
V2.1.0 Release (#146)
Browse files Browse the repository at this point in the history
* Bascom, initial integration (#123)

* Release 2.0.1b alpha test for V2.0 finally
Only been compiled on ubuntu

* Release 2.0.1c alpha test for V2.0 finally
Only been compiled on ubuntu

* Disable Hula to allow building on Windows

* Disable Hula to allow building on Windows

* remove amburgh to allow windows compile

* annotate ports, to provide ui labels

* Updated Zazel, selecting an automation parameter nolonger causes a segfault.

This was due to a VCV engine change where module id has been changed from int to int64_t

* remove all github actions, as all outdated

* add build github actions from paulbacon, changed username to curlymorphic

* bump revision to v2.0.1f to test github actions

* bump revision to v2.0.1g to test github actions

* Unit tests working on local linux. It appears VCV has revised the variables in the makefile to identify architecture. Not sure of the reson but has to loosen the tolerance on the crossover filter to 0.003dB from 0.002dB.

* Amburg and Hula working on windows and linux

* Fix Zazel to work in Ableton on Windows

* Fix Iverson to work in Ableton on Windows

* Reduce Hula random offset to +- 3 cent from +-5

* Update ui colours

* V2.0.1h  The VCV 2.0 upgrade forum release

* Add paypal Donate button

* Start of multimode filter design document

* Ladder Filter Design document.

* Ladder Filter Design document. updated images

* Ladder Filter Design document. updated images

* Bascom ladder filter designer initial svg files

* Bascom ladder filter designer initial module

* Bascom initial module, based on Amburgh

* SynthFilterII 1 pole filter with tests

* Bascom, start of SynthFilterII based on SynthFilter

* Bascom, Ladder filter working, starting to add external parameters

* Bascom, and Expander basic functionaly, oversampling, polemixing, fc offsets

* WaveShaper added

* Bascom, waveshapers added and controlled via ui.

* Bascom, waveshapers tweeked for float_4

* Bascom, feedback path

* Bascom, Adjust VCA gain

* BascomExpander clock divide param updates.

* Attempts to get Bascom and BascomExpander slugs reconised

* Bascom working on mac M1

* run builds on LadderFilterDesigner branch

* Added original waveshaper csv samples

* Added sampled Waveshapes, currently only being used by Bascom

* Bascom resonance gain applied before waveshape

* BascomExpander takes Bascom parametes upon attachment

* Bascom bypass

* Bascom stage gain max min increased to += 32

* BascomExpander pole mixing presets

* Bascom Initial presets

* Bascom Corrected oversampling, nolonger lounder per oversample

* BascomExpander now updates controls to reflect bascom on preset load

* Bascom unit tests

* Bascom WaveShaper, seperate waveshape table to improve build time

* Bascom WaveShaper, make WaveShaper::nld static

* Bascom WaveShaper, performace improvment, passing pointers not std::array<>

* Bascom, BascomExpander Documentation

* Bascom, resampled NLD waveshapes

* Bascom, resampled NLD waveshapes, renamed to match extg convention

* BascomExpander, move all parameter linking to ModuleWidget

* BascomExpander, waveshaper, removed clipping

* Bascom Synth presets

* Bascom second inpiutm and output, allowing monophonic stereo

* Github CI (#125)

* Tests build on mac, Tyrant test disables, and a couple of 1 pole tests that didnt match the recorded response

* Tests build on mac, Test all active.

* Github  ci unit tests on linux

* Github  ci unit tests on linux3

* Github  ci unit tests on linux4

* Github  ci unit tests on linux5

* Github  ci unit tests on linux6

* Github  ci unit tests on linux7

* Github  ci unit tests on linux8

* Github  ci unit tests on linux9

* Github  ci unit tests on linux10

* Github  ci unit tests on linux11

* Github  ci unit tests on linux12

* Github  ci unit tests on linux13

* Github  ci unit tests on linux14

* Github  ci unit tests on linux15

* Github  ci unit tests on linux16

* Github  ci unit tests on linux17

* Github  ci unit tests on linux18

* Github  ci unit tests on linux19

* Github  ci unit tests on linux20

* Github  ci unit tests on linux21

* Github  ci unit tests on linux22

* Github  ci unit tests on linux23

* Github  ci unit tests on linux24

* Github  ci unit tests on linux25

* Github  ci unit tests on linux26

* Github  ci unit tests on Mac x64 passing

* Github  ci unit tests on Mac x64 pass, trying arm64

* Github  ci clang format test

* reformat code for clang format ci tests, these have been absent since the end of v1

* Formatting tests as well as other ci tests

* Hula updates to make lfo (#126)

* Hula, has unison option in context menu, When in unison mode trade polyphoney for voices

* Hula, has unison option, use simd::sqrt not std::sqrt

* Hula, Variable oversample, lfo settings, ratio knob behavior

* Hula, updated unit tests

* Helper.py update

* Helper.py createmodule now procudes composite.h module.cpp test.cpp, adds entries in plugin.cpp and plugin.hpp and test/main.cpp

* Helper.py createmodule adds module to README.md

* Hula, default unison =1, offset and scale output, detune +- 2 cents

* Hula, unit tests required additional parameters setup

* Mixer (#127)

* Mix createmodule

* Mix createmodule

* Mix complete module

* Mix updated changelog

* Mix updated formating

* Use fake CMakeList.txt to allow the use of clion tool chain (#128)

* Update to use Cmake, incomplete

* Fake CMake for Clion + Clion Settings

* formatting

* Python script to make class source and test files (#129)

* Add createclass.py helper script, that make source and test files

* Formatting

* Formatting

* Hula, oscillators have random phase at startup. Presets added (#130)

* Bose Noise and hold (#131)

* Bose random generator, initial commit

* Bose random generator, sspo::TwoWaySwitch & sspo::ThreeWaySwitch

* Formatting

* Formatting

* float_4 SchmittTrigger_4(float_4), simd Schmitt trigger

* float_4 SchmittTrigger_4(float_4), simd Schmitt trigger

* Bose Random Voltage Generator module rc

* Formatting

* revised ShcmittTrigger_4 to have the definitiions in header to allow tests to compile

* Duffy, Circle of fifths transposer (#132)

* Farini (#133)

* Farini VC ADSR, Initial commit

* Adsr dsp class, some simd, needs work to refact to all simd

* Adsr dsp class, some simd, needs work currentStage calculations now simd

* Farini module, waveshaping

* Farini module, working, still requires Kosmo sampling for wavehape, documentation.

* Farini module, Log time controls, still requires Kosmo sampling for wavehape, documentation.

* Add Vca waveshapes, use in farini

* Farini documentation

* reformat waveshape data files

* Iverson Jr, launchpad mk 2 preset updated (#134)

* Stereo la la (#135)

* LaLa stereo initial commit

* LaLa stereo complete module with documentation

* La La NaN checking (#136)

* LaLa stereo initial commit

* LaLa stereo complete module with documentation

* Lala & LaLa stereo NaN chcking

* Lala Stereo, change parameter knob to show frequency

* Thru, 1 in 1 out multi with labels (#137)

* PatchNotes, slimline textbox widget module (#138)

* LalaStereo Ui (#139)

* Mix UI (#140)

* Mix UI, and screenshot

* Mix presets

* Mix no unused dividor in step()

* Bascom UI, and screenshot (#141)

* Hula UI, and screenshot (#142)

* LalaStereo referesh svg as not showing on ubuntu

* Valgrind Tidy (#143)

* Fixing Valgrind uninitilised members

* formatting

* formatting

* Update Duffy to have only 3 paths and a reset. ui will need realignment

* Duffy ui alignment (#144)

* Release prep (#145)

* Release Prep, updated changelog, new version 2.1

* Release Prep, add selections to distributable

* Release Prep, add selections to distributable

* Release Prep, preset

* Update .name

* Release Prep, formatting

* Release Prep, fix warnings
  • Loading branch information
curlymorphic authored Mar 9, 2023
1 parent 87c022a commit a3df1db
Show file tree
Hide file tree
Showing 171 changed files with 92,830 additions and 21,071 deletions.
2 changes: 2 additions & 0 deletions .clang-format-ignore
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,10 @@
./dep/*
./src/third-party/sqsrc/util/*
./src/ctrl/*
./src/templates/*
./test/third-party/fft/*
./test/third-party/kiss_fft130/*
./test/third-party/kiss_fft130/test/*
./test/third-party/kiss_fft130/tools/*
./test/third-party/*
./helper.py
81 changes: 75 additions & 6 deletions .github/workflows/build-plugin.yml
Original file line number Diff line number Diff line change
@@ -1,12 +1,6 @@
name: Build VCV Rack Plugin
on:
push:
branches:
- main
- 'releases/**'
- Development
tags:
- 'v**'
pull_request:

env:
Expand All @@ -19,6 +13,18 @@ defaults:

jobs:

formatting-check:
name: Formatting Check
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Run clang-format style check for C/C++/Protobuf programs.
uses: jidicula/clang-format-action@v4.10.2
with:
clang-format-version: '13'
check-path: 'src'
fallback-style: 'Mozilla' # optional

modify-plugin-version:
name: Modify plugin version
runs-on: ubuntu-latest
Expand Down Expand Up @@ -67,6 +73,33 @@ jobs:
path: ${{ env.rack-plugin-toolchain-dir }}/plugin-build
name: ${{ matrix.platform }}

test-linux:
name: testLinux
needs: modify-plugin-version
runs-on: ubuntu-latest
container:
image: ghcr.io/qno/rack-plugin-toolchain-win-linux
options: --user root
strategy:
fail-fast: false
matrix:
platform: [ linux ]
steps:
- uses: actions/checkout@v3
with:
submodules: recursive
- uses: actions/cache@v3
id: plugin-version-cache
with:
path: plugin.json
key: ${{ github.sha }}-${{ github.run_id }}
- name: Build plugin
run: |
export PLUGIN_DIR=$GITHUB_WORKSPACE
pushd ${{ env.rack-plugin-toolchain-dir }}
pwd

build-mac:
name: mac
needs: modify-plugin-version
Expand Down Expand Up @@ -105,6 +138,42 @@ jobs:
path: dist
name: mac-${{ matrix.platform }}

test-mac:
name: testmac
needs: modify-plugin-version
runs-on: macos-12
strategy:
fail-fast: false
matrix:
platform: [x64]
steps:
- uses: actions/checkout@v3
with:
submodules: recursive
- uses: actions/cache@v3
id: plugin-version-cache
with:
path: plugin.json
key: ${{ github.sha }}-${{ github.run_id }}
- name: Get Rack-SDK
run: |
pushd $HOME
curl -o Rack-SDK.zip https://vcvrack.com/downloads/Rack-SDK-${{ env.rack-sdk-version }}-mac-${{ matrix.platform }}.zip
unzip Rack-SDK.zip
- name: Build tests
run: |
export RACK_DIR=$HOME/Rack-SDK
CROSS_COMPILE_TARGET_x64=x86_64-apple-darwin
CROSS_COMPILE_TARGET_arm64=arm64-apple-darwin
export RACK_DIR=$HOME/Rack-SDK
export CROSS_COMPILE=$CROSS_COMPILE_TARGET_${{ matrix.platform }}
make -j 4 test
echo "Plugin architecture '$(lipo -archs plugin.dylib)'"
- name: run tests
run: |
./test.exe
publish:
name: Publish Release
# only create a release if a tag was created that is called e.g. v1.2.3
Expand Down
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
/cmake-build-debug/
1 change: 1 addition & 0 deletions .idea/.name

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

7 changes: 7 additions & 0 deletions .idea/codeStyles/Project.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

5 changes: 5 additions & 0 deletions .idea/codeStyles/codeStyleConfig.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 6 additions & 0 deletions .idea/inspectionProfiles/Project_Default.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 4 additions & 0 deletions .idea/misc.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

5 changes: 5 additions & 0 deletions .idea/runConfigurations/run_in_rack.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 6 additions & 0 deletions .idea/vcs.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

71 changes: 44 additions & 27 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,10 +13,9 @@ Wallenda now has saturated outputs

Plugins TE (Tyrant Expander), Lala, Eva, Zazel


### V1.1.1 UI & Bugfixes

Updated knobs and ports to use custom svg.
Updated knobs and ports to use custom svg.
Fixed bug in Zazel where it was going into learn mode, when loading
Fixed bug in Massariti removing aliasing

Expand All @@ -26,34 +25,52 @@ Added Iverson and Iverson Jr

### V1.2.1 Iverson additions

- optimize MIDI feedback
- user selectable MIDI feedback
- new controller templates
- Euclidean beats
- Slow midi feedback mode
- Assignable midi controller feedback values in context menu. These can be used to select the colours shown on the controllers. These colour values vary between manufactures and models.
- Pattern Rotation
- optimize MIDI feedback
- user selectable MIDI feedback
- new controller templates
- Euclidean beats
- Slow midi feedback mode
- Assignable midi controller feedback values in context menu. These can be used to select the colours shown on the
controllers. These colour values vary between manufactures and models.
- Pattern Rotation

### V 1.2.2 Iverson and Maccomo
- Iverson
- updated / added controller presets
- Context menu sliders correctly display value
- Option for rotary encoders added to context menu
- Maccomo
- Improved Non linear distortion

### v1.3
- Zilah 14 bit midi cc-cv module, initial release

### v1.4
- Hula, small fm oscillator with small random, detune, initial release


- Iverson
- updated / added controller presets
- Context menu sliders correctly display value
- Option for rotary encoders added to context menu
- Maccomo
- Improved Non linear distortion

### v1.3

- Zilah 14 bit midi cc-cv module, initial release

### v1.4

- Hula, small fm oscillator with small random, detune, initial release

### v2.0.1
- The update
- Amburgh filter

- The update
- Amburgh filter

### v2.1.0
- Bascom Ladder filter designer
-

- Bascom Ladder filter designer
- Hula
- trade unison for polyphony
- variable oversample
- lfo
- Ratio knob now has sensible behavior
- offset and scale output
- detune +- 2 cents
- Mix, a simple five channel mixer
- Bose, random voltage generator, noise and hold
- Duffy Incremental transpose
- Farini, VC Envelope Generator
- StereoLala, dual crossover
- PatchNotes, slimline text box
- Thru 1-1 mult with labels

35 changes: 35 additions & 0 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
cmake_minimum_required(VERSION 3.16)
set(CMAKE_OSX_DEPLOYMENT_TARGET "10.9" CACHE STRING "Minimum OS X deployment version")
project(StudioSixPlusOne)

set(RACK_SDK_DIR /Users/curly/Documents/Development/Rack/)

set(PLUGIN_NAME ${PROJECT_NAME})
set(ADDITIONAL_PLUGIN_DISTRIBUTABLES README.md)
include(RackSDK.cmake)

file(GLOB plugin_SRC CONFIGURE_DEPENDS "src/modules/*.cpp"
"src/*.cpp"
"src/dsp/WaveShapes/*.cpp"
"test/*.cpp"
"test/third-party/*.cpp"
"test/third-party/fft/*.cpp"
"test/third-party/kiss_fft130/*.c"
)
target_sources(${RACK_PLUGIN_LIB} PRIVATE ${plugin_SRC})
target_include_directories(${RACK_PLUGIN_LIB}
PRIVATE
src/third-party/sqsrc/util/
src/composites/
src/
src/dsp/
src/modules/
src/composites/framework/
test/
test/signal/
test/third-party/
test/third-party/fft/
test/third-party/kiss_fft130/
test/third-party/kiss_fft130/tools
test/utils)

4 changes: 2 additions & 2 deletions Makefile
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@


# FLAGS will be passed to both the C and C++ compiler
FLAGS +=
FLAGS +=
CFLAGS +=
CXXFLAGS += -I./src/third-party/sqsrc/util -I./src/composites -I./src -I./src/dsp
CXXFLAGS += -I./src/modules -I./src/composites/framework
Expand Down Expand Up @@ -30,7 +30,7 @@ SOURCES += $(wildcard src/dsp/WaveShapes/*.cpp)

# Add files to the ZIP package when running `make dist`
# The compiled plugin and "plugin.json" are automatically added.
DISTRIBUTABLES += res presets
DISTRIBUTABLES += res presets selections
DISTRIBUTABLES += $(wildcard LICENSE*)

# If RACK_DIR is not defined when calling the Makefile, default to two directories above
Expand Down
Loading

0 comments on commit a3df1db

Please sign in to comment.