stupid PIC (it’s not my fault)

May 2nd, 2005

got the interface working. took two extra days because of the PIC’s poor design… for some reason they deemed it necessary to interrupt the succession of analog pins with a non-fuctioning pin right there in the middle.

but anyways it works now, so i can focus on making a perf board and practicing for the NIME performance. i probably won’t make the perf board by the performance at Tonic, but it’ll be necessary for the Spring Show when Decay Tour will be subjected to the grubby collective hands of the public.

knob drama

May 1st, 2005

for the NIME dress rehearsal, Decay Tour was running at about half functionality. this was due to two troublesome knobs (damn you knobs!)

knob #5 wasn’t responding at all. so i troubleshot.
diagnosis: knob #5 is fully functional on other pins. so the trouble lies on the pic chip.
treatment: i don’t know yet.

knob #7 was getting about 1/3 of the range it should have been. i plugged it in to ADCin 0 today and the actual potentiometer starting smoking and reeking of burning. then my breadboard got super hot.
diagnosis: bunk pot
treatment: better pot

PIC CODE- does it work?

April 30th, 2005

we shall see:

DEFINE OSC 20
define HSER_RCSTA 90h ‘enable the receive register
define HSER_TXSTA 20h ‘enable the transmit register
define HSER_BAUD 31250 ‘ set the baud rate
DEFINE ADC_BITS 10
DEFINE ADC_CLOCK 20
DEFINE ADC_SAMPLEUS 50
INPUT portd.1
INPUT portd.0
INPUT portc.3
INPUT portc.2

buttonVar VAR WORD
buttonVar1 VAR WORD
buttonVar2 VAR WORD
buttonVar3 VAR WORD

ADCvar VAR WORD
ADCvarFIX VAR WORD
ADCvar1 VAR WORD
ADCvar1FIX VAR WORD
ADCvar2 VAR WORD
ADCvar2FIX VAR WORD
ADCvar3 VAR WORD
ADCvar3FIX VAR WORD
ADCvar4 VAR WORD
ADCvar4FIX VAR WORD
ADCvar5 VAR WORD
ADCvar5FIX VAR WORD
ADCvar6 VAR WORD
ADCvar6FIX VAR WORD
ADCvar7 VAR WORD
ADCvar7FIX VAR WORD

TRISA = %11111111
ADCON1 = %10000010

Pause 500

main:
ADCIN 7, ADCvar7
ADCIN 6, ADCvar6
ADCIN 5, ADCvar5
ADCIN 4, ADCvar4
ADCIN 3, ADCvar3
ADCIN 2, ADCvar2
ADCIN 1, ADCvar1
ADCIN 0, ADCvar

buttonVar = portd.1
buttonVar1 = portd.0
buttonVar2 = portc.3
buttonVar3 = portc.2

ADCvarFIX = ADCvar / 8
ADCvar1FIX = ADCvar1 / 8
ADCvar2FIX = ADCvar2 / 8
ADCvar3FIX = ADCvar3 / 8
ADCvar4FIX = ADCvar4 / 8
ADCvar5FIX = ADCvar5 / 8
ADCvar6FIX = ADCvar6 / 8
ADCvar7FIX = ADCvar7 / 8

hserout [$90, 60, ADCvarFix]
hserout [$90, 61, ADCVAR1FIX]
hserout [$90, 62, ADCvar2FIX]
hserout [$90, 63, ADCvar3FIX]
hserout [$90, 64, ADCvar4FIX]
hserout [$90, 65, ADCvar5FIX]
hserout [$90, 66, ADCvar6FIX]
hserout [$90, 67, ADCvar7FIX]

hserout [$90, 68, buttonVar]
hserout [$90, 69, buttonVar1]
hserout [$90, 70, buttonVar2]
hserout [$90, 71, buttonVar3]

Pause 100

goto main

duct tape

April 29th, 2005

i’ve spent the last two days banging my head against the wall trying to figure out how to mount all the potentiometers in my box. i covered myself in liquid nails and gorilla glue and aluminum dust. then i complained to meghan and she said “dude, just use duct tape.” and i said “holy shit! you’re brilliant!”

and now i’m happy again.

NIME performance plan

April 28th, 2005

NIME performance outline:

estimated length: 6 minutes

i’ll stand slightly to one side of the stage with my interface standing up on a stool or
table. my screen will be right next to me.

the video will start black. i’ll begin by playing one video layer without looping at a
low volume and gradually loudening it as i fade in the imagery. i’ll let the video play by
itself for a minute or two to give the audience a feeling of the piece, and then i’ll start
looping and manipulating that layer, and shortly thereafter i’ll begin fading in the second
layer of video.

the structure in terms of tempo and musicality will be a palindrome of sorts. it’ll start
soft and dark, build to a peak, and then fade back to darkness and no sound.

decay tour website

April 27th, 2005

just purchased the domain for my thesis website. not much there yet, but check back sometime soon.
http://www.decaytour.com

animation final

April 24th, 2005

so the La Jetee inspired animation never happened, mostly due to lackluster documentation of berlin. i still like the idea, and i hope to do it another time. but for the final, mel and i decided to work together once again, and we scanned the valentine’s day cards that my parents sent to me this year for the characters. check it out: farm fresh

build035- almost complete

April 23rd, 2005

