Files
mazegame/engine/doc/html/files/trilo/trilo_scc_player-h.html
T

133 lines
14 KiB
HTML

<!DOCTYPE html>
<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><meta http-equiv="X-UA-Compatible" content="IE=edge"><title>trilo_scc_player.h</title><link rel="stylesheet" type="text/css" href="../../styles/main.css" /><script type="text/javascript" src="../../styles/main.js"></script><script type="text/javascript">NDLoader.LoadJS("Content", "../../styles/");</script></head>
<!-- Generated by Natural Docs, version 2.2 -->
<!-- saved from url=(0016)http://localhost -->
<body onload="NDLoader.OnLoad('Content');" class="NDPage NDContentPage">
<a name="SCC_player"></a><a name="Topic408"></a><div class="CTopic TGroup LC first">
<div class="CTitle">SCC player</div>
</div>
<a name="TriloSCC_Initialize"></a><a name="Topic409"></a><div class="CTopic TFunction LC">
<div class="CTitle">TriloSCC_Initialize</div>
<div id="NDPrototype409" class="NDPrototype"><div class="PSection PPlainSection"><span class="SHKeyword">void</span> TriloSCC_Initialize()</div></div>
<div class="CBody"><p>Initialize replayer data. Only call this on start-up.</p></div>
</div>
<a name="TriloSCC_Pause"></a><a name="Topic410"></a><div class="CTopic TFunction LC">
<div class="CTitle">TriloSCC_Pause</div>
<div id="NDPrototype410" class="NDPrototype"><div class="PSection PPlainSection"><span class="SHKeyword">void</span> TriloSCC_Pause()</div></div>
<div class="CBody"><p>Stop/Restart music playback.</p></div>
</div>
<a name="TriloSCC_Resume"></a><a name="Topic411"></a><div class="CTopic TFunction LC">
<div class="CTitle">TriloSCC_Resume</div>
<div id="NDPrototype411" class="NDPrototype"><div class="PSection PPlainSection"><span class="SHKeyword">inline</span> <span class="SHKeyword">void</span> TriloSCC_Resume()</div></div>
<div class="CBody"><p>Stop/Restart music playback.</p></div>
</div>
<a name="TriloSCC_FadeOut"></a><a name="Topic412"></a><div class="CTopic TFunction LC">
<div class="CTitle">TriloSCC_FadeOut</div>
<div id="NDPrototype412" class="NDPrototype WideForm"><div class="PSection PParameterSection CStyle"><table><tr><td class="PBeforeParameters"><span class="SHKeyword">void</span> TriloSCC_FadeOut(</td><td class="PParametersParentCell"><table class="PParameters"><tr><td class="PType first">u8&nbsp;</td><td class="PName last">speed</td></tr></table></td><td class="PAfterParameters">)</td></tr></table></div></div>
<div class="CBody"><p>Fade out the music. Once the sound is silence the replayer is paused.</p><div class="CHeading">Parameters</div><table class="CDefinitionList"><tr><td class="CDLEntry">speed<div class="CDLParameterType">u8</div></td><td class="CDLDefinition"><p>Fade speed (1 - 255)</p></td></tr></table></div>
</div>
<a name="TriloSCC_SetBalanceSCC"></a><a name="Topic413"></a><div class="CTopic TFunction LC">
<div class="CTitle">TriloSCC_SetBalanceSCC</div>
<div id="NDPrototype413" class="NDPrototype WideForm"><div class="PSection PParameterSection CStyle"><table><tr><td class="PBeforeParameters"><span class="SHKeyword">void</span> TriloSCC_SetBalanceSCC(</td><td class="PParametersParentCell"><table class="PParameters"><tr><td class="PType first">u8&nbsp;</td><td class="PName last">vol</td></tr></table></td><td class="PAfterParameters">)</td></tr></table></div></div>
<div class="CBody"><p>Set the main volume for the SCC chip.&nbsp; This enables for setting the balance between SCC and PSG as some MSX models default balance differs.</p><div class="CHeading">Parameters</div><table class="CDefinitionList"><tr><td class="CDLEntry">vol<div class="CDLParameterType">u8</div></td><td class="CDLDefinition"><p>Master volume (0-7) 0=halve volume, 8=full volume.</p></td></tr></table></div>
</div>
<a name="TriloSCC_SetBalancePSG"></a><a name="Topic414"></a><div class="CTopic TFunction LC">
<div class="CTitle">TriloSCC_SetBalancePSG</div>
<div id="NDPrototype414" class="NDPrototype WideForm"><div class="PSection PParameterSection CStyle"><table><tr><td class="PBeforeParameters"><span class="SHKeyword">void</span> TriloSCC_SetBalancePSG(</td><td class="PParametersParentCell"><table class="PParameters"><tr><td class="PType first">u8&nbsp;</td><td class="PName last">vol</td></tr></table></td><td class="PAfterParameters">)</td></tr></table></div></div>
<div class="CBody"><p>Set the main volume for the PSG chip.&nbsp; This enables for setting the balance between SCC and PSG as some MSX models default balance differs.</p><div class="CHeading">Parameters</div><table class="CDefinitionList"><tr><td class="CDLEntry">vol<div class="CDLParameterType">u8</div></td><td class="CDLDefinition"><p>Master volume (0-7) 0=halve volume, 8=full volume.</p></td></tr></table></div>
</div>
<a name="TriloSCC_SetFrequency"></a><a name="Topic415"></a><div class="CTopic TFunction LC">
<div class="CTitle">TriloSCC_SetFrequency</div>
<div id="NDPrototype415" class="NDPrototype WideForm"><div class="PSection PParameterSection CStyle"><table><tr><td class="PBeforeParameters"><span class="SHKeyword">inline</span> <span class="SHKeyword">void</span> TriloSCC_SetFrequency(</td><td class="PParametersParentCell"><table class="PParameters"><tr><td class="PType first">u8&nbsp;</td><td class="PName last">freq</td></tr></table></td><td class="PAfterParameters">)</td></tr></table></div></div>
<div class="CBody"><p>Set playback frequency.</p><div class="CHeading">Parameters</div><table class="CDefinitionList"><tr><td class="CDLEntry">freq<div class="CDLParameterType">u8</div></td><td class="CDLDefinition"><p>Can be TRILO_50HZ (0) or TRILO_60HZ (not 0).</p></td></tr></table></div>
</div>
<a name="TriloSCC_LoadMusic"></a><a name="Topic416"></a><div class="CTopic TFunction LC">
<div class="CTitle">TriloSCC_LoadMusic</div>
<div id="NDPrototype416" class="NDPrototype WideForm"><div class="PSection PParameterSection CStyle"><table><tr><td class="PBeforeParameters"><span class="SHKeyword">void</span> TriloSCC_LoadMusic(</td><td class="PParametersParentCell"><table class="PParameters"><tr><td class="PModifierQualifier first"><span class="SHKeyword">const</span>&nbsp;</td><td class="PType"><span class="SHKeyword">void</span>*&nbsp;</td><td class="PName last">addr</td></tr></table></td><td class="PAfterParameters">)</td></tr></table></div></div>
<div class="CBody"><p>Initialize a music for playback.</p><div class="CHeading">Parameters</div><table class="CDefinitionList"><tr><td class="CDLEntry">addr<div class="CDLParameterType"><span class="SHKeyword">const</span> <span class="SHKeyword">void</span>*</div></td><td class="CDLDefinition"><p>Address of the music data</p></td></tr></table></div>
</div>
<a name="TriloSCC_SetToneTable"></a><a name="Topic417"></a><div class="CTopic TFunction LC">
<div class="CTitle">TriloSCC_SetToneTable</div>
<div id="NDPrototype417" class="NDPrototype WideForm"><div class="PSection PParameterSection CStyle"><table><tr><td class="PBeforeParameters"><span class="SHKeyword">inline</span> <span class="SHKeyword">void</span> TriloSCC_SetToneTable(</td><td class="PParametersParentCell"><table class="PParameters"><tr><td class="PModifierQualifier first"><span class="SHKeyword">const</span>&nbsp;</td><td class="PType"><span class="SHKeyword">void</span>*&nbsp;</td><td class="PName last">addr</td></tr></table></td><td class="PAfterParameters">)</td></tr></table></div></div>
<div class="CBody"><p>Set a custom tone table.</p><div class="CHeading">Parameters</div><table class="CDefinitionList"><tr><td class="CDLEntry">addr<div class="CDLParameterType"><span class="SHKeyword">const</span> <span class="SHKeyword">void</span>*</div></td><td class="CDLDefinition"><p>Address of the tone table</p></td></tr></table></div>
</div>
<a name="TriloSCC_Silent"></a><a name="Topic418"></a><div class="CTopic TFunction LC">
<div class="CTitle">TriloSCC_Silent</div>
<div id="NDPrototype418" class="NDPrototype"><div class="PSection PPlainSection"><span class="SHKeyword">void</span> TriloSCC_Silent()</div></div>
<div class="CBody"><p>Set mixer values to silent.</p></div>
</div>
<a name="TriloSCC_Update"></a><a name="Topic419"></a><div class="CTopic TFunction LC">
<div class="CTitle">TriloSCC_Update</div>
<div id="NDPrototype419" class="NDPrototype"><div class="PSection PPlainSection"><span class="SHKeyword">void</span> TriloSCC_Update()</div></div>
<div class="CBody"><p>Decode music data and process instruments and effects.</p></div>
</div>
<a name="TriloSCC_Apply"></a><a name="Topic420"></a><div class="CTopic TFunction LC">
<div class="CTitle">TriloSCC_Apply</div>
<div id="NDPrototype420" class="NDPrototype"><div class="PSection PPlainSection"><span class="SHKeyword">void</span> TriloSCC_Apply()</div></div>
<div class="CBody"><p>Output the data to the CHIP registers.</p></div>
</div>
<a name="SFX_player"></a><a name="Topic421"></a><div class="CTopic TGroup LC">
<div class="CTitle">SFX player</div>
</div>
<a name="TriloSFX_Initialize"></a><a name="Topic422"></a><div class="CTopic TFunction LC">
<div class="CTitle">TriloSFX_Initialize</div>
<div id="NDPrototype422" class="NDPrototype"><div class="PSection PPlainSection"><span class="SHKeyword">void</span> TriloSFX_Initialize()</div></div>
<div class="CBody"><p>Initialise the sfx player. Sets initial priorities, volume balancce and initial SCC waveform.&nbsp; Note : TriloTracker SFX replayer is ayFX bank format but use 2 bank entry for each Trilo SFX.&nbsp; The first one describe the PSG part of the SFX and the second one the SCC part of the SFX.</p></div>
</div>
<a name="TriloSFX_SetBank"></a><a name="Topic423"></a><div class="CTopic TFunction LC">
<div class="CTitle">TriloSFX_SetBank</div>
<div id="NDPrototype423" class="NDPrototype WideForm"><div class="PSection PParameterSection CStyle"><table><tr><td class="PBeforeParameters"><span class="SHKeyword">inline</span> <span class="SHKeyword">void</span> TriloSFX_SetBank(</td><td class="PParametersParentCell"><table class="PParameters"><tr><td class="PModifierQualifier first"><span class="SHKeyword">const</span>&nbsp;</td><td class="PType"><span class="SHKeyword">void</span>*&nbsp;</td><td class="PName last">bank,</td></tr><tr><td class="PModifierQualifier first"><span class="SHKeyword">const</span>&nbsp;</td><td class="PType"><span class="SHKeyword">void</span>*&nbsp;</td><td class="PName last">wave</td></tr></table></td><td class="PAfterParameters">)</td></tr></table></div></div>
<div class="CBody"><p>Set the current SFX bank data</p><div class="CHeading">Parameters</div><table class="CDefinitionList"><tr><td class="CDLEntry">bank<div class="CDLParameterType"><span class="SHKeyword">const</span> <span class="SHKeyword">void</span>*</div></td><td class="CDLDefinition"><p>Address of the ayFX bank data</p></td></tr><tr><td class="CDLEntry">wave<div class="CDLParameterType"><span class="SHKeyword">const</span> <span class="SHKeyword">void</span>*</div></td><td class="CDLDefinition"><p>Address of the bank wave table</p></td></tr></table></div>
</div>
<a name="TriloSFX_GetNumber"></a><a name="Topic424"></a><div class="CTopic TFunction LC">
<div class="CTitle">TriloSFX_GetNumber</div>
<div id="NDPrototype424" class="NDPrototype"><div class="PSection PPlainSection"><span class="SHKeyword">inline</span> u8 TriloSFX_GetNumber()</div></div>
<div class="CBody"><p>Get the number of SFX in the bank.</p><div class="CHeading">Return</div><p>Number of SFX in the bank.&nbsp; Note: TriloTracker SFX replayer use 2 bank entry for each SFX so return size is half the ayFX bank size.</p></div>
</div>
<a name="TriloSFX_SetBalanceSCC"></a><a name="Topic425"></a><div class="CTopic TFunction LC">
<div class="CTitle">TriloSFX_SetBalanceSCC</div>
<div id="NDPrototype425" class="NDPrototype WideForm"><div class="PSection PParameterSection CStyle"><table><tr><td class="PBeforeParameters"><span class="SHKeyword">void</span> TriloSFX_SetBalanceSCC(</td><td class="PParametersParentCell"><table class="PParameters"><tr><td class="PType first">u8&nbsp;</td><td class="PName last">vol</td></tr></table></td><td class="PAfterParameters">)</td></tr></table></div></div>
<div class="CBody"><p>Set the main SFX volume for the SCC chip.</p><div class="CHeading">Parameters</div><table class="CDefinitionList"><tr><td class="CDLEntry">vol<div class="CDLParameterType">u8</div></td><td class="CDLDefinition"><p>Master volume (0-15) 0=silenced, 15=full volume.</p></td></tr></table></div>
</div>
<a name="TriloSFX_SetBalancePSG"></a><a name="Topic426"></a><div class="CTopic TFunction LC">
<div class="CTitle">TriloSFX_SetBalancePSG</div>
<div id="NDPrototype426" class="NDPrototype WideForm"><div class="PSection PParameterSection CStyle"><table><tr><td class="PBeforeParameters"><span class="SHKeyword">void</span> TriloSFX_SetBalancePSG(</td><td class="PParametersParentCell"><table class="PParameters"><tr><td class="PType first">u8&nbsp;</td><td class="PName last">vol</td></tr></table></td><td class="PAfterParameters">)</td></tr></table></div></div>
<div class="CBody"><p>Set the main SFXvolume for the PSG chip.</p><div class="CHeading">Parameters</div><table class="CDefinitionList"><tr><td class="CDLEntry">vol<div class="CDLParameterType">u8</div></td><td class="CDLDefinition"><p>Master volume (0-15) 0=silenced, 15=full volume.</p></td></tr></table></div>
</div>
<a name="TriloSFX_Play"></a><a name="Topic427"></a><div class="CTopic TFunction LC">
<div class="CTitle">TriloSFX_Play</div>
<div id="NDPrototype427" class="NDPrototype WideForm"><div class="PSection PParameterSection CStyle"><table><tr><td class="PBeforeParameters"><span class="SHKeyword">void</span> TriloSFX_Play(</td><td class="PParametersParentCell"><table class="PParameters"><tr><td class="PType first">u8&nbsp;</td><td class="PName last">sfx,</td></tr><tr><td class="PType first">u8&nbsp;</td><td class="PName last">prio</td></tr></table></td><td class="PAfterParameters">)</td></tr></table></div></div>
<div class="CBody"><p>Start a new SFX.</p><div class="CHeading">Parameters</div><table class="CDefinitionList"><tr><td class="CDLEntry">sfx<div class="CDLParameterType">u8</div></td><td class="CDLDefinition"><p>SFX index in the bank.</p></td></tr><tr><td class="CDLEntry">prio<div class="CDLParameterType">u8</div></td><td class="CDLDefinition"><p>Sound priority (0 is lowest, 255 is highest).</p></td></tr></table></div>
</div>
<a name="TriloSFX_Update"></a><a name="Topic428"></a><div class="CTopic TFunction LC last">
<div class="CTitle">TriloSFX_Update</div>
<div id="NDPrototype428" class="NDPrototype"><div class="PSection PPlainSection"><span class="SHKeyword">void</span> TriloSFX_Update()</div></div>
<div class="CBody"><p>Decode SFX streams.</p></div>
</div>
</body></html>