<br />
<b>Notice</b>:  Trying to access array offset on value of type bool in <b>/mnt/cpcwiki-httpdocs/includes/libs/IPSet.php</b> on line <b>243</b><br />
<br />
<b>Notice</b>:  Trying to access array offset on value of type bool in <b>/mnt/cpcwiki-httpdocs/includes/libs/IPSet.php</b> on line <b>246</b><br />
<br />
<b>Notice</b>:  Trying to access array offset on value of type bool in <b>/mnt/cpcwiki-httpdocs/includes/libs/IPSet.php</b> on line <b>243</b><br />
<br />
<b>Notice</b>:  Trying to access array offset on value of type bool in <b>/mnt/cpcwiki-httpdocs/includes/libs/IPSet.php</b> on line <b>246</b><br />
<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>https://oldwiki.cpcwiki.eu/index.php?action=history&amp;feed=atom&amp;title=BIOS_Sound_Functions</id>
		<title>BIOS Sound Functions - Revision history</title>
		<link rel="self" type="application/atom+xml" href="https://oldwiki.cpcwiki.eu/index.php?action=history&amp;feed=atom&amp;title=BIOS_Sound_Functions"/>
		<link rel="alternate" type="text/html" href="https://oldwiki.cpcwiki.eu/index.php?title=BIOS_Sound_Functions&amp;action=history"/>
		<updated>2026-08-29T00:34:23Z</updated>
		<subtitle>Revision history for this page on the wiki</subtitle>
		<generator>MediaWiki 1.25.1</generator>

	<entry>
		<id>https://oldwiki.cpcwiki.eu/index.php?title=BIOS_Sound_Functions&amp;diff=107897&amp;oldid=prev</id>
		<title>ColinPitrat: /* Set Tone Envelope */ This byte has 8 bits</title>
		<link rel="alternate" type="text/html" href="https://oldwiki.cpcwiki.eu/index.php?title=BIOS_Sound_Functions&amp;diff=107897&amp;oldid=prev"/>
				<updated>2021-04-22T06:25:31Z</updated>
		
		<summary type="html">&lt;p&gt;‎&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Set Tone Envelope: &lt;/span&gt; This byte has 8 bits&lt;/span&gt;&lt;/p&gt;
&lt;table class='diff diff-contentalign-left'&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;tr style='vertical-align: top;'&gt;
				&lt;td colspan='2' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan='2' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Revision as of 06:25, 22 April 2021&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;L35&quot; &gt;Line 35:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 35:&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;In: A=Envelope number (1..15), HL=Pointer to Data (must be &amp;gt;3FFFh)&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;In: A=Envelope number (1..15), HL=Pointer to Data (must be &amp;gt;3FFFh)&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 data block starts with a header byte:&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 data block starts with a header byte:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;br /&gt;
&lt;b&gt;Deprecated&lt;/b&gt;:  The each() function is deprecated. This message will be suppressed on further calls in &lt;b&gt;/mnt/cpcwiki-httpdocs/includes/diff/DairikiDiff.php&lt;/b&gt; on line &lt;b&gt;434&lt;/b&gt;&lt;br /&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;#160;&amp;#160; bit7&amp;#160; &amp;#160; repeat flag (0=one shot, 1=repeat envelope)&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;&amp;#160; bit7 &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;#160;  envelope type (0=software, 1=hardware)&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;#160;&amp;#160; &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;bit6&lt;/del&gt;-0&amp;#160; number of following 3-byte parameters (1..5)&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;#160; bit6 &lt;/ins&gt;&amp;#160;  repeat flag (0=one shot, 1=repeat envelope)&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;&amp;#160; &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;bit5&lt;/ins&gt;-0&amp;#160; number of following 3-byte parameters (1..5)&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 following 3-byte parameters can be (when Byte 0 is &amp;lt;F0h):&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 following 3-byte parameters can be (when Byte 0 is &amp;lt;F0h):&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;#160;&amp;#160; Byte 0&amp;#160; Number of steps (01h..EFh)&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;#160;&amp;#160; Byte 0&amp;#160; Number of steps (01h..EFh)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;