max v2;
#N vpatcher 63 45 1243 818;
#P origin 1 0;
#P window setfont “Sans Serif” 9.;
#P newex 829 143 27 196617 t f b;
#P newex 313 132 27 196617 t f b;
#P comment 831 67 41 196617 LENGTH;
#P newex 313 69 44 196617 ctlin 26;
#P number 313 112 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P newex 313 89 52 196617 * 78.125;
#P newex 830 104 52 196617 * 78.125;
#P newex 831 84 44 196617 ctlin 18;
#P number 829 124 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P comment 623 283 89 196617 LAYER 2 DIMMER;
#P comment 342 290 89 196617 LAYER 1 DIMMER;
#P comment 83 34 74 196617 LAYER 1 RATE;
#P comment 198 33 120 196617 LAYER 1 LOOP SCRUBBER;
#P comment 397 41 92 196617 LAYER 1 GO/STOP;
#P toggle 398 56 15 0;
#P comment 963 39 92 196617 LAYER 2 GO/STOP;
#P toggle 964 57 15 0;
#P comment 606 189 84 196617 LAYER 2 ON/OFF;
#P toggle 678 208 15 0;
#P toggle 155 197 15 0;
#P message 31 539 132 196617 read packard_jitTest1.mov;
#P comment 38 524 100 196617 duration 139139;
#P message 623 359 71 196617 brightness \$1;
#P newex 603 617 53 196617 jit.brcosa;
#P message 326 363 71 196617 brightness \$1;
#P newex 468 616 53 196617 jit.brcosa;
#P newex 735 297 44 196617 ctlin 19;
#P newex 765 54 44 196617 ctlin 17;
#P newex 601 51 44 196617 ctlin 16;
#P newex 447 305 44 196617 ctlin 27;
#P newex 246 48 44 196617 ctlin 25;
#P newex 82 49 44 196617 ctlin 24;
#P comment 210 316 74 196617 PIC CHIP INPUT;
#P newex 219 451 35 196617 s pot6;
#P newex 179 451 35 196617 s pot5;
#P newex 141 451 35 196617 s pot4;
#P newex 100 451 35 196617 s pot3;
#P newex 62 451 35 196617 s pot2;
#P newex 25 451 35 196617 s pot1;
#P number 217 428 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P number 178 428 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P number 140 428 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P number 102 428 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P number 63 428 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P number 25 428 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P newex 75 382 45 196617 pack 0 0;
#P newex 75 404 123 196617 route 60 61 62 63 64 65;
#P window setfont “Sans Serif” 10.;
#P number 120 358 35 10 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P number 59 358 35 10 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P newex 106 333 40 196618 notein;
#P window setfont “Sans Serif” 9.;
#P newex 7 28 45 196617 loadbang;
#P newex 699 322 39 196617 / 127.;
#P newex 699 297 35 196617 r pot6;
#P flonum 699 341 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P message 699 358 38 196617 vol \$1;
#P newex 411 327 39 196617 / 127.;
#P newex 411 305 35 196617 r pot3;
#P flonum 411 346 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P message 411 363 38 196617 vol \$1;
#P comment 97 505 69 196617 CLIP LIBRARY;
#P newex 240 178 35 196617 r read;
#P newex 821 182 35 196617 r read;
#P newex 22 605 35 196617 s read;
#P message 32 577 125 196617 read church_jitTest1.mov;
#P newex 240 197 44 196617 r metro;
#P newex 821 202 44 196617 r metro;
#P newex 7 90 44 196617 s metro;
#P message 964 78 43 196617 rate \$1;
#P newex 26 706 42 196617 r lookit;
#P newex 525 663 42 196617 s lookit;
#P newex 209 69 93 196617 * 3513.385742;
#P newex 209 48 35 196617 r pot2;
#P flonum 209 90 94 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P message 209 149 84 196617 looppoints \$1 \$2;
#P newex 209 129 45 196617 pack 0 0;
#P newex 220 110 42 196617 + 2000;
#P newex 728 75 93 196617 * 3513.385742;
#P newex 728 54 35 196617 r pot5;
#P flonum 728 96 94 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P message 728 155 84 196617 looppoints \$1 \$2;
#P newex 728 135 45 196617 pack 0 0;
#P newex 736 115 42 196617 + 2000;
#P newex 525 642 63 196617 jit.op @op +;
#P message 887 201 72 196617 getmovie_dim;
#P message 887 183 43 196617 gettime;
#P newex 955 259 31 196617 print;
#P newex 647 93 27 196617 – 2.;
#P newex 647 72 45 196617 / 31.75;
#P newex 647 51 35 196617 r pot4;
#P message 647 134 43 196617 rate \$1;
#P flonum 647 114 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P message 886 218 60 196617 getduration;
#P newex 861 238 104 196617 jit.qt.movie 720 480;
#P message 398 76 43 196617 rate \$1;
#P message 299 197 72 196617 getmovie_dim;
#P message 299 178 43 196617 gettime;
#P toggle 70 687 16 0;
#P newex 70 667 35 196617 sel 27;
#P newex 70 647 40 196617 key;
#P message 70 706 69 196617 fullscreen \$1;
#P newex 26 726 205 196617 jit.window decay @fsmenubar 0 @floating 1;
#P newex 380 255 31 196617 print;
#P newex 127 88 27 196617 – 2.;
#P newex 127 69 45 196617 / 31.75;
#P newex 127 49 35 196617 r pot1;
#P message 127 126 43 196617 rate \$1;
#P flonum 127 108 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P message 299 216 60 196617 getduration;
#P toggle 7 50 15 0;
#P newex 7 68 45 196617 metro 2;
#P newex 287 235 104 196617 jit.qt.movie 720 480;
#P comment 37 562 100 196617 duration 446200;
#P comment 156 634 79 196617 VIEWER WINDOW;
#P user panel 16 496 165 129;
#X brgb 73 191 91;
#X frgb 0 0 0;
#X border 1;
#X rounded 0;
#X shadow 0;
#X done;
#P user panel 13 629 226 124;
#X brgb 73 191 91;
#X frgb 0 0 0;
#X border 1;
#X rounded 0;
#X shadow 0;
#X done;
#P user panel 15 311 274 179;
#X brgb 134 159 213;
#X frgb 0 0 0;
#X border 1;
#X rounded 0;
#X shadow 0;
#X done;
#P comment 263 628 124 196617 TO DO \; use openGL video plane \;;
#P comment 81 177 84 196617 LAYER 1 ON/OFF;
#P user panel 71 173 113 44;
#X brgb 191 73 109;
#X frgb 0 0 0;
#X border 1;
#X rounded 0;
#X shadow 0;
#X done;
#P user panel 592 184 113 44;
#X brgb 191 73 109;
#X frgb 0 0 0;
#X border 1;
#X rounded 0;
#X shadow 0;
#X done;
#P comment 600 35 74 196617 LAYER 2 RATE;
#P user panel 592 30 114 131;
#X brgb 191 73 109;
#X frgb 0 0 0;
#X border 1;
#X rounded 0;
#X shadow 0;
#X done;
#P user panel 952 31 112 72;
#X brgb 191 73 109;
#X frgb 0 0 0;
#X border 1;
#X rounded 0;
#X shadow 0;
#X done;
#P user panel 390 31 112 72;
#X brgb 191 73 109;
#X frgb 0 0 0;
#X border 1;
#X rounded 0;
#X shadow 0;
#X done;
#P comment 718 37 122 196617 LAYER 2 LOOP SCRUBBER;
#P user panel 713 30 180 146;
#X brgb 191 73 109;
#X frgb 0 0 0;
#X border 1;
#X rounded 0;
#X shadow 0;
#X done;
#P user panel 77 29 109 118;
#X brgb 191 73 109;
#X frgb 0 0 0;
#X border 1;
#X rounded 0;
#X shadow 0;
#X done;
#P user panel 310 286 200 97;
#X brgb 191 73 109;
#X frgb 0 0 0;
#X border 1;
#X rounded 0;
#X shadow 0;
#X done;
#P user panel 597 281 200 97;
#X brgb 191 73 109;
#X frgb 0 0 0;
#X border 1;
#X rounded 0;
#X shadow 0;
#X done;
#P comment 314 52 41 196617 LENGTH;
#P user panel 193 28 186 147;
#X brgb 191 73 109;
#X frgb 0 0 0;
#X border 1;
#X rounded 0;
#X shadow 0;
#X done;
#P connect 80 0 22 0;
#P connect 22 0 21 0;
#P connect 21 0 64 0;
#P fasten 67 0 68 0 37 597 27 597;
#P fasten 110 0 68 0 36 559 27 559;
#P connect 84 0 86 0;
#P connect 86 0 92 0;
#P connect 62 0 30 0;
#P connect 31 0 30 0;
#P connect 81 0 82 0;
#P connect 87 0 93 0;
#P connect 84 1 87 0;
#P connect 32 0 33 0;
#P connect 33 0 34 0;
#P connect 34 0 31 0;
#P connect 82 0 85 0;
#P connect 85 0 84 0;
#P connect 88 0 94 0;
#P connect 84 2 88 0;
#P connect 83 0 85 1;
#P connect 81 1 83 0;
#P connect 26 0 27 0;
#P connect 99 0 27 0;
#P connect 27 0 28 0;
#P connect 28 0 24 0;
#P connect 24 0 25 0;
#P connect 84 3 89 0;
#P connect 89 0 95 0;
#P connect 84 4 90 0;
#P connect 90 0 96 0;
#P connect 59 0 60 0;
#P connect 100 0 60 0;
#P connect 60 0 58 0;
#P connect 129 1 56 0;
#P connect 58 0 56 0;
#P connect 56 0 57 0;
#P connect 84 5 91 0;
#P connect 91 0 97 0;
#P connect 129 1 55 0;
#P connect 58 0 55 0;
#P connect 55 0 56 1;
#P connect 129 0 55 1;
#P fasten 70 0 20 0 292 195;
#P fasten 66 0 20 0 245 231 292 231;
#P connect 25 0 20 0;
#P connect 23 0 20 0;
#P connect 35 0 20 0;
#P connect 36 0 20 0;
#P connect 37 0 20 0;
#P connect 57 0 20 0;
#P connect 72 0 20 0;
#P connect 127 0 125 0;
#P connect 125 0 126 0;
#P connect 126 0 129 0;
#P connect 111 0 106 0;
#P connect 73 0 106 0;
#P connect 20 1 29 0;
#P connect 116 0 37 0;
#P connect 74 0 75 0;
#P connect 101 0 75 0;
#P connect 75 0 73 0;
#P connect 73 0 72 0;
#P connect 111 0 72 0;
#P connect 106 0 105 0;
#P connect 20 0 105 0;
#P connect 105 0 48 0;
#P connect 48 0 61 0;
#P connect 107 0 48 1;
#P connect 108 0 107 0;
#P connect 38 0 107 0;
#P connect 112 0 108 0;
#P connect 77 0 108 0;
#P connect 42 0 43 0;
#P connect 102 0 43 0;
#P connect 43 0 44 0;
#P connect 44 0 40 0;
#P connect 40 0 41 0;
#P connect 78 0 79 0;
#P connect 104 0 79 0;
#P connect 79 0 77 0;
#P connect 77 0 76 0;
#P connect 112 0 76 0;
#P connect 53 0 54 0;
#P connect 103 0 54 0;
#P connect 54 0 52 0;
#P connect 130 1 50 0;
#P connect 52 0 50 0;
#P connect 50 0 51 0;
#P connect 130 1 49 0;
#P connect 52 0 49 0;
#P connect 49 0 50 1;
#P connect 130 0 49 1;
#P connect 124 0 122 0;
#P connect 122 0 130 0;
#P connect 123 0 124 0;
#P connect 76 0 38 0;
#P fasten 69 0 38 0 866 198;
#P fasten 65 0 38 0 826 232 866 232;
#P connect 63 0 38 0;
#P connect 51 0 38 0;
#P connect 47 0 38 0;
#P connect 46 0 38 0;
#P connect 39 0 38 0;
#P connect 41 0 38 0;
#P connect 38 1 45 0;
#P connect 114 0 63 0;
#P pop;

