Sophie

Sophie

distrib > Mandriva > 2010.0 > i586 > media > contrib-release > by-pkgid > 2ff8806b45ba9c96e77e01e6d40e440b > files > 232

libsc68_2.2.1-devel-2.2.1-11mdv2010.0.i586.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<title>sc68fordevelopers: /home/mandrake/rpm/BUILD/sc68-2.2.1/io68/ymemul.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css">
<link href="doxygen.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.5.9 -->
<div class="navigation" id="top">
  <div class="tabs">
    <ul>
      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
      <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
      <li><a href="modules.html"><span>Modules</span></a></li>
      <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
      <li class="current"><a href="files.html"><span>Files</span></a></li>
    </ul>
  </div>
  <div class="tabs">
    <ul>
      <li><a href="files.html"><span>File&nbsp;List</span></a></li>
      <li><a href="globals.html"><span>Globals</span></a></li>
    </ul>
  </div>
<h1>/home/mandrake/rpm/BUILD/sc68-2.2.1/io68/ymemul.h</h1><a href="ymemul_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 
<a name="l00011"></a>00011 <span class="comment">/* Copyright (C) 1998-2003 Benjamin Gerard */</span>
<a name="l00012"></a>00012 
<a name="l00013"></a>00013 <span class="preprocessor">#ifndef _YM_EMUL_H_</span>
<a name="l00014"></a>00014 <span class="preprocessor"></span><span class="preprocessor">#define _YM_EMUL_H_</span>
<a name="l00015"></a>00015 <span class="preprocessor"></span>
<a name="l00016"></a>00016 <span class="preprocessor">#include "<a class="code" href="type68_8h.html" title="Type definitions.">emu68/type68.h</a>"</span>
<a name="l00017"></a>00017 
<a name="l00018"></a>00018 <span class="preprocessor">#ifdef __cplusplus</span>
<a name="l00019"></a>00019 <span class="preprocessor"></span><span class="keyword">extern</span> <span class="stringliteral">"C"</span> {
<a name="l00020"></a>00020 <span class="preprocessor">#endif</span>
<a name="l00021"></a>00021 <span class="preprocessor"></span>
<a name="l00022"></a><a class="code" href="ymemul_8h.html#b00f805b6cc45bf3ac684788f2502c8f">00022</a> <span class="preprocessor">#define YM_BASEPERL  0  </span>
<a name="l00023"></a><a class="code" href="ymemul_8h.html#412e2d11e17bbb61a23eb4d301fd8d19">00023</a> <span class="preprocessor">#define YM_BASEPERH  1  </span>
<a name="l00024"></a><a class="code" href="ymemul_8h.html#b8cd42148680cd4f18e8f045bdc63f39">00024</a> <span class="preprocessor">#define YM_BASEVOL   8  </span>
<a name="l00026"></a><a class="code" href="ymemul_8h.html#a90ff54bf10570acf922cf56c427e784">00026</a> <span class="preprocessor">#define YM_PERL(N) (YM_BASEPERL+(N)*2) </span>
<a name="l00027"></a><a class="code" href="ymemul_8h.html#2a2a3105bb329491228da7126fcf495c">00027</a> <span class="preprocessor">#define YM_PERH(N) (YM_BASEPERH+(N)*2) </span>
<a name="l00028"></a><a class="code" href="ymemul_8h.html#eb59e8ddea4713b531d80c694f896b2a">00028</a> <span class="preprocessor">#define YM_VOL(N)  (YM_BASEVOL+(N))    </span>
<a name="l00030"></a><a class="code" href="ymemul_8h.html#b19ec820315b550c5fdae2a3af905270">00030</a> <span class="preprocessor">#define YM_NOISE     6  </span>
<a name="l00031"></a><a class="code" href="ymemul_8h.html#cac4dc367530bfc9cbbf37c52945e3c0">00031</a> <span class="preprocessor">#define YM_MIXER     7  </span>
<a name="l00032"></a><a class="code" href="ymemul_8h.html#ca966b638c4b7591aa3cba417eea7266">00032</a> <span class="preprocessor">#define YM_ENVL      11 </span>
<a name="l00033"></a><a class="code" href="ymemul_8h.html#357e50ad6f557148fddb148bb2781aed">00033</a> <span class="preprocessor">#define YM_ENVH      12 </span>
<a name="l00034"></a><a class="code" href="ymemul_8h.html#ae22e9ae494d47da441f949bc2e7897d">00034</a> <span class="preprocessor">#define YM_ENVTYPE   13 </span>
<a name="l00035"></a><a class="code" href="ymemul_8h.html#f7a60b97f36964f5c42db07801e54ffa">00035</a> <span class="preprocessor">#define YM_ENVSHAPE  13 </span>
<a name="l00038"></a><a class="code" href="structym2149__t.html">00038</a> <span class="preprocessor">typedef struct</span>
<a name="l00039"></a>00039 <span class="preprocessor"></span>{
<a name="l00040"></a>00040   <span class="comment">/* Internal YM register */</span>
<a name="l00041"></a><a class="code" href="structym2149__t.html#d757751ef67edcb0fc8c150a4dafadb3">00041</a>   <a class="code" href="type68_8h.html#ed742c436da53c1080638ce6ef7d13de" title="Must be an unsigned 8 bit integer.">u8</a> ctrl;        
<a name="l00042"></a><a class="code" href="structym2149__t.html#33d7586f1b5ad3507118154272d9b844">00042</a>   <a class="code" href="type68_8h.html#ed742c436da53c1080638ce6ef7d13de" title="Must be an unsigned 8 bit integer.">u8</a> data[16];    
<a name="l00044"></a>00044   <span class="comment">/* Envelop specific */</span>
<a name="l00045"></a><a class="code" href="structym2149__t.html#1e5050376ade89ce9afad1ffe27b5941">00045</a>   <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> env_ct;      
<a name="l00046"></a><a class="code" href="structym2149__t.html#d7d1f57055470da7e5a5ecc450af621b">00046</a>   <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> env_cont;    
<a name="l00047"></a><a class="code" href="structym2149__t.html#6b21e5aa1f45ea6e7b29501fb53f3f81">00047</a>   <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> env_alt;     
<a name="l00048"></a><a class="code" href="structym2149__t.html#edc9452877683e96c8670d4c2afcf370">00048</a>   <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> env_bit;     
<a name="l00049"></a><a class="code" href="structym2149__t.html#e7640b1885538897250485d77a30883f">00049</a>   <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> env_bitstp;  
<a name="l00051"></a>00051   <span class="comment">/* Noise specific */</span>
<a name="l00052"></a><a class="code" href="structym2149__t.html#3ea2ff6be6ec7a2d00a7f4d6fc5f46d1">00052</a>   <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> noise_gen;  
<a name="l00053"></a><a class="code" href="structym2149__t.html#8f580e03ffacd99d265550f6933582a5">00053</a>   <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> noise_ct;   
<a name="l00055"></a>00055   <span class="comment">/* Sound specific */</span>
<a name="l00056"></a><a class="code" href="structym2149__t.html#25137c64e3712e883aecf62b7340f1fa">00056</a>     <span class="keywordtype">signed</span> <span class="keywordtype">int</span> voice_ctA;  
<a name="l00057"></a><a class="code" href="structym2149__t.html#e6c5d4ab908331fa4a9235db943d8aff">00057</a>     <span class="keywordtype">signed</span> <span class="keywordtype">int</span> voice_ctB;  
<a name="l00058"></a><a class="code" href="structym2149__t.html#56c4f3f911111c0767a2f3f7e2e4b0b3">00058</a>     <span class="keywordtype">signed</span> <span class="keywordtype">int</span> voice_ctC;  
<a name="l00059"></a><a class="code" href="structym2149__t.html#fc236d062c738012c60a778259ae9573">00059</a>   <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> sq;         
<a name="l00060"></a>00060 } <a class="code" href="structym2149__t.html" title="YM-2149 internal data structure.">ym2149_t</a>;
<a name="l00061"></a>00061 
<a name="l00063"></a>00063 <span class="keyword">extern</span> <a class="code" href="structym2149__t.html" title="YM-2149 internal data structure.">ym2149_t</a> <a class="code" href="ymemul_8h.html#01437bbd37572e09fddf4dba71510828" title="YM-2149 emulator internal data.">ym</a>;
<a name="l00064"></a>00064 
<a name="l00081"></a>00081 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="ymemul_8h.html#4ef5ab7ab450710d42acdeb124ba0ef5" title="Set/get output buffer replay frequency.">YM_sampling_rate</a>(<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> f);
<a name="l00082"></a>00082 
<a name="l00096"></a>00096 <span class="keywordtype">int</span> <a class="code" href="ymemul_8h.html#4c209ab3e95ea006a4f11fae3573e68f" title="Yamaha-2149 hardware reset.">YM_reset</a>(<span class="keywordtype">void</span>);
<a name="l00097"></a>00097 
<a name="l00112"></a>00112 <span class="keywordtype">int</span> <a class="code" href="ymemul_8h.html#49cc9c4090bf5b57f8cb29144195a2cc" title="Yamaha-2149 first one first initialization.">YM_init</a>(<span class="keywordtype">void</span>);
<a name="l00113"></a>00113 
<a name="l00138"></a>00138 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="ymemul_8h.html#41731ec0511613dbffc759429c64e582" title="Execute Yamaha-2149 emulation.">YM_mix</a>(<a class="code" href="type68_8h.html#f481ec429becf42a986cf4feb23036f0" title="At least 32 bit integer.">cycle68_t</a> cycle2mix);
<a name="l00139"></a>00139 
<a name="l00156"></a>00156 <a class="code" href="type68_8h.html#10e94b422ef0c20dcdec20d31a1f5049" title="Must be an unsigned 32 bit integer.">u32</a> *<a class="code" href="ymemul_8h.html#1d8d998a30732129b218cf24a8a62687" title="Yamaha get buffer.">YM_get_buffer</a>(<span class="keywordtype">void</span>);
<a name="l00157"></a>00157 
<a name="l00167"></a>00167 <span class="keywordtype">void</span> <a class="code" href="ymemul_8h.html#5cd3f770ad3c9b3d8425e6ba2008e89f" title="Change YM cycle counter base.">YM_subcycle</a>(<a class="code" href="type68_8h.html#f481ec429becf42a986cf4feb23036f0" title="At least 32 bit integer.">cycle68_t</a> subcycle);
<a name="l00168"></a>00168 
<a name="l00191"></a>00191 <span class="keywordtype">void</span> <a class="code" href="ymemul_8h.html#509038ccb45b3e1c6355e77170e74ffb" title="Write in YM register.">YM_writereg</a>(<a class="code" href="type68_8h.html#ed742c436da53c1080638ce6ef7d13de" title="Must be an unsigned 8 bit integer.">u8</a> reg, <a class="code" href="type68_8h.html#ed742c436da53c1080638ce6ef7d13de" title="Must be an unsigned 8 bit integer.">u8</a> v, <a class="code" href="type68_8h.html#f481ec429becf42a986cf4feb23036f0" title="At least 32 bit integer.">cycle68_t</a> cycle);
<a name="l00192"></a>00192 
<a name="l00206"></a>00206 <a class="code" href="type68_8h.html#ed742c436da53c1080638ce6ef7d13de" title="Must be an unsigned 8 bit integer.">u8</a> <a class="code" href="ymemul_8h.html#02d49bb881fe4c753175e11f8c2431fd" title="Read a YM-2119 register.">YM_readreg</a>(<a class="code" href="type68_8h.html#ed742c436da53c1080638ce6ef7d13de" title="Must be an unsigned 8 bit integer.">u8</a> reg, <a class="code" href="type68_8h.html#f481ec429becf42a986cf4feb23036f0" title="At least 32 bit integer.">cycle68_t</a> cycle);
<a name="l00207"></a>00207 
<a name="l00220"></a>00220 <span class="keywordtype">int</span> <a class="code" href="ymemul_8h.html#e55e5b635f2e7ecf0cb7407db7daa3c4" title="Get voices status.">YM_get_activevoices</a>(<span class="keywordtype">void</span>);
<a name="l00221"></a>00221 
<a name="l00234"></a>00234 <span class="keywordtype">void</span> <a class="code" href="ymemul_8h.html#72a81ebb78e03889d9c9b75270ec3314" title="Set voices status.">YM_set_activeVoices</a>(<span class="keywordtype">int</span> v);
<a name="l00235"></a>00235 
<a name="l00238"></a>00238 <span class="preprocessor">#ifdef __cplusplus</span>
<a name="l00239"></a>00239 <span class="preprocessor"></span>}
<a name="l00240"></a>00240 <span class="preprocessor">#endif</span>
<a name="l00241"></a>00241 <span class="preprocessor"></span>
<a name="l00242"></a>00242 <span class="preprocessor">#endif </span><span class="comment">/* #ifndef _YM_EMUL_H_ */</span>
<a name="l00243"></a>00243 
</pre></div></div>
<hr size="1"><address style="text-align: right;"><small>Generated on Tue Sep 15 03:58:05 2009 for sc68fordevelopers by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.9 </small></address>
</body>
</html>