<instrument type='blue.orchestra.BlueSynthBuilder' editEnabled='true'>
  <name>ElectronicaBell v1.0</name>
  <comment>Author: Atte AndrÃ© Jensen (atte.dk), 2007

Mellow bell-like sound with reverse.
</comment>
  <globalOrc>git_instr_bell_electronica1	ftgen	 0, 0, 1024, 10, 1
git_instr_bell_electronica2	ftgen	 0, 0, 1024, 10, 1, .07
git_instr_bell_electronica3	ftgen	 0, 0, 1024, 10, 1, .1, .01
git_instr_bell_electronica4	ftgen	 0, 0, 1024, 10, 1, .2, .02, .005
git_instr_bell_electronica5	ftgen	 0, 0, 1024, 10, 1, .03, .4, .02, .01, .007, .005, .002
git_instr_bell_electronica6	ftgen	 0, 0, 1024, 10, 1, .3, .7, .02, .08, .005, .5, .1, .05, .001, .2
git_instr_bell_electronica7	ftgen	 0, 0, 1024, 10, 1, .3, .07, .01, .002, 1, 6
</globalOrc>
  <globalSco/>
  <instrumentText>ifreq	=	p4; &lt;20: pitch, &gt;= 20: hz

; optional
ivol	=	p5; 0-1
ilength	=	p6; seconds
iwaveform =	p7; 1, 2, 3 or 4
idetune1=	p8; &lt;.05
idetune2=	p9; &lt;.5

; setup
iattack =	.001

; defaults
ifreq	=	(p4 &gt;= 20) ? ifreq : cpspch(ifreq)
ivol	=	(ivol == 0) ? &lt;volume&gt; : ivol
ilength	=	(ilength == 0) ? &lt;length&gt; : ilength
iwaveform =	(iwaveform == 0) ? &lt;waveform&gt; : iwaveform
idetune1 =	(idetune1 == 0) ? &lt;detune1&gt; : idetune1
idetune2 =	(idetune2 == 0) ? &lt;detune2&gt; : idetune2

; calculations
iamp	=	4000 * ivol

; envelopes
kkeepalive linsegr 1, ilength, 0
;aampenv	expseg	.001, ilength-(iattack*(&lt;reverse&gt;)), 1, ilength-(iattack*(1-&lt;reverse&gt;)), .001
aampenv	=	0
cigoto (&lt;reverse&gt; ==1), reverse
irise	=	iattack
ifall	=	ilength - iattack
	igoto endif_reverse
	reverse:
irise	=	ilength - iattack
ifall	=	iattack
	endif_reverse:

aampenv	expseg	.001, irise, 1, ifall, .001

; oscillators
aosc1	oscili	iamp, ifreq * (1 + idetune1), git_instr_bell_electronica&lt;waveform&gt;
aosc2	oscili	iamp, ifreq * (1 - idetune1), git_instr_bell_electronica&lt;waveform&gt;
aosc3	oscili	iamp, ifreq * (1 + idetune2), git_instr_bell_electronica&lt;waveform&gt;
aosc4	oscili	iamp, ifreq * (1 - idetune2), git_instr_bell_electronica&lt;waveform&gt;

; mix
aoutl	=	(aosc1 + aosc4) * aampenv
aoutr	=	(aosc2 + aosc3) * aampenv

