aboutsummaryrefslogtreecommitdiff
path: root/instruments
diff options
context:
space:
mode:
Diffstat (limited to 'instruments')
-rw-r--r--instruments/MA_FM.pd260
-rw-r--r--instruments/foscil~.pd64
-rw-r--r--instruments/rrad.fm2~.pd151
3 files changed, 347 insertions, 128 deletions
diff --git a/instruments/MA_FM.pd b/instruments/MA_FM.pd
index 4d861fd..60f2e37 100644
--- a/instruments/MA_FM.pd
+++ b/instruments/MA_FM.pd
@@ -1,19 +1,19 @@
#N canvas 726 332 249 426 10;
-#X obj 13 239 vsl 15 128 0 1000 0 0 \$0-rAtt_1 \$0-sAtt_1 A 0 -8 1728
-8 -262144 -1 -1 4400 1;
-#X obj 31 239 vsl 15 128 0 1000 0 0 \$0-rRel_1 \$0-sRel_1 R 0 -8 1728
-8 -262144 -1 -1 10500 1;
-#X obj 72 241 vsl 15 128 0 1000 0 0 \$0-rAtt_2 \$0-sAtt_2 A 0 -8 1728
-8 -262144 -1 -1 5600 1;
-#X obj 90 241 vsl 15 128 0 1000 0 0 \$0-rRel_2 \$0-sRel_2 R 0 -8 1728
-8 -262144 -1 -1 600 1;
-#X obj 133 240 vsl 15 128 0 1000 0 0 \$0-rAtt_3 \$0-sAtt_3 A 0 -8 1728
-8 -262144 -1 -1 900 1;
-#X obj 151 240 vsl 15 128 0 1000 0 0 \$0-rRel_3 \$0-sRel_3 R 0 -8 1728
-8 -262144 -1 -1 6800 1;
-#X obj 430 158 s \$0-NoteVel;
-#X obj 415 179 s \$0-NotePitch;
-#X obj 446 137 s \$0-NoteChnl;
+#X obj 15 239 vsl 15 128 0 1000 0 0 \$0-rAtt_1 \$0-sAtt_1 A 0 -8 0
+8 -262144 -1 -1 0 1;
+#X obj 33 239 vsl 15 128 0 1000 0 0 \$0-rRel_1 \$0-sRel_1 R 0 -8 0
+8 -262144 -1 -1 0 1;
+#X obj 74 241 vsl 15 128 0 1000 0 0 \$0-rAtt_2 \$0-sAtt_2 A 0 -8 0
+8 -262144 -1 -1 0 1;
+#X obj 92 241 vsl 15 128 0 1000 0 0 \$0-rRel_2 \$0-sRel_2 R 0 -8 0
+8 -262144 -1 -1 0 1;
+#X obj 135 240 vsl 15 128 0 1000 0 0 \$0-rAtt_3 \$0-sAtt_3 A 0 -8 0
+8 -262144 -1 -1 0 1;
+#X obj 153 240 vsl 15 128 0 1000 0 0 \$0-rRel_3 \$0-sRel_3 R 0 -8 0
+8 -262144 -1 -1 0 1;
+#X obj 432 158 s \$0-NoteVel;
+#X obj 417 179 s \$0-NotePitch;
+#X obj 448 137 s \$0-NoteChnl;
#N canvas 0 0 1054 904 FM_Feedback 0;
#X obj 181 178 line~;
#X obj 181 152 pack 0 50;
@@ -151,120 +151,120 @@
#X connect 70 0 6 0;
#X connect 71 0 10 0;
#X coords 0 0 0.000952381 0.00111111 120 20 0;
-#X restore 739 301 pd FM_Feedback;
-#X obj 414 219 catch~ \$0-out;
-#X obj 0 19 cnv 30 244 180 empty empty empty 20 12 0 14 -166441 -66577
+#X restore 741 301 pd FM_Feedback;
+#X obj 416 219 catch~ \$0-out;
+#X obj 2 19 cnv 30 244 180 empty empty empty 20 12 0 14 -166441 -66577
0;
-#X obj 136 178 cnv 10 40 1 \$0-r_Op1OutCanvash \$0-s_Op1OutCanvash
-empty 20 12 1728 14 -33289 -262144 0;
-#X obj 120 172 cnv 12 38 16 empty \$0-s_Op1OutCanvash empty 4 6 576
-8 -33289 -262144 0;
-#X obj 121 173 nbx 3 14 0 100 0 0 \$0-outAmt_1 \$0-send-outAmt_1 empty
-0 -6 1728 10 -166441 -1 -1 31 256;
-#X obj 78 130 cnv 15 1 50 \$0-r_Op2OutCanvas \$0-s_Op2OutCanvas empty
-20 12 1728 14 -33289 -262144 0;
-#X obj 80 178 cnv 10 40 1 \$0-r_Op2OutCanvash \$0-s_Op2OutCanvash empty
-20 12 1728 14 -33289 -262144 0;
-#X obj 68 172 cnv 12 38 16 empty \$0-s_Op2OutCanvas empty 4 6 576 8
--33289 -262144 0;
-#X obj 69 173 nbx 3 14 0 100 0 0 \$0-outAmt_2 \$0-send-outAmt_2 empty
-0 -6 1728 10 -166441 -1 -1 84 256;
-#X obj 28 178 cnv 10 40 1 \$0-r_Op3OutCanvash \$0-s_Op3OutCanvash empty
-20 12 1728 14 -166441 -262144 0;
-#X obj 25 30 cnv 12 40 22 empty \$0-s_Op3FBCanvas empty 4 6 576 8 -166441
+#X obj 138 178 cnv 10 40 1 \$0-r_Op1OutCanvash \$0-s_Op1OutCanvash
+empty 20 12 0 14 -166441 -262144 0;
+#X obj 122 172 cnv 12 38 16 empty \$0-s_Op1OutCanvash empty 4 6 0 8
+-166441 -262144 0;
+#X obj 123 173 nbx 3 14 0 100 0 0 \$0-outAmt_1 \$0-send-outAmt_1 empty
+0 -6 0 10 -166441 -1 -1 0 256;
+#X obj 80 130 cnv 15 1 50 \$0-r_Op2OutCanvas \$0-s_Op2OutCanvas empty
+20 12 0 14 -166441 -262144 0;
+#X obj 82 178 cnv 10 40 1 \$0-r_Op2OutCanvash \$0-s_Op2OutCanvash empty
+20 12 0 14 -166441 -262144 0;
+#X obj 70 172 cnv 12 38 16 empty \$0-s_Op2OutCanvas empty 4 6 0 8 -166441
-262144 0;
-#X obj 27 32 cnv 12 36 18 empty empty empty 4 6 0 8 -166441 -262144
-0;
-#X obj 13 22 cnv 12 34 16 empty \$0-s_Op3FBCanvas empty 4 6 576 8 -166441
+#X obj 71 173 nbx 3 14 0 100 0 0 \$0-outAmt_2 \$0-send-outAmt_2 empty
+0 -6 0 10 -166441 -1 -1 0 256;
+#X obj 30 178 cnv 10 40 1 \$0-r_Op3OutCanvash \$0-s_Op3OutCanvash empty
+20 12 0 14 -166441 -262144 0;
+#X obj 27 30 cnv 12 40 22 empty \$0-s_Op3FBCanvas empty 4 6 0 8 -166441
-262144 0;
-#X obj 14 23 nbx 3 14 0 100 0 0 \$0-op3->op3 \$0-send-op3->op3 empty
-0 -6 1728 8 -166441 -1 -1 0 256;
-#X obj 25 42 cnv 15 1 50 \$0-r_Op3Op2 \$0-s_Op3Op2 empty 20 12 1728
-14 -33289 -262144 0;
-#X obj 177 171 cnv 12 42 18 empty empty empty 4 6 0 8 -1 -66577 0;
-#X obj 179 173 cnv 12 38 14 empty empty Out 10 7 0 8 -195568 -66577
+#X obj 29 32 cnv 12 36 18 empty empty empty 4 6 0 8 -166441 -262144
0;
-#X obj 25 130 cnv 15 1 50 \$0-r_Op3OutCanvas \$0-s_Op3OutCanvas empty
-20 12 1728 14 -166441 -262144 0;
-#X obj 16 172 cnv 12 38 16 empty \$0-s_Op3OutCanvas empty 4 6 576 8
+#X obj 15 22 cnv 12 34 16 empty \$0-s_Op3FBCanvas empty 4 6 0 8 -166441
+-262144 0;
+#X obj 16 23 nbx 3 14 0 100 0 0 \$0-op3->op3 \$0-send-op3->op3 empty
+0 -6 0 8 -166441 -1 -1 0 256;
+#X obj 27 42 cnv 15 1 50 \$0-r_Op3Op2 \$0-s_Op3Op2 empty 20 12 0 14
-166441 -262144 0;
-#X obj 17 173 nbx 3 14 0 100 0 0 \$0-outAmt_3 \$0-send-outAmt_3 empty
-0 -6 1728 10 -166441 -1 -1 0 256;
-#X obj 26 87 cnv 10 40 1 \$0-r_Op3Op2h \$0-s_Op3Op2h empty 20 12 1728
-14 -33289 -262144 0;
-#X obj 28 135 cnv 10 40 1 \$0-r_Op3Op1h \$0-s_Op3Op1h empty 20 12 1728
+#X obj 179 171 cnv 12 42 18 empty empty empty 4 6 0 8 -1 -66577 0;
+#X obj 181 173 cnv 12 38 14 empty empty Out 10 7 0 8 -195568 -66577
+0;
+#X obj 27 130 cnv 15 1 50 \$0-r_Op3OutCanvas \$0-s_Op3OutCanvas empty
+20 12 0 14 -166441 -262144 0;
+#X obj 18 172 cnv 12 38 16 empty \$0-s_Op3OutCanvas empty 4 6 0 8 -166441
+-262144 0;
+#X obj 19 173 nbx 3 14 0 100 0 0 \$0-outAmt_3 \$0-send-outAmt_3 empty
+0 -6 0 10 -166441 -1 -1 0 256;
+#X obj 28 87 cnv 10 40 1 \$0-r_Op3Op2h \$0-s_Op3Op2h empty 20 12 0
14 -166441 -262144 0;
-#X obj 25 82 cnv 15 1 50 \$0-r_Op3Op2_2 \$0-s_Op3Op2_2 empty 20 12
-1728 14 -166441 -262144 0;
-#X obj 15 81 cnv 12 38 16 empty \$0-s_Op3Op2Canvas empty 4 6 576 8
--33289 -262144 0;
-#X obj 16 82 nbx 3 14 0 100 0 0 \$0-op3->op2 \$0-send-op3->op2 empty
-0 -6 1728 10 -166441 -1 -1 87 256;
-#X obj 15 129 cnv 12 38 16 empty \$0-s_Op3Op1Canvas empty 4 6 576 8
--166441 -262144 0;
-#X obj 16 130 nbx 3 14 0 100 0 0 \$0-op3->op1 \$0-send-op3->op1 empty
-0 -6 1728 10 -166441 -1 -1 0 256;
-#X obj 88 135 cnv 10 30 1 \$0-r_Op2Op1h \$0-s_Op2Op1h empty 20 12 1728
+#X obj 30 135 cnv 10 40 1 \$0-r_Op3Op1h \$0-s_Op3Op1h empty 20 12 0
14 -166441 -262144 0;
-#X obj 68 129 cnv 12 38 16 empty \$0-s_Op2Op1Canvas empty 4 6 576 8
+#X obj 27 82 cnv 15 1 50 \$0-r_Op3Op2_2 \$0-s_Op3Op2_2 empty 20 12
+0 14 -166441 -262144 0;
+#X obj 17 81 cnv 12 38 16 empty \$0-s_Op3Op2Canvas empty 4 6 0 8 -166441
+-262144 0;
+#X obj 18 82 nbx 3 14 0 100 0 0 \$0-op3->op2 \$0-send-op3->op2 empty
+0 -6 0 10 -166441 -1 -1 0 256;
+#X obj 17 129 cnv 12 38 16 empty \$0-s_Op3Op1Canvas empty 4 6 0 8 -166441
+-262144 0;
+#X obj 18 130 nbx 3 14 0 100 0 0 \$0-op3->op1 \$0-send-op3->op1 empty
+0 -6 0 10 -166441 -1 -1 0 256;
+#X obj 90 135 cnv 10 30 1 \$0-r_Op2Op1h \$0-s_Op2Op1h empty 20 12 0
+14 -166441 -262144 0;
+#X obj 70 129 cnv 12 38 16 empty \$0-s_Op2Op1Canvas empty 4 6 0 8 -166441
+-262144 0;
+#X obj 71 130 nbx 3 14 0 100 0 0 \$0-op2->op1 \$0-send-op2->op1 empty
+0 -6 0 10 -166441 -1 -1 0 256;
+#X obj 133 81 cnv 15 1 50 \$0-r_Op1Op2 \$0-s_Op1Op2 empty 20 12 0 14
-166441 -262144 0;
-#X obj 69 130 nbx 3 14 0 100 0 0 \$0-op2->op1 \$0-send-op2->op1 empty
-0 -6 1728 10 -166441 -1 -1 0 256;
-#X obj 131 81 cnv 15 1 50 \$0-r_Op1Op2 \$0-s_Op1Op2 empty 20 12 1728
-14 -33289 -262144 0;
-#X obj 120 81 cnv 12 38 16 empty \$0-s_Op1Op2Canvas empty 4 6 576 8
--33289 -262144 0;
-#X obj 121 82 nbx 3 14 0 100 0 0 \$0-op1->op2 \$0-send-op1->op2 empty
-0 -6 1728 10 -166441 -1 -1 12 256;
-#X obj 131 131 cnv 15 1 40 \$0-r_Op1OutCanvas \$0-s_Op1OutCanvas empty
-20 12 1728 14 -33289 -262144 0;
-#X obj 131 118 cnv 12 40 22 empty \$0-s_Op1FBCanvas empty 4 6 576 8
--33289 -262144 0;
-#X obj 133 120 cnv 12 36 18 empty empty empty 4 6 0 8 -166441 -262144
+#X obj 122 81 cnv 12 38 16 empty \$0-s_Op1Op2Canvas empty 4 6 0 8 -166441
+-262144 0;
+#X obj 123 82 nbx 3 14 0 100 0 0 \$0-op1->op2 \$0-send-op1->op2 empty
+0 -6 0 10 -166441 -1 -1 0 256;
+#X obj 133 131 cnv 15 1 40 \$0-r_Op1OutCanvas \$0-s_Op1OutCanvas empty
+20 12 0 14 -166441 -262144 0;
+#X obj 133 118 cnv 12 40 22 empty \$0-s_Op1FBCanvas empty 4 6 0 8 -166441
+-262144 0;
+#X obj 135 120 cnv 12 36 18 empty empty empty 4 6 0 8 -166441 -262144
0;
-#X obj 119 128 cnv 12 42 18 empty empty empty 4 6 0 8 -1 -66577 0;
-#X obj 121 130 cnv 12 38 14 empty empty Op_1 4 6 0 8 -233017 -66577
+#X obj 121 128 cnv 12 42 18 empty empty empty 4 6 0 8 -1 -66577 0;
+#X obj 123 130 cnv 12 38 14 empty empty Op_1 4 6 0 8 -233017 -66577
0;
-#X obj 119 110 cnv 12 34 16 empty \$0-s_Op1FBCanvas empty 4 6 576 8
--33289 -262144 0;
-#X obj 120 111 nbx 3 14 0 100 0 0 \$0-op1->op1 \$0-send-op1->op1 empty
-0 -6 1728 8 -166441 -1 -1 15 256;
-#X obj 78 70 cnv 12 40 22 empty \$0-s_Op2FBCanvas empty 4 6 576 8 -166441
+#X obj 121 110 cnv 12 34 16 empty \$0-s_Op1FBCanvas empty 4 6 0 8 -166441
+-262144 0;
+#X obj 122 111 nbx 3 14 0 100 0 0 \$0-op1->op1 \$0-send-op1->op1 empty
+0 -6 0 8 -166441 -1 -1 0 256;
+#X obj 80 70 cnv 12 40 22 empty \$0-s_Op2FBCanvas empty 4 6 0 8 -166441
-262144 0;
-#X obj 80 72 cnv 12 36 18 empty empty empty 4 6 0 8 -166441 -262144
+#X obj 82 72 cnv 12 36 18 empty empty empty 4 6 0 8 -166441 -262144
0;
-#X obj 66 62 cnv 12 34 16 empty \$0-s_Op2FBCanvas empty 4 6 576 8 -166441
+#X obj 68 62 cnv 12 34 16 empty \$0-s_Op2FBCanvas empty 4 6 0 8 -166441
-262144 0;
-#X obj 67 63 nbx 3 14 0 100 0 0 \$0-op2->op2 \$0-send-op2->op2 empty
-0 -6 1728 8 -166441 -1 -1 0 256;
-#X obj 78 82 cnv 15 1 46 \$0-r_Op2Op1 \$0-s_Op2Op1 empty 20 12 1728
-14 -33289 -262144 0;
-#X obj 90 88 cnv 10 30 1 \$0-r_Op1Op2h \$0-s_Op1Op2h empty 20 12 1728
-14 -33289 -262144 0;
-#X obj 66 80 cnv 12 42 18 empty empty empty 4 6 0 8 -1 -66577 0;
-#X obj 68 82 cnv 12 38 14 empty empty Op_2 4 6 0 8 -233017 -66577 0
-;
-#X obj 121 37 cnv 12 38 16 empty \$0-s_Op1Op3Canvas empty 4 6 576 8
--33289 -262144 0;
-#X obj 131 38 cnv 15 1 42 \$0-r_Op1Op3_1 \$0-s_Op1Op3_1 empty 20 12
-1728 14 -33289 -262144 0;
-#X obj 122 38 nbx 3 14 0 100 0 0 \$0-op1->op3 \$0-send-op1->op3 empty
-0 -6 1728 10 -166441 -1 -1 7 256;
-#X obj 36 42 cnv 10 32 1 \$0-r_Op2Op3h \$0-s_Op2Op3h empty 20 12 1728
-14 -33289 -262144 0;
-#X obj 90 42 cnv 10 30 1 \$0-r_Op1Op3h \$0-s_Op1Op3h empty 20 12 1728
-14 -33289 -262144 0;
-#X obj 68 37 cnv 12 38 16 empty \$0-s_Op2Op3Canvas empty 4 6 576 8
+#X obj 69 63 nbx 3 14 0 100 0 0 \$0-op2->op2 \$0-send-op2->op2 empty
+0 -6 0 8 -166441 -1 -1 0 256;
+#X obj 80 82 cnv 15 1 46 \$0-r_Op2Op1 \$0-s_Op2Op1 empty 20 12 0 14
-166441 -262144 0;
-#X obj 78 37 cnv 15 1 24 \$0-r_Op2Op3 \$0-s_Op2Op3 empty 20 12 1728
+#X obj 92 88 cnv 10 30 1 \$0-r_Op1Op2h \$0-s_Op1Op2h empty 20 12 0
+14 -166441 -262144 0;
+#X obj 68 80 cnv 12 42 18 empty empty empty 4 6 0 8 -1 -66577 0;
+#X obj 70 82 cnv 12 38 14 empty empty Op_2 4 6 0 8 -233017 -66577 0
+;
+#X obj 123 37 cnv 12 38 16 empty \$0-s_Op1Op3Canvas empty 4 6 0 8 -166441
+-262144 0;
+#X obj 133 38 cnv 15 1 42 \$0-r_Op1Op3_1 \$0-s_Op1Op3_1 empty 20 12
+0 14 -166441 -262144 0;
+#X obj 124 38 nbx 3 14 0 100 0 0 \$0-op1->op3 \$0-send-op1->op3 empty
+0 -6 0 10 -166441 -1 -1 0 256;
+#X obj 38 42 cnv 10 32 1 \$0-r_Op2Op3h \$0-s_Op2Op3h empty 20 12 0
+14 -166441 -262144 0;
+#X obj 92 42 cnv 10 30 1 \$0-r_Op1Op3h \$0-s_Op1Op3h empty 20 12 0
14 -166441 -262144 0;
-#X obj 69 38 nbx 3 14 0 100 0 0 \$0-op2->op3 \$0-send-op2->op3 empty
-0 -6 1728 10 -166441 -1 -1 0 256;
-#X obj 12 40 cnv 12 42 18 empty empty empty 4 6 0 8 -1 -66577 0;
-#X obj 14 42 cnv 12 38 14 empty empty Op_3 4 6 0 8 -233017 -66577 0
+#X obj 70 37 cnv 12 38 16 empty \$0-s_Op2Op3Canvas empty 4 6 0 8 -166441
+-262144 0;
+#X obj 80 37 cnv 15 1 24 \$0-r_Op2Op3 \$0-s_Op2Op3 empty 20 12 0 14
+-166441 -262144 0;
+#X obj 71 38 nbx 3 14 0 100 0 0 \$0-op2->op3 \$0-send-op2->op3 empty
+0 -6 0 10 -166441 -1 -1 0 256;
+#X obj 14 40 cnv 12 42 18 empty empty empty 4 6 0 8 -1 -66577 0;
+#X obj 16 42 cnv 12 38 14 empty empty Op_3 4 6 0 8 -233017 -66577 0
;
-#X obj 178 148 bng 15 250 50 0 \$0-r_RsFB \$0-s_RsFB Reset 0 -6 1728
-8 -262144 -1 -1;
+#X obj 180 148 bng 15 250 50 0 \$0-r_RsFB \$0-s_RsFB Reset 0 -6 0 8
+-262144 -1 -1;
#N canvas 536 352 858 576 feedbacksReset 0;
#X obj 215 122 s \$0-send-op1->op1;
#X obj 327 122 s \$0-send-op2->op1;
@@ -293,7 +293,7 @@ empty 20 12 1728 14 -33289 -262144 0;
#X connect 13 0 9 0;
#X connect 13 0 10 0;
#X connect 13 0 11 0;
-#X restore 739 280 pd feedbacksReset;
+#X restore 741 280 pd feedbacksReset;
#N canvas 0 0 1267 910 feedback_Matrix_GUI 0;
#X obj 30 38 moses 1;
#X msg 30 69 color 1 0;
@@ -745,7 +745,7 @@ empty 20 12 1728 14 -33289 -262144 0;
#X connect 196 1 197 1;
#X connect 197 0 198 0;
#X connect 198 0 180 0;
-#X restore 740 259 pd feedback_Matrix_GUI;
+#X restore 742 259 pd feedback_Matrix_GUI;
#N canvas 0 0 452 302 FM_Pitch 0;
#X floatatom 278 194 5 0 0 0 Op2_Pitch - -;
#X floatatom 452 182 5 0 0 0 Op3_Pitch - -;
@@ -811,10 +811,10 @@ empty 20 12 1728 14 -33289 -262144 0;
#X connect 29 1 14 0;
#X connect 29 1 32 0;
#X connect 30 0 0 0;
-#X restore 740 325 pd FM_Pitch;
-#X obj 768 39 loadbang;
-#X obj 768 77 s \$0-s_RsFB;
-#X text 463 291 And Envelopes (op1 \, op2 \, op3) -->;
+#X restore 742 325 pd FM_Pitch;
+#X obj 770 39 loadbang;
+#X obj 770 77 s \$0-s_RsFB;
+#X text 465 291 And Envelopes (op1 \, op2 \, op3) -->;
#N canvas 0 0 1102 748 sound-engine 0;
#X obj 56 190 cos~;
#X obj 56 166 +~;
@@ -1121,7 +1121,7 @@ empty 20 12 1728 14 -33289 -262144 0;
#X connect 72 0 60 1;
#X connect 73 0 74 0;
#X connect 74 0 63 1;
-#X restore 741 236 pd sound-engine;
+#X restore 743 236 pd sound-engine;
#N canvas 384 294 748 517 saves 0;
#X obj 564 140 originator \$1 \$0;
#X obj 564 117 r \$0-originator;
@@ -1208,6 +1208,8 @@ empty 20 12 1728 14 -33289 -262144 0;
#X connect 25 0 7 0;
#X connect 26 0 6 0;
#X restore 60 370 pd ops;
+#X obj 674 184 outlet;
+#X connect 0 2 39 0;
#X connect 1 0 0 0;
#X connect 2 0 15 0;
#X connect 4 0 16 0;
@@ -1233,17 +1235,19 @@ empty 20 12 1728 14 -33289 -262144 0;
#X connect 35 1 33 0;
#X connect 36 0 35 0;
#X connect 37 0 34 0;
-#X restore 741 213 pd saves;
-#X obj 414 239 outlet~;
-#X obj 417 97 inlet;
-#X obj 460 96 inlet;
-#X obj 516 96 inlet;
-#X obj 741 190 inlet;
-#X floatatom 174 237 5 0 0 2 preset #0-preset-in #0-preset-out;
+#X restore 743 213 pd saves;
+#X obj 416 239 outlet~;
+#X obj 419 97 inlet;
+#X obj 462 96 inlet;
+#X obj 518 96 inlet;
+#X obj 743 190 inlet;
+#X floatatom 176 237 5 0 0 2 preset #0-preset-in #0-preset-out;
+#X obj 692 236 outlet;
#X connect 10 0 77 0;
#X connect 72 0 73 0;
+#X connect 76 0 83 0;
#X connect 78 0 7 0;
#X connect 79 0 6 0;
#X connect 80 0 8 0;
#X connect 81 0 76 0;
-#X coords 0 0 1 1 248 380 1;
+#X coords 0 0 1 1 246 380 1;
diff --git a/instruments/foscil~.pd b/instruments/foscil~.pd
new file mode 100644
index 0000000..26eb2e8
--- /dev/null
+++ b/instruments/foscil~.pd
@@ -0,0 +1,64 @@
+#N canvas 62 230 1119 650 10;
+#X obj 269 352 *~;
+#X obj 181 448 cos~;
+#X obj 181 396 +~;
+#X obj 181 354 phasor~ 0;
+#X obj 269 320 osc~ 0;
+#X text 601 59 PHASE MODULATION ("FM") USING TWO OSCILLATORS;
+#X text 93 314 frequency;
+#X text 93 296 modulation;
+#X text 438 342 <-- signal with smoothed;
+#X text 474 362 modulation index to avoid clicks;
+#X text 269 372 amplitude-controlled modulation;
+#X text 269 390 oscillator output;
+#X text 83 338 carrier;
+#X text 83 356 phase -->;
+#X text 59 378 phase;
+#X text 59 396 modulation-->;
+#X text 269 432 output;
+#X text 475 452 To do phase modulation \, we split a "carrier oscillator"
+into its phase calculation (phasor~) and its waveform lookup (cos~).
+These together would be equivalent to an osc~ object \, but the "+~"
+between them adds anopther oscillator's output to the phase.;
+#X text 475 530 You will get the best graphs by choosing reasonably
+low carrier and modulation frequencies (50-100 \, say). The modulation
+index is usually between 0 and 1 (which means the control will typically
+range from 0-100).;
+#X text 717 616 updated for Pd version 0.33;
+#X obj 297 585 outlet~;
+#X text 267 3 car;
+#X text 332 3 mod;
+#X text 388 7 index;
+#X text 234 447 <-- waveform;
+#X obj 182 492 *~;
+#X obj 49 448 inlet~;
+#X text 42 426 amp (0-1);
+#X text 183 3 basefreq;
+#X obj 388 26 inlet~;
+#X obj 326 26 inlet;
+#X obj 261 26 inlet;
+#X obj 190 26 inlet;
+#X obj 185 145 * 1;
+#X obj 183 262 sig~ 0;
+#X obj 268 218 * 1;
+#X obj 307 71 t b f;
+#X obj 238 62 t b f;
+#X connect 0 0 2 1;
+#X connect 1 0 25 0;
+#X connect 2 0 1 0;
+#X connect 3 0 2 0;
+#X connect 4 0 0 0;
+#X connect 25 0 20 0;
+#X connect 26 0 25 1;
+#X connect 29 0 0 1;
+#X connect 30 0 36 0;
+#X connect 31 0 37 0;
+#X connect 32 0 33 0;
+#X connect 32 0 35 0;
+#X connect 33 0 34 0;
+#X connect 34 0 3 0;
+#X connect 35 0 4 0;
+#X connect 36 0 35 0;
+#X connect 36 1 35 1;
+#X connect 37 0 33 0;
+#X connect 37 1 33 1;
diff --git a/instruments/rrad.fm2~.pd b/instruments/rrad.fm2~.pd
new file mode 100644
index 0000000..6b6f0fe
--- /dev/null
+++ b/instruments/rrad.fm2~.pd
@@ -0,0 +1,151 @@
+#N canvas 135 368 405 175 10;
+#X obj 3 18 cnv 15 400 150 empty \$0-background-cnv empty 20 12 1 14
+-233017 -66577 0;
+#X obj 722 17 inlet OSC;
+#N canvas 183 51 981 424 saves 0;
+#X obj 45 160 originator \$1 \$0;
+#X obj 152 132 inlet OSC;
+#X obj 47 55 r \$0-substate;
+#X obj 15 13 inlet substate;
+#X obj 15 35 route substate;
+#X obj 159 55 r \$0-copy;
+#X msg 159 76 copy;
+#X obj 243 50 r \$0-paste;
+#X msg 241 71 paste;
+#X text 154 15 This is the originator \, including some ready to use
+standard functionality.;
+#X text 507 56 Put your commun sends here \, if you like.;
+#X msg 15 91 setsub \$1;
+#X msg 249 184 svdir \$1;
+#X obj 250 139 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
+-1;
+#X obj 250 163 savepanel;
+#X obj 152 189 outlet OSC;
+#X msg 108 214 svxdir /tmp/svdir.xml;
+#X msg 78 241 ldxdir /tmp/svdir.xml;
+#X obj 243 116 r \$0-adsr-OSC-out;
+#X obj 306 144 s \$0-adsr-OSC;
+#X obj 507 110 commun /mod \$0;
+#X obj 606 110 commun /car \$0;
+#X obj 507 86 r \$0-mod;
+#X obj 507 135 s \$0-mod;
+#X obj 606 86 r \$0-car;
+#X obj 607 134 s \$0-car;
+#X obj 543 193 commun /index \$0;
+#X obj 507 185 r \$0-ind;
+#X obj 507 234 s \$0-ind;
+#X connect 0 2 15 0;
+#X connect 1 0 0 1;
+#X connect 1 0 19 0;
+#X connect 2 0 11 0;
+#X connect 3 0 4 0;
+#X connect 4 0 11 0;
+#X connect 4 1 0 0;
+#X connect 5 0 6 0;
+#X connect 6 0 0 0;
+#X connect 7 0 8 0;
+#X connect 8 0 0 0;
+#X connect 11 0 0 0;
+#X connect 12 0 0 0;
+#X connect 13 0 14 0;
+#X connect 14 0 12 0;
+#X connect 16 0 0 0;
+#X connect 17 0 0 0;
+#X connect 18 0 15 0;
+#X connect 20 0 23 0;
+#X connect 21 0 25 0;
+#X connect 22 0 20 0;
+#X connect 24 0 21 0;
+#X connect 26 0 28 0;
+#X connect 27 0 26 0;
+#X restore 660 16 pd saves;
+#N canvas 569 61 450 300 cnv.ctl 0;
+#X obj 90 188 s \$0-background-cnv;
+#X floatatom 108 59 5 100 1000 0 width - -;
+#X floatatom 112 83 4 50 500 0 height - -;
+#X obj 92 132 pack 0 0;
+#X msg 92 159 vis_size \$1 \$2;
+#X obj 110 106 t b f;
+#X connect 1 0 3 0;
+#X connect 2 0 5 0;
+#X connect 3 0 4 0;
+#X connect 4 0 0 0;
+#X connect 5 0 3 0;
+#X connect 5 1 3 1;
+#X restore 585 16 pd cnv.ctl;
+#X obj 11 144 bng 15 250 50 0 \$0-copy empty copy 0 -6 0 8 -225271
+-1 -1;
+#X obj 43 144 bng 15 250 50 0 \$0-paste empty paste 0 -6 0 8 -257472
+-1 -1;
+#X text 244 3 look! ==>;
+#X obj 660 37 outlet OSC;
+#X obj 618 45 inlet;
+#N canvas 478 505 450 300 engine 0;
+#X obj 205 173 foscil~;
+#X obj 120 63 catch~ \$0-adsr;
+#X obj 69 64 inlet;
+#X obj 66 101 mtof;
+#X obj 226 232 outlet~;
+#X obj 159 96 r \$0-car;
+#X obj 231 95 r \$0-mod;
+#X obj 318 111 catch~ \$0-index;
+#X connect 0 0 4 0;
+#X connect 1 0 0 0;
+#X connect 2 0 3 0;
+#X connect 3 0 0 1;
+#X connect 5 0 0 2;
+#X connect 6 0 0 3;
+#X connect 7 0 0 4;
+#X restore 559 120 pd engine;
+#X obj 539 16 inlet;
+#X obj 546 48 unpack 0 0;
+#X obj 542 156 outlet~;
+#X obj 569 80 s \$0-note;
+#X obj 639 79 s \$0-vel;
+#X obj 84 9 r \$0-vel;
+#X obj 81 171 throw~ \$0-adsr;
+#X obj 224 11 r \$0-adsr-OSC;
+#X obj 188 213 s \$0-adsr-OSC-out;
+#X obj 336 3 r \$0-vel;
+#X obj 415 12 r \$0-adsr-OSC;
+#X obj 482 194 s \$0-adsr-OSC-out;
+#X obj 82 35 rrad.adsr~ \$1-adsr;
+#X obj 334 248 throw~ \$0-index;
+#X obj 247 35 rrad.adsr~ \$1-index;
+#X msg 432 212 \$1 20;
+#X obj 327 200 *~;
+#X obj 374 203 line~;
+#X obj 8 49 nbx 5 14 -1e+37 1e+37 0 0 \$0-car \$0-car car 0 -6 1 10
+-241291 -1 -1 5 256;
+#X obj 8 81 nbx 5 14 -1e+37 1e+37 0 0 \$0-mod \$0-mod mod 0 -6 1 10
+-262131 -1 -1 1 256;
+#X obj 8 111 hsl 64 15 0 127 0 0 \$0-ind \$0-ind index -2 -6 1 8 -262135
+-1 -1 4800 1;
+#X obj 496 238 r \$0-ind;
+#X obj 428 191 / 32;
+#X obj 83 37 cnv 15 150 15 empty empty \$1-adsr 20 8 1 12 -228904 -66577
+0;
+#X obj 248 37 cnv 15 150 15 empty empty \$1-index 20 8 1 12 -228904
+-66577 0;
+#X connect 1 0 2 1;
+#X connect 2 0 7 0;
+#X connect 8 0 2 0;
+#X connect 9 0 12 0;
+#X connect 10 0 11 0;
+#X connect 11 0 13 0;
+#X connect 11 0 9 0;
+#X connect 11 1 14 0;
+#X connect 15 0 22 0;
+#X connect 17 0 22 1;
+#X connect 19 0 24 0;
+#X connect 20 0 24 1;
+#X connect 22 0 16 0;
+#X connect 22 1 18 0;
+#X connect 24 0 26 0;
+#X connect 24 1 21 0;
+#X connect 25 0 27 0;
+#X connect 26 0 23 0;
+#X connect 27 0 26 1;
+#X connect 31 0 32 0;
+#X connect 32 0 25 0;
+#X coords 0 0 1 1 403 170 1;