#N canvas 0 31 956 304 10; #X obj 368 207 maskxor; #X obj 457 63 t b b; #X msg 38 157 bang; #X floatatom 390 247 5 0 0 0 - - -; #X floatatom 368 264 5 0 0 0 - - -; #X floatatom 254 122 5 0 0 0 - - -; #X msg 457 46 bang; #X msg 457 80 listl 1 1 0 0 0 1 1; #X msg 500 97 listr 0 1 1 0 2 1 0; #X text 39 56 Maskxor takes two lists - listr and listl \, to set up a map where map = listl ^ listr.; #X text 37 93 Floats will only pass through if map[(int)float] > 0 \, so if the corresponding element is greater than zero in either listl \, or listr \, but not both.; #X text 76 148 outputs the map \, the xor-ed element and (if this is greater than zero) the last float in.; #X obj 412 227 print MASK; #X text 41 22 Maskxor - exclusive-OR mask map by Edward Kelly. This is GNU software.; #X msg 39 193 clear; #X text 79 192 resets the object; #X text 29 283 Polyphony control objects by Ed Kelly November 2006 ; #X text 397 282 See also; #X obj 458 280 sieve; #X obj 501 280 polymap; #X obj 558 280 polystat; #N canvas 0 0 450 300 (subpatch) 0; #X msg 174 179 0 1 0 0 1 1 2; #X obj 150 84 loadbang; #X obj 175 217 outlet; #X connect 0 0 2 0; #X connect 1 0 0 0; #X restore 584 152 pd; #X obj 568 173 l; #X obj 534 148 t a b; #X obj 568 190 prepend listr; #X obj 473 190 prepend listl; #X msg 662 97 1 0 0 1 1; #X msg 678 114 1 1 0 0 0 1; #X msg 721 131 0 1 1 0 2 1 0; #X msg 669 190 mode \$1; #X obj 669 167 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 1; #X text 728 191 ... in mode 1 \, floats are only; #X text 729 204 passed through the left outlet; #X text 728 217 when the left list contains; #X text 727 229 fewer non-zero elements than; #X text 727 241 the right list. CHANGED BEHAVIOUR!; #X msg 651 65 1 0 0 1 0 0 0 1; #X msg 638 49 1 0 0 1 0 1 0 1; #X text 847 123 |; #X text 847 132 |; #X text 847 141 |; #X text 847 150 |; #X text 847 159 |; #X text 847 168 |; #X text 847 177 |; #X text 761 60 _; #X text 768 60 _; #X text 775 60 _; #X text 782 60 _; #X text 789 60 _; #X text 796 60 _; #X text 803 60 _; #X text 810 60 _; #X text 817 60 _; #X text 824 60 _; #X text 831 60 _; #X text 838 60 _; #X text 845 60 _; #X text 847 69 |; #X text 847 78 |; #X text 847 87 |; #X text 847 96 |; #X text 847 105 |; #X text 847 114 |; #X text 759 65 <; #N canvas 355 347 494 344 META 0; #X text 12 5 GENRE help; #X text 12 185 HELP_PATCH_AUTHORS Ed Kelly. Revised by Jonathan Wilkes for Pd-extended 0.42 to conform to the PDDP template.; #X text 12 45 LICENSE GPL v3; #X text 12 165 AUTHOR Ed Kelly ; #X text 12 65 DESCRIPTION exclusive-OR mask map; #X text 12 25 KEYWORDS control list_op; #X text 12 85 INLET_0 float listl listr clear bang mode; #X text 12 105 OUTLET_0 float; #X text 12 125 OUTLET_1 float; #X text 12 145 OUTLET_2 list; #X restore 887 275 pd META; #X connect 0 0 4 0; #X connect 0 1 3 0; #X connect 0 2 12 0; #X connect 1 0 7 0; #X connect 1 1 8 0; #X connect 2 0 0 0; #X connect 5 0 0 0; #X connect 6 0 1 0; #X connect 7 0 0 0; #X connect 8 0 0 0; #X connect 14 0 0 0; #X connect 21 0 22 1; #X connect 22 0 24 0; #X connect 23 0 22 1; #X connect 23 0 25 0; #X connect 23 1 22 0; #X connect 24 0 0 0; #X connect 25 0 0 0; #X connect 26 0 23 0; #X connect 27 0 23 0; #X connect 28 0 23 0; #X connect 29 0 0 0; #X connect 30 0 29 0; #X connect 36 0 23 0; #X connect 37 0 23 0;