git.y1.nz

gbdk-2020

GameBoy Development Kit
download: https://git.y1.nz/archives/gbdk.tar.gz
README | Files | Log | Refs | LICENSE

docs/api/hblankcpy_8h.html

      1 <!-- HTML header for doxygen 1.8.14-->
      2 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
      3 <html xmlns="http://www.w3.org/1999/xhtml">
      4 <head>
      5 <meta http-equiv="cache-control" content="max-age=86400"/>
      6 <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
      7 <meta http-equiv="X-UA-Compatible" content="IE=9"/>
      8 <meta name="generator" content="Doxygen 1.9.2"/>
      9 <meta name="viewport" content="width=device-width, initial-scale=1"/>
     10 <title>GBDK 2020 Docs: gbdk-lib/include/gb/hblankcpy.h File Reference</title>
     11 <link href="tabs.css" rel="stylesheet" type="text/css"/>
     12 <script type="text/javascript" src="jquery.js"></script>
     13 <script type="text/javascript" src="dynsections.js"></script>
     14 <link href="navtree.css" rel="stylesheet" type="text/css"/>
     15 <script type="text/javascript" src="resize.js"></script>
     16 <script type="text/javascript" src="navtreedata.js"></script>
     17 <script type="text/javascript" src="navtree.js"></script>
     18 <link href="search/search.css" rel="stylesheet" type="text/css"/>
     19 <script type="text/javascript" src="search/searchdata.js"></script>
     20 <script type="text/javascript" src="search/search.js"></script>
     21 <link href="doxygen.css" rel="stylesheet" type="text/css" />
     22 <link href="doxygen-awesome.css" rel="stylesheet" type="text/css"/>
     23 <link href="doxygen-awesome-sidebar-only.css" rel="stylesheet" type="text/css"/>
     24 <link href="doxygen-awesome-sidebar-only-darkmode-toggle.css" rel="stylesheet" type="text/css"/>
     25 <!-- BEGIN: doxygen-awesome-css -->
     26         <script type="text/javascript" src="doxygen-awesome-darkmode-toggle.js"></script>
     27         <script type="text/javascript">
     28             DoxygenAwesomeDarkModeToggle.init()
     29         </script>
     30         <script type="text/javascript" src="doxygen-awesome-paragraph-link.js"></script>
     31         <script type="text/javascript">
     32             DoxygenAwesomeParagraphLink.init()
     33         </script>        
     34 <!-- END: doxygen-awesome-css -->
     35 </head>
     36 <body>
     37 <div id="top"><!-- do not remove this div, it is closed by doxygen! -->
     38 <div id="titlearea">
     39 <table cellspacing="0" cellpadding="0">
     40  <tbody>
     41  <tr style="height: 56px;">
     42   <td id="projectalign" style="padding-left: 0.5em;">
     43    <div id="projectname">GBDK 2020 Docs
     44    &#160;<span id="projectnumber">4.5.0</span>
     45    </div>
     46    <div id="projectbrief">API Documentation for GBDK 2020</div>
     47   </td>
     48  </tr>
     49  </tbody>
     50 </table>
     51 </div>
     52 <!-- end header part -->
     53 <!-- Generated by Doxygen 1.9.2 -->
     54 <script type="text/javascript">
     55 /* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
     56 var searchBox = new SearchBox("searchBox", "search",'Search','.html');
     57 /* @license-end */
     58 </script>
     59 <script type="text/javascript" src="menudata.js"></script>
     60 <script type="text/javascript" src="menu.js"></script>
     61 <script type="text/javascript">
     62 /* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
     63 $(function() {
     64   initMenu('',true,false,'search.php','Search');
     65   $(document).ready(function() { init_search(); });
     66 });
     67 /* @license-end */
     68 </script>
     69 <div id="main-nav"></div>
     70 </div><!-- top -->
     71 <div id="side-nav" class="ui-resizable side-nav-resizable">
     72   <div id="nav-tree">
     73     <div id="nav-tree-contents">
     74       <div id="nav-sync" class="sync"></div>
     75     </div>
     76   </div>
     77   <div id="splitbar" style="-moz-user-select:none;" 
     78        class="ui-resizable-handle">
     79   </div>
     80 </div>
     81 <script type="text/javascript">
     82 /* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
     83 $(document).ready(function(){initNavTree('hblankcpy_8h.html',''); initResizable(); });
     84 /* @license-end */
     85 </script>
     86 <div id="doc-content">
     87 <!-- window showing the filter options -->
     88 <div id="MSearchSelectWindow"
     89      onmouseover="return searchBox.OnSearchSelectShow()"
     90      onmouseout="return searchBox.OnSearchSelectHide()"
     91      onkeydown="return searchBox.OnSearchSelectKey(event)">
     92 </div>
     93 
     94 <!-- iframe showing the search results (closed by default) -->
     95 <div id="MSearchResultsWindow">
     96 <iframe src="javascript:void(0)" frameborder="0" 
     97         name="MSearchResults" id="MSearchResults">
     98 </iframe>
     99 </div>
    100 
    101 <div class="header">
    102   <div class="summary">
    103 <a href="#func-members">Functions</a> &#124;
    104 <a href="#var-members">Variables</a>  </div>
    105   <div class="headertitle"><div class="title">hblankcpy.h File Reference</div></div>
    106 </div><!--header-->
    107 <div class="contents">
    108 <div class="textblock"><code>#include &lt;<a class="el" href="stdint_8h_source.html">stdint.h</a>&gt;</code><br />
    109 </div>
    110 <p><a href="hblankcpy_8h_source.html">Go to the source code of this file.</a></p>
    111 <table class="memberdecls">
    112 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="func-members" name="func-members"></a>
    113 Functions</h2></td></tr>
    114 <tr class="memitem:hblank_copy_vram"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hblankcpy_8h.html#hblank_copy_vram">hblank_copy_vram</a> (const <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> *sour, <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> count)</td></tr>
    115 <tr class="separator:hblank_copy_vram"><td class="memSeparator" colspan="2">&#160;</td></tr>
    116 <tr class="memitem:hblank_cpy_vram"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hblankcpy_8h.html#hblank_cpy_vram">hblank_cpy_vram</a> (const <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> *sour, <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> count)</td></tr>
    117 <tr class="separator:hblank_cpy_vram"><td class="memSeparator" colspan="2">&#160;</td></tr>
    118 <tr class="memitem:hblank_copy"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hblankcpy_8h.html#hblank_copy">hblank_copy</a> (<a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> *dest, const <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> *sour, <a class="el" href="stdint_8h.html#uint16_t">uint16_t</a> size)</td></tr>
    119 <tr class="separator:hblank_copy"><td class="memSeparator" colspan="2">&#160;</td></tr>
    120 </table><table class="memberdecls">
    121 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="var-members" name="var-members"></a>
    122 Variables</h2></td></tr>
    123 <tr class="memitem:hblank_copy_destination"><td class="memItemLeft" align="right" valign="top"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hblankcpy_8h.html#hblank_copy_destination">hblank_copy_destination</a></td></tr>
    124 <tr class="separator:hblank_copy_destination"><td class="memSeparator" colspan="2">&#160;</td></tr>
    125 </table>
    126 <h2 class="groupheader">Function Documentation</h2>
    127 <a id="hblank_copy_vram" name="hblank_copy_vram"></a>
    128 <h2 class="memtitle"><span class="permalink"><a href="#hblank_copy_vram">&#9670;&nbsp;</a></span>hblank_copy_vram()</h2>
    129 
    130 <div class="memitem">
    131 <div class="memproto">
    132       <table class="memname">
    133         <tr>
    134           <td class="memname">void hblank_copy_vram </td>
    135           <td>(</td>
    136           <td class="paramtype">const <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> *&#160;</td>
    137           <td class="paramname"><em>sour</em>, </td>
    138         </tr>
    139         <tr>
    140           <td class="paramkey"></td>
    141           <td></td>
    142           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
    143           <td class="paramname"><em>count</em>&#160;</td>
    144         </tr>
    145         <tr>
    146           <td></td>
    147           <td>)</td>
    148           <td></td><td></td>
    149         </tr>
    150       </table>
    151 </div><div class="memdoc">
    152 <p >HBlank stack copy routine </p><dl class="params"><dt>Parameters</dt><dd>
    153   <table class="params">
    154     <tr><td class="paramname">sour</td><td>Source address to copy from </td></tr>
    155     <tr><td class="paramname">count</td><td>Number of 16 byte chunks to copy</td></tr>
    156   </table>
    157   </dd>
    158 </dl>
    159 <p>Performs the required STAT_REG, IE_REG, IF_REG manipulation when called and restores STAT_REG and IE_REG on exit (unlike <a class="el" href="hblankcpy_8h.html#hblank_cpy_vram">hblank_cpy_vram()</a>).</p>
    160 <p >Before calling:</p><ul>
    161 <li>Set the destination using <a class="el" href="hblankcpy_8h.html#hblank_copy_destination">hblank_copy_destination</a></li>
    162 <li>Interrupts must be disabled</li>
    163 </ul>
    164 <dl class="section see"><dt>See also</dt><dd><a class="el" href="hblankcpy_8h.html#hblank_cpy_vram">hblank_cpy_vram</a>, <a class="el" href="hblankcpy_8h.html#hblank_copy_destination">hblank_copy_destination</a>, <a class="el" href="hblankcpy_8h.html#hblank_copy">hblank_copy</a> </dd></dl>
    165 
    166 </div>
    167 </div>
    168 <a id="hblank_cpy_vram" name="hblank_cpy_vram"></a>
    169 <h2 class="memtitle"><span class="permalink"><a href="#hblank_cpy_vram">&#9670;&nbsp;</a></span>hblank_cpy_vram()</h2>
    170 
    171 <div class="memitem">
    172 <div class="memproto">
    173       <table class="memname">
    174         <tr>
    175           <td class="memname">void hblank_cpy_vram </td>
    176           <td>(</td>
    177           <td class="paramtype">const <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> *&#160;</td>
    178           <td class="paramname"><em>sour</em>, </td>
    179         </tr>
    180         <tr>
    181           <td class="paramkey"></td>
    182           <td></td>
    183           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
    184           <td class="paramname"><em>count</em>&#160;</td>
    185         </tr>
    186         <tr>
    187           <td></td>
    188           <td>)</td>
    189           <td></td><td></td>
    190         </tr>
    191       </table>
    192 </div><div class="memdoc">
    193 <p >HBlank stack copy routine </p><dl class="params"><dt>Parameters</dt><dd>
    194   <table class="params">
    195     <tr><td class="paramname">sour</td><td>Source address to copy from </td></tr>
    196     <tr><td class="paramname">count</td><td>Number of 16 byte chunks to copy</td></tr>
    197   </table>
    198   </dd>
    199 </dl>
    200 <p>Unlike <a class="el" href="hblankcpy_8h.html#hblank_copy_vram">hblank_copy_vram()</a> does not perform the required STAT_REG, IE_REG, IF_REG manipulation, nor does it restore STAT_REG and IE_REG on exit.</p>
    201 <p >Before calling:</p><ul>
    202 <li>Set the destination using <a class="el" href="hblankcpy_8h.html#hblank_copy_destination">hblank_copy_destination</a></li>
    203 <li>Interrupts must be properly configured</li>
    204 <li>Interrupts must be disabled</li>
    205 </ul>
    206 <dl class="section see"><dt>See also</dt><dd><a class="el" href="hblankcpy_8h.html#hblank_copy_vram">hblank_copy_vram</a>, <a class="el" href="hblankcpy_8h.html#hblank_copy_destination">hblank_copy_destination</a>, <a class="el" href="hblankcpy_8h.html#hblank_copy">hblank_copy</a> </dd></dl>
    207 
    208 </div>
    209 </div>
    210 <a id="hblank_copy" name="hblank_copy"></a>
    211 <h2 class="memtitle"><span class="permalink"><a href="#hblank_copy">&#9670;&nbsp;</a></span>hblank_copy()</h2>
    212 
    213 <div class="memitem">
    214 <div class="memproto">
    215 <table class="mlabels">
    216   <tr>
    217   <td class="mlabels-left">
    218       <table class="memname">
    219         <tr>
    220           <td class="memname">void hblank_copy </td>
    221           <td>(</td>
    222           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> *&#160;</td>
    223           <td class="paramname"><em>dest</em>, </td>
    224         </tr>
    225         <tr>
    226           <td class="paramkey"></td>
    227           <td></td>
    228           <td class="paramtype">const <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> *&#160;</td>
    229           <td class="paramname"><em>sour</em>, </td>
    230         </tr>
    231         <tr>
    232           <td class="paramkey"></td>
    233           <td></td>
    234           <td class="paramtype"><a class="el" href="stdint_8h.html#uint16_t">uint16_t</a>&#160;</td>
    235           <td class="paramname"><em>size</em>&#160;</td>
    236         </tr>
    237         <tr>
    238           <td></td>
    239           <td>)</td>
    240           <td></td><td></td>
    241         </tr>
    242       </table>
    243   </td>
    244   <td class="mlabels-right">
    245 <span class="mlabels"><span class="mlabel">inline</span></span>  </td>
    246   </tr>
    247 </table>
    248 </div><div class="memdoc">
    249 <p >HBlank stack copy routine (must be called with interrupts disabled!) </p><dl class="params"><dt>Parameters</dt><dd>
    250   <table class="params">
    251     <tr><td class="paramname">dest</td><td>destination pointer </td></tr>
    252     <tr><td class="paramname">sour</td><td>source pointer </td></tr>
    253     <tr><td class="paramname">size</td><td>number of bytes to copy (rounded to 16-byte chunks)</td></tr>
    254   </table>
    255   </dd>
    256 </dl>
    257 <p>Performs a fast vram safe copy of data during HBlank. </p>
    258 
    259 </div>
    260 </div>
    261 <h2 class="groupheader">Variable Documentation</h2>
    262 <a id="hblank_copy_destination" name="hblank_copy_destination"></a>
    263 <h2 class="memtitle"><span class="permalink"><a href="#hblank_copy_destination">&#9670;&nbsp;</a></span>hblank_copy_destination</h2>
    264 
    265 <div class="memitem">
    266 <div class="memproto">
    267 <table class="mlabels">
    268   <tr>
    269   <td class="mlabels-left">
    270       <table class="memname">
    271         <tr>
    272           <td class="memname"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>* hblank_copy_destination</td>
    273         </tr>
    274       </table>
    275   </td>
    276   <td class="mlabels-right">
    277 <span class="mlabels"><span class="mlabel">extern</span></span>  </td>
    278   </tr>
    279 </table>
    280 </div><div class="memdoc">
    281 <p >Destination address for hblank copy routine </p>
    282 
    283 </div>
    284 </div>
    285 </div><!-- contents -->
    286 </div><!-- doc-content -->
    287 <!-- start footer part -->
    288 <div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
    289   <ul>
    290     <li class="navelem"><a class="el" href="dir_8bd3092e915ccc8a773a74e0a10d4d15.html">gbdk-lib</a></li><li class="navelem"><a class="el" href="dir_a9f896cff747ba031115e41245385c17.html">include</a></li><li class="navelem"><a class="el" href="dir_bdfe001eb73b667f67d57fb851301eb1.html">gb</a></li><li class="navelem"><a class="el" href="hblankcpy_8h.html">hblankcpy.h</a></li>
    291     <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.2 </li>
    292   </ul>
    293 </div>
    294 </body>
    295 </html>

This webpage is intended to be an accessible preview of this repository. To get a fuller picture, clone it and use the git CLI.