aboutsummaryrefslogtreecommitdiff
path: root/pd/doc/7.stuff
diff options
context:
space:
mode:
authorMiller Puckette <millerpuckette@users.sourceforge.net>2005-08-21 17:46:52 +0000
committerMiller Puckette <millerpuckette@users.sourceforge.net>2005-08-21 17:46:52 +0000
commit4cde391f5f1ba80c803fc02adece857e5eb720f7 (patch)
tree29b4221f9cd35b5de5529e684b9e3f784c381feb /pd/doc/7.stuff
parent0d4b66c7bc77f6a2fafb1debe548f8621d21cf70 (diff)
Fixed scalar_redraw to check if glist is visible; moved 'data' doc and
updated it somewhat. svn path=/trunk/; revision=3441
Diffstat (limited to 'pd/doc/7.stuff')
-rw-r--r--pd/doc/7.stuff/data-structures/0.intro.txt113
-rw-r--r--pd/doc/7.stuff/data-structures/1.scalars.pd63
-rw-r--r--pd/doc/7.stuff/data-structures/2.getting.data.pd77
-rw-r--r--pd/doc/7.stuff/data-structures/3.setting.data.pd141
-rw-r--r--pd/doc/7.stuff/data-structures/4.append.pd36
-rw-r--r--pd/doc/7.stuff/data-structures/5.array.pd120
-rw-r--r--pd/doc/7.stuff/data-structures/6.file.pd69
-rw-r--r--pd/doc/7.stuff/data-structures/7.sequencer.pd193
-rw-r--r--pd/doc/7.stuff/data-structures/8.beat-patterns.pd452
-rw-r--r--pd/doc/7.stuff/data-structures/9.sliderule.pd196
-rw-r--r--pd/doc/7.stuff/data-structures/beat-maker.pd44
-rw-r--r--pd/doc/7.stuff/data-structures/data-array.pd64
-rw-r--r--pd/doc/7.stuff/data-structures/data-start.pd40
-rw-r--r--pd/doc/7.stuff/data-structures/file.txt39
-rw-r--r--pd/doc/7.stuff/data-structures/score.txt94
-rw-r--r--pd/doc/7.stuff/data-structures/voice.pd119
-rw-r--r--pd/doc/7.stuff/data-structures/z.txt64
17 files changed, 0 insertions, 1924 deletions
diff --git a/pd/doc/7.stuff/data-structures/0.intro.txt b/pd/doc/7.stuff/data-structures/0.intro.txt
deleted file mode 100644
index a1df9a88..00000000
--- a/pd/doc/7.stuff/data-structures/0.intro.txt
+++ /dev/null
@@ -1,113 +0,0 @@
-Pd release 0.23 and onward include objects for managing lists of data. The
-objects allow you to describe data structures and how they are viewed
-("template objects") and to traverse lists ("traversal objects.")
-
-The rest of this file gives a highly condensed summary of what's there; the
-patches, starting with "1.scalars.pd", act as a tutorial.
-
-1. TEMPLATE OBJECTS.
-
-templates describe data structures. You can add an item to a data structure
-using "field" or ask for a shape to be drawn using a "display command."
-
-1.1. "template" -- data structure.
-
-usage, "template <field1> <field2> ..."
-
-where the fields are either "float <name>", "symbol <name>", "list <name>"
-(don't try that yet); or "array <name> <template-for-elements>.
-
-1.2. DISPLAY COMMANDS.
-
-
-These are objects which ask Pd to draw a shape corresponding to some fields
-of the datum.
-
-1.2.1. POLYGONS and CURVES.
-
-polygons: polygon <outline-color> <line-width> <x, y> ...
-filled polygons: fpolygon <fill-color> <outline-color> <line-width> <x, y> ...
-curves: curve <outline-color> <line-width> <x, y> ...
-filled curves: fcurve <fill-color> <outline-color> <line-width> <x, y> ...
-
-Each argument can either be a number or a symbol. If a symbol, it's the
-name of a field (which must be a "float) which specifies the vaiue.
-So for instance in the "1.scalar.pd" example, in the template "template1",
-the object "fpolygon 244 q 5 0 0 20 z 40 0" draws a filled polygon whose
-interior color is 244 (red 2, green 4, blue 4) but whose outline color
-depends on the value of the field "q". Its coordinates describe a triangle
-whose altitude is given by "z."
-
-1.2.2 PLOT.
-
-The "plot" objects plots an array field as shown in 5_array.pd.
-
-2. TRAVERSAL.
-
-In this release of Pd, you can only traverse lists all of whose elements
-belong to the same template; this restriction will be relaxed in a future
-release. You "traverse" a list either to build it, to get its elements,
-or to change their values.
-
-2.1. POINTER.
-
-The "pointer" object can be used to refer to an element of a list. Its
-methods are:
-
-2.1.1. traverse <symbol>.
-
-Point to the "head" of a list. The symbol should match the name of a Pd
-window holding the list. The pointer is output, but you can't set or get the
-fields of the "head" pointer; you can only get the "next" element or "append"
-to the list.
-
-2.1.2. next. Goes to the next element of the list. Either the pointer
-is output on the left side, or else a "bang" at right tells you that no
-more objects are forthcoming.
-
-2.1.3. bang.
-outputs the current pointer.
-
-2.2. APPEND. Adds an element of the specified template to the list. You
-specify what fields you want to supply and the last inlet takes a pointer to
-the element you want to "append" after.
-
-2.3. GET.
-
- get <template> <field...>
-
-send it a pointer to an object belonging to the <template> and it outputs
-the (floating-point) fields.
-
-2.4. SET.
-
- set <template> <field...>
-
-send it a pointer (at the rightmost inlet) and values for the specified
-fields, and their values are changed accordingly.
-
-2.5. GETSIZE.
-
- getsize <template> <array-field>
-
-outputs the size of the named field, which must be an array, when it receives
-a pointer to the owner as input.
-
-2.6. SETSIZE.
-
- setsize <template> <array-field>
-
-Send it a pointer to the owner (right inlet) and then the desired size
-(left inlet) and the array is resized. If a template contains an array,
-each scalar belonging to the template can have its own size for the array.
-
-2.7. ELEMENT.
-
- element <template> <array-field>
-
-Pass it an index and a pointer and it outputs a pointer to an element of the
-array.
-
-
-
-
diff --git a/pd/doc/7.stuff/data-structures/1.scalars.pd b/pd/doc/7.stuff/data-structures/1.scalars.pd
deleted file mode 100644
index ec5794cb..00000000
--- a/pd/doc/7.stuff/data-structures/1.scalars.pd
+++ /dev/null
@@ -1,63 +0,0 @@
-#N struct template1 float x float y float z float q;
-#N canvas 363 11 579 461 12;
-#N canvas 13 22 297 180 data 1;
-#X scalar template1 50 100 30 9 \;;
-#X scalar template1 150 100 -20 900 \;;
-#X restore 60 347 pd data;
-#N canvas 10 274 550 324 template1 1;
-#X obj 60 46 filledpolygon 244 q 5 0 0 20 z 40 0;
-#X text 4 164 The filledpolygon's arguments are interior color \, border
-color \, border width \, and then the points of the polygon. Arguments
-which are symbols ("q" and "z" in this case) mean to take the values
-from the data structure. Other values are constant. The position of
-the object is automatically controlled by fields named "x" and "y".
-;
-#X obj 60 21 struct template1 float x float y float z float q;
-#X text 3 67 This subpatch acts as a template which describes the data
-structure. The "struct" specifies four floating point values named
-x \, y \, z \, and q. The "filledpolygon" is a drawing instruction.
-Templates should have only one template object but may have any number
-of drawing instructions.;
-#X restore 60 371 pd template1;
-#N canvas 0 0 440 292 stuff 0;
-#X obj 235 185 pointer;
-#X obj 28 187 append template1 x y z q;
-#X msg 235 127 \; pd-data clear;
-#X msg 235 163 traverse pd-data \, bang;
-#X obj 125 128 t b b b;
-#X msg 125 87 bang;
-#X obj 125 56 loadbang;
-#X text 159 87 click here to re-initialize;
-#X text 25 243 This subpatch sets up the "data" window with two objects.
-How this works will get explained later.;
-#X msg 28 164 50 100 30 9 \, 150 100 -20 900;
-#X connect 0 0 1 4;
-#X connect 3 0 0 0;
-#X connect 4 0 9 0;
-#X connect 4 1 3 0;
-#X connect 4 2 2 0;
-#X connect 5 0 4 0;
-#X connect 6 0 5 0;
-#X connect 9 0 1 0;
-#X restore 59 397 pd stuff;
-#X text 37 72 The positions \, border color \, and altitude of each
-triangle are numeric values which can control \, or be controlled by
-\, other elements of the patch.;
-#X text 37 124 When the data window is locked (not in edit mode) you
-can drag the apex of either triangle up or down to change the altitude
-(you should see the cursor change with dragging is meaningful.) In
-edit (unlocked) mode \, you can move teh entire triangles around \,
-or cut \, copy \, and paste them.;
-#X text 47 325 subpatches:;
-#X text 37 281 Data is not persistent. If you save a Pd patch and reopen
-it \, the "data" isn't preserved.;
-#X text 37 5 This patch shows a simple data window with two objects
-in it. The objects' data structures and appearances are defined by
-the "template1" subpatch. This kind of object is called a "scalar."
-;
-#X text 37 207 Scalars are described by "templates" \, which are subwindows.
-The subwindows are found by their name \, in this case "template1."
-The template describes what form the data take and how it is shown.
-It's possible to mix data of many different templates in the same collection.
-;
-#X text 294 398 updated for Pd version 0.35.;
diff --git a/pd/doc/7.stuff/data-structures/2.getting.data.pd b/pd/doc/7.stuff/data-structures/2.getting.data.pd
deleted file mode 100644
index 4b200052..00000000
--- a/pd/doc/7.stuff/data-structures/2.getting.data.pd
+++ /dev/null
@@ -1,77 +0,0 @@
-#N struct template2 float x float y float z float q float zz;
-#N canvas 138 2 630 580 12;
-#X text 345 543 updated for Pd version 0.32.;
-#N canvas 42 312 598 266 stuff 0;
-#X obj 353 159 pointer;
-#X obj 117 103 t b b b;
-#X msg 117 62 bang;
-#X obj 117 31 loadbang;
-#X text 163 62 click here to re-initialize;
-#X text 127 242 Explained later...;
-#X obj 28 208 append template2 x y z q;
-#X msg 353 101 \; pd-data2 clear;
-#X msg 353 137 traverse pd-data2 \, bang;
-#X msg 28 185 50 150 30 9 \, 200 100 -20 900 \, 100 100 -50 30;
-#X connect 0 0 6 4;
-#X connect 1 0 9 0;
-#X connect 1 1 8 0;
-#X connect 1 2 7 0;
-#X connect 2 0 1 0;
-#X connect 3 0 2 0;
-#X connect 8 0 0 0;
-#X connect 9 0 6 0;
-#X restore 506 310 pd stuff;
-#X text 506 242 subpatches:;
-#X obj 15 303 pointer;
-#X msg 27 271 next;
-#X text 75 301 <- object that outputs pointers to scalars;
-#N canvas 13 22 307 198 data2 1;
-#X scalar template2 50 150 30 9 0 \;;
-#X scalar template2 200 100 -20 900 0 \;;
-#X scalar template2 100 100 -50 30 0 \;;
-#X restore 506 265 pd data2;
-#N canvas 315 125 554 155 template2 1;
-#X text 13 79 The template for the two scalars \, as in the last patch
-;
-#X obj 15 46 filledpolygon 244 q 5 0 0 20 z 40 0;
-#X obj 14 21 struct template2 float x float y float z float q;
-#X restore 506 288 pd template2;
-#X obj 15 355 get template2 x y z q;
-#X floatatom 15 384 5 0 0 0 - - -;
-#X floatatom 76 384 5 0 0 0 - - -;
-#X floatatom 137 384 5 0 0 0 - - -;
-#X floatatom 199 385 5 0 0 0 - - -;
-#X msg 15 246 traverse pd-data2;
-#X obj 59 330 print;
-#X text 111 331 <- this gets a bang when we reach the end;
-#X text 211 353 <- this takes incoming pointers;
-#X text 214 367 and outputs the values of x \, y \, z \, and q.;
-#X text 172 245 <- go to head of list (click first);
-#X text 68 273 <- output next item (click 4 times);
-#X text 14 5 The simplest thing you can do with a collection of scalars
-(a list) is to traverse it \, getting the numbers back out. This is
-done using two objects \, "pointer" which does the traversal \, and
-"get" which \, given a pointer to a scalar \, extracts numeric quantities
-from it.;
-#X text 14 85 You can send the "pointer" object a "traverse" message
-to point it to the head of the list. The argument "pd-data2" indicates
-the Pd window named "data2." The head of the list means \, not the
-first scalar in the list \, but the position before the first scalar
-\, which is a valid pointer in Pd but has no data or template.;
-#X text 14 180 The "next" message tells the "pointer" object to go
-to the next scalar in the list and output it. If there are no more
-\, "pointer" outputs a bang at right.;
-#X text 19 424 The "get" object takes a pointer \, checks that its
-template agrees with what "get" is expecting \, i.e. \, "template2"
-\, and if so outputs the values of x \, y \, z \, and q in the usual
-reverse order.;
-#X text 18 492 The pointer sent from "pointer" to "get" is an elementary
-Pd type on a level with "float" and "symbol".;
-#X connect 3 0 8 0;
-#X connect 3 1 14 0;
-#X connect 4 0 3 0;
-#X connect 8 0 9 0;
-#X connect 8 1 10 0;
-#X connect 8 2 11 0;
-#X connect 8 3 12 0;
-#X connect 13 0 3 0;
diff --git a/pd/doc/7.stuff/data-structures/3.setting.data.pd b/pd/doc/7.stuff/data-structures/3.setting.data.pd
deleted file mode 100644
index 1f300ca3..00000000
--- a/pd/doc/7.stuff/data-structures/3.setting.data.pd
+++ /dev/null
@@ -1,141 +0,0 @@
-#N struct template3 float x float y float w float h float q;
-#N canvas 401 39 621 469 12;
-#X floatatom 60 371 0 0 0 0 - - -;
-#X floatatom 60 323 0 0 0 0 - - -;
-#X floatatom 60 275 0 0 0 0 - - -;
-#X floatatom 60 227 0 0 0 0 - - -;
-#X floatatom 324 322 0 0 0 0 - - -;
-#X floatatom 283 322 0 0 0 0 - - -;
-#X floatatom 240 322 0 0 0 0 - - -;
-#X obj 197 274 pointer;
-#X msg 205 249 next;
-#X floatatom 197 322 0 0 0 0 - - -;
-#N canvas 19 29 363 341 data3 1;
-#X scalar template3 18 25 43 18 741 \;;
-#X scalar template3 111 109 75 25 72 \;;
-#X scalar template3 111 32 4 15 163 \;;
-#X scalar template3 59 1 13 34 563 \;;
-#X scalar template3 148 26 37 20 566 \;;
-#X scalar template3 173 221 76 48 763 \;;
-#X scalar template3 250 127 18 36 543 \;;
-#X scalar template3 124 210 78 21 107 \;;
-#X scalar template3 264 183 32 32 178 \;;
-#X scalar template3 26 28 56 60 132 \;;
-#X scalar template3 2 202 66 2 808 \;;
-#X scalar template3 246 33 74 51 642 \;;
-#X scalar template3 214 226 8 43 180 \;;
-#X scalar template3 57 145 51 58 939 \;;
-#X scalar template3 216 102 36 43 505 \;;
-#X scalar template3 166 86 68 9 614 \;;
-#X scalar template3 144 191 56 28 886 \;;
-#X scalar template3 228 2 62 1 758 \;;
-#X scalar template3 168 169 48 22 644 \;;
-#X scalar template3 223 248 73 50 727 \;;
-#X restore 269 425 pd data3;
-#N canvas 100 436 466 223 template3 1;
-#X obj 25 68 filledpolygon q 0 1 0 0 w 0 w h 0 h;
-#X obj 26 163 drawnumber q 0 0 0;
-#X text 22 39 five numeric ("float") fields;
-#X text 25 88 drawing a rectangle \, interior color q \, border black
-and one unit thick \, through the points (0 \, 0) \, (w \, 0) \, (w
-\, h) \, and (0 \, h). Note that the three points containing variables
-become hot spots for mouse dragging.;
-#X text 26 184 Draw the value of q as an Araboc numeral \, at (0 \,
-0) \, in black.;
-#X obj 24 19 struct template3 float x float y float w float h float
-q;
-#X restore 269 446 pd template3;
-#N canvas 313 223 587 367 stuff 0;
-#X obj 352 180 pointer;
-#X obj 352 204 t b b p;
-#X obj 222 333 append template3 x y w h q;
-#X obj 288 9 loadbang;
-#X obj 288 62 t b b b;
-#X msg 331 138 traverse pd-data3;
-#X msg 477 136 \; pd-data3 clear;
-#X msg 240 110 0;
-#X obj 187 136 f;
-#X obj 220 136 + 1;
-#X obj 189 112 until;
-#X obj 201 159 sel 20;
-#X obj 251 159 t b;
-#X msg 290 32 bang;
-#X obj 25 237 random 300;
-#X obj 100 237 random 300;
-#X obj 323 236 random 1000;
-#X obj 177 237 random 80;
-#X obj 252 237 random 80;
-#X obj 101 263 - 30;
-#X obj 354 11 inlet;
-#X connect 0 0 1 0;
-#X connect 1 0 14 0;
-#X connect 1 1 15 0;
-#X connect 1 1 16 0;
-#X connect 1 1 17 0;
-#X connect 1 1 18 0;
-#X connect 1 2 2 5;
-#X connect 3 0 13 0;
-#X connect 4 0 10 0;
-#X connect 4 1 5 0;
-#X connect 4 1 7 0;
-#X connect 4 2 6 0;
-#X connect 5 0 0 0;
-#X connect 7 0 8 1;
-#X connect 8 0 11 0;
-#X connect 8 0 9 0;
-#X connect 9 0 8 1;
-#X connect 10 0 8 0;
-#X connect 11 0 10 1;
-#X connect 11 1 12 0;
-#X connect 12 0 0 0;
-#X connect 13 0 4 0;
-#X connect 14 0 2 0;
-#X connect 15 0 19 0;
-#X connect 16 0 2 4;
-#X connect 17 0 2 2;
-#X connect 18 0 2 3;
-#X connect 19 0 2 1;
-#X connect 20 0 13 0;
-#X restore 269 404 pd stuff;
-#X msg 269 379 remake;
-#X obj 197 298 get template3 x y w h q;
-#X floatatom 356 322 0 0 0 0 - - -;
-#X obj 60 251 set template3 x;
-#X obj 60 299 set template3 y;
-#X obj 60 347 set template3 w;
-#X obj 60 394 set template3 h;
-#X floatatom 60 418 0 0 0 0 - - -;
-#X obj 60 441 set template3 q;
-#X msg 197 226 traverse pd-data3;
-#X text 46 5 The "set" object allows you to change numeric values.
-In this example \, the template specifies five fields describing the
-(x \, y) location \, width \, height \, and color. A new feature is
-that the color is also getting printed out under the rectangles. This
-is done using the "drawnumber" object in the template.;
-#X text 323 378 <- click to randomize;
-#X text 45 99 Getting parameter values is as in the previous patch
-\; however \, as you traverse the list with "next" messages the new
-pointers are also sent to the five "set" objects. These have as arguments
-the template name and the name of the field they will set. You can
-drag on the five number boxes (after selecting an object with "traverse"
-and "next" messages) to change its location \, shape \, and color.
-;
-#X connect 0 0 19 0;
-#X connect 1 0 18 0;
-#X connect 2 0 17 0;
-#X connect 3 0 16 0;
-#X connect 7 0 14 0;
-#X connect 7 0 16 1;
-#X connect 7 0 17 1;
-#X connect 7 0 18 1;
-#X connect 7 0 19 1;
-#X connect 7 0 21 1;
-#X connect 8 0 7 0;
-#X connect 13 0 12 0;
-#X connect 14 0 9 0;
-#X connect 14 1 6 0;
-#X connect 14 2 5 0;
-#X connect 14 3 4 0;
-#X connect 14 4 15 0;
-#X connect 20 0 21 0;
-#X connect 22 0 7 0;
diff --git a/pd/doc/7.stuff/data-structures/4.append.pd b/pd/doc/7.stuff/data-structures/4.append.pd
deleted file mode 100644
index b5c2492b..00000000
--- a/pd/doc/7.stuff/data-structures/4.append.pd
+++ /dev/null
@@ -1,36 +0,0 @@
-#N canvas 308 71 688 415 12;
-#X obj 421 332 pointer;
-#X obj 108 277 t b b b;
-#X msg 120 241 bang;
-#X text 161 240 click here to re-initialize;
-#X msg 11 313 50 250 30 9 \, 200 200 -20 900 \, 100 200 -50 30;
-#X text 56 27 The objects below put three items in the data window.
-First the window is cleared. Then a "pointer" object is instructed
-to point to the beginning of the data window ("traverse pd-data") \,
-and to output its value ("bang") to the "append" object. This object
-is then given numeric values to create three items.;
-#X obj 11 336 append template4 x y z q;
-#X msg 421 269 \; pd-data4 clear;
-#N canvas 0 0 315 341 data4 1;
-#X restore 430 219 pd data4;
-#N canvas 15 278 519 148 template4 0;
-#X obj 17 44 filledpolygon 244 q 5 0 0 20 z 40 0;
-#X text 13 79 The template for the two scalars \, as in the last patch
-;
-#X obj 17 19 struct template4 float x float y float z float q;
-#X restore 428 243 pd template4;
-#X msg 421 309 traverse pd-data4 \, bang;
-#X text 57 165 The outlet of "append" is a pointer to the newly created
-scalar. You can pass that on to other append objects if you want to
-build heterogenous lists.;
-#X text 363 375 Updated for Pd version 0.32;
-#X text 57 121 The "append" object is given the argument "template4"
-to specify what kind of data structure to append. The other arguments
-are the names of variables we'll set.;
-#X connect 0 0 6 4;
-#X connect 1 0 4 0;
-#X connect 1 1 10 0;
-#X connect 1 2 7 0;
-#X connect 2 0 1 0;
-#X connect 4 0 6 0;
-#X connect 10 0 0 0;
diff --git a/pd/doc/7.stuff/data-structures/5.array.pd b/pd/doc/7.stuff/data-structures/5.array.pd
deleted file mode 100644
index 15e43d22..00000000
--- a/pd/doc/7.stuff/data-structures/5.array.pd
+++ /dev/null
@@ -1,120 +0,0 @@
-#N struct template5 float x float y float z float q array bazoo template5-element
-;
-#N struct template5-element float y;
-#N canvas 67 294 709 456 12;
-#X obj 235 323 pointer;
-#X floatatom 232 183 0 0 0 0 - - -;
-#X msg 235 300 bang;
-#X floatatom 15 200 0 0 0 0 - - -;
-#X floatatom 17 350 0 0 0 0 - - -;
-#X floatatom 235 369 0 0 0 0 - - -;
-#X floatatom 451 276 0 0 0 0 - - -;
-#X obj 451 229 pointer;
-#X obj 318 163 pointer;
-#X msg 449 194 bang;
-#N canvas 0 0 384 196 data5 1;
-#X scalar template5 60 109 30 9 \; 0 \; 0 \; 0 \; 0 \; 0 \; 3 \; 0
-\; 0 \; 0 \; 7 \; -60 \; -66 \; -68 \; -70 \; -88 \; -100 \; -100 \;
-14 \; 12 \; 8 \; 6 \; 2 \; -4 \; -26 \; -34 \; -58 \; -60 \; -66 \;
--66 \; -66 \; -66 \; 0 \; 0 \; 0 \; 0 \; 0 \; 0 \; 0 \; 0 \; 0 \; 0
-\; 0 \; 0 \; 0 \; 0 \; 43 \; 0 \; 0 \; 0 \; 0 \; \;;
-#X restore 508 314 pd data5;
-#N canvas 470 534 646 260 template5 1;
-#X obj 8 91 filledpolygon 244 q 3 0 0 20 z 40 0;
-#X text 6 44 this declares an array named "bazoo" whose elements are
-described by "template5-element." Array declarations take three arguments
-while "float" declarations take only two.;
-#X text 6 136 Here we ask to plot the array \, color 700 \, line width
-3 \, starting location (30 \, 10) relative to the scalar \, points
-spaced 4 apart.;
-#X text 7 186 You can also do (x \, y) plots and/or make the line thickness
-variable---see the help window for "plot".;
-#X obj 6 8 struct template5 float x float y float z float q array bazoo
-template5-element;
-#X obj 8 113 plot bazoo 700 3 30 40 4;
-#X restore 508 337 pd template5;
-#N canvas 65 248 568 128 template5-element 0;
-#X text 12 36 This says that array elements will have a single floating-point
-number named "y". The variable name "y" is automatically assumed to
-control screen height \; if you don't have at least that variable you
-can't plot the array..;
-#X obj 35 11 struct template5-element float y;
-#X restore 508 360 pd template5-element;
-#N canvas 515 84 589 429 stuff 0;
-#X obj 354 163 pointer;
-#X obj 136 102 t b b b;
-#X msg 136 61 bang;
-#X text 170 61 click here to re-initialize;
-#X obj 134 163 append template5 x y z q;
-#X msg 354 100 \; pd-data5 clear;
-#X msg 354 140 traverse pd-data5 \, bang;
-#X msg 283 280 50;
-#X obj 284 307 setsize template5 bazoo;
-#X obj 137 23 loadbang;
-#X msg 134 140 50 150 30 9;
-#X obj 134 191 t b b p;
-#X floatatom 68 327 0 0 0 0 - - -;
-#X floatatom 14 332 0 0 0 0 - - -;
-#X obj 14 376 set template5-element y;
-#X obj 68 350 element template5 bazoo;
-#X obj 20 303 unpack;
-#X msg 12 258 3 5 \, 7 9 \, -30 10 \, 43 45;
-#X connect 0 0 4 4;
-#X connect 1 0 10 0;
-#X connect 1 1 6 0;
-#X connect 1 2 5 0;
-#X connect 2 0 1 0;
-#X connect 4 0 11 0;
-#X connect 6 0 0 0;
-#X connect 7 0 8 0;
-#X connect 9 0 2 0;
-#X connect 10 0 4 0;
-#X connect 11 0 17 0;
-#X connect 11 1 7 0;
-#X connect 11 2 8 1;
-#X connect 11 2 15 1;
-#X connect 12 0 15 0;
-#X connect 13 0 14 0;
-#X connect 15 0 14 1;
-#X connect 16 0 13 0;
-#X connect 16 1 12 0;
-#X connect 17 0 16 0;
-#X restore 508 383 pd stuff;
-#X msg 318 140 traverse pd-data5 \, next;
-#X obj 451 252 getsize template5 bazoo;
-#X obj 232 229 setsize template5 bazoo;
-#X obj 17 373 set template5-element y;
-#X obj 235 346 get template5-element y;
-#X obj 15 223 element template5 bazoo;
-#X text 38 15 Scalars may contain arrays \, and moreover the elements
-of an array can be of any scalar type (and can have sub-arrays recursively.)
-The type of the element of an array is fixed in the template. In this
-case \, "template5" contains the definition of the top-level scalar
-and "template5-element" is the template of each array element (see
-the template subpatch.);
-#X text 328 121 click to get pointer;
-#X text 449 173 get size;
-#X text 221 158 set size;
-#X text 16 133 select an individual;
-#X text 16 153 element \, which is a;
-#X text 14 169 scalar with template;
-#X text 104 189 template5;
-#X text 12 413 work as before \, but on;
-#X text 12 433 array elements...;
-#X text 433 424 Updated for Pd version 0.35;
-#X text 17 395 normal "set" amd "get";
-#X connect 0 0 18 0;
-#X connect 1 0 16 0;
-#X connect 2 0 0 0;
-#X connect 3 0 19 0;
-#X connect 4 0 17 0;
-#X connect 7 0 15 0;
-#X connect 8 0 16 1;
-#X connect 8 0 19 1;
-#X connect 8 0 7 0;
-#X connect 9 0 7 0;
-#X connect 14 0 8 0;
-#X connect 15 0 6 0;
-#X connect 18 0 5 0;
-#X connect 19 0 0 0;
-#X connect 19 0 17 1;
diff --git a/pd/doc/7.stuff/data-structures/6.file.pd b/pd/doc/7.stuff/data-structures/6.file.pd
deleted file mode 100644
index 30c902dc..00000000
--- a/pd/doc/7.stuff/data-structures/6.file.pd
+++ /dev/null
@@ -1,69 +0,0 @@
-#N canvas 405 27 291 318 12;
-#N canvas 0 0 377 383 data 1;
-#X restore 40 153 pd data;
-#N canvas 50 470 557 157 template-toplevel 0;
-#X obj 21 94 plot bazoo 700 3 10 20 20;
-#X obj 21 68 drawpolygon q 4 0 0 20 z z -5 10 20;
-#X obj 21 30 struct template-toplevel float x float y float z float
-q array bazoo template-element;
-#X restore 40 174 pd template-toplevel;
-#N canvas 199 231 600 239 template-element 0;
-#X obj 58 83 drawpolygon 10 2 5 0 0 -5 -5 0 0 5 5 0;
-#X obj 59 48 struct template-element float x float y float w;
-#X restore 40 197 pd template-element;
-#X msg 45 16 \; pd-data clear;
-#N canvas 125 240 709 410 traversal 0;
-#X floatatom 212 353 0 0 0 0 - - -;
-#X obj 212 376 set template-toplevel q;
-#X floatatom 212 307 0 0 0 0 - - -;
-#X floatatom 210 255 0 0 0 0 - - -;
-#X floatatom 96 62 0 0 0 0 - - -;
-#X floatatom 97 114 0 0 0 0 - - -;
-#X floatatom 23 144 0 0 0 0 - - -;
-#X floatatom 210 209 0 0 0 0 - - -;
-#X floatatom 617 194 0 0 0 0 - - -;
-#X floatatom 550 192 0 0 0 0 - - -;
-#X floatatom 486 191 0 0 0 0 - - -;
-#X obj 419 116 pointer;
-#X obj 419 168 get template-toplevel x y z q;
-#X msg 450 90 next;
-#X floatatom 419 191 0 0 0 0 - - -;
-#X obj 23 169 set template-element y;
-#X obj 97 137 element template-toplevel bazoo;
-#X obj 96 85 setsize template-toplevel bazoo;
-#X obj 210 232 set template-toplevel x;
-#X obj 210 278 set template-toplevel y;
-#X obj 212 330 set template-toplevel z;
-#X floatatom 22 200 0 0 0 0 - - -;
-#X obj 22 225 set template-element x;
-#X msg 419 67 traverse pd-data \, next;
-#X floatatom 26 258 0 0 0 0 - - -;
-#X obj 26 283 set template-element w;
-#X connect 0 0 1 0;
-#X connect 2 0 20 0;
-#X connect 3 0 19 0;
-#X connect 4 0 17 0;
-#X connect 5 0 16 0;
-#X connect 6 0 15 0;
-#X connect 7 0 18 0;
-#X connect 11 0 12 0;
-#X connect 11 0 17 1;
-#X connect 11 0 18 1;
-#X connect 11 0 19 1;
-#X connect 11 0 20 1;
-#X connect 11 0 1 1;
-#X connect 11 0 16 1;
-#X connect 12 0 14 0;
-#X connect 12 1 10 0;
-#X connect 12 2 9 0;
-#X connect 12 3 8 0;
-#X connect 13 0 11 0;
-#X connect 16 0 15 1;
-#X connect 16 0 22 1;
-#X connect 16 0 25 1;
-#X connect 21 0 22 0;
-#X connect 23 0 11 0;
-#X connect 24 0 25 0;
-#X restore 41 218 pd traversal;
-#X msg 43 55 \; pd-data write xx.txt;
-#X msg 41 102 \; pd-data read file.txt;
diff --git a/pd/doc/7.stuff/data-structures/7.sequencer.pd b/pd/doc/7.stuff/data-structures/7.sequencer.pd
deleted file mode 100644
index f270b48e..00000000
--- a/pd/doc/7.stuff/data-structures/7.sequencer.pd
+++ /dev/null
@@ -1,193 +0,0 @@
-#N struct template-toplevel float x float y float voiceno array pitch
-template-pitch array amp template-amp;
-#N struct template-pitch float x float y float w;
-#N struct template-amp float x float y float w;
-#N canvas 467 44 543 446 12;
-#N canvas 565 104 524 166 template-toplevel 0;
-#X obj 25 86 plot pitch voiceno 3 10 0;
-#X obj 25 113 plot amp 0 3 10 0;
-#X obj 25 21 struct template-toplevel float x float y float voiceno
-array pitch template-pitch array amp template-amp;
-#X obj 27 61 filledpolygon 9 9 0 0 -2 0 2 5 2 5 -2;
-#X restore 64 197 pd template-toplevel;
-#N canvas 0 0 419 102 template-amp 0;
-#X obj 15 41 struct template-amp float x float y float w;
-#X restore 64 219 pd template-amp;
-#N canvas 42 221 452 87 template-pitch 0;
-#X obj 21 29 struct template-pitch float x float y float w;
-#X restore 66 242 pd template-pitch;
-#N canvas 323 50 551 562 synthesis 0;
-#X msg 125 220 next;
-#X msg 108 172 traverse pd-data \, next;
-#X obj 108 250 pointer template-toplevel;
-#X obj 108 273 t p p;
-#X obj 108 296 get template-toplevel voiceno;
-#X obj 108 325 pack 0 p;
-#X obj 108 4 inlet;
-#X obj 108 33 route start stop;
-#X msg 161 54 \; reset bang;
-#X obj 298 30 r reset;
-#X obj 152 112 s reset;
-#X obj 125 194 r next-evt;
-#X obj 108 354 route 0 9 90 900 99 909 990;
-#X obj 55 372 voice;
-#X obj 55 536 outlet~;
-#X msg 298 58 \; reset-stop stop \; time-of-last-evt 0 \; pd-data sort
-;
-#X obj 372 351 s delay-multiplier;
-#X obj 375 276 t b f;
-#X msg 372 303 1000;
-#X obj 389 327 /;
-#X obj 375 250 r tempo;
-#X obj 108 90 t b b b;
-#X msg 130 136 \; pd-data sort;
-#X obj 55 395 voice;
-#X obj 55 418 voice;
-#X obj 55 441 voice;
-#X obj 55 465 voice;
-#X obj 55 488 voice;
-#X obj 55 511 voice;
-#X connect 0 0 2 0;
-#X connect 1 0 2 0;
-#X connect 2 0 3 0;
-#X connect 3 0 4 0;
-#X connect 3 1 5 1;
-#X connect 4 0 5 0;
-#X connect 5 0 12 0;
-#X connect 6 0 7 0;
-#X connect 7 0 21 0;
-#X connect 7 1 8 0;
-#X connect 9 0 15 0;
-#X connect 11 0 0 0;
-#X connect 12 0 13 1;
-#X connect 12 1 23 1;
-#X connect 12 2 24 1;
-#X connect 12 3 25 1;
-#X connect 12 4 26 1;
-#X connect 12 5 27 1;
-#X connect 12 6 28 1;
-#X connect 13 0 23 0;
-#X connect 17 0 18 0;
-#X connect 17 1 19 1;
-#X connect 18 0 19 0;
-#X connect 19 0 16 0;
-#X connect 20 0 17 0;
-#X connect 21 0 1 0;
-#X connect 21 1 22 0;
-#X connect 21 2 10 0;
-#X connect 23 0 24 0;
-#X connect 24 0 25 0;
-#X connect 25 0 26 0;
-#X connect 26 0 27 0;
-#X connect 27 0 28 0;
-#X connect 28 0 14 0;
-#X restore 64 323 pd synthesis;
-#X floatatom 278 276 0 0 0 0 - - -;
-#X floatatom 92 358 0 0 0 0 - - -;
-#N canvas 159 26 495 270 output 0;
-#X obj 345 163 t b;
-#X obj 345 112 f;
-#X obj 345 61 inlet;
-#X text 351 30 mute;
-#X obj 345 189 f;
-#X msg 434 182 0;
-#X msg 345 87 bang;
-#X obj 345 138 moses 1;
-#X obj 434 156 t b f;
-#X obj 405 119 moses 1;
-#X obj 85 151 dbtorms;
-#X obj 405 94 r master-lvl;
-#X obj 85 43 r master-lvl;
-#X obj 345 214 s master-lvl;
-#X obj 22 185 inlet~;
-#X obj 203 42 inlet;
-#X text 203 18 level;
-#X obj 203 102 s master-lvl;
-#X msg 98 67 set \$1;
-#X obj 98 91 outlet;
-#X msg 218 65 \; pd dsp 1;
-#X obj 85 198 line~;
-#X obj 22 216 *~;
-#X obj 22 246 dac~;
-#X obj 85 175 pack 0 50;
-#X text 20 162 audio;
-#X text 95 112 show level;
-#X connect 0 0 4 0;
-#X connect 1 0 7 0;
-#X connect 2 0 6 0;
-#X connect 4 0 13 0;
-#X connect 5 0 13 0;
-#X connect 6 0 1 0;
-#X connect 7 0 0 0;
-#X connect 7 1 8 0;
-#X connect 8 0 5 0;
-#X connect 9 1 4 1;
-#X connect 10 0 24 0;
-#X connect 11 0 1 1;
-#X connect 11 0 9 0;
-#X connect 12 0 10 0;
-#X connect 12 0 18 0;
-#X connect 14 0 22 0;
-#X connect 15 0 17 0;
-#X connect 15 0 20 0;
-#X connect 18 0 19 0;
-#X connect 21 0 22 1;
-#X connect 22 0 23 0;
-#X connect 22 0 23 1;
-#X connect 24 0 21 0;
-#X restore 64 380 pd output;
-#X msg 122 358 MUTE;
-#X msg 64 296 start;
-#X msg 115 296 stop;
-#N canvas 22 39 471 498 data 1;
-#X scalar template-toplevel 3 86 900 \; 0 0 12 \; 10 0 12 \; \; 0 0
-0 \; 10 0 2.5 \; 11 0 0 \; \;;
-#X scalar template-toplevel 14 80 990 \; 0 0 12 \; 10 0 12 \; \; 0
-0 2.5 \; 10 0 2.5 \; 11 0 0 \; \;;
-#X scalar template-toplevel 38 43.25 90 \; 0 65 12 \; 100 10 0 \; 100
-10 12 \; 230 50 0 \; 230 10 3 \; 240 60 0 \; 240 25 10 \; 250 60 0
-\; 250 37 10 \; 260 65 0.5 \; 285 65 0.5 \; \; 1 0 2 \; 103 0 1 \;
-195 0 2 \; 220 0 0.75 \; 225 0 1.25 \; 248 0 2.5 \; 251 0 2.25 \; 255
-0 0 \; 256 0 1.5 \; 260 0 0 \; 261 0 2 \; 265 0 0 \; 266 0 2.5 \; 270
-0 0 \; 271 0 3 \; 275 0 0 \; \;;
-#X scalar template-toplevel 64 80 900 \; 0 5 0.25 \; 60 5 0.25 \; \;
-0 0 0 \; 28 -0.25 3.5 \; 58 -0.25 0 \; \;;
-#X scalar template-toplevel 142 105 900 \; 0 0 12 \; 70 -20 12 \; \;
-0 0 0 \; 10 0 2.5 \; 20 0 0 \; 30 0 0 \; 40 0 2.5 \; 50 0 0 \; 60 0
-2.5 \; 70 0 0 \; \;;
-#X scalar template-toplevel 319 63.5 909 \; 0 0 12 \; 50 0 12 \; \;
-0 0 4 \; 10 0 2.5 \; 50 0 0 \; \;;
-#X coords 0 124.5 1 124.25 0 0 0;
-#X restore 64 176 pd data;
-#N canvas 82 467 332 145 stuff 0;
-#X msg 1 101 \; pd-data write xx.txt;
-#X msg -3 39 \; pd-data read score.txt;
-#X obj 208 7 loadbang;
-#X msg 208 34 \; tempo 60;
-#X msg 198 101 \; pd-data sort;
-#X connect 2 0 3 0;
-#X restore 65 264 pd stuff;
-#X obj 278 229 r tempo;
-#X msg 278 252 set \$1;
-#X obj 278 300 s tempo;
-#X text 13 4 This patch shows an example of how to use data collections
-as musical sequences (with apologies to Yuasa and Stockhausen). Here
-the black traces show dynamics and the colored ones show pitch. The
-fatness of the pitch traces give bandwidth. Any of the three can change
-over the life of the event.;
-#X text 160 357 <--- volume in dB;
-#X text 13 96 To hear the result \, turn the volume up to 70 or so
-(higher if it's not loud enough the first time) and hit "start". You
-can set the tempo lower if that helps you follow the "score" the first
-couple of times.;
-#X text 311 276 <--- tempo;
-#X text 256 416 Updated for Pd version 0.36;
-#X connect 3 0 6 0;
-#X connect 4 0 14 0;
-#X connect 5 0 6 1;
-#X connect 6 0 5 0;
-#X connect 7 0 6 2;
-#X connect 8 0 3 0;
-#X connect 9 0 3 0;
-#X connect 12 0 13 0;
-#X connect 13 0 4 0;
diff --git a/pd/doc/7.stuff/data-structures/8.beat-patterns.pd b/pd/doc/7.stuff/data-structures/8.beat-patterns.pd
deleted file mode 100644
index 11487c74..00000000
--- a/pd/doc/7.stuff/data-structures/8.beat-patterns.pd
+++ /dev/null
@@ -1,452 +0,0 @@
-#N struct rect float x float y float w float h;
-#N canvas 637 175 299 256 10;
-#N canvas 457 224 643 316 rect 0;
-#X obj 134 219 pointer;
-#X msg 134 188 traverse pd-test \, bang;
-#X obj 69 99 filledpolygon 0 0 0 0 0 0 h w h w 0 0 0;
-#X obj 46 252 append rect x y w h;
-#X obj 68 76 struct rect float x float y float w float h;
-#X msg 46 219 50 50 50 2;
-#X obj 432 201 r this-ptr;
-#X obj 347 257 s this-ptr;
-#X obj 344 202 r add-rect;
-#X obj 346 232 append rect x y w h;
-#X connect 0 0 3 4;
-#X connect 1 0 0 0;
-#X connect 5 0 3 0;
-#X connect 6 0 9 4;
-#X connect 8 0 9 0;
-#X connect 9 0 7 0;
-#X restore 26 67 pd rect;
-#N canvas 34 58 616 659 output 1;
-#X scalar rect 57 179 2 10 \;;
-#X scalar rect 82 179 1 10 \;;
-#X scalar rect 107 179 1 10 \;;
-#X scalar rect 132 179 1 10 \;;
-#X scalar rect 157 179 1 10 \;;
-#X scalar rect 182 179 2 10 \;;
-#X scalar rect 207 179 1 10 \;;
-#X scalar rect 232 179 1 10 \;;
-#X scalar rect 257 179 1 10 \;;
-#X scalar rect 282 179 1 10 \;;
-#X scalar rect 307 179 2 10 \;;
-#X scalar rect 332 179 1 10 \;;
-#X scalar rect 357 179 1 10 \;;
-#X scalar rect 382 179 1 10 \;;
-#X scalar rect 407 179 1 10 \;;
-#X scalar rect 432 179 2 10 \;;
-#X scalar rect 457 179 1 10 \;;
-#X scalar rect 482 179 1 10 \;;
-#X scalar rect 507 179 1 10 \;;
-#X scalar rect 532 179 1 10 \;;
-#X scalar rect 557 179 2 10 \;;
-#X scalar rect 57 149 2 10 \;;
-#X scalar rect 73.6667 149 1 10 \;;
-#X scalar rect 90.3333 149 1 10 \;;
-#X scalar rect 107 149 1 10 \;;
-#X scalar rect 123.667 149 1 10 \;;
-#X scalar rect 140.333 149 2 10 \;;
-#X scalar rect 157 149 1 10 \;;
-#X scalar rect 173.667 149 1 10 \;;
-#X scalar rect 190.333 149 1 10 \;;
-#X scalar rect 207 149 1 10 \;;
-#X scalar rect 223.667 149 2 10 \;;
-#X scalar rect 240.333 149 1 10 \;;
-#X scalar rect 257 149 1 10 \;;
-#X scalar rect 273.667 149 1 10 \;;
-#X scalar rect 290.333 149 1 10 \;;
-#X scalar rect 307 149 2 10 \;;
-#X scalar rect 323.667 149 1 10 \;;
-#X scalar rect 340.333 149 1 10 \;;
-#X scalar rect 357 149 1 10 \;;
-#X scalar rect 373.667 149 1 10 \;;
-#X scalar rect 390.333 149 2 10 \;;
-#X scalar rect 407 149 1 10 \;;
-#X scalar rect 423.667 149 1 10 \;;
-#X scalar rect 440.333 149 1 10 \;;
-#X scalar rect 457 149 1 10 \;;
-#X scalar rect 473.667 149 2 10 \;;
-#X scalar rect 490.333 149 1 10 \;;
-#X scalar rect 507 149 1 10 \;;
-#X scalar rect 523.667 149 1 10 \;;
-#X scalar rect 540.333 149 1 10 \;;
-#X scalar rect 557 149 2 10 \;;
-#X scalar rect 57 119 2 10 \;;
-#X scalar rect 71.2857 119 1 10 \;;
-#X scalar rect 85.5714 119 1 10 \;;
-#X scalar rect 99.8571 119 1 10 \;;
-#X scalar rect 114.143 119 1 10 \;;
-#X scalar rect 128.429 119 2 10 \;;
-#X scalar rect 142.714 119 1 10 \;;
-#X scalar rect 157 119 1 10 \;;
-#X scalar rect 171.286 119 1 10 \;;
-#X scalar rect 185.571 119 1 10 \;;
-#X scalar rect 199.857 119 2 10 \;;
-#X scalar rect 214.143 119 1 10 \;;
-#X scalar rect 228.429 119 1 10 \;;
-#X scalar rect 242.714 119 1 10 \;;
-#X scalar rect 257 119 1 10 \;;
-#X scalar rect 271.286 119 2 10 \;;
-#X scalar rect 285.571 119 1 10 \;;
-#X scalar rect 299.857 119 1 10 \;;
-#X scalar rect 314.143 119 1 10 \;;
-#X scalar rect 328.429 119 1 10 \;;
-#X scalar rect 342.714 119 2 10 \;;
-#X scalar rect 357 119 1 10 \;;
-#X scalar rect 371.286 119 1 10 \;;
-#X scalar rect 385.571 119 1 10 \;;
-#X scalar rect 399.857 119 1 10 \;;
-#X scalar rect 414.143 119 2 10 \;;
-#X scalar rect 428.429 119 1 10 \;;
-#X scalar rect 442.714 119 1 10 \;;
-#X scalar rect 457 119 1 10 \;;
-#X scalar rect 471.286 119 1 10 \;;
-#X scalar rect 485.571 119 2 10 \;;
-#X scalar rect 499.857 119 1 10 \;;
-#X scalar rect 514.143 119 1 10 \;;
-#X scalar rect 528.429 119 1 10 \;;
-#X scalar rect 542.714 119 1 10 \;;
-#X scalar rect 557 119 2 10 \;;
-#X scalar rect 57 89 2 10 \;;
-#X scalar rect 69.5 89 1 10 \;;
-#X scalar rect 82 89 1 10 \;;
-#X scalar rect 94.5 89 1 10 \;;
-#X scalar rect 107 89 1 10 \;;
-#X scalar rect 119.5 89 2 10 \;;
-#X scalar rect 132 89 1 10 \;;
-#X scalar rect 144.5 89 1 10 \;;
-#X scalar rect 157 89 1 10 \;;
-#X scalar rect 169.5 89 1 10 \;;
-#X scalar rect 182 89 2 10 \;;
-#X scalar rect 194.5 89 1 10 \;;
-#X scalar rect 207 89 1 10 \;;
-#X scalar rect 219.5 89 1 10 \;;
-#X scalar rect 232 89 1 10 \;;
-#X scalar rect 244.5 89 2 10 \;;
-#X scalar rect 257 89 1 10 \;;
-#X scalar rect 269.5 89 1 10 \;;
-#X scalar rect 282 89 1 10 \;;
-#X scalar rect 294.5 89 1 10 \;;
-#X scalar rect 307 89 2 10 \;;
-#X scalar rect 319.5 89 1 10 \;;
-#X scalar rect 332 89 1 10 \;;
-#X scalar rect 344.5 89 1 10 \;;
-#X scalar rect 357 89 1 10 \;;
-#X scalar rect 369.5 89 2 10 \;;
-#X scalar rect 382 89 1 10 \;;
-#X scalar rect 394.5 89 1 10 \;;
-#X scalar rect 407 89 1 10 \;;
-#X scalar rect 419.5 89 1 10 \;;
-#X scalar rect 432 89 2 10 \;;
-#X scalar rect 444.5 89 1 10 \;;
-#X scalar rect 457 89 1 10 \;;
-#X scalar rect 469.5 89 1 10 \;;
-#X scalar rect 482 89 1 10 \;;
-#X scalar rect 494.5 89 2 10 \;;
-#X scalar rect 507 89 1 10 \;;
-#X scalar rect 519.5 89 1 10 \;;
-#X scalar rect 532 89 1 10 \;;
-#X scalar rect 544.5 89 1 10 \;;
-#X scalar rect 557 89 2 10 \;;
-#X scalar rect 57 299 2 10 \;;
-#X scalar rect 90.3333 299 1 10 \;;
-#X scalar rect 123.667 299 1 10 \;;
-#X scalar rect 157 299 1 10 \;;
-#X scalar rect 190.333 299 2 10 \;;
-#X scalar rect 223.667 299 1 10 \;;
-#X scalar rect 257 299 1 10 \;;
-#X scalar rect 290.333 299 1 10 \;;
-#X scalar rect 323.667 299 2 10 \;;
-#X scalar rect 357 299 1 10 \;;
-#X scalar rect 390.333 299 1 10 \;;
-#X scalar rect 423.667 299 1 10 \;;
-#X scalar rect 457 299 2 10 \;;
-#X scalar rect 57 269 2 10 \;;
-#X scalar rect 77 269 1 10 \;;
-#X scalar rect 97 269 1 10 \;;
-#X scalar rect 117 269 1 10 \;;
-#X scalar rect 137 269 2 10 \;;
-#X scalar rect 157 269 1 10 \;;
-#X scalar rect 177 269 1 10 \;;
-#X scalar rect 197 269 1 10 \;;
-#X scalar rect 217 269 2 10 \;;
-#X scalar rect 237 269 1 10 \;;
-#X scalar rect 257 269 1 10 \;;
-#X scalar rect 277 269 1 10 \;;
-#X scalar rect 297 269 2 10 \;;
-#X scalar rect 317 269 1 10 \;;
-#X scalar rect 337 269 1 10 \;;
-#X scalar rect 357 269 1 10 \;;
-#X scalar rect 377 269 2 10 \;;
-#X scalar rect 397 269 1 10 \;;
-#X scalar rect 417 269 1 10 \;;
-#X scalar rect 437 269 1 10 \;;
-#X scalar rect 457 269 2 10 \;;
-#X scalar rect 57 239 2 10 \;;
-#X scalar rect 71.2857 239 1 10 \;;
-#X scalar rect 85.5714 239 1 10 \;;
-#X scalar rect 99.8571 239 1 10 \;;
-#X scalar rect 114.143 239 2 10 \;;
-#X scalar rect 128.429 239 1 10 \;;
-#X scalar rect 142.714 239 1 10 \;;
-#X scalar rect 157 239 1 10 \;;
-#X scalar rect 171.286 239 2 10 \;;
-#X scalar rect 185.571 239 1 10 \;;
-#X scalar rect 199.857 239 1 10 \;;
-#X scalar rect 214.143 239 1 10 \;;
-#X scalar rect 228.429 239 2 10 \;;
-#X scalar rect 242.714 239 1 10 \;;
-#X scalar rect 257 239 1 10 \;;
-#X scalar rect 271.286 239 1 10 \;;
-#X scalar rect 285.571 239 2 10 \;;
-#X scalar rect 299.857 239 1 10 \;;
-#X scalar rect 314.143 239 1 10 \;;
-#X scalar rect 328.429 239 1 10 \;;
-#X scalar rect 342.714 239 2 10 \;;
-#X scalar rect 357 239 1 10 \;;
-#X scalar rect 371.286 239 1 10 \;;
-#X scalar rect 385.571 239 1 10 \;;
-#X scalar rect 399.857 239 2 10 \;;
-#X scalar rect 414.143 239 1 10 \;;
-#X scalar rect 428.429 239 1 10 \;;
-#X scalar rect 442.714 239 1 10 \;;
-#X scalar rect 457 239 2 10 \;;
-#X scalar rect 57 479 2 10 \;;
-#X scalar rect 107 479 1 10 \;;
-#X scalar rect 157 479 1 10 \;;
-#X scalar rect 207 479 2 10 \;;
-#X scalar rect 257 479 1 10 \;;
-#X scalar rect 307 479 1 10 \;;
-#X scalar rect 357 479 2 10 \;;
-#X scalar rect 57 449 2 10 \;;
-#X scalar rect 82 449 1 10 \;;
-#X scalar rect 107 449 1 10 \;;
-#X scalar rect 132 449 2 10 \;;
-#X scalar rect 157 449 1 10 \;;
-#X scalar rect 182 449 1 10 \;;
-#X scalar rect 207 449 2 10 \;;
-#X scalar rect 232 449 1 10 \;;
-#X scalar rect 257 449 1 10 \;;
-#X scalar rect 282 449 2 10 \;;
-#X scalar rect 307 449 1 10 \;;
-#X scalar rect 332 449 1 10 \;;
-#X scalar rect 357 449 2 10 \;;
-#X scalar rect 57 419 2 10 \;;
-#X scalar rect 77 419 1 10 \;;
-#X scalar rect 97 419 1 10 \;;
-#X scalar rect 117 419 2 10 \;;
-#X scalar rect 137 419 1 10 \;;
-#X scalar rect 157 419 1 10 \;;
-#X scalar rect 177 419 2 10 \;;
-#X scalar rect 197 419 1 10 \;;
-#X scalar rect 217 419 1 10 \;;
-#X scalar rect 237 419 2 10 \;;
-#X scalar rect 257 419 1 10 \;;
-#X scalar rect 277 419 1 10 \;;
-#X scalar rect 297 419 2 10 \;;
-#X scalar rect 317 419 1 10 \;;
-#X scalar rect 337 419 1 10 \;;
-#X scalar rect 357 419 2 10 \;;
-#X scalar rect 57 389 2 10 \;;
-#X scalar rect 71.2857 389 1 10 \;;
-#X scalar rect 85.5714 389 1 10 \;;
-#X scalar rect 99.8571 389 2 10 \;;
-#X scalar rect 114.143 389 1 10 \;;
-#X scalar rect 128.429 389 1 10 \;;
-#X scalar rect 142.714 389 2 10 \;;
-#X scalar rect 157 389 1 10 \;;
-#X scalar rect 171.286 389 1 10 \;;
-#X scalar rect 185.571 389 2 10 \;;
-#X scalar rect 199.857 389 1 10 \;;
-#X scalar rect 214.143 389 1 10 \;;
-#X scalar rect 228.429 389 2 10 \;;
-#X scalar rect 242.714 389 1 10 \;;
-#X scalar rect 257 389 1 10 \;;
-#X scalar rect 271.286 389 2 10 \;;
-#X scalar rect 285.571 389 1 10 \;;
-#X scalar rect 299.857 389 1 10 \;;
-#X scalar rect 314.143 389 2 10 \;;
-#X scalar rect 328.429 389 1 10 \;;
-#X scalar rect 342.714 389 1 10 \;;
-#X scalar rect 357 389 2 10 \;;
-#X scalar rect 57 359 2 10 \;;
-#X scalar rect 69.5 359 1 10 \;;
-#X scalar rect 82 359 1 10 \;;
-#X scalar rect 94.5 359 2 10 \;;
-#X scalar rect 107 359 1 10 \;;
-#X scalar rect 119.5 359 1 10 \;;
-#X scalar rect 132 359 2 10 \;;
-#X scalar rect 144.5 359 1 10 \;;
-#X scalar rect 157 359 1 10 \;;
-#X scalar rect 169.5 359 2 10 \;;
-#X scalar rect 182 359 1 10 \;;
-#X scalar rect 194.5 359 1 10 \;;
-#X scalar rect 207 359 2 10 \;;
-#X scalar rect 219.5 359 1 10 \;;
-#X scalar rect 232 359 1 10 \;;
-#X scalar rect 244.5 359 2 10 \;;
-#X scalar rect 257 359 1 10 \;;
-#X scalar rect 269.5 359 1 10 \;;
-#X scalar rect 282 359 2 10 \;;
-#X scalar rect 294.5 359 1 10 \;;
-#X scalar rect 307 359 1 10 \;;
-#X scalar rect 319.5 359 2 10 \;;
-#X scalar rect 332 359 1 10 \;;
-#X scalar rect 344.5 359 1 10 \;;
-#X scalar rect 357 359 2 10 \;;
-#X scalar rect 57 599 2 10 \;;
-#X scalar rect 90.3333 599 1 10 \;;
-#X scalar rect 123.667 599 2 10 \;;
-#X scalar rect 157 599 1 10 \;;
-#X scalar rect 190.333 599 2 10 \;;
-#X scalar rect 223.667 599 1 10 \;;
-#X scalar rect 257 599 2 10 \;;
-#X scalar rect 57 569 2 10 \;;
-#X scalar rect 77 569 1 10 \;;
-#X scalar rect 97 569 2 10 \;;
-#X scalar rect 117 569 1 10 \;;
-#X scalar rect 137 569 2 10 \;;
-#X scalar rect 157 569 1 10 \;;
-#X scalar rect 177 569 2 10 \;;
-#X scalar rect 197 569 1 10 \;;
-#X scalar rect 217 569 2 10 \;;
-#X scalar rect 237 569 1 10 \;;
-#X scalar rect 257 569 2 10 \;;
-#X scalar rect 57 539 2 10 \;;
-#X scalar rect 71.2857 539 1 10 \;;
-#X scalar rect 85.5714 539 2 10 \;;
-#X scalar rect 99.8571 539 1 10 \;;
-#X scalar rect 114.143 539 2 10 \;;
-#X scalar rect 128.429 539 1 10 \;;
-#X scalar rect 142.714 539 2 10 \;;
-#X scalar rect 157 539 1 10 \;;
-#X scalar rect 171.286 539 2 10 \;;
-#X scalar rect 185.571 539 1 10 \;;
-#X scalar rect 199.857 539 2 10 \;;
-#X scalar rect 214.143 539 1 10 \;;
-#X scalar rect 228.429 539 2 10 \;;
-#X scalar rect 242.714 539 1 10 \;;
-#X scalar rect 257 539 2 10 \;;
-#X scalar rect 57 29 2 580 \;;
-#X scalar rect 157 29 2 580 \;;
-#X scalar rect 257 29 2 580 \;;
-#X scalar rect 357 29 2 450 \;;
-#X scalar rect 457 29 2 280 \;;
-#X scalar rect 557 29 2 150 \;;
-#X text 21 50 3:2;
-#X text 21 78 5:2;
-#X text 21 107 7:2;
-#X text 18 170 2:3;
-#X text 19 200 4:3;
-#X text 20 231 5:3;
-#X text 19 260 7:3;
-#X text 20 287 8:3;
-#X text 20 349 3:4;
-#X text 21 378 5:4;
-#X text 21 408 7:4;
-#X text 19 467 4:5;
-#X text 19 499 6:5;
-#X text 21 528 7:5;
-#X text 21 558 8:5;
-#X text 303 93 Inspired by Ed Harkins's rhythm seminar.;
-#X text 307 32 Dual rhythmic patterns: the dark marks are;
-#X text 305 53 the beats and the lighter ones help;
-#X text 304 73 show the proportions.;
-#X coords 0 659 1 658 0 0 0;
-#X restore 24 98 pd output;
-#N canvas 386 64 781 519 generator 0;
-#X obj 646 4 r start;
-#X obj 645 71 pointer;
-#X obj 646 27 symbol;
-#X obj 645 92 s this-ptr;
-#X msg 645 49 traverse \$1 \, bang;
-#X msg 69 16 \; pd-output clear;
-#X msg 187 18 \; start pd-output;
-#X obj 57 170 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
--1;
-#X obj 208 170 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
--1;
-#X obj 362 171 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
--1;
-#X obj 57 138 r add-pts1;
-#X obj 52 258 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
--1;
-#X obj 187 259 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
--1;
-#X obj 322 260 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
--1;
-#X obj 53 230 r add-pts1;
-#X obj 57 190 beat-maker 3 2 600;
-#X obj 208 189 beat-maker 5 2 570;
-#X obj 362 190 beat-maker 7 2 540;
-#X obj 454 259 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
--1;
-#X obj 593 257 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
--1;
-#X obj 56 343 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
--1;
-#X obj 191 344 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
--1;
-#X obj 326 345 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
--1;
-#X obj 57 315 r add-pts1;
-#X obj 52 445 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
--1;
-#X obj 187 446 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
--1;
-#X obj 322 447 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
--1;
-#X obj 53 417 r add-pts1;
-#X obj 460 448 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
--1;
-#X obj 53 278 beat-maker 2 3 480;
-#X obj 323 278 beat-maker 5 3 420;
-#X obj 455 278 beat-maker 7 3 390;
-#X obj 594 276 beat-maker 8 3 360;
-#X obj 55 363 beat-maker 3 4 300;
-#X obj 189 364 beat-maker 5 4 270;
-#X obj 328 364 beat-maker 7 4 240;
-#X obj 52 465 beat-maker 4 5 180;
-#X obj 186 466 beat-maker 6 5 150;
-#X obj 324 466 beat-maker 7 5 120;
-#X obj 462 467 beat-maker 8 5 90;
-#X obj 187 279 beat-maker 4 3 450;
-#X msg 450 14 \; add-rect 40 30 2 580 \; add-rect 140 30 2 580 \; add-rect
-240 30 2 580 \; add-rect 340 30 2 450 \; add-rect 440 30 2 280 \; add-rect
-540 30 2 150 \;;
-#X msg 305 19 \; add-pts1 bang \;;
-#X connect 0 0 2 0;
-#X connect 1 0 3 0;
-#X connect 2 0 4 0;
-#X connect 4 0 1 0;
-#X connect 7 0 15 0;
-#X connect 8 0 16 0;
-#X connect 9 0 17 0;
-#X connect 10 0 7 0;
-#X connect 10 0 8 0;
-#X connect 10 0 9 0;
-#X connect 11 0 29 0;
-#X connect 12 0 40 0;
-#X connect 13 0 30 0;
-#X connect 14 0 11 0;
-#X connect 14 0 12 0;
-#X connect 14 0 13 0;
-#X connect 14 0 18 0;
-#X connect 14 0 19 0;
-#X connect 18 0 31 0;
-#X connect 19 0 32 0;
-#X connect 20 0 33 0;
-#X connect 21 0 34 0;
-#X connect 22 0 35 0;
-#X connect 23 0 20 0;
-#X connect 23 0 21 0;
-#X connect 23 0 22 0;
-#X connect 24 0 36 0;
-#X connect 25 0 37 0;
-#X connect 26 0 38 0;
-#X connect 27 0 24 0;
-#X connect 27 0 25 0;
-#X connect 27 0 26 0;
-#X connect 27 0 28 0;
-#X connect 28 0 39 0;
-#X restore 26 38 pd generator;
diff --git a/pd/doc/7.stuff/data-structures/9.sliderule.pd b/pd/doc/7.stuff/data-structures/9.sliderule.pd
deleted file mode 100644
index e26941ef..00000000
--- a/pd/doc/7.stuff/data-structures/9.sliderule.pd
+++ /dev/null
@@ -1,196 +0,0 @@
-#N struct label float x float y float n;
-#N struct line float x float y float w;
-#N canvas 564 9 276 218 10;
-#N canvas 15 0 504 847 data 1;
-#X scalar label 55 190.999 43 \;;
-#X scalar label 175 196.826 44 \;;
-#X scalar label 175 203 45 \;;
-#X scalar label 175 209.541 46 \;;
-#X scalar label 55 216.471 47 \;;
-#X scalar label 175 223.813 48 \;;
-#X scalar label 175 231.591 49 \;;
-#X scalar label 55 239.832 50 \;;
-#X scalar label 175 248.563 51 \;;
-#X scalar label 175 257.814 52 \;;
-#X scalar label 55 267.614 53 \;;
-#X scalar label 175 277.997 54 \;;
-#X scalar label 175 288.998 55 \;;
-#X scalar label 175 300.652 56 \;;
-#X scalar label 55 313 57 \;;
-#X scalar label 175 326.082 58 \;;
-#X scalar label 175 339.942 59 \;;
-#X scalar label 155 354.626 60 \;;
-#X scalar label 175 370.183 61 \;;
-#X scalar label 175 386.665 62 \;;
-#X scalar label 175 404.127 63 \;;
-#X scalar label 55 422.628 64 \;;
-#X scalar label 175 442.228 65 \;;
-#X scalar label 175 462.994 66 \;;
-#X scalar label 55 484.995 67 \;;
-#X scalar label 175 508.305 68 \;;
-#X scalar label 175 533 69 \;;
-#X scalar label 175 559.164 70 \;;
-#X scalar label 55 586.883 71 \;;
-#X scalar label 175 616.251 72 \;;
-#X scalar label 175 647.365 73 \;;
-#X scalar label 55 680.33 74 \;;
-#X scalar label 175 715.254 75 \;;
-#X scalar label 175 752.255 76 \;;
-#X scalar label 55 791.456 77 \;;
-#X scalar line 175 87 100 \;;
-#X scalar line 195 135.999 60 \;;
-#X scalar line 195 138.913 60 \;;
-#X scalar line 195 142 60 \;;
-#X scalar line 195 145.271 60 \;;
-#X scalar line 195 148.735 60 \;;
-#X scalar line 175 152.406 100 \;;
-#X scalar line 195 156.296 60 \;;
-#X scalar line 195 160.416 60 \;;
-#X scalar line 195 164.782 60 \;;
-#X scalar line 195 169.407 60 \;;
-#X scalar line 195 174.307 60 \;;
-#X scalar line 195 179.499 60 \;;
-#X scalar line 75 184.999 300 \;;
-#X scalar line 195 190.826 60 \;;
-#X scalar line 195 197 60 \;;
-#X scalar line 195 203.541 60 \;;
-#X scalar line 75 210.471 300 \;;
-#X scalar line 195 217.813 60 \;;
-#X scalar line 195 225.591 60 \;;
-#X scalar line 75 233.832 300 \;;
-#X scalar line 195 242.563 60 \;;
-#X scalar line 195 251.814 60 \;;
-#X scalar line 75 261.614 300 \;;
-#X scalar line 195 271.997 60 \;;
-#X scalar line 195 282.998 60 \;;
-#X scalar line 195 294.652 60 \;;
-#X scalar line 75 307 300 \;;
-#X scalar line 195 320.082 60 \;;
-#X scalar line 195 333.942 60 \;;
-#X scalar line 175 348.626 100 \;;
-#X scalar line 195 364.183 60 \;;
-#X scalar line 195 380.665 60 \;;
-#X scalar line 195 398.127 60 \;;
-#X scalar line 75 416.628 300 \;;
-#X scalar line 195 436.228 60 \;;
-#X scalar line 195 456.994 60 \;;
-#X scalar line 75 478.995 300 \;;
-#X scalar line 195 502.305 60 \;;
-#X scalar line 195 527 60 \;;
-#X scalar line 195 553.164 60 \;;
-#X scalar line 75 580.883 300 \;;
-#X scalar line 195 610.251 60 \;;
-#X scalar line 195 641.365 60 \;;
-#X scalar line 75 674.33 300 \;;
-#X scalar line 195 709.254 60 \;;
-#X scalar line 195 746.255 60 \;;
-#X scalar line 75 785.456 300 \;;
-#X text 50 -32 Linear frequency chart -- cut this down the middle and
-use as a slide rule to compute frequency shifts. The longer lines are
-staves with the bass and treble clef. The numbers are the MIDI pitches.
-;
-#X text 148 686 36;
-#X text 109 751 zero Hz.;
-#X coords 0 847 1 846 0 0 0;
-#X restore 46 51 pd data;
-#N canvas 308 63 600 392 line 0;
-#X obj 140 114 drawpolygon 0 1 0 0 w 0;
-#X obj 145 63 struct line float x float y float w;
-#X restore 46 76 pd line;
-#N canvas 567 89 600 392 label 0;
-#X obj 140 114 drawnumber n 0 0 0;
-#X obj 145 63 struct label float x float y float n;
-#X restore 48 100 pd label;
-#N canvas 468 99 775 518 generator 0;
-#X obj 353 173 sel 36 60;
-#X obj 457 171 pointer;
-#X msg 457 149 traverse pd-data \, bang;
-#X msg 28 11 \; pd-data clear;
-#X obj 146 52 until;
-#X obj 146 76 float;
-#X obj 193 77 + 1;
-#X obj 146 100 moses 77;
-#X obj 245 76 t b;
-#X obj 146 31 t b b;
-#X msg 146 10 bang;
-#X obj 83 116 t f f f;
-#X obj 137 196 t b b;
-#X obj 135 150 sel 43 47 50 53 57 64 67 71 74 77;
-#X msg 219 46 30;
-#X obj 49 89 sel 30;
-#X obj 52 149 mtof;
-#X obj 11 191 t b b;
-#X obj 12 231 0;
-#X msg 248 221 100;
-#X msg 322 222 60;
-#X msg 216 222 150;
-#X msg 293 222 170;
-#X obj 195 377 append line y x w;
-#X obj 52 257 + 20;
-#X msg 132 220 50;
-#X msg 161 219 300;
-#X obj 144 409 - 20;
-#X obj 105 437 append label y x n;
-#X obj 58 375 + 6;
-#X obj 52 170 * 1;
-#X obj 59 407 moses 120;
-#X connect 0 0 21 0;
-#X connect 0 0 19 0;
-#X connect 0 1 19 0;
-#X connect 0 1 21 0;
-#X connect 0 2 22 0;
-#X connect 0 2 20 0;
-#X connect 1 0 23 3;
-#X connect 1 0 28 3;
-#X connect 2 0 1 0;
-#X connect 4 0 5 0;
-#X connect 5 0 6 0;
-#X connect 5 0 7 0;
-#X connect 5 0 15 0;
-#X connect 6 0 5 1;
-#X connect 7 1 8 0;
-#X connect 8 0 4 1;
-#X connect 9 0 4 0;
-#X connect 9 1 14 0;
-#X connect 9 1 2 0;
-#X connect 10 0 9 0;
-#X connect 11 0 16 0;
-#X connect 11 1 28 2;
-#X connect 11 2 13 0;
-#X connect 12 0 25 0;
-#X connect 12 1 26 0;
-#X connect 13 0 12 0;
-#X connect 13 1 12 0;
-#X connect 13 2 12 0;
-#X connect 13 3 12 0;
-#X connect 13 4 12 0;
-#X connect 13 5 12 0;
-#X connect 13 6 12 0;
-#X connect 13 7 12 0;
-#X connect 13 8 12 0;
-#X connect 13 9 12 0;
-#X connect 13 10 0 0;
-#X connect 14 0 5 1;
-#X connect 15 0 17 0;
-#X connect 15 1 11 0;
-#X connect 16 0 30 0;
-#X connect 17 0 18 0;
-#X connect 17 1 21 0;
-#X connect 17 1 19 0;
-#X connect 18 0 24 0;
-#X connect 19 0 23 2;
-#X connect 20 0 23 2;
-#X connect 21 0 23 1;
-#X connect 21 0 27 0;
-#X connect 22 0 23 1;
-#X connect 22 0 27 0;
-#X connect 24 0 23 0;
-#X connect 24 0 29 0;
-#X connect 25 0 23 1;
-#X connect 25 0 27 0;
-#X connect 26 0 23 2;
-#X connect 27 0 28 1;
-#X connect 29 0 31 0;
-#X connect 30 0 24 0;
-#X connect 31 1 28 0;
-#X restore 54 131 pd generator;
diff --git a/pd/doc/7.stuff/data-structures/beat-maker.pd b/pd/doc/7.stuff/data-structures/beat-maker.pd
deleted file mode 100644
index 014ae0ac..00000000
--- a/pd/doc/7.stuff/data-structures/beat-maker.pd
+++ /dev/null
@@ -1,44 +0,0 @@
-#N canvas 432 246 737 444 10;
-#X obj 114 109 until;
-#X obj 116 84 t b b;
-#X obj 116 147 f;
-#X msg 160 85 0;
-#X obj 179 137 + 1;
-#X obj 115 63 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
--1;
-#X obj 118 180 t f f;
-#X obj 115 38 inlet;
-#X obj 232 214 pack 0 \$2;
-#X obj 191 289 expr 1 + (($f1 % $f2) == 0);
-#X obj 115 314 pack 0 \$3 0;
-#X msg 115 337 \; add-rect \$1 \$2 \$3 10;
-#X obj 117 216 pack 0 \$1 \$2;
-#X obj 294 43 loadbang;
-#X obj 295 67 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
--1;
-#X obj 179 164 sel;
-#X floatatom 295 117 5 0 0 0 - - -;
-#X obj 296 89 expr \$1 * \$2 + 1;
-#X obj 117 259 expr 40 + 100 * $f1/$f2;
-#X connect 0 0 2 0;
-#X connect 1 0 0 0;
-#X connect 1 1 3 0;
-#X connect 2 0 4 0;
-#X connect 2 0 6 0;
-#X connect 3 0 2 1;
-#X connect 4 0 2 1;
-#X connect 4 0 15 0;
-#X connect 5 0 1 0;
-#X connect 6 0 12 0;
-#X connect 6 1 8 0;
-#X connect 7 0 5 0;
-#X connect 8 0 9 0;
-#X connect 9 0 10 2;
-#X connect 10 0 11 0;
-#X connect 12 0 18 0;
-#X connect 13 0 14 0;
-#X connect 14 0 17 0;
-#X connect 15 0 0 1;
-#X connect 17 0 15 1;
-#X connect 17 0 16 0;
-#X connect 18 0 10 0;
diff --git a/pd/doc/7.stuff/data-structures/data-array.pd b/pd/doc/7.stuff/data-structures/data-array.pd
deleted file mode 100644
index 25cb1ec8..00000000
--- a/pd/doc/7.stuff/data-structures/data-array.pd
+++ /dev/null
@@ -1,64 +0,0 @@
-#N canvas 230 71 587 465 12;
-#X floatatom 179 207 0 0 0;
-#X obj 53 199 f;
-#X obj 89 194 + 1;
-#X obj 53 232 sel;
-#X msg 69 165 1;
-#X msg 285 213 0;
-#X obj 418 342 *;
-#X obj 418 392 del;
-#X obj 414 292 t f f;
-#X obj 418 322 -;
-#X msg 469 304 0;
-#X obj 449 346 r delay-multiplier;
-#X obj 432 369 r reset-stop;
-#X obj 238 110 inlet;
-#X obj 179 184 getsize \$1 \$2;
-#X obj 285 233 element \$1 \$2;
-#X obj 187 234 element \$1 \$2;
-#X obj 208 408 outlet;
-#X obj 349 408 outlet;
-#X obj 187 254 get \$3 y w x;
-#X obj 285 253 get \$3 y w;
-#X obj 265 408 outlet;
-#X obj 342 302 t f b;
-#X obj 372 326 0;
-#X obj 238 130 t b b p b;
-#X text 229 93 pointer in;
-#X text 20 12 This is an abstraction used in the sequencer example. Here we take a pointer and sequence an array belonging to it \, either the amplitude or the frequency \, depending on the value of argument 2 The template of the scalar is given by argument 1 and that of the array elements by argument 3;
-#X text 90 431 Outlets: new y value \, new w value \, time to ramp to new values.;
-#X connect 1 0 2 0;
-#X connect 1 0 3 0;
-#X connect 2 0 1 1;
-#X connect 3 1 16 0;
-#X connect 4 0 1 1;
-#X connect 5 0 15 0;
-#X connect 6 0 7 0;
-#X connect 6 0 18 0;
-#X connect 7 0 1 0;
-#X connect 8 0 9 1;
-#X connect 8 1 9 0;
-#X connect 9 0 6 0;
-#X connect 10 0 9 1;
-#X connect 11 0 6 1;
-#X connect 12 0 7 0;
-#X connect 13 0 24 0;
-#X connect 14 0 0 0;
-#X connect 14 0 3 1;
-#X connect 15 0 20 0;
-#X connect 16 0 19 0;
-#X connect 19 0 17 0;
-#X connect 19 1 21 0;
-#X connect 19 2 8 0;
-#X connect 20 0 17 0;
-#X connect 20 1 22 0;
-#X connect 22 0 21 0;
-#X connect 22 1 23 0;
-#X connect 23 0 18 0;
-#X connect 24 0 1 0;
-#X connect 24 1 5 0;
-#X connect 24 2 15 1;
-#X connect 24 2 14 0;
-#X connect 24 2 16 1;
-#X connect 24 3 4 0;
-#X connect 24 3 10 0;
diff --git a/pd/doc/7.stuff/data-structures/data-start.pd b/pd/doc/7.stuff/data-structures/data-start.pd
deleted file mode 100644
index b0522fbf..00000000
--- a/pd/doc/7.stuff/data-structures/data-start.pd
+++ /dev/null
@@ -1,40 +0,0 @@
-#N canvas 404 0 597 385 12;
-#X obj 248 142 inlet;
-#X obj 295 250 *;
-#X obj 165 262 del;
-#X obj 130 141 r reset-stop;
-#X obj 195 339 outlet;
-#X obj 375 172 outlet;
-#X obj 310 145 get \$1 x y;
-#X obj 195 312 pointer;
-#X text 46 101 outlets: pointer (delayed) \, y-value.;
-#X obj 248 167 t b p;
-#X obj 165 288 t b b;
-#X obj 335 224 r time-of-last-evt;
-#X obj 295 223 -;
-#X obj 310 167 t f f;
-#X obj 97 339 s next-evt;
-#X obj 335 201 s time-of-last-evt;
-#X obj 329 251 r delay-multiplier;
-#X text 49 10 This is an abstraction used by the sequencer example.
-;
-#X text 46 45 Here we carry out the actual sequencing. Argument is
-template of the scalar. Note the sends and receives which must agree
-with the rest of the patch.;
-#X connect 0 0 9 0;
-#X connect 1 0 2 1;
-#X connect 2 0 10 0;
-#X connect 3 0 2 0;
-#X connect 6 0 13 0;
-#X connect 6 1 5 0;
-#X connect 7 0 4 0;
-#X connect 9 0 2 0;
-#X connect 9 1 7 1;
-#X connect 9 1 6 0;
-#X connect 10 0 14 0;
-#X connect 10 1 7 0;
-#X connect 11 0 12 1;
-#X connect 12 0 1 0;
-#X connect 13 0 15 0;
-#X connect 13 1 12 0;
-#X connect 16 0 1 1;
diff --git a/pd/doc/7.stuff/data-structures/file.txt b/pd/doc/7.stuff/data-structures/file.txt
deleted file mode 100644
index 62b6a167..00000000
--- a/pd/doc/7.stuff/data-structures/file.txt
+++ /dev/null
@@ -1,39 +0,0 @@
-data;
-template template-toplevel;
-float x;
-float y;
-float z;
-float q;
-array bazoo template-element;
-;
-template template-element;
-float x;
-float y;
-float w;
-;
-;
-template-toplevel 76 177 -66 85;
-0 0 0;
-30 0 0;
-0 111 8;
--47 22 0;
-0 0 0;
-0 70 0;
-0 70 70;
-70 70 0;
-0 70 0;
-;
-template-toplevel 196 109 77 802;
--20 77 0;
-0 0 4;
-67 59 0;
-0 76 12;
--45 -68 0;
-;
-template-toplevel 150 250 20 80;
-0 0 0;
-40 0 4;
-60 50 0;
-100 30 3;
-200 0 0;
-;
diff --git a/pd/doc/7.stuff/data-structures/score.txt b/pd/doc/7.stuff/data-structures/score.txt
deleted file mode 100644
index 84ef0376..00000000
--- a/pd/doc/7.stuff/data-structures/score.txt
+++ /dev/null
@@ -1,94 +0,0 @@
-data;
-template template-toplevel;
-float x;
-float y;
-float voiceno;
-array pitch template-pitch;
-array amp template-amp;
-;
-template template-pitch;
-float x;
-float y;
-float w;
-;
-template template-amp;
-float x;
-float y;
-float w;
-;
-;
-template-toplevel 2 246 900;
-0 0 50;
-10 0 50;
-;
-0 0 0;
-10 0 10;
-11 0 0;
-;
-template-toplevel 13 220 990;
-0 0 50;
-10 0 50;
-;
-0 0 10;
-10 0 10;
-11 0 0;
-;
-template-toplevel 34 73 90;
-0 250 50;
-100 50 0;
-100 50 50;
-230 200 0;
-230 50 10;
-240 300 1;
-240 100 50;
-250 250 1;
-250 150 50;
-260 250 1;
-285 250 1;
-;
-0 0 2;
-100 0 5;
-200 0 6;
-225 0 2;
-230 0 5;
-260 0 10;
-261 0 5;
-265 0 0;
-266 0 6;
-270 0 0;
-271 0 8;
-275 0 0;
-276 0 10;
-280 0 0;
-281 0 12;
-285 0 0;
-;
-template-toplevel 67 282 900;
-0 20 1;
-60 20 1;
-;
-0 0 0;
-30 0 14;
-60 0 0;
-;
-template-toplevel 141 322 900;
-0 0 50;
-70 -70 50;
-;
-0 0 0;
-10 0 10;
-20 0 0;
-30 0 0;
-40 0 10;
-50 0 0;
-60 0 10;
-70 0 0;
-;
-template-toplevel 326 192 909;
-0 0 50;
-50 0 50;
-;
-0 0 15;
-10 0 10;
-50 0 0;
-;
diff --git a/pd/doc/7.stuff/data-structures/voice.pd b/pd/doc/7.stuff/data-structures/voice.pd
deleted file mode 100644
index 20f2856d..00000000
--- a/pd/doc/7.stuff/data-structures/voice.pd
+++ /dev/null
@@ -1,119 +0,0 @@
-#N canvas 0 34 918 591 12;
-#X obj 180 96 inlet;
-#X obj 169 288 pack;
-#X obj 169 395 line~;
-#X obj 169 262 sqrt;
-#X obj 169 480 *~;
-#X obj 169 419 *~;
-#X obj 169 443 *~;
-#X obj 92 478 inlet~;
-#X obj 92 526 outlet~;
-#X obj 92 502 +~;
-#X obj 434 411 line~;
-#X obj 434 435 *~;
-#X obj 434 459 *~;
-#X obj 434 283 mtof;
-#X obj 405 187 +;
-#X obj 434 307 sqrt;
-#X obj 434 331 sqrt;
-#X obj 434 387 pack;
-#X obj 189 343 r reset;
-#X msg 189 367 0 20;
-#X obj 180 120 data-start template-toplevel;
-#X obj 6 150 data-array template-toplevel amp template-amp;
-#X obj 433 148 data-array template-toplevel pitch template-pitch;
-#X obj 308 437 noise~;
-#X obj 485 259 +;
-#X obj 485 282 mtof;
-#X obj 485 306 sqrt;
-#X obj 485 330 sqrt;
-#X obj 485 411 line~;
-#X obj 485 435 *~;
-#X obj 485 459 *~;
-#X obj 485 387 pack;
-#X obj 384 411 line~;
-#X obj 384 435 *~;
-#X obj 384 459 *~;
-#X obj 384 387 pack;
-#X obj 384 284 mtof;
-#X obj 384 308 sqrt;
-#X obj 384 332 sqrt;
-#X obj 384 262 -;
-#X obj 240 520 vcf~ 10;
-#X obj 315 520 vcf~ 10;
-#X obj 390 516 vcf~ 10;
-#X text 13 7 This is an abstraction used in the sequencer example.
-Here we take care of the audio synthesis \, according to timed controls
-from the the "data-start" and "data-array" subpatches.;
-#X text 521 459 calculate time-varying center frequencies;
-#X text 470 512 ... for three VCFs acting on a noise source.;
-#X text 85 394 Amplitude;
-#X text 86 410 envelope;
-#X text 94 549 summing bus;
-#X text 346 62 Pitch is in eighth-tones (because 4 pixels per half
-tone looks reasonable on the screen.) Hence the * 0.25 objects below.
-;
-#X obj 169 235 / 2;
-#X connect 0 0 20 0;
-#X connect 1 0 2 0;
-#X connect 2 0 5 0;
-#X connect 2 0 5 1;
-#X connect 3 0 1 0;
-#X connect 4 0 9 1;
-#X connect 5 0 6 0;
-#X connect 5 0 6 1;
-#X connect 6 0 4 0;
-#X connect 7 0 9 0;
-#X connect 9 0 8 0;
-#X connect 10 0 11 0;
-#X connect 10 0 11 1;
-#X connect 11 0 12 0;
-#X connect 11 0 12 1;
-#X connect 12 0 41 1;
-#X connect 13 0 15 0;
-#X connect 14 0 39 0;
-#X connect 14 0 13 0;
-#X connect 14 0 24 0;
-#X connect 15 0 16 0;
-#X connect 16 0 17 0;
-#X connect 17 0 10 0;
-#X connect 18 0 19 0;
-#X connect 19 0 2 0;
-#X connect 20 0 21 0;
-#X connect 20 0 22 0;
-#X connect 20 1 14 1;
-#X connect 21 1 50 0;
-#X connect 21 2 1 1;
-#X connect 22 0 14 0;
-#X connect 22 1 39 1;
-#X connect 22 1 24 1;
-#X connect 22 2 17 1;
-#X connect 22 2 35 1;
-#X connect 22 2 31 1;
-#X connect 23 0 40 0;
-#X connect 23 0 41 0;
-#X connect 23 0 42 0;
-#X connect 24 0 25 0;
-#X connect 25 0 26 0;
-#X connect 26 0 27 0;
-#X connect 27 0 31 0;
-#X connect 28 0 29 0;
-#X connect 28 0 29 1;
-#X connect 29 0 30 0;
-#X connect 29 0 30 1;
-#X connect 30 0 42 1;
-#X connect 31 0 28 0;
-#X connect 32 0 33 0;
-#X connect 32 0 33 1;
-#X connect 33 0 34 0;
-#X connect 33 0 34 1;
-#X connect 34 0 40 1;
-#X connect 35 0 32 0;
-#X connect 36 0 37 0;
-#X connect 37 0 38 0;
-#X connect 38 0 35 0;
-#X connect 39 0 36 0;
-#X connect 40 0 4 1;
-#X connect 41 0 4 1;
-#X connect 42 0 4 1;
-#X connect 50 0 3 0;
diff --git a/pd/doc/7.stuff/data-structures/z.txt b/pd/doc/7.stuff/data-structures/z.txt
deleted file mode 100644
index 6cdd0a4a..00000000
--- a/pd/doc/7.stuff/data-structures/z.txt
+++ /dev/null
@@ -1,64 +0,0 @@
-data;
-template template5;
-float x;
-float y;
-float z;
-float q;
-array bazoo template5-element;
-;
-template template5-element;
-float y;
-;
-;
-template5 50 150 30 9;
-0;
-0;
-0;
-0;
-0;
-3;
-0;
-0;
-0;
-7;
--30;
-0;
-0;
-0;
-0;
-0;
--4;
--18;
--26;
--36;
--46;
--62;
--74;
--78;
--70;
--62;
--52;
--40;
--30;
--20;
--4;
-1;
-7;
-11;
-13;
-0;
-0;
-0;
-0;
-0;
-0;
-0;
-0;
-0;
-0;
-43;
-0;
-0;
-0;
-0;
-;