<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>http://wiki.intellivision.us/index.php?action=history&amp;feed=atom&amp;title=PSG</id>
		<title>PSG - Revision history</title>
		<link rel="self" type="application/atom+xml" href="http://wiki.intellivision.us/index.php?action=history&amp;feed=atom&amp;title=PSG"/>
		<link rel="alternate" type="text/html" href="http://wiki.intellivision.us/index.php?title=PSG&amp;action=history"/>
		<updated>2026-06-29T20:17:49Z</updated>
		<subtitle>Revision history for this page on the wiki</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>http://wiki.intellivision.us/index.php?title=PSG&amp;diff=14940&amp;oldid=prev</id>
		<title>Mr z: /* Channels */</title>
		<link rel="alternate" type="text/html" href="http://wiki.intellivision.us/index.php?title=PSG&amp;diff=14940&amp;oldid=prev"/>
				<updated>2011-09-28T15:36:58Z</updated>
		
		<summary type="html">&lt;p&gt;‎&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Channels&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr style=&quot;vertical-align: top;&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Revision as of 15:36, 28 September 2011&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l75&quot; &gt;Line 75:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 75:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Note:&amp;#160; Some PSG variants have 5 volume control bits and some have 6.&amp;#160; On devices with 5-bit volume registers, volumes $10 - $1F select the envelope generator.&amp;#160; On devices with 6-bit volume registers, $30 - $3F selects the envelope generator.&amp;#160; On these devices, $10 - $1F select the envelope shifted right by 2 bits, and $20 - $2F select the envelope shifted right by 1 bit.&amp;#160; For consistency across all variants, programs should write $3F to select the envelope generator for a particular channel, and should tolerate reading back $1F after having written $3F to a given channel's volume register.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Note:&amp;#160; Some PSG variants have 5 volume control bits and some have 6.&amp;#160; On devices with 5-bit volume registers, volumes $10 - $1F select the envelope generator &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;as the volume source&lt;/ins&gt;.&amp;#160; On devices with 6-bit volume registers, $30 - $3F selects the envelope generator &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;in the same manner&lt;/ins&gt;.&amp;#160; On these &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;6-bit volume &lt;/ins&gt;devices&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;, however&lt;/ins&gt;, $10 - $1F select the envelope shifted right by 2 bits, and $20 - $2F select the envelope shifted right by 1 bit&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;, resulting in &amp;quot;quiet&amp;quot; envelopes&lt;/ins&gt;.&amp;#160; For consistency across all variants, programs should write $3F to select the envelope generator for a particular channel, and should tolerate reading back $1F after having written $3F to a given channel's volume register.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==Envelope Generator==&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==Envelope Generator==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Mr z</name></author>	</entry>

	<entry>
		<id>http://wiki.intellivision.us/index.php?title=PSG&amp;diff=14939&amp;oldid=prev</id>
		<title>Mr z: /* Channels */</title>
		<link rel="alternate" type="text/html" href="http://wiki.intellivision.us/index.php?title=PSG&amp;diff=14939&amp;oldid=prev"/>
				<updated>2011-09-28T15:34:55Z</updated>
		
		<summary type="html">&lt;p&gt;‎&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Channels&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr style=&quot;vertical-align: top;&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Revision as of 15:34, 28 September 2011&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l50&quot; &gt;Line 50:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 50:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==Channels==&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==Channels==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;The PSG contains 3 independent channels, a single noise generator, and a single envelope generator.&amp;#160; Each channel includes a square wave tone generator and is capable of mixing any combination of the output from its respective tone generator with the noise generator and the envelope generator.&amp;#160; Output from each of the 3 channels is then mixed together to produce the final audio output.&amp;lt;br/&amp;gt;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Channel periods are 12-bit values indicating a range of period from 1 PSG clock cycle up to 4096 PSG clock cycles.&amp;#160; This translates to a frequency range from.&amp;#160; Note that a channel period value of zero actually indicates a period of 4096.&amp;lt;br/&amp;gt;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;In the simplest case, where channel output is affected only by its respective tone generator and not by either noise or envelope, the PSG generates channel output by counting the number of PSG clock cycles indicated by the channel period and then toggling the channel output between zero (0) and the currently selected volume for that channel.&amp;lt;br/&amp;gt;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;square wave output optionally modified by the envelope generator and/or the noise generator&amp;lt;br/&amp;gt;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Volume (0-15)&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Period (1-4096)&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Tone Enabled&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Envelope Enabled&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Noise Enabled&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;16 volume levels, &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;independent &lt;/del&gt;to &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;each &lt;/del&gt;channel&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;The PSG provides 3 independent analog output channels.&amp;#160; The PSG provides a dedicated square wave tone generator and D/A converter for each of the three output channels.&amp;#160; It also provides a single noise generator and single volume envelope generator, both can be mixed with any combination of the three channels.&amp;#160; The Intellivision mixes the output of the three analog channels directly to produce the final audio output.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;The square wave tone generators work by dividing the PSG's sound clock by a 12-bit value.&amp;#160; On NTSC systems, the effective sound clock is 3.579545MHz / &lt;/ins&gt;16 &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;= 223721.5625Hz.&amp;#160; On PAL systems, the sound clock is 4MHz / 16 = 250000Hz.&amp;#160; The tone generator toggles at the rate (sound clock / pitch period).&amp;#160; Because two toggles make a full square wave, the actual frequency of the resulting square wave is half that:&amp;#160; (sound clock / pitch period / 2).&amp;#160; This translates to a frequency range from 111860Hz to 27.31Hz on NTSC systems, and 125000Hz to 30.52Hz on PAL/SECAM.&amp;#160; Note that a channel period value of zero actually indicates a period of 4096.&amp;#160; The following equations convert pitch period to frequency for both systems:&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; 3.579545MHz&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt; F_tone =&amp;#160; -------------&amp;#160; for NTSC&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; 32*P_channel&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt; &lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; 4.000000MHz&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt; F_tone =&amp;#160; -------------&amp;#160; for PAL &lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; 32*P_channel&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;Each channel has separate control bits to enable tone and noise.&amp;#160; The output of the tone generator gets mixed with the output of the shared noise generator with the following equation:&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;#160; &amp;#160; channel_output = (noise_enable OR noise_generator_output) AND (tone_enable OR tone_generator_output)&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;Because the PSG logically-ANDs the two sources together, the resulting output can sound &amp;quot;gritty&amp;quot;, particularly when the tone generator outputs low pitched tones.&amp;#160; Examples include the tank sound effects in Armor Battle, and the explosion sound effects in River Raid.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;The PSG sends the binary 0/1 mixed output to the D/A converter.&amp;#160; The D/A converter applies the channel's selected volume to this binary stream.&amp;#160; For &lt;/ins&gt;volume levels &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;$00 through $0F&lt;/ins&gt;, &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;the PSG outputs a fixed volume level for the channel.&amp;#160; For volume levels $30 - $3F, the PSG uses the current output level from the shared envelope generator.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;Note:&amp;#160; Some PSG variants have 5 volume control bits and some have 6.&amp;#160; On devices with 5-bit volume registers, volumes $10 - $1F select the envelope generator.&amp;#160; On devices with 6-bit volume registers, $30 - $3F selects the envelope generator.&amp;#160; On these devices, $10 - $1F select the envelope shifted right by 2 bits, and $20 - $2F select the envelope shifted right by 1 bit.&amp;#160; For consistency across all variants, programs should write $3F to select the envelope generator for a particular channel, and should tolerate reading back $1F after having written $3F &lt;/ins&gt;to &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;a given &lt;/ins&gt;channel&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;'s volume register.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==Envelope Generator==&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==Envelope Generator==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Mr z</name></author>	</entry>

	<entry>
		<id>http://wiki.intellivision.us/index.php?title=PSG&amp;diff=14859&amp;oldid=prev</id>
		<title>Mr z: Protected &quot;PSG&quot; ([edit=autoconfirmed] (indefinite) [move=autoconfirmed] (indefinite))</title>
		<link rel="alternate" type="text/html" href="http://wiki.intellivision.us/index.php?title=PSG&amp;diff=14859&amp;oldid=prev"/>
				<updated>2010-12-04T09:01:32Z</updated>
		
		<summary type="html">&lt;p&gt;Protected &amp;quot;&lt;a href=&quot;/index.php/PSG&quot; title=&quot;PSG&quot;&gt;PSG&lt;/a&gt;&amp;quot; ([edit=autoconfirmed] (indefinite) [move=autoconfirmed] (indefinite))&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr style=&quot;vertical-align: top;&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Revision as of 09:01, 4 December 2010&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; style=&quot;text-align: center;&quot; lang=&quot;en&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(No difference)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
		<author><name>Mr z</name></author>	</entry>

	<entry>
		<id>http://wiki.intellivision.us/index.php?title=PSG&amp;diff=3161&amp;oldid=prev</id>
		<title>Mr z at 07:31, 20 May 2010</title>
		<link rel="alternate" type="text/html" href="http://wiki.intellivision.us/index.php?title=PSG&amp;diff=3161&amp;oldid=prev"/>
				<updated>2010-05-20T07:31:23Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr style=&quot;vertical-align: top;&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Revision as of 07:31, 20 May 2010&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1&quot; &gt;Line 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:PSG]]&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:PSG]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The Programmable Sound Generator (PSG) is responsible for most of the Intellivision's sound generating capability.&amp;#160; It also provides an interface to hand controllers and the ECS's keyboard and piano.&amp;#160; Various PSGs were used in the Intellivision from the AY-3-891x family, including the AY-3-8914&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;, AY-3-8915&lt;/del&gt;, AY-3-8916 and AY-3-8917.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The Programmable Sound Generator (PSG) is responsible for most of the Intellivision's sound generating capability.&amp;#160; It also provides an interface to hand controllers and the ECS's keyboard and piano.&amp;#160; Various PSGs were used in the Intellivision from the AY-3-891x family, including the AY-3-8914, AY-3-8916 and AY-3-8917.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The text below is just a bunch of notes for now, to be organized into something meaningful eventually.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The text below is just a bunch of notes for now, to be organized into something meaningful eventually.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Mr z</name></author>	</entry>

	<entry>
		<id>http://wiki.intellivision.us/index.php?title=PSG&amp;diff=2544&amp;oldid=prev</id>
		<title>Mr z at 22:19, 8 October 2007</title>
		<link rel="alternate" type="text/html" href="http://wiki.intellivision.us/index.php?title=PSG&amp;diff=2544&amp;oldid=prev"/>
				<updated>2007-10-08T22:19:05Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr style=&quot;vertical-align: top;&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Revision as of 22:19, 8 October 2007&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1&quot; &gt;Line 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:PSG]]&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:PSG]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Various PSGs were used in the Intellivision from the AY-3-891x family, including the AY-3-8914, AY-3-8916 and AY-3-8917.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;The Programmable Sound Generator (PSG) is responsible for most of the Intellivision's sound generating capability.&amp;#160; It also provides an interface to hand controllers and the ECS's keyboard and piano.&amp;#160; &lt;/ins&gt;Various PSGs were used in the Intellivision from the AY-3-891x family, including the AY-3-8914&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;, AY-3-8915&lt;/ins&gt;, AY-3-8916 and AY-3-8917.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The text below is just a bunch of notes for now, to be organized into something meaningful eventually.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The text below is just a bunch of notes for now, to be organized into something meaningful eventually.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Mr z</name></author>	</entry>

	<entry>
		<id>http://wiki.intellivision.us/index.php?title=PSG&amp;diff=1341&amp;oldid=prev</id>
		<title>Arnauld: added reg. addr. for Master and ECS in the table</title>
		<link rel="alternate" type="text/html" href="http://wiki.intellivision.us/index.php?title=PSG&amp;diff=1341&amp;oldid=prev"/>
				<updated>2005-02-01T12:08:41Z</updated>
		
		<summary type="html">&lt;p&gt;added reg. addr. for Master and ECS in the table&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr style=&quot;vertical-align: top;&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Revision as of 12:08, 1 February 2005&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l13&quot; &gt;Line 13:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 13:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;table border&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;table border&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;tr&amp;gt;&amp;lt;th&amp;gt;Register&amp;lt;/th&amp;gt;&amp;lt;th&amp;gt;Data Bits&amp;lt;/th&amp;gt;&amp;lt;th&amp;gt;On Bits&amp;lt;/th&amp;gt;&amp;lt;th&amp;gt;Off Bits&amp;lt;/th&amp;gt;&amp;lt;th&amp;gt;Description&amp;lt;/th&amp;gt;&amp;lt;/tr&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;tr&amp;gt;&amp;lt;th &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;rowspan=2&lt;/ins&gt;&amp;gt;Register&amp;lt;/th&amp;gt;&amp;lt;th &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;colspan=2&amp;gt;Address&amp;lt;/th&amp;gt;&amp;lt;th rowspan=2&lt;/ins&gt;&amp;gt;Data Bits&amp;lt;/th&amp;gt;&amp;lt;th &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;rowspan=2&lt;/ins&gt;&amp;gt;On Bits&amp;lt;/th&amp;gt;&amp;lt;th &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;rowspan=2&lt;/ins&gt;&amp;gt;Off Bits&amp;lt;/th&amp;gt;&amp;lt;th &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;rowspan=2&lt;/ins&gt;&amp;gt;Description&amp;lt;/th&amp;gt;&amp;lt;/tr&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;tr&amp;gt;&amp;lt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;td&lt;/del&gt;&amp;gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;[[PSG Registers R0 - R2|R0]]&lt;/del&gt;&amp;lt;/&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;td&lt;/del&gt;&amp;gt;&amp;lt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;td&lt;/del&gt;&amp;gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;$00FF&lt;/del&gt;&amp;lt;/&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;td&amp;gt;&amp;lt;td&amp;gt;$0000&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$FF00&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Lowest 8 bits of 12-bit period for channel A.&amp;#160; Note that a channel period value of zero actually indicates a period of $1000.&amp;lt;/td&lt;/del&gt;&amp;gt;&amp;lt;/tr&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;tr&amp;gt;&amp;lt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;th&lt;/ins&gt;&amp;gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;Master&lt;/ins&gt;&amp;lt;/&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;th&lt;/ins&gt;&amp;gt;&amp;lt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;th&lt;/ins&gt;&amp;gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;ECS&lt;/ins&gt;&amp;lt;/&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;th&lt;/ins&gt;&amp;gt;&amp;lt;/tr&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;[[PSG Registers R0 - R2|&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;R1&lt;/del&gt;]]&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$00FF&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$0000&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$FF00&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Lowest 8 bits of 12-bit period for channel &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;B&lt;/del&gt;.&amp;#160; Note that a channel period value of zero actually indicates a period of $1000.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;[[PSG Registers R0 - R2|&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;R0&lt;/ins&gt;]]&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$01F0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$00F0&lt;/ins&gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$00FF&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$0000&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$FF00&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Lowest 8 bits of 12-bit period for channel &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;A&lt;/ins&gt;.&amp;#160; Note that a channel period value of zero actually indicates a period of $1000.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;[[PSG Registers R0 - R2|&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;R2&lt;/del&gt;]]&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$00FF&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$0000&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$FF00&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Lowest 8 bits of 12-bit period for channel &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;C&lt;/del&gt;.&amp;#160; Note that a channel period value of zero actually indicates a period of $1000.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;[[PSG Registers R0 - R2|&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;R1&lt;/ins&gt;]]&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$01F1&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$00F1&lt;/ins&gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$00FF&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$0000&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$FF00&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Lowest 8 bits of 12-bit period for channel &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;B&lt;/ins&gt;.&amp;#160; Note that a channel period value of zero actually indicates a period of $1000.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;[[PSG &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;Register R3&lt;/del&gt;|&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;R3&lt;/del&gt;]]&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$00FF&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$0000&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$FF00&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Lowest 8 bits of &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;16&lt;/del&gt;-bit &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;envelope period.&amp;#160; The envelope period value is multiplied by two to determine the actual &lt;/del&gt;period.&amp;#160; Note that &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;an envelope &lt;/del&gt;period value of zero actually indicates a &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;true envelope &lt;/del&gt;period of $&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;20000&lt;/del&gt;.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;[[PSG &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;Registers R0 - R2&lt;/ins&gt;|&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;R2&lt;/ins&gt;]]&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$01F2&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$00F2&lt;/ins&gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$00FF&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$0000&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$FF00&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Lowest 8 bits of &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;12&lt;/ins&gt;-bit period &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;for channel C&lt;/ins&gt;.&amp;#160; Note that &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;a channel &lt;/ins&gt;period value of zero actually indicates a period of $&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;1000&lt;/ins&gt;.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;[[PSG &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;Registers R4 - R6&lt;/del&gt;|&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;R4&lt;/del&gt;]]&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;000F&lt;/del&gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$0000&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;FFF0&lt;/del&gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;Upper 4 &lt;/del&gt;bits of &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;12&lt;/del&gt;-bit period &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;for channel A&lt;/del&gt;.&amp;#160; Note that &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;a channel &lt;/del&gt;period value of zero actually indicates a period of $&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;1000&lt;/del&gt;.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;[[PSG &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;Register R3&lt;/ins&gt;|&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;R3&lt;/ins&gt;]]&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;01F3&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$00F3&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$00FF&lt;/ins&gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$0000&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;FF00&lt;/ins&gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;Lowest 8 &lt;/ins&gt;bits of &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;16&lt;/ins&gt;-bit &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;envelope period.&amp;#160; The envelope period value is multiplied by two to determine the actual &lt;/ins&gt;period.&amp;#160; Note that &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;an envelope &lt;/ins&gt;period value of zero actually indicates a &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;true envelope &lt;/ins&gt;period of $&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;20000&lt;/ins&gt;.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;[[PSG Registers R4 - R6|&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;R5&lt;/del&gt;]]&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$000F&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$0000&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$FFF0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Upper 4 bits of 12-bit period for channel &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;B&lt;/del&gt;.&amp;#160; Note that a channel period value of zero actually indicates a period of $1000.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;[[PSG Registers R4 - R6|&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;R4&lt;/ins&gt;]]&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$01F4&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$00F4&lt;/ins&gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$000F&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$0000&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$FFF0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Upper 4 bits of 12-bit period for channel &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;A&lt;/ins&gt;.&amp;#160; Note that a channel period value of zero actually indicates a period of $1000.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;[[PSG Registers R4 - R6|&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;R6&lt;/del&gt;]]&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$000F&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$0000&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$FFF0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Upper 4 bits of 12-bit period for channel &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;C&lt;/del&gt;.&amp;#160; Note that a channel period value of zero actually indicates a period of $1000.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;[[PSG Registers R4 - R6|&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;R5&lt;/ins&gt;]]&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$01F5&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$00F5&lt;/ins&gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$000F&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$0000&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$FFF0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Upper 4 bits of 12-bit period for channel &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;B&lt;/ins&gt;.&amp;#160; Note that a channel period value of zero actually indicates a period of $1000.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;[[PSG &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;Register R7&lt;/del&gt;|&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;R7&lt;/del&gt;]]&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;00FF&lt;/del&gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$0000&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;FF00&lt;/del&gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Upper &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;8 &lt;/del&gt;bits of &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;16&lt;/del&gt;-bit &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;envelope period.&amp;#160; The envelope period value is multiplied by two to determine the actual &lt;/del&gt;period.&amp;#160; Note that &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;an envelope &lt;/del&gt;period value of zero actually indicates a &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;true envelope &lt;/del&gt;period of $&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;20000&lt;/del&gt;.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;[[PSG &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;Registers R4 - R6&lt;/ins&gt;|&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;R6&lt;/ins&gt;]]&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;01F6&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$00F6&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$000F&lt;/ins&gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$0000&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;FFF0&lt;/ins&gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Upper &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;4 &lt;/ins&gt;bits of &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;12&lt;/ins&gt;-bit period &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;for channel C&lt;/ins&gt;.&amp;#160; Note that &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;a channel &lt;/ins&gt;period value of zero actually indicates a period of $&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;1000&lt;/ins&gt;.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;[[PSG Register R8|R8]]&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$00FF&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$0000&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$FF00&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Channel enables for tone, noise.&amp;#160; I/O port direction selection.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;[[PSG Register R7|R7]]&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$01F7&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$00F7&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$00FF&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$0000&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$FF00&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Upper 8 bits of 16-bit envelope period.&amp;#160; The envelope period value is multiplied by two to determine the actual period.&amp;#160; Note that an envelope period value of zero actually indicates a true envelope period of $20000.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;[[PSG Register R9|R9]]&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$001F&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$0000&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$FFE0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Noise period&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;[[PSG Register R10|R10]]&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$0000&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$0000&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$FFFF&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Envelope characteristics / trigger register (write only)&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;[[PSG Register R8|R8]]&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$01F8&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$00F8&lt;/ins&gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$00FF&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$0000&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$FF00&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Channel enables for tone, noise.&amp;#160; I/O port direction selection.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;[[PSG Registers R11 - R13|R11]]&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$003F&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$0000&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$FFC0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;4-bit Volume / 2-bit Envelope Select for channel A&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;[[PSG Registers R11 - R13|R12]]&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$003F&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$0000&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$FFC0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;4-bit Volume / 2-bit Envelope Select for channel B&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;[[PSG Register R9|R9]]&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$01F9&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$00F9&lt;/ins&gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$001F&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$0000&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$FFE0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Noise period&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;[[PSG Registers R11 - R13|R13]]&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$003F&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$0000&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$FFC0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;4-bit Volume / 2-bit Envelope Select for channel C&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;[[PSG Regosters R14 - R15|R14]]&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$00FF&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$0000&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$FF00&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;8 bit I/O port A&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;[[PSG Register R10|R10]]&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$01FA&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$00FA&lt;/ins&gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$0000&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$0000&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$FFFF&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Envelope characteristics / trigger register (write only)&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;[[PSG Registers R14 - R15|R15]]&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$00FF&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$0000&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$FF00&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;8 bit I/O port B&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;[[PSG Registers R11 - R13|R11]]&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$01FB&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$00FB&lt;/ins&gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$003F&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$0000&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$FFC0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;4-bit Volume / 2-bit Envelope Select for channel A&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;[[PSG Registers R11 - R13|R12]]&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$01FC&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$00FC&lt;/ins&gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$003F&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$0000&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$FFC0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;4-bit Volume / 2-bit Envelope Select for channel B&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;[[PSG Registers R11 - R13|R13]]&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$01FD&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$00FD&lt;/ins&gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$003F&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$0000&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$FFC0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;4-bit Volume / 2-bit Envelope Select for channel C&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;[[PSG Regosters R14 - R15|R14]]&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$01FE&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$00FE&lt;/ins&gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$00FF&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$0000&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$FF00&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;8 bit I/O port A&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;[[PSG Registers R14 - R15|R15]]&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$01FF&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$00FF&lt;/ins&gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$00FF&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$0000&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$FF00&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;8 bit I/O port B&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/table&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/table&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Arnauld</name></author>	</entry>

	<entry>
		<id>http://wiki.intellivision.us/index.php?title=PSG&amp;diff=478&amp;oldid=prev</id>
		<title>Mr z: /* Registers */</title>
		<link rel="alternate" type="text/html" href="http://wiki.intellivision.us/index.php?title=PSG&amp;diff=478&amp;oldid=prev"/>
				<updated>2005-01-21T00:09:37Z</updated>
		
		<summary type="html">&lt;p&gt;‎&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Registers&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr style=&quot;vertical-align: top;&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Revision as of 00:09, 21 January 2005&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l8&quot; &gt;Line 8:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 8:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==Registers==&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==Registers==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The PSG has 16 registers, numbered R0 through R15.&amp;#160; They appear consecutively in the [[CP1610]]'s address map, with R0 at the starting address for the PSG, and R15 at the last address for the PSG.&amp;#160; The Master Component's PSG registers appear at $01F0 - $01FF in the memory map, and the [[Entertainment Computer System|ECS]]'s PSG registers appear at $00F0 - $00FF in the memory map.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The PSG has 16 registers, numbered R0 through R15.&amp;#160; They appear consecutively in the [[CP1610]]'s address map, with R0 at the starting address for the PSG, and R15 at the last address for the PSG.&amp;#160; The Master Component's PSG registers appear at $01F0 - $01FF in the memory map, and the [[Entertainment Computer System|ECS]]'s PSG registers appear at $00F0 - $00FF in the memory map.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Note:&amp;#160; A related part, the AY-3-8910, uses different register numbers and has a different memory map.&amp;#160; The AY-3-8910 and AY-3-8914 are otherwise nearly equivalent.&amp;#160; Be aware of the memory map differences if you happen across AY-3-8910 documentation.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;table border&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;table border&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Mr z</name></author>	</entry>

	<entry>
		<id>http://wiki.intellivision.us/index.php?title=PSG&amp;diff=437&amp;oldid=prev</id>
		<title>Mr z at 00:07, 21 January 2005</title>
		<link rel="alternate" type="text/html" href="http://wiki.intellivision.us/index.php?title=PSG&amp;diff=437&amp;oldid=prev"/>
				<updated>2005-01-21T00:07:21Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr style=&quot;vertical-align: top;&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Revision as of 00:07, 21 January 2005&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l7&quot; &gt;Line 7:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 7:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==Registers==&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==Registers==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;The PSG has 16 registers, numbered R0 through R15.&amp;#160; They appear consecutively in the [[CP1610]]'s address map, with R0 at the starting address for the PSG, and R15 at the last address for the PSG.&amp;#160; The Master Component's PSG registers appear at $01F0 - $01FF in the memory map, and the [[Entertainment Computer System|ECS]]'s PSG registers appear at $00F0 - $00FF in the memory map.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;table border&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;table border&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;tr&amp;gt;&amp;lt;th&amp;gt;Register&amp;lt;/th&amp;gt;&amp;lt;th&amp;gt;Data Bits&amp;lt;/th&amp;gt;&amp;lt;th&amp;gt;On Bits&amp;lt;/th&amp;gt;&amp;lt;th&amp;gt;Off Bits&amp;lt;/th&amp;gt;&amp;lt;th&amp;gt;Description&amp;lt;/th&amp;gt;&amp;lt;/tr&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;tr&amp;gt;&amp;lt;th&amp;gt;Register&amp;lt;/th&amp;gt;&amp;lt;th&amp;gt;Data Bits&amp;lt;/th&amp;gt;&amp;lt;th&amp;gt;On Bits&amp;lt;/th&amp;gt;&amp;lt;th&amp;gt;Off Bits&amp;lt;/th&amp;gt;&amp;lt;th&amp;gt;Description&amp;lt;/th&amp;gt;&amp;lt;/tr&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;[[&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;STIC Register $00&lt;/del&gt;|&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;$00&lt;/del&gt;]]&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$00FF&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$0000&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$FF00&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Lowest 8 bits of 12-bit period for channel &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;1&lt;/del&gt;.&amp;#160; Note that a channel period value of zero actually indicates a period of $1000.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;[[&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;PSG Registers R0 - R2&lt;/ins&gt;|&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;R0&lt;/ins&gt;]]&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$00FF&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$0000&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$FF00&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Lowest 8 bits of 12-bit period for channel &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;A&lt;/ins&gt;.&amp;#160; Note that a channel period value of zero actually indicates a period of $1000.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;[[&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;STIC Register $01&lt;/del&gt;|&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;$01&lt;/del&gt;]]&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$00FF&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$0000&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$FF00&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Lowest 8 bits of 12-bit period for channel &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;2&lt;/del&gt;.&amp;#160; Note that a channel period value of zero actually indicates a period of $1000.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;[[&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;PSG Registers R0 - R2&lt;/ins&gt;|&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;R1&lt;/ins&gt;]]&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$00FF&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$0000&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$FF00&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Lowest 8 bits of 12-bit period for channel &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;B&lt;/ins&gt;.&amp;#160; Note that a channel period value of zero actually indicates a period of $1000.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;[[&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;STIC Register $02&lt;/del&gt;|&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;$02&lt;/del&gt;]]&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$00FF&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$0000&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$FF00&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Lowest 8 bits of 12-bit period for channel &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;3&lt;/del&gt;.&amp;#160; Note that a channel period value of zero actually indicates a period of $1000.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;[[&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;PSG Registers R0 - R2&lt;/ins&gt;|&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;R2&lt;/ins&gt;]]&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$00FF&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$0000&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$FF00&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Lowest 8 bits of 12-bit period for channel &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;C&lt;/ins&gt;.&amp;#160; Note that a channel period value of zero actually indicates a period of $1000.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;[[&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;STIC &lt;/del&gt;Register &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;$03&lt;/del&gt;|&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;$03&lt;/del&gt;]]&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$00FF&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$0000&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$FF00&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Lowest 8 bits of 16-bit envelope period.&amp;#160; The envelope period value is multiplied by two to determine the actual period.&amp;#160; Note that an envelope period value of zero actually indicates a true envelope period of $20000.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;[[&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;PSG &lt;/ins&gt;Register &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;R3&lt;/ins&gt;|&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;R3&lt;/ins&gt;]]&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$00FF&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$0000&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$FF00&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Lowest 8 bits of 16-bit envelope period.&amp;#160; The envelope period value is multiplied by two to determine the actual period.&amp;#160; Note that an envelope period value of zero actually indicates a true envelope period of $20000.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;[[&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;STIC Register $07&lt;/del&gt;|&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;$04&lt;/del&gt;]]&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$000F&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$0000&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$FFF0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Upper 4 bits of 12-bit period for &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;channels 1&lt;/del&gt;.&amp;#160; Note that a channel period value of zero actually indicates a period of $1000.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;[[&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;PSG Registers R4 - R6&lt;/ins&gt;|&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;R4&lt;/ins&gt;]]&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$000F&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$0000&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$FFF0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Upper 4 bits of 12-bit period for &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;channel A&lt;/ins&gt;.&amp;#160; Note that a channel period value of zero actually indicates a period of $1000.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;[[&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;STIC Register $07&lt;/del&gt;|&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;$05&lt;/del&gt;]]&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$000F&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$0000&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$FFF0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Upper 4 bits of 12-bit period for &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;channels 2&lt;/del&gt;.&amp;#160; Note that a channel period value of zero actually indicates a period of $1000.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;[[&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;PSG Registers R4 - R6&lt;/ins&gt;|&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;R5&lt;/ins&gt;]]&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$000F&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$0000&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$FFF0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Upper 4 bits of 12-bit period for &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;channel B&lt;/ins&gt;.&amp;#160; Note that a channel period value of zero actually indicates a period of $1000.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;[[&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;STIC Register $07&lt;/del&gt;|&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;$06&lt;/del&gt;]]&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$000F&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$0000&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$FFF0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Upper 4 bits of 12-bit period for &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;channels 3&lt;/del&gt;.&amp;#160; Note that a channel period value of zero actually indicates a period of $1000.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;[[&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;PSG Registers R4 - R6&lt;/ins&gt;|&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;R6&lt;/ins&gt;]]&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$000F&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$0000&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$FFF0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Upper 4 bits of 12-bit period for &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;channel C&lt;/ins&gt;.&amp;#160; Note that a channel period value of zero actually indicates a period of $1000.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;[[&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;STIC &lt;/del&gt;Register &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;$07&lt;/del&gt;|&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;$07&lt;/del&gt;]]&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$00FF&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$0000&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$FF00&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Upper 8 bits of 16-bit envelope period.&amp;#160; The envelope period value is multiplied by two to determine the actual period.&amp;#160; Note that an envelope period value of zero actually indicates a true envelope period of $20000.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;[[&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;PSG &lt;/ins&gt;Register &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;R7&lt;/ins&gt;|&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;R7&lt;/ins&gt;]]&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$00FF&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$0000&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$FF00&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Upper 8 bits of 16-bit envelope period.&amp;#160; The envelope period value is multiplied by two to determine the actual period.&amp;#160; Note that an envelope period value of zero actually indicates a true envelope period of $20000.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;[[PSG Register R8|R8]]&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$00FF&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$0000&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$FF00&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Channel enables for tone, noise.&amp;#160; I/O port direction selection.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;[[PSG Register R9|R9]]&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$001F&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$0000&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$FFE0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Noise period&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;[[PSG Register R10|R10]]&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$0000&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$0000&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$FFFF&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Envelope characteristics / trigger register (write only)&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;[[PSG Registers R11 - R13|R11]]&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$003F&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$0000&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$FFC0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;4-bit Volume / 2-bit Envelope Select for channel A&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;[[PSG Registers R11 - R13|R12]]&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$003F&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$0000&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$FFC0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;4-bit Volume / 2-bit Envelope Select for channel B&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;[[PSG Registers R11 - R13|R13]]&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$003F&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$0000&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$FFC0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;4-bit Volume / 2-bit Envelope Select for channel C&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;[[PSG Regosters R14 - R15|R14]]&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$00FF&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$0000&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$FF00&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;8 bit I/O port A&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;[[PSG Registers R14 - R15|R15]]&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$00FF&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$0000&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$FF00&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;8 bit I/O port B&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/table&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/table&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Mr z</name></author>	</entry>

	<entry>
		<id>http://wiki.intellivision.us/index.php?title=PSG&amp;diff=436&amp;oldid=prev</id>
		<title>Pingaso: /* Channels */</title>
		<link rel="alternate" type="text/html" href="http://wiki.intellivision.us/index.php?title=PSG&amp;diff=436&amp;oldid=prev"/>
				<updated>2005-01-20T23:00:41Z</updated>
		
		<summary type="html">&lt;p&gt;‎&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Channels&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr style=&quot;vertical-align: top;&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Revision as of 23:00, 20 January 2005&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l30&quot; &gt;Line 30:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 30:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==Channels==&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==Channels==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;square wave output optionally modified by the envelope generator and/or the noise generator&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;The PSG contains 3 independent channels, a single noise generator, and a single envelope generator.&amp;#160; Each channel includes a square wave tone generator and is capable of mixing any combination of the output from its respective tone generator with the noise generator and the envelope generator.&amp;#160; Output from each of the 3 channels is then mixed together to produce the final audio output.&amp;lt;br/&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;Channel periods are 12-bit values indicating a range of period from 1 PSG clock cycle up to 4096 PSG clock cycles.&amp;#160; This translates to a frequency range from.&amp;#160; Note that a channel period value of zero actually indicates a period of 4096.&amp;lt;br/&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;In the simplest case, where channel output is affected only by its respective tone generator and not by either noise or envelope, the PSG generates channel output by counting the number of PSG clock cycles indicated by the channel period and then toggling the channel output between zero (0) and the currently selected volume for that channel.&amp;lt;br/&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;square wave output optionally modified by the envelope generator and/or the noise generator&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;br/&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Volume (0-15)&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Volume (0-15)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Period (1-4096)&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Period (1-4096)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l38&quot; &gt;Line 38:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 41:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;16 volume levels, independent to each channel&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;16 volume levels, independent to each channel&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==Envelope Generator==&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==Envelope Generator==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Pingaso</name></author>	</entry>

	<entry>
		<id>http://wiki.intellivision.us/index.php?title=PSG&amp;diff=433&amp;oldid=prev</id>
		<title>Pingaso at 20:46, 20 January 2005</title>
		<link rel="alternate" type="text/html" href="http://wiki.intellivision.us/index.php?title=PSG&amp;diff=433&amp;oldid=prev"/>
				<updated>2005-01-20T20:46:24Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr style=&quot;vertical-align: top;&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Revision as of 20:46, 20 January 2005&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l7&quot; &gt;Line 7:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 7:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==Registers==&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==Registers==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;table border&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;tr&amp;gt;&amp;lt;th&amp;gt;Register&amp;lt;/th&amp;gt;&amp;lt;th&amp;gt;Data Bits&amp;lt;/th&amp;gt;&amp;lt;th&amp;gt;On Bits&amp;lt;/th&amp;gt;&amp;lt;th&amp;gt;Off Bits&amp;lt;/th&amp;gt;&amp;lt;th&amp;gt;Description&amp;lt;/th&amp;gt;&amp;lt;/tr&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;[[STIC Register $00|$00]]&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$00FF&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$0000&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$FF00&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Lowest 8 bits of 12-bit period for channel 1.&amp;#160; Note that a channel period value of zero actually indicates a period of $1000.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;[[STIC Register $01|$01]]&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$00FF&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$0000&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$FF00&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Lowest 8 bits of 12-bit period for channel 2.&amp;#160; Note that a channel period value of zero actually indicates a period of $1000.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;[[STIC Register $02|$02]]&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$00FF&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$0000&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$FF00&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Lowest 8 bits of 12-bit period for channel 3.&amp;#160; Note that a channel period value of zero actually indicates a period of $1000.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;[[STIC Register $03|$03]]&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$00FF&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$0000&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$FF00&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Lowest 8 bits of 16-bit envelope period.&amp;#160; The envelope period value is multiplied by two to determine the actual period.&amp;#160; Note that an envelope period value of zero actually indicates a true envelope period of $20000.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;[[STIC Register $07|$04]]&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$000F&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$0000&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$FFF0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Upper 4 bits of 12-bit period for channels 1.&amp;#160; Note that a channel period value of zero actually indicates a period of $1000.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;[[STIC Register $07|$05]]&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$000F&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$0000&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$FFF0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Upper 4 bits of 12-bit period for channels 2.&amp;#160; Note that a channel period value of zero actually indicates a period of $1000.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;[[STIC Register $07|$06]]&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$000F&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$0000&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$FFF0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Upper 4 bits of 12-bit period for channels 3.&amp;#160; Note that a channel period value of zero actually indicates a period of $1000.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;[[STIC Register $07|$07]]&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$00FF&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$0000&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;$FF00&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Upper 8 bits of 16-bit envelope period.&amp;#160; The envelope period value is multiplied by two to determine the actual period.&amp;#160; Note that an envelope period value of zero actually indicates a true envelope period of $20000.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;/table&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==Channels==&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==Channels==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Pingaso</name></author>	</entry>

	</feed>