commit 6b1085f7d725b1f4f4e22bf68a36fa5583351301
parent beb57f7921733530b9f59fcbbdaed27ba0d34aea
Author: Adam M <aemalone@gmail.com>
Date: Sun, 6 Jan 2019 00:57:02 -0600
add OhPeas
Diffstat:
4 files changed, 513 insertions(+), 1 deletion(-)
diff --git a/res/ComputerscareOhPeasPanel.svg b/res/ComputerscareOhPeasPanel.svg
@@ -0,0 +1,328 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ width="120"
+ height="380"
+ viewBox="0 0 31.750001 100.54167"
+ version="1.1"
+ id="svg8"
+ inkscape:version="0.92.2 5c3e80d, 2017-08-06"
+ sodipodi:docname="ComputerscareOhPeasPanel.svg"
+ style="enable-background:new">
+ <defs
+ id="defs2">
+ <inkscape:perspective
+ sodipodi:type="inkscape:persp3d"
+ inkscape:vp_x="0 : 50.270835 : 1"
+ inkscape:vp_y="0 : 1000 : 0"
+ inkscape:vp_z="23.812501 : 50.270835 : 1"
+ inkscape:persp3d-origin="11.906251 : 33.51389 : 1"
+ id="perspective1881" />
+ </defs>
+ <sodipodi:namedview
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="11.313709"
+ inkscape:cx="40.446136"
+ inkscape:cy="378.35206"
+ inkscape:document-units="mm"
+ inkscape:current-layer="text1573"
+ showgrid="false"
+ units="px"
+ inkscape:snap-bbox="true"
+ inkscape:snap-page="true"
+ inkscape:bbox-nodes="true"
+ inkscape:snap-bbox-edge-midpoints="true"
+ inkscape:window-width="1440"
+ inkscape:window-height="856"
+ inkscape:window-x="0"
+ inkscape:window-y="0"
+ inkscape:window-maximized="0" />
+ <metadata
+ id="metadata5">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ inkscape:label="Layer 1"
+ inkscape:groupmode="layer"
+ id="layer1"
+ transform="translate(0,-196.45832)"
+ style="display:none">
+ <path
+ style="opacity:1;vector-effect:none;fill:#f0f0f0;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.48607069;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;paint-order:normal"
+ d="M 0,196.45831 H 23.8125 V 296.99999 H 0 Z"
+ id="rect817"
+ inkscape:connector-curvature="0" />
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-weight:normal;font-size:10.58333302px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.26458332"
+ x="8.2147436"
+ y="295.57718"
+ id="text1490"
+ transform="rotate(1.4468834)"><tspan
+ sodipodi:role="line"
+ id="tspan1488"
+ x="8.2147436"
+ y="295.57718"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:2.82222223px;font-family:sans-serif;-inkscape-font-specification:'sans-serif, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start;stroke-width:0.26458332">computerscare</tspan></text>
+ <text
+ transform="rotate(-5.9989835)"
+ id="text1494"
+ y="288.0314"
+ x="-28.710276"
+ style="font-style:normal;font-weight:normal;font-size:10.58333302px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.26458332"
+ xml:space="preserve"><tspan
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:2.82222223px;font-family:sans-serif;-inkscape-font-specification:'sans-serif, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start;stroke-width:0.26458332"
+ y="288.0314"
+ x="-28.710276"
+ id="tspan1492"
+ sodipodi:role="line">trg</tspan></text>
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-weight:normal;font-size:10.58333302px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.26458332"
+ x="20.711658"
+ y="288.87244"
+ id="text1498"
+ transform="rotate(1.9714728)"><tspan
+ sodipodi:role="line"
+ id="tspan1496"
+ x="20.711658"
+ y="288.87244"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:2.82222223px;font-family:sans-serif;-inkscape-font-specification:'sans-serif, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start;stroke-width:0.26458332">in</tspan></text>
+ <text
+ transform="rotate(0.49746114)"
+ id="text1521"
+ y="289.16214"
+ x="20.314623"
+ style="font-style:normal;font-weight:normal;font-size:10.58333302px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.26458332"
+ xml:space="preserve"><tspan
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:3.17499995px;font-family:sans-serif;-inkscape-font-specification:'sans-serif, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start;stroke-width:0.26458332"
+ y="289.16214"
+ x="20.314623"
+ id="tspan1519"
+ sodipodi:role="line">clr</tspan></text>
+ <text
+ transform="matrix(1.0139335,-0.02825079,0.06854811,0.98434808,0,0)"
+ id="text1645"
+ y="204.61243"
+ x="-10.296249"
+ style="font-style:normal;font-weight:normal;font-size:10.74719143px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.26867977"
+ xml:space="preserve"><tspan
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:5.01535606px;font-family:sans-serif;-inkscape-font-specification:'sans-serif, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start;stroke-width:0.26867977"
+ y="204.61243"
+ x="-10.296249"
+ id="tspan1643"
+ sodipodi:role="line">debug</tspan></text>
+ </g>
+ <g
+ inkscape:groupmode="layer"
+ id="layer3"
+ inkscape:label="bg" />
+ <g
+ style="display:inline"
+ transform="translate(0,-196.45832)"
+ id="g1669"
+ inkscape:groupmode="layer"
+ inkscape:label="Layer 1 copy">
+ <path
+ inkscape:connector-curvature="0"
+ id="path1647"
+ d="M 0,196.45831 H 31.75 V 296.99999 H 0 Z"
+ style="opacity:1;vector-effect:none;fill:#f9f9f9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.56126612;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;paint-order:normal" />
+ <g
+ aria-label="computerscare"
+ transform="matrix(1.1784292,0.02712605,-0.02976505,1.0739475,4.2404674,-22.739031)"
+ style="font-style:normal;font-weight:normal;font-size:10.58333302px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.26458332"
+ id="text1651">
+ <path
+ d="m 9.7635177,294.7977 -0.022491,0.23707 q -0.1028223,-0.0489 -0.2099211,-0.0673 -0.1055806,-0.0199 -0.2168506,-0.009 -0.2488775,0.0238 -0.4014201,0.19401 -0.1524199,0.16888 -0.1792271,0.45145 -0.026804,0.28254 0.095932,0.42654 0.1228661,0.14262 0.371738,0.11887 0.1112317,-0.0106 0.2224055,-0.0498 0.1127112,-0.0408 0.2267849,-0.11044 l -0.022229,0.23431 q -0.111772,0.0599 -0.2295122,0.0956 -0.1163563,0.0357 -0.2456588,0.048 -0.3517468,0.0335 -0.5381239,-0.16582 -0.1863704,-0.19938 -0.1510635,-0.57153 0.035829,-0.37767 0.2649098,-0.61397 0.2304697,-0.23642 0.5947391,-0.27118 0.1181718,-0.0112 0.2283935,0.003 0.110394,0.0127 0.2114822,0.0509 z"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:2.82222223px;font-family:sans-serif;-inkscape-font-specification:'sans-serif, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start;stroke-width:0.26458332"
+ id="path1701"
+ inkscape:connector-curvature="0" />
+ <path
+ d="m 11.197314,295.00648 q -0.205711,0.0223 -0.339672,0.22398 -0.133845,0.20011 -0.158859,0.52726 -0.02501,0.32715 0.07869,0.50317 0.105218,0.17425 0.312311,0.15186 0.204306,-0.0221 0.338283,-0.22384 0.133968,-0.20175 0.15886,-0.52727 0.02477,-0.32389 -0.08032,-0.49977 -0.104967,-0.17751 -0.309282,-0.15539 z m 0.01941,-0.25391 q 0.333568,-0.0361 0.504572,0.19722 0.170997,0.23332 0.136646,0.68254 -0.03423,0.4476 -0.244185,0.72373 -0.209831,0.27449 -0.543405,0.31058 -0.33497,0.0363 -0.505964,-0.19707 -0.169483,-0.23508 -0.135254,-0.68269 0.03435,-0.44922 0.242794,-0.72358 0.209832,-0.27449 0.544796,-0.31073 z"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:2.82222223px;font-family:sans-serif;-inkscape-font-specification:'sans-serif, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start;stroke-width:0.28758317"
+ id="path1703"
+ inkscape:connector-curvature="0" />
+ <path
+ d="m 13.645113,295.02098 c 0.07212,-0.16189 0.158709,-0.28115 0.259781,-0.35779 0.101068,-0.0767 0.220289,-0.11452 0.357661,-0.11378 0.184923,10e-4 0.32797,0.0826 0.429142,0.24413 0.101165,0.16033 0.152468,0.38843 0.15391,0.6843 l 0.0065,1.3275 -0.293235,-0.002 c -0.03516,-0.22899 -0.03645,-0.67288 -0.0064,-1.31574 -10e-4,-0.21077 -0.0319,-0.36739 -0.09263,-0.46989 -0.06074,-0.10241 -0.15292,-0.15409 -0.276549,-0.15483 -0.151108,-9e-4 -0.270213,0.0605 -0.357313,0.18438 -0.0871,0.12385 -0.130127,0.29313 -0.12908,0.50783 l 0.006,1.24308 -0.293236,-0.002 -0.0064,-1.31574 c -10e-4,-0.21208 -0.03192,-0.36871 -0.09263,-0.46988 -0.06074,-0.10252 -0.153976,-0.15409 -0.279718,-0.15485 -0.148996,-9.1e-4 -0.267039,0.0613 -0.354134,0.18636 -0.0871,0.12385 -0.13013,0.29247 -0.129091,0.50587 l 0.006,1.24305 -0.293229,-0.002 -0.01076,-2.19941 0.293234,0.002 0.0017,0.34168 c 0.06591,-0.13442 0.145214,-0.23344 0.237888,-0.29703 0.09267,-0.0635 0.202947,-0.0949 0.330808,-0.0941 0.128919,7.7e-4 0.238485,0.0419 0.328699,0.12367 0.09127,0.0817 0.158948,0.19987 0.203026,0.35467 z"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:2.82222223px;font-family:sans-serif;-inkscape-font-specification:'sans-serif, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start;stroke-width:0.33873674"
+ id="path1705"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="ccccccccccccccccccccccccccccc" />
+ <path
+ d="m 15.24757,295.82836 0.0037,0.96694 -0.254966,-10e-4 -0.0097,-2.51668 0.254967,10e-4 0.0011,0.27673 q 0.07931,-0.16242 0.200283,-0.24001 0.12235,-0.0791 0.291869,-0.0784 0.281152,10e-4 0.457205,0.26579 0.177431,0.26453 0.179097,0.69429 0.0017,0.42976 -0.17372,0.69267 -0.174009,0.26291 -0.455161,0.26162 -0.169519,-7.7e-4 -0.29248,-0.0794 -0.121592,-0.0803 -0.202158,-0.24347 z m 0.860284,-0.63255 q -0.0013,-0.33046 -0.117775,-0.5182 -0.115122,-0.18934 -0.31634,-0.19027 -0.201216,-9.2e-4 -0.316254,0.18738 -0.113664,0.18667 -0.112383,0.51715 0.0013,0.33045 0.116404,0.5198 0.116494,0.18773 0.317711,0.18866 0.201217,9.1e-4 0.314882,-0.18576 0.115036,-0.1883 0.113755,-0.51876 z"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:2.82222223px;font-family:sans-serif;-inkscape-font-specification:'sans-serif, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start;stroke-width:0.28758317"
+ id="path1707"
+ inkscape:connector-curvature="0" />
+ <path
+ d="m 16.380983,295.55261 -0.002,-1.0125 0.251818,-0.0693 0.002,1.00205 q 4.63e-4,0.23744 0.08555,0.33366 0.08508,0.0947 0.254785,0.0483 0.203917,-0.0556 0.321337,-0.22994 0.11879,-0.17448 0.118312,-0.4194 l -0.0019,-0.94826 0.251818,-0.0693 0.0033,1.67257 -0.251817,0.0693 -5.02e-4,-0.25686 q -0.0914,0.17741 -0.213054,0.28545 -0.120291,0.10604 -0.280415,0.15002 -0.264134,0.0725 -0.40134,-0.0694 -0.137208,-0.14174 -0.137881,-0.48669 z"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:2.82222223px;font-family:sans-serif;-inkscape-font-specification:'sans-serif, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start;stroke-width:0.27455816"
+ id="path1709"
+ inkscape:connector-curvature="0" />
+ <path
+ d="m 18.446541,294.06616 8.5e-4,0.47187 0.522302,0.001 3.82e-4,0.21219 -0.522302,-10e-4 0.0016,0.90217 q 3.66e-4,0.20328 0.05146,0.26126 0.05248,0.0579 0.210955,0.0582 l 0.260462,5e-4 4.11e-4,0.22852 -0.260464,-5.1e-4 q -0.293536,-5.7e-4 -0.405375,-0.11801 -0.11184,-0.11892 -0.112401,-0.43053 l -0.0016,-0.90216 -0.186044,-3.6e-4 -3.82e-4,-0.21219 0.186044,3.6e-4 -8.5e-4,-0.47186 z"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:2.82222223px;font-family:sans-serif;-inkscape-font-specification:'sans-serif, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start;stroke-width:0.27455816"
+ id="path1711"
+ inkscape:connector-curvature="0" />
+ <path
+ d="m 20.41037,294.85162 0.0012,0.17016 -1.155879,0.39368 q 0.01887,0.35362 0.159513,0.49524 0.14201,0.13926 0.392039,0.0541 0.144823,-0.0499 0.27975,-0.14457 0.136293,-0.0957 0.269515,-0.23959 l 0.0023,0.329 q -0.134719,0.12553 -0.276529,0.21553 -0.141809,0.0899 -0.288001,0.1397 -0.366164,0.12477 -0.582691,-0.0971 -0.215161,-0.22239 -0.218606,-0.72532 -0.0035,-0.51992 0.196567,-0.89319 0.201477,-0.37561 0.545782,-0.49286 0.308783,-0.10471 0.489656,0.10999 0.182228,0.21277 0.185464,0.68542 z m -0.252095,-0.0163 q -0.0047,-0.28454 -0.119256,-0.41611 -0.113201,-0.13204 -0.299015,-0.0687 -0.21041,0.0713 -0.336345,0.27941 -0.124572,0.2073 -0.141655,0.51253 z"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:2.82222223px;font-family:sans-serif;-inkscape-font-specification:'sans-serif, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start;stroke-width:0.30895016"
+ id="path1713"
+ inkscape:connector-curvature="0" />
+ <path
+ d="m 21.78975,294.42999 q -0.04491,-0.033 -0.09775,-0.0525 -0.05149,-0.0208 -0.113784,-0.0299 -0.220898,-0.0325 -0.334107,0.10057 -0.111851,0.13182 -0.10117,0.4123 l 0.03317,0.871 -0.26196,-0.0385 -0.06296,-1.65342 0.26196,0.0385 0.0098,0.25686 q 0.07641,-0.13849 0.20533,-0.19144 0.128873,-0.0546 0.317206,-0.0267 0.02691,0.004 0.05964,0.013 0.03266,0.008 0.07263,0.0213 z"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:2.82222223px;font-family:sans-serif;-inkscape-font-specification:'sans-serif, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start;stroke-width:0.27681944"
+ id="path1715"
+ inkscape:connector-curvature="0" />
+ <path
+ d="m 23.289808,294.73315 -0.03289,0.31613 q -0.09894,-0.0944 -0.209845,-0.1542 -0.110904,-0.0599 -0.233787,-0.085 -0.187054,-0.0383 -0.289205,0.0189 -0.100789,0.0574 -0.116665,0.20996 -0.01209,0.11634 0.04781,0.19718 0.0601,0.079 0.255932,0.18031 l 0.08337,0.043 q 0.259669,0.13103 0.357077,0.29373 0.09896,0.16122 0.07306,0.41015 -0.02948,0.28341 -0.215991,0.41416 -0.18514,0.13102 -0.480057,0.0708 -0.122881,-0.025 -0.253286,-0.0851 -0.12923,-0.0578 -0.270064,-0.1517 l 0.03591,-0.34519 q 0.129254,0.12472 0.259316,0.2014 0.130258,0.0749 0.262698,0.10184 0.177498,0.0363 0.281384,-0.0241 0.104077,-0.0623 0.119389,-0.20939 0.01419,-0.13627 -0.04789,-0.22317 -0.06071,-0.0866 -0.287191,-0.20152 l -0.08453,-0.0451 q -0.226673,-0.11301 -0.316453,-0.26874 -0.08959,-0.15744 -0.06502,-0.39365 0.02986,-0.28705 0.199042,-0.41206 0.169174,-0.12502 0.450438,-0.0676 0.139267,0.0284 0.25931,0.0809 0.120043,0.0523 0.218144,0.12801 z"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:2.82222223px;font-family:sans-serif;-inkscape-font-specification:'sans-serif, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start;stroke-width:0.30559522"
+ id="path1717"
+ inkscape:connector-curvature="0" />
+ <path
+ d="m 24.728637,294.63587 0.02003,0.25439 q -0.11212,-0.0543 -0.223044,-0.0758 -0.109669,-0.0231 -0.219523,-0.0136 -0.245798,0.0215 -0.368466,0.20193 -0.122783,0.17899 -0.09891,0.48219 0.02388,0.30318 0.173098,0.45992 0.149107,0.15526 0.394904,0.1338 0.109854,-0.009 0.21452,-0.05 0.10592,-0.042 0.208015,-0.11499 l 0.0198,0.25142 q -0.101541,0.0625 -0.21342,0.099 -0.110505,0.0365 -0.23821,0.0476 -0.347414,0.0303 -0.570536,-0.18697 -0.223122,-0.21728 -0.254568,-0.61661 -0.03191,-0.40525 0.155777,-0.65543 0.189064,-0.2503 0.548836,-0.28171 0.11672,-0.0106 0.230044,0.007 0.113206,0.0154 0.221649,0.0582 z"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:2.82222223px;font-family:sans-serif;-inkscape-font-specification:'sans-serif, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start;stroke-width:0.27455816"
+ id="path1719"
+ inkscape:connector-curvature="0" />
+ <path
+ d="m 25.923898,295.72819 q -0.313376,-0.0147 -0.424286,0.0737 -0.110904,0.0885 -0.08694,0.31483 0.01909,0.18048 0.120337,0.29149 0.102439,0.10918 0.258427,0.11644 0.215004,0.0101 0.323244,-0.18287 0.109446,-0.19466 0.07437,-0.52613 l -0.008,-0.0756 z m 0.500923,-0.11588 0.124535,1.17682 -0.258568,-0.012 -0.03314,-0.31309 q -0.06866,0.18373 -0.191198,0.26783 -0.122746,0.0822 -0.313859,0.0734 -0.241704,-0.0112 -0.403751,-0.19472 -0.160837,-0.18526 -0.192408,-0.4836 -0.03685,-0.34808 0.12152,-0.51661 0.15976,-0.16848 0.512481,-0.15205 l 0.362557,0.0168 -0.0035,-0.0331 q -0.02474,-0.23389 -0.156239,-0.36644 -0.130283,-0.13438 -0.34248,-0.14429 -0.134907,-0.007 -0.258299,0.0302 -0.123396,0.0365 -0.232472,0.11561 L 25.12686,294.764 q 0.134341,-0.0651 0.264132,-0.0939 0.129599,-0.0307 0.256068,-0.0248 0.341478,0.0158 0.534668,0.2558 0.193186,0.23989 0.243078,0.71135 z"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:2.82222223px;font-family:sans-serif;-inkscape-font-specification:'sans-serif, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start;stroke-width:0.30811211"
+ id="path1721"
+ inkscape:connector-curvature="0" />
+ <path
+ d="m 27.867464,295.23752 q -0.04501,-0.0348 -0.09791,-0.0551 -0.05154,-0.0217 -0.113856,-0.0311 -0.22092,-0.033 -0.333546,0.10961 -0.111277,0.14106 -0.09949,0.43935 l 0.0366,0.92631 -0.261988,-0.0389 -0.06953,-1.7584 0.261987,0.0389 0.01079,0.27317 q 0.07582,-0.14793 0.204473,-0.20525 0.1286,-0.059 0.316946,-0.0309 0.02691,0.004 0.05965,0.013 0.03268,0.008 0.07268,0.0222 z"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:2.82222223px;font-family:sans-serif;-inkscape-font-specification:'sans-serif, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start;stroke-width:0.28544712"
+ id="path1723"
+ inkscape:connector-curvature="0" />
+ <path
+ d="m 29.388168,295.32193 2.4e-4,0.13354 -1.097055,0.10286 c 0.01137,0.18797 -0.0048,0.22637 0.08906,0.32547 0.09481,0.0982 0.226274,0.14734 0.394403,0.14767 0.09738,1.9e-4 0.191533,-0.0124 0.282442,-0.038 0.09183,-0.0256 0.322103,-0.11197 0.412047,-0.16327 l 4.65e-4,0.25819 c -0.09088,0.0414 -0.323466,0.12092 -0.418976,0.14248 -0.0955,0.0216 -0.192416,0.0323 -0.290721,0.0321 -0.246221,-4.8e-4 -0.441592,-0.0781 -0.586112,-0.23261 -0.1436,-0.1546 -0.215638,-0.36347 -0.216112,-0.6266 -4.9e-4,-0.27203 0.06711,-0.48756 0.202795,-0.64656 0.136603,-0.15999 0.320665,-0.23975 0.552187,-0.23931 0.207635,4.1e-4 0.37176,0.073 0.492375,0.21759 0.121531,0.14368 0.18252,0.33917 0.182965,0.58648 z m -0.253716,-0.0806 c -0.0022,-0.14937 -0.0414,-0.26864 -0.117783,-0.35782 -0.07549,-0.0892 -0.17572,-0.13389 -0.300668,-0.13413 -0.141486,-2.8e-4 -0.254872,0.0426 -0.340159,0.12843 -0.08437,0.0859 -0.01997,0.19189 -0.03256,0.34816 z"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:2.82222223px;font-family:sans-serif;-inkscape-font-specification:'sans-serif, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start;stroke-width:0.27455816"
+ id="path1725"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="ccccscccsscscscccccsccc" />
+ </g>
+ <g
+ id="g9547"
+ transform="matrix(0.24212987,0,0,0.24730558,-2.0206165,290.96621)">
+ <g
+ style="display:inline"
+ inkscape:label="Layer 1"
+ id="layer4" />
+ <path
+ id="rect5872"
+ d="m 11.987289,9.3234482 h 7.991524 v 3.9957608 h -7.991524 z"
+ style="opacity:1;fill:#0f0f00;fill-opacity:1;stroke:#000000;stroke-width:0;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ inkscape:connector-curvature="0" />
+ <path
+ id="rect5874"
+ d="m 14.667374,10.662096 h 3.995763 v 1.331921 h -3.995763 z"
+ style="opacity:1;fill:#ffffff;fill-opacity:0.98571424;stroke:#000000;stroke-width:0;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ inkscape:connector-curvature="0" />
+ <path
+ id="rect5878"
+ d="m -29.323654,9.3234482 h 7.989551 v 3.9957608 h -7.989551 z"
+ style="opacity:1;fill:#0c0c00;fill-opacity:1;stroke:#000000;stroke-width:0;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ transform="scale(-1,1)"
+ inkscape:connector-curvature="0" />
+ <path
+ id="rect5880"
+ d="m -26.64423,10.662096 h 3.994777 v 1.331921 h -3.994777 z"
+ style="opacity:1;fill:#ffffff;fill-opacity:0.98571424;stroke:#000000;stroke-width:0;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ transform="scale(-1,1)"
+ inkscape:connector-curvature="0" />
+ <path
+ id="rect5882"
+ d="m 19.995058,14.667374 h 1.331921 v 3.995762 h -1.331921 z"
+ style="opacity:1;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:0;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ inkscape:connector-curvature="0" />
+ <path
+ id="rect5884"
+ d="m 21.326979,17.331215 h 1.315677 v 1.33192 h -1.315677 z"
+ style="opacity:1;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:0;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ inkscape:connector-curvature="0" />
+ <path
+ id="rect5886"
+ d="m 11.954803,20.011301 h 2.696328 v 2.663842 h -2.696328 z"
+ style="opacity:1;fill:#000200;fill-opacity:1;stroke:#000000;stroke-width:0;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ inkscape:connector-curvature="0" />
+ <path
+ id="rect5888"
+ d="m 27.970341,20.011301 h 2.696327 v 2.663842 h -2.696327 z"
+ style="opacity:1;fill:#000200;fill-opacity:1;stroke:#000000;stroke-width:0;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ inkscape:connector-curvature="0" />
+ <path
+ id="rect5890"
+ d="m 14.651131,20.011301 h 13.351695 v 1.33192 H 14.651131 Z"
+ style="opacity:1;fill:#000200;fill-opacity:1;stroke:#000000;stroke-width:0;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ inkscape:connector-curvature="0" />
+ </g>
+ <g
+ aria-label="oh, peas!"
+ transform="matrix(1.4453517,0,0,0.90381656,-0.25328296,0)"
+ style="font-style:normal;font-weight:normal;font-size:4.82299232px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.12057481"
+ id="text1573">
+ <path
+ d="m 1.8888254,219.13495 q -0.3286893,-0.0267 -0.5196845,0.23095 -0.1909952,0.25531 -0.1909952,0.72866 0,0.47335 0.1887743,0.76186 0.1909952,0.28634 0.5219054,0.31323 0.3264684,0.0265 0.5174636,-0.23113 0.1909952,-0.25765 0.1909952,-0.72865 0,-0.46864 -0.1909952,-0.75734 -0.1909952,-0.29105 -0.5174636,-0.31758 z m 0,-0.36738 q 0.5330097,0.0433 0.8372695,0.43541 0.3042597,0.3921 0.3042597,1.04207 0,0.64762 -0.3042597,0.99263 -0.3042598,0.34266 -0.8372695,0.29935 -0.5352306,-0.0435 -0.8394903,-0.43559 -0.30203889,-0.39427 -0.30203889,-1.04189 0,-0.64997 0.30203889,-0.99281 0.3042597,-0.34266 0.8394903,-0.29917 z"
+ style="stroke-width:0.11709147"
+ id="path1575"
+ inkscape:connector-curvature="0" />
+ <path
+ d="m 5.9968026,220.19238 0.064679,1.48287 -0.5563483,-0.72915 0.045516,-0.77279 c 0.014743,-0.25032 -0.087267,-0.44019 -0.1982802,-0.57168 -0.1110125,-0.13149 -0.2670107,-0.20469 -0.4679946,-0.2196 -0.241506,-0.0179 -0.4256294,0.0425 -0.5523703,0.18131 -0.1267409,0.13881 -0.1791916,0.33695 -0.1573522,0.59442 l 0.1264442,1.4907 -0.4497848,-0.0334 -0.3108167,-3.66434 0.4497848,0.0334 0.1218493,1.43653 c 0.093526,-0.15063 0.2090865,-0.25984 0.3466828,-0.32763 0.1392171,-0.0677 0.3036447,-0.0945 0.4932829,-0.0804 0.3128207,0.0232 0.5574537,0.13496 0.7338989,0.33529 0.1763099,0.19873 0.2799127,0.48022 0.3108082,0.84446 z"
+ style="stroke-width:0.12212589"
+ id="path1577"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccsccsscccccccccc" />
+ <path
+ d="m 6.8057705,221.26125 0.7484453,0.0381 v 0.40505 l -0.5817301,0.724 -0.45758,-0.0233 0.2908648,-0.73881 z"
+ style="stroke-width:0.14797968"
+ id="path1579"
+ inkscape:connector-curvature="0" />
+ <path
+ d="m 9.2015306,220.55177 v 1.39885 l -0.5653924,-0.0334 v -3.64079 l 0.5653924,0.0334 v 0.40034 q 0.1772577,-0.22502 0.4462013,-0.32218 0.2719999,-0.0993 0.6479101,-0.0771 0.623459,0.0368 1.011594,0.44124 0.391189,0.4046 0.391189,1.02631 0,0.62171 -0.391189,0.98013 -0.388135,0.35859 -1.011594,0.32178 -0.3759102,-0.0222 -0.6479101,-0.1513 -0.2689436,-0.13128 -0.4462013,-0.37724 z m 1.9131644,-0.80783 q 0,-0.47806 -0.256718,-0.76404 -0.253662,-0.28816 -0.699864,-0.3145 -0.4462005,-0.0264 -0.7029201,0.23167 -0.2536623,0.25584 -0.2536623,0.7339 0,0.47806 0.2536623,0.76622 0.2567196,0.28598 0.7029201,0.31233 0.446202,0.0263 0.699864,-0.2295 0.256718,-0.25802 0.256718,-0.73608 z"
+ style="stroke-width:0.13735752"
+ id="path1581"
+ inkscape:connector-curvature="0" />
+ <path
+ d="m 14.503389,220.86656 v 0.21194 l -1.878859,0.18931 q 0.02665,0.44477 0.253179,0.65744 0.22875,0.21009 0.63517,0.16914 0.235413,-0.0238 0.455278,-0.10707 0.222088,-0.0836 0.439734,-0.228 v 0.40977 q -0.219867,0.12102 -0.450837,0.19615 -0.230971,0.075 -0.468605,0.099 -0.595194,0.0599 -0.943871,-0.27227 -0.346456,-0.33246 -0.346456,-0.95888 0,-0.64762 0.328689,-1.0599 0.33091,-0.41485 0.89057,-0.47125 0.501918,-0.0506 0.792852,0.26395 0.293156,0.31193 0.293156,0.90068 z m -0.408642,-0.086 q -0.0044,-0.35515 -0.188773,-0.54853 -0.182112,-0.19359 -0.484151,-0.16316 -0.342015,0.0344 -0.548556,0.26015 -0.20432,0.22548 -0.235412,0.6007 z"
+ style="stroke-width:0.11709147"
+ id="path1583"
+ inkscape:connector-curvature="0" />
+ <path
+ d="m 16.304517,220.78632 q -0.495255,0.0499 -0.68625,0.18921 -0.190995,0.13937 -0.190995,0.42903 0,0.23079 0.142136,0.35305 0.144357,0.11968 0.390875,0.0948 0.339793,-0.0342 0.544113,-0.30916 0.206541,-0.2775 0.206541,-0.7014 v -0.0966 z m 0.815062,-0.2611 v 1.50483 l -0.408642,0.0412 v -0.40034 q -0.139915,0.2543 -0.348676,0.39073 -0.208762,0.1341 -0.510802,0.16448 -0.38199,0.0385 -0.60852,-0.16476 -0.224307,-0.20583 -0.224307,-0.58734 0,-0.44509 0.27983,-0.69937 0.282051,-0.2545 0.83949,-0.31067 l 0.572985,-0.0577 v -0.0424 q 0,-0.29908 -0.186553,-0.44278 -0.184332,-0.14627 -0.519685,-0.11248 -0.213203,0.0215 -0.415303,0.0961 -0.202099,0.0746 -0.388652,0.20166 v -0.40035 q 0.224307,-0.11443 0.43529,-0.18045 0.210984,-0.0684 0.410863,-0.0885 0.539671,-0.0544 0.806176,0.21551 0.266506,0.26987 0.266506,0.87274 z"
+ style="stroke-width:0.11709147"
+ id="path1585"
+ inkscape:connector-curvature="0" />
+ <path
+ d="m 19.549214,219.22538 v 0.40977 q -0.173228,-0.0768 -0.359781,-0.10506 -0.186553,-0.0283 -0.386432,-0.008 -0.304261,0.0307 -0.457501,0.14497 -0.151019,0.11409 -0.151019,0.31195 0,0.15071 0.108823,0.22688 0.108823,0.0738 0.437512,0.11841 l 0.139915,0.0189 q 0.435291,0.055 0.617403,0.21803 0.184332,0.1604 0.184332,0.48303 0,0.36738 -0.275388,0.60944 -0.273168,0.24183 -0.752876,0.29016 -0.199879,0.0202 -0.417524,-3e-4 -0.215425,-0.0183 -0.45528,-0.0766 v -0.44745 q 0.22653,0.10198 0.446396,0.14342 0.219866,0.0391 0.435291,0.0174 0.288714,-0.0291 0.444175,-0.14835 0.155462,-0.1216 0.155462,-0.3124 0,-0.17662 -0.113265,-0.2594 -0.111044,-0.083 -0.490814,-0.13188 l -0.142135,-0.021 q -0.379769,-0.0465 -0.548556,-0.20377 -0.168787,-0.15962 -0.168787,-0.46576 0,-0.37209 0.248739,-0.59968 0.248738,-0.2276 0.706237,-0.2737 0.226529,-0.0228 0.426408,-0.008 0.199879,0.0151 0.368665,0.0688 z"
+ style="stroke-width:0.11709147"
+ id="path1587"
+ inkscape:connector-curvature="0" />
+ <path
+ d="m 20.593025,221.08189 0.450838,-0.0455 v 0.59816 l -0.450838,0.0455 z m 0,-2.91782 0.450838,-0.0455 v 1.54251 l -0.04442,0.84521 -0.359781,0.0363 -0.04663,-0.83604 z"
+ style="stroke-width:0.11709147"
+ id="path1589"
+ inkscape:connector-curvature="0" />
+ </g>
+ </g>
+</svg>
diff --git a/src/Computerscare.cpp b/src/Computerscare.cpp
@@ -12,4 +12,5 @@ void init(Plugin *p) {
p->addModel(modelComputerscarePatchSequencer);
p->addModel(modelComputerscareLaundrySoup);
p->addModel(modelComputerscareILoveCookies);
+ p->addModel(modelComputerscareOhPeas);
}
diff --git a/src/Computerscare.hpp b/src/Computerscare.hpp
@@ -31,7 +31,7 @@ extern Model *modelComputerscareDebug;
extern Model *modelComputerscarePatchSequencer;
extern Model *modelComputerscareLaundrySoup;
extern Model *modelComputerscareILoveCookies;
-
+extern Model *modelComputerscareOhPeas;
struct ComputerscareResetButton : SVGSwitch,MomentarySwitch {
ComputerscareResetButton() {
diff --git a/src/ComputerscareOhPeas.cpp b/src/ComputerscareOhPeas.cpp
@@ -0,0 +1,183 @@
+#include "Computerscare.hpp"
+#include "dsp/digital.hpp"
+#include "dsp/filter.hpp"
+
+#include <string>
+#include <sstream>
+#include <iomanip>
+
+#define NUM_LINES 16
+
+const int numChannels= 4;
+
+struct ComputerscareOhPeas : Module {
+ enum ParamIds {
+ ROOT,
+ SCALE_TRIM,
+ SCALE_VAL = SCALE_TRIM+numChannels,
+ OFFSET_TRIM = SCALE_VAL+numChannels,
+ OFFSET_VAL = OFFSET_TRIM+numChannels,
+ NUM_PARAMS=OFFSET_VAL+numChannels
+
+ };
+ enum InputIds {
+ CHANNEL_INPUT,
+ SCALE_CV=CHANNEL_INPUT+numChannels,
+ OFFSET_CV=SCALE_CV+numChannels,
+ NUM_INPUTS=OFFSET_CV+numChannels
+ };
+ enum OutputIds {
+ SCALED_OUTPUT,
+ QUANTIZED_OUTPUT=SCALED_OUTPUT+numChannels,
+ NUM_OUTPUTS=QUANTIZED_OUTPUT+numChannels
+ };
+ enum LightIds {
+ BLINK_LIGHT,
+ NUM_LIGHTS
+ };
+
+ std::string defaultStrValue = "0.000000\n0.000000\n0.000000\n0.000000\n0.000000\n0.000000\n0.000000\n0.000000\n0.000000\n0.000000\n0.000000\n0.000000\n0.000000\n0.000000\n0.000000\n0.000000\n";
+ std::string strValue = "0.000000\n0.000000\n0.000000\n0.000000\n0.000000\n0.000000\n0.000000\n0.000000\n0.000000\n0.000000\n0.000000\n0.000000\n0.000000\n0.000000\n0.000000\n0.000000\n";
+
+ float logLines[NUM_LINES] = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};
+
+ int lineCounter = 0;
+
+ SchmittTrigger clockTrigger;
+ SchmittTrigger clearTrigger;
+ SchmittTrigger manualClockTrigger;
+ SchmittTrigger manualClearTrigger;
+
+ ComputerscareOhPeas() : Module(NUM_PARAMS, NUM_INPUTS, NUM_OUTPUTS, NUM_LIGHTS) {}
+ void step() override;
+
+ // For more advanced Module features, read Rack's engine.hpp header file
+ // - toJson, fromJson: serialization of internal data
+ // - onSampleRateChange: event triggered by a change of sample rate
+ // - onReset, onRandomize, onCreate, onDelete: implements special behavior when user clicks these from the context menu
+};
+
+
+void ComputerscareOhPeas::step() {
+ float A,B,C,D,a,b,c,d;
+ for(int i = 0; i < numChannels; i++) {
+ a = params[SCALE_VAL+i].value;
+ b = params[SCALE_TRIM+i].value;
+ c = params[OFFSET_TRIM+i].value;
+ d = params[OFFSET_VAL+i].value;
+ A = inputs[CHANNEL_INPUT+i].value;
+ B = inputs[SCALE_CV].value;
+ C = inputs[OFFSET_CV].value;
+
+ D = (a + b*B)*A + (c*C + d);
+ outputs[SCALED_OUTPUT + i].value = D;
+ outputs[QUANTIZED_OUTPUT + i].value = D;
+ }
+}
+
+////////////////////////////////////
+struct StringDisplayWidget3 : TransparentWidget {
+
+ std::string *value;
+ std::shared_ptr<Font> font;
+
+ StringDisplayWidget3() {
+ font = Font::load(assetPlugin(plugin, "res/Oswald-Regular.ttf"));
+ };
+
+ void draw(NVGcontext *vg) override
+ {
+ // Background
+ NVGcolor backgroundColor = nvgRGB(0x10, 0x00, 0x10);
+ NVGcolor StrokeColor = nvgRGB(0xC0, 0xC7, 0xDE);
+ nvgBeginPath(vg);
+ nvgRoundedRect(vg, -1.0, -1.0, box.size.x+2, box.size.y+2, 4.0);
+ nvgFillColor(vg, StrokeColor);
+ nvgFill(vg);
+ nvgBeginPath(vg);
+ nvgRoundedRect(vg, 0.0, 0.0, box.size.x, box.size.y, 4.0);
+ nvgFillColor(vg, backgroundColor);
+ nvgFill(vg);
+
+ // text
+ nvgFontSize(vg, 15);
+ nvgFontFaceId(vg, font->handle);
+ nvgTextLetterSpacing(vg, 2.5);
+
+ std::stringstream to_display;
+ to_display << std::setw(8) << *value;
+
+ Vec textPos = Vec(6.0f, 12.0f);
+ NVGcolor textColor = nvgRGB(0xC0, 0xE7, 0xDE);
+ nvgFillColor(vg, textColor);
+ nvgTextBox(vg, textPos.x, textPos.y,80,to_display.str().c_str(), NULL);
+
+ }
+};
+
+
+struct ComputerscareOhPeasWidget : ModuleWidget {
+
+ ComputerscareOhPeasWidget(ComputerscareOhPeas *module) : ModuleWidget(module) {
+ setPanel(SVG::load(assetPlugin(plugin, "res/ComputerscareOhPeasPanel.svg")));
+/*
+ addInput(Port::create<InPort>(Vec(3, 330), Port::INPUT, module, ComputerscareOhPeas::TRG_INPUT));
+ addInput(Port::create<InPort>(Vec(33, 330), Port::INPUT, module, ComputerscareOhPeas::VAL_INPUT));
+ addInput(Port::create<InPort>(Vec(63, 330), Port::INPUT, module, ComputerscareOhPeas::CLR_INPUT));
+
+ addParam(ParamWidget::create<LEDButton>(Vec(6, 290), module, ComputerscareOhPeas::MANUAL_TRIGGER, 0.0, 1.0, 0.0));
+ addParam(ParamWidget::create<LEDButton>(Vec(66, 290), module, ComputerscareOhPeas::MANUAL_CLEAR_TRIGGER, 0.0, 1.0, 0.0));
+
+ StringDisplayWidget3 *display = new StringDisplayWidget3();
+ display->box.pos = Vec(1,24);
+ display->box.size = Vec(88, 250);
+ display->value = &module->strValue;
+ addChild(display);
+*/
+
+ double x = 0;
+ double y = 7;
+ double dy = 18.4;
+ double dx = 9.9;
+ double xx;
+ double yy;
+ for(int i = 0; i < numChannels; i++) {
+ xx = x + dx*i;
+ //if(i %2) {
+ addInput(Port::create<InPort>(mm2px(Vec(xx, y)), Port::INPUT, module, ComputerscareOhPeas::CHANNEL_INPUT+i));
+ /*}
+ else {
+ addInput(Port::create<PointingUpPentagonPort>(mm2px(Vec(xx, y)), Port::INPUT, module, ComputerscareOhPeas::CHANNEL_INPUT+i));
+ }*/
+
+ ParamWidget* scaleTrimKnob = ParamWidget::create<SmoothKnob>(mm2px(Vec(xx,y+20)), module, ComputerscareOhPeas::SCALE_TRIM +i, -1.f, 1.f, 0.0f);
+ addParam(scaleTrimKnob);
+
+ addInput(Port::create<InPort>(mm2px(Vec(xx, y+30)), Port::INPUT, module, ComputerscareOhPeas::SCALE_CV+i));
+
+ ParamWidget* scaleKnob = ParamWidget::create<SmoothKnob>(mm2px(Vec(xx,y+40)), module, ComputerscareOhPeas::SCALE_VAL +i, -2.f, 2.f, 0.0f);
+ addParam(scaleKnob);
+
+ ParamWidget* offsetTrimKnob = ParamWidget::create<SmoothKnob>(mm2px(Vec(xx,y+60)), module, ComputerscareOhPeas::OFFSET_TRIM +i, -1.f, 1.f, 0.0f);
+ addParam(offsetTrimKnob);
+
+ addInput(Port::create<InPort>(mm2px(Vec(xx, y+70)), Port::INPUT, module, ComputerscareOhPeas::OFFSET_CV+i));
+
+
+ ParamWidget* offsetKnob = ParamWidget::create<SmoothKnob>(mm2px(Vec(xx,y+80)), module, ComputerscareOhPeas::OFFSET_VAL +i, -5.f, 5.f, 0.0f);
+ addParam(offsetKnob);
+
+ addOutput(Port::create<OutPort>(mm2px(Vec(xx , y+93)), Port::OUTPUT, module, ComputerscareOhPeas::SCALED_OUTPUT + i));
+
+ addOutput(Port::create<OutPort>(mm2px(Vec(xx , y+105)), Port::OUTPUT, module, ComputerscareOhPeas::QUANTIZED_OUTPUT + i));
+
+ }
+}
+};
+
+
+// Specify the Module and ModuleWidget subclass, human-readable
+// author name for categorization per plugin, module slug (should never
+// change), human-readable module name, and any number of tags
+// (found in `include/tags.hpp`) separated by commas.
+Model *modelComputerscareOhPeas = Model::create<ComputerscareOhPeas, ComputerscareOhPeasWidget>("computerscare", "computerscare-ohpeas", "Oh Peas!", UTILITY_TAG);