Update of /cvsroot/pure-data/doc/tutorials/intro In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv1356
Added Files: 01.hello_world.pd 02.basic_elements.pd 03.getting_help.pd 04.edit_mode.pd 05.objects.pd 06.connections.pd 07.messages.pd 08.EXERCISE-make_your_first_patch.pd 09.bang.pd 10.event_driven_processing.pd 11.counters.pd 12.hot_and_cold_inlets.pd 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 30.gui_objects.pd Removed Files: 00.hello_world.pd 01.basic_elements.pd 02.getting_help.pd 03.edit_mode.pd 04.objects.pd 05.connections.pd 06.messages.pd 07.EXERCISE-make_your_first_patch.pd 08.bang.pd 09.event_driven_processing.pd 10.counters.pd 11.hot_and_cold_inlets.pd 12.right_to_left_order.pd 13.ordering_messages.pd 14.depth_first.pd 15.inlets_and_outlets.pd 15.storage_objects.pd 16.atoms.pd 17.atomic_messages.pd 18.selectors.pd 19.subpatches.pd 20.inlets_and_outlets.pd 21.outlet_order.pd 22.Example-all_just_data.pd 23.EXERCISE-hmmm.pd 24.turning_on_and_off.pd 25.properties.pd 26.sliders.pd 27.guis.pd 28.gui_objects.pd Log Message: wrote script to reorder patches by first number in filename
--- 24.turning_on_and_off.pd DELETED ---
--- 22.Example-all_just_data.pd DELETED ---
--- NEW FILE: 06.connections.pd --- #N canvas 10 40 628 468 12; #X text 12 132 Pd patches are always running and changes take effect immediately.; #X floatatom 25 277 5 0 0 0 - - -; #X floatatom 25 341 5 0 0 0 - - -; #X obj 24 179 tgl 30 0 empty empty start 2 15 1 12 -24198 -1 -1 1 1 ; #X obj 24 221 metro 100; #X obj 24 248 random 100; #X text 70 183 <-- click here to start; #X text 58 299 connect by clicking on the outlet of the top number box , then drag and drop on the inlet of the bottom number box; #X text 28 299 ^--; #X obj 8 10 cnv 15 400 40 empty empty connections 20 12 0 24 -228992 -66577 0; #X obj 39 418 pddp/pddplink http://crca.ucsd.edu/~msp/Pd_documentation/x2.htm#s2.6 ; #X text 34 372 Disconnect the cable by clicking on it to highlight it , then press "backspace" on a PC , or "delete" on a Mac.; #X text 11 53 One path for objects to communicate is thru connections , called cords or cables. Connections are always made from the inlet to the outlet since that is the direction data flows in Pd.; #X text 195 238 next , make sure you are in edit mode!; #X connect 3 0 4 0; #X connect 4 0 5 0; #X connect 5 0 1 0;
--- NEW FILE: 23.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;
--- 16.atoms.pd DELETED ---
--- 11.hot_and_cold_inlets.pd DELETED ---
--- NEW FILE: 13.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;
--- 07.EXERCISE-make_your_first_patch.pd DELETED ---
--- NEW FILE: 14.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;
--- 18.selectors.pd DELETED ---
--- NEW FILE: 26.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: 07.messages.pd --- #N canvas 10 40 624 464 12; #X obj 10 10 cnv 15 400 40 empty empty messages 20 12 0 24 -228992 -66577 0; #X msg 354 162 say hello; #N canvas 10 40 620 460 myObject 0; #X obj 70 24 inlet; #X obj 68 243 outlet; #X obj 76 86 route say; #X obj 167 125 bang; #X obj 57 130 symbol; #X msg 167 152 symbol ?#$%!@$^!; #X connect 0 0 2 0; #X connect 2 0 4 0; #X connect 2 1 3 0; #X connect 3 0 5 0; #X connect 4 0 1 0; #X connect 5 0 1 0; #X restore 354 250 pd myObject; #X symbolatom 355 306 10 0 0 0 - - -; #X obj 132 249 + 1; #X msg 131 161 1; #X floatatom 131 306 5 0 0 0 - - -; #X text 183 161 <-- messages -->; #X text 187 250 <-- objects -->; #X msg 370 197 do as I say!; #X obj 51 414 pddp/pddplink http://crca.ucsd.edu/~msp/Pd_documentation/x2.htm#s3 ; #X text 20 64 Objects respond to messages received on their inlets , and output messages on their outlets. These messages can be anything from data to commands.; #X text 124 128 data; #X text 359 127 commands; #X text 19 341 All communication within Pd is in the form of messages , including when the user is controlling the program.; #X msg 143 189 2; #X connect 1 0 2 0; #X connect 2 0 3 0; #X connect 4 0 6 0; #X connect 5 0 4 0; #X connect 9 0 2 0; #X connect 15 0 4 0;
--- NEW FILE: 19.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;
--- 26.sliders.pd DELETED ---
--- NEW FILE: 29.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@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@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@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@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;
--- 23.EXERCISE-hmmm.pd DELETED ---
--- 21.outlet_order.pd DELETED ---
--- NEW FILE: 04.edit_mode.pd --- #N canvas 10 40 620 460 12; #X obj 8 10 cnv 15 400 40 empty empty edit_mode 20 12 0 24 -228992 -66577 0; #X text 19 67 There are two modes when editing a patch: play and edit. In order to edit an existing patch , or create new boxes , you need to switch to edit mode.; #X text 20 131 To switch to edit mode , go to the "Edit" menu and select "Edit mode". Now try putting down some boxes on this canvas. You can select which one from the "Put" menu.; #X text 26 347 To stop editing , go to the "Edit" menu again , and select "Edit mode" again.; #X text 26 404 You can also use the key command Ctrl-E (Cmd-E on Mac OS X) to switch between edit and play mode.;
--- NEW FILE: 17.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;
--- 17.atomic_messages.pd DELETED ---
--- 10.counters.pd DELETED ---
--- 00.hello_world.pd DELETED ---
--- 15.inlets_and_outlets.pd DELETED ---
--- NEW FILE: 22.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;
--- 08.bang.pd DELETED ---
--- 05.connections.pd DELETED ---
--- 06.messages.pd DELETED ---
--- 19.subpatches.pd DELETED ---
--- 28.gui_objects.pd DELETED ---
--- NEW FILE: 21.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";
--- 14.depth_first.pd DELETED ---
--- 15.storage_objects.pd DELETED ---
--- 13.ordering_messages.pd DELETED ---
--- 09.event_driven_processing.pd DELETED ---
--- NEW FILE: 11.counters.pd --- #N canvas 10 40 624 464 12; #X obj 10 10 cnv 15 400 40 empty empty counters 20 12 0 24 -228992 -66577 0; #X obj 156 362 cnv 15 100 60 empty empty empty 20 12 0 14 -261039 -66577 0; #X obj 174 382 f; #X obj 209 382 + 1; #X obj 157 219 float; #X floatatom 120 246 5 0 0 0 - - -; #X msg 121 137 1; #X obj 120 219 +; #X msg 157 189 0; #X msg 133 160 -1; #X text 167 138 increment; #X text 172 161 decrement; #X text 195 187 reset; #X floatatom 346 244 5 0 0 0 - - -; #X msg 404 180 0; #X text 395 137 increment; #X obj 346 216 float; #X obj 404 216 + 1; #X msg 347 138 bang; #X text 278 377 DANGER! infinite loop!; #X text 20 78 Counters are used a lot when programming Pd. Here are two examples of simple counters that you will see frequently.; #X text 442 180 reset; #X text 20 276 Pd is designed to be as flexible and open as possible. This means that it will let you crash your computer. For example , never start a counter like this , it will crash your computer!; #X connect 2 0 3 0; #X connect 3 0 2 0; #X connect 4 0 7 1; #X connect 6 0 7 0; #X connect 7 0 4 0; #X connect 7 0 5 0; #X connect 8 0 4 0; #X connect 8 0 7 0; #X connect 9 0 7 0; #X connect 14 0 17 0; #X connect 14 0 16 0; #X connect 16 0 13 0; #X connect 16 0 17 0; #X connect 17 0 16 1; #X connect 18 0 16 0;
--- NEW FILE: 16.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;
--- NEW FILE: 15.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;
--- NEW FILE: 08.EXERCISE-make_your_first_patch.pd --- #N canvas 10 40 624 464 12; #X obj 8 10 cnv 15 600 40 empty empty EXERCISE-make_your_first_patch 20 12 0 24 -262131 -66577 0; #X text 15 71 Its time to make your first patch. Follow the instructions on the right:; #X text 166 196 2- make a new object box , in it , type: symbol; #X text 166 235 3- make a new symbol box; #X text 166 275 4- connect the message box to the object box; #X text 166 315 5- connect the object box to the symbol box; #X text 165 353 6- click the message box , and viola!; #X text 166 159 1- make a message box , in it , type: servus;
--- NEW FILE: 12.hot_and_cold_inlets.pd --- #N canvas 10 40 628 468 12; #X obj 19 252 +; #X floatatom 19 281 5 0 0 0 - - -; #X msg 19 188 1; #X msg 36 224 5; #X text 11 54 For most objects in Pd , the leftmost inlet is the "hot" inlet. This means that it will output something whenever it receives data on the "hot" inlet.; #X text 75 224 2) click this and there will be no new output; #X obj 181 412 +; #X floatatom 181 441 5 0 0 0 - - -; #X msg 84 337 1; #X text 15 305 Try a number of different combinations to see for yourself: ; #X text 215 405 <-- "cold" inlet; #X text 29 405 "hot" inlet -->; #X msg 124 337 2; #X msg 164 337 3; #X msg 234 337 4; #X msg 274 337 5; #X msg 314 337 6; #X text 17 462 Notice that the number is stored in the "cold" inlet until you change it. For example , if you click [4( , then click [1( , [2( , and [3( , you will see that 1 , 2 , and 3 are all added to 4; #X text 75 192 1) click this first , and [+ ] immediately outputs a 1; #X obj 6 8 cnv 15 400 40 empty empty hot_and_cold_inlets 20 12 0 24 -228992 -66577 0; #X text 10 111 All other inlets are generally "cold" inlets , which just store the data. When the object receives input on the "hot" inlet , the object with read the data from all the inlets and do its thing. ; #X text 75 256 3) now click the [1( message box; #X connect 0 0 1 0; #X connect 2 0 0 0; #X connect 3 0 0 1; #X connect 6 0 7 0; #X connect 8 0 6 0; #X connect 12 0 6 0; #X connect 13 0 6 0; #X connect 14 0 6 1; #X connect 15 0 6 1; #X connect 16 0 6 1;
--- 25.properties.pd DELETED ---
--- NEW FILE: 28.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;
--- 27.guis.pd DELETED ---
--- NEW FILE: 18.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: 09.bang.pd --- #N canvas 10 40 636 476 12; #X obj 18 191 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 -1; #X msg 18 269 bang; #X text 40 189 <--bang button; #X text 62 270 <--you can also send "bang" using a message box; #X text 14 137 Here , this toggle changes state when it receives a bang:; #X obj 8 10 cnv 15 400 40 empty empty bang 20 12 0 24 -228992 -66577 0; #X text 13 79 In Pd , "bang" means "do it". What that "it" is depends on the object receiving the bang.; #X msg 73 349 bang; #X obj 73 387 print word; #X obj 132 352 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 -1; #X obj 18 299 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 -1; #X obj 18 221 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 -1; #X msg 279 324 bang; #X obj 289 398 pddp/print_long; #X msg 279 350 send me!; #X obj 395 320 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 -1; #X msg 394 349 234; #X connect 0 0 11 0; #X connect 1 0 10 0; #X connect 7 0 8 0; #X connect 9 0 8 0; #X connect 12 0 14 0; #X connect 14 0 13 0; #X connect 15 0 16 0; #X connect 16 0 13 0;
--- 02.getting_help.pd DELETED ---
--- 04.objects.pd DELETED ---
--- NEW FILE: 01.hello_world.pd --- #N canvas 10 40 632 472 12; #X msg 235 167 Hello world!; #X text 238 216 <-- connection , aka "cord"; #X text 17 32 In Pd , programming is done with boxes which are connected together. The boxes have "inlets" and "outlets" , where they are connected. ; #X text 153 265 inlet-->; #X text 154 158 inlet-->; #X text 144 178 outlet-->; #X obj 234 265 print; #X text 289 266 <-- object box; #X text 73 319 Now look in the Pd window to see the result.; #X text 359 168 <-- message box; #X text 101 111 Click on the box with "Hello world!" in it:; #X text 16 363 Whenever you see the [print] box , that means that stuff will be printed to the Pd window.; #X obj 133 415 print; #X text 198 415 prints to the Pd window.; #X connect 0 0 6 0;
--- 03.edit_mode.pd DELETED ---
--- NEW FILE: 02.basic_elements.pd --- #N canvas 10 40 620 460 12; #X obj 36 141; #X obj 34 91 float; #X msg 34 187 message; #X floatatom 34 236 5 0 0 0 - - -; #X symbolatom 34 285 10 0 0 0 - - -; #X text 33 334 comment; #X text 54 28 comment; #X obj 12 13 cnv 15 400 40 empty empty Basic_Elements 20 12 0 24 -228992 -66577 0; #X text 153 333 comment (like the rest of this text); #X text 151 91 object box; #X text 151 141 empty object box; #X text 152 232 number box (click and drag/type); #X text 152 284 symbol box (click and type); #X text 152 187 message box (click);
--- NEW FILE: 05.objects.pd --- #N canvas 10 40 624 464 12; #X obj 28 151 float; #X text 10 61 The fundamental building block of a Pd program is the object. Each object is itself like a tiny program that does a very specific thing.; #X text 11 124 These are all objects which store data:; #X obj 96 151 symbol; #X obj 174 151 list; #X text 13 188 With most objects , you can read the name of the object in the object box:; #X obj 16 230 moses; #X obj 92 230 select; #X obj 176 230 route; #X obj 251 230 trigger; #X text 11 264 GUI objects convert themselves into a GUI element , usually some kind of control. In the process , they often hide the text name of the object:; #X obj 27 358 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 -1; #X text 15 329 [bng]; #X obj 108 355 vsl 15 80 0 127 0 0 empty empty empty 0 -8 0 8 -262144 -1 -1 0 1; #X text 85 329 [vslider]; #X text 227 331 [hslider]; #X obj 197 353 hsl 128 15 0 127 0 0 empty empty empty -2 -6 0 8 -262144 -1 -1 0 1; #X obj 393 351 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 1; #X text 382 326 [tgl]; #X obj 8 10 cnv 15 400 40 empty empty objects 20 12 0 24 -228992 -66577 0;
--- 12.right_to_left_order.pd DELETED ---
--- NEW FILE: 25.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;
--- NEW FILE: 20.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: 27.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;
--- 01.basic_elements.pd DELETED ---
--- NEW FILE: 03.getting_help.pd --- #N canvas 10 40 620 460 12; #X msg 179 150; #X obj 61 150 trigger; #X text 54 28 comment; #X obj 12 13 cnv 15 400 40 empty empty Getting_Help 20 12 0 24 -228992 -66577 0; #X text 26 291 You can right-click on the canvas to get a list of the core Pd objects. A more complete list is in the Help Browser , available under the Help menu.; #X text 58 187 object; #X text 179 186 message; #X floatatom 275 150 5 0 0 0 - - -; #X text 276 182 number box; #X symbolatom 403 151 10 0 0 0 - - -; #X text 406 182 symbol box; #X text 21 75 Right-click on anything and select "Help" , and a help patch will pop up.;
--- NEW FILE: 24.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;
--- 20.inlets_and_outlets.pd DELETED ---
--- NEW FILE: 10.event_driven_processing.pd --- #N canvas 10 40 628 468 12; #X obj 10 10 cnv 15 400 40 empty empty event_driven_processing 20 12 0 24 -228992 -66577 0; #X text 18 65 Message processing is driven by events , nothing happens if there no events. There is nothing happening in the patches below until you click on the messages (the bangs at the bottom illustrate that):; #X obj 113 324 tgl 20 0 empty empty empty 0 -6 0 8 -24198 -1 -1 1 1 ; #X obj 113 372 float; #X obj 170 372 + 1; #X floatatom 113 397 5 0 0 0 - - -; #X obj 113 418 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 -1; #X obj 113 348 metro 1000; #X obj 384 316 bng 20 250 50 0 empty empty empty 0 -6 0 8 -24198 -1 -1; #X obj 385 353 float; #X obj 442 353 + 1; #X floatatom 385 378 5 0 0 0 - - -; #X obj 385 399 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 -1; #X obj 54 145 cnv 15 80 30 empty empty empty 20 12 0 14 -225271 -66577 0; #X obj 236 140 cnv 15 80 30 empty empty empty 20 12 0 14 -225271 -66577 0; #X obj 404 139 cnv 15 80 30 empty empty empty 20 12 0 14 -225271 -66577 0; #X obj 72 181 + 1; #X floatatom 72 207 5 0 0 0 - - -; #X msg 72 149 1; #X msg 237 145 convert; #X obj 237 178 symbol; #X symbolatom 237 206 10 0 0 0 - - -; #X obj 72 234 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 -1; #X obj 237 233 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 -1; #X obj 421 176 float; #X obj 478 176 + 1; #X floatatom 421 204 5 0 0 0 - - -; #X obj 421 229 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 -1; #X obj 277 364 delay 1000; #X msg 421 144 bang; #X text 18 265 Pd is always ready to process messages , you don't need to tell it to run. You can keep things moving by sending a stream of events:; #X connect 2 0 7 0; #X connect 3 0 4 0; #X connect 3 0 5 0; #X connect 4 0 3 1; #X connect 5 0 6 0; #X connect 7 0 3 0; #X connect 8 0 9 0; #X connect 9 0 10 0; #X connect 9 0 11 0; #X connect 10 0 9 1; #X connect 11 0 12 0; #X connect 12 0 28 0; #X connect 16 0 17 0; #X connect 17 0 22 0; #X connect 18 0 16 0; #X connect 19 0 20 0; #X connect 20 0 21 0; #X connect 21 0 23 0; #X connect 24 0 25 0; #X connect 24 0 26 0; #X connect 25 0 24 1; #X connect 26 0 27 0; #X connect 28 0 9 0; #X connect 29 0 24 0;
--- NEW FILE: 30.gui_objects.pd --- #N canvas 10 40 644 484 10; #X obj 420 33 import cyclone unauthorized; #X obj 11 57 cnv 15 600 650 empty empty empty 20 12 0 14 -262131 -66577 0; #X obj 11 348 cnv 15 400 100 empty empty empty 20 12 0 14 -261696 -66577 0; #X obj 11 57 cnv 15 400 300 empty empty empty 20 12 0 14 -241657 -66577 0; #X obj 30 110 bng 15 250 50 0 $1 $1 empty 20 8 0 8 -262144 -1 -1 ; #X obj 30 142 tgl 15 1.04858e+06 empty $2 empty 20 8 0 8 -262144 -1 -1 0 1; #X obj 34 188 vsl 15 128 0 127 0 1.04858e+06 empty $3 empty 20 8 0 8 -262144 -1 -1 0 1; #X obj 191 318 hsl 128 15 0 127 0 0 empty empty empty 20 8 0 8 -262144 -1 -1 0 1; #X obj 201 289 hdl 15 1 2.6624e+06 8 $5 $5 empty 20 8 192 8 -262144 -1 -1 0; #X obj 254 127 vu 15 120 $6 empty 35 8 0 8 -66577 -1 1 0; #X obj 111 109 cnv 15 100 60 empty empty [canvas] 20 12 0 14 -233017 -66577 1.04858e+06; #X obj 126 189 vdl 15 1 4.79232e+06 8 $9 $9 empty 20 8 192 8 -262144 -1 -1 0; #X obj 341 116 nbx 5 14 -1e+37 1e+37 0 0 $5 $5 empty 45 7 0 10 -262144 -1 -1 0 256; #X text 17 66 Pd comes with a standard , built-in set of GUI elements , which you can select from the "Put" menu.; #X text 17 356 There are also some OS-native GUI elements available ; #X obj 49 404 button OK; #X obj 147 408 popup 124 25 #ffffff popup option; #X obj 333 404 ticker ; #X obj 324 529 envgen 200 140 1 0 ; #X obj 491 454 knob 32 32 0 127 0 0 empty empty empty 0 -8 32 8 -262144 -1 -1 0 1; #X text 485 428 [knob]; #X text 316 381 [ticker]; #X text 390 505 [envgen]; #X text 449 90 [cyclone/Scope~]; #X text 40 380 [button]; #X text 134 382 [popup]; #X text 250 107 [vu]; #X text 46 109 [bng]; #X text 46 141 [tgl]; #X text 21 320 [vslider]; #X text 325 288 [hradio]; #X text 325 318 [hslider]; #X text 107 317 [vradio]; #X obj 441 112 Scope~ 130 130 256 3 128 -1 1 0 0 0 0 102 255 51 135 135 135 0; #X text 337 98 [nbx]; #X obj 461 299 gcanvas 80 80; #X text 472 274 [gcanvas]; #X obj 51 472 grid grid1 200 0 199 200 0 199 1 1 1 10 10 133 520; #X text 71 453 [unauthorized/grid]; #X floatatom 462 386 5 0 0 0 - - -; #X floatatom 534 387 5 0 0 0 - - -; #X obj 10 10 cnv 15 400 40 empty empty gui_objects 20 12 0 24 -228992 -66577 0; #X floatatom 244 680 5 0 0 0 - - -; #X floatatom 51 679 5 0 0 0 - - -; #X floatatom 491 492 5 0 0 0 - - -; #X text 422 67 And various others:; #X connect 19 0 44 0; #X connect 35 0 39 0; #X connect 35 1 40 0; #X connect 37 0 43 0; #X connect 37 1 42 0;