&lt;!-- diff cache key wikidb:diff:version:1.11a:oldid:107896:newid:107897 --&gt;
&lt;/table&gt;</summary>
		<author><name>ColinPitrat</name></author>	</entry>

	<entry>
		<id>https://oldwiki.cpcwiki.eu/index.php?title=BIOS_Sound_Functions&amp;diff=107896&amp;oldid=prev</id>
		<title>ColinPitrat: /* Set Volume Envelope */ Precise bit7 content</title>
		<link rel="alternate" type="text/html" href="https://oldwiki.cpcwiki.eu/index.php?title=BIOS_Sound_Functions&amp;diff=107896&amp;oldid=prev"/>
				<updated>2021-04-22T06:20:52Z</updated>
		
		<summary type="html">&lt;p&gt;‎&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Set Volume Envelope: &lt;/span&gt; Precise bit7 content&lt;/span&gt;&lt;/p&gt;
&lt;table class='diff diff-contentalign-left'&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;tr style='vertical-align: top;'&gt;
				&lt;td colspan='2' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan='2' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Revision as of 06:20, 22 April 2021&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;L18&quot; &gt;Line 18:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 18:&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;In: A=Envelope number (1..15), HL=Pointer to Data (must be &amp;gt;3FFFh)&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;In: A=Envelope number (1..15), HL=Pointer to Data (must be &amp;gt;3FFFh)&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 data block starts with a header byte:&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 data block starts with a header byte:&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;#160; bit7&amp;#160; &amp;#160; envelope type (0=software, 1=hardware)&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;#160;&amp;#160; bit6-0&amp;#160; number of following 3-byte parameters (1..5)&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;#160;&amp;#160; bit6-0&amp;#160; number of following 3-byte parameters (1..5)&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 following 3-byte parameters can be (when Byte 0, Bit7=0):&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 following 3-byte parameters can be (when Byte 0, Bit7=0):&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;

&lt;!-- diff cache key wikidb:diff:version:1.11a:oldid:107895:newid:107896 --&gt;
&lt;/table&gt;</summary>
		<author><name>ColinPitrat</name></author>	</entry>

	<entry>
		<id>https://oldwiki.cpcwiki.eu/index.php?title=BIOS_Sound_Functions&amp;diff=107895&amp;oldid=prev</id>
		<title>ColinPitrat: /* Set Volume Envelope */ Bit 7 is for hw/sw envelope</title>
		<link rel="alternate" type="text/html" href="https://oldwiki.cpcwiki.eu/index.php?title=BIOS_Sound_Functions&amp;diff=107895&amp;oldid=prev"/>
				<updated>2021-04-22T06:19:44Z</updated>
		
		<summary type="html">&lt;p&gt;‎&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Set Volume Envelope: &lt;/span&gt; Bit 7 is for hw/sw envelope&lt;/span&gt;&lt;/p&gt;
&lt;table class='diff diff-contentalign-left'&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;tr style='vertical-align: top;'&gt;
				&lt;td colspan='2' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan='2' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Revision as of 06:19, 22 April 2021&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;L18&quot; &gt;Line 18:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 18:&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;In: A=Envelope number (1..15), HL=Pointer to Data (must be &amp;gt;3FFFh)&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;In: A=Envelope number (1..15), HL=Pointer to Data (must be &amp;gt;3FFFh)&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 data block starts with a header byte:&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 data block starts with a header byte:&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;#160;&amp;#160; &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;bit7&lt;/del&gt;-0&amp;#160; number of following 3-byte parameters (1..5)&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;&amp;#160; &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;bit6&lt;/ins&gt;-0&amp;#160; number of following 3-byte parameters (1..5)&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 following 3-byte parameters can be (when Byte 0, Bit7=0):&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 following 3-byte parameters can be (when Byte 0, Bit7=0):&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;#160;&amp;#160; Byte 0&amp;#160; Number of steps (01h..7Fh)&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;#160;&amp;#160; Byte 0&amp;#160; Number of steps (01h..7Fh)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;

