diff --git a/rampart3-bytebeats/bytebeats.h b/rampart3-bytebeats/bytebeats.h index 14b8b1e..6f310cb 100644 --- a/rampart3-bytebeats/bytebeats.h +++ b/rampart3-bytebeats/bytebeats.h @@ -72,10 +72,13 @@ ISR(TIMER1_COMPA_vect) { switch (prog) { case 1: // poetaster the next three together - setLimits(1,16,1,16,1,16); // aMin, aMax, etc - result = t >> c ^ t & 1 | t + (t ^ t >> 13) - t * ((t >> 5 ? b : a) & t >> ( 8 - ( a >> 1 ) ) ); + setLimits(0,32,0,32,8,16); // aMin, aMax, etc + //setLimits(1,32,1,16,1,9); // aMin, aMax, etc + result = ( ~t >>7? ~t>>3:~t>>5) * ( (127 & t * ( b & t >> 9) ) < (254 & t * ( 2 + ( c & t >> a ) ) ) ); + + //result = t >> c ^ t & 1 | t + (t ^ t >> 13) - t * ( (t >> 5 ? b : a) & t >> ( 8 - ( a >> 1 ) ) ); break; - case 2: // 15, 16 and 17go together. + case 2: setLimits(1,16,1,16,1,16); result = t >> 4 ^ t & c | t + (t ^ t >> 8) - t * ((t >> 3 ? b : a) & t >> ( 5 - ( b >> 1 ) ) ); // ^ t << 1 & (a & 12 ? t >> 4 : t >> 10) @@ -88,16 +91,15 @@ ISR(TIMER1_COMPA_vect) { setLimits(1,30,1,15,1,30); result = t * t << 1 & (t & 7 ? t >> 3 : t >> c) ^ ((t >> 7 ? 2 : b) & t >> (c + a)) | t + ((t ^ t >> 13)) | a * t >> b ^ t & c ; break; - case 5: // poetaster, ascending arps n bassline with tight snare - setLimits(1,30,1,41,1,30); + case 5: // poetaster, noisy bassline , arps with tight snare ... evolves. + setLimits(1,16,1,41,1,30); result = t * ((t >> 7 ? a : c ) & t >> a ) ^ t << 1 & (t & 7 ? t >> 5 : t >> c) - b * t >> 3 ^ t & (42 - b) ; - //result = t * ((t >> 7 ? a : c ) & t >> ( a*c)) ^ t << 1 & (t & b ? t >> 5 : t >> c) - b * t >> 3 ^ t & (42 - b) ; break; - case 6: // poetaster helicopters has some arps with b in the middle, various! + case 6: // poetaster helicopters has some arps with b in the middle, various! can also humm with bells. setLimits(8,24,1,16,1,16); result = ( (t >> a) - ( t >> a & t ) + ( t >> t & b ) ) + ( t * ((t >> c) & c ) ); break; - case 7: // poetaster windy whirls, noisy swirls, ocean swells, drop off. + case 7: // poetaster windy whirls, noisy swirls, ocean swells, drop off. revisit since it funks as setLimits(1,12,1,16,1,16); result = t >> ( ( a + 1 ) & b & t >> 8 ) ^ ( t & t >> a | t >>c ); /// maybe t >> 16? break; @@ -110,8 +112,7 @@ ISR(TIMER1_COMPA_vect) { setLimits(1,8,1,10,1,10); result = (t & t >> b | t << b >> c) ^ ( t & t >> a | t << a >> b) & ( t & t >> c | t << c >> a); break; - case 10: - // poetaster counter point bleeps with a hihat or reverb stuff + case 10: // poetaster counter point bleeps with a hihat or reverb stuff NAH setLimits(1,30,1,30,1,30); result = ( t & t >> c | t + c << 4) | (t & t >> a | t + a << 3) ^ ( t & t >> b | t + b << 2 ); break; @@ -200,7 +201,7 @@ ISR(TIMER1_COMPA_vect) { case 29: // b39 crashes? or just really slow? bb39 is nice but no go setLimits(1,68,1,68,0,32); - bb19_set(a,b); + bb19_set( a,b); result = bb19() | t >> c ; break; case 30: // scratch percussion on th extreme @@ -208,18 +209,18 @@ ISR(TIMER1_COMPA_vect) { bb37_set(a,b); result = bb37() & t >> c; break; - case 31: - setLimits(1,68,1,68,0,32); + case 31: // nice + setLimits(1,68,1,68,1,32); bb34_set(a,b); - result = bb34() | t >> c; + result = bb34() * c; // or - c break; case 32: setLimits(1,68,1,68,0,32); bb32_set(a,b); result = bb32() | t >> c; break; - case 33: // not so good at first but it evolves noisy. - setLimits(1,68,1,68,0,32); + case 33: // it evolves noisy. lots of breaks to silence + setLimits(1,68,1,68,1,16); bb28_set(a,b); result = bb28() | ~t << c; break; @@ -233,25 +234,25 @@ ISR(TIMER1_COMPA_vect) { bb8_set(a,b); result = bb8() | t >> c; break; - case 36: + case 36: // pad melodies 2 & 3 part with noise crackle on c setLimits(1,68,1,68,0,32); bb35_set(a,b); - result = bb35() | t >> c; + result = bb35() - c ; break; - case 37: - setLimits(1,68,1,68,0,32); + case 37:// ?? borked + setLimits(1,16,1,16,0,16); bb33_set(a,b); - result = bb33() | t >> c; + result = bb33() * c; break; - case 38: - setLimits(1,68,1,68,0,32); + case 38: // no needs 8000 hz and takes a while + setLimits(1,16,1,16,0,32); bb23_set(a,b); - result = bb23() | t >> c; + result = bb23() - c; break; - case 39: - setLimits(1,68,1,68,0,8); + case 39: // 5824 hz is nice. quaks like a duck + setLimits(1,16,1,16,0,32); bb22_set(a,b); - result = bb22() | t >> c; + result = bb22() -c ; break; case 40: // Nightmachines https://forum.aemodular.com/post/235 setLimits(1,16,1,16,0,16); @@ -275,29 +276,43 @@ ISR(TIMER1_COMPA_vect) { result = t * (t >> 8 | t >> 9) & a & t >> 8 ^ (t & t >> c | t >> b); break; case 45: // straight rythmic, great range! // tejeez 2011-10-05 #countercomplex - setLimits(1,16,1,8,0,12); - result = (~t >> 2) * ((127 & t * (b & t >> 10)) < (245 & t * (2 + (c & t >> a)))); + setLimits(1,16,1,16,0,16); + result = ( ~t >> 2) * ((127 & t * (b & t >> 10)) < (245 & t * (2 + (c & t >> a)))); break; - case 46: // bit boring :) //https://www.blogger.com/profile/02935728280207314233 + case 46: // variation on 45 + setLimits(0,32,0,32,0,32); // aMin, aMax, etc + result = ( ~t >> 2? ~t>>3:~t>>2) * ( (127 & t * ( b & t >> 10) ) < (245 & t * ( 2 + ( c & t >> a ) ) ) ); + break; + case 47: // variation on 45 + setLimits(0,32,0,32,0,32); // aMin, aMax, etc + result = ( ~t >>7? ~t>>3:~t>>4) * ( (245 & t * ( b & t >> 10) ) < (127 & t * ( 2 + ( c & t >> a ) ) ) ); + break; + + case 48: // bit boring :) //https://www.blogger.com/profile/02935728280207314233 setLimits(0,8,0,8,0,8); result = (t<16384)?(t*a&t*2>>b):(t<32768) ?(t*a&t*2>>c):(t<49152) ?(t*(b)&t*2>>a):(t<65536) ?(t*(b)&t*2>>c):0 ; if(t>=65536)t=0; - case 47: // poetaster a synth lead with breaks, and stuff :) c 12 oclock and it starts being a wave form + case 49: // poetaster a synth lead with breaks, and stuff :) c 12 oclock and it starts being a wave form setLimits(1,16,21,63,0,16); result= (t >> 3 ? b : a) * t >> c ^ t % c | t + (t ^ t >> a) ; - case 48: // poetaster mad techno helicopter bird flock this is an evil hack. + case 50: // poetaster mad techno helicopter bird flock this is an evil hack. setLimits(1,16,1,16,0,16); - result = ( t / ( a * b ) ) & ( ( t >> a ) & t >> b ) * ( t << c) + c ^ ( t >> (t / c ) ) ;//^ ( t >> ( 16 * c ) ) ; + result = ( t / ( a * b ) ) & ( ( t >> a ) & t >> b ) * ( t << c) + a ^ ( t >> (t / b ) ) ;//^ ( t >> ( 16 * c ) ) ; break; - case 49: // funny melody! a bit like michael nyman on acid http://www.pouet.net/topic.php?which=8357&page=9#c388930", - setLimits(1,16,1,16,0,16); - result = (t*((a + ( 1 ^ t >> 10 & b ) ) * ( b + ( a & t >> 14 ) ) ) ) >> ( t >> c & a ); + case 51: // funny melody! and arps. http://www.pouet.net/topic.php?which=8357&page=9#c388930", + setLimits(1,16,1,16,0,32); + result = ( t * ( ( a + ( 1 ^ t >> 10 & b ) ) * ( b + ( a & t >> 14 ) ) ) ) | ( t >> c ); break; - case 50: // same as 49 origin. - setLimits(1,16,1,16,0,16); + case 52: // same as 49 origin. more 4/4 tech qwowloon can be metal guitar + setLimits(1,32,1,32,1,32); result = (t*((3 + ( 1 ^ t >> a & 5 ) ) * ( 5 + ( 3 & t >> b ) ) ) ) >> ( t >> c & 3 ); //result = t >> c ^ t & 1 | t + (t ^ t >> 13) - t * ((t >> 5 ? b : a) & t >> ( 8 - ( a >> 1 ) ) ); - break; + break; + case 53: // always sirens noisy based on https://www.pouet.net/topic.php?post=388938 + setLimits(1,16,1,16,1,16); // aMin, aMax, etc + result = (t>>3 & a) + (t*( 0xC4 + a >> ( t>> 3 % b) & (13 + c) )| t >> c ) + (int)cos( t * 0xC4 + b); + + // techno result = t ^ ( t >> c) - t | t >> a * t<<1 & (t&3 ? t >> b: t >> 13 ) ^ ( (t >> 3 ? 8 : 3 ) & t >> 128); } diff --git a/rampart3-bytebeats/rampart3-bytebeats.ino b/rampart3-bytebeats/rampart3-bytebeats.ino index 0d116df..888ae28 100644 --- a/rampart3-bytebeats/rampart3-bytebeats.ino +++ b/rampart3-bytebeats/rampart3-bytebeats.ino @@ -27,7 +27,7 @@ volatile int result; int d = 0; // hmm? byte prog = 1; -byte numProg = 50; +byte numProg = 52; // these ranges are provisional and in schollz equations need to be reset volatile int aMax = 99, aMin = 0, bMax = 99, bMin = 0, cMax = 99, cMin = 0; diff --git a/rampart3.fzz b/rampart3.fzz index f0f9757..73b6593 100644 Binary files a/rampart3.fzz and b/rampart3.fzz differ diff --git a/rampart3_top.fzz b/rampart3_top.fzz index e32da6f..bba9305 100644 Binary files a/rampart3_top.fzz and b/rampart3_top.fzz differ diff --git a/rampart3_top_pcb.svg b/rampart3_top_pcb.svg index 64eef6f..1985b46 100644 --- a/rampart3_top_pcb.svg +++ b/rampart3_top_pcb.svg @@ -28,13 +28,13 @@ inkscape:pagecheckerboard="0" inkscape:document-units="in" showgrid="false" - inkscape:zoom="1.5830661" - inkscape:cx="196.77006" - inkscape:cy="54.009117" - inkscape:window-width="1680" - inkscape:window-height="1050" - inkscape:window-x="1920" - inkscape:window-y="0" + inkscape:zoom="3.1661322" + inkscape:cx="175.45067" + inkscape:cy="124.12621" + inkscape:window-width="1920" + inkscape:window-height="1055" + inkscape:window-x="0" + inkscape:window-y="25" inkscape:window-maximized="1" inkscape:current-layer="layer8" inkscape:snap-global="false" /> @@ -49,88 +49,136 @@ inkscape:label="boardoutline" style="display:inline"> + partID="865907390" + id="g4578" + transform="translate(-0.56072304,-0.86266357)" + style="display:inline"> + transform="translate(9.10871)" + id="g4576"> - + id="board"> + + + + + + + + + + - - + id="g12085" /> - - + id="g6154-7-9-3" /> + transform="matrix(2.1875036,0,0,2.1875037,-439.08081,106.50335)"> + id="g6154-7-9" /> + + + + + + + + + + + + + + + + + + + + @@ -138,43 +186,43 @@ + partID="865907601" + id="g6447" + transform="translate(-0.56072304,-0.86266357)" + sodipodi:insensitive="true" + style="display:inline"> + transform="translate(235.909,162.026)" + id="g6445"> + id="g6443"> + stroke-width="0" /> + partID="865907511" + id="g6439" + transform="translate(-0.56072304,-0.86266357)" + sodipodi:insensitive="true" + style="display:inline"> + transform="translate(236.281,11.2983)" + id="g6437"> + id="g6435"> @@ -182,107 +230,93 @@ + partID="865907481" + id="g6431" + transform="translate(-0.56072304,-0.86266357)" + sodipodi:insensitive="true" + style="display:inline"> + transform="translate(20.2037,11.1289)" + id="g6429"> + id="g6427"> - - - - - - - - diff --git a/rampart3_top_pcb_cut.svg b/rampart3_top_pcb_cut.svg index 309621c..16e61e2 100644 --- a/rampart3_top_pcb_cut.svg +++ b/rampart3_top_pcb_cut.svg @@ -2,24 +2,23 @@ + id="defs10088" /> + id="board"> + + + + + + + id="layer3"> + id="rect7045-3" + style="display:inline;fill:none;stroke-width:2.80986" + d="m 11.08123,1.56326 h 228.19554 c 5.38417,0 9.71873,4.6442427 9.71873,10.4131 v 161.5448 c 0,5.76886 -4.33456,10.4131 -9.71873,10.4131 H 11.08123 c -5.3841765,0 -9.71873,-4.64424 -9.71873,-10.4131 V 11.97636 c 0,-5.7688573 4.3345535,-10.4131 9.71873,-10.4131 z" /> + + + + + + + + + + + + + + + +