simplifyin’ my shit

April 21st, 2005

in 1997 one of my favorite musicians, richie hawtin, started a new record label called “m_nus”. on the website it said that the label was inspired “by the powers of subtraction.” i remember having a good laugh at how stupid and pretentious this sounded to me. but now when i’m trying to create something myself i keep coming back to this concept and putting it to use.

in terms of my interface, i’m trying to simplify it as much as i possibly can. the original plan called for a total of 18 inputs. that’s a little too much. i can’t think of many instruments that have that many controls… not to mention the fact that i’ll have to write code and program the microcontroller for each additional input. 18 is way too much for an interface i’m hoping people can step up to and figure out fairly quickly.

so i’m doing away with the preprogrammed looppoints.
and i’m doing away with buttons for different rates of speed.

each layer will have a button for:
layer ON/OFF
layer STOP/GO

i also might add another potentiometer to each of the layers that will control the length of the loops.

so as of now it’s looking like for each layer i’ll have:
POT1: variable rate (-2. to 2.)
POT2: loop scrubber
POT3: volume/brightness
POT4: loop length
DIGI1: layer ON/OFF
DIGI2: layer GO/STOP

multiply this by 2 and you’ve got a total of 12
10 if i don’t add the pots for loop length.

thesis URL

April 14th, 2005