&lt;!-- diff cache key wikidb:diff:version:1.11a:oldid:65526:newid:107895 --&gt;
&lt;/table&gt;</summary>
		<author><name>ColinPitrat</name></author>	</entry>

	<entry>
		<id>https://oldwiki.cpcwiki.eu/index.php?title=BIOS_Sound_Functions&amp;diff=65526&amp;oldid=prev</id>
		<title>MacDeath at 16:41, 19 December 2010</title>
		<link rel="alternate" type="text/html" href="https://oldwiki.cpcwiki.eu/index.php?title=BIOS_Sound_Functions&amp;diff=65526&amp;oldid=prev"/>
				<updated>2010-12-19T16:41:32Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class='diff diff-contentalign-left'&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;tr style='vertical-align: top;'&gt;
				&lt;td colspan='2' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan='2' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Revision as of 16:41, 19 December 2010&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;L78&quot; &gt;Line 78:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 78:&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;#160;&amp;#160; BD34 MC_SOUND_REGISTER&amp;#160; ;in: A=PSG index, C=PSG data&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;#160;&amp;#160; BD34 MC_SOUND_REGISTER&amp;#160; ;in: A=PSG index, C=PSG data&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;Directly writes to a PSG register (this would conflict with the other SOUND functions).&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;Directly writes to a PSG register (this would conflict with the other SOUND functions).&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;[[Category:BIOS]]&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;

&lt;!-- diff cache key wikidb:diff:version:1.11a:oldid:39563:newid:65526 --&gt;
&lt;/table&gt;</summary>
		<author><name>MacDeath</name></author>	</entry>

	<entry>
		<id>https://oldwiki.cpcwiki.eu/index.php?title=BIOS_Sound_Functions&amp;diff=39563&amp;oldid=prev</id>
		<title>Nocash: Created page with '== Output to Sound Queue ==   BCAA SOUND_QUEUE (output sound) ;in: HL=data ;ch,env,ent,freq(lo,hi,noise),vol,len(lo,hi) In: HL=Pointer to 9-byte Data Block   0  Channel (Bit0-2=C…'</title>
		<link rel="alternate" type="text/html" href="https://oldwiki.cpcwiki.eu/index.php?title=BIOS_Sound_Functions&amp;diff=39563&amp;oldid=prev"/>
				<updated>2010-01-24T22:07:33Z</updated>
		
		<summary type="html">&lt;p&gt;Created page with &amp;#039;== Output to Sound Queue ==   BCAA SOUND_QUEUE (output sound) ;in: HL=data ;ch,env,ent,freq(lo,hi,noise),vol,len(lo,hi) In: HL=Pointer to 9-byte Data Block   0  Channel (Bit0-2=C…&amp;#039;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;== Output to Sound Queue ==&lt;br /&gt;
  BCAA SOUND_QUEUE (output sound) ;in: HL=data ;ch,env,ent,freq(lo,hi,noise),vol,len(lo,hi)&lt;br /&gt;
In: HL=Pointer to 9-byte Data Block&lt;br /&gt;
  0  Channel (Bit0-2=ChannelA-C, Bit3-5=RendevousA..C, Bit6=Hold, Bit7=Flush)&lt;br /&gt;
  1  ENV Volume Envelope (1..15, or 0=none)&lt;br /&gt;
  2  ENT Tone Envelope   (1..15, or 0=none)&lt;br /&gt;
  3  Tone Frequency, lower 8bit (000h=none)&lt;br /&gt;
  4  Tone Frequency, upper 4bit&lt;br /&gt;
  5  Noise Frequency (01h..1Fh, or 00h=none)  ;shared for all 3 channels&lt;br /&gt;
  6  Volume (00h..0Fh)&lt;br /&gt;
  7  Duration, lower 8bit (in 1/100 seconds)  ;\0=endless/until end of ENV?&lt;br /&gt;
  8  Duration, upper 8bit                     ;/negative=repeat ENV -N times?&lt;br /&gt;
Out: CY=1=okay, CY=0=Queue Full.&lt;br /&gt;
Equivalent to BASIC's &amp;quot;SOUND&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
== Set Volume Envelope ==&lt;br /&gt;
  BCBC SOUND_SET_ENV&lt;br /&gt;
In: A=Envelope number (1..15), HL=Pointer to Data (must be &amp;gt;3FFFh)&lt;br /&gt;
The data block starts with a header byte:&lt;br /&gt;
  bit7-0  number of following 3-byte parameters (1..5)&lt;br /&gt;
The following 3-byte parameters can be (when Byte 0, Bit7=0):&lt;br /&gt;
  Byte 0  Number of steps (01h..7Fh)&lt;br /&gt;
  Byte 1  Step (-80h..+7Fh) (of which, only -0Fh..+0Fh makes sense)&lt;br /&gt;
  Byte 2  Duration per step (in 1/100 seconds) (01h..FFh, or 00h=100h)&lt;br /&gt;