; output
	blueMixerOut aoutl, aoutr</instrumentText>
  <graphicInterface editEnabled='false'>
    <uniqueNameManager nameIndex='-1' defaultPrefix='bsbObj'/>
    <bsbObject type='blue.orchestra.blueSynthBuilder.BSBKnob' version='2'>
      <objectName>length</objectName>
      <x>99</x>
      <y>54</y>
      <automationAllowed>true</automationAllowed>
      <minimum>0.5</minimum>
      <maximum>6.0</maximum>
      <value>2.4768746</value>
      <knobWidth>60</knobWidth>
      <randomizable>true</randomizable>
    </bsbObject>
    <bsbObject type='blue.orchestra.blueSynthBuilder.BSBLabel'>
      <objectName></objectName>
      <x>111</x>
      <y>130</y>
      <label>Length</label>
    </bsbObject>
    <bsbObject type='blue.orchestra.blueSynthBuilder.BSBLabel'>
      <objectName></objectName>
      <x>15</x>
      <y>130</y>
      <label>Waveform</label>
    </bsbObject>
    <bsbObject type='blue.orchestra.blueSynthBuilder.BSBCheckBox'>
      <objectName>reverse</objectName>
      <x>9</x>
      <y>68</y>
      <label>Reverse</label>
      <selected>true</selected>
      <randomizable>true</randomizable>
    </bsbObject>
    <bsbObject type='blue.orchestra.blueSynthBuilder.BSBKnob' version='2'>
      <objectName>detune1</objectName>
      <x>177</x>
      <y>54</y>
      <automationAllowed>true</automationAllowed>
      <minimum>0.0</minimum>
      <maximum>0.05</maximum>
      <value>0.001200144</value>
      <knobWidth>60</knobWidth>
      <randomizable>true</randomizable>
    </bsbObject>
    <bsbObject type='blue.orchestra.blueSynthBuilder.BSBLabel'>
      <objectName></objectName>
      <x>181</x>
      <y>130</y>
      <label>Detune 1</label>
    </bsbObject>
    <bsbObject type='blue.orchestra.blueSynthBuilder.BSBKnob' version='2'>
      <objectName>detune2</objectName>
      <x>239</x>
      <y>54</y>
      <automationAllowed>true</automationAllowed>
      <minimum>0.0</minimum>
      <maximum>0.05</maximum>
      <value>5.0E-4</value>
      <knobWidth>60</knobWidth>
      <randomizable>true</randomizable>
    </bsbObject>
    <bsbObject type='blue.orchestra.blueSynthBuilder.BSBLabel'>
      <objectName></objectName>
      <x>243</x>
      <y>130</y>
      <label>Detune 2</label>
    </bsbObject>
    <bsbObject type='blue.orchestra.blueSynthBuilder.BSBLabel'>
      <objectName></objectName>
      <x>92</x>
      <y>3</y>
      <label>&lt;html&gt;&lt;font size=&quot;6&quot;&gt;&lt;b&gt;ElectronicaBell&lt;b&gt;&lt;/font&gt;&lt;/html&gt;</label>
    </bsbObject>
    <bsbObject type='blue.orchestra.blueSynthBuilder.BSBKnob' version='2'>
      <objectName>volume</objectName>
      <x>318</x>
      <y>54</y>
      <automationAllowed>true</automationAllowed>
      <minimum>0.0</minimum>
      <maximum>1.0</maximum>
      <value>1.0</value>
      <knobWidth>60</knobWidth>
      <randomizable>false</randomizable>
    </bsbObject>
    <bsbObject type='blue.orchestra.blueSynthBuilder.BSBLabel'>
      <objectName></objectName>
      <x>327</x>
      <y>130</y>
      <label>Volume</label>
    </bsbObject>
    <bsbObject type='blue.orchestra.blueSynthBuilder.BSBDropdown'>
      <objectName>waveform</objectName>
      <x>4</x>
      <y>106</y>
      <bsbDropdownItemList>
        <bsbDropdownItem>
          <name>Sine</name>
          <value>1</value>
        </bsbDropdownItem>
        <bsbDropdownItem>
          <name>Bright Sine</name>
          <value>2</value>
        </bsbDropdownItem>
        <bsbDropdownItem>
          <name>Warm</name>
          <value>3</value>
        </bsbDropdownItem>
        <bsbDropdownItem>
          <name>Normal</name>
          <value>4</value>
        </bsbDropdownItem>
        <bsbDropdownItem>
          <name>Hollow</name>
          <value>5</value>
        </bsbDropdownItem>
        <bsbDropdownItem>
          <name>Metal</name>
          <value>6</value>
        </bsbDropdownItem>
        <bsbDropdownItem>
          <name>Glass</name>
          <value>7</value>
        </bsbDropdownItem>
      </bsbDropdownItemList>
      <selectedIndex>2</selectedIndex>
      <randomizable>true</randomizable>
    </bsbObject>
    <bsbObject type='blue.orchestra.blueSynthBuilder.BSBLabel'>
      <objectName></objectName>
      <x>170</x>
      <y>30</y>
      <label>v 1.0</label>
    </bsbObject>
  </graphicInterface>
  <bsbParameterList>
    <parameter uniqueId='656335182' name='detune1' label='' min='0.0' max='0.05' resolution='-1.0' automationEnabled='false'>
      <line name='' version='2' max='0.05' min='0.0' resolution='-1.0' color='-8355712' rightBound='false'>
        <linePoint x='0.0' y='0.001200144'/>
      </line>
    </parameter>
    <parameter uniqueId='656335184' name='detune2' label='' min='0.0' max='0.05' resolution='-1.0' automationEnabled='false'>
      <line name='' version='2' max='0.05' min='0.0' resolution='-1.0' color='-8355712' rightBound='false'>
        <linePoint x='0.0' y='5.0E-4'/>
      </line>
    </parameter>
    <parameter uniqueId='656335180' name='length' label='' min='0.5' max='6.0' resolution='-1.0' automationEnabled='false'>
      <line name='' version='2' max='6.0' min='0.5' resolution='-1.0' color='-8355712' rightBound='false'>
        <linePoint x='0.0' y='2.4768746'/>
      </line>
    </parameter>
    <parameter uniqueId='656335186' name='volume' label='' min='0.0' max='1.0' resolution='-1.0' automationEnabled='false'>
      <line name='' version='2' max='1.0' min='0.0' resolution='-1.0' color='-8355712' rightBound='false'>
        <linePoint x='0.0' y='1.0'/>
      </line>
    </parameter>
  </bsbParameterList>
  <presetGroup name='Presets'>
    <preset name='Default'>
      <setting name='detune1'>ver2:0.001</setting>
      <setting name='detune2'>ver2:0.0005</setting>
      <setting name='length'>ver2:4</setting>
      <setting name='reverse'>false</setting>
      <setting name='volume'>ver2:1</setting>
      <setting name='waveform'>3</setting>
    </preset>
    <preset name='Reverse'>
      <setting name='detune1'>ver2:0.0012001439</setting>
      <setting name='detune2'>ver2:0.0005</setting>
      <setting name='length'>ver2:2.4768745899</setting>
      <setting name='reverse'>true</setting>
      <setting name='volume'>ver2:1</setting>
      <setting name='waveform'>2</setting>
    </preset>
  </presetGroup>
  <opcodeList/>
</instrument>