commit 58948d398afaab5273f0fcc9340717d5c3d7d671
parent a2e4dc31065936f6fb948b5d92c2781d2446e0b1
Author: Matt Demanett <matt@demanett.net>
Date: Fri, 6 Apr 2018 23:27:51 -0400
Oscillator tweaks, fixes, cleanups.
Diffstat:
20 files changed, 181 insertions(+), 154 deletions(-)
diff --git a/res-src/Additator-src.svg b/res-src/Additator-src.svg
@@ -273,7 +273,7 @@
</g>
<use xlink:href="#knobguide-frequency" transform="translate(20 25)" />
- <text font-size="6pt" letter-spacing="1px" transform="translate(29 135)">0V = C4 = 261.63HZ</text>
+ <text font-size="6pt" letter-spacing="1px" transform="translate(32 135)">0V = C4 = 261.6HZ</text>
<g transform="translate(144 60)">
<!-- <polyline points="0,19 68,19" stroke="#0f0" stroke-width="1" fill="none" /> -->
diff --git a/res-src/EightFO-src.svg b/res-src/EightFO-src.svg
@@ -239,7 +239,7 @@
<!-- <rect width="20" height="10" fill="#0f0" transform="translate(20 130)" /> -->
<!-- <rect width="20" height="10" fill="#0f0" transform="translate(108 130)" /> -->
- <text font-size="6pt" letter-spacing="1px" transform="translate(41 137)">0V = 261.63HZ</text>
+ <text font-size="6pt" letter-spacing="1px" transform="translate(44.5 137)">0V = 261.6HZ</text>
<g transform="translate(86 335)">
<!-- <rect width="230" height="15" fill="#0f0" transform="translate(-30 -17)" /> -->
@@ -261,7 +261,7 @@
<!-- <polyline points="0,0 170,0" stroke="#0f0" stroke-width="1" fill="none" transform="translate(-10 13)" /> -->
<!-- <polyline points="0,0 0,170" stroke="#0f0" stroke-width="1" fill="none" transform="translate(33 -13)" /> -->
<!-- <polyline points="0,0 170,0" stroke="#f00" stroke-width="1" fill="none" transform="translate(-10 33)" /> -->
- <text font-size="8pt" letter-spacing="2px" transform="translate(8 33) rotate(270)">SH/PW</text>
+ <text font-size="8pt" letter-spacing="2px" transform="translate(8 38) rotate(270)">SAM/PW</text>
<use id="SAMPLE_PWM_PARAM" xlink:href="#knob-medium" transform="translate(20 0)" />
</g>
<use xlink:href="#knobguide-attenuverter" transform="translate(80.5 -9.6)" />
@@ -371,7 +371,7 @@
<g transform="translate(10 -40)">
<!-- <rect width="30" height="40" rx="5" fill="#fafafa" /> -->
<use id="SAMPLE_PWM_INPUT" xlink:href="#input" transform="translate(4 4)" />
- <text font-size="6pt" letter-spacing="0.5px" transform="translate(1 38)">SH/PW</text>
+ <text font-size="6pt" letter-spacing="1px" transform="translate(4 38)">S/PW</text>
</g>
<g transform="translate(50 -40)">
<!-- <rect width="30" height="40" rx="5" fill="#fafafa" /> -->
diff --git a/res-src/FMOp-src.svg b/res-src/FMOp-src.svg
@@ -228,27 +228,27 @@
<!-- <rect width="30" height="18" fill="#0f0" transform="translate(20 26)" /> -->
</g>
<use xlink:href="#knobguide-time" transform="translate(10.5 -9.5)" />
- <g transform="translate(0 43)">
+ <g transform="translate(0 42)">
<!-- <polyline points="0,0 200,0" stroke="#0f0" stroke-width="1" fill="none" transform="translate(-140 -10)" /> -->
<text font-size="8pt" letter-spacing="2px" transform="translate(8 25) rotate(270)">DEC</text>
<use id="DECAY_PARAM" xlink:href="#knob-medium" transform="translate(20 0)" />
<!-- <rect width="30" height="18" fill="#0f0" transform="translate(20 26)" /> -->
</g>
- <use xlink:href="#knobguide-time" transform="translate(10.5 33.5)" />
- <g transform="translate(0 86)">
+ <use xlink:href="#knobguide-time" transform="translate(10.5 32.5)" />
+ <g transform="translate(0 84)">
<!-- <polyline points="0,0 200,0" stroke="#0f0" stroke-width="1" fill="none" transform="translate(-140 -10)" /> -->
<text font-size="8pt" letter-spacing="2px" transform="translate(8 25) rotate(270)">SUS</text>
<use id="SUSTAIN_PARAM" xlink:href="#knob-medium" transform="translate(20 0)" />
<!-- <rect width="30" height="18" fill="#0f0" transform="translate(20 26)" /> -->
</g>
- <use xlink:href="#knobguide-linear" transform="translate(10.5 76.5)" />
- <g transform="translate(0 129)">
+ <use xlink:href="#knobguide-linear" transform="translate(10.5 74.5)" />
+ <g transform="translate(0 126)">
<!-- <polyline points="0,0 200,0" stroke="#0f0" stroke-width="1" fill="none" transform="translate(-140 -10)" /> -->
<text font-size="8pt" letter-spacing="2px" transform="translate(8 25) rotate(270)">REL</text>
<use id="RELEASE_PARAM" xlink:href="#knob-medium" transform="translate(20 0)" />
<!-- <rect width="30" height="18" fill="#0f0" transform="translate(20 26)" /> -->
</g>
- <use xlink:href="#knobguide-time" transform="translate(10.5 119.5)" />
+ <use xlink:href="#knobguide-time" transform="translate(10.5 116.5)" />
</g>
<g transform="translate(16 113)">
@@ -257,19 +257,19 @@
<use id="DEPTH_PARAM" xlink:href="#knob-medium" transform="translate(20 0)" />
</g>
<use xlink:href="#knobguide-linear" transform="translate(10.5 -9.5)" />
- <g transform="translate(0 49)">
- <text font-size="8pt" letter-spacing="2px" transform="translate(8 29) rotate(270)">FDBK</text>
+ <g transform="translate(0 48)">
+ <text font-size="8pt" letter-spacing="2px" transform="translate(8 30) rotate(270)">FDBK</text>
<use id="FEEDBACK_PARAM" xlink:href="#knob-medium" transform="translate(20 0)" />
</g>
- <use xlink:href="#knobguide-linear" transform="translate(10.5 39.5)" />
- <g transform="translate(0 98)">
- <text font-size="8pt" letter-spacing="2px" transform="translate(8 33) rotate(270)">LEVEL</text>
+ <use xlink:href="#knobguide-linear" transform="translate(10.5 38.5)" />
+ <g transform="translate(0 96)">
+ <text font-size="8pt" letter-spacing="2px" transform="translate(8 33.5) rotate(270)">LEVEL</text>
<use id="LEVEL_PARAM" xlink:href="#knob-medium" transform="translate(20 0)" />
</g>
- <use xlink:href="#knobguide-linear" transform="translate(10.5 88.5)" />
+ <use xlink:href="#knobguide-linear" transform="translate(10.5 86.5)" />
</g>
- <g transform="translate(13 239)">
+ <g transform="translate(13 237.5)">
<g transform="translate(0 17.5)">
<!-- <polyline points="0,0 200,0" stroke="#0f0" stroke-width="1" fill="none" transform="translate(0 3.3)" /> -->
<text font-size="6pt" letter-spacing="1px" transform="translate(0 6.2)">ENV:</text>
@@ -281,7 +281,7 @@
<g transform="translate(81 0)">
<use id="ENV_TO_FEEDBACK_LIGHT" xlink:href="#light-small" transform="translate(0 0)" />
<text font-size="6pt" letter-spacing="1px" transform="translate(9 6.2)">FDBK</text>
- <use id="ENV_TO_FEEDBACK_PARAM" xlink:href="#button-small" transform="translate(34 -1.2)" />
+ <use id="ENV_TO_FEEDBACK_PARAM" xlink:href="#button-small" transform="translate(34.5 -1.2)" />
</g>
</g>
</g>
diff --git a/res-src/LFO-src.svg b/res-src/LFO-src.svg
@@ -39,6 +39,14 @@
</g>
</symbol>
+ <symbol id="knob-smallest" viewBox="0 0 16px 16px">
+ <g transform="translate(8 8)">
+ <polyline points="-3,0 3,0" stroke-width="1" stroke="#00f" />
+ <polyline points="0,-3 0,3" stroke-width="1" stroke="#00f" />
+ <circle r="7.5" stroke-width="1" stroke="#00f" fill="none" />
+ </g>
+ </symbol>
+
<symbol id="knobguide-frequency" viewBox="0 0 108px 108px">
<g transform="translate(54 54)">
<g transform="rotate(-240) translate(34 0)">
@@ -135,6 +143,30 @@
</g>
</symbol>
+ <symbol id="knobguide-centertick" viewBox="0 0 40px 40px">
+ <g transform="translate(20 20)">
+ <g transform="rotate(-90) translate(10 0)">
+ <polyline points="0,0 4,0" stroke-width="1" stroke="#333" />
+ </g>
+ <path d="M 0 -12.5 A 12.5 12.5 0 0 1 12.5 0" stroke="#333" stroke-width="0.5" stroke-linecap="round" fill="none" transform="rotate(20)" />
+ <path d="M 0 -12.5 A 12.5 12.5 0 0 1 12.5 0" stroke="#333" stroke-width="0.5" stroke-linecap="round" fill="none" transform="rotate(43)" />
+ <path d="M 0 -12.5 A 12.5 12.5 0 0 0 -12.5 0" stroke="#333" stroke-width="0.5" stroke-linecap="round" fill="none" transform="rotate(-20)" />
+ <path d="M 0 -12.5 A 12.5 12.5 0 0 0 -12.5 0" stroke="#333" stroke-width="0.5" stroke-linecap="round" fill="none" transform="rotate(-43)" />
+ </g>
+ </symbol>
+
+ <symbol id="knobguide-maxtick" viewBox="0 0 40px 40px">
+ <g transform="translate(20 20)">
+ <g transform="rotate(60) translate(10 0)">
+ <polyline points="0,0 4,0" stroke-width="1" stroke="#333" />
+ </g>
+ <path d="M 0 -12.5 A 12.5 12.5 0 0 1 12.5 0" stroke="#333" stroke-width="0.5" stroke-linecap="round" fill="none" transform="rotate(0)" />
+ <path d="M 0 -12.5 A 12.5 12.5 0 0 1 12.5 0" stroke="#333" stroke-width="0.5" stroke-linecap="round" fill="none" transform="rotate(43)" />
+ <path d="M 0 -12.5 A 12.5 12.5 0 0 0 -12.5 0" stroke="#333" stroke-width="0.5" stroke-linecap="round" fill="none" transform="rotate(0)" />
+ <path d="M 0 -12.5 A 12.5 12.5 0 0 0 -12.5 0" stroke="#333" stroke-width="0.5" stroke-linecap="round" fill="none" transform="rotate(-43)" />
+ </g>
+ </symbol>
+
<symbol id="input" viewBox="0 0 24px 24px">
<g transform="translate(12 12)">
<circle cx="0" cy="0" r="5" stroke-width="1" stroke="#0f0" fill="#0f0" />
@@ -186,7 +218,7 @@
<!-- <rect width="20" height="10" fill="#0f0" transform="translate(20 130)" /> -->
<!-- <rect width="20" height="10" fill="#0f0" transform="translate(108 130)" /> -->
- <text font-size="6pt" letter-spacing="1px" transform="translate(41 137)">0V = 261.63HZ</text>
+ <text font-size="6pt" letter-spacing="1px" transform="translate(44.5 137)">0V = 261.6HZ</text>
<g transform="translate(111 240)">
<!-- <rect width="230" height="15" fill="#0f0" transform="translate(-30 -17)" /> -->
@@ -196,36 +228,42 @@
<text font-size="6pt" letter-spacing="1px" transform="translate(9 6.1)">SLOW</text>
</g>
- <g transform="translate(10 149)">
+ <g transform="translate(10 152)">
<g transform="translate(7 0)">
<!-- <rect width="52" height="38" fill="none" stroke="#0f0" transform="translate(0 -7)" /> -->
- <text font-size="8pt" letter-spacing="2px" transform="translate(8 26) rotate(270)">S&H</text>
+ <!-- <polyline points="0,0 0,354" stroke="#0f0" stroke-width="1" fill="none" transform="translate(33 0)" /> -->
+ <text font-size="8pt" letter-spacing="2px" transform="translate(8 27) rotate(270)">SAM</text>
<use id="SAMPLE_PARAM" xlink:href="#knob-medium" transform="translate(20 0)" />
</g>
<use xlink:href="#knobguide-linear" transform="translate(17.5 -9.6)" />
<g transform="translate(72 0)">
<!-- <rect width="52" height="38" fill="none" stroke="#0f0" transform="translate(0 -7)" /> -->
+ <!-- <polyline points="0,0 0,354" stroke="#0f0" stroke-width="1" fill="none" transform="translate(33 0)" /> -->
<text font-size="8pt" letter-spacing="2px" transform="translate(8 22.5) rotate(270)">PW</text>
<use id="PW_PARAM" xlink:href="#knob-medium" transform="translate(20 0)" />
</g>
<use xlink:href="#knobguide-attenuverter" transform="translate(82.5 -9.6)" />
</g>
- <g transform="translate(10 191)">
+ <g transform="translate(10 197)">
<g transform="translate(7 0)">
<!-- <rect width="52" height="38" fill="none" stroke="#0f0" transform="translate(0 -7)" /> -->
- <text font-size="8pt" letter-spacing="2px" transform="translate(8 25) rotate(270)">OFF</text>
- <use id="OFFSET_PARAM" xlink:href="#knob-medium" transform="translate(20 0)" />
+ <text font-size="8pt" letter-spacing="2px" transform="translate(8 18) rotate(270)">OFF</text>
+ <use id="OFFSET_PARAM" xlink:href="#knob-smallest" transform="translate(25 0)" />
</g>
- <use xlink:href="#knobguide-attenuverter" transform="translate(17.5 -9.6)" />
+ <use xlink:href="#knobguide-centertick" transform="translate(20 -12)" />
<g transform="translate(72 0)">
<!-- <rect width="52" height="38" fill="none" stroke="#0f0" transform="translate(0 -7)" /> -->
- <text font-size="8pt" letter-spacing="2px" transform="translate(8 25) rotate(270)">SCL</text>
- <use id="SCALE_PARAM" xlink:href="#knob-medium" transform="translate(20 0)" />
+ <text font-size="8pt" letter-spacing="2px" transform="translate(8 18) rotate(270)">SCL</text>
+ <use id="SCALE_PARAM" xlink:href="#knob-smallest" transform="translate(25 0)" />
</g>
- <use xlink:href="#knobguide-linear" transform="translate(82.5 -9.6)" />
+ <use xlink:href="#knobguide-maxtick" transform="translate(85 -12)" />
</g>
+ <!-- <rect width="50" height="10" fill="#0f0" transform="translate(0 137)" /> -->
+ <!-- <rect width="50" height="10" fill="#0f0" transform="translate(0 181)" /> -->
+ <!-- <rect width="50" height="10" fill="#0f0" transform="translate(0 215)" /> -->
+
<g transform="translate(0 225)">
<rect width="130" height="91" rx="5" fill="#bbb" transform="translate(10 44)" />
<rect width="97.5" height="135" rx="5" fill="#bbb" transform="translate(10 0)" />
@@ -236,16 +274,18 @@
<g transform="translate(12 0)">
<use id="SAMPLE_INPUT" xlink:href="#input" transform="translate(3 5)" />
- <text font-size="6pt" letter-spacing="1px" transform="translate(6 40)">S&H</text>
+ <text font-size="6pt" letter-spacing="1px" transform="translate(5 40)">SAM</text>
</g>
<g transform="translate(44 0)">
<use id="PW_INPUT" xlink:href="#input" transform="translate(3 5)" />
<text font-size="6pt" letter-spacing="1px" transform="translate(8 40)">PW</text>
</g>
<g transform="translate(76 0)">
- <use id="RAMP_UP_OUTPUT" xlink:href="#output" transform="translate(3 5)" />
+ <use id="RAMP_DOWN_OUTPUT" xlink:href="#output" transform="translate(3 5)" />
+ <!-- <text font-size="6pt" letter-spacing="2px" transform="translate(4.5 40)">SAW</text> -->
<g transform="translate(9 33.5)">
- <polyline points="0,8 12,0 12,8" stroke-width="1" stroke="#333" fill="none" />
+ <!-- <rect width="12" height="8" fill="none" stroke-width="1" stroke="#0f0" /> -->
+ <polyline points="0,8 0,0 12,8" stroke-width="1" stroke="#333" fill="none" />
</g>
</g>
@@ -259,11 +299,9 @@
<text font-size="6pt" letter-spacing="1px" transform="translate(6.5 40)">SCL</text>
</g>
<g transform="translate(76 0)">
- <use id="RAMP_DOWN_OUTPUT" xlink:href="#output" transform="translate(3 5)" />
- <!-- <text font-size="6pt" letter-spacing="2px" transform="translate(4.5 40)">SAW</text> -->
+ <use id="RAMP_UP_OUTPUT" xlink:href="#output" transform="translate(3 5)" />
<g transform="translate(9 33.5)">
- <!-- <rect width="12" height="8" fill="none" stroke-width="1" stroke="#0f0" /> -->
- <polyline points="0,8 0,0 12,8" stroke-width="1" stroke="#333" fill="none" />
+ <polyline points="0,8 12,0 12,8" stroke-width="1" stroke="#333" fill="none" />
</g>
</g>
<g transform="translate(108 0)">
diff --git a/res-src/VCO-src.svg b/res-src/VCO-src.svg
@@ -217,6 +217,11 @@
<symbol id="light-small" viewBox="0 0 6.4px 6.4px">
<rect width="6.4" height="6.4" fill="#0f0" />
</symbol>
+
+ <symbol id="switch" viewBox="0 0 14px 24px">
+ <rect width="14px" height="24px" stroke-width="1" stroke="#000" fill="#ddd" />
+ <rect width="14px" height="12px" stroke-width="0" fill="#000" />
+ </symbol>
</defs>
<rect width="100%" height="100%" fill="#ddd" />
@@ -233,7 +238,7 @@
<rect width="3.0" height="3" fill="#ddd" transform="translate(24 -5)" />
</g>
- <g transform="translate(20 25)">
+ <g transform="translate(21 25)">
<!-- <rect width="108" height="98" fill="none" stroke="#0f0" /> -->
<!-- <polyline points="0,54 54,54" stroke="#0f0" stroke-width="1" fill="none" /> -->
<!-- <polyline points="54,54 54,354" stroke="#0f0" stroke-width="1" fill="none" /> -->
@@ -241,11 +246,11 @@
</g>
<use xlink:href="#knobguide-frequency" transform="translate(20 25)" />
- <text font-size="6pt" letter-spacing="1px" transform="translate(29 135)">0V = C4 = 261.63HZ</text>
+ <text font-size="6pt" letter-spacing="1px" transform="translate(32 135)">0V = C4 = 261.6HZ</text>
<!-- <rect width="100" height="7" fill="#0f0" transform="translate(10 136)" /> -->
- <g transform="translate(34 151)">
+ <g transform="translate(35 153)">
<!-- <polyline points="0,-5 70,-5" stroke="#0f0" stroke-width="1" fill="none" /> -->
<!-- <polyline points="0,8 70,8" stroke="#0f0" stroke-width="1" fill="none" /> -->
<!-- <polyline points="0,21 70,21" stroke="#0f0" stroke-width="1" fill="none" /> -->
@@ -254,9 +259,9 @@
<use id="FINE_PARAM" xlink:href="#knob-smallest" transform="translate(13 0)" />
<!-- <rect width="90" height="10" fill="#0f0" transform="translate(0 17)" /> -->
</g>
- <use xlink:href="#knobguide-centertick" transform="translate(35 139)" />
+ <use xlink:href="#knobguide-centertick" transform="translate(36 141)" />
- <g transform="translate(81 156.5)">
+ <g transform="translate(82 158.5)">
<!-- <polyline points="0,3.2 70,3.2" stroke="#0f0" stroke-width="1" fill="none" /> -->
<use id="SLOW_PARAM" xlink:href="#button-small" transform="translate(40 -1.3)" />
<use id="SLOW_LIGHT" xlink:href="#light-small" transform="translate(0 0)" />
@@ -266,16 +271,16 @@
<!-- <rect width="100" height="7" fill="#0f0" transform="translate(10 172)" /> -->
- <g transform="translate(43 187)">
+ <g transform="translate(44 188)">
<!-- <polyline points="0,13 70,13" stroke="#0f0" stroke-width="1" fill="none" /> -->
<text font-size="8pt" letter-spacing="2px" transform="translate(10 22.5) rotate(270)">PW</text>
<use id="PW_PARAM" xlink:href="#knob-medium" transform="translate(18 0)" />
</g>
- <use xlink:href="#knobguide-attenuverter" transform="translate(51.5 177.5)" />
+ <use xlink:href="#knobguide-attenuverter" transform="translate(52.5 178.5)" />
<!-- <rect width="100" height="7" fill="#0f0" transform="translate(10 218)" /> -->
- <g transform="translate(34.5 230)">
+ <g transform="translate(44 230)">
<!-- <rect width="83" height="7" fill="#0f0" transform="translate(0 0)" /> -->
<g transform="translate(0 0)">
<!-- <polyline points="0,13 100,13" stroke="#0f0" stroke-width="1" fill="none" /> -->
@@ -283,19 +288,13 @@
<use id="FM_PARAM" xlink:href="#knob-medium" transform="translate(18 0)" />
</g>
<!-- <rect width="90" height="10" fill="#0f0" transform="translate(0 26)" /> -->
- <g transform="translate(53 -3)">
- <use id="FM_TYPE_PARAM" xlink:href="#button-small" transform="translate(9 26)" />
- <g transform="translate(0 2)">
- <use id="FM_EXP_LIGHT" xlink:href="#light-small" transform="translate(0 0)" />
- <text font-size="6pt" letter-spacing="2px" transform="translate(9 6.2)">EXP</text>
- </g>
- <g transform="translate(0 15.3)">
- <use id="FM_LIN_LIGHT" xlink:href="#light-small" transform="translate(0 0)" />
- <text font-size="6pt" letter-spacing="2px" transform="translate(9 6.2)">LIN</text>
- </g>
+ <g transform="translate(57 -0)">
+ <text font-size="5pt" letter-spacing="2px" transform="translate(-1 -1)">EXP</text>
+ <use id="FM_TYPE_PARAM" xlink:href="#switch" transform="translate(0 2)" />
+ <text font-size="5pt" letter-spacing="2px" transform="translate(0 34)">LIN</text>
</g>
</g>
- <use xlink:href="#knobguide-fm" transform="translate(43 220.5)" />
+ <use xlink:href="#knobguide-fm" transform="translate(52.5 220.5)" />
<!-- <rect width="150" height="7" fill="#0f0" transform="translate(10 262)" /> -->
diff --git a/res-src/XCO-src.svg b/res-src/XCO-src.svg
@@ -31,11 +31,11 @@
</g>
</symbol>
- <symbol id="knob-medium" viewBox="0 0 26px 26px">
- <g transform="translate(13 13)">
- <polyline points="-3,0 3,0" stroke-width="1" stroke="#00f" />
- <polyline points="0,-3 0,3" stroke-width="1" stroke="#00f" />
- <circle cx="0" cy="0" r="12.5" stroke-width="1" stroke="#00f" fill="none" />
+ <symbol id="knob" viewBox="0 0 38px 38px">
+ <g transform="translate(19 19)">
+ <polyline points="-5,0 5,0" stroke-width="1" stroke="#00f" />
+ <polyline points="0,-5 0,5" stroke-width="1" stroke="#00f" />
+ <circle cx="0" cy="0" r="18.5" stroke-width="1" stroke="#00f" fill="none" />
</g>
</symbol>
@@ -128,19 +128,19 @@
</g>
</symbol>
- <symbol id="knobguide-fm" viewBox="0 0 45px 45px">
- <g transform="translate(22.5 22.5)">
- <text font-size="5.0pt" transform="rotate(-240) translate(18 0) rotate(240) translate(-2 2)">0</text>
- <polyline points="0,0 2.5,0" stroke-width="0.3" stroke="#333" transform="rotate(-210) translate(15 0)" />
- <polyline points="0,0 2.5,0" stroke-width="0.3" stroke="#333" transform="rotate(-180) translate(15 0)" />
- <polyline points="0,0 2.5,0" stroke-width="0.3" stroke="#333" transform="rotate(-150) translate(15 0)" />
- <polyline points="0,0 2.5,0" stroke-width="0.3" stroke="#333" transform="rotate(-120) translate(15 0)" />
- <polyline points="0,0 2.5,0" stroke-width="0.3" stroke="#333" transform="rotate(-90) translate(15 0)" />
- <polyline points="0,0 2.5,0" stroke-width="0.3" stroke="#333" transform="rotate(-60) translate(15 0)" />
- <polyline points="0,0 2.5,0" stroke-width="0.3" stroke="#333" transform="rotate(-30) translate(15 0)" />
- <polyline points="0,0 2.5,0" stroke-width="0.3" stroke="#333" transform="rotate(0) translate(15 0)" />
- <polyline points="0,0 2.5,0" stroke-width="0.3" stroke="#333" transform="rotate(30) translate(15 0)" />
- <polyline points="0,0 3.5,0" stroke-width="1" stroke="#333" transform="rotate(60) translate(15 0)" />
+ <symbol id="knobguide-fm" viewBox="0 0 50px 50px">
+ <g transform="translate(25 25)">
+ <text font-size="6.0pt" transform="rotate(-240) translate(24 0) rotate(240) translate(-4 3)">0</text>
+ <polyline points="0,0 3,0" stroke-width="0.5" stroke="#333" transform="rotate(-210) translate(22 0)" />
+ <polyline points="0,0 3,0" stroke-width="0.5" stroke="#333" transform="rotate(-180) translate(22 0)" />
+ <polyline points="0,0 3,0" stroke-width="0.5" stroke="#333" transform="rotate(-150) translate(22 0)" />
+ <polyline points="0,0 3,0" stroke-width="0.5" stroke="#333" transform="rotate(-120) translate(22 0)" />
+ <polyline points="0,0 3,0" stroke-width="0.5" stroke="#333" transform="rotate(-90) translate(22 0)" />
+ <polyline points="0,0 3,0" stroke-width="0.5" stroke="#333" transform="rotate(-60) translate(22 0)" />
+ <polyline points="0,0 3,0" stroke-width="0.5" stroke="#333" transform="rotate(-30) translate(22 0)" />
+ <polyline points="0,0 3,0" stroke-width="0.5" stroke="#333" transform="rotate(0) translate(22 0)" />
+ <polyline points="0,0 3,0" stroke-width="0.5" stroke="#333" transform="rotate(30) translate(22 0)" />
+ <polyline points="0,0 4,0" stroke-width="1" stroke="#333" transform="rotate(60) translate(22 0)" />
</g>
</symbol>
@@ -203,6 +203,11 @@
<symbol id="light-small" viewBox="0 0 6.4px 6.4px">
<rect width="6.4" height="6.4" fill="#0f0" />
</symbol>
+
+ <symbol id="switch" viewBox="0 0 14px 24px">
+ <rect width="14px" height="24px" stroke-width="1" stroke="#000" fill="#ddd" />
+ <rect width="14px" height="12px" stroke-width="0" fill="#000" />
+ </symbol>
</defs>
<rect width="100%" height="100%" fill="#ddd" />
@@ -227,18 +232,21 @@
</g>
<use xlink:href="#knobguide-frequency" transform="translate(20 25)" />
- <text font-size="6pt" letter-spacing="1px" transform="translate(29 136)">0V = C4 = 261.63HZ</text>
+ <text font-size="6pt" letter-spacing="1px" transform="translate(32 136)">0V = C4 = 261.6HZ</text>
<!-- <rect width="90" height="10" fill="#0f0" transform="translate(0 143)" /> -->
- <g transform="translate(45.5 156)">
+ <g transform="translate(34 153)">
+ <!-- <polyline points="0,-5 70,-5" stroke="#0f0" stroke-width="1" fill="none" /> -->
<!-- <polyline points="0,8 70,8" stroke="#0f0" stroke-width="1" fill="none" /> -->
- <text font-size="8pt" letter-spacing="2px" transform="translate(5.7 22) rotate(270)">FINE</text>
- <use id="FINE_PARAM" xlink:href="#knob-smallest" transform="translate(20 0)" />
+ <!-- <polyline points="0,21 70,21" stroke="#0f0" stroke-width="1" fill="none" /> -->
+ <!-- <polyline points="21,-10 21,240" stroke="#0f0" stroke-width="1" fill="none" /> -->
+ <text font-size="8pt" letter-spacing="2px" transform="translate(0 22) rotate(270)">FINE</text>
+ <use id="FINE_PARAM" xlink:href="#knob-smallest" transform="translate(13 0)" />
<!-- <rect width="90" height="10" fill="#0f0" transform="translate(0 17)" /> -->
</g>
- <use xlink:href="#knobguide-centertick" transform="translate(53.7 144)" />
+ <use xlink:href="#knobguide-centertick" transform="translate(35 141)" />
- <g transform="translate(50 193)">
+ <g transform="translate(81 158.5)">
<!-- <polyline points="0,3.2 70,3.2" stroke="#0f0" stroke-width="1" fill="none" /> -->
<use id="SLOW_PARAM" xlink:href="#button-small" transform="translate(40 -1.3)" />
<use id="SLOW_LIGHT" xlink:href="#light-small" transform="translate(0 0)" />
@@ -246,35 +254,33 @@
<!-- <rect width="90" height="10" fill="#0f0" transform="translate(0 7)" /> -->
</g>
- <g transform="translate(31 219)">
- <g transform="translate(10 0)">
- <!-- <polyline points="0,13 70,13" stroke="#0f0" stroke-width="1" fill="none" /> -->
- <text font-size="8pt" letter-spacing="2px" transform="translate(10 22) rotate(270)">FM</text>
- <use id="FM_PARAM" xlink:href="#knob-medium" transform="translate(20 0)" />
+ <g transform="translate(31 194)">
+ <g transform="translate(4 0)">
+ <!-- <polyline points="-50,0 100,0" stroke="#0f0" stroke-width="1" fill="none" transform="translate(0 19)" /> -->
+ <text font-size="8pt" letter-spacing="2px" transform="translate(9 27) rotate(270)">FM</text>
+ <use id="FM_PARAM" xlink:href="#knob" transform="translate(20 0)" />
</g>
<!-- <rect width="90" height="10" fill="#0f0" transform="translate(0 26)" /> -->
- <g transform="translate(0 37)">
+ <g transform="translate(6 52)">
<g transform="translate(0 0)">
+ <!-- <rect width="62" height="47" stroke="#0f0" fill="none" transform="translate(0 0)" /> -->
<!-- <polyline points="0,23.5 100,23.5" stroke="#0f0" stroke-width="1" fill="none" /> -->
<!-- <polyline points="15,23.5 15,-123.5" stroke="#0f0" stroke-width="1" fill="none" /> -->
<rect width="30" height="47" rx="5" fill="#fafafa" />
<use id="FM_INPUT" xlink:href="#input" transform="translate(3 5)" />
<text font-size="6pt" letter-spacing="1px" transform="translate(9 40)">FM</text>
</g>
- <g transform="translate(42 6)">
- <use id="FM_TYPE_PARAM" xlink:href="#button-small" transform="translate(9 26)" />
- <g transform="translate(0 2)">
- <use id="FM_EXP_LIGHT" xlink:href="#light-small" transform="translate(0 0)" />
- <text font-size="6pt" letter-spacing="2px" transform="translate(9 6.2)">EXP</text>
- </g>
- <g transform="translate(0 15.3)">
- <use id="FM_LIN_LIGHT" xlink:href="#light-small" transform="translate(0 0)" />
- <text font-size="6pt" letter-spacing="2px" transform="translate(9 6.2)">LIN</text>
- </g>
+ <g transform="translate(47 9)">
+ <text font-size="5pt" letter-spacing="2px" transform="translate(-1 -1)">EXP</text>
+ <use id="FM_TYPE_PARAM" xlink:href="#switch" transform="translate(0 2)" />
+ <text font-size="5pt" letter-spacing="2px" transform="translate(0 34)">LIN</text>
</g>
</g>
</g>
- <use xlink:href="#knobguide-fm" transform="translate(51.5 209.5)" />
+ <use xlink:href="#knobguide-fm" transform="translate(49 188)" />
+
+ <!-- <rect width="90" height="18" fill="#0f0" transform="translate(0 175)" /> -->
+ <!-- <rect width="90" height="18" fill="#0f0" transform="translate(0 295)" /> -->
<rect width="191" height="47" rx="5" fill="#bbb" transform="translate(99 313)" />
@@ -369,7 +375,7 @@
</g>
<g transform="translate(3 30)">
<use id="TRIANGLE_SAMPLE_PARAM" xlink:href="#knob-smallest" transform="translate(4 0)" />
- <text font-size="6pt" letter-spacing="2px" transform="translate(2 30)">S&H</text>
+ <text font-size="6pt" letter-spacing="2px" transform="translate(1.5 30)">SAM</text>
<use id="TRIANGLE_SAMPLE_INPUT" xlink:href="#input" transform="translate(0 35)" />
</g>
<g transform="translate(3 118)">
diff --git a/res/Additator.svg b/res/Additator.svg
Binary files differ.
diff --git a/res/EightFO.svg b/res/EightFO.svg
Binary files differ.
diff --git a/res/FMOp.svg b/res/FMOp.svg
Binary files differ.
diff --git a/res/LFO.svg b/res/LFO.svg
Binary files differ.
diff --git a/res/VCO.svg b/res/VCO.svg
Binary files differ.
diff --git a/res/XCO.svg b/res/XCO.svg
Binary files differ.
diff --git a/src/Additator.cpp b/src/Additator.cpp
@@ -25,7 +25,7 @@ float Additator::cvValue(Input& cv, bool dc) {
void Additator::step() {
if (!outputs[AUDIO_OUTPUT].active) {
- Phase phase = ((int)params[PHASE_PARAM].value) == 2 ? PHASE_COSINE : PHASE_SINE;
+ Phase phase = params[PHASE_PARAM].value > 1.5f ? PHASE_COSINE : PHASE_SINE;
lights[SINE_LIGHT].value = phase == PHASE_SINE;
lights[COSINE_LIGHT].value = phase == PHASE_COSINE;
return;
@@ -120,7 +120,7 @@ void Additator::step() {
if (_syncTrigger.process(inputs[SYNC_INPUT].value)) {
_oscillator.syncToPhase(_phase == PHASE_SINE ? 0.0f : M_PI / 2.0f);
}
- Phase phase = ((int)params[PHASE_PARAM].value) == 2 ? PHASE_COSINE : PHASE_SINE;
+ Phase phase = params[PHASE_PARAM].value > 1.5f ? PHASE_COSINE : PHASE_SINE;
if (_phase != phase) {
_phase = phase;
_oscillator.syncToPhase(_phase == PHASE_SINE ? 0.0f : M_PI / 2.0f);
diff --git a/src/EightFO.cpp b/src/EightFO.cpp
@@ -15,7 +15,7 @@ void EightFO::onSampleRateChange() {
}
void EightFO::step() {
- lights[SLOW_LIGHT].value = _slowMode = ((int)params[SLOW_PARAM].value) == 1;
+ lights[SLOW_LIGHT].value = _slowMode = params[SLOW_PARAM].value > 0.5f;
if (!(
outputs[PHASE7_OUTPUT].active ||
outputs[PHASE6_OUTPUT].active ||
diff --git a/src/FMOp.cpp b/src/FMOp.cpp
@@ -133,14 +133,14 @@ struct FMOpWidget : ModuleWidget {
auto ratioParamPosition = Vec(30.0, 45.0);
auto fineParamPosition = Vec(112.0, 57.0);
auto attackParamPosition = Vec(107.0, 90.0);
- auto decayParamPosition = Vec(107.0, 133.0);
- auto sustainParamPosition = Vec(107.0, 176.0);
- auto releaseParamPosition = Vec(107.0, 219.0);
+ auto decayParamPosition = Vec(107.0, 132.0);
+ auto sustainParamPosition = Vec(107.0, 174.0);
+ auto releaseParamPosition = Vec(107.0, 216.0);
auto depthParamPosition = Vec(36.0, 113.0);
- auto feedbackParamPosition = Vec(36.0, 162.0);
- auto levelParamPosition = Vec(36.0, 211.0);
- auto envToLevelParamPosition = Vec(78.0, 255.3);
- auto envToFeedbackParamPosition = Vec(128.0, 255.3);
+ auto feedbackParamPosition = Vec(36.0, 161.0);
+ auto levelParamPosition = Vec(36.0, 209.0);
+ auto envToLevelParamPosition = Vec(78.0, 253.8);
+ auto envToFeedbackParamPosition = Vec(128.5, 253.8);
auto depthInputPosition = Vec(15.0, 274.0);
auto feedbackInputPosition = Vec(47.0, 274.0);
@@ -152,8 +152,8 @@ struct FMOpWidget : ModuleWidget {
auto audioOutputPosition = Vec(111.0, 318.0);
- auto envToLevelLightPosition = Vec(40.0, 256.5);
- auto envToFeedbackLightPosition = Vec(94.0, 256.5);
+ auto envToLevelLightPosition = Vec(40.0, 255.0);
+ auto envToFeedbackLightPosition = Vec(94.0, 255.0);
// end generated by svg_widgets.rb
addParam(ParamWidget::create<Knob38>(ratioParamPosition, module, FMOp::RATIO_PARAM, -1.0, 1.0, 0.0));
@@ -183,4 +183,4 @@ struct FMOpWidget : ModuleWidget {
}
};
-Model* modelFMOp = Model::create<FMOp, FMOpWidget>("Bogaudio", "Bogaudio-FMOp", "FM-OP", OSCILLATOR_TAG);
+Model* modelFMOp = Model::create<FMOp, FMOpWidget>("Bogaudio", "Bogaudio-FMOp", "FM-OP", OSCILLATOR_TAG, SYNTH_VOICE_TAG);
diff --git a/src/LFO.cpp b/src/LFO.cpp
@@ -15,7 +15,7 @@ void LFO::onSampleRateChange() {
}
void LFO::step() {
- lights[SLOW_LIGHT].value = _slowMode = ((int)params[SLOW_PARAM].value) == 1;
+ lights[SLOW_LIGHT].value = _slowMode = params[SLOW_PARAM].value > 0.5f;
if (!(
outputs[SINE_OUTPUT].active ||
outputs[TRIANGLE_OUTPUT].active ||
@@ -128,10 +128,10 @@ struct LFOWidget : ModuleWidget {
// generated by svg_widgets.rb
auto frequencyParamPosition = Vec(41.0, 45.0);
auto slowParamPosition = Vec(120.0, 249.0);
- auto sampleParamPosition = Vec(37.0, 149.0);
- auto pwParamPosition = Vec(102.0, 149.0);
- auto offsetParamPosition = Vec(37.0, 191.0);
- auto scaleParamPosition = Vec(102.0, 191.0);
+ auto sampleParamPosition = Vec(37.0, 152.0);
+ auto pwParamPosition = Vec(102.0, 152.0);
+ auto offsetParamPosition = Vec(42.0, 197.0);
+ auto scaleParamPosition = Vec(107.0, 197.0);
auto sampleInputPosition = Vec(15.0, 230.0);
auto pwInputPosition = Vec(47.0, 230.0);
@@ -140,8 +140,8 @@ struct LFOWidget : ModuleWidget {
auto pitchInputPosition = Vec(15.0, 318.0);
auto resetInputPosition = Vec(47.0, 318.0);
- auto rampUpOutputPosition = Vec(79.0, 230.0);
- auto rampDownOutputPosition = Vec(79.0, 274.0);
+ auto rampDownOutputPosition = Vec(79.0, 230.0);
+ auto rampUpOutputPosition = Vec(79.0, 274.0);
auto squareOutputPosition = Vec(111.0, 274.0);
auto triangleOutputPosition = Vec(79.0, 318.0);
auto sineOutputPosition = Vec(111.0, 318.0);
@@ -153,8 +153,8 @@ struct LFOWidget : ModuleWidget {
addParam(ParamWidget::create<StatefulButton9>(slowParamPosition, module, LFO::SLOW_PARAM, 0.0, 1.0, 0.0));
addParam(ParamWidget::create<Knob26>(sampleParamPosition, module, LFO::SAMPLE_PARAM, 0.0, 1.0, 0.0));
addParam(ParamWidget::create<Knob26>(pwParamPosition, module, LFO::PW_PARAM, -1.0, 1.0, 0.0));
- addParam(ParamWidget::create<Knob26>(offsetParamPosition, module, LFO::OFFSET_PARAM, -1.0, 1.0, 0.0));
- addParam(ParamWidget::create<Knob26>(scaleParamPosition, module, LFO::SCALE_PARAM, 0.0, 1.0, 1.0));
+ addParam(ParamWidget::create<Knob16>(offsetParamPosition, module, LFO::OFFSET_PARAM, -1.0, 1.0, 0.0));
+ addParam(ParamWidget::create<Knob16>(scaleParamPosition, module, LFO::SCALE_PARAM, 0.0, 1.0, 1.0));
addInput(Port::create<Port24>(sampleInputPosition, Port::INPUT, module, LFO::SAMPLE_INPUT));
addInput(Port::create<Port24>(pwInputPosition, Port::INPUT, module, LFO::PW_INPUT));
diff --git a/src/VCO.cpp b/src/VCO.cpp
@@ -13,10 +13,8 @@ void VCO::onSampleRateChange() {
}
void VCO::step() {
- lights[SLOW_LIGHT].value = _slowMode = ((int)params[SLOW_PARAM].value) == 1;
- _fmLinearMode = ((int)params[FM_TYPE_PARAM].value) == 1;
- lights[FM_EXP_LIGHT].value = !_fmLinearMode;
- lights[FM_LIN_LIGHT].value = _fmLinearMode;
+ lights[SLOW_LIGHT].value = _slowMode = params[SLOW_PARAM].value > 0.5f;
+ _fmLinearMode = params[FM_TYPE_PARAM].value < 0.5f;
if (!(
outputs[SQUARE_OUTPUT].active ||
@@ -102,12 +100,12 @@ struct VCOWidget : ModuleWidget {
addChild(Widget::create<ScrewSilver>(Vec(box.size.x - 15, 365)));
// generated by svg_widgets.rb
- auto frequencyParamPosition = Vec(40.0, 45.0);
- auto fineParamPosition = Vec(47.0, 151.0);
- auto slowParamPosition = Vec(121.0, 155.2);
- auto pwParamPosition = Vec(61.0, 187.0);
- auto fmParamPosition = Vec(52.5, 230.0);
- auto fmTypeParamPosition = Vec(96.5, 253.0);
+ auto frequencyParamPosition = Vec(41.0, 45.0);
+ auto fineParamPosition = Vec(48.0, 153.0);
+ auto slowParamPosition = Vec(122.0, 157.2);
+ auto pwParamPosition = Vec(62.0, 188.0);
+ auto fmParamPosition = Vec(62.0, 230.0);
+ auto fmTypeParamPosition = Vec(100.5, 231.5);
auto pwInputPosition = Vec(15.0, 274.0);
auto fmInputPosition = Vec(47.0, 274.0);
@@ -119,9 +117,7 @@ struct VCOWidget : ModuleWidget {
auto triangleOutputPosition = Vec(79.0, 318.0);
auto sineOutputPosition = Vec(111.0, 318.0);
- auto slowLightPosition = Vec(81.0, 156.5);
- auto fmExpLightPosition = Vec(87.5, 229.0);
- auto fmLinLightPosition = Vec(87.5, 242.3);
+ auto slowLightPosition = Vec(82.0, 158.5);
// end generated by svg_widgets.rb
addParam(ParamWidget::create<Knob68>(frequencyParamPosition, module, VCO::FREQUENCY_PARAM, -3.0, 6.0, 0.0));
@@ -129,7 +125,7 @@ struct VCOWidget : ModuleWidget {
addParam(ParamWidget::create<StatefulButton9>(slowParamPosition, module, VCO::SLOW_PARAM, 0.0, 1.0, 0.0));
addParam(ParamWidget::create<Knob26>(pwParamPosition, module, VCO::PW_PARAM, -1.0, 1.0, 0.0));
addParam(ParamWidget::create<Knob26>(fmParamPosition, module, VCO::FM_PARAM, 0.0, 1.0, 0.0));
- addParam(ParamWidget::create<StatefulButton9>(fmTypeParamPosition, module, VCO::FM_TYPE_PARAM, 0.0, 1.0, 0.0));
+ addParam(ParamWidget::create<SliderSwitch2State14>(fmTypeParamPosition, module, VCO::FM_TYPE_PARAM, 0.0, 1.0, 1.0));
addInput(Port::create<Port24>(pitchInputPosition, Port::INPUT, module, VCO::PITCH_INPUT));
addInput(Port::create<Port24>(syncInputPosition, Port::INPUT, module, VCO::SYNC_INPUT));
@@ -142,8 +138,6 @@ struct VCOWidget : ModuleWidget {
addOutput(Port::create<Port24>(sineOutputPosition, Port::OUTPUT, module, VCO::SINE_OUTPUT));
addChild(ModuleLightWidget::create<SmallLight<GreenLight>>(slowLightPosition, module, VCO::SLOW_LIGHT));
- addChild(ModuleLightWidget::create<SmallLight<GreenLight>>(fmExpLightPosition, module, VCO::FM_EXP_LIGHT));
- addChild(ModuleLightWidget::create<SmallLight<GreenLight>>(fmLinLightPosition, module, VCO::FM_LIN_LIGHT));
}
};
diff --git a/src/VCO.hpp b/src/VCO.hpp
@@ -38,8 +38,6 @@ struct VCO : Module {
enum LightsIds {
SLOW_LIGHT,
- FM_EXP_LIGHT,
- FM_LIN_LIGHT,
NUM_LIGHTS
};
diff --git a/src/XCO.cpp b/src/XCO.cpp
@@ -13,10 +13,8 @@ void XCO::onSampleRateChange() {
}
void XCO::step() {
- lights[SLOW_LIGHT].value = _slowMode = ((int)params[SLOW_PARAM].value) == 1;
- _fmLinearMode = ((int)params[FM_TYPE_PARAM].value) == 1;
- lights[FM_EXP_LIGHT].value = !_fmLinearMode;
- lights[FM_LIN_LIGHT].value = _fmLinearMode;
+ lights[SLOW_LIGHT].value = _slowMode = params[SLOW_PARAM].value > 0.5f;
+ _fmLinearMode = params[FM_TYPE_PARAM].value < 0.5f;
if (!(
outputs[MIX_OUTPUT].active ||
@@ -159,10 +157,10 @@ struct XCOWidget : ModuleWidget {
// generated by svg_widgets.rb
auto frequencyParamPosition = Vec(40.0, 45.0);
- auto fineParamPosition = Vec(65.5, 156.0);
- auto slowParamPosition = Vec(90.0, 191.7);
- auto fmParamPosition = Vec(61.0, 219.0);
- auto fmTypeParamPosition = Vec(82.0, 288.0);
+ auto fineParamPosition = Vec(47.0, 153.0);
+ auto slowParamPosition = Vec(121.0, 157.2);
+ auto fmParamPosition = Vec(55.0, 194.0);
+ auto fmTypeParamPosition = Vec(83.5, 256.5);
auto squarePwParamPosition = Vec(147.0, 60.0);
auto squarePhaseParamPosition = Vec(147.0, 148.0);
auto squareMixParamPosition = Vec(147.0, 237.0);
@@ -176,7 +174,7 @@ struct XCOWidget : ModuleWidget {
auto sinePhaseParamPosition = Vec(267.0, 148.0);
auto sineMixParamPosition = Vec(267.0, 237.0);
- auto fmInputPosition = Vec(34.0, 261.0);
+ auto fmInputPosition = Vec(40.0, 251.0);
auto squarePwInputPosition = Vec(143.0, 95.0);
auto squarePhaseInputPosition = Vec(143.0, 183.0);
auto squareMixInputPosition = Vec(143.0, 272.0);
@@ -198,16 +196,14 @@ struct XCOWidget : ModuleWidget {
auto sineOutputPosition = Vec(263.0, 318.0);
auto mixOutputPosition = Vec(103.0, 318.0);
- auto slowLightPosition = Vec(50.0, 193.0);
- auto fmExpLightPosition = Vec(73.0, 264.0);
- auto fmLinLightPosition = Vec(73.0, 277.3);
+ auto slowLightPosition = Vec(81.0, 158.5);
// end generated by svg_widgets.rb
addParam(ParamWidget::create<Knob68>(frequencyParamPosition, module, XCO::FREQUENCY_PARAM, -3.0, 6.0, 0.0));
addParam(ParamWidget::create<Knob16>(fineParamPosition, module, XCO::FINE_PARAM, -1.0, 1.0, 0.0));
addParam(ParamWidget::create<StatefulButton9>(slowParamPosition, module, XCO::SLOW_PARAM, 0.0, 1.0, 0.0));
- addParam(ParamWidget::create<Knob26>(fmParamPosition, module, XCO::FM_PARAM, 0.0, 1.0, 0.0));
- addParam(ParamWidget::create<StatefulButton9>(fmTypeParamPosition, module, XCO::FM_TYPE_PARAM, 0.0, 1.0, 0.0));
+ addParam(ParamWidget::create<Knob38>(fmParamPosition, module, XCO::FM_PARAM, 0.0, 1.0, 0.0));
+ addParam(ParamWidget::create<SliderSwitch2State14>(fmTypeParamPosition, module, XCO::FM_TYPE_PARAM, 0.0, 1.0, 1.0));
addParam(ParamWidget::create<Knob16>(squarePwParamPosition, module, XCO::SQUARE_PW_PARAM, -0.97, 0.97, 0.0));
addParam(ParamWidget::create<Knob16>(squarePhaseParamPosition, module, XCO::SQUARE_PHASE_PARAM, -1.0, 1.0, 0.0));
addParam(ParamWidget::create<Knob16>(squareMixParamPosition, module, XCO::SQUARE_MIX_PARAM, 0.0, 1.0, 1.0));
@@ -244,8 +240,6 @@ struct XCOWidget : ModuleWidget {
addOutput(Port::create<Port24>(mixOutputPosition, Port::OUTPUT, module, XCO::MIX_OUTPUT));
addChild(ModuleLightWidget::create<SmallLight<GreenLight>>(slowLightPosition, module, XCO::SLOW_LIGHT));
- addChild(ModuleLightWidget::create<SmallLight<GreenLight>>(fmExpLightPosition, module, XCO::FM_EXP_LIGHT));
- addChild(ModuleLightWidget::create<SmallLight<GreenLight>>(fmLinLightPosition, module, XCO::FM_LIN_LIGHT));
}
};
diff --git a/src/XCO.hpp b/src/XCO.hpp
@@ -61,8 +61,6 @@ struct XCO : Module {
enum LightsIds {
SLOW_LIGHT,
- FM_EXP_LIGHT,
- FM_LIN_LIGHT,
NUM_LIGHTS
};