aboutsummaryrefslogtreecommitdiff
path: root/sssad
diff options
context:
space:
mode:
Diffstat (limited to 'sssad')
-rw-r--r--sssad/multifile.pd81
-rw-r--r--sssad/namedstore-help.pd30
-rw-r--r--sssad/namedstore.pd71
3 files changed, 182 insertions, 0 deletions
diff --git a/sssad/multifile.pd b/sssad/multifile.pd
new file mode 100644
index 0000000..9d66abe
--- /dev/null
+++ b/sssad/multifile.pd
@@ -0,0 +1,81 @@
+#N canvas 0 0 590 570 10;
+#N canvas 425 94 599 674 saveme 0;
+#X obj 321 386 textfile;
+#X msg 210 287 clear;
+#X msg 395 369 print;
+#X obj 321 310 list prepend add;
+#X obj 321 336 list trim;
+#X obj 188 387 s SSSAD_ADMIN;
+#X obj 321 242 r SSSAD_ADMIN;
+#X obj 321 286 route persist;
+#X obj 321 264 list trim;
+#X msg 188 321 save;
+#X msg 202 360 set;
+#X obj 166 251 t a b b;
+#X msg 166 434 write \$1;
+#X obj 107 129 hradio 15 1 0 8 empty empty save 0 -6 0 8 -262144 -1
+-1 0;
+#X obj 107 543 until;
+#X msg 107 522 100;
+#X obj 107 499 t b a;
+#X msg 155 543 read \$1 \, rewind;
+#X text 139 522 Avoid loops. A bang normally also works.;
+#X obj 107 159 hradio 15 1 0 8 empty empty load 0 -6 0 8 -262144 -1
+-1 0;
+#X obj 166 220 makefilename state-%d.sssad;
+#X obj 107 457 makefilename state-%d.sssad;
+#X obj 319 433 s SSSAD;
+#X obj 386 430 s SSSAD_ADMIN;
+#X msg 386 405 set;
+#X connect 0 0 22 0;
+#X connect 0 1 24 0;
+#X connect 1 0 0 0;
+#X connect 2 0 0 0;
+#X connect 3 0 4 0;
+#X connect 4 0 0 0;
+#X connect 6 0 8 0;
+#X connect 7 0 3 0;
+#X connect 8 0 7 0;
+#X connect 9 0 5 0;
+#X connect 10 0 5 0;
+#X connect 11 0 12 0;
+#X connect 11 1 9 0;
+#X connect 11 2 1 0;
+#X connect 12 0 0 0;
+#X connect 13 0 20 0;
+#X connect 14 0 0 0;
+#X connect 15 0 14 0;
+#X connect 16 0 15 0;
+#X connect 16 1 17 0;
+#X connect 17 0 0 0;
+#X connect 19 0 21 0;
+#X connect 20 0 11 0;
+#X connect 21 0 16 0;
+#X connect 24 0 23 0;
+#X coords 0 -1 1 1 155 80 1 100 100;
+#X restore 344 171 pd saveme;
+#X floatatom 171 91 5 0 0 0 - - -;
+#X obj 154 166 hsl 128 15 0 127 0 0 empty empty empty -2 -6 0 8 -262144
+-1 -1 0 1;
+#X obj 227 272 pack 0 0;
+#X obj 248 251 t b f;
+#X floatatom 227 225 5 0 0 0 - - -;
+#X floatatom 266 225 5 0 0 0 - - -;
+#X obj 104 318 unpack 0 0;
+#X obj 106 127 sssad/sssad store_me;
+#X obj 94 197 sssad/sssad store_me_too;
+#X obj 104 293 sssad/sssad store_a_list;
+#X text 56 17 This isn't finished yet. It's something Frank started
+that I want to turn into something else.;
+#X connect 1 0 8 1;
+#X connect 2 0 9 1;
+#X connect 3 0 10 1;
+#X connect 4 0 3 0;
+#X connect 4 1 3 1;
+#X connect 5 0 3 0;
+#X connect 6 0 4 0;
+#X connect 7 0 5 0;
+#X connect 7 1 6 0;
+#X connect 8 0 1 0;
+#X connect 9 0 2 0;
+#X connect 10 0 7 0;
diff --git a/sssad/namedstore-help.pd b/sssad/namedstore-help.pd
new file mode 100644
index 0000000..984986b
--- /dev/null
+++ b/sssad/namedstore-help.pd
@@ -0,0 +1,30 @@
+#N canvas 210 191 682 468 10;
+#N canvas 0 0 450 300 datastore 1;
+#X obj 10 10 r SSSADDATA;
+#X msg 10 30 \; SSSAD z 1 \; SSSAD y 2 \; SSSAD x 104 \; SSSAD_ADMIN
+set \;;
+#X connect 0 0 1 0;
+#X restore 11 86 pd datastore;
+#X obj 11 113 sssad/datastore;
+#X floatatom 57 279 5 0 0 0 - - -;
+#X obj 57 331 hradio 15 1 0 8 empty empty empty 0 -6 0 8 -262144 -1
+-1 1;
+#X obj 60 212 hsl 128 15 0 127 0 0 empty empty empty -2 -6 0 8 -262144
+-1 -1 10400 1;
+#X obj 13 305 sssad/sssad y;
+#X obj 13 355 sssad/sssad z;
+#X text 10 9 The datastore abstraction allows you to save sssad data
+into a message box that gets saved with the patch \, instead of writing
+it into a text file.;
+#X text 9 53 It requires that you first create an empty sub patch called
+"datastore" as below:;
+#X obj 13 236 sssad/sssad x;
+#X text 163 147 Use these GUIs to test it out \, and check the contents
+of the 'datastore' subpatch to see the data being written as you change
+it.;
+#X connect 2 0 5 1;
+#X connect 3 0 6 1;
+#X connect 4 0 9 1;
+#X connect 5 0 2 0;
+#X connect 6 0 3 0;
+#X connect 9 0 4 0;
diff --git a/sssad/namedstore.pd b/sssad/namedstore.pd
new file mode 100644
index 0000000..2bc6da0
--- /dev/null
+++ b/sssad/namedstore.pd
@@ -0,0 +1,71 @@
+#N canvas 0 0 733 629 10;
+#X text 40 597 Hint: get creative with the [OSCroute] external!;
+#X obj 6 22 bng 14 250 50 0 \$0-save empty save 17 7 0 8 -128992 -66577
+-1;
+#X obj 6 40 bng 14 250 50 0 \$0-load empty load 17 7 0 8 -128992 -1
+-1;
+#X obj 16 103 r \$0-load;
+#X text 103 27 This abstraction and all the other sssad state saving
+stuff is due to the genius of Frank Barknecht. Any mistakes are purely
+my own.;
+#X text 84 104 if the load button is pressed;
+#X obj 442 369 r SSSAD_ADMIN;
+#X obj 442 424 route persist;
+#X obj 442 394 list trim;
+#X obj 442 480 list trim;
+#X msg 96 239 save;
+#X obj 118 492 s SSSAD_ADMIN;
+#X obj 442 456 list prepend add SSSAD;
+#X msg 140 452 set \, addsemi;
+#X msg 96 520 add SSSAD_ADMIN set;
+#X obj 96 215 r \$0-save;
+#X obj 96 262 t b a b b b;
+#X obj 168 287 s SSSAD_SAVE;
+#X msg 327 122 bang;
+#X obj 327 165 list trim;
+#X obj 327 144 list append \$1;
+#X obj 327 224 route 0;
+#X obj 327 102 loadbang;
+#X obj 478 253 makefilename pd-%s;
+#X obj 154 335 symbol;
+#X msg 191 316 symbol \$1;
+#X msg 328 253 symbol pd-datastore;
+#X obj 478 232 list;
+#X msg 154 379 \; \$1 clear \; \$1 obj 10 10 r \$1/SSSADDATA \; \$1
+msg 10 30 \; \$1 connect 0 0 1 0 \;;
+#X obj 233 559 s \$1/SSSADDATA;
+#X obj 16 126 s \$1/SSSADDATA;
+#X obj 154 357 pack s s;
+#X obj 357 205 list;
+#X obj 327 185 t a a;
+#X connect 3 0 30 0;
+#X connect 6 0 8 0;
+#X connect 7 0 12 0;
+#X connect 8 0 7 0;
+#X connect 9 0 29 0;
+#X connect 10 0 16 0;
+#X connect 12 0 9 0;
+#X connect 13 0 29 0;
+#X connect 14 0 29 0;
+#X connect 15 0 10 0;
+#X connect 16 0 14 0;
+#X connect 16 1 11 0;
+#X connect 16 2 13 0;
+#X connect 16 3 24 0;
+#X connect 16 4 17 0;
+#X connect 18 0 20 0;
+#X connect 19 0 33 0;
+#X connect 20 0 19 0;
+#X connect 21 0 26 0;
+#X connect 21 1 27 0;
+#X connect 22 0 18 0;
+#X connect 23 0 25 0;
+#X connect 24 0 31 0;
+#X connect 25 0 24 1;
+#X connect 26 0 25 0;
+#X connect 27 0 23 0;
+#X connect 31 0 28 0;
+#X connect 32 0 31 1;
+#X connect 33 0 21 0;
+#X connect 33 1 32 0;
+#X coords 0 -1 1 1 85 60 1 0 0;