<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[The 1-Bit Forum — Special FX (Fuzz Click) on Arduino]]></title>
	<link rel="self" href="https://randomflux.info/1bit/extern.php?action=feed&amp;tid=127&amp;type=atom" />
	<updated>2017-02-27T01:15:30Z</updated>
	<generator>PunBB</generator>
	<id>http://randomflux.info/1bit/viewtopic.php?id=127</id>
		<entry>
			<title type="html"><![CDATA[Re: Special FX (Fuzz Click) on Arduino]]></title>
			<link rel="alternate" href="http://randomflux.info/1bit/viewtopic.php?pid=1193#p1193" />
			<content type="html"><![CDATA[<p>Thanks, PROTODOME. That&#039;s the point of this project, to make the 1-bit music accessible for more people, with more modern tools and hardware.</p>]]></content>
			<author>
				<name><![CDATA[Shiru]]></name>
				<uri>http://randomflux.info/1bit/profile.php?id=11</uri>
			</author>
			<updated>2017-02-27T01:15:30Z</updated>
			<id>http://randomflux.info/1bit/viewtopic.php?pid=1193#p1193</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Special FX (Fuzz Click) on Arduino]]></title>
			<link rel="alternate" href="http://randomflux.info/1bit/viewtopic.php?pid=1192#p1192" />
			<content type="html"><![CDATA[<p>Thought I&#039;d drop by to say that I&#039;m damn impressed by your recent conversions, Shiru. Very cool indeed. Been playing about with them today. They&#039;re pretty elegantly ported to C and very accessible to beginners and AVR C programmers.</p>]]></content>
			<author>
				<name><![CDATA[PROTODOME]]></name>
				<uri>http://randomflux.info/1bit/profile.php?id=8</uri>
			</author>
			<updated>2017-02-26T18:01:55Z</updated>
			<id>http://randomflux.info/1bit/viewtopic.php?pid=1192#p1192</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Special FX (Fuzz Click) on Arduino]]></title>
			<link rel="alternate" href="http://randomflux.info/1bit/viewtopic.php?pid=1191#p1191" />
			<content type="html"><![CDATA[<p>Yeah, I think the next logical step would be creating all-new custom engine that would actually play around strengths of the platform. Have no idea what it is could be just yet, though. Maybe a super scaled Phaser or Tritone like one, to begin with (authoring tools should be considered too). One thing that would be easy to do on Arduino is the clean vibrato and portamento that ZX engines usually don&#039;t have.</p>]]></content>
			<author>
				<name><![CDATA[Shiru]]></name>
				<uri>http://randomflux.info/1bit/profile.php?id=11</uri>
			</author>
			<updated>2017-02-26T12:33:35Z</updated>
			<id>http://randomflux.info/1bit/viewtopic.php?pid=1191#p1191</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Special FX (Fuzz Click) on Arduino]]></title>
			<link rel="alternate" href="http://randomflux.info/1bit/viewtopic.php?pid=1190#p1190" />
			<content type="html"><![CDATA[<p>Impressive! Never managed to port this engine to TI because of the interrupts. But I guess the variable timer interrupts on the Arduino come in very handy in that case.</p><p>So, what&#039;s next, any plans for a custom Arduino engine written in C?</p>]]></content>
			<author>
				<name><![CDATA[utz]]></name>
				<uri>http://randomflux.info/1bit/profile.php?id=2</uri>
			</author>
			<updated>2017-02-26T12:15:54Z</updated>
			<id>http://randomflux.info/1bit/viewtopic.php?pid=1190#p1190</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Special FX (Fuzz Click) on Arduino]]></title>
			<link rel="alternate" href="http://randomflux.info/1bit/viewtopic.php?pid=1189#p1189" />
			<content type="html"><![CDATA[<p>Yes. That was the most challenging engine to port, considering its design and the need to re-implement it using timer interrupts, but also the most interesting.</p><p>I used the same ideas as for Tritone engine, but the interrupts train system is more complicated. Just like the original, there is the main loop running at the sample rate, consisting two equal halves for each channel. When 8-bit counter overruns, a pulse of a fixed duration is generated. However, duty cycle of the pulse (the amount of time for 1 and 0 in that pulse) changes depending on the sustain parameter, creating pseudo volume decay. The pulse is generated using timer interrupts as well, setting up the timer to desired values. To get enough timer resolution (the pulses can be pretty long compared to the sample rate), I had to use prescaler 32 rather than 8, like it was in all previous ports, which affected to the sample frequency, making it a bit off.</p><p>The drums were done just like in Tritone port too, using pulse coded samples of the original drums.</p><p>I think that&#039;s the last port in the line, as all other engines use one of the techiniques of already ported engines, nothing more to explore.</p>]]></content>
			<author>
				<name><![CDATA[Shiru]]></name>
				<uri>http://randomflux.info/1bit/profile.php?id=11</uri>
			</author>
			<updated>2017-02-26T10:58:26Z</updated>
			<id>http://randomflux.info/1bit/viewtopic.php?pid=1189#p1189</id>
		</entry>
</feed>
