#N canvas 151 22 872 693 10;
#X text 217 2 this array stores midi numbers for ringtone melody;
#X obj 36 155 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0
1;
#X obj 36 287 mtof;
#X obj 36 318 osc~;
#X obj 37 354 *~;
#X obj 37 389 dac~;
#X obj 88 326 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0
1;
#X obj 264 313 tabosc4~ ringtone;
#X obj 265 395 dac~;
#X floatatom 264 239 5 0 0 0 - - -;
#X obj 34 26 table ringtone 19;
#X obj -20 440 loadbang;
#X msg -20 480 \; ringtone read data.txt \;;
#X obj 36 175 metro 500;
#X obj 35 197 f;
#X obj 64 197 + 1;
#X obj 35 218 mod 19;
#X text 48 235 <-index in;
#X text 290 515 You need semicolon for internal messages. And you must
tell the array at which point start to write (I added 0 at the start
of the message);
#X msg 295 566 \; ringtone 0 0.25 0.78 0.12 0.6 0.49 0.1 0.65 0.25
0.55 0.1 0.18 0.56 0.28 0.94 0.47 0.26 0.6 0.23 0.76 \;;
#X text 46 268;
#X obj 35 250 tabread ringtone;
#X text 131 211;
#X text 88 217;
#X text 257 215;
#X text 383 299;
#X connect 1 0 13 0;
#X connect 2 0 3 0;
#X connect 3 0 4 0;
#X connect 4 0 5 0;
#X connect 4 0 5 1;
#X connect 6 0 4 1;
#X connect 7 0 8 0;
#X connect 7 0 8 1;
#X connect 9 0 7 0;
#X connect 11 0 12 0;
#X connect 11 0 19 0;
#X connect 13 0 14 0;
#X connect 14 0 15 0;
#X connect 14 0 16 0;
#X connect 15 0 14 1;
#X connect 16 0 21 0;
#X connect 21 0 2 0;
