Help With Boolean Delay Patch


#1

I'm trying to figure out how to take a pulse from a square wave with a boolean output and use SDRAM delay/write and delay/read objects to create a delay between the square wave generator and the output. I don't really understand how to use these delay objects, much less doing it with boolean signals such as in this patch, so I'd greatly appreciate some help. The following is my attempt:

<patch-1.0 appVersion="1.0.12">
   <obj type="lfo/square" uuid="de6909eb64db13af5b43f979a4c130024b3a4793" name="square_1" x="14" y="14">
      <params>
         <frac32.s.map name="pitch" value="-42.0"/>
      </params>
      <attribs/>
   </obj>
   <obj type="pulse/dirac" uuid="6ffcf69f4d093d7df59fd18b36d443a8abf043f3" name="dirac_1" x="112" y="14">
      <params/>
      <attribs/>
   </obj>
   <obj type="delay/write sdram" uuid="5ae03f8d7b815edcfc40585d8bbac2ed48460fba" name="delaywrite1" x="182" y="14">
      <params/>
      <attribs>
         <combo attributeName="size" selection="1024 (21.33ms)"/>
      </attribs>
   </obj>
   <obj type="delay/read" uuid="9323a43569373145e559ad309eaf65a47b14cb54" name="read_1" x="322" y="14">
      <params>
         <frac32.u.map name="time" value="64.0"/>
      </params>
      <attribs>
         <objref attributeName="delayname" obj="delaywrite1"/>
      </attribs>
   </obj>
   <obj type="env/follower" uuid="356ce1d18ac6b51704833f94dac5dea823fb8223" name="follower_1" x="476" y="14">
      <params/>
      <attribs>
         <combo attributeName="time" selection="1.3ms"/>
      </attribs>
   </obj>
   <obj type="logic/change speedlim" uuid="9239a1be592182b71673521e7d7461e6951e8d3b" name="change_1" x="546" y="14">
      <params>
         <frac32.u.map name="d" value="63.5"/>
      </params>
      <attribs/>
   </obj>
   <obj type="disp/bool" uuid="a0ee71d48208b71752cbb8c05e55145106ef3946" name="bool_5" x="672" y="14">
      <params/>
      <attribs/>
   </obj>
   <obj type="disp/bool" uuid="a0ee71d48208b71752cbb8c05e55145106ef3946" name="bool_4" x="112" y="98">
      <params/>
      <attribs/>
   </obj>
   <nets>
      <net>
         <source obj="square_1" outlet="wave"/>
         <dest obj="bool_4" inlet="in"/>
         <dest obj="dirac_1" inlet="trig"/>
      </net>
      <net>
         <source obj="dirac_1" outlet="out"/>
         <dest obj="delaywrite1" inlet="in"/>
      </net>
      <net>
         <source obj="follower_1" outlet="amp"/>
         <dest obj="change_1" inlet="in"/>
      </net>
      <net>
         <source obj="change_1" outlet="trig"/>
         <dest obj="bool_5" inlet="in"/>
      </net>
      <net>
         <source obj="read_1" outlet="out"/>
         <dest obj="follower_1" inlet="in"/>
      </net>
   </nets>
   <settings>
      <subpatchmode>no</subpatchmode>
   </settings>
   <notes><![CDATA[]]></notes>
   <windowPos>
      <x>2624</x>
      <y>129</y>
      <width>823</width>
      <height>400</height>
   </windowPos>
</patch-1.0>

#2

If you're trying to have a square wave determine the playback of your delay, try using table/play instead with a square lfo attached to the play and the stop, using a logic/inv from the lfo to the stop of the play object.