Or, using the (less comfortable) hardware envelope (when Byte 0, Bit7=1):&lt;br /&gt;
  Byte 0  PSG Envelope Shape (00h..0Fh), plus 80h ;PSG Register 0Dh&lt;br /&gt;
  Byte 1  PSG Envelope Frequency, upper 8bit      ;PSG Register 0Ch&lt;br /&gt;
  Byte 2  PSG Envelope Frequency, lower 8bit      ;PSG Register 0Bh&lt;br /&gt;
Equivalent to BASIC's &amp;quot;ENV&amp;quot;.&lt;br /&gt;
The initial sound volume is SOUND_QUEUE's [HL+6]. Note that the step is added to the sound volume (there's NO separate envelope volume register, multiplied with the sound volume). Take care that the volume doesn't overflow/underflow.&lt;br /&gt;
&lt;br /&gt;
== Set Tone Envelope ==&lt;br /&gt;
  BCBF SOUND_SET_ENT&lt;br /&gt;
In: A=Envelope number (1..15), HL=Pointer to Data (must be &amp;gt;3FFFh)&lt;br /&gt;
The data block starts with a header byte:&lt;br /&gt;
  bit7    repeat flag (0=one shot, 1=repeat envelope)&lt;br /&gt;
  bit6-0  number of following 3-byte parameters (1..5)&lt;br /&gt;
The following 3-byte parameters can be (when Byte 0 is &amp;lt;F0h):&lt;br /&gt;
  Byte 0  Number of steps (01h..EFh)&lt;br /&gt;
  Byte 1  Step (-80h..+7Fh)&lt;br /&gt;
  Byte 2  Duration per step (in 1/100 seconds) (01h..FFh, or 00h=100h)&lt;br /&gt;
Or, setting the frequency directly, non-relative (when Byte 0 is &amp;gt;=F0h):&lt;br /&gt;
  Byte 0  Upper 4bit of frequency, plus F0h       ;PSG Register 01h,03h,05h&lt;br /&gt;
  Byte 1  Lower 8bit of frequency                 ;PSG Register 00h,02h,04h&lt;br /&gt;
  Byte 2  Duration (in 1/100 seconds) (01h..FFh, or 00h=100h)&lt;br /&gt;
Equivalent to BASIC's &amp;quot;ENT&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
== Sound Reset ==&lt;br /&gt;
  BCA7 SOUND_RESET&lt;br /&gt;
Reset and mute sound output.&lt;br /&gt;
&lt;br /&gt;
== Sound Check ==&lt;br /&gt;
  BCAD SOUND_CHECK&lt;br /&gt;
In: A=channel mask, Out: A=channel status.&lt;br /&gt;
&lt;br /&gt;
== Sound Event ==&lt;br /&gt;
  BCB0 SOUND_ARM_EVENT&lt;br /&gt;
In: A=channel mask, HL=event block.&lt;br /&gt;
Equivalent to BASIC's &amp;quot;ON SQ GOSUB&amp;quot;. Triggers when the channels queue is not full?&lt;br /&gt;
&lt;br /&gt;
== Sound Release ==&lt;br /&gt;
  BCB3 SOUND_RELEASE&lt;br /&gt;
In: A=channel mask.&lt;br /&gt;
Starts pending sounds (which did have the &amp;quot;Hold&amp;quot; bit set; ie. Bit6 of Byte0 passed to SOUND_QUEUE).&lt;br /&gt;
Equivalent to BASIC's &amp;quot;RELEASE&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
== Sound Pause/Unpause ==&lt;br /&gt;
  BCB6 SOUND_PAUSE  ;Out: CY=1=okay, CY=0=nothing to do.&lt;br /&gt;
  BCB9 SOUND_UNPAUSE&lt;br /&gt;
Freezes/unfreezes sound output.&lt;br /&gt;
&lt;br /&gt;
== Get Envelope ==&lt;br /&gt;
  BCC2 SOUND_GET_ENV&lt;br /&gt;
  BCC5 SOUND_GET_ENT&lt;br /&gt;
In: A=Envelope number (01h..0Fh), Out: HL=16-byte block, CY=1=okay.&lt;br /&gt;
&lt;br /&gt;
== Machine Pack ==&lt;br /&gt;
  BD34 MC_SOUND_REGISTER  ;in: A=PSG index, C=PSG data&lt;br /&gt;
Directly writes to a PSG register (this would conflict with the other SOUND functions).&lt;/div&gt;</summary>
		<author><name>Nocash</name></author>	</entry>

	</feed>