aboutsummaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
Diffstat (limited to 'doc')
-rwxr-xr-xdoc/mjLib/about.pd25
-rwxr-xr-xdoc/mjLib/metroplus.pd37
-rwxr-xr-xdoc/mjLib/monorhythm.pd63
-rwxr-xr-xdoc/mjLib/morse.pd108
-rwxr-xr-xdoc/mjLib/n2m.pd21
-rwxr-xr-xdoc/mjLib/pin~.pd41
-rwxr-xr-xdoc/mjLib/polyexample.pd46
-rwxr-xr-xdoc/mjLib/prob.pd34
8 files changed, 375 insertions, 0 deletions
diff --git a/doc/mjLib/about.pd b/doc/mjLib/about.pd
new file mode 100755
index 0000000..e7780b1
--- /dev/null
+++ b/doc/mjLib/about.pd
@@ -0,0 +1,25 @@
+#N canvas 813 185 531 430 12;
+#X floatatom 215 277 5 0 0;
+#X floatatom 217 374 5 0 0;
+#X obj 218 172 bng 15 250 50 0 empty empty empty 20 8 0 8 -262144 -1
+-1;
+#X floatatom 325 214 5 0 0;
+#X obj 219 323 about 10;
+#X text 24 16 about;
+#X text 25 34 by mark williamson;
+#X text 22 56 (mark@junklight.com);
+#X text 26 92 about makes numbers that are + or - a percenage error
+from a given value. That is it makes numbers that are "about" the given
+value.;
+#X text 82 166 click here --->;
+#X text 103 192 and get;
+#X text 258 192 a number which is within;
+#X text 377 215 %;
+#X text 62 275 of this number--->;
+#X text 142 374 here--->;
+#X text 294 322 note: you can set the defualt;
+#X text 309 340 %age as a parameter;
+#X connect 0 0 4 0;
+#X connect 2 0 0 0;
+#X connect 3 0 4 1;
+#X connect 4 0 1 0;
diff --git a/doc/mjLib/metroplus.pd b/doc/mjLib/metroplus.pd
new file mode 100755
index 0000000..4a7e170
--- /dev/null
+++ b/doc/mjLib/metroplus.pd
@@ -0,0 +1,37 @@
+#N canvas 614 181 575 499 12;
+#X obj 166 441 bng 15 250 50 0 empty empty empty 20 8 0 8 -262144 -1
+-1;
+#X msg 162 249 start;
+#X msg 118 351 stop;
+#X floatatom 460 286 5 0 0;
+#X obj 173 393 metroplus 1000 500 1000 200;
+#X msg 269 309 500 1000 200;
+#X text 28 13 metroplus;
+#X text 27 32 by mark williamson (mark@junklight.com);
+#X obj 174 279 bng 15 250 50 0 empty empty empty 20 8 0 8 -262144 -1
+-1;
+#X text 27 65 metroplus is a variation on the metro object. Instead
+of providing a steady pulse however it can provide an irregular beat.
+It takes as its control a list of numbers representing intervals in
+milliseconds. These are the time between each "pulse". So for example
+with the initial setting below (in the metroplus object itself) - the
+first pulse comes after 1 second the second after 500ms the third after
+1 second and the fourth after 200ms - the next beat comming a second
+after that because the sequence starts again.;
+#X text 19 243 start with;
+#X text 18 257 a start message;
+#X text 18 274 or a 'bang'---->;
+#X text 20 321 stop with a;
+#X text 19 338 stop;
+#X text 21 352 message--->;
+#X text 245 286 set a new sequence;
+#X text 451 322 it still works;
+#X text 449 338 like a metro;
+#X text 422 355 object if you want;
+#X text 512 372 it to;
+#X connect 1 0 4 0;
+#X connect 2 0 4 0;
+#X connect 3 0 4 1;
+#X connect 4 0 0 0;
+#X connect 5 0 4 1;
+#X connect 8 0 4 0;
diff --git a/doc/mjLib/monorhythm.pd b/doc/mjLib/monorhythm.pd
new file mode 100755
index 0000000..b227ebf
--- /dev/null
+++ b/doc/mjLib/monorhythm.pd
@@ -0,0 +1,63 @@
+#N canvas 616 110 537 779 12;
+#X obj 255 684 bng 15 250 50 0 empty empty empty 20 8 0 8 -262144 -1
+-1;
+#X msg 115 505 start;
+#X obj 182 680 bng 15 250 50 0 empty empty empty 20 8 0 8 -262144 -1
+-1;
+#X obj 336 685 bng 15 250 50 0 empty empty empty 20 8 0 8 -262144 -1
+-1;
+#X msg 41 494 stop;
+#X obj 173 507 bng 15 250 50 0 empty empty empty 20 8 0 8 -262144 -1
+-1;
+#X msg 316 526 1 2 1 1;
+#X msg 415 538 2000;
+#X msg 224 491 1 2 0 1;
+#X obj 182 611 monorhythm 2000 2 1 1;
+#X text 23 38 by mark williamson;
+#X text 25 13 monorhythm;
+#X text 23 62 (mark@junklight.com);
+#X text 28 97 The monorhythm object is designed to allow simple rythms
+to be generated. It is also constructed in such away so as to create
+more complex polyrhythms quickly and easily.;
+#X text 28 154 The monorhythm object is given a time interval and a
+rhythm pattern. It divides the interval into the number of beats in
+the pattern and outputs bangs as defined by the pattern. The performance
+time of the entire pattern is given by the time interval.;
+#X text 30 242 The pattern consists of strings of the symbols 0 \,
+1 and 2 0 is a rest \, 1 is a normal beat and 2 is an accented beat.
+A rest produces no output. A 1 produces a bang on the leftmost outlet.
+A 2 produces a bang on the left most outlet and a bang on the middle
+outlet (the accent outlet).;
+#X text 30 331 In order to synchronise multiple monorhythms there is
+a third outlet - the sync outlet. This does a bang at the start of
+every bar - which can be fed to the left most inlet of a second (or
+Nth) monorhythm.;
+#X text 29 412 for an example of a polyrhythm see:;
+#X obj 322 413 polyexample;
+#X text 162 701 beat;
+#X text 241 702 accent;
+#X text 325 704 sync;
+#X text 412 568 time interval;
+#X text 278 459 pattern;
+#X text 37 466 stop;
+#X text 104 467 start or bang;
+#X text 105 483 sets it going;
+#X msg 25 559 exclusive;
+#X msg 27 654 nonexclusive;
+#X text 22 590 beat and accent;
+#X text 20 607 bangs are mutually;
+#X text 20 622 exclusive;
+#X text 23 682 accent bang;
+#X text 23 697 supplements;
+#X text 22 715 the beat bang;
+#X connect 1 0 9 0;
+#X connect 4 0 9 0;
+#X connect 5 0 9 0;
+#X connect 6 0 9 1;
+#X connect 7 0 9 2;
+#X connect 8 0 9 1;
+#X connect 9 0 2 0;
+#X connect 9 1 0 0;
+#X connect 9 2 3 0;
+#X connect 27 0 9 0;
+#X connect 28 0 9 0;
diff --git a/doc/mjLib/morse.pd b/doc/mjLib/morse.pd
new file mode 100755
index 0000000..1872049
--- /dev/null
+++ b/doc/mjLib/morse.pd
@@ -0,0 +1,108 @@
+#N canvas 613 249 881 774 12;
+#X obj 303 166 morse;
+#X obj 282 243 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
+-1;
+#X obj 316 244 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
+-1;
+#X obj 355 245 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
+-1;
+#X msg 47 53 1;
+#X msg 107 18 stop;
+#X msg 343 93 msg this is a test message;
+#X obj 203 159 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
+-1;
+#X msg 350 22 msg 1 2 3 4 8;
+#X obj 180 123 metro 100;
+#X obj 139 676 dac~;
+#X obj 147 635 *~;
+#X obj 235 615 hsl 128 15 0 1 0 0 empty empty empty -2 -6 0 8 -262144
+-1 -1 0 1;
+#X obj 145 590 *~;
+#X obj 135 335 osc~ 440;
+#X obj 38 291 hsl 128 15 10 6000 0 0 empty empty empty -2 -6 0 8 -262144
+-1 -1 1900 1;
+#X text 179 289 frequency;
+#X obj 199 551 line~;
+#X obj 275 455 delay 50;
+#X obj 257 400 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
+-1;
+#X floatatom 380 453 5 0 0;
+#X floatatom 45 332 5 0 0;
+#X msg 34 257 906.1;
+#X obj 33 216 loadbang;
+#X obj 517 458 delay 50;
+#X obj 499 403 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
+-1;
+#X floatatom 622 456 5 0 0;
+#X obj 357 706 writesf~ 2;
+#X msg 360 645 start;
+#X msg 423 647 stop;
+#X msg 430 676 open mouts.wav;
+#X msg 219 495 1 1;
+#X msg 275 492 0 1;
+#X msg 461 498 1 1;
+#X msg 519 498 0 1;
+#X obj 683 155 hsl 128 15 10 1000 0 0 empty empty empty -2 -6 0 8 -262144
+-1 -1 0 1;
+#X text 714 129 speed;
+#X floatatom 681 185 5 0 0;
+#X obj 643 276 s dot;
+#X obj 732 274 s dash;
+#X obj 260 88 r dot;
+#X obj 332 389 r dot;
+#X obj 579 395 r dash;
+#X obj 735 224 * 3;
+#X msg 675 94 50;
+#X obj 677 51 loadbang;
+#X text 291 378 dot;
+#X text 530 376 dash;
+#X text 196 594 volume - don't forget to set!;
+#X msg 45 17 start;
+#X connect 0 0 1 0;
+#X connect 0 1 2 0;
+#X connect 0 2 3 0;
+#X connect 1 0 19 0;
+#X connect 2 0 25 0;
+#X connect 4 0 9 0;
+#X connect 5 0 9 0;
+#X connect 6 0 0 0;
+#X connect 8 0 0 0;
+#X connect 9 0 0 0;
+#X connect 9 0 7 0;
+#X connect 11 0 10 0;
+#X connect 11 0 10 1;
+#X connect 11 0 27 0;
+#X connect 11 0 27 1;
+#X connect 12 0 11 1;
+#X connect 13 0 11 0;
+#X connect 14 0 13 0;
+#X connect 15 0 14 0;
+#X connect 15 0 21 0;
+#X connect 17 0 13 1;
+#X connect 18 0 32 0;
+#X connect 19 0 18 0;
+#X connect 19 0 31 0;
+#X connect 22 0 15 0;
+#X connect 23 0 22 0;
+#X connect 24 0 34 0;
+#X connect 25 0 24 0;
+#X connect 25 0 33 0;
+#X connect 28 0 27 0;
+#X connect 29 0 27 0;
+#X connect 30 0 27 0;
+#X connect 31 0 17 0;
+#X connect 32 0 17 0;
+#X connect 33 0 17 0;
+#X connect 34 0 17 0;
+#X connect 35 0 37 0;
+#X connect 37 0 38 0;
+#X connect 37 0 43 0;
+#X connect 40 0 9 1;
+#X connect 41 0 18 1;
+#X connect 41 0 20 0;
+#X connect 42 0 24 1;
+#X connect 42 0 26 0;
+#X connect 43 0 39 0;
+#X connect 44 0 35 0;
+#X connect 45 0 44 0;
+#X connect 49 0 4 0;
diff --git a/doc/mjLib/n2m.pd b/doc/mjLib/n2m.pd
new file mode 100755
index 0000000..0fe2937
--- /dev/null
+++ b/doc/mjLib/n2m.pd
@@ -0,0 +1,21 @@
+#N canvas 506 519 493 438 12;
+#X obj 104 320 n2m;
+#X obj 95 378 print;
+#X text 32 13 n2m - note to midi;
+#X text 32 36 by mark williamson (http://www.junklight.com);
+#X text 33 75 n2m converts note names in the form <note name><octave>
+to a midi number. It copes with single notes or chords.;
+#X msg 109 174 note C5 d#7 c3;
+#X msg 67 128 note c6;
+#X msg 146 220 note D;
+#X msg 182 270 note 7;
+#X text 174 129 output note C6;
+#X text 271 174 output a chord;
+#X text 244 218 Octave defaults to 4;
+#X text 266 268 note defaults to C;
+#X text 189 326 its not case sensitive;
+#X connect 0 0 1 0;
+#X connect 5 0 0 0;
+#X connect 6 0 0 0;
+#X connect 7 0 0 0;
+#X connect 8 0 0 0;
diff --git a/doc/mjLib/pin~.pd b/doc/mjLib/pin~.pd
new file mode 100755
index 0000000..83ebc96
--- /dev/null
+++ b/doc/mjLib/pin~.pd
@@ -0,0 +1,41 @@
+#N canvas 571 384 526 605 12;
+#X obj 206 485 dac~;
+#X obj 155 395 osc~;
+#X msg 155 282 69;
+#X obj 155 327 mtof;
+#X floatatom 155 304 0 0 0;
+#X floatatom 155 349 0 0 0;
+#X obj 155 371 sig~;
+#X floatatom 234 314 5 0 1;
+#X floatatom 308 359 5 0 0;
+#X text 19 13 pin~;
+#X text 20 55 the pin~ object can be considered to be similar to the
+pin in a bagatelle game. The ball upon hitting it has a random probability
+of falling to one side or the other. The pin~ object takes a single
+signal input and outputs it to the left or right output at random based
+on the probability set (right most input). The interval at which the
+outlet is choosen can be set by the right most input. Setting this
+to 0 or less means a different output is choosen for every call of
+the dsp routine. A higher value means that the output is choosen every
+so many milliseconds.;
+#X obj 154 255 loadbang;
+#X text 19 314 test signal;
+#X text 19 327 generator---->;
+#X text 222 289 probability to choose left;
+#X text 300 307 (between 0 and 1);
+#X text 321 338 choice interval;
+#X obj 177 437 pin~ 0.5 100;
+#X text 25 523 note that no panning or envelopes are applied and therefore
+low choice intervals will add "switching" noise to the output.;
+#X text 19 30 by mark williamson (mark@junklight.com);
+#X connect 1 0 17 0;
+#X connect 2 0 4 0;
+#X connect 3 0 5 0;
+#X connect 4 0 3 0;
+#X connect 5 0 6 0;
+#X connect 6 0 1 0;
+#X connect 7 0 17 1;
+#X connect 8 0 17 2;
+#X connect 11 0 2 0;
+#X connect 17 0 0 0;
+#X connect 17 1 0 1;
diff --git a/doc/mjLib/polyexample.pd b/doc/mjLib/polyexample.pd
new file mode 100755
index 0000000..281b498
--- /dev/null
+++ b/doc/mjLib/polyexample.pd
@@ -0,0 +1,46 @@
+#N canvas 488 354 514 349 12;
+#X obj 120 193 monorhythm;
+#X obj 157 270 bng 15 250 50 0 empty empty empty 20 8 0 8 -262144 -1
+-1;
+#X msg 153 91 start;
+#X obj 111 274 bng 15 250 50 0 empty empty empty 20 8 0 8 -262144 -1
+-1;
+#X obj 200 228 bng 15 250 50 0 empty empty empty 20 8 0 8 -262144 -1
+-1;
+#X msg 219 90 stop;
+#X msg 220 160 2000;
+#X obj 286 194 monorhythm;
+#X obj 323 271 bng 15 250 50 0 empty empty empty 20 8 0 8 -262144 -1
+-1;
+#X obj 277 275 bng 15 250 50 0 empty empty empty 20 8 0 8 -262144 -1
+-1;
+#X obj 358 226 bng 15 250 50 0 empty empty empty 20 8 0 8 -262144 -1
+-1;
+#X msg 374 161 2000;
+#X text 42 16 An example of a polyrhythm ( 2 against 3) built with
+2 monorhythm's;
+#X obj 321 121 loadbang;
+#X msg 305 160 2 1 1;
+#X msg 170 159 2 1;
+#X text 89 294 beat;
+#X text 148 292 accent;
+#X text 250 293 beat;
+#X text 313 295 accent;
+#X connect 0 0 3 0;
+#X connect 0 1 1 0;
+#X connect 0 2 4 0;
+#X connect 0 2 7 0;
+#X connect 2 0 0 0;
+#X connect 5 0 7 0;
+#X connect 5 0 0 0;
+#X connect 6 0 0 2;
+#X connect 7 0 9 0;
+#X connect 7 1 8 0;
+#X connect 7 2 10 0;
+#X connect 11 0 7 2;
+#X connect 13 0 11 0;
+#X connect 13 0 14 0;
+#X connect 13 0 15 0;
+#X connect 13 0 6 0;
+#X connect 14 0 7 1;
+#X connect 15 0 0 1;
diff --git a/doc/mjLib/prob.pd b/doc/mjLib/prob.pd
new file mode 100755
index 0000000..27cd83c
--- /dev/null
+++ b/doc/mjLib/prob.pd
@@ -0,0 +1,34 @@
+#N canvas 692 257 515 496 12;
+#X obj 235 384 prob;
+#X obj 235 448 bng 15 250 50 0 empty empty empty 20 8 0 8 -262144 -1
+-1;
+#X msg 134 317 start;
+#X msg 192 304 stop;
+#X floatatom 249 276 5 0 0;
+#X floatatom 294 348 5 0 1;
+#X text 221 254 time interval;
+#X text 271 314 probability;
+#X text 260 330 between 0 and 1;
+#X text 25 15 prob;
+#X text 25 36 by mark williamson;
+#X text 23 56 (mark@junklight.com);
+#X text 26 84 prob is designed to generate a random event with a given
+probability at a given interval. Every clock tick (set by time) it
+generates a random number and compares it against the probability to
+see if an event should occur. If so a bang is output at the outlet.
+;
+#X text 25 174 The probability is set as a value between 0 and 1 Time
+is measured in milliseconds. The messages start and stop - start and
+stop events being generated. The prob object can also be started with
+a bang.;
+#X obj 103 350 bng 15 250 50 0 empty empty empty 20 8 0 8 -262144 -1
+-1;
+#X text 64 372 bang has the;
+#X text 64 389 same effect;
+#X text 64 405 as start;
+#X connect 0 0 1 0;
+#X connect 2 0 0 0;
+#X connect 3 0 0 0;
+#X connect 4 0 0 1;
+#X connect 5 0 0 2;
+#X connect 14 0 0 0;