the URL for my thesis site:
http://www.synthetictom.com/decaytour/

Final Animation

April 13th, 2005

Out of all the styles we’ve covered, I found myself enjoying the stop-motion stuff the most. This probably has a lot to do with the fact that I can’t draw. Whatever the reason though, I’m going to return to stop-motion for my final.

As always, it took me a while to come up with an inspired idea. One thought that kept returning to me though was “La Jetee”, the Chris Marker film that “12 Monkeys” is based on. It’s maybe 20-30 minutes long and made completely with still frames (except for about 5 seconds of moving image.) Although this film isn’t technically animation, I love the fact that such a rich experience can be created without a lot of movement within the frame.

So with this inspiration in mind, and a weekend trip to Berlin coming up, I think I’ve got the foundation of my animation assignment. I’m going to document my trip to Berlin with both still images and video footage, and then I’m going to assemble the footage I’ve taken and attempt to create a fictional (perhaps post-apocalyptic) narrative out of it. That’s about all I can give in terms of specifics at this point in time.

One shot I’m thinking I’d like to get is people walking back and forth through the frame in an airport or train station. Afterwards I could take stills of all the people and layer them over one another gradually. I’m probably not explaining it well, but what I’m imagining will look nice I’m hoping. Other ideas will hit me as I shoot.

spring is here

April 11th, 2005

this morning, as i walked down the sunny side of 9th street listening to the chirping of birds, my shoulder was shat upon.

NIME prototype PIC code

April 7th, 2005

6 knobs. zero buttons.

DEFINE OSC 20
define HSER_RCSTA 90h ‘ enable the receive register
define HSER_TXSTA 20h ‘ enable the transmit register
define HSER_BAUD 31250 ‘ set the baud rate
DEFINE ADC_BITS 10
DEFINE ADC_CLOCK 20
DEFINE ADC_SAMPLEUS 50
ADCvar VAR WORD
ADCvarFIX VAR WORD
ADCvar1 VAR WORD
ADCvar1FIX VAR WORD
ADCvar2 VAR WORD
ADCvar2FIX VAR WORD
ADCvar3 VAR WORD
ADCvar3FIX VAR WORD
ADCvar4 VAR WORD
ADCvar4FIX VAR WORD
ADCvar5 VAR WORD
ADCvar5FIX VAR WORD
ADCvar6 VAR WORD
ADCvar6FIX VAR WORD
TRISA = %11111111
ADCON1 = %10000010

Pause 500

main:
ADCIN 5, ADCvar5
ADCIN 4, ADCvar4
ADCIN 3, ADCvar3
ADCIN 2, ADCvar2
ADCIN 1, ADCvar1
ADCIN 0, ADCvar

ADCvarFIX = ADCvar / 8
ADCvar1FIX = ADCvar1 / 8
ADCvar2FIX = ADCvar2 / 8
ADCvar3FIX = ADCvar3 / 8
ADCvar4FIX = ADCvar4 / 8
ADCvar5FIX = ADCvar5 / 8

hserout [$90, 60, ADCvarFix]
hserout [$90, 61, ADCVAR1FIX]
hserout [$90, 62, ADCvar2FIX]
hserout [$90, 63, ADCvar3FIX]
hserout [$90, 64, ADCvar4FIX]
hserout [$90, 65, ADCvar5FIX]

Pause 100

goto main

early pic code

April 6th, 2005

got one knob working so far

DEFINE OSC 20
define HSER_RCSTA 90h ‘ enable the receive register
define HSER_TXSTA 20h ‘ enable the transmit register
define HSER_BAUD 31250 ‘ set the baud rate
DEFINE ADC_BITS 10
DEFINE ADC_CLOCK 20
DEFINE ADC_SAMPLEUS 50
VELVar VAR WORD ‘velocity value for noteout
ADCvar VAR WORD
ADCvarFIX VAR WORD
ADCvar2 VAR WORD
NOTEvar VAR WORD
TRISA = %11111111
ADCON1 = %10000010

Pause 500

output portb.7

main:
‘ADCIN 2, ADCvar2
ADCIN 0, ADCvar
ADCvarFIX = ADCvar / 8

hserout [$90, ADCvarFIX, VELVar]
Pause 100

‘ noteoff channel 1, middle A
‘hserout [$80, $45, $000]
goto main

uhhh

April 5th, 2005

got all my potentiometers soldered yesterday. also assembled a breadboard with a MIDI configuration. today after my classes i’ll resurrect my old PIC code and try to adapt it to a pot analog readout. the math is going to make my ears bleed, but the mission is to try and convert the pot readouts to a 127 note spectrum of midi data for a nice smooth knob-twisting experience. i’m not sure how this will work with 6 such spectrums, but i’ll find out.

progress

April 3rd, 2005

i don’t want to disassemble the breadboard containing my physical computing final from last year, because chances are good that i’ll never be able to reassemble it. so tomorrow i’ll go to the computer store and buy a fresh new breadboard. i’ll set it up for MIDI as fast as i can, and then i’ll start plugging things into it. this afternoon i sifted through my box of junk and found some good knobs. i hot-glued one of the knobs to a potentiometer and it seems to be working pretty well… i’m not sure about the permanence of it though, so in the future i might need to use something a little stronger than hot glue to attach the knob to the pot.

still need to think about what it will all look like put together. right now i’m just focusing on getting the components built and working, but i need to keep the overall structure in mind too.

in terms of buttons i’m not sure what i’m going to use yet. i really wanted to use the car radio component, but it’s ridiculously rusty and i’m not sure i’ll be able to salvage any of the buttons. the boombox has some good buttons that i might be able to use. and also, the boombox’s radio tuner is really cool…. it works with a knob and a thread running through a a system of little tiny pullies. remarkably it still works, and i’m gonna try to use that for one of my analog inputs.

the patch way more simple than i thought it would be, and a lot of fun to play with. so that’s a good sign. one thing i need to figure out: how to stop the layers from compositing over one another and just show one or the other.

that’s it for now.

update

April 3rd, 2005

i’ve been working on my patch for the last week or so, and i’m pretty happy with the way it’s looking. the scary part, however, is the impending doom of all the physical computing required to complete this project.

i think i’m going to drop down from 3 or 4 video/sound layers to 2. why tom? hey, i’ve got my reasons. more than two composited layers of video become basically illegible, and while this oftentimes looks pretty cool aesthetically, it kinda defeats my idea of creating a documentary experience. but two layers are a good balance of image dynamics while avoiding a cacophony of image/sound.

also, the sound is much more interesting when there are only two sources, and it will also provide the user with a more controllable interface.

as of now it’s looking like i’ll have 18 inputs… 6 analog and 12 digital. it breaks down a little something like this:

each video layer will be controllable by
an analog rate knob (-2.0 to +2.0)
an analog volume knob (0.0 to 1.0)
an analog loop scrubber (x + 2000)
digital button (rate 1 – start)
digital button (rate 0 – stop)
4 digital buttons with preset looppoints

multiply this number by 2 and you’ve got yourself 18 inputs to program into the PIC chip. in the words of my friend scott… “holy balls!”

another backup – build015

April 3rd, 2005

max v2;
#N vpatcher 98 44 1278 817;
#P origin 1 0;
#P window setfont “Sans Serif” 9.;
#P newex 19 35 45 196617 loadbang;
#P newex 875 124 39 196617 / 127.;
#P newex 875 104 44 196617 ctlin 18;
#P flonum 875 143 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P message 875 160 38 196617 vol \$1;
#P newex 310 130 39 196617 / 127.;
#P newex 310 110 44 196617 ctlin 26;
#P flonum 310 149 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P message 310 166 38 196617 vol \$1;
#P comment 153 545 69 196617 CLIP LIBRARY;
#P newex 240 178 35 196617 r read;
#P newex 813 181 35 196617 r read;
#P newex 76 607 35 196617 s read;
#P message 86 579 125 196617 read church_jitTest1.mov;
#P newex 240 197 44 196617 r metro;
#P newex 813 201 44 196617 r metro;
#P newex 9 110 44 196617 s metro;
#P newex 1046 35 44 196617 ctlin 23;
#P newex 1000 35 44 196617 ctlin 22;
#P newex 954 35 44 196617 ctlin 21;
#P newex 907 35 44 196617 ctlin 20;
#P newex 861 35 44 196617 ctlin 19;
#P newex 815 35 44 196617 ctlin 18;
#P newex 769 35 44 196617 ctlin 17;
#P newex 723 35 44 196617 ctlin 16;
#P newex 677 35 44 196617 ctlin 15;
#P message 861 55 17 196617 0.;
#P message 677 55 22 196617 -2.;
#P message 723 55 22 196617 -1.;
#P message 769 55 29 196617 -0.5;
#P message 816 55 35 196617 -0.25;
#P message 907 55 30 196617 0.25;
#P message 954 55 23 196617 0.5;
#P message 1046 55 17 196617 2.;
#P message 1000 55 17 196617 1.;
#P message 861 79 43 196617 rate \$1;
#P newex 80 708 42 196617 r lookit;
#P newex 525 366 42 196617 s lookit;
#P newex 152 99 93 196617 * 3513.385742;
#P newex 152 78 44 196617 ctlin 25;
#P flonum 152 120 94 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P message 152 179 84 196617 looppoints \$1 \$2;
#P newex 152 159 45 196617 pack 0 0;
#P newex 188 139 42 196617 + 2000;
#P newex 725 103 93 196617 * 3513.385742;
#P newex 725 82 44 196617 ctlin 17;
#P flonum 725 124 94 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P message 725 183 84 196617 looppoints \$1 \$2;
#P newex 725 163 45 196617 pack 0 0;
#P newex 760 143 42 196617 + 2000;
#P newex 525 345 63 196617 jit.op @op +;
#P message 990 219 72 196617 getmovie_dim;
#P message 990 201 43 196617 gettime;
#P message 959 179 132 196617 looppoints 400000 444000;
#P message 960 155 135 196617 looppoints 130000 145000;
#P message 960 133 132 196617 looppoints 200000 230000;
#P message 960 96 102 196617 looppoints 0 446200;
#P message 960 114 120 196617 looppoints 40000 50000;
#P newex 955 259 31 196617 print;
#P newex 675 124 27 196617 – 2.;
#P newex 675 103 45 196617 / 31.75;
#P newex 675 82 44 196617 ctlin 16;
#P message 675 165 43 196617 rate \$1;
#P flonum 675 145 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P message 989 236 60 196617 getduration;
#P newex 861 238 104 196617 jit.qt.movie 720 480;
#P newex 472 35 44 196617 ctlin 23;
#P newex 426 35 44 196617 ctlin 22;
#P newex 380 35 44 196617 ctlin 21;
#P newex 333 35 44 196617 ctlin 20;
#P newex 287 35 44 196617 ctlin 19;
#P newex 241 35 44 196617 ctlin 18;
#P newex 195 35 44 196617 ctlin 17;
#P newex 149 35 44 196617 ctlin 16;
#P newex 103 35 44 196617 ctlin 15;
#P message 287 55 17 196617 0.;
#P message 103 55 22 196617 -2.;
#P message 149 55 22 196617 -1.;
#P message 195 55 29 196617 -0.5;
#P message 242 55 35 196617 -0.25;
#P message 333 55 30 196617 0.25;
#P message 380 55 23 196617 0.5;
#P message 472 55 17 196617 2.;
#P message 426 55 17 196617 1.;
#P message 287 79 43 196617 rate \$1;
#P message 419 216 72 196617 getmovie_dim;
#P message 419 197 43 196617 gettime;
#P message 417 175 132 196617 looppoints 400000 444000;
#P message 418 151 135 196617 looppoints 130000 145000;
#P message 418 129 132 196617 looppoints 200000 230000;
#P message 418 92 102 196617 looppoints 0 446200;
#P message 418 110 120 196617 looppoints 40000 50000;
#P toggle 124 689 16 0;
#P newex 124 669 35 196617 sel 27;
#P newex 124 649 40 196617 key;
#P message 124 708 69 196617 fullscreen \$1;
#P newex 80 728 205 196617 jit.window decay @fsmenubar 0 @floating 1;
#P newex 380 255 31 196617 print;
#P newex 103 117 27 196617 – 2.;
#P newex 103 98 45 196617 / 31.75;
#P newex 103 78 44 196617 ctlin 24;
#P message 103 155 43 196617 rate \$1;
#P flonum 103 137 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P message 419 235 60 196617 getduration;
#P toggle 9 70 15 0;
#P newex 9 88 45 196617 metro 2;
#P newex 287 235 104 196617 jit.qt.movie 720 480;
#P comment 91 564 100 196617 duration 446200;
#P comment 210 636 79 196617 VIEWER WINDOW;
#P user panel 68 542 157 85;
#X brgb 73 191 91;
#X frgb 0 0 0;
#X border 1;
#X rounded 0;
#X shadow 0;
#X done;
#P user panel 67 631 226 124;
#X brgb 73 191 91;
#X frgb 0 0 0;
#X border 1;
#X rounded 0;
#X shadow 0;
#X done;
#P connect 110 0 6 0;
#P connect 6 0 5 0;
#P connect 5 0 94 0;
#P fasten 97 0 98 0 91 599 81 599;
#P connect 74 0 14 0;
#P connect 15 0 14 0;
#P connect 110 0 97 0;
#P connect 36 0 34 0;
#P connect 10 0 11 0;
#P connect 11 0 12 0;
#P connect 12 0 8 0;
#P connect 8 0 9 0;
#P connect 16 0 17 0;
#P connect 17 0 18 0;
#P connect 18 0 15 0;
#P connect 37 0 33 0;
#P connect 71 0 72 0;
#P connect 72 0 70 0;
#P connect 70 0 68 0;
#P connect 68 0 69 0;
#P connect 67 0 68 1;
#P connect 70 0 67 0;
#P connect 38 0 32 0;
#P connect 39 0 31 0;
#P connect 110 0 35 0;
#P connect 40 0 35 0;
#P connect 28 0 26 0;
#P connect 27 0 26 0;
#P connect 29 0 26 0;
#P connect 30 0 26 0;
#P connect 35 0 26 0;
#P connect 31 0 26 0;
#P connect 32 0 26 0;
#P connect 33 0 26 0;
#P connect 34 0 26 0;
#P fasten 100 0 4 0 292 195;
#P fasten 96 0 4 0 245 231 292 231;
#P connect 9 0 4 0;
#P connect 7 0 4 0;
#P connect 19 0 4 0;
#P connect 20 0 4 0;
#P connect 21 0 4 0;
#P connect 22 0 4 0;
#P connect 23 0 4 0;
#P connect 24 0 4 0;
#P connect 25 0 4 0;
#P connect 26 0 4 0;
#P connect 69 0 4 0;
#P connect 102 0 4 0;
#P connect 104 0 105 0;
#P connect 105 0 103 0;
#P connect 103 0 102 0;
#P connect 41 0 30 0;
#P connect 42 0 29 0;
#P connect 4 1 13 0;
#P connect 43 0 27 0;
#P connect 44 0 28 0;
#P connect 4 0 60 0;
#P connect 60 0 73 0;
#P connect 45 0 60 1;
#P connect 49 0 50 0;
#P connect 50 0 51 0;
#P connect 51 0 47 0;
#P connect 47 0 48 0;
#P connect 85 0 83 0;
#P connect 86 0 82 0;
#P connect 65 0 66 0;
#P connect 66 0 64 0;
#P connect 64 0 62 0;
#P connect 62 0 63 0;
#P connect 64 0 61 0;
#P connect 61 0 62 1;
#P connect 87 0 81 0;
#P connect 88 0 80 0;
#P connect 89 0 84 0;
#P connect 110 0 84 0;
#P connect 83 0 75 0;
#P connect 82 0 75 0;
#P connect 81 0 75 0;
#P connect 80 0 75 0;
#P connect 84 0 75 0;
#P connect 79 0 75 0;
#P connect 78 0 75 0;
#P connect 76 0 75 0;
#P connect 77 0 75 0;
#P connect 106 0 45 0;
#P fasten 99 0 45 0 866 198;
#P fasten 95 0 45 0 818 232 866 232;
#P connect 75 0 45 0;
#P connect 63 0 45 0;
#P connect 59 0 45 0;
#P connect 58 0 45 0;
#P connect 57 0 45 0;
#P connect 56 0 45 0;
#P connect 55 0 45 0;
#P connect 54 0 45 0;
#P connect 53 0 45 0;
#P connect 46 0 45 0;
#P connect 48 0 45 0;
#P connect 108 0 109 0;
#P connect 109 0 107 0;
#P connect 107 0 106 0;
#P connect 90 0 79 0;
#P connect 91 0 78 0;
#P connect 45 1 52 0;
#P connect 92 0 76 0;
#P connect 93 0 77 0;
#P pop;

patch backup

March 31st, 2005

max v2;
#N vpatcher 33 44 1213 817;
#P origin 1 0;
#P window setfont “Sans Serif” 9.;
#P newex 359 471 63 196617 jit.op @op +;
#P message 851 508 72 196617 getmovie_dim;
#P message 785 508 43 196617 gettime;
#P message 851 421 132 196617 looppoints 400000 444000;
#P message 852 397 135 196617 looppoints 130000 145000;
#P message 852 375 132 196617 looppoints 200000 230000;
#P message 852 338 102 196617 looppoints 0 446200;
#P message 852 356 120 196617 looppoints 40000 50000;
#P newex 778 605 31 196617 print;
#P newex 791 382 27 196617 – 2.;
#P newex 791 361 45 196617 / 31.75;
#P newex 791 340 44 196617 ctlin 16;
#P message 1382 488 84 196617 looppoints \$1 \$2;
#P newex 1383 450 45 196617 pack 0 0;
#P newex 1397 425 42 196617 + 2000;
#P number 1384 396 36 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P message 1282 489 84 196617 looppoints \$1 \$2;
#P newex 1283 451 45 196617 pack 0 0;
#P newex 1297 426 42 196617 + 2000;
#P number 1284 397 36 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P message 1189 491 84 196617 looppoints \$1 \$2;
#P newex 1190 453 45 196617 pack 0 0;
#P newex 1204 428 42 196617 + 2000;
#P number 1191 399 36 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P message 1093 490 84 196617 looppoints \$1 \$2;
#P newex 1094 452 45 196617 pack 0 0;
#P newex 1108 427 42 196617 + 2000;
#P number 1095 399 36 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P message 791 423 43 196617 rate \$1;
#P flonum 791 403 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P message 725 389 40 196617 rate 0.;
#P message 727 298 45 196617 rate -2.;
#P message 727 316 51 196617 rate -1.5;
#P message 725 335 45 196617 rate -1.;
#P message 726 354 51 196617 rate -0.5;
#P message 726 372 55 196617 rate -0.25;
#P message 725 408 52 196617 rate 0.25;
#P message 725 427 45 196617 rate 0.5;
#P message 726 485 45 196617 rate 2.;
#P message 726 466 45 196617 rate 1.5;
#P message 992 490 84 196617 looppoints \$1 \$2;
#P newex 993 452 45 196617 pack 0 0;
#P newex 1007 427 42 196617 + 2000;
#P number 994 398 36 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P button 1266 350 27 0;
#P button 1221 350 27 0;
#P button 1188 351 27 0;
#P button 1151 350 27 0;
#P button 1116 350 27 0;
#P button 1083 350 27 0;
#P newex 1083 317 262 196617 sel 97 115 100 102 103 32;
#P number 1083 295 123 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P newex 1083 271 40 196617 key;
#P message 725 445 40 196617 rate 1.;
#P message 720 548 60 196617 getduration;
#P message 682 549 32 196617 start;
#P message 682 567 27 196617 stop;
#P message 656 509 125 196617 read church_jitTest1.mov;
#P newex 726 582 104 196617 jit.qt.movie 720 480;
#P comment 781 473 100 196617 rate control : knob attached to pot;
#P comment 664 527 100 196617 duration 446200;
#P newex 637 592 44 196617 ctlin 23;
#P newex 586 592 44 196617 ctlin 22;
#P newex 536 592 44 196617 ctlin 21;
#P newex 486 592 44 196617 ctlin 20;
#P newex 435 592 44 196617 ctlin 19;
#P newex 385 592 44 196617 ctlin 18;
#P newex 339 592 44 196617 ctlin 17;
#P newex 287 592 44 196617 ctlin 16;
#P newex 234 592 44 196617 ctlin 15;
#P message 406 617 17 196617 0.;
#P message 266 617 22 196617 -2.;
#P message 294 617 22 196617 -1.;
#P message 324 617 29 196617 -0.5;
#P message 359 617 35 196617 -0.25;
#P message 434 617 30 196617 0.25;
#P message 466 617 23 196617 0.5;
#P message 534 617 17 196617 2.;
#P message 491 617 17 196617 1.;
#P message 326 657 43 196617 rate \$1;
#P message 205 267 72 196617 getmovie_dim;
#P message 139 267 43 196617 gettime;
#P message 205 180 132 196617 looppoints 400000 444000;
#P message 206 156 135 196617 looppoints 130000 145000;
#P message 206 134 132 196617 looppoints 200000 230000;
#P message 206 97 102 196617 looppoints 0 446200;
#P message 206 115 120 196617 looppoints 40000 50000;
#P toggle 97 683 16 0;
#P newex 97 661 35 196617 sel 27;
#P newex 97 640 40 196617 key;
#P message 97 705 69 196617 fullscreen \$1;
#P newex 80 728 205 196617 jit.window decay @fsmenubar 0 @floating 1;
#P newex 132 364 31 196617 print;
#P newex 145 141 27 196617 – 2.;
#P newex 145 120 45 196617 / 31.75;
#P newex 145 99 44 196617 ctlin 24;
#P message 736 247 84 196617 looppoints \$1 \$2;
#P newex 737 209 45 196617 pack 0 0;
#P newex 751 184 42 196617 + 2000;
#P number 738 155 36 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P message 636 248 84 196617 looppoints \$1 \$2;
#P newex 637 210 45 196617 pack 0 0;
#P newex 651 185 42 196617 + 2000;
#P number 638 156 36 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P message 543 250 84 196617 looppoints \$1 \$2;
#P newex 544 212 45 196617 pack 0 0;
#P newex 558 187 42 196617 + 2000;
#P number 545 158 36 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P message 447 249 84 196617 looppoints \$1 \$2;
#P newex 448 211 45 196617 pack 0 0;
#P newex 462 186 42 196617 + 2000;
#P number 449 158 36 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P message 145 182 43 196617 rate \$1;
#P flonum 145 162 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P message 79 148 40 196617 rate 0.;
#P message 81 57 45 196617 rate -2.;
#P message 81 75 51 196617 rate -1.5;
#P message 79 94 45 196617 rate -1.;
#P message 80 113 51 196617 rate -0.5;
#P message 80 131 55 196617 rate -0.25;
#P message 79 167 52 196617 rate 0.25;
#P message 79 186 45 196617 rate 0.5;
#P message 80 244 45 196617 rate 2.;
#P message 80 225 45 196617 rate 1.5;
#P message 346 249 84 196617 looppoints \$1 \$2;
#P newex 347 211 45 196617 pack 0 0;
#P newex 361 186 42 196617 + 2000;
#P number 348 157 36 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P button 620 109 27 0;
#P button 575 109 27 0;
#P button 542 110 27 0;
#P button 505 109 27 0;
#P button 470 109 27 0;
#P button 437 109 27 0;
#P newex 437 76 262 196617 sel 97 115 100 102 103 32;
#P number 437 54 123 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P newex 437 30 40 196617 key;
#P message 79 204 40 196617 rate 1.;
#P message 74 307 60 196617 getduration;
#P message 36 308 32 196617 start;
#P message 36 326 27 196617 stop;
#P message 10 268 125 196617 read church_jitTest1.mov;
#P toggle 2 24 15 0;
#P newex 1 43 45 196617 metro 2;
#P newex 80 341 104 196617 jit.qt.movie 720 480;
#P comment 135 232 100 196617 rate control : knob attached to pot;
#P comment 18 286 100 196617 duration 446200;
#P connect 4 0 3 0;
#P connect 3 0 2 0;
#P connect 50 0 2 0;
#P connect 46 0 2 0;
#P connect 42 0 2 0;
#P connect 38 0 2 0;
#P connect 34 0 2 0;
#P connect 31 0 2 0;
#P connect 30 0 2 0;
#P connect 29 0 2 0;
#P connect 28 0 2 0;
#P connect 27 0 2 0;
#P connect 32 0 2 0;
#P connect 26 0 2 0;
#P connect 25 0 2 0;
#P connect 24 0 2 0;
#P connect 23 0 2 0;
#P connect 5 0 2 0;
#P connect 6 0 2 0;
#P connect 7 0 2 0;
#P connect 8 0 2 0;
#P connect 9 0 2 0;
#P connect 22 0 2 0;
#P connect 60 0 2 0;
#P connect 61 0 2 0;
#P connect 62 0 2 0;
#P connect 63 0 2 0;
#P connect 64 0 2 0;
#P connect 65 0 2 0;
#P connect 66 0 2 0;
#P connect 67 0 2 0;
#P connect 146 0 55 0;
#P connect 56 0 55 0;
#P connect 57 0 58 0;
#P connect 58 0 59 0;
#P connect 59 0 56 0;
#P connect 2 1 54 0;
#P connect 51 0 52 0;
#P connect 52 0 53 0;
#P connect 53 0 33 0;
#P connect 33 0 34 0;
#P connect 77 0 75 0;
#P connect 78 0 74 0;
#P connect 79 0 73 0;
#P connect 69 0 67 0;
#P connect 68 0 67 0;
#P connect 70 0 67 0;
#P connect 71 0 67 0;
#P connect 76 0 67 0;
#P connect 72 0 67 0;
#P connect 73 0 67 0;
#P connect 74 0 67 0;
#P connect 75 0 67 0;
#P connect 13 0 22 0;
#P connect 21 0 22 0;
#P connect 19 0 21 0;
#P connect 2 0 146 0;
#P connect 80 0 72 0;
#P connect 19 0 20 0;
#P connect 20 0 21 1;
#P connect 81 0 76 0;
#P connect 88 0 146 1;
#P connect 82 0 71 0;
#P connect 10 0 11 0;
#P connect 11 0 12 0;
#P connect 12 0 13 0;
#P connect 14 0 38 0;
#P connect 37 0 38 0;
#P connect 35 0 37 0;
#P connect 35 0 36 0;
#P connect 83 0 70 0;
#P connect 12 1 14 0;
#P connect 36 0 37 1;
#P connect 84 0 68 0;
#P connect 12 2 15 0;
#P connect 85 0 69 0;
#P connect 12 3 16 0;
#P connect 15 0 42 0;
#P connect 41 0 42 0;
#P connect 39 0 41 0;
#P connect 39 0 40 0;
#P connect 12 4 17 0;
#P connect 40 0 41 1;
#P connect 12 5 18 0;
#P connect 16 0 46 0;
#P connect 45 0 46 0;
#P connect 43 0 45 0;
#P connect 43 0 44 0;
#P connect 44 0 45 1;
#P connect 145 0 88 0;
#P connect 144 0 88 0;
#P connect 143 0 88 0;
#P connect 142 0 88 0;
#P connect 141 0 88 0;
#P connect 140 0 88 0;
#P connect 139 0 88 0;
#P connect 106 0 88 0;
#P connect 93 0 88 0;
#P connect 92 0 88 0;
#P connect 91 0 88 0;
#P connect 90 0 88 0;
#P connect 89 0 88 0;
#P connect 107 0 88 0;
#P connect 108 0 88 0;
#P connect 109 0 88 0;
#P connect 110 0 88 0;
#P connect 116 0 88 0;
#P connect 111 0 88 0;
#P connect 112 0 88 0;
#P connect 113 0 88 0;
#P connect 114 0 88 0;
#P connect 115 0 88 0;
#P connect 118 0 88 0;
#P connect 122 0 88 0;
#P connect 126 0 88 0;
#P connect 130 0 88 0;
#P connect 134 0 88 0;
#P connect 3 0 88 0;
#P connect 17 0 50 0;
#P connect 49 0 50 0;
#P connect 47 0 49 0;
#P connect 47 0 48 0;
#P connect 48 0 49 1;
#P connect 88 1 138 0;
#P connect 135 0 136 0;
#P connect 136 0 137 0;
#P connect 137 0 117 0;
#P connect 117 0 118 0;
#P connect 105 0 106 0;
#P connect 97 0 106 0;
#P connect 103 0 105 0;
#P connect 103 0 104 0;
#P connect 104 0 105 1;
#P connect 94 0 95 0;
#P connect 95 0 96 0;
#P connect 96 0 97 0;
#P connect 121 0 122 0;
#P connect 98 0 122 0;
#P connect 119 0 121 0;
#P connect 119 0 120 0;
#P connect 96 1 98 0;
#P connect 120 0 121 1;
#P connect 96 2 99 0;
#P connect 96 3 100 0;
#P connect 125 0 126 0;
#P connect 99 0 126 0;
#P connect 123 0 125 0;
#P connect 123 0 124 0;
#P connect 96 4 101 0;
#P connect 124 0 125 1;
#P connect 96 5 102 0;
#P connect 129 0 130 0;
#P connect 100 0 130 0;
#P connect 127 0 129 0;
#P connect 127 0 128 0;
#P connect 128 0 129 1;
#P connect 133 0 134 0;
#P connect 101 0 134 0;
#P connect 131 0 133 0;
#P connect 131 0 132 0;
#P connect 132 0 133 1;
#P pop;

equipment shopping list

March 23rd, 2005

pics
potentiometers (2 or 3) —-> volume, rate, other knob controls