https://parisc.wiki.kernel.org/index.php?title=HarmonyAudio&feed=atom&action=historyHarmonyAudio - Revision history2024-03-29T09:06:40ZRevision history for this page on the wikiMediaWiki 1.19.24https://parisc.wiki.kernel.org/index.php?title=HarmonyAudio&diff=5711&oldid=prevThibaut Varene: formatting update2014-05-30T20:53:53Z<p>formatting update</p>
<table class='diff diff-contentalign-left'>
<col class='diff-marker' />
<col class='diff-content' />
<col class='diff-marker' />
<col class='diff-content' />
<tr valign='top'>
<td colspan='2' style="background-color: white; color:black;">← Older revision</td>
<td colspan='2' style="background-color: white; color:black;">Revision as of 20:53, 30 May 2014</td>
</tr><tr><td colspan="2" class="diff-lineno">Line 3:</td>
<td colspan="2" class="diff-lineno">Line 3:</td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>== Modus Operandi ==</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>== Modus Operandi ==</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"></td></tr>
<tr><td class='diff-marker'>−</td><td style="background: #ffa; color:black; font-size: smaller;"><div>The operation of the hardware is mostly quite simple and elegant. We load the next page address first, and DMA gets automatically started when we load the current page address. An interrupt is generated whenever the hardware reaches a page boundary, allowing us to load the next page address. Unfortunately it is not designed with <del class="diffchange diffchange-inline">seperate </del>playback and recording controls, we must always do both. Thus when we only want to record, we playback a silent buffer; and when we only want to playback, we record to a graveyard buffer.</div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div>The operation of the hardware is mostly quite simple and elegant. We load the next page address first, and DMA gets automatically started when we load the current page address. An interrupt is generated whenever the hardware reaches a page boundary, allowing us to load the next page address. Unfortunately it is not designed with <ins class="diffchange diffchange-inline">separate </ins>playback and recording controls, we must always do both. Thus when we only want to record, we playback a silent buffer; and when we only want to playback, we record to a graveyard buffer.</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>[TODO writeup something about the registers & mixer]</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>[TODO writeup something about the registers & mixer]</div></td></tr>
<tr><td colspan="2" class="diff-lineno">Line 9:</td>
<td colspan="2" class="diff-lineno">Line 9:</td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>== Documentation ==</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>== Documentation ==</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"></td></tr>
<tr><td class='diff-marker'>−</td><td style="background: #ffa; color:black; font-size: smaller;"><div>The chip is fully documented in the <del class="diffchange diffchange-inline">[</del>[http://ftp.parisc-linux.org/docs/chips/lasi_ers.ps<del class="diffchange diffchange-inline">|</del>LASI<del class="diffchange diffchange-inline">]</del>] ERS.</div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div>The chip is fully documented in the [http://ftp.parisc-linux.org/docs/chips/lasi_ers.ps LASI] ERS.</div></td></tr>
</table>Thibaut Varenehttps://parisc.wiki.kernel.org/index.php?title=HarmonyAudio&diff=3311&oldid=prevDeller: Created page with "Harmony is a really simple little audio device which is a part of the LASI ASIC found on many early PA-RISC boxes. Apparently it is programmatically equivalent to the Vivace a..."2014-02-05T13:54:29Z<p>Created page with "Harmony is a really simple little audio device which is a part of the LASI ASIC found on many early PA-RISC boxes. Apparently it is programmatically equivalent to the Vivace a..."</p>
<p><b>New page</b></p><div>Harmony is a really simple little audio device which is a part of the LASI ASIC found on many early PA-RISC boxes. Apparently it is programmatically equivalent to the Vivace audio device found on even earlier PA-RISC machines.<br />
<br />
== Modus Operandi ==<br />
<br />
The operation of the hardware is mostly quite simple and elegant. We load the next page address first, and DMA gets automatically started when we load the current page address. An interrupt is generated whenever the hardware reaches a page boundary, allowing us to load the next page address. Unfortunately it is not designed with seperate playback and recording controls, we must always do both. Thus when we only want to record, we playback a silent buffer; and when we only want to playback, we record to a graveyard buffer.<br />
<br />
[TODO writeup something about the registers & mixer]<br />
<br />
== Documentation ==<br />
<br />
The chip is fully documented in the [[http://ftp.parisc-linux.org/docs/chips/lasi_ers.ps|LASI]] ERS.</div>Deller