[PD-cvs] doc/tutorials/intro 13.building_messages.pd, NONE, 1.1 14.right_to_left_order.pd, NONE, 1.1 15.ordering_messages.pd, NONE, 1.1 16.depth_first.pd, NONE, 1.1 17.inlets_and_outlets.pd, NONE, 1.1 18.storage_objects.pd, NONE, 1.1 19.atoms.pd, NONE, 1.1 20.atomic_messages.pd, NONE, 1.1 21.selectors.pd, NONE, 1.1 22.subpatches.pd, NONE, 1.1 23.inlets_and_outlets.pd, NONE, 1.1 24.outlet_order.pd, NONE, 1.1 25.Example-all_just_data.pd, NONE, 1.1 26.EXERCISE-hmmm.pd, NONE, 1.1 27.turning_on_and_off.pd, NONE, 1.1 28.properties.pd, NONE, 1.1 29.sliders.pd, NONE, 1.1 30.guis.pd, NONE, 1.1 31.nervous_guis.pd, NONE, 1.1 13.right_to_left_order.pd, 1.1, NONE 14.ordering_messages.pd, 1.1, NONE 15.depth_first.pd, 1.1, NONE 16.inlets_and_outlets.pd, 1.1, NONE 17.storage_objects.pd, 1.1, NONE 18.atoms.pd, 1.1, NONE 19.atomic_messages.pd, 1.1, NONE 20.selectors.pd, 1.1, NONE 21.subpatches.pd, 1.1, NONE 22.inlets_and_outlets.pd, 1.1, NONE 23.outlet_order.pd, 1.1, NONE 24.Example-all_just_data.pd, 1.1, NONE 25.EXERCISE-hmmm.pd, 1.1, NONE 26.turning_on_and_off.pd, 1.1, NONE 27.properties.pd, 1.1, NONE 28.sliders.pd, 1.1, NONE 29.guis.pd, 1.1, NONE 29.nervous_guis.pd, 1.2, NONE

Hans-Christoph Steiner eighthave at users.sourceforge.net
Tue Apr 18 12:17:15 CEST 2006


Update of /cvsroot/pure-data/doc/tutorials/intro
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv6924

Added Files:
	13.building_messages.pd 14.right_to_left_order.pd 
	15.ordering_messages.pd 16.depth_first.pd 
	17.inlets_and_outlets.pd 18.storage_objects.pd 19.atoms.pd 
	20.atomic_messages.pd 21.selectors.pd 22.subpatches.pd 
	23.inlets_and_outlets.pd 24.outlet_order.pd 
	25.Example-all_just_data.pd 26.EXERCISE-hmmm.pd 
	27.turning_on_and_off.pd 28.properties.pd 29.sliders.pd 
	30.guis.pd 31.nervous_guis.pd 
Removed Files:
	13.right_to_left_order.pd 14.ordering_messages.pd 
	15.depth_first.pd 16.inlets_and_outlets.pd 
	17.storage_objects.pd 18.atoms.pd 19.atomic_messages.pd 
	20.selectors.pd 21.subpatches.pd 22.inlets_and_outlets.pd 
	23.outlet_order.pd 24.Example-all_just_data.pd 
	25.EXERCISE-hmmm.pd 26.turning_on_and_off.pd 27.properties.pd 
	28.sliders.pd 29.guis.pd 29.nervous_guis.pd 
Log Message:
inserted a patch on how to build messages using add, add2, and set since its used in later examples

--- 23.outlet_order.pd DELETED ---

--- 13.right_to_left_order.pd DELETED ---

--- 14.ordering_messages.pd DELETED ---

--- 28.sliders.pd DELETED ---

--- NEW FILE: 23.inlets_and_outlets.pd ---
#N canvas 10 40 624 464 12;
#X obj 10 10 cnv 15 400 40 empty empty inlets_and_outlets 20 12 0 24
-228992 -66577 0;
#X text 14 72 When making your own objects and subpatchs \, you can
create inlets and outlets using [inlet] and [outlet].;
#N canvas 10 40 624 464 look 0;
#X obj 24 34 inlet;
#X obj 238 47 inlet;
#X obj 469 41 inlet;
#X obj 251 304 outlet;
#X msg 469 175 I am the third inlet;
#X msg 242 145 I am the second inlet;
#X msg 24 94 I am the first inlet;
#X connect 0 0 6 0;
#X connect 1 0 5 0;
#X connect 2 0 4 0;
#X connect 4 0 3 0;
#X connect 5 0 3 0;
#X connect 6 0 3 0;
#X restore 32 162 pd look inside me;
#X obj 31 202 pddp/print_long;
#X obj 32 129 bng 20 250 50 0 empty empty empty 0 -6 0 8 -24198 -1
-1;
#X obj 114 129 bng 20 250 50 0 empty empty empty 0 -6 0 8 -24198 -1
-1;
#X obj 197 129 bng 20 250 50 0 empty empty empty 0 -6 0 8 -24198 -1
-1;
#N canvas 10 40 640 480 look 0;
#X obj 20 34 inlet;
#X obj 334 33 inlet;
#X obj 528 35 inlet;
#X obj 20 120 trigger bang anything;
#X obj 224 404 outlet;
#X obj 224 266 mapping/tolist;
#X connect 0 0 3 0;
#X connect 1 0 5 0;
#X connect 2 0 5 0;
#X connect 3 0 5 1;
#X connect 3 1 5 0;
#X connect 5 0 4 0;
#X restore 199 376 pd look inside me;
#X obj 198 416 pddp/print_long;
#X msg 200 327 smokin!;
#X msg 281 327 are;
#X msg 363 327 you;
#X text 17 259 The first inlet should be the hot inlet \, even in your
own patches. There are times when you need to make other inlets hot
\, but in general \, its a good rule to stick with.;
#X obj 332 126 cnv 15 220 120 empty empty empty 20 12 0 14 -233017
-66577 0;
#X obj 347 132 inlet;
#X obj 348 218 outlet;
#X text 402 132 take in data;
#X text 361 173 do some stuff here;
#X text 418 217 output data;
#X connect 2 0 3 0;
#X connect 4 0 2 0;
#X connect 5 0 2 1;
#X connect 6 0 2 2;
#X connect 7 0 8 0;
#X connect 9 0 7 0;
#X connect 10 0 7 1;
#X connect 11 0 7 2;
#X connect 14 0 15 0;

--- NEW FILE: 15.ordering_messages.pd ---
#N canvas 10 40 628 468 12;
#X obj 10 10 cnv 15 400 40 empty empty ordering_messages 20 12 0 24
-228992 -66577 0;
#X text 10 393 look here for the result -->;
#X text 10 62 Officially \, the execution order in Pd is undefined.
;
#X text 10 88 The [trigger] object allows you to specify the order
of messages are sent. If you need to make sure that one thing runs
before another \, use [trigger]:;
#X obj 3 174 cnv 15 80 25 empty empty empty 20 12 0 14 -225271 -66577
0;
#X obj 142 149 cnv 15 80 25 empty empty empty 20 12 0 14 -225271 -66577
0;
#X msg 395 249 now;
#X msg 316 250 this;
#X msg 237 250 makes;
#X msg 158 250 sense;
#X msg 80 250 !;
#X obj 157 292 symbol;
#X msg 159 151 bang;
#X msg 19 177 bang;
#X msg 157 316 add2 \$1;
#X msg 478 248 set;
#X obj 160 178 trigger bang bang bang bang bang bang;
#X msg 296 391;
#X connect 6 0 11 0;
#X connect 7 0 11 0;
#X connect 8 0 11 0;
#X connect 9 0 11 0;
#X connect 10 0 11 0;
#X connect 11 0 14 0;
#X connect 12 0 16 0;
#X connect 13 0 8 0;
#X connect 13 0 10 0;
#X connect 13 0 15 0;
#X connect 13 0 9 0;
#X connect 13 0 6 0;
#X connect 13 0 7 0;
#X connect 14 0 17 0;
#X connect 15 0 17 0;
#X connect 16 0 10 0;
#X connect 16 1 9 0;
#X connect 16 2 8 0;
#X connect 16 3 7 0;
#X connect 16 4 6 0;
#X connect 16 5 15 0;

--- NEW FILE: 16.depth_first.pd ---
#N canvas 10 40 632 472 12;
#X obj 10 10 cnv 15 400 40 empty empty depth_first 20 12 0 24 -228992
-66577 0;
#X obj 265 229 trigger bang bang;
#X msg 215 338 add2 \$1;
#X msg 84 234 set;
#X text 18 234 reset:;
#X msg 264 195 4;
#X msg 265 262 3;
#X msg 430 260 2;
#X msg 430 295 1;
#X text 15 378 see result here -->;
#X obj 265 164 bng 25 250 50 0 empty empty empty 0 -6 0 8 -24198 -1
-1;
#X text 12 66 Pd processes messages in "depth first". This means the
bottom-most message in a chain runs first. Everything below a spot
in a chain is run before. As you'll see from the example below \, the
[4( message actually runs last \, since everything below it executed
before it.;
#X obj 33 430 pddp/pddplink http://crca.ucsd.edu/~msp/Pd_documentation/x2.htm#s3.2
;
#X msg 214 377;
#X connect 1 0 6 0;
#X connect 1 1 7 0;
#X connect 2 0 13 0;
#X connect 3 0 13 0;
#X connect 5 0 1 0;
#X connect 5 0 2 0;
#X connect 6 0 2 0;
#X connect 7 0 8 0;
#X connect 7 0 2 0;
#X connect 8 0 2 0;
#X connect 10 0 5 0;

--- 19.atomic_messages.pd DELETED ---

--- 26.turning_on_and_off.pd DELETED ---

--- NEW FILE: 31.nervous_guis.pd ---
#N canvas 10 40 632 472 12;
#X obj 10 10 cnv 15 400 40 empty empty nervous_guis 20 12 0 24 -228992
-66577 0;
#X obj 23 146 tgl 20 1 empty start_nervously1 empty 8 -8 0 10 -24198
-1 -250685 0 1;
#X obj 255 165 bng 15 1200 50 0 empty nerv_bng bang 8 -8 0 10 -262144
-1 -1;
#X obj 250 343 hsl 127 15 0 127 0 0 empty nerv_hsl h-slider 8 -8 0
10 -262144 -1 -1 0 1;
#X obj 443 164 tgl 15 1 empty nerv_tgl toggle 8 -8 0 10 -262144 -1
-1 0 1;
#X obj 482 282 vsl 15 127 0 127 0 0 empty nerv_vsl v-slider 8 -8 0
10 -262144 -1 -1 0 1;
#N canvas 13 42 258 427 control 0;
#X obj 19 21 inlet;
#N canvas 10 40 632 472 bng 0;
#X obj 114 260 - 0;
#X obj 148 258 f;
#X obj 147 222 t f b;
#X obj 79 122 random 56789;
#X obj 150 165 random 9876;
#X obj 47 236 - 0;
#X obj 81 234 f;
#X obj 80 198 t f b;
#X obj 150 192 % 50;
#X obj 79 145 % 50;
#X obj 64 289 pack 0 0;
#X obj 84 60 t b b b;
#X obj 234 368 pack 0 0 0;
#X obj 250 29 metro 2000;
#X obj 445 122 random 555666;
#X obj 445 168 + 8;
#X obj 445 145 % 120;
#X obj 84 35 metro 100;
#X obj 234 261 random 1.67772e+07;
#X obj 266 283 random 1.67772e+07;
#X obj 299 315 random 1.67772e+07;
#X obj 84 11 inlet;
#X msg 64 312 \; nerv_bng delta \$1 \$2;
#X msg 234 390 \; nerv_bng color \$1 \$2 \$3;
#X msg 445 192 \; nerv_bng size \$1;
#X msg 250 51 \; nerv_bng bang;
#X obj 234 340 * -1;
#X obj 266 316 * -1;
#X obj 299 342 * -1;
#X connect 0 0 10 1;
#X connect 1 0 0 1;
#X connect 2 0 1 1;
#X connect 2 0 0 0;
#X connect 2 1 1 0;
#X connect 3 0 9 0;
#X connect 4 0 8 0;
#X connect 5 0 10 0;
#X connect 6 0 5 1;
#X connect 7 0 6 1;
#X connect 7 0 5 0;
#X connect 7 1 6 0;
#X connect 8 0 2 0;
#X connect 9 0 7 0;
#X connect 10 0 22 0;
#X connect 11 0 3 0;
#X connect 11 0 14 0;
#X connect 11 0 18 0;
#X connect 11 1 4 0;
#X connect 11 1 19 0;
#X connect 11 2 20 0;
#X connect 12 0 23 0;
#X connect 13 0 25 0;
#X connect 14 0 16 0;
#X connect 15 0 24 0;
#X connect 16 0 15 0;
#X connect 17 0 11 0;
#X connect 18 0 26 0;
#X connect 19 0 27 0;
#X connect 20 0 28 0;
#X connect 21 0 17 0;
#X connect 21 0 13 0;
#X connect 26 0 12 0;
#X connect 27 0 12 1;
#X connect 28 0 12 2;
#X restore 52 130 pd bng;
#N canvas 10 40 620 460 tgl 0;
#X obj 114 260 - 0;
#X obj 148 258 f;
#X obj 147 222 t f b;
#X obj 79 122 random 56789;
#X obj 150 165 random 9876;
#X obj 47 236 - 0;
#X obj 81 234 f;
#X obj 80 198 t f b;
#X obj 150 192 % 50;
#X obj 79 145 % 50;
#X obj 64 289 pack 0 0;
#X obj 85 53 t b b b;
#X obj 445 122 random 555666;
#X obj 445 168 + 8;
#X obj 445 144 % 120;
#X obj 85 31 metro 100;
#X obj 264 28 metro 1000;
#X obj 85 10 inlet;
#X msg 64 312 \; nerv_tgl delta \$1 \$2;
#X msg 226 322 \; nerv_tgl color \$1 \$2 \$3;
#X msg 445 192 \; nerv_tgl size \$1;
#X msg 264 51 \; nerv_tgl bang;
#X obj 226 298 pack 0 0 0;
#X obj 226 191 random 1.67772e+07;
#X obj 258 213 random 1.67772e+07;
#X obj 291 245 random 1.67772e+07;
#X obj 226 270 * -1;
#X obj 258 246 * -1;
#X obj 291 272 * -1;
#X connect 0 0 10 1;
#X connect 1 0 0 1;
#X connect 2 0 1 1;
#X connect 2 0 0 0;
#X connect 2 1 1 0;
#X connect 3 0 9 0;
#X connect 4 0 8 0;
#X connect 5 0 10 0;
#X connect 6 0 5 1;
#X connect 7 0 6 1;
#X connect 7 0 5 0;
#X connect 7 1 6 0;
#X connect 8 0 2 0;
#X connect 9 0 7 0;
#X connect 10 0 18 0;
#X connect 11 0 3 0;
#X connect 11 0 12 0;
#X connect 11 0 23 0;
#X connect 11 1 4 0;
#X connect 11 1 24 0;
#X connect 11 2 25 0;
#X connect 12 0 14 0;
#X connect 13 0 20 0;
#X connect 14 0 13 0;
#X connect 15 0 11 0;
#X connect 16 0 21 0;
#X connect 17 0 15 0;
#X connect 17 0 16 0;
#X connect 22 0 19 0;
#X connect 23 0 26 0;
#X connect 24 0 27 0;
#X connect 25 0 28 0;
#X connect 26 0 22 0;
#X connect 27 0 22 1;
#X connect 28 0 22 2;
#X restore 33 217 pd tgl;
#N canvas 10 40 620 460 hsl 0;
#X obj 114 260 - 0;
#X obj 148 258 f;
#X obj 147 222 t f b;
#X obj 79 122 random 56789;
#X obj 150 165 random 9876;
#X obj 47 236 - 0;
#X obj 81 234 f;
#X obj 80 198 t f b;
#X obj 150 192 % 50;
#X obj 79 145 % 50;
#X obj 64 289 pack 0 0;
#X obj 85 53 t b b b;
#X obj 445 122 random 555666;
#X obj 560 188 + 8;
#X obj 560 128 random 773322;
#X obj 445 208 pack 0 0;
#X obj 84 32 metro 100;
#X obj 561 155 % 30;
#X obj 445 183 + 20;
#X obj 446 149 % 110;
#X obj 254 305 metro 1000;
#X obj 254 327 random 846352;
#X obj 254 350 % 130;
#X obj 84 11 inlet;
#X msg 64 321 \; nerv_hsl delta \$1 \$2;
#X msg 254 373 \; nerv_hsl set \$1;
#X msg 445 231 \; nerv_hsl size \$1 \$2;
#X obj 245 202 pack 0 0 0;
#X obj 245 95 random 1.67772e+07;
#X obj 277 117 random 1.67772e+07;
#X obj 310 149 random 1.67772e+07;
#X obj 245 174 * -1;
#X obj 277 150 * -1;
#X obj 310 176 * -1;
#X msg 245 229 \; nerv_hsl color \$1 \$2 \$3;
#X connect 0 0 10 1;
#X connect 1 0 0 1;
#X connect 2 0 1 1;
#X connect 2 0 0 0;
#X connect 2 1 1 0;
#X connect 3 0 9 0;
#X connect 4 0 8 0;
#X connect 5 0 10 0;
#X connect 6 0 5 1;
#X connect 7 0 6 1;
#X connect 7 0 5 0;
#X connect 7 1 6 0;
#X connect 8 0 2 0;
#X connect 9 0 7 0;
#X connect 10 0 24 0;
#X connect 11 0 3 0;
#X connect 11 0 12 0;
#X connect 11 0 28 0;
#X connect 11 1 4 0;
#X connect 11 1 14 0;
#X connect 11 1 29 0;
#X connect 11 2 30 0;
#X connect 12 0 19 0;
#X connect 13 0 15 1;
#X connect 14 0 17 0;
#X connect 15 0 26 0;
#X connect 16 0 11 0;
#X connect 17 0 13 0;
#X connect 18 0 15 0;
#X connect 18 0 22 1;
#X connect 19 0 18 0;
#X connect 20 0 21 0;
#X connect 21 0 22 0;
#X connect 22 0 25 0;
#X connect 23 0 16 0;
#X connect 23 0 20 0;
#X connect 27 0 34 0;
#X connect 28 0 31 0;
#X connect 29 0 32 0;
#X connect 30 0 33 0;
#X connect 31 0 27 0;
#X connect 32 0 27 1;
#X connect 33 0 27 2;
#X restore 33 312 pd hsl;
#N canvas 10 40 620 460 vsl 0;
#X obj 114 260 - 0;
#X obj 148 258 f;
#X obj 147 222 t f b;
#X obj 79 122 random 56789;
#X obj 150 165 random 9876;
#X obj 47 236 - 0;
#X obj 81 234 f;
#X obj 80 198 t f b;
#X obj 150 192 % 50;
#X obj 79 145 % 50;
#X obj 64 289 pack 0 0;
#X obj 85 53 t b b b;
#X obj 445 122 random 555666;
#X obj 560 128 random 773322;
#X obj 445 208 pack 0 0;
#X obj 84 32 metro 100;
#X obj 241 299 metro 1000;
#X obj 240 325 random 846352;
#X obj 241 352 % 130;
#X obj 561 155 % 110;
#X obj 560 188 + 20;
#X obj 446 149 % 30;
#X obj 445 183 + 3;
#X obj 84 11 inlet;
#X msg 239 227 \; nerv_vsl color \$1 \$2 \$3;
#X msg 445 231 \; nerv_vsl size \$1 \$2;
#X msg 64 310 \; nerv_vsl delta \$1 \$2;
#X msg 241 376 \; nerv_vsl set \$1;
#X obj 239 203 pack 0 0 0;
#X obj 239 96 random 1.67772e+07;
#X obj 271 118 random 1.67772e+07;
#X obj 304 150 random 1.67772e+07;
#X obj 239 175 * -1;
#X obj 271 151 * -1;
#X obj 304 177 * -1;
#X connect 0 0 10 1;
#X connect 1 0 0 1;
#X connect 2 0 1 1;
#X connect 2 0 0 0;
#X connect 2 1 1 0;
#X connect 3 0 9 0;
#X connect 4 0 8 0;
#X connect 5 0 10 0;
#X connect 6 0 5 1;
#X connect 7 0 6 1;
#X connect 7 0 5 0;
#X connect 7 1 6 0;
#X connect 8 0 2 0;
#X connect 9 0 7 0;
#X connect 10 0 26 0;
#X connect 11 0 3 0;
#X connect 11 0 12 0;
#X connect 11 0 29 0;
#X connect 11 1 4 0;
#X connect 11 1 13 0;
#X connect 11 1 30 0;
#X connect 11 2 31 0;
#X connect 12 0 21 0;
#X connect 13 0 19 0;
#X connect 14 0 25 0;
#X connect 15 0 11 0;
#X connect 16 0 17 0;
#X connect 17 0 18 0;
#X connect 18 0 27 0;
#X connect 19 0 20 0;
#X connect 20 0 14 1;
#X connect 20 0 18 1;
#X connect 21 0 22 0;
#X connect 22 0 14 0;
#X connect 23 0 15 0;
#X connect 23 0 16 0;
#X connect 28 0 24 0;
#X connect 29 0 32 0;
#X connect 30 0 33 0;
#X connect 31 0 34 0;
#X connect 32 0 28 0;
#X connect 33 0 28 1;
#X connect 34 0 28 2;
#X restore 32 395 pd vsl;
#X obj 19 80 delay 100;
#X obj 19 163 delay 900;
#X obj 19 252 delay 900;
#X obj 19 343 delay 900;
#X obj 33 285 float;
#X obj 33 190 float;
#X obj 52 107 float;
#X obj 32 369 float;
#X obj 19 50 trigger bang float;
#X connect 0 0 13 0;
#X connect 5 0 6 0;
#X connect 5 0 11 0;
#X connect 6 0 7 0;
#X connect 6 0 10 0;
#X connect 7 0 8 0;
#X connect 7 0 9 0;
#X connect 8 0 12 0;
#X connect 9 0 3 0;
#X connect 10 0 2 0;
#X connect 11 0 1 0;
#X connect 12 0 4 0;
#X connect 13 0 5 0;
#X connect 13 1 9 1;
#X connect 13 1 10 1;
#X connect 13 1 11 1;
#X connect 13 1 12 1;
#X restore 23 172 pd control;
#X text 49 146 <-- start!;
#X text 17 88 You can programmatically control just about every property
and behavior of most GUI objects.;
#X connect 1 0 6 0;

--- NEW FILE: 25.Example-all_just_data.pd ---
#N canvas 10 40 624 464 10;
#X obj 177 265 import unauthorized Gem;
#X obj 154 102 grid grid1 200 0 199 200 0 199 1 1 1 10 10 113 347;
#X obj 25 39 pddp/dsp;
#N canvas 10 40 620 460 guts 0;
#X obj 20 10 inlet;
#X obj 275 14 inlet;
#X obj 78 108 osc~;
#X obj 78 137 *~;
#X obj 115 79 / 200;
#X obj 76 166 dac~;
#X obj 444 54 receive pd;
#X msg 340 154 create;
#X msg 310 154 1;
#X obj 482 215 gemwin;
#X msg 564 154 0;
#X msg 504 154 destroy;
#X obj 517 132 t b b;
#X obj 311 125 trigger bang bang bang;
#X obj 444 94 select 1;
#X obj 444 74 route dsp;
#X obj 89 229 gemhead;
#X obj 90 375 sphere 1 20;
#X obj 91 344 translateXYZ;
#X obj 93 287 colorRGB 1 1 1 1;
#X obj 90 314 alpha;
#X msg 289 192 lighting 1;
#X obj 418 294 gemhead;
#X obj 419 359 world_light -120;
#X obj 228 292 / 25;
#X obj 30 300 / 25;
#X obj 228 269 - 100;
#X obj 29 279 - 100;
#X obj 181 251 / 200;
#X obj 53 250 / 200;
#X msg 394 154 dimen 200 200;
#X obj 77 56 + 250;
#X obj 115 118 line~;
#X obj 161 59 bang;
#X msg 160 98 0 250;
#X msg 115 98 \$1 25;
#X obj 161 79 delay 200;
#X connect 0 0 4 0;
#X connect 0 0 27 0;
#X connect 0 0 29 0;
#X connect 0 0 33 0;
#X connect 1 0 26 0;
#X connect 1 0 28 0;
#X connect 1 0 31 0;
#X connect 2 0 3 0;
#X connect 3 0 5 0;
#X connect 3 0 5 1;
#X connect 4 0 35 0;
#X connect 6 0 15 0;
#X connect 7 0 9 0;
#X connect 8 0 9 0;
#X connect 10 0 9 0;
#X connect 11 0 9 0;
#X connect 12 0 11 0;
#X connect 12 1 10 0;
#X connect 13 0 8 0;
#X connect 13 0 21 0;
#X connect 13 1 7 0;
#X connect 13 2 30 0;
#X connect 14 0 13 0;
#X connect 14 1 12 0;
#X connect 15 0 14 0;
#X connect 16 0 19 0;
#X connect 18 0 17 0;
#X connect 19 0 20 0;
#X connect 20 0 18 0;
#X connect 21 0 9 0;
#X connect 22 0 23 0;
#X connect 24 0 18 2;
#X connect 25 0 18 1;
#X connect 26 0 24 0;
#X connect 27 0 25 0;
#X connect 28 0 19 2;
#X connect 29 0 19 1;
#X connect 30 0 9 0;
#X connect 31 0 2 0;
#X connect 32 0 3 1;
#X connect 33 0 36 0;
#X connect 34 0 32 0;
#X connect 35 0 32 0;
#X connect 36 0 34 0;
#X restore 256 320 pd guts;
#X text 102 9 Its all just data. Use it however you want!;
#X text 28 61 ^-- click here to turn it on and off;
#X obj 154 344 nbx 5 24 -1e+37 1e+37 0 0 empty empty X -15 12 1 18
-166441 -1 -1 0 256;
#X obj 348 343 nbx 5 24 -1e+37 1e+37 0 0 empty empty Y -15 12 1 18
-166441 -1 -1 0 256;
#X text 14 121 click and drag in;
#X text 14 137 this box ------->;
#X connect 1 0 3 0;
#X connect 1 0 6 0;
#X connect 1 1 3 1;
#X connect 1 1 7 0;

--- 17.storage_objects.pd DELETED ---

--- 29.nervous_guis.pd DELETED ---

--- NEW FILE: 28.properties.pd ---
#N canvas 10 40 620 460 12;
#X obj 10 10 cnv 15 400 40 empty empty properties 20 12 0 24 -228992
-66577 0;
#X obj 260 148 tgl 200 0 empty empty empty 0 -6 0 8 -24198 -1 -1 0
12345;
#X text 13 65 Many objects have properties that affect how the behave
and look. You can see and edit these properties by opening the Properties
panel. Below is a giant toggle. If you right-click on it \, and select
"Properties" \, you can see the properties.;
#X floatatom 260 353 5 0 0 0 - - -;
#X text 18 387 You'll see in the properties panel that "size" is set
to 200 pixels and "value" is set to 12345 \, so the toggle outputs
12345 when its turned on.;
#X text 15 221 right-click on this -->;
#X text 15 240 and select "Properties";
#X connect 1 0 3 0;

--- NEW FILE: 20.atomic_messages.pd ---
#N canvas 10 40 624 464 12;
#X obj 10 12 cnv 15 400 40 empty empty atomic_messages 20 12 0 24 -228992
-66577 0;
#X msg 69 191 symbol atom;
#X msg 47 343 float 1.234;
#X text 15 76 To send one piece of data to an object \, send an atomic
message. There are atomic message to match each of the atom types.
;
#X symbolatom 61 233 10 0 0 0 - - -;
#X msg 54 165 atom;
#X text 172 232 <-- the symbol box expects a symbol message;
#X text 106 165 <-- this gives an error (check the Pd window);
#X text 196 190 <-- this works;
#X text 14 134 When using symbolic atoms \, the symbol message is essential:
;
#X floatatom 74 410 5 0 0 0 - - -;
#X msg 84 374 362;
#X text 17 273 When using numeric atoms \, the float message is optional.
This is because the float message is automatically implied when sending
a numeric atom:;
#X connect 1 0 4 0;
#X connect 2 0 10 0;
#X connect 5 0 4 0;
#X connect 11 0 10 0;

--- NEW FILE: 27.turning_on_and_off.pd ---
#N canvas 10 40 624 464 12;
#X obj 10 10 cnv 15 400 40 empty empty turning_on_and_off 20 12 0 24
-228992 -66577 0;
#X obj 160 122 tgl 20 0 empty empty empty 0 -6 0 8 -24198 -1 -1 1 1
;
#X text 183 122 <-- click here;
#X obj 160 171 bng 20 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
-1;
#X text 15 371 The object is called [tgl] or you can get it from the
"Put" menu.;
#X text 14 63 Many objects can be switched on and off using a toggle.
A toggle outputs 0 for off \, and an number for on.;
#X text 11 217 By default \, a toggle outputs 1 for on \, but you can
change that to any number by selecting the "Properties" dialog.;
#X obj 33 290 tgl 20 0 empty empty empty 0 -6 0 8 -24198 -1 -1 1 1
;
#X floatatom 33 324 5 0 0 0 - - -;
#X obj 103 290 tgl 20 0 empty empty empty 0 -6 0 8 -24198 -1 -1 100
100;
#X floatatom 103 324 5 0 0 0 - - -;
#X obj 173 290 tgl 20 0 empty empty empty 0 -6 0 8 -24198 -1 -1 0 9e-22
;
#X floatatom 173 324 5 0 0 0 - - -;
#X obj 243 290 tgl 20 0 empty empty empty 0 -6 0 8 -24198 -1 -1 0 -0.034
;
#X floatatom 243 324 5 0 0 0 - - -;
#X obj 313 290 tgl 20 0 empty empty empty 0 -6 0 8 -24198 -1 -1 0 23
;
#X floatatom 313 324 5 0 0 0 - - -;
#X obj 383 290 tgl 20 0 empty empty empty 0 -6 0 8 -24198 -1 -1 0 99999
;
#X floatatom 383 324 5 0 0 0 - - -;
#X obj 453 290 tgl 20 0 empty empty empty 0 -6 0 8 -24198 -1 -1 0 1
;
#X floatatom 453 324 5 0 0 0 - - -;
#X obj 523 290 tgl 20 0 empty empty empty 0 -6 0 8 -24198 -1 -1 0 100
;
#X floatatom 523 324 5 0 0 0 - - -;
#X text 186 171 bangs once every second (1000ms);
#X obj 160 145 metro 1000;
#X connect 1 0 24 0;
#X connect 7 0 8 0;
#X connect 9 0 10 0;
#X connect 11 0 12 0;
#X connect 13 0 14 0;
#X connect 15 0 16 0;
#X connect 17 0 18 0;
#X connect 19 0 20 0;
#X connect 21 0 22 0;
#X connect 24 0 3 0;

--- NEW FILE: 24.outlet_order.pd ---
#N canvas 10 40 620 460 12;
#X text 223 149 <-- click here \,;
#X obj 8 10 cnv 15 400 40 empty empty outlet_order 20 12 0 24 -228992
-66577 0;
#X msg 153 149 3 2 1;
#X obj 101 234 print último;
#X obj 388 234 print first;
#X obj 240 234 print nächste;
#X text 19 374 There are occasional exceptions where it makes sense
to break this convention. But you shouldn't do it unless it really
is necessary. This will save you in the long run.;
#X text 15 80 Just like the flow of programming in Pd \, the data should
be output from right to left.;
#N canvas 10 40 620 460 spread 0;
#X obj 68 2 inlet;
#X obj 38 235 outlet;
#X obj 201 235 outlet;
#X obj 345 235 outlet;
#X obj 66 109 unpack float float float;
#X connect 0 0 4 0;
#X connect 4 0 1 0;
#X connect 4 1 2 0;
#X connect 4 2 3 0;
#X restore 153 188 pd spread the love;
#X text 18 310 While there is nothing forcing you to output data to
the outlets in any order \, Pd has a very strong convention for how
data should be output from an object.;
#X text 175 259 now check the Pd window;
#X connect 2 0 8 0;
#X connect 8 0 3 0;
#X connect 8 1 5 0;
#X connect 8 2 4 0;

--- 22.inlets_and_outlets.pd DELETED ---

--- NEW FILE: 19.atoms.pd ---
#N canvas 10 40 624 464 12;
#X obj 8 192 cnv 15 600 70 empty empty empty 20 12 0 14 -262134 -66577
0;
#X obj 10 12 cnv 15 400 40 empty empty atoms 20 12 0 24 -228992 -66577
0;
#X text 52 190 1;
#X text 77 221 0;
#X text 15 68 The basic data types of Pd are called "atoms". An atom
is a piece of data that cannot be broken down into smaller parts. There
are three atom types: "float" \, "symbol" \, and "pointer".;
#X text 134 194 1.14234e+34;
#X text 425 225 3.14159;
#X text 329 192 -999999;
#X text 331 225 45;
#X text 191 224 -12;
#X text 18 147 A numeric atom is any element that can be interpreted
as a number:;
#X text 488 192 1824.53;
#X text 24 218 3;
#X text 16 259 A symbolic atom is any element that is not a functional
representation of a number \, usually in the form of words:;
#X obj 8 306 cnv 15 600 70 empty empty empty 20 12 0 14 -262134 -66577
0;
#X text 28 306 word;
#X text 89 338 number5;
#X text 199 309 3..2;
#X text 553 343 --44;
#X text 235 341 label;
#X text 481 304 reset;
#X text 332 304 5++;
#X text 399 336 trigger;
#X text 15 381 A pointer is a very specific type of atom. It is only
used as a reference to a position in a data structure. There is not
visualization of a pointer.;

--- NEW FILE: 30.guis.pd ---
#N canvas 10 40 624 464 10;
#X obj -4 -4 cnv 15 620 700 empty empty gui-INTRO 237 20 2 14 -261819
-143491 0;
#X text 101 4 bng;
#X obj 456 313 vsl 15 128 0 127 0 0 empty empty default_15x128 8 -8
0 8 -262144 -1 -1 0 1;
#X obj 354 42 tgl 100 1 empty empty 100_pix 8 -8 0 8 -250685 -24198
-42246 1 1;
#X obj 57 251 hsl 128 15 0 127 0 0 empty empty default_128x15 8 -8
0 8 -262144 -1 -1 0 1;
#X obj 78 226 hsl 20 8 0 19 0 0 empty empty min_20x8 8 -8 0 8 -262144
-1 -1 0 1;
#X obj 478 326 vsl 8 20 0 19 0 0 empty empty min_8x20 8 -8 0 8 -262144
-1 -1 0 1;
#X obj 458 48 tgl 8 0 empty empty min_8 8 -8 0 8 -262144 -1 -1 0 1
;
#X obj 458 71 tgl 15 0 empty empty default_15 8 -8 0 8 -262144 -1 -1
0 1;
#X obj 459 109 tgl 30 0 empty empty 30_pix 8 -8 0 8 -262144 -1 -1 0
1;
#X obj 101 88 bng 30 250 50 0 empty empty 30_pix 8 -8 0 8 -262144 -1
-1;
#X obj 412 304 vsl 30 250 0 249 0 1 empty empty 30x250 8 -8 0 8 -184301
-42886 -42246 21800 1;
#X obj 7 271 hsl 251 30 0 250 0 1 empty empty 251x30 8 -8 0 8 -147456
-1109 -66577 12500 1;
#X text 180 518 (c) musil at iem.kug.ac.at;
#X text 222 531 IEM KUG;
#X text 197 543 graz \, austria 2001;
#X obj 40 343 vu 25 200 empty empty 8 -8 0 8 -1 -99865 1 0;
#X obj 13 24 bng 75 5000 25 1 empty empty 75pix+init 8 -8 0 8 -262131
-261458 -123526;
#X obj 100 376 vu 15 120 empty empty 8 -8 0 8 -66577 -1 1 0;
#X obj 186 375 vu 10 80 empty empty 8 -8 0 8 -66577 -1 1 0;
#X text 99 313 vu;
#N canvas 10 40 620 460 animate_vu 0;
#X obj 40 211 t f f;
#X obj 65 233 + 6;
#X obj 40 257 pack 0 0;
#X obj 78 94 tgl 15 0 empty empty empty 8 -8 0 10 -262144 -1 -1 1 1
;
#X obj 78 115 sel 0 1;
#X obj 78 74 metro 4000;
#X msg 100 137 30 3000;
#X msg 78 167 -130 3000;
#X obj 40 189 line -130 50;
#X obj 78 51 inlet;
#X obj 40 316 outlet;
#X obj 87 316 outlet;
#X obj 134 316 outlet;
#X connect 0 0 2 0;
#X connect 0 1 1 0;
#X connect 1 0 2 1;
#X connect 2 0 10 0;
#X connect 2 0 11 0;
#X connect 2 0 12 0;
#X connect 3 0 4 0;
#X connect 4 0 7 0;
#X connect 4 1 6 0;
#X connect 5 0 3 0;
#X connect 6 0 8 0;
#X connect 7 0 8 0;
#X connect 8 0 0 0;
#X connect 9 0 5 0;
#X restore 99 349 pd animate_vu;
#X obj 99 331 tgl 15 1 empty empty empty 8 -8 0 10 -262144 -1 -1 1
1;
#X text 360 8 toggle = tgl;
#X text 68 198 hslider = hsl;
#X text 430 271 vslider = vsl;
#X obj 13 160 print initial_bang;
#X obj 21 118 bng 15 250 50 0 empty empty default_15 8 -8 0 8 -262144
-1 -1;
#X obj 104 48 bng 8 250 50 0 empty empty min_8 8 -8 0 10 -262144 -1
-1;
#X obj 21 137 print no_initial_bang;
#X obj 283 324 cnv 15 100 30 empty empty empty 20 12 2 20 -225271 -66577
0;
#X obj 283 355 cnv 15 100 30 empty empty empty 20 12 2 20 -225280 -66577
0;
#X obj 283 386 cnv 15 100 30 empty empty empty 20 12 2 20 -261681 -66577
0;
#X obj 283 417 cnv 15 100 30 empty empty empty 20 12 2 20 -257472 -66577
0;
#X obj 172 375 vu 10 80 empty empty 8 -8 0 8 -66577 -1 0 0;
#X obj 310 203 hradio 15 1 1 8 empty empty default_8*15 8 -8 0 8 -262144
-1 -1 2;
#X obj 254 223 hradio 25 1 1 12 empty empty 12*25 8 -8 0 8 -1433 -225280
-355 1;
#N canvas 10 40 620 460 nervous 0;
#X obj 10 23 tgl 55 1 empty start_nervously1 start_it 8 -8 0 10 -260818
-1 -250685 0 1;
#X obj 131 141 bng 51 1200 50 0 empty nerv_bng bang 8 -8 0 10 -253378
-137031 -222091;
#X obj 120 418 hsl 22 12 0 127 0 0 empty nerv_hsl h-slider 8 -8 0 10
-71033 -66198 -128091 0 1;
#X obj 448 140 tgl 11 1 empty nerv_tgl toggle 8 -8 0 10 -141355 -82199
-51488 0 1;
#X obj 447 383 vsl 15 111 0 127 0 0 empty nerv_vsl v-slider 8 -8 0
10 -150187 -73940 -248863 0 1;
#N canvas 10 40 620 460 control 0;
#X obj 19 21 inlet;
#X obj 19 50 t b f;
#X obj 19 153 del 900;
#X obj 19 212 del 900;
#X obj 19 93 del 100;
#X obj 19 283 del 900;
#X obj 33 125 f;
#X obj 33 180 f;
#X obj 33 245 f;
#X obj 33 309 f;
#N canvas 10 40 620 460 bng 0;
#X obj 114 260 - 0;
#X obj 148 258 f;
#X obj 147 222 t f b;
#X obj 79 122 random 56789;
#X obj 150 165 random 9876;
#X obj 47 236 - 0;
#X obj 81 234 f;
#X obj 80 198 t f b;
#X obj 150 192 % 50;
#X obj 79 145 % 50;
#X obj 64 289 pack 0 0;
#X obj 85 53 t b b b;
#X obj 234 368 pack 0 0 0;
#X obj 250 29 metro 2000;
#X obj 445 122 random 555666;
#X obj 445 168 + 8;
#X obj 445 145 % 120;
#X obj 84 32 metro 100;
#X obj 234 261 random 1.67772e+07;
#X obj 266 283 random 1.67772e+07;
#X obj 299 315 random 1.67772e+07;
#X obj 84 11 inlet;
#X msg 64 312 \; nerv_bng delta \$1 \$2;
#X msg 234 390 \; nerv_bng color \$1 \$2 \$3;
#X msg 445 192 \; nerv_bng size \$1;
#X msg 250 51 \; nerv_bng bang;
#X obj 234 340 * -1;
#X obj 266 316 * -1;
#X obj 299 342 * -1;
#X connect 0 0 10 1;
#X connect 1 0 0 1;
#X connect 2 0 1 1;
#X connect 2 0 0 0;
#X connect 2 1 1 0;
#X connect 3 0 9 0;
#X connect 4 0 8 0;
#X connect 5 0 10 0;
#X connect 6 0 5 1;
#X connect 7 0 6 1;
#X connect 7 0 5 0;
#X connect 7 1 6 0;
#X connect 8 0 2 0;
#X connect 9 0 7 0;
#X connect 10 0 22 0;
#X connect 11 0 3 0;
#X connect 11 0 14 0;
#X connect 11 0 18 0;
#X connect 11 1 4 0;
#X connect 11 1 19 0;
#X connect 11 2 20 0;
#X connect 12 0 23 0;
#X connect 13 0 25 0;
#X connect 14 0 16 0;
#X connect 15 0 24 0;
#X connect 16 0 15 0;
#X connect 17 0 11 0;
#X connect 18 0 26 0;
#X connect 19 0 27 0;
#X connect 20 0 28 0;
#X connect 21 0 17 0;
#X connect 21 0 13 0;
#X connect 26 0 12 0;
#X connect 27 0 12 1;
#X connect 28 0 12 2;
#X restore 114 143 pd bng;
#N canvas 10 40 620 460 tgl 0;
#X obj 114 260 - 0;
#X obj 148 258 f;
#X obj 147 222 t f b;
#X obj 79 122 random 56789;
#X obj 150 165 random 9876;
#X obj 47 236 - 0;
#X obj 81 234 f;
#X obj 80 198 t f b;
#X obj 150 192 % 50;
#X obj 79 145 % 50;
#X obj 64 289 pack 0 0;
#X obj 85 53 t b b b;
#X obj 445 122 random 555666;
#X obj 445 168 + 8;
#X obj 445 144 % 120;
#X obj 85 31 metro 100;
#X obj 264 28 metro 1000;
#X obj 85 10 inlet;
#X msg 64 312 \; nerv_tgl delta \$1 \$2;
#X msg 226 322 \; nerv_tgl color \$1 \$2 \$3;
#X msg 445 192 \; nerv_tgl size \$1;
#X msg 264 51 \; nerv_tgl bang;
#X obj 226 298 pack 0 0 0;
#X obj 226 191 random 1.67772e+07;
#X obj 258 213 random 1.67772e+07;
#X obj 291 245 random 1.67772e+07;
#X obj 226 270 * -1;
#X obj 258 246 * -1;
#X obj 291 272 * -1;
#X connect 0 0 10 1;
#X connect 1 0 0 1;
#X connect 2 0 1 1;
#X connect 2 0 0 0;
#X connect 2 1 1 0;
#X connect 3 0 9 0;
#X connect 4 0 8 0;
#X connect 5 0 10 0;
#X connect 6 0 5 1;
#X connect 7 0 6 1;
#X connect 7 0 5 0;
#X connect 7 1 6 0;
#X connect 8 0 2 0;
#X connect 9 0 7 0;
#X connect 10 0 18 0;
#X connect 11 0 3 0;
#X connect 11 0 12 0;
#X connect 11 0 23 0;
#X connect 11 1 4 0;
#X connect 11 1 24 0;
#X connect 11 2 25 0;
#X connect 12 0 14 0;
#X connect 13 0 20 0;
#X connect 14 0 13 0;
#X connect 15 0 11 0;
#X connect 16 0 21 0;
#X connect 17 0 15 0;
#X connect 17 0 16 0;
#X connect 22 0 19 0;
#X connect 23 0 26 0;
#X connect 24 0 27 0;
#X connect 25 0 28 0;
#X connect 26 0 22 0;
#X connect 27 0 22 1;
#X connect 28 0 22 2;
#X restore 114 198 pd tgl;
#N canvas 10 40 620 460 hsl 0;
#X obj 114 260 - 0;
#X obj 148 258 f;
#X obj 147 222 t f b;
#X obj 79 122 random 56789;
#X obj 150 165 random 9876;
#X obj 47 236 - 0;
#X obj 81 234 f;
#X obj 80 198 t f b;
#X obj 150 192 % 50;
#X obj 79 145 % 50;
#X obj 64 289 pack 0 0;
#X obj 85 53 t b b b;
#X obj 445 122 random 555666;
#X obj 560 188 + 8;
#X obj 560 128 random 773322;
#X obj 445 208 pack 0 0;
#X obj 84 32 metro 100;
#X obj 561 155 % 30;
#X obj 445 183 + 20;
#X obj 446 149 % 110;
#X obj 254 305 metro 1000;
#X obj 254 327 random 846352;
#X obj 254 350 % 130;
#X obj 84 11 inlet;
#X msg 64 321 \; nerv_hsl delta \$1 \$2;
#X msg 254 373 \; nerv_hsl set \$1;
#X msg 445 231 \; nerv_hsl size \$1 \$2;
#X obj 245 202 pack 0 0 0;
#X obj 245 95 random 1.67772e+07;
#X obj 277 117 random 1.67772e+07;
#X obj 310 149 random 1.67772e+07;
#X obj 245 174 * -1;
#X obj 277 150 * -1;
#X obj 310 176 * -1;
#X msg 245 229 \; nerv_hsl color \$1 \$2 \$3;
#X connect 0 0 10 1;
#X connect 1 0 0 1;
#X connect 2 0 1 1;
#X connect 2 0 0 0;
#X connect 2 1 1 0;
#X connect 3 0 9 0;
#X connect 4 0 8 0;
#X connect 5 0 10 0;
#X connect 6 0 5 1;
#X connect 7 0 6 1;
#X connect 7 0 5 0;
#X connect 7 1 6 0;
#X connect 8 0 2 0;
#X connect 9 0 7 0;
#X connect 10 0 24 0;
#X connect 11 0 3 0;
#X connect 11 0 12 0;
#X connect 11 0 28 0;
#X connect 11 1 4 0;
#X connect 11 1 14 0;
#X connect 11 1 29 0;
#X connect 11 2 30 0;
#X connect 12 0 19 0;
#X connect 13 0 15 1;
#X connect 14 0 17 0;
#X connect 15 0 26 0;
#X connect 16 0 11 0;
#X connect 17 0 13 0;
#X connect 18 0 15 0;
#X connect 18 0 22 1;
#X connect 19 0 18 0;
#X connect 20 0 21 0;
#X connect 21 0 22 0;
#X connect 22 0 25 0;
#X connect 23 0 16 0;
#X connect 23 0 20 0;
#X connect 27 0 34 0;
#X connect 28 0 31 0;
#X connect 29 0 32 0;
#X connect 30 0 33 0;
#X connect 31 0 27 0;
#X connect 32 0 27 1;
#X connect 33 0 27 2;
#X restore 112 263 pd hsl;
#N canvas 10 40 620 460 vsl 0;
#X obj 114 260 - 0;
#X obj 148 258 f;
#X obj 147 222 t f b;
#X obj 79 122 random 56789;
#X obj 150 165 random 9876;
#X obj 47 236 - 0;
#X obj 81 234 f;
#X obj 80 198 t f b;
#X obj 150 192 % 50;
#X obj 79 145 % 50;
#X obj 64 289 pack 0 0;
#X obj 85 53 t b b b;
#X obj 445 122 random 555666;
#X obj 560 128 random 773322;
#X obj 445 208 pack 0 0;
#X obj 84 32 metro 100;
#X obj 241 299 metro 1000;
#X obj 240 325 random 846352;
#X obj 241 352 % 130;
#X obj 561 155 % 110;
#X obj 560 188 + 20;
#X obj 446 149 % 30;
#X obj 445 183 + 3;
#X obj 84 11 inlet;
#X msg 239 227 \; nerv_vsl color \$1 \$2 \$3;
#X msg 445 231 \; nerv_vsl size \$1 \$2;
#X msg 64 310 \; nerv_vsl delta \$1 \$2;
#X msg 241 376 \; nerv_vsl set \$1;
#X obj 239 203 pack 0 0 0;
#X obj 239 96 random 1.67772e+07;
#X obj 271 118 random 1.67772e+07;
#X obj 304 150 random 1.67772e+07;
#X obj 239 175 * -1;
#X obj 271 151 * -1;
#X obj 304 177 * -1;
#X connect 0 0 10 1;
#X connect 1 0 0 1;
#X connect 2 0 1 1;
#X connect 2 0 0 0;
#X connect 2 1 1 0;
#X connect 3 0 9 0;
#X connect 4 0 8 0;
#X connect 5 0 10 0;
#X connect 6 0 5 1;
#X connect 7 0 6 1;
#X connect 7 0 5 0;
#X connect 7 1 6 0;
#X connect 8 0 2 0;
#X connect 9 0 7 0;
#X connect 10 0 26 0;
#X connect 11 0 3 0;
#X connect 11 0 12 0;
#X connect 11 0 29 0;
#X connect 11 1 4 0;
#X connect 11 1 13 0;
#X connect 11 1 30 0;
#X connect 11 2 31 0;
#X connect 12 0 21 0;
#X connect 13 0 19 0;
#X connect 14 0 25 0;
#X connect 15 0 11 0;
#X connect 16 0 17 0;
#X connect 17 0 18 0;
#X connect 18 0 27 0;
#X connect 19 0 20 0;
#X connect 20 0 14 1;
#X connect 20 0 18 1;
#X connect 21 0 22 0;
#X connect 22 0 14 0;
#X connect 23 0 15 0;
#X connect 23 0 16 0;
#X connect 28 0 24 0;
#X connect 29 0 32 0;
#X connect 30 0 33 0;
#X connect 31 0 34 0;
#X connect 32 0 28 0;
#X connect 33 0 28 1;
#X connect 34 0 28 2;
#X restore 113 327 pd vsl;
#X connect 0 0 1 0;
#X connect 1 0 4 0;
#X connect 1 1 6 1;
#X connect 1 1 7 1;
#X connect 1 1 8 1;
#X connect 1 1 9 1;
#X connect 2 0 3 0;
#X connect 2 0 7 0;
#X connect 3 0 5 0;
#X connect 3 0 8 0;
#X connect 4 0 2 0;
#X connect 4 0 6 0;
#X connect 5 0 9 0;
#X connect 6 0 10 0;
#X connect 7 0 11 0;
#X connect 8 0 12 0;
#X connect 9 0 13 0;
#X restore 10 85 pd control;
#X connect 0 0 5 0;
#X restore 295 424 pd nervous;
#X floatatom 239 84 4 0 0 0 - - -;
#N canvas 10 40 620 460 properties 0;
#X obj 2 1 cnv 8 870 590 empty empty about_gui_properties 290 20 2
18 -225280 -1109 0;
#X text 12 62 "selectable dimensions(pix): size:" = square-size of
the;
#X text 10 35 "dimensions(pix): size:" = square-size of the gui-objects
;
#X text 10 48 "dimensions(pix)(pix): width: height:" = width & height
;
#X text 11 177 "visible_rectangle(pix)(pix): width: height:" = width
&;
#X text 11 104 "flash-time(ms)(ms): intrrpt:" = flash-interrupt-time
;
#X text 411 62 selectable top-left corner of my_canvas in pixels.;
#X text 415 35 in pixels.;
#X text 11 76 "flash-time(ms)(ms): hold:" = flash-hold-time in msec
=;
#X text 405 76 duration of activity \, if a bang-object was activated
;
#X text 400 48 of the rectangular gui-object in pixels.;
#X text 402 177 height of a visible \, deactivated rectangle in pixels.
;
#X text 14 224 "new&old" or "new-only" = the radiobutton-object changes
its;
#X text 441 224 state in 2 ways:;
#X text 198 237 "new&old"-mode: output sends previous state off \,
current;
#X text 596 237 state on \;;
#X text 197 250 "new-only"-mode: output sends only current state on.
;
#X text 14 280 "steady on click" or "jump on click" = the 2 slider-objects
;
#X text 481 322 immediately to new mouse-position \,;
#X text 12 413 "label: font: fontsize:" = font-properties of label.
;
#X text 15 429 "colors:" = a click on radiobuttons "background:" \,
;
#X text 370 429 "front-color:" or "label-color:" activates the color-fields
;
#X text 174 193 if "init"-mode is selected \, the object displays and
puts;
#X text 15 266 "number:" = number of buttons of a radiobutton.;
#X text 205 89 by any message-event or by a mouse-click.;
#X text 388 104 in msec = duration of inactivity \, if an already;
#X text 205 117 activated bang is activated once more.;
#X text 11 132 "output-range: left: right:" = hslider-bounds;
#X text 332 132 for input- as well as output-values.;
#X text 332 146 for input- as well as output-values.;
#X text 11 146 "output-range: bottom: top:" = vslider-bounds;
#X text 12 193 "init" or "no init" =;
#X text 571 193 out its previously saved value.;
#X text 174 208 if "no init"-mode is selected \, nothing will happen.
;
#X text 433 280 react to mouse-click in 2 ways:;
#X text 201 294 "steady on click"-mode: slider-knob stays in position
\,;
#X text 225 307 mouse and knob will move parallel \;;
#X text 200 322 "jump on click"-mode: slider-knob jumps;
#X text 224 338 positions of mouse and knob will be identical \;;
#X text 402 353 receive-object with the same send-symbol-name.;
#X text 11 368 "receive-symbol:" = a send-object with the same;
#X text 11 353 "send-symbol:" = an output-message can be received by
a;
#X text 347 368 symbol-name can send an input-message to the gui-object.
;
#X text 13 383 "label: name:" = visible name of a gui-object \;;
#X text 343 383 it will be moved together with the gui-object.;
#X text 12 397 "label: x_off: y_off:" = coordinates of the label in
;
#X text 382 397 relation to top-left corner of gui-object.;
#X text 207 444 on the right side which display the current color of
the;
#X text 605 444 item \;;
#X text 11 161 "non-zero-value: value:" = toggle has 2;
#X text 292 161 value-states: zero and this value.;
#X text 208 460 to select a different color \, click on one of the
30 small;
#X text 614 459 preset-color-buttons \;;
#X text 208 475 each color (background \, front \, label) can be tuned
by its;
#X text 235 490 RGB-values (0 .. 252 \, step 4) and a click on the
set-button.;
#X restore 287 361 pd properties;
#N canvas 10 40 620 460 move 0;
#X obj 0 0 cnv 8 460 120 empty empty how_to_move_gui_objects 100 18
2 20 -225271 -42246 0;
#X text 11 43 Select a gui-object \, then navigate the object by using
the 4 direction-keys: UP \, DOWN \, LEFT or RIGHT.;
#X text 12 70 If you press the SHIFT-Key too \, the object will move
10 times faster.;
#X restore 308 331 pd move;
#N canvas 10 40 620 460 dollar 0;
#X obj 0 0 cnv 8 560 160 empty empty the_dollar_thing 100 18 2 20 -261681
-123526 0;
#X text 10 39 if you want to send to \, or to receive from gui-objects
;
#X text 394 39 in abstractions \,;
#X text 36 52 you have to write into the property-entry:;
#X text 44 67 #1-label (instead of \$1-label).;
#X text 25 103 type #0-uniquelabel (instead of \$0-uniquelabel).;
#X text 9 88 if you want a unique send-receive-symbolname:;
#X restore 299 391 pd dollar;
#X obj 283 448 cnv 15 100 30 empty empty empty 20 12 2 20 -228992 -66577
0;
#N canvas 10 40 620 460 messages 0;
#X obj 1 1 cnv 8 870 640 empty empty about_gui_messages 200 20 2 18
-228992 -355 0;
#X text 366 99 in pixels.;
#X text 9 84 "size 15 128" = change width & height;
#X text 9 159 "flashtime 50 600" = change flash-interrupt- and flash-hold
;
#X text 424 160 -time of bng-object.;
#X text 9 174 "pos 150 170" = change the x-y-position of the top-left
;
#X text 400 173 corner of a gui-object in pixels \;;
#X text 139 188 "pos 0 0" is the top-left corner of your window \;
;
#X text 143 204 the positive directions of x- and y-axes are right
and down.;
#X text 12 415 "receive togui" = change receive-name of object.;
#X text 12 431 "label its_me" = change label-text of object.;
#X text 12 446 "label_pos 20 8" = change offset-coordinates of label-text.
;
#X text 12 461 "label_font 0 10" = change font and fontsize of label-text.
;
#X text 12 340 "steady 1" change slider-knob-behaviour on mouse-click.
;
#X text 13 522 "lin" = change scale-mode of slider to linear.;
#X text 14 537 "log" = change scale-mode of slider to logarithmical.
;
#X text 333 355 to output only the new state.;
#X text 273 84 of sliders and vu in pixels.;
#X text 12 477 "init 1" = change initial loadbang-mode of gui-objects
;
#X text 12 400 "send fromgui" = change send-name of gui-objects \,
;
#X text 12 325 "number 10" = change number of buttons of radio-button.
;
#X text 9 128 "range 0.1 10.0" = change slider-boundaries for;
#X text 344 128 input- as well as output-values.;
#X text 13 492 "set 64" = change only the inner state and display of
gui-;
#X text 11 33 all gui-objects (bng \, hsl \, vsl \, tgl \, rdb \, cnv
and vu);
#X text 9 113 "vis_size 800 600" = change width & height;
#X text 309 113 of visual rectangle of my_canvas in pixels.;
#X text 359 400 except vu and my_canvas.;
#X text 395 477 except vu and cnv.;
#X text 421 492 objects \, except bng and cnv \;;
#X text 85 47 understand input-messages which change their properties.
;
#X text 11 222 "delta 15 17" = move the gui-object in relation to its
;
#X text 397 222 current position (in pixels).;
#X text 333 371 to first release the previous button \,;
#X text 144 385 then output the state of the new button.;
#X text 12 371 "double_change" change radio-button-behaviour;
#X text 12 355 "single_change" change radio-button-behaviour;
#X text 147 507 no output will result.;
#X text 9 99 "size 15" = change square-size of rdb \, bng and tgl;
#X text 9 143 "nonzero 127.0" = change the nonzero-value of toggle.
;
#X text 15 552 "get_pos" = if my_canvas has a receive-name and a send-name
;
#X text 434 552 and you send the;
#X text 272 237 front- and label-color of object with one of 30 presets.
;
#X text 277 252 label-color of vu and my_canvas with one of 30 presets.
;
#X text 504 282 (0 .. 255);
#X text 558 568 coordinates.;
#X text 149 568 message "get_pos" to it \, you receive the current
x- and y-;
#X text 85 59 except cnv has no inlet \, so you have to send messages
;
#X text 85 71 to its receive-label (edit properties).;
#X text 11 237 "color 0 22 22" = change background- \,;
#X text 11 252 "color 0 22" = change background- and;
#X text 13 268 "color -1.67772e+07 (-1) -1" = change background- \,
;
#X text 364 267 (front-) and label-color of object with RGB-values.
;
#X text 149 283 the RGB-value will be calculated: -65536*RED-value
;
#X text 592 309 - 1;
#X text 422 309 - BLUE-value (0 .. 255);
#X text 394 296 - 256*GREEN-value (0 .. 255);
#X restore 294 453 pd messages;
#X obj 225 259 cnv 1 350 1 empty empty empty 20 12 2 20 -258699 -66577
0;
#X obj 4 308 cnv 1 268 1 empty empty empty 20 12 2 20 -258699 -66577
0;
#X obj 4 186 cnv 1 220 1 empty empty empty 20 12 2 20 -258699 -66577
0;
#X obj 225 151 cnv 1 350 1 empty empty empty 20 12 2 20 -258699 -66577
0;
#X obj 271 261 cnv 1 1 48 empty empty empty 20 12 2 20 -258699 -66577
0;
#X obj 232 308 cnv 1 1 200 empty empty empty 20 12 2 20 -258699 -66577
0;
#X obj 339 3 cnv 1 1 149 empty empty empty 20 12 2 20 -258699 -66577
0;
#X obj 398 260 cnv 1 1 310 empty empty empty 20 12 2 20 -258699 -66577
0;
#X obj 225 3 cnv 1 1 255 empty empty empty 20 12 2 20 -258699 -66577
0;
#X floatatom 276 84 4 0 0 0 - - -;
#X obj 239 43 tgl 15 0 empty dsp_tgl empty 20 8 0 10 -370 -262144 -1
0 1;
#N canvas 10 40 620 460 dsp 0;
#X msg 31 88 \; pd dsp \$1;
#X obj 20 199 cputime;
#X obj 20 178 t b b;
#X text 15 11 dsp;
#X text 48 439 (c) musil at iem.kug.ac.at;
#X text 90 452 IEM KUG;
#X text 59 65 1/0 = ON/OFF;
#X text 97 313 CPU-load;
#X obj 62 126 loadbang;
#X obj 20 126 sel 1;
#X text 65 464 graz \, austria 2001;
#X text 64 12 turn dsp-kernel on & off \,;
#X obj 20 240 t f f;
#X text 65 408 average;
#X text 177 405 peak;
#X obj 211 154 f;
#X obj 146 179 > -1;
#X obj 169 155 f -1;
#X obj 179 91 t f b f;
#X obj 146 204 sel 1;
#X obj 192 132 f -1;
#X obj 20 154 metro 500;
#X obj 20 220 * 0.2;
#X text 74 37 -dsp-load in %;
#X text 65 24 measure average- and peak-;
#X obj 20 315 * 100;
#X obj 20 360 int;
#X obj 20 338 + 0.499;
#X obj 20 383 * 0.01;
#X obj 246 207 r pd;
#X obj 246 231 route dsp;
#X text 245 318 to toggle input;
#X msg 246 283 \; dsp_tgl set \$1;
#X obj 247 341 r dsp_tgl;
#X obj 246 257 route float;
#X obj 146 227 del 3990;
#N canvas 10 40 620 460 once 0;
#X text 7 204 (c) musil at iem.kug.ac.at;
#X text 49 214 IEM KUG;
#X text 24 223 graz \, austria 2001;
#X text 8 6 once;
#X obj 19 150 bang;
#X obj 56 65 f 0;
#X text 59 7 only the first message passes through;
#X obj 19 127 t b a;
#X obj 19 100 spigot;
#X obj 119 63 f 1;
#X obj 119 41 loadbang;
#X obj 19 40 inlet;
#X obj 49 183 outlet;
#X connect 4 0 5 0;
#X connect 5 0 8 1;
#X connect 7 0 4 0;
#X connect 7 1 12 0;
#X connect 8 0 7 0;
#X connect 9 0 8 1;
#X connect 10 0 9 0;
#X connect 11 0 8 0;
#X restore 111 264 pd once;
#N canvas 10 40 620 460 1p1z 0;
#X text 7 315 (c) musil at iem.kug.ac.at;
#X text 52 325 IEM KUG;
#X obj 22 231 +;
#X text 8 6 1p1z;
#X text 24 334 graz \, austria 2001;
#X text 104 22 y[n] = a0*x[n] + a1*x[n-1] + b1*y[n-1];
#X text 169 53 a0;
#X text 25 34 x[n];
#X text 24 280 y[n];
#X text 209 53 a1;
#X text 249 53 b1;
#X obj 284 52 loadbang;
#X text 64 102 x[n-1];
#X obj 40 205 +;
#X obj 22 133 *;
#X obj 40 160 *;
#X obj 59 182 *;
#X text 82 143 y[n-1];
#X obj 284 72 t b b b;
#X obj 40 98 f;
#X obj 59 138 f;
#X obj 22 71 t f b b;
#X text 350 63 x[n-1]init;
#X text 429 102 y[n-1]init;
#X text 147 202 1.arg: <float> a0;
#X text 147 213 2.arg: <float> a1;
#X text 147 224 3.arg: <float> b1;
#X text 63 5 <float> control-IIR-filter 1.order;
#X obj 162 115 f 0.1;
#X obj 202 142 f 0;
#X obj 242 164 f 0.9;
#X obj 22 49 inlet;
#X obj 162 71 inlet;
#X obj 202 71 inlet;
#X obj 242 71 inlet;
#X obj 356 80 inlet;
#X obj 431 120 inlet;
#X obj 22 264 outlet;
#X connect 2 0 20 1;
#X connect 2 0 37 0;
#X connect 11 0 18 0;
#X connect 13 0 2 1;
#X connect 14 0 2 0;
#X connect 15 0 13 0;
#X connect 16 0 13 1;
#X connect 18 0 28 0;
#X connect 18 1 29 0;
#X connect 18 2 30 0;
#X connect 19 0 15 0;
#X connect 20 0 16 0;
#X connect 21 0 14 0;
#X connect 21 0 19 1;
#X connect 21 1 19 0;
#X connect 21 2 20 0;
#X connect 28 0 14 1;
#X connect 29 0 15 1;
#X connect 30 0 16 1;
#X connect 31 0 21 0;
#X connect 32 0 28 0;
#X connect 33 0 29 0;
#X connect 34 0 30 0;
#X connect 35 0 19 1;
#X connect 36 0 20 1;
#X restore 20 289 pd 1p1z 0.1 0 0.9;
#X obj 20 65 inlet;
#X obj 20 406 outlet;
#X obj 211 405 outlet;
#X connect 1 0 22 0;
#X connect 2 0 1 0;
#X connect 2 1 1 1;
#X connect 8 0 21 0;
#X connect 9 0 21 0;
#X connect 12 0 37 0;
#X connect 15 0 17 1;
#X connect 15 0 40 0;
#X connect 16 0 19 0;
#X connect 17 0 16 1;
#X connect 18 0 16 0;
#X connect 18 1 17 0;
#X connect 18 2 15 1;
#X connect 19 0 15 0;
#X connect 19 0 35 0;
#X connect 20 0 17 1;
#X connect 21 0 2 0;
#X connect 22 0 12 0;
#X connect 22 0 18 0;
#X connect 25 0 27 0;
#X connect 26 0 28 0;
#X connect 27 0 26 0;
#X connect 28 0 39 0;
#X connect 29 0 30 0;
#X connect 30 0 34 0;
#X connect 34 0 32 0;
#X connect 35 0 20 0;
#X connect 37 0 25 0;
#X connect 38 0 0 0;
#X connect 38 0 9 0;
#X restore 239 63 pd dsp;
#X text 238 99 mean;
#X text 279 100 peak;
#X text 289 63 % cpu;
#X text 283 305 my_canvas = cnv;
#X text 312 172 radiobutton = rdb;
#X text 271 350 R;
#X text 270 370 E;
#X text 270 389 A;
#X text 270 409 D;
#X text 270 428 M;
#X text 269 447 E;
#X connect 17 0 26 0;
#X connect 21 0 18 0;
#X connect 21 0 16 0;
#X connect 21 1 34 0;
#X connect 21 2 19 0;
#X connect 22 0 21 0;
#X connect 27 0 29 0;
#X connect 54 0 55 0;
#X connect 55 0 38 0;
#X connect 55 1 53 0;

--- NEW FILE: 22.subpatches.pd ---
#N canvas 10 40 624 464 12;
#X obj 10 10 cnv 15 400 40 empty empty subpatches 20 12 0 24 -228992
-66577 0;
#X text 12 69 Encapsulation is a key concept in Pd programming. Each
object is an idea that is bundled up into an easy-to-use package. You
should make encapsulated your ideas. Subpatches are the easiest way
to do this.;
#N canvas 10 40 620 460 what's 0;
#X obj 140 91 loadbang;
#X obj 139 149 float;
#X obj 198 149 + 1;
#X floatatom 139 221 5 0 0 0 - - -;
#X obj 30 149 delay 1000;
#X text 39 39 just counting away in here...;
#X connect 0 0 1 0;
#X connect 1 0 2 0;
#X connect 1 0 3 0;
#X connect 1 0 4 0;
#X connect 2 0 1 1;
#X connect 4 0 1 0;
#X restore 97 190 pd what's in here?;
#X text 26 414 A subpatch is part of the same file \, its just a way
of organizing the logic of a program.;
#X text 19 271 To make a subpatch \, create an object that started
with the word "pd" \, then type anything after that to identify it.
Try making one below:;
#X text 179 214 ^-- right-click here and select "Open";

--- NEW FILE: 14.right_to_left_order.pd ---
#N canvas 10 40 628 468 12;
#X obj 165 185 bng 25 250 50 0 empty empty empty -2 -8 1 10 -24198
-1 -1;
#X obj 165 225 trigger bang bang bang;
#X msg 381 264 1;
#X msg 273 264 2;
#X msg 165 264 3;
#X obj 273 340 print ORDER;
#X obj 8 10 cnv 15 400 40 empty empty right_to_left_order 20 12 0 24
-228992 -66577 0;
#X text 212 188 <-- click here \,;
#X text 10 65 In Pd \, you read a patch from right to left \, from
top to bottom. Objects also output from right to left;
#X obj 32 412 pddp/pddplink http://crca.ucsd.edu/~msp/Pd_documentation/x2.htm#s3.3
;
#X text 97 369 then check the Pd window to see the order;
#X text 11 119 The [trigger] object is used to enforce execution order.
If you need things to run in a certain sequence \, then use a [trigger].
;
#X connect 0 0 1 0;
#X connect 1 0 4 0;
#X connect 1 1 3 0;
#X connect 1 2 2 0;
#X connect 2 0 5 0;
#X connect 3 0 5 0;
#X connect 4 0 5 0;

--- 21.subpatches.pd DELETED ---

--- 15.depth_first.pd DELETED ---

--- NEW FILE: 21.selectors.pd ---
#N canvas 10 40 628 468 12;
#X obj 8 -33 cnv 15 400 40 empty empty selectors 20 12 0 24 -228992
-66577 0;
#N canvas 10 40 620 460 object 0;
#X obj 79 36 inlet;
#X obj 86 270 outlet;
#X obj 308 267 outlet;
#X obj 71 131 route output-left output-right;
#X connect 0 0 3 0;
#X connect 3 0 1 0;
#X connect 3 1 2 0;
#X restore 51 224 pd object;
#X floatatom 51 277 5 0 0 0 - - -;
#X floatatom 136 277 5 0 0 0 - - -;
#X msg 83 178 output-right 309;
#X msg 50 128 output-left 8675;
#X text 9 24 Every message has a selector. The selector is the first
element in the message. It tells the object which receives that message
what to do with it. A selector is basically like a command or a function.
;
#X text 22 319 Here's the technical definition:;
#X text 220 129 <-- "output-left" is the selector;
#X text 250 179 <-- "output-right" is the selector;
#X text 22 350 The selector is a symbolic atom \, which is a non-numeric
string with no white space \, semicolons \, or commas. In the case
of messages whose first element is a numeric atom \, the "float" selector
is implied.;
#X connect 1 0 2 0;
#X connect 1 1 3 0;
#X connect 4 0 1 0;
#X connect 5 0 1 0;

--- NEW FILE: 26.EXERCISE-hmmm.pd ---
#N canvas 10 40 624 464 12;
#N canvas 10 40 620 460 guts 0;
#X msg 280 45 \; pd filename exercise-patch.pd /tmp \; #N canvas \;
#X pop 1 \;;
#X obj 300 328 s pd-exercise-patch.pd;
#X msg 329 216 obj 50 103 osc~;
#X msg 330 240 obj 50 153 dac~;
#X obj 103 17 inlet;
#X msg 320 155 clear;
#X obj 276 7 loadbang;
#X obj 259 108 delay 1000;
#X obj 259 129 t b b b b;
#X msg 52 155 connect 0 0 1 0;
#X msg 37 216 connect 1 0 2 0;
#X msg 31 266 connect 1 0 2 1;
#X msg 292 27 \; pd dsp 1;
#X obj 112 108 t b b;
#X msg 87 52 bang;
#X obj 34 134 delay 2000;
#X obj 21 187 delay 2000;
#X obj 10 245 delay 2000;
#N canvas 10 40 620 460 connection-effect 0;
#X obj 186 312 dac~;
#X obj 72 233 osc~ 1000;
#X obj 138 266 *~;
#X obj 253 259 *~;
#X obj 204 236 osc~ 800;
#X obj 153 236 line~;
#X obj 183 7 inlet;
#X msg 184 31 bang;
#X obj 187 61 t b b;
#X obj 168 95 delay 10;
#X msg 201 125 0 10;
#X obj 276 218 line~;
#X obj 276 191 pipe 30;
#X msg 241 125 1 10;
#X connect 1 0 2 0;
#X connect 2 0 0 0;
#X connect 3 0 0 1;
#X connect 4 0 3 0;
#X connect 5 0 2 1;
#X connect 6 0 7 0;
#X connect 7 0 8 0;
#X connect 8 0 9 0;
#X connect 8 1 13 0;
#X connect 9 0 10 0;
#X connect 10 0 5 0;
#X connect 10 0 12 0;
#X connect 11 0 3 1;
#X connect 12 0 11 0;
#X connect 13 0 5 0;
#X connect 13 0 12 0;
#X restore 22 365 pd connection-effect;
#X msg 256 453 floatatom 50 50 5 0 0 0;
#X msg 327 184 obj 50 50 hsl;
#X obj 197 18 inlet;
#X msg 205 50 bang;
#X connect 2 0 1 0;
#X connect 3 0 1 0;
#X connect 4 0 14 0;
#X connect 5 0 1 0;
#X connect 6 0 0 0;
#X connect 6 0 7 0;
#X connect 6 0 12 0;
#X connect 7 0 8 0;
#X connect 8 0 3 0;
#X connect 8 1 2 0;
#X connect 8 2 20 0;
#X connect 8 3 5 0;
#X connect 9 0 1 0;
#X connect 10 0 1 0;
#X connect 11 0 1 0;
#X connect 13 0 15 0;
#X connect 13 1 8 0;
#X connect 14 0 13 0;
#X connect 15 0 16 0;
#X connect 15 0 9 0;
#X connect 15 0 18 0;
#X connect 16 0 17 0;
#X connect 16 0 10 0;
#X connect 16 0 18 0;
#X connect 17 0 11 0;
#X connect 17 0 18 0;
#X connect 20 0 1 0;
#X connect 21 0 22 0;
#X connect 22 0 8 0;
#X restore 220 269 pd guts;
#X msg 220 242 solve;
#X text 19 64 In the exercise patch \, connect the existing objects
so that you can control the frequency of the oscillator and hear the
resulting sound.;
#X text 22 131 If you want help \, click the solve message below.;
#X msg 285 242 try again;
#X obj 11 10 cnv 15 600 40 empty empty EXERCISE-make_your_first_patch
20 12 0 24 -262131 -66577 0;
#X connect 1 0 0 0;
#X connect 4 0 0 1;

--- 16.inlets_and_outlets.pd DELETED ---

--- NEW FILE: 29.sliders.pd ---
#N canvas 10 40 624 464 12;
#X obj 10 10 cnv 15 400 40 empty empty sliders 20 12 0 24 -228992 -66577
0;
#X obj 120 105 vsl 15 128 0 127 0 0 empty empty empty 0 -8 0 8 -262144
-1 -1 0 1;
#X floatatom 120 247 5 0 0 0 - - -;
#X obj 338 106 vsl 15 128 0 1 0 0 empty empty empty 0 -8 0 8 -262144
-1 -1 0 1;
#X floatatom 338 248 5 0 0 0 - - -;
#X floatatom 253 423 5 0 0 0 - - -;
#X msg 356 360 1000;
#X msg 271 360 100;
#X msg 227 360 60;
#X msg 313 360 127;
#X text 9 61 Sliders are generally useful for controlling things over
a range of numbers \, like a color or loudness.;
#X text 144 130 by default \,;
#X text 144 152 they range;
#X text 142 174 from 0 to 127;
#X text 363 138 0 to 1 is a;
#X text 361 160 commonly used;
#X text 361 181 range;
#X obj 257 400 hsl 128 15 0 127 0 0 empty empty empty -2 -6 0 8 -262144
-1 -1 0 1;
#X msg 185 360 0;
#X msg 140 360 -23;
#X text 16 276 They act very similarly to number boxes \, except they
show their value graphically rather that with numbers. One difference
is that sliders always limit the range of numbers that can pass thru:
;
#X obj 234 424 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
-1;
#X connect 1 0 2 0;
#X connect 3 0 4 0;
#X connect 6 0 17 0;
#X connect 7 0 17 0;
#X connect 8 0 17 0;
#X connect 9 0 17 0;
#X connect 17 0 5 0;
#X connect 17 0 21 0;
#X connect 18 0 17 0;
#X connect 19 0 17 0;

--- 29.guis.pd DELETED ---

--- 18.atoms.pd DELETED ---

--- NEW FILE: 13.building_messages.pd ---
#N canvas 10 40 628 453 12;
#X obj 10 10 cnv 15 400 40 empty empty building_messages 20 12 0 24
-228992 -66577 0;
#X msg 86 180;
#X msg 72 126 set word;
#X obj 87 213 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
-1;
#X msg 93 149 set another;
#X text 14 65 You can build messages programmatically in message boxes.
The basic operation is the [set( message:;
#X text 18 381 When using the [set( \, [add( \, and [add2( messages
\, the message box that you are building does not output anything.
Instead it waits for a bang or a mouse click.;
#X msg 53 288 add my message;
#X msg 61 337;
#X text 18 238 [add( puts a complete message in the message box \,
terminated by a semi-colon \, while [add2( just the items:;
#X msg 303 288 add2 my;
#X msg 396 288 add2 message;
#X msg 316 342;
#X msg 254 288 set;
#X msg 30 127 set;
#X text 299 120 [set( alone resets:;
#X msg 364 155 set;
#X msg 364 189 blah blah blah;
#X msg 69 312 set;
#X connect 1 0 3 0;
#X connect 2 0 1 0;
#X connect 4 0 1 0;
#X connect 7 0 8 0;
#X connect 10 0 12 0;
#X connect 11 0 12 0;
#X connect 13 0 12 0;
#X connect 14 0 1 0;
#X connect 16 0 17 0;
#X connect 18 0 8 0;

--- 25.EXERCISE-hmmm.pd DELETED ---

--- 20.selectors.pd DELETED ---

--- 27.properties.pd DELETED ---

--- NEW FILE: 18.storage_objects.pd ---
#N canvas 10 40 624 464 12;
#X obj 277 25 import iemlib;
#X obj 122 89 symbol;
#X obj 63 89 bang;
#X obj 303 89 f;
#X obj 208 89 float;
#X text 268 89 aka;
#X text 36 384 If a storage object receives a value on the left inlet
\, then it outputs that value immediately in addition to storing it.
;
#X text 35 254 If a storage object receives a value on the right inlet
\, then it stores that value.;
#X text 28 123 If you bang the left inlet of a storage object \, it
outputs its stored value.;
#X obj 170 334 float;
#X msg 195 302 123;
#X obj 124 478 float;
#X msg 170 452 123;
#X msg 124 453 432;
#X msg 237 301 321;
#X floatatom 170 358 5 0 0 0 - - -;
#X floatatom 185 228 5 0 0 0 - - -;
#X floatatom 124 507 5 0 0 0 - - -;
#X obj 12 13 cnv 15 400 40 empty empty storage_objects 20 12 0 24 -228992
-66577 0;
#X obj 185 199 float 5.5;
#X text 98 58 A storage object stores data.;
#X obj 362 89 list;
#X obj 299 198 symbol yoyo;
#X symbolatom 299 227 10 0 0 0 - - -;
#X msg 185 171 bang;
#X msg 299 170 bang;
#X msg 132 303 bang;
#X obj 320 329 symbol yoyo;
#X symbolatom 320 358 10 0 0 0 - - -;
#X msg 320 301 bang;
#X msg 70 453 bang;
#X msg 379 300 symbol one;
#X msg 492 300 symbol two;
#X obj 427 89 any;
#X obj 477 89 pointer;
#X connect 9 0 15 0;
#X connect 10 0 9 1;
#X connect 11 0 17 0;
#X connect 12 0 11 1;
#X connect 13 0 11 0;
#X connect 14 0 9 1;
#X connect 19 0 16 0;
#X connect 22 0 23 0;
#X connect 24 0 19 0;
#X connect 25 0 22 0;
#X connect 26 0 9 0;
#X connect 27 0 28 0;
#X connect 29 0 27 0;
#X connect 30 0 11 0;
#X connect 31 0 27 1;
#X connect 32 0 27 1;

--- 24.Example-all_just_data.pd DELETED ---

--- NEW FILE: 17.inlets_and_outlets.pd ---
#N canvas 14 57 624 464 12;
#N canvas 10 40 620 460 object 0;
#X obj 175 99 inlet;
#X obj 174 206 outlet;
#X text 14 39 this object does nothing but pass data thru;
#X connect 0 0 1 0;
#X restore 366 208 pd object;
#N canvas 10 40 628 468 another 0;
#X obj 17 94 inlet;
#X obj 471 382 outlet;
#X obj 16 386 print;
#X msg 16 354 hi from inside [pd another object]!;
#X obj 16 182 trigger bang anything;
#X text 9 28 This object first passes the data thru \, then says hi
in the Pd window.;
#X connect 0 0 4 0;
#X connect 3 0 2 0;
#X connect 4 0 3 0;
#X connect 4 1 1 0;
#X restore 365 254 pd another object;
#X obj 12 13 cnv 15 400 40 empty empty inlets_and_outlets 20 12 0 24
-228992 -66577 0;
#X text 14 76 When making your own objects \, you can make your own
inlets and outlets \, whether in a subpatch or an abstraction.;
#X msg 333 162 bang;
#X obj 327 297 bng 25 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
-1;
#X obj 30 154 cnv 15 220 180 empty empty empty 20 12 0 14 -233017 -66577
0;
#X obj 43 177 inlet;
#X obj 43 283 outlet;
#X text 98 177 take in data;
#X text 60 227 do some stuff here;
#X text 113 282 output data;
#X msg 391 161 what's in here?;
#X obj 373 301 print;
#X connect 0 0 1 0;
#X connect 1 0 5 0;
#X connect 1 0 13 0;
#X connect 4 0 0 0;
#X connect 7 0 8 0;
#X connect 12 0 0 0;





More information about the Pd-cvs